在C#脚本中,必须显式的继承MonoBehaviour类
需要注意的是,在创建C#脚本时,脚本名应尽量符合C#命名规则,以字母或下划线开头,因为类名的默认跟随脚本名。
C#声明变量的方式和C++和Java类似,例如
public string[] name = {"element1","element2",...};
public int i; public GameObject obj;
总体来说,与JavaScript的区别在于类型关键词的放置位置不同。
函数的定义方式:
<public/private/protected> <返回值类型> <函数名>(参数列表)
{
}
注意,在C#中float值后面必须跟个f.
例如 float a = 12.3f;
不同语言脚本的通信:C#与JS通信
必须将JS放入Standard Assets文件夹中。
JS部分关键语句:需要类型转换,类型为JS脚本名,JS脚本必须放在Standard Assets文件夹内。
JS_test jsScript = (JS_test)GetComponent("<JS脚本名>");
这样,jsScript就可以调用JavaScript脚本中的公共方法了。
C#部分关键语句:只需要常规获取组件,下述情况发生在C#与JS绑定在一个物体上的情况。
var cs = this.GetComponent("CS_test");
四类时间:以秒为单位
Time.time 从游戏开始计时,截至目前消耗的总时间。
Time.deltaTime Update()函数完成上一帧所消耗的时间
Time.fixedTime FixedUpdate()固定消耗时间总和
Time.fixedDeltaTime 固定更新上一帧消耗的时间
延时语句delay:
1.含有延时语句的函数返回值类型必须为:IEnumerator
2.在需要延时的部分使用:yield return new WaitForSeconds(secs);
3.特殊用法:等待一个事件A(),可以return A();
随机数random:
使用Random.Range(min,max);//支持浮点数
数学函数Mathf:
Math.Abs,Sin,Cos,Tan,Max,Min,PI
Math.Clamp(num,min,max);//限制num处于min与max之间
四元数Quaternion.Euler(x,y,z):
Quaternion.Euler(x,y,z)返回的是旋转四元数,将它付给物体的rotation属性可以在一帧内完成旋转。
如果使用Quaternion.Slerp方法还可以插值低速旋转,第一个参数为物体的rotatior属性,第二个参数
为要旋转角度的四元数,第三个参数为时间间隔。
相关文章
- 自己从0开始学习Unity的笔记 I (C#字符串转换为数字)
- Unity3D学习笔记(3)C#中的值类型和引用类型
- C#程序员的春天之从零开始学习unity3D游戏开发入门教程一(前言)
- Unity3D学习笔记——递归+非递归遍历GameObject的子物体
- Unity3D学习笔记(一)GUI控件的调用
- c#面向对象基础技能——学习笔记(二)基于OOP思想研究对象的【属性】
- ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现
- C#程序员的春天之从零开始学习unity3D游戏开发入门教程二(创建项目及基本面板介绍)
- java学习笔记基础篇-java的三大特性之封装
- C#程序员整理的Unity 3D笔记(十):Unity3D的位移、旋转的3D数学模型