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

[笔记] Unity 脚本一文通(一)

[复制链接]
发表于 2020-12-17 09:26 | 显示全部楼层 |阅读模式
tips:
①. 将Unity的C#编辑器改为vscode:
②. unity脚本保存后unity自动编译该脚本,在unity右下角加载圈会显示该进程,该过程进行中,请勿运行游戏执行脚本.
一. 脚本简介

1.脚本语法
2.编译过程
会编译成三种语言
3.挂脚本
①.在unity中往物体(元素)上挂脚本会创建一个类的实例对象,
②.unity中每个元素都有一个集合,里面存储了元素身上挂载的组件
4. 创建C#脚本的Unity初始模板
打开文件夹:   unity\Editor\Data\Resources\ScriptTemplates
打开文件:81-C# Script-NewBehaviourScript.cs.txt
输入如下内容:
using UnityEngine;
using System.Collections;
/*



*/
/// <summary>
///
/// </summary>
public class Demo01 : MonoBehaviour
{


}
5. 脚本参数与unity联动
①. 类中public的参数会显示在Unity面板中 且可以更改;
②. 如果私有变量想显示: 请    序列化字段;
[SerializeField]   
    private int a=100;
③. 如果公有变量想隐藏: 请 隐藏字段
[HideInInspector]
    public int b=200;
④. 如果变量想控制调整范围 :
[Range(0,100)]
    public int c=20;
⑤. 属性(get;set;)在unity中不能面板显示,所以一般不写
⑥.不要在脚本中写构造函数
二.脚本生命周期

1.初始阶段
Awake(),OnEnable(), Start();
//Aweak() 执行先于 Start()
private void Awake() { //创建游戏对象后   立即执行  仅一次
Debug.Log("Awake"+Time.time+","+this.name);   
}
private void Start() { //创建游戏对象后  脚本启用后  立即执行  仅一次
    Debug.Log("Start"+Time.time+","+this.name);   
}
void OnEnable()    //创建游戏对象后  脚本启用后  立即执行   启用几次执行几次
{
    Debug.Log("Onenable"+Time.time+","+this.name);
}
2. 物理阶段
固定更新,适合对物体做物理操作,不会受到渲染影响.
3.游戏逻辑阶段
4. 输入事件  (与碰撞器交互)
5. 场景渲染
6.结束阶段
7.总结    可以在API文档中搜MonoBehaviour看各个方法
三.调试

1.unity调试
注意:控制台信息会消耗很多性能,最终完成的项目一定要清楚这些调试代码.
2. 在VS中调试
想在某个时间点调试可以 先调试 运行 等待时机后 暂停游戏,加断点 继续调试
3.在vscode中调试(方法与vs类似) //调试控制台中可以即时调试.
4.写个按钮方便测试

本帖子中包含更多资源

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

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

本版积分规则

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

GMT+8, 2024-5-20 07:33 , Processed in 0.088880 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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