游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1531|回复: 2

如何访问深度模板缓冲?

[复制链接]

11

主题

114

帖子

118

积分

注册会员

Rank: 2

积分
118
QQ
发表于 2005-12-14 11:23:00 | 显示全部楼层 |阅读模式
通过改变模板缓冲获得的Surface不能Lock,不能Save,里边的数据怎么给Shader用呢?
难到只能用把深度转换为ARGB的Shader再渲染一遍么 [em24] [em24] [em24] [em24]

0

主题

3

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2005-12-17 20:14:00 | 显示全部楼层

Re:如何访问深度模板缓冲?

友情顶一下,因为这个问题我也比较关心,就是如何获得深度缓冲的数据,目前在做的某个东西跟这个有关。这里显然是不能把depth转成argb格式的,精度就很成问题了。

其实不是所有的depthstencil-buffer都不能锁定的,按照SDK文档,D3DFMT_D16_LOCKABLE和D3DFMT_D32F_LOCKABLE这两种格式是可锁定的,SDK文档中特别提到只有D3DFMT_D16_LOCKABLE这种格式下,每个象素才确定地对应某个位。但我的显卡GF5600上这两种格式都不支持硬件加速,软件模拟……我晕一下……

如果用DX不能解决我只能换GL看能不能支持了。

0

主题

3

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2005-12-17 20:17:00 | 显示全部楼层

Re:如何访问深度模板缓冲?

另外CopyRect和UpdateSurface这两个函数也是不可用的,里面清楚地提到这种操作不能用于DepthStencile的Surface。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-23 00:58

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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