directx11怎么样只clear一部分depth/stencil view 呢
对于每一部分,生成一个矩形,画出来。vertex shader是个直通输出坐标的。pixel shader输出depth,渲染状态里输出stencil。D3D下没别的办法。OpenGL里的clear是接受scissor状态的,D3D不接受。所以在ANGLE里,我们的做法就是那样,画矩形。具体代码和解释在https://chromium.googlesource.com/angle/angle/+/master/src/libANGLE/renderer/d3d/d3d11/Clear11.cpp, Clear11::clearFramebuffer。
■网友
改op然后直接画上去就行了,要有想象力
■网友
1. 做一张纹理图,把要清空部分像素点的Alpha设为1,其他部分设为02. 开AlphaTest,只取Alpha为1的像素3. 开AlhpaBlend,BlendOp设为Add,SrcBlend因子设为0,DestBlend因子设为14. StencilTest和DepthTest都设为Always,StencilRef的值设成你想清空以后的值5. 投影矩阵设成正交投影6. 画一个刚好覆盖整个屏幕的矩形(矩形在投影空间的Z坐标除以(ZFar - ZNear)会转化为深度),把第一步做的纹理图贴上去
■网友
其实你每次渲染的时候都是可以改写stencil的,例如让测试永远通过,并且进行替换… 问题无非就是你无法确定这个渲染图形会覆盖在哪些区域… 方法就是不要让顶点着色器做顶点变换
推荐阅读
- dart这编程语言现在发展怎么样了,语法与Java,c#很相似,甚至更简洁
- 青年|一汽奔腾T77怎么样?车主吐槽:后排座椅太短,和坐小板凳似的
- 电商网站支付流程的流失率是怎么样的从用户点击充值/支付按钮,到支付完成,其中每一步的流失比率都是咋样的
- 作为一个服装供应商,怎么样与淘宝卖家沟通才能卖出自己的产品或者拿到订单
- 在丁丁租房工作的感受是怎么样的
- 城市数据团是怎么样一个团队
- win7中本地连接跟无线网卡同时使用时是怎么样的模式
- 猫扑网南迁广西,媒体唱衰BBS,论坛的未来会怎么样怎样改变
- 被人围攻是怎么样一种体验,包括但不限于(蛋糕,口舌,拳脚,西瓜刀,机枪,code review)
- o2o模式的电商怎么样进行线上线下的引流
