DirectX 游戏编程入门中提到一个Terragen软件可以生成环境贴图,所以登陆它的官方网站看了下。没想到Terragen生成的图片和照片一样,效果非常好,很多电影里有用到,所以下载免费版尝试一下。免费版有功能限制,不过足够学习使用。

软件下载地址:

http://planetside.co.uk/index.php?option=com_content&view=article&id=30&Itemid=170

官方网站上提供一个入快速门指南:

http://planetside.co.uk/docs/tg2/first-scene.pdf

指南里提供的多是各步骤的渲染结果图,不是软件操作示意图,所以写这篇文章简单记录下操作过程。

软件启动后界面如图1所示:

直接进入主题,首先点击Terrain按钮切换到地貌设置,然后点击Add Terrain->Power Fractal来生成基本地貌,如图2所示。注意渲染视图右上角的圆形图标,点击它会出现一个控制盘,用来调整观察视角,获得更好的图片。

现在生成的山峰看着像月球的山峰,所以接着要修改土地颜色。点击上面一排按钮中的Shaders,在左下现实的选项卡中修改Apply high color为想要的土地颜色,如图3所示。

光秃秃的土地并不好看,还需要添加些绿草。同样在Shaders里,点击左上的Add Layer->Surface Layer,如图4所示。这相当于在土地表面又加了一层,调整这一层的参数就可以生成草地效果。

首先将其颜色调整为绿色。

点击Altitudeconstraints tab,选中Limitmaximum altitude,设置Maximumaltitude为600左右。

点击Slopeconstraints tab,选中Limitmaximum slope并设置Maximumslope angle为25,Max slope fuzzy zone为10左右。

点击Coverageand breakup tab,设置Coverage为0.7,设置Fractal breakup为1.0。

然后是添加水和修改光照效果,分别对应Water和Lighting两个按钮,如图5所示。Water里只有一个Lake可以添加,可修改其海拔和半径生成合适的水面。这里将其分别设为100和20000。Lighting可以自由调整,不过这里保持默认,不做修改。

有天无云总是不自然,Terragen提供Atmosphere来生产云,如图6所示。点击Add Cloud Layer->Mid-level:Altocumulus (3D/Volumetric)生成云层。如果对云的形状不满意可以点击Pattern按钮,在弹出的对话框中点击Random Seed生成新的云形状。

完成以上工作后就来到渲染部分。点击Renderers按钮来设置渲染效果。注意选好想要的位置和角度后需要点击左下角的按钮将摄像机放置在这个位置。这时点击Render Image按钮就可以渲染图片了。

免费版限制渲染质量和图片分辨率,最终效果图分辨率800*600,如图8所示:

Windows 8 DirectX 开发学习笔记(十六)使用Terragen生成自然环境贴图相关推荐

  1. Windows 8 Directx 开发学习笔记(六)添加水模型

    HillExample已经完成山峰河谷的模型,可惜的是河谷是旱季的河谷,没有水.这次的目标就在河谷里注入水. 首先新建HillWaterExample项目,其配置与HillExample项目相同.然后 ...

  2. Polyworks脚本开发学习笔记(十六)-用C#进行Polyworks二次开发

    Polyworks脚本开发学习笔记(十六)-用C#进行Polyworks二次开发 Polyworks支持C#二次开发,用对应的SDK文档试着做一下开发样例. 新建一个C#项目,在解决方案中右键添加引用 ...

  3. Windows 8 Directx 开发学习笔记(十一)地形纹理贴图

    前一篇实现木箱贴图时,木箱的六个面都正好用一整张纹理图,即六个面的纹理坐标均在[0,1]内.然而在为比较大的模型贴图时,像山峰河谷模型,如果只用一张纹理图,那么每个三角形只得到几个纹理元素,无法为提供 ...

  4. Windows 8 Directx开发学习笔记(一)应用基本框架

    Windows 8系统10月25日就要正式发布,其应用可与Windows Phone 8应用兼容,所以打算转到Windows 8系列的开发.之前虽然开发过应用,但对游戏开发更感兴趣,随意开始学习Met ...

  5. Windows 8 Directx 开发学习笔记(十四)使用几何着色器实现三角形细分

    几何着色器是从DirectX 10才引入的着色器,是一个可选阶段,位于顶点着色器和像素着色器阶段之间.顶点着色器以顶点作为输入数据,而几何着色器以完整的图元作为输入数据,像点.直线.三角形等.之所以引 ...

  6. Windows 8 Directx 开发学习笔记(十二)利用混合实现浮在水面的木箱

    在场景中绘制多个不透明物体时很简单,哪个物体离得近,看到的就是哪个物体.但如果加入一个透明的物体,像玻璃,如何渲染就有些麻烦.拿一块红色的玻璃挡住眼睛,看到的物体都偏红,换成蓝色的玻璃,物体都偏蓝.D ...

  7. Windows 8 Directx 开发学习笔记(十)纹理贴图实现旋转的木箱

    纹理贴图映射(texturemapping)是可以显著提高场景细节和真实感的一种技术,基本原理是将图像数据映射到3D三角形表面(之前的文章提到过,三维模型其实是由很多个三角形拼接而成).当使用纹理资源 ...

  8. Windows 8 DirectX 开发学习笔记(十五)使用Billboard实现树木贴图

    要使用DirectX来获得三维效果,一般首先要生成一个三维模型,然后计算它在可视空间中的投影.这样得到的二维图像十分真实,但是计算量也很大.在大规模场景渲染中,随着模型精度的提高,这样的处理方式十分消 ...

  9. Windows 8 Directx 开发学习笔记(二)建立模型及初始化设备

    上一篇中介绍的DirectxApp类给整个应用搭建了一个框架,而这篇文章涉及的CubeRenderer类则是负责填充框架,呈现实际内容:一个旋转的彩色立方体.CubeRenderer类中的方法通过名称 ...

最新文章

  1. linux yum安装分区工具,搭建本地和网络yum源、源码编译安装软件及磁盘分区管理...
  2. python【数据结构与算法】深入浅出哈希表
  3. vscode pylint报错的问题
  4. Java-GUI编程实战之管理系统 Day1【项目开发流程、软件三层架构、项目需求、项目结构分析】
  5. 代码缺乏装饰?使用ts装饰器来装饰你的代码
  6. 看风水用什么罗盘最好_兰花用什么土最好
  7. PHP过滤常用标签的正则表达式
  8. mitmproxy安装证书_在 macOS 上使用 mitmproxy 透明代理进行网络抓包
  9. 凸优化非系统学习之笔记5:内点法
  10. java 根据助记词导入ETH钱包账户
  11. CP的mgmt_cli tool与SMC CLI用法
  12. ubuntu系统清理
  13. 单幅散焦图像的深度恢复
  14. 彩蛋-管理员root@‘locahost‘ 密码丢失,处理方案。
  15. 广告冷启动_创业公司“品牌冷启动”是战略级的工作
  16. 观影感受 之 《绿皮书》
  17. xtrabackup全量、增量备份恢复mysql数据库
  18. Arduino教程-11. PIR传感器
  19. 数据治理-数据生命周期管理-大数据归档与销毁
  20. python处理excel现有的脚本_Python脚本操作Excel实现批量替换功能

热门文章

  1. 通信原理眼图画法_光纤通信链路入侵与检测技术研究综述
  2. 中随机打乱序列的函数_excel函数应用:如何快速制作考生座次分配表
  3. pyspark 数据写入hive_Pyspark将数据写入hi
  4. 从博客复制程序到VS里面出现span style=font-size:24px;strong
  5. java window.onload_JavaScript window.onload
  6. 功能测试工程师想快速学习新技术?7个捷径教给你!
  7. lisp励遍图块中的实体_lisp励遍图块中的实体_「AutoCAD之图块编辑」八仙过海各显神通——图块编辑方法综述......
  8. jdom编写xml自动缩进_Spring Beans 自动装配
  9. 《高性能MySQL》第2章~第4章
  10. android日历读取账号,android – Outlook – 读取另一个用户的日历