Exemplo n.º 1
0
 public PCZone(PCZSceneManager creator, string name)
 {
     this.mLastVisibleFrame = 0;
     LastVisibleFromCamera  = null;
     this.mName             = name;
     this.mZoneTypeName     = "ZoneType_Undefined";
     this.mEnclosureNode    = null;
     this.mPCZSM            = creator;
     HasSky = false;
 }
Exemplo n.º 2
0
        public override PCZone CreatePCZone(PCZSceneManager pczsm, string zoneName)
        {
            //return new TerrainZone(pczsm, zoneName);
            var tz = new TerrainZone(pczsm, zoneName);
            // Create & register default sources (one per zone)
            var ps = new HeightmapTerrainZonePageSource();

            this.mTerrainZonePageSources.Add(ps);
            tz.registerPageSource("Heightmap", ps);
            return(tz);
        }
Exemplo n.º 3
0
        public OctreeZone(PCZSceneManager creator, string name)
            : base(creator, name)
        {
            mZoneTypeName = "ZoneType_Octree";
            // init octree
            var b     = new AxisAlignedBox(new Vector3(-10000, -10000, -10000), new Vector3(10000, 10000, 10000));
            int depth = 8;

            this.rootOctree = null;
            Init(b, depth);
        }
Exemplo n.º 4
0
        public void TestChildSceneNodeDestruction()
        {
            SceneManager sceneManager = new PCZSceneManager("Manager under test");
            SceneNode    node         = sceneManager.CreateSceneNode("testNode");
            SceneNode    childNode    = node.CreateChildSceneNode("childNode");

            Assert.IsTrue(ManagerContainsNode(sceneManager, childNode), "A child node was created but not added to the scene graph.");

            node.RemoveAndDestroyChild(childNode);

            Assert.IsFalse(ManagerContainsNode(sceneManager, childNode), "A child node was destroryed but not removed from the scene graph.");
        }
        public void TestChildSceneNodeRemoval()
        {
            SceneManager sceneManager = new PCZSceneManager("Manager under test");
            SceneNode    node         = sceneManager.CreateSceneNode("testNode");
            SceneNode    childNode    = node.CreateChildSceneNode("childNode");

            Assert.IsTrue(ManagerContainsNode(sceneManager, childNode), "A child node was created but not added to the scene graph.");

            node.RemoveChild(childNode.Name);

            Assert.IsTrue(ManagerContainsNode(sceneManager, childNode), "A child node was removed from its parent but also incorrectly removed from the scene graph.");
        }
Exemplo n.º 6
0
 public TerrainZone(PCZSceneManager creator, string name)
     : base(creator, name)
 {
     mZoneTypeName                   = "ZoneType_Terrain";
     this.mUseCustomMaterial         = false;
     this.mUseNamedParameterLodMorph = false;
     this.mLodMorphParamIndex        = 3;
     this.mTerrainRoot               = null;
     this.mActivePageSource          = null;
     this.mPagingEnabled             = false;
     this.mLivePageMargin            = 0;
     this.mBufferedPageMargin        = 0;
 }
Exemplo n.º 7
0
        public PCZone CreatePCZone(PCZSceneManager pczsm, string zoneType, string zoneName)
        {
            //find a factory that supports this zone type and then call createPCZone() on it
            PCZone inst = null;

            foreach (PCZoneFactory factory in this.pCZoneFactories.Values)
            {
                if (factory.SupportsPCZoneType(zoneType))
                {
                    // use this factory
                    inst = factory.CreatePCZone(pczsm, zoneName);
                }
            }
            if (null == inst)
            {
                // Error!
                throw new AxiomException("No factory found for zone of type '" + zoneType + "' PCZoneFactoryManager.CreatePCZone");
            }
            return(inst);
        }
Exemplo n.º 8
0
 public override PCZone CreatePCZone(PCZSceneManager pczsm, string zoneName)
 {
     return(new OctreeZone(pczsm, zoneName));
 }
Exemplo n.º 9
0
 public MovableObject CreateInstance(string name, PCZSceneManager manager, NameValuePairList para)
 {
     throw new NotImplementedException();
 }
Exemplo n.º 10
0
 public DefaultZone(PCZSceneManager creator, string name)
     : base(creator, name)
 {
     mZoneTypeName = "ZoneType_Default";
 }
Exemplo n.º 11
0
 public abstract PCZone CreatePCZone(PCZSceneManager pczsm, string zoneName);