主要知识点:

1、点击触摸屏,播放对应的物体动画

2、在maya中创建好物体及动画

3、在unity3d中进行动画设置

4、设置一个2d场景的灯光和摄像机

5、设置一个背景
下面我们按步骤来学习:
1、新建项目
File –> New Project
给项目起名为:“Tut1-TouchAnim”

设置为iPhone格式。

[img]http://dl.iteye.com/upload/attachment/282718/3c44571b-0641-37ce-9a37-1b015418e350.jpg[/img] 

路径就用默认的就可以,如上图。 

新建完了我们看到第一次的unity3d界面,很干净。 


[img]http://dl.iteye.com/upload/attachment/282722/aa2bf651-28ce-38b0-a90e-2a087d74af60.jpg[/img] 


新建的项目目录下文件为: 


[img]http://dl.iteye.com/upload/attachment/282724/b42adbbc-7875-3eb0-9188-c6837bcb6b37.jpg[/img] 

里面包含:资源和库 

2、生成项目文件夹 

在项目面板(Project),Create --> Folder 


[img]http://dl.iteye.com/upload/attachment/282728/ac20bcf7-d865-3d81-84d7-b9ce992fbbe6.jpg[/img] 

单击Create后面,会弹出菜单,选Folder,生成文件夹。 

给文件夹重命名为Objects。 


[img]http://dl.iteye.com/upload/attachment/282734/a4f64a20-d1bf-3cc1-9518-ad4cf64bb870.jpg[/img] 


同样,生成一个名为:Scripts的文件夹。 


[img]http://dl.iteye.com/upload/attachment/282736/192620ad-39b1-31e0-bb54-e9e09cadb078.jpg[/img] 

这些文件夹都在你的硬盘里项目Tut1-TouchAnim\Assets 文件夹里。 

在生成一个:Textures文件夹。 

3、保存场景Scene: 

选择File –> Save Scene,保存场景名为:“Tut1-TouchAnim” 


[img]http://dl.iteye.com/upload/attachment/282738/e18cac6d-bef4-37b3-85b5-3c902321a7d3.jpg[/img] 

4、下面我们就进入到3d工作了,我们用maya。 

 需要设置一下maya的坐标,让Y轴向上。 

 在maya的菜单Window –> Settings/Preferences –> Preferences 

进入设置面板, 


[img]http://dl.iteye.com/upload/attachment/282740/bcab1c2f-1749-3734-a665-de2308e3b882.jpg[/img] 

点Settings选项 

设置为Y轴向上,因为Unity里是Y轴向上。 

单位设为“Millimeter”(毫米),经过测试,这单位是maya与Unity之间最理想缩放的单位。 


[img]http://dl.iteye.com/upload/attachment/282742/fa065929-8f2f-37d4-9278-6e20ecf26f74.jpg[/img] 

5、下面我们就在maya里建立物体了。 

 生成一个箱体 Create –> Polygon Primitives –> Cube。 

 点击INPUTS里的polyCube1,修改箱体的参数 

设置长宽高为20,记住,你现在的单位为毫米 

同时设置位置归零,Translate X:0, Y:0 and Z:0 

[img]http://dl.iteye.com/upload/attachment/282858/42bee92a-db25-31e2-9d6f-3ff6c3c496c6.jpg[/img] 

同时设置箱体的旋转角度为 

Rotate X:45, Rotate Y:45, and Rotate Z:45 

每个轴45度 


[img]http://dl.iteye.com/upload/attachment/282862/2d8482d8-5c93-3cdf-86d0-25770d2f336e.jpg[/img] 

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。 


[img]http://dl.iteye.com/upload/attachment/282866/428acd84-1e07-3f97-969f-5e1dc4ceff8b.jpg[/img] 

我们单击物体,在右边就会自动出现物体的输入设置,在这里是 


[img]http://dl.iteye.com/upload/attachment/282878/94ee776c-e4a3-3584-87b3-65308c4a86d6.jpg[/img] 

这里maya物体是以FBX格式导入的。 

在animations栏下,按小加号,增加动画进去。 

把“idle”改名为 forward,设定帧为1到10. 

再增加一个,把“idle”改名为 backward,都不要循环loop frame不选。 

这样我们就有了两段动画了。 


[img]http://dl.iteye.com/upload/attachment/282882/d4bdf462-e064-354e-9625-17bd3e528315.jpg[/img] 

点Apply同意钮后,unity自动用maya软件转换,把文件转换成Fbx格式,并导入,我们可以看到新转换出来的文件为cubeAnim 

它自动带了两个Animations,动画片段,注意时间的小标。 


[img]http://dl.iteye.com/upload/attachment/282976/836573a9-f4c7-3d3a-8b13-55e17e556d00.jpg[/img] 

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 {
	}

} 


[img]http://dl.iteye.com/upload/attachment/282980/6a239618-e7b4-3841-938f-7c69bc617958.jpg[/img] 

在Inspector(督查面板)我们可以看到脚本的结果。 


11、把脚本链接到物体: 

把脚本拖到Hierarchy层级面板上cubeAnim物体上。 

链接好了你可以看到cubeAnim物体在Inspector(督查面板)多出Touch Anim (Script) 这一项。 


[img]http://dl.iteye.com/upload/attachment/282982/749b2814-b9db-3f21-bffa-990d361b479b.jpg[/img] 

这里有一个小错误,应该是一个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. 


可以按播放,测试一个效果。 


[img]http://dl.iteye.com/upload/attachment/282995/5487d9e5-9581-376f-a447-969364bfee9c.jpg[/img] 

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”. 


[img]http://dl.iteye.com/upload/attachment/283038/691f9a60-9961-39ce-bd99-8160b39bad14.jpg[/img] 

16. Set the iPhone Bundle Identifier:


选择Edit –> Project Settings –> Player ,项目游戏者设置。


在Inspector参数阅览栏.


后面的开发需要在苹果机器中进行。


后续。