使用脚本在Unity中加载3D对象

时间:2017-02-27 15:22:10

标签: unity3d 3d

This is the screenshot of my assets/resources folder

我目前很难使用unity3d中的脚本在场景中加载3D对象。

我在场景中制作了一个游戏对象,其中它将由3D对象填充。

这是我加载3D的代码,哦,我已经在资源文件夹中添加了我的3d对象。

object1 = Instantiate(Resources.Load("design2")) as GameObject;

你觉得我做错了什么?谢谢!

1 个答案:

答案 0 :(得分:0)

好吧,如果3d对象资源是一个obj。或.fbx等然后游戏无法找到你需要的东西。而是实例化一个新的GameObject,然后添加一个Mesh类型的组件,将你的3d资源加载到Mesh组件中。

using UnityEngine;
using System.Collections;

public class NewBehaviourScript : MonoBehaviour {
private GameObject gameObject;
private Mesh myMesh;

void Start ()
{
    gameObject = new GameObject("Empty");
    gameObject.AddComponent<MeshFilter>();
    gameObject.AddComponent<MeshRenderer>();
    myMesh = (Mesh)Resources.Load("path",typeof(Mesh));
    GetComponent<MeshFilter>().mesh = mesh;
}

你最终会得到你想要的东西。代码未经过测试,但概念已经存在。

哦,运行时的路径是相对于资源文件夹的,所以除非它在Resources文件夹中,否则你需要导航到它。例如:

 string path = "Models/mesh1";

希望它有所帮助。