Unity 3d 实验指导书
- 格式:doc
- 大小:1.88 MB
- 文档页数:5
南京科远控制工程股份有限公司NANJING KEYUAN CONTROL ENGINEERING CO., LTD目录1指导书综述 (2)2 UNITY的安装 (2)3 UNITY QUANTUM系统CPU综述 (2)4 新建一个UNITY 项目 (3)4.1 选择处理器 (3)4.2 配置主机架 (4)4.3 配置CPU (6)4.4 配置远程站 (6)4.5 配置IO (8)4.6 配置以太网 (10)5 下载程序 (11)6 逻辑编写 (12)6.1 变量声明 (12)6.2 自定义模块 (13)6.3 代码编写 (14)7 在线调试,修改 (14)8 热备系统的实现 (15)9 外网连接 (16)10 系统诊断 (20)1 指导书综述本作业指导书只是提供一个UNITY项目开发的大致框架和注意事项,具体事项还得查看相关手册。
2 UNITY的安装U NITY安装的系统要求:(1) 操作系统:WIN2K PRO或者 WINXP PRO(2)硬件:最低P4 1.2G,512MRAM,(3)IE版本:最低5.5与AB或者SIEMENS的编程软件不同,UNITY在一台机器上只能安装一个版本。
影响U NITY的其它软件:在我们个人机器上的一些IE插件会影响UNITY的正常工作如:网络实名、上网助手、新浪点点通、Chinese keywords、3721中文邮。
另外金山词霸的2002/2003版本也有影响。
3 UNITY QUANTUM系统综述UNITY PRO系统是MODICON推出的最新PLC控制系统编程软件。
主要面向QUANTUM和PREMIUM高端型号控制器。
提供了梯形图(LD)、结构化文本(ST)、顺序控制(SFC)、以及功能块(FBD)等多种语言编程,在一个项目中可以使用多种语言,符合IEC标准。
UNITY 支持7种型号的QUANTUM系列处理器。
分别是140 CPU 311 10,140 CPU 434 12U, 140 CPU 534 14U,140 CPU 651 50,140 CPU 651 60,140 CPU 652 60, 140 CPU 671 60。
关于Unity3D开发实践教材,有很多值得推荐的资源。
以下是一些常见的Unity3D开发实践教材:
•《Unity3D游戏开发实战(第2版)》(清华大学出版社出版,宣雨松著)
这是一本帮助读者快速上手的Unity3D游戏开发教程,以实战项目为案例,详细介绍了Unity3D游戏开发的流程、方法和技巧。
本书适合有一定编程基础的读者阅读,可以作为游戏开发爱好者的自学教材,也可以作为相关专业的教材或参考书。
•《Unity5.x游戏开发实战详解》(人民邮电出版社出版,吴亚峰、苏亚光、于复兴著)
这是一本全面介绍Unity5.x游戏开发的实战教程,通过多个案例详细介绍了Unity5.x游戏开发的流程、方法和技巧。
本书适合有一定编程基础的读者阅读,可以作为游戏开发爱好者的自学教材,也可以作为相关专业的教材或参考书。
•《Unity 2018游戏开发实战》(人民邮电出版社出版,[美] Joe Hocking著)
这是一本全面介绍Unity 2018游戏开发的实战教程,通过案例详细介绍了Unity 2018游戏开发的流程、方法和技巧。
本书适合有一定编程基础的读者阅读,可以作为游戏开发爱好者的自学教材,也可以作为相关专业的教材或参考书。
•《Unity3D手机游戏开发》(清华大学出版社出版,金玺曾著)。
实验1-1 弹力小球一、实验目的:熟悉unity的界面,理解unity的基本概念,熟悉工作流程。
二、实验内容:创建一个弹力小球、地面、灯光,和简易操作菜单。
三、实验步骤:1.创建新工程(Create new project)。
运行unity,点击Browse选择创建工程路径(注意:Unity不支持中文路径),在Import the following packages选项卡中不做任何勾选,然后点击Create按钮,创建工程。
创建完成后,出现一个新场景,新场景中默认自带一个摄像机(Main Camera)。
2.创建地板。
首先点击层次面板中的Create按钮,选择Cube。
这时一个Cube已添加到了场景视图中,然后再到检视面板中按下图调节缩放(Scale)参数。
我们得到这样一个被压扁了的正方体(Cube),这便是我们的地板。
3.创建小球。
回到层次面板,点击Create,选择球体(Sphere)。
小球创建好以后,我们在Transform面板中找到小球Position的Y属性,把参数改为5。
我们便得到了一个距离地板5个单位高度的小球,如下图。
接下来,我们在层次面板中选中Main Camera,然后在主菜单栏中点击Game Object,在弹出的选项卡中选择Align with View选项,把相机视角调整到我们场景的视角。
调整好相机视角后,我们点击工具栏中Play(播放)按钮,来进行我们的第一次场景测试。
我们可以看到,我们的场景非常暗,这是因为我们场景中还没有添加灯光;好,我们接下来,来为场景添加一展灯,再次点击Play按钮,结束测试。
4.创建灯光。
回到层次面板,点击Create按钮,选择Point Light(点光),我们为场景添加了一展点光源。
我们可以看到,这是我们的场景视图中多出了一盏灯。
接下来,我们来到检视面板,调节灯光的位置(Position)参数、范围(Range)和光强(Intensity),调节好的参数设置如下图所示。
6.试验6 Unity3d 根本操作1 试验目的通过本试验的学习,使学生把握利用软件开发工具unity 3d进展三维模型的创立,以及把握Unity 3d软件的根本操作方法。
2 试验环境Windows10操作系统、Unity2022.1.13 试验内容Unity3D 操作方法,地形、树、草的绘制,天空盒、雾及影子效果的添加方法,材质贴图的编辑,地形中贴图的编辑设置4 试验步骤〔1〕. 在菜单栏GameObject->3D Object->Terrain 里创立地形,在右面的来修改地形的Inspector 设置面板里点击面积,选择一个适宜的大小〔如图〕。
图4- 1 地形示意图〔2〕. 在菜单栏GameObject->Light->Directional light 里创立平行光〔如以下图〕创立工程的时候默认会添加一个,假设没有就手动添加一个。
图4- 2 平行光示意图〔3〕.选中地形对象,在右边的Inspector 面板里面设置Terrain 参数,Terrain菜单栏有一行图标于建立无极限高的山峰,,其中该图标用该图标比第一个图标多了一个参数值Height,设置该参数可以限定山的高度,因此可以创立高地平台,使用该图标可平滑山峰,通过转变BrushSize 和Opacity 的参数建立不同的山峰〔如图3〕;图4- 3 山峰水池示意图〔4〕. Terrain 菜单栏里面的图标可用于给地形贴图,点击Assets->Importpackage->Environment->TerrainAssets 导入软件自带的地形的贴图数据库,点击材料进展贴图〔如以下图〕;选择Add Texture 选择已导入的贴图图4- 4 贴图示意图〔5〕. 该图标分别可用于给场景添加树木和草,方法为点击菜单Assets->Importpackage->SpeedTree 和TerrainAssets 分别导入树木和草的数据库,点击点击或,选择Add Tree 在弹窗中来添加已导入的树木和草材料〔如以下图所示〕;草材料通过Edit Detail 添加,属于细节局部,放大前方可观察。
如何在Unity中制作3D游戏的入门指南Unity是一款强大的游戏开发引擎,广泛应用于制作2D和3D 游戏。
本文将为读者提供一份如何在Unity中制作3D游戏的入门指南。
第一章:Unity基础知识在开始制作3D游戏之前,我们需要先了解一些基本的Unity知识。
首先,Unity采用了C#作为其主要的编程语言。
因此,学习和了解C#语言对于使用Unity进行游戏开发是非常重要的。
另外,了解基本的Unity界面和功能,如场景视图、层次视图和检查器视图,对于创建和管理游戏场景非常有帮助。
第二章:准备3D模型和资源在制作3D游戏之前,我们需要准备好所需的3D模型和其他资源。
Unity支持导入多种3D模型文件格式,如FBX和OBJ。
选择适合你游戏风格的模型,并使用Unity的资源管理器将其导入到项目中。
此外,还可以使用Unity Asset Store下载和导入其他资源,如贴图、声音和特效等。
第三章:场景设置和物体布置在Unity中,游戏场景是由各种物体构成的。
通过使用Unity 的场景视图和层次视图,我们可以轻松设置场景的大小、摄像机位置和光照效果等。
然后,使用Unity中提供的各种物体,如立方体、球体和平面等,通过简单的拖拽和放置来布置场景。
这些物体可以用来创建游戏的地形、建筑和其他实体。
第四章:对象交互和游戏逻辑在游戏中,物体之间的交互是非常重要的。
在Unity中,我们可以使用碰撞器和触发器来实现对象之间的碰撞检测和触发事件。
此外,通过编写C#脚本,我们可以为物体添加行为和游戏逻辑。
比如给一个人物添加移动、跳跃和攻击等功能,或者实现游戏中的计分系统和关卡切换等。
第五章:粒子特效和音效为了增加游戏的视觉和听觉效果,我们可以在Unity中添加粒子特效和音效。
Unity内置了粒子系统,可以用来创建火焰、雨滴、爆炸和烟雾等特效。
通过修改粒子的属性和参数,我们可以根据需要调整特效效果。
同时,我们还可以导入和使用音频文件,如背景音乐、音效和语音对话等,为游戏增添音乐和声音效果。
XXXX工程实训说明书题目基于Unity的3D机器人探险游戏系(部)计算机科学与技术专业(班级)姓名学号指导教师起止日期2014.06.11-2014.07.05摘要本次工程实训的实训题目是基于Unity的3D机器人探险游戏。
Unity是一款很强大3D游戏开发引擎。
在用Unity实现3D机器人游戏的过程中,在软件使用方面,需要用到photoshop和3Dmax等美工或建模软件;在脚本语言编写方面,需要涉及JS或C#;本说明书从最初的3D探险游戏策划,到利用Unity相关技术实现场景物体绘制及渲染,再到3D探险游戏的测试,最后到游戏的完全实现及单机版的发布,对本次实训内容的实现和完成过程进行描述和说明。
Unity探险游戏主要包括如下内容:场景、检查点、widget机器人、敌方角色。
检查点用于widget机器人在游戏过程中的死亡后的复活。
关键字:Unity,3D,JS,C#目录摘要 (I)1 引言 (1)1.1 编写目的 (1)1.2 项目背景 (1)2 需求规约 (3)2.1 任务概述 (3)2.2 需求规定 (3)2.3 运行环境规定 (5)3 游戏实现过程 (6)3.1游戏玩法设计 (6)3.2游戏内容设计 (6)3.3游戏界面设计 (6)3.4关卡设计 (10)3.5游戏基本架构和主要类设计 (11)3.6数据结构与算法设计 (13)4 技术说明 (15)4.1 3D渲染 (15)4.2 动画制作 (15)4.3 数据存储 (15)4.4 游戏特效 (15)4.5 粒子系统 (15)4.6 碰撞检测的实现 (16)4.7 游戏AI (16)5 测试用例设计 (18)5.1 测试用例编写目的 (18)5.2 测试用例 (18)5.3 测试总结和改进建议 (20)总结 (21)参考文献 (22)附录游戏核心代码 (23)(1)机器人的角色控制核心代码 (23)(2)机器人的状态处理核心代码 (26)(3)AI控制核心代码 (28)(4)拾取物品和背囊管理核心代码 (32)(5)碰撞检测核心代码 (35)1引言1.1 编写目的本文档是进行项目策划、概要设计和详细设计的基础,也是编写测试用例和进行系统测试的主要依据。
unity3课程设计一、课程目标知识目标:1. 学生能理解Unity3D的基本概念,掌握场景搭建、物体摆放和基础编程等操作。
2. 学生能掌握Unity3D中的物理引擎和动画系统,运用相关知识制作简单的游戏。
3. 学生了解Unity3D中常用的游戏设计模式,如角色控制、碰撞检测等。
技能目标:1. 学生能独立完成Unity3D场景搭建,合理布局游戏元素。
2. 学生能运用C#语言编写简单的游戏脚本,实现游戏逻辑。
3. 学生能通过Unity3D制作简单的3D游戏,具备基本的游戏开发能力。
情感态度价值观目标:1. 学生培养对游戏开发的兴趣,激发创新思维和动手能力。
2. 学生在团队合作中学会沟通与协作,培养团队精神和责任感。
3. 学生通过游戏开发,认识到科技与生活的紧密联系,增强学以致用的意识。
本课程针对高年级学生,结合Unity3D游戏开发技术,注重实践操作和创新能力培养。
课程目标具体、可衡量,旨在让学生掌握Unity3D基本操作,培养其游戏开发能力,同时注重情感态度价值观的培养,提高学生的综合素质。
后续教学设计和评估将围绕课程目标进行,确保学生达到预期学习成果。
二、教学内容1. Unity3D基础操作与界面认识:包括场景搭建、物体摆放、相机设置等。
- 熟悉Unity3D软件界面和基本功能。
- 学习创建项目和场景,导入资源。
2. C#编程基础:讲解C#语言的基本语法和编程规范,为游戏脚本编写打下基础。
- 变量、数据类型、运算符和表达式。
- 控制结构(条件语句、循环语句)和函数。
3. 游戏物体与物理引擎:学习游戏物体的运动、碰撞检测等物理引擎相关知识。
- 刚体、碰撞器、关节等组件的应用。
- 物理引擎的基本原理和参数设置。
4. 动画系统:了解Unity3D动画系统,学习制作简单的动画。
- Animation组件和Animator Controller的使用。
- 关键帧、动画状态机等概念。
5. 游戏设计模式与实践:学习常用的游戏设计模式,如角色控制、射击、碰撞检测等。
Unity--3D-游戏设计实验报告一Unity 3D 游戏设计实验报告一软件121 张乐梅 122516 (一)控件及背景颜色和布局代码的使用此游戏即点击按钮使物体移动点击向前移动,向前移动一定距离点击向左移动,将向左移动点击开始克隆,将克隆球体,且5秒后消失Javascrip脚本var TranslateSpeed=20;定义移动速度function OnGUI()//用于绘制GUI界面组件{GUI.backgroundColor=Color.red;if(GUI.Button(Rect(90,10,70,30),"蜷大燕遘サ蜉ィ"))//按钮位置和文字,被按下事件{transform.Translate(Vector3.forward*Time.deltaTime*TranslateSpeed);//transform为当前绑定模型的变换对象, transform.Translate()设置模型平移,Vector3标志移动方向,forWord表示向前移动,}}克隆代码:#pragma strictvar RotateSpeed=1000;var obj:GameObject;function Start () {obj=GameObject.Find("Sphere");}function Update () {}function OnGUI(){if(GUILayout.Button("开始克隆”,GUILayout.Height(50))){varclone:GameObject=Instantiate(obj,obj.transform.position,obj.transform.rotation); Destroy(clone,5);}}(二)2D贴图的绘制初始界面如图:点击加载一组贴图,则完成2D贴图的加载:实现过程及代码:在resoures文件夹中有个texture文件夹,里面放有4张图片(三)绘制动画代码及过程:。
实验七:地形与寻路技术姓名:钱中道班级:14数字媒体技术(2)学号:2014329700045一、实验目的通过合理使用地形引擎,熟练运用地形与寻路技术,快速设计出逼真的自然地形对象。
二、实验仪器Unity3d三、实验原理及过程1.地形引擎(1)依次单击“GameObject----→3DObject---→Terrain”创建一个地形(2)改TerrainCollider的相关参数(3)在Terrain组件中,有一排按钮分别对应了地形引擎的各项操作设置,更改相关参数。
(4)“Raise and Lower Terrain”及“Pain Height”实现调整局部地形的高度。
2.Trail Renderer(1)依次单击“Component->Effects->Trail Renderer”给游戏对象添加拖尾渲染器。
调整相关参数。
(2)创建2个空对象。
重命名“b1”“b2”,分别给2个空对象添加拖尾渲染器,设置2个空对象上的拖尾渲染器组件的参数。
(3)将创建的2个空对象拖拽到Car对象上使其成为Car对象的子对象,这样可以使两个空对象跟随汽车移动。
(4)创建控制汽车移动的虚拟摇杆和实现摄像机跟随汽车移动。
(5)添加光源第十一章实例:(1)新建一个场景(2)导入资源(3)新建地形(4)导入阴影资源包(5)选中Map对象和Terrain对象,在Inspector面板中的Static下选中“Navigation static”(6)为人物添加代理器组件(7)为梯子添加自定义路线。
(8)调整JumpLink和ClimLink的子对象的位置。
(9)为hero对象添加Animation组件,并向该组件“run”“jump”“hit1”“casting”等动画。
(10)脚本开发:(11)using UnityEngine;using System.Collections;public class ClickListener : MonoBehaviour {public Transform hero;private NavMeshAgent heroAgent;public Transform flag;private Vector3 distance;private Rect buttonRect0;private Rect buttonRect1;private Vector2 beganPoint;public Texture2D buttonAddTex;public Texture2D buttonMoveTex;void Start () {heroAgent = hero.GetComponent<NavMeshAgent>();flag.transform.position = Vector3.zero;buttonRect0 = new Rect(30, Screen.height - 40 - Screen.height * 0.1f, Screen.height * 0.15f, Screen.height * 0.15f);buttonRect1 = new Rect(30, Screen.height - 80 - Screen.height * 0.2f, Screen.height * 0.15f, Screen.height * 0.15f);}void Update () {float horizontal = Input.GetAxis("Horizontal");transform.LookAt(hero);if (Input.touchCount != 0) { //触摸点击if (touchIn(Input.touches[0].position)) {return;}if (Input.touches[0].phase == TouchPhase.Moved) {horizontal = Input.touches[0].deltaPosition.x * 0.2f; }if (Input.touches[0].phase == TouchPhase.Began) {beganPoint = Input.touches[0].position;}if (Input.touches[0].phase == TouchPhase.Ended) {if (Vector2.Distance(Input.touches[0].position, beganP oint) < Screen.height * 0.1f) {Ray ray = Camera.main.ScreenPointToRay(Input.touch es[0].position);RaycastHit hit;if (Physics.Raycast(ray, out hit)) {heroAgent.SetDestination(hit.point);flag.transform.position = hit.point;}}}}transform.RotateAround(hero.position, Vector3.up, horizontal); distance = Vector3.Normalize(hero.position - transform.positio n);}void OnGUI() {if (GUI.RepeatButton(buttonRect0, buttonAddTex, new GUIStyle() )){transform.position += distance;}if (GUI.RepeatButton(buttonRect1, buttonMoveTex, new GUIStyle( ))){transform.position -= distance;}}bool touchIn(Vector2 touchPostion) {touchPostion = new Vector2(touchPostion.x, Screen.height - tou chPostion.y);if ((touchPostion.x > buttonRect0.xMin && touchPostion.x < but tonRect0.xMax &&touchPostion.y > buttonRect0.yMin && touchPostion.y < but tonRect0.yMax)||(touchPostion.x > buttonRect1.xMin && touchPostion.x < bu ttonRect1.xMax &&touchPostion.y > buttonRect1.yMin && touchPostion.y < buttonRect1.yMax)) {return true;}return false;}}(12)将脚本托拽到主摄像机对象上,并调节脚本参数。
unity 3d实验报告《Unity 3D》实验报告实验题目:Unity 3D实现一个小游戏班级: 数媒 1004姓名:学号:日期: 2013.10-11一、目的与要求1、理解使用Unity3D制作游戏的基本过程和方法。
2、理解Unity3D软件的操作界面3、掌握地形的创建和简单编辑方法4、掌握游戏场景中光源的添加和设置方法5、掌握场景中简单对象的创建与属性设置方法6、掌握场景中玩家角色的创建与设置7、掌握基于碰撞检测的游戏逻辑脚本编程实现二、实验步骤1、熟悉Unity3D软件界面,包括菜单、左上角的工具栏区、右半部的Inspector区、下半部的Hierarchy和Project窗口。
进一步理解各操作区域对应的功能集。
2、新建一个空的Scene,创建地形,并使用地形编辑器编辑地形数据。
23、分别使用raise/Lower terrain, smooth terrain, Paint Texture, place trees, paint details 修整地形。
4、给场景添加方向光源,调整其Rotation。
根据需要添加其它光源,设置场景天空盒。
35、分别在场景中添加一个球和长方体(球门),调节其摆放位置,设置其合适大小和材质。
6、从标准Assets中拖入一个3rd Person controller,调节其位置至合适位置。
47、给创建的Ball添加Physics->Rigidbody属性,设置合适的参数值,并为其创建一个空的BallMotion.cs脚本。
8、编辑BallMotion 脚本,实现逻辑为重载OnCollisionEnter函数,判断如果是玩家碰上去,则给球一个作用力。
具体代码如下图示。
9、给球门添加球进代码,其实现逻辑为:当检测到碰撞时,判断是否是球对象,如是则显示succeed。
5三、实验设计总结与体会本次上机实验前面几节课基本是跟着别人做的,稍微出点问题就不会改了。
unity3d 教学大纲Unity3D教学大纲引言:Unity3D是一款功能强大的跨平台游戏引擎,被广泛应用于游戏开发、虚拟现实、增强现实等领域。
本文将从初学者到进阶者的角度,探讨Unity3D的教学大纲。
一、Unity3D入门1.1 Unity3D概述- 介绍Unity3D的发展历程和应用领域。
- 解释Unity3D的基本概念,如场景、游戏对象、组件等。
1.2 Unity3D安装与界面- 指导学习者下载和安装Unity3D,并介绍Unity3D的界面布局。
- 详细讲解Unity3D的各个面板和工具栏的作用。
1.3 创建第一个游戏场景- 指导学习者创建一个简单的游戏场景,并添加基本的游戏对象和材质。
- 教授如何设置摄像机、灯光和碰撞体等组件。
二、游戏对象与组件2.1 游戏对象的创建与操作- 介绍如何创建不同类型的游戏对象,如立方体、球体等。
- 解释如何在场景中移动、旋转和缩放游戏对象。
2.2 组件的使用与定制- 详细讲解Unity3D内置组件的功能和用法,如刚体、动画、音频等。
- 引导学习者自定义组件,实现特定的游戏逻辑。
三、场景与关卡设计3.1 场景的构建与编辑- 教授如何使用Unity3D的编辑器工具创建复杂的游戏场景。
- 解释如何使用地形编辑器、粒子系统等实现场景的细节设计。
3.2 关卡设计与流程控制- 引导学习者设计游戏关卡,包括关卡目标、难度设置等。
- 教授如何使用脚本编写游戏流程控制,如关卡切换、计分等。
四、游戏物理与碰撞检测4.1 游戏物理引擎的使用- 介绍Unity3D内置的物理引擎,并讲解刚体、碰撞体等物理组件的使用。
- 引导学习者实现基本的物理效果,如重力、碰撞反应等。
4.2 碰撞检测与触发器- 教授如何使用碰撞器和触发器组件实现游戏中的碰撞检测。
- 解释如何编写脚本,实现碰撞事件的处理和触发器的使用。
五、游戏逻辑与脚本编程5.1 C#语言基础- 介绍C#语言的基本语法和面向对象编程的概念。
Unity 3D 计算机游戏设计实验指导书(七)三、实验内容及步骤1. 编写代码实现轻量级数据的存储和读取。
public class cunchu : MonoBehaviour {private string username="";private string passwd="";private string userage="";private string userheight="";privateboolshowInfo=false;// Use this for initializationvoid Start () {}// Update is called once per framevoid Update () {}voidOnGUI(){GUILayout.BeginHorizontal("box",GUILayout.Width(200));bel("请输入用户名");username=GUILayout.TextField(username,10); GUILayout.EndHorizontal();GUILayout.BeginHorizontal("box");bel("请输入密码");passwd=GUILayout.TextField(passwd,10);GUILayout.EndHorizontal();GUILayout.BeginHorizontal("box");bel("请输入年龄");userage=GUILayout.TextField(userage,10);GUILayout.EndHorizontal();GUILayout.BeginHorizontal("box");bel("请输入身高");userheight=GUILayout.TextField(userheight,5); GUILayout.EndHorizontal();if(GUILayout.Button("提交数据")){showInfo=true;PlayerPrefs.SetString("username",username);PlayerPrefs.SetString("passwd",passwd);PlayerPrefs.SetInt("userage",int.Parse(userage));PlayerPrefs.SetFloat("userheight",float.Parse(userheight)); }if(GUILayout.Button("取消查看")){showInfo=false;PlayerPrefs.DeleteAll();}if(showInfo){bel("输入的姓名为:"+PlayerPrefs.GetString("username","姓名默认值"));bel("输入的密码为:"+PlayerPrefs.GetString("passwd","密码默认值"));bel("输入的年龄为:"+PlayerPrefs.GetInt("userage",0).ToString());bel("输入的身高为:"+PlayerPrefs.GetFloat("userheight",0.0f).ToString());}}}2. 编写代码实现自定义文件的存储和读取。
6.实验6Unity3d基本操作
1实验目的
通过本实验的学习,使学生掌握利用软件开发工具unity3d进行三维模型的创建,以及掌握Unity3d软件的基本操作方法。
2实验环境
3
4
(1
(2
(3).选中地形对象,在右边的Inspector面板里面设置Terrain参数,Terrain菜单栏有一行图标,其中该图标用于建立无极限高的山峰,该图标比第一个图标多了一个参数值Height,设置该参数可以限定山的高度,因此可以创建高地平台,使用该图标可平滑山峰,通过改变BrushSize和Opacity的参数建立不同的山峰(如图3);
(4).Terrain菜单栏里面
的图标可用于给地形贴图,点击
Assets->Importpackage->Environment->TerrainAssets导入软件自带的地形的贴图数据库,点击
图4-错误!未指定顺序。
平行光示意图
图4-3山峰水池示意图
图4-4贴图示意图
(5).
该图标分别可用于给场景添加树木和草,方法为点击菜单
Assets->Importpackage->SpeedTree 和TerrainAssets
分别导入树木和草的数据库,点击或,选择AddTree
在弹窗中点击
来添加已导入的树木和草材料(如下图所示);草材料通
过EditDetail 添加,属于细节部分,放大后方可看见。
图4-5添加草木
去AssetStore c) 在上方菜单栏中选择”Component “,然后鼠标移动至下拉菜单中的”Rendering “,右
边列出的菜单中就有一项是”Skybox “。
点击”Skybox “,就可以将”Skybox “组件添加到MainCamera 上面。
要注意的是,点击前必须在Hierarchy 视图中选中MainCamera,否则无法添加。
如果选中了别的对象,会添加到别的对象上去。
图4-6添加水模型
d) 点击上图中圆圈处,选择一个skyboxs 文件模型,调整摄像机的位置和角度,可以在
游戏效果预览框”Game “中看到效果,运行后也将会有天空盒背景效果。
(8). 添加树木的阴影效果,点击Hierarchy 面板的提添加的平行光材质(DirectionalLight ),
在Inspector 面板修改ShadowType 的类型为SoftShadows ,可为场景添加场景物体的影子效果(如图4-9);
(9). 导入游戏人物模型或其他物品3d 模型包文件(可自行网上下载模型文件包*.unitypackage ),点击Assets->ImportPackage->CustomPackage 导入游戏人物,把导入的材料拖拽进场景即可(如图);
图4-11最终场景图(10).最终场景图。