• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >游戏开发 > Unity 3D使用高度图创建地形

Unity 3D使用高度图创建地形

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2022-04-30

匿名通过本文主要向大家介绍了等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
在 Unity 3D 中编辑地形有两种方法:一种是通过地形编辑器编辑地形,另一种是通过导入一幅预先渲染好的灰度图来快速地为地形建模。

地形上每个点的高度被表示为一个矩阵中的一列值。这个矩阵可以用一个被称为高度图(heightmap)的灰度图来表示。

灰度图是一种使用二维图形来表示三维的高度变化的图片。近黑色的、较暗的颜色表示较低的点,接近白色的、较亮的颜色表示较高的点。

通常可以用 Photoshop 或其他三维软件导出灰度图,灰度图的格式为 RAW 格式,Unity 3D 可以支持 16 位的灰度图。

Unity 提供了为地形导入、导出高度图的选项。单击 Settings tool 按钮,找到标记为 Import RAW 和 Export RAW 的按钮。这两个按钮允许从标准 RAW 格式中读出或者写入高度图,并且兼容大部分图片和地表编辑器。

实践案例:采用高度图创建地形

案例构思

Unity 3D 中支持 RAW 格式的高度图导入,这个格式不包含诸如图像类型和大小信息的文件头,所以易被读取。

RAW 格式相当于各种图片格式的“源文件”,它的转换是不可逆的。在 Photoshop 软件中可以使用滤镜功能制作高度图,本案例根据在 Photoshop 中制作好的高度图导入 Unity 3D 系统,自动生成地形。

案例设计

本案例通过 Photoshop 中制作好的高度图在 Unity 3D 中创建一个简单的地形,在地形参数列表里设置导入高度图的信息,导入的高度图地形效果如下图所示。

基于高度图创建地形

案例实施

步骤 1):创建地形。执行 GameObject→3D Object→Terrain 菜单命令。

步骤 2):在 Inspector 面板中单击 Import Raw 按钮添加地形,如下图所示。

地形高度图导入

步骤 3):设置地形参数,如下图所示,具体参数含义如下表所示。

设置导入灰度图信息
 
参 数含 义功 能
Depth深度根据文件格式设置,可以是8位或16位
Width宽度设置高度图的宽
Height高度设置高度图的高
Byte Order字节顺序根据文件格式设置,可以是Mac或Windows
Terrain Size地形大小定义地形的大小

步骤 4):创建好后,单击 Play 按钮进行测试,即可观察到基于高度图创建出来的地形效果,如下图所示。

基于高度图创建地形
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-06-05 这类cocos2dx写的AI格斗游戏,能去游戏公司干活了吗,诚恳
  • 2017-06-05 应该怎么实现骨骼蒙皮?
  • 2017-09-06canvas3d学习一 应用结构
  • 2017-06-05 我想问,Cocos2d-x3x究竟是怎样跨平台开发和编译执行的
  • 2022-04-30Unity 3D资源下载
  • 2022-04-30Unity 3D Project视图
  • 2017-06-05 cocosbuild_nativepy报错
  • 2017-06-05 问个低版本COCOS2DX用PYTHON创建LUA工程时候的小问题
  • 2022-04-30Unity 3D菜单栏及快捷键详解
  • 2017-06-05 cocos2dx编程遇到的一个小问题,望大神指点迷津,详细内容如下

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Unity 3D脚本应用实例演示(三个实例)
    • 播放音效时,降低背景音乐音量。
    • Unity 3D物理引擎简介
    • 怎么让一个对象的朝向等于另一个对象的朝向?
    • dll文件的有关问题
    • unity程序如何发送错误日志
    • 问个低版本COCOS2DX用PYTHON创建LUA工程时候的小问题
    • Unity 3D贴图
    • canvas里的dramImage画好的图是图片精灵合起来的,想拿到其中一部分,怎么做高效?
    • 六大手游开发引擎优劣分析

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有