Unity3D创建简单漫游 代码

Unity3D创建简单漫游 代码
Unity3D创建简单漫游 代码

1. 建模中使用的图片、文件、文件夹等以及模型中物体、材质等的名称都不能使用中文或者特殊符号,可以使用英文字母、数字、下划线等

2. 调整Max的单位为米

3. 烘培光影的设置

4. 模型的中的植物效果,第一种是单面片植物,需要设置其轴心为其物体的对称中心;第二种是十字交叉的植物效果;第三种则是到Unity3D编辑器中通过地形编辑器系统添加

基本设置

5. Fbx导出插件下载地址:

https://www.360docs.net/doc/f6523309.html,/adsk/servlet/item?siteID=123112&id=10775855 6. 将Max文件中用到的图片都拷贝到Textures目录下,如

7. 再打开Max文件,导出为FBX文件,使用默认设置,FBX文件也放置在和Max文件相同的目录下,如

导出的时候,可以将模型简单的分类,如地面、植被、楼房等,也可以将模型分为几个区域,如小区1,小区2,学校等等分开导出

8. 将包含Max文件、Fbx文件和Textures文件夹的文件夹拷贝到Unity3D项目的Assets目录下,如下图中红圈

在下一次用Unity3D编辑器开启本项目的时候,编辑器将自动导入/更新该文件夹中的信息,并生成Materials文件夹,如

9. 启动Unity3D编辑器

10. 选择刚才拷贝进来的文件中的Fbx文件,如

修改其中的Meshes下的Scale Factor和Generate Colliders,如

点击其他Fbx文件或者单击其他区域将弹出如下的对话框

点击Apply即可,类似的方式设置其他Fbx文件

注意,其中植物/植被类的Fbx文件不需要设置Generate Colliders项

11. 将Fbx文件直接拖放到Hierarchy区域,如

12. 点击Hierarchy区域中的对象,同时将鼠标移动三维显示区域,同时点击键f,则该对象自动适配显示到三维区域中心,如

13. 将全部fbx添加完成后,提高场景亮度如下

单击Ambient Light,如下

调整为

即可设置完成

14. 设置第一人称浏览

删除场景中Main Camera

将Project区域的Standard Assets下的Prefabs下的First Person Controller拖到Hierarchy区域中

点选First Person Controller,调整First Person Controller的位置到场景中合适的位置,并设置其高度为1.37到2.1左右

设置First Person Controller的高度在场景中地面之上

15. 点击运行,即可测试

修改视角控制键为右键

16. 打开Project区域中的StandardAssets下的CameraScripts下的MouseLook 脚本,在

在Quaternion originalRotation;

void Update ()

{

if (axes == RotationAxes.MouseXAndY)

{

// Read the mouse input axis

中添加一行代码修改为

Quaternion originalRotation;

void Update ()

{

if(Input.GetAxis ("Fire2")==0) return;

if (axes == RotationAxes.MouseXAndY)

{

// Read the mouse input axis

如何取消浏览窗口上的右键菜单

只要设置Unity对象的参数即可禁止右键菜单的显示,如下:

width="600" height="450"

codebase="https://www.360docs.net/doc/f6523309.html,/download_webplayer/UnityWeb Player.cab#version=2,0,0,0">

type="application/vnd.unity" pluginspage="https://www.360docs.net/doc/f6523309.html, /unity-web-player-2.x"

disableContextMenu="true" />

植物效果设置

17. 对于单面片的植物效果,需要设定其材质为Transparent/VertexLit类型,并为其添加公告板脚本

设定前

设置材质类型为Transparent/VertexLit类型,如下

给单面片植物添加公告板脚本的方法是先选择该植物,然后点击菜单component下的scripts下的camera Facing Billboard即可,如下

设置材质类型和添加公告板脚本后,如下

如果没有该脚本组件,可以打开脚本编辑器,拷贝如下代码到脚本中,保存到Assets\Scripts下,命名为CameraFacingBillboard.cs即可

using UnityEngine;

using System.Collections;

public class CameraFacingBillboard : MonoBehaviour

{

public Camera cameraToLookAt;

void Start()

{

cameraToLookAt = Camera.main;

}

void Update()

{

Vector3 v = cameraToLookAt.transform.position - transform.position ;

v.x = v.z = 0.0f;

transform.LookAt(cameraToLookAt.transform.position - v);

}

}

18. 对于十字交叉的植物,需要将其材质设定为Nature/Vegetation Two Pass unlit 类型

设置前的效果

设置后的效果

水面效果的设置19. 创建一个网格面片

20. 给该水面面片设置水材质和水脚本,如

相关主题
相关文档
最新文档