首頁 > 資料庫 > mysql教程 > Direct3D渲染到纹理的一点技巧

Direct3D渲染到纹理的一点技巧

WBOY
發布: 2016-06-07 15:41:28
原創
1807 人瀏覽過

在Direct3D开发中,HLSL文件中往往需要多个pass,这就需要渲染到纹理的技术。目前开发的一个D3D系统中,一个Effect文件有3个technique,总共有10个pass,也就是需要9次渲染到纹理,需要申请多个Texture2D,RenderTargetView和ShaderResourceView,按照9次渲

 

在Direct3D开发中,HLSL文件中往往需要多个pass,这就需要渲染到纹理的技术。目前开发的一个D3D系统中,一个Effect文件有3个technique,总共有10个pass,也就是需要9次渲染到纹理,需要申请多个Texture2D,RenderTargetView和ShaderResourceView,按照9次渲染,以上三种纹理资源就需要各申请9个,申请资源非常多,而且每个纹理都是RGBA格式,占用显存较多。后来,经过测试琢磨到了一些渲染到纹理的一点技巧,可以减少申请的纹理数,那就是纹理复用。可以总结为以下三点:

1. 在一个pass中,使用到的纹理不能作为渲染纹理;

2. Effect文件中的纹理变量与应用程序中的纹理是一一绑定关系,应用程序中的纹理改变了,Effect文件中的也会改变。
3. 已经渲染的纹理,在当前及以后的pass中没有使用到,那么该纹理资源可以使用来渲染,不用再申请新的纹理资源,从而节省资源。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板