请问在DirectX中能同时打开多少盏灯?
请问在DirectX中能同时打开多少盏灯? 问题点数:0、回复次数:9Top
1 楼chijingde(AD)回复于 2005-04-02 12:25:10 得分 0
没试过
应该多少都没问题吧?
给它编号就完了Top
2 楼dpy326(Life Force)回复于 2005-04-02 13:29:50 得分 0
好像同时只能开8盏,不知是不是真的Top
3 楼guoqiang721029()回复于 2005-04-02 13:41:05 得分 0
打开多少盏灯,是什么意思?
灯是什么?
请大家赐教!Top
4 楼IO_X(IO_X)回复于 2005-04-02 14:16:50 得分 0
最多光源能通过caps查询,一般最多8个光源,但可以通过shader/multi-pass来实现更多的光源。
Top
5 楼nasi00(莫傲·逍遥)回复于 2005-04-02 22:38:00 得分 0
似乎是8个Top
6 楼soilwork()回复于 2005-04-03 03:16:48 得分 0
要看你的显卡支持多少灯光
IO_X(ZJU)说的对Top
7 楼captainchain(一路漂着)回复于 2005-04-03 21:14:07 得分 0
据说是8个来着Top
8 楼happy__888([顾问团]寻开心 www.e-jjj.com)回复于 2005-04-05 16:53:24 得分 0
这个问题不好简单的回答
第一个问题,要看显示卡支持不支持硬件光照,
需要查询,看看支持同时点亮多少个,如果是65535表示是不支持
如果支持,应该不超过8个,8是directx的限制,其实不是显示卡的限制
灯光的索引,dx目前只到了8而已
第二个
支持的最大的同时可使用的光源数目,不代表场景当中可以存在的光源的数目
对于一个物体渲染,最多可以同时设置8个灯光对它处理
换成另外一个物体的时候,你可以设置另外8个灯对它处理
第三个
游戏当中,一般只有2-3盏灯是实时开关变化的
游戏当中的光照,大部分是游戏美工固定的
动态的只有头灯,环境光,全局光源,以及特殊处理的地方。Top
9 楼IO_X(IO_X)回复于 2005-04-05 22:07:38 得分 0
现在的可编程渲染管道(Vertex Shader/Pixel Shader),可以让你在一次渲染中实现尽可能多的光源,dx的固定渲染管道最多是只能有8个光源,但dx的可编程渲染管道(programmable pipeline)却可以支持多得多的光源数量,光照公式可自己定义,OpenGL也一样,从DX8.1开始就已突破了8个光源的限制:)
很多精彩的游戏场景演示,应用了很多光照图(light map),也就是针对静态物体预先计算好的纹理,渲染时和其它纹理进行复合,表现力却相当好,不亚于即时计算的...其实还有类似的比如bump map, normal map, shadow map等,这些都称为细节纹理(detail map),在提高真实感的同时并没有很明显地增加运算量,至少像光线追踪等技术暂时还不会在游戏中大量出现。
Top




