找回密码
 立即注册
查看: 615|回复: 0

[笔记] C#代码跟unity关联教程

[复制链接]
发表于 2020-12-2 12:37 | 显示全部楼层 |阅读模式
1、C#脚本的规则
(1)凡事需要添加到游戏对象的C#脚本类都是需要直接或者间接的继承 MonoBehaviour 如果在unity添加脚本 unity会自动填充继承MonoBehaviour的代码  如果是自己新建一个文件 然后在unity从拖拽添加component 这样是不会成功的(后面会说unity怎么添加C#文件)

(2)继承了MonoBehaviour的类 都会有Start 和 Awake函数的继承  一般使用Start和Awake来初始化  不使用构造函数的原因是unity中无法确定构造函数的顺序。这里我觉得有个原因是:unity会把所有绑定在对象身上的类实例化  然后才可以GetComponent()  例如:下面的操作如果在构造函数中做 可能PlayerAttack这个没有实例化 那么获取不到  所以把初始化工作放在Start中








Alt text


(3)类名和脚本文件名相同
(4)协同函数Coroutines 返回类型必须是Ienumerator
(5)C#不支持自定义命名空间
2、C#脚本在unity编辑器中关联对象(十三章有详细介绍)
1、创建脚本的方法:









Alt text


2、创建完之后的编辑:

这里可以修改用MonoDevelop的编辑器 或者用Vs2012作为代码编辑








Alt text


3、关联到对象去

(3.1)添加一个gameobject








Alt text




(3.2) 然后给gameObject添加脚本








Alt text








Alt text


在Unity中,继承MonoBehaviour的C#脚本都被看作一个Component 游戏对象可以理解为一个容纳各种类型component的容器 游戏对象的所有component一起决定了这个对象的行为表现 这个对象被添加到scene中之后 然后点击build and run 之后这个脚本的Start函数就会被调用一起  可以在这里输出 hello world  这就算是unity的hello world
3、怎么获取别的对象以及他的component
使用函数 GameObject.Find  null则是找不到  根据类名

使用函数GameObject.FindWithTag

还有在unity编辑器中拖拽


查看数组的表13-6 表13-7  表13-8  表13-9






Alt text










Alt text










Alt text










Alt text







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-6-15 23:46 , Processed in 0.104066 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表