コード例 #1
0
        public override void WriteToXML(System.Xml.XmlWriter writer, object obj)
        {
            XTreeSystem treeSystem = (XTreeSystem)obj;

            writer.WriteStartElement("sceneitem");
            writer.WriteAttributeString("Type", treeSystem.GetType().ToString());
            writer.WriteAttributeString("ComponentID", treeSystem.ComponentID.ToString());
            writer.WriteAttributeString("AutoDraw", treeSystem.AutoDraw.ToString());
            writer.WriteAttributeString("DrawOrder", treeSystem.DrawOrder.ToString());
            writer.WriteAttributeString("HeightMap", treeSystem.HeightMap.ComponentID.ToString());
            writer.WriteAttributeString("Name", treeSystem.Name);
            writer.WriteAttributeString("TreeMapFile", treeSystem.TreeMapFile);

            writer.WriteEndElement();
        }
コード例 #2
0
        public override void AcceptDragDrop(object Input, object DraggedItem, PropertyGrid Properties, ListView Scene)
        {
            XTreeSystem treeSystem = (XTreeSystem)Input;

            if (Tools.GetPropertyAtPoint(Properties.PointToClient(Cursor.Position), Properties).Label == "HeightMap" && DraggedItem is XHeightMap)
            {
                treeSystem.HeightMap = (XHeightMap)DraggedItem;
            }
            else if (Tools.GetPropertyAtPoint(Properties.PointToClient(Cursor.Position), Properties).Label == "TreeMapFile" && DraggedItem is ContentItem)
            {
                treeSystem.TreeMapFile = ((ContentItem)DraggedItem).GenerateFilename().Replace("\\Content", "Content");
            }

            UpdateObjectProperties(treeSystem, Properties, Scene);
        }
コード例 #3
0
        public override void LoadFromXML(System.Xml.XmlNode node, ListView scene, ref Dictionary <uint, List <uint> > Depends)
        {
            XTreeSystem treeSystem = new XTreeSystem(ref X, node.Attributes["TreeMapFile"].InnerText, null);

            treeSystem.AutoDraw    = bool.Parse(node.Attributes["AutoDraw"].InnerText);
            treeSystem.DrawOrder   = int.Parse(node.Attributes["DrawOrder"].InnerText);
            treeSystem.ComponentID = uint.Parse(node.Attributes["ComponentID"].InnerText);
            treeSystem.Name        = node.Attributes["Name"].InnerText;

            List <uint> dep = new List <uint>();

            dep.Add(uint.Parse(node.Attributes["HeightMap"].InnerText));
            Depends.Add(treeSystem.ComponentID, dep);

            X_Editor.Tools.AddXComponentToSceneList(scene, treeSystem, "Environment");
        }
コード例 #4
0
        public override void UpdateObjectProperties(object Input, PropertyGrid Properties, ListView Scene)
        {
            XTreeSystem treeSystem = (XTreeSystem)Input;

            if (!string.IsNullOrEmpty(treeSystem.TreeMapFile) && treeSystem.HeightMap != null)
            {
                try
                {
                    treeSystem.Load(X.Content);
                    treeSystem.GenerateTrees(X.DefaultCamera);
                }
                catch
                {
                    MessageBox.Show("There was a problem loading one of the TreeSystem's files.", "File Error");
                }
            }

            base.UpdateObjectProperties(Input, Properties, Scene);
        }
コード例 #5
0
ファイル: Game.cs プロジェクト: bondjames12/spheregame
        /// <summary>
        /// LoadContent will be called once per game and is the place to load
        /// all of your content.
        /// </summary>
        protected override void LoadContent()
        {
            //Load engine base content
            X.LoadContent();

            //Game base elements
            menus.Load(Content);


            // load scene objects/content
            //sky = new XDynamicSky(ref X,X.Environment);
            //XSkyBox sky = new XSkyBox(ref X, @"Content\XEngine\Textures\Sky\front", @"Content\XEngine\Textures\Sky\back", @"Content\XEngine\Textures\Sky\left", @"Content\XEngine\Textures\Sky\right", @"Content\XEngine\Textures\Sky\top", @"Content\XEngine\Textures\Sky\bottom");
            XSkyBox sky = new XSkyBox(ref X, @"Content\XEngine\Textures\Sky\GreenWaterSky");

            heightmap = new XHeightMap(ref X, @"Content\Images\Heightmaps\Level2", X.Environment, @"Content\Textures\Grass", @"Content\Textures\Sand", null, @"Content\Images\Terrainmaps\Island1");

            //resources.AddComponent(environment);
            resources.AddComponent(heightmap);
            resources.AddComponent(sky);

            model = new XModel(ref X, @"Content\Models\cube");
            resources.AddComponent(model);

            Chassis = new XModel(ref X, @"Content\Models\chassis");
            Wheel   = new XModel(ref X, @"Content\Models\wheel");

            resources.AddComponent(Chassis);
            resources.AddComponent(Wheel);

            housemodel = new XModel(ref X, @"Content\Models\spider");
            resources.AddComponent(housemodel);

            resources.Load();

            //Car = new XCar(ref X, Chassis, Wheel, true, true, 30.0f, 5.0f, 4.7f, 5.0f, 0.20f, 0.4f, 0.05f, 0.45f, 0.3f, 1, 520.0f, Math.Abs(X.Gravity.Y), new Vector3(-10, heightmap.Heights.GetHeight(new Vector3(-10, 3, 0))+5, 0));

            Car = new XCar(ref X, Chassis, Wheel,
                           true,                       // front wheel drive
                           true,                       // rear wheel drive
                           35.0f,                      // max steering angle
                           5f,                         // steering rate
                           3.6f,                       // front lateral traction
                           3.1f,                       // rear lateral traction
                           1f,                         // front longintudinal traction
                           2f,                         // rear longitudinal traction
                           2.5f,                       // handbrake rear lateral traction
                           .75f,                       // handbrake rear longitudinal traction
                           6f,                         // starting slide factor
                           15f,                        // threshold 1 slide factor
                           30f,                        // threshold 2 slide factor
                           .7f,                        // slip threshold 1
                           10.0f,                      // slip threshold 2
                           2.0f,                       // slide speed factor
                           1.7f,                       // traction loss factor on slip
                           0.3f,                       // suspension travel
                           0.45f,                      // wheel radius
                           -0.10f,                     // wheel mounting point
                           0.6f,                       // spring rate
                           0.6f,                       // shock dampening
                           2,                          // wheel rays
                           2.5f,                       // roll resistance
                           300.0f,                     // top speed
                           1200.0f,                    // torque
                           X.Physics.Gravity.Length(), // gravity
                           new Vector3(-10, heightmap.Heights.GetHeight(new Vector3(-10, 3, 0)) + 5, 0)
                           );

            Car.Load(X.Content);

            trees = new XTreeSystem(ref X, @"Content\Images\Treemaps\Level1", heightmap);
            trees.Load(Content);
            trees.GenerateTrees(freeCamera);

            input.Load();
            base.LoadContent();
        }
コード例 #6
0
        public override ListViewItem SetupListViewItem(ListViewItem item, XComponent component)
        {
            XTreeSystem treeSystem = new XTreeSystem(ref X, null, null);

            return(base.SetupListViewItem(item, treeSystem));
        }