游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3708|回复: 4

求教D3D渲染残影的问题

[复制链接]

1

主题

1

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2012-1-9 18:08:00 | 显示全部楼层 |阅读模式
自己重写了CEGUI的imageset工具,用D3D渲染出现残影问题,请高手看看是怎么回事?用openGL则没问题 [em22]代码如下:
创建:
D3DDISPLAYMODE d3ddm;
d_pD3D->GetAdapterDisplayMode(0, &d3ddm);
D3DFORMAT format = d3ddm.Format;
D3DPRESENT_PARAMETERS d_ppars;
ZeroMemory(&d_ppars, sizeof(d_ppars));
d_ppars.BackBufferFormat = format;
d_ppars.hDeviceWindow    = hwnd;
d_ppars.EnableAutoDepthStencil = TRUE;
d_ppars.AutoDepthStencilFormat = D3DFMT_D16;
d_ppars.SwapEffect       = D3DSWAPEFFECT_DISCARD;
d_ppars.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
d_ppars.Windowed         = true;       
if (SUCCEEDED(d_pD3D->CreateDevice(0, D3DDEVTYPE_HAL, hwnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &d_ppars, &d_pDevice9)))
{
        d_pDevice9->SetRenderState(D3DRS_ZENABLE, true);
        m_GUIRenderer = &CEGUI:irect3D9Renderer::bootstrapSystem(d_pDevice9);
        return true;
}

渲染:
d_pDevice9->Clear(0, NULL, D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER, colour, 1.0f, 0);
d_pDevice9->BeginScene();               
RenderImageset();
d_pDevice9->EndScene();
d_pDevice9-&gtresent(NULL,NULL,NULL,NULL);

请各位高手指教!

1

主题

31

帖子

31

积分

注册会员

Rank: 2

积分
31
发表于 2012-1-30 18:55:00 | 显示全部楼层

Re:求教D3D渲染残影的问题

大家可以加这个QQ群:198678750交流学习(美术+程序+策划交流派)

12

主题

90

帖子

466

积分

中级会员

Rank: 3Rank: 3

积分
466
发表于 2012-3-16 14:24:00 | 显示全部楼层

Re:求教D3D渲染残影的问题

ZBUFFER 的原因

33

主题

159

帖子

272

积分

中级会员

Rank: 3Rank: 3

积分
272
QQ
发表于 2012-3-16 21:35:00 | 显示全部楼层

Re:求教D3D渲染残影的问题

在FX COMPOSER里有例子,只是看了下,自己没动手做过
原理是:
  间隔0.2秒做渲一张图(每次POST后出来的图,循环使用,设4个时间点,到点存图;) 共4张 计为TEX1-TEX4
当前时间渲染出的图(在POST前)计 TEX5
按不同的时间作权重取色 colorOUT = colorTEX1*0.05+colorTEX2*0.10+colorTEX3*0.15+colorTEX4*0.20+TEX5*0.5
然后,测试是否在应该存图的时间点上,到点的话,把这个POST合成出来的图存到 TEX1-TEX4间相应的位置
如果不在存图时间点,则进行下一帧

原理大致就是这个意思了,效果与使用速度图合成出来的各有千秋。

33

主题

159

帖子

272

积分

中级会员

Rank: 3Rank: 3

积分
272
QQ
发表于 2012-3-16 21:37:00 | 显示全部楼层

Re:求教D3D渲染残影的问题

偶长时间没睡有点错乱了,不好意思没看清楚楼主的帖子,发了无关的东东,请忽略
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-9 16:19

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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