From 7e54467c9880d38898d4a35bdde08a6a81bd59f8 Mon Sep 17 00:00:00 2001 From: SQwatermark <53200273+SQwatermark@users.noreply.github.com> Date: Sat, 6 Jan 2024 12:24:40 +0800 Subject: [PATCH 1/2] Add simplified Chinese translation --- source/Effects/viewer_zh_CN.html | 39 ++ source/Sample/viewer_zh_CN.html | 39 ++ source/index.rst | 1 + source/zh_CN/MaterialToolReference/index.rst | 222 ++++++++++++ .../material_NodeAdvanced.rst | 32 ++ .../material_NodeConstant.rst | 65 ++++ .../material_NodeEnvironment.rst | 16 + .../material_NodeGradient.rst | 41 +++ .../material_NodeImage.rst | 31 ++ .../material_NodeMath.rst | 145 ++++++++ .../material_NodeModel.rst | 50 +++ .../material_NodeNoise.rst | 21 ++ source/zh_CN/ReleaseNotes/14x_or_older.md | 121 +++++++ source/zh_CN/ReleaseNotes/150.md | 143 ++++++++ source/zh_CN/ReleaseNotes/15x.md | 267 ++++++++++++++ source/zh_CN/ReleaseNotes/160.md | 137 +++++++ source/zh_CN/ReleaseNotes/16x.md | 334 ++++++++++++++++++ source/zh_CN/ReleaseNotes/170.md | 96 +++++ source/zh_CN/ReleaseNotes/17x.md | 92 +++++ source/zh_CN/ReleaseNotes/index.rst | 22 ++ source/zh_CN/ToolReference/behavior.md | 74 ++++ source/zh_CN/ToolReference/common.md | 119 +++++++ source/zh_CN/ToolReference/culling.md | 33 ++ source/zh_CN/ToolReference/depth.md | 172 +++++++++ source/zh_CN/ToolReference/drawMode.md | 41 +++ .../zh_CN/ToolReference/dynamicParameter.md | 153 ++++++++ source/zh_CN/ToolReference/easing.md | 146 ++++++++ source/zh_CN/ToolReference/environment.md | 65 ++++ source/zh_CN/ToolReference/fcurve.md | 141 ++++++++ source/zh_CN/ToolReference/fileExport.md | 24 ++ source/zh_CN/ToolReference/fileImport.md | 30 ++ source/zh_CN/ToolReference/fileviewer.md | 39 ++ source/zh_CN/ToolReference/global.md | 11 + source/zh_CN/ToolReference/image.md | 15 + source/zh_CN/ToolReference/index.md | 214 +++++++++++ source/zh_CN/ToolReference/killRules.md | 89 +++++ source/zh_CN/ToolReference/levelsOfDetails.md | 7 + source/zh_CN/ToolReference/location.md | 50 +++ source/zh_CN/ToolReference/locationAbs.md | 145 ++++++++ source/zh_CN/ToolReference/locationGene.md | 195 ++++++++++ source/zh_CN/ToolReference/network.md | 64 ++++ source/zh_CN/ToolReference/options.md | 95 +++++ source/zh_CN/ToolReference/proceduralModel.md | 249 +++++++++++++ source/zh_CN/ToolReference/record.md | 162 +++++++++ source/zh_CN/ToolReference/recoveringData.md | 25 ++ source/zh_CN/ToolReference/rendererCommon.md | 230 ++++++++++++ .../zh_CN/ToolReference/rendererCommonAd.md | 167 +++++++++ source/zh_CN/ToolReference/rendererModel.md | 49 +++ source/zh_CN/ToolReference/rendererRibbon.md | 95 +++++ source/zh_CN/ToolReference/rendererRing.md | 81 +++++ source/zh_CN/ToolReference/rendererSprite.md | 46 +++ source/zh_CN/ToolReference/rendererTrack.md | 125 +++++++ source/zh_CN/ToolReference/rotation.md | 40 +++ source/zh_CN/ToolReference/scale.md | 46 +++ source/zh_CN/ToolReference/sound.md | 46 +++ source/zh_CN/ToolTips/01.md | 157 ++++++++ source/zh_CN/ToolTutorial/01.md | 221 ++++++++++++ source/zh_CN/ToolTutorial/02.md | 175 +++++++++ source/zh_CN/ToolTutorial/03.md | 153 ++++++++ source/zh_CN/ToolTutorial/04.md | 176 +++++++++ source/zh_CN/ToolTutorial/05.md | 209 +++++++++++ source/zh_CN/ToolTutorial/06.md | 150 ++++++++ source/zh_CN/ToolTutorial/07.md | 145 ++++++++ source/zh_CN/ToolTutorial/08.md | 183 ++++++++++ source/zh_CN/ToolTutorial/09.md | 227 ++++++++++++ source/zh_CN/ToolTutorial/10.md | 231 ++++++++++++ source/zh_CN/ToolTutorial/11.md | 167 +++++++++ source/zh_CN/ToolTutorial/12.md | 121 +++++++ source/zh_CN/ToolTutorial/13.md | 162 +++++++++ source/zh_CN/ToolTutorial/14.md | 91 +++++ source/zh_CN/ToolTutorial/15.md | 105 ++++++ source/zh_CN/ToolTutorial/index.rst | 35 ++ source/zh_CN/ToolTutorial/material_01.md | 231 ++++++++++++ source/zh_CN/ToolTutorial/material_02.md | 221 ++++++++++++ source/zh_CN/ToolTutorial/material_03.md | 146 ++++++++ source/zh_CN/faq.md | 38 ++ source/zh_CN/index.rst | 16 + source/zh_CN/overview.md | 319 +++++++++++++++++ 78 files changed, 8876 insertions(+) create mode 100644 source/Effects/viewer_zh_CN.html create mode 100644 source/Sample/viewer_zh_CN.html create mode 100644 source/zh_CN/MaterialToolReference/index.rst create mode 100644 source/zh_CN/MaterialToolReference/material_NodeAdvanced.rst create mode 100644 source/zh_CN/MaterialToolReference/material_NodeConstant.rst create mode 100644 source/zh_CN/MaterialToolReference/material_NodeEnvironment.rst create mode 100644 source/zh_CN/MaterialToolReference/material_NodeGradient.rst create mode 100644 source/zh_CN/MaterialToolReference/material_NodeImage.rst create mode 100644 source/zh_CN/MaterialToolReference/material_NodeMath.rst create mode 100644 source/zh_CN/MaterialToolReference/material_NodeModel.rst create mode 100644 source/zh_CN/MaterialToolReference/material_NodeNoise.rst create mode 100644 source/zh_CN/ReleaseNotes/14x_or_older.md create mode 100644 source/zh_CN/ReleaseNotes/150.md create mode 100644 source/zh_CN/ReleaseNotes/15x.md create mode 100644 source/zh_CN/ReleaseNotes/160.md create mode 100644 source/zh_CN/ReleaseNotes/16x.md create mode 100644 source/zh_CN/ReleaseNotes/170.md create mode 100644 source/zh_CN/ReleaseNotes/17x.md create mode 100644 source/zh_CN/ReleaseNotes/index.rst create mode 100644 source/zh_CN/ToolReference/behavior.md create mode 100644 source/zh_CN/ToolReference/common.md create mode 100644 source/zh_CN/ToolReference/culling.md create mode 100644 source/zh_CN/ToolReference/depth.md create mode 100644 source/zh_CN/ToolReference/drawMode.md create mode 100644 source/zh_CN/ToolReference/dynamicParameter.md create mode 100644 source/zh_CN/ToolReference/easing.md create mode 100644 source/zh_CN/ToolReference/environment.md create mode 100644 source/zh_CN/ToolReference/fcurve.md create mode 100644 source/zh_CN/ToolReference/fileExport.md create mode 100644 source/zh_CN/ToolReference/fileImport.md create mode 100644 source/zh_CN/ToolReference/fileviewer.md create mode 100644 source/zh_CN/ToolReference/global.md create mode 100644 source/zh_CN/ToolReference/image.md create mode 100644 source/zh_CN/ToolReference/index.md create mode 100644 source/zh_CN/ToolReference/killRules.md create mode 100644 source/zh_CN/ToolReference/levelsOfDetails.md create mode 100644 source/zh_CN/ToolReference/location.md create mode 100644 source/zh_CN/ToolReference/locationAbs.md create mode 100644 source/zh_CN/ToolReference/locationGene.md create mode 100644 source/zh_CN/ToolReference/network.md create mode 100644 source/zh_CN/ToolReference/options.md create mode 100644 source/zh_CN/ToolReference/proceduralModel.md create mode 100644 source/zh_CN/ToolReference/record.md create mode 100644 source/zh_CN/ToolReference/recoveringData.md create mode 100644 source/zh_CN/ToolReference/rendererCommon.md create mode 100644 source/zh_CN/ToolReference/rendererCommonAd.md create mode 100644 source/zh_CN/ToolReference/rendererModel.md create mode 100644 source/zh_CN/ToolReference/rendererRibbon.md create mode 100644 source/zh_CN/ToolReference/rendererRing.md create mode 100644 source/zh_CN/ToolReference/rendererSprite.md create mode 100644 source/zh_CN/ToolReference/rendererTrack.md create mode 100644 source/zh_CN/ToolReference/rotation.md create mode 100644 source/zh_CN/ToolReference/scale.md create mode 100644 source/zh_CN/ToolReference/sound.md create mode 100644 source/zh_CN/ToolTips/01.md create mode 100644 source/zh_CN/ToolTutorial/01.md create mode 100644 source/zh_CN/ToolTutorial/02.md create mode 100644 source/zh_CN/ToolTutorial/03.md create mode 100644 source/zh_CN/ToolTutorial/04.md create mode 100644 source/zh_CN/ToolTutorial/05.md create mode 100644 source/zh_CN/ToolTutorial/06.md create mode 100644 source/zh_CN/ToolTutorial/07.md create mode 100644 source/zh_CN/ToolTutorial/08.md create mode 100644 source/zh_CN/ToolTutorial/09.md create mode 100644 source/zh_CN/ToolTutorial/10.md create mode 100644 source/zh_CN/ToolTutorial/11.md create mode 100644 source/zh_CN/ToolTutorial/12.md create mode 100644 source/zh_CN/ToolTutorial/13.md create mode 100644 source/zh_CN/ToolTutorial/14.md create mode 100644 source/zh_CN/ToolTutorial/15.md create mode 100644 source/zh_CN/ToolTutorial/index.rst create mode 100644 source/zh_CN/ToolTutorial/material_01.md create mode 100644 source/zh_CN/ToolTutorial/material_02.md create mode 100644 source/zh_CN/ToolTutorial/material_03.md create mode 100644 source/zh_CN/faq.md create mode 100644 source/zh_CN/index.rst create mode 100644 source/zh_CN/overview.md diff --git a/source/Effects/viewer_zh_CN.html b/source/Effects/viewer_zh_CN.html new file mode 100644 index 0000000..6411f51 --- /dev/null +++ b/source/Effects/viewer_zh_CN.html @@ -0,0 +1,39 @@ + + + + Effekseer Samples + + + + + + + + + +
+请试着左键或右键拖拽鼠标 +
+ + + \ No newline at end of file diff --git a/source/Sample/viewer_zh_CN.html b/source/Sample/viewer_zh_CN.html new file mode 100644 index 0000000..7b0dcdd --- /dev/null +++ b/source/Sample/viewer_zh_CN.html @@ -0,0 +1,39 @@ + + + + Effekseer Samples + + + + + + + + + +
+请拖拽 +
+ + + \ No newline at end of file diff --git a/source/index.rst b/source/index.rst index fe1dbeb..794a228 100644 --- a/source/index.rst +++ b/source/index.rst @@ -7,3 +7,4 @@ Hello Effekseer ! /ja/index /en/index + /zh_CN/index diff --git a/source/zh_CN/MaterialToolReference/index.rst b/source/zh_CN/MaterialToolReference/index.rst new file mode 100644 index 0000000..324f5c9 --- /dev/null +++ b/source/zh_CN/MaterialToolReference/index.rst @@ -0,0 +1,222 @@ +================================================ +材质参考 +================================================ + +概述 +================================================ + +可以用材质编辑器为Effekseer制作材质。 +材质用于设置粒子的绘制方式。 + +可通过Effekseer的基础渲染设置面板中的材质选项打开材质编辑器。 + +在材质编辑器中,可用节点编写运算流程。 +运算的结果被渲染为粒子。 + + +.. image:: ../../img/Reference/Material/material_sample_effect.png + :scale: 80% + :align: center + +.. image:: ../../img/Reference/Material/material_sample_node.png + :scale: 80% + :align: center + + +用鼠标左键拖拽可以连接节点的输入和输出。 + +可以通过右键打开的菜单新建节点。 + +.. image:: ../../img/Reference/Material/menu_create_node_en.png + :scale: 80% + :align: center + +最简单的设计包含两个节点:常量3和输出。 + +可以为常量3设置3个值。 +在输出节点中,可以设置最终输出的值。 + +将输出节点的Emissive输入与常量3节点的输出相连。 + +接着,常量3的值就显示在粒子上了。 + +.. image:: ../../img/Reference/Material/basic_en.png + :scale: 80% + :align: center + +细节操作方法 +================================================ + +移动节点 +------------------------------------------------ + +左键选中节点后,可以按住左键拖拽节点。 + +搜索节点 +------------------------------------------------ + +在右键打开的菜单中输入一个关键词,则只有包含关键词的节点会被显示。 +鼠标悬停在菜单中的节点上,可以显示该节点的关键词。 + +.. image:: ../../img/Reference/Material/menu_create_node_search_en.png + :scale: 80% + :align: center + +删除线和节点 +------------------------------------------------ + +在节点或线上右键鼠标,打开的菜单中有删除选项。 +点击删除可以删除节点和线。 + +.. image:: ../../img/Reference/Material/menu_delete_en.png + :scale: 80% + :align: center + +参数的说明 +------------------------------------------------ + +可以为参数节点编辑概要和详细说明。 +概要和详细说明会在Effekseer中显示。 +建议编写一个清晰的说明。 + +快捷键 +------------------------------------------------ + +.. csv-table:: + + "Ctrl(Command) + Z", "撤销" + "Ctrl(Command) + Y", "重做" + "Ctrl(Command) + C", "复制" + "Ctrl(Command) + V", "粘贴" + "Ctrl(Command) + S", "保存" + +关于光照 +================================================ + +你可以在材质的输出节点的属性中设置粒子是否受到光照影响。 + +|pic1| |pic2| + +.. |pic1| image:: ../../img/Reference/Material/lighting_lit.png + :scale: 100% + +.. |pic2| image:: ../../img/Reference/Material/lighting_unlit.png + :scale: 100% + +输入值和输出值的类型 +================================================ + +值有两种类型:数值类型和图像类型。 +数值类型由1到4个数值元素组成。(译注:如同3维向量由3个浮点数组成) +在很多情况下,数值类型可以连接到元素数量不同的数值类型。 +但图像只能连接到图像。 + +在这个文档中,根据元素数量不同,数值类型被称为数值1到数值4。 + + +节点 +================================================ + +材质编辑器中有多种节点。 + +.. toctree:: + :maxdepth: 1 + + material_NodeMath + material_NodeImage + material_NodeModel + material_NodeConstant + material_NodeAdvanced + material_NodeGradient + material_NodeNoise + material_NodeEnvironment + +输出 +------------------------------------------------ + +可以指定最终输出的值。 + +在输出节点中,可以设置光照的类型(着色模型)。 + +有Lit和Unlit两个选项。 +如果选择Lit,它将受到光源的影响。 +如果设置为Unlit,则直接显示输入值(译注:而不会受到外部光照的影响)。 + +|pic_lit| |pic_unlit| + +.. |pic_lit| image:: ../../img/Reference/Material/lighting_lit.png + :scale: 100% + +.. |pic_unlit| image:: ../../img/Reference/Material/lighting_unlit.png + :scale: 100% + +BaseColor(基础颜色,数值3) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +仅在选择了Lit时有效。输入材质的颜色。 + +Emissive(自发光,数值3) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +输入材质的自发光颜色。 +在选择了Unlit时,需要通过它来设置输入的颜色。 + +Opacity(不透明度,数值1) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +输入不透明度。 + +OpacityMask(不透明遮罩,数值1) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +输入遮罩。如果值小于或等于0,则完全不显示。 +如果值大于0,则完全显示。 + +Roughness(粗糙度,数值1) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +仅在选择了Lit时有效。输入表面的粗糙度。 + +Normal(法线,数值3) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +仅在选择了Lit时有效。输入法线方向。 + +AmbientOcclusion(环境光遮蔽) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +仅在选择了Lit时有效。输入值使光照变暗。 +设置为0可使之完全变成黑色。 + +WorldPositionOffset(世界坐标偏移,数值3) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +输入顶点的移动距离。 +顶点的坐标被输入值移动。 + +Refraction(折射率,数值1) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +输入折射率。如果折射率为1,则不被折射。 +如果折射率不为1,则显示被折射的背景。 +输入值需大于1。 + +深度衰减 +------------------------------------------------ + +当距离背景物体更近时,输出更小的值。 +当距离大于FadeDistance时,输出1,距离为0时输出0。 + +注释 +------------------------------------------------ + +注释使条理更清晰,并不影响运算。 + +计算行为的细节 +================================================ + +如果一个计算节点有输入值V1和V2,可以输入相同类型的值,也可以在V1或V2中输入数值1。 +如果V1和V2类型相同,则输出值也是相同的类型。 + +如果V1是数值1,则输出值是V2的每个元素分别和V1进行计算。 +如果V2是数值1,则输出值是V1的每个元素分别和V2进行计算。 diff --git a/source/zh_CN/MaterialToolReference/material_NodeAdvanced.rst b/source/zh_CN/MaterialToolReference/material_NodeAdvanced.rst new file mode 100644 index 0000000..f2770d9 --- /dev/null +++ b/source/zh_CN/MaterialToolReference/material_NodeAdvanced.rst @@ -0,0 +1,32 @@ +================================ +材质节点(高级) +================================ + +概述 +================================ + +其他不易分类的高级节点。 +可以简单地实现复杂的表现。 + +节点列表 +================================ + + +菲涅尔 +------------------------ + +面的法向和视线的张角越大,输出值就越大。 +可以在属性中设置强度。 + +旋转 +------------------------ + +旋转输入值(主要是UV)并将其输出。 +用于在材质中旋转图像。 +角度为1则表示一圈。 + +极坐标 +------------------------ + +输出UV坐标以中心位置为原点的极坐标表示。 +可以设置一圈有多少张图片以及旋转角度。 diff --git a/source/zh_CN/MaterialToolReference/material_NodeConstant.rst b/source/zh_CN/MaterialToolReference/material_NodeConstant.rst new file mode 100644 index 0000000..332e5ac --- /dev/null +++ b/source/zh_CN/MaterialToolReference/material_NodeConstant.rst @@ -0,0 +1,65 @@ +================================ +材质节点(常量) +================================ + +概述 +================================ + +节点列表 +================================ + + + +常量1,2,3,4 +------------------------------------------------ + +输出属性中设置的值。 + +参数1,2,3,4 +------------------------------------------------ + +输出外部设置的参数。 +参数对于每个节点都相同。 +参数中设置的概要和详细会在Effekseer和外部工具中显示。 + +这些参数可以在Effekseer的基础渲染设置面板中设置。 + +右键Effekseer中的输入框并点击弹出的重置按钮,可以输入材质中设置的默认值。 + +.. image:: ../../img/Reference/Material/node_Parameter.png + :align: center + +自定义数据1, 自定义数据2 +------------------------------------------------ + +输出外部设置的参数。 +可以为每个粒子设置不同的参数。 +参数中设置的概要和详细会在Effekseer和外部工具中显示。 + +这些参数可以在Effekseer的基础渲染设置面板中设置。 +例如,可以输入随机或F曲线以实现更复杂的材质。 + +右键Effekseer中的输入框并点击弹出的重置按钮,可以输入材质中设置的默认值。 + +.. image:: ../../img/Reference/Material/node_CustomData.png + :align: center + +时间 +------------------------ + +以秒为单位输出当前时间。 + +局部时间 +------------------------ + +以秒为单位输出特效生成至今经过的时间。 + +相机位置 +------------------------ + +输出相机的位置。 + +特效缩放 +------------------------ + +获取特效文件被加载时设置的缩放。 diff --git a/source/zh_CN/MaterialToolReference/material_NodeEnvironment.rst b/source/zh_CN/MaterialToolReference/material_NodeEnvironment.rst new file mode 100644 index 0000000..1295e80 --- /dev/null +++ b/source/zh_CN/MaterialToolReference/material_NodeEnvironment.rst @@ -0,0 +1,16 @@ +================================ +材质节点(环境) +================================ + +概述 +================================ + +节点列表 +================================ + +光照 +------------------------ + +输出外部设置的光照的信息。 + +该节点可能无法在某些运行环境中正常运行。 diff --git a/source/zh_CN/MaterialToolReference/material_NodeGradient.rst b/source/zh_CN/MaterialToolReference/material_NodeGradient.rst new file mode 100644 index 0000000..0877329 --- /dev/null +++ b/source/zh_CN/MaterialToolReference/material_NodeGradient.rst @@ -0,0 +1,41 @@ +================================ +材质节点(梯度) +================================ + +概述 +================================ + +节点列表 +================================ + +采样梯度 +------------------------ + +根据输入的梯度将输入的Alpha值映射为颜色。 +如果Gradient未连接输入值,则使用这个节点的梯度。 + +梯度 +------------------------ + +输出一个梯度。 + +.. image:: ../../img/Reference/Material/node_Gradient.png + :align: center + +梯度参数 +------------------------ + +输出外部设置的梯度。 +梯度对于每个节点都相同。 +梯度中设置的概要和详细会在Effekseer和外部工具中显示。 + +梯度参数可以在Effekseer的基础渲染设置面板中设置。 + +右键Effekseer中的输入框并点击弹出的重置按钮,可以输入材质中设置的默认值。 + +.. image:: ../../img/Reference/Material/node_GradientParameter.png + :align: center + +.. image:: ../../img/Reference/Material/node_GradientParameter_External.png + :align: center + diff --git a/source/zh_CN/MaterialToolReference/material_NodeImage.rst b/source/zh_CN/MaterialToolReference/material_NodeImage.rst new file mode 100644 index 0000000..946a7ef --- /dev/null +++ b/source/zh_CN/MaterialToolReference/material_NodeImage.rst @@ -0,0 +1,31 @@ +================================ +材质节点(图像) +================================ + +概述 +================================ + +节点列表 +================================ + + +图像 +------------------------ + +输出指定的图像。 +图像不能被直接显示。(译注:需要通过采样图像节点将图像类型转换为数值类型) + +参数图像 +------------------------ + +输出外部指定的图像。 +图像不能被直接显示。(译注:需要通过采样图像节点将图像类型转换为数值类型) +参数中设置的概要和详细会在Effekseer和外部工具中显示。 + +.. image:: ../../img/Reference/Material/node_ParameterImage.png + :align: center + +采样图像 +------------------------ + +从图像中获取像素。 \ No newline at end of file diff --git a/source/zh_CN/MaterialToolReference/material_NodeMath.rst b/source/zh_CN/MaterialToolReference/material_NodeMath.rst new file mode 100644 index 0000000..6e072e5 --- /dev/null +++ b/source/zh_CN/MaterialToolReference/material_NodeMath.rst @@ -0,0 +1,145 @@ +================================ +材质节点(数学) +================================ + +概述 +================================ + +节点列表 +================================ + +加 +------------------------ + +输出V1加V2。 +如果没有连接输入值,则使用属性值。 + +减 +------------------------ + +输出V1减V2。 +如果没有连接输入值,则使用属性值。 + +乘 +------------------------ + +输出V1乘V2。 +如果没有连接输入值,则使用属性值。 + +除 +------------------------ + +输出V1除以V2。 +如果没有连接输入值,则使用属性值。 + +求余 +------------------------ + +输出V1除以V2的余数。 +如果没有连接输入值,则使用属性值。 + +步 +------------------------ + +如果V的输入值大于Edge的输入值,输出1, +反之输出0。 + +向上取整 +------------------------ + +输出V的向上取整。 + +向下取整 +------------------------ + +输出V的向下取整。 + +小数部分 +------------------------ + +输出V的小数部分。 +例如,输入1.15时,输出值为0.15。 + +最大值 +------------------------ + +输出V1和V2中较大的值。 + +最小值 +------------------------ + +输出V1和V2中较小的值。 + +乘方 +------------------------ + +输出Base的Exp次幂。 + +平方根 +------------------------ + +输出V的平方根。 + +钳制 +------------------------ + +输出值将V限制在Min和Max之间。 + +点乘 +------------------------ + +输出V1和V2的内积。 + +叉乘 +------------------------ + +输出V1和V2的外积。 + +归一化 +------------------------ + +输出V的归一化值。 +确保输入值的长度为1。 + +线性插值 +-------------------------------- + +输出V1和V2以alpha为比率的线性插值。 +如果没有连接输入值,则使用属性值。 + +如果alpha为1,输出V1。 +如果alpha为0,输出V2。 +如果alpha为0.1,输出V1 x 0.3 + V2 x 0.7。 + +1-V +------------------------ + +输出1-V。 + +绝对值 +------------------------ + +输出V的绝对值。 + +正弦 +------------------------ + +输出V的正弦值。 + +arctan2 +------------------------ + +输出X/Y的反正切。 +如果没有连接输入值,则使用属性值。 + +遮罩元素 +-------------------------------- + +从V中提取元素。 +例如,提取数值4的一部分,输出为数值2。 + +合并元素 +-------------------------------- + +合并V1和V2的元素。 +例如,输入数值3和数值1,输出数值4。 diff --git a/source/zh_CN/MaterialToolReference/material_NodeModel.rst b/source/zh_CN/MaterialToolReference/material_NodeModel.rst new file mode 100644 index 0000000..ab4522e --- /dev/null +++ b/source/zh_CN/MaterialToolReference/material_NodeModel.rst @@ -0,0 +1,50 @@ +================================ +材质节点(模型) +================================ + +概述 +================================ + +节点列表 +================================ + +顶点位置 +-------------------------------- + +输入粒子顶点的位置。 + +UV +-------------------------------- + +输出粒子的UV坐标。 +通过切换UV序号,可以使用受到Effekseer的UV参数影响前的UV坐标。 + +移动UV +-------------------------------- + +按照时间移动粒子的UV坐标并输出。 +可以输入UV坐标,时间(Time)和移动速度。 +如果没有连接输入值,则使用属性值。 + +顶点法线 +-------------------------------- + +输出粒子顶点的法线。 + +像素法线 +-------------------------------- + +输出像素的法线被输出节点的法线(Normal)入参修改前的值。 + +顶点颜色 +-------------------------------- + +输出粒子的顶点颜色。 +包括精灵、环之类的整体颜色。 + +物体缩放 +-------------------------------- + +输出Effekseer中粒子的放大率。 + +但是,只在用于输出节点的WorldPositionOffset时有效,并且只用于模型。 diff --git a/source/zh_CN/MaterialToolReference/material_NodeNoise.rst b/source/zh_CN/MaterialToolReference/material_NodeNoise.rst new file mode 100644 index 0000000..239cb5c --- /dev/null +++ b/source/zh_CN/MaterialToolReference/material_NodeNoise.rst @@ -0,0 +1,21 @@ +================================ +材质节点(噪声) +================================ + +概述 +================================ + +节点列表 +================================ + +简单噪声 +------------------------ + +输出噪声。 +当为UV输入一个值时,噪声会根据该值进行输出。 +改变Scale的值可以改变噪声的大小。 + +这是一个非常重的计算节点。基本上,这个节点应该只在计算WorldOffset的值时使用。 + +.. image:: ../../img/Reference/Material/node_SimpleNoise.png + :align: center diff --git a/source/zh_CN/ReleaseNotes/14x_or_older.md b/source/zh_CN/ReleaseNotes/14x_or_older.md new file mode 100644 index 0000000..58efb31 --- /dev/null +++ b/source/zh_CN/ReleaseNotes/14x_or_older.md @@ -0,0 +1,121 @@ +# 1.4x or older Change Logs + +## 1.43f(19/11/20) + +* Fixed a bug that it cannot open a help. + +## 1.43e(19/10/12) +* Fixed a bug that the application cannot read a model from maya +* Fixed a bug that the application cannot read a file with a name containing space +* Fixed a bug that crashes with unloaded models on mac + +## 1.43d(19/07/08) +* Fixed a bug that the window size is doubled each time the application is launched on Macs with Retina Display. +* Fixed a bug that settings are loaded from current directory +* Fixed a bug that the application cannot read a file with a name containing ```+``` +* Fixed a bug that the application is crashed when invalid images are loaded +* Fixed a bug that the application is crashed when File Viewer is opened and it select new +* Fixed a bug that the application is crashed when it failed to load a file from recent files +* Changed a name of error log. The name contains time stamp + +## 1.43c(19/05/13) + +* Fixed a bug that fails to read model file when user name is Japanese (Win) +* Fixed a bug that files cannot be loaded on Europe environment + +## 1.43b(19/03/12) + +* Fixed a bug that the icon image disappears when changing the screen size after opening the file(Mac) + +## 1.43(19/03/02) + +* Fixed bug that the behavior of the ribbon and track generated with the 0th frame is wrong +* Fixed bug that SSE buffer overrun crashes +* Fixed bug that crashes on Android when specifying easing of color +* Fixed many bugs about network functions + +## 1.42f(19/01/19) + +* Fixed a bug where recording image's aspect is wrong + +## 1.42e(19/01/08) + +* Fixed a bug where Effekseer is built with Debug Mode + +## 1.42d(19/01/06) + +* Fixed a bug about HSV Color* Support macOS 10.14 Mojave + +## 1.42c(18/10/14) + +* Make F-Curve key fit integer. +* Fixed a bug causes garbled when application path includes japanese letter. +* Fixed a bug shows multiple window when clicking a close button. +* Fixed a bug causes crach when record into opened movie file. +* Fixed a bug about recording on Mac + +## 1.42b(18/09/25) + +* Fixed bug: Fixed many bugs about command line + +## 1.42a(18/09/16) + +* Fixed bug: Changing a pitch of sound crashes + +## 1.42(18/09/16) + +* Fixed bug: Uncollapsed tree view node cannot be selected. +* Fixed bug: Fixed many bugs about Behavior, Behavior, Global + +## 1.41(18/09/13) + +* Fixed bug: UI is collapsed on some mac pc (Mac) +* Fixed bug: Dock panel behavior is wired +* Fixed bug: Pasting on node crashes the application + +## 1.40(18/09/12) + +* Tool: The renewal of UI +* Tool: Improve FBX loader. It can load a fbx file with an animation +* Tool: Add parameters about depth +* Tool: Add a parameter about random +* Tool: Add a parameter to make tracks and ribbons smooth +* Tool: Add self distortion +* Runtime: Improve a performance on smartphones +* Runtime: Improve a performance on all environments +* Fixed bug: Generation of particles is delayed at 1 frame + +## 1.31(17/11/21) + +* Fixed bug: Fixed FBX converter + +## 1.31(17/11/04) + +* Fixed bug: Fixed translation mistake in the recorder + +## 1.30(17/11/01) + +* Tool: Add icons +* Tool: Add file viewer +* Tool: Integrate FBX and mqo loader +* Tool: Improve F-Curve Editor +* Tool: Add UV F-Curve +* Runtime: changed so that enlargement ratio is applied to trajectory +* Fixed bug: Fixed shifting ribbon and track's UV +* Fixed bug: Fixed bug that ribbon distortion is not applied +* Fixed bug: Fixed misspelled function name (Destory -> Destroy) +* Fixed bug: Fixed bug that the behavior is not initialized when files are loaded +* Fixed bug: Fixed bug about rotation(Axis) +* Fixed bug: Fixed bug about rotation(Distortion) +* Fixed bug: Fixed bug about copy node +* Specification change: Changed to generate child particles at 0 frame since particles are generated +* Specification change: Change the return value of distortion callback to bool +* Specification change: Abolition of maximum number of nodes +* Specification change: Distortion method. Effekseer's effects are not distorted with a distortion. (after1.4 we plan to add self distortion) + +## 1.22(16/08/21) + +* Tool: Ribbon and track corresponds to UV scroll +* Fixed bug: Fixed erroneous operation of copy paste + +## Previous changes are only japanese. diff --git a/source/zh_CN/ReleaseNotes/150.md b/source/zh_CN/ReleaseNotes/150.md new file mode 100644 index 0000000..2562951 --- /dev/null +++ b/source/zh_CN/ReleaseNotes/150.md @@ -0,0 +1,143 @@ +# 1.50 New Features + +## Material + +Material functionality has been added. +You can now create and use your own materials with nodes. + +Distortion Parameters were removed from Basic Render Settings. +Lighting Parameters were removed from model Render Settings. +Instead of these, parameters are reorganized. + +Standard, distortion, and lighting materials have been added in Basic Render Settings. + +You can now specify a sampler for distorting texture independently of color. + +Lighting is now supported for non-models. + +You can now select an image to use for UV calculation. UV can also be specified without an image. + +(Breaking change) +Due to a bug, the distortion did not behave as the reference correctly. +The specifications is the same as the previous version if the colors of the vertices are swapped between red and green except for sprites. +The specifications is the same as the previous version if it makes the color of red twice for sprites. + +(Breaking change) +Applied read magnification to distortion. +The magnification and distortion become stronger. +Therefore, the distortion on the screen remains unchanged when the effect occupies the same area. + +(Breaking change) +Due to non-model lighting, billboard behavior has been partially changed. +Models with fixed settings and rings that extend in the depth direction are particularly affected. +The specifications is the same as the previous version if you reverse the front and back. + +(Breaking change) +Changed the specification so that pixels are drawn even if the position is the same in DirectX11. +There is basically no effect, but there may be a change if drawing in the same position. + +(Breaking change) +Fixed a bug that sprites are not ordered even if the drawing order was reversed. + +## Dynamic Parameter + +A function has been added to rewrite effect parameters during playback. + +## New format + +efkproj and efk have been combined into efkefc. It is no longer necessary to output another file. Instead, you must specify the load magnification at runtime when a file is loaded. + +## Recording + +The color when the background is changed can be reproduced as much as possible by separating the recorded result into normal and additive. + +You can now specify whether to save recording settings in the application or project. Effects can now have recording settings. + +Behavior is now reflected in recordings. Recording of loop effects has become easier. + +Fixed the problem that extra frames were recorded when recording as a spreadsheet. + +## UI + +The behavior of the node tree has been improved in many points. + +The behavior of the F-curve has been improved in many points. + +Copy and paste can be performed for each panel. + +The part whose value has been changed from the default is now emphasized. + +Added support for changing DPI scale. + +Fixed a bug that playback started when a space was entered during character string input. + +Added options to change font and font size. + + +## Environment + +Bloom and tone mapping can now be specified in the editor. +This is for checking the behavior of the effect because it is applied only to the appearance of the editor. +Background and lighting have been moved to the environment because of the frequency of changes. + +## Sprite, ring, model + +(Breaking change) The direction of rotation of ```Rotated billboard``` has been reversed. + +## Track + +(Breaking change) The track has been flipped. + +## Ring + +It changed ```viewing angle``` setting to a ring shape setting. +If you specify a crescent type, a ring is drawn as a partially cut circle. +You can now specify the start and end angles and the fade angle of the circle. + +(Breaking change) +The appearance may change depending on ```viewing angle```. + +## Ribbon, Track + +UV repeat pattern can now be specified. +UV can be repeated according to the length. You can also specify not to repeat only the edges. +Suitable for expressions with repeating patterns such as chains. + +## F-curve + +The value change can now be specified with the particle extinction time as 100. In addition, the default has been changed to 100%. + +## Depth + +Added a parameter to set the scale so that it does not change even if the distance changes. You can also suppress the change. + +Added depth offset to ribbon and track. + +Z-sort is now applied to ring and model. + +(Breaking change) +Fixed incorrect calculation of ignore of scaling by offset. + +## AttractionForce + +It is renamed into ForceField. +Turbulence was implemented. + +## Optimisation + +Update process is 30-50% faster. + +## Point of view + +You can now save and load the current viewpoint. + +You can now specify near-far clips. + +## Misc + +Added support for reading FBX without bone or FBX without animation and with bone. + +Added a playbackspeed in Behavior + +(Breaking change) +Fixed a bug that random numbers overflowed. The random behavior may change. diff --git a/source/zh_CN/ReleaseNotes/15x.md b/source/zh_CN/ReleaseNotes/15x.md new file mode 100644 index 0000000..f4bfbfc --- /dev/null +++ b/source/zh_CN/ReleaseNotes/15x.md @@ -0,0 +1,267 @@ +# 1.5x Change Logs + +## 1.53e (21/03/29) + +### Editor (Windows) + +Fixed a bug where FPS may decrease after Windows10 2004 + +## 1.53d (21/03/27) + +### Editor + +Fixed a bug where RenderingMode is not changed without rerunning + +Fixed bugs about Comment node in the Material Editor + +Added a text to show the number of parameters in the Material Editor + +## 1.53c (21/03/17) + +### Common + +Fixed a bug where Effekseer crashes when 1.6 files are loaded. + +### Editor + +Replaced docking panel. + +### Runtime + +Fixed a bug where effects sometimes blinks with culling + +## 1.53b (21/03/08) + +### Unity + +Fixed a bug that prevented images from loading when a same image asset was specified in multiple paths in effect assets. + +### WebGL + +Significantly improved a performance. + +## 1.53a (20/12/13) + +### Common + +- Removed glTF extension (because it was unmaintained and not implemented perfectly) +- Fixed a bug where UV2 nodes were not working properly in OpenGL materials. +- Fixed a bug where effects are not displayed with custom data 1 and 2 were set to all RGBA in OpenGL ES2.0 materials. +- Fixed a bug where effects are not displayed lighting in Metal materials. + +### Runtime + +- Added bat file to output x86 and x64. +- Disabled OpenAL samples on Windows. + +### Unity + +- Added the feature to draw effects in PostProcessingStack. +- Fixed a bug where materials were disabled after upgrading Unity version. +- Changed Mac binary to Hardened Runtime. + +### Cocos2d-x + +- Fixed a bug where images were not drawn correctly when mipmap was enabled in Metal environment. + +### UnrealEngine4 + +- 4.26 support. +- Changed to suppress the generation of extra materials. + +## 1.52n (20/10/23) + +### Cmmon + +- Fixed a bug where scaling was not applied to the cull size. +- Fixed a bug where material normals was incorrect. + +### Tool + +- Fixed a bug where the original image of the recording behaved strangely +- Changed to show a warning when connecting the normal and the normals in material. + +### Runtime + +- Fixed a bug that caused a crash when drawing a lot on DirectX12. + +### WebGL + +Fixed a bug where PremultiplyAlpha was not disabled. + +## 1.52m (20/08/28) + +### Common + +- Fixed a bug that caused a crash when creating too many particles that exceeded the amount of memory allocated under certain conditions. + +### UnrealEngine4 + +- Fixed a bug that prevented the Clamp node from working properly. +- Fixed a bug that caused a delay in drawing one frame. +- Fixed a bug that could cause incorrect rotation. + +### Runtime + +- Refreshed samples of culling +- Fixed a bug where culling was not working properly. + +## 1.52l(20/08/18) + +### Tools, Unity, Runtime, DXLib + +- Fixed a bug that caused a crash when playing an effect without setting a model file when a model was selected for rendering. + +## 1.52k(20/08/16) + +### Common + +- Fixed a bug where the effect is not displayed when render method is ribbons, the number of divisions is more than 2, the magnification is 0 for one particle. +- Moving the timing of sending the model to the GPU before rendering (to make it easier to process in the rendering thread) + +### Tools + +- Fixed omissions in the English version. +- Fixed a bug where the app crashed when you don't have file permissions. +- Fixed a bug that prevented creation of shader cache (x86 only) + +### Unity + +- Fixed a bug where effects would not play when switching emitters after playing an emitter in the Scene window. +- Fixed a bug that prevented material compilation if the material contains a reserved word +- Supports material wrapping and repeats + +### UnrealEngine 4 + +- Fixed a bug where R and G of Texture Sample node were switched. +- Fixed a bug where a material compile error would occur under certain circumstances +- Fixed a bug where lighting parameters were not supported +- Fixed a bug that prevented re-importation. +- Fixed a bug where images of normals could not be loaded with materials. +- Supports material wrapping and repeats + +### Runtime + +- Fixed a bug that caused network reloads to behave strangely with multiple Manager classes + +### DX Library. + +- Fixed a bug that caused network reloads to behave strangely + +### Cocos2d-x + +- Changed to show a warning when non-squared images are loaded. + +- Fixed a bug that did not support Android distortion. + +### WebGL + +- Change image.crossOrigin to use-credentials + +## 1.52j(20/08/02) + +Fixed a bug where Bloom was behaving strangely in certain environments. + +Fixed a bug where the memory locator alignment could go wrong in x86 environments. + +Fixed a bug where noise could occur in MSAA environments. + +## 1.52i (20/07/31) + +Fixed a bug where opening a file was disabled with certain operation (Mac) + +Fixed a bug where Effeksee cannot run in environments that did not support MSAA (Windows) + +Fixed a bug where ``` Is scaling invalid with Z-Offset ``` behaved strangely. + +Fixed a bug where dynamic parameters giving Vector as an argument behaved strangely. + +Fixed a bug where the F-curve of UV behaved strangely. + +Fixed a bug where the network reloading function was behaving strangely. + +Fixed a bug that caused loading problems when saving a file with a default value of 0 and the same value as the default in custom data. + +Fixed a bug where the memory locator alignment could go wrong in x86 environments. + +## 1.52h(20/07/09) + +Unify drawing behavior due to opacity on all platforms + +Effekseer now can remove redundant nodes when effects are exported + +Fixed a bug that caused a crash when executing UNDO without displaying the node tree. + +Fixed a bug that occurred when the value of a material's step node was negative. + +Fixed a bug that recording with high frequency is wrong + +Fixed a bug that caused a crash when much particles are spawn + +## 1.52g(20/06/09) + +Fixed a bug that pngs with interlacing could not be displayed correctly + +Fixed a bug that caused a crash when displaying a new effect after playing a lot of effect. + +Fixed a bug that caused a crash when saving camera settings. + +Fixed a bug where batch processing was not working. + +(Runtime) Fixed a bug that it crashs if you end up not finding a format when extending a file reading + +## 1.52f(20/05/13) + +Fixed a bug that parameters of turbulence is not saved + +Added an error message when it fails to save a file + +## 1.52e(20/05/07) + +Make delete button enabled in F-Curve on Mac + +Fix a bug that removing points with double click was disabled in F-Curve. + +Improve behavior of drag in F-Curve. + +## 1.52d(20/05/06) + +Fixed a bug where the magnification of recorded images is wrong. + +## 1.52c(Mac Only)(20/05/06) + +Fixed a crash on Mac when saving a file after importing new image . + +## 1.52b(20/05/05) + +Fixed a bug where particles are not shown with Line of SpawnMethod +Fixed a bug in which Japanese is selected in an environment where the language is neither Japanese nor English. +Fixed a bug that it fails to start if the current directory at startup is not the same as Effekseer. + +## 1.52a(20/04/28) + +Fixed a bug that a behavior of rotated billboard is something wrong when an angle is about 90 degree + +## 1.52(20/04/27) + +Fixed a bug where files could not be saved on some Mac environments. + +Fixed a bug that caused a rare crash. + +Fixed a bag where the FPS changed when not using the 60FPS display. + +Fixed a bug where the color space did not work properly. + +Improved UI for recording. + +## 1.51(20/04/02) + +Fix a bug that Effekseer doesn't run on ShaderModel4.0 (Windows) + +Optimize Turbulence + +Support 2D Mode (Experimental) + +## 1.50(20/03/18) + +[New Features](150) diff --git a/source/zh_CN/ReleaseNotes/160.md b/source/zh_CN/ReleaseNotes/160.md new file mode 100644 index 0000000..7aa73e8 --- /dev/null +++ b/source/zh_CN/ReleaseNotes/160.md @@ -0,0 +1,137 @@ +# 1.60 New Features + +## Common + +### Basic + +- Added a behavior for child particles to follow the position of the parent particle in position inheritance. + +
+ +### Position + +- Added a method to move with a path + +
+ +- Added a View Offset to always show a particle on a center in a screen + +### Scale + +- Added FCurve(Single) + +### force field. + +- Added a lot of different force fields. + +
+ +
+ +
+ +### Procedual Model + +- Added Procedual Model. + +In Effekseer, you can create simple models by simply adjusting parameters. +You can display your model as it is or use it for generating positions. + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Ribbon.png + :align: center +``` + +### Easing + +- Added many easing types. + +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInBounce.png + :align: center +``` + +### Rendering + +- Added many features to rendering + +Up to six images can now be used to create a variety of expressions such as distortion, blending of images, and image cropping without the need for material settings. +Soft particles can now be used to create a natural boundary between the background and the image. + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/alpha.png + :align: center +``` + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/dist.png + :align: center +``` + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/softparticle_far.png + :align: center +``` + +- Added animation transitions with Fade + +It uses linear completion for animation transitions. +This will ensure that the image does not change suddenly. + +
+ +- Textures are now loaded as NoMipMaps when the file name includes _NoMip. + +### Material + +Added a node to implement soft particles in materials. + +Added a node to get the magnification of the effect. + +### Dynamic parameter + +Added a step function + +### Optimization + +- Implemented multi-threaded updates. Faster update speed. + +- Geometry instances implemented. Improved speed when displaying multiple copies of the same model. + +## Tool + +### Packaging + +- Added a feature to create a package. + +You can export all the files related to an effect to a single package, or import them from a package. + +### UI + +- Changed the behavior of the docking panel + +- Changed to frameless window (Windows) + +### Recording + +- Added a recording size scaling factor to the recording function. + +### Options + +- Added a setting to change the mouse mapping to manipulate the viewport (you can select Maya style, Blender style, etc.). + +### Environment + +- Add an option to show a ground + +```eval_rst +.. image:: ../../img/Reference/Environment/ground.png + :align: center +``` + +## Runtime + +- Major refactoring of the C++ source code. + +Safety has been improved. +However, a number of destructive changes have been made. Please read the readme of the runtime for details. diff --git a/source/zh_CN/ReleaseNotes/16x.md b/source/zh_CN/ReleaseNotes/16x.md new file mode 100644 index 0000000..73b6817 --- /dev/null +++ b/source/zh_CN/ReleaseNotes/16x.md @@ -0,0 +1,334 @@ +# 1.6x Change Logs + +## 1.62f (Aug. 05, 2022) + +### Unity + +Fixed a bug where URP renderer ignores a depth with some settings + +## 1.62e (June. 17, 2022) + +### Common + +Fixed a bug where old effekseer projects causes wrong behaviors. + +### Unity + +Fixed a bug where URP renderer causes an error with Profiler + +Fixed a bug where particles cannot stop after calling StopRoot + +### WebGL + +Fixed a bug where multiple context causes an error + +## 1.62d (Apr. 17, 2022) + +### Common + +Fix a bug where a particle is not spawned when StopRoot is called after Play immediately + +### Unity + +Reduced a memory allocation + +Supported 2021.2 + +### WebGL + +Fixed typo + +Fixed a memory leak + +### UE4 + +Fixed a bug where EffekseerUE4 fails to compile on some platforms + +Fixed a bug where particles are not shown on some platforms + +## 1.62c2 (March 28, 2022) + +Change a compile settings on Mac + +## 1.62c (March 06, 2022) + +Support Notarization on Mac + +Fix a bug where normal and tangent are not normalized in a procedural model + +Fix a bug where efkpkg importer cannot import a material when a texture file is not found + +Fix a SIMD instruction mistakes that regarding integer rounding. + +## 1.62b (Jan 31, 2022) + +### Common + +Fix a bug where behaviors of Normal are wrong in DX9 + +Fix a bug where point, line and circle in the spawn method is not supported left and right coordinate conversion + +Fix a bug where a behavior of particle is wrong with drag and spawn method rotation + +### Tool + +Fix a bug where Effekseer crashes while importing efkpfg with a model and root directory + +### UE4 + +Fix a bug where it failed to compile in the latest version + +### WebGL + +default image.crossOrigin was changed into none. + +## 1.62a (Jan 05, 2022) + +### Common + +Fixed a bug that allowed caches of old materials to be loaded. + +## 1.62 (Jan 02, 2022) + +### Common + +Supported a feature to maintain gamma color in a linear color space + +Fixed a bug where render batch doesn't work + +Fixed a bug where a behavior of drag or follow a parent is wrong with a spawn method + +Fixed a bug where a rendering result is wrong with a material and 17 uniforms + +Fixed a bug where DirectX9 Runtime failed to render some model + +### Tool + +Improved efkpkg importer + +Made a node select with Enter + +Fixed a FCurve Window behavior + +Fixed a bug where TextureObject is not imported from efkpkg + +Fixed a bug where fbx converter cannot convert some fbx + +Fixed a bug where a node is not selected with right clicking + +Changed a library to show a dialog into Zenity + +### Unity + +Separated setting files and added a command to create user settings (Please read documents) + +Added a filed to Speed in Emitter Editor + +Fixed a bug where a rendering result is wrong with NativeRenderer and minus depth priority + +Fixed a bug where a rendering result is wrong with a distortion, Effekseer NativeRenderer and Unity Standard Linear Renderer + +### WebGL + +Add a feature to load an effect from efkpkg (It requires unzip functions) + +## 1.61e (Oct 14, 2021) + +### Common + +Fixed a bug where the angle in the spawn method was not being applied to the drag of the force field. + +Fixed a bug where the force and attraction of force fields sometimes behaved incorrectly when the spawn method was applied. + +### Tools + +When a comment is added while a node is selected in the Material Editor, the comment now surrounds the node. + +Fixed a bug that prevented it from starting on older MacOS. + +### Unity + +Fixed a bug that caused a warning to appear in URP. + +Fixed bug that Unity URP didn't launch on old MacOS. + +## 1.61d (Sep 14, 2021) + +### Unity. + +Fixed a bug that caused Archive to fail on iOS. + +## 1.61c (Sep 11, 2021) + +### Common + +Fixed a bug that force field decay always works when the particle is at (0,0,0). + +### Tools. + +Fixed a bug that the screen turns black when bloom is enabled and an invalid value is entered. + +Fixed a bug where the window size would be wrong the next time it was launched if you quit when it was minimized. + +Fixed an issue where the F-curve labeling was wrong. + +### Unity + +Fixed a bug in UnityRenderer that the drawing does not match Effekseer when material distortion is enabled. + +## 1.61b (Aug 24, 2021) + +### Common + +Fixed memory leak in OpenGL + +Fixed a crash when loading a material that fails to compile. + +### Tools. + +Fixed a crash when clicking the file viewer button when no file is loaded. + +## 1.61a (2021/08/03) + +### Common + +Optimized the rendering speed of rings. + +Optimized rendering speed for WebGL. + +Fixed a crash when executing StopRoot with culling enabled. + +Fixed a bug in which culling behaved strangely in left-handed systems. + +Improved behavior of normals and lighting in left-handed systems. + +Fixed a bug with UV animation completion in left handed systems. + +### Runtime + +Changed internal memory handling in DirectX12, Metal, and Vulkan to use more memory, but less when there's not enough buffer. + + +### Tools + +Changed to not show custom data unless a material file is selected. + +Fixed a bug that prevented some files from being displayed at runtime before 1.5 after saving them. + +## 1.60e + +### Common + +Fixed a bug that could cause crashes when playing effects in some 32bit builds. + +Fixed a bug that caused strange behavior when using two-element custom data as a material in some graphics backends. + +Fixed a bug that caused custom data to behave strangely in the DirectX9 environment. + +Fixed a bug that caused compile failure in some Linux environments. + +### WebGL + +Improved three.js to work without state restoration. + +Added a sample without state restoration. + +Fixed a bug where TypeScript samples could not be executed. + +Changed the version of three.js used in the sample to the latest version. + +## 1.60d + +### Common + +Fixed a bug in which vertex colors R and G were swapped in DirectX9 models. + +Fixed a bug in OpenGL where some states were not being restored. + +### Tools + +Fixed a bug that prevented recording from working properly on MacOS. + +Fixed a bug where the wire display in Lighting didn't look right. + +Fixed a bug in F-Curve that caused it to behave strangely when the points were swapped. + +Fixed a bug where Bloom parameters were displayed incorrectly. + +Added Spanish language. + +### Unity + +Fixed a bug where particles generated in the first frame were not displayed when there was a force field resistance. + +Fixed a bug where different files could be loaded if they had the same relative path + +Fixed a bug that caused a memory leak when using sound. + +## 1.60c2 + +### Runtime + +Fixed a bug where an culling is flipped with a reversed depth except DirectX11 + +## 1.60c + +### Common + +Fixed a bug that procedural models are not displayed in 32bit environment. +Fixed a bug that soft particles were not behaving properly in left handed system. + +### Cocos2d-x + +Changed the maximum number of sprites. +Improved memory handling in Metal. + +### Runtime + +Fixed and removed some samples. +Improved memory handling in Metal + +## 1.60b + +### Common + +Improved error handling in OpenGL. + +Fixed a bug where the target position was reversed when using the left-hand coordinate system. + +Fixed a bug in which distortion was displayed incorrectly when using OpenGL and DirectX9 with advanced renderer. + +Fixed a bug where colors would flicker in rare cases. + +### Tools + +Improved behavior of wireframe display. + +Fixed a bug that caused some effects to fail to import. + +Fixed a bug that caused a crash when looping with F-curve and only one keypoint was selected. + +### Unity + +Disabled OpenGL on latest Macs as it no longer compiles with iOS. + +Fixed a bug where the effect scale node were not supported. + +Improved display of effects in scene view + +Fixed a bug that prevented Effekseer from being used anywhere but under Assets + +Fixed a bug in the Unity renderer where models with materials applied would display incorrectly. + +### DX library + +Fixed to compile with different minor versions of compilers. + +### Runtime + +Fixed a bug that the projection matrix of OpenGL sample was DirectX projection matrix. + + +## 1.60 + +[New Features](160) diff --git a/source/zh_CN/ReleaseNotes/170.md b/source/zh_CN/ReleaseNotes/170.md new file mode 100644 index 0000000..9e4ee09 --- /dev/null +++ b/source/zh_CN/ReleaseNotes/170.md @@ -0,0 +1,96 @@ +# 1.70 New Features + +## Common + +### Gradient + +Added the ability to specify colors with gradients. + +```eval_rst +.. image:: ../../img/ReleaseNotes/gradient.png + :align: center +``` + +### Level of Detail + +Added the ability to change the behavior of particles based on distance to improve a performance of the effect. +[by [@abvadabra](https://github.com/abvadabra), [#820](https://github.com/effekseer/Effekseer/pull/820)] + +```eval_rst +.. image:: ../../img/Reference/lods_NodeConfiguration.png + :align: center +``` + +### Kill Rules + +Added the ability to specify a range within which particles will be discarded if they enter or exit within the specified range. +[by [@abvadabra](https://github.com/abvadabra), [#833](https://github.com/effekseer/Effekseer/pull/833)] + +```eval_rst +.. image:: ../../img/Reference/killRules_Box.png + :align: center +``` + +### Triggers + +Added the ability to remove or start generating specific particles during effect playback. + +```eval_rst +.. image:: ../../img/Reference/trigger_anim.gif + :align: center +``` + +### Rotation + +Added the ability to rotate particles so that they face the camera. + +### Ribbon, Track + +#### Color Time + +Added the ability to set the source of time to determine the color of ribbons and trajectories. + +### Materials + +#### New nodes + +Light, Noise, and Gradient nodes have been added. + +## Tools + +### Overdraw display + +Added a display method that shows the number of drawings as a drawing method. + +```eval_rst +.. image:: ../../img/Reference/DrawMode_Overdraw.png + :align: center +``` + +### h264 recording + +Added the ability to save recordings in h264 format. (Windows only) + +### Data Recovery + +Added auto saving of project edited in Effekseer. In case of data loss project can be restored from auto saved files by going into `Files > Recover` +[by [@abvadabra](https://github.com/abvadabra), [#813](https://github.com/effekseer/Effekseer/pull/813)] + +## Unity + +Supported M1 Mac + +## UnrealEngine5 + +Supported UnrealEngine5 + +## Other + +- Runtime: Particles generated at a small number of times will now interpolate their parent's position. + For example, children of a fast-moving parent particle can now be generated at equal intervals. +- Editor: Added ability to configure amount of digits after decimal point in editor [by [@abvadabra](https://github.com/abvadabra), [#812](https://github.com/effekseer/Effekseer/pull/812)] +- Editor: Added ability to use dynamic expressions for middle point of Easing component. [by [@abvadabra](https://github.com/abvadabra), [#816](https://github.com/effekseer/Effekseer/pull/816)] +- API: Added `Manager::SetSpawnDisabled(Handle, bool)` function which allows to temporarily disable particles generation by effect instance [by [@abvadabra](https://github.com/abvadabra), [#808](https://github.com/effekseer/Effekseer/pull/808)] +- OpenGL Renderer: Fixed incorrect reset of sampler objects [by [@abvadabra](https://github.com/abvadabra), [#815](https://github.com/effekseer/Effekseer/pull/815)] +- Other: Performance has been improved when pausing effects or when effects are off-screen. +- Various other bugs have been fixed. diff --git a/source/zh_CN/ReleaseNotes/17x.md b/source/zh_CN/ReleaseNotes/17x.md new file mode 100644 index 0000000..77a37d7 --- /dev/null +++ b/source/zh_CN/ReleaseNotes/17x.md @@ -0,0 +1,92 @@ +# 1.7x Change Logs + +## 1.70f (Jul. 15, 2023) + +### UnrealEngine + +Fixed a bug that Reimport was not available in 5.2. + +## 1.70e (June. 03, 2023) + +### Editor + +Fixed a bug where FCurve Crashes. + +Added a feature to copy fcurve from menu. + +### C++ + +Refactor codes + +Fixed a bug where frame is specified in SetTime + +### Unity + +Supported Unity 2022.3 + +## 1.70d (Apr. 21, 2023) + +### Unity + +Fixed a bug that could cause memory leaks. + +## 1.70c (Jan. 04, 2023) + +### Unity + +Fixed a bug where Effekseer cannot load a material which is created with 1.7 on UnityRenderer + +Fixed a bug where a distorted color is white on NativeRenderer with URP + +## 1.70b (Dec. 24, 2022) + +### Common + +Fixed a bug where a single easing behavior is wrong + +### Tool + +Fixed a bug where Effekseer crashes when a network config file is broken + +### Runtime + +Fixed a bug where a sound feature is called from an another thread + +### Unity + +Fixed a bug where the plugin sometimes freezes with a sound feature + +Fixed a bug where a distortion is invalid on URP except VR + +Fixed a bug where Unity 2021.3 causes undefined symbol error + +Fixed a bug where the depth wasn't passed into SetRenderTarget correctly when using Unity 2022 + +## 1.70a (Nov. 30, 2022) + +### Common + +Fixed a bug where rotation with axis enlarges particles +Fixed a bug where a normal of procedural model is a bit wrong + +### Tool + +Fixed a bug where a modify button is still shown when an efkmodel is loaded + +### Runtime + +Removed VAO from a shader for multi threading in OpenGL +Added a code to verify generating thread in VAO in OpenGL + +### UE + +Supported Unreal Engine 5.1 +Fixed many bugs + +### Unity + +Fixed a bug where a model sometimes be unlinked + +## 1.70 (Sep. 20, 2022) + +[New Features](170) diff --git a/source/zh_CN/ReleaseNotes/index.rst b/source/zh_CN/ReleaseNotes/index.rst new file mode 100644 index 0000000..db43636 --- /dev/null +++ b/source/zh_CN/ReleaseNotes/index.rst @@ -0,0 +1,22 @@ +========================================= +版本说明 +========================================= + +新功能 +======================== +.. toctree:: + :maxdepth: 1 + + 170 + 160 + 150 + +更新日志 +======================== +.. toctree:: + :maxdepth: 1 + + 17x + 16x + 15x + 14x_or_older diff --git a/source/zh_CN/ToolReference/behavior.md b/source/zh_CN/ToolReference/behavior.md new file mode 100644 index 0000000..0926ae2 --- /dev/null +++ b/source/zh_CN/ToolReference/behavior.md @@ -0,0 +1,74 @@ +# 行为 + +## 概述 + +修改特效在编辑器中的显示。可以模拟游戏中的情况,例如播放多个粒子。 + + + +## 参数 + +### 位置 + +设置节点树中的根节点的位置。 + + + +### 速度 + +设置节点树中的根节点的移动速度。 + + + + +### 角度 + +设置节点树中的根节点的角度。 + + + +### 角速度 + +设置节点树中的根节点的角速度。 + + + +### 缩放 + +设置节点树中的根节点的缩放。 + + + +### 缩放速率 + +设置节点树中的根节点的缩放速率。 + +### 生命周期 + +设置播放特效时删除根节点生成的粒子的时间(以帧为单位)。 + +### X方向数量 + +设置在X方向重复这个特效的次数。 + +### Y方向数量 + +设置在Y方向重复这个特效的次数。 + +### Z方向数量 + +设置在Z方向重复这个特效的次数。 + +### 距离 + +设置播放多个特效时,特效之间的距离。 + + + +### 播放速度 + +设置特效的播放速度。 + +### 引力点 + +设置力场窗口中设置了引力时,目标点的坐标。 diff --git a/source/zh_CN/ToolReference/common.md b/source/zh_CN/ToolReference/common.md new file mode 100644 index 0000000..b3ce675 --- /dev/null +++ b/source/zh_CN/ToolReference/common.md @@ -0,0 +1,119 @@ +# 基础设置 + +## 概述 + +在此,你可以为粒子节点设置一些全局参数,例如名字、生成粒子的数量和一些其他设置。 + +## 参数 + +
+ +

