首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用.tga 11读取DirectX

用.tga 11读取DirectX
EN

Stack Overflow用户
提问于 2013-07-20 12:06:14
回答 1查看 2.7K关注 0票数 0

自从我在一个工具上工作几天以来,我需要用directX 11在几个文件格式上绘制纹理,在谷歌上搜索了很多之后,我没有找到该怎么做。

我使用D3DX11CreateShaderResourceViewFromFile加载.dds和.png文件,但我在其他地方读到.tga不再受支持。我读了一些关于D3DLOCKED_RECT的东西,用来设置纹理的每个像素,并读取.tga文件来了解这些像素,但这是directX 9的内容。

有什么帮助或建议吗?提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-07-20 18:22:58

//注意:我不使用D3D11

用于D3DX11CreateShaderResourceViewFromFile的MSDN页面说有DirectXTex库,应该能够使用LoadFromTGAFile例程加载*.tga文件。你应该试一试。如果它不适用于您,您将不得不编写您自己的纹理加载器。(因为可以在D3D9中为纹理编写加载程序,所以应该可以在D3D11中做同样的事情)。*.tga格式是记录在某处,许多初学者教程专门处理在没有第三方库的情况下加载这种特定格式。

两项建议:

  1. 下一次,当有疑问时,请阅读文档。
  2. 不要看*.png格式。这种格式加载速度非常慢(jpeg更快,未压缩bmp更快,dds更快),并且很可能不适合经常需要加载许多图像的游戏(可以将它用于开始菜单、结束屏幕等)。要么使用未压缩格式(如*.tga),要么(因为使用directx)使用*.dds格式。您的映像很可能占用额外的磁盘空间,但加载速度会更快。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17762103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档