繁体   English   中英

地形高度图-C ++ /顶点着色器具有不同的值

[英]Terrain Height Map - C++/Vertex Shader has different values

我一直在地形上工作,不得不完全停下来。 我正在使用C ++,DirectX9和HLSL进行编程以创建地形,但是我还使用了BMP格式的高度图。 我正在从C ++端和着色器端的高度图中加载信息。 在C ++方面,我使用D3DXCreateTextureFromFile和曲面(D3DXSaveSurfaceToFile)加载信息,而在着色器方面,我使用tex2Dlod加载有关地形顶点的信息。 这两个从高度图获得不同的值。 经过进一步的研究,我发现tex2Dlod函数利用Mip映射(仍然无法完全理解这些映射)来加载信息。

有人知道如何使两个数字匹配吗? 如果您需要更多信息(数字,图片或其他信息),请告诉我!

谢谢!

第一个问题是为什么您坚持使用DX9是什么原因? 我至少会理解DX10。 您能给我看HLSL代码吗?

tex2Dlod是具有两个参数的纹理采样函数。 1. sampler2D 2. float4(纹理坐标)。

实际上tex2dlod是执行纹理贴图映射(纹理细节)和texel偏移的功能。 但是我完全不明白哪里出了问题? 您能更具体一点吗?

顺便说一句,整个功能至少仅在shader model 3.0中受支持。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM