请教一下3D模型转发布格式问题

引擎这边有没有办法通过一个命令行工具,或者是npm项目,把FBX或者是gltf转成发布后的.bin格式。
现在需求是这样子,客户提供FBX文件,我们开发后,把发布项目给到客户,但客户想替换这个模型文件,客户使用的都是FBX文件,请问有没有什么办法可以解决这个问题呢。

3.x支持远程资源包,你可以把备用的或者需要替换的,都发布到远程,然后给用户弄一个上传地址就好了

感谢回复,请问可以详细一点吗。

可以看一下官方文档 bundle

这个好像不能满足我的需求,我的需求是我们开发游戏,开发完然后发布。客户可以用fbx来替换发布后的3D资源。

:joy:你都说自己是游戏开发者了,为啥不想想,到底是不能满足,还是你想岔了。是可以满足的,
根据我已有的知识,游戏是没有办法直接来加载你的fbx的,
所以,要用bundle的方式,把fbx发布出去,然后配置到远程,游戏去加载。
而你的客户,同样的方式,把fbx文件用cocos creator发布一下,覆盖掉你远程的文件,这样不就实现了你的需求了吗。
你这应该是想自己开发一个游戏或者应用,然后让用户的美术自己去换皮,bundle绝对可以完美解决你的需求的

1赞

1、我是游戏开发者没错
2、我知道游戏没有办法加载fbx,所以开贴请教呀!
3、我们的客户不一定是开发者,就说是开发者也不一定用cocos,我不可能去要求我的客户都去学会Cocos,然后用他来打bundle
4、我的客户不一定有美术,所以我们提供给客户的是最简单的UI操作,可以认为,我们技术开发了一款应用,然后给产品使用。

18年的时候,我们做过一个棋牌游戏定制器,支持用户自己上传图片,修改组件,在线编辑,一键预览,还有一键打包。所以我想,我比你更清楚你想要干什么。你的用户没有美术基础就必须用你的素材,如果你的用户要改素材,就必须有美术基础,其中的逻辑你自己想吧

1赞

很感谢你的回复,但你的需求并不是我想要的需求。
我的需求一句话就确定了:我的客户不需要会Cocos,只需要上传FBX,我们就在线把FBX转到发布后的模型数据,直接替换。

seconded

你怎么可能去要求客户一定要会Cocos Creator? 你还是没明白人家的需求。

也许把,其实我没试过到底能不能单独加载fbx文件,也不知道到底3dmax这种能不能预定发布规则,如果都可以,那确实是我没明白人家的需求了

为什么不转换一个思路?你们提供给客户的依旧是一个上传fbx的接口,然后在你们这边收到这个fbx之后,写个工具让这个fbx在你们自己这里打包成bundle,这样不是也可以么?

这个思路想到了,但服务器是linux,Cocos不支持linux,而且Cocos升级版本这么频繁,服务器不得装N个Cocos版本。

服务器只是做转发,最终还是可以在你们自己的打包机上面走,cocos的版本是基于你们游戏用的哪个,你们总不至于游戏和资源工程版本不一致吧?而且这也并不是一个频繁操作,即使速度慢一点,哪怕最差的结局也就是别人上传了通知你们,你们手动打包把bundle资源覆盖,这也能达到目的。

而你现在只需要解决怎么监听客户上传,拿到fbx之后,替换资源自动打包,然后覆盖线上的bundle。

楼主我能明白你的想法,因为我现在的项目和你的项目需求是一模一样的,都是用户自主上传模型,客户端可以打开一个资源库的面板,根据用户选择创建模型到场景中。现在有解决办法么?急求!!! :sob:

引擎方面不支持,没有什么特别好的办法,就是自己写个FBX或者是GLTF转cocos能识别的.bin格式。目前正在书写中。
目前的做法是,把fbx先转成gltf(因为这个格式比较好处理),然后看mesh.ts的读取代码,反推写出.bin代码。就可以支持网格资源替换了。

真要解决不了,那就换成banylonjs引擎,这个引擎是绝对可以的。