一、引言
- 背景信息:对于像我这样不懂建模的人,遇到这样的问题就会特别恼火,打开3dMax我也不懂不会用,所以这个问题我只能在UE里里面去解决了。
二、问题描述
- 具体问题:每一次从3dMax中导出的Fbx我要把它导入到UE里面都会出现静态网格体的原点偏移类似这样:
后来知道了是因为导入的fbx没有加骨骼,3dmax里面好像叫什么组。
三、解决方案探索
- 初步尝试:刚刚开始的时候我就只能去给每一个网格体加一个场景组件作为他的父组件,然后所有的操作都对场景组件进行操作。
- 遇到的挑战:不过后来需要加场景组件的网格体越来越多,一个一个加实在是太麻烦了。
四、解决方案详解
后来通过查资料啥的我终于找到了解决方法。具体步骤如下:
1. 将ue的模式改为建模模式:
2. 打开后出现这样的选项框:
然后点击XFrom:
这个时候在视口的网格体就会出现一个球
这个球就是这个网格体的原点接下来就可以直接对其进行拖动就可以改物体的原点了。
或者就是直接点击这几个选项就可以直接自动对其了,然后点击下方的接受就可以改动源网格体的原点了。
不过我第一次想要进入建模模式的时候发现没有建模这个选项!!!!
然后又是查资料发现只要打开一个UE自带的插件就可以了:
打开这个插件就会出现建模这个选项了。
五、进一步探索
后来我又发现一个问题,所有的网格体都要去手动对其,我就在想能不能写一个自动化的类去帮助我做这些事情。
然后我发现,在蓝图中是拿不到这个插件的类的,只能去C++里头改了,不过我还是看不太懂C++的代码做起来有点困难。不过我还是有点收获的:
我找到那个功能应该在FUICommandInfo里面,不过我没有源码版的UE5所以只能止步了。