≡
导航
搜索
教程
插件
模型
模板
博客
交易
朋友
Unity 3D 游戏引擎吧
已关注 | 取消
+关注
关注:
46
帖子:
451
签到
05月05日 尚未签到
看帖
图片
精品
视频
共有回帖数
1
个
【交流】Unity 脚本入门 个人经验及常用方法块
只看楼主
收藏
回复
幻梦如戏
等级:
一、常用变量
//var a : int = 1;//整型
//var b : float = 0.05;//浮点
//
//var c : GameObject;//游戏物体
//var c2 : Rigidbody;//刚体
//var c3 : Collider;//碰撞
//
//var c4 : Transform;//位置
//
//var c5 : Renderer;//渲染器
//var c6 : Material;//材质
//var d : Color;//颜色
//var e : Texture;//贴图
//var e1 : Texture2D//2D贴图
//var f : String = “XXX”//字符
//var bool : boolean = true / false; //布林值1、条件判断2、开关3、对错 默认是false
//var tiewu : GUITexture //贴纸(瞄准镜)
//var aa : MovieTexture;//视频
unity 脚本的生命周期
unity3d中的碰撞器和触发器的区别?
触发器只是碰撞器身上的一个属性,碰撞器是触发器的载体。
碰撞器有碰撞的效果,IsTrigger=false,可以调用OnCollisionEnter/Stay/Exit函数;
触发器没有碰撞效果,IsTrigger=true,可以调用OnTriggerEnter/Stay/Exit函数。
CharacterController和Rigidbody的区别?
CharacterController自带胶囊碰撞器,里面包含有刚体的属性;
Rigidbody就是刚体,使物体带有刚体的特征。
几 种 力
a)爆炸力(AddExplosionForce(force : float, forcePos : Vector3,radius : float, upwards : float, mode : ForceMode)),应用一个力到刚体来模拟爆炸效果,就是在爆炸力中心坐标position,搜索在radius范围内的刚体,对其释放力作用,超 出radius范围的刚体不受力作用,爆炸力将随着刚体的距离线性减弱。
b)力AddForce(force : Vector3, mode : ForceMode),主要施力给一个刚,使其移动。
c)位置力AddForceAtPosition(force : Vector3, position : Vector3, mode : ForceMode), 在position施加一个力,施力的主体将会受到一个力和力矩。
d)相对力AddRelativeForce(force : Vector3, mode : ForceMode),类似于AddForce;
Unity3D 声音
Unity3D游戏引擎一共支持4个音乐格式的文件
.AIFF 适用于较短的音乐文件可用作游戏打斗音效
.WAV 适用于较短的音乐文件可用作游戏打斗音效
.MP3 适用于较长的音乐文件可用作游戏背景音乐
.OGG 适用于较长的音乐文件可用作游戏背景音乐
在场景中创建一个空的游戏对象。
GameObject - CreateEmpty 创建成功后我命名为audio。
给audio添加一个AudioSource属性,这个属性非常的重要,Unity播放音乐主要就是要靠这个东西。
//**示例**//
using UnityEngine;
using System.Collections;
public class audio : MonoBehaviour {
//音乐文件
public AudioSource music;
//音量
public float musicVolume;
void Start() {
//设置默认音量
musicVolume = 0.5F;
}
void OnGUI() {
//播放音乐按钮
if (GUI.Button(new Rect(10, 10, 100, 50), "Play music")) {
//没有播放中
if (!music.isPlaying){
//播放音乐
music.Play();
}
}
//关闭音乐按钮
if (GUI.Button(new Rect(10, 60, 100, 50), "Stop music")) {
if (music.isPlaying){
//关闭音乐
music.Stop();
}
}
//暂停音乐
if (GUI.Button(new Rect(10, 110, 100, 50), "Pause music")) {
if (music.isPlaying){
//暂停音乐
//这里说一下音乐暂停以后
//点击播放音乐为继续播放
//而停止以后在点击播放音乐
//则为从新播放
//这就是暂停与停止的区别
music.Pause();
}
}
//创建一个横向滑动条用于动态修改音乐音量
//第一个参数 滑动条范围
//第二个参数 初始滑块位置
//第三个参数 起点
//第四个参数 终点
musicVolume = GUI.HorizontalSlider (new Rect(160, 10, 100, 50), musicVolume, 0.0F, 1.0F);
//将音量的百分比打印出来
GUI.Label(new Rect(160, 50, 300, 20), "Music Volueme is " + (int)(musicVolume * 100) + "%");
if (music.isPlaying){
//音乐播放中设置音乐音量 取值范围 0.0F到 1.0
music.volume = musicVolume;
}
}
}
移动,旋转的方法
1.transform.position 动态改变物体的X,Y,Z
2.transform.Translate(0.05,0,0); 平移
1:旋转到指定角度
gameObject.transform.eulerAngles = Vector3(90, 0, 0);
2:在一帧移动的
transform.Rotate(Vector3(0.05,0,0));
切换场景
DontDestroyOnLoad(XX); //切换场景时选择不删除的物体
Application.LoadLevelAsync(name);
射线
鼠标点击屏幕中间发出射线 碰到layer 为10的打印
if(Input.GetMouseButtonDown(0))
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if(Physics.Raycast(ray, out hit,10))
{
print("layer 10");
}
}
楼主 2015-08-05 20:03
回复
mygameplay
等级:
这个太有用了,感谢楼主!!
1楼 2015-08-08 10:04
回复
我也说一句
共有回帖数
1
个
回 帖
表情
图片
视频
欢迎来到本吧,您可以在此发帖和众多大咖交流学习.
选择或直接输入昵称
Tips:支持QQ截图直接粘贴
发表
登录直线网账号
自动登录
忘记密码
免费注册
本吧信息
查看详情
吧主:
mygameplay
本吧公告
优秀文章 【交流】Unity 脚本入门 个人经验及常用方法块 http://www.linecg.com/tieba/content_4292.html 大家可以看一下
我常逛的吧
我管理的吧
Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号
意见反馈
|
关于直线
|
版权声明
|
会员须知