您的位置:首页 > 移动开发 > Unity3D

Unity3d学习04

2015-11-30 10:57 537 查看
一:键盘事件的获取
1.按下事件:
Input.GetKeyDown();//如果按下按键,返回ture,否则返回false
例如:

If(input.GetKeyDown(KeyCode.A))

{
Debug.log("按下了A键");

}
2.拾起事件:
Input.GetKeyUp();//如果抬起了按键,返回ture
例如:

If(input.GetKeyUp(KeyCode.A))

{
Debug.log("抬起了A键");

}
3.长按事件:

Input.GetKey();
例如:

Int num=0;

If(input.GetKey(KeyCode.A))

{

num++;
Debug.log("A被连按了"+num+"次");

}

 
二:载入新场景
例如一个碰撞器触发的载入新场景:

Void OnTriggerEnter(collider player)

{
Application.LoadLevel("场景名字");

}

 
三:导出游戏到特定的平台
1.file->buildsetting
2.将已建好的场景拖入scenes inbuild窗口实现添加,注意场景排序。
3.点击player setting按钮,在Inspector面板设置游戏基本信息,如:公司名字,游戏名字,游戏图标。在per-Platform
Setting选项中,保证对应平台正确,对于pc,可以调节分辨率,品质,全屏与否等等。
4.点击build and run或者build保存exe文件即可…

 
四:烘培光照贴图
1.设置静态物体,告诉系统场景中哪些物体是静态的。
选中物体,在Inspector面板中勾选static即可。
2.windows->lightmapping(光照贴图)
在object选项中选择烘培起作用的物体。
在bake选项中:Mode中,选择DualLightmaps系统会创建出远景和近景两层光照贴图;移动平台低效果游戏可以选Use
in forward rend选项;在最下面可以设置天空光线。
在maps选项:添加light probes(光线探测器),可以采集场景中的光线信息并应用到动态物体上。

创建空物体,选中该物体,Addcomponent->rendering->light probes

然后Add Probe,将探测器布置到场景中即可,探测器布置的越多,采样效果越好。
回到maps选项,bake probes将探测器烘培到场景中,然后回到object选项,将bakeprobes改为bake
scene。
 
烘培结束后删除场景中的光源。
要想探测器对动态物体生效,对于动态物体,要选中use light probes选项。
 
五:动画制作
Ctrl+6或windows->Animation打开动画编辑窗口,在资源文件夹内新建储存动画的文件夹Animation,选中物体,点击小红点,就可以录制动画了;
 
六:动画控制(同一角色不同状态触发不同动画)
1.在3ds
max里创建动画,导出FBX格式文件,命名规则:
物体名@动画名
2.在unity3d素材文件夹导入FBX文件,设置rig为legacy;
3.将模型拖入场景中,在Animations选项中设置size为需要导入的动画片段数,在下面依次导入动画片段。
4.写脚本:
animation.wrapMode = WrapMode.Loop; //设置所有动画为循环播放,还有其他方式可设置;
播放动画代码为:
animation.play("动画名");
//没有任何过度的播放一个动画;
animation.CrossFade("动画名");  //自动的从正在播放的动画平滑的切换到指定的动画;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity3d