游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1588|回复: 1

Introduction.To.Direct3D9中镜子的例子有两句看不懂

[复制链接]

54

主题

116

帖子

122

积分

注册会员

Rank: 2

积分
122
发表于 2008-1-22 17:10:00 | 显示全部楼层 |阅读模式
void RenderMirror()
{
          //上面的部分看懂了,省略       


        // Finally, draw the reflected teapot
        Device->SetTransform(D3DTS_WORLD, &W);
        Device->SetMaterial(&TeapotMtrl);
        Device->SetTexture(0, 0);

        Device->SetRenderState(D3DRS_CULLMODE,D3DCULL_CW);
        Teapot->DrawSubset(0);
                // Restore render states.
        Device->SetRenderState(D3DRS_ALPHABLENDENABLE, false);
        Device->SetRenderState( D3DRS_STENCILENABLE, false);
           Device->SetRenderState(D3DRS_CULLMODE,D3DCULL_CCW);
}
Device->SetRenderState(D3DRS_CULLMODE,D3DCULL_CW);
Device->SetRenderState(D3DRS_CULLMODE,D3DCULL_CCW);

两句看不懂。

以前看书上说,D3DCULL_CW是渲染正面(顺时针的)D3DCULL_CCW是渲染背面(逆时针的)。而默认情况下是渲染正面的。

看例子中的意思好像是,渲染茶壶反射的时候渲染正面,之后其他的渲染背面。到底是什么意思啊,我看书上说是为了实现“物体被反射后正面和反面交换”的效果。这样就能实现么?

可是我注释掉这两句后,程序看起来没什么变化呀。

0

主题

228

帖子

285

积分

中级会员

Rank: 3Rank: 3

积分
285
发表于 2008-1-23 10:44:00 | 显示全部楼层

Re:Introduction.To.Direct3D9中镜子的例子有两句看不懂

就像你照镜子,你的人是左右颠倒的
你的物体被反射后,顺时针的三角形就变成逆时针了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-19 23:38

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表