水系统插件Suimono 2.1.3中文文档 【转】

Suimono 2.1.3文档

英文原版链接:http://tanukidigital.com/suimono/documentation 
参考文章:Suimono Water基础设置

安装与快速入门

1. 导入基础文件到项目

将 Suimono_watersystem_v2.unitypackage 导入到项目中。

注意:示例文件较大,若不需要,可以在导入时取消勾选文件夹 SUIMONO - WATER SYSTEM 2/_DEMO 。

2. 向场景中添加SUIMONO模组

  • 将预制体 SUIMONO_Module 拖入场景
  • 将预制体 SUIMONO_Surface 拖入场景作为水面
  • 将场景主相机拖入 Suimono_Module 模组的 scene camera object 槽位中(若 Camera Mode 设为 Auto Select Camera 则无需手动设置相机)
  • 将场景平行光拖入 Suimono_Module 模组的 scene light object 槽位中
  • 若有需要,可以选中场景相机后在 Component–>Image Effects–>Suimono–>UnderwaterFX 中为其添加 Underwater 组件

完成以上基础设置后,可以将 SUIMONO_Surface 放置到场景的任意位置,可以对该对象进行重命名、缩放和旋转以适应场景需求,若进行缩放,请先查看缩放注意事项。

升级提示 
对Suimono进行升级后,两个版本间的结构差异可能较大,因此建议每次升级前都将旧版本的Suimono完全卸载。以下为完全卸载方法: 
1) 从场景中移除 Suimono Module 和 Suimono Surface 。 
2) 从相机中移除 UnderwaterFX 。 
3) 在 Project Settings –> Tags and Layers 中移除全部 Suimono-specific 层。 
4) 从项目中删除Suimono相关文件夹。

预设提示 
已保存的预设信息包含于 SUIMONO - WATER SYSTEM 2/RESOURCES/ 下的文本文件中。若有想要保存的预设数据,请确保在每次更新数据前对这些文件进行备份,不要直接进行覆写。之后便可以简单的使用保存的文件替换新的数据文件。(

 存疑,此处建议查看英文原文:You can then simply replace the new data files with your saved files.

常见问题

1. 材质没有纹理属性 _FoamOverlay 等

这是在Unity 5.3及更新版本中由旧版本Suimono的一个错误引起的,强烈推荐通过Asset Store或者TanukiDigital.com将Suimono升级到最新版。

2. 是否可以关闭 Above-Water sound 效果

可以,到 SUIMONO_Module 的 General Setting 中取消 Enable Above-Water Sound 的勾选。

3. 控制台中出现 Too many layers used to exclude objects from lighting 警告

此问题的出现是因为在Deferred Rendering模式中光照对象排除了太多层(Layer)。在Suimono中,此问题通常由焦散光照对象引起。解决此问题,可以到 SUIMONO_Module 的 Advanced Water Setting 栏中调整焦散效果 Render Layers 来包含游戏中的更多层。

4. 点击Play/Stop时水面设置总是被重置

Suimono使用其内置的预设系统来帮助进行加载与保存设置。当点击Play时Suimono会从当前选择的预设来加载水面设置,如果在 SUIMONO_Module 的 PRESET MANAGER 中选择了 NONE ,那么在点击Play时Suimono会遵守当前的设置。关于预设的更多介绍,请看此文档的 使用预设工作 。

5. 是否可以给水面设置自定义的 CubeMap/NormalMap 纹理

可以,具体方法请查看此文档的 使用自定义纹理 部分。

6. 是否可以将水面设置到自定义的网格对象上

可以,具体方法请查看此文档的 使用自定义网格 部分。

性能注意事项

Suimono已经为了能够运行于多种系统和设定而进行过优化,但用户的场景和设定中仍有可能存在导致性能下降的地方。阅读下面的提示以便获取最佳性能。

场景优化

下面的选项能够帮助优化场景中特定的Suimono功能,但最佳的方式是从一开始就保证良好的场景优化,根据项目的内容不同,会有不同的方面需要处理。因为Suimono的渲染特性,如果场景中已经存在了性能问题,那么Suimono只会将这个问题放大。

表面LOD(Surface Level Of Detail)

Suimono 2.1有4种具有不同的网格复杂度的水面网格LOD等级,用户可以在 High Detail 、 Medium Detail 、 Low Detail 和 Single Quad 中进行选择。选用较低的LOD级别可以帮助减少场景中的性能计算。

此项设置位于 SUIMONO_Suiface 的 General Setting –> Surface LOD 中。建议根据场景中水面的大小来设置细节等级。例如,为一个小池塘设置Low Detail就足够获得很好的画面效果,并且还能够节省一些资源。

注意:LOD在使用 自定义网格 和 Infinite Ocean 设置时不可用。

DX11曲面细分(DX11 Tessellation)

以DX11模式运行Unity时Suimono能够访问高级着色指令,例如曲面细分。此功能包含自动为水面添加几何数据、更加真实的波浪视觉效果以及场景相机与水的交互,但这会增加性能开销。可以在 SUIMONO_Suiface 的 Tessellation 设置中调低或关闭曲面细分效果来调整性能和视觉效果间的平衡。

动态反射(Dynamic Reflections)

Suimono的动态反射系统提供了出色的水面反射效果。此功能是通过对可见场景在不同的投影矩阵位置进行二次渲染实现的,在一个已经足够复杂的场景中,二次反射渲染通道会导致场景过于复杂二难以维持性能。对于在解决性能问题方面有经验的用户,推荐调整反射功能中的 Render Layers ,以及所渲染的 Distance 和 Resolution (查看 SUIMONO_Surface 对象的设置内容)。(

 存疑,此处建议查看英文原文:If you experience performance problems it’s recommended to adjust the number of game layers that are rendered in the Reflection function, as well as the distance and resolution it renders at.

透明(Transparency)

Suimono的透明系统在渲染水面之前对场景进行了二次渲染计算,此场景数据用于结合透明来实现高级构造功能,例如深度和气雾。因为这次渲染的开销,在一些复杂的场景中可能会有Suimono的性能降低的现象。对于在解决性能问题方面有经验的用户,推荐调整透明功能中的 Render Layers ,以及所渲染的 Distance 和 Resolution (查看 SUIMONO_Module对象的 Advanced Water Setting –> Water Transparency 设置内容)。

焦散效果(Caustic Effects)

Suimono通过在水表面下方渲染焦散光照来模拟光线的折射效果。在某些系统中或者处于特殊的视角时,实现焦散效果需要付出高昂的性能代价。在 SUIMONO_Module 对象中关闭 Enable Advanced Caustic FX 能够减轻一些于此相关的性能问题,但代价是失去了对一些高级焦散效果的控制(例如边缘融合、表面特异性颜色等)。也可以通过调整受影响的 Layers 和 Resolution 来获取更高的性能。

使用预设工作(Preset)

Suimono 2.0版本中包含了一个自动化的预设系统(在 SUIMONO_Surface 对象的 Preset Manager 中),通过此系统可以快速的编辑和保存表面对象的特殊水样设置。此系统既能够在编辑模式下运行,也可以在游戏模式下运行,强烈建议用户在运行模式下进行编辑和保存操作,因为在Unity的编辑模式中,Suimono的某些功能无法正常渲染。当点击 Play 后,当前选中的预设会被加载到水面。

Preset Manager

保存新的预设

要保存一个新的预设,请点击 Preset Manager 中的 +New 按钮,系统会将当前的水面设置记录为一个新的预设并将其加入到预设列表中。可以通过点击预设名称左边的小按钮为预设重命名,之后点击按钮 OK 保存新名称或者点击按钮 X 取消操作。

更新现有预设

要更新或编辑现有的预设,首先点击选中要进行编辑的预设来加载现有的预设内容,然后进行表面设置编辑。当编辑完成后,点击预设名称右侧的 + 按钮,当前编辑过的预设内容会将原来的预设内容覆盖。

删除现有预设

要删除现有的预设,点击预设名称右侧的 - 按钮即可,在编辑模式和游戏模式中都可以进行操作。 注意 :删除操作不可恢复,并且没有提示。

预设过渡

Suimono内置了预设过渡功能来实现在指定的时间(秒)内从一个预设效果平滑过渡到另一个预设效果。要在Unity的游戏模式中开始过渡,请点击 Preset Manager 中的 Start 按钮。关于如何在代码中实现过渡,请查看此文档的 编程 部分。

多个预设文件以及备份预设

在 Preset Manager 的 Use Preset File 下拉菜单中可以选择从哪里加载预设文件以及将预设文件保存到何处。预设的所有数据都保存在Suimono文件夹下的 Resources 文件夹中的文本文件中。如果用户保存了自定义的预设,建议用户定期对文件夹中的预设数据进行备份,尤其实在升级Suimono前,在升级Suimono之后可以直接将备份文件复制到对应的文件夹中。

访问代码

预设可以直接在代码中进行选择和调整,具体内容请查看此文档的 在代码中访问预设 部分。

交互-添加水渍效果(Splash)

Suimono特效图标 Suimono可以为游戏对象添加多种内置的视觉效果,例如水渍、涟漪和声音。这些效果可以被附加到游戏对象上,并且在确定的时刻激活,也可以直接将效果放置到场景中,无论是否为其设置激活规则。 FX_OBJECT 系统允许堆叠规则,能够为场景创造复杂的交互。

第1节 添加效果对象

A. 为游戏对象添加 fx_object 预制体

为了让游戏对象可以和Suimono中的水以及波浪进行交互,需要为游戏对象附加一个 fx_object 预制体。在Suimono的 Prefabs 文件夹中,将 fx_object 预制体拖动到需要产生交互的对象上,让其作为该对象的子对象,将 fx_object 对象的位置调整为效果的发出点位置。

B. 选择效果和设置

展开 fx_object 对象的 Fx_Effect Object 脚本设置面板,选择顶部的 Particle Effect 标签栏,在其中的 Partical Effect下拉菜单中选择一种交互效果,例如fx_splash,然后可以编辑其下的设置项来调整效果样式。

  • Emit Number - (随机范围)发射一次粒子时的粒子数量。
  • Particle Size - (随机范围)发射的粒子的大小。
  • Emission Speed - 重复发射频率(秒),数值越小发射越快。
  • Directional Speed - 沿Y轴对粒子以指定速率施加力,设为 0 表示关闭此功能。(1
  • Emit At Surface - 强行使粒子出现在水面,忽略其在Y轴上的位置。(2
  • Tint Color - 粒子效果的整体色彩和透明度。
  • Clamp Rotation - 使粒子保持发射时的默认旋转角度。
  • Distance Range - fx_object在世界坐标下的激活范围,超出此范围时fx_object处于休眠状态。

1 存疑,建议查看英文原文:Will add force to the particle along the Y-axis at the specified speed. A setting of “0” turns this off. 
2 存疑,建议查看英文原文:Will force the particle to admit at the water surface, regardless of the fx_object Y-position.

C. 设置激活规则

为了使fx_object能够产生特效,它必需满足给定的激活规则。例如,可以设置fx_object在水下时出发激活,或者当fx_object(或者其父对象)在以某一特定速度运动时触发激活。可以通过叠加规则来创建复杂的行为,当没有设置任何激活规则时,特效会一直产生。

  • 添加规则 - 点击 +ADD NEW RULE 按钮来添加新的规则,然后在其下拉菜单中选择适当的规则。
  • 添加限制 - 某些规则需要额外的限制数据来触发,例如规则 Object Speed Is Greater Than 需要一个用于对比的数值。
  • 删除规则 - 要从列表中移除规则,点击其左侧的 - 按钮即可。

第2节 添加声音效果

在上述的规则系统中,也可以产生声音效果。声音可以和粒子效果一起播放,也可以在不产生粒子效果的情况下单独播放。

选择声音与设置

展开 fx_object 对象的 Fx_Effect Object 脚本设置面板,选择顶部的 Audio Effect 标签栏,在其中的 Select Audio Sample 面板中选择音频文件,然后可以通过编辑下面的设置内容来调整声音效果。

  • Audio Volume Range - (随机范围)声音效果的播放音量,右值表示最大音量。
  • Audio Pitch Range - (随机范围)调整声音音调,中值表示默认音调,左值表示更低的音调,右值表示更高的音调。
  • Audio Repeat Speed - 音频的重复播放频率(秒)。

第3节 添加自定义效果

即将发布……

交互-添加浮力(Buoyancy)

Suimono浮力图标 Suimono内置的浮力系统能够使场景中的任意对象与水和波浪产生交互。可以为对象添加一个 buoyancyObject 子对象来使其具有基本的浮力/漂浮效果,或者为船只等对象添加多个 buoyancyObject 对象来创建高级浮动交互。

第1节 设置浮力系统和垂直受力

A. 为游戏对象添加 buoyancyObject 预制体

游戏对象需要添加 Rigidbody 并且附加 buoyancyObject 预制体作为子对象后才可以与Suimono中的水和波浪产生交互。展开Suimono的 Prefabs 文件夹,将 buoyancyObject 预制体拖动到游戏对象上(作为游戏对象的子对象)。

B. 调整浮力中心

游戏对象的浮力中心取决于 buoyancyObject 对象的位置,通过调整 buoyancyObject 对象的位置即可调整游戏对象的浮力中心。例如,在一个小球中,浮力中心应该位于球体对象的中心,在人形对象中,浮力中心应该位于对象的肺部或胸部附近。也可以通过 buoyancyObject 对象的面板中的 Buoyancy Offset 来对浮力中心进行微调。

C. 设置垂直受力

可以基于 buoyancyObject 的基础设置对垂直受力的数量进行调整。在 buoyancyObject 对象的面板中,有一些用于调整浮力的参数,可以通过调整参数 Buoyancy Strength 来调整作用于父对象的浮力数量,同时,也有必要在 Rigidbody面板中调节 Mass 和 Drag 属性来对浮力结果进行微调。(

 存疑,建议查看英文原文:The amount of vertical force can be adjusted on a per-object basis. There are a few attributes which allow you can control the amount of buoyancy that gets applied to the parent object by adjusting the Buoyancy Strength attribute. You may also find it necessary to adjust the mass and drag settings on the object rigidbody in order to help fine-tune buoyancy results.

第2节 波浪交互和水平受力

注意:此功能在2.1.1版本中被临时关闭。

除了上述的典型的浮力动作,对象也可以继承Suimono水面的横向波浪动作。这为对象与水面动作交互增加了更多的动态性。

要为对象启用水平受力,请在 buoyancyObject 对象面板中勾选 Inherit Force ,这样对象所受的浮力便会受到四周的波浪方向的影响。可以通过下面的设置来控制水平方向的影响。

  • Force Amount - 作用于对象的水平方向的力的数量,数值越大,作用于对象的力就越大,对象的移动速度也越快。
  • Force Height Factor - (0.0 - 1.0) 用于控制对象在波浪的不同高度位置时所受到的力的大小。例如,与位于波浪底部的物体相比,位于波浪浪尖的物体会收到更大的力。此项设置用于控制物体在浪底和浪尖处的受力差异,当值被设为 0 时表示浪底和浪尖的力没有差异。

水下渲染

注意:水下和过渡效果的渲染需要为相机添加 Suimono_UnderwaterFog 组件。

当Suimono所追踪到的相机浸入Suimono水面以下时系统会自动实现水下渲染效果。水下渲染的视觉效果由水面设置来决定,因此在不同的水面效果中会有不同的水下渲染样式。

水下渲染设置

默认情况下Suimono中已经启用了水下渲染,其设置位于 SUIMONO_Surface 对象面板的 Underwater 栏目中。关于水下渲染的每项设置的详细描述,请查看本文档的 组件参考文献 章节中的 水下渲染 部分。

Underwater

若要关闭水下渲染,在 SUIMONO_Module 对象面板的 General Settings 栏目中取消 Enable Underwater FX 的勾选即可。

屏幕过渡效果(Transition)

过渡效果指屏幕沾水效果以及当相机从水下抬出水面时屏幕上自动出现水滴的效果。

若要关闭过渡效果,在 SUIMONO_Module 对象面板的 General Settings 栏目中取消 Enable Transition FX 的勾选即可。当前版本中,过渡效果的开启和关闭只能对全部的表面生效,在未来的更新中,将会加入为单个表面设置开启和关闭过渡效果的功能。

焦散处理(Caustics)

Suimono可以展示出光线被水面折射和分散后照映到水下物体上时的焦散(Caustics)效果,此效果能够很好的展现水下场景的动态感和沉浸感。Suimono的焦散系统使用了带有动态遮挡纹理的Unity光照来塑造投射到场景对象上的光影效果。

注意:为了得到更真实的基于光照角度和颜色的焦散渲染,应该将场景中的主要平行光对象放入到 SUIMONO_Module 对象的 Scene Light Object 槽位中。如果Suimono没有和场景的光照对象关联,那么焦散将会按照 90° 角度来处理,并且不会根据不同的光照条件进行调整。

Caustic FX

第1节 自动焦散效果设定

A. 打开与关闭焦散

在默认情况下场景中已经启用了焦散效果,可以在 SUIMONO_Module 对象面板中的 Advanced Water Settings 中找到更多关于焦散的设置,可以在其中通过 Caustic Effect (1)选框来设置是否启用焦散效果。另外,可以在 SUIMONO_Surface 对象的面板中的 Enable Caustic Effects (2)选框来开关指定水面的焦散效果。

1 原文为 Caustic Effect ,但只在面板中找到了 Caustic FX 。 
2 未找到 Enable Caustic Effects 选框。

B. 焦散亮度和场景照明

在昏暗或者夜晚场景中可能需要调低焦散效果的亮度。可以在 SUIMONO_Module 对象面板中的 Advanced Water Settings 中调节 Caustic Tint 颜色和亮度。Suimono也可以根据场景的整体光照情况来调节焦散亮度,但默认情况下此功能被关闭,要启用此功能,请将场景中的主要平行光对象放入到 SUIMONO_Module 对象的 Scene Light Object 槽位中。

C. 场景Layer选择

考虑到性能问题,可能需要从焦散显示中排除一些特定的层。可以在 Use These Layers (1)下拉菜单中选择要在哪些层中渲染焦散。 
注意:在 Deferred Rendering 模式中,最多只能指定4个被排除的层,否则Unity会报告错误。(2

1 未找到 Use These Layers ,但在 SUIMONO_Module 对象面板的 Caustic FX 栏中找到了 Render Layers。 
2 存疑,此处建议查看英文原文:In deferred rendering you can only specify up to 4 exclusion layers without Unity showing caution errors.

D. 高级焦散效果

启用 SUIMONO_Module 对象面板的 Caustic FX 栏中的 Advanced Caustic FX 选项能够基于每个表面对焦散光照进行一些高级控制,这使用户可以在表面级别对焦散颜色进行调整和调整边缘衰减效果。(

 存疑,此处建议查看英文原文:Enabling the ‘Advanced Caustic FX’ option allows some additional controls over the caustic lighting, on a per-surfacebasis. This will allow you to adjust the color of the caustics on the surface level, as well as adjusting the edge falloff.

第2节 性能注意事项

在某些场景或系统配置中焦散功能可能会造成严重的性能问题。为了提升性能,可以降低显示焦散效果的项目的层数,或者关闭高级焦散效果。

海岸线处理(Shoreline)

海岸线图标 在Suimono 2.1.1中增加了一个利用新的 shorelineObject 组件来生成海岸线数据的方法。该组件会生成一份场景的深度图(Depth Map)数据,然后将此数据传递给水面,利用此数据可以生成不同的海岸线效果,例如波浪和泡沫。

场景中可以有众多的 shorelineObject 对象。有些情况下会需要多个 shorelineObject 对象,例如,在一个具有多个岛屿的大型场景中,每座岛的地形都可能有单独的 shorelineObject 对象。

Suimono_ShorelineObject

第1节 设置 shorelineObject 对象

A. 向场景中添加 shorelineObject 对象

从Suimono的 Prefabs 文件夹中拖出一个 shorelineObject 预制体到场景中,然后把要产生海岸线效果的 SUIMONO_Surface 对象拖动到 shorelineObject 对象面板的 Attach to Surface 槽位。

B. 摆放 shorelineObject 对象

勾选 shorelineObject 对象面板中的 Debug Mode 以便预览场景中生成的深度图,然后对 shorelineObject 进行移动、旋转和缩放,将要产生海岸线效果的地形等对象完全包裹。(

 存疑,此处建议查看英文原文:Now position and/or rotate and scale the shoreline Object to completely encapsulate the terrain and objects you want shoreline generated against.

C. 调整深度设置

通过预览调整由红色通道显示的 Depth Range 设置,深度代表在此表面上3D波浪的生成位置。(

然后通过预览调整由绿色通道显示的 Shore Range 设置,此项设置代表在此表面上生成泡沫的位置。

最后调整参与深度计算的项目层,通常应该包含那些含有水下对象的层。例如地形层,但通常应该避免包含会在场景中移动的对象(例如船只)。

设定结束后,取消对 Debug Mode 的勾选。

 存疑,此处建议查看英文原文:With the preview showing you can adjust the Depth Range setting which displays as the red channel on the preview.The Depth corresponds to where 3d waves will generate on this surface.

第2节 调整表面海岸线设置

当设置并摆放好 shorelineObject 对象后,即可在 SUIMONO_Surface 对象上调整相关设置。需要注意的是,这些调整只在游戏模式下才能看到效果。当调整出满意的视觉效果后,将其保存为新的预设。

使用自定义纹理(Texture)

默认情况下Suimono使用其内置的纹理,可以通过下述的方法将水面纹理替换为自定义纹理。

第1节 为单个水面替换纹理

A. 为反射设置自定义CubeMap

默认情况下Suimono启用了动态反射,但考虑到性能原因或者为了适配场景,可以使用CubeMap来代替动态反射。以下为使用CubeMap为特定水面设置纹理的方法。

  • 1) 在 SUIMONO_Surface 对象中禁用 Enable Dynamic Reflection 选项。
  • 2) 在 SUIMONO_Surface 对象中将 Fallback Mode 切换为 Custom Cubemap 。
  • 3) 将自定义CubeMap拖动到 Texture 槽位。

B. 为波浪设置自定义NormalMap/HeightMap

在处理波浪时,Suimono使用RGB Normals Texture来计算光照信息,同时使用Greyscale Height Texture计算3D波浪的偏移信息。这两个纹理要经过处理以便进行相互通信(1)。默认情况下,Suimono使用了3个不同的纹理集来生成组合波浪效果。

  • 1) 在 SUIMONO_Surface 对象中启用 Custom Texture 选项。
  • 2) 将自定义的RGB Normal Texture拖动到 Normal 纹理槽位。
  • 3) 将自定义的Greyscale Height Texture拖动到 HeightMap 纹理槽位。(2

1 存疑,此处建议查看英文原文:These two textures should be authored so they correspond with each other. 
2 在 Custom Textures 面板中没有找到相应槽位。

使用自定义网格(Mesh)

默认情况下Suimono使用其内置的水面网格,可以通过替换自定义网格来实现特殊的水面形状,例如制作河流。按照以下步骤来替换自定义网格。

关于无边际海洋的一点提示 
Suimono中的无边际海洋效果与其内置的网格经过特别调整,不建议为无边际海洋效果使用自定义网格,因为这可能会破坏海洋渲染。

第1节 替换网格

方法A - 导入自定义网格到Unity

Suimono可以使用导入到Unity中的任意网格。可以使用任意的外部3D工具来创建网格,但在创建和导入网格时有以下几点需要注意。

  • UV Layout - Suimono需要网格将其UV坐标自上而下地布置于网格上。使用其他的UV布局很可能会破坏水面渲染。
  • Normals and Tangents - Suimono表面要求网格对象导入/计算了其法线和切线,否则无法正常渲染Shader。

方法B - 在Unity中使用第三方工具创建网格

可以使用Unity中的第三方工具编辑自定义网格。场景 Advanced Demo 中的河流对象是使用工具ProBuilder直接创建的,其他的网格创建工具同样可以工作。

  • 将自定义网格保存为对象 
    场景中存在自定义网格对象后,在将其应用到Suimono中之前,需要将其保存为项目网格对象。在Suimono的 Scripts 文件夹中有一个名为 utility_SaveMesh 的文件,它能够将场景网格保存为项目网格。只需将此脚本附加到网格对象上,然后在 Use Name 区域填写名称,然后勾选 Save Asset ,即可在Suimono的 Mesh 文件夹中创建一个新的网格对象。

第2节 替换默认的Suimono网格

A. 导入自定义网格到Suimono

在第1节中保存了自定义网格后,便可以在Suimono中使用该网格。

  • 1) 在 SUIMONO_Surface 对象中启用 Custom_Mesh 选项。
  • 2) 将自定义网格拖动到对应槽位。

编程与方法

注意:在Suimono 2.1.1中所有的组件都已使用C#重写,其所在的命名空间为 Suimono.Core ,请相应的对代码进行更新!

为了实现Suimono内置功能之外的高级效果,可以通过代码带访问一部分Suimono函数。下文提供了一些通过代码访问系统原生数据的示例。

说明-1 引用SuimonoModule对象

下面列出的大多数功能都需要满足场景中已经正确放置 SUIMONO_Module 对象这一前提。最好在放置该对象之后存储一个用于访问该对象的引用。在下面的代码示例中,创建了一个全局的引用变量,然后在 Start() 方法中通过搜索名称的方式定位到对象。请注意,在C#中,对于Suimono 2.1.2及更高版本,需要在 Suimono.Core 命名空间中定位 SuimonoModule 。

Suimono.Core.SuimonoModule moduleObject;
void Start(){
moduleObject = GameObject.Find(“SUIMONO_Module”).gameObject.GetComponent<Suimono.Core.SuimonoModule>();
}
  • 1
  • 2
  • 3
  • 4

存储这个引用之后,接下来就可以通过它在代码中访问Suimono内置的方法和变量。下文出现的代码假设用户已经在同一个脚本中创建了全局的引用。

说明-2 引用SuimonoSurface对象

下面列出的一些功能需要满足场景中已经正确放置 SUIMONO_Surface 对象这一前提。最好在放置该对象之后存储一个用于访问该对象的引用。在下面的代码示例中,创建了一个全局的引用变量,然后在 Start() 方法中通过搜索名称的方式定位到对象。请注意,在C#中,对于Suimono 2.1.2及更高版本,需要在 Suimono.Core 命名空间中定位 SuimonoObject 。

Suimono.Core.SuimonoObject surfaceObject;
void Start(){
surfaceObject = GameObject.Find(“SUIMONO_Surface”).gameObject.GetComponent<Suimono.Core.SuimonoObject>();
}
  • 1
  • 2
  • 3
  • 4

注意:在上述代码中尝试在场景中搜索名为 SUIMONO_Surface 的对象,若用户修改过次对象的名称,则应该相应的去修改代码。若场景中有多个 SUIMONO_Surface 对象,需要分别为它们设置全局唯一的名称。

存储这个引用之后,接下来就可以通过它在代码中访问Suimono内置的方法和变量。下文出现的代码假设用户已经在同一个脚本中创建了全局的引用。


下文的内容全部转移到Suimono Water基础设置,方法文档请查看英文原文档。


方法 SuimonoGetHeight();

方法 SuimonoGetHeightAll();

方法 SuimonoConvertAngleToVector();

在代码中访问预设

方法 SuimonoSetPreset();

访问Suimono追踪的相机

修改水流速度和方向

即将发布!

组件参考文献

SUIMONO MODULE

SUIMONO SURFACE - 预览

SUIMONO SURFACE - 常规设置

SUIMONO SURFACE - DX11曲面细分

SUIMONO SURFACE - 自定义

SUIMONO SURFACE - 3D波浪设置

SUIMONO SURFACE - 水面

SUIMONO SURFACE - 泡沫和边缘

SUIMONO SURFACE - 水下

SUIMONO SURFACE - 预设

SUIMONO MODULE - FX MODULE

此组件记录了Suimono中使用的所有粒子特效(例如水渍、船只波纹等),可以创建自定义的粒子特效并将其加入到该注册表。

即将发布更多细节!

FX OBJECT

FX OBJECT可以放置到场景的任意位置,也可以作为其他对象的子对象。可以同时选择粒子特效(查看FX MODULE)和声音特效并设置它们何时以及如何发挥作用。

即将发布更多细节!

CAUSTIC OBJECT

即将发布更多细节!

阅读更多
上一篇【Unity编程】Unity动画系统(二)
下一篇JavaWeb杂记
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