首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在HDRi中加载Cocos3D映射

在HDRi中加载Cocos3D映射
EN

Stack Overflow用户
提问于 2014-07-04 07:56:54
回答 1查看 720关注 0票数 0

我想在一个HDRi应用程序中加载一个iPhone地图(类似于Google ),然后我希望能够在场景中加载一些3D字符。

您可以在这里看到一个我想要加载的例子:

http://www.hdri-hub.com/hdrishop/freesamples/freehdri/item/117-hdr-041-path-free

目前,我使用Cocos3D从Blender通过POD导出文件加载3D模型,所以可能有一种方法在Cocos3D中加载HDRi。我找到了这个类CC3STBImage,它可以用来加载HDR类型,但我不知道如何使用它(没有找到任何示例)。我已经看到CC3Texture2DContent有“phdr”文件扩展名的initFromSTBIFile:方法,所以也许HDRi可以作为纹理加载?

编辑

我成功地加载了一个带有图像的球形网格,下面看到了答案和注释。在此,通过CC3Camera在天框中查看结果的一些屏幕截图:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-04 16:04:27

正如您提到的,HDRi支持是由CC3STBImage类提供的。使用该类的文件扩展名列表在CC3STBImage useForFileExtensions方法中可用。如果不想将文件重命名为*.phdr,则可以将想要的文件扩展名添加到此集合中。

一旦确保了HDRi文件扩展名在上面的集合中,就可以简单地使用以下命令将HDRi文件加载到CC3Texture中:

代码语言:javascript
复制
[CC3Texture textureFromFile: @"myFile.phdr"];

CC3STBImage使用stb_image.c文件中提供的第三方库。有关HDRi支持的更多信息,以及任何潜在的限制,请查看该文件中的注释。

请记住,iOS OpenGL实现限制了纹理的大小。Cocos3D记录当前平台在应用程序启动期间的最大纹理大小。查看日志中的条目,如:

代码语言:javascript
复制
[info] Maximum texture size: 4096

指示该平台支持的最大OpenGL纹理宽度和高度。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24569374

复制
相关文章

相似问题

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