gpt4 book ai didi

c++ - 如何使用纹理和 MeshConvert.exe 构建 SdkMesh?

转载 作者:行者123 更新时间:2023-11-28 04:38:47 25 4
gpt4 key购买 nike

我需要构建一个类似于 DirectX SDK 附带的 Tiny.sdkmesh 的 sdkmesh 文件。

我有网格文件 base.obj

我在 textures/base.jpg

中有纹理

我正在使用以下命令行运行 meshconvert.exe

meshconvert.exe base.obj -n -op -tb

它生成了一个base.sdkmesh但是没有纹理文件

我尝试使用 paint.net 将 jpeg 纹理保存为 dds 文件

当我渲染我的模型时,它全黑了。但是当我渲染 tiny.sdkmesh 模型时,它出现了纹理。

有人可以帮助解释这个未记录的工具和过程吗?

谢谢,

最佳答案

meshconvert 的最新版本是 DirectXMesh 的一部分, 所以除非你特别需要旧的 .X 文件支持(你不需要,因为你使用的是 Wavefront OBJ)你应该使用那个而不是 legacy DirectX SDK .

meshconvert 的默认行为是从 Wavefront OBJ 的 mtl 文件中获取纹理文件名,并将它们嵌入为 .dds 版本相同的文件(因此 texture.jpg 存储为 texture.dds)。您可以使用 DirectXTex 中的 texconv 工具生成 dds项目。您还可以使用 -nodds 开关告诉最新的 meshconvert 保留文件名。

您还可以使用 DirectX SDK Samples Content Exporter 从 Autodesk FBX 文件创建 SDKMESH 文件.该导出器还将“烹制”纹理作为导出过程的一部分。

如果您有一个 sdkmesh 并且您正在尝试找出其中包含的纹理引用,请尝试使用 sdkmeshdump控制台实用程序以查看其中的内容。

Disclaimer: SDKMESH is really only intended as a learning format used in DirectX samples. You can use it in your project, but you will most likely want to develop your own runtime container format if your engine/project becomes sophisticated. It mostly has the value of existing, so YMMV.

参见 DirectXMesh wikiDirectX SDK Content Exporter wiki

If you are using DXUT, you should use the latest version from GitHub. sdkmesh is also supported by the DirectX Tool Kit for DX11 and DX12

关于c++ - 如何使用纹理和 MeshConvert.exe 构建 SdkMesh?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50711755/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com