D3D中如何直接在窗口中绘制图形
我的程序是用D3D写的,想在窗口的右上角显示一个具有透明效果的矩形,并在矩形上显示一些文字,以此来向用户显示一些信息。这个透明的矩形不会随三维场景的变化而变动,它在窗口中的位置、大小始终不变。请问该如何实现?
[解决办法]
2d贴图做。
绘制2d元素的3种方法。
先绘制所有3d元素,然后绘制2d界面时可以clear z,然后就可以用z缓冲了
固定渲染管线
1. 使用POTION_T的顶点格式,跳过world/view变化,顶点坐标为像素坐标。
2. 使用identity的world/view 矩阵,关闭光照, 顶点坐标为 x[-1,1],y[-1,1],上方和右方为正,原点在屏幕/窗口中心。这个方法的好处是绘制图形是按百分比来计算的,和分辨率无关。
shader方法
3. 使用vs,跳过world/view变化,和2类似效果,另外还可以增加一些简单的动画。
比如一个旋转的风车,直接变化texture的u/v
http://blog.csdn.net/kevin_qing/article/details/6718077