通过RuntimeInitializeOnLoadMethodAttribute属性,可以在游戏启动时自动执行没有挂载到GameObject上的脚本。
这样在做一些插件的时候会比较方便,不需要用户手动去添加脚本,只要启动游戏就能直接自动执行。

// Create a non-MonoBehaviour class which displays
// messages when a game is loaded.
using UnityEngine;class MyClass
{[RuntimeInitializeOnLoadMethod]static void OnRuntimeMethodLoad(){new GameObject("Test");}}

创建上面的代码,场景中不需要做任何操作。当点击运行的时候,场景里会自动出现一个名为Test的GameObject。

它还有下面四个参数

AfterSceneLoad   当场景加载完成后调用
BeforeSceneLoad 场景加载之前调用
AfterAssembliesLoaded    当多有程序集加载完毕后,预加载资源初始化好之后回调。Callback when all assemblies are loaded and preloaded assets are initialized.
BeforeSplashScreen  Splash Screen显示之前调用。Immediately before the splash screen is shown.
SubsystemRegistration   子系统注册回调

示例

// Demonstration of RuntimeInitializeOnLoadMethod and the argument it can take.
using UnityEngine;class MyClass
{[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]static void OnBeforeSceneLoadRuntimeMethod(){Debug.Log("第一个场景加载前");}[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)]static void OnAfterSceneLoadRuntimeMethod(){Debug.Log("第一个场景加载后");}[RuntimeInitializeOnLoadMethod]static void OnRuntimeMethodLoad(){Debug.Log("第一个场景加载后");}
}

注意当有多个使用同一个参数的回调时,回调的顺序是不确定的。

Unity3D 未挂载脚本自动初始化相关推荐

  1. unity3d 挂载脚本_Unity3D 自动添加脚本到物体上(指定脚本挂在指定位置上)

    转载自 http://www.manew.com/blog-123323-3438.html 关于场景内物体添加脚本等等的 最麻烦了,而且经常容易丢失 . 现在给新手一个比较好的方法来自动添加脚本. ...

  2. 树莓派USB存储设备自动挂载并通过脚本实现自动拷贝,自动播放视频,脚本自动升级等功能...

    需求: 首先需要树莓派自动挂载USB设备,然后扫描USB指定目录下文件,将相关文件拷贝至树莓派指定目录,然后通过omxplayer循环播放新拷贝文件视频 1. 树莓派实现USB存储设备自动挂载 树莓派 ...

  3. 【Unity3D】Unity 脚本 ① ( 创建 C# 脚本 | Visual Studio 2019 中打开 C# 脚本 | 编译 C# 脚本 | 挂载 C# 脚本到游戏物体 | 运行脚本 )

    文章目录 一.创建 Unity 脚本 二.Visual Studio 2019 中打开 C# 脚本 三.编译 C# 脚本 四.挂载 C# 脚本到游戏物体 GameObject 1.添加组件方式 2.直 ...

  4. linux中自动挂载脚本,LIUNX一键自动挂载脚本,宝塔磁盘LIUNX一键分区磁盘 | 帮助信息-动天数据...

    LIUNX一键自动挂载脚本,宝塔磁盘LIUNX一键分区磁盘 作者:dthost | 时间:2019-01-25 | 9,225 次阅读 用惯WIN系统的朋友们,估计上手LIUNX服务器,第一件事很多人 ...

  5. 自动初始化 git Bash脚本

    每次都要一行行写太麻烦了,这里粘一个自动初始化git的脚本 保存下面的文件为 autogit.sh 使用方法: bash autogit.sh git项目地址 # 例:bash autogit.sh ...

  6. linux sd卡挂载脚本,Linux下实现U盘、SD卡自动挂载功能 .

    在 Linux中我们经常用到U盘.SD卡的挂载问题,每次都手动挂载或卸载非常麻烦,我们可以采取以下方法实现自动挂载或卸载U盘.SD卡 1.首先在/etc/init.d/rsC中加入以下语句 echo ...

  7. node工程默认url_node命令行工具之实现项目工程自动初始化的标准流程

    一.目的 传统的前端项目初始流程一般是这样: 可以看出,传统的初始化步骤,花费的时间并不少.而且,人工操作的情况下,总有改漏的情况出现.这个缺点有时很致命. 甚至有马大哈,没有更新项目仓库地址,导致提 ...

  8. 【Unity3D】Unity 脚本 ② ( Visual Studio 2019 中的 Unity 编译环境配置 | Unity 编辑器关联外部 C# 脚本编辑器 Visual Studio )

    文章目录 一. Visual Studio 2019 中的 Unity 编译问题 二. Unity 编辑器中关联外部 C# 脚本编辑器 三. 设置游戏运行时脚本更新行为 一. Visual Studi ...

  9. [转]WinXP、Win7脚本自动加域及用户资料迁移

    原文地址 http://shubao.blog.51cto.com/401810/710102 WinXP.Win7脚本自动加域及用户资料迁移 最近公司要上AD域项目,所有的用户全部从工作组环境切换到 ...

最新文章

  1. MySQL binlog
  2. CentOS 6.5 LVM磁盘管理学习笔记
  3. hadoop学习--多表关联
  4. DL之CNN:卷积神经网络算法应用之卷积神经网络实践技巧(DA/DP/WI/BN/H/O/R)、优化技术经验之详细攻略
  5. SDUT_2012省赛热身赛1
  6. 90后80后70后60后和50后的无奈
  7. 公安部:明年起闯红灯扣6分 挡车牌扣12分
  8. OpenCASCADE:MFC示例
  9. Echarts API说明文档
  10. 自动处理可载入模块命令 modprobe
  11. java并发的艺术_Java并发编程的艺术(一)
  12. Linux 进程热升级
  13. python门店会员管理系统_python---CRM用户关系管理
  14. 2022新版UI云购H5系统源码+完美运行/功能强大
  15. JAVA常见异常之NullPointerException 空指针异常
  16. 9种免费在线PDF编辑网站
  17. 2021-08-11BUU-CTF:[WUSTCTF2020]alison_likes_jojo
  18. Linux IO体系、零拷贝和虚拟内存关系的重新思考
  19. 服务器连接异常系统无法登录,Win10系统电脑无法登录LOL提示服务器连接异常的原因及解决方法...
  20. webdav使用mysql_如何设置WebDAV与MySQL认证Apache2(Debian Etch)

热门文章

  1. 2022-2028全球与中国数据虚拟化解决方案市场现状及未来发展趋势
  2. POI Excel插入线条(直线、斜线)
  3. ListView的用法以及即时刷新
  4. JDBC中executeQuery、executeUpdate和execute之间的区别
  5. 最新大学英语四级词汇表 A
  6. 【JavaScript】9.基本引用类型-原始值包装类型
  7. PTA-C理论B类题库6-3使用函数求最大公约数(辗转相除法的实现)
  8. Appium爬虫小案例
  9. C# 根据传入的字符串生成拼音码,包含全码和简码
  10. R语言中var的用法