C++ 是否有任何DirectX 11(HLSL 5.0)等效于DirectX 9纹理;字符串函数";语法?

C++ 是否有任何DirectX 11(HLSL 5.0)等效于DirectX 9纹理;字符串函数";语法?,c++,directx,directx-11,hlsl,directx-9,C++,Directx,Directx 11,Hlsl,Directx 9,我目前正在使用GPU Gems 2书中的源代码,我正在尝试将其转换为DirectX 11。虽然相对来说没有痛苦,但由于使用纹理来帮助查找,他们所使用的优化已经有点麻烦了。原始代码使用了一个现在似乎已经失效的方法来声明纹理,我不知道如何将其转换为现代DirectX 我所指的纹理声明类型示例如下: (来自inoise.fxh文件) 在文件的这一部分上面有一条注释(其中包含了用于各自纹理的更多函数)说//使用CPU运行时生成纹理的函数 使用Dx11有什么简单的方法可以做到这一点吗?我目前的调查建议我应

我目前正在使用GPU Gems 2书中的源代码,我正在尝试将其转换为DirectX 11。虽然相对来说没有痛苦,但由于使用纹理来帮助查找,他们所使用的优化已经有点麻烦了。原始代码使用了一个现在似乎已经失效的方法来声明纹理,我不知道如何将其转换为现代DirectX

我所指的纹理声明类型示例如下: (来自inoise.fxh文件)

在文件的这一部分上面有一条注释(其中包含了用于各自纹理的更多函数)说
//使用CPU运行时生成纹理的函数


使用Dx11有什么简单的方法可以做到这一点吗?我目前的调查建议我应该使用CreateTexture函数的
D3D11\u SUBRESOURCE\u DATA*pInitialData
部分。

调用纹理声明中
之间的内容。虽然D3DX9中的效果系统有几个,但“功能”似乎不是其中之一。标准注释主要由外部工具用于帮助编写着色器,例如在中


这些值在DirectX上下文中不提供实际的额外功能,但可能用作元数据,C++代码将用于生成纹理。可以使用、或函数查询注释值(在C++中)。如果将这些文件移植到DirectX 11,您可以简单地在C++代码中硬编码这些值,或者将它们从数据文件中加载。

标准注释也被绑定到遗留效应系统中,因此它们在“推荐的现代解决方案”的“直HLSL”编码中实际上没有得到使用。也就是说,如果你愿意,你可以使用。请参阅了解“效果”状态的详细信息,以及FX与HLSL的对比。感谢您的澄清,我现在正在研究预生成图像。
texture permTexture
<
    string texturetype = "2D";
    string format = "l8";
    string function = "GeneratePermTexture";
    int width = 256, height = 1;
>;
float4 GeneratePermTexture(float p : POSITION) : COLOR
{
    return permutation[p*256] / 255.0;
}