Пример #1
0
        public Game(GameWindow gw, double frameRate)
        {
            this.gw        = gw;
            this.frameRate = frameRate;

            this.camera            = new Camera();
            this.keyboardProcessor = new KeyboardProcessor();
            this.mouseProcessor    = new MouseProcessor();

            this.GameObjectManager = new GameObjectManager();

            GameObjectManager.Add(new BlockSolid(new Vector3(0, 0, 0), 10, 14, 8));
            GameObjectManager.Add(new CubeSolid(new Vector3(0, 0, 20), 10)
            {
                color = new float[] { 0.4f, 0.8f, 0.2f, 0.5f }
            });
            BlockSolid platform = new BlockSolid(new Vector3(0, -80, 0), 400, 2, 400);

            platform.color = new float[4] {
                0.2f, 0.6f, 0.2f, 1.0f
            };

            platform.Collision += (o, e) =>
            {
                (e.solid.physicElements[0] as RigidBody).Gravity = false;
                var dev = e.solid.hitbox.first.Y - platform.hitbox.second.Y;
                e.solid.Pos -= new Vector3(0.0f, dev, 0.0f);
            };

            GameObjectManager.Add(platform);

            spider = ObjLoader.ObjLoader.LoadObj(@"..\..\TestModels\Spider\", "spider.obj", new Vector3(-80, 0, 0));
            spider.physicElements.Add(new RigidBody());
            (spider.physicElements[0] as RigidBody).Gravity = false;
            GameObjectManager.Add(spider);
        }
 // Use this for initialization
 void Start()
 {
     this.blockSolidScript = this.transform.parent.GetComponent<BlockSolid> ();
     this.player = GameObject.FindWithTag("Player");
     this.playerScript = this.player.GetComponent<PlayerScript>();
 }