“基础设置”窗口

+
+ +### 可见性 + +控制这个节点生成的粒子是否要被渲染到窗口中。如果勾选它,粒子将会可见。注意,如果没有勾选,即便输出到游戏中,粒子也不会被渲染。(译注:和游戏内的说明相矛盾) + +### 名称 + +设置显示在节点树中的名字。它的作用仅仅是,当你的节点数中有许多节点时,便于管理节点。它完全不影响粒子的行为。 + +### 生成数量 + +设置这个节点生成的粒子的最大数量。你可以选择正无穷以无限生成粒子(或者直到其他条件设置停止了粒子的生成)。然而,当在另一个内嵌了Effekseer的程序中播放特效时,注意除非触发了停止特效的函数,否则“正无穷”的特效将不会结束。 + +### 继承位置 + +设置父粒子的位置如何影响这个节点生成的粒子。请参照接下来的小节以获得关于继承的信息。 + +#### 仅生成时 - 跟随父节点 + +子粒子移动以跟随父粒子。 +可以控制这个行为的速度和转向。 + +
+ +### 继承旋转 + +设置父粒子的旋转如何影响这个节点生成的粒子。请参照接下来的小节以获得关于继承的信息。 + +### 继承缩放 + +设置父粒子的缩放如何影响这个节点生成的粒子。请参照接下来的小节以获得关于继承的信息。 + +### 继承** + +#### 始终 + +它表示持续的继承,每当父粒子的位置变化时,子粒子也立刻更新变化。如果父粒子被移除,父粒子消失时的值将成为之后被子节点继承的值。 + +#### 仅生成时 + +仅在子粒子生成时一次性地用继承的值初始化子粒子的值。 + +#### 从不 + +该值不会被继承。无论父粒子的值是什么,子粒子的行为仅取决于子节点的参数。 + +### 生命周期结束后销毁 + +当“生命周期”中设置的帧数结束时,粒子将被移除。如果不被勾选,粒子将不会在生命周期结束后被移除。 + +### 跟随父节点销毁 + +当父粒子移除时,子粒子也会被移除。 + +### 子节点全部销毁时销毁 + +如果一个父粒子不存在子粒子,而且未来也不可能生成子粒子,则删除父粒子。 + +### 生命周期 + +设置粒子从生成到移除之间经过的帧数。然而,如果未选择“生命周期结束后销毁”,这个参数就没有作用。 + +### 生成速率 + +设置粒子生成的速率。表示一个粒子生成后,再生成下一个粒子时需要经过的帧数。你可以设置一个小于1的值,在这种情况下每帧就会生成多个粒子。 + +### 生成开始时间 + +设置从父粒子生成到子粒子第一次生成时需要经过的帧数。 + +生成开始时间也可以设置为负数值。但应该在负数时间生成的粒子事实上会在第0帧生成。 + +下面的图表显示了生成速率、生成开始时间和时间的关系。(1)是生成速率,(2)是生成开始时间,(3)是时间(以帧为单位)。当经过了生成开始时间后,粒子开始生成。但是所有在负数时间内生成的粒子事实上在第0帧才被生成。 + +![](../../img/Reference/common_generatedTime.png) + +### 开始生成的触发器 + +设置触发粒子生成的触发器。 + +如果设置了一个触发器,那么在触发器信号发送前,粒子不会生成。 + +如果设置为默认的“无”,那么无需触发器信号,粒子也会开始生成。 + +参阅:[15.通过触发器改变特效!](../ToolTutorial/15.md) + +### 停止生成的触发器 + +设置停止粒子生成的触发器。 + +如果设置了一个触发器,那么在触发器信号发送时,粒子会停止生成。 + +如果设置为默认的“无”,那么触发器信号不会停止粒子的生成。 + +参阅:[15.通过触发器改变特效!](../ToolTutorial/15.md) + +### 销毁的触发器 + +设置删除粒子的触发器。 + +如果设置了一个触发器,那么在触发器信号发送时,现存的粒子会被删除。 + +如果设置为默认的“无”,那么触发器信号不会删除粒子。 + +而且,如果你将`基础渲染设置`中的`淡出`设置为`在销毁后淡出`,那么在触发器信号发送时,粒子会被淡出。 + +参阅:[15.通过触发器改变特效!](../ToolTutorial/15.md) diff --git a/source/zh_CN/ToolReference/culling.md b/source/zh_CN/ToolReference/culling.md new file mode 100644 index 0000000..46f19cf --- /dev/null +++ b/source/zh_CN/ToolReference/culling.md @@ -0,0 +1,33 @@ +# 剔除 + +## 概述 + +你可以设置和剔除相关的参数。剔除的用途是不渲染位于屏幕外的特效。如果“剔除”设置的粗糙的形状位于屏幕之外,那么特效本身就不会被渲染。如果没有设置剔除,特效总是被渲染。 + +译注:就是设置一个包裹特效的形状,当这个形状位于屏幕之外时,就判断特效整体都位于屏幕之外,就不需要渲染特效了。 + +## 参数 + +### 显示剔除 + +设置是否在屏幕上显示剔除的形状。 + +### 剔除类型 + +设置剔除的形状。 + +#### 无 + +不使用剔除,特效一直被绘制。 + +#### 球 + +球形剔除。 + +##### 半径 + +球的半径。 + +##### 位置 + +球的中心的位置。 diff --git a/source/zh_CN/ToolReference/depth.md b/source/zh_CN/ToolReference/depth.md new file mode 100644 index 0000000..96946a4 --- /dev/null +++ b/source/zh_CN/ToolReference/depth.md @@ -0,0 +1,172 @@ +# 深度 + +## 概述 + +设置深度的相关参数。 + +## 参数 + +### Z偏移 + +在渲染时在深度方向上移动粒子的位置。这个参数只影响渲染。在1.4版本中,只有设置了这个参数的粒子会被移动,子粒子不会被移动。例如,在渲染击中特效时,这个参数可以用于防止角色与特效直接接触。 + +(1)是一个接触到角色的特效。(2)是Z偏移。Z偏移防止角色与特效接触。 + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +Z偏移:0 + + + +Z偏移:2 + +
+ +### 禁用Z偏移导致的缩放 + +使用Z偏移可以移动渲染特效的位置,改变与摄像机的距离。当距离改变时,渲染的粒子的大小也会改变。你可以通过这个参数阻止这种变化的发生。 + + + + + + + + + + + + + + + + + + + + + + + +
+ +关闭 + + + +开启 + +
+ +### 缩放Z偏移 + +设置Z偏移的值是否会随着粒子的缩放值而变化。 + + + + + + + + + + + + + + + + + + + + + + + +
+ +关闭 + + + +开启 + +
+ +### 深度排序 + +设置同一个节点生成的粒子是否按照距离排序。如果开启了此参数,粒子会有更好的表现效果,但性能消耗也会增加。 + + + + + + + + + + + + + + + + + + + + + + + +
+ +关闭 + + + +开启 + +
+ +### 渲染优先级 + +设置节点之间的渲染顺序。这个参数的值越高,则粒子越晚被绘制。这个参数也会影响到扭曲。如果渲染优先级低于0,扭曲将只影响到背景。粒子之间不会互相扭曲。如果渲染优先级大于或等于0,背景和渲染优先级小于0的粒子就会被扭曲。 + +下图是渲染优先级的粒子。(1)是(2)的父节点,其渲染优先级为0,(2)的渲染优先级为0。(3)的渲染优先级为1。可以看出,渲染的顺序是由渲染优先级决定的,在具有相同的渲染优先级的节点之间,子节点在后绘制。 + + + +### 抑制随深度变化的缩放变化 + +确保粒子以大致相同的尺寸显示,与粒子和相机之间的距离无关。 +适用于锁定标记等。 + +还可以降低距离的影响。 + + diff --git a/source/zh_CN/ToolReference/drawMode.md b/source/zh_CN/ToolReference/drawMode.md new file mode 100644 index 0000000..b310c21 --- /dev/null +++ b/source/zh_CN/ToolReference/drawMode.md @@ -0,0 +1,41 @@ +# 渲染模式 + +在编辑器中,粒子可以以几种渲染模式显示,这对于调试所编辑的特效的不同方面很有用。 + +## 普通 + +```eval_rst +.. image:: ../../img/Reference/DrawMode_Normal.png + :align: center +``` + +这是默认的渲染模式。粒子的显示方式与引擎的渲染方式相同。 + +## 线框 + +```eval_rst +.. image:: ../../img/Reference/DrawMode_Wireframe.png + :align: center +``` + +显示粒子的线框。 + +## 普通 + 线框 + +```eval_rst +.. image:: ../../img/Reference/DrawMode_WireframeNormal.png + :align: center +``` + +显示带有纹理的粒子和线框的叠加。 + +## 过度绘制 + +```eval_rst +.. image:: ../../img/Reference/DrawMode_Overdraw.png + :align: center +``` + +这种模式在优化时很有用。它渲染了粒子的透明“剪影”。这些透明的颜色互相叠加,使之易于定位多个粒子重叠的地方。 + +过度绘制粒子通常是导致性能问题的主要原因。你会希望通过尽可能减少重叠粒子的数量来减少过度绘制。 diff --git a/source/zh_CN/ToolReference/dynamicParameter.md b/source/zh_CN/ToolReference/dynamicParameter.md new file mode 100644 index 0000000..cf79c8d --- /dev/null +++ b/source/zh_CN/ToolReference/dynamicParameter.md @@ -0,0 +1,153 @@ +# 动态参数 + +## 概述 + +动态参数可以实现在特效在游戏中播放时动态地修改参数的值。 +通过简单的代码控制参数。参数可以通过外部程序设置。 + +## 使用方法 + +### 基础 + +#### 面板 + +打开动态参数面板。 + +```eval_rst +.. image:: ../../img/Reference/DynamicParameter/menu_en.png + :align: center +``` + +#### 添加表达式 + +你可以单击“添加”按钮添加一个表达式。 +你可以编辑表达式的名称和内容。 + +```eval_rst +.. image:: ../../img/Reference/DynamicParameter/add_en.png + :align: center +``` + +#### 编写表达式 + +例如,要将第一个参数修改为2.0,可写为如下形式。 + +``` +@O.x = 2.0 +``` + +然后点击编译。如果没出现问题,会显示OK。如果出现问题,会显示出错的原因。 + +``` +@O.x = 2.0 +``` + + +#### 使用表达式 + +右键要使用表达式的参数并选择动态。 +然后会显示一个选择表达式的文本框。 + +```eval_rst +.. image:: ../../img/Reference/DynamicParameter/select_dynamic_en.png + :align: center +``` + +然后,选择你先前输入的表达式,这个表达式就会被应用到参数。 + +```eval_rst +.. image:: ../../img/Reference/DynamicParameter/apply_dynamic_en.png + :align: center +``` + +位置的参数是(0,0,0)。但是粒子出现在(2,0,0),因为表达式改变了位置参数。 + +```eval_rst +.. image:: ../../img/Reference/DynamicParameter/move2.png + :align: center +``` + +### 表达式中的函数 + +#### 修改多个参数 + +x, y, z, w, 每个参数都是可修改的。 +下面的输入将值分别修改为2, 3, 4, 5。 +如果目标是颜色,x, y, z, w 对应RGBA。 + +``` +@O.x = 2.0 +@O.y = 3.0 +@O.z = 4.0 +@O.w = 5.0 +``` + +#### 四则运算 + +表达式可以使用算术运算。可以用()修改运算优先级。 + +``` +@O.x = (2.0 + 3.0 * 2.0 / 3.0) - 2.0 +``` + +#### 参数 + +外部程序输入的参数可以通过面板中的数字输入框或运行时设置。 + +|参数|说明| +|:----|:----| +|@P.x @P.y @P.z @P.w|动态参数应用之前的参数| +|@In0 @In1 @In2 @In3|外部程序输入的值| +|@GTime|当前时间(秒)| +|@PTime|父粒子生成至今的时间(s)| + +#### 函数 + +可以使用以下函数。 + +|函数|说明| +|:----|:----| +|sin(x)|返回正弦值,x使用弧度制。| +|cos(x)|返回余弦值,x使用弧度制。| +|rand()|返回随机值| +|rand(x)|返回与x相关的随机值。如果x相同,则返回值也相同。| +|step(edge,x)|如果x大于edge,返回1.0。否则返回0。| + +#### 目标 + +动态参数可应用于以下参数。 + +- 生成数量 +- 生成速率 +- 生成开始时间 +- 生命周期 +- 位置 - 固定,位置・速度・加速度,缓动 +- 旋转 - 固定,角度・速度・加速度,缓动 +- 缩放 - 固定,缩放・速度・加速度,缓动 + +## 示例 + +### LOD + +生成的数量可以通过外部设置。 + +``` +@O.x = @In0 * @P.x +``` + +### 激光 + +可以从外部设置激光的Z轴的长度。 + +``` +@O.z = @In0 * @P.z +``` + +### 正弦波 + +像正弦波一样移动。 + +``` +@O.x = sin(@GTime) +@O.y = @GTime +``` diff --git a/source/zh_CN/ToolReference/easing.md b/source/zh_CN/ToolReference/easing.md new file mode 100644 index 0000000..9e838c0 --- /dev/null +++ b/source/zh_CN/ToolReference/easing.md @@ -0,0 +1,146 @@ +# 缓动 + +缓动允许你设置两个或三个点并在之间进行插值以改变它们的值。 +在Effekseer中,你可以将缓动应用到特效的多种参数。缓动也有多种类型,下面将描述这些类型。 + +## 缓动的类型 + +缓动有多种不同的类型,例如开始时突然变化,结束时缓慢变化。 + +本页面末尾的图表显示了可用的所有类型的缓动。 + +## 中间点 + +基础的缓动有两个点,但你还可以加一个中间点。 +值的变化将始终通过中间点。 + +## 随机组 + +Effekseer easing允许你为起点和终点设置随机性。如果所有的值都不一样,这不是问题,但有时你希望XY是随机的,但值是一样的,只有Z是不同的。例如,如果一个圆柱体的三维模型被用作梁,XY的随机性需要相同,因为你想保持圆的形状。 + +在这种情况下,有一个叫做组的功能。 + +如果组具有相同的数量,那么随机行为就会相同。这允许你再现一个XY相等但Z不同的随机。 + +Effekseer的缓动可以为起点和终点设置随机性。 +如果XYZ的值不必相等,这不是问题,但有时你希望XY轴是同一个随机值,只有Z轴是不同的。 +例如,如果你想将一个圆柱体的3D模型用作梁,XY轴的随机值需要是相同的,因为你需要保持形状是圆形的。 + +在这种情况下,有一个叫做组的功能。 + +如果组的数字相同,则随机行为也会相同。 +这允许你实现XY相等但是Z不同的随机。 + +## 各轴类型独立 + +允许你为XYZ轴分别设置不同的缓动类型。 + +## 缓动类型一览 + +- EaseInBack +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInBack.png + :align: center +``` + +- EaseInBounce +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInBounce.png + :align: center +``` + +- EaseInCubic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInCubic.png + :align: center +``` + +- EaseInOutBack +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInOutBack.png + :align: center +``` + +- EaseInOutBounce +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInOutBounce.png + :align: center +``` + +- EaseInOutCubic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInOutCubic.png + :align: center +``` + +- EaseInOutQuadratic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInOutQuadratic.png + :align: center +``` + +- EaseInOutQuartic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInOutQuartic.png + :align: center +``` + +- EaseInOutQuintic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInOutQuintic.png + :align: center +``` + +- EaseInQuadratic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInQuadratic.png + :align: center +``` + +- EaseInQuartic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInQuartic.png + :align: center +``` + +- EaseInQuintic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseInQuintic.png + :align: center +``` + +- EaseOutBack +```eval_rst +.. image:: ../../img/Reference/Easing/EaseOutBack.png + :align: center +``` + +- EaseOutBounce +```eval_rst +.. image:: ../../img/Reference/Easing/EaseOutBounce.png + :align: center +``` + +- EaseOutCubic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseOutCubic.png + :align: center +``` + +- EaseOutQuadratic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseOutQuadratic.png + :align: center +``` + +- EaseOutQuartic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseOutQuartic.png + :align: center +``` + +- EaseOutQuintic +```eval_rst +.. image:: ../../img/Reference/Easing/EaseOutQuintic.png + :align: center +``` \ No newline at end of file diff --git a/source/zh_CN/ToolReference/environment.md b/source/zh_CN/ToolReference/environment.md new file mode 100644 index 0000000..87a5d74 --- /dev/null +++ b/source/zh_CN/ToolReference/environment.md @@ -0,0 +1,65 @@ +# 环境 + +## 概述 + +这个面板用于设置环境,例如场景的背景和后处理效果。可用于检查不同环境下特效的表现。 + +## 参数 + +### 背景颜色 + +设置背景的颜色。 + +```eval_rst +.. image:: ../../img/Reference/Environment/background.jpg + :align: center +``` + +### 背景图片 + +设置的背景图片。 + +```eval_rst +.. image:: ../../img/Reference/Environment/background_image.jpg + :align: center +``` + +### 地面 + +显示地面。 +可用于检查软粒子或深度。 + +```eval_rst +.. image:: ../../img/Reference/Environment/ground.png + :align: center +``` + +### 光照方向 + +设置显示模型时照亮模型的光照的方向。 + +### 光照颜色 + +设置光照的颜色 + +### 环境色 + +设置环境光的颜色。 + +### 泛光 + +设置泛光的参数。 + +```eval_rst +.. image:: ../../img/Reference/Environment/bloom.jpg + :align: center +``` + +### 色调映射 + +设置一种色调映射。 + +```eval_rst +.. image:: ../../img/Reference/Environment/tone.jpg + :align: center +``` diff --git a/source/zh_CN/ToolReference/fcurve.md b/source/zh_CN/ToolReference/fcurve.md new file mode 100644 index 0000000..f0d7832 --- /dev/null +++ b/source/zh_CN/ToolReference/fcurve.md @@ -0,0 +1,141 @@ +# F曲线 + +## 概述 + +通过此功能,你可以在图表中编辑曲线,为每一帧设置数值。 + +![](../../img/Reference/fcurve_en.png) + +## 使用方法 + +### 显示图表 + +当你为每个项目(位置、旋转等)设置了F曲线时,它们的图表会显示在F曲线窗口中。 + +![](../../img/Reference/fcurve_select_en.png) + +当你在窗口左侧的树中选择一个项目,F曲线就显示出来了。你可以通过按住Shift键来一次性选择多个项目。 + + + +### 关于时间线 + + +F曲线有两种时间线。 + +第一种用0到100之间的数字表示,0表示粒子生成的时间,100表示粒子被销毁的时间。 +如果粒子的生命周期发生变化,它仍将播放到100。 + +第二种直接设置帧数。时间的数值直接表示时间。 + +可以用时间线模式参数切换时间线。 + +### 移动/缩放图表 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
移动图表在图表中按住右键并移动鼠标。
水平缩放在图表中按住Ctrl键并滚动鼠标滚轮。
竖直缩放在图表中按住Alt键并滚动鼠标滚轮。
+ +### 添加关键帧 + +你可以通过在线上双击鼠标左键添加一个关键帧。 + +你还可以在线上右键鼠标并通过弹出的菜单添加关键帧。 + +### 删除关键帧 + +你可以通过在关键帧上双击鼠标左键或者(在选择了关键帧的情况下)按下Delete键删除一个关键帧。 + +你还可以(在选择了关键帧的情况下)在关键帧上右键鼠标并通过弹出的菜单删除关键帧。 + +### 选择关键帧 + +你可以通过鼠标左键选择关键帧。 + +(译注:按住Shift键或Alt键可以选择多个关键帧。可以直接左键框选多个关键帧。) + +### 移动关键帧 + +在选中关键帧后,你可以按住鼠标左键并移动鼠标以移动关键帧。通过同样的方式,你还可以移动用于控制曲线的锚点。 + +你还可以按下Alt键移动多个关键帧。 + +### 展开/收缩锚点 + +你可以自动设置锚点的位置,方法是选中关键帧并点击展开锚点或收缩锚点按钮。点击展开锚点按钮将展开锚点并使线更加平滑。点击收缩锚点按钮将锚点合并到关键帧的位置,使F曲线的变化更为急剧。 + +### 显示整个图表 + +你可以左键双击图表对应的标签以显示整个图表。 + +![](../../img/Reference/fcurve_show_entire.png) + +## 参数 + +### 时间(百分比/帧) + +每个关键帧分别设置。设置关键帧的时间百分比/帧。 + +### 值 + +每个关键帧分别设置。设置关键帧的值。 + +### 补间 + +每个关键帧分别设置。设置这个关键帧和相邻关键帧之间的插值方法。 + +### 开始 + +每个图表分别设置。设置如何生成图表左侧的值。 + +### 结束 + +每个图表分别设置。设置如何生成图表右侧的值。 + +### 采样 + +每个图表分别设置。设置实际播放时,使用多少帧进行插值。值越小,图表的实际形状就越精确。 + +### 左 + +每个关键帧分别设置。设置关键帧的左侧锚点的位置。 + +### 右 + +每个关键帧分别设置。设置关键帧的右侧锚点的位置。 + +### 最大/最小偏移 + +每个图表分别设置。在偏移范围内随机向上/向下移动图表。 + +### 时间线模式 + +你可以切换时间线模式。 \ No newline at end of file diff --git a/source/zh_CN/ToolReference/fileExport.md b/source/zh_CN/ToolReference/fileExport.md new file mode 100644 index 0000000..447d8d2 --- /dev/null +++ b/source/zh_CN/ToolReference/fileExport.md @@ -0,0 +1,24 @@ +# 文件 - 导出 + +## 默认格式 + +将正在编辑的特效导出为efk文件。 + +efk文件是一种仅能播放的二进制格式,不包含工具编辑信息。 + +各种资源文件,例如纹理,不会被输出,所以必须单独复制。 + +设置要输出的文件的名称并点击保存后,可以设置放大率。 + +```eval_rst +.. image:: ../../img/Reference/Export/export_efk_en.png + :align: center +``` + +## Effekseer包 + +将正在编辑的特效导出为efkpkg文件。 + +efkpkg文件是包含了一个或多个efkefc文件和多个资源文件的包文件。 + +设置导出目标的文件名以完成导出。 diff --git a/source/zh_CN/ToolReference/fileImport.md b/source/zh_CN/ToolReference/fileImport.md new file mode 100644 index 0000000..c696c93 --- /dev/null +++ b/source/zh_CN/ToolReference/fileImport.md @@ -0,0 +1,30 @@ +# 文件 - 导入 + +## Effekseer包 + +导入efkpkg文件。 + +efkpkg文件是包含了一个或多个efkefc文件和多个资源文件的包文件。 + +设置导入的文件后,会显示导入对话框。 + +```eval_rst +.. image:: ../../img/Reference/Import/import_efkpkg_en.png + :align: center +``` + +你可以在对话框内进行以下操作: + +- 修改导入的目标文件夹 + - 初始情况下,设置的是当前打开的特效的文件夹。 +- 分布设置是否导入每个文件 + - 如果你取消勾选文件名左侧的复选框,文件将不会被导入。 + - 如果导入的目标中已经存在该文件,将会显示一个警告图标。 +- 重命名要导入的文件 + - 当你修改文件名时,特效工程中对该文件的引用也会被重写。 + - 有许多使路径的编辑更快捷的功能 + - 合并相同的文件 + - 避免覆盖 + - 添加根文件夹 + +如果没有问题了,点击“导入”按钮,pfkpkg中的文件将会被解压到导入目标文件夹中。 diff --git a/source/zh_CN/ToolReference/fileviewer.md b/source/zh_CN/ToolReference/fileviewer.md new file mode 100644 index 0000000..d092433 --- /dev/null +++ b/source/zh_CN/ToolReference/fileviewer.md @@ -0,0 +1,39 @@ +# 文件浏览器 + +## 概述 + +文件浏览器是一个可以显示与Effekseer相关的资源文件的面板。 + +### 按钮显示方式 + +![](../../img/Reference/FileBrowser/FileIcons1.png) + +### 预览图像文件 + +![](../../img/Reference/FileBrowser/FileIcons2.png) + +### 列表显示方式 + +![](../../img/Reference/FileBrowser/FileList1.png) + +## 如何使用 + +### 切换当前文件夹 + +双击一个文件夹以显示文件夹中的资源文件。 + +按下↑键以显示上级文件夹中的资源文件。(译注:似乎没用,但你可以点击左上角的问号来跳转到上级文件夹) + +### 打开特效文件 + +双击一个efkefc文件可以在当前的编辑器中打开它。 + +### 打开其他文件 + +双击其他文件可以在其关联的应用中打开它。 + +### 资源文件的拖拽放置 + +纹理、模型和声音文件可以通过拖拽并放置到参数上的方式设置。 + +![](../../img/Reference/FileBrowser/DragDrop_en.png) diff --git a/source/zh_CN/ToolReference/global.md b/source/zh_CN/ToolReference/global.md new file mode 100644 index 0000000..91a2f53 --- /dev/null +++ b/source/zh_CN/ToolReference/global.md @@ -0,0 +1,11 @@ +# 全局设置 + +## 概述 + +设置影响所有节点的参数。 + +## 参数 + +### 随机种子 + +设置粒子的随机元素的种子。种子是一个数字,决定了随机元素的行为。如果种子相同,随机元素的行为将是相同的,即使它被多次播放。如果随机种子小于或等于零,那么每次播放时,随机元素的行为都会发生变化。 diff --git a/source/zh_CN/ToolReference/image.md b/source/zh_CN/ToolReference/image.md new file mode 100644 index 0000000..cabc649 --- /dev/null +++ b/source/zh_CN/ToolReference/image.md @@ -0,0 +1,15 @@ +# 关于图像 + +## 支持的格式 + +支持png、dds和tga格式。 + +然而,这些文件是否能在插件中使用还取决于每个插件。 +png可以在大多数环境中使用。 + +## 多级纹理(Mipmap) + +如果文件名的末尾是_NoMip,则不会生成多级纹理。 +例如,Image.png和Image_NoMip.png会产生以下图像。 + +译注:没图 \ No newline at end of file diff --git a/source/zh_CN/ToolReference/index.md b/source/zh_CN/ToolReference/index.md new file mode 100644 index 0000000..62d96ae --- /dev/null +++ b/source/zh_CN/ToolReference/index.md @@ -0,0 +1,214 @@ +# 工具参考 + +## 概述 + +### 工具 + +这个工具包含一个用来预览特效的视窗和一系列用来编辑特效参数的窗口。通过编辑窗口中的参数,你可以制作特效,修改它的外观和行为。通过拖拽,你可以随心所欲地重新布局这些窗口,或者将它们折叠进选项卡。通过在菜单栏中选择“窗口”,你可以找到不在默认视图中的窗口。而且,你可以将所有窗口恢复到默认位置。 + +### 特效 + +在这个工具中,你可以通过编辑节点制作特效。节点具有父子关系,子节点会受到父节点的影响。通过父子关系,得以制作复杂的特效。 + +我将通过一个例子解释父子关系。在这个例子中,节点2是节点1的子节点,节点3是节点2的子节点。节点1会生成粒子effect 1。几帧后,节点2会在相对于effect 1的位置处会生成一些effect 2粒子。再过几帧后,节点3会在相对于节点2生成的每个粒子的相对位置处生成一些effect 3粒子。下面的图表展示了这种关系。通过使用父子关系描述特效的行为,可以表现出极为丰富的效果。在这个工具中,一个“节点”生成的基于参数的特效被称作一个“粒子”。 + +```eval_rst +.. image:: ../../img/Reference/overview_en.png + :align: center +``` + +### 如何操作 + +#### 预览 + +
+ + + + + + + + + + + + + +
旋转按住鼠标右键并拖拽鼠标。
平移按住鼠标中键,或右键+Shift并拖拽鼠标。
缩放滑动鼠标滚轮,或按住鼠标右键+Ctrl并拖拽鼠标。
+
+ +#### 如何输入值 + +鼠标左键文本输入框,可以输入值。 + +左键并拖拽文本输入框,可以逐渐改变值。 + +```eval_rst +.. image:: ../../img/Reference/Overview/input_value.png + :align: center +``` + +#### 如何输入颜色 + +除了文本框之外,可以用鼠标左键颜色区域来输入颜色。 + +```eval_rst +.. image:: ../../img/Reference/Overview/input_color_basic.png + :align: center +``` + +左键并拖拽一个颜色区域可以将值复制到另一个颜色区域。 + +```eval_rst +.. image:: ../../img/Reference/Overview/input_color.png + :align: center +``` + +#### 节点树 + +在节点树中,你可以编辑构成特效的节点。 +你可以右键添加或删除节点。 + +你可以拖拽节点来重新布局它们。 + +你可以点击眼睛图标来切换节点的显示。 +你可以按住Shift并单击来切换显示,包括子节点。 + +```eval_rst +.. image:: ../../img/Reference/Overview/node_tree.png + :align: center +``` + +#### 面板(窗口) + +有许多用于编辑特效的参数的面板(窗口)。如果在菜单栏中选择“窗口”,会列出所有可用的窗口。选择其中的一个,会打开相应的窗口。 + +你可以左键窗口的菜单栏并拖拽窗口来移动它的位置。 + +你可以将窗口拖放到出现的方块上,将其添加到另一个面板。 + +```eval_rst +.. image:: ../../img/Reference/Overview/DockPanel_Panel.png + :align: center +``` + +你还可以在选项卡之间进行拖放。 + +```eval_rst +.. image:: ../../img/Reference/Overview/DockPanel_Tab.png + :align: center +``` + +### 文件格式 + +#### 特效文件(efkefc) + +特效以“efkefc”格式保存在文件中。 +这个文件既可以被编辑,也可以在游戏运行时播放。 + +直到1.4版本,这个功能还是分成两个功能实现,efkproj文件用于在工具中编辑,efk用于在游戏中播放。 +为了兼容性,当前版本可以读取efkproj和efk文件。 + +#### 资源文件 + +特效可引用的资源文件。包括通用文件格式和Effekseer自己的文件格式。 + +| 扩展名 | 说明 | +|----------|--------| +| png | 纹理图片文件 | +| wav | 音频文件 | +| efkmat | 材质文件(使用材质编辑器生成) | +| efkmodel | 3D模型文件(从fbx、mqo转换) | +| efkcurve | 曲线参数文件(从fbx转换) | + +#### 打包文件(efkpkg) + +efkpkg文件是包含一个或多个efkefc文件和各种资源文件的包文件。 + +导出时,特效引用的资源文件会被自动打包进去。它可被导入到其他项目中进行使用。 + +- 导入 +- 导出 + + +## 特效参数 + +```eval_rst +.. toctree:: + :maxdepth: 1 + + common + location + locationAbs + locationGene + killRules + rotation + scale + depth + rendererCommon + rendererCommonAd + rendererSprite + rendererRibbon + rendererRing + rendererModel + rendererTrack + sound + fcurve + global + culling + levelsOfDetails + dynamicParameter + proceduralModel +``` + +## 特效特性 + +```eval_rst +.. toctree:: + :maxdepth: 1 + + image + easing +``` + +## 工具方法 + +```eval_rst +.. toctree:: + :maxdepth: 1 + + behavior + fileviewer + environment + network + record + options + fileImport + fileExport + recoveringData + drawMode +``` + +## 命令行 + +通过命令行启动Effekseer时,可以通过参数改变Effekseer的行为。例如,你可以在无需打开Effekseer界面的情况下将“.efkproj”文件转换为“.efk”文件。通过与脚本结合,你可以批量转换文件夹下的特效文件。 + +```eval_rst + +.. list-table:: 命令行 + :widths: 20 70 + + * - -cui + - 以CUI模式启动 + * - -in \* + - \* 打开并启动 + * - -o \* + - 保存为 \* + * - -e \* + - 以标准格式输出到 \* + * - -m \* + - 设置以标准格式输出时的放大倍率 + * - --materialcache + - 生成指定的特效中的所有材质的缓存 +``` diff --git a/source/zh_CN/ToolReference/killRules.md b/source/zh_CN/ToolReference/killRules.md new file mode 100644 index 0000000..65be1a3 --- /dev/null +++ b/source/zh_CN/ToolReference/killRules.md @@ -0,0 +1,89 @@ +# 销毁规则 + +## 概述 + +销毁规则允许你指定一块区域,这块区域会销毁进入其中的粒子。 +如果某个粒子有淡出效果,在粒子被移除前会播放淡出效果。 + +在编辑器中,你可以选择节点树中的节点,预览其销毁规则的形状。 + +## 盒子 + +销毁盒子内部或外部的粒子。 + +```eval_rst +.. image:: ../../img/Reference/killRules_Box.png + :align: center +``` + + +#### 中心 + +盒子的中心位置。 + +#### 尺寸 + +盒子的表面相对于中心的距离。 +例如,如果尺寸设置为(0.5, 0.5, 0.5),则盒子的长宽高都为1。 + +#### 销毁内部 + +如果勾选,会销毁进入盒子内部的粒子。 +如果不勾选(默认),会销毁跑到盒子外部的粒子。 + +#### 应用缩放和旋转 + +如果勾选(默认),盒子会随特效旋转和缩放。 +如果不勾选,盒子将不会随特效旋转和缩放。 + +## 平面 + +一个平面将空间划分为两侧,销毁其中一侧的粒子。 + +```eval_rst +.. image:: ../../img/Reference/killRules_Plane.png + :align: center +``` + +#### 轴 + +定义平面法向沿着哪个坐标轴。 +选择相反的坐标轴会改变粒子在哪一侧被销毁。 +例如,如果轴设置为+Y,会销毁平面上方的粒子,如果设置为-Y,会销毁平面下方的粒子。 + +#### 平面沿轴的偏移 + +定义平面在轴上的位置。 +例如,轴为+Y,平面沿轴的偏移为1.0,那么会销毁Y坐标大于1.0的粒子,如果轴为-Y且平面沿轴的偏移为1.0,则会销毁Y坐标小于-1.0的粒子。 + +#### 应用旋转和缩放 + +如果勾选(默认),平面的方向会随粒子的方向改变,而且平面的偏移会随着粒子的缩放改变。 +如果不勾选,平面的旋转和偏移都不会变化。 + +## 球 + +销毁球内部或外部的粒子。 + +```eval_rst +.. image:: ../../img/Reference/killRules_Sphere.png + :align: center +``` + +#### 中心 + +球的中心。 + +#### 半径 + +球的半径。 + +#### 销毁内部 + +如果勾选,会销毁进入球内部的粒子。 +如果不勾选(默认),会销毁跑到球外部的粒子。 + +#### 应用旋转和缩放 + +如果勾选(默认),球的位置会相对于特效的原点跟随特效旋转,球的半径会随特效的缩放而缩放。 +如果不勾选,球的位置和半径都不会变化。 \ No newline at end of file diff --git a/source/zh_CN/ToolReference/levelsOfDetails.md b/source/zh_CN/ToolReference/levelsOfDetails.md new file mode 100644 index 0000000..60f1546 --- /dev/null +++ b/source/zh_CN/ToolReference/levelsOfDetails.md @@ -0,0 +1,7 @@ +# 细节层级(LOD) + +## 概述 + +这个窗口设置启用哪些细节层级,以及它们生效的距离。 + +关于什么是细节层级以及如何使用它,请参见[细节层级教程](../ToolTutorial/14.md)。 diff --git a/source/zh_CN/ToolReference/location.md b/source/zh_CN/ToolReference/location.md new file mode 100644 index 0000000..bea3c10 --- /dev/null +++ b/source/zh_CN/ToolReference/location.md @@ -0,0 +1,50 @@ +# 位置 + +## 概述 + +提供控制节点的位置的参数,特别是相对于父节点的位置。 + +## 参数 + +### 位置 + +设置粒子的生成位置。它将影响粒子相对于其父节点的位置。如果没有父粒子,或者基础设置窗口中设置了不继承位置,它将表示绝对位置。 + +
+ +

“位置”窗口

+
+ +#### 固定位置 + +将粒子置于一个固定的位置。 + + + + +#### 位置・速度・加速度 + +设置粒子的位置、速度和加速度。 + + +#### 缓动 + +设置生成和移除的位置,以及粒子的生命周期中在这两个位置之间插值的方法。 + + +#### F曲线 + +在F曲线窗口中,通过定义自动化曲线来控制位置。 + + +#### NURBS曲线 + +导入其他软件(如Maya)制作的曲线的3D数据,让粒子沿着它移动。 + +
+ +#### 相对于摄像机偏移 + +永远在摄像机的中心显示粒子。 +仅对精灵和模型有效。 +特效的位置不影响子节点。 diff --git a/source/zh_CN/ToolReference/locationAbs.md b/source/zh_CN/ToolReference/locationAbs.md new file mode 100644 index 0000000..124536d --- /dev/null +++ b/source/zh_CN/ToolReference/locationAbs.md @@ -0,0 +1,145 @@ +# 力场(Local) + +## 概述 + +设定外力对粒子的影响。 + +## Parameters +
+ +

“力场(Local)”窗口

+
+ +## 力场 + +最多可同时设置4种力场。 + +## 类型 + +### 无 + +粒子不受外力影响。 + +### 力 + +从指定的位置向外侧施加力。 +也可以让远离指定位置的力场产生衰减。 + +
+ +### 风 + +朝向指定的方向施加力。 +可以通过旋转改变方向。 + +
+ +### 龙卷风 + +施加绕指定方向旋转的力。 +可以通过旋转改变轴的方向。 + +可以设置移动速度,使外侧的旋转速度和内侧相同,否则内外侧的移动速度是相同的。 + +
+ +### 湍流 + +施加具有湍流的力。 + +
+ +#### 类型 + +你可以选择简单或复杂。 +越复杂,视觉效果越好,但运算速度也更慢。 + +#### 随机种子 + +通过随机种子产生随机的湍流。 + +#### 粒度 + +值越大,湍流越宽。 + +#### 强度 + +湍流的强度。 + +译注:似乎没有这个设置。也许是统一改成“力”了。 + +#### 复杂度 + +值越大,湍流越复杂。但也会增大计算负担。 + +### 粘滞阻力 + +施加一个阻碍运动的力。 + +
+ +### 重力 + +在一个方向上施加加速度。重力可以朝向任意方向。且不会受到父节点的方向影响。 + + + +### 引力(需要设置引力点) + +粒子向“行为”窗口中的“引力点”处移动。 + +![](../../img/Reference/locationAbs_attraction.gif) + +#### 引力 + +一帧中向目标位置的速度增量。 + +#### 阻力 + +一帧中运动方向修正为目标方向的百分比,取值在0.00和1.00之间。 + +#### 最小范围 + +引力开始衰减的距离。 + +#### 最大范围 + +引力结束衰减的距离。当粒子的位置在0到最小范围之间时,引力为100%。如果位置大于最大范围,引力为0%。如果在最小范围和最大范围之间,引力线性插值。 + + +## 力场的位置 + +设置力场中心的位置。 +影响部分力场的行为。 + +## 力场的角度 + +设置力场的角度。 +影响部分力场的行为。 + +## 衰减类型 + +在范围之外,力场的效果会衰减。 +有几种方式指定范围。 + +### 球 + +远离球心时,力场会发生衰减。 +衰减力越大,向外移动时力场衰减的越多。 + +
+ +### 管道 + +远离圆柱中轴线时,力场会发生衰减。 +衰减力越大,向外移动时力场衰减的越多。 + +
+ +### 圆锥 + +这个圆锥是球的一部分切出来的。(在球的表面画一个圆,再与球心连接起来) +圆锥范围外的地方,力场会发生衰减。该位置和圆锥顶点的连线与圆锥轴线之间的夹角越大,衰减越大。 +衰减力越大,向外移动时力场衰减的越多。 + +
diff --git a/source/zh_CN/ToolReference/locationGene.md b/source/zh_CN/ToolReference/locationGene.md new file mode 100644 index 0000000..efd3369 --- /dev/null +++ b/source/zh_CN/ToolReference/locationGene.md @@ -0,0 +1,195 @@ +# 生成方法 + +## 概述 + +设置用于指定节点粒子初始生成位置的参数。除了父粒子的位置会影响子粒子的位置外,这里设置的值也会影响位置。换句话说,粒子是围绕位于父粒子位置的原点生成的,然后再根据指定的生成方法参数从该点开始平移和旋转。 + +用于设置节点的粒子的初始生成位置。除了父粒子的位置会影响子粒子的位置,这里设置的值也会影响位置。换句话说,粒子是围绕父粒子的原点位置生成的,然后再根据在生成方法中设置的参数进行平移和旋转。 ![](../../img/Reference/locationGene.png) + +## 参数 + +
+ +

“生成方法”窗口

+
+ +### 影响生成角度 + +让生成方法的参数影响角度。例如,如果勾选此项,且选择“球”,那么粒子的Y方向就会是球的法向。 + + + + + + + + + + + + + + + + + + + + + + + +
勾选未勾选
+ +### 生成方法 + +指定如何设置生成的位置。 + +#### 点 + +将某个点设置为生成的位置。 + +#### 线 + +粒子会沿着线生成。当你指定了线的起点位置和终点位置时,粒子会被放置在按照顶点数分割线的等分点上。粒子的X方向会沿着线的方向(勾选“影响生成角度”时)。 + +![](../../img/Reference/locationGene_line.png) + +##### 位置噪声 + +会在粒子的位置上沿着线的方向添加指定范围内的噪声。可以用来降低生成位置的单一性。 + +##### 生成模式 + +###### 随机 + +粒子会被随机放置在线的任意一个分割点上。 + +![](../../img/Reference/locationGeneModelRand.png) + +###### 顺序 + +粒子会依次放置在线从起点到终点的每一个分割点上。 + +#### 圆 + +将粒子置于一个圆上。此时,你只需设置半径和旋转角度。如果勾选了“影响生成角度”,粒子的Y方向将会是圆的法向。 + +##### 轴方向 + +设置圆的轴线方向,如果勾选了“影响生成角度”,粒子的Y方向将如下表所示。 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +X轴 + + + +Y轴 + + + +Z轴 + +
+ +弧 + + + +沿轴 + + + +向外 + +
+ +##### 角度噪声 + +会在粒子的角度上添加指定范围内的噪声。可以用来降低生成角度的单一性。 + +#### 球 + +将粒子放在球体内。此时,只需设置半径和X与Y轴的旋转角度。如果勾选了“影响生成角度”,粒子的Y方向将朝向球的表面法向。 + +#### 模型 + +沿着模型的表面放置粒子。如果勾选了“影响生成角度”。粒子的Z方向将会是模型表面的法向。 + +有两种类型的模型:文件和程序化模型。 + +如果模型是从文件中读取的,选择FBX (.fbx)、metasequoia (.mqo)或Effeksser的模型格式 (.efkmodel)。如果选择的不是.efkmodel,选择的文件同文件夹下将会生成.efkmodel文件。在其他应用程序中播放特效时,这个生成的文件是必需的。 + +你还可以读取带有动画的FBX (.fbx)文件。将会播放FBX文件的第一个动画。动画将会按照父粒子的存在时间播放。粒子将会在受到动画影响的模型的表面生成。 + +如果你想使用一个程序化模型,在程序化模型面板中新建一个程序化模型,并在此选择它。 + + +##### 生成模式 + +###### 随机 + +将粒子随机置于模型的表面。 + +![](../../img/Reference/locationGeneModelRand.png) + +###### 顶点 + +将粒子按照顺序置于顶点。 + +![](../../img/Reference/locationGeneModelVertex.png) + +###### 随机顶点 + +将粒子随机置于模型的顶点。 + +![](../../img/Reference/locationGeneModelVertexRand.png) + +###### 表面 + +将粒子按照顺序置于模型的面的中心。 + +![](../../img/Reference/locationGeneModelFace.png) + +###### 随机表面 + +将粒子随机置于模型的面的中心。 + +![](../../img/Reference/locationGeneModelFaceRand.png) \ No newline at end of file diff --git a/source/zh_CN/ToolReference/network.md b/source/zh_CN/ToolReference/network.md new file mode 100644 index 0000000..9b47b03 --- /dev/null +++ b/source/zh_CN/ToolReference/network.md @@ -0,0 +1,64 @@ +# 网络 + +## 概述 + +设置与网络有关的参数。你可以通过网络在集成了Effekseer运行时的外部应用程序中编辑特效。Unity、虚幻引擎4和其他使用Effekseer官方提供的插件的程序都可作为编辑环境。对于其他环境,咨询向该环境中集成Effekseer运行时的人。 + +![](../../img/Reference/network.png) + +## 如何使用 + +### 编辑特效的一侧(应用程序、游戏等) + +这取决于插件或者库。为了通过网络编辑特效,设置用于通信的端口。 +执行一个函数以启动服务器的通信,或者让函数自动执行。然后播放你要编辑的特效。 + +![](../../img/Reference/network_app.png) + +### Effekseer + +在Effekseer中,打开你想编辑的特效的原始文件。在网络面板上设置连接目标并连接。编辑特效并按下“发送数据”按钮。这样程序中的特效就被编辑了。 + +![](../../img/Reference/network_tool_en.png) + +### 限制 + +由程序读取的efk文件的名字必须和编辑的文件的名字相同。例如,如果应用程序中播放“Laser.efk”,则工具中必须编辑“Laser.efkproj”。此外,编辑将不会影响程序中不存在的图像、模型和声音。 + +### 提示 + +当在同一台计算机上运行应用程序时,地址设置为127.0.0.1。 + +## 参数 + +### 地址 + +输入运行应用程序的计算机/服务器的IP地址或DNS。 + +### 端口 + +输入运行应用程序的计算机/服务器的端口。 + +### 自动连接 + +如果尚未建立连接,将会每隔一段固定的时间间隔尝试连接到远程应用程序。 + +### 载入时发送数据 + +当读取特效文件时,如果连接已建立,将特效数据发送给应用程序。 + +### 编辑时发送数据 + +当编辑特效文件时,如果连接已建立,将特效数据发送给应用程序。 + +### 保存时发送数据 + +当保存特效文件时,如果连接已建立,将特效数据发送给应用程序。 + +### 发送数据 + +强制发送数据给应用程序。 + +### 连接 + +连接到设置远程应用程序。 diff --git a/source/zh_CN/ToolReference/options.md b/source/zh_CN/ToolReference/options.md new file mode 100644 index 0000000..66b18f1 --- /dev/null +++ b/source/zh_CN/ToolReference/options.md @@ -0,0 +1,95 @@ +# 选项 + +## 概述 + +设置与编辑器的显示窗口有关的选项,例如网格设置和背景。 + +## 参数 + +### 网格颜色 + +设置网格的颜色。 + +### 网格可见性 + +设置是否显示网格。 + +### X-Y网格可见性 + +设置是否显示XY平面上网格。 + +### X-Z网格可见性 + +设置是否显示XZ平面上网格。 + +### Y-Z网格可见性 + +设置是否显示YZ平面上网格。 + +### 网格尺寸 + +设置网格的尺寸。 + +### 输出放大 + +如果你打算在输出到“*.efk”文件时修改放大率,你可以用此参数来预览放大后的特效。 + +### 输出FPS + +用于模拟在外部工具或游戏引擎中FPS不同的情况下播放的特效。 + +### 坐标系统 + +用于模拟在外部工具或游戏引擎中使用不同的坐标系统的情况下播放的特效。 + +### 色彩空间 + +用于模拟在外部工具或游戏引擎中使用不同的色彩空间的情况下播放的特效。 + +#### 伽马空间 + +![](../../img/Reference/colorSpace_GammaSpace.png) + +#### 线性空间 + +![](../../img/Reference/colorSpace_LinearSpace.png) + +最近的游戏引擎,如Unity,允许你改变色彩空间。请将其设置为与你所使用的外部游戏引擎的色彩空间一致。关于色彩空间本身的含义,请查看每个游戏引擎的使用说明。Effekseer的默认色彩空间是伽马空间。 + +### 鼠标映射 + +设置如何使用鼠标控制视点。 +选项包括Effekseer、Maya、Unity和Blender。 + +### 鼠标旋转方向(X) + +设置X方向移动鼠标进行旋转时,旋转的方向。 + +### 鼠标旋转方向(Y) + +设置Y方向移动鼠标进行旋转时,旋转的方向。 + +### 鼠标平移方向(X) + +设置X方向移动鼠标进行平移时,平移的方向。 + +### 鼠标平移方向(Y) + +设置Y方向移动鼠标进行平移时,平移的方向。 + +### 字体 + +设置字体。 + +### 字体尺寸 + +设置字体的尺寸。 + +### 小数位数 + +控制浮点数小数点之后显示的位数。 + +### 自动保存间隔 + +设置正在编辑的项目的自动保存间隔。 +参见[恢复数据](recoveringData.md)。 diff --git a/source/zh_CN/ToolReference/proceduralModel.md b/source/zh_CN/ToolReference/proceduralModel.md new file mode 100644 index 0000000..fc84c4e --- /dev/null +++ b/source/zh_CN/ToolReference/proceduralModel.md @@ -0,0 +1,249 @@ +# 程序化模型 + +## 概述 + +使用这个功能,你可以通过仅仅调整参数来制作3D模型。 +通常你情况下,你可能需要在其他软件中制作3D模型,但是你可以用Effekseer制作简单的3D模型。 + +## 参数 + +### 类型 + +指定要生成的网格类型。 + +#### 网格 + +按照设置的参数,生成球或圆柱的网格外侧。 +总的来说,它生成一个绕轴旋转的物体。 + +##### 范围(角度) + +设置生成网格的角度范围。 +默认情况下是个圆,但可以从中切出一部分。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Angle.png + :align: center +``` + +##### 细分 + +网格的细分数量。值越大,越平滑。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Division.png + :align: center +``` + +#### 旋转角度 + +扭曲网格(麻花状)。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Mesh_Rotated.png + :align: center +``` + +#### 丝带 + +生成一个环绕网格的形状。 + +##### 截面 + +设置丝带的截面的形状。 + +- 平面 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Ribbon.png + :align: center +``` + +- 交叉 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Ribbon_Cross.png + :align: center +``` + +- 点 + +不会显示为网格,但可以用作生成方法的参数。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Ribbon_Point.png + :align: center +``` + +##### 旋转角度 + +设置丝带绕轴旋转的角度。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Ribbon_Rotation.png + :align: center +``` + +##### 丝带厚度 + +设置丝带的起点和终点的厚度。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Ribbon_Thickness.png + :align: center +``` + +##### 丝带角度 + +设置从视点到每个丝带的终点的旋转角度。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Ribbon_Angle.png + :align: center +``` + +##### 长度噪声 + +随机移动丝带的起点和终点。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Length_Noise.png + :align: center +``` + +##### 丝带数量 + +设置丝带的数量。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Ribbon_Count.png + :align: center +``` + +### 形状 + +指定要生成的模型的网格形状。 + +#### 球 + +球。 +你可以选择球的一部分区域。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Sphere.png + :align: center +``` + +#### 圆锥 + +圆锥。 +可设置半径和深度。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Cone.png + :align: center +``` + +#### 圆柱 + +圆柱。 +可以分别设置圆柱顶面和底面的半径。 +也可以通过将深度设置为0制作一个盘面。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Cylinder.png + :align: center +``` + +#### 样条曲线 + +这是一个用四个点表示边缘,通过旋转产生的网格。 +适合用来表现龙卷风、极光等。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Spline.png + :align: center +``` + +### 轴 + +设置网格将按照什么方向生成。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Axis.png + :align: center +``` + +### 噪声 + +扭曲生成的形状。 + +#### 倾斜噪声 + +让网格在每个轴向产生倾斜。 +适合用来制作每个位置都是斜线的网格,例如龙卷风。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Tilt.png + :align: center +``` + +#### 波噪声 + +用一个波晃动模型的每个位置。 +方便用来让网格看上去像是被固定间隔的波晃动。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Wave.png + :align: center +``` + +#### 卷曲噪声 + +朝向随机方向扭曲模型的每个位置。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/Curl.png + :align: center +``` + +### 顶点颜色 + +设置每个顶点的颜色,并在顶点之间进行插值。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/VertexColors.png + :align: center +``` + +#### 中心区域位置 + +设置顶点颜色中的中心所代表的位置。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/VertexColors_CenterPosition.png + :align: center +``` + +#### 中心区域比率 + +设置顶点颜色中的中心所占据的区域大小。 +值越大,中心顶点颜色所占据的范围越大。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/VertexColors_CenterArea.png + :align: center +``` + +#### 顶点颜色噪声 + +给顶点颜色添加随机噪声。 + +```eval_rst +.. image:: ../../img/Reference/ProceduralModel/VertexColors_Noise.png + :align: center +``` + +#### UV + +设置网格使用的UV区域。 \ No newline at end of file diff --git a/source/zh_CN/ToolReference/record.md b/source/zh_CN/ToolReference/record.md new file mode 100644 index 0000000..6131463 --- /dev/null +++ b/source/zh_CN/ToolReference/record.md @@ -0,0 +1,162 @@ +# 录像 + +## 概述 + +允许你将特效输出为精灵表单(Sprite Sheet)、gif动画、AVI等。可用于将特效发布到Twitter/博客/网站/其他场合,或者你无法通过运行时播放Effekseer制作的特效的情况。 + + + + + + + + + + + + + + + +
+ +## 参数 + +### 分辨率 + +#### 宽度/高度 + +设置动画每帧的输出尺寸。 + +#### 缩放 + +录像区域相对于实际的屏幕放大。 +例如,如果宽度和高度是256,且缩放为2,也就是在256的区域中以两倍的缩放比率录像,输出分辨率为512的图片。 + +#### 显示向导 + +勾选时,录像区域的边界会在屏幕上显示。向导区域内的一切都会被录像,区域之外的东西会被裁剪掉。 + +### 导出的帧 + +#### 开始帧 + +设置从第几帧开始录像。 + +#### 结束帧 + +设置从第几帧结束录像。 + +#### 频率(帧) + +设置每几帧输出一帧。例如,值为1时,录像60帧,输出60张图。值为2时,录像60帧,只会输出30张图(隔帧输出)。提高这一项的值,输出的文件尺寸会变小,但动画会变得不连贯。 + +### 格式 + +有5个选项:“导出为单张图片”、“导出为连续多张图片”、“导出为gif动画”、“导出为AVI”和“导出为mp4(h264)”。 + +“导出为单张图片”将生成一幅由多个帧组成的图像。这些帧从左上到右下排列,水平方向上的帧数为“X轴方向帧数”设置的帧数。因此,竖直方向上的帧数将会是帧的总数/X轴方向帧数。 + +“导出为连续多张图片”将每帧输出为独立的文件,文件名带有编号。 + +“导出为gif动画”将录制的特效输出为gif文件。 + +“导出为AVI”将录制的特效输出为带alpha通道的未压缩的动画文件。 + +“导出为mp4(h264)”将录制的特效输出为mp4文件。 + + + + + + + + + + + + + + + + + + + + + + + + + + + +
导出为单张图片导出为连续多张图片导出为gif动画
+ +### 选项 + +### 透明 + +设置如何处理背景,gif动画除外。 + +#### 无 + +将背景设置为黑色。 + +```eval_rst +.. image:: ../../img/Reference/Recording/none.png + :align: center +``` + +#### 使用原始图片 + +将背景设置为透明。 +如果使用了黑色背景且混合方法为加法的图片,有时候会生成错误的图像。 + +```eval_rst +.. image:: ../../img/Reference/Recording/original.png + :align: center +``` + +#### 生成alpha + +自动生成alpha通道。 +如果使用了深色且混合方法为混合的图片,有时候会生成错误的图像。 + +```eval_rst +.. image:: ../../img/Reference/Recording/generate.png + :align: center +``` + +#### 生成alpha(Blend+Add) + +通过分别输出混合方法为混合和叠加的结果, +可以在可能的范围内再现背景变化时的颜色。 +它还可以记录包含混合和叠加粒子的特效。 + +```eval_rst +.. image:: ../../img/Reference/Recording/generate_blend_add.png + :align: center +``` + +使用时,先将混合图像混合到背景上,再将叠加图像叠加到背景上。 + +```eval_rst +.. image:: ../../img/Reference/Recording/blend_add_desc.png + :align: center +``` + + + +#### 方法间的对比 + +从左到右分别是“无”、“使用原始图片”、“生成alpha”和“生成alpha(Blend+Add)”的显示效果。 + +```eval_rst +.. image:: ../../img/Reference/Recording/compare.png + :align: center +``` + +### 设置的保存位置 + +将录像的设置保存在应用,还是每个项目分别保存。 diff --git a/source/zh_CN/ToolReference/recoveringData.md b/source/zh_CN/ToolReference/recoveringData.md new file mode 100644 index 0000000..977de31 --- /dev/null +++ b/source/zh_CN/ToolReference/recoveringData.md @@ -0,0 +1,25 @@ +# 恢复数据 + +你的工作可能因为各种各样的原因突然丢失。编辑器可能会崩溃,电量可能会耗尽,或者可能只是按错了按键,几个小时的工作就崩溃了。Effekseer编辑器有自动保存的功能,以增大成功恢复丢失的项目的可能。 + +自动保存会在固定的时间间隔以及每次关闭编辑器时生效。自动保存在默认情况下是启用的,而且你不能禁用关闭编辑器时的自动保存。 + +## 恢复自动保存的存档 + +### 最后一次会话 + +` +菜单:文件 > 恢复 > 最后一次会话 +` + +打开正常关闭编辑器时保存在临时目录中的`efk_quit.efkbac`。当你意外关闭编辑器而没有保存修改时,这个选项可以恢复项目。如果找不到这个文件,会显示一个错误。 + +### 自动保存 + +` +菜单:文件 > 恢复 > 自动保存... +` + +你可以从临时目录中选择自动保存的文件。自动保存的文件的前缀是`efk_autosave`,扩展名为`efkbac`。 + +这些文件是按照选项窗口中设定的时间间隔(默认为2分钟)自动保存的。如果时间间隔被设置为0,自动保存将不起作用。 diff --git a/source/zh_CN/ToolReference/rendererCommon.md b/source/zh_CN/ToolReference/rendererCommon.md new file mode 100644 index 0000000..48bfab3 --- /dev/null +++ b/source/zh_CN/ToolReference/rendererCommon.md @@ -0,0 +1,230 @@ +# 基础渲染设置 + +## 概述 + +本章讲解“基础渲染窗口”,它提供了用于控制当前粒子渲染的基础参数。 + +## 参数 +
+ +

“基础渲染设置”窗口

+
+ +### 材质 + +设置用于绘制粒子的材质。 +你可以设置光照对粒子的影响或者扭曲背景之类。 + +#### 默认 + +粒子将直接显示贴图的颜色。 + + + +#### 照明 + +粒子会受到光照的影响(出现明暗)。 +除了用于提供颜色的贴图(可以称为漫反射贴图)外,还可以设置法线(Normal)贴图。 +设置了法线贴图之后,表面的方向会被改变。 + + + +#### 扭曲(背景) + +如果启用了扭曲,粒子将会扭曲它后面的任何东西。扭曲的方式取决于扭曲贴图的像素数据和扭曲强度。 + +扭曲贴图的红色和绿色通道将被用作扭曲信息。它们的值为127时,不会产生扭曲效果。当红色通道的值超过127时,背景将向右扭曲,小于127时,背景将向左扭曲。绿色通道的值大于127时,背景将向上扭曲,小于127时,背景将向下扭曲。但是,这里的上下左右取决于渲染方法。例如,渲染方法为精灵时,上下左右方向垂直于图片的四个边。 + +扭曲强度调整所有颜色的强度。值为0时,扭曲不会生效。 + + + + + + + + + + + + + + + + + + + + + + + +
+ +扭曲 + + + +无扭曲 + +
+ +在默认设置下,扭曲只会影响背景,而不会影响特效自身。要扭曲特效自身的其他节点,可在深度面板中设置绘制优先级。绘制优先级小于0的节点会因特效自身的扭曲而与背景一起扭曲。 + +#### 文件 + +你可以用用户创建的材质绘制粒子。 +可以实现最广的表现力。 + +点击按钮新建并编辑材质文件。 + +详情参考材质的说明。 + +根据材质文件的不同,可以为该材质添加更多参数。 +除常量外,还可以通过缓动或F曲线设置自定义参数。 +自定义参数显示的名称取决于材质文件。 + +##### 缓存 + +要加速材质的读取,或者在特定的平台播放特效,你可以在加载材质后点击“生成缓存”,将材质保存为编译后的格式。 + +如果生成的缓存在与材质文件相同的文件夹下,加载会变得更快。 +在一些平台,特效必须依靠缓存才能播放。 +要生成可同时用于Windows和Mac的缓存,需要在Windows生成缓存之后,再在Mac生成一遍缓存。 + + + +### 发光系数 + +用设置的值乘粒子的颜色。值越高,颜色越亮。如果值为1,图片会保持原样。 +仅当材质是基础或照明时有效。 +在不支持HDR的环境,提高这个值会产生奇怪的颜色表现。 + +```eval_rst +.. image:: ../../img/Reference/BasicRender/EmmisiveScaling.png + :align: center +``` + +### 混合 + +设置粒子显示时的Alpha混合方式。控制图片互相重叠时如何混合,例如半透明、加法、减法。 + +![](../../img/Reference/BasicRender/AlphaBlend.png) + +### 过滤 + +设置粒子显示时的过滤方式。 + +### 深度写入 + +设置粒子显示时是否会写入深度信息(用来表示粒子到摄像机的距离)。写入深度信息之后,渲染开启了深度测试的粒子时,如果这些开启了深度测试的粒子在写入了深度信息的粒子之后,它们就不会被渲染。 + +### 深度测试 + +如果启用了深度测试,比已经写入的深度信息更深的粒子不会被渲染。 + +### 淡入 + +粒子在生成时淡入。 + +### 淡出 + +粒子在将要销毁时淡出。 + + + +### UV + +设置粒子会显示出图像的哪个区域。 +这个区域可以随时间变化,允许你让图片滚动或播放动画。 +此处使用的单位是像素。 + +#### 动画 + +基于由一系列帧组成的图像播放动画。 + +![](../../img/Reference/renderCommon_uv_animation.png) + +##### 开始时间 + +设置动画开始播放的时间。例如,你可以从由四帧图像构成的动画的第二帧开始播放。 + +##### 动画补间 + +- 无 + +按照固定间隔切换位置。 + +
+ +- 线性 + +动画切换时使用线性插值。 +用于确保图像不会突然变化。 + +
+ +#### 滚动 + +匀速移动UV区域。 + +![](../../img/Reference/renderCommon_uv_scroll.png) + +#### F-曲线 + +使用F-曲线。 + +### 引用(UV) + +一个粒子可以使用多张不同尺寸的图片。 +在这种情况下,你可以选择一张图片将其分辨率作为图像的基础比例。 +你还可以以128x128为基础设置UV,而无需设置图片。 + +使用材质时,参考图像的编号与材质的图像的优先级一致。 + +![](../../img/Reference/BasicRender/uv_referenced.png) + +### 继承颜色 + +设置父粒子的颜色是否会影响子粒子的颜色。如果设置了继承颜色,子粒子最终渲染的颜色是父粒子的颜色乘子粒子设置的的颜色。如果选择了“仅生成时”,则生成子粒子时会应用父粒子当前的颜色。 + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +从不 + + + +仅生成时 + + + +始终 + +
+ diff --git a/source/zh_CN/ToolReference/rendererCommonAd.md b/source/zh_CN/ToolReference/rendererCommonAd.md new file mode 100644 index 0000000..2718813 --- /dev/null +++ b/source/zh_CN/ToolReference/rendererCommonAd.md @@ -0,0 +1,167 @@ +# 高级渲染设置 + +## 概述 + +设置比基础渲染设置更加复杂的参数。 + +## 参数 + +### Alpha纹理 + +将Alpha纹理的红色区域作为遮罩,显示颜色贴图(漫反射贴图)。 +例如,如果你将一张星形的图片设置为Alpha纹理,会显示颜色贴图的星形区域。 +这个贴图可以单独设置UV。 +通过单独设置UV,你可以通过滚动和动画实现复杂的效果。 + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/alpha.png + :align: center +``` + +### UV扭曲纹理 + +使用设置的贴图扭曲颜色贴图。 +如果扭曲贴图的颜色是(127,127,255),则它不会产生效果,远离这个颜色时,扭曲将会增强。 +这个贴图可以单独设置UV。 +通过单独设置UV,你可以通过滚动和动画实现复杂的效果。 + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/dist.png + :align: center +``` + +### Alpha衰减 + +Alpha值低于指定值的部分将不会被绘制。 +可用于表现卡通风格化渲染效果。 + +```eval_rst + +|pic_alphacutoff_none| |pic_alphacutoff| + +.. |pic_alphacutoff_none| image:: ../../img/Reference/BasicRenderAd/alphacutoff_none.png + :scale: 60 + +.. |pic_alphacutoff| image:: ../../img/Reference/BasicRenderAd/alphacutoff.png + :scale: 60 + +``` + +将Alpha值低的区域视为编译,单独改变边缘的颜色。 +易于表现卡通风格的渲染效果。 + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/alphacutoff_edge.png + :align: center +``` + +### 衰减 + +设置模型的颜色沿着视线方向衰减。 +可实现模型的正面透明,边缘不透明。 + +```eval_rst + +|pic_falloff_none| |pic_falloff| + +.. |pic_falloff_none| image:: ../../img/Reference/BasicRenderAd/falloff_none.png + :scale: 60 + +.. |pic_falloff| image:: ../../img/Reference/BasicRenderAd/falloff_add.png + :scale: 60 + +``` + +还可以使用减法和乘法。 + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/falloff_sub.png + :align: center +``` + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/falloff_mul.png + :align: center +``` + + +### 软粒子 + +降低靠近背景区域的透明度。(这个透明度指Alpha值,Alpha值越低越透明) +可以缓和背景和粒子之间不自然的边界。 +需要Effekseer的运行环境支持软粒子。 + +```eval_rst + +|pic_softparticle_far_none| |pic_softparticle_far| + +.. |pic_softparticle_far_none| image:: ../../img/Reference/BasicRenderAd/softparticle_far_none.png + :scale: 60 + +.. |pic_softparticle_far| image:: ../../img/Reference/BasicRenderAd/softparticle_far.png + :scale: 60 + +``` + +还可以让靠近摄像机的区域透明。 + +```eval_rst + +|pic_softparticle_near_none| |pic_softparticle_near| + +.. |pic_softparticle_near_none| image:: ../../img/Reference/BasicRenderAd/softparticle_far_none.png + :scale: 60 + +.. |pic_softparticle_near| image:: ../../img/Reference/BasicRenderAd/softparticle_near.png + :scale: 60 + +``` + +### 混合纹理 + +将颜色贴图与指定的贴图混合。 +不同于混合两个粒子,贴图的混合结果用于粒子的贴图。 + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/blend.png + :align: center +``` + +还可以使用加法、乘法和减法。 + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/blend_add.png + :align: center +``` + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/blend_sub.png + :align: center +``` + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/blend_mul.png + :align: center +``` + +### 混合Alpha纹理 + +用作混合贴图的一部分的Alpha贴图。 +行为与用于颜色贴图的混合贴图一致。 +唯一的区别是目标贴图。 + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/blend_alpha.png + :align: center +``` + +### 混合UV扭曲纹理 + +用于扭曲混合贴图的贴图。 +行为与用于颜色贴图的扭曲贴图一致。 +唯一的区别是目标贴图。 + +```eval_rst +.. image:: ../../img/Reference/BasicRenderAd/blend_dist.png + :align: center +``` diff --git a/source/zh_CN/ToolReference/rendererModel.md b/source/zh_CN/ToolReference/rendererModel.md new file mode 100644 index 0000000..8e44f4b --- /dev/null +++ b/source/zh_CN/ToolReference/rendererModel.md @@ -0,0 +1,49 @@ +# 渲染 - 模型 + +## 概述 + +这里我们解释在渲染设置窗口中选择了“模型”时,影响渲染的参数。 + +在选择了“模型”时,可以导入并显示一个外部的3D模型。 + +在基础渲染设置窗口设置的颜色/扭曲图案可用于模型的纹理。如果不启用深度写入和深度测试,一些模型可能显示不正确。 + +![](../../img/Reference/renderModel.png) + +## 参数 +
+ +

“渲染设置”窗口

+
+ +### 模型 + +有两种类型的模型:文件和程序化模型。 + +如果从文件加载模型,需设置FBX(.fbx),水杉(.mqo)或Effekseer的模型文件(.efkmodel)。如果设置了.efkmodel以外的文件,将在与设置文件的同一目录下生成.efkmodel。如果你想在其他应用程序中播放特效,这个生成的文件是必需的。 + +也可以加载带有动画的FBX(.fbx)。会播放在FBX文件中设置的第一个动画。 + +如果你想使用程序化模型,请在程序化模型面板中创建一个模型并设置它。 + +### 放置方法 + +设置如何绘制粒子的模型。 + +| 放置方法 | 说明 | +|-----------------------|-----------------------------------| +| 告示牌 | 模型总是面向摄像机 | +| Z轴旋转告示牌 | 模型面向摄像机,但是Z轴被锁定了 | +| 移动方向告示牌 | 模型朝向摄像机,同时+Y方向朝向移动方向 | +| 固定Y轴 | 模型面向摄像机,但是Y轴被锁定了 | +| 固定 | 模型将会与粒子的旋转设置一致 | + + + +### 剔除 + +设置模型的哪个/哪些面会被显示。 + +### 整体颜色 + +设置整个模型的色调。 diff --git a/source/zh_CN/ToolReference/rendererRibbon.md b/source/zh_CN/ToolReference/rendererRibbon.md new file mode 100644 index 0000000..b687d47 --- /dev/null +++ b/source/zh_CN/ToolReference/rendererRibbon.md @@ -0,0 +1,95 @@ +# 渲染 - 丝带 + +## 概述 + +这里我们解释在渲染设置窗口中选择了“丝带”时,影响渲染的参数。 + +在选择了“丝带”时,特效沿着一个连续的丝带渲染。 + +丝带并不将每个粒子分开绘制。而是将一个粒子的所有子粒子连接起来形成一个路径。例如,如果粒子1、2、3都是粒子0的子粒子,一个像丝带的形状将会在粒子1、2、3之间绘制。这个丝带是通过将每个粒子的(-0.5, 0, 0)和(0.5, 0, 0)连线形成的。 + +![](../../img/Reference/renderRibbon.png) + +## Parameters +
+ +

“渲染设置”窗口

+
+ + + +### 渲染顺序 + +译注:1.70b版本并没有没有这个选项 + +设置同一个节点生成的粒子的渲染顺序。选择了“生成顺序”时,第一个生成的粒子被第一个绘制,选择了“倒序”时,第一个生成的粒子被最后绘制。 + +### UV类型 + +它设置了UV重复的图案。 + +#### 拉伸 + +整个丝带使用一张图片。适用于拉长的的粒子,例如激光。 + + + +#### 瓦片 + +它在丝带中重复一张图片。它适用于有重复图案的粒子,例如链条。 +还可以设置为不只重复边缘,而是在设置的循环区域内重复。 + + + +### 跟随视点 + +丝带的形状是一条连接以粒子为中心的两个点(-0.5, 0, 0)和(0.5, 0, 0)的粗线。 +通常情况下,连接这两点的线的方向取决于粒子的旋转,但是你可以设置它是否应该旋转到指向观点的方向。 + +### 样条细分的数量 + +通过细分丝带让形状更为平滑。视觉效果更好,但性能消耗也更大。 + + + + + + + + + + + + + + + + + + + + + + + +
+ +细分:1 + + + +细分:8 + +
+ +### 整体颜色 + +设置丝带的整体的颜色。 + +### 顶点颜色 + +设置丝带的每个顶点(拐角)的颜色。 + +### 顶点坐标 + +设置丝带的每个顶点的坐标。此处只可设置X坐标。 diff --git a/source/zh_CN/ToolReference/rendererRing.md b/source/zh_CN/ToolReference/rendererRing.md new file mode 100644 index 0000000..67cdeca --- /dev/null +++ b/source/zh_CN/ToolReference/rendererRing.md @@ -0,0 +1,81 @@ +# 渲染 - 环 + +## 概述 + +这里我们解释在渲染设置窗口中选择了“环”时,影响渲染的参数。 + +当选择“环”时,将绘制一个圆形特效。 + +环由三层组成:外侧、中心和内侧。 + +![](../../img/Reference/renderRing.png) + +## 参数 +
+ +

“渲染设置”窗口

+
+ +### 渲染顺序 + +设置同一个节点生成的粒子的渲染顺序。选择了“生成顺序”时,第一个生成的粒子被第一个绘制,选择了“倒序”时,第一个生成的粒子被最后绘制。 + +### 放置方法 + +设置如何绘制粒子的环。 + +| 放置方法 | 说明 | +|-----------------------|-----------------------------------| +| 告示牌 | 环总是面向摄像机 | +| Z轴旋转告示牌 | 环面向摄像机,但是Z轴被锁定了 | +| 移动方向告示牌 | 环面向摄像机,同时+Y方向朝向移动方向 | +| 固定Y轴 | 环面向摄像机,但是Y轴被锁定了 | +| 固定 | 环将会与粒子的旋转设置一致 | + + + +### 顶点数量 + +用于显示环形的拐角顶点的数量。拐角数越多,形状就越接近于一个光滑的圆。但也可以通过故意减少角数使其成为一个多边形。 + + + +### 形状 + +设置环的形状。 + +#### 甜甜圈 + +渲染一个类似甜甜圈的形状。 + +#### 月牙 + +渲染一个局部的环。可以设置开始/结束角度和淡入/淡出角度。 + + + +### 外沿 + +环的外侧形状。X值设置半径。Y值设置高度。 + +### 内沿 + +环的内侧形状。X值设置半径。Y值设置高度。 + +### 中心比率 + +环的中心部分的位置的比例。如果中心要定位在内侧,设置为0.0。如果中心定位在外侧,则设置为1.0。如果将中心定位在中央,则设置0.5。 + +### 外沿颜色 + +环的外侧的颜色。 + +### 中心颜色 + +环的中心部分的颜色。 + +### 内沿颜色 + +环的外侧的颜色。 + + \ No newline at end of file diff --git a/source/zh_CN/ToolReference/rendererSprite.md b/source/zh_CN/ToolReference/rendererSprite.md new file mode 100644 index 0000000..db62ae1 --- /dev/null +++ b/source/zh_CN/ToolReference/rendererSprite.md @@ -0,0 +1,46 @@ +# 渲染 - 精灵 + +## 概述 + +这里我们解释在渲染设置窗口中选择了“精灵”时,影响渲染的参数。 + +在选择了“精灵”时,一个简单的方形/长方形面会被渲染。 + +![](../../img/Reference/renderSprite.png) + +## 参数 +
+ +

“渲染设置”窗口

+
+ +### 渲染顺序 + +设置同一个节点生成的精灵的渲染顺序。选择了“生成顺序”时,第一个生成的粒子被第一个绘制,选择了“倒序”时,第一个生成的粒子被最后绘制。 + +### 放置方法 + +设置如何绘制粒子的精灵。 + +| 放置方法 | 说明 | +|-----------------------|-----------------------------------| +| 告示牌 | 精灵总是面向摄像机 | +| Z轴旋转告示牌 | 精灵面向摄像机,但是Z轴被锁定了 | +| 移动方向告示牌 | 精灵面向摄像机,同时+Y方向朝向移动方向 | +| 固定Y轴 | 精灵面向摄像机,但是Y轴被锁定了 | +| 固定 | 精灵将会与粒子的旋转设置一致 | + + + +### 整体颜色 + +设置精灵的整体的颜色。 + +### 顶点颜色 + +设置精灵的每个顶点(拐角)的颜色。 + +### 顶点坐标 + +设置精灵的每个顶点的坐标。 + diff --git a/source/zh_CN/ToolReference/rendererTrack.md b/source/zh_CN/ToolReference/rendererTrack.md new file mode 100644 index 0000000..19d259d --- /dev/null +++ b/source/zh_CN/ToolReference/rendererTrack.md @@ -0,0 +1,125 @@ +# 渲染 - 轨迹 + +## 概述 + +这里我们解释在渲染设置窗口中选择了“轨迹”时,影响渲染的参数。 + +在选择了“轨迹”时,特效将沿着一条连续轨迹渲染。 + +轨迹将节点的所有子粒子按照顺序连成一条粗线,而不是单独渲染每个子粒子。例如,粒子1, 2, 3是粒子0的子粒子,则会在1, 2, 3之间绘制一条轨迹。这个轨迹是通过连接各个粒子的点形成的。与丝带不同,轨迹不会受到粒子的旋转和缩放的影响,它永远面向摄像机。 + +![](../../img/Reference/renderTrack.png) + +## 参数 +
+ +

“渲染设置”窗口

+
+ +### UV类型 + +设置UV重复的图案。 + +#### 拉伸 + +整个轨迹使用一张图片。适用于拉长的的粒子,例如激光。 + + + +#### 瓦片 + +它在轨迹中重复一张图片。它适用于有重复图案的粒子,例如链条。 +还可以设置为不只重复边缘,而是在设置的循环区域内重复。 + + + +### 平滑 + +平滑急转弯处。 + +### 颜色时间来源 + +当设置颜色随时间的变化时,使用什么的时间。 + +#### 组 + +使用整个轨迹的生存时间。 + +#### 第一个粒子 + +使用第一个粒子的生存时间。 +主要用于兼容旧版本。 + +### 样条细分的数量 + +通过细分轨迹让形状更为平滑。视觉效果更好,但性能消耗也更大。 + + + + + + + + + + + + + + + + + + + + + + + +
+ +细分:1 + + + +细分:8 + +
+ +### 前侧尺寸 + +设置轨迹前侧的宽度。 + +### 中间尺寸 + +设置轨迹中间的宽度。 + +### 后侧尺寸 + +设置轨迹后侧的宽度。 + +### 颜色・左侧前后 + +设置轨迹左前侧和左后侧的颜色。 + +### 颜色・左侧中间 + +设置轨迹左侧的中间部位的颜色。 + +### 颜色・中间前后 + +设置轨迹中间的前侧和后侧的颜色。 + +### 颜色・中间中间 + +设置轨迹中间的中间部位的颜色。 + +### 颜色・右侧前后 + +设置轨迹右前侧和右后侧的颜色。 + +### 颜色・右侧中间 + +设置轨迹右侧的中间部位的颜色。 + + \ No newline at end of file diff --git a/source/zh_CN/ToolReference/rotation.md b/source/zh_CN/ToolReference/rotation.md new file mode 100644 index 0000000..ebb3ac7 --- /dev/null +++ b/source/zh_CN/ToolReference/rotation.md @@ -0,0 +1,40 @@ +# 旋转 + +## 概述 + +设置与节点的旋转相关的参数。 + +## Parameters +
+ +

“旋转”窗口

+
+ +### 旋转 + +设置粒子的旋转角度。这将影响粒子相对于其父粒子的角度。如果没有父粒子,或者基础设置窗口中设置了不继承角度,它将表示绝对角度。 + +#### 固定角度 + +设置粒子的角度。 + + +#### 角度・速度・加速度 + +设置粒子的初始角度、角速度和角加速度。 + + +#### 缓动 + +设置粒子的初始角度和粒子生命周期结束时的最终角度,以及之间的过渡。 + + +#### F曲线 + +使用F曲线设置粒子整个生命周期内旋转角度。 + + +#### 旋转至摄像机方向 + +旋转使Z轴指向摄像机。 +因为它使用的相机的位置,所以有多个相机时,它将无法正常工作。 \ No newline at end of file diff --git a/source/zh_CN/ToolReference/scale.md b/source/zh_CN/ToolReference/scale.md new file mode 100644 index 0000000..1397c09 --- /dev/null +++ b/source/zh_CN/ToolReference/scale.md @@ -0,0 +1,46 @@ +# 缩放 + +## 概述 + +设置粒子缩放相关的参数。 + +这些参数在`缩放`窗口中设置。 + +
+ +

“缩放”窗口

+
+ +它将影响粒子相对于父粒子的缩放。如果没有父粒子,或者基础设置窗口中设置了不继承缩放,它将表示绝对缩放。 + +### 固定缩放 + +设置粒子的缩放。 + + +### 缩放・速度・加速度 + +设置粒子的初始缩放、放大速度和放大加速度。 + + +### 缓动 + +设置粒子的初始缩放和粒子生命周期结束时的最终缩放,以及之间的过渡。 + + +### F曲线 + +使用F曲线设置粒子整个生命周期内的缩放值。 + + +### 缩放・速度・加速度(统一) + +XYZ轴都有相同的值的缩放・速度・加速度。 + +### 缓动(统一) + +XYZ轴都有相同的值的缓动。 + +### F曲线(统一) + +XYZ轴都有相同的值的F曲线。 \ No newline at end of file diff --git a/source/zh_CN/ToolReference/sound.md b/source/zh_CN/ToolReference/sound.md new file mode 100644 index 0000000..9982fd8 --- /dev/null +++ b/source/zh_CN/ToolReference/sound.md @@ -0,0 +1,46 @@ +# 声音 + +## 概述 + +设置节点伴随的音效。 + +## 参数 + +### 声音数据 + +加载WAV格式的音频文件。 + +### 响度 + +设置播放声音的响度。取值范围为0到1: + +* 1: 与原音频相同 +* 0: 静音 + +### 音高 + +设置播放音频的音高。取值范围为-2到2: + +* 0: 与原音频相同 +* 1: 音高提高一个八度 +* -1: 音高降低一个八度 + +### 声像类型 + +用于控制立体声(左/右)平衡的方法。有两种,2D和3D。 + +#### 声像 + +2D模式下使用的参数。取值范围为-1到1: + +* 0: 与原音频相同 +* -1: 音频将只在左声道播放 +* 1: 音频将只在右声道播放 + +#### 衰减距离 + +3D模式下使用的参数。物体越远,自然声音就越小。此处设置的是响度开始降低的距离。可以是任意正数。 + +### 延迟 + +从粒子生成到声音播放之间的经过的帧数。可以是任意正整数。 \ No newline at end of file diff --git a/source/zh_CN/ToolTips/01.md b/source/zh_CN/ToolTips/01.md new file mode 100644 index 0000000..839d97f --- /dev/null +++ b/source/zh_CN/ToolTips/01.md @@ -0,0 +1,157 @@ +# TIPS + +本章介绍了用于各种用途的参数设置,以及事先了解就很方便使用的操作方法。 +本章预设您已通读教程,因此建议您先读教程再看本章。 +部分条目会链接到其他页面。 + +## 将粒子的生命周期设置为正无穷 + +你可能希望某种类型的特效持续播放到游戏结束。 +有几种实现方式。 +如果你执行了以下任何一种操作,特效都不会自动结束,只能手动结束。 + +### 生命周期 + +如果`生命周期`长于游戏时长,粒子将持续到游戏结束。 + +### 生命周期结束后销毁 + +取消勾选```基础设置```窗口中的```生命周期结束后销毁```。 + +### 生成数量 + +如果```生成数量```是正无穷,即便所有的粒子都消失了,特效也将持续存在。 + +## 在第0帧同时生成多个粒子 + +将```生成速率```设置为非常小的值,例如0.0001。 +并且将```生成开始时间```设为负数。 + +如果```生成速率```小于1,一帧内将生成多个粒子。 +如果```生成开始时间```是负数,粒子将会在第0帧生成。 +同时使用两者,第0帧将生成多个粒子。 + +## 设置放射状的粒子 + +设置从中心向四周移动的放射状的粒子。 + +### 生成方法 + +请参考教程的第8章。 + +[第8章](../ToolTutorial/08) + +### 父子关系 + +将父粒子设置为360度随机方向旋转。 +如果子粒子在远离中心的地方,这些粒子将呈现放射状。 + +## 生成月牙形粒子。 + +生成月牙形的粒子。 + +### 环 + +Set the image whose parts are not connected in the ring. Then you can generate crescent shaped particles. +Just rotating these with random axes will make it look nice. + +译注:不太理解上面在说啥。 +将渲染类型设置为环,形状选择月牙,调整开始角度、结束角度、开始淡入和开始淡出,即可生成月牙形的粒子。 + + + + + + +
+ + + +
+ +## 避免特效与角色发生碰撞 + + + + + + +
+ + + +
+ +一些特效,例如攻击特效,可能被放置在和角色相同的位置。导致角色与特效产生重叠。 +可以利用游戏程序偏移特效的位置以避免碰撞,但很麻烦。 + +### Z偏移(深度偏移) + +如果设置了Z偏移,特效在深度方向上的位置会移动,从而不与角色发生碰撞。 + +### Z测试(深度测试) + +关闭了Z测试时,特效将始终绘制,即便它事实上被其他物体挡住了。 +然而,你可能希望特效被角色之外的一些东西挡住,所以使用这种方法时一定要小心。 + +## 生成剑的拖尾 + +
+ +
+ +我准备了一个例子,因为解释起来有点复杂。 + +
+下载 +
+ +使用丝带生成剑的拖尾。 + +与轨迹不同,丝带会保持在生成的位置。 + +如果将丝带放置在剑经过的位置,看起来就像剑的拖尾。 + +丝带被设置为剑的节点的子节点。 + +这适合用来表现用模型表示的剑,但是这次我修改了精灵图的```顶点坐标```,将其放置得像一把剑。 + +在```渲染设置```面板中修改丝带的```顶点坐标```,将丝带的左边和右边之间的距离设置为与剑的长度相等。 + +调整丝带的位置和角度,使之与剑对齐。 + +因为这是一个丝带,所以要将```继承位置```、```继承旋转```和```继承缩放```修改为```仅生成时```。 + +然后调整丝带的颜色和淡出等参数。 + +剑移动时,你可以看到丝带会根据剑的位置显示。 + +剑的角度使用F曲线。 + +在这个TIP中我用Effekseer移动剑,但也可以根据游戏中的剑的位置移动特效。 + +## 让粒子的图像变得细长 + +当你将一个方形的图像设置给细长的粒子时,从远离粒子的地方看形状可能不正确。 + +多级纹理降低了图像的分辨率,导致边缘和中心使用了相同的像素。 + +为了避免这种情况,直接使用细长的图像。 + +下面左图是使用了方形图像的粒子,右图是使用了细长图片的粒子。 + + + + + + +
+ + + +
+ +## 在不展示父粒子的前提下继承父粒子的颜色 + +将渲染方法设置为精灵。 +在基础设置面板中,关闭可见性。 diff --git a/source/zh_CN/ToolTutorial/01.md b/source/zh_CN/ToolTutorial/01.md new file mode 100644 index 0000000..c8c5776 --- /dev/null +++ b/source/zh_CN/ToolTutorial/01.md @@ -0,0 +1,221 @@ +# 01.查看并使用示例! + +## 概要 + +在本章中,我们将运行Effekseer并查看示例,以解释它的基础操作。然后我们将讲解如何在其他应用(例如游戏)当中使用Effekseer。 + +
+ +

我们将在本章制作的特效。

+
+ +## 启动Effekseer + +### 启动方法(Windows) + +Effekseer位于“Tool/Effekseer.exe”。打开该文件夹并双击可执行文件可启动程序。 + +
+ +

+Effekseer的图标 +

+
+ +### 如果Effekseer启动失败(Windows) + +#### 操作系统太旧了 + +Effekseer可以运行于Windows 7 SP1或之后的版本。 + +#### 未安装D3DCompiler_47.dll + +可通过以下链接下载。 + + + +#### 直接在.zip文件中启动Effekseer + +在运行前需要解压文件。右键.zip文件并在弹出的菜单栏中选择解压选项。 + +#### Effekseer仍然无法启动 + +请在官网联系我们。 + +### 启动方法(Mac) + +Effekseer位于“Effekseer.dmg”。将Effekseer移动到其他文件夹,例如Applications,并双击可执行文件以启动程序。 + +
+ +
+ +### 如果Effekseer启动失败(Windows) + +#### 操作系统太旧了 + +Effekseer可以运行于macOS Sierra或之后的版本。 + +#### 直接在dmg中启动Effekseer + +将Effekseer移动到其他文件夹。 + +#### Effekseer仍然无法启动 + +请在官方网站联系我们。 + +### 成功启动 + +如果成功启动,将显示以下界面。 + +
+ +

+Effekseer的开始界面 +

+
+ +现在,让我们打开一个示例。 + +## 打开示例~基础操作 + +启动后你将看到一个什么都没有显示的3D屏幕。请点击位于左下方的播放按钮。 + +
+ +

+播放按钮 +

+
+ +按下播放按钮后,屏幕中央会出现一个白色的方块。这个白色的方块就是构成特效的粒子。一个特效可以由许多粒子组成。因为目前还未进行任何设置,所以只有一个白色正方形粒子。你可以在这个基础上制作这个软件能够制作的所有粒子特效,但这对于新手来说很困难。所以本章将不做任何编辑。 + +
+ +

+方形的粒子 +

+
+ +只用白色的方块制作粒子有些无趣。所以打开一个示例文件。请从下面的链接中下载并解压示例文件。 + +
+下载 +
+ +然后你会发现一个叫做'Sample.efkefc'的文件,你可以从菜单栏中选择'文件->打开'来打开该文件,或者将该文件拖放到3D屏幕上。打开文件后,播放特效,你会看到以下画面。 + +
+ +

+示例项目 +

+
+ +除了这个示例外,官网上还有150多个免费提供的示例。更多信息见下面的链接。 + +
+官方网站 +
+ +直到现在我们都在看向一个固定的方向,你可以试着移动视角。下表中总结了操作方法。所有操作都可以用鼠标进行。 + +
+ + + + + + + + + + + + + +
旋转按住鼠标右键并移动鼠标。
平移按下鼠标中键并移动鼠标,或者按下鼠标右键和Shift键并移动鼠标。
缩放滑动鼠标滚轮,或者按下鼠标右键和Ctrl键并上下移动鼠标。
+
+ +使用鼠标,从不同方向看向示例粒子。 + +
+ +

+从新视角观察的示例 +

+
+ +为了使编辑特效更容易,特效默认循环播放。你可以在左下角的文本框中设置循环范围(如下图)。Effekseer每帧为1/60秒。因此,默认范围指0到2秒。 + +
+ +

+循环范围 +

+
+ + +## 在外部程序中使用 + +如果你只关注怎么创建特效,你不需要阅读本节。但是,你所创建的特效通常要导出给其他应用程序使用。本节介绍了在外部应用程序中使用Effekseer创建的特效的两种不同方法。 + +### 录像 + +Effekseer可以按一定的时间间隔输出精灵表单(Sprite Sheet)或gif动画。从菜单栏中选择“窗口->录像”来打开录像窗口。在这里你可以设置录像的参数,例如图像的大小和录像的帧率。 + +
+ +

+录像窗口 +

+
+ +Effekseer可以输出精灵表单或视频文件,其中特效的图片以固定的时间间隔排列。精灵表单是一张由顺序排列的图像序列组成的图片。 + +在设置完参数并点击“录像”键后,会出现一个对话框,要求设置录像的存储位置。在对话框中点击“保存”,就可以把录像的结果保存到设置位置。 + +因为输出的精灵表单只是一张图片,所以容易地在其他应用程序中使用。视频文件也可以用于视频编辑软件,如AfterEffects。 + +
+ +

+精灵表单的示例 +

+
+ +### 用于Unity、虚幻4等 + +Effekseer的efkefc格式的特效文件可以被Unity、虚幻4和Cocos2d-x等游戏引擎读取。 + +也可以通过在专有游戏引擎中集成Effekseer运行时来加载(详细信息请咨询开发者)。 + +
+ +

+用于Unity的示例 +

+
+ +## 关于示例特效 + +在Effekseer官方网站上有许多示例特效。它们是免费的,而且没有使用限制。也就是说,你可以直接用于自己的游戏,或者以之为基础制作自己的特效。这些特效可以用于大多数地方,仅仅通过改变颜色,你就可以为一个游戏提供足够的特效。 + +
+ + + +

+示例合集 +

+
+ +希望你能标注你使用的示例特效的作者的名字,但这并非强制要求。 + +你也可以把它们作为参考,制作自己的特效。一开始,你可能觉得它们太复杂,难以理解。但是在接下来的章节中,我们将慢慢解释如何制作特效。 + +## 总结 + +本章介绍了Effekseer的基础操作,以及如何在外部应用程序中播放特效。下一章将介绍如何自己制作特效。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/02.md b/source/zh_CN/ToolTutorial/02.md new file mode 100644 index 0000000..31cf026 --- /dev/null +++ b/source/zh_CN/ToolTutorial/02.md @@ -0,0 +1,175 @@ +# 02.让粒子散射开! + +## 概要 + +在本章中,我们将尝试散射粒子。虽然有些无趣,但你会学到Effekseer的基础操作。基于你在本章学到的知识,你可以接下来的章节中制作出很酷的特效。所以要确保你能很好地理解它。 + + + +## 编辑位置 + +### 编辑初始位置 + +现在,粒子显示在中心位置。让我们把这个粒子从中心位置移开。 + +
+ +

显示在中心位置

+
+ +首先,点击屏幕右侧的“节点树”上的“Node(节点)”。“节点树”窗口显示了整个特效的结构,其中Node代表粒子。通过它,你可以编辑这些粒子的形状。 + +
+ +

节点树窗口

+
+ +点击之后,你会看到大量的可编辑参数。新手可能会感到惊讶,但在本章中只需要编辑部分参数。 + +要编辑初始位置,请编辑“位置”窗口的参数。 + +要显示位置窗口,点击屏幕右上角显示的标签中的“位置窗口”图标。 + +
+ +

位置窗口的图标

+
+ +
+ +

位置窗口

+
+ +让我们把位置窗口中X的值从0改为2。 + +用鼠标左键点击输入栏,可以用键盘输入数值。 + +按下鼠标左键并拖动输入栏,可以逐步改变数值。 + +```eval_rst +.. image:: ../../img/Reference/Overview/input_value.png + :align: center +``` + +
+ +

改变x的值

+
+ +然后,粒子就从中心移到了一侧。 + +
+ +

移动到一侧

+
+ +### 让粒子运动 + +粒子现在是静止不动的,有些无聊。要让粒子的运动起来。 + +在Effekseer中,有几种方法来设置位置。 + +默认情况下,位置是固定的,但是有一些方法可以设置速度和加速度。 + +点击位置窗口的下拉列表,从固定位置改为位置·速度·加速度。这将在位置窗口中增加一些文本框,你可以在其中输入速度和加速度,从而让粒子运动起来。 + +
+ +

位置·速度·加速度

+
+ +让我们在x方向的速度(中心)中输入0.1。 + +
+ +

位置·速度·加速度

+
+ +接着,粒子飞出了画面。 + +
+ +

运动中的特效

+
+ +试试输入其他数值,看看粒子的行为会如何变化吧。 + +### 显示多个粒子 + +很少有特效只由一个粒子组成。你可以显示一个以上的粒子。 + +粒子的数量可以通过“基础设置”窗口中的“生成数量”设置。如果你增加这个数字,就会产生很多粒子。 + +要显示“基础设置”窗口,请点击“基础设置”窗口的图标。 + +
+ +

基础设置的图标

+
+ +
+ +

生成数量

+
+ +让我们将生成数量设置为100。 + +
+ +

增加生成数量

+
+ +现在生成了大量粒子。然而,因为所有粒子的运动方向都是一样的,所以粒子的显示是相互重叠的。 + +
+ +

增加生成数量

+
+ +### 让每个粒子随机运动 + +如果粒子向同一方向移动,它们将相互重叠。因此,我们让每个粒子随机移动。 + +将位置窗口中的xyz方向的速度振幅都设置为0.1。并将你刚刚在x轴速度的平均值中输入的的0.1重置为0。 + +这表明每个方向的速度被随机设置在-0.1和0.1之间。这意味着粒子从原点向整个外围扩散。 + +
+ +

随机

+
+ +粒子现在朝向整个球体的外围运动。 + +
+ +

随机

+
+ +### 缩短粒子显示的时间 + +现在粒子显示的时间很长,但有些特效需要更短的时间。让我们缩短显示时间。 + +在基础设置窗口中有一个叫做生命周期的参数。试着缩短这个参数。在这个例子中,我们输入30。 + +
+ +

生命周期

+
+ +如果设置更小的值,粒子将更快消失。 + +
+ +

生命周期

+
+ +最后,在本章中制作的粒子可以通过下面的链接下载。 + +
+下载 +
+ +## 总结 + +这次我们创建了多个粒子并让它们动了起来。在下一章中,我们将使之更像一个特效。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/03.md b/source/zh_CN/ToolTutorial/03.md new file mode 100644 index 0000000..c256b35 --- /dev/null +++ b/source/zh_CN/ToolTutorial/03.md @@ -0,0 +1,153 @@ +# 03. 显示图片! + +## 概要 + +在这一章中,粒子上会显示图像。到目前为止,它们一直是白色的方块,但白色方块将换成图像。此外,粒子会逐渐变得透明并改变颜色。 + + + +## 预备知识 - 当窗口关闭或者错位 + +如果你在窗口之间来回切换,它们可能会变得错位或关闭。如果发生这种情况,在菜单栏中选择“窗口”,选择“重置窗口位置”,使每个窗口回到其初始位置。选择每个窗口的名称来打开该窗口。 + +## 显示图像 + +自己准备图片很麻烦,所以我们让大家可以从下面的链接下载预制的特效素材。 + +
+下载 +
+ +### 图像设置 + +让我们开始在白色方块中添加图像。图像是在“基础渲染设置”窗口中设置的。点击右上角选项卡中的“基础渲染设置”图标,并选中一个节点。 + +
+ +

基础渲染设置的图标

+
+ +点击“基础渲染设置”图标,并选中一个节点,将显示“基础渲染设置”窗口。 + +
+ +

“基础渲染设置”窗口

+
+ +点击“基础渲染设置”窗口中的载入按钮。点击后,出现一个选择图像的窗口。选择particle.png。选择后,该图像也将出现在Effekseer中。 + +
+ +

图像设置

+
+ +播放特效,你会看到白色方块已经变成了一个图像。 + +
+ +

图像设置

+
+ +### 淡入淡出设置 + +粒子突然出现或消失是不自然的。设置一下淡入和淡出,使透明度发生变化。 + +淡入可以通过改变“基础渲染设置”窗口中的淡入值来设置。同样地,淡出可以通过改变“基础渲染设置”窗口中的淡出值来设置。在这个例子中,两者都输入15。 + +
+ +

淡入淡出设置

+
+ +你可以看到特效逐渐出现和消失。 + +
+ +

淡入淡出设置

+
+ +### 精灵 + +Effekseer提供几种渲染方法。默认设置是“精灵”。你可以绘制方形的粒子。你可以创造这样的特效,尽管只用到本章为止所介绍的内容很难做到。 + +
+ +

精灵

+
+ +在“渲染设置”窗口中,你可以为当前选定的渲染方法设置特定的功能。我们可以像打开“基础渲染设置”窗口一样打开“渲染设置”窗口。 + +
+ +

渲染设置的图标

+
+ +
+ +

“渲染设置”窗口

+
+ +#### 颜色设置 + +你可以用淡出设置透明度,但不可以设置粒子的颜色。如果图像是彩色的,这不是问题,但要改变每个粒子的颜色,你需要准备几个图像。因此,你可以在选择一个精灵时为粒子设置一个粗略的颜色范围。 + +你可以在“渲染设置”窗口中设置该颜色。有几种方法来设置颜色。对于这个例子,选择随机,这样每个粒子的颜色都会变化。然后,将最小值设置为0。这意味着颜色将随机地选择0到255之间的数值。 + +除了在文本框中输入颜色外,还可以用鼠标左键点击颜色区域。 + +```eval_rst +.. image:: ../../img/Reference/Overview/input_color_basic.png + :align: center +``` + +左键点击并拖拽颜色区域可以将其复制到另一个颜色区域。 + +```eval_rst +.. image:: ../../img/Reference/Overview/input_color.png + :align: center +``` + +
+ +

设置一个颜色

+
+ +你可以看到每个粒子的颜色都是不同的。 + +
+ +

设置一个颜色

+
+ +### 混合设置 + +在Effekseer中,你可以为粒子设置alpha混合方法。混合方法是将粒子与背景相结合的方法。你可以直接绘制粒子或将它们添加到背景中,如下图所示。 + +
+ +

混合方法设置

+
+ +这一次,将混合方法设置为加法,以使粒子更加明亮。你可以在“基础渲染设置”窗口中设置混合方法。 + +
+ +

混合方法设置

+
+ +如果你把混合方法设置为加法,你会看到粒子显得更亮。 + +
+ +

设置混合方法

+
+ +最后,在本章中制作的粒子可以通过下面的链接下载。 + +
+下载 +
+ +## 总结 + +在这一章中,我们改变了精灵的参数以改善粒子的外观。在下一章中,我们将讨论精灵的形状,以及粒子的旋转和缩放。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/04.md b/source/zh_CN/ToolTutorial/04.md new file mode 100644 index 0000000..0b66c04 --- /dev/null +++ b/source/zh_CN/ToolTutorial/04.md @@ -0,0 +1,176 @@ +# 04. 旋转和缩放! + +## 概要 + +在本章中,我们将旋转并缩放粒子。还将把精灵的形状从方形改为矩形。这使你能够创造复杂的特效。 + + + +## 旋转和缩放 + +可以从下面的链接下载预制的特效素材。 + +
+下载 +
+ +### 旋转 + +让我们现在旋转粒子。旋转可以通过“旋转”窗口设置。 + +点击“旋转”窗口图标,打开旋转窗口。 + +
+ +

旋转窗口的图标

+
+ +
+ +

“旋转”窗口

+
+ +与位置一样,可以通过多种方法设置旋转。默认选项是```固定角度```。将其改为```角度・速度・加速度```。然后在Z轴的```角速度```中输入5。 + +这表示以Z方向(正面方向)为轴,每帧旋转5度。 + +
+ +

角速度

+
+ +输入后,进行回放……但是没有任何变化!这是因为精灵绘图方式的默认设置是,无论粒子是否被旋转,矩形总是朝前。 + +在“渲染设置”窗口中将放置方法从```告示牌```改为```Z轴旋转告示牌```。```Z轴旋转告示牌```是一种放置方法,矩形面向前方,但Z轴旋转仍然有效。 + +
+ +

放置方法

+
+ +设置好```Z轴旋转告示牌```后,可以看到矩形沿Z轴方向(前方)旋转。 + +
+ +

旋转

+
+ + +### 缩放 + +与位置和旋转一样,可以缩放粒子。缩放可以通过“缩放”窗口设置。 + +点击“缩放”窗口图标来打开缩放窗口。 + +
+ +

缩放窗口的图标

+
+ +
+ +

“缩放”窗口

+
+ +与位置和旋转一样,可以通过多种方法设置缩放。默认选项是```固定缩放```。将其改为```缩放・速度・加速度(统一)```。然后在```放大速度```中输入0.01。 + +尽管也可以为X、Y和Z方向单独设置```放大速度```,但它们通常是一样的。因此,可以设置统一的```放大速度```。 + +
+ +

放大速度

+
+ +可以看到精灵在旋转和放大。 + +
+ +

缩放

+
+ +## 精灵形状 + +现在的精灵是正方形的,但也可以改成矩形、梯形等形状。 + +在“渲染设置”窗口中将```顶点坐标```从```默认```改为```固定```。然后你可以设置矩形顶点的坐标。 + +现在,为了使它在垂直方向放大,输入以下内容。 + +
+ +

顶点坐标

+
+ +可以看到粒子竖直方向的长度长于水平方向的长度。 + +
+ +

顶点坐标

+
+ +## 收尾 + +它现在的样子并不好看,可以做以下修改。 + +### “基础设置”窗口 + +将```生成数量```修改为10 + +
+ +
+ +### “位置”窗口 + +改为位置・速度・加速度 + +将位置振幅修改为2 + +
+ +
+ +### “基础渲染设置”窗口 + +```纹理```选择particle.png + +将```混合方法```改为```加法``` + +
+ +
+ +### “旋转”窗口 + +将Z轴角度振幅修改为180 + +
+ +
+ +### “缩放”窗口 + +将```缩放比率```修改为0 + +
+ +
+ +### 结果 + +如果你不知道如何修改这些参数,请回顾第1到3章。 + +
+ +

结果

+
+ +最后,在本章中制作的粒子可以通过下面的链接下载。 + +
+下载 +
+ +## 总结 + +本章解释了如何旋转和缩放精灵。在下一章中,我们将尽可能利用迄今为止了解的内容来制作实际的特效。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/05.md b/source/zh_CN/ToolTutorial/05.md new file mode 100644 index 0000000..4924845 --- /dev/null +++ b/source/zh_CN/ToolTutorial/05.md @@ -0,0 +1,209 @@ +# 05. 制作一个斩击命中特效! + +## 概要 + +在这一章中,你将创建一个像真实游戏中使用的斩击命中特效。这个特效中间有一条较长的光效表示刀光,周围迸出较短的光效表示冲击力。在此过程中,你将学到复制和添加节点,以及缓动粒子。 + + + +## 准备 + +可以从下面的链接下载预制的特效素材。 + +
+下载 +
+ +这次制作的特效大约时长0.5秒,所以我们将```显示控制```窗口中的结束时间设置为30帧。 + +## 缓动 + +在这个例子中,有多个参数用到了缓动。 + +缓动是一种设置初始值和结束值,自动完成中间的值的方法。 + +如下图所示,目前,位置、旋转和缩放都是由速度(1)和加速度来设置的。然而,用这种方法的话,粒子的生命周期越长,这些数值就越大。 + +而缓动,则是设置粒子刚生成时的数值(2),和消失之前的数值(3),并在它们之间的时间间隔内自动进行插值。因为能够设置粒子消失之前的数值,也就更容易把握粒子的形状。 + +
+ + + + + +
+ +

位置・速度・加速度

+
+ +

缓动

+
+
+ +存在若干种插值方法。在起点和终点,可以分别设置从低速3到高速3的速度。速度越慢,数值变化越慢;速度越快,数值变化越快。 + +
+ +

插值方法

+
+ +## 制作特效 + +特效往往不止由一种粒子,而是几种外观完全不同的粒子组成。Effekseer中也可以存在多个节点。可以赋予每个节点完全不同的参数。命中特效也必须由几个节点组成。在这个例子中,我们将按顺序创建节点。 + +特效的大致方向如下。 + +* 播放时长大约是0.5秒(30帧) + +* 颜色是紫色(255, 32, 255)~粉色(255, 128, 255) + +### 刀光节点 + +创建一个代表刀光的节点,以45度的角度拉长。 + +剑气应该在0.33秒(20帧)的时间内向45度方向拉长。我们想让粒子倾斜,所以设置为```Z轴旋转告示牌```。 + +按如下方式改变数值。 + +在这一章中,需要更改大量的数值。即便氛围相似,也没必要把它们设置成一模一样的。 + +|窗口|变量|值| +|:----|:----|:----| +|基础设置|名称|Line1| +|基础设置|生命周期|20| +|旋转|角度|x=0, y=0, z=-45| +|缩放|缩放方法|缓动| +|缩放|起点(平均)|x=4, y=1, z=1| +|缩放|终点(平均)|x=1, y=25, z=1| +|缩放|起点速度|高速3| +|缩放|终点速度|低速3| +|基础渲染设置|纹理|Texture/Line01.png| +|基础渲染设置|混合方法|加法| +|渲染设置|放置方法|Z轴旋转告示牌| +|渲染设置|整体颜色|缓动| +|渲染设置|整体颜色-起点(平均)|255,128,255,255| +|渲染设置|整体颜色-终点(平均)|255,255,255,0| +|渲染设置|整体颜色-起点速度|低速3| +|渲染设置|整体颜色-终点速度|高速3| + +此时特效看起来像这样。 + +
+ +

刀光节点

+
+ +### 冲击节点 + +当攻击击中时,除了刀光之外,还会产生冲击。它的创建方式与刀光相同。 + +刀光节点和冲击节点有不同的参数,所以你需要添加节点。首先,选择“Root”。然后,右击Root,会出现一个菜单。从菜单中,选择添加节点。 + +
+ +

添加节点

+
+ +添加后,点击添加的节点进行编辑。 + +按以下方式更改数值。 + +|窗口|变量|值| +|:----|:----|:----| +|基础设置|名称|Line2| +|基础设置|生成数量|10| +|基础设置|生命周期|20| +|旋转|旋转方法|角度・速度・加速度| +|旋转|角度(振幅)|x=0, y=0, z=180| +|缩放|缩放方法|缓动| +|缩放|起点|x=1, y=1, z=1| +|缩放|终点|x=1, y=10, z=1| +|缩放|起点速度|高速3| +|缩放|终点速度|低速3| +|基础渲染设置|纹理|Texture/Line01.png| +|基础渲染设置|混合方法|加法| +|渲染设置|放置方法|Z轴旋转告示牌| +|渲染设置|整体颜色|缓动| +|渲染设置|整体颜色-起点(平均)|255,128,255,255| +|渲染设置|整体颜色-终点(平均)|255,255,255,0| +|渲染设置|整体颜色-起点速度|低速3| +|渲染设置|整体颜色-终点速度|高速3| + +现在特效看起来像这样。 + +
+ +

冲击节点

+
+ +### 发光节点1 + +如果击中的瞬间发出闪光,看起来会更好。以与刀光节点相同的方式设置这个节点。 + +更改数值如下。 + +|窗口|变量|值| +|:----|:----|:----| +|基础设置|名称|Flash1| +|基础设置|生命周期|20| +|缩放|缩放方法|缩放・速度・加速度(统一)| +|缩放|放大速度|0.6| +|基础渲染设置|纹理|Texture/Particle01.png| +|基础渲染设置|混合方法|加法| +|渲染设置|整体颜色|缓动| +|渲染设置|整体颜色-起点(平均)|255,32,255,255| +|渲染设置|整体颜色-终点(平均)|255,128,255,0| +|渲染设置|整体颜色-起点速度|低速3| +|渲染设置|整体颜色-终点速度|高速3| + +现在特效看起来像这样。 + +
+ +

发光节点1

+
+ +### 发光节点2 + +但现在的发光效果看起来很土,所以再添加一个发光节点。而这个发光节点与我们刚刚创建的发光节点几乎是一样的。在Effekseer中,你可以复制节点。 + +选择发光节点,按右键选择复制节点。 + +
+ +

复制节点

+
+ +选择Root后,右键粘贴节点。 + +
+ +

粘贴节点

+
+ +你可以看到,发光节点已经被复制了。 + +在原来的发光节点的基础上作如下修改。 + +|窗口|变量|值| +|:----|:----|:----| +|基础设置|名称|Flash2| +|基础渲染设置|纹理|Texture/Particle03.png| + +现在一个斜线斩击特效已经完成了。 + +
+ +

完成

+
+ +最后,在本章中制作的粒子可以通过下面的链接下载。 + +
+下载 +
+ +## 总结 + +在这一章中,我们已经制作了可以在游戏中实际使用的特效。在下一章中,我们将制作更复杂的特效。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/06.md b/source/zh_CN/ToolTutorial/06.md new file mode 100644 index 0000000..ef1f7b5 --- /dev/null +++ b/source/zh_CN/ToolTutorial/06.md @@ -0,0 +1,150 @@ +# 06. 创建环形粒子! + +## 概要 + +在本章中, 你将使用环形(Ring)渲染方法创建多种效果。 +我们已经介绍了渲染方法中的“精灵”,而这次,我们将介绍“环”。 +顾名思义,它被用来绘制环形粒子。 +但通过改变其参数, 你创建的特效将不会仅局限于环形。 + +
+ +

各种环形特效

+
+ +此外,也可以尝试通过改变贴图的选区(UV)获得更好的表现效果。 + +
+ +

本章中创建的第一个效果

+
+ +
+ +

本章中创建的第二个效果

+
+ +
+ +

本章中创建的第三个效果

+
+ +

你可以通过下面的链接下载为本章内容预制的特效素材。

+
+

下载

+
+ +## 基础圆环 + +你将要创建的第一个效果是一个随时间改变形状的圆环。 + +请打开 effect1.efkefc。 + +为达到预想的效果,你需要将渲染方法设置为环形。 +在节点树中选中Node,切换到“渲染设置(Render Settings)”选项卡,将渲染方法由“精灵(Sprite)”改为“环(Ring)” + +
+ +

修改完成后的渲染设置应当如此图所示

+
+ +修改完成后播放效果,你应当看到预览画面中显示的是一个圆环。 + +
+ +

+
+ +你可以通过改变其参数来改变它的形状。 + +圆环的形状由“渲染设置”选项卡中的外沿(Outer)和内沿(Inner)控制。 +在这两项中,你可以设置圆环内外沿的平面半径(x)和轴向高度(y)。(译者注:类似圆台的上下表面半径及其高度) + + 注意:不要将这里的xy与预览画面中的xyz相混淆 + +
+ +

外沿(1)和内沿(2)

+
+ +这些参数也可以通过缓动来达到随时间变化的效果。 + +根据下方表格修改粒子节点的参数。它表示```外沿位置(Outer-Position)```将会由(1,2)变为(3,0)而```内沿位置(Inner-Position)```保持在(1,0)不变。 + +|窗口|参数|值| +|:----|:----|:----| +|基础设置|生命周期|60| +|旋转|角度|x=0, y=0, z=-45| +|渲染设置|外沿Outer|缓动| +|渲染设置|外沿Outer-Start(平均)|x=1, y=2| +|渲染设置|外沿Outer-End(平均)|x=3, y=0| + +播放效果,你可以看到圆环的形状在随时间改变了。 +基于同样的原理,只需将内沿半径设为0,你就可以创建圆盘/圆锥效果了。 + +
+ +

内沿不变, 外沿缓动

+
+ +## 三角形 + +你将要创建的第二个效果是一个三角形。 +请打开 effect2.efkefc。 + +通过改变圆环的顶点数,你可以绘制出多种形状。 +顶点数的初始值较大,因此粒子看起来更像是个圆, +降低顶点数则允许你绘制出三角形,矩形,六边形等形状。 +你只需要将“渲染设置”选项卡中的顶点数(Vertex Count)修改为3,即可得到一个三角形,如图所示。 + +
+ +

一个三角形

+
+ +## 滚动UV + +你将要创建的第三个效果是一个带贴图的圆筒。 + +请打开 effect3.efkefc。 + +你同样可以为环形粒子设置贴图,这样你就可以更简单地表现冲击波或爆发光环等效果。 + +在“基础渲染设置(Basic Render Settings)”选项卡的纹理选项中选择“Scroll.png”。 + +可以看到,圆筒的外观由纯色变为了图片。 + +
+ +

效果应如图所示

+
+ +但这看起来并不怎么吸引人,如果能让贴图随时间变化,看起来就更好了。 +在Effekseer中, 你可以改变粒子在贴图上使用的选区(UV)。 + +为了让粒子的UV随时间变化,你需要: + +切换到“基础渲染设置”选项卡 +将 UV 设置由 ```基础(Standard)``` 修改为 ```滚动(Scroll)```。 +到这里,你会发现圆筒表面什么也没有显示。 +这是因为你还没有设置贴图要采用的选区。 + +在尺寸(Size)中输入图片尺寸(256, 256)。接下来,在滚动速度(Scroll)中输入(0, 5)。 + +播放效果,可以看到贴图在随时间变化。 + +
+ +

滚动UV

+
+ +最后,你可以通过下面的链接下载本章中制作的效果。 + +
+下载 +
+ +## 总结 + +本章节中,你通过圆环渲染方法创建了一系列效果。 +在下一章节,你将利用节点父子关系创建复杂的效果。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/07.md b/source/zh_CN/ToolTutorial/07.md new file mode 100644 index 0000000..e244025 --- /dev/null +++ b/source/zh_CN/ToolTutorial/07.md @@ -0,0 +1,145 @@ +# 07. 使用父子关系实现复杂移动! + +## 概要 + +在本章中,你将使用节点的父子关系创建复杂的特效。这一章多少有些难度。请确保你能很好地理解它。 + +
+ +

本章制作的特效1

+
+ +
+ +

本章制作的特效2

+
+  + +## 父子关系 + +在Effekseer中,节点有父子关系。父子关系让父节点以某些方式影响子节点。 + +例如,假设你有节点A和节点B。 节点A是节点B的父节点。在这个例子中,节点B产生的粒子会围绕节点A的粒子生成、移动、旋转和缩放。这很难用语言来理解,所以下面播放了一段视频。 + +节点A的粒子为红色,节点B的粒子为绿色。你可以看到,粒子B围绕着粒子A旋转,而粒子A自身在移动和旋转。 + +
+ +

父子关系

+
+ +父子关系可以用来创造复杂的特效。例如,你可以让子粒子从父粒子中发射出来。在下面的例子中,父节点是正在移动的拉长的粒子,而子节点是从父粒子的尖端发出的大量雪粒子。 + +
+ +

示例

+
+ +

你可以通过下面的链接下载为本章内容预制的特效素材。

+
+

下载

+
+ +## 龙卷风特效 + +使用父子关系制作一个龙卷风特效。 + +打开文件effect1.efkefc。 + +这个特效由控制旋转的父粒子和绘制图像的子粒子组成。按顺序创建父节点和子节点。 + +### 父节点 + +父节点只需要旋转。参数已经提前设置好了。 + +
+ +

旋转

+
+ +### 子节点 + +添加一个子节点。左键单击选中父节点。然后右键单击以显示菜单。从菜单中,选择添加节点。 + +
+ +

添加节点

+
+ +左键单击选择刚添加的节点。为子节点输入参数,使粒子向上移动。 + +|窗口|参数|值| +|:----|:----|:----| +|位置|位置方法|位置・速度・加速度| +|位置|位置(平均)|x=2, y=0, z= 0| +|位置|速度(平均)|x=0, y=0.5, z= 0| + +你可以看到,子粒子跟随父粒子的旋转而移动。 + +
+ +

旋转

+
+ +此外,可以输入以下参数来改善外观。 + +|窗口|参数|值| +|:----|:----|:----| +|基础设置|名称|Child| +|基础设置|生成数量|正无穷| +|位置|位置(平均)|x=0, y=0, z= 0| +|位置|位置(振幅)|x=3, y=3, z= 3| +|基础渲染设置|纹理|Partcle1.png| +|基础渲染设置|混合方法|加法| +|渲染设置|整体颜色|随机| +|渲染设置|整体颜色(最小)|255,177,177,255| +|渲染设置|整体颜色(最大)|255,255,255,255| + +特效更好看了。 + +
+ +

完成的特效

+
+ +## 流星特效 + +使用父子关系制作一个流星特效。 + +打开effect2.efkefc。 + +在Effekseer中,父子关系可以在子粒子生成的瞬间切断。这意味着虽然子粒子是围绕着父粒子创建的,但父粒子之后的移动或旋转不会影响到子粒子。 + +你可以用这个功能制作流星特效。 + +### 父节点 + +父节点只需要移动。参数已经提前设置好了。 + +### 子节点 + +周围散射的粒子的参数已经提前设置好了。 + +但是,参数“继承位置”、“继承旋转”和“继承缩放”被设置为“始终”。“始终”表示子粒子在被创建之后将继续受到父粒子的影响。换句话说,子粒子会随着父粒子的移动而移动。 + +
+ +

始终

+
+ +在“基础设置”窗口中,将“继承位置”、“继承旋转”和“继承缩放”参数改为“仅生成时”。你会看到,当父粒子移动时,子粒子将不会跟随父粒子移动。 + +
+ +

仅生成时

+
+ +最后,你可以通过下面的链接下载本章中制作的特效。 + +
+下载 +
+ +## 总结 + +在本章中,你使用父子关系创建了复杂的效果。在下一章中,你将更改生成方法,把粒子放在圆形或直线上。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/08.md b/source/zh_CN/ToolTutorial/08.md new file mode 100644 index 0000000..bf54d14 --- /dev/null +++ b/source/zh_CN/ToolTutorial/08.md @@ -0,0 +1,183 @@ +# 08. 通过设置生成方法排列粒子! + +## 概要 + +在本章中, 你将通过修改生成方法来改变粒子的排布。 +在生成方法中,你可以设置粒子的初始分布方式。 +你可以通过节点父子关系来达到同样的效果,但改变生成方法将更简单。 + + +
+ +

本章中创建的第一个效果

+
+ +
+ +

本章中创建的第二个效果

+
+ + +
+ +

本章中创建的第三个效果

+
+  + +## 生成方法概览 + +在Effekseer中,你可以设置生成方法。 +在生成方法中,你可以设置粒子的初始分布方式。 +例如,你可以让粒子排列成一个圆环或球面。 + +
+ +

生成方法

+
+ +你不仅可以设置粒子的生成位置,还可以旋转其坐标系。 +例如,让粒子的y轴负方向指向球心,而非空间中的下方。 + +
+ + + + + + + + +
+
+ +

影响生成角度 - 未勾选

+
+
+
+ +

影响生成角度 - 勾选

+
+
+
+ +

你可以通过下面的链接下载为本章内容预制的特效素材。

+
+

下载

+
+ +## 圆形效果 + +在这一部分,你需要将粒子排布到一个圆周上。 +粒子按顺时针的顺序依次呈现。 + +你可以利用父子关系来实现这样的效果,但多少有些麻烦。 +你可以使用生成方法来更简单地实现复杂的粒子生成。 + +请打开 effect01.efkefc。 + +在默认设置下“生成方法”窗口是隐藏的。 +你需要在左上角菜单栏选择“窗口 -> 生成方法”。 +这之后,生成方法悬浮窗应当会出现在你的屏幕上。 + +
+ +

生成方法

+
+ +你可以通过拖动窗口的菜单栏来移动它。 + +你也可以通过将窗口拖动到出现的半透明方块处来将其添加到任意一个面板中。 + +```eval_rst +.. image:: ../../img/Reference/Overview/DockPanel_Panel.png + :align: center +``` + +你还可以通过拖动将窗口添加为面板的一个新的选项卡。 +(If you have a single panel of tab, drag & drop them onto the tab.) + +```eval_rst +.. image:: ../../img/Reference/Overview/DockPanel_Tab.png + :align: center +``` + +在“生成方法”窗口, 选择“圆形”作为生成方法, +在半径处输入4。 + +可以看到,粒子现在以圆形排列。 + + +
+ +

粒子随机生成在圆上

+
+ +粒子现在随机生成在圆上,而不是按顺序出现。 +将 ```生成模式``` 从 ```随机``` 修改为 ```顺时针``` 来使其按顺序生成。 +除此之外, 将 ```顶点数``` 和 ```生成数量```(译者注:基础设置选项卡) 修改为 12。 +这表示12个粒子将按顺序均匀分布在圆周上。 + +你可以看到粒子平均地分布在一个圆周上, +并且粒子在随时间依次生成。 + +
+ +

制作完成的特效

+
+ +## 球面效果 + +在这一部分,我们将让粒子生成在一个球面上。 + +请打开 effect02.efkefc。 + +类似于圆,你可以让粒子排列在球面上。 + +在“生成方法”窗口中,将生成方法修改为“球”。 +在半径处输入4。 +此外, 为了让粒子在整个球面上生成, 在 ```X轴旋转``` 和 ```Y轴旋转``` 的振幅处输入360。 + +可以看到粒子现在在整个球面上生成了。 + +
+ +

创建的效果

+
+ +### 设置角度 + +尝试让球面上生成的粒子向外运动。 + +请打开 effect03.efkefc。 + +播放特效,可以看到粒子在球面上生成后,均向上运动。 + +
+ +

向上运动的粒子

+
+ +但事实上,当粒子在球面上生成时,我们往往希望它能够向外爆发或向内汇聚。 +这种情况, 请勾选 ```影响生成角度```。 +当这一项被勾选时,粒子的坐标系在其生成时将被旋转,y轴负方向将指向球心。 + +这样,设置为向上运动的粒子,其运动将变为向球面外运动。 + +设置完成后,你应当可以看到粒子在向球面外运动了。 + + +
+ +

创建的效果

+
+ +最后,你可以通过下面的链接下载本章中制作的效果。 + +
+下载 +
+ +## 总结 + +本章节中, 你通过改变粒子的生成方法改变了粒子的排布。 +在下一章节,你将综合运用至今所学的知识来创建粒子效果。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/09.md b/source/zh_CN/ToolTutorial/09.md new file mode 100644 index 0000000..71758f0 --- /dev/null +++ b/source/zh_CN/ToolTutorial/09.md @@ -0,0 +1,227 @@ +# 09.制作枪口焰! + +## 概要 + +在这一章中,你将使用到目前为止学到的知识来制作枪口焰特效。枪口焰是指开枪时在枪口处出现的火光。在有射击要素的游戏中,枪口焰是必不可少的。 + +
+ +

枪口焰

+
+ +## 枪口焰 + +分析一下枪口焰的结构。本章中制作的枪口焰由三个主要部分组成。分布是闪光、火花和烟雾。 + +
+ + + + + + + + + + +
+
+ +

闪光

+
+
+
+ +

火花

+
+
+
+ +

烟雾

+
+
+
+ +在制作复杂的特效时,必须分别考虑每个部分。本章解释了如何制作每个部分。 + +你可以通过下面的链接下载为本章内容预制的特效素材。 + +
+下载 +
+ +### 闪光 + +闪光由三种不同的精灵表示。在本章中,Z是子弹移动的方向。两种闪光在XY方向传播,一种在所有方向传播。 + +在XY方向传播的闪光由```放置方法```设置为```固定```的精灵表示。为了丰富表现效果,我们准备了两种类型的精灵:一种是扩大并消失的,一种是缩小并消失的。两者都只显示一瞬间,所以它们应该在大约20帧后消失。 + +还有一个向各个方向扩散的精灵,它应该膨胀并消失。 + +各自使用的图像和粒子如下。 + +前几章中介绍的参数,如```淡入```、```淡出```和```整体颜色```,也进行了设置。 + +由于要更改的参数很多,它们已经提前设置好了。 + +
+ + + + + + + + + + +
+
+ +

闪光1

+
+
+
+ +

闪光2

+
+
+
+ +

闪光3

+
+
+
+ +
+ + + + + + + + + + +
+
+ +

闪光1

+
+
+
+ +

闪光2

+
+
+
+ +

闪光3

+
+
+
+ +闪光特效如下所示。 + +
+ +

闪光

+
+ +### 火花 + +火花是用多个圆形图像的精灵表示的。然而,火花的飞行方向是用父子关系设置的。 + +火花是沿着以Z方向为轴线的圆形排列的。为了将其排列为圆形,设置```圆```作为父节点的```生成方法```。勾选```影响生成角度```,使火花指向圆的外侧。 + +这样,当子粒子沿相对于父节点的Y轴方向移动时,它们实际会向圆的外侧移动。 + +
+ +

生成方法和父子关系

+
+ +此外,将父节点围绕Z轴旋转。这样,当子粒子向Y方向移动时,它将面对子弹移动的方向。 + +
+ +

生成方法和父子关系

+
+ +子粒子的形状在开始时应该比较长,在结束时应该比较短。这种行为是通过移动和缩放的缓动来实现的。 + +子粒子的行为已经在前面的章节中解释过了,因此例子中已经预先设置好了。 + +父节点的参数如下。 + +|窗口|参数|值| +|:----|:----|:----| +|基础设置|名称|SparkEmitter| +|基础设置|生成数量|16| +|基础设置|生命周期|30| +|基础设置|生成速率|0.01| +|旋转|旋转方法|角度・速度・加速度| +|旋转|角度(平均)|x=55, y=0, z=0| +|旋转|角度(振幅)|x=10, y=0, z=0| +|生成方法|影响生成角度|勾选| +|生成方法|生成方法|圆| +|生成方法|顶点数|32| +|生成方法|半径(平均)|0.5| +|渲染设置||无| + +火花特效如下所示。 + +
+ +

火花

+
+ +### 烟雾 + +烟雾是用多个显示烟雾图像的精灵表示的。 + +烟雾应该沿Z轴方向移动,但略微向上。 + +烟雾图像由四个动画图像组成。通过按照一定时间间隔切换图像,使烟雾看起来像在变化。为了使图像切换,将```UV```设置为```动画```。 + +
+ +

烟雾图像

+
+ +烟雾的行为也是在例子中预设的,UV除外。另外,```可见性```被禁用了。在编辑时开启```可见性```。UV参数如下。 + +|窗口|参数|值| +|:----|:----|:----| +|基础渲染设置|UV|动画| +|基础渲染设置|尺寸|256,256| +|基础渲染设置|一张图持续的时间|10| +|基础渲染设置|X方向图像数量|2| +|基础渲染设置|Y方向图像数量|2| + +烟雾特效如下所示。 + +
+ +

烟雾

+
+ +### 整合 + +同时显示三个部分。一个枪口焰的特效就制作完成了。 + +
+ +

枪口焰

+
+ +最后,你可以通过下面的链接下载本章中制作的特效。 + +
+下载 +
+ +## 总结 + +在这一章中,我们制作了可以在游戏中实际使用的特效。 diff --git a/source/zh_CN/ToolTutorial/10.md b/source/zh_CN/ToolTutorial/10.md new file mode 100644 index 0000000..3e185c8 --- /dev/null +++ b/source/zh_CN/ToolTutorial/10.md @@ -0,0 +1,231 @@ +# 10.丝带和轨迹 + +## 概要 + +本章将介绍丝带和轨迹。丝带和轨迹是狭长的粒子。它们可以表现精灵无法表现的余辉效果。 + +
+ +

轨迹

+
+ +
+ +

丝带

+
+ +

丝带和轨迹

+ +丝带和轨迹的主要区别在于粒子的方向。丝带受粒子角度的影响,而轨迹则总是面对摄像机的方向。 + +
+ +

本章制作的特效1

+
+ +
+ +

本章制作的特效2

+
+ + +
+ +

本章制作的特效3

+
+ + +你可以通过下面的链接下载为本章内容预制的特效素材。 + +
+下载 +
+ +## 使用方法 + +丝带和轨迹连接了从同一父节点生成的粒子。通过互相连接来表示狭长的形状。 + +
+ +

轨迹

+
+ +在正常的精灵中,粒子是相互独立的。 + +只要粒子之间有距离,就可以使用丝带和轨迹,但必须与父子关系或生成方法相结合才有效。 + +### 父子关系 + +设置参数使父粒子移动。设置子粒子以固定的时间间隔从父粒子中生成。设置子粒子保持在它们生成的位置。 + +这将沿着父粒子产生一个粒子带。 + +让我们试试吧。 + +创建一个特效,让带子螺旋移动。 + +打开文件effect1-1.efkefc。 + +父节点已经被设置好了。父粒子在旋转的同时上升。 + +
+ +

父粒子

+
+ +子节点的一些参数已经预先设置好了。 + +需要注意的是,继承位置、继承旋转和继承缩放需要设置为```仅生成时```。这样粒子只有在生成时才会受到父节点的参数影响。 + +此外,还必须生成多个子粒子。由于轨迹是通过子粒子之间的连接产生的,所以轨迹的长度由子粒子的数量决定。 + +设置子节点的参数。 + +Particle节点是装饰性的,所以不需要编辑Particle节点。 + +|窗口|参数|值| +|:----|:----|:----| +|基础设置|生成数量|正无穷| +|基础设置|生命周期|60| +|基础设置|继承位置|仅生成时| +|基础设置|继承旋转|仅生成时| +|基础设置|继承缩放|仅生成时| +|渲染设置|渲染方法|轨迹| + +你可以看到,子粒子是沿着父粒子的轨迹放置的。 + +
+ +

特效

+
+ +### 生成方法 + +通过```生成方法```,无需使用父子关系就可以生成漂亮的轨迹和丝带粒子。生成方法允许你按顺序放置粒子,所以轨迹和丝带是按照生成方法中设置的顺序生成的。 + +让我们来试试。 + +制作一个同样是螺旋移动的特效。 + +打开文件effect1-2.efkefc。 + +大部分的参数已经预先设置好了。 + +设置```生成方法```的参数。 + +节点参数如下。 + +|窗口|参数|值| +|:----|:----|:----| +|基础设置|生成数量|正无穷| +|基础设置|生命周期|60| +|基础设置|继承位置|仅生成时| +|基础设置|继承旋转|仅生成时| +|基础设置|继承缩放|仅生成时| +|渲染设置|渲染方法|轨迹| +|生成方法|影响生成角度|勾选| +|生成方法|生成方法|圆| +|生成方法|轴方向|Y轴| +|生成方法|顶点数|32| +|生成方法|半径(平均)|4| +|生成方法|生成模式|顺时针| + +
+ +

特效

+
+ +可以看出,轨迹是按照```生成方法```中设置的放置顺序生成的。 + +## 丝带与轨迹的区别 + +为了观察丝带和轨迹的区别,可以用相同的参数设置丝带和轨迹。 + +
+ + + + + + + + + +
+
+ +

轨迹

+
+
+
+ +

丝带

+
+
+ +
+ +丝带受到粒子旋转的影响,所以其方向是倾斜的。 + +总的来说,轨迹更方便,但需要旋转时,例如在剑的轨迹中,就需要使用丝带。 + +## 剑的特效 + +武器的轨迹之类的效果不能用轨迹表示。接下来我们会用丝带制作一个表示剑的轨迹的特效。 + +打开文件effect2.efkefc。 + +它由一个父节点、一个子节点和一个击中效果节点组成。 + +父节点在旋转,子节点沿着它移动以表示剑。下面是一个简单的视频演示。红色是父节点的粒子,绿色是子节点的粒子。 + +
+ +
+ +### 父节点 + +父节点的参数已经预先设置好了。 + +父节点进行旋转。剑的移动有一个短暂的时间,所以将```生命周期```设置为30。 + +剑在生成时角度为0度,结束时旋转到180度。因此,在旋转窗口中,将旋转方法设置为0度到180度的缓动。 + +
+ +
+ +### 子节点 + +设置子节点的参数。 + +像之前一样,将继承位置、继承旋转和继承缩放设置为```仅生成时```。设置绘图方法为丝带。设置位置为(4,0,0),生成数量为30。 + +图像和颜色已经预先设置好了。 + +|窗口|参数|值| +|:----|:----|:----| +|基础设置|生成数量|30| +|基础设置|继承位置|仅生成时| +|基础设置|继承旋转|仅生成时| +|基础设置|继承缩放|仅生成时| +|位置|位置|4, 0, 0| +|缩放|缩放比率|6, 6, 6| +|渲染设置|渲染方法|丝带| + +剑的轨迹的特效就制作完成了。 + +
+ +

特效

+
+ +最后,你可以通过下面的链接下载本章中制作的特效。 + +
+下载 +
+ +## 总结 + +这一章介绍了轨迹和丝带。 diff --git a/source/zh_CN/ToolTutorial/11.md b/source/zh_CN/ToolTutorial/11.md new file mode 100644 index 0000000..6d400ef --- /dev/null +++ b/source/zh_CN/ToolTutorial/11.md @@ -0,0 +1,167 @@ +# 11. 使用3D模型!! + +## 概要 + +本章中,我们将使用3D模型制作特效。在Effekseer中,3D模型可以作为粒子显示,或作为生成方法的生成位置。我们将使用这些功能来制作特效。 + +
+ +

本章制作的特效1

+
+ +
+ +

本章制作的特效2

+
+  + +## 3D模型 + +Effekseer可以读取fbx或mqo格式的3D模型。fbx是一种可以从各种3D模型软件输出的格式,如Blender、Maya和3ds Max。mqo是一种可以从水杉(Metasequoia)输出的格式。 + +支持fbx动画。 + +有两种方法可以使用3D模型。 + +第一种是将3D模型显示为粒子。 + +
+ +

模型

+
+ +第二种方法是将3D模型设置为```生成方法```的生成位置。 + +
+ +

生成方法

+
+ +本章将解释如何使用这两种方法。 + +

你可以通过下面的链接下载为本章内容预制的特效素材。

+
+

下载

+
+ +## 将3D模型显示为粒子 + +接下来将模型显示为粒子。 + +打开effect1.efkefc。 + +和```精灵```一样,在```渲染设置```面板中选择```模型```绘图方法。 + +然后加载模型Model/Sphere.mqo。 + +画面将显示你加载的3D模型。 + +对于不透明的物体来说没有什么问题,但有时你想让它们发光。 + +在这种情况下,在```基础渲染设置```面板中将材质设置为```照明```。 + +|窗口|参数|值| +|:----|:----|:----| +|渲染设置|渲染方法|模型| +|渲染设置|模型|Model/Sphere.mqo| +|渲染设置|剔除|双面可见| +|基础渲染设置|材质|照明| + +
+ +

模型

+
+ +有时你希望用模型的形状显示特效。 + +让我们设置图像并将UV设置为滚动。 + +参数如下。 + +|窗口|参数|值| +|:----|:----|:----| +|渲染设置|渲染方法|模型| +|渲染设置|模型|Model/Sphere.mqo| +|渲染设置|剔除|双面可见| +|基础渲染设置|材质|照明| +|基础渲染设置|混合方法|加法| +|基础渲染设置|纹理|Texture/Aurora.png| +|基础渲染设置|UV|滚动| +|基础渲染设置|尺寸(平均)|1024,1024| +|基础渲染设置|滚动速度(平均)|0,-8| + +然后你会看到特效沿着模型的形状流动。 + +
+ +
+ +有时有些模型可能有深度的渲染问题。为了解决这个问题,把```深度写入```打开。不仅是Effekseer,3D渲染都会有一种判断前后关系的方法。如果关闭```深度写入```,3D模型就不会影响到其他物体的渲染。看起来就会很奇怪。 + +当```深度写入```开启时,深度会正确显示。 + +
+ + + + + + + +
+
+ +

深度写入:关闭

+
+
+
+ +

深度写入:开启

+
+
+
+ +## 用3D模型设置生成方法的位置 + +模型除了用于直接显示外,还可以用于设置生成方法的位置。 + +你可以在模型的顶点或面生成粒子。 + +试一试吧。 + +打开effect2.efkefc。 + +将生成方法设置为模型。 然后加载模型Model/Sphere.mqo。为了看起来更为清晰,将```生成模式```设置为顶点。 + +将粒子的纹理设置为Particle.png。增大```生成数量```。 + +参数如下。 + +|窗口|参数|值| +|:----|:----|:----| +|基础设置|生成数量|90| +|生成方法|生成方法|模型| +|生成方法|模型|Model/Sphere.mqo| +|生成方法|生成模式|顶点| + +你会看到粒子沿着模型生成。 + +
+ +
+ +它也可以与丝带和轨迹组合使用。在这种情况下,丝带和轨迹将沿着模型的顶点生成。 + +
+ +
+ +最后,你可以通过下面的链接下载本章中制作的特效。 + +
+下载 +
+ +## 总结 + +在这一章中,我们使用3D模型制作特效。在下一章中,我们将使用F曲线实现复杂的运动。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/12.md b/source/zh_CN/ToolTutorial/12.md new file mode 100644 index 0000000..5df5c5b --- /dev/null +++ b/source/zh_CN/ToolTutorial/12.md @@ -0,0 +1,121 @@ +# 12. 用F曲线表示复杂的运动 + +## 概要 + +在本章中,我们使用F曲线来表示复杂的运动。我们在过去已经介绍了各种运动方式。很多情况下,这些方法就足够了。然而,有时这还不够。因此,你可以使用F曲线让它们自由变化到你需要的任何数值。 + +
+ +

本章制作的特效

+
+ +但是,本章将不制作具体的特效。上图中的特效可以用本章和之前的章节中讲解的知识制作。 + +## F曲线 + +在Effekseer中,可以通过设置F曲线来控制一些参数,例如位置、角度、缩放、颜色等。 + +让我们打开F曲线窗口。 + +从窗口菜单中选择F曲线。 然后会出现编辑F曲线的窗口。 + +
+ +
+ +但是,并没有显示要编辑的F曲线。 + +在```位置```窗口中选择F曲线。 + +然后,F曲线的窗口的左侧就会显示一个可编辑的F曲线的标签。 + +左键单击标签,F曲线就会显示出来。 + +
+ +
+ +要向F曲线添加控制点,请双击F曲线。让我们添加两个控制点。 + +
+ +
+ +控制点可以通过左键单击来选择,并通过拖动控制点来移动。试着移动控制点,使其数值发生变化。 + +
+ +
+ +如果你播放特效,你会看到粒子是按照F曲线来移动的。 + +
+ +
+ +曲线可以自由控制。选择一个控制点,点击左上角的```展开锚点```。然后你会看到用于控制曲线的锚点。移动锚点来改变曲线。 + +
+ +
+ +
+ +
+ +如果选择相邻的```收缩锚点```,会导致数值突然变化。 + +
+ +
+ +要删除一个控制点,请双击它或按Delete键。 + +你可以将这些方法组合起来表示复杂的运动。 + +除了位置之外,也可以控制角度和颜色。 + +### 采样 + +Effekseer实际上使用了F曲线的近似值。因此,它可能无法应对数值的突然变化。在这种情况下,降低```采样```。这将使您能够应对数值的突然变化。 + +### 有用的操作 + +#### 多选 + +通过Shift和左键点击F曲线标签,可以同时编辑多条F曲线。 + +也可以通过Shift和左键点击选择多个控制点。也可以同时移动多个控制点。 + +
+ +
+ +#### 全部显示 + +双击F曲线的标签可以显示F曲线的整体。 + +
+ +
+ +#### 关于时间线(1.5之后) + +从Effekseer 1.5开始,可以选择时间线模式。你可以将其设置为特效的生命周期的百分比或直接设置为时间。更多信息请看参考。 + +你可以利用这些知识来制作复杂的特效。 + +
+ +

特效

+
+ +最后,你可以通过下面的链接下载本章中制作的特效。 + +
+下载 +
+ +## 总结 + +本章解释了F曲线,你可以用它制作复杂的特效。 diff --git a/source/zh_CN/ToolTutorial/13.md b/source/zh_CN/ToolTutorial/13.md new file mode 100644 index 0000000..ccc920c --- /dev/null +++ b/source/zh_CN/ToolTutorial/13.md @@ -0,0 +1,162 @@ +# 13. 扭曲背景! + +## 概要 + +本章介绍如何在Effekseer中扭曲背景。在现代游戏中,有一些特效可以使背景变形。在Effekseer中,你也可以通过设置参数用特效扭曲背景。 + +
+ + + + + + + +
+
+ +

本章制作的特效1

+
+
+
+ +

本章制作的特效2

+
+
+
+ +

你可以通过下面的链接下载为本章内容预制的特效素材。

+
+

下载

+
+ +## 使用方法 + +要使背景扭曲,需要一张扭曲贴图。该图像描述关于扭曲的信息,而不是颜色信息。 + +扭曲贴图几乎与正常图像相同。红色代表左-右方向的扭曲强度:以127为中心,0向左扭曲,255向右扭曲。绿色代表垂直方向上的扭曲强度:以127为中心,0向上扭曲,255向下扭曲。蓝色不被读取。 + +
+ +

扭曲贴图

+
+ +请打开effect1.efkefc。 + +在```基础渲染设置```面板中,将Distortion节点的纹理设置为Texture/Distortion.png。并将材质设置为扭曲(背景)。 + +建议在```环境```面板中设置背景图片,这样更容易看明白。 + +
+ +

Distorted background

+
+ +## 扭曲强度 + +在```基础渲染设置```面板中设置扭曲强度。 + +如果你修改```基础渲染设置```面板中```扭曲强度```的值,扭曲效果会发生变化。 +值越大,扭曲越强。 +值越接近0,扭曲越弱。 + +
+ + + + + + + +
+
+ +

扭曲强度:1

+
+
+
+ +

扭曲强度:3

+
+
+
+ +## 绘制优先级 + +基本上,只能扭曲背景,不能扭曲自己的特效。然而,你可能想扭曲自己的特效。在这种情况下,你可以在```深度```面板中改变绘制优先级。 + +绘制优先级决定了节点之间的绘制顺序。 通常情况下,一个节点在节点树中的位置越低,它就越晚被绘制,但如果绘制优先级不同,绘制优先级高的节点就会更晚被绘制。 + +绘制优先级为-1或更低的节点将被绘制优先级为0或更高的节点扭曲。 + +改变粒子节点的绘制优先级,你会看到粒子节点的粒子被扭曲节点扭曲。 + +
+ + + + + + + +
+
+ +

绘制优先级:0

+
+
+
+ +

绘制优先级:-1

+
+
+
+ +## 用例 + +扭曲也可以和环与UV滚动配合使用。通过结合环和UV滚动,可以轻松出径向扭曲的效果。 + +这个特效是一个结合环和UV滚动的例子。左边的图像应用于调整了参数的环。中间的图像是在没有扭曲的情况下应用左边的图像的结果。右边的图片是使用了扭曲与UV滚动的效果。白色颗粒向各个方向散射。 + +
+ + + + + + + + + + +
+
+ +

扭曲贴图

+
+
+
+ +

未被扭曲的特效

+
+
+
+ +

特效

+
+
+
+ +## 注意 + +如果你在其他游戏引擎中播放特效,看起来可能会不一样。 + +最后,你可以通过下面的链接下载本章中制作的特效。 + +
+下载 +
+ +## 总结 + +本章介绍了扭曲。用得好的情况下,效果会更好。我们鼓励你做出尝试。 diff --git a/source/zh_CN/ToolTutorial/14.md b/source/zh_CN/ToolTutorial/14.md new file mode 100644 index 0000000..af64005 --- /dev/null +++ b/source/zh_CN/ToolTutorial/14.md @@ -0,0 +1,91 @@ +# 14. 设置细节层级(LOD) + +## 概要 + +细节层级(LOD)使艺术家们能够根据到相机的距离有效利用系统资源和屏幕空间。 + +```eval_rst +.. image:: ../../img/Reference/lods_Effect.png + :align: center +``` + +本章我们将验证示例文件`Aura01.efkefc`。可以在此处下载。 + +```eval_rst +.. image:: ../../img/Reference/lods_NodeList.png + :align: center +``` + +在这个特效中,你可以看到一个叫做`Particle`的节点。它生成了从龙卷风的底部飞向顶部的小颗粒。当相机靠近特效时,你能看到这些粒子,它们为特效增加了很棒的细节。 + +```eval_rst +.. image:: ../../img/Reference/lods_ParticleInViewer.png + :align: center +``` + +然而,如果摄像机离得很远,它们就会很小,几乎看不到,但仍然需要在每一帧中进行计算和处理。这是细节层级(LOD)的一个很好的例子,因为可以根据距离来简化特效。如果一个特效节点离视窗很远,它可以被隐藏或完全关闭。 + +## 层级设置 + +让我们设置要使用的层级。打开`窗口 > 细节层级(LOD)`。 + +```eval_rst +.. image:: ../../img/Reference/lods_Panel.png + :align: center +``` + +这个面板设置了有效的细节层级和每个层级的距离。0级是基本层级,它总是从距离0开始,当没有其他级别可供选择时就会使用。一个特效中最多可以使用四个层级。 + +让我们启用层级1。 默认情况下,最小距离被设置为16,在这个例子中使用默认值就很好。你可以自由设置一个层级的最小距离,但值必须在上一个层级和下一个层级之间。 + +```eval_rst +.. image:: ../../img/Reference/lods_Panel2.png + :align: center +``` + +在编辑器中使用鼠标滚轮来改变摄像机的位置。如果与特效的距离大于16,你会看到播放器右下角的`Current LOD`变为1。 + +## 设置粒子节点 + + +```eval_rst +.. image:: ../../img/Reference/lods_NodeTreeSelectors.png + :align: center +``` + +你会注意到,在启用第二个层级后,节点层级结构中的每个颜色按钮都显示为两行,每个层级一行。它显示了每个特效节点启用的层级。点击这个按钮可以更改每个节点选择的层级。 + +点击`Particle`节点附近的这个按钮。 + +```eval_rst +.. image:: ../../img/Reference/lods_NodeConfiguration.png + :align: center +``` + +在这里,你可以选择你希望这个节点在哪一层级被启用并正常运行。默认情况下,每个节点在所有层级上都是启用的,但是我们想在层级1上禁用`Particle`节点,所以我们取消选中该层级。 + +在选择层级的下方,你可以改变当前LOD未被选中时节点的行为。有三种不同的行为可供选择: + + - 隐藏粒子 - 粒子将继续生成并更新,但不再被渲染。这可以减少GPU的使用,但是在更新时仍然会消耗CPU资源。 + - 停止生成新粒子 - 已经生成的粒子将继续更新和渲染,但新的粒子将不会生成。这可以确保粒子不会突然被隐藏起来,直到它们的生命周期结束前仍然可见,从而使层级之间的过渡更加平滑。 + - 停止生成新粒子并隐藏现存的粒子 - 结合了之前的两种行为。不会生成新粒子,已经生成的粒子将被隐藏。但是,请注意,已经生成的粒子将继续被更新,直到它们被销毁。 + +默认选项是`隐藏粒子`。 +我们选择`停止生成新粒子并隐藏现存的粒子`,它适合这个例子。 + +## 检查结果 + +查看视窗右下角的统计数据以检查设置。 + + - Current LOD: 当前有效的细节层级 + - D:当前渲染中的Draw call次数。 + - V:当前渲染中的顶点数量。 + - P:当前渲染中的粒子数。 + +如果一切操作正确,那么在层级0时,你应该看到大约115个粒子。然后,如果你让摄像机远离特效,到层级1的距离,你会看到粒子的数量逐渐减少到大约15个。 + +## 总结 + +本章介绍了如何设置细节层级,以及如何配置特效节点,使其根据当前的细节层级改变行为。建议在特效制作过程的最后一步设置细节层级。 + +细节层级是非常通用的,可以用许多不同的方式来设置。通过为每个层级创建一个单独的根节点,你甚至可以完全替换一定距离下的特效。优化特效的过程可能很棘手,但有时它就是勉强运行在30帧的游戏与稳定运行在60帧的游戏的区别。 diff --git a/source/zh_CN/ToolTutorial/15.md b/source/zh_CN/ToolTutorial/15.md new file mode 100644 index 0000000..a0b6cc7 --- /dev/null +++ b/source/zh_CN/ToolTutorial/15.md @@ -0,0 +1,105 @@ +# 15.通过触发器改变特效! + +## 概要 + +本章介绍Effekseer中的触发器功能。触发器允许你在播放过程中改变特效。 + +如下例所示,你可以触发一个充能的武器的发射特效。 + + + +双击发送触发器信号。 + +## 触发器功能 + +触发器是一种机制,允许向当前播放的特效发送多达四种触发信号。被触发的特效可以根据节点中设置的参数改变其行为。 + +### 触发器设置 + +触发器引起的行为变化在[基础设置](../ToolReference/common.md)中设置。 + +
+ +

基础设置面板中的触发器设置

+
+ +### 在编辑器中发送触发信号 +触发信号可以在控制面板发送。 + +
+ +

用于发送触发信号的按钮

+
+ +### 在游戏中发送触发信号 +SDK和游戏引擎的插件中有发送触发信号的API。 + +## 示例特效 +本章使用示例文件`TriggerLaser.efkefc`进行讲解。 + +
+

下载

+
+ +
+ +

本章制作的特效的节点设置

+
+ +特效播放时,会执行以下行为。 +- `Charge`节点的粒子被生成,子节点粒子随之生成。 +- `Laser`节点的粒子不被生成。 + +当触发信号0被发送给特效时,会执行以下行为。 +- `Charge`节点的粒子被删除,子节点的粒子随之停止生成 +- `Laser`节点的粒子开始生成,子节点的粒子随之生成 + +### 触发时删除粒子的节点 + +
+ +

Charge节点的触发器设置

+
+ +### 触发时开始生成粒子的节点 + +
+ +

Laser节点的触发器设置

+
+ +## 提示 + +被触发器删除的粒子可能会瞬间消失,这可能是不自然的。在这种情况下,你可以设置`删除后淡出`,使它们通过淡出而自然消失。 + +
+ +

淡出行为

+
+ +设置了`在生命周期内淡出`时,粒子会在生命周期结束被删除时淡出,但不会随着被触发器删除而淡出。在以下两个例子中,粒子都是由触发器删除的,但淡出行为是不同的。 + +
+ + + + + + + +
+
+ +

在生命周期内淡出

+
+
+
+ +

在销毁后淡出

+
+
+
+ +## 总结 + +本章解释了如何使用触发器。利用触发器可以制作可交互的特效。 diff --git a/source/zh_CN/ToolTutorial/index.rst b/source/zh_CN/ToolTutorial/index.rst new file mode 100644 index 0000000..28f961d --- /dev/null +++ b/source/zh_CN/ToolTutorial/index.rst @@ -0,0 +1,35 @@ +========================================= +教程 +========================================= + +基础 +======================== + +.. toctree:: + :maxdepth: 1 + + 01 + 02 + 03 + 04 + 05 + 06 + 07 + 08 + 09 + 10 + 11 + 12 + 13 + 14 + 15 + +材质 +======================== + +.. toctree:: + :maxdepth: 1 + + material_01 + material_02 + material_03 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/material_01.md b/source/zh_CN/ToolTutorial/material_01.md new file mode 100644 index 0000000..522159f --- /dev/null +++ b/source/zh_CN/ToolTutorial/material_01.md @@ -0,0 +1,231 @@ +# 01. 材质入门 + +## 概要 + +迄今为止,只能通过设置图像和参数进行简单的渲染。然而,这无法实现复杂的渲染,例如扭曲图像本身或添加某些区域。 + +为了实现这些复杂的渲染任务,Effekseer可以使用材质。材质可以用来设置粒子的绘制方式。材质可以在材质编辑器中制作。 + +让我们创建一个材质,实现复杂的渲染。 + +
+ +

本章制作的特效

+
+ +请使用下面的链接下载预制的文件。 + +下载 + +打开后,你会看到界面中渲染出一个简单球体的模型。 + +
+ +
+ +要创建一个材质,在`基础渲染设置`面板中把`材质`改为`文件`。 + +
+ +
+ +点击生成按钮。 然后会显示一个生成新材质的对话框。当你完成了材质的保存,材质编辑器就会启动。 + +最初,只有一个`输出`节点。连接到这个`输出`节点的值将被绘制在粒子上。 + +
+ +
+ +在材质编辑器中,这些节点被连接在一起,以设置渲染结果的计算方法。计算的结果显示为一个粒子。一开始可能看起来很困难,但让我们一点一点地编辑吧。 + +最简单的设置是将`常量3`节点连接到`输出`节点上。 + +按右键添加一个`常量3`节点。 + +
+ +
+ +将`常量3`节点连接倒`输出`节点的`Emissive`上。 + +
+ +
+ +然后左键点击`常量`3节点,在屏幕左边的输入栏中输入数值。 + +
+ +
+ +然后,你会看到球体的颜色会根据其数值而变化。 + +
+ +
+ +在添加`常量`3的节点时,你是否看到有`常量1-4`的节点?有几种类型的值可以在节点之间传输。 + +通常是一种由1到4个数组成的值,如数值1到数值4。也可以是图像。 + +## 绘制一张图片 + +可以使用`采样图像`绘制图像。 + +右键添加一个`采样图像`节点。 + +
+ +
+ +在屏幕左侧的输入栏设置图像。 +这次选择准备好的`Textures/Grid01.png`。 + +连接`采样图像`节点的RGB连接桩,替代`常量3`节点。 + +
+ +
+ +
+ +
+ +现在图像被显示出来了,但是透明区域并不透明。 + +所以我们将`采样图像`的`A`连接到`输出`节点的`Opacity`。这样就把图像的透明度与材质的透明度连接起来了。 + +
+ +
+ +然后,图像就被绘制出来了。 + +
+ +
+ +## 改变图像的显示区域 + +到目前为止,这种行为与简单地在模型上显示图像是一样的。然而,材质可以用来创建各种表现方式。作为准备,改变UV坐标的位置。 + +`采样图像`节点的UV是一个用于设置像素在图像中的位置的值。现在让我们来替换这个UV。 + +添加一个`UV`节点。 + +
+ +
+ +然后,将UV连接倒`采样图像`节点。 + +
+ +
+ +没有任何变化。这是因为,`UV`节点输出的是模型或粒子原本的UV值。 + +让我们改变UV值并移动图像的显示区域。 + +添加一个`加`节点和一个`常量2`节点。然后将`常量2`节点和`UV`节点连接倒`加`节点。两者都可以连接,因为它们的类型都是数值2。 + +
+ +
+ +然后改变`常量2`节点的值。 然后你会看到显示位置被移动了。 + +
+ +
+ +
+ +
+ +## 扭曲图像 + +前面我们只是移动了图像的显示区域,现在让我们来扭曲图像。 + +我们将用一个图像取代我们先前使用的`常量2`节点。图像选择预先准备好的`Textures/Distortion01.png`。 + +添加一个`采样图像`节点并设置图像。 + +
+ +
+ +因为图像的类型是数值3,使用`遮罩元素`节点。 + +`遮罩元素`节点从一个元素中抽取出一部分。这里我们使用前两个值,所以选择R和G。 + +
+ +
+ +然后,将`遮罩元素`节点连接倒`加`节点。 + +
+ +
+ +出现了很强的扭曲,但我不希望它像这样扭曲。 + +
+ +
+ +用一个`乘`节点来使其变小。添加一个乘法节点。 + +然后将一个`遮罩元素`节点连接到`乘`节点上。减少`乘`节点的值。 + +
+ +
+ +这样扭曲的程度就很合适了。 + + + +## 移动扭曲 + +因为静止下来很无趣,让我们移动变形。添加一个`移动UV`节点。`移动UV`节点输出随时间移动的UV值。把它连接到`采样图像`节点上。稍微改变一下参数。 + +
+ +
+ +可以看到扭曲在移动。 + + + +## 颜色 + +最后,给它上色。 + +添加一个`乘`节点。 + +将输出图像的`采样图像`和你添加的第一个`常量3`节点连接到`乘`节点。 + +然后把它连接到Emmissive上。 + +
+ +
+ +颜色乘到一起,所以图像被上色了。 + + + +最后,你可以通过下面的链接下载本章中制作的特效。 + +下载 + +## 例子 + +我们已经向你展示了材质的例子,但我们可以制作不同的材质。在Effeksseer的示例中有许多材质,你可以看一下它们。 + +## 总结 + +本章介绍了材质基础。材质的使用极大地扩展了表现的范围。 \ No newline at end of file diff --git a/source/zh_CN/ToolTutorial/material_02.md b/source/zh_CN/ToolTutorial/material_02.md new file mode 100644 index 0000000..6910d60 --- /dev/null +++ b/source/zh_CN/ToolTutorial/material_02.md @@ -0,0 +1,221 @@ +# 02. 用材质表现卡通风格火焰。 + +## 概要 + +在这一章中,我们用材质表现卡通风格的火焰。你可以用材质实现原本很难实现的表现。 + +
+ +

本章制作的特效

+
+ +## 制作 + +本章使用了各种图像和3D模型。你可以用你熟悉的软件制作类似的材质素材。 + +准备这些数据是很耗时的,所以我们准备了预制的材质素材。我也会稍微解释一下如何制作它们,但如果你不能或不想制作这些素材,可以使用我们准备好的。 + +创建这些数据是很耗时的,所以我们在这里准备了我们已经创建的材料数据。我们也会稍微解释一下如何创建它们,但是如果你无法创建材料或者觉得创建材料很繁琐,请使用这些材料。 + +下载 + +模型和材质都已经设置好了。关于创建新材质和基本用法,请参见前一章。 + +首先,显示一张带有滚动的云层图案的灰色图像。 + +添加一个`采样图像`节点,图像选择`Textures/Noise1.png`。它的作用仅仅是显示图片。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Grad_En.png + :align: center +``` + +添加一个`移动UV`节点来移动它。然后把它连接到`采样图像`节点。移动UV节点的速度输入(0.0, 0.4)。 + +现在图像将垂直移动。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Noise_Moving_En.png + :align: center +``` + +然而,现在的云层图案太粗糙了,需要加以完善。将一个`乘`节点连接到`采样图像`节点的UV上。乘法的输入是`移动UV`节点的输出和`(4.0, 1.0)`。 + +原本图像水平方向UV坐标中的1将变成4。这意味着之前水平方向显示一张图像的范围内将会显示4张图像。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Noise_Enlarge_En.png + :align: center +``` + +就像现在这样,它看起来根本就不像一个火焰。添加扭曲来使运动复杂化。 + +添加一个`采样图像`节点,选择扭曲贴图`Textures/Normal1.png`。 + +添加一个`遮罩元素`节点并选择RG。然后添加一个`减`节点并减去0.5。扭曲贴图中的红色和绿色表示上下和左右方向的扭曲,0.5表示0。因此,减去中间值0.5。 + +此外,乘以0.5来调整扭曲的强度。 + +然后把扭曲值加到UV上。 + +这样,图像就被扭曲了。它可能看起来有点像火焰。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Noise_Distort_En.png + :align: center +``` + +火焰在顶部较暗,在底部较亮。为了实现这一点,可以加上或乘一个渐变图像。 + +添加一个`采样图像`节点并选择图像`Textures/Gradation1.png`。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Grad_En.png + :align: center +``` + +然后用加法节点把它和之前的扭曲图像加在一起。 + +现在图像的底部会发光。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Grad_Add_En.png + :align: center +``` + +接下来,为了使图像的顶部变暗,用`乘`节点将之前的图像和新增的图像相乘。 + +这将使图像的顶部部分变暗。现在它有点像火焰了。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Grad_Mul_En.png + :align: center +``` + +最后,上色。 + +使用一个彩色的渐变图像来着色。添加一个`采样图像`节点并选择图像`Textures/Gradation2.png`。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Grad_Color_En.png + :align: center +``` + +然后,`遮罩元素`节点从流动的图像中提取RG。把它输入到UV中。(译注:图中未使用遮罩元素节点,而是直接将乘法的输出连接到UV中) + +然后颜色将随着渐变图像改变。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Grad_Color_Distort_En.png + :align: center +``` + +渐变图像被参照的位置随着输入的流动的图像的颜色而改变。这导致颜色随着渐变而变化。 + +黑色的值为0,所以会被替换成Gradient2.png顶部的颜色,而白色的值为1,所以会被替换成Gradient2.png底部的颜色。这样可以将一张灰色的图像转换为一张彩色的图像。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/LookUp.png + :align: center +``` + +流动的图像RG值被转换为Gradient2.png的横纵坐标,在这个例子中,R值和G值是同步变化的,也就是说,实际上黑色采样的是Gradient2.png的左上方(0,0),白色采样的是Gradient2.png的右下方(1,1)。由于Gradient2.png在水平方向没有变化,所以即便输入的R值变化了,输出的颜色也不会受到影响。 + +如果Gradient2.png在水平方向上也有变化,而你只需要竖直方向的变化,你需要固定输入的R值,而只改变G值。 + +同样地,为了改变透明度。添加一个`采样图像`节点并选择图像`Textures/Gradation3.png`。以同样方式连接流动的图像。白色区域将是不透明的,黑色区域是透明的。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Grad_OpacityMask_Distort_En.png + :align: center +``` + +将Gradation2的`采样图像`节点连接到输出节点的Emmisive(自发光)。 + +将Gradation3的`采样图像`节点连接到输出节点的OpacityMask(不透明度遮罩)。 + +火焰图案就显示出来了。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Output_En.png + :align: center +``` + +但是,细节部分的颜色并不正确。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/PreResult.png + :align: center +``` + +原因是`采样图像`节点在引用图像时选择了Repeat(重复)。 + +图像可以设置为Clamp(钳制)或Repeat,这是决定如何处理边缘的参数。 + +当UV坐标超过1.0时,你可以设置超出边缘的区域是应该填充边缘的颜色,还是应该重复图像。如果设置为Repeat,它将从另一侧开始重复采样。 + +下图左边是Clamp,右边是Repeat。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Clamp_Repeat.png + :align: center +``` + +颜色值可能超过1.0(255)或低于0,导致颜色被错误地引用到另一边。 + +它可能由于计算中的错误而超过1.0,就本案例而言,是因为图像被相加。 + +因此,将渐变图像的`采样图像`节点的Repeat改为Clamp。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Sampler_En.png + :align: center +``` + +这样就完成了。 + +
+ +
+ +最后,你可以通过下面的链接下载本章中制作的特效。 + +下载 + +### 如何制作云层图像 + +这次我使用PhotoShop。新建一张分辨率为1024的图像,在PhotoShop中选择云彩(译注:滤镜-渲染-云彩)。提高对比度使黑白对比更显著。 + +然后将分辨率降低到512并保存。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Image_Cloud.png + :align: center +``` + +### 如何制作扭曲贴图 + +这次我使用PhotoShop。新建一张分辨率为1024的图像,在PhotoShop中选择云彩。 + +然后,我们新建一张3072x3071的图像。从之前的步骤复制九次云层的图案。这是为了方便地制作循环图案。然后,生成法线(译注:滤镜-3D-生成法线)。 + +最后,剪切出中间的1024x1024的图案,将分辨率降低到512并保存。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_02/Image_Normal.png + :align: center +``` + +### 如何制作渐变图像 + +这是通过PhotoShop的梯度制作的。由于是卡通风格,颜色做成了突然变化的样子。 + +## 总结 + +本章中,我们制作了火焰。为了表述清楚,用了多张分开的图像,但是在实践中,这些图像可能被合并,以使之更轻量化。 + +However, this will only result in a fixed continuous flow of flame. +In the next chapter, we will be able to apply this to a variety of things. + +然而,制作出的火焰只是在固定地持续流动。在下一章,我们可以将其应用于各种东西。(译注:看不懂) + diff --git a/source/zh_CN/ToolTutorial/material_03.md b/source/zh_CN/ToolTutorial/material_03.md new file mode 100644 index 0000000..e4a5c54 --- /dev/null +++ b/source/zh_CN/ToolTutorial/material_03.md @@ -0,0 +1,146 @@ +# 03. 有序材质的卡通火焰。 + +这个标题是个什么东西??? + +## 概要 + +在前面的章节中,我们制作了一个卡通风格的火焰。 +但是,参数内嵌于材质中,无法可交互地更改。 +而且,它持续地播放,不会中途消失。 +在本章中,上一章中制作的火焰将变得更为通用。 + +
+ +

本章制作的特效

+
+ +## 制作 + +在本章中,我们将在上一章制作的特效的基础上做出更改。 +为了显示清楚,我们更改了粒子的生存时间。 + +下载 + +### 参数 + +Effekseer的材质有一个名叫参数的节点。 +这个叫参数的节点让你可以在Effekseer中改变材质的参数。 + +首先,为了从外部编辑特效的颜色,我们将把梯度图像替换为一个参数。 + +添加一个`参数图像`节点。 + +然后,把它连接到`采样图像`节点。 + +给参数节点输入一个名字。这个名字会显示在Effekseer中,用于将图像与Effekseer中的配置相关联。 +Therefore, try not to change it too much. +因此,不要改变太多。(???) +这次,因为我们替换的是梯度,我们将其命名为Gradation。 + +将图像的默认值设置为`Textures/Gradation2.png`。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_03/Grad_Parameter_En.png + :align: center +``` + +Effekseer现在也显示了梯度参数。 +因为目前显示的依然是默认图像,我们将设置一个新图像。 + +这一次,设置为`Textures/Gradation4.png`。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_03/Grad_Parameter_Editor_En.png + :align: center +``` + +特效的图案已经被替换了。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_03/Fire.png + :align: center +``` + +在这个例子中,我试着替换纹理,但是你也可以使用数值作为参数。 + +让我们将图像流动的速度设置为参数。 + +添加一个`参数2`节点。 +命名为Speed。 +将默认参数设置为(0.1,0.1)。 + +将其连接到`移动UV`节点的Speed。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_03/Speed_Parameter_En.png + :align: center +``` + +Effekseer将显示速度参数,你可以改变它的值。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_03/Speed_Parameter_Editor_En.png + :align: center +``` + +更改它的值将改变速度。 +在这个例子中,默认值就很合适,所以我们将值保留在(0.1,0.1)。 + +这些可以在外部设置,无需将参数内置于材质中。 + +### 自定义数据 + +就像现在这样,你只是将参数外部化了,但火焰依旧是连续地流动。 +自定义数据可用于设置开始和结束。 + +在这个例子中,我们将设置一个名为自定义数据的节点。 +这个节点和参数类似,但允许你为特效中的每个粒子设置不同的值,也允许你设置F曲线和其他参数。 + +这次,我们将通过移动梯度贴图将火焰扑灭。 + +通过一个外部参数移动梯度的参考位置,实现淡出。 + +使梯度图像向透明的方向移动,从而使它变得透明。 + +首先,我们将添加一个`自定义数据1`节点。 +因为是UV,将它连接到RG。 + + +```eval_rst +.. image:: ../../img/Tutorial/Mat_03/CustomData_En.png + :align: center +``` + +然后,在Effekseer的基础渲染设置面板设置自定义数据。 +在这个例子中,我们将使用F曲线,因为我们将移动UV以实现淡入和淡出。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_03/CustomData_Editor_En.png + :align: center +``` + +设置F曲线中的R值,-1表示关闭,0表示显示。 + +-1引用了梯度图像的上部分。 +表示图像会消失。 + +```eval_rst +.. image:: ../../img/Tutorial/Mat_03/FCurve.png + :align: center +``` + +然后特效现在会淡入和淡出。 + +
+ +
+ +最后,你可以通过下面的链接下载本章中制作的特效。 + +下载 + +## 总结 + +这次我们制作了火焰的一个变种。 +为每个特效制作一个材质很费事,所以制作一个可以用于很多地方的通用的材质是非常重要的。 + diff --git a/source/zh_CN/faq.md b/source/zh_CN/faq.md new file mode 100644 index 0000000..9733195 --- /dev/null +++ b/source/zh_CN/faq.md @@ -0,0 +1,38 @@ +# 常见问题解答 + +## General + +### 如何拼读Effekseer? + +"Effec"+"seer". + +## 编辑器 + +### 我修改的参数没生效 + +修改参数的值之后,要按一次回车,或者点击别的输入框,输入的值才会生效。 + +### 旋转设置对精灵无效 + +当渲染方法是“精灵”,且放置方法为“告示牌”时,旋转是无效的(因为告示牌锁定了精灵的旋转,使之始终朝向摄像机)。要让精灵受到旋转设置的影响,请选择其他防止方法。 + +### 如何录像? + +在编辑器中选择“窗口 -> 录像”,将会显示录像窗口。按下录像窗口的录像按钮,可以输出录像的结果。如果选择“窗口 -> 相机设置”,将会显示相机设置窗口,你可以设置画面的放大率。 + +## 嵌入特效 + +### 怎么用于其他程序? + +从官网下载其他软件的插件或库。你可以用它们在其他软件中播放特效。 + +### 如何导出为运行时格式 + +在编辑器中选择“文件 -> 导出 -> Effekseer Game Output Format” + +## 其他 + +### 我想要……功能 + +我们会尽可能考虑。最快的办法是给我们提交代码或者自行修改软件。 + diff --git a/source/zh_CN/index.rst b/source/zh_CN/index.rst new file mode 100644 index 0000000..67325ec --- /dev/null +++ b/source/zh_CN/index.rst @@ -0,0 +1,16 @@ +=========================== +Effekseer Help (中文) +=========================== + +Effekseer是一款粒子特效编辑工具。通过集成运行时和插件,可以在应用程序中播放使用Effekseer制作的特效。它主要应用于游戏,以便让设计师取代程序员编辑粒子效果。 + +.. toctree:: + :maxdepth: 1 + + overview + ToolTutorial/index + ToolReference/index + MaterialToolReference/index + ToolTips/01 + faq + ReleaseNotes/index \ No newline at end of file diff --git a/source/zh_CN/overview.md b/source/zh_CN/overview.md new file mode 100644 index 0000000..1bf4d9b --- /dev/null +++ b/source/zh_CN/overview.md @@ -0,0 +1,319 @@ +# 概要 + +## 操作环境和所需的运行时 + +### 编辑工具(Windows) + +Windows7 SP1或之后的版本 + +DirectX 11(ShaderModel 4.0或之后的版本) + +如果程序不能运行,请通过以下链接安装D3DCompiler_47.dll。 + +[D3DCompiler_47.dll](https://support.microsoft.com/en-us/help/4020302/the-net-framework-4-7-installation-is-blocked-on-windows-7-windows-ser) + +### 编辑工具(macOS) + +macOS Sierra或之后的版本 + +如果程序不能运行,请通过以下链接安装mono。 + +[mono](https://www.mono-project.com/) + +### 运行时 + +* DirectX 9(ShaderModel 3.0或之后的版本) +* DirectX 11(ShaderModel 3.0或之后的版本) +* OpenGL 4.1或之后的版本 +* OpenGL ES 2.0或之后的版本 + +## 安装/卸载 + +### Windows + +编辑器整个位于“Tool/”文件夹下。我们未对注册表和其他东西做任何修改。你可以直接启动程序,或将其复制到任何文件夹。 +卸载的方式就是删除文件夹。 + +### macOS + +打开Effekseer.dmg并将Effekseer.app复制到Applications或Home文件夹。 +卸载Effekseer的方式是删除Effekseer.app。 + +### 其他 + +要在游戏中播放特效,必须下载单独的包,例如运行时、Unity或者DX库。 + +此外,如果只想将特效导出为图片、精灵表单(Sprite Sheet)或视频,参考[录像](ToolReference/record)。 + +## 许可证 + +运行时以MIT许可证发布。 + +使用DirectX时,依赖[DirectX Tool Kit](https://directxtk.codeplex.com/)。 + +使用Vulkan时,依赖[glslang](https://github.com/KhronosGroup/glslang)。 + +具体请参考下面的许可证。 + +纹理和特效数据以CC-0协议发布。你可以任意使用。 + +## 免责声明 + +对于使用本软件和运行时可能出现的任何问题,我们不承担任何责任。 + +## 联系方式 + +effekseer(at)gmail.com + +## 版权声明 + +### 许可证(运行时) + +
+The MIT License (MIT)
+
+Copyright (c) 2011 Effekseer Project
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+ +### 许可证(编辑器) + +
+The MIT License (MIT)
+
+Copyright (c) 2011 Effekseer Project
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+DirectX Tool Kit
+https://directxtk.codeplex.com/
+Microsoft Public License (Ms-PL)
+
+Lumix Engine is licensed under the MIT License
+Copyright (c) 2013-2016 Mikulas Florek
+
+imgui is licensed under the MIT License
+Copyright (c) 2014-2018 Omar Cornut
+
+Boxer is licensed under the MIT License
+Copyright (c) 2014 Aaron Jacobs
+
+GD Graphics Library
+
+Credits and license terms:
+
+In order to resolve any possible confusion regarding the authorship of
+gd, the following copyright statement covers all of the authors who
+have required such a statement. If you are aware of any oversights in
+this copyright notice, please contact Pierre-A. Joye who will be
+pleased to correct them.
+
+   Portions copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+   2002, 2003, 2004 by Cold Spring Harbor Laboratory. Funded under
+   Grant P41-RR02188 by the National Institutes of Health.
+
+   Portions copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
+   2004 by Boutell.Com, Inc.
+
+   Portions relating to GD2 format copyright 1999, 2000, 2001, 2002,
+   2003, 2004 Philip Warner.
+
+   Portions relating to PNG copyright 1999, 2000, 2001, 2002, 2003,
+   2004 Greg Roelofs.
+
+   Portions relating to gdttf.c copyright 1999, 2000, 2001, 2002,
+   2003, 2004 John Ellson (ellson@graphviz.org).
+
+   Portions relating to gdft.c copyright 2001, 2002, 2003, 2004 John
+   Ellson (ellson@graphviz.org).
+
+   Portions copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+   Pierre-Alain Joye (pierre@libgd.org).
+
+   Portions relating to JPEG and to color quantization copyright
+   2000, 2001, 2002, 2003, 2004, Doug Becker and copyright (C) 1994,
+   1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Thomas
+   G. Lane. This software is based in part on the work of the
+   Independent JPEG Group. See the file README-JPEG.TXT for more
+   information.
+
+   Portions relating to GIF compression copyright 1989 by Jef
+   Poskanzer and David Rowley, with modifications for thread safety
+   by Thomas Boutell.
+
+   Portions relating to GIF decompression copyright 1990, 1991, 1993
+   by David Koblas, with modifications for thread safety by Thomas
+   Boutell.
+
+   Portions relating to WBMP copyright 2000, 2001, 2002, 2003, 2004
+   Maurice Szmurlo and Johan Van den Brande.
+
+   Portions relating to GIF animations copyright 2004 Jaakko Hyvätti
+   (jaakko.hyvatti@iki.fi)
+
+Permission has been granted to copy, distribute and modify gd in
+any context without fee, including a commercial application,
+provided that this notice is present in user-accessible supporting
+documentation.
+
+This does not affect your ownership of the derived work itself,
+and the intent is to assure proper credit for the authors of gd,
+not to interfere with your productive use of gd. If you have
+questions, ask. "Derived works" includes all programs that utilize
+the library. Credit must be given in user-accessible
+documentation.
+
+This software is provided "AS IS." The copyright holders disclaim
+all warranties, either express or implied, including but not
+limited to implied warranties of merchantability and fitness for a
+particular purpose, with respect to this code and accompanying
+documentation.
+
+Although their code does not appear in the current release, the
+authors also wish to thank Hutchison Avenue Software Corporation
+for their prior contributions.
+
+Native File Dialog
+
+This software is provided 'as-is', without any express or implied
+warranty.  In no event will the authors be held liable for any damages
+arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it
+freely, subject to the following restrictions:
+
+1\. The origin of this software must not be misrepresented; you must not
+   claim that you wrote the original software. If you use this software
+   in a product, an acknowledgment in the product documentation would be
+   appreciated but is not required.
+2\. Altered source versions must be plainly marked as such, and must not be
+   misrepresented as being the original software.
+3\. This notice may not be removed or altered from any source distribution.
+
+-- 源真ゴシック --
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+http://scripts.sil.org/OFL
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded, 
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
+
+
From c948d1d50690906e6496d81ea52371404c86d187 Mon Sep 17 00:00:00 2001 From: SQwatermark <53200273+SQwatermark@users.noreply.github.com> Date: Sat, 6 Jan 2024 12:29:32 +0800 Subject: [PATCH 2/2] Specify page language to fix text rendering --- source/conf.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/source/conf.py b/source/conf.py index e2f8bc6..f29e9cf 100644 --- a/source/conf.py +++ b/source/conf.py @@ -194,6 +194,15 @@ html_show_sourcelink = False +def html_page_context(app, pagename, templatename, context, doctree): + # setup page language + if pagename.startswith('ja/'): + context['language'] = 'ja' + elif pagename.startswith('en/'): + context['language'] = 'en' + elif pagename.startswith('zh_CN/'): + context['language'] = 'zh_CN' + def setup(app): app.add_config_value('recommonmark_config', { }, True) @@ -203,4 +212,6 @@ def setup(app): app.add_js_file('js/effekseer.min.js') app.add_js_file('js/iframe.js') app.add_js_file('js/OrbitControls.js') - app.add_css_file('css/custom.css') \ No newline at end of file + app.add_css_file('css/custom.css') + + app.connect('html-page-context', html_page_context) \ No newline at end of file