Unity3D官方案例1 | 您所在的位置:网站首页 › 播放星际爆炸的图片 › Unity3D官方案例1 |
【1】学习中的使用的类 1.Input:使用此类读取常规游戏设置中的轴,访问移动设备的多点触控和加速度。 本例使用到的方法: GetAxis(string axisName):获取键盘和操纵杆的输入,用于连续移动。在Unity中Edit > Project Settings > Input获取axisName。 本例使用的axisName:“Horizontal”“Vertical”,获取水平和垂直方向的输入。 bool GetButton(string buttonName):获取虚拟按键的输入,用于单次输入。buttonName与axisName相同。 bool GetKeyDown(string name):获取按下键位后反馈的结果,通常与秘钥代码KeyCode连用。 2.Rigidbody:通过物理模拟控制物体的位置。 本例使用的属性: public Vector3 velocity:刚体的速度矢量。 public Quaternion rotation:刚体的旋转。接收四元数,通常与Quaternion.Euler一起使用。 Vector3 angularVelocity:刚体的角速度矢量,本例中与Random.insideUnitSphere连用表示刚体以一个随机角度旋转。 3.Mathf:常用数学函数的集合类。 本例使用的方法:float Clamp(float value, float min, float max):把值限制在最大值和最小值之间,超出范围按照给定的最大值和最小值显示。本案例用于固定游戏的边界。 4.Quaternion:表示旋转的四元数。 本例使用的方法: Quaternion Euler(float x, float y, float z):接受X、Y、Z轴旋转角度的值为菜蔬,并返回一个Quaternion对象。 5.Object:Unity所有可引用对象的基类。 本例使用的方法: Object Instantiate(Object original, Vector3 position, Quaternion rotation):实例化一个克隆对象。 void Destroy(Object obj, float t = 0.0F):删除游戏对象。 6.Collider:所有碰撞器的基类。 本例使用的方法:void OnTriggerExit(Collider other):当碰撞器离开触发器时,调用此方法。 本例使用的属性:string tag:获取碰撞体的标签,通常用来标志和查询游戏对象。 7.Random:用于生成随机数据的类。 本例使用的属性:Vector3 insideUnitSphere返回球半径内随机一点的矢量 本例使用的方法: float Range(float min, float max):返回最小值和最大值之间的浮点数。 8.Transform:对象的位置,旋转和缩放。通常与position属性连用,表示游戏对象的位置。 9.AudioSoruce:3D中音频源的表示.通常用 Play, Pause and Stop来控制音频的动作。 10.Text:绘制字体数据到屏幕的默认图形。其text属性通常与Text组件中的内容关联。 11.Debug:开发游戏时简化调试的方法的类.本例中用其Log方法想控制台输出内容。 【2】学习中用到的组件 1.rigidbody 刚体:用于通过脚本为飞船添加作用力。其中常用的选项是Use Gravity,作用是为物体添加或删去重力。 组件内选项:angular drag:角速度阻力,决定物体旋转的持续性,如果需要一直旋转则将去设为0. 2.Mesh Colleder 网格碰撞器:使飞船和障碍物发生碰撞,并触发事件.需要勾选Is Trigger和Convex(凸面)选项,使其设为触发器。 备注:unity5以后不再支持非Kinematic刚体的非Convex网格碰撞体。 3.Material 纹理:初始为Default Material,可选其他模式。本例选择unlit中的Texture,意为不受光照影响的shader。 4.Capsule Collider胶囊碰撞体:形状形似胶囊,适合放在长条椭圆形物体上。 5.Audio Source音频组件:设置音频的效果 组件内选项: Play on Wake表示音频在唤醒时自动播放。 AudioClip:音频的来源。 Loop:是否循环。 【3】unity中的对象 1.camera 摄像机:Projection选项为摄像机的投影方式,Orthographic为正交投影,通常用于2D游戏或者2D UI。 2.quad:边长为1个单位的正方形平面 【4】处理技巧 1.使用纹理图片时,应对比着图片的尺寸进行放大,比如1024*2048的图片,操作时在Transform中的Scale选项的XY值按照1:2设置。 2.添加了类之后,如果其中的公共属性未赋值,会报出NullRenferenceException错误,此时需要在了类的上面添加可序列化属性[System.Serializable]。
|
CopyRight 2018-2019 实验室设备网 版权所有 |