问题标签 [d3dx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 如何从 DirectX 11 中的着色器汇编代码编译?
D3DXAssembleShader 函数在 DirectX 9 中用于从 Assembly 编译着色器。DirectX 11 不支持它。是否有任何替代方法可以从汇编代码创建着色器?
我知道从 fx 或 hlsl 文件编译,但出于我的项目目的,我应该只使用程序集进行编译。
DirectX 9 中使用了以下代码:
我正在使用 D3D11 dll 在 DirectX11 中寻找上述代码的替代方案。
我想像下面这样修改我的 asm 文件并创建顶点和像素着色器:
我可以在 fx 或 hlsl 文件中做同样的事情吗?
FX 文件:
directx - 从 ID3D11VertexShader 或任何东西获取着色器字节码
我通常通过 D3DX11CompileFromFile 获取顶点着色器的字节码,但是有没有办法从 ID3D11VertexShader 获取字节码?或其他接口。
我尝试过其他 D3DX11Compile* 函数,例如 D3DX11CompileFromMemory、D3DX11CompileFromResource,但这些函数不是针对这个问题设计的。
正如我所说,我通常通过 D3DX11CompileFromFile 函数初始化着色器字节码(ID3DBlob*),但我不再使用它了。
我试图找到其他方法来解决这个问题。但我失败了。
是否可以在不使用 D3DX11Compile* 函数的情况下获取着色器字节码?
directx - 如何让 Visual c++ 打开 d3dx.h
最近我拿起一本关于使用 Visual C++ 进行游戏编程的书。它使用 DirectX 库,并说我只需要在代码中写入 #include 和 #pragma comment(lib, "d3dx9.lib") 即可。但是程序报告无法找到 d3dx.h。我怎样才能解决这个问题。
我尝试在项目属性-配置属性-链接器-输入-附加依赖项中添加该文件,但它仍然找不到该文件。如果有任何改变,我正在使用 Visual Studio 2010。
我报告为致命错误 C1083:无法打开包含文件:'d3dx.h':没有这样的文件或目录。
directx-12 - 为什么不推荐使用 d3dx?
我对 DirectX 非常陌生,并且只学习了一周。我发现并从中学习的一系列强大课程是braynzarsoft d3d12 课程。很难,有很多资料,但这是我喜欢的。
课似乎没上完,我决定在网上搜索一下如何制作一个球体,也许有现成的顶点矩阵,或者一些描述球体顶点的算法。我发现了这个问题,有人说我正在做的事情实际上已被弃用,现在我应该使用DirectX 工具包进行编程。
我真的很困惑——我做得很好,但我所有的代码都可以完美运行,而且只要我想要。
有 DirectX 编程经验的人可以向我解释为什么我正在做的事情被弃用,我应该做什么,以及我在哪里可以获得球体顶点?
目前,我编写了简单的顶点和像素着色器,初始化了一个 d3d12 设备,交换链,命令列表,描述了四边形的顶点,并编写了一个可以添加、移动、旋转和缩放立方体的类,我Update()
之前在调用中完成了这些UpdatePipeline()
.
我的尝试
在 DirectxTK 中有一个函数D3DXCreateSphere
,它具有LPD3DXMESH *ppMesh
和LPD3DXBUFFER *ppAdjacency
接口作为输出参数。也许,我可以从他们那里得到我需要的顶点数组。但无论如何,我不可能将 DirectxTK 代码与我的.
visual-studio - 链接器错误:无法打开输入文件“d3dx9.lib”
这是一个非常简单的问题,但我已经搜索了一段时间并且没有运气。我应该将它添加到我相信的链接器中吗?这是项目属性>链接器>输入>附加依赖项。我只是对到底该怎么做感到困惑。谢谢你。
c++ - 为什么在以下代码中调用 D3DXQuaternionToAxisAngle?
我正在尝试将一些代码转换为最初使用 direct3d 的 glm/opengl,并且根据我在 microsoft 网站上的文档中找到的内容遇到了一个没有意义的块。有问题的块在下面的评论中详细说明:
我的结论是否正确,即 if 块是多余的?或者我可能错过了什么?
c++ - 如何从 DirectX 文件中获取投影坐标,例如 XY?
我有一个 .x 文件,我知道我可以使用D3DXLOADMESHFROMX获取此模型的网格,但是以后如何获取顶点?此外,我只想沿轮廓获取顶点,我不需要内部顶点,并在某些图表上显示 XY 点。