导入在Unity编辑器中工作的对象,运行构建项目时出错

问题描述 投票:1回答:1

我试图在运行时将.obj文件导入我的Unity项目。我使用框架SimpleOBJ来导入此文件。

在Unity编辑器内运行项目时,一切都按预期工作,并导入和显示对象。

但是,在我尝试导入文件时构建项目后,我收到错误,并且无法导入.obj文件。

我尝试了不同的导入方法,更类似于框架提供的示例,但这只会使代码复杂化,但不能解决我的问题。

class ObjHandler : MonoBehaviour
    {
        public GameObject import()
        {
            filepath = FileBrowser.OpenSingleFile("*");
            WWW www = new WWW(filepath);
            return ObjImporter.Import(www.text);
        }
public void ImportObject()
        {

            ObjHandler handler = new ObjHandler();
            _gameObject = handler.Import();
             foreach (Transform child in _gameObject.transform)
            {
                 GameObjects.Add(new GameObjectModel(child.gameObject));
                Debug.Log(child.gameObject.name);
            }   
        }

预期成果:https://i.imgur.com/0o0iyf6.png

实际结果(错误):https://i.imgur.com/yMtesoh.png

c# unity3d build .obj
1个回答
0
投票

我找到了解决问题的方法。 事实证明,正是我使用的Unity版本创造了这个问题。

在错误日志中挖掘了一些后,我发现了这个错误:

警告:Shader不支持:'Legacy Shaders / Diffuse' - 传递'Meta'没有顶点着色器

所以我尝试了几次升级Unity。

最终我使用了Beta版本:Unity 2019.2 0a11

此版本修复了不受支持的着色器错误,这修复了我的独立构建错误。

© www.soinside.com 2019 - 2024. All rights reserved.