This page has been translated automatically.
Programming
Fundamentals
Setting Up Development Environment
UnigineScript
High-Level Systems
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
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
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已经被激活。

最新更新: 2017-07-03
Build: ()