`
convolute
  • 浏览: 260758 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Unity3D第一个项目【控制模型移动】

阅读更多

一、创建Unity项目

       打开Unity游戏编辑器界面,在导航菜单栏中选择File --->  New Project菜单项,在弹出界面中选择Create new Project页面,将项目名命名为MobilityModel,然后再点击Create Project,完成项目的创建。

       然后点击保存(Ctrl+S)保存场景。

 

二、构建模型

       在Hierarchy视图中分别创建游戏对象Plane(面板)、Cube(立方体)、Sphere(球体)、Cylinder(圆柱体)、Capsule(胶囊体),然后鼠标拖动创建的游戏对象将他们摆放在合适的位置。

       接下来在游戏中添加一个光源,在Hierarchy视图中选择Create--->Directional light菜单项,光源是游戏中非常重要的一个属性,一定要在游戏场景中设置它,如果不设置光源对象,Game视图会非常暗,严重影响游戏的效果。

 

三、添加脚本

       在Project视图中点击Create--->JavaScript菜单项创建一个游戏脚本,将其命名为MobilityModelScript.js,在脚本上编写如下代码:

//模型移动速度
var TranslateSpeed = 10;
//模型旋转速度
var RotateSpeed = 1000;
//绘制UI界面
function OnGUI(){
	//设置GUI背景色
    GUI.backgroundColor = Color.red;
	if(GUI.Button(Rect(10,10,70,30),"向左旋转")){
		//向左旋转
		transform.Rotate(Vector3.up * Time.deltaTime * (-RotateSpeed));
	}
	if(GUI.Button(Rect(90,10,70,30),"向前移动")){
		//向前移动
		transform.Translate(Vector3.forward * Time.deltaTime * TranslateSpeed);
	}
	if(GUI.Button(Rect(170,10,70,30),"向右旋转")){
		//向右旋转
		transform.Rotate(Vector3.up * Time.deltaTime * RotateSpeed);
	}
	if(GUI.Button(Rect(90,50,70,30),"向后移动")){
		//向后移动
		transform.Translate(Vector3.forward * Time.deltaTime * (-TranslateSpeed));
	}
	if(GUI.Button(Rect(10,50,70,30),"向左移动")){
		//向左移动
		transform.Translate(Vector3.right * Time.deltaTime * (-TranslateSpeed));
	}
	if(GUI.Button(Rect(10,50,70,30),"向右移动")){
		//向右移动
		transform.Translate(Vector3.right * Time.deltaTime * TranslateSpeed);
	}
	
	//显示模型位置信息
	GUI.Label(Rect(250,10,200,30),"模型位置"+transform.position);
	//显示模型旋转信息
	GUI.Label(Rect(250,50,200,30),"模型旋转"+transform.rotation);
}

      上述代码中重要方法和属性如下:

      OnGUI()方法用来绘制GUI界面组件。

      GUI.Button():设置一个按钮,返回true时表示该按钮被按下。

      GUI.Label():设置一个文本框。

      transform:为当前绑定模型的变换对象。

      transform.Rotate():设置模型旋转。

      transform.Translate():设置模型平移。

      Time.deltaTime:该数值为一个只读属性,不可修改,表示完成最后一帧的事件,单位为秒。

      Vector3:标志一个模型移动或者旋转的方法。

      Rect:规定一个矩形区域,用于显示控件。

      将编写好的脚本对象,将其从Project视图拖拽到Hierarchy视图中的立方体(Cube)对象上,如果没有提示错误,表示脚本绑定成功,运行游戏后该游戏对象将执行该脚本中的内容。

 

       目前立方体对象与其他模型对象之间是不存在碰撞的,但是运行游戏后,可以控制立方体(Cube)直接穿越另一个模型对象。为了让模型对象之间具有物理的碰撞,需要给模型对象添加一个刚体(Rigidbody)属性,添加方式:首先在Hierarchy视图中选中立方体对象,在Uinty导航菜单栏中选择Component --> Physics 

-->Rigidbody菜单项即可。

 

四、测试运行

       点击运行按钮就能看到结果,可以点击显示的六个按钮对象,可以移动Cube(立方体)的位置和旋转。


 

  • 大小: 121.7 KB
分享到:
评论
4 楼 sogrey 2017-02-13  
sogrey 写道
楼主威武,已经做出来了

成品下载 : 链接:http://pan.baidu.com/s/1pLpWKLd 密码:knml
3 楼 sogrey 2017-02-13  
楼主威武,已经做出来了
2 楼 www314599782 2016-04-07  
楼主写的很好,我已经做出来了,有点意思
1 楼 u013231847 2014-07-21  
         
初学者 用这个来做 还是做不出来 QAQ

相关推荐

    Unity3D-Playmaker 第三人称控制器简易教程

    在本教程中,我们将学习如何使用 Unity3D 的 Playmaker 插件来创建一个简单的第三人称控制器。Playmaker 是 Unity3D 的一个插件,可以帮助开发者快速创建游戏逻辑和交互系统。 首先,我们需要导入 Playmaker 资源包...

    unity3D 第三人称控制

    在Unity3D中,实现第三人称控制通常涉及以下几个步骤: 1. **创建角色控制器**: 首先,我们需要创建一个角色对象,通常是一个带有网格(Mesh)和刚体(Rigidbody)组件的游戏对象。网格代表角色的外观,而刚体则...

    Unity3D 角色控制器CharacterController

    在“Unity3D学习笔记04:角色控制器CharacterController控制人物移动旋转”的项目中,源码可能会包含以下内容: - 创建CharacterController组件,并设置合适的胶囊参数。 - 实现角色移动的逻辑,通常在Update()函数...

    unity3d的模型导入与脚本练习

    Unity3D 是一个功能强大且流行的游戏引擎,它提供了丰富的模型导入和脚本编程功能。下面我们将详细介绍 Unity3D 中的模型导入和脚本练习。 一、模型导入 Unity3D 支持多种模型格式的导入,包括 FBX、OBJ、3DS 等...

    Unity3D网络游戏实战 第01章

    在现代游戏开发领域,Unity3D作为一款强大的游戏引擎,备受游戏开发者的青睐,尤其在移动平台游戏开发中占据着重要地位。Unity3D以其易用性和高效性,支持多种类型游戏的开发,包括多人在线角色扮演游戏(MMORPG)、...

    Unity3D游戏开发笔记1.pdf

    * 在 Unity3D 中,需要创建一个角色控制脚本来控制角色的移动、旋转等行为。 * 可以使用输入系统来控制角色的移动,例如使用键盘上的 A 和 D 键来控制角色的旋转。 八、 CharacterController 组件 * 在 Unity3D 中...

    unity 3D第一人称射击游戏

    1. **摄像机设置**:Unity的第一人称控制器通常包含一个主摄像机,它跟随玩家角色移动并提供游戏视角。我们可以通过调整摄像机的位置和角度来实现第一人称视图。 2. **角色控制器**:这是一个特殊的脚本,负责处理...

    unity3d 游戏源码 Boxing Game Starter Kit 拳击项目包 资源.zip

    本篇文章将详细解析“Boxing Game Starter Kit”这个拳击游戏项目包,帮助开发者了解如何在Unity3D中构建一个完整的拳击游戏。 一、项目概述 "Boxing Game Starter Kit" 是一套专为Unity3D设计的拳击游戏基础框架,...

    unity3D游戏,第一人称射击游戏,unity期末作业,包含源码,设计报告

    总的来说,这个Unity3D第一人称射击游戏项目不仅为初学者提供了实践平台,还涵盖了游戏开发的多个关键领域,包括编程、VR技术、游戏设计理论和资源管理。通过实际操作和学习,开发者能够快速提升自己的技能,为未来...

    Unity 3D自学教程.docx

    在第一章中,我们将了解Unity 3D的基本概念,它是一个跨平台的开发工具,支持创建3D和2D内容,并能在Windows、Mac、iOS、Android、Linux、WebGL等多个平台进行部署。我们还会学习如何下载并安装Unity 3D,以及如何...

    Unity3D城市模型包(5.0以上版本)

    玩家能够以第一人称视角操作角色在城市中自由移动,这意味着模型包内必须包含角色动画、控制器脚本和交互系统。这些元素让玩家能够真实地感受到在城市中的行动,增加了游戏的沉浸感。 环境装饰物如树木、路灯、广告...

    Unity3d基础教学

    在Unity3D中,建立游戏项目的基础架构是游戏开发的第一步。以下是一些建立项目和管理Asset的关键步骤: 1. 建立新项目:从主菜单选择“File” -> “New Project”,并命名项目为“SpaceShooter2D”。在创建项目时,...

    Unity3d网络游戏实战 unity坦克 多人联网

    首先,Unity3D是一个强大的跨平台游戏开发引擎,它支持2D和3D游戏制作,广泛应用于手机游戏、桌面游戏以及网页游戏等领域。Unity5.5版本引入了许多新特性,包括优化的图形渲染、增强的音频处理和更完善的物理引擎等...

    Unity3D人物行走脚本示例2

    总结起来,`FPSWalker_edit02.cs`脚本展示了如何在Unity3D中实现第一人称角色的移动和视角控制,这包括键盘输入控制的前后左右移动、跳跃以及鼠标驱动的自由视角旋转。开发者可以根据自己的需求调整相关参数,如速度...

    unity3d 室内漫游源码

    在“unity3d 室内漫游源码”这个项目中,我们可以深入学习如何利用Unity3D来创建交互式的室内环境,并让用户体验自由漫步其中。 1. **室内场景构建**: - 使用Unity3D内置的3D模型资源或导入外部软件(如Blender)...

    基于Unity3D制作虚拟会议室

    在本项目中,“基于Unity3D制作虚拟会议室”是一个创新且有趣的尝试,它结合了游戏开发引擎Unity3D的强大功能,为用户提供了一种沉浸式的3D体验。Unity3D是目前全球广泛使用的跨平台游戏开发工具,同时也常用于创建...

    Unity UGUI第三人称视角手游 左侧控制移动,右侧控制视角和方向 (可根据自己需求修改)

    这个项目的核心在于,它利用Unity的UGUI系统来构建用户界面,同时结合角色控制器,实现玩家通过左侧屏幕控制角色移动,右侧屏幕调整视角和行动方向的功能。以下是关于这个项目的一些关键知识点和详细说明: 1. **...

    Unity3D 游戏开发 PDF完整版

    Unity3D是一款由丹麦Unity Technologies公司开发的全面支持多平台的游戏开发引擎,支持Windows、Mac、iOS、Android、Wii、PS3等众多平台,具备跨平台开发的特性。该引擎以其高度优化的图形渲染管道、强大的跨平台...

    Unity3D入门教程中文版

    2. **相机控制**:创建一个First Person Controller(第一人称控制器)脚本,用于实现玩家视角的移动和旋转。可以自定义键盘和鼠标输入映射。 3. **导航网格**:如果需要角色自动导航,可以启用NavMesh系统,为场景...

    unity的各种汽车,卡车模型。

    5. **预设(Prefabs)**:模型可能以预设形式提供,预设是Unity中的一个强大功能,允许开发者保存和重复使用复杂的对象组合,便于管理和更新项目中的多个实例。 6. **场景示例**:有时资源包会包含展示模型如何在实际...

Global site tag (gtag.js) - Google Analytics