This page has been translated automatically.
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Landscape Tool
Using Editor Tools for Specific Tasks
FAQ
编程
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
应用程序接口
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
CIGI Client Plugin
Rendering-Related Classes
注意! 这个版本的文档是过时的,因为它描述了一个较老的SDK版本!请切换到最新SDK版本的文档。
注意! 这个版本的文档描述了一个不再受支持的旧SDK版本!请升级到最新的SDK版本。

将Impostors增加到Clutters

学习如何将imposters添加到clutters。在此教程中,我们将演示如何在树上设置正确的impostors,并且让这些imposters产生簇拥感。

第一步:将Clutters添加到屏幕上

将Clutters添加到屏幕上,将它作为地形的子类。我们使用丘陵地带植被库中的松树。

在Clutter中的Mesh 键,将Visible 参数设置为 400 以便得到更好的可视效果。

在此案例中,我们为树设置了3个层次细节度。

第二步:为Imposters添加Grass Object

下一步就是为impostors添加 grass object 。它也应该作为地形的子类。

注意
为避免混淆,最好在clutters后面给grass impostor object命名。

将grass object的位置及旋转设置为0.

mesh_base 材质的impostors将出现在屏幕上:

第三步:设置Impostors参数

为了将impostors设置在clutter对象直接的位置上,需要将grass对象(the Grass 标签)的下列参数具体化:

  • 将Num textures参数设置为1
  • 启动 Intersection
  • 为clutter设置相同的 Mask image
    注意
    为遮罩使用8R纹理,以使其正常工作。
  • Min valueMax value 的数值设置为相同,clutter也一样。
  • SpawnSeed 的数值设置为相同,clutter也一样。
  • Density 的值设为 0。 之后就可设置Size X, Size YStep 的参数。

    impostors的Step参数应该比clutter的参数设置地更大一些, 但最后生成的两个数值应该是相同的。 为达到这样的效果,使用 Subdivision

    注意
    生成步数会保持一样,但网格将变地越来越大,这样将导致DIPs数量的减少,增加性能。
  • 在将生成网格的尺寸具体化后, 将相同的数值设置给clutter的Density
  • 将其它clutters的参数设置为相同(直到Min height) 。
    注意
    未设置的参数我们会在下一步进行设置。

Surfaces标签下设置草表面的参数:

  • Max parent Visible 的参数设置为2000.
  • Max parent Fade 的参数设置为 8000.

第四步:创建Impostor材料

为给impostors创建材料,需完成下列步骤:

  • 在屏幕上添加为clutter所用的树形图。

  • 跳到clutter的Surfaces标签,点击 Copy。之后转到mesh的 Surfaces 标签点击 Paste.
  • 打开位于Tools面板下的 -> Grabber抓取工具 标签。按下列操作:
    1. Mode 内选择Impostor 选项。
    2. 具体化Phi, ThetaAspect的数值。
    3. 点击 Grab,具体化用来保存导入材质的路径。

    生成两种材质:漫反射材质及法线材质,

    漫反射材质
    法线材质
  • Materials面板中, grass_impostor_base 材质得到了继承。
  • 将获得的材质分配给这个材质。
  • 在impostor材质的 Parameters标签中,设置下列参数:
    1. Impostor 中,根据设置的参数改变变换参数值,并同时生成impostor材质,(设置在抓取工具内 PhiTheta的数值应当顺着XY 轴同impostor的转换相匹配)。
    2. 若存在一些动画参数,就需为clutter对象材质进行设置,并将相同的数值设置给impostor。
    3. Shadow的值设置为 -3.
    4. Alpha 的值设置为 1.3.

  • 调整其它impostor的参数:
    1. Aspect中设置与抓取工具相同的值。
    2. Num textures 的值设置为 1
    3. 调整其它参数值直到接受到impostors的正确位置。

这样我们就搭建好impostors,并设置了clutter对象的几乎所有位置:

第五步:设置可视距离

最后一步是为将启用的impostors设置可视距离,在具体的距离处开始:

  • 为所有的clutter LODs设置可视距离。

  • 为impostor设置可视距离,在clutter对象上个具体距离处开始。

如图所见,远处的imposters已经被激活。

最新更新: 2018-04-26
Build: ()