很抱歉问,但我就是不明白发生了什么。
我是 DirectX/SlimDX 的新手。我目前正在尝试创建一个控件来显示 3D 点。我编写了最简单的代码,主要是使用第 3 个 SlimDX 教程。我在表单上放置了一个大小为 200x200 的控件,并尝试在其上绘制点:
for (float i = -0.5f; i <= 0.5f; i += 0.001f)
cloud.Add(new Vertex(i, 0.001f, 0));
这是一条 y 坐标接近 0 且 x 坐标从 -0.5 到 0.5 的线。
现在,据我了解,如果我将矩形标记为视口,则矩形的原点位于中心。现在,我的控件是 200x200,所以在创建视口时,我提供了一个 (0,0,200,200) 的视口矩形。因此,我的这条线应显示在沿 y 轴的矩形的中心。但我得到的是:
http://www.4shared.com/photo/xGlGwTWK/Untitled.html
我的线在控件的最底部。x坐标似乎很好,但为什么我的线在底部应该在中心?
游戏中根本没有世界、视图、投影矩阵!但线仍然在错误的位置。谁能解释我发生了什么事?
我在这里上传了我的项目的剥离版本,只有 3 个短文件,可能是最简单的绘图:http ://www.4shared.com/zip/uPKVbQKV/ScanForSO.html
谢谢你们。