示例#1
0
文件: SAPTestGame.cs 项目: Loko/GXT
 /// <summary>
 /// Allows the game to perform any initialization it needs to before starting to run.
 /// This is where it can query for any required services and load any non-graphic
 /// related content.  Calling base.Initialize will enumerate through any components
 /// and initialize them as well.
 /// </summary>
 protected override void Initialize()
 {
     base.Initialize();
     IsMouseVisible = true;
     nodes = new List<gxtISceneNode>();
     camera = new gxtCamera(Vector2.Zero, 0.0f, 0.0f, false);
     gxtDisplayManager.Singleton.RegisterCamera(camera);
     gxtDisplayManager.Singleton.SetResolution(800, 600, false);
     Root.DisplayManager.WindowTitle = "Sweep and Prune TestBed";
     sceneGraph = new gxtSceneGraph();
     sceneGraph.Initialize();
     //drawManager.Initialize();
     if (gxtDebugDrawer.SingletonIsInitialized)
     {
         debugDrawerId = gxtDebugDrawer.Singleton.GetNewId();
         gxtDebugDrawer.Singleton.AddSceneGraph(debugDrawerId, sceneGraph);
         gxtDebugDrawer.Singleton.DebugFont = Content.Load<SpriteFont>("Fonts\\debug_font");
         gxtDebugDrawer.Singleton.FillGeometry = false;
     }
     drawableCollider = new gxtSortAndSweepCollider<gxtISceneNode>();
     drawableCollider.Initialize();
     InitializeRectangles();
 }
示例#2
0
        /// <summary>
        /// Initializes physics world internals
        /// </summary>
        /// <param name="initEnabled">Enabled Flag</param>
        /// <param name="worldGravity">World Gravity</param>
        public void Initialize(bool initEnabled, Vector2 worldGravity)
        {
            gxtDebug.Assert(!IsInitialized(), "Physics World Has Already Been Initialized");

            enabled = initEnabled;
            gravity = worldGravity;
            gravityEnabled = true;

            geomList = new List<gxtGeom>();
            geom_remove_list = new List<gxtGeom>();
            geom_add_list = new List<gxtGeom>();

            bodyList = new List<gxtRigidBody>();
            body_remove_list = new List<gxtRigidBody>();
            body_add_list = new List<gxtRigidBody>();

            collisionGroupsMap = new Dictionary<string, gxtCollisionGroup>();

            broadphaseCollider = new gxtSortAndSweepCollider<gxtGeom>();
            broadphaseCollider.Initialize();

            broadphasePairs = new Dictionary<int, gxtBroadphaseCollisionPair<gxtGeom>>();
            narrowphaseContacts = new Dictionary<gxtBroadphaseCollisionPair<gxtGeom>, gxtContactPair>();
            // narrow phase init?

            //testPairs = new List<gxtGeomTestPair>();
            //collider = new gxtSweepAndPruneArrayCollider();
            //collider.Initialize();
        }