unity3d中如何用脚本创建对象或者类

unity3d中如何用脚本创建对象或者类,第1张

你要创建什么对象?如果是unity3d中的物体那是可以的,如果是脚本,不好意思,没见过动态创建脚本的,因为unity3d与其他引擎最大的不同在于它的gameobject和脚本使用方式,unity3d中脚本生效是通过挂载在物体上实现的。

只能动态的将写好的脚本添加到物体上,无法动态的新建脚本

//给游戏物体添加名为FoobarScript的脚本

var fbs : FoobarScript

fbs = gameObject.AddComponent(FoobarScript)

这是js写法

public FoobarScript fbs

public void Awake() {

fbs = gameObject.AddComponent()

}

这是C#写法

在c#中一般会封装成dll文件对外提供接口调用,unity的js脚本也是这样的调用方式。

一、创建dll文件

1。打开vs文件->新建->项目->C#->类库,输入项目的名称,创建一个dll项目

2。引入 UnityEngine UnityEditor 这两个文件放在unity安装目录的Unity\Editor\Data\Managed路径下,

具体添加步骤:右键点击解决方案->添加引用->浏览

3。如果加入了UnityEngine UnityEditor,在项目中就可以using UnityEngine 和 UnityEditor;如果项目中不需要,也可以省略第二步

举例说明:

using System

using System.Collections.Generic

using System.Linq

using System.Text

using UnityEngine

using UnityEditor

using System.Collections

namespace dlltest

{

class Class2 : MonoBehaviour

{

void Start()

{

Debug.Log("this is unity call C# dll test!")

}

}

}

5。F5启动生成解决方案(debug或者release),把生成的dll放到unity工程的asset下;

6。如果继承了Monobehaviour的类在dll的子对象中有显示,这样就可以绑定到GameObject上了,如果是要引用dll的类,需要using 命名空间,名字一般和项目名称一致才能调用。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7882149.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存