コード例 #1
0
        private void DrawBlock(DrawState state, int bx, int by)
        {
            Tile[] tiles = new Maps(this).Felucca.Tiles.GetLandBlock(bx, by);

            const int size = 8 * 44;
            const int sizeOver2 = size / 2;

            for (int y = 0; y < 8; y++)
            {
                for (int x = 0; x < 8; x++)
                {
                    Tile tile = tiles[(y * 8) + x];

                    Vector2 v1 = new Vector2(-sizeOver2 + x * 44, -sizeOver2 + y * 44 + tile._z);
                    Vector2 v2 = new Vector2(v1.X + 44, v1.Y + 44);

                    state.GraphicsDevice.Textures[0] = _textureFactory.CreateLand(tile._id);
                    _renderer.DrawQuad(v1, v2);
                }
            }

        }
コード例 #2
0
        private void Initialize()
        {
            _camera = new Camera2D(this);
            _camera.NearClip = -1000;
            _camera.FarClip = 1000;
            _camera.Position = new Vector2(1496, 1624);

            _inputService = (IInputService)Services.GetService(typeof(IInputService));
            _inputService.MouseMove += _inputService_MouseMove;
            _inputService.KeyDown += _inputService_KeyDown;

            _textureFactory = new TextureFactory(this);
            _maps = new Maps(this);

            _shader = new DiffuseShader(this);
            _renderer = new DeferredRenderer(this);

            Tracer.Info("Loading Content...");
            LoadContent();
        }