【http://www.newflash3d.com---flash3D先锋队:北京贝武易科技公司】
有疑问请联系我QQ:36359635
我们用到unity3d
主要知识点:
1、点击触摸屏,播放对应的物体动画
2、在maya中创建好物体及动画
3、在unity3d中进行动画设置
4、设置一个2d场景的灯光和摄像机
5、设置一个背景
下面我们按步骤来学习:
1、新建项目
File –> New Project
给项目起名为:“Tut1-TouchAnim”
路径就用默认的就可以,如上图。
新建完了我们看到第一次的unity3d界面,很干净。
新建的项目目录下文件为:
里面包含:资源和库
2、生成项目文件夹
在项目面板(Project),Create --> Folder
单击Create后面,会弹出菜单,选Folder,生成文件夹。
给文件夹重命名为Objects。
同样,生成一个名为:Scripts的文件夹。
这些文件夹都在你的硬盘里项目Tut1-TouchAnim\Assets 文件夹里。
在生成一个:Textures文件夹。
3、保存场景Scene:
选择File –> Save Scene,保存场景名为:“Tut1-TouchAnim”
4、下面我们就进入到3d工作了,我们用maya。
需要设置一下maya的坐标,让Y轴向上。
在maya的菜单Window –> Settings/Preferences –> Preferences
进入设置面板,
点Settings选项
设置为Y轴向上,因为Unity里是Y轴向上。
单位设为“Millimeter”(毫米),经过测试,这单位是maya与Unity之间最理想缩放的单位。
5、下面我们就在maya里建立物体了。
生成一个箱体 Create –> Polygon Primitives –> Cube。
点击INPUTS里的polyCube1,修改箱体的参数
设置长宽高为20,记住,你现在的单位为毫米
同时设置位置归零,Translate X:0, Y:0 and Z:0
同时设置箱体的旋转角度为
Rotate X:45, Rotate Y:45, and Rotate Z:45
每个轴45度
6、让箱体动起来--动画阶段
只是一个简单的动画,让箱体前转180度,后转180度。
选择箱体,在第一帧,按S键,定第一个关键帧。
到第十帧,设置Rotate Y:225,按S再设定关键帧。
到20帧,恢复到45度,按S键,设定关键帧。
7、保存这个maya文件,File –> Save Scene As…
保存到Tut1-TouchAnim\Assets\Objects目录下,名为cubeAnim.mb
保存后maya显示结果为:// Result: C:/Documents and Settings/Administrator/My Documents/Tut1-TouchAnim/Assets/Objects/cubeAnim.mb
8、在unity中进行动画物体设置:
回到unity项目里,你会看到在Objects下面有一个文件cubeAnim。
我们单击物体,在右边就会自动出现物体的输入设置,在这里是
这里maya物体是以FBX格式导入的。
在animations栏下,按小加号,增加动画进去。
把“idle”改名为 forward,设定帧为1到10.
再增加一个,把“idle”改名为 backward,都不要循环loop frame不选。
这样我们就有了两段动画了。
点Apply同意钮后,unity自动用maya软件转换,把文件转换成Fbx格式,并导入,我们可以看到新转换出来的文件为cubeAnim
它自动带了两个Animations,动画片段,注意时间的小标。
9、把物体加到场景scene:
我们先给场景加一个虚拟体,可以理解为容器,然后把我们要加的物体链接到虚拟体上去。
Game Object –> Create Empty
虚拟体出现在Hierarchy (层级面板上)
把cubeAnim拖到新建的虚拟体GameObject 上
我们可以看到cubeAnim物体(箱体)出现在场景里
10、增加脚本script
在Project面板,选择Scripts 文件夹
点Create按钮, 选JavaScript
生成一个JavaScript 脚本
把脚本重命名为TouchAnim
双击脚本,编辑代码如下
var hit : RaycastHit;
function Update () {
// Use Raycast to pick objects that have mesh colliders attached.
var ray = Camera.main.ScreenPointToRay (Input.mousePosition);
if (Input.GetMouseButtonDown (0)) //Returns true during the frame the user touches the object
{
if (Physics.Raycast (ray, hit, 100))
{
animation.Play("forward");
}
}
if (Input.GetMouseButtonUp (0)) //Returns true during the frame the user deselects the object
{
if (Physics.Raycast (ray, hit, 100))
{
animation.Play("backward");
}
}
else {
}
}
在Inspector(督查面板)我们可以看到脚本的结果。
11、把脚本链接到物体:
把脚本拖到Hierarchy层级面板上cubeAnim物体上。
链接好了你可以看到cubeAnim物体在Inspector(督查面板)多出Touch Anim (Script) 这一项。
这里有一个小错误,应该是一个Touch Anim (Script) ,删除一个,只留下一个就可以。
12、给物体增加一个Mesh Collider(表面碰撞):
在Hierarchy面板选择cubeAnim物体,再Component –> Physics –> Mesh Collider.
有了Mesh Collider,物体就能探测到物体被点击了。
13、调整摄像机
在Hierarchy 选择主相机Main Camera, 设置位置Position: 741,67, 1061 ,旋转 Rotation: 0, 180,0.
可以按播放,测试一个效果。
14、加入一个材质背景:
给场景加入一个片物体,Game Object –> Create Other –> Plane
它默认的位置为出现在你视图的中心。
设置旋转:Rotation:90,0,0
加了背景平面物体后,背景物体当点击鼠标后也有反应,这不是我们要的,我们需要把它的这个反应移除。
选择Plane物体,在Inspector面板,单击Mesh Collider栏的“gear”齿轮小图标。
选“Remove Component”,移除组件。
把一个纹理贴图放到项目目录Tut1-TouchAnim\Assets\Textures 下。
这里我们用defGrid.psd,把它从Textures 目录直接拖到plane物体上。
15、在场景中加入灯光。
Object –> Create Other –> Directional Light
通过旋转、移动等工具,调整好灯光的位置、方向等。
灯光的默认设置就可以,但还是有一个需要调整,就是渲染模式,Render Mode 调为“Force vertex”.
16. Set the iPhone Bundle Identifier:
设置为iPhone格式。
选择Edit –> Project Settings –> Player ,项目游戏者设置。
在Inspector参数阅览栏.
后面的开发需要在苹果机器中进行。
后续。
- 大小: 123 KB
- 大小: 118.9 KB
- 大小: 33.5 KB
- 大小: 65.2 KB
- 大小: 42.8 KB
- 大小: 7.2 KB
- 大小: 46.5 KB
- 大小: 8.5 KB
- 大小: 12.5 KB
- 大小: 51 KB
- 大小: 285 KB
- 大小: 58.2 KB
- 大小: 23.8 KB
- 大小: 27.6 KB
- 大小: 14.3 KB
- 大小: 29.5 KB
- 大小: 16.7 KB
- 大小: 14.7 KB
- 大小: 71.2 KB
- 大小: 105.2 KB
- 大小: 82.6 KB
- 大小: 9.6 KB
分享到:
相关推荐
iphone 3D游戏开发,unity 3D基础教程
Unity3D游戏开发教程 Unity3D 入门教程
Unity3D 作为一款跨平台的游戏开发引擎,可以开发出运行在网页、客户端、安卓手机、 Iphone 手机,Ipad、Xbox360、PS3、Wii 客户端的游戏。其内置的 Mono 和 ShaderLab 程序 语言体系良好的解决了多系统跨平台直接...
Unity3D是由Unity Technologies开发的一个让你轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game ...
IPhone 3D游戏艺术_Unity3D篇 从美工到程序,完整的一个游戏教程 As a 3D artist, you’ll find yourself presented with numerous opportunities and avenues to explore within different industries. The ...
Unity3D游戏引擎-雨松MOMO原创文章,不想下载的朋友可以去:http://blog.csdn.net/column/details/unity3d.html 在线观看,这里的是我为了自己学习方便整理的一个pdf版本!
课程包括Objective-C、cocos2d(cocos2d-iphone & cocos2d-x)、cocos2d-iphone 项目、cocos2d-x 项目、Unity3d、Unity3d项目等,完整讲述了ios平台2d、3d游戏开发的要点。 2、本课程学员实践操作环境为MAC系统(普通...
Unity3D 是一个让你轻松创作的多平台的游戏开发工具,是一个全面整合的专业游戏引擎。 =============================================================================== 特色 综合编辑 通过 Unity 简单的游戏制作...
开发iphone 3D游戏,游戏引擎脚本基础教程
该工具基于原生手柄、iOS和Android的API开发,它可提供一个通用界面,能在所有平台同时触发触觉反馈,而且还能根据每个平台不同触发正确而特有的振动。 无论你想触发简短的振动、触觉预设、连续信号或是高级复杂的...