3D墙壁是混合/透明的

时间:2013-09-26 19:11:11

标签: c# 3d xna

我正在尝试在XNA中学习一些3D,并且我使用了一个名为的.pdf: XNA 4 3D Game Development By Example For Beginners,并在.pdf中,它向您展示了如何创建一个名为“Cube Chaser”的游戏,您基本上学习如何生成迷宫,创建平铺地板,墙壁,第一人称相机,以及如何收集一个物体来完成游戏。

所以目前我有一个完全正常工作的FPS-Camera + Movement(虽然没有碰撞)我也有一个迷宫发生器,现在我的问题是,当迷宫生成时,它会产生墙壁(就像它应该......)但是墙壁几乎是透明的。它们有颜色(红色和橙色),但迷宫中的每一面墙都是可见的,我可以看到地图中的每一面墙,所以就好像墙是透明的......这很难解释,所以这是一张图片它: http://tinypic.com/r/332mi3p/5

这是我对Maze.cs的 Draw 方法:

public void Draw(Camera camera, BasicEffect basicEffect)
    {
        basicEffect.VertexColorEnabled = true;
        basicEffect.World = Matrix.Identity;
        basicEffect.View = camera.View;
        basicEffect.Projection = camera.projection;

        foreach(EffectPass pass in basicEffect.CurrentTechnique.Passes)
        {
            pass.Apply();
            device.SetVertexBuffer(floorBuffer);
            device.DrawPrimitives(PrimitiveType.TriangleList, 0, floorBuffer.VertexCount / 3);

            device.SetVertexBuffer(wallBuffer);
            device.DrawPrimitives(PrimitiveType.TriangleList, 0, wallBuffer.VertexCount / 3);
        }
    }

(wallBuffer = walls,floorBuffer = floor..ehh xD)

0 个答案:

没有答案