Data, FLandscapeFileResolution DataResolution, FVector Scale) const** - エクスポートできる形式であれば、エクスポートします (`GetInfo` からの戻り値を参照)。コンパイルにオーバーライドを必要としない唯一の関数です。ただし、オーバーライドされずに呼び出されると、`check` を呼び出します。
-1. **(Destructor)** - このインターフェースを実装するクラスは、インターフェース クラスへのポインタによって削除されるので、仮想ディストラクタを使用します。
-
-* 詳細とサンプルについては、`LandscapeFileFormatInterfaces.h` のインターフェース、 in `LandscapeFileFormatPng.cpp1` と `LandscapeFileFormatPng.h` の.PNG 実装、`LandscapeFileFormatRaw.cpp` と `LandscapeFileFormatRaw.h` の .RAW 実装をご覧ください。このコードはすべて、エンジンの LandscapeEditor モジュールに入っています。
+インポートした高さマップをベースに、作業用のランドスケープが新規作成されました。
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.CHN.udn
new file mode 100644
index 000000000000..b270b80895c7
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.CHN.udn
@@ -0,0 +1,107 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Copy and Paste Region
+Description: This is an overview of the Copy and Paste Region tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:11
+Tags:Landscape
+tags:region
+Topic-image:CopyPaste_Topic.png
+
+[TOC(start:2 end:2)]
+
+
+The **Copy/Paste** tool will copy the height data from one area of a Landscape to another area through the use of the gizmos. You can also import existing
+heightmap data that can be pasted into the Landscape or export selected regions of your height data as it's own heightmap .raw file for use in an external
+program.
+
+
+## Using the Copy/Paste Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 2ICAxrLsH60
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 40
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+In this demonstration, the gizmo is manually scaled to copy a region and then paste it in another location, and then the Region Selection is used to paint an area the gizmo can automatically scaled
+to fit so that it can be copy and pasted to another location.
+
+### Copy/Paste Gizmo
+
+The Gizmo is used to capture the Landscape's height data that can then be used. This enables you to easily move parts of your Landscape, import height data from an existing heightmap, or to export
+your height data to a heightmap file that can be used with an external program, like World Machine.
+
+[REGION:imagetable]
+| (w:370) | (w:370) | (w:370) |
+| --- | --- | --- |
+||||
+[/REGION]
+
+In these examples, the gizmo bounds have been scaled around a painted region that is to be captured, then the gizmo is positioned to another part of the Landscape, and, lastly, it's pasted onto the existing Landscape.
+
+To learn how to use the gizmo, you can read about the [gizmo tool](Engine/Landscape/Editing/Gizmos/) here.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:250) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Copy Data to Gizmo** | Copies the data within the gizmo bounds to the gizmo taking into account any masking from the selected regions. |
+| **Fit Gizmo to Selected Regions** | Positions and resizes the gizmo so that it completely encompasses all region selections. |
+| **Fit Height Values to Gizmo** | Scales the data in the gizmo to fit the gizmo's Z-size. |
+| **Clear Gizmo Data** | Clears the gizmo of any copied data. |
+| **Tool Strength** | Strength of the tool. If you're using a pen/tablet with pressure-sensing, the pressure used affects the strength of the tool. |
+| **Paste Mode** | Whether the past will only raise, only lower, or both raise and lower. [INCLUDE:#pastemode] |
+| **Gizmo Copy/Paste All Layers** | If set, copies and pastes all layers. Otherwise, it will only copy and paste the layer selected in the targets panel. |
+| **Snap Gizmo to Landscape Grid** | Makes sure the gizmo is snapped perfectly to the Landscape so that the sample points line up, which makes copy and pastes less blurry. Irrelevant if gizmo is scaled. |
+| **Use Smooth Gizmo Brush** | Smooth the edges of the gizmo data into the Landscape. Without this, the edges of the pasted data will be sharp. |
+| [REGION:tablesection] Advanced [/REGION] ||
+| **Gizmo Import/Export** | The available options that can be used when importing or exporting the selected region's heightmap. [INCLUDE:#importexport] |
+
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.INT.udn
new file mode 100644
index 000000000000..c058fb2dd68a
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.INT.udn
@@ -0,0 +1,106 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Copy and Paste Region
+Description: This is an overview of the Copy and Paste Region tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:11
+Tags:Landscape
+tags:region
+Topic-image:CopyPaste_Topic.png
+
+[TOC(start:2 end:2)]
+
+
+The **Copy/Paste** tool will copy the height data from one area of a Landscape to another area through the use of the gizmos. You can also import existing
+heightmap data that can be pasted into the Landscape or export selected regions of your height data as it's own heightmap .raw file for use in an external
+program.
+
+
+## Using the Copy/Paste Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 2ICAxrLsH60
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 40
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+In this demonstration, the gizmo is manually scaled to copy a region and then paste it in another location, and then the Region Selection is used to paint an area the gizmo can automatically scaled
+to fit so that it can be copy and pasted to another location.
+
+### Copy/Paste Gizmo
+
+The Gizmo is used to capture the Landscape's height data that can then be used. This enables you to easily move parts of your Landscape, import height data from an existing heightmap, or to export
+your height data to a heightmap file that can be used with an external program, like World Machine.
+
+[REGION:imagetable]
+| (w:370) | (w:370) | (w:370) |
+| --- | --- | --- |
+||||
+[/REGION]
+
+In these examples, the gizmo bounds have been scaled around a painted region that is to be captured, then the gizmo is positioned to another part of the Landscape, and, lastly, it's pasted onto the existing Landscape.
+
+To learn how to use the gizmo, you can read about the [gizmo tool](Engine/Landscape/Editing/Gizmos/) here.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:250) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Copy Data to Gizmo** | Copies the data within the gizmo bounds to the gizmo taking into account any masking from the selected regions. |
+| **Fit Gizmo to Selected Regions** | Positions and resizes the gizmo so that it completely encompasses all region selections. |
+| **Fit Height Values to Gizmo** | Scales the data in the gizmo to fit the gizmo's Z-size. |
+| **Clear Gizmo Data** | Clears the gizmo of any copied data. |
+| **Tool Strength** | Strength of the tool. If you're using a pen/tablet with pressure-sensing, the pressure used affects the strength of the tool. |
+| **Paste Mode** | Whether the past will only raise, only lower, or both raise and lower. [INCLUDE:#pastemode] |
+| **Gizmo Copy/Paste All Layers** | If set, copies and pastes all layers. Otherwise, it will only copy and paste the layer selected in the targets panel. |
+| **Snap Gizmo to Landscape Grid** | Makes sure the gizmo is snapped perfectly to the Landscape so that the sample points line up, which makes copy and pastes less blurry. Irrelevant if gizmo is scaled. |
+| **Use Smooth Gizmo Brush** | Smooth the edges of the gizmo data into the Landscape. Without this, the edges of the pasted data will be sharp. |
+| [REGION:tablesection] Advanced [/REGION] ||
+| **Gizmo Import/Export** | The available options that can be used when importing or exporting the selected region's heightmap. [INCLUDE:#importexport] |
+
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.JPN.udn
new file mode 100644
index 000000000000..b270b80895c7
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.JPN.udn
@@ -0,0 +1,107 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Copy and Paste Region
+Description: This is an overview of the Copy and Paste Region tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:11
+Tags:Landscape
+tags:region
+Topic-image:CopyPaste_Topic.png
+
+[TOC(start:2 end:2)]
+
+
+The **Copy/Paste** tool will copy the height data from one area of a Landscape to another area through the use of the gizmos. You can also import existing
+heightmap data that can be pasted into the Landscape or export selected regions of your height data as it's own heightmap .raw file for use in an external
+program.
+
+
+## Using the Copy/Paste Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 2ICAxrLsH60
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 40
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+In this demonstration, the gizmo is manually scaled to copy a region and then paste it in another location, and then the Region Selection is used to paint an area the gizmo can automatically scaled
+to fit so that it can be copy and pasted to another location.
+
+### Copy/Paste Gizmo
+
+The Gizmo is used to capture the Landscape's height data that can then be used. This enables you to easily move parts of your Landscape, import height data from an existing heightmap, or to export
+your height data to a heightmap file that can be used with an external program, like World Machine.
+
+[REGION:imagetable]
+| (w:370) | (w:370) | (w:370) |
+| --- | --- | --- |
+||||
+[/REGION]
+
+In these examples, the gizmo bounds have been scaled around a painted region that is to be captured, then the gizmo is positioned to another part of the Landscape, and, lastly, it's pasted onto the existing Landscape.
+
+To learn how to use the gizmo, you can read about the [gizmo tool](Engine/Landscape/Editing/Gizmos/) here.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:250) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Copy Data to Gizmo** | Copies the data within the gizmo bounds to the gizmo taking into account any masking from the selected regions. |
+| **Fit Gizmo to Selected Regions** | Positions and resizes the gizmo so that it completely encompasses all region selections. |
+| **Fit Height Values to Gizmo** | Scales the data in the gizmo to fit the gizmo's Z-size. |
+| **Clear Gizmo Data** | Clears the gizmo of any copied data. |
+| **Tool Strength** | Strength of the tool. If you're using a pen/tablet with pressure-sensing, the pressure used affects the strength of the tool. |
+| **Paste Mode** | Whether the past will only raise, only lower, or both raise and lower. [INCLUDE:#pastemode] |
+| **Gizmo Copy/Paste All Layers** | If set, copies and pastes all layers. Otherwise, it will only copy and paste the layer selected in the targets panel. |
+| **Snap Gizmo to Landscape Grid** | Makes sure the gizmo is snapped perfectly to the Landscape so that the sample points line up, which makes copy and pastes less blurry. Irrelevant if gizmo is scaled. |
+| **Use Smooth Gizmo Brush** | Smooth the edges of the gizmo data into the Landscape. Without this, the edges of the pasted data will be sharp. |
+| [REGION:tablesection] Advanced [/REGION] ||
+| **Gizmo Import/Export** | The available options that can be used when importing or exporting the selected region's heightmap. [INCLUDE:#importexport] |
+
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.KOR.udn
new file mode 100644
index 000000000000..b270b80895c7
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/CopyPaste/CopyAndPasteRegion.KOR.udn
@@ -0,0 +1,107 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Copy and Paste Region
+Description: This is an overview of the Copy and Paste Region tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:11
+Tags:Landscape
+tags:region
+Topic-image:CopyPaste_Topic.png
+
+[TOC(start:2 end:2)]
+
+
+The **Copy/Paste** tool will copy the height data from one area of a Landscape to another area through the use of the gizmos. You can also import existing
+heightmap data that can be pasted into the Landscape or export selected regions of your height data as it's own heightmap .raw file for use in an external
+program.
+
+
+## Using the Copy/Paste Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 2ICAxrLsH60
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 40
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+In this demonstration, the gizmo is manually scaled to copy a region and then paste it in another location, and then the Region Selection is used to paint an area the gizmo can automatically scaled
+to fit so that it can be copy and pasted to another location.
+
+### Copy/Paste Gizmo
+
+The Gizmo is used to capture the Landscape's height data that can then be used. This enables you to easily move parts of your Landscape, import height data from an existing heightmap, or to export
+your height data to a heightmap file that can be used with an external program, like World Machine.
+
+[REGION:imagetable]
+| (w:370) | (w:370) | (w:370) |
+| --- | --- | --- |
+||||
+[/REGION]
+
+In these examples, the gizmo bounds have been scaled around a painted region that is to be captured, then the gizmo is positioned to another part of the Landscape, and, lastly, it's pasted onto the existing Landscape.
+
+To learn how to use the gizmo, you can read about the [gizmo tool](Engine/Landscape/Editing/Gizmos/) here.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:250) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Copy Data to Gizmo** | Copies the data within the gizmo bounds to the gizmo taking into account any masking from the selected regions. |
+| **Fit Gizmo to Selected Regions** | Positions and resizes the gizmo so that it completely encompasses all region selections. |
+| **Fit Height Values to Gizmo** | Scales the data in the gizmo to fit the gizmo's Z-size. |
+| **Clear Gizmo Data** | Clears the gizmo of any copied data. |
+| **Tool Strength** | Strength of the tool. If you're using a pen/tablet with pressure-sensing, the pressure used affects the strength of the tool. |
+| **Paste Mode** | Whether the past will only raise, only lower, or both raise and lower. [INCLUDE:#pastemode] |
+| **Gizmo Copy/Paste All Layers** | If set, copies and pastes all layers. Otherwise, it will only copy and paste the layer selected in the targets panel. |
+| **Snap Gizmo to Landscape Grid** | Makes sure the gizmo is snapped perfectly to the Landscape so that the sample points line up, which makes copy and pastes less blurry. Irrelevant if gizmo is scaled. |
+| **Use Smooth Gizmo Brush** | Smooth the edges of the gizmo data into the Landscape. Without this, the edges of the pasted data will be sharp. |
+| [REGION:tablesection] Advanced [/REGION] ||
+| **Gizmo Import/Export** | The available options that can be used when importing or exporting the selected region's heightmap. [INCLUDE:#importexport] |
+
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.CHN.udn
new file mode 100644
index 000000000000..336533e96736
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.CHN.udn
@@ -0,0 +1,95 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Erosion
+Description: This is an overview of the Erosion painting tool.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:5
+Tags:Landscape
+Topic-image:Erosion_Topic.png
+
+[TOC(start:2 end:2)]
+
+
+The **Erosion** tool uses a thermal erosion simulation to adjust the height of the Landscape heightmap. This simulates the transfer of soil from higher elevations to lower elevations. The
+larger the difference in elevation, the more erosion will occur. This tool also applies a noise effect on top of the erosion, if desired, to provide a more natural random appearance.
+
+
+## Using the Erosion Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bBehSLFnJ7Q
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Erosion tool is being used on the front and back sides of the mountain face. On the front side, the incline is not as steep, so the surface is not eroded as quickly with the
+settings being used. However, on the back side, the incline is much steeper and erodes much more quickly.
+
+
+Use the following controls to Sculpt with Erosion for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Applies erosion values that raises, lowers, or does both to the the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, Erosion uses noise painted onto the hillside to raise or lower the surface giving it variations in different heights based on the strength and various property values used to drive
+the erosion being applied.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:170) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Threshold** | The minimum height difference necessary for the erosion effects to be applied. Smaller values will result in more erosion being applied. |
+| **Surface Thickness** | The thickness of the surface for the layer weight erosion effect. |
+| **Iterations** | The number of iterations performed. Larger values result in more levels of erosion. |
+| **Noise Mode** | Whether to apply noise to raise or lower the heightmap, or do both. [INCLUDE:#noise] |
+| **Noise Scale** | The size of the noise filter used. The noise filter is related to position and scale, which means if you do not change **Noise Scale**, the same filter is applied to the same position many times. |
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.INT.udn
new file mode 100644
index 000000000000..50b3a26317e9
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.INT.udn
@@ -0,0 +1,94 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Erosion
+Description: This is an overview of the Erosion painting tool.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:5
+Tags:Landscape
+Topic-image:Erosion_Topic.png
+
+[TOC(start:2 end:2)]
+
+
+The **Erosion** tool uses a thermal erosion simulation to adjust the height of the Landscape heightmap. This simulates the transfer of soil from higher elevations to lower elevations. The
+larger the difference in elevation, the more erosion will occur. This tool also applies a noise effect on top of the erosion, if desired, to provide a more natural random appearance.
+
+
+## Using the Erosion Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bBehSLFnJ7Q
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Erosion tool is being used on the front and back sides of the mountain face. On the front side, the incline is not as steep, so the surface is not eroded as quickly with the
+settings being used. However, on the back side, the incline is much steeper and erodes much more quickly.
+
+
+Use the following controls to Sculpt with Erosion for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Applies erosion values that raises, lowers, or does both to the the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, Erosion uses noise painted onto the hillside to raise or lower the surface giving it variations in different heights based on the strength and various property values used to drive
+the erosion being applied.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:170) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Threshold** | The minimum height difference necessary for the erosion effects to be applied. Smaller values will result in more erosion being applied. |
+| **Surface Thickness** | The thickness of the surface for the layer weight erosion effect. |
+| **Iterations** | The number of iterations performed. Larger values result in more levels of erosion. |
+| **Noise Mode** | Whether to apply noise to raise or lower the heightmap, or do both. [INCLUDE:#noise] |
+| **Noise Scale** | The size of the noise filter used. The noise filter is related to position and scale, which means if you do not change **Noise Scale**, the same filter is applied to the same position many times. |
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.JPN.udn
new file mode 100644
index 000000000000..2fc9d95ca0eb
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.JPN.udn
@@ -0,0 +1,95 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Erosion
+Description:Erosion ペイント ツールの概要です。
+Type:Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:5
+Tags:Landscape
+Topic-image:Erosion_Topic.png
+
+[TOC(start:2 end:2)]
+
+
+**Erosion** ツールは、ランドスケープ ハイトマップの高さを調整するために熱による浸食シミュレーションを使用します。高度が高いところから低いところまでの土壌の動きをシミュレートします。高低差が大きくなると、
+浸食も大きくなります。外観に自然なランダムさが出るように、必要に応じて、浸食の他にノイズ エフェクトをツールに適用することができます。
+
+
+## Erosion ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bBehSLFnJ7Q
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では、Erosion ツールは山の正面と裏側の表面に適用されています。正面の傾斜はそれほど急ではないので、
+適用する設定では、表面の侵食はそれほど速くはなりません。ただし、裏側は傾斜が急なので、かなり速く侵食します。
+
+
+ランドスケープ ハイトマップでの侵食によるスカルプトでは、以下の調節ができます。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **左マウスボタン** | 侵食値の上げ下げ、またはその両方をハイトマップに適用します。 |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+この例では、浸食は丘の斜面にペイントされたノイズを使ってサーフェスに高低差を出しています。
+強度と各種プロパティ値を使って適用中の侵食を調整して、様々な高さを出しています。
+
+
+## ツール設定
+
+[REGION:imagetable]
+| (h:75) | (h:170) |
+| --- | --- |
+|||
+[/REGION]
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Tool Strength** | 1 回のブラシ ストロークの強度を調節します。 |
+| **Threshold** | 浸食エフェクトの適用に必要な最低限の高低差です。この値が小さいほど、適用される浸食エフェクトが増加します。 |
+| **Surface Thickness** | レイヤーのウェイトの浸食エフェクトに使用するサーフェスの厚みです。 |
+| **Iterations** | 実行されるイタレーション数です。この値が大きくなるほど、浸食が大きくなります。 |
+| **Noise Mode** | ノイズを適用した高さマップの上げ下げ、あるいはその両方の適用を設定します。 [INCLUDE:#noise] |
+| **Noise Scale** | 使用するノイズ フィルターの大きさです。ノイズ フィルターは、位置とスケールに関係します。したがって、**Noise Scale** に変更がない限り、同じフィルターが同じ位置に何度も適用されます。 |
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.KOR.udn
new file mode 100644
index 000000000000..336533e96736
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Erosion/Erosion.KOR.udn
@@ -0,0 +1,95 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Erosion
+Description: This is an overview of the Erosion painting tool.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:5
+Tags:Landscape
+Topic-image:Erosion_Topic.png
+
+[TOC(start:2 end:2)]
+
+
+The **Erosion** tool uses a thermal erosion simulation to adjust the height of the Landscape heightmap. This simulates the transfer of soil from higher elevations to lower elevations. The
+larger the difference in elevation, the more erosion will occur. This tool also applies a noise effect on top of the erosion, if desired, to provide a more natural random appearance.
+
+
+## Using the Erosion Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bBehSLFnJ7Q
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Erosion tool is being used on the front and back sides of the mountain face. On the front side, the incline is not as steep, so the surface is not eroded as quickly with the
+settings being used. However, on the back side, the incline is much steeper and erodes much more quickly.
+
+
+Use the following controls to Sculpt with Erosion for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Applies erosion values that raises, lowers, or does both to the the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, Erosion uses noise painted onto the hillside to raise or lower the surface giving it variations in different heights based on the strength and various property values used to drive
+the erosion being applied.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:170) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Threshold** | The minimum height difference necessary for the erosion effects to be applied. Smaller values will result in more erosion being applied. |
+| **Surface Thickness** | The thickness of the surface for the layer weight erosion effect. |
+| **Iterations** | The number of iterations performed. Larger values result in more levels of erosion. |
+| **Noise Mode** | Whether to apply noise to raise or lower the heightmap, or do both. [INCLUDE:#noise] |
+| **Noise Scale** | The size of the noise filter used. The noise filter is related to position and scale, which means if you do not change **Noise Scale**, the same filter is applied to the same position many times. |
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.CHN.udn
new file mode 100644
index 000000000000..61e8fc195d65
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.CHN.udn
@@ -0,0 +1,90 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Flatten
+Description: This is an overview of the Flatten painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:3
+Tags:Landscape
+Topic-image:Flatten_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Flatten** tool pushes or pulls all other parts of the heightmap to the level that is currently under the mouse when activated. This can raise or lower the surrounding
+heightmap values to be the same value.
+
+## Using the Flatten Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 3amWaEH13V8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 47
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Flatten tool is being used in the middle of the hillside to flatten out areas at the point where the mouse click was initiated. As long as the mouse is held down, the height value
+that was detected is used along any surface to raise or lower (depending on your tool settings) to that height.
+
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Flattens or levels by both raising and lowering or individually raising and lowering the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+The brush strength determines the amount of Flattening that can happen when using the Flatten tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+|  | (h:185) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Flatten Target** | Sets the target height toward which to flatten. |
+| **Tool Strength** | Controls how much smoothing occurs with each brush stroke has. |
+| **Flatten Mode** | Determines whether the tool will raise or lower the heightmap section under the brush. [INCLUDE:#flattenmode] |
+| **Use Slope Flatten** | If checked, flattens along the Landscape's existing slope instead of flattening toward a horizontal plane. |
+| **Pick Value Per Apply** | If checked, constantly selects new values to flatten toward, instead of only using the first clicked point. |
+| [REGION:tablesection] Advanced [/REGION] ||
+| **Show Preview Grid** | When Flatten Target is enabled, you can enable this option to show a preview grid for the flatten target height. |
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.INT.udn
new file mode 100644
index 000000000000..5dc94bc526cc
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.INT.udn
@@ -0,0 +1,89 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Flatten
+Description: This is an overview of the Flatten painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:3
+Tags:Landscape
+Topic-image:Flatten_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Flatten** tool pushes or pulls all other parts of the heightmap to the level that is currently under the mouse when activated. This can raise or lower the surrounding
+heightmap values to be the same value.
+
+## Using the Flatten Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 3amWaEH13V8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 47
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Flatten tool is being used in the middle of the hillside to flatten out areas at the point where the mouse click was initiated. As long as the mouse is held down, the height value
+that was detected is used along any surface to raise or lower (depending on your tool settings) to that height.
+
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Flattens or levels by both raising and lowering or individually raising and lowering the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+The brush strength determines the amount of Flattening that can happen when using the Flatten tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+|  | (h:185) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Flatten Target** | Sets the target height toward which to flatten. |
+| **Tool Strength** | Controls how much smoothing occurs with each brush stroke has. |
+| **Flatten Mode** | Determines whether the tool will raise or lower the heightmap section under the brush. [INCLUDE:#flattenmode] |
+| **Use Slope Flatten** | If checked, flattens along the Landscape's existing slope instead of flattening toward a horizontal plane. |
+| **Pick Value Per Apply** | If checked, constantly selects new values to flatten toward, instead of only using the first clicked point. |
+| [REGION:tablesection] Advanced [/REGION] ||
+| **Show Preview Grid** | When Flatten Target is enabled, you can enable this option to show a preview grid for the flatten target height. |
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.JPN.udn
new file mode 100644
index 000000000000..bccd3844295f
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.JPN.udn
@@ -0,0 +1,90 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Flatten
+Description:Flatten ペイント ツールの概要です。
+Type:Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:3
+Tags:Landscape
+Topic-image:Flatten_topic.png
+
+[TOC(start:2 end:2)]
+
+**Flatten** ツールは、クリックしたカーソルが置かれたランドスケープのレベルまで、ランドスケープの上げ下げを行います。周囲のハイトマップ値を上げ下げして、
+同じ値にすることができます。
+
+## Flatten ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 3amWaEH13V8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 47
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では丘の斜面の中央に Flatten ツールを適用して、マウスでクリックした領域を平坦化しています。マウスを押している間、
+ハイト値がずっとサーフェスに使用されます。
+
+
+以下の制御を使って、ランドスケープ ハイトマップを生成します。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **マウスの左ボタン** | ハイトマップを上げる、下げる、またはその両方の操作をして平坦化 (均一化) します。 |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+Flatten ツールを使う場合、ブラシの強度で平坦化する面積が決まります。
+
+## ツール設定
+
+[REGION:imagetable]
+|  | (h:185) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Flatten Target** | 平坦化ターゲットの高さを設定します。 |
+| **Total Strength** | 1 回のブラシ ストロークによるスムージング加減を調節します。 |
+| **Flatten Mode** | ブラシより下にあるハイト マップ セクションの上げ下げを設定します。[INCLUDE:#flattenmode] |
+| **Use Slope Flatten** | チェックが入っていると、水平の平面に向かって平坦化せずにランドスケープの既存スロープに沿って平坦化します。 |
+| **Pick Value Per Apply** | チェックが入っていると、最初にクリックした点のみの使用ではなく、常に新しい値を選んで平坦化します。 |
+|[REGION:tablesection]高度なプロパティ[/REGION]||
+| **Show Preview Grid** | Flatten Target が有効の場合、平坦化ターゲットの高さに対してプレビュー グリッドを表示するオプションです。|
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.KOR.udn
new file mode 100644
index 000000000000..61e8fc195d65
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Flatten/Flatten.KOR.udn
@@ -0,0 +1,90 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Flatten
+Description: This is an overview of the Flatten painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:3
+Tags:Landscape
+Topic-image:Flatten_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Flatten** tool pushes or pulls all other parts of the heightmap to the level that is currently under the mouse when activated. This can raise or lower the surrounding
+heightmap values to be the same value.
+
+## Using the Flatten Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 3amWaEH13V8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 47
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Flatten tool is being used in the middle of the hillside to flatten out areas at the point where the mouse click was initiated. As long as the mouse is held down, the height value
+that was detected is used along any surface to raise or lower (depending on your tool settings) to that height.
+
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Flattens or levels by both raising and lowering or individually raising and lowering the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+The brush strength determines the amount of Flattening that can happen when using the Flatten tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+|  | (h:185) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Flatten Target** | Sets the target height toward which to flatten. |
+| **Tool Strength** | Controls how much smoothing occurs with each brush stroke has. |
+| **Flatten Mode** | Determines whether the tool will raise or lower the heightmap section under the brush. [INCLUDE:#flattenmode] |
+| **Use Slope Flatten** | If checked, flattens along the Landscape's existing slope instead of flattening toward a horizontal plane. |
+| **Pick Value Per Apply** | If checked, constantly selects new values to flatten toward, instead of only using the first clicked point. |
+| [REGION:tablesection] Advanced [/REGION] ||
+| **Show Preview Grid** | When Flatten Target is enabled, you can enable this option to show a preview grid for the flatten target height. |
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.CHN.udn
new file mode 100644
index 000000000000..a4fbef625b44
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.CHN.udn
@@ -0,0 +1,88 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Hydro-Erosion
+Description: This is an overview of the Hydro-Erosion painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:6
+Tags:Landscape
+Topic-image:HydroErosion_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Hydro Erosion** tool uses a hydraulic erosion simulation (erosion from water) to adjust the height of the Landscape heightmap. A noise filter is used to determine where the initial rain is
+distributed for the simulation. Then the simulation is calculated to determine water flow from the initial rain as well as dissolving, water transfer, and evaporation. The result of the calculation
+provides the actual value used to lower the heightmap.
+
+## Using the Hydro Erosion Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ -aPvHFmju8Y
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Hydro Erosion tool has been used to paint rain erosion onto the surface of the hillside. This makes it appear that parts of the Landscape have eroded away over time as rain
+has fallen. The tool settings can enable the amount of rain and areas that it affects to help define the look.
+
+Use the following controls to Sculpt with Hydro Erosion for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | A noise filter is used to erode parts of the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, as Hydro Erosion is used to paint onto the Landscape the heightmap runs a simulation that treats the heightmap as if rain has eroded away its surface over time. This can
+create interesting looks and crevices to the Landscape.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:200) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Rain Amount** | The amount of rain to apply to the surface. Larger values will result in more erosion. |
+| **Sediment Cap.** | The amount of sediment that the water can carry. Larger values will result in more erosion. |
+| **Iterations** | The number of iterations performed. Larger values result in more levels of erosion. |
+| **Initial Rain Distribution** | Whether rain is applied randomly or to the entire area. [INCLUDE:#raindist] |
+| **Rain Dist Scale** | The size of the noise filter for applying initial rain to the surface. The noise filter is related to position and scale, which means if you do not change **Rain Dist. Scale**, the same filter is applied to the same position many times. |
+| **Detail Smooth** | If checked, performs a detail-preserving smoothing to the erosion effect using the specified detail-smoothing value. Larger detail-smoothing values remove more details, while smaller values preserve more details. |
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.INT.udn
new file mode 100644
index 000000000000..11bbb2778c2d
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.INT.udn
@@ -0,0 +1,87 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Hydro-Erosion
+Description: This is an overview of the Hydro-Erosion painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:6
+Tags:Landscape
+Topic-image:HydroErosion_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Hydro Erosion** tool uses a hydraulic erosion simulation (erosion from water) to adjust the height of the Landscape heightmap. A noise filter is used to determine where the initial rain is
+distributed for the simulation. Then the simulation is calculated to determine water flow from the initial rain as well as dissolving, water transfer, and evaporation. The result of the calculation
+provides the actual value used to lower the heightmap.
+
+## Using the Hydro Erosion Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ -aPvHFmju8Y
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Hydro Erosion tool has been used to paint rain erosion onto the surface of the hillside. This makes it appear that parts of the Landscape have eroded away over time as rain
+has fallen. The tool settings can enable the amount of rain and areas that it affects to help define the look.
+
+Use the following controls to Sculpt with Hydro Erosion for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | A noise filter is used to erode parts of the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, as Hydro Erosion is used to paint onto the Landscape the heightmap runs a simulation that treats the heightmap as if rain has eroded away its surface over time. This can
+create interesting looks and crevices to the Landscape.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:200) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Rain Amount** | The amount of rain to apply to the surface. Larger values will result in more erosion. |
+| **Sediment Cap.** | The amount of sediment that the water can carry. Larger values will result in more erosion. |
+| **Iterations** | The number of iterations performed. Larger values result in more levels of erosion. |
+| **Initial Rain Distribution** | Whether rain is applied randomly or to the entire area. [INCLUDE:#raindist] |
+| **Rain Dist Scale** | The size of the noise filter for applying initial rain to the surface. The noise filter is related to position and scale, which means if you do not change **Rain Dist. Scale**, the same filter is applied to the same position many times. |
+| **Detail Smooth** | If checked, performs a detail-preserving smoothing to the erosion effect using the specified detail-smoothing value. Larger detail-smoothing values remove more details, while smaller values preserve more details. |
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.JPN.udn
new file mode 100644
index 000000000000..176bad901460
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.JPN.udn
@@ -0,0 +1,88 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Hydro-Erosion
+Description:Hydro-Erosion ペイント ツールの概要です。
+Type:Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:6
+Tags:Landscape
+Topic-image:HydroErosion_topic.png
+
+[TOC(start:2 end:2)]
+
+**Hydro Erosion** ツールは水による浸食のシミュレーションを行うことで、ランドスケープ ハイトマップの高さを調節します。ノイズ フィルターは、
+降り始めの雨分布のシミュレーションに使用します。その後、降り始めの雨、雨の消滅、水の移動から蒸発までの水のフローを決定するためにシミュレーションを計算します。その計算結果が、
+ハイト マップを下げる実際の値となります。
+
+## Hydro Erosion ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ -aPvHFmju8Y
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では、Hydro Erosion ツールを使って丘の斜面のサーフェス上に雨の侵食をペイントしています。雨が降り続くと、
+ランドスケープが侵食されていくように見せます。ツール設定の雨量と侵食面積を変更して、侵食の外見を調節します。
+
+以下の制御を使用して、ランドスケープ ハイトマップに水による浸食の地形を生成します。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **マウスの左ボタン** | ノイズ フィルタを使って、ハイトマップを部分的に侵食します。 |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+この例では、Hydro Erosion ツールをランドスケープ上に適用すると、時間と共にまるで雨がサーフェスを侵食しているかのようにハイトマップを処理するシミュレーションが実行されます。ランドスケープに裂け目が生成され、
+凹凸のある形状になります。
+
+
+## ツール設定
+
+[REGION:imagetable]
+| (h:75) | (h:200) |
+| --- | --- |
+|||
+[/REGION]
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Tool Strength** | 1 回のブラシ ストロークの強度を調節します。 |
+| **Rain Amount** | サーフェスへ適用するための雨量です。値が高ければ高いほど、侵食は大きくなります。 |
+| **Sediment Cap.** | 水に流される堆積物の量です。値が高ければ高いほど、侵食は大きくなります。 |
+| **Iterations** | 実行されるイタレーション数です。値が高くなるほど、浸食レベルがあがります。 |
+| **Initial Rain Distribution** | 雨をランダムに降らせるか、領域全体に降らせるかを設定します。 [INCLUDE:#raindist] |
+| **Rain Dist Scale** | 降り始めの雨をサーフェスへ適用するノイズ フィルターの大きさです。ノイズ フィルターは位置とスケールに結びつくので、**Rain Dist. Scale** を変えない限り、同じフィルターが同じ位置に繰り返し適用されます。 |
+| **Detail Smooth** | このオプションがチェックされると、指定した詳細スムージング値を使って、詳細度を維持したままのスムージングを侵食エフェクトに対して実行します。詳細スムージング値が大きくなると詳細度が下がり、詳細スムージング値が小さくなると詳細度が保たれます。 |
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.KOR.udn
new file mode 100644
index 000000000000..a4fbef625b44
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/HydroErosion/HydroErosion.KOR.udn
@@ -0,0 +1,88 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Hydro-Erosion
+Description: This is an overview of the Hydro-Erosion painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:6
+Tags:Landscape
+Topic-image:HydroErosion_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Hydro Erosion** tool uses a hydraulic erosion simulation (erosion from water) to adjust the height of the Landscape heightmap. A noise filter is used to determine where the initial rain is
+distributed for the simulation. Then the simulation is calculated to determine water flow from the initial rain as well as dissolving, water transfer, and evaporation. The result of the calculation
+provides the actual value used to lower the heightmap.
+
+## Using the Hydro Erosion Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ -aPvHFmju8Y
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Hydro Erosion tool has been used to paint rain erosion onto the surface of the hillside. This makes it appear that parts of the Landscape have eroded away over time as rain
+has fallen. The tool settings can enable the amount of rain and areas that it affects to help define the look.
+
+Use the following controls to Sculpt with Hydro Erosion for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | A noise filter is used to erode parts of the heightmap. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, as Hydro Erosion is used to paint onto the Landscape the heightmap runs a simulation that treats the heightmap as if rain has eroded away its surface over time. This can
+create interesting looks and crevices to the Landscape.
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:200) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Rain Amount** | The amount of rain to apply to the surface. Larger values will result in more erosion. |
+| **Sediment Cap.** | The amount of sediment that the water can carry. Larger values will result in more erosion. |
+| **Iterations** | The number of iterations performed. Larger values result in more levels of erosion. |
+| **Initial Rain Distribution** | Whether rain is applied randomly or to the entire area. [INCLUDE:#raindist] |
+| **Rain Dist Scale** | The size of the noise filter for applying initial rain to the surface. The noise filter is related to position and scale, which means if you do not change **Rain Dist. Scale**, the same filter is applied to the same position many times. |
+| **Detail Smooth** | If checked, performs a detail-preserving smoothing to the erosion effect using the specified detail-smoothing value. Larger detail-smoothing values remove more details, while smaller values preserve more details. |
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.CHN.udn
new file mode 100644
index 000000000000..e6f5242e2778
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.CHN.udn
@@ -0,0 +1,72 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Mirror
+Description: This is an overview of the Mirror tool.
+Type:reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:12
+Tags:Landscape
+tags:region
+Topic-image:Mirror_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Mirror** tool enables you to mirror or rotate the existing Landscape heightmap geometry along the X or Y axis.
+
+## Using the Mirror Tool
+
+1. In the Landscape tool, in **Sculpt** mode, select the **Mirror** tool.
+
+ (w:417)
+
+1. Use the **Operation** drop-down selection to choose the axis and mirroring method you would like to use for your selected landscape. The directional arrow indicates which side of the landscape geometry will be mirrored on.
+
+ (w:417)
+
+1. If necessary, adjust the **Mirror Point** values for the mirror plane or Left-click and drag the directional arrow on mirror plane into the position you want to mirror.
+
+ [REGION:note]
+ Only the currently selected **Operation** axis will be used for the **Mirror Point**. For example, if the Operation method is "-X to +X" the X axis is the only active Mirror Point that will be affected.
+ [/REGION]
+ (w:500)
+
+1. Once you are satisfied with your edits, you can hit the **Apply** button to see the results.
+
+ (w:500)
+
+ You now have a landscape with mirrored geometry.
+
+### Mirror Smoothing Width
+
+If the edge seams from mirroring your landscape look unnatural or too sharp in contrast after you apply your changes you can use **CTRL + Z** to undo your last action. Then you should adjust the **Smoothing Width** so that these
+edge vertices that are merged are softened.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the left image has no smoothing applied after the Landscape is mirrored, whereas the right is using a value of 10 to smooth the mirrored edges and reduce the harshness of the seam.
+
+## Tool Settings
+
+[REGION:imagetable]
+|  | (h:125) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Mirror Point** | This sets the location of the mirror plane. This will default to the center of the selected Landscape and in most cases will not normally need to be changed. |
+| **Operation** | The type of mirroring operation to perform. For example, -X to +X will copy and flip the -X half of the Landscape onto the +X half. |
+| **Recenter** | This button places the mirror plane back at the center of the selected Landscape. |
+| **Smoothing Width** | This will set the number of vertices on either side of the mirror plane to smooth over reducing sharp contrasting angles for mirrored sides. |
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.INT.udn
new file mode 100644
index 000000000000..027fc3d86156
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.INT.udn
@@ -0,0 +1,71 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Mirror
+Description: This is an overview of the Mirror tool.
+Type:reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:12
+Tags:Landscape
+tags:region
+Topic-image:Mirror_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Mirror** tool enables you to mirror or rotate the existing Landscape heightmap geometry along the X or Y axis.
+
+## Using the Mirror Tool
+
+1. In the Landscape tool, in **Sculpt** mode, select the **Mirror** tool.
+
+ (w:417)
+
+1. Use the **Operation** drop-down selection to choose the axis and mirroring method you would like to use for your selected landscape. The directional arrow indicates which side of the landscape geometry will be mirrored on.
+
+ (w:417)
+
+1. If necessary, adjust the **Mirror Point** values for the mirror plane or Left-click and drag the directional arrow on mirror plane into the position you want to mirror.
+
+ [REGION:note]
+ Only the currently selected **Operation** axis will be used for the **Mirror Point**. For example, if the Operation method is "-X to +X" the X axis is the only active Mirror Point that will be affected.
+ [/REGION]
+ (w:500)
+
+1. Once you are satisfied with your edits, you can hit the **Apply** button to see the results.
+
+ (w:500)
+
+ You now have a landscape with mirrored geometry.
+
+### Mirror Smoothing Width
+
+If the edge seams from mirroring your landscape look unnatural or too sharp in contrast after you apply your changes you can use **CTRL + Z** to undo your last action. Then you should adjust the **Smoothing Width** so that these
+edge vertices that are merged are softened.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the left image has no smoothing applied after the Landscape is mirrored, whereas the right is using a value of 10 to smooth the mirrored edges and reduce the harshness of the seam.
+
+## Tool Settings
+
+[REGION:imagetable]
+|  | (h:125) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Mirror Point** | This sets the location of the mirror plane. This will default to the center of the selected Landscape and in most cases will not normally need to be changed. |
+| **Operation** | The type of mirroring operation to perform. For example, -X to +X will copy and flip the -X half of the Landscape onto the +X half. |
+| **Recenter** | This button places the mirror plane back at the center of the selected Landscape. |
+| **Smoothing Width** | This will set the number of vertices on either side of the mirror plane to smooth over reducing sharp contrasting angles for mirrored sides. |
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.JPN.udn
new file mode 100644
index 000000000000..0defa5c904b0
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.JPN.udn
@@ -0,0 +1,72 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Mirror
+Description:Mirror ツールの概要です。
+Type:reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+order:12
+Tags:Landscape
+tags:region
+Topic-image:Mirror_topic.png
+
+[TOC(start:2 end:2)]
+
+**Mirror** ツールは、既存のランドスケープ ハイトマップ ジオメトリを X 軸 / Y 軸に沿ってミラーリングまたは回転させます。
+
+## Mirror ツールの使用方法
+
+1. ランドスケープ ツールの **Sculpt** モードで **Mirror** ツールを選びます。
+
+ (w:417)
+
+1. **[Operation]** ドロップダウンから、ランドスケープに適用したい軸およびミラーリング メソッドを選択します。矢印は、ランドスケープのどちら側をミラーするのかを表しています。
+
+ (w:417)
+
+1. 必要に応じて、ミラー平面に対して **Mirror Point** 値を調節する、もしくはミラー平面上の矢印を左クリックしてミラーリングする位置にドラッグします。
+
+ [REGION:note]
+ 選択した **[Opetarion]** 軸は **Mirror Point** に使用されます。例えば [Operation] メソッドが "-X to +X" の場合、影響されるアクティブなミラーポイントは X 軸のみになります。
+ [/REGION]
+ (w:500)
+
+1. これで良ければ **[Apply]** ボタンを押して結果を確認します。
+
+ (w:500)
+
+ ジオメトリをミラーリングしたランドスケープが完成しました。
+
+### Smoothing Width
+
+変更を反映させると、ランドスケープのミラーリングでエッジの継ぎ目が不自然または鋭すぎる場合は、**CTRL + Z** を使って最後の操作をアンドゥすることができます。**Smoothing Width** を調節すると、
+マージされるこれらのエッジ頂点がソフトになります。
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+この例では、左の画像はランドスケープのミラーリング後にスムージングを適用していません。一方、右の画像はミラーリングしたエッジを値 10 で滑らかにして、継ぎ目の粗さを減らしています。
+
+## ツール設定
+
+[REGION:imagetable]
+|  | (h:125) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Mirror Point** | ミラー平面の位置を設定します。選択したランドスケープの中央がデフォルトで、通常は変更する必要はありません。 |
+| **Operation** | 実行するミラーリング操作の種類です。例えば、[-X to +X] はランドスケープの -X 側をコピーして +X 側にフリップします。 |
+| **Recenter** |ミラー平面を選択したランドスケープの中央に戻すボタンです。。 |
+| **Smoothing Width** | ミラー平面のいずれかの側の頂点数を設定して、ミラーリングされた側の鋭い対比角を滑らかにします。 |
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.KOR.udn
new file mode 100644
index 000000000000..e6f5242e2778
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Mirror/Mirror.KOR.udn
@@ -0,0 +1,72 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Mirror
+Description: This is an overview of the Mirror tool.
+Type:reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:12
+Tags:Landscape
+tags:region
+Topic-image:Mirror_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Mirror** tool enables you to mirror or rotate the existing Landscape heightmap geometry along the X or Y axis.
+
+## Using the Mirror Tool
+
+1. In the Landscape tool, in **Sculpt** mode, select the **Mirror** tool.
+
+ (w:417)
+
+1. Use the **Operation** drop-down selection to choose the axis and mirroring method you would like to use for your selected landscape. The directional arrow indicates which side of the landscape geometry will be mirrored on.
+
+ (w:417)
+
+1. If necessary, adjust the **Mirror Point** values for the mirror plane or Left-click and drag the directional arrow on mirror plane into the position you want to mirror.
+
+ [REGION:note]
+ Only the currently selected **Operation** axis will be used for the **Mirror Point**. For example, if the Operation method is "-X to +X" the X axis is the only active Mirror Point that will be affected.
+ [/REGION]
+ (w:500)
+
+1. Once you are satisfied with your edits, you can hit the **Apply** button to see the results.
+
+ (w:500)
+
+ You now have a landscape with mirrored geometry.
+
+### Mirror Smoothing Width
+
+If the edge seams from mirroring your landscape look unnatural or too sharp in contrast after you apply your changes you can use **CTRL + Z** to undo your last action. Then you should adjust the **Smoothing Width** so that these
+edge vertices that are merged are softened.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the left image has no smoothing applied after the Landscape is mirrored, whereas the right is using a value of 10 to smooth the mirrored edges and reduce the harshness of the seam.
+
+## Tool Settings
+
+[REGION:imagetable]
+|  | (h:125) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Mirror Point** | This sets the location of the mirror plane. This will default to the center of the selected Landscape and in most cases will not normally need to be changed. |
+| **Operation** | The type of mirroring operation to perform. For example, -X to +X will copy and flip the -X half of the Landscape onto the +X half. |
+| **Recenter** | This button places the mirror plane back at the center of the selected Landscape. |
+| **Smoothing Width** | This will set the number of vertices on either side of the mirror plane to smooth over reducing sharp contrasting angles for mirrored sides. |
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.CHN.udn
new file mode 100644
index 000000000000..9b4e2ef05c76
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.CHN.udn
@@ -0,0 +1,88 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Noise
+Description: This is an overview of the Noise painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:7
+Tags:Landscape
+Topic-image:Noise_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Noise** tool applies a noise filter to produce variations in the surface of the Landscape heightmap.
+
+
+## Using the Noise Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0S5y-2FNRpA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Noise tool is used to paint on the Landscape, similarly to how Sculpt would be used, and in doing so variations are painted around this area that raise and lower the heightmap based
+on the tool settings. This enable you to paint grande or subtle variations into your Landscape.
+
+Use the following controls to Sculpt with Noise for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, Noise has been painted onto the smooth Landscape surface giving it variations in different heights based on the strength and property values used.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:185) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Use Target Value** | If checked, blends the values of the noise being applied toward a target value. |
+| **Noise Mode** | Determines whether to apply all noise effects, only the noise effects that result in raising the heightmap, or only the noise effects that result in lowering the heightmap. [INCLUDE:#noise] |
+| **Noise Scale** | The size of the perlin noise filter used. The noise filter is related to position and scale, which means if you do not change **Noise Scale**, the same filter is applied to the same position many times. |
+
+
+The brush strength determines the amount of raising or lowering that can happen when using the Noise tool.
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.INT.udn
new file mode 100644
index 000000000000..b68141170739
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.INT.udn
@@ -0,0 +1,87 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Noise
+Description: This is an overview of the Noise painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:7
+Tags:Landscape
+Topic-image:Noise_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Noise** tool applies a noise filter to produce variations in the surface of the Landscape heightmap.
+
+
+## Using the Noise Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0S5y-2FNRpA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Noise tool is used to paint on the Landscape, similarly to how Sculpt would be used, and in doing so variations are painted around this area that raise and lower the heightmap based
+on the tool settings. This enable you to paint grande or subtle variations into your Landscape.
+
+Use the following controls to Sculpt with Noise for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, Noise has been painted onto the smooth Landscape surface giving it variations in different heights based on the strength and property values used.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:185) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Use Target Value** | If checked, blends the values of the noise being applied toward a target value. |
+| **Noise Mode** | Determines whether to apply all noise effects, only the noise effects that result in raising the heightmap, or only the noise effects that result in lowering the heightmap. [INCLUDE:#noise] |
+| **Noise Scale** | The size of the perlin noise filter used. The noise filter is related to position and scale, which means if you do not change **Noise Scale**, the same filter is applied to the same position many times. |
+
+
+The brush strength determines the amount of raising or lowering that can happen when using the Noise tool.
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.JPN.udn
new file mode 100644
index 000000000000..5c6bdc436c29
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.JPN.udn
@@ -0,0 +1,88 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Noise
+Description:Noise ペイント ツールの概要です。
+Type:Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:7
+Tags:Landscape
+Topic-image:Noise_topic.png
+
+[TOC(start:2 end:2)]
+
+**Noise** ツールは、ノイズ フィルターを適用して、ランドスケープ ハイトマップのサーフェスに多様性を生成します。
+
+
+## Noise ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0S5y-2FNRpA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では、Noise ツールを Sculpt と同じ要領でランドスケープ上のペイントに使用しています。
+そうすると、ハイトマップこの領域周辺に、ツール設定に基づいたハイトマップに高低差を付けて多様な地形がペイントされます。ランドスケープに大きな、あるいは微妙な変化を付けることができます。
+
+ランドスケープ ハイトマップでのノイズによるスカルプトでは、以下の調節ができます。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **マウスの左ボタン** | ハイトマップを上げる、または選択したレイヤーのウェイトを増やします。
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+この例では、ノイズを滑らかなランドスケープのサーフェスにペイントし、強度とプロパティ値を調節して高低差を出しています。
+
+## ツール設定
+
+[REGION:imagetable]
+| (h:75) | (h:185) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Tool Strength** | 1 回のブラシ ストロークの強度を調節します。 |
+| **Use Target Value** | チェックが入っていると、適用されているノイズの値をターゲット値に適用します。 |
+| **Noise Mode** | 適用するのは、全てのノイズ エフェクトか、ハイトマップを上げるノイズ エフェクトのみか、それともハイトマップを下げるノイズ エフェクトのみかを判断します。 [INCLUDE:#noise] |
+| **Noise Scale** | 使用するパーリン ノイズ フィルターの大きさです。ノイズ フィルターは、位置とスケールに関係します。したがって、**Noise Scale** に変更がない限り、同じフィルターが同じ位置に何度も適用されます。 |
+
+
+Noise ツールを使う場合、ブラシの強度で高さ / 低さが決まります。
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.KOR.udn
new file mode 100644
index 000000000000..9b4e2ef05c76
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Noise/Noise.KOR.udn
@@ -0,0 +1,88 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Noise
+Description: This is an overview of the Noise painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:7
+Tags:Landscape
+Topic-image:Noise_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Noise** tool applies a noise filter to produce variations in the surface of the Landscape heightmap.
+
+
+## Using the Noise Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0S5y-2FNRpA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 49
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Noise tool is used to paint on the Landscape, similarly to how Sculpt would be used, and in doing so variations are painted around this area that raise and lower the heightmap based
+on the tool settings. This enable you to paint grande or subtle variations into your Landscape.
+
+Use the following controls to Sculpt with Noise for your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, Noise has been painted onto the smooth Landscape surface giving it variations in different heights based on the strength and property values used.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:185) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Use Target Value** | If checked, blends the values of the noise being applied toward a target value. |
+| **Noise Mode** | Determines whether to apply all noise effects, only the noise effects that result in raising the heightmap, or only the noise effects that result in lowering the heightmap. [INCLUDE:#noise] |
+| **Noise Scale** | The size of the perlin noise filter used. The noise filter is related to position and scale, which means if you do not change **Noise Scale**, the same filter is applied to the same position many times. |
+
+
+The brush strength determines the amount of raising or lowering that can happen when using the Noise tool.
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.CHN.udn
new file mode 100644
index 000000000000..46b478810bc6
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.CHN.udn
@@ -0,0 +1,78 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Ramp
+Description: This is an overview of the Ramp painting tool.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:4
+Tags:Landscape
+Topic-image:Ramp_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Ramp** tool enables you to select two locations on your Landscape and create a flat ramp between the two points, with a falloff you specify for the sides.
+
+
+## Using the Ramp Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 1x0eN4Fib34
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+1. In the Landscape tool, in the **Sculpt** mode, select the **Ramp** tool.
+
+ (w:400)
+
+1. In the viewport on your Landscape, **Left-click** and drag or simply Left-click in two different places to mark the beginning and end points of the ramp.
+
+ (w:500)
+
+ [REGION:tip]
+ If you change your mind about adding a ramp after starting to set the beginning and end points, you can click **Reset** to clear them.
+ [/REGION]
+
+1. Select either marker and adjust its position. In this case, it has been moved along the Z-axis above the Landscape surface.
+
+ (w:500)
+
+1. When you're satisfied with the position, click the **Add Ramp** button in the Tool Settings to create the ramp.
+
+ (w:400)
+
+ Now, you'll have a ramp that has been sculpted into your heightmap.
+
+ (w:500)
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:120) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Ramp Width** | Sets the width of the ramp. |
+| **Side Falloff** | Sets the edge falloff on the sides of the ramp where it merges inot the rest of the landscape. This falloff gives a softness to the edge flow on these sides. A setting of **0** means no falloff; a setting of **1** means all falloff and no flat surface for the ramp. |
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.INT.udn
new file mode 100644
index 000000000000..b9d54e01cf63
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.INT.udn
@@ -0,0 +1,77 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Ramp
+Description: This is an overview of the Ramp painting tool.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:4
+Tags:Landscape
+Topic-image:Ramp_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Ramp** tool enables you to select two locations on your Landscape and create a flat ramp between the two points, with a falloff you specify for the sides.
+
+
+## Using the Ramp Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 1x0eN4Fib34
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+1. In the Landscape tool, in the **Sculpt** mode, select the **Ramp** tool.
+
+ (w:400)
+
+1. In the viewport on your Landscape, **Left-click** and drag or simply Left-click in two different places to mark the beginning and end points of the ramp.
+
+ (w:500)
+
+ [REGION:tip]
+ If you change your mind about adding a ramp after starting to set the beginning and end points, you can click **Reset** to clear them.
+ [/REGION]
+
+1. Select either marker and adjust its position. In this case, it has been moved along the Z-axis above the Landscape surface.
+
+ (w:500)
+
+1. When you're satisfied with the position, click the **Add Ramp** button in the Tool Settings to create the ramp.
+
+ (w:400)
+
+ Now, you'll have a ramp that has been sculpted into your heightmap.
+
+ (w:500)
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:120) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Ramp Width** | Sets the width of the ramp. |
+| **Side Falloff** | Sets the edge falloff on the sides of the ramp where it merges inot the rest of the landscape. This falloff gives a softness to the edge flow on these sides. A setting of **0** means no falloff; a setting of **1** means all falloff and no flat surface for the ramp. |
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.JPN.udn
new file mode 100644
index 000000000000..72dcb290cb65
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.JPN.udn
@@ -0,0 +1,78 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Ramp
+Description:Ramp ペイント ツールの概要です。
+Type:Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:4
+Tags:Landscape
+Topic-image:Ramp_topic.png
+
+[TOC(start:2 end:2)]
+
+**Ramp** ツールにより、ランドスケープ上で 2 つの位置を選び、側面にフォールオフを指定して、それらの間に平面の傾斜を作成することができます。
+
+
+## Ramp ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 1x0eN4Fib34
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+1. Landscape ツールの **Sculpt** モードで、**Ramp** ツールを選択します。
+
+ (w:400)
+
+1. ランドスケープのビューポートで、**左クリック** してドラッグ、または異なる 2 つの位置を左クリックして、傾斜の開始ポイントと終了ポイントに印をつけます。
+
+ (w:500)
+
+ [REGION:tip]
+ 開始および終了ポイントの設定途中で傾斜の追加を中止する場合は **[Reset (リセット)]** をクリックしてクリアします。
+ [/REGION]
+
+1. いずれかの印を選択して、位置を調節します。このケースでは、ランドスケープ サーフェス上で Z 軸に平行に移動しています。
+
+ (w:500)
+
+1. 位置が調節できたら、[Tool Settings (ツール設定)] の **[Add Ramp (傾斜を追加)]** ボタンを押します。
+
+ (w:400)
+
+ これで、ハイトマップに傾斜が生成されました。
+
+ (w:500)
+
+
+## ツール設定
+
+[REGION:imagetable]
+| (h:75) | (h:120) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Ramp Width** | 傾斜の幅を設定します。 |
+| **Side Falloff** | 傾斜の側面にフォールオフを設定し、そこがランドスケープの残りの部分にマージされます。フォールオフにより、傾斜側面のエッジ フローがソフトな印象になります。**0** を設定するとフォールオフなし、**1** を設定するとすべてフォールオフで平面の傾斜はなし、ということになります。 |
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.KOR.udn
new file mode 100644
index 000000000000..46b478810bc6
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Ramp/Ramp.KOR.udn
@@ -0,0 +1,78 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Ramp
+Description: This is an overview of the Ramp painting tool.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:4
+Tags:Landscape
+Topic-image:Ramp_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Ramp** tool enables you to select two locations on your Landscape and create a flat ramp between the two points, with a falloff you specify for the sides.
+
+
+## Using the Ramp Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 1x0eN4Fib34
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+1. In the Landscape tool, in the **Sculpt** mode, select the **Ramp** tool.
+
+ (w:400)
+
+1. In the viewport on your Landscape, **Left-click** and drag or simply Left-click in two different places to mark the beginning and end points of the ramp.
+
+ (w:500)
+
+ [REGION:tip]
+ If you change your mind about adding a ramp after starting to set the beginning and end points, you can click **Reset** to clear them.
+ [/REGION]
+
+1. Select either marker and adjust its position. In this case, it has been moved along the Z-axis above the Landscape surface.
+
+ (w:500)
+
+1. When you're satisfied with the position, click the **Add Ramp** button in the Tool Settings to create the ramp.
+
+ (w:400)
+
+ Now, you'll have a ramp that has been sculpted into your heightmap.
+
+ (w:500)
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:120) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Ramp Width** | Sets the width of the ramp. |
+| **Side Falloff** | Sets the edge falloff on the sides of the ramp where it merges inot the rest of the landscape. This falloff gives a softness to the edge flow on these sides. A setting of **0** means no falloff; a setting of **1** means all falloff and no flat surface for the ramp. |
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.CHN.udn
new file mode 100644
index 000000000000..686104d2a461
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.CHN.udn
@@ -0,0 +1,76 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Region Selection
+Description: This is an overview of the Region Selection tool.
+Type: reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:10
+Tags:Landscape
+tags:region
+Topic-image:RegionSelection_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Region Selection** tool selects regions of the Landscape using the current brush settings and the tool strength to be used to fit a Landscape [gizmo](Engine\Landscape\Editing\Gizmos) to a
+specific area or to act as a mask for copying data to, or pasting data from, a gizmo.
+
+## Using the Region Selection Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ hbWfSsZzmiY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Region Selection tool has been used to paint an area of the Landscape using the default positive method, then switching to the negative mask method that enables you to paint areas that
+don't want to include, and finally showing the Use Region As Mask section that captures the entirety of a Landscape component that is painted rather than just areas within it.
+
+Use the following controls to paint areas that can be used for selection by doing the following:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Adds to the selected region. |
+| **Shift + Left Mouse Button** | Removes from the selected region. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, an area has been painted for selection that can then be used for masking layers or with the Copy/Paste tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:135) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Clear Region Selection** | Clears the current selected region(s). |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Use Region as Mask** | When checked, the region selection acts as a mask with the active area being comprised of the selected region. |
+| (w:640) ||
+| **Negative Mask** | When checked, and when **Use Region as Mask** is also checked, the region selection acts as a mask, but the active area is comprised of the unselected region. |
+| (w:640) ||
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.INT.udn
new file mode 100644
index 000000000000..d35413d2e2a6
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.INT.udn
@@ -0,0 +1,75 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Region Selection
+Description: This is an overview of the Region Selection tool.
+Type: reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:10
+Tags:Landscape
+tags:region
+Topic-image:RegionSelection_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Region Selection** tool selects regions of the Landscape using the current brush settings and the tool strength to be used to fit a Landscape [gizmo](Engine\Landscape\Editing\Gizmos) to a
+specific area or to act as a mask for copying data to, or pasting data from, a gizmo.
+
+## Using the Region Selection Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ hbWfSsZzmiY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Region Selection tool has been used to paint an area of the Landscape using the default positive method, then switching to the negative mask method that enables you to paint areas that
+don't want to include, and finally showing the Use Region As Mask section that captures the entirety of a Landscape component that is painted rather than just areas within it.
+
+Use the following controls to paint areas that can be used for selection by doing the following:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Adds to the selected region. |
+| **Shift + Left Mouse Button** | Removes from the selected region. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, an area has been painted for selection that can then be used for masking layers or with the Copy/Paste tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:135) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Clear Region Selection** | Clears the current selected region(s). |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Use Region as Mask** | When checked, the region selection acts as a mask with the active area being comprised of the selected region. |
+| (w:640) ||
+| **Negative Mask** | When checked, and when **Use Region as Mask** is also checked, the region selection acts as a mask, but the active area is comprised of the unselected region. |
+| (w:640) ||
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.JPN.udn
new file mode 100644
index 000000000000..5f94639308b1
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.JPN.udn
@@ -0,0 +1,76 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Region Selection
+Description:Region Selection ツールの概要です。
+Type: reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:10
+Tags:Landscape
+tags:region
+Topic-image:RegionSelection_topic.png
+
+[TOC(start:2 end:2)]
+
+**Region Selection** ツールは、現在のブラシ設定とツールの強度を使ってランドスケープのリージョンを選択することで、ランドスケープ [ギズモ](Engine\Landscape\Editing\Gizmos) を特定のエリアにフィットさせるだけでなく、
+ギズモへデータをコピーするマスクや、ギズモからデータをペーストするマスクとしても使用することができます。
+
+## Region Selection ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ hbWfSsZzmiY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では、Region Selection ツールを使ってランドスケープをペイントしています。まずデフォルトの Positive Mask 使った後で、インクルードしたくない領域をペイントする Negafive Mask を使い、
+最後に、含まれている領域だけではなくペイントされた Landscape コンポーネント全体をキャプチャする [Use Region As Mask] セクションを表示しています。
+
+選択範囲のペイントには、以下の制御を使用します。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **マウスの左ボタン** | 選択したリージョンへ追加します。 |
+| **Shift + マウスの左ボタン** | 選択したリージョンから削除します。 |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+この例では、レイヤーをマスクするため、または Copy/Paste ツールと使用するための選択用にペイントされています。
+
+## ツール設定
+
+[REGION:imagetable]
+| (h:75) | (h:135) |
+| --- | --- |
+|||
+[/REGION]
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Clear Region Selection** | 現在選択中のリージョンを解除します。 |
+| **Tool Strength** | 1 回のブラシ ストロークの強度を調節します。 |
+| **Use Region as Mask** | チェックが入っている場合は、選択されたリージョンを構成しているアクティブな領域が選択領域がマスクとして機能します。
+| (w:640) ||
+| **Negative Mask** | **Use Region as Mask** と共にチェックが入っている場合は、リージョン選択はマスクとしての役割をしますが、アクティブな領域は選択されていないリージョンで構成されています。
+| (w:640) ||
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.KOR.udn
new file mode 100644
index 000000000000..686104d2a461
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/RegionSelection/RegionSelection.KOR.udn
@@ -0,0 +1,76 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Region Selection
+Description: This is an overview of the Region Selection tool.
+Type: reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:10
+Tags:Landscape
+tags:region
+Topic-image:RegionSelection_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Region Selection** tool selects regions of the Landscape using the current brush settings and the tool strength to be used to fit a Landscape [gizmo](Engine\Landscape\Editing\Gizmos) to a
+specific area or to act as a mask for copying data to, or pasting data from, a gizmo.
+
+## Using the Region Selection Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ hbWfSsZzmiY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Region Selection tool has been used to paint an area of the Landscape using the default positive method, then switching to the negative mask method that enables you to paint areas that
+don't want to include, and finally showing the Use Region As Mask section that captures the entirety of a Landscape component that is painted rather than just areas within it.
+
+Use the following controls to paint areas that can be used for selection by doing the following:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Adds to the selected region. |
+| **Shift + Left Mouse Button** | Removes from the selected region. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, an area has been painted for selection that can then be used for masking layers or with the Copy/Paste tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:135) |
+| --- | --- |
+|||
+[/REGION]
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Clear Region Selection** | Clears the current selected region(s). |
+| **Tool Strength** | Controls how much effect each brush stroke has. |
+| **Use Region as Mask** | When checked, the region selection acts as a mask with the active area being comprised of the selected region. |
+| (w:640) ||
+| **Negative Mask** | When checked, and when **Use Region as Mask** is also checked, the region selection acts as a mask, but the active area is comprised of the unselected region. |
+| (w:640) ||
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.CHN.udn
new file mode 100644
index 000000000000..e232059d1d8e
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.CHN.udn
@@ -0,0 +1,92 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Retopologize
+Description: This is an overview of the Retopologize painting tool.
+Type: reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:8
+Tags:Landscape
+Topic-image:Retopo_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Retopologize** tool automatically adjusts Landscape vertices with an X/Y offset map to improve vertex density in areas that need it, like steep cliffs. This allows for reduced texture stretching in
+these types of areas by spreading the vertices into these areas that are less dense.
+
+[REGION:note]
+An X/Y offset map will make the Landscape slower to render and paint on with other tools, so only use the Retopologize tool if needed.
+[/REGION]
+
+
+## Using the Retopologize Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ o4dVt1tGJt4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, we have a steep incline that was created by flattening an area, however, it left these vertical areas with fewer Landscape vertices spread across the surface which caused the textures to
+appear stretched and some jagged artifacts around the edges of the flattened area. By using the Retopologize tool the surrounding vertices have been pulled and redistributed without significantly altering the
+work that was done to make the flattened area. This reduces the stretching and jagged edges that appear.
+
+Use the following controls to paint an X/Y offset map to retopologize your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+
+[REGION:imagetable]
+| [INCLUDE:#lit] | [INCLUDE:#wireframe] |
+| ---- | ---- |
+| Retopologize Lit View | Retopologize Wireframe View |
+[/REGION]
+
+In these comparison examples, you can see how the texture stretching has been reduced in these sharp inclines for the lit view and with the wireframe view you can see how the vertices have been redistributed
+to be more evenly spaced in these steep inclines.
+
+
+
+### Tool Settings
+
+
+
+There are no tool settings specific to Retopologize that can be adjusted. Simply select the tool from the selection and paint the areas in your Landscape that need to have their vertex density redistributed.
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.INT.udn
new file mode 100644
index 000000000000..5cc2e5f33b7c
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.INT.udn
@@ -0,0 +1,91 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Retopologize
+Description: This is an overview of the Retopologize painting tool.
+Type: reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:8
+Tags:Landscape
+Topic-image:Retopo_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Retopologize** tool automatically adjusts Landscape vertices with an X/Y offset map to improve vertex density in areas that need it, like steep cliffs. This allows for reduced texture stretching in
+these types of areas by spreading the vertices into these areas that are less dense.
+
+[REGION:note]
+An X/Y offset map will make the Landscape slower to render and paint on with other tools, so only use the Retopologize tool if needed.
+[/REGION]
+
+
+## Using the Retopologize Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ o4dVt1tGJt4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, we have a steep incline that was created by flattening an area, however, it left these vertical areas with fewer Landscape vertices spread across the surface which caused the textures to
+appear stretched and some jagged artifacts around the edges of the flattened area. By using the Retopologize tool the surrounding vertices have been pulled and redistributed without significantly altering the
+work that was done to make the flattened area. This reduces the stretching and jagged edges that appear.
+
+Use the following controls to paint an X/Y offset map to retopologize your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+
+[REGION:imagetable]
+| [INCLUDE:#lit] | [INCLUDE:#wireframe] |
+| ---- | ---- |
+| Retopologize Lit View | Retopologize Wireframe View |
+[/REGION]
+
+In these comparison examples, you can see how the texture stretching has been reduced in these sharp inclines for the lit view and with the wireframe view you can see how the vertices have been redistributed
+to be more evenly spaced in these steep inclines.
+
+
+
+### Tool Settings
+
+
+
+There are no tool settings specific to Retopologize that can be adjusted. Simply select the tool from the selection and paint the areas in your Landscape that need to have their vertex density redistributed.
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.JPN.udn
new file mode 100644
index 000000000000..8c0ff86ce81e
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.JPN.udn
@@ -0,0 +1,92 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Retopologize
+Description:Retopologize ペイント ツールの概要です。
+Type: reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:8
+Tags:Landscape
+Topic-image:Retopo_topic.png
+
+[TOC(start:2 end:2)]
+
+**Retopologize** ツールは、ランドスケープの頂点を X/Y オフセット マップで自動調整し、がん壁など調整が必要な領域の頂点密度を改善します。低密度の領域で頂点が散らばることによって
+発生するテクスチャの伸縮を抑えます。
+
+[REGION:note]
+X/Y オフセット マップは、他のツールによるレンダリングやペイントのパフォーマンスに影響するので、Retopologize ツールは必要な場合のみ使用します。
+[/REGION]
+
+
+## Retopologize ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ o4dVt1tGJt4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では、領域を平坦化して急傾斜が作成されていますが、これらの頂点領域ではサーフェス上にランドスケープ頂点がほとんど散らばっていないため、
+平坦化された領域のエッジ周辺のテクスチャが伸縮したり、粗削りのアーティファクトが発生します。Retopologize ツールを使うと、完了した作業に大きな変更を加えることなく、
+周囲の頂点を集めて再分配し、平坦化した領域を作ります。これにより、伸縮あるいは粗削りになったエッジを和らげます。
+
+以下の制御を使っ X/Y オフセット マップをペイントして、ランドスケープ ハイトマップのリトポロジー処理を行います。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **マウスの左ボタン** | ハイトマップを上げる、または選択したレイヤーのウェイトを増やします。
+
+[REGION:imagetable]
+| [INCLUDE:#lit] | [INCLUDE:#wireframe] |
+| ---- | ---- |
+| リット ビューをリトポロジー処理 | ワイヤーフレーム ビューをリトポロジー処理 |
+[/REGION]
+
+上の比較を見ると、リット ビューではテクスチャの伸縮が急傾斜の部分で緩和されていることが分かります。
+ワイヤーフレーム ビューでは、急傾斜の部分で頂点が等間隔で再分布されていることが分かります。
+
+
+
+### ツール設定
+
+
+
+Retopologize のみを調整するツール設定はありません。選択からツールを選択し、ランドスケープで頂点密度の再分布が必要な領域をペイントします。
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.KOR.udn
new file mode 100644
index 000000000000..e232059d1d8e
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Retopologize/Retopologize.KOR.udn
@@ -0,0 +1,92 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Retopologize
+Description: This is an overview of the Retopologize painting tool.
+Type: reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:8
+Tags:Landscape
+Topic-image:Retopo_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Retopologize** tool automatically adjusts Landscape vertices with an X/Y offset map to improve vertex density in areas that need it, like steep cliffs. This allows for reduced texture stretching in
+these types of areas by spreading the vertices into these areas that are less dense.
+
+[REGION:note]
+An X/Y offset map will make the Landscape slower to render and paint on with other tools, so only use the Retopologize tool if needed.
+[/REGION]
+
+
+## Using the Retopologize Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ o4dVt1tGJt4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, we have a steep incline that was created by flattening an area, however, it left these vertical areas with fewer Landscape vertices spread across the surface which caused the textures to
+appear stretched and some jagged artifacts around the edges of the flattened area. By using the Retopologize tool the surrounding vertices have been pulled and redistributed without significantly altering the
+work that was done to make the flattened area. This reduces the stretching and jagged edges that appear.
+
+Use the following controls to paint an X/Y offset map to retopologize your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+
+[REGION:imagetable]
+| [INCLUDE:#lit] | [INCLUDE:#wireframe] |
+| ---- | ---- |
+| Retopologize Lit View | Retopologize Wireframe View |
+[/REGION]
+
+In these comparison examples, you can see how the texture stretching has been reduced in these sharp inclines for the lit view and with the wireframe view you can see how the vertices have been redistributed
+to be more evenly spaced in these steep inclines.
+
+
+
+### Tool Settings
+
+
+
+There are no tool settings specific to Retopologize that can be adjusted. Simply select the tool from the selection and paint the areas in your Landscape that need to have their vertex density redistributed.
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.CHN.udn
new file mode 100644
index 000000000000..e77f17b2b3b2
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.CHN.udn
@@ -0,0 +1,63 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Sculpt
+Description: This is an overview of the Sculpt painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:1
+Tags:Landscape
+Topic-image:Landscape_Sculpt_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Sculpt** tool enables you to raise and lower the height of the Landscape heightmap in the shape of the currently selected brush and falloff.
+
+## Using the Sculpt Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ HjZBhUsKa3s
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 47
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Sculpt tool applies height values to raise or lower the height data for the Landscape. Simply clicking and applying movement over the region you want to paint
+will adjust the values based on the tool settings used.
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+| **Shift + Left Mouse Button** | Lowers or decreases the heightmap or selected layer's weight. |
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:75) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. If you're using a pen/tablet with pressure-sensing used, this will affect the strength of the tool. |
+| **Use Target Value** | Enables a target value that the tools blend toward with each brush stroke. |
+
+The brush strength determines the amount of raising or lowering that can happen when using the Sculpting tool.
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.INT.udn
new file mode 100644
index 000000000000..116a0f615a65
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.INT.udn
@@ -0,0 +1,62 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Sculpt
+Description: This is an overview of the Sculpt painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:1
+Tags:Landscape
+Topic-image:Landscape_Sculpt_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Sculpt** tool enables you to raise and lower the height of the Landscape heightmap in the shape of the currently selected brush and falloff.
+
+## Using the Sculpt Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ HjZBhUsKa3s
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 47
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Sculpt tool applies height values to raise or lower the height data for the Landscape. Simply clicking and applying movement over the region you want to paint
+will adjust the values based on the tool settings used.
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+| **Shift + Left Mouse Button** | Lowers or decreases the heightmap or selected layer's weight. |
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:75) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. If you're using a pen/tablet with pressure-sensing used, this will affect the strength of the tool. |
+| **Use Target Value** | Enables a target value that the tools blend toward with each brush stroke. |
+
+The brush strength determines the amount of raising or lowering that can happen when using the Sculpting tool.
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.JPN.udn
new file mode 100644
index 000000000000..5e125ba930f1
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.JPN.udn
@@ -0,0 +1,63 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Sculpt
+Description:Sculpt ペイント ツールの概要です。
+Type:Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:1
+Tags:Landscape
+Topic-image:Landscape_Sculpt_topic.png
+
+[TOC(start:2 end:2)]
+
+**Sculpt** ツールは、選択中のブラシとフォールオフという形でランドスケープの高さの上げ下げをします。
+
+## Sculpt ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ HjZBhUsKa3s
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 47
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では、Sculpt ツールはハイト値を適用して、ランドスケープのハイト データの上げ下げをしています。ペイントしたいリージョンの上をクリックして移動させると、
+ツール設定に基づいて値が調整されます。
+
+以下の制御を使って、ランドスケープ ハイトマップを生成します。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **マウスの左ボタン** | ハイトマップを上げる、または選択したレイヤーのウェイトを増やします。
+| **Shift + マウスの左ボタン** | 高さマップまたは選択したレイヤーのウエイトを下げる、または減らします。 |
+
+
+## ツール設定
+
+[REGION:imagetable]
+| (h:75) | (h:75) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Tool Strength** | 1 回のブラシ ストロークの強度を調節します。圧力センサーのペン / タブレットを使う場合、ツールの強度に影響します。 |
+| **Use Target Value** | ブラシ ストロークごとにツールがブレンドするターゲット値を有効にします。 |
+
+Sculpting ツールを使う場合、ブラシの強度で高さ / 低さが決まります。
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.KOR.udn
new file mode 100644
index 000000000000..e77f17b2b3b2
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Sculpt/Sculpt.KOR.udn
@@ -0,0 +1,63 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Sculpt
+Description: This is an overview of the Sculpt painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:1
+Tags:Landscape
+Topic-image:Landscape_Sculpt_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Sculpt** tool enables you to raise and lower the height of the Landscape heightmap in the shape of the currently selected brush and falloff.
+
+## Using the Sculpt Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ HjZBhUsKa3s
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 47
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Sculpt tool applies height values to raise or lower the height data for the Landscape. Simply clicking and applying movement over the region you want to paint
+will adjust the values based on the tool settings used.
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
+| **Shift + Left Mouse Button** | Lowers or decreases the heightmap or selected layer's weight. |
+
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:75) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much effect each brush stroke has. If you're using a pen/tablet with pressure-sensing used, this will affect the strength of the tool. |
+| **Use Target Value** | Enables a target value that the tools blend toward with each brush stroke. |
+
+The brush strength determines the amount of raising or lowering that can happen when using the Sculpting tool.
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/SculptMode.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/SculptMode.INT.udn
index 4bc962c18cee..73ea99f58352 100644
--- a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/SculptMode.INT.udn
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/SculptMode.INT.udn
@@ -1,315 +1,77 @@
Availability: Public
-Title:Sculpt Mode
-Crumbs: %ROOT%, Engine, Engine/Landscape, Engine/Landscape/Editing
-Description:Guide to the Landscape tool's Sculpt mode.
-version: 4.9
-
-[VAR:Topic]
-[OBJECT:Topiccompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Landscape/Editing/SculptMode:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Landscape/Editing/SculptMode:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Landscape/Editing/SculptMode]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
+Crumbs: %ROOT%
+Title: Sculpt Mode
+Description: Guide to the Landscape tool's Sculpt mode.
+Type: Landing
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Landscape/Editing
+Related:Engine/Landscape/Editing/Brushes
+Related:Engine/Landscape/UI
+Order:
+Tags:Landscape
+topic-image:Landscape_Sculpt_topic.png
[TOC(start:2 end:3)]
-The process of sculpting a Landscape involves using one or more tools that modify the underlying heightmap. These tools range from the simple Sculpt tool to other tools that use complex algorithms to apply interesting effects to the heightmap, such as erosion. Each tool has a set of properties that determine how the tool affects the Landscape.
+The process of sculpting a Landscape involves using one or more tools that modify the underlying heightmap. These tools range from the simple Sculpt tool that paints
+height values using a brush and strength scale to many other tools that use complex algorithms to apply interesting effects to the heightmap, such as erosion. Each
+tool has a set of properties that determines how the tool affects the Landscape.
-[REGION:tip]
-Landscape Paint Mode also works in the VR Editor. For the controls for using Landscape in VR, see the [](Engine/Editor/VR/Controls).
+(w:900)
+
+## Tool Workflow
+
+Once you've [created your Landscape](Engine/Landscape/Creation), you will have access to the other features of the Landscape tool, like Sculpting by selecting the **Sculpt** mode button.
+
+(w:325)
+
+Once selected, the Sculpt tool options will become available for choosing the type of sculpting tool along with the [brush style and falloff type](engine/landscape/editing/brushes) you'd like to use to apply their effects using strokes to your landscape heightmap.
+
+[REGION:raw]
+(w:450)
[/REGION]
+With your Sculpting tool selected, you can now use the following controls to start sculpting your landscape:
-The currently selected tool determines the operation that will be performed on the Landscape. The tools use [brushes](Engine\Landscape\Editing\Brushes) to apply their effects using strokes.
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ I_EzqWISGFI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
| **Common Controls** | **Operation** |
| --- | --- |
-| **Left Mouse Button** | Performs a stroke that applies the selected tool's effects to the heightmap. |
+| **Left Mouse Button** | Performs a stroke that applies an additive application of the selected tool's effects to the heightmap. |
+| **Left Mouse Button + Shift** | Performs a stroke that applies a subtractive application of the selected tool's effects to the heightmap. |
| **Ctrl + Z** | Undoes last stroke. |
| **Ctrl + Y** | Redoes last undone stroke. |
For a quick reference guide to the Landscape tool's various modes, tools, and brushes, see [](Engine/Landscape/UI).
+
## Sculpting Tools
-You can use the Sculpting Tools to modify the shape of your Landscape in various ways.
+The **Sculpting Tools** enable you to modify the shape of your Landscape in various ways. Explore the different sculpting selections available below:
-### Sculpt
-
-
-
-The **Sculpt** tool increases or decreases the heightmap height in the shape of the currently selected brush and falloff.
-
-| **Alternate Controls** | **Operation** |
-| --- | --- |
-| **Left Mouse Button** | Heightens or increases the heightmap or selected layer's weight. |
-| **Shift + Left Mouse Button** | Lowers or decreases the heightmap or selected layer's weight. |
-
-**Options:**
-
-| **Option** | **Description** |
-| --- | --- |
-| **Tool Strength** | Controls how much effect each brush stroke has. |
-
-The brush strength determines the amount of raising or lowering.
-
-
-### Smooth
-
-
-
-The **Smooth** tool smooths the heightmap. The strength determines the amount of smoothing.
-
-**Heightmap Smoothing**
-
-(w:900 h:325)
-
-(w:900 h:325)
-
-| **Option** | **Description** |
-| --- | --- |
-| **Tool Strength** | Controls how much smoothing occurs with each brush stroke has. |
-| **Filter Kernel Scale** | Sets the scale multiplier for the smoothing filter kernel. |
-| **Detail Smooth** | If checked, performs a detail-preserving smoothing using the specified detail-smoothing value. Larger-detail smoothing values remove more details, while smaller values preserve more details. [INCLUDE:#DetailSmooth] |
-
-
-
-
-### Flatten
-
-
-
-The **Flatten** tool flattens the Landscape to the level of the Landscape under the mouse cursor when you first activate the tool.
-
-(w:900 h:325)
-
-(w:900 h:325)
-
-| **Option** | **Description** |
-| --- | --- |
-| **Tool Strength** | Controls how much smoothing occurs with each brush stroke has. |
-| **Flatten Mode** | Determines whether the tool will raise or lower the heightmap section under the brush. |
-| **Use Slope Flatten** | If checked, flattens along the Landscape's existing slope instead of flattening toward a horizontal plane. |
-| **Pick Value Per Apply** | If checked, constantly selects new values to flatten toward, instead of only using the first clicked point. |
-| **Flatten Target** | Sets the target height toward which to flatten. |
-
-
-### Ramp
-
-
-
-The **Ramp** tool enables you to select two locations on your Landscape and create a flat ramp between them, with a falloff you specify on the sides.
-
-**To add a ramp to your Landscape:**
-
-1. **Ctrl + Left-click** in two locations to mark the beginning and end points of the ramp.
-
- (w:700)
-
-1. If necessary, adjust the options you want for the ramp's width and falloff.
-
- 
-
-1. Click **Add Ramp** to create the ramp.
-
- 
-
- (w:700)
-
-(w:900)
-
-(w:900)
-
-
-[REGION:tip]
-If you change your mind about adding a ramp after starting to set the beginning and end points, you can click **Reset** to clear them.
-[/REGION]
-
-| **Option** | **Description** |
-| --- | --- |
-| **Ramp Width** | Sets the width of the ramp. |
-| **Side Falloff** | Sets the falloff on the sides of the ramp, where it merges into the rest of the Landscape. A setting of **0** means no falloff; a setting of **1** means all falloff and no flat ramp. |
-
-
-### Erosion
-
-
-
-The **Erosion** tool uses a thermal erosion simulation to adjust the height of the heightmap. This simulates the transfer of soil from higher elevations to lower elevations. The larger the difference in elevation, the more erosion will occur. This tool also applies a noise effect on top of the erosion, if desired, to provide a more natural random appearance.
-
-
-(w:900 h:325)
-
-(w:900 h:325)
-
-| **Option** | **Description** |
-| --- | --- |
-| **Tool Strength** | Controls how much effect each brush stroke has. |
-| **Threshold** | The minimum height difference necessary for the erosion effects to be applied. Smaller values will result in more erosion being applied. |
-| **Surface Thickness** | The thickness of the surface for the layer weight erosion effect. |
-| **Iterations** | The number of iterations performed. Larger values result in more levels of erosion. |
-| **Noise Mode** | Whether to apply noise to raise or lower the heightmap, or do both. |
-| **Noise Scale** | The size of the noise filter used. The noise filter is related to position and scale, which means if you do not change **Noise Scale**, the same filter is applied to the same position many times. |
-| (w:900 h:325) ||
-
-
-
-### Hydro Erosion
-
-
-
-The **Hydro Erosion** tool uses a hydraulic erosion simulation, i.e. erosion from water, to adjust the height of the heightmap. A noise filter is used to determine where the initial rain is distributed. Then the simulation is calculated to determine water flow from that initial rain as well as dissolving, water transfer, and evaporation. The result of that calculation provides the actual value used to lower the heightmap.
-
-(w:900 h:325)
-
-(w:900 h:325)
-
-| **Option** | **Description** |
-| --- | --- |
-| **Tool Strength** | Controls how much effect each brush stroke has. |
-| **Rain Amount** | The amount of rain to apply to the surface. Larger values will result in more erosion. |
-| **Sediment Cap.** | The amount of sediment that the water can carry. Larger values will result in more erosion. |
-| **Iterations** | The number of iterations performed. Larger values result in more levels of erosion. |
-| **Initial Rain Distribution** | Whether rain is applied only where the noise filter is positive, or to the entire area. |
-| (w:900 h:325) ||
-| **Rain Dist Scale** | The size of the noise filter for applying initial rain to the surface. The noise filter is related to position and scale, which means if you do not change **Rain Dist. Scale**, the same filter is applied to the same position many times. |
-| **Detail Smooth** | If checked, performs a detail-preserving smoothing to the erosion effect using the specified detail-smoothing value. Larger detail-smoothing values remove more details, while smaller values preserve more details. |
-
-
-
-### Noise
-
-
-
-The **Noise** tool applies a noise filter to the heightmap or layer weight. The strength determines the amount of noise.
-
-| **Option** | **Description** |
-| --- | --- |
-| **Tool Strength** | Controls how much effect each brush stroke has. |
-| **Use Target Value** | If checked, blends the values of the noise being applied toward a target value. |
-| **Noise Mode** | Determines whether to apply all noise effects, only the noise effects that result in raising the heightmap, or only the noise effects that result in lowering the heightmap. |
-| (w:900 h:325) ||
-| **Noise Scale** | The size of the perlin noise filter used. The noise filter is related to position and scale, which means if you do not change **Noise Scale**, the same filter is applied to the same position many times. |
-
-
-### Retopologize
-
-
-
-The **Retopologize** tool automatically adjusts Landscape vertices with an X/Y offset map to improve vertex density on cliffs, reducing texture stretching.
-
-[REGION:note]
-An X/Y offset map makes the Landscape slower to render and paint on with other tools, so only use the Retopologize tool if needed.
-[/REGION]
-
-
-### Visibility
-
-
-
-The **Visibility** tool enables you to create holes in your Landscape, such as for caves.
-
-| **Alternate Controls** | **Operation** |
-| --- | --- |
-| **Shift + Left-click** | Removes the visibility mask, making the Landscape components visible again. |
-
-#### Using Opacity Masking to Create a Hole
-
-[EXCERPT:LandscapeHole]
-Although you can use the sculpting tools to create vertical holes in your Landscape, you may find that you also want to create horizontal ones, such as for caves. You can do so by using opacity masking to "paint" away the visibility of a section of your Landscape with the Visibility tool.
-[/EXCERPT:LandscapeHole]
-
-In order to paint away the visibility of a section of your Landscape, you must set up the Landscape Material correctly. For information about setting up a Landscape Hole Material, see [Landscape Hole Materials](Engine\Landscape\Materials\#LandscapeHoleMaterials).
-
-[REGION:note]
-If you use the Visibility tool without having a Landscape Hole Material assigned, the Visibility tool will remove the Material layers applied to the selected sections, but will not create a hole in the Landscape itself.
-[/REGION]
-
-After you have set up your Landscape Hole Material, you can use the painting tools to create a hole in your Landscape.
-
-**To create a Landscape hole:**
-
-1. Make sure you have a **Landscape Hole Material** assigned to your Landscape.
-
- 
-
-1. In the Landscape tool, in **Sculpt** mode, select the **Visibility** tool.
-
- 
-
-1. Find the location on your Landscape where you want to create a hole.
-
- (w:640)
-
-1. Adjust the brush size and falloff appropriately.
-
- (w:640)
-
-1. **Left-click** to create the hole and **Shift + Left-click** to erase a hole that was created.
-
- (w:640)
-
- You can now fit Static Mesh Actors in the hole in the Landscape to create a cave.
-
- [REGION:note]
- To test out the collision of the new hole using Play In Editor (PIE), you may have to switch from Landscape mode to Place mode.
- [/REGION]
+[DIR(output:"topiccompact" parent:"Engine/Landscape/Editing/SculptMode" org:"hierarchy" tags:"landscape" tags:"!region" end:"1")]
(#RegionTools)
## Region Tools
-You can use the Region tools to perform actions on specific regions of the Landscape.
+The **Region Tools** enable you to perform actions on specific regions of the Landscape. Explore the different Region options available below:
-
-### Region Selection
-
-
-
-The **Region Selection** tool selects regions of the Landscape using the current brush settings and tool strength to be used to fit a Landscape [gizmo](Engine\Landscape\Editing\Gizmos) to a specific area or to act as a mask for copying data to, or pasting data from, a gizmo.
-
-(w:640 h:322)
-
-| **Controls** | **Operation** |
-| --- | --- |
-| **Left Mouse Button** | Adds to the selected region. |
-| **Shift + Left Mouse Button** | Removes from the selected region. |
-
-| **Option** | **Description** |
-| --- | --- |
-| **Clear Region Selection** | Clears the current selected region(s). |
-| **Tool Strength** | Controls how much effect each brush stroke has. |
-| **Use Region as Mask** | When checked, the region selection acts as a mask with the active area being comprised of the selected region. |
-| (w:640 h:322) ||
-| **Negative Mask** | When checked, and when **Use Region as Mask** is also checked, the region selection acts as a mask, but the active area is comprised of the unselected region. |
-| (w:640 h:322) ||
-
-
-(#RegionCopy)
-### Copy/Paste
-
-
-
-You can use this tool to copy height data from one area of a Landscape to another through the use of [](Engine/Landscape\Editing\Gizmos). You can also import and export Gizmo data.
-
-[INCLUDE:Engine/Landscape#landscape002]
+[DIR(output:"topiccompact" parent:"Engine/Landscape/Editing/SculptMode" org:"hierarchy" tags:"landscape" tags:"region" end:"1")]
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/SculptMode.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/SculptMode.KOR.udn
index 2bec7adf2132..88da46581323 100644
--- a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/SculptMode.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/SculptMode.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3260884
+INTSourceChangelist:3473556
Availability: Public
Title:조각 모드
Crumbs: %ROOT%, Engine, Engine/Landscape, Engine/Landscape/Editing
@@ -313,4 +313,55 @@ Region Selection (리전 선택) 툴은 현재 브러시 세팅을 사용하여
이 툴을 사용해서 랜드스케이프 한 영역의 높이 데이터를 [](Engine/Landscape\Editing\Gizmos) 사용을 통해 다른 랜드스케이프로 복사할 수 있습니다. 기즈모 데이터를 임포트 / 익스포트할 수도 있습니다.
+### 미러
+
+
+
+**Mirror** (미러) 툴은 선택된 랜드스케이프를 X 또는 Y 축 기준으로 미러링 또는 회전시킵니다.
+
+[REGION:simpletable]
+| 옵션 | 설명 |
+| --- | --- |
+| **Mirror Point** | 미러링 지점 - 미러링 면의 위치를 설정합니다. 기본적으로 선택된 랜드스케이프의 중앙이 되며, 대부분의 경우 바꿀 필요가 없습니다. |
+| **Operation** | 연산 - 수행할 미러링 연산 유형입니다. 예를 들어 -X 에서 +X 는 랜드스케이프의 -X 절반을 복사하여 +X 로 뒤집습니다. |
+| **Recenter** | 중앙 재설정 - 이 버튼은 미러링 면을 선택된 랜드스케이프 중심으로 다시 설정합니다. |
+| **Smoothing Width** | 스무딩 폭 - 미러링 면 한 쪽의 버텍스에 스무딩을 적용할 버텍스 수를 설정합니다. 미러링된 면의 날카로운 대비 각도 감소 효과가 있습니다. |
+[/REGION]
+
+**랜드스케이프 미러링 방법:**
+
+1. 랜드스케이프 툴의 **조각** 모드에서 **Mirror** (미러) 툴을 선택합니다.
+
+ 
+
+1. **Operation** (연산) 드롭다운으로 선택된 랜드스케이프에 사용할 미러링 메소드와 축을 선택합니다. 방향 화살표를 통해 랜드스케이프 지오메트리의 어느 면에 미러링이 적용될지 알 수 있습니다.
+
+ (w:417)
+
+1. 필요한 경우, 미러링 면의 **Mirror Point** (미러링 지점) 값을 조절하거나, 미러링 면의 방향 화살표를 좌클릭하고 미러링하고자 하는 위치로 끌어 놓습니다.
+
+ [REGION:note]
+ **미러링 지점** 에는 현재 선택된 **연산** 축만 사용됩니다. 예를 들어, 연산 메소드가 "-X 에서 +X" 인 경우, X 축만 활성 미러링 포인트로 영향받습니다.
+ [/REGION]
+ (w:500)
+
+1. 편집한 내용이 마음에 들면 **적용** 버튼을 눌러 결과를 확인합니다.
+
+ (w:500)
+
+ 미러링된 지오메트리가 있는 랜드스케이프가 생겼습니다.
+
+[REGION:tip]
+변경사항을 적용한 이후 랜드스케이프 미러링의 에지 이음새가 부자연스럽거나 대비선이 너무 뚜렷한 경우, **Ctrl + Z** 로 지난 동작을 되돌립니다. 그리고 **Smoothing Width** (스무딩 폭)을 조절하여 이 병합 부분의 에지 버텍스를
+부드럽게 만듭니다. 아래 예제의 왼쪽 이미지에는 스무딩이 없는 반면, 오른쪽 이미지에는 10 의 값을 주어 병합 부분의 에지를 부드럽게 만든 것입니다.
+
+[REGION:lightbox]
+[(w:500)](Mirror_SmoothingWidth.png)
+[/REGION]
+_클릭하면 이미지 원본을 확인합니다._
+
+[/REGION]
+
+
+
[INCLUDE:Engine/Landscape#landscape002]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.CHN.udn
new file mode 100644
index 000000000000..fc0eca767bea
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.CHN.udn
@@ -0,0 +1,68 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Smooth
+Description: This is an overview of the Smooth painting tool.
+Type: Reference
+Parent:Engine/Landscape/Editing/SculptMode
+Order:2
+Tags:Landscape
+Topic-image:Smooth_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Smooth** tool will soften the heightmaps painted values to give it a smoother flow and appearance by getting rid of jagged artifacts that can sometimes happen after using the Sculpting or Erosion tools.
+
+## Using the Smooth Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ z2Kvc2K7u3g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Smooth tool is used to soften some of the harder edge artifacts that can happen when using the various Landscape tools.
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Smoothens and softens the heightmap or selected layer's weight. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+The brush strength determines the amount of smoothing that can happen when using the Smooth tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:105) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much smoothing occurs with each brush stroke. |
+| **Filter Kernel Scale** | Sets the scale multiplier for the smoothing filter kernel for the radius that smoothing will be performed over. Higher values smooth out bigger details, while lower values only smooth out smaller details. |
+| **Detail Smooth** | If checked, performs a detail-preserving smoothing using the specified detail-smoothing value. Larger-detail smoothing values remove more details, while smaller values preserve more details. |
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.INT.udn
new file mode 100644
index 000000000000..5c843c98fe67
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.INT.udn
@@ -0,0 +1,67 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Smooth
+Description: This is an overview of the Smooth painting tool.
+Type: Reference
+Parent:Engine/Landscape/Editing/SculptMode
+Order:2
+Tags:Landscape
+Topic-image:Smooth_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Smooth** tool will soften the heightmaps painted values to give it a smoother flow and appearance by getting rid of jagged artifacts that can sometimes happen after using the Sculpting or Erosion tools.
+
+## Using the Smooth Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ z2Kvc2K7u3g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Smooth tool is used to soften some of the harder edge artifacts that can happen when using the various Landscape tools.
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Smoothens and softens the heightmap or selected layer's weight. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+The brush strength determines the amount of smoothing that can happen when using the Smooth tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:105) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much smoothing occurs with each brush stroke. |
+| **Filter Kernel Scale** | Sets the scale multiplier for the smoothing filter kernel for the radius that smoothing will be performed over. Higher values smooth out bigger details, while lower values only smooth out smaller details. |
+| **Detail Smooth** | If checked, performs a detail-preserving smoothing using the specified detail-smoothing value. Larger-detail smoothing values remove more details, while smaller values preserve more details. |
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.JPN.udn
new file mode 100644
index 000000000000..87cd7135f418
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.JPN.udn
@@ -0,0 +1,68 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Smooth
+Description:Smooth ペイント ツールの概要です。
+Type:Reference
+Parent:Engine/Landscape/Editing/SculptMode
+Order:2
+Tags:Landscape
+Topic-image:Smooth_topic.png
+
+[TOC(start:2 end:2)]
+
+**Smooth** ツールを使うと、Sculpting ツールや Erosion ツールの使用後にたまに発生するギザギザのアーティファクトを取り除いて、ハイトマップ ペイント値をソフトにしてフローと外見をスムーズにします。
+
+## Smooth ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ z2Kvc2K7u3g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では、Smooth ツールを使って、各種 Landscape ツールを使用すると発生するハードなエッジ アーティファクトをソフトにしています。
+
+以下の制御を使って、ランドスケープ ハイトマップを生成します。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **マウスの左ボタン** | ハイトマップまたは選択したレイヤーをスムーズ / ソフトにします。
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+Smooth ツールを使う場合、ブラシの強度でスムーズ度が決まります。
+
+## ツール設定
+
+[REGION:imagetable]
+| (h:75) | (h:105) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **プロパティ** | **説明** |
+| ------------ | --------------- |
+| **Total Strength** | 1 回のブラシ ストロークによるスムージング加減を調節します。 |
+| **Filter Kernel Scale** | スムージングが実行される半径のスムージング フィルター カーネルに対しスケール乗数を設定します。値が高いほど大きな詳細をスムーズにし、値が低いほど小さな詳細をスムーズにします。 |
+| **Detail Smooth** | このオプションがチェックされると、指定した詳細スムージング値を使用して、詳細を維持したままのスムージングを実行します。スムージング値が小さいほど詳細度が保たれ、値が大きいほど詳細が取り除かれます。 |
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.KOR.udn
new file mode 100644
index 000000000000..fc0eca767bea
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Smooth/Smooth.KOR.udn
@@ -0,0 +1,68 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Smooth
+Description: This is an overview of the Smooth painting tool.
+Type: Reference
+Parent:Engine/Landscape/Editing/SculptMode
+Order:2
+Tags:Landscape
+Topic-image:Smooth_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Smooth** tool will soften the heightmaps painted values to give it a smoother flow and appearance by getting rid of jagged artifacts that can sometimes happen after using the Sculpting or Erosion tools.
+
+## Using the Smooth Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ z2Kvc2K7u3g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 46
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Smooth tool is used to soften some of the harder edge artifacts that can happen when using the various Landscape tools.
+
+Use the following controls to sculpt your Landscape heightmap:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left Mouse Button** | Smoothens and softens the heightmap or selected layer's weight. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+The brush strength determines the amount of smoothing that can happen when using the Smooth tool.
+
+## Tool Settings
+
+[REGION:imagetable]
+| (h:75) | (h:105) |
+| --- | --- |
+|||
+[/REGION]
+
+
+| **Property** | **Description** |
+| ------------ | --------------- |
+| **Tool Strength** | Controls how much smoothing occurs with each brush stroke. |
+| **Filter Kernel Scale** | Sets the scale multiplier for the smoothing filter kernel for the radius that smoothing will be performed over. Higher values smooth out bigger details, while lower values only smooth out smaller details. |
+| **Detail Smooth** | If checked, performs a detail-preserving smoothing using the specified detail-smoothing value. Larger-detail smoothing values remove more details, while smaller values preserve more details. |
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.CHN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.CHN.udn
new file mode 100644
index 000000000000..40581e34df02
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.CHN.udn
@@ -0,0 +1,131 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Visibility
+Description: This is an overview of the Visibility painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:9
+Tags:Landscape
+Topic-image:Visibility_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Visibility** tool enables you to mask out (create holes) in parts of your Landscape, for areas such as caves.
+
+## Using the Visibility Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ IU5RneVZzL0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Visibility tool is used with a Landscape Material that has been setup to use a Landscape Visibility Mask. This enables parts of the Landscape to be painted invisible or
+visible so that you can add in caves with additional Static Mesh Actors. This demonstration shows painting the invisibility and then repainting the visibility.
+
+Use the following controls to paint masked or to unmask areas of visibility for your Landscape:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left-Click** | Adds the visibility mask, making the Landscape invisible. |
+| **Shift + Left-click** | Removes the visibility mask, making the Landscape components visible again. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the Landscape Hole Material has been used to paint invisible (or masked out) areas for the Landscape. When painting masked out areas, you only get an on or off
+state, so there is no way to have a transitional gradient from fully masked to unmasked.
+
+
+### Using Opacity Mask to Create a Hole
+
+[EXCERPT:LandscapeHole]
+Although you can use the sculpting tools to create a vertical holes in your Landscape, you may find that you also want to create horizontal ones, such as ones for caves. You can
+do so by using opacity masking to "paint" away the visibility of a section of your Landscape with the Visibility tool.
+[/EXCERPT:LandscapeHole]
+
+In order to paint away the visibility of a section of your Landscape, you must set up the Landscape Material correctly using a Landscape Hole Material.
+For information about setting this up properly, you can read about [Landscape Hole Materials](Engine/Landscape/Materials/#LandscapeHoleMaterials) here.
+
+[REGION:note]
+If you use the Visibility tool without having a Landscape Hole Material assigned, the Visibility tool will remove the Material layers applied to the selected sections,
+but will not create a hole in the Landscape itself.
+[/REGION]
+
+After you have set up your Landscape Hole Material, you can use the painting tools to create a hole in your Landscape.
+
+**To create a Landscape hole:**
+
+1. Make sure you have a **Landscape Hole Material** assigned to your Landscape.
+
+ 
+
+1. In the Landscape tool, in **Sculpt** mode, select the **Visibility** tool.
+
+ 
+
+1. Find the location on your Landscape where you want to create a hole.
+
+ (w:640)
+
+1. Adjust the brush size to the size you want to use.
+
+ (w:640)
+
+1. **Left-click** to create the hole and **Shift + Left-click** to erase a hole that was created.
+
+ (w:640)
+
+ You can now fit Static Mesh Actors in the hole in the Landscape to create a cave.
+
+ [REGION:note]
+ To test out the collision of the new hole using Play In Editor (PIE), you may have to switch from **Landscape** mode to **Place** mode.
+ [/REGION]
+
+## Tool Settings
+
+(h:75)
+
+There are no tool settings specific to Visibility that can be adjusted in this section. Follow the steps to setup a proper Landscape Hole Material (detailed above) and use the paint to controls
+to draw in your masked areas.
+
+If you do not have a **Landscape Hole Material** assigned to your Landscape, you will see the following warning in Visibility tool panel under **Target Layers**:
+
+(w:400)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.INT.udn
new file mode 100644
index 000000000000..769549e4a06c
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.INT.udn
@@ -0,0 +1,130 @@
+Availability: Public
+Crumbs: %ROOT%
+Title: Visibility
+Description: This is an overview of the Visibility painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:9
+Tags:Landscape
+Topic-image:Visibility_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Visibility** tool enables you to mask out (create holes) in parts of your Landscape, for areas such as caves.
+
+## Using the Visibility Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ IU5RneVZzL0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Visibility tool is used with a Landscape Material that has been setup to use a Landscape Visibility Mask. This enables parts of the Landscape to be painted invisible or
+visible so that you can add in caves with additional Static Mesh Actors. This demonstration shows painting the invisibility and then repainting the visibility.
+
+Use the following controls to paint masked or to unmask areas of visibility for your Landscape:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left-Click** | Adds the visibility mask, making the Landscape invisible. |
+| **Shift + Left-click** | Removes the visibility mask, making the Landscape components visible again. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the Landscape Hole Material has been used to paint invisible (or masked out) areas for the Landscape. When painting masked out areas, you only get an on or off
+state, so there is no way to have a transitional gradient from fully masked to unmasked.
+
+
+### Using Opacity Mask to Create a Hole
+
+[EXCERPT:LandscapeHole]
+Although you can use the sculpting tools to create a vertical holes in your Landscape, you may find that you also want to create horizontal ones, such as ones for caves. You can
+do so by using opacity masking to "paint" away the visibility of a section of your Landscape with the Visibility tool.
+[/EXCERPT:LandscapeHole]
+
+In order to paint away the visibility of a section of your Landscape, you must set up the Landscape Material correctly using a Landscape Hole Material.
+For information about setting this up properly, you can read about [Landscape Hole Materials](Engine/Landscape/Materials/#LandscapeHoleMaterials) here.
+
+[REGION:note]
+If you use the Visibility tool without having a Landscape Hole Material assigned, the Visibility tool will remove the Material layers applied to the selected sections,
+but will not create a hole in the Landscape itself.
+[/REGION]
+
+After you have set up your Landscape Hole Material, you can use the painting tools to create a hole in your Landscape.
+
+**To create a Landscape hole:**
+
+1. Make sure you have a **Landscape Hole Material** assigned to your Landscape.
+
+ 
+
+1. In the Landscape tool, in **Sculpt** mode, select the **Visibility** tool.
+
+ 
+
+1. Find the location on your Landscape where you want to create a hole.
+
+ (w:640)
+
+1. Adjust the brush size to the size you want to use.
+
+ (w:640)
+
+1. **Left-click** to create the hole and **Shift + Left-click** to erase a hole that was created.
+
+ (w:640)
+
+ You can now fit Static Mesh Actors in the hole in the Landscape to create a cave.
+
+ [REGION:note]
+ To test out the collision of the new hole using Play In Editor (PIE), you may have to switch from **Landscape** mode to **Place** mode.
+ [/REGION]
+
+## Tool Settings
+
+(h:75)
+
+There are no tool settings specific to Visibility that can be adjusted in this section. Follow the steps to setup a proper Landscape Hole Material (detailed above) and use the paint to controls
+to draw in your masked areas.
+
+If you do not have a **Landscape Hole Material** assigned to your Landscape, you will see the following warning in Visibility tool panel under **Target Layers**:
+
+(w:400)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.JPN.udn
new file mode 100644
index 000000000000..f59ab7f4c1f2
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.JPN.udn
@@ -0,0 +1,131 @@
+INTSourceChangelist:3482403
+Availability:Public
+Crumbs: %ROOT%
+Title:Visibility
+Description:Visibility ペイント ツールの概要です。
+Type:Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:9
+Tags:Landscape
+Topic-image:Visibility_topic.png
+
+[TOC(start:2 end:2)]
+
+**Visibility** ツールは、洞窟などランドスケープをマスクアウト (穴を作成) します。
+
+## Visibility ツールの使用方法
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ IU5RneVZzL0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この例では、Landscape Visibility Mask を使うように設定された Landscape マテリアルと一緒に Visibility ツールを使用しています。この方法により、ペイントでランドスケープを可視/不可視にして、
+洞窟にスタティックメッシュ アクタの追加が可能になります。このデモでは、ペイントで不可視にしてから、再度ペイントで可視化しています。
+
+ランドスケープ ハイトマップでのノイズによるスカルプトでは、以下の調節ができます。
+
+| **操作** | **処理内容** |
+| --- | --- |
+| **Left-Click** | 可視性マスクを追加して、ランドスケープを可視化します。 |
+| **Shift + マウスの左ボタン** | 可視性マスクは、ランドスケープ コンポーネントを再度表示させます。 |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+この例では、Landscape Hole マテリアルを使用して、ランドスケープの見えない (マスクアウトした) 領域をペイントしています。マスクアウトした領域のペイントは、オンかオフのいずれかです。
+完全にマスクされた状態と完全にマスクされていない状態の間のグラディエントは一切ありません。
+
+
+### オパシティ マスクを使って穴を作成する
+
+[EXCERPT:LandscapeHole]
+Sculpt ツールはランドスケープに垂直方向の穴の作成ができますが、洞窟などの場合は穴を水平方向に作成しなければなりません。そのような場合に Visibility ツールは、
+ランドスケープの可視化ペイントをオパシティ マスクを使って取り除きます。
+[/EXCERPT:LandscapeHole]
+
+ランドスケープの可視化ペイントを取り除くためには、Landscape Hole マテリアルを使って Landscape マテリアルを正しく設定する必要があります。
+正しく設定するには、[Landscape Hole マテリアル](Engine/Landscape/Materials/#LandscapeHoleマテリアル) をご覧ください。
+
+[REGION:note]
+Landscape Hole マテリアルを割り当てずに Visibility ツールを使用すると、Visibility ツールは選択したセクションに適用されているマテリアル レイヤーを取り除きますが、
+ランドスケープそのものに穴は作成しません。
+[/REGION]
+
+Landscape Hole マテリアルを設定したら、ペイント ツールを使ってランドスケープに穴を作成することができます。
+
+**ランドスケープに穴を作成する方法**
+
+1. **Landscape Hole** マテリアルがランドスケープに割り当てられていることを確認します。
+
+ 
+
+1. Landscape ツールの **Sculpt** モードで **Visibility** ツールを選びます。
+
+ 
+
+1. ランドスケープで穴を作成する位置を探します。
+
+ (w:640)
+
+1. ブラシ サイズを調節します。
+
+ (w:640)
+
+1. **左クリック** で穴を作成、**Shift + 左クリック** で作成した穴を消去します。
+
+ (w:640)
+
+ あとは、ランドスケープの穴にスタティック メッシュ アクタをフィットさせれば洞窟の完成です。
+
+ [REGION:note]
+ Play In Editor (PIE) を使用して新規の穴のコリジョンをテストするために、**Landscape** モードから **Place** モードに切り替える必要のある場合があります。
+ [/REGION]
+
+## ツール設定
+
+(h:75)
+
+Visibility のみを調整するツール設定はありません。Landscape Hole マテリアルを正しく設定し (上記参照)、
+マスクされた領域でペイントを調節して描画します。
+
+**Landscape Hole マテリアル** がランドスケープに割り当てられていないと、**Target Layers** の下の [Vibility tool] パネルに以下の警告が表示されます。
+
+(w:400)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.KOR.udn
new file mode 100644
index 000000000000..40581e34df02
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Landscape/Editing/SculptMode/Visibility/Visibility.KOR.udn
@@ -0,0 +1,131 @@
+INTSourceChangelist:0
+Availability: Public
+Crumbs: %ROOT%
+Title: Visibility
+Description: This is an overview of the Visibility painting tool.
+Type: Reference
+Version:4.16
+Parent:Engine/Landscape/Editing/SculptMode
+Order:9
+Tags:Landscape
+Topic-image:Visibility_topic.png
+
+[TOC(start:2 end:2)]
+
+The **Visibility** tool enables you to mask out (create holes) in parts of your Landscape, for areas such as caves.
+
+## Using the Visibility Tool
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ IU5RneVZzL0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, the Visibility tool is used with a Landscape Material that has been setup to use a Landscape Visibility Mask. This enables parts of the Landscape to be painted invisible or
+visible so that you can add in caves with additional Static Mesh Actors. This demonstration shows painting the invisibility and then repainting the visibility.
+
+Use the following controls to paint masked or to unmask areas of visibility for your Landscape:
+
+| **Controls** | **Operation** |
+| --- | --- |
+| **Left-Click** | Adds the visibility mask, making the Landscape invisible. |
+| **Shift + Left-click** | Removes the visibility mask, making the Landscape components visible again. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:750)
+ [/PARAM]
+ [PARAM:after]
+ (w:750)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the Landscape Hole Material has been used to paint invisible (or masked out) areas for the Landscape. When painting masked out areas, you only get an on or off
+state, so there is no way to have a transitional gradient from fully masked to unmasked.
+
+
+### Using Opacity Mask to Create a Hole
+
+[EXCERPT:LandscapeHole]
+Although you can use the sculpting tools to create a vertical holes in your Landscape, you may find that you also want to create horizontal ones, such as ones for caves. You can
+do so by using opacity masking to "paint" away the visibility of a section of your Landscape with the Visibility tool.
+[/EXCERPT:LandscapeHole]
+
+In order to paint away the visibility of a section of your Landscape, you must set up the Landscape Material correctly using a Landscape Hole Material.
+For information about setting this up properly, you can read about [Landscape Hole Materials](Engine/Landscape/Materials/#LandscapeHoleMaterials) here.
+
+[REGION:note]
+If you use the Visibility tool without having a Landscape Hole Material assigned, the Visibility tool will remove the Material layers applied to the selected sections,
+but will not create a hole in the Landscape itself.
+[/REGION]
+
+After you have set up your Landscape Hole Material, you can use the painting tools to create a hole in your Landscape.
+
+**To create a Landscape hole:**
+
+1. Make sure you have a **Landscape Hole Material** assigned to your Landscape.
+
+ 
+
+1. In the Landscape tool, in **Sculpt** mode, select the **Visibility** tool.
+
+ 
+
+1. Find the location on your Landscape where you want to create a hole.
+
+ (w:640)
+
+1. Adjust the brush size to the size you want to use.
+
+ (w:640)
+
+1. **Left-click** to create the hole and **Shift + Left-click** to erase a hole that was created.
+
+ (w:640)
+
+ You can now fit Static Mesh Actors in the hole in the Landscape to create a cave.
+
+ [REGION:note]
+ To test out the collision of the new hole using Play In Editor (PIE), you may have to switch from **Landscape** mode to **Place** mode.
+ [/REGION]
+
+## Tool Settings
+
+(h:75)
+
+There are no tool settings specific to Visibility that can be adjusted in this section. Follow the steps to setup a proper Landscape Hole Material (detailed above) and use the paint to controls
+to draw in your masked areas.
+
+If you do not have a **Landscape Hole Material** assigned to your Landscape, you will see the following warning in Visibility tool panel under **Target Layers**:
+
+(w:400)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Landscape/Landscape.INT.udn b/Engine/Documentation/Source/Engine/Landscape/Landscape.INT.udn
index db7a8ab5f2cc..e049a131da26 100644
--- a/Engine/Documentation/Source/Engine/Landscape/Landscape.INT.udn
+++ b/Engine/Documentation/Source/Engine/Landscape/Landscape.INT.udn
@@ -5,46 +5,7 @@ Description:Landscape system for creating terrain for large, open, outdoor envir
version: 4.9
parent:Engine
order:10
-
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Landscape:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Landscape:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Landscape]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Landscape:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Landscape:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Landscape]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+topic-image:landscape_topic.png
[REGION:banner]

@@ -52,7 +13,7 @@ order:10
[EXCERPT:landscape002]
-[DIR(output:"topiccompact" parent:"Engine/Landscape")]
+[DIR(output:"topiccompact" parent:"Engine/Landscape" org:"hierarchy" end:"1")]
[/EXCERPT:landscape002]
diff --git a/Engine/Documentation/Source/Engine/Landscape/Landscape.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Landscape.JPN.udn
index 8793fe02e6ed..5dae76954653 100644
--- a/Engine/Documentation/Source/Engine/Landscape/Landscape.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Landscape/Landscape.JPN.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3260884
Availability:Public
Title:ランドスケープの屋外テレイン
Crumbs:%ROOT%, Engine
Description:広大で開放的なアウトドア環境を作成するテレインシステム
version:4.9
parent:Engine
-order:8
+order:10
[VAR:Topic]
[OBJECT:Topic]
diff --git a/Engine/Documentation/Source/Engine/Landscape/Landscape.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/Landscape.KOR.udn
index 49f4682991a3..33f9268373e4 100644
--- a/Engine/Documentation/Source/Engine/Landscape/Landscape.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Landscape/Landscape.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3260884
+INTSourceChangelist:3429242
Availability: Public
Title:랜드스케이프 야외 지형
Crumbs:%ROOT%, Engine
@@ -6,46 +6,7 @@ Description:Landscape, 랜드스케이프는 드넓은 개방형 야외 환경
version: 4.9
parent:Engine
order:10
-
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Landscape:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Landscape:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Landscape]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Landscape:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Landscape:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Landscape]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+topic-image:landscape_topic.png
[REGION:banner]

@@ -53,7 +14,7 @@ order:10
[EXCERPT:landscape002]
-[DIR(output:"topiccompact" parent:"Engine/Landscape")]
+[DIR(output:"topiccompact" parent:"Engine/Landscape" org:"hierarchy" end:"1")]
[/EXCERPT:landscape002]
diff --git a/Engine/Documentation/Source/Engine/Landscape/Materials/Materials.JPN.udn b/Engine/Documentation/Source/Engine/Landscape/Materials/Materials.JPN.udn
index d85266364350..84181c7c49e7 100644
--- a/Engine/Documentation/Source/Engine/Landscape/Materials/Materials.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Landscape/Materials/Materials.JPN.udn
@@ -1,5 +1,4 @@
-INTSourceChangelist:3106713
-Availability:Public
+Availability:Public
Title:ランドスケープ マテリアル
Crumbs: %ROOT%, Engine, Engine/Landscape
Description:ランドスケープ テレインで作業するためのマテリアルを設定
@@ -24,7 +23,7 @@ topic-image:landscape_materials_topic.png
マテリアル エディタの中に、ランドスケープ システムで使える 6 つの特別なノードがあると思います。これらのノードはすべて **コンテキスト** メニューまたは Landscape カテゴリの **[Palette (パレット)]** メニューにあります。
-**コンテキストメニュー**
+** コンテキスト メニュー**

@@ -50,7 +49,7 @@ topic-image:landscape_materials_topic.png
|番号| プロパティ | 説明 |
|------------| -------- | ----------- |
|1:| **Layers** | ノードに含まれるレイヤーのリストです。プラス アイコン () をクリックすればレイヤーを追加できます。 |
-|2:| **Layer Name** | レイヤーにつけるユニークな名前です。**Layer Name (レイヤー名)** はランドスケープの [Paint モード](Engine\Landscape\Editing\PaintMode\#Layer(レイヤー)) で使用されるレイヤー名に対応します。|
+|2:| **Layer Name** | レイヤーにつけるユニークな名前です。**Layer Name (レイヤー名)** はランドスケープの [Paint モード](Engine\Landscape\Editing\PaintMode\#レイヤー) で使用されるレイヤー名に対応します。|
|3:| **Blend Type (ブレンドタイプ)** | **LB_AlphaBlend**** 、 **LB_HeightBlend** 、または **LB_WeightBlend.** です。これについては、後ほどこのページで説明します。|
|4:| **Preview Weight** | マテリアル エディタ内でブレンドをプレビューするための、レイヤーのウェイト値として使用されます。|
|5:| **Const Layer Input** | テクスチャを使用したくない場合、数値をカラーで提供します。問題がある場合、レイヤーのデバッグのために主に使われます。|
@@ -192,7 +191,7 @@ LandscapeVisibilityMask ノードのプロパティは、 **[Details (詳細)]**
**[Parameter Name (パラメータ名)]** に入力すると、ノード自体が更新されます。

-1. マテリアルに入れたい各レイヤーに 1 つずつ付くまで **LandscapeLayerWeight** ノードを追加していきます。この例では、**LandscapeLayerWeight** ノードを 2 つ使っていきます。
+1. マテリアルに入れたい各レイヤーに 1 つずつ付くまで **LandscapeLayerWeight** ノードを追加していきます。この例では、 **LandscapeLayerWeight** ノードを 2 つ使っていきます。
1. **Texture Samples** または他のマテリアル ネットワーク表現式を **LandscapeLayerWeight** ノードに追加して接続します。
@@ -218,13 +217,13 @@ LandscapeVisibilityMask ノードのプロパティは、 **[Details (詳細)]**
**LandscapeLayerBlend ノードの使用方法:**
1. マテリアル エディタで LandscapeLayerBlend を追加します。
-

-1. **[Details (詳細)]** パネルで、 **Layers** の隣のプラス アイコン  をクリックしてレイヤーを追加します。
+1. **[Details (詳細)]** パネルで、 **Layers** の隣のプラス アイコン  をクリックしてレイヤーを追加します。

+
1. レイヤーを展開してプロパティを表示します。

diff --git a/Engine/Documentation/Source/Engine/Landscape/UI/InterfaceReference.INT.udn b/Engine/Documentation/Source/Engine/Landscape/UI/InterfaceReference.INT.udn
index 45c03d610cc7..d9b4d612c25c 100644
--- a/Engine/Documentation/Source/Engine/Landscape/UI/InterfaceReference.INT.udn
+++ b/Engine/Documentation/Source/Engine/Landscape/UI/InterfaceReference.INT.udn
@@ -145,6 +145,10 @@ This document contains references to all of the icons for the **Landscape** syst
(convert:false) | **Copy/Paste** | Copy and Paste allows you to copy terrain data from one area of the Landscape and paste it to another area of the Landscape. You can even save out the copy paste data to use in other Landscapes. |
[/VAR]
+[VAR:MirrorTool]
+(convert:false) | **Mirror Tool** | This tool enables you to copy one side of a landscape to the other side so that you can easily mirror or rotate the landscape geometry. |
+[/VAR]
+
[VAR:NewLand]
(convert:false) | **New Landscape** | Creates a new Landscape using the parameters in the New Landscape category. |
[/VAR]
@@ -208,6 +212,7 @@ This document contains references to all of the icons for the **Landscape** syst
%Ind% %VisTool%
%Ind% %SelectTool%
%Ind% %CopyTool%
+%Ind% %MirrorTool%
[/REGION]
[/EXCERPT:LSREF002]
diff --git a/Engine/Documentation/Source/Engine/Landscape/UI/InterfaceReference.KOR.udn b/Engine/Documentation/Source/Engine/Landscape/UI/InterfaceReference.KOR.udn
index 7cdb50890ecd..59d4198b653a 100644
--- a/Engine/Documentation/Source/Engine/Landscape/UI/InterfaceReference.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Landscape/UI/InterfaceReference.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3473556
Availability: Public
Title:랜드스케이프 UI 참고서
Crumbs:%ROOT%, Engine, Engine/Landscape
@@ -146,6 +146,10 @@ order:4
(convert:false) | **Copy/Paste** | 복사/붙여넣기 - 랜드스케이프 한 영역에서 터레인 데이터를 복사하여 다른 영역에 붙여넣을 수 있습니다. 복사/붙여넣기 데이터를 다른 랜드스케이프에서 사용할 수 있도록 저장하는 것도 가능합니다. |
[/VAR]
+[VAR:MirrorTool]
+(convert:false) | **Mirror Tool** | 미러 툴 - 랜드스케이프 한 쪽 면을 다른 쪽으로 복사하여 랜드스케이프 지오메트리를 쉽게 미러링 또는 회전시킬 수 있도록 해주는 툴입니다. |
+[/VAR]
+
[VAR:NewLand]
(convert:false) | **New Landscape** | 새 랜드스케이프 - New Landscape (새 랜드스케이프) 카테고리의 파라미터를 사용하여 랜드스케이프를 새로 만듭니다. |
[/VAR]
@@ -209,6 +213,7 @@ order:4
%Ind% %VisTool%
%Ind% %SelectTool%
%Ind% %CopyTool%
+%Ind% %MirrorTool%
[/REGION]
[/EXCERPT:LSREF002]
diff --git a/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.INT.udn b/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.INT.udn
index d951d5d8900f..ff0ee88d6a1d 100644
--- a/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.INT.udn
+++ b/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.INT.udn
@@ -12,6 +12,19 @@ tags:Level Streaming
[INCLUDE:Engine/Actors/Volumes#lsv]
+You can adjust how a Level Streaming Volume handles level streaming by adjusting the properties from the **Details** panel, pictured below.
+
+
+
+For more on Level Streaming Volumes, see [](Engine/LevelStreaming/StreamingVolumes).
+
+|Property| Description |
+| ------- | ------------ |
+| **Streaming Levels** | Displays the levels affected by the volume. |
+| **Editor Pre Vis Only** | Determines if the streaming volume should only be used for editor streaming level previs. |
+| **Disabled** | If true, the streaming volume is ignored by the streaming volume code.
Also used to either disable a Level Streaming Volume without disassociating it from the level, or to toggle the control of a level's streaming between Blueprints and Volume Streaming. |
+| **Streaming Usage** | Determines what the volume is used for, e.g. whether to control loading, loading and visibility, or just visibility (blocking on load). |
+
## Associating Streaming Volumes With Levels
Volume-based level streaming works as follows: each streaming Level can have associated with it a set of Level Streaming Volumes. Each frame, the engine iterates over
diff --git a/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.JPN.udn b/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.JPN.udn
index f7bcc13a13a2..025d04fd0d1b 100644
--- a/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.JPN.udn
+++ b/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3379420
Availability:Public
Title:レベル ストリーミング ボリューム
Crumbs:
@@ -13,6 +13,19 @@ tags:Level Streaming
[INCLUDE:Engine/Actors/Volumes#lsv]
+以下の画像のように、**[Details (詳細)]** パネルからプロパティを調整すれば、Level Streaming Volume のレベル ストリーミング処理方法を調整できます。
+
+
+
+Level Streaming Volumes については [](Engine/LevelStreaming/StreamingVolumes) を参照してください。
+
+| プロパティ | 説明 |
+| ------- | ------------ |
+| **Streaming Levels** | ボリュームの影響を受けるレベルを表示します。 |
+| **Editor Pre Vis Only** | ストリーミング ボリュームをエディタ ストリーミング レベルのプレビズ用にのみ使用するかを判断します。 |
+| **Disabled** | true の場合、ストリーミング ボリュームはストリーミング ボリューム コードで無視されます。
レベルから切り離さないで Level Streaming Volume を無効化するか、または Blueprints と Volume Streaming 間でのレベルのストリーミングの切り替えのためにも使用されます。|
+| **Streaming Usage** | ボリュームを何に使うのか、ロードの制御、ロードと可視性または可視性のみなのか (ロード時にブロック) などを判断します。 |
+
## Streaming Volume とレベルの関連づけ
ボリューム ベースのレベル ストリーミングは、以下のように使用します。各ストリーミング レベルは Level Streaming Volume と関連づけることができます。フレームごとに、エンジンは各レベルをイタレートし、
diff --git a/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.KOR.udn b/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.KOR.udn
index c9c750fe788d..884bc0b96ee8 100644
--- a/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.KOR.udn
+++ b/Engine/Documentation/Source/Engine/LevelStreaming/StreamingVolumes/StreamingVolumes.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3379420
Availability: Public
Title:레벨 스트리밍 볼륨
Crumbs:
@@ -13,6 +13,19 @@ tags:Level Streaming
[INCLUDE:Engine/Actors/Volumes#lsv]
+아래 그림처럼 **디테일** 패널에서 프로퍼티를 조절하여 Level Streaming Volume (레벨 스트리밍 볼륨)의 레벨 스트리밍 처리 방식을 조절할 수 있습니다.
+
+
+
+레벨 스트리밍 볼륨 관련 자세한 내용은 [](Engine/LevelStreaming/StreamingVolumes) 문서를 참고하세요.
+
+| 프로퍼티 | 설명 |
+| ------- | ------------ |
+| **Streaming Levels** | 스트리밍 레벨 - 볼륨에 영향받는 레벨을 표시합니다. |
+| **Editor Pre Vis Only** | 에디터 미리보기 전용 - 스트리밍 볼륨이 에디터 스트리밍 레벨 미리보기 전용인지 나타냅니다. |
+| **Disabled** | 비활성화 - true 면 이 스트리밍 볼륨은 스트리밍 볼륨 코드에서 무시됩니다.
레벨 스트리밍 볼륨을 레벨에서 연결 해제하지 않고 비활성화시키거나, 레벨의 스트리밍 제어를 블루프린트 / 볼륨 스트리밍 토글 전환할 때도 사용됩니다. |
+| **Streaming Usage** | 스트리밍 용도 - 볼륨을 어디에 사용하는지 결정합니다. 예: 로드 제어, 로드 및 표시여부, 표시여부만 (로드시 블록). |
+
## 스트리밍 볼륨에 레벨 연결
볼륨 기반 레벨 스트리밍 작동방식은 다음과 같습니다: 각 스트리밍 레벨은 일정한 세트의 레벨 스트리밍 볼륨을 연결할 수 있습니다.
diff --git a/Engine/Documentation/Source/Engine/Levels/HowTo/WorkWithLevelAssets/WorkWithLevelAssets.INT.udn b/Engine/Documentation/Source/Engine/Levels/HowTo/WorkWithLevelAssets/WorkWithLevelAssets.INT.udn
index ffaf5e4759b1..d6eaa6c0ec0e 100644
--- a/Engine/Documentation/Source/Engine/Levels/HowTo/WorkWithLevelAssets/WorkWithLevelAssets.INT.udn
+++ b/Engine/Documentation/Source/Engine/Levels/HowTo/WorkWithLevelAssets/WorkWithLevelAssets.INT.udn
@@ -59,18 +59,96 @@ like Blueprint Classes, Materials, or Particle Systems. However, because Levels
1. Open the **File** menu.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Select **New Level**.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[Region:tip]
You can also create new levels by using the keyboard shortcut **Ctrl + N**.
[/region]
When **New Level** is selected, you will be presented with a pop-up box displaying the different templates you can base your new Level on.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
* **Default:** This will give you a new level with a basic setup that includes a player start, a light, a sky dome, and other various Actors you need for a level to work correctly.
* **VR-Basic:** This will give you a new level with Actors to interact with designed to guide you in learning the VR Editor controls.
@@ -99,16 +177,94 @@ You can also save your current persistent level and/or sublevels through the [Le
1. Open the **File** menu.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Select **Save**.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Pick a location and name for the new Level and click **Save** in the **Save Level As** window that appears. This is the same menu you would see if you selected **Save As...** from the
file menu or used the **Ctrl+Shift+S** keyboard shortcut.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
@@ -118,11 +274,63 @@ You can open Levels by double-clicking on the Level asset in the **Content Brows
1. Open the **File** menu.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Select **Open Level**.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[Region:tip]
You can also open levels by using the keyboard shortcut **Ctrl + O**.
@@ -130,7 +338,33 @@ You can open Levels by double-clicking on the Level asset in the **Content Brows
1. Select a level from the **Open Level** window that appears, then click on **Open**.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
diff --git a/Engine/Documentation/Source/Engine/Levels/HowTo/WorkWithLevelAssets/WorkWithLevelAssets.KOR.udn b/Engine/Documentation/Source/Engine/Levels/HowTo/WorkWithLevelAssets/WorkWithLevelAssets.KOR.udn
index 6d0bf05752d4..70611b58d605 100644
--- a/Engine/Documentation/Source/Engine/Levels/HowTo/WorkWithLevelAssets/WorkWithLevelAssets.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Levels/HowTo/WorkWithLevelAssets/WorkWithLevelAssets.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3481084
Availability: Public
Title:레벨 애셋 작업
Crumbs: %ROOT%, Engine
@@ -60,18 +60,96 @@ order:1
1. **파일** 메뉴를 엽니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. **새 레벨** 을 선택합니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[Region:tip]
키보드 단축키 **Ctrl + N** 으로도 새로운 레벨을 만들 수 있습니다.
[/region]
**새 레벨** 을 선택하면 뜨는 창에서 여러가지 템플릿 중 어느 것을 기반으로 새로운 레벨을 만들 것인지 선택할 수 있습니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
* **Default** (기본): 플레이어 스타트, 라이트, 스카이 돔, 그 외 레벨의 정상 작동을 위해 필요한 여러가지 액터가 들어있는 기본 구성 레벨을 새로 만들 수 있습니다.
* **VR-Basic** (VR-기본): VR 에디터 조작법 학습용 액터가 들어있는 새 레벨입니다.
@@ -100,16 +178,94 @@ order:1
1. **파일** 메뉴를 엽니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. **저장** 을 선택합니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. **다른 이름으로 저장** 창에서 새 레벨을 저장할 위치와 이름을 선택한 뒤 **저장** 을 클릭합니다. 파일 메뉴의 **다른 이름으로 저장...** 또는 키보드 단축키 **Ctrl+Shift+S** 키를 누르면
뜨는 것과 같은 메뉴입니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
@@ -119,11 +275,63 @@ order:1
1. **파일** 메뉴를 엽니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. **레벨 열기** 를 선택합니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[Region:tip]
키보드 단축키 **Ctrl + O** 로도 레벨을 열 수 있습니다.
@@ -131,7 +339,34 @@ order:1
1. 뜨는 **레벨 열기** 창에서 레벨을 선택한 뒤, **열기** 를 클릭합니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
diff --git a/Engine/Documentation/Source/Engine/Levels/LevelsWindow/LevelsWindow.INT.udn b/Engine/Documentation/Source/Engine/Levels/LevelsWindow/LevelsWindow.INT.udn
index 45eb6ab97b0e..0db246fc4f71 100644
--- a/Engine/Documentation/Source/Engine/Levels/LevelsWindow/LevelsWindow.INT.udn
+++ b/Engine/Documentation/Source/Engine/Levels/LevelsWindow/LevelsWindow.INT.udn
@@ -50,7 +50,33 @@ order:2
Levels are managed with the **Levels** window. You can access the **Levels** window through the **Windows** menu.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(LevelsMenu_Windows.png)
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(LevelsMenu_Mac.png)
+[/PARAM]
+[/OBJECT]
You will always have a **Persistent Level**, and you can have one or more sublevels that are always loaded or are streamed in with Level Streaming Volumes, Blueprints, or C++ code.
The **Levels** window shows all of these levels, enabling you to change which level is current (indicated in bold blue text), save one or more levels, and access Level Blueprints.
@@ -84,7 +110,33 @@ Adding a new sublevel makes it the current Level, so if you want to continue wor
1. Select your Level to add in the **Open Level** dialog, then click on **Open**.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
### Creating an Empty Sublevel
@@ -94,7 +146,33 @@ Adding a new sublevel makes it the current Level, so if you want to continue wor
1. Select a save location and a name for your Level, then click on **Save**.
- (w:400)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
The new Level will be added as a sublevel of your current persistent Level, and it will also be made the current Level for working in the Viewport.
@@ -111,7 +189,33 @@ from the original.
1. Select a save location and a name for your Level, then click on **Save**.
- (w:500)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
All your selected Actors will be removed from their original Level and added to the new one, which will be added as a sublevel of your current persistent Level and made the current Level for working in the Viewport.
@@ -142,12 +246,64 @@ To set Level Streaming Volumes, you need to open the **Level Details** for your
No additional details are visible for persistent Levels, although there is a dropdown menu you can use to change to another Level.
-(w:500)
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(w:700)
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(w:700)
+[/PARAM]
+[/OBJECT]
For sublevels, you can set the Level's offset **Position** and **Rotation**, as well as the **Streaming Volumes** to use and the debug **Level Color**. Advanced settings like the
[minimum time between unload requests](Engine/LevelStreaming/StreamingVolumes#addinghysteresistounloadingrequests) to improve performance are also accessible here.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(w:700)
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(w:700)
+[/PARAM]
+[/OBJECT]
## Visualizing Sublevels
diff --git a/Engine/Documentation/Source/Engine/Levels/LevelsWindow/LevelsWindow.KOR.udn b/Engine/Documentation/Source/Engine/Levels/LevelsWindow/LevelsWindow.KOR.udn
index beb0de876d72..f9d4bdca6129 100644
--- a/Engine/Documentation/Source/Engine/Levels/LevelsWindow/LevelsWindow.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Levels/LevelsWindow/LevelsWindow.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3481084
Availability: Public
Title:다수의 레벨 관리
Description:레벨 창으로 퍼시스턴트 레벨과 서브 레벨을 관리하는 법입니다.
@@ -51,7 +51,33 @@ order:2
레벨은 **레벨** 창을 통해 관리합니다. **레벨** 창은 **창** 메뉴를 통해 열 수 있습니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(LevelsMenu_Windows.png)
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(LevelsMenu_Mac.png)
+[/PARAM]
+[/OBJECT]
항상 하나의 **Persistent Level** (지속 레벨, 퍼시스턴트 레벨)이 있으며, 항상 로드되거나 레벨 스트리밍 볼륨, 블루프린트, C++ 코드를 통해 스트림 인 가능한 서브 레벨 하나 이상으로 구성됩니다.
**레벨** 창에는 이 레벨이 전부 표시되어, (두꺼운 파랑 글씨로 표시된) 현재 레벨 설정을 변경하거나, 하나 이상의 레벨을 저장하거나, 레벨 블루프린트에 접근할 수 있습니다.
@@ -85,7 +111,33 @@ order:2
1. **레벨 열기** 대화창에서 추가할 레벨을 선택한 뒤, **열기** 를 클릭합니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
### 공백 서브레벨 생성
@@ -95,7 +147,33 @@ order:2
1. 레벨의 저장 위치와 이름을 선택한 뒤, **저장** 을 클릭합니다.
- (w:400)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
새로운 레벨이 현재 퍼시스턴트 레벨의 서브레벨로 추가되며, 뷰포트에 현재 작업 레벨로도 설정됩니다.
@@ -112,7 +190,33 @@ order:2
1. 레벨의 저장 위치와 이름을 선택한 뒤, **저장** 을 클릭합니다.
- (w:500)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ (w:700)
+ [/PARAM]
+ [/OBJECT]
선택된 액터 전부 원본 레벨에서 제거되어 새로운 레벨에 추가되며, 해당 레벨은 현재 퍼시스턴트 레벨의 서브레벨로 추가됨과 동시에 뷰포트 현재 작업 레벨로 설정됩니다.
@@ -143,11 +247,63 @@ order:2
퍼시스턴트 레벨에 대해 추가적인 세부 정보가 보이지 않으나, 드롭다운 메뉴를 통해 다른 레벨로 변경할 수 있습니다.
-(w:500)
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(w:700)
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(w:700)
+[/PARAM]
+[/OBJECT]
서브레벨의 경우, 레벨의 오프셋 **위치** 및 **회전** 과 아울러 사용할 **스트리밍 볼륨** 을 설정하고 **레벨 컬러** 디버깅을 할 수 있습니다. [언로드 재요청 최소 간격](Engine/LevelStreaming/StreamingVolumes) 처럼 퍼포먼스 향상을 위한 고급 세팅 역시 여기서 접근 가능합니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(w:700)
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+(w:700)
+[/PARAM]
+[/OBJECT]
## 서브레벨 시각화
@@ -161,3 +317,4 @@ order:2
**게임 모드** 로 껐다켰다 할 수 있습니다.

+
diff --git a/Engine/Documentation/Source/Engine/Matinee/UI/MatineeInterface.JPN.udn b/Engine/Documentation/Source/Engine/Matinee/UI/MatineeInterface.JPN.udn
index 5fee2cf91298..a019e75faae5 100644
--- a/Engine/Documentation/Source/Engine/Matinee/UI/MatineeInterface.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Matinee/UI/MatineeInterface.JPN.udn
@@ -1,8 +1,7 @@
-INTSourceChangelist:3108692
-Availability:Public
+Availability:Public
Title:マチネ エディタのリファレンス
Crumbs:%ROOT%, Engine, Engine/Matinee
-Description:マチネのユーザーインターフェース (UI) の説明
+Description:マチネのユーザー インターフェースの説明
Version:4.9
SkillLevel:Beginner
diff --git a/Engine/Documentation/Source/Engine/Matinee/UI/MatineeInterface.KOR.udn b/Engine/Documentation/Source/Engine/Matinee/UI/MatineeInterface.KOR.udn
index 4a349d3cb70d..061f2d5b979b 100644
--- a/Engine/Documentation/Source/Engine/Matinee/UI/MatineeInterface.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Matinee/UI/MatineeInterface.KOR.udn
@@ -60,8 +60,8 @@ SkillLevel: Beginner
| **섹션 지우기** | 루프 섹션에 포함된 시퀀스 부분을 지웁니다. |
| **섹션 내 선택** | 루프 섹션 내에 포함된 키를 전부 선택합니다. |
| **키 감소** | 현재 선택된 트랙에 있는 키의 양을 줄입니다. 외부 어플로 편집해서 바라는 애니메이션에 필요치 않은 중복 키가 약간 있을 수 있는 트랙에 좋을 수 있습니다. 상세 내용은 [키 감소](Engine/Matinee\UserGuide#키감소) 부분을 참고하십시오. |
-| **패쓰 빌드 위치로 저장** | 패쓰 빌드시 사용할 이동 액터의 위치와 현재 시간을 저장합니다. |
-| **패쓰 빌드 위치로 점프** | 저장된 패쓰 빌드 위치로 시간 커서를 이동시킵니다. |
+| **패스 빌드 위치로 저장** | 패스 빌드시 사용할 이동 액터의 위치와 현재 시간을 저장합니다. |
+| **패스 빌드 위치로 점프** | 저장된 패스 빌드 위치로 시간 커서를 이동시킵니다. |
| **에디터 개인설정** | 언리얼 에디터의 작동방식과 기능에 대한 환경설정이 가능합니다. 언리얼 에디터의 **편집** 메뉴에 있는 **에디터 개인설정** 옵션과 같은 옵션이 제공됩니다. |
| **프로젝트 세팅** | 현재 프로젝트에 대한 세팅을 변경할 수 있습니다. 언리얼 에디터의 **편집** 메뉴에 있는 **프로젝트 세팅** 과 같은 옵션이 제공됩니다. |
diff --git a/Engine/Documentation/Source/Engine/MediaFramework/HowTo/MediaPlaylists/UsingMediaPlaylists.JPN.udn b/Engine/Documentation/Source/Engine/MediaFramework/HowTo/MediaPlaylists/UsingMediaPlaylists.JPN.udn
index 4727bc23b0bf..c90f2af8952a 100644
--- a/Engine/Documentation/Source/Engine/MediaFramework/HowTo/MediaPlaylists/UsingMediaPlaylists.JPN.udn
+++ b/Engine/Documentation/Source/Engine/MediaFramework/HowTo/MediaPlaylists/UsingMediaPlaylists.JPN.udn
@@ -1,101 +1,19 @@
-INTSourceChangeList:3108692
+INTSourceChangelist:3336096
Availability:Public
Title:Media Playlists の使用方法
Crumbs:%ROOT%, Engine
Description:複数の Media Source アセットを再生するための Media Playlist の使い方の例
-Version:4.13
+Version:4.15
SkillLevel:Intermediate
parent:Engine/MediaFramework
order:3
checkpoint: editorqs
Related:Engine\MediaFramework
-一連のビデオを特定の順番で再生したい、または特定のビデオシリーズのビデオにプレイヤーのアクセスを許可したい場合は、
+アンリアル エンジンでメディア アセットで作業している時に、一連のビデオを特定の順番で再生したい、または特定のビデオシリーズのビデオにプレイヤーのアクセスを許可するには、
予め定義した順序が割り当てられた **Media Source** アセットを示す **Media Playlist** アセットを使って行います。
-この操作ガイドでは、Media Playlist の作成およびプレイヤーに各アセットを順番に再生、もしくはキーを押して、プレイリスト内の特定のアセットにプレイヤーがアクセスできるようにします。
-
-[REGION:note]
-ここでは **Starter Content Enabled (スターター コンテンツを有効にした状態)** で **Blueprint Third Person Template** プロジェクトを使います。
-再生するプレイリストを追加するコンピュータ上に [サポートされているビデオ ファイル](Engine\MediaFramework\TechReference) がいくつか必要です。お持ちのビデオを使用するか、あるいは **右クリック** して [ビデオ サンプル 1](Infiltrator Demo.mp4) および [ビデオ サンプル 2](SampleVideo.mp4) をダウンロードします。
-[/REGION]
-
-
-## ステップ
-
-1. **[コンテンツ ブラウザ]** の **[Sources Panel]** を展開したら、**[Content]** に **「Movies」** という名前のフォルダを新規作成します。
-
- 
-
-1. **「Movies」** フォルダを **右クリック** して **[Show in Explorer (エクスプローラーで表示)]** を選択して、そのフォルダnビデオを置きます。プロジェクトの **「Content/Movies」** フォルダにビデオファイルを置くと、ビデオが確実に正しくパックされます。
-
- 
-
-1. **File Media Source** アセットを 2 つ作成し (名前は **Video_01** と **Video_02**) **ファイル パス** をそれぞれのビデオに指定します。
-
- 
-
-1. **MyPlaylist** という名前の **Media Playlist** アセットをコンテンツ ブラウザ内に作成します。
-
- 
-
-1. **MyPlaylist** でそれぞれの **File Media Source** を **ダブルクリック** してプレイリストに追加します。あるいは、**+** ボタンでも空のエレメントを追加して、ソース メディアの割り当てが可能です。この例では **File Media Source** アセットを使っていますが、**Stream Media Source** アセットもプレイリストに入れることができます。
-
- 
-
-1. **VideoPlayer** という名前の **Media Player** アセットを作成します。
-
- 
-
-1. **[Create Media Player(Media Player を作成)]** ウィンドウの **[Audio output SoundWave asset]** と **[Video output Media Texture asset]** にチェックを入れます。再生する必要のあるこの Media Player アセットにリンクしている Media Sound Wave と Media Texture アセットを自動的に作成します。
-
- 
-
- 
-
-1. **[コンテンツ ブラウザ]** の **[StarterContent/Shapes]** で、**Shape_Plane** をレベルにドラッグします。
-
- 
-
-1. **Translate (W)**、**Rotation (E)**、**Scale (R)** ツールを使って、スタティックメッシュのサイズと位置を自由に調節します。
-
-1. **[Ctrl]** を押しながら、**Sound Wave** アセットと **Media Texture** アセットを両方選択して、レベル内の **スタティックメッシュ** 上にリリースします。すると **マテリアル** が自動作成され、スタティックメッシュに適用されます。
-
- 
-
-1. メイン ツールバー で **[Blueprint]** ボタンをクリックして、**[Open Level Blueprint]** を選択します。
-
- 
-
-1. **「Media Player」** という名前の **Media Player Reference** タイプの **変数** を追加し、**VideoPlayer** Media Player アセットに設定します。**Default Value** を代入するには、その前に **コンパイル** する必要があります。
-
- 
-
-1. **イベントグラフ** 内を **ダブルクリック** して **1 Keyboard Event**、**2 Keyboard Event**、**3 Keyboard Event** を追加します。
-
- 
-
-1. **Ctrl** を押したまま **Media Player** 変数にドラッグしたら引き出して、**Open Playlist Index** を使い、**InPlaylist** を **[MyPlaylist]** に設定します。
-
- 
-
-1. **Index** が **1** に設定された **2 Keyboard Event** に **Open Playlist**を使い、**3 Keyboard Event** には **Open Playlist** を使います。
-
- 
-
-1. **Level ブループリント**を閉じて、**[Play]** ボタンをクリックしてレベルで再生します。
-
-
-## 最終結果
-
-エディタでプレイする場合、ビデオ再生はレベルがロードされてもすぐには始まりません。プレイヤーが **1** キーを押すと、プレイリストで最初のビデオのプレイが始まります。
-**2** キーを押すと、プレイリストで 2 つ目のビデオの再生に飛びます。**3** を押すと、プレイリストの最初からビデオを開いてプレイします。それは index 0 のプレイリストを開くことと同じです。
-
-**Media Player** アセットは **Play on Open** に設定されているので、open playlist 関数が呼び出されると各ビデオのプレイが始まる仕組みになっています。
-再生が急に始まらないように Media Source を開くには、Media Player アセット内の [Play on Open] オプションのチェックを外して、**Play** 関数を使って open Media Source アセットをプレイします。
-
-**Next** 関数 (プレイリストの次のアイテムを選択) および **Previous** 関数 (プレイリストの前のアイテムを選択) を使って、開いているプレイリストを移動することができます。
-Media Player には有効にすると、次のソースが開かれる際にプレイリストからランダムにアイテムを選択する **Shuffle** というプロパティもあります。(Previous と Next のアイテムにも影響します)。
+この操作ガイドでは、以下の動画のように Media Playlist の作成およびプレイヤーに各アセットを再生、もしくはキーを押してプレイリスト内の特定のアセットにプレイヤーがアクセスできるようにします。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -108,3 +26,114 @@ Media Player には有効にすると、次のソースが開かれる際にプ
kjbgHVnQxBI
[/PARAMLITERAL]
[/OBJECT]
+
+
+## ステップ
+
+[REGION:note]
+ここでは **Starter Content Enabled (スターター コンテンツを有効にした状態)** で **Blueprint Third Person Template** プロジェクトを使います。
+再生するプレイリストを追加するコンピュータ上に [サポートされているビデオ ファイル](Engine\MediaFramework\TechReference) がいくつか必要です。
+お持ちのビデオを使用するか、あるいは **右クリック** して [ビデオ サンプル 1](Infiltrator Demo.mp4) および [ビデオ サンプル 2](SampleVideo.mp4) をダウンロードします。
+[/REGION]
+
+1. **[コンテンツ ブラウザ]** の **[Sources Panel]** を展開したら、**[Content]** に **「Movies」** という名前のフォルダを新規作成します。
+
+ 
+
+1. **「Movies」** フォルダを **右クリック** して **[Show in Explorer (エクスプローラーで表示)]** を選択して、そのフォルダnビデオを置きます。
+
+ 
+
+ [REGION:note]
+ プロジェクトの **「Content/Movies」** フォルダにビデオファイルを置くと、ビデオが確実に正しくパックされます。
+ [/REGION]
+
+1. **File Media Source** アセットを 2 つ作成し (名前は **Video_01** と **Video_02**) **ファイル パス** をそれぞれのビデオに指定します。
+
+ 
+
+1. **MyPlaylist** という名前の **Media Playlist** アセットをコンテンツ ブラウザ内に作成します。
+
+ 
+
+1. **MyPlaylist** でそれぞれの **File Media Source** を **ダブルクリック** してプレイリストに追加します。
+
+ 
+
+ あるいは、**+** ボタンでも空のエレメントを追加して、ソース メディアの割り当てが可能です。この例では **File Media Source** アセットを使っていますが、**Stream Media Source** アセットもプレイリストに入れることができます。
+
+1. **VideoPlayer** という名前の **Media Player** アセットを作成します。
+
+ 
+
+1. **[Create Media Player(Media Player を作成)]** ウィンドウの **[Audio output SoundWave asset]** と **[Video output Media Texture asset]** にチェックを入れます。
+
+ 
+
+ 再生する必要のあるこの Media Player アセットにリンクしている Media Sound Wave と Media Texture アセットを自動的に作成します。
+
+ 
+
+1. **[コンテンツ ブラウザ]** の **[StarterContent/Shapes]** で、**Shape_Plane** をレベルにドラッグします。
+
+ 
+
+1. **Translate (W)**、**Rotation (E)**、**Scale (R)** ツールを使って、スタティックメッシュのサイズと位置を自由に調節します。
+
+1. **[Ctrl]** を押しながら、**Sound Wave** アセットと **Media Texture** アセットを両方選択して、レベル内の **スタティックメッシュ** 上にリリースします。
+
+ 
+
+ すると **マテリアル** が自動作成され、スタティックメッシュに適用されます。
+
+1. メイン ツールバー で **[Blueprint]** ボタンをクリックして、**[Open Level Blueprint]** を選択します。
+
+ 
+
+1. **「Media Player」** という名前の **Media Player Reference** タイプの **変数** を追加し、**VideoPlayer** Media Player アセットに設定します。
+
+ 
+
+ [REGION:note]
+ **Default Value** を代入する前に **コンパイル** する必要があります。
+ [/REGION]
+
+1. **イベントグラフ** 内を **ダブルクリック** して **1 Keyboard Event**、**2 Keyboard Event**、**3 Keyboard Event** を追加します。
+
+ 
+
+1. **Ctrl** を押したまま **Media Player** 変数にドラッグしたら引き出して、**Open Playlist Index** を使い、**InPlaylist** を **[MyPlaylist]** に設定します。
+
+ 
+
+1. **Index** が **1** に設定された **2 Keyboard Event** に **Open Playlist** を使い、**3 Keyboard Event** には **Open Playlist** を使います。
+
+ 
+
+1. **Level ブループリント**を閉じて、**[Play]** ボタンをクリックしてレベルで再生します。
+
+
+## 最終結果
+
+[OBJECT:EmbeddedVideo]
+[PARAMLITERAL:width]
+640
+[/PARAMLITERAL]
+[PARAMLITERAL:height]
+360
+[/PARAMLITERAL]
+[PARAMLITERAL:videoid]
+kjbgHVnQxBI
+[/PARAMLITERAL]
+[/OBJECT]
+
+
+エディタでプレイする場合、ビデオ再生はレベルがロードされてもすぐには始まりません。プレイヤーが **1** キーを押すと、プレイリストで最初のビデオのプレイが始まります。
+**2** キーを押すと、プレイリストで 2 つ目のビデオの再生に飛びます。**3** を押すと、プレイリストの最初からビデオを開いてプレイします。それは index 0 のプレイリストを開くことと同じです。
+
+**Media Player** アセットは **Play on Open** に設定されているので、open playlist 関数が呼び出されると各ビデオのプレイが始まる仕組みになっています。
+再生が急に始まらないように Media Source を開くには、Media Player アセット内の [Play on Open] オプションのチェックを外して、**Play** 関数を使って open Media Source アセットをプレイします。
+
+**Next** 関数 (プレイリストの次のアイテムを選択) および **Previous** 関数 (プレイリストの前のアイテムを選択) を使って、開いているプレイリストを移動することができます。
+Media Player には有効にすると、次のソースが開かれる際にプレイリストからランダムにアイテムを選択する **Shuffle** というプロパティもあります。(Previous と Next のアイテムにも影響します)。
+
diff --git a/Engine/Documentation/Source/Engine/MediaFramework/TechReference/MF_TechRef.JPN.udn b/Engine/Documentation/Source/Engine/MediaFramework/TechReference/MF_TechRef.JPN.udn
index 9a42972c5d0c..b6de1496e4e2 100644
--- a/Engine/Documentation/Source/Engine/MediaFramework/TechReference/MF_TechRef.JPN.udn
+++ b/Engine/Documentation/Source/Engine/MediaFramework/TechReference/MF_TechRef.JPN.udn
@@ -51,7 +51,7 @@ Windows Media Foundation (WMF) は Windows プラットフォーム上で標準
ただし、メディア ファイルのデコードと再生のために特定のコーデックを必要としないユーザーもいるという意味です。
これまで、アンリアル エンジンは、すべての人がメディアを同じように処理加工するように WMF についているデフォルトのコーデックのみをサポートしてきましたが、
-ゲームを出荷したいメディアやや専用のメディア エンコーダに異なるエンコード メソッドを使いたいことが多々あると思います (例えば、必要なエンコーダーを提供するインストーラーを付けてゲームを出荷する)。
+ゲームを出荷したいメディアや専用のメディア エンコーダに異なるエンコード メソッドを使いたいことが多々あると思います (例えば、必要なエンコーダーを提供するインストーラーを付けてゲームを出荷する)。
**[Project Settings (プロジェクト設定)]** の **[Plugins]** セクションから **WMF Media** 用に標準外のコーデックを有効にすることができます。
diff --git a/Engine/Documentation/Source/Engine/Paper2D/Paper2D.INT.udn b/Engine/Documentation/Source/Engine/Paper2D/Paper2D.INT.udn
index 33c218dab5d6..80bd9f9ffc5a 100644
--- a/Engine/Documentation/Source/Engine/Paper2D/Paper2D.INT.udn
+++ b/Engine/Documentation/Source/Engine/Paper2D/Paper2D.INT.udn
@@ -3,39 +3,30 @@ Title: Paper 2D
Crumbs: %ROOT%, Engine
Description:Paper 2D is a sprite-based system for creating 2D and 2D/3D hybrid games entirely within Unreal Engine 4.
Version: 4.9
+Parent:Engine
+type:landing
+order:21
+Topic-image:Paper2D_Topic.png
[REGION:banner]

[/REGION]
-
+
**Paper 2D** in Unreal Engine 4 (UE4) is a sprite-based system for creating 2D and 2D/3D hybrid games entirely within the editor. At the core of Paper 2D are **Sprites** (which are a Texture Mapped Planar Mesh and associated Material). You can edit Sprites inside UE4 with the **Sprite Editor** and create sprite-based animations with **Flipbooks** (which animate a series of Sprites sequentially by using key frames and specifying a duration in frames to display them).
Refer to each section below for more information and the **Paper 2D** map inside the **Content Examples** project for additional examples:
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Paper 2D topics
- [/PARAM]
- [PARAM:links]
- * [](Engine/Paper2D/Sprites "%Engine/Paper2D/Sprites:description%")
- * [](Engine/Paper2D/Sprites/Editor "%Engine/Paper2D/Sprites/Editor:description%")
- * [](Engine/Paper2D/Sprites/RenderGeometry "%Engine/Paper2D/Sprites/RenderGeometry:description%")
- * [](Engine\Paper2D\Sprites\Collision "%Engine\Paper2D\Sprites\Collision:description%")
- * [](Engine\Paper2D\Flipbooks"%Engine\Paper2D\Flipbooks:description%")
- * [](Engine/Paper2D/Flipbooks/Editor "%Engine/Paper2D/Flipbooks/Editor:description%")
- * [](Engine\Paper2D\Flipbooks\Components "%Engine\Paper2D\Flipbooks\Components:description%")
- * [](Engine\Paper2D\HowTo "%Engine\Paper2D\HowTo:description%")
- * [](Engine\Paper2D\TileMaps"%Engine\Paper2D\TileMaps:description%")
- * [](Engine\Paper2D\Importing"%Engine\Paper2D\Importing:description%")
- * [](Resources/ContentExamples/Paper2D "%Resources/ContentExamples/Paper2D:description%")
- * [Paper 2D Video Tutorials](https://docs.unrealengine.com/latest/INT/Videos/index.html?category=2D)
- [/PARAM]
-[/OBJECT]
-
-
+## Starting Out
+
+[DIR(output:"topic" parent:"Engine/Paper2D" org:"hierarchy" path:"!Engine/Paper2D/HowTo")]
+
+## Guides
+
+[DIR(output:"fancy" parent:"Engine/Paper2D/HowTo" org:"hierarchy")]
+
+## Video Series
+
+[DIR(output:"playlist" type:"playlist" tags:"2D")]
diff --git a/Engine/Documentation/Source/Engine/Paper2D/Paper2D.JPN.udn b/Engine/Documentation/Source/Engine/Paper2D/Paper2D.JPN.udn
index 4812933b87f8..7e7926e06118 100644
--- a/Engine/Documentation/Source/Engine/Paper2D/Paper2D.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Paper2D/Paper2D.JPN.udn
@@ -1,42 +1,33 @@
-INTSourceChangelist:2746166
+INTSourceChangelist:3467293
Availability:Public
Title:Paper 2D
Crumbs: %ROOT%, Engine
Description:Paper 2D は 2D および 2D/3D のハイブリッドなゲームをアンリアル エンジン 4 で作成するためのスプライト ベースのシステムです。
Version:4.9
+Parent:Engine
+type:landing
+order:21
+Topic-image:Paper2D_Topic.png
[REGION:banner]

[/REGION]
-
+
アンリアル エンジン 4 (UE4) の **Paper 2D** は、2D および 2D/3D のハイブリッドなゲームを完全にエディタ内で作成するためのスプライト ベースのシステムです。Paper 2D の中心部は **スプライト** です (Texture Mapped Planar Mesh と関連するマテリアルになります)。**スプライト エディタ** を使って UE4 内でスプライトを編集し、 **Flipbooks** を使ってスプライト ベースのアニメーション (キーフレームを使って一連のスプライトを順番にアニメートし、フレーム単位で継続時間を指定してそれらを表示) を作成することが可能です。
詳細およびサンプルについては、 **コンテンツ サンプル** プロジェクトの **Paper 2D** マップを参照してください。
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Paper 2D topics
- [/PARAM]
- [PARAM:links]
- * [](Engine/Paper2D/Sprites "%Engine/Paper2D/Sprites:description%")
- * [](Engine/Paper2D/Sprites/Editor "%Engine/Paper2D/Sprites/Editor:description%")
- * [](Engine/Paper2D/Sprites/RenderGeometry "%Engine/Paper2D/Sprites/RenderGeometry:description%")
- * [](Engine\Paper2D\Sprites\Collision "%Engine\Paper2D\Sprites\Collision:description%")
- * [](Engine\Paper2D\Flipbooks"%Engine\Paper2D\Flipbooks:description%")
- * [](Engine/Paper2D/Flipbooks/Editor "%Engine/Paper2D/Flipbooks/Editor:description%")
- * [](Engine\Paper2D\Flipbooks\Components "%Engine\Paper2D\Flipbooks\Components:description%")
- * [](Engine\Paper2D\HowTo "%Engine\Paper2D\HowTo:description%")
- * [](Engine\Paper2D\TileMaps"%Engine\Paper2D\TileMaps:description%")
- * [](Engine\Paper2D\Importing"%Engine\Paper2D\Importing:description%")
- * [](Resources/ContentExamples/Paper2D "%Resources/ContentExamples/Paper2D:description%")
- * [Paper 2D 動画チュートリアル](https://docs.unrealengine.com/latest/INT/Videos/index.html?category=2D)
- [/PARAM]
-[/OBJECT]
-
-
+## はじめよう
+
+[DIR(output:"topic" parent:"Engine/Paper2D" org:"hierarchy" path:"!Engine/Paper2D/HowTo")]
+
+## ガイド
+
+[DIR(output:"fancy" parent:"Engine/Paper2D/HowTo" org:"hierarchy")]
+
+## 動画チュートリアル
+
+[DIR(output:"playlist" type:"playlist" tags:"2D")]
diff --git a/Engine/Documentation/Source/Engine/Paper2D/Paper2D.KOR.udn b/Engine/Documentation/Source/Engine/Paper2D/Paper2D.KOR.udn
index a56fd0c7f2b5..6c074d3b1a31 100644
--- a/Engine/Documentation/Source/Engine/Paper2D/Paper2D.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Paper2D/Paper2D.KOR.udn
@@ -1,42 +1,33 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3467293
Availability:Public
Title: 페이퍼 2D
Crumbs: %ROOT%, Engine
Description:Paper 2D 는 언리얼 엔진 4 안에서만 2D 및 2D/3D 혼합 게임 제작용 스프라이트 기반 시스템입니다.
Version: 4.9
+Parent:Engine
+type:landing
+order:21
+Topic-image:Paper2D_Topic.png
[REGION:banner]

[/REGION]
-
+
언리얼 엔진 4 (UE4)의 **Paper 2D**, 페이퍼 2D 는 에디터 안에서만 2D 및 2D/3D 혼합 게임 제작용 스프라이트 기반 시스템입니다. 페이퍼 2D 의 핵심에는 (텍스처 매핑된 평면 메시에 머티리얼이 할당된) **스프라이트** 가 있습니다. **스프라이트 에디터** 로 UE4 안에서 스프라이트를 편집하고, (키 프레임을 사용하고, 프레임 단위로 표시 기간을 지정하여 스프라이트 시리즈에 순차적으로 애니메이션을 적용하는) **플립북** 으로 스프라이트 기반 애니메이션을 만들 수도 있습니다.
자세한 정보는 아래 각 부분을, 추가적인 예제는 **콘텐츠 예제** 프로젝트 안의 **페이퍼 2D** 맵을 참고하세요:
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 페이퍼 2D 토픽
- [/PARAM]
- [PARAM:links]
- * [](Engine/Paper2D/Sprites "%Engine/Paper2D/Sprites:description%")
- * [](Engine/Paper2D/Sprites/Editor "%Engine/Paper2D/Sprites/Editor:description%")
- * [](Engine/Paper2D/Sprites/RenderGeometry "%Engine/Paper2D/Sprites/RenderGeometry:description%")
- * [](Engine\Paper2D\Sprites\Collision "%Engine\Paper2D\Sprites\Collision:description%")
- * [](Engine\Paper2D\Flipbooks"%Engine\Paper2D\Flipbooks:description%")
- * [](Engine/Paper2D/Flipbooks/Editor "%Engine/Paper2D/Flipbooks/Editor:description%")
- * [](Engine\Paper2D\Flipbooks\Components "%Engine\Paper2D\Flipbooks\Components:description%")
- * [](Engine\Paper2D\HowTo "%Engine\Paper2D\HowTo:description%")
- * [](Engine\Paper2D\TileMaps"%Engine\Paper2D\TileMaps:description%")
- * [](Engine\Paper2D\Importing"%Engine\Paper2D\Importing:description%")
- * [](Resources/ContentExamples/Paper2D "%Resources/ContentExamples/Paper2D:description%")
- * [페이퍼 2D 비디오 튜토리얼](https://docs.unrealengine.com/latest/INT/Videos/index.html?category=2D)
- [/PARAM]
-[/OBJECT]
-
-
+## 시작하기
+
+[DIR(output:"topic" parent:"Engine/Paper2D" org:"hierarchy" path:"!Engine/Paper2D/HowTo")]
+
+## 안내서
+
+[DIR(output:"fancy" parent:"Engine/Paper2D/HowTo" org:"hierarchy")]
+
+## 비디오 시리즈
+
+[DIR(output:"playlist" type:"playlist" tags:"2D")]
diff --git a/Engine/Documentation/Source/Engine/Performance/ForwardRenderer/ForwardRenderer.JPN.udn b/Engine/Documentation/Source/Engine/Performance/ForwardRenderer/ForwardRenderer.JPN.udn
index 4ec38de18b68..a65df0312748 100644
--- a/Engine/Documentation/Source/Engine/Performance/ForwardRenderer/ForwardRenderer.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Performance/ForwardRenderer/ForwardRenderer.JPN.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3322543
+INTSourceChangelist:3372845
Availability:Public
Title:VR でフォワード レンダリングを使用する
Crumbs:
Description:フォワード レンダリングを使用して VR パフォーマンスを高める方法
type: overview
version:4.14
-Parent:Engine/Performance
+parent:Engine/Performance
tags:Performance and Profiling
tags:Rendering
tags:VR
@@ -59,9 +59,9 @@ Multisample Anti-Aliasing (MSAA) を使用するには以下の操作を行い

フォワード レンダリングは、マルチサンプル アンチエイリアシング (MSAA) とテンポラル アンチエイリアシング (TAA) の両方をサポートしていますが、ジオメトリ エイリアシングとスペキュラ エイリアシングの両方を除去するため、ほとんどのケースで TAA が好まれます。
-ただし VR では、ヘッド トラッキングでサブピクセルが絶えず移動することで、不必要なぼやけが発生するので、MSAA を選ぶ方が正解かもしれません。
-MSAA を使用するプロジェクトでは、スペキュラ エイリアシングを軽減するためのコンテンツをビルドした方が良いかもしれません。
-さらに、**Normal to Roughness** 機能で詳細な法線マップからスペキュラ エイリアシングを削減し、スタティックメッシュ用の自動 LOD 生成機能により遠くのメッシュの形状を平坦にして、小さなトライアングルからのエイリアシングを削減できます。
+ただし VR では、ヘッド トラッキングでサブピクセルが絶えず移動するため不必要なぼやけが発生するので、MSAA が正しい選択かもしれません。
+MSAA を使用するプロジェクトでは、スペキュラ エイリアシングを軽減するためのコンテンツのビルドをお勧めします。
+さらに、**Normal to Roughness** 機能を使うと、詳細な法線マップからスペキュラ エイリアシングを削減し、スタティックメッシュ用の自動 LOD 生成機能により遠くのメッシュの形状を平坦にして、小さなトライアングルからのエイリアシングを削減できます。
我々のテスト結果では、TAA の代わりに MSAA を使った場合、GPU フレームが約 25% 増加しました (値はコンテンツによって変わります)。
@@ -77,16 +77,16 @@ MSAA を使用するプロジェクトでは、スペキュラ エイリアシ
[/OBJECT]
[REGION:note]
-コンソール変数 `r.MSAACount` を使って、ピクセルごとに計算する MSAA サンプル数を調節できます。
-`r.MSAACount 1` を代入すると Temporal AA を使用する設定に戻ります。アンチエイリアシング メソッドとの切り替えが簡単になります。
+コンソール変数 `r.MSAACount` を使って、ピクセルごとに計算する MSAA サンプル数を調節し、`r.MSAACount 1` で MSAA を無効にできます。
+`r.MSAACount 0` を代入すると Temporal AA を使用する設定に戻ります。アンチエイリアシング メソッドとの切り替えが簡単になります。
[/REGION]
## パフォーマンスと機能
-ディファード レンダラからフォワード レンダラへ切り替により、プロジェクトのパフォーマンスが改善させる場合があります。
+ディファード レンダラからフォワード レンダラへ切り替により、プロジェクトのパフォーマンスが改善する場合があります。
-コンテンツによっては、ディファード レンダリングよりもフォワードレンダリングの方が速い場合があります。ほとんどのパフォーマンスは、マテリアルごとに無効化できる機能によって改善されます。
-デフォルトでは、マテリアルが高品質の反射を選択していない限り、最も近い反射キャプチャのみがパララックスなしで適用され、Height Fog (高さフォグ) は頂点ごとに計算され、それを有効にするマテリアルのみに Planar Reflection が適用されます。
+コンテンツによっては、ディファード レンダリングよりもフォワード レンダリングの方が速い場合があります。ほとんどのパフォーマンスは、マテリアルごとに機能を無効にすると改善します。
+マテリアルが高品質の反射を選択していない限り、最も近い反射キャプチャのみがデフォルトでパララックスなしで適用されます。また、Height Fog (高さフォグ) は頂点ごとに計算され、それを有効にするマテリアルのみに Planar Reflection が適用されます。

@@ -94,7 +94,7 @@ MSAA を使用するプロジェクトでは、スペキュラ エイリアシ

-フォワード レンダラは、ライトと反射キャプチャを視界外のスペースグリッドへカリングを行うことで処理します。その後で、フォワード パスの各ピクセルがライトと反射キャプチャをイタレートし、影響を与えてマテリアルを共有します。
+フォワード レンダラは、ライトと反射キャプチャを視界外のスペースグリッドへのカリング処理で行われます。その後で、フォワード パスの各ピクセルが影響を与えているライトと反射キャプチャをイタレートして、マテリアルを共有します。
Stationary light (固定ライト) の動的シャドウは予め計算されて、スクリーン空間シャドウ マスクのチャンネルにパックされ、オーバーラップする 4 つの Stationary light (固定ライト) 限界部分を強化します。
ディファード レンダラからフォワード レンダラへ切り替えた時には、アンリアル エンジンの [](Engine/Performance) ツールを使ってゲームのパフォーマンスを必ず評価してください。
@@ -138,7 +138,7 @@ Stationary light (固定ライト) の動的シャドウは予め計算されて
* Atmospheric Fog では MSAA をまだ正しく処理しません。
* Height Fog の場合、Vertex Fogging を使えばこの問題を回避できます (フォワード シェーディングを有効にするとデフォルトで有効になります)。
* つまり、Forward BasePass で計算されてから正しくアンチエイリアシングを行います。
- * Atmosphere は解決したシーン深度の Deferred Pass でまだ計算されるので、正しいアンチエイリアシングが行えません (今後のアップデートで解決したいと思っています)。
+ * Atmosphere の計算には、分解処理されたシーン深度の Deferred Pass がまだ使われるので、正しいアンチエイリアシングが行えません (今後のアップデートで解決したいと思っています)。
diff --git a/Engine/Documentation/Source/Engine/Performance/ForwardRenderer/ForwardRenderer.KOR.udn b/Engine/Documentation/Source/Engine/Performance/ForwardRenderer/ForwardRenderer.KOR.udn
index 0a7d29ce632d..ce685cfc6d9a 100644
--- a/Engine/Documentation/Source/Engine/Performance/ForwardRenderer/ForwardRenderer.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Performance/ForwardRenderer/ForwardRenderer.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3322543
+INTSourceChangelist:3372845
Availability:Public
Title: VR 용 포워드 셰이딩 렌더러
Crumbs:
@@ -77,8 +77,8 @@ MSAA 를 사용하는 프로젝트는 MSAA 를 사용하여 콘텐츠를 만들
[/OBJECT]
[REGION:note]
-`r.MSAACount` 콘솔 변수를 사용하여 모든 픽셀마다 MSAA 샘플을 몇이나 계산할지 조절할 수 있습니다.
-`r.MSAACount 1` 은 템포럴 AA 를 사용하도록 하므로, 안티앨리어싱 메소드를 편하게 전환할 수 있습니다.
+`r.MSAACount` 콘솔 변수를 사용하여 모든 픽셀마다 MSAA 샘플을 몇이나 계산할지 조절할 수 있습니다. `r.MSAACount 1` 는 MSAA 를 끕니다.
+`r.MSAACount 0` 은 템포럴 AA 를 사용하도록 하므로, 안티앨리어싱 메소드를 편하게 전환할 수 있습니다.
[/REGION]
## 퍼포먼스 및 기능
diff --git a/Engine/Documentation/Source/Engine/Performance/PerformanceProfiling.JPN.udn b/Engine/Documentation/Source/Engine/Performance/PerformanceProfiling.JPN.udn
index 19a139644daa..5a27b328b941 100644
--- a/Engine/Documentation/Source/Engine/Performance/PerformanceProfiling.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Performance/PerformanceProfiling.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2956400
+INTSourceChangelist:3178047
Availability:Public
Title:パフォーマンスおよびプロファイリング
Crumbs: %ROOT%, Engine
@@ -6,7 +6,8 @@ Description:パフォーマンス問題の特定および修正方法
Navigation:topic
version:4.9
parent:Engine
-order:13
+order:17
+tags:Performance and Profiling
[VAR:Topic]
[OBJECT:Topic]
diff --git a/Engine/Documentation/Source/Engine/Performance/Profiler/Profiler.KOR.udn b/Engine/Documentation/Source/Engine/Performance/Profiler/Profiler.KOR.udn
index b7ff750821ba..ad83b5005300 100644
--- a/Engine/Documentation/Source/Engine/Performance/Profiler/Profiler.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Performance/Profiler/Profiler.KOR.udn
@@ -182,7 +182,7 @@ _**오디오** 에 대한 윗 그림에서, 그룹에 11 항목이 있으며,
|  | 액션 히스토리 뒤로 버튼입니다.|
|  | 액션 히스토리 앞으로 버튼입니다. |
|  | 액션 히스토리 메뉴를 표시합니다. |
-|  | 포함 시간에 따라 선택된 이벤트에 대한 핫 패쓰(hot path)를 펼쳐, 포함 시간 내림차순으로 소팅합니다 (퍼포먼스가 가장 비싼 경로입니다). |
+|  | 포함 시간에 따라 선택된 이벤트에 대한 핫 패스(hot path)를 펼쳐, 포함 시간 내림차순으로 소팅합니다 (퍼포먼스가 가장 비싼 경로입니다). |
### 함수 디테일
**함수 디테일** 에는 사용자가 선택한 함수/이벤트와 선택된 함수/이벤트를 실행하는 함수 호출 사이의 관계를 표시합니다. 이러한 관계는 백분율 값에 맞도록 스케일 적용된 버튼을 사용하여 표시됩니다.
@@ -225,7 +225,7 @@ _**오디오** 에 대한 윗 그림에서, 그룹에 11 항목이 있으며,
| (w:28) | **선택 접음** - 선택된 이벤트와 자손을 접습니다. |
| (w:28) | **스레드 펼침** - 선택된 스레드와 자손을 펼칩니다. |
| (w:28) | **스레드 접음** - 선택된 스레드와 자손을 접습니다. |
-| (w:28) | **핫 패쓰 펼침** - 선택된 이벤트에 대해, 포함 시간을 기반으로 한 핫 패쓰를 펼치고, 포함 시간 내림차순을 적용합니다 (가장 퍼포먼스가 비싼 경로입니다). |
+| (w:28) | **핫 패스 펼침** - 선택된 이벤트에 대해, 포함 시간을 기반으로 한 핫 패스를 펼치고, 포함 시간 내림차순을 적용합니다 (가장 퍼포먼스가 비싼 경로입니다). |
| (w:28) | **계층 뷰로 표시** - 계층 뷰로 전환하고 선택된 이벤트를 펼칩니다. |
| (w:28) | **일반 포함 뷰로 표시** - 일반 포함 뷰로 전환하고 포함 시간 내림차순을 적용합니다. |
| (w:28) | **일반 포함 합침으로 표시** - 일반 합침 뷰로 전환하고 포함 시간 내림차순을 적용합니다. |
diff --git a/Engine/Documentation/Source/Engine/Performance/ReducingPackageSize/ReducingPackageSize.INT.udn b/Engine/Documentation/Source/Engine/Performance/ReducingPackageSize/ReducingPackageSize.INT.udn
index ddc0a11c9fbb..a2696eb3c86d 100644
--- a/Engine/Documentation/Source/Engine/Performance/ReducingPackageSize/ReducingPackageSize.INT.udn
+++ b/Engine/Documentation/Source/Engine/Performance/ReducingPackageSize/ReducingPackageSize.INT.udn
@@ -58,7 +58,33 @@ To turn on package compression, you need to do the following in the UE4 Editor.
1. First, open up the project's settings by going to the Main Toolbar and selecting the **Edit** option, then selecting **Project Settings**.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Under the Project section, click on the **Packaging** section to show the options for how the project will be packaged.
@@ -81,7 +107,33 @@ To set which level (or levels) should be used for this type of interaction, you
1. First, on the **Main Toolbar** go to **Edit** > **Project Settings**.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Then, under **Project** in the **Maps & Modes** section look for the **Default Maps** section.
@@ -102,7 +154,33 @@ If you do not specify which maps should be cooked then all maps will be cooked i
1. First, open up the project's settings by going to the **Main Toolbar** and selecting **Edit** > **Project Settings**.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Then, under **Project** in the **Packaging** section look for the **Packaging** option.
@@ -149,13 +227,65 @@ You can find the Cooked folder by going to **(ProjectName)\Saved\Cooked** and th
Please note that you will only be able to see the content in the **Cooked** folder after you complete your first cook.
[/region]
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]

+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
The image below shows the Texture folder from the Match 3 sample game.
The content in the folder has been sorted by size, so it is easier to see what assets are the biggest.
Once the biggest assets have been determined, you can then examine the assets inside of UE4 to see if in fact they can be reduced in size without sacrificing the integrity of the asset.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]

+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
## Development VS Shipping Build Size
When trying to figure out the final size your project will be, keep in mind that the Development version of your project will be slightly larger than your Shipping build size.
@@ -175,7 +305,33 @@ When you do try and delete something from your project, the **Delete Assets** me
This is the preferred method of deleting objects in UE4 and should be used over just simply deleting/removing the assets from their location in the content folder.
[/region]
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
The Delete Assets menu will inform you if the asset you are trying to delete is referenced by another asset.
If it is not referenced, you can simply delete it, however if it is referenced by other assets, you can use the **Replace References** option to replace the reference to that asset to another asset that is supposed to be packaged in your project.
@@ -193,7 +349,33 @@ To disable a plug-in inside of UE4, you need to do the following:
1. First, open up the Plug-ins Manager by going to the **Main Toolbar** and clicking on the **Window** option and then selecting the **Plug-in** option.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. From the Plug-in Browser, select the different sections and disable any plug-ins you are not using by un-checking the check mark box next to **Enabled**.
When you have disabled all the plug-ins, you will need to re-start the UE4 Editor and then make sure to re-package your project.
@@ -216,13 +398,65 @@ Projects can have multiple Black List files for Debug, Development, Test, and Sh
You can even have different Black List files for each platform your project supports like one for Android, one for iOS, ect.
Here is an example of what the Black List files would look like for Tappy Chicken on Android.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]

+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Here is an example from Tappy Chicken where the cooker is told to not include the following files when the game is cooked and packaged.
* **Blacklist Text File Location & Name:** TappyChicken/Build/Android/**PakBlacklist-Shipping.txt**:
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
The first three entries should be safe for any project, but there may be cases were the **AssetRegistry.bin** is needed at runtime (depending on your project).
It is highly recommended that you thoroughly test to ensure that the content you are removing will not negatively impact your project.
diff --git a/Engine/Documentation/Source/Engine/Performance/ReducingPackageSize/ReducingPackageSize.JPN.udn b/Engine/Documentation/Source/Engine/Performance/ReducingPackageSize/ReducingPackageSize.JPN.udn
index 856387dafb1a..0685b7994f35 100644
--- a/Engine/Documentation/Source/Engine/Performance/ReducingPackageSize/ReducingPackageSize.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Performance/ReducingPackageSize/ReducingPackageSize.JPN.udn
@@ -1,8 +1,8 @@
-INTSourceChangelist:3097732
+INTSourceChangelist:3108692
Availability:Public
-Title:パッケージングしたゲームのサイズを減らす
+Title:パッケージ化したゲームのサイズを小さくする方法
Crumbs: %ROOT%, Engine, Engine/Performance
-Description:パッケージングしたゲームのサイズを減らす方法。
+Description:パッケージ化したゲームのサイズを小さくする
Skilllevel:Intermediate
Version:4.12
Related:Platforms/Android/ReducingAPKSize
@@ -44,20 +44,20 @@ Parent:Engine/Performance
[TOC(start:2 end:3)]
-UE4 プロジェクトがどのタイププラットフォームをターゲットにしていても、パッケージングしたゲームのサイズを減らすことは難しいです。
-次のガイドでは、プロジェクトの最終版のパッケージのサイズを UE4 エディタに備わっているツール以外は使わずに、できる限り小さくするために役立つステップを説明します。
+UE4 プロジェクトの場合、ターゲットがどのプラットフォームであれ、パッケージ化したゲームのサイズを小さくすることは難しいです。
+本ぺーにでは、UE4 エディタに備わっているツール以外は使わずに、製品版プロジェクトの APK パッケージ サイズをできる限り小さくするために役立つステップを説明します。
[EXCERPT:main]
-## 空のプロジェクトを新規作成する
-初めて Android ベースのモバイル プロジェクトで作業する時に、作業するベースとして既存のプロジェクトを使ったり、Starter Content が入っているプロジェクトを新規作成したくなると思います。
-これは **やってはいけません**。そうではなくて、完全に新しく空の C++ あるいは ブループリント ベースのプロジェクトを作成し、[Migration Tool](Engine/Content/Browser/UserGuide/Migrate) を使って使用したいコンテンツを入れます。
-こうすることで、必要とするコンテンツのみをプロジェクトに入れることができます。
+## ブランクのプロジェクトを新規作成する
+Android ベースのモバイル プロジェクトで初めて作業する時に、既存プロジェクトをベースに使ったり、Starter Content が入ったプロジェクトを新規作成したくなると思います。
+これを **しないでください**。そうではなく、完全に新しいブランクの C++ あるいは ブループリント ベースのプロジェクトを作成し、[Migration Tool](Engine/Content/Browser/UserGuide/Migrate) で使用するコンテンツのみを入れてください。
+この方法で、必要なコンテンツのみをプロジェクトに入れることができます。
## クック済みのコンテンツを圧縮する
-APK パッケージ サイズを簡単かつ素早く小さくする方法は、パック処理中に APK パッケージを圧縮するように UE4 に指示することです。
+APK パッケージ サイズを簡単かつ迅速に小さくする方法は、パッケージ化処理中に APK パッケージを圧縮するように UE4 に指示することです。
UE4 エディタで以下の操作をして、パッケージ圧縮を有効にします。
-1. まず、メインツールバーからプロジェクト設定を開いて、**[Edit (編集)]** オプション、次に **[Project Settings (プロジェクト設定)]** を選択します。
+1. まず、メインツール バーからプロジェクト設定を開いて、**[Edit (編集)]** オプション、次に **[Project Settings (プロジェクト設定)]** を選択します。

@@ -73,12 +73,12 @@ UE4 エディタで以下の操作をして、パッケージ圧縮を有効に

-[Create compressed cooked packages] にチェックを入れずにゲームをパッケージングすると、有効にして再度パッケージングした場合に比べて、遥かにサイズが大きいことが分かります。
-実際に **[Create compressed cooked packages]** を有効にすると、APK パッケージ サイズが 50% にまで減ることも珍しくはありません。
+[Create compressed cooked packages] にチェックを入れずにゲームをパッケージ化すると、有効にして再度パッケージ化した場合に比べて、遥かにサイズが大きくなります。
+実際に **[Create compressed cooked packages]** を有効にすると、APK サイズが 50% まで小さくなります。
## プロジェクトのレベルを設定する
-デフォルトでロードするレベルやレベル トランジションで使用するレベルなど、プロジェクト オプションの設定が適切でないことをうっかり見過ごすと APK パッケージ サイズが大きくなってしまいます。
-このタイプのインタラクションに使用するレベル (複数可) を設定は以下の手順で行います。
+デフォルトでロードするレベルやレベル トランジションで使用するレベルなど、不適切なプロジェクト オプション設定のままにしておくと APK パッケージ サイズが大きくなってしまいます。
+このタイプのインタラクションに使用するレベル (複数可) の設定は以下の手順で行います。
1. まず **メイン ツールバー** で **[Edit (編集)]** > **[Project Settings (プロジェクト設定)]** を選択します。
@@ -94,14 +94,14 @@ UE4 エディタで以下の操作をして、パッケージ圧縮を有効に
1. このプロセスを繰り返して、それぞれ必要なマップ タイプにレベルを設定します。
-## パッケージ対象とそうでないコンテンツの選択
-プロジェクト設定の [Packaging] セクションで、コンテンツをゲームにパッケージするかどうかの指定ができます。この操作を行うには、以下の手順に従います。
+## パッケージ化するコンテンツを指定する
+プロジェクト設定の [Packaging] セクションで、ゲームにパッケージ化するコンテンツの指定ができます。この操作を行うには、以下の手順に従います。
[region:warning]
-クック対象のマップを特に指定しないと、テスティング マップを含むすべてのマップがクックされます。クック対象のマップを指定し忘れると、パッケージ化したゲームは必要以上に大きくなってしまいます。
+クック対象のマップを特に指定しない場合、テスティング マップを含むすべてのマップがクックされます。つまり、クック対象のマップを指定し忘れると、パッケージ化したゲームは必要以上に大きくなってしまいます。
[/region]
-1. まず、メインツールバーからプロジェクト設定を開いて、**[Edit (編集)]** > **[Project Settings (プロジェクト設定)]** を選択します。
+1. まず、メイン ツールバーからプロジェクト設定を開いて、**[Edit (編集)]** > **[Project Settings (プロジェクト設定)]** を選択します。

@@ -113,19 +113,19 @@ UE4 エディタで以下の操作をして、パッケージ圧縮を有効に

-1. [Advanced Packaging] オプションを **[Cook everything in the project content directory(ignore list of maps below)(プロジェクト コンテンツ ディレクト内をすべてクックする)]** のチェックボックスが見えるまで下方向にスクロールします。このオプションで、プロジェクトにパッケージするコンテンツとマップを指定できます。
+1. [Advanced Packaging] オプションを **[Cook everything in the project content directory(ignore list of maps below)(プロジェクト コンテンツ ディレクト内をすべてクックする)]** のチェックボックスが見えるまで下方向にスクロールします。このオプションで、プロジェクトにパッケージ化するコンテンツとマップを指定できます。

-1. エントリを新規作成するために使いたいオプションの横の白いプラス記号をクリックして、アイテムを追加 / 削除します。
+1. エントリを新規作成するために使用するオプションの横の白いプラス記号をクリックして、アイテムを追加 / 削除します。

-1. 新規作成されたエントリの横の小さな白い 3 つの点をクリックして表示されたウィンドウで、ビルドする / ビルドしないアセットを選択します。
+1. 新規作成されたエントリの横の小さな白い 3 つの点をクリックして表示されたウィンドウで、ビルドへアセットの追加 / 削除を選択します。

-1. アセットを選択すると、エントリ ボックスにアセットが保存されているプロジェクトのフォルダへのリンクが含まれます。
+1. アセットを選択すると、エントリ ボックスにアセットが保存されているプロジェクトのフォルダへのリンクが挿入されます。

@@ -133,13 +133,13 @@ UE4 エディタで以下の操作をして、パッケージ圧縮を有効に
|--------------|------------|
|Cook everything in the project content directory(ignore list of maps below.|プロジェクト コンテンツ ディレクトリ内のすべてをクックします。|
|Cook only maps(this only affects cook all).|マップのみクックします (cookall フラグのみ影響します)。|
-|Create compressed cooked packages.|圧縮してクックしてパッケージを作成します (デプロイ サイズが小さくなります)。|
+|Create compressed cooked packages.|圧縮されたクック済みパッケージを作成します (デプロイ サイズが小さくなります)。|
|Do not include editor content in this package may cause game to crash / error if you are using this content|エディタ コンテンツのクックをスキップします。|
|List of maps to include in a packaged build|コマンドラインで何も他のマップリストが指定されていない場合にインクルードするマップのリストです。|
-|Additional Asset Directories to Cook|プロジェクト内から参照されているかどうかにかからわずに .uasset ファイルを含むディレクトリです。注意:これらのパスはプロジェクトの Content ディレクトリに対応しています。|
+|Additional Asset Directories to Cook|プロジェクト内から参照されているかどうかにかからわずに .uasset ファイルを含むディレクトリです。注記:これらのパスはプロジェクトの Content ディレクトリに対応しています。|
|Directories to never cook|絶対にクックされないディレクトリです。|
|Additional Non-Asset Directories to Package.|.pak ファイルに常に追加されるファイルを含むディレクトリです ( .pak ファイルを使わないと個々のファイルでコピーされます)。UFS (Unreal File System) file IO API 経由で手書きのコードでロードする追加ファイルをステージします。注意: これらのパスはプロジェクトの Content ディレクトリに対応しています。|
-|Additional Non-Asset Directories to Copy.|プロジェクトをパッケージする際、必ずコピーされるファイルを含むディレクトリですが、.pak ファイルの一部とはみなされません。内部ファイル IO を実行するサードパーティ ライブラリなどの UFS (Unreal File System) file IO API 経由で手書きのコードによってロードした追加フィアルのステージに使います。注意:これらのパスはプロジェクトの Content ディレクトリに対応しています。 |
+|Additional Non-Asset Directories to Copy.|プロジェクトのパッケージ化で、必ずコピーされるファイルを含むディレクトリですが、.pak ファイルの一部とはみなされません。内部ファイル IO を実行するサードパーティ ライブラリなどの UFS (Unreal File System) file IO API 経由で手書きのコードによってロードした追加ファイルのステージに使います。注意:これらのパスはプロジェクトの Content ディレクトリに対応しています。 |
## クックするコンテンツを確認する
@@ -154,21 +154,21 @@ UE4 エディタで以下の操作をして、パッケージ圧縮を有効に
下の画像は Match 3 サンプル ゲームのテクスチャ フォルダです。
フォルダのコンテンツはサイズでソートされているので、最大のアセットがすぐに分かります。
-最大のアセットが決まったら、UE4 の中のそのアセットが実際アセットの統合性に影響を与えずにサイズの縮小が可能かどうかを検討します。
+最大のアセットが分かったら、UE4 内のアセットの統合性に影響を与えずに、そのアセットのサイズの縮小が可能かどうかを検討します。

## 開発 VS シッピング ビルド サイズ
-最終的なサイズを計算する場合、プロジェクトの開発バージョンはシッピング ビルド サイズよりも若干大きくなることを念頭に置いておいてください。
-Medieval Match のサンプル ゲームでは、開発ビルドとシッピング ビルドのサイズの差は約 14 パーセント です。
-ただし、要求事項はプロジェクトによって異なるので、プロジェクトを異なる 2 つのビルド タイプで保存した場合の差は 14 パーセント以下にも以上にもなる場合があります。
+最終的なサイズを計算する場合、プロジェクトは開発バージョンの方がシッピング ビルド サイズよりも若干大きくなることを念頭に置いておいてください。
+Medieval Match のサンプル ゲームでは、開発ビルドとシッピング ビルドのサイズの差は約 14 パーセントです。
+ただし、プロジェクトによって要件は異なるので、開発ビルドとシッピング ビルドで保存されたプロジェクトのサイズの差は、14 パーセント以外になる可能性はあります。
-## デバイス別のテクスチャ LOD
+## デバイス単位のテクスチャ LOD
アンリアル エンジン 4.8 のリリースにより、デバイスごとに使用する LOD サイズを指定できるようになりました。
詳しい情報については、[モバイル プラットフォーム用のテクスチャ ガイドライン](Engine/Rendering/Materials/Editor/Interface) ページをご覧ください。
-##使用しないコンテンツを取り除く
-ストア マーケット用にパッケージングする最終段階になったら、まず最初に使わないコンテンツあるいはテスティング コンテンツをコンテンツ ブラウザで選択して削除して取り除きます。
+## 使用しないコンテンツを取り除く
+ストア用にパッケージ化する最終段階になったら、まず最初に使わないコンテンツあるいはテスティング コンテンツをコンテンツ ブラウザで選択して削除します。
削除したいコンテンツをまず選択したら、キーボードの **[Delete (削除)]** キーを押すか、右クリックメニューの [Delete (削除)] オプションを使用します。
プロジェクトから何かを削除した場合は、**[Delete Assets (アセットを削除)]** メニューが以下の画像のように表示されます。
@@ -178,18 +178,18 @@ Medieval Match のサンプル ゲームでは、開発ビルドとシッピン

-[Delete Assets (アセットを削除)] メニューには、削除対象のアセットが別のアセットから参照されているかを表示します。
-参照されていない場合はそのまま削除できますが、別のアセットが参照している場合は、**[Replace References (リファレンスを置き換える)]** オプションを使ってそのアセットへの参照を別のアセットへ置き換えることができます。
+[Delete Assets (アセットを削除)] メニューには、削除対象のアセットが他のアセットから参照されていることが伝えられます。
+参照されていない場合はそのまま削除できますが、他のアセットから参照されている場合は、**[Replace References (リファレンスを置き換える)]** オプションを使ってそのアセットへの参照を別のアセットへ置き換えることができます。
-##使用しないプラグインを取り除く
-使用しないプラグインを無効にしておくのも、不必要なコンテンツとコードをプロジェクトの最終的な APK パッケージ ファイルの中に入らないようにする方法です。
+## 使用しないプラグインを取り除く
+使用しないプラグインを無効にしておくと、プロジェクトの製品版 APK ファイルに不必要なコンテンツとコードが含まれなくなります。
プラグインの中には、基本アセットとコードの特定のセットが正しく機能しなければいけない場合があるためです。
-プラグインが無効にされていない場合、プラグインが動作するために必要なアセットとコードはプロジェクトから取り除かれます。
-この操作は、大きいテクスチャのサイズを縮小するほどの効果はありませんが、プロジェクトのサイズを 100 MB まで下げることができます。
+プラグインが無効にされていない場合、プラグインが動作するために必要なアセットとコードはプロジェクトに残ります。
+この操作は、大きいテクスチャ サイズを縮小できるほどの効果はありませんが、プロジェクト サイズを 100 MB まで下げることができます。
UE4 のプラグインを無効にするには、以下の操作を行います。
[region:note]
- プロジェクト全体をテストして、無効にしたプラグインがプロジェクトの機能性を妨げないようにしてください。
+ プロジェクト全体をテストして、無効にしたプラグインによってプロジェクトの機能性が損なわれないようにしてください。
[/region]
1. まず、プラグイン マネージャの **メイン ツールバー** から **[Window]** オプションをクリックして **[Plug-in]** オプションを選択します。
@@ -197,7 +197,7 @@ UE4 のプラグインを無効にするには、以下の操作を行います

1. [Plug-in] ブラウザから異なるセクションを選択して、使用しないプラグイン横にある **[Enabled (有効にする)]** というボックスのチェックを外して無効にします。
- すべてのプラグインを無効にした場合は、UE4 エディタを再起動して、それからプロジェクトを再度パッケージングするようにしてください。
+ すべてのプラグインを無効にするにあh、UE4 エディタを再起動して、それからプロジェクトを再度パッケージ化してください。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -212,14 +212,14 @@ UE4 のプラグインを無効にするには、以下の操作を行います
[/OBJECT]
## ブラックリストをパッケージングする
-アンリアル エンジン 4.9 以降のバージョンでは、プロジェクト **Build/Platform/(Target Platform Folder)** ディレクトリの中にテキスト ファイルを置くことにより、ファイル パスを部分的または完全にプロジェクトにパッケージングしないようにクッカーに指示することができるようになりました。
-プロジェクトにはデバッグ、開発、シッピング ビルド用の Black List ファイルを複数置くことが可能なので、好きなプロジェクト データを含むことができます。
+アンリアル エンジン 4.9 以降では、プロジェクト **Build/Platform/(Target Platform Folder)** ディレクトリの中にテキスト ファイルを置くことにより、ファイル パスを部分的または完全にプロジェクトにパッケージ化しないようにクッカーに指示することができるようになりました。
+プロジェクトにはデバッグ、開発、シッピング ビルド用の Black List ファイルを複数置くことが可能なので、好きなプロジェクト データを入れることができます。
Android 用と iOS 用など、プロジェクトがサポートするプラットフォームに対して、異なるブラックリストを作ることも可能です。
Android の Tappy Chicken 用の Black List ファイルはこのような感じになります。

-ゲームがクックおよびパッケージングされている場合、以下のファイルを含まないようにクッカーに指示する場合、Tappy Chicken はこのようになります。
+ゲームがクックおよびパッケージ化されている場合、以下のファイルを含まないようにクッカーに指示すると、Tappy Chicken はこのようになります。
* **Blacklist Text File Location & Name:** TappyChicken/Build/Android/**PakBlacklist-Shipping.txt**:
@@ -227,7 +227,7 @@ Android の Tappy Chicken 用の Black List ファイルはこのような感じ
最初の 3 つのエントリはどのプロジェクトでも問題ありませんが、(プロジェクトによっては) ライタイム時に **AssetRegistry.bin** が必要になる場合があります。
削除中のコンテンツがプロジェクトに悪い影響を与えないことを確認するために、一通りテストしておくことを強くお勧めします。
-すべてのプロジェクト レベルを開いて、エラーや警告もなく正しくロードされていることを確認する方法が一番簡単で分かりやすいです。
+すべてのプロジェクト レベルを開いて、エラーや警告もなく正しくロードされていることを確認する方法が一番簡単かつ明確です。
それでも問題が生じ、原因が分からない場合は、Logcat でエラーを確認します。
## Max Dynamic Point Lights
@@ -237,14 +237,14 @@ UE 4.9 のリリースでは、動的ライト用に生成されたシェーダ

-この機能を完全に無効にするためには **Max Dynamic Point Lights** を **4** から **0** に設定し、要求されたら UE4 エディタを再起動します。
+この機能を完全に無効にするためには **[Max Dynamic Point Lights]** を **「4」** から **「0」** に設定し、要求されたら UE4 エディタを再起動します。

-プロジェクトのサイズおよびマテリアルの使用数によって、保存可能容量は数 MB からその数倍にまで変化します。
+プロジェクト サイズおよび使用マテリアル数によって、保存可能容量は数 MB からその数倍にまで変動します。
例えばデフォルトの Third Person Template を使用すれば、Max Dynamic Point Lights を有効にした場合と完全に無効にした場合の保存容量を確認することができます。
-| ステート| パッケージングされたゲーム サイズ| 保存容量|
+| ステート| パッケージ化されたゲーム サイズ| 保存容量|
| ---------| ------| -----|
|ON|54.3 MB|0|
|OFF| 53.2 MB| 1.1 MB|
diff --git a/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.CHN.udn
new file mode 100644
index 000000000000..44d4ed69d9b9
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.CHN.udn
@@ -0,0 +1,190 @@
+INTSourceChangelist:0
+Availability:Public
+Crumbs:
+Title:Clothing Tool Overview
+Description:An overview of Cloth creation using in-editor tools in Unreal Engine 4.
+Type:Overview
+SkillLevel:Intermediate
+Version:4.16
+Parent:Engine/Physics
+Order:1
+Tags:Cloth
+Tags:Physics
+reference-image:SectionSelection.gif
+reference-image:PaintingCloth.gif
+Topic-image:Clothing_Topic.png
+
+
+
+[REGION:warning]
+This is an experimental feature and may change in later versions. In order to use this tool, you must first enable it in the Editor Preferences. You can do this by doing to the main menu > **Edit** > **Editor Preferences** > **Experimental** > and
+enabling the checkbox next to **Clothing Tool**.
+[/REGION]
+
+[TOC(start:2 end:2)]
+
+In Unreal Engine, version 4.16, APEX Cloth has now been replaced with the NVIDIA's NvCloth solver. This is a low-level clothing solver that is responsible for the particle simulation that runs
+clothing. This clothing solver allows integrations to be lightweight and very extensible because we now have direct access to this data. Unlike APEX Clothing, which is a sophisticated SDK that
+is a one-stop shop for clothing simulation that handles both the simulation and the render.
+
+(w:900)
+
+With the Clothing Tools now available within the Editor, the workflow has been redefined to enable developers to work directly in Unreal Engine to author their content without the need for
+external dependencies.
+
+[REGION:imagetable]
+| [INCLUDE:#oldworkflow] | [INCLUDE:#newworkflow] |
+| --- | --- |
+| Old Cloth Workflow | New Cloth Workflow |
+| [INCLUDE:#clickimage] | [INCLUDE:#clickimage] |
+[/REGION]
+
+With the "Old" workflow using APEX Cloth, you were required to develop all your assets outside of Unreal using an external program (NVIDIA's Clothing Tool) or DCC Plugins that require specific
+software (3DS Max/Maya) to author this content. Only during the final stage of development would you bring your authored content into Unreal and assign it to your mesh. This meant that if you had
+to correct anything you would have to go back to your program and re-author the content outside of the Editor.
+
+The "New" workflow enables you to create your content once and then do all the creation editing of the clothing directly inside of Unreal. This makes the creation and iteration of testing content
+that much quicker, and you also avoid any disconnects between where the content was created versus where it's being used by being able to see all of your edits for your clothing simulation
+happening in real-time and as they will appear in your game.
+
+
+## Creating a Cloth Section Asset
+
+To create a new Cloth asset, follow these steps.
+
+1. Click the **Section Selection** button in the main toolbar. This will enable you to select the different Material Elements of your Skeletal Mesh.
+
+ [REGION:asyncgif]
+ (w:500)
+ [/REGION]
+1. With your section selected, you can right-click anywhere on the highlighted element to bring up the **Cloth Asset** options menu.
+
+ (w:450)
+
+1. Hover over **Create Cloth Asset from Selection** and then fill in the following areas.
+
+ (w:350)
+
+ * **Asset Name** - Give your asset a name so that you can easily find locate it later.
+ * **Remove from Mesh** - If you've got a separate mesh piece of geometry you want to be associated as cloth, you can enable this option. If not, you can leave this unchecked.
+ * **Physics Asset** - If this cloth asset is for a character, use its Physics Asset here to get proper collision for the cloth simulation.
+
+1. Once you've set the information from the previous step you can click the **Create** button.
+
+ (w:350)
+
+## Assigning a Cloth Section Asset
+
+To assign a Cloth asset to a section, follow these steps.
+
+1. With your section element selected, you can right-click anywhere on the highlighted element to bring up the **Cloth Asset** options menu. Then hover over **Apply Clothing Asset** and
+select from the available clothing assets to apply. This will associate the Cloth asset you created with this Material Element geometry.
+
+ (w:450)
+
+## Painting Cloth Weights
+
+To begin painting your cloth weights, follow these steps.
+
+1. Go to the main menu and select **Window**, then locate and click **Cloth Paint**. This will open the Cloth Paint panel where you can click the **Enable Paint Tools** button to access
+the various options for painting cloth weights to onto your geometry.
+
+ (w:350)
+
+1. To start painting, select your assigned Cloth Asset from the **Assets** window.
+
+ (w:550)
+
+1. In the Cloth Painting section, set a **Paint Value** and then left-click and drag the brush across the surface of your clothing geometry you've selected.
+
+ [REGION:asyncgif]
+ (w:500)
+ [/REGION]
+
+ [REGION:note]
+ If you've used the APEX Clothing Tools for 3DS Max or Maya, or similar painting tools in general, the controls should feel familiar.
+ [/REGION]
+
+### Paint Tool Methods
+
+The **Paint Tool** selection enables you to choose the way you can paint your cloth weights; using a brush or a gradient.
+
+#### Brush
+
+The **Brush** tool enables you to manually paint weight values directly to your cloth.
+
+(w:350)
+
+To paint your weight values, set a **Paint Value** and left-click and drag the mouse over the cloth geometry.
+
+(w:500)
+
+
+#### Gradient
+
+The **Gradient** tool enables you to set weight values that will be painted between the selected points. Between these selected points a gradient will be painted that increases from the
+**Gradient Start Value** to the **Gradient End Value**.
+
+(w:350)
+
+To paint your weight values, first set the **Gradient Start Value** and the **Gradient End Value**. Then, left-click and drag along your cloth mesh to paint the start value, which is represented
+by a green color over the painted vertices. Once you've done that, press the **Enter** (Return) key to switch and paint the end value, which is now represented by a red color that is painted over
+the vertices.
+
+Once you're finished painting your gradient values, press the **Enter** (Return) key again and you will see a gradient painted similarly too the example below.
+
+(w:500)
+
+
+
+[REGION:note]
+Alternatively, if you'd prefer to use a Brush while painting your gradient start and end points you can enable the option **Use Regular Brush for Gradient**. Then in the Brush section, use the **Radius** tool to set your brushes radius.
+[/REGION]
+
+
+
+## Assigning Cloth Assets to their Materials
+
+To assign Cloth assets to the Material Element of your Skeletal Mesh, follow these steps.
+
+1. Navigate to the **Asset Details** panel and locate the **Clothing** section. This is where you'll find your available Cloth assets that can be assigned. You can adjust the various properties of your cloth
+by expanding the **Clothing Properties**.
+
+ (w:350)
+1. In the **LOD** section, locate the **Material Element** you used to paint your cloth weights to. Use the **Clothing** drop-down selection to pick from the available cloth assets.
+
+ (w:350)
+
+ [REGION:note]
+ Clothing Assets should only be assigned to the Material Elements that has had a clothing asset created and painted for it to use.
+ [/REGION]
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.INT.udn b/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.INT.udn
new file mode 100644
index 000000000000..476bbba36b32
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.INT.udn
@@ -0,0 +1,192 @@
+Availability:Public
+Crumbs:
+Title:Clothing Tool Overview
+Description:An overview of Cloth creation using in-editor tools in Unreal Engine 4.
+Type:Overview
+SkillLevel:Intermediate
+Version:4.16
+Parent:Engine/Physics
+Order:1
+Tags:Cloth
+Tags:Physics
+reference-image:SectionSelection.gif
+reference-image:PaintingCloth.gif
+Topic-image:Clothing_Topic.png
+
+
+
+[REGION:warning]
+This is an experimental feature and may change in later versions. In order to use this tool, you must first enable it in the Editor Preferences. You can do this by doing to the main menu > **Edit** > **Editor Preferences** > **Experimental** > and
+enabling the checkbox next to **Clothing Tool**.
+[/REGION]
+
+[TOC(start:2 end:2)]
+
+In Unreal Engine, version 4.16, APEX Cloth has now been replaced with the NVIDIA's NvCloth solver. This is a low-level clothing solver that is responsible for the particle simulation that runs
+clothing. This clothing solver allows integrations to be lightweight and very extensible because we now have direct access to this data. Unlike APEX Clothing, which is a sophisticated SDK that
+is a one-stop shop for clothing simulation that handles both the simulation and the render.
+
+(w:1200)
+
+1. **Section Selection -** Use this to select the Material IDs that will be used for painting cloth onto.
+1. **Cloth Paint Tab -** This section includes all the necessary tools and properties you can use when painting clothing.
+
+With the Clothing Tools now available within the Editor, the workflow has been redefined to enable developers to work directly in Unreal Engine to author their content without the need for
+external dependencies.
+
+[REGION:imagetable]
+| [INCLUDE:#oldworkflow] | [INCLUDE:#newworkflow] |
+| --- | --- |
+| Old Cloth Workflow | New Cloth Workflow |
+| [INCLUDE:#clickimage] | [INCLUDE:#clickimage] |
+[/REGION]
+
+With the "Old" workflow using APEX Cloth, you were required to develop all your assets outside of Unreal using an external program (NVIDIA's Clothing Tool) or DCC Plugins that require specific
+software (3DS Max/Maya) to author this content. Only during the final stage of development would you bring your authored content into Unreal and assign it to your mesh. This meant that if you had
+to correct anything you would have to go back to your program and re-author the content outside of the Editor.
+
+The "New" workflow enables you to create your content once and then do all the creation editing of the clothing directly inside of Unreal. This makes the creation and iteration of testing content
+that much quicker, and you also avoid any disconnects between where the content was created versus where it's being used by being able to see all of your edits for your clothing simulation
+happening in real-time and as they will appear in your game.
+
+
+## Creating a Cloth Section Asset
+
+To create a new Cloth asset, follow these steps.
+
+1. Click the **Section Selection** button in the main toolbar. This will enable you to select the different Material Elements of your Skeletal Mesh.
+
+ [REGION:asyncgif]
+ (w:500)
+ [/REGION]
+1. With your section selected, you can right-click anywhere on the highlighted element to bring up the **Cloth Asset** options menu.
+
+ (w:450)
+
+1. Hover over **Create Cloth Asset from Selection** and then fill in the following areas.
+
+ (w:350)
+
+ * **Asset Name** - Give your asset a name so that you can easily find locate it later.
+ * **Remove from Mesh** - If you've got a separate mesh piece of geometry you want to be associated as cloth, you can enable this option. If not, you can leave this unchecked.
+ * **Physics Asset** - If this cloth asset is for a character, use its Physics Asset here to get proper collision for the cloth simulation.
+
+1. Once you've set the information from the previous step you can click the **Create** button.
+
+ (w:350)
+
+## Assigning a Cloth Section Asset
+
+To assign a Cloth asset to a section, follow these steps.
+
+1. With your section element selected, you can right-click anywhere on the highlighted element to bring up the **Cloth Asset** options menu. Then hover over **Apply Clothing Asset** and
+select from the available clothing assets to apply. This will associate the Cloth asset you created with this Material Element geometry.
+
+ (w:450)
+
+## Painting Cloth Weights
+
+To begin painting your cloth weights, follow these steps.
+
+1. Go to the main menu and select **Window**, then locate and click **Cloth Paint**. This will open the Cloth Paint panel where you can click the **Enable Paint Tools** button to access
+the various options for painting cloth weights to onto your geometry.
+
+ (w:350)
+
+1. To start painting, select your assigned Cloth Asset from the **Assets** window.
+
+ (w:550)
+
+1. In the Cloth Painting section, set a **Paint Value** and then left-click and drag the brush across the surface of your clothing geometry you've selected.
+
+ [REGION:asyncgif]
+ (w:500)
+ [/REGION]
+
+ [REGION:note]
+ If you've used the APEX Clothing Tools for 3DS Max or Maya, or similar painting tools in general, the controls should feel familiar.
+ [/REGION]
+
+### Paint Tool Methods
+
+The **Paint Tool** selection enables you to choose the way you can paint your cloth weights; using a brush or a gradient.
+
+#### Brush
+
+The **Brush** tool enables you to manually paint weight values directly to your cloth.
+
+(w:350)
+
+To paint your weight values, set a **Paint Value** and left-click and drag the mouse over the cloth geometry.
+
+(w:500)
+
+
+#### Gradient
+
+The **Gradient** tool enables you to set weight values that will be painted between the selected points. Between these selected points a gradient will be painted that increases from the
+**Gradient Start Value** to the **Gradient End Value**.
+
+(w:350)
+
+To paint your weight values, first set the **Gradient Start Value** and the **Gradient End Value**. Then, left-click and drag along your cloth mesh to paint the start value, which is represented
+by a green color over the painted vertices. Once you've done that, press the **Enter** (Return) key to switch and paint the end value, which is now represented by a red color that is painted over
+the vertices.
+
+Once you're finished painting your gradient values, press the **Enter** (Return) key again and you will see a gradient painted similarly to the example below.
+
+(w:500)
+
+
+
+[REGION:note]
+Alternatively, if you'd prefer to use a Brush while painting your gradient start and end points you can enable the option **Use Regular Brush for Gradient**. Then in the Brush section, use the **Radius** tool to set your brushes radius.
+[/REGION]
+
+
+
+## Assigning Cloth Assets to their Materials
+
+To assign Cloth assets to the Material Element of your Skeletal Mesh, follow these steps.
+
+1. Navigate to the **Asset Details** panel and locate the **Clothing** section. This is where you'll find your available Cloth assets that can be assigned. You can adjust the various properties of your cloth
+by expanding the **Clothing Properties**.
+
+ (w:350)
+1. In the **LOD** section, locate the **Material Element** you used to paint your cloth weights too. Use the **Clothing** drop-down selection to pick from the available cloth assets.
+
+ (w:350)
+
+ [REGION:note]
+ Clothing Assets should only be assigned to the Material Elements that has had a clothing asset created and painted for it to use.
+ [/REGION]
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.JPN.udn
new file mode 100644
index 000000000000..a550a8b7caf7
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.JPN.udn
@@ -0,0 +1,193 @@
+INTSourceChangelist:3473461
+Availability:Public
+Crumbs:
+Title:クロス ツールの概要
+Description:UE4 のインエディタ ツールを使ったクロス作成の概要
+Type:Overview
+SkillLevel:Intermediate
+Version:4.16
+Parent:Engine/Physics
+Order:1
+Tags:Cloth
+Tags:Physics
+reference-image:SectionSelection.gif
+reference-image:PaintingCloth.gif
+Topic-image:Clothing_Topic.png
+
+
+
+[REGION:warning]
+これは実験的機能であり、将来のバージョンで変更される可能性があります。このツールを使用するには、最初に [Editor Preferences (エディタの環境設定)] で有効にする必要があります。これはメイン メニューで、 **Edit** > **Editor Preferences** > **Experimental** > の順に進み、
+**[Clothing Tool]** ツールの隣のチェックボックスを有効にして行います。
+[/REGION]
+
+[TOC(start:2 end:2)]
+
+アンリアル エンジンのバージョン 4.16 では APEX Cloth がNVIDIA の NvCloth ソルバーと置き換わりました。これはローレベルのクロス (布) ソルバーであり、クロスを実行するパーティクル シミュレーションを
+行います。このクロス ソルバーの統合は軽量であり、データへの直接アクセスが可能なため拡張性が高くなっています。シミュレーションとレンダリングの両方を処理するオールインワンの SDK である
+APEX Clothing とは異なります。
+
+(w:1200)
+
+1. **[Section Selection (セクション選択)] -** クロスをペイントするために使う Material ID を選択します。
+1. **[Cloth Paint] タブ -** クロスをペイントする場合に必要なツールやプロパティがすべてあります。
+
+エディタでクロス ツールを利用できるようになり、ワークフローが再定義されました。直接アンリアル エンジンで作業して、外部ツールに依存せずに
+コンテンツをオーサリングできるようになりました。
+
+[REGION:imagetable]
+| [INCLUDE:#oldworkflow] | [INCLUDE:#newworkflow] |
+| --- | --- |
+| クロスの旧ワークフロー | クロスの新規ワークフロー |
+| [INCLUDE:#clickimage] | [INCLUDE:#clickimage] |
+[/REGION]
+
+APEX Cloth を用いた「旧」ワークフローでは、外部プログラム (NVIDIA のクロス ツール) を使ってアンリアル外部ですべてのアセットを作成するか、特定のソフトウェア (3DS Max/Maya) を必要とする DCC プラグインを使う
+必要がありました。開発の最終段階でのみ、オーサリングしたコンテンツをアンリアル エンジンに取り込んで、メッシュに割り当てます。つまり、何かを変更する必要があれば、
+プログラムに戻り、エディタ外部でコンテンツを再オーサリングしなければなりませんでした。
+
+「新規」ワークフローでは、コンテンツを作成したら、すべてのクロスの作成、編集を直接アンリアル エンジン内で行います。これにより、コンテンツの作成およびテストするコンテンツのイタレーションが迅速になり、
+クロス シミュレーションがゲームのようにリアルタイムで起こり、編集がすべて見えることで、
+コンテンツの作成場所と使用場所との間でずれがなくなります。
+
+
+## Cloth Section アセットを作成する
+
+新規 Cloth アセットを作成するには、以下の操作を行います。
+
+1. メイン ツールバーで、**[Section Selection (セクション選択)]** ボタンをクリックします。これでスケルタルメッシュの様々なマテリアル エレメントを選択することができます。
+ [REGION:asyncgif]
+
+ (w:500)
+ [/REGION]
+1. セクションを選択した状態で、ハイライトしたエレメント上で右クリックして **[Cloth Asset]** オプション メニューを表示させます。
+
+ (w:450)
+
+1. **[Create Cloth Asset from Selection (選択したものから Cloth アセットを作成)]** にマウスをかざして、以下のエリアに情報を入力します。
+
+ (w:350)
+
+ * **Asset Name** - 後で簡単に見つけられるようにアセットに名前を付けてください。
+ * **Remove from Mesh** - クロスとして関連付けたい別個のジオメトリのメッシュの構成要素があれば、このオプションを有効にします。そうでなければ、チェックを入れずにこのままにします。
+ * **Physics Asset** - Cloth アセットがキャラクター用ならば、その Physics アセットを使ってクロス シミュレーションに適切なコリジョンが生じるようにします。
+
+1. 前のステップで情報を設定したら、**[Create]** ボタンをクリックします。
+
+ (w:350)
+
+## Cloth Section アセットを割り当てる
+
+セクションに Cloth アセットを割り当てるには以下の手順に従います。
+
+1. セクション エレメントを選択した状態で、ハイライトしたエレメント上で右クリックして **[Cloth Asset]** オプション メニューを表示させます。**[Apply Clothing Asset (Clothing アセットを適用)]** にマウスをかざして、適用する利用可能な
+Cloth アセットを選択します。これにより作成した Cloth アセットをこのマテリアル エレメント ジオメトリに関連付けます。
+
+ (w:450)
+
+## クロスのウェイトをペイントする
+
+クロスのウェイトのペイントを開始するには、以下のステップに従います。
+
+1. メイン メニューに進み、**[Window]** を選択し、**[Cloth Paint]** を探してクリックします。クロスのペイント パネルが開きます。このパネルで、**[Enable Paint Tools]** ボタンをクリックすると、
+クロスのウェイトをジオメトリにペイントするための様々なオプションを利用することができます。
+
+ (w:350)
+
+1. ペイントを開始するには、割り当てた Cloth アセットを **[Assets]** ウィンドウから選択します。
+
+ (w:550)
+
+1. Cloth Painting セクションで、**[Paint Value]** を設定します。次に左クリックして、選択したクロス ジオメトリのサーフェス上をブラシでドラッグします。
+
+ [REGION:asyncgif]
+ (w:500)
+ [/REGION]
+
+ [REGION:note]
+ 3DS Max または Maya で APEX クロス ツールや一般的な類似ペイント ツールを使ったことがあれば、こうした操作に馴染みがあるはずです。
+ [/REGION]
+
+### Paint ツールのメソッド
+
+**Paint Tool** の選択では、ブラシあるいはグラデーションを使ってクロスのウェイトのペイント方法を選ぶことができます。
+
+#### ブラシ
+
+**Brush** ツールは、手動でウェイト値を直接クロスにペイントすることができます。
+
+(w:350)
+
+ウェイト値をペイントするには、 **[Paint Value]** を設定し、左クリックしてクロスのジオメトリ上をマウスオーバーします。
+
+(w:500)
+
+
+#### グラデーション
+
+**[Gradient]** ツールを使って、選択したポイント間でペイントするウェイト値を設定することができます。こうした選択ポイント間で、**[Gradient Start Value (グラデーションの開始値)]** から **[Gradient End Value (グラデーション終了値)]** に値が増えていく
+グラデーションをペイントします。
+
+(w:350)
+
+ウェイト値をペイントするには、最初に **[Gradient Start Value]** と **[Gradient End Value]** を設定します。次に左クリックしてクロスのメッシュに沿ってドラッグして開始値をペイントします。
+これは緑色で表示されます。このように行ったら、**Enter** (Return) キーを押して切り替えて終了値をペイントします。
+これは頂点上にペイントされる赤色で表示されます。
+
+グラデーション値のペイント終了後、再度 **Enter** (Return) キーを押すと以下の例のようにペイントされたグラデーションが表示されます。
+
+(w:500)
+
+
+
+[REGION:note]
+または、グラデーションの開始ポイントと終了ポイントでブラシを使用する場合、**[Use Regular Brush for Gradient]** のオプションを有効にすることができます。次にブラシ セクションで、**Radius** ツールを使ってブラシの半径を設定します。
+[/REGION]
+
+
+
+## Cloth アセットをマテリアルに割り当てる
+
+Cloth アセットをスケルタルメッシュのマテリアル エレメントに割り当てるには、以下の手順に従います。
+
+1. **[Asset Details]** パネルに移動して **[Clothing]** セクションを見つけます。ここで割り当てることのできる Cloth アセットを探します。クロスの様々なプロパティを調整するには、
+**[Clothing Properties]** を展開します。
+
+ (w:350)
+1. **[LOD]** セクションでクロスのウェイトのペイントにも使った **Material Element (マテリアル エレメント)** を探します。**[Clothing]** のドロップダウンの選択肢を使って利用可能な Cloth アセットの中から選択します。
+
+ (w:350)
+
+ [REGION:note]
+ Clothing アセットは、マテリアル エレメントが使用するために作成され、ペイントされた Clothing アセットを持つマテリアル エレメントだけに割り当てられます。
+ [/REGION]
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.KOR.udn
new file mode 100644
index 000000000000..5cdcf94fa875
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Cloth/Overview/ClothOverview.KOR.udn
@@ -0,0 +1,193 @@
+INTSourceChangelist:3473461
+Availability:Public
+Crumbs:
+Title:클로딩 툴 개요
+Description:언리얼 엔진 4 에디터 내장 툴을 사용해서 클로스를 만드는 방법 개요입니다.
+Type:Overview
+SkillLevel:Intermediate
+Version:4.16
+Parent:Engine/Physics
+Order:1
+Tags:Cloth
+Tags:Physics
+reference-image:SectionSelection.gif
+reference-image:PaintingCloth.gif
+Topic-image:Clothing_Topic.png
+
+
+
+[REGION:warning]
+이 기능은 실험단계 기능이라 앞으로 변경될 수 있습니다. 이 툴을 사용하려면, 먼저 에디터 개인설정에서 활성화시켜야 합니다. 메인 메뉴 > **편집** > **에디터 개인설정** > **실험단계** 에서
+**Clothing Tool** (클로딩 툴) 옆의 박스를 체크하시면 됩니다.
+[/REGION]
+
+[TOC(start:2 end:2)]
+
+언리얼 엔진 4.16 버전에서 APEX Cloth 가 NVIDIA 의 NvCloth 솔버로 대체되었습니다. 클로딩을 실행시키는 파티클 시뮬레이션을 담당하는 로우 레벨 클로딩 솔버입니다.
+이 클로딩 솔버를 통해 그 데이터에 직접 접근할 수 있게 되어 매우 가볍고 확장성 높은 통합이 가능해졌습니다. APEX Clothing 과는 달리 세련된 SDK 가 포함되어 있어
+시뮬레이션과 렌더 양쪽을 담당하는 클로딩 시뮬레이션 원스탑 센터 역할을 할 것입니다.
+
+(w:1200)
+
+1. **Section Selection -** (섹션 선택) 클로스 페인트 작업을 할 때 사용할 머티리얼 ID 를 선택하는 데 사용됩니다.
+1. **Cloth Paint Tab -** (클로스 페인트 탭) 이 섹션에는 클로딩을 페인트할 때 사용할 수 있는 필수 툴과 프로퍼티가 전부 들어있습니다.
+
+이제 에디터 안에서 클로딩 툴을 사용할 수 있게 되어, 언리얼 엔진 개발자들은 외부 프로그램에 의존할 필요 없이 엔진 안에서 바로 작업할 수 있도록
+새로운 작업방식을 정의할 수 있게 되었습니다.
+
+[REGION:imagetable]
+| [INCLUDE:#oldworkflow] | [INCLUDE:#newworkflow] |
+| --- | --- |
+| 예전 클로스 작업방식 | 새로운 클로스 작업방식 |
+| [INCLUDE:#clickimage] | [INCLUDE:#clickimage] |
+[/REGION]
+
+APEX Cloth 를 사용하는 "예전" 작업방식에서는, 언리얼 외부에서 (NVIDIA 의 Clothing Tool 같은) 외부 프로그램이나 (3DS Max/Maya 같은) 특정 소프트웨어가 필요한 DCC 플러그인을 사용해서
+모든 콘텐츠를 제작해야 했습니다. 개발 최종 단계에서나 제작한 콘텐츠를 언리얼로 가져와 메시에 할당하는 것이지요. 즉 뭔가 수정해야 할 것이 있으면
+원래 프로그램으로 돌아가 에디터 외부에서 콘텐츠를 다시 제작해야 했다는 뜻입니다.
+
+"새로운" 작업방식에서는 콘텐츠를 한 번 만든 이후 클로딩 관련 편집 작업을 전부 언리얼 안에서 할 수 있게 되었습니다. 콘텐츠의 생성이나 테스트 반복작업이 그만큼 빨라질 뿐만 아니라,
+클로딩 시뮬레이션 편집 내용을 게임에서 실시간 확인 가능하므로
+콘텐츠 제작 시점과 사용 시점에서 달라지는 현상을 방지할 수 있습니다.
+
+
+## 클로스 섹션 애셋 생성
+
+Cloth(클로스) 애셋을 새로 생성하는 방법은 다음과 같습니다.
+
+1. 메인 툴바의 **섹션 선택** 버튼을 클릭합니다. 스켈레탈 메시에 다른 머티리얼 엘리먼트를 선택할 수 있습니다.
+
+ [REGION:asyncgif]
+ (w:500)
+ [/REGION]
+1. 섹션을 선택한 채, 강조된 엘리먼트에 우클릭하면 **클로스 애셋** 옵션 메뉴가 뜹니다.
+
+ (w:450)
+
+1. **Create Cloth Asset from Selection** (선택에서 클로스 애셋 생성)을 선택한 뒤 다음 부분을 채웁니다.
+
+ (w:350)
+
+ * **Asset Name** 애셋 이름 - 나중에 쉽게 찾을 수 있도록 애셋이 이름을 짓습니다.
+ * **Remove from Mesh** 메시에서 제거 - 클로스에 할당하려는 별도의 지오메트리 메시 조각이 있는 경우, 이 옵션을 켜면 됩니다. 없으면 빈 박스로 놔둬도 됩니다.
+ * **Physics Asset** 피직스 애셋 - 이 클로스 애셋이 캐릭터용인 경우, 그 피직스 애셋을 사용하여 클로스 시뮬레이션에 적합한 콜리전을 구합니다.
+
+1. 예전 단계의 정보를 설정했으면, **생성** 버튼을 클릭합니다.
+
+ (w:350)
+
+## 클로스 섹션 애셋 할당
+
+섹션에 클로스 애셋을 할당하는 방법은 다음과 같습니다.
+
+1. 섹션 엘리먼트를 선택한 채, 강조된 엘리먼트 아무데나 우클릭하면 **클로스 애셋** 옵션 메뉴를 띄울 수 있습니다. 그런 다음 **클로딩 애셋 적용** 에 커서를 올리고
+클로딩 애셋을 선택하면 적용합니다. 그러면 생성한 클로스 애셋을 이 머티리얼 엘리먼트 지오메트리에 할당합니다.
+
+ (w:450)
+
+## 클로스 웨이트 페인트
+
+클로스 웨이트 페인트 방법은 다음과 같습니다.
+
+1. 메인 메뉴로 가 **창** 을 선택한 뒤, **Cloth Paint** (클로스 페인트)를 찾아 클릭합니다. 그러면 클로스 페인트 패널이 열리며, 여기서 **Enable Paint Tools** (페인트 툴 활성화) 버튼을 클릭하면
+지오메트리에 클로스 웨이트 페인트를 위한 여러가지 옵션을 접할 수 있습니다.
+
+ (w:350)
+
+1. 페인트를 시작하려면, **애셋** 창에서 할당된 클로스 애셋을 선택합니다.
+
+ (w:550)
+
+1. 클로스 페인팅 섹션에서 **Paint Value** (페인트 값)을 설정한 뒤 브러시를 선택한 클로딩 지오메트리 표면에 클릭 드래그합니다.
+
+ [REGION:asyncgif]
+ (w:500)
+ [/REGION]
+
+ [REGION:note]
+ 3DS Max 또는 Maya, 아니면 비슷한 범용 페인팅 툴을 사용한 적이 있으시다면, 조작법이 익숙하실 것입니다.
+ [/REGION]
+
+### 페인트 툴 메소드
+
+**페인트 툴** 선택에서는 클로스 웨이트 페인트 방법을 브러시 또는 그레디언트 중에서 선택할 수 있습니다.
+
+#### 브러시
+
+**브러시** 툴로 클로스에 웨이트 값을 수동으로 직접 칠할 수 있습니다.
+
+(w:350)
+
+웨이트 값을 칠하기 위해서는, **Paint Value** 를 설정하고 클로스 지오메트리 위에 마우스를 좌클릭 드래그합니다.
+
+(w:500)
+
+
+#### 그레디언트
+
+**그레디언트** 툴은 선택된 지점 사이에 웨이트 값을 설정할 수 있습니다. 이 선택 지점 사이에는
+**Gradient Start Value** 에서 **Gradient End Value** 까지 점차 증가하는 그레디언트가 칠해집니다.
+
+(w:350)
+
+웨이트 값 페인트를 위해서는, 먼저 **Gradient Start Value** 와 **Gradient End Value** 를 설정합니다. 그리고 클로스 메시를 좌클릭 드래그하여 시작 값을 칠하면,
+버텍스 위에 초록색으로 표시됩니다. 그 후 **Enter** (리턴) 키를 치면 끝 값으로 전환되어 칠할 수 있으며, 이제 버텍스 위에 빨강색으로
+표시됩니다.
+
+그레디언트 값 페인트를 마치고 **Enter** (리턴) 키를 다시 한 번 치면 아래 예제와 같이 그레디언트가 칠해진 것을 볼 수 있습니다.
+
+(w:500)
+
+
+
+[REGION:note]
+다른 방법으로는, 그레디언트 시작 및 끝 지점을 칠할 때 브러시를 사용하고자 하는 경우 **Use Regular Brush for Gradient** (그레디언트에 일반 브러시 사용) 옵션을 켜면 됩니다. 그리고 브러시 섹션에서 **Radius** (반경) 툴을 사용하여 브러시 반경을 설정하면 됩니다.
+[/REGION]
+
+
+
+## 머티리얼에 클로스 애셋 할당
+
+스켈레탈 메시의 머티리얼 엘리먼트에 클로스 애셋을 할당하는 방법은 다음과 같습니다.
+
+1. **애셋 디테일** 패널로 이동하여 **Clothing** (클로딩) 섹션을 찾습니다. 여기서 할당할 수 있는 클로스 애셋을 찾을 수 있습니다. 그리고 **Clothing Properties** 를 펼쳐
+클로스의 여러 프로퍼티를 조절할 수 있습니다.
+
+ (w:350)
+1. **LOD** 섹션에서도 클로스 웨이트 페인트에 사용한 **Material Element** (머티리얼 엘리먼트)를 찾습니다. **Clothing** (클로딩) 드롭다운 선택을 사용하여 가능한 클로스 애셋 중에서 선택합니다.
+
+ (w:350)
+
+ [REGION:note]
+ 클로딩 애셋은 전용으로 클로딩 애셋을 만들어 페인트해 둔 머티리얼 엘리먼트에만 할당해야 합니다.
+ [/REGION]
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.CHN.udn
new file mode 100644
index 000000000000..c523916f029a
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.CHN.udn
@@ -0,0 +1,397 @@
+INTSourceChangelist:0
+Availability: Docs
+Crumbs:
+Title: Cloth Properties Reference
+Description: A reference page for the available properties used with Cloth asset configuration.
+Type:reference
+Version:4.16
+Parent:Engine/Physics
+Related:Engine/Physics/Cloth/Overview
+Order:2
+Tags:Physics
+Tags:Cloth
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth2
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Section Selection
+ [/PARAM]
+ [PARAM:content]
+ %C2%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C2]
+
+[REGION:raw]
+
+[/REGION]
+
+The **Section Selection** enables you to select specific Material Elements of your mesh in the Skeletal Mesh Editor's viewport. In this mode, you are able to create, assign, and remove any
+cloth assets for this mesh.
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| Apply Clothing Asset | Select an available clothing asset to apply to the selected section. |
+| Remove Clothing Asset | Remove the currently assigned clothing asset. |
+| Create Clothing Asset from Section | Create a clothing asset from the selected section. [INCLUDE:#createclothsection] |
+[/REGION]
+
+[/VAR]
+
+
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth1
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Cloth Paint
+ [/PARAM]
+ [PARAM:content]
+ %C1%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C1]
+
+
+
+The **Cloth Paint** properties enable you to define how you paint weights on the cloth asset you've selected. These weights determine how the **Cloth Configuration Properties** use
+these values to applie cloth simulations to your mesh.
+
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| Enable Paint Tools | This enables the tools needed to paint your cloth values. |
+| [REGION:tablesection] Assets [/REGION] ||
+| Asset LOD | Selection box for the available levels of detail (LOD) where you can paint or create a mask. |
+| New Mask | Enables you to create a mask for the selected asset and available level of detail. |
+| [REGION:tablesection] Mask [/REGION] ||
+| Mask Context Menu | Available options for the asset mask. |
+| Set Target | Selects the available targets that you can apply the mask to. [INCLUDE:#settarget] |
+| Move Up | Moves the mask selection up in the Mask list. |
+| Move Down | Moves the mask selection down in the Mask list. |
+| Delete | Removes the selected mask from the list. |
+| Apply | Applies the mask to the physical mesh. |
+| [REGION:tablesection] Brush [/REGION] ||
+| Radius | Sets the radius that will be used for the painting brush. |
+| Strength | Sets the strength of the rush when painting between 0 - 1, with 0 being off and 1 being fully on. |
+| Falloff | Sets the amount of falloff around the edge of the brush to apply between 0 - 1, with 0 being no falloff and 1 being a lot of falloff. |
+| Enable Brush Flow | Enables the continuous 'flow' where paint is applied from the brush every tick. |
+| Ignore Back-Facing | Whether the back-facing triangles should be ignored. |
+| [REGION:tablesection] View [/REGION] ||
+| Color View Mode | Selection used to display the Vertex Colors view modes. [INCLUDE:#colorview] |
+| [REGION:tablesection] Cloth Painting [/REGION] ||
+| Painting Property | Sets the current clothing property which should be visualized and painted. [INCLUDE:#paintingproperty]|
+| Paint Tool | Select which type of paint tool to use. [INCLUDE:#brush] [INCLUDE:#gradient]|
+[/REGION]
+
+[/VAR]
+
+
+
+
+
+
+
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth3
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Cloth Configuration Properties
+ [/PARAM]
+ [PARAM:content]
+ %C3%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C3]
+
+
+
+
+In the **Asset Details** panel under the **Clothing** section, you can define the various properties of your clothing that is assigned to the mesh's Material Elements. These properties
+define how your cloth will react so that you can have different types of cloth that act like silk, burlap, rubber, etc.
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| [REGION:tablesection] Mesh Clothing Assets [/REGION] ||
+| Name | The name given to the the created or imported Cloth asset. |
+| Details | Specific details about the cloth asset, such as the number of vertices simulating, fixed vertices, bones, etc. |
+| [REGION:tablesection] Cloth Config [/REGION] ||
+| Wind Method | A selection for how wind should be processed. [INLCUDE:#windmethod] |
+| Vertical Constraint Config | Constraint data used for vertical constraints. [INCLUDE:#constrconfig] |
+| Horizontal Constraint Config | Constraint data used for horizontal constraints. [INCLUDE:#constrconfig] |
+| Bend Constraint Config | Constraint data used for bend constraints. [INCLUDE:#constrconfig] |
+| Shear Constraint Config | Constraint data used for shear constraints. [INCLUDE:#constrconfig] |
+| Self Collision Radius | Size of the self collision spheres centered on each vertice. |
+| Self Collision Stiffness | The stiffness of the spring force that will resolve self collisions. |
+| Damping | The damping of particle motions per-axis (XYZ). |
+| Friction | The friction of the surface when colliding. |
+| Wind Drag Coefficient | Drag coefficient for wind calculations. Higher values mean that wind has more lateral effect on the cloth. |
+| Wind Lift Coefficient | Lift coefficient for wind calculations. Higher values make cloth rise easier in the wind. |
+| Linear Drag | Drag that is applied to linear particle movement per-axis (XYZ). |
+| Angular Drag | Drag that is applied to angular particle movement. Higher values should limit material bending (per-axis XYZ). |
+| Linear Inertia Scale | Scale for linear particle inertia. This controls how much movement should translate to linear motion per-axis (XYZ). |
+| Angular Inertia Scale | Scale for angular particle inertia. This controls how much movement should translate to angular motion per-axis (XYZ). |
+| Centrifugal Inertia Scale | Scale for centrifugal inertia. This controls how much movement should translate to angular motion per-axis (XYZ). |
+| Solver Frequency | The frequency of the position solver. Lower values will lead to stretchier, bouncier cloth. |
+| Stiffness Frequency | The frequency stiffness calculation. Lower values will degrade stiffness of constraints. |
+| Gravity Scale | The scale of gravity's effect on particles. |
+| Tether Stiffness | The scale for stiffness of particle tethers between each other. |
+| Tether Limit | The scale for the limit of particle tethers. This controls how far they can separate. |
+| Collision Thickness | This adjusts the thickness of the cloth, used to adjust collisions. |
+| [REGION:tablesection] Import [/REGION] ||
+| Imported File Path | If using APEX Cloth (.apx/apb) assets from an imported file, this will be the original file location path. |
+[/REGION]
+
+
+[/VAR]
+
+
+
+
+
+
+
+
+
+
+
+
+Availability: Public
+Title:Physics Simulation
+Crumbs: %ROOT%, Engine
+Description:Subsystem used to calculate collision and simulate physical actors.
+Version: 4.16
+parent:Engine
+order:8
+
+[VAR:Topic]
+[OBJECT:Topic]
+ [PARAM:image]
+ 
+ [/PARAM]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ %Engine/Physics:title%
+ [/PARAM]
+ [PARAM:description]
+ %Engine/Physics:description%
+ [/PARAM]
+ [PARAM:path]
+ [RELATIVE:Engine/Physics]
+ [/PARAM]
+[/OBJECT]
+[/VAR]
+[VAR:TopicCompact]
+[OBJECT:TopicCompact]
+ [PARAM:image]
+ 
+ [/PARAM]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ %Engine/Physics:title%
+ [/PARAM]
+ [PARAM:description]
+ %Engine/Physics:description%
+ [/PARAM]
+ [PARAM:path]
+ [RELATIVE:Engine/Physics]
+ [/PARAM]
+[/OBJECT]
+[/VAR]
+
+
+[REGION:banner]
+
+[/REGION]
+
+[EXCERPT:Intro]
+Unreal Engine 4 uses the PhysX 3.3 physics engine to drive its physical simulation calculations and perform all collision calculations. PhysX provides the ability to perform accurate collision detection as well as simulate physical interactions between objects within the world. Having physics in your game will help improve the immersion value of every scene, as it helps players believe that they are interacting with the scene and that the scene is responding back in some way or another.
+[/EXCERPT:Intro]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Essentials
+ [/PARAM]
+ [PARAM:links]
+ * [Collision Responses](Engine/Physics/Collision "%Engine/Physics/Collision:description%")
+ * [Collision Reference](Engine/Physics/Collision/Reference "%Engine/Physics/Collision/Reference:description%")
+ * [Physics Constraints User Guide](Engine/Physics/Constraints/ConstraintsUserGuide "%Engine/Physics/Constraints/ConstraintsUserGuide:description%")
+ * [](Engine/Physics/Constraints/ConstraintsBlueprints "%Engine/Physics/Constraints/ConstraintsBlueprints:description%")
+ * [](Engine/Physics/Constraints/ConstraintsReference "%Engine/Physics/Constraints/ConstraintsReference:description%")
+ * [](Engine/Physics/Tracing "%Engine/Physics/Tracing:description%")
+ * [Damping and Friction](Engine/Physics/Constraints/DampingAndFriction "%Engine/Physics/Constraints/DampingAndFriction:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Clothing Tools
+ [/PARAM]
+ [PARAM:links]
+ * [Clothing Tool Overview](Engine/Physics/Cloth/Overview "%Engine/Physics/Cloth/Overview:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Vehicles
+ [/PARAM]
+ [PARAM:links]
+ * [Vehicle User Guide](Engine/Physics/Vehicles/VehicleUserGuide "%Engine/Physics/Vehicles/VehicleUserGuide:description%")
+ * [Vehicle Content Creation Guide](Engine/Physics/Vehicles/VehcileContentCreation "%Engine/Physics/Vehicles/VehcileContentCreation:description%")
+ * [Advanced Vehicle Template](Engine/Physics/Vehicles/DoubleWishboneVehicle "%Engine/Physics/Vehicles/DoubleWishboneVehicle:description%")
+ * [Vehicle API Reference](API:AWheeledVehicle)
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Content Creation
+ [/PARAM]
+ [PARAM:links]
+ * [Physics Bodies](Engine/Physics/PhysicsBodies "%Engine/Physics/PhysicsBodies:description%")
+ * [Complex Vs. Simple Collision](Engine/Physics/SimpleVsComplex "%Engine/Physics/SimpleVsComplex:description%")
+ * [Physical Materials](Engine/Physics/PhysicalMaterials "%Engine/Physics/PhysicalMaterials:description%")
+ * [PhAT User Guide and Reference](Engine/Physics/PhAT "%Engine/Physics/PhAT:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Related Links
+ [/PARAM]
+ [PARAM:links]
+ * [Static Mesh Editor](Engine/Content/Types/StaticMeshes/Editor "%Engine/Physics/PhAT:description%")
+ * [FBX Pipeline: Static Meshes](Engine/Content/FBX/StaticMeshes "%Engine/Physics/PhAT:description%")
+ [/PARAM]
+[/OBJECT]
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.INT.udn b/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.INT.udn
new file mode 100644
index 000000000000..b7be5f8a352d
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.INT.udn
@@ -0,0 +1,396 @@
+Availability: Docs
+Crumbs:
+Title: Cloth Properties Reference
+Description: A reference page for the available properties used with Cloth asset configuration.
+Type:reference
+Version:4.16
+Parent:Engine/Physics
+Related:Engine/Physics/Cloth/Overview
+Order:2
+Tags:Physics
+Tags:Cloth
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth2
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Section Selection
+ [/PARAM]
+ [PARAM:content]
+ %C2%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C2]
+
+[REGION:raw]
+
+[/REGION]
+
+The **Section Selection** enables you to select specific Material Elements of your mesh in the Skeletal Mesh Editor's viewport. In this mode, you are able to create, assign, and remove any
+cloth assets for this mesh.
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| Apply Clothing Asset | Select an available clothing asset to apply to the selected section. |
+| Remove Clothing Asset | Remove the currently assigned clothing asset. |
+| Create Clothing Asset from Section | Create a clothing asset from the selected section. [INCLUDE:#createclothsection] |
+[/REGION]
+
+[/VAR]
+
+
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth1
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Cloth Paint
+ [/PARAM]
+ [PARAM:content]
+ %C1%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C1]
+
+
+
+The **Cloth Paint** properties enable you to define how you paint weights on the cloth asset you've selected. These weights determine how the **Cloth Configuration Properties** use
+these values to applie cloth simulations to your mesh.
+
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| Enable Paint Tools | This enables the tools needed to paint your cloth values. |
+| [REGION:tablesection] Assets [/REGION] ||
+| Asset LOD | Selection box for the available levels of detail (LOD) where you can paint or create a mask. |
+| New Mask | Enables you to create a mask for the selected asset and available level of detail. |
+| [REGION:tablesection] Mask [/REGION] ||
+| Mask Context Menu | Available options for the asset mask. |
+| Set Target | Selects the available targets that you can apply the mask to. [INCLUDE:#settarget] |
+| Move Up | Moves the mask selection up in the Mask list. |
+| Move Down | Moves the mask selection down in the Mask list. |
+| Delete | Removes the selected mask from the list. |
+| Apply | Applies the mask to the physical mesh. |
+| [REGION:tablesection] Brush [/REGION] ||
+| Radius | Sets the radius that will be used for the painting brush. |
+| Strength | Sets the strength of the rush when painting between 0 - 1, with 0 being off and 1 being fully on. |
+| Falloff | Sets the amount of falloff around the edge of the brush to apply between 0 - 1, with 0 being no falloff and 1 being a lot of falloff. |
+| Enable Brush Flow | Enables the continuous 'flow' where paint is applied from the brush every tick. |
+| Ignore Back-Facing | Whether the back-facing triangles should be ignored. |
+| [REGION:tablesection] View [/REGION] ||
+| Color View Mode | Selection used to display the Vertex Colors view modes. [INCLUDE:#colorview] |
+| [REGION:tablesection] Cloth Painting [/REGION] ||
+| Painting Property | Sets the current clothing property which should be visualized and painted. [INCLUDE:#paintingproperty]|
+| Paint Tool | Select which type of paint tool to use. [INCLUDE:#brush] [INCLUDE:#gradient]|
+[/REGION]
+
+[/VAR]
+
+
+
+
+
+
+
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth3
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Cloth Configuration Properties
+ [/PARAM]
+ [PARAM:content]
+ %C3%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C3]
+
+
+
+
+In the **Asset Details** panel under the **Clothing** section, you can define the various properties of your clothing that is assigned to the mesh's Material Elements. These properties
+define how your cloth will react so that you can have different types of cloth that act like silk, burlap, rubber, etc.
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| [REGION:tablesection] Mesh Clothing Assets [/REGION] ||
+| Name | The name given to the the created or imported Cloth asset. |
+| Details | Specific details about the cloth asset, such as the number of vertices simulating, fixed vertices, bones, etc. |
+| [REGION:tablesection] Cloth Config [/REGION] ||
+| Wind Method | A selection for how wind should be processed. [INLCUDE:#windmethod] |
+| Vertical Constraint Config | Constraint data used for vertical constraints. [INCLUDE:#constrconfig] |
+| Horizontal Constraint Config | Constraint data used for horizontal constraints. [INCLUDE:#constrconfig] |
+| Bend Constraint Config | Constraint data used for bend constraints. [INCLUDE:#constrconfig] |
+| Shear Constraint Config | Constraint data used for shear constraints. [INCLUDE:#constrconfig] |
+| Self Collision Radius | Size of the self collision spheres centered on each vertice. |
+| Self Collision Stiffness | The stiffness of the spring force that will resolve self collisions. |
+| Damping | The damping of particle motions per-axis (XYZ). |
+| Friction | The friction of the surface when colliding. |
+| Wind Drag Coefficient | Drag coefficient for wind calculations. Higher values mean that wind has more lateral effect on the cloth. |
+| Wind Lift Coefficient | Lift coefficient for wind calculations. Higher values make cloth rise easier in the wind. |
+| Linear Drag | Drag that is applied to linear particle movement per-axis (XYZ). |
+| Angular Drag | Drag that is applied to angular particle movement. Higher values should limit material bending (per-axis XYZ). |
+| Linear Inertia Scale | Scale for linear particle inertia. This controls how much movement should translate to linear motion per-axis (XYZ). |
+| Angular Inertia Scale | Scale for angular particle inertia. This controls how much movement should translate to angular motion per-axis (XYZ). |
+| Centrifugal Inertia Scale | Scale for centrifugal inertia. This controls how much movement should translate to angular motion per-axis (XYZ). |
+| Solver Frequency | The frequency of the position solver. Lower values will lead to stretchier, bouncier cloth. |
+| Stiffness Frequency | The frequency stiffness calculation. Lower values will degrade stiffness of constraints. |
+| Gravity Scale | The scale of gravity's effect on particles. |
+| Tether Stiffness | The scale for stiffness of particle tethers between each other. |
+| Tether Limit | The scale for the limit of particle tethers. This controls how far they can separate. |
+| Collision Thickness | This adjusts the thickness of the cloth, used to adjust collisions. |
+| [REGION:tablesection] Import [/REGION] ||
+| Imported File Path | If using APEX Cloth (.apx/apb) assets from an imported file, this will be the original file location path. |
+[/REGION]
+
+
+[/VAR]
+
+
+
+
+
+
+
+
+
+
+
+
+Availability: Public
+Title:Physics Simulation
+Crumbs: %ROOT%, Engine
+Description:Subsystem used to calculate collision and simulate physical actors.
+Version: 4.16
+parent:Engine
+order:8
+
+[VAR:Topic]
+[OBJECT:Topic]
+ [PARAM:image]
+ 
+ [/PARAM]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ %Engine/Physics:title%
+ [/PARAM]
+ [PARAM:description]
+ %Engine/Physics:description%
+ [/PARAM]
+ [PARAM:path]
+ [RELATIVE:Engine/Physics]
+ [/PARAM]
+[/OBJECT]
+[/VAR]
+[VAR:TopicCompact]
+[OBJECT:TopicCompact]
+ [PARAM:image]
+ 
+ [/PARAM]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ %Engine/Physics:title%
+ [/PARAM]
+ [PARAM:description]
+ %Engine/Physics:description%
+ [/PARAM]
+ [PARAM:path]
+ [RELATIVE:Engine/Physics]
+ [/PARAM]
+[/OBJECT]
+[/VAR]
+
+
+[REGION:banner]
+
+[/REGION]
+
+[EXCERPT:Intro]
+Unreal Engine 4 uses the PhysX 3.3 physics engine to drive its physical simulation calculations and perform all collision calculations. PhysX provides the ability to perform accurate collision detection as well as simulate physical interactions between objects within the world. Having physics in your game will help improve the immersion value of every scene, as it helps players believe that they are interacting with the scene and that the scene is responding back in some way or another.
+[/EXCERPT:Intro]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Essentials
+ [/PARAM]
+ [PARAM:links]
+ * [Collision Responses](Engine/Physics/Collision "%Engine/Physics/Collision:description%")
+ * [Collision Reference](Engine/Physics/Collision/Reference "%Engine/Physics/Collision/Reference:description%")
+ * [Physics Constraints User Guide](Engine/Physics/Constraints/ConstraintsUserGuide "%Engine/Physics/Constraints/ConstraintsUserGuide:description%")
+ * [](Engine/Physics/Constraints/ConstraintsBlueprints "%Engine/Physics/Constraints/ConstraintsBlueprints:description%")
+ * [](Engine/Physics/Constraints/ConstraintsReference "%Engine/Physics/Constraints/ConstraintsReference:description%")
+ * [](Engine/Physics/Tracing "%Engine/Physics/Tracing:description%")
+ * [Damping and Friction](Engine/Physics/Constraints/DampingAndFriction "%Engine/Physics/Constraints/DampingAndFriction:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Clothing Tools
+ [/PARAM]
+ [PARAM:links]
+ * [Clothing Tool Overview](Engine/Physics/Cloth/Overview "%Engine/Physics/Cloth/Overview:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Vehicles
+ [/PARAM]
+ [PARAM:links]
+ * [Vehicle User Guide](Engine/Physics/Vehicles/VehicleUserGuide "%Engine/Physics/Vehicles/VehicleUserGuide:description%")
+ * [Vehicle Content Creation Guide](Engine/Physics/Vehicles/VehcileContentCreation "%Engine/Physics/Vehicles/VehcileContentCreation:description%")
+ * [Advanced Vehicle Template](Engine/Physics/Vehicles/DoubleWishboneVehicle "%Engine/Physics/Vehicles/DoubleWishboneVehicle:description%")
+ * [Vehicle API Reference](API:AWheeledVehicle)
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Content Creation
+ [/PARAM]
+ [PARAM:links]
+ * [Physics Bodies](Engine/Physics/PhysicsBodies "%Engine/Physics/PhysicsBodies:description%")
+ * [Complex Vs. Simple Collision](Engine/Physics/SimpleVsComplex "%Engine/Physics/SimpleVsComplex:description%")
+ * [Physical Materials](Engine/Physics/PhysicalMaterials "%Engine/Physics/PhysicalMaterials:description%")
+ * [PhAT User Guide and Reference](Engine/Physics/PhAT "%Engine/Physics/PhAT:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Related Links
+ [/PARAM]
+ [PARAM:links]
+ * [Static Mesh Editor](Engine/Content/Types/StaticMeshes/Editor "%Engine/Physics/PhAT:description%")
+ * [FBX Pipeline: Static Meshes](Engine/Content/FBX/StaticMeshes "%Engine/Physics/PhAT:description%")
+ [/PARAM]
+[/OBJECT]
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.JPN.udn
new file mode 100644
index 000000000000..c523916f029a
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.JPN.udn
@@ -0,0 +1,397 @@
+INTSourceChangelist:0
+Availability: Docs
+Crumbs:
+Title: Cloth Properties Reference
+Description: A reference page for the available properties used with Cloth asset configuration.
+Type:reference
+Version:4.16
+Parent:Engine/Physics
+Related:Engine/Physics/Cloth/Overview
+Order:2
+Tags:Physics
+Tags:Cloth
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth2
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Section Selection
+ [/PARAM]
+ [PARAM:content]
+ %C2%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C2]
+
+[REGION:raw]
+
+[/REGION]
+
+The **Section Selection** enables you to select specific Material Elements of your mesh in the Skeletal Mesh Editor's viewport. In this mode, you are able to create, assign, and remove any
+cloth assets for this mesh.
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| Apply Clothing Asset | Select an available clothing asset to apply to the selected section. |
+| Remove Clothing Asset | Remove the currently assigned clothing asset. |
+| Create Clothing Asset from Section | Create a clothing asset from the selected section. [INCLUDE:#createclothsection] |
+[/REGION]
+
+[/VAR]
+
+
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth1
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Cloth Paint
+ [/PARAM]
+ [PARAM:content]
+ %C1%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C1]
+
+
+
+The **Cloth Paint** properties enable you to define how you paint weights on the cloth asset you've selected. These weights determine how the **Cloth Configuration Properties** use
+these values to applie cloth simulations to your mesh.
+
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| Enable Paint Tools | This enables the tools needed to paint your cloth values. |
+| [REGION:tablesection] Assets [/REGION] ||
+| Asset LOD | Selection box for the available levels of detail (LOD) where you can paint or create a mask. |
+| New Mask | Enables you to create a mask for the selected asset and available level of detail. |
+| [REGION:tablesection] Mask [/REGION] ||
+| Mask Context Menu | Available options for the asset mask. |
+| Set Target | Selects the available targets that you can apply the mask to. [INCLUDE:#settarget] |
+| Move Up | Moves the mask selection up in the Mask list. |
+| Move Down | Moves the mask selection down in the Mask list. |
+| Delete | Removes the selected mask from the list. |
+| Apply | Applies the mask to the physical mesh. |
+| [REGION:tablesection] Brush [/REGION] ||
+| Radius | Sets the radius that will be used for the painting brush. |
+| Strength | Sets the strength of the rush when painting between 0 - 1, with 0 being off and 1 being fully on. |
+| Falloff | Sets the amount of falloff around the edge of the brush to apply between 0 - 1, with 0 being no falloff and 1 being a lot of falloff. |
+| Enable Brush Flow | Enables the continuous 'flow' where paint is applied from the brush every tick. |
+| Ignore Back-Facing | Whether the back-facing triangles should be ignored. |
+| [REGION:tablesection] View [/REGION] ||
+| Color View Mode | Selection used to display the Vertex Colors view modes. [INCLUDE:#colorview] |
+| [REGION:tablesection] Cloth Painting [/REGION] ||
+| Painting Property | Sets the current clothing property which should be visualized and painted. [INCLUDE:#paintingproperty]|
+| Paint Tool | Select which type of paint tool to use. [INCLUDE:#brush] [INCLUDE:#gradient]|
+[/REGION]
+
+[/VAR]
+
+
+
+
+
+
+
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth3
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Cloth Configuration Properties
+ [/PARAM]
+ [PARAM:content]
+ %C3%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C3]
+
+
+
+
+In the **Asset Details** panel under the **Clothing** section, you can define the various properties of your clothing that is assigned to the mesh's Material Elements. These properties
+define how your cloth will react so that you can have different types of cloth that act like silk, burlap, rubber, etc.
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| [REGION:tablesection] Mesh Clothing Assets [/REGION] ||
+| Name | The name given to the the created or imported Cloth asset. |
+| Details | Specific details about the cloth asset, such as the number of vertices simulating, fixed vertices, bones, etc. |
+| [REGION:tablesection] Cloth Config [/REGION] ||
+| Wind Method | A selection for how wind should be processed. [INLCUDE:#windmethod] |
+| Vertical Constraint Config | Constraint data used for vertical constraints. [INCLUDE:#constrconfig] |
+| Horizontal Constraint Config | Constraint data used for horizontal constraints. [INCLUDE:#constrconfig] |
+| Bend Constraint Config | Constraint data used for bend constraints. [INCLUDE:#constrconfig] |
+| Shear Constraint Config | Constraint data used for shear constraints. [INCLUDE:#constrconfig] |
+| Self Collision Radius | Size of the self collision spheres centered on each vertice. |
+| Self Collision Stiffness | The stiffness of the spring force that will resolve self collisions. |
+| Damping | The damping of particle motions per-axis (XYZ). |
+| Friction | The friction of the surface when colliding. |
+| Wind Drag Coefficient | Drag coefficient for wind calculations. Higher values mean that wind has more lateral effect on the cloth. |
+| Wind Lift Coefficient | Lift coefficient for wind calculations. Higher values make cloth rise easier in the wind. |
+| Linear Drag | Drag that is applied to linear particle movement per-axis (XYZ). |
+| Angular Drag | Drag that is applied to angular particle movement. Higher values should limit material bending (per-axis XYZ). |
+| Linear Inertia Scale | Scale for linear particle inertia. This controls how much movement should translate to linear motion per-axis (XYZ). |
+| Angular Inertia Scale | Scale for angular particle inertia. This controls how much movement should translate to angular motion per-axis (XYZ). |
+| Centrifugal Inertia Scale | Scale for centrifugal inertia. This controls how much movement should translate to angular motion per-axis (XYZ). |
+| Solver Frequency | The frequency of the position solver. Lower values will lead to stretchier, bouncier cloth. |
+| Stiffness Frequency | The frequency stiffness calculation. Lower values will degrade stiffness of constraints. |
+| Gravity Scale | The scale of gravity's effect on particles. |
+| Tether Stiffness | The scale for stiffness of particle tethers between each other. |
+| Tether Limit | The scale for the limit of particle tethers. This controls how far they can separate. |
+| Collision Thickness | This adjusts the thickness of the cloth, used to adjust collisions. |
+| [REGION:tablesection] Import [/REGION] ||
+| Imported File Path | If using APEX Cloth (.apx/apb) assets from an imported file, this will be the original file location path. |
+[/REGION]
+
+
+[/VAR]
+
+
+
+
+
+
+
+
+
+
+
+
+Availability: Public
+Title:Physics Simulation
+Crumbs: %ROOT%, Engine
+Description:Subsystem used to calculate collision and simulate physical actors.
+Version: 4.16
+parent:Engine
+order:8
+
+[VAR:Topic]
+[OBJECT:Topic]
+ [PARAM:image]
+ 
+ [/PARAM]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ %Engine/Physics:title%
+ [/PARAM]
+ [PARAM:description]
+ %Engine/Physics:description%
+ [/PARAM]
+ [PARAM:path]
+ [RELATIVE:Engine/Physics]
+ [/PARAM]
+[/OBJECT]
+[/VAR]
+[VAR:TopicCompact]
+[OBJECT:TopicCompact]
+ [PARAM:image]
+ 
+ [/PARAM]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ %Engine/Physics:title%
+ [/PARAM]
+ [PARAM:description]
+ %Engine/Physics:description%
+ [/PARAM]
+ [PARAM:path]
+ [RELATIVE:Engine/Physics]
+ [/PARAM]
+[/OBJECT]
+[/VAR]
+
+
+[REGION:banner]
+
+[/REGION]
+
+[EXCERPT:Intro]
+Unreal Engine 4 uses the PhysX 3.3 physics engine to drive its physical simulation calculations and perform all collision calculations. PhysX provides the ability to perform accurate collision detection as well as simulate physical interactions between objects within the world. Having physics in your game will help improve the immersion value of every scene, as it helps players believe that they are interacting with the scene and that the scene is responding back in some way or another.
+[/EXCERPT:Intro]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Essentials
+ [/PARAM]
+ [PARAM:links]
+ * [Collision Responses](Engine/Physics/Collision "%Engine/Physics/Collision:description%")
+ * [Collision Reference](Engine/Physics/Collision/Reference "%Engine/Physics/Collision/Reference:description%")
+ * [Physics Constraints User Guide](Engine/Physics/Constraints/ConstraintsUserGuide "%Engine/Physics/Constraints/ConstraintsUserGuide:description%")
+ * [](Engine/Physics/Constraints/ConstraintsBlueprints "%Engine/Physics/Constraints/ConstraintsBlueprints:description%")
+ * [](Engine/Physics/Constraints/ConstraintsReference "%Engine/Physics/Constraints/ConstraintsReference:description%")
+ * [](Engine/Physics/Tracing "%Engine/Physics/Tracing:description%")
+ * [Damping and Friction](Engine/Physics/Constraints/DampingAndFriction "%Engine/Physics/Constraints/DampingAndFriction:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Clothing Tools
+ [/PARAM]
+ [PARAM:links]
+ * [Clothing Tool Overview](Engine/Physics/Cloth/Overview "%Engine/Physics/Cloth/Overview:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Vehicles
+ [/PARAM]
+ [PARAM:links]
+ * [Vehicle User Guide](Engine/Physics/Vehicles/VehicleUserGuide "%Engine/Physics/Vehicles/VehicleUserGuide:description%")
+ * [Vehicle Content Creation Guide](Engine/Physics/Vehicles/VehcileContentCreation "%Engine/Physics/Vehicles/VehcileContentCreation:description%")
+ * [Advanced Vehicle Template](Engine/Physics/Vehicles/DoubleWishboneVehicle "%Engine/Physics/Vehicles/DoubleWishboneVehicle:description%")
+ * [Vehicle API Reference](API:AWheeledVehicle)
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Content Creation
+ [/PARAM]
+ [PARAM:links]
+ * [Physics Bodies](Engine/Physics/PhysicsBodies "%Engine/Physics/PhysicsBodies:description%")
+ * [Complex Vs. Simple Collision](Engine/Physics/SimpleVsComplex "%Engine/Physics/SimpleVsComplex:description%")
+ * [Physical Materials](Engine/Physics/PhysicalMaterials "%Engine/Physics/PhysicalMaterials:description%")
+ * [PhAT User Guide and Reference](Engine/Physics/PhAT "%Engine/Physics/PhAT:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Related Links
+ [/PARAM]
+ [PARAM:links]
+ * [Static Mesh Editor](Engine/Content/Types/StaticMeshes/Editor "%Engine/Physics/PhAT:description%")
+ * [FBX Pipeline: Static Meshes](Engine/Content/FBX/StaticMeshes "%Engine/Physics/PhAT:description%")
+ [/PARAM]
+[/OBJECT]
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.KOR.udn
new file mode 100644
index 000000000000..c523916f029a
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Cloth/Reference/ClothReference.KOR.udn
@@ -0,0 +1,397 @@
+INTSourceChangelist:0
+Availability: Docs
+Crumbs:
+Title: Cloth Properties Reference
+Description: A reference page for the available properties used with Cloth asset configuration.
+Type:reference
+Version:4.16
+Parent:Engine/Physics
+Related:Engine/Physics/Cloth/Overview
+Order:2
+Tags:Physics
+Tags:Cloth
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth2
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Section Selection
+ [/PARAM]
+ [PARAM:content]
+ %C2%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C2]
+
+[REGION:raw]
+
+[/REGION]
+
+The **Section Selection** enables you to select specific Material Elements of your mesh in the Skeletal Mesh Editor's viewport. In this mode, you are able to create, assign, and remove any
+cloth assets for this mesh.
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| Apply Clothing Asset | Select an available clothing asset to apply to the selected section. |
+| Remove Clothing Asset | Remove the currently assigned clothing asset. |
+| Create Clothing Asset from Section | Create a clothing asset from the selected section. [INCLUDE:#createclothsection] |
+[/REGION]
+
+[/VAR]
+
+
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth1
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Cloth Paint
+ [/PARAM]
+ [PARAM:content]
+ %C1%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C1]
+
+
+
+The **Cloth Paint** properties enable you to define how you paint weights on the cloth asset you've selected. These weights determine how the **Cloth Configuration Properties** use
+these values to applie cloth simulations to your mesh.
+
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| Enable Paint Tools | This enables the tools needed to paint your cloth values. |
+| [REGION:tablesection] Assets [/REGION] ||
+| Asset LOD | Selection box for the available levels of detail (LOD) where you can paint or create a mask. |
+| New Mask | Enables you to create a mask for the selected asset and available level of detail. |
+| [REGION:tablesection] Mask [/REGION] ||
+| Mask Context Menu | Available options for the asset mask. |
+| Set Target | Selects the available targets that you can apply the mask to. [INCLUDE:#settarget] |
+| Move Up | Moves the mask selection up in the Mask list. |
+| Move Down | Moves the mask selection down in the Mask list. |
+| Delete | Removes the selected mask from the list. |
+| Apply | Applies the mask to the physical mesh. |
+| [REGION:tablesection] Brush [/REGION] ||
+| Radius | Sets the radius that will be used for the painting brush. |
+| Strength | Sets the strength of the rush when painting between 0 - 1, with 0 being off and 1 being fully on. |
+| Falloff | Sets the amount of falloff around the edge of the brush to apply between 0 - 1, with 0 being no falloff and 1 being a lot of falloff. |
+| Enable Brush Flow | Enables the continuous 'flow' where paint is applied from the brush every tick. |
+| Ignore Back-Facing | Whether the back-facing triangles should be ignored. |
+| [REGION:tablesection] View [/REGION] ||
+| Color View Mode | Selection used to display the Vertex Colors view modes. [INCLUDE:#colorview] |
+| [REGION:tablesection] Cloth Painting [/REGION] ||
+| Painting Property | Sets the current clothing property which should be visualized and painted. [INCLUDE:#paintingproperty]|
+| Paint Tool | Select which type of paint tool to use. [INCLUDE:#brush] [INCLUDE:#gradient]|
+[/REGION]
+
+[/VAR]
+
+
+
+
+
+
+
+
+
+
+[OBJECT:modulesectionexpanded]
+ [PARAMLITERAL:id]
+ Cloth3
+ [/PARAMLITERAL]
+ [PARAM:heading]
+ Cloth Configuration Properties
+ [/PARAM]
+ [PARAM:content]
+ %C3%
+ [/PARAM]
+[/OBJECT]
+
+[VAR:C3]
+
+
+
+
+In the **Asset Details** panel under the **Clothing** section, you can define the various properties of your clothing that is assigned to the mesh's Material Elements. These properties
+define how your cloth will react so that you can have different types of cloth that act like silk, burlap, rubber, etc.
+
+[REGION:simpletable]
+| Property | Description |
+| --- | --- |
+| [REGION:tablesection] Mesh Clothing Assets [/REGION] ||
+| Name | The name given to the the created or imported Cloth asset. |
+| Details | Specific details about the cloth asset, such as the number of vertices simulating, fixed vertices, bones, etc. |
+| [REGION:tablesection] Cloth Config [/REGION] ||
+| Wind Method | A selection for how wind should be processed. [INLCUDE:#windmethod] |
+| Vertical Constraint Config | Constraint data used for vertical constraints. [INCLUDE:#constrconfig] |
+| Horizontal Constraint Config | Constraint data used for horizontal constraints. [INCLUDE:#constrconfig] |
+| Bend Constraint Config | Constraint data used for bend constraints. [INCLUDE:#constrconfig] |
+| Shear Constraint Config | Constraint data used for shear constraints. [INCLUDE:#constrconfig] |
+| Self Collision Radius | Size of the self collision spheres centered on each vertice. |
+| Self Collision Stiffness | The stiffness of the spring force that will resolve self collisions. |
+| Damping | The damping of particle motions per-axis (XYZ). |
+| Friction | The friction of the surface when colliding. |
+| Wind Drag Coefficient | Drag coefficient for wind calculations. Higher values mean that wind has more lateral effect on the cloth. |
+| Wind Lift Coefficient | Lift coefficient for wind calculations. Higher values make cloth rise easier in the wind. |
+| Linear Drag | Drag that is applied to linear particle movement per-axis (XYZ). |
+| Angular Drag | Drag that is applied to angular particle movement. Higher values should limit material bending (per-axis XYZ). |
+| Linear Inertia Scale | Scale for linear particle inertia. This controls how much movement should translate to linear motion per-axis (XYZ). |
+| Angular Inertia Scale | Scale for angular particle inertia. This controls how much movement should translate to angular motion per-axis (XYZ). |
+| Centrifugal Inertia Scale | Scale for centrifugal inertia. This controls how much movement should translate to angular motion per-axis (XYZ). |
+| Solver Frequency | The frequency of the position solver. Lower values will lead to stretchier, bouncier cloth. |
+| Stiffness Frequency | The frequency stiffness calculation. Lower values will degrade stiffness of constraints. |
+| Gravity Scale | The scale of gravity's effect on particles. |
+| Tether Stiffness | The scale for stiffness of particle tethers between each other. |
+| Tether Limit | The scale for the limit of particle tethers. This controls how far they can separate. |
+| Collision Thickness | This adjusts the thickness of the cloth, used to adjust collisions. |
+| [REGION:tablesection] Import [/REGION] ||
+| Imported File Path | If using APEX Cloth (.apx/apb) assets from an imported file, this will be the original file location path. |
+[/REGION]
+
+
+[/VAR]
+
+
+
+
+
+
+
+
+
+
+
+
+Availability: Public
+Title:Physics Simulation
+Crumbs: %ROOT%, Engine
+Description:Subsystem used to calculate collision and simulate physical actors.
+Version: 4.16
+parent:Engine
+order:8
+
+[VAR:Topic]
+[OBJECT:Topic]
+ [PARAM:image]
+ 
+ [/PARAM]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ %Engine/Physics:title%
+ [/PARAM]
+ [PARAM:description]
+ %Engine/Physics:description%
+ [/PARAM]
+ [PARAM:path]
+ [RELATIVE:Engine/Physics]
+ [/PARAM]
+[/OBJECT]
+[/VAR]
+[VAR:TopicCompact]
+[OBJECT:TopicCompact]
+ [PARAM:image]
+ 
+ [/PARAM]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ %Engine/Physics:title%
+ [/PARAM]
+ [PARAM:description]
+ %Engine/Physics:description%
+ [/PARAM]
+ [PARAM:path]
+ [RELATIVE:Engine/Physics]
+ [/PARAM]
+[/OBJECT]
+[/VAR]
+
+
+[REGION:banner]
+
+[/REGION]
+
+[EXCERPT:Intro]
+Unreal Engine 4 uses the PhysX 3.3 physics engine to drive its physical simulation calculations and perform all collision calculations. PhysX provides the ability to perform accurate collision detection as well as simulate physical interactions between objects within the world. Having physics in your game will help improve the immersion value of every scene, as it helps players believe that they are interacting with the scene and that the scene is responding back in some way or another.
+[/EXCERPT:Intro]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Essentials
+ [/PARAM]
+ [PARAM:links]
+ * [Collision Responses](Engine/Physics/Collision "%Engine/Physics/Collision:description%")
+ * [Collision Reference](Engine/Physics/Collision/Reference "%Engine/Physics/Collision/Reference:description%")
+ * [Physics Constraints User Guide](Engine/Physics/Constraints/ConstraintsUserGuide "%Engine/Physics/Constraints/ConstraintsUserGuide:description%")
+ * [](Engine/Physics/Constraints/ConstraintsBlueprints "%Engine/Physics/Constraints/ConstraintsBlueprints:description%")
+ * [](Engine/Physics/Constraints/ConstraintsReference "%Engine/Physics/Constraints/ConstraintsReference:description%")
+ * [](Engine/Physics/Tracing "%Engine/Physics/Tracing:description%")
+ * [Damping and Friction](Engine/Physics/Constraints/DampingAndFriction "%Engine/Physics/Constraints/DampingAndFriction:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Clothing Tools
+ [/PARAM]
+ [PARAM:links]
+ * [Clothing Tool Overview](Engine/Physics/Cloth/Overview "%Engine/Physics/Cloth/Overview:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Vehicles
+ [/PARAM]
+ [PARAM:links]
+ * [Vehicle User Guide](Engine/Physics/Vehicles/VehicleUserGuide "%Engine/Physics/Vehicles/VehicleUserGuide:description%")
+ * [Vehicle Content Creation Guide](Engine/Physics/Vehicles/VehcileContentCreation "%Engine/Physics/Vehicles/VehcileContentCreation:description%")
+ * [Advanced Vehicle Template](Engine/Physics/Vehicles/DoubleWishboneVehicle "%Engine/Physics/Vehicles/DoubleWishboneVehicle:description%")
+ * [Vehicle API Reference](API:AWheeledVehicle)
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Content Creation
+ [/PARAM]
+ [PARAM:links]
+ * [Physics Bodies](Engine/Physics/PhysicsBodies "%Engine/Physics/PhysicsBodies:description%")
+ * [Complex Vs. Simple Collision](Engine/Physics/SimpleVsComplex "%Engine/Physics/SimpleVsComplex:description%")
+ * [Physical Materials](Engine/Physics/PhysicalMaterials "%Engine/Physics/PhysicalMaterials:description%")
+ * [PhAT User Guide and Reference](Engine/Physics/PhAT "%Engine/Physics/PhAT:description%")
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Related Links
+ [/PARAM]
+ [PARAM:links]
+ * [Static Mesh Editor](Engine/Content/Types/StaticMeshes/Editor "%Engine/Physics/PhAT:description%")
+ * [FBX Pipeline: Static Meshes](Engine/Content/FBX/StaticMeshes "%Engine/Physics/PhAT:description%")
+ [/PARAM]
+[/OBJECT]
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.INT.udn b/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.INT.udn
index d4be16c91cab..829c4f718a90 100644
--- a/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.INT.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.INT.udn
@@ -32,17 +32,9 @@ Below are the properties for the Collision Presets, a sub-category in the Collis
(convert:false)
-[OBJECT:modulesectionexpanded]
- [PARAMLITERAL:id]
- coll
- [/PARAMLITERAL]
- [PARAM:heading]
- Collision Presets
- [/PARAM]
- [PARAM:content]
- %p2%
- [/PARAM]
-[/OBJECT]
+### Collision Presets
+
+%p2%
[VAR:p2]
diff --git a/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.JPN.udn
index 4644687fbc8c..2ff42b2670e2 100644
--- a/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2994597
+NTSourceChangelist:3418529
Availability:Public
Title:コリジョン反応の参照
Crumbs: %ROOT%, Engine, Engine/Physics, Engine/Physics/Collision
@@ -27,23 +27,15 @@ Version:4.9
Collision Properties カテゴリの Collision Presets/Collision Response には非常に多くのプロパティがありますので、分かりやすいように分類しました。
-##プロパティ
+## プロパティ
以下は、物理ボディ (BodyInstances) の Collision プロパティのサブ カテゴリの Collision Presets のプロパティです。
(convert:false)
-[OBJECT:modulesectionexpanded]
- [PARAMLITERAL:id]
- coll
- [/PARAMLITERAL]
- [PARAM:heading]
- Collision Presets
- [/PARAM]
- [PARAM:content]
- %p2%
- [/PARAM]
-[/OBJECT]
+### コリジョンのプリセット
+
+%p2%
[VAR:p2]
@@ -93,7 +85,7 @@ Collision Properties カテゴリの Collision Presets/Collision Response には
| プロパティ | %spacer2% | 説明 |
| --- | :---: | :--- |
| **Visibility** || 可視性全般をテストするチャンネルです。 |
-| **Camera** || カメラから何かをトラックする場合に通常使います。 |
+| **Camera** || カメラから何かをトレースする場合に通常使います。 |
[/REGION]
[/EXCERPT]
@@ -116,7 +108,7 @@ Collision Properties カテゴリの Collision Presets/Collision Response には
[EXCERPT:colPre]
-デフォルトのコリジョン プロファイル、および [Project **Settings (プロジェクト設定)]** -> **[Engine]** -> **[Collision]** -> **[Preset]** (カスタム コリジョン プロファイルは []() を参照) で作成したものがすべてここに表示されます。
+デフォルトのコリジョン プロファイル、および [Project **Settings (プロジェクト設定)]** -> **[Engine]** -> **[Collision]** -> **[Preset]** (カスタム コリジョン プロファイルの作成は []() を参照) で作成したものがすべてここに表示されます。
[REGION:raw]
| プロパティ | %spacer2% | 説明 |
@@ -125,21 +117,21 @@ Collision Properties カテゴリの Collision Presets/Collision Response には
| **Custom...** || このインスタンスに対してすべてのカスタム コリジョンの設定値を設定します。 |
| **NoCollision** || コリジョンはありません。 |
| **BlockAll** || デフォルトですべてのアクタをブロックする WorldStatic オブジェクトです。すべての新規カスタム チャネルは独自のデフォルト反応を使います。 |
-| **OverlapAll** || デフォルトですべてのアクタをブロックする WorldStatic オブジェクトです。すべての新規カスタム チャネルは独自のデフォルト反応を使います。 |
+| **OverlapAll** || デフォルトですべてのアクタをオーバーラップする WorldStatic オブジェクトです。すべての新規カスタム チャネルは独自のデフォルト反応を使います。 |
| **BlockAllDynamic** || デフォルトですべてのアクタをブロックする WorldDynamic オブジェクトです。すべての新規カスタム チャネルは独自のデフォルト反応を使います。 |
-| **OverlapAllDynamic** || デフォルトですべてのアクタをブロックする WorldDynamic オブジェクトです。すべての新規カスタム チャネルは独自のデフォルト反応を使います。 |
-| **IngoreOnlyPawn** || ポーンとビークルを無視する WorldDynamic オブジェクトです。他のすべてのチャネルはデフォルトに設定されます。 |
-| **OverlapOnlyPawn** || ポーン、カメラ、ビークルにオーバーラップする WorldDynamic オブジェクトです。他のすべてのチャネルはデフォルトに設定されます。 |
+| **OverlapAllDynamic** || デフォルトですべてのアクタをオーバーラップする WorldDynamic オブジェクトです。すべての新規カスタム チャネルは独自のデフォルト反応を使います。 |
+| **IngoreOnlyPawn** || ポーンとビークルを無視する WorldDynamic オブジェクトです。他のすべてのチャンネルはデフォルトに設定されます。 |
+| **OverlapOnlyPawn** || ポーン、カメラ、ビークルにオーバーラップする WorldDynamic オブジェクトです。他のすべてのチャンネルはデフォルトに設定されます。 |
| **Pawn** || ポーン オブジェクトです。すべてのプレイ可能なキャラクタや AI のカプセルに使用することができます。 |
| **Spectator** || WorldStatic 以外のすべてのアクタを無視する Pawn オブジェクトです。 |
-| **CharacterMesh** || キャラクター メッシュに使用する Pawn オブジェクトです。他のすべてのチャネルはデフォルトに設定されます。 |
+| **CharacterMesh** || キャラクター メッシュに使用する Pawn オブジェクトです。他のすべてのチャンネルはデフォルトに設定されます。 |
| **PhysicsActor** || シミュレーション中のアクタです。 |
| **Destructible** || 被破壊アクタです。 |
| **InvisibleWall** || 目に見えない WorldStatic オブジェクトです。 |
-| **InvisibleWallDynamic** || 目に見える WorldDynamic オブジェクトです。 |
-| **Trigger** || トリガに使われる WorldDynamic オブジェクトです。他のすべてのチャネルはデフォルトに設定されます。 |
-| **Ragdoll** || シミュレーション中の Skeletal Mesh コンポーネントです。他のすべてのチャネルはデフォルトに設定されます。 |
-| **Vehicle** || Vehicle、WorldStatic、WorldDynamic をブロックするVehicle オブジェクトです。他のすべてのチャネルはデフォルトに設定されます。 |
+| **InvisibleWallDynamic** || 目に見えない WorldDynamic オブジェクトです。 |
+| **Trigger** || トリガーに使われる WorldDynamic オブジェクトです。他のすべてのチャンネルはデフォルトに設定されます。 |
+| **Ragdoll** || シミュレーション中の Skeletal Mesh コンポーネントです。他のすべてのチャンネルはデフォルトに設定されます。 |
+| **Vehicle** || Vehicle、WorldStatic、WorldDynamic をブロックするVehicle オブジェクトです。他のすべてのチャンネルはデフォルトに設定されます。 |
| **UI** || デフォルトですべてのアクタとオーバーラップする WorldStatic オブジェクトです。すべての新規カスタム チャネルは独自のデフォルト反応を使います。 |
[/REGION]
[/EXCERPT]
@@ -148,15 +140,15 @@ Collision Properties カテゴリの Collision Presets/Collision Response には
[EXCERPT:colEn]
-[Collision Enabled (コリジョンを有効にする)] と、以下の 4 種類のステータスになります。
+[Collision Enabled (コリジョンを有効にする)] と、以下の 4 種類のステートが可能になります。
[REGION:raw]
| プロパティ | %spacer2% | 説明 |
| --- | :---: | :--- |
| **No Collision** || このボディは物理エンジンでは表示されません。空間クエリ (レイキャスト、スウィープ、オーバーラップ) やシミュレーション (剛体ボディ、コンストレイント) には使用できません。移動オブジェクトの場合は特に最高のパフォーマンスが得られる設定です。 |
-| **Query Only** || このボディは空間クエリ (レイキャスト、スウィープ、オーバーラップ) のみに使用されます。シミュレーション (剛体ボディ、コンストレイント) には使用できません。キャラクターの移動と物理シミュレーションの必要のないオブジェクトに使うと便利な設定です。物理シミュレーション ツリー内のデータを減らすとパフォーマンスが良くな場合もあります。 |
-| **Physics Only** || このボディは物理シミュレーション (剛体ボディ、コンストレイント) のみに使用されます。空間クエリ (レイキャスト、スウィープ、オーバーラップ) には使用できません。ボーンの検出ごとに必要ではないキャラクター上の副次的な動きのシミュレーションに使うと便利な設定です。クエリ ツリー内のデータを減らすとパフォーマンスが良くな場合もあります。 |
-| **Collision Enabled** || 空間クエリ (レイキャスト、スウィープ、オーバーラップ) にもシミュレーション (剛体ボディ、コンストレイント) にも使用できません。 |
+| **Query Only** || このボディは空間クエリ (レイキャスト、スウィープ、オーバーラップ) のみに使用されます。シミュレーション (剛体ボディ、コンストレイント) には使用できません。キャラクターの移動と物理シミュレーションの必要のないオブジェクトに使うと便利な設定です。物理シミュレーション ツリー内のデータを減らすとパフォーマンスが良くなる場合もあります。 |
+| **Physics Only** || このボディは物理シミュレーション (剛体ボディ、コンストレイント) のみに使用されます。空間クエリ (レイキャスト、スウィープ、オーバーラップ) には使用できません。ボーンごとの検出が不要なキャラクター上の副次的な動きのシミュレーションに使うと便利な設定です。クエリ ツリー内のデータを減らすとパフォーマンスが良くなる場合もあります。 |
+| **Collision Enabled** || 空間クエリ (レイキャスト、スウィープ、オーバーラップ) にもシミュレーション (剛体ボディ、コンストレイント) にも使用できます。 |
[/REGION]
[/EXCERPT]
@@ -171,7 +163,7 @@ Collision Properties カテゴリの Collision Presets/Collision Response には
| --- | :---: | :--- |
| **WorldStatic** || 移動しないすべてのアクタに使用します。Static Mesh アクタは、おそらく WorldStatic タイプを持っているであろうアクタの代表例です。 |
| **WorldDynamic** || WorldDynamic は、アニメーション、コード、キネマティクスの影響を受けて移動するアクタ タイプに使用します。WorldDynamic アクタの代表例は、エレベータとドアです。 |
-| **Pawn** || エンティティを制御するすべてのプレイヤーには Pawn タイプがあります。プレイヤーのキャラクターは、Pawn オブジェクトのタイプを受け取るアクタの代表例です。 |
+| **Pawn** ||プレイヤーが制御するエンティティは Pawn タイプを持ちます。プレイヤーのキャラクターは、Pawn オブジェクトのタイプを受け取るアクタの代表例です。 |
| **PhysicsBody** || 物理シミュレーションによって移動するアクタです。 |
| **Vehicle** || ビークルはこのタイプをデフォルトで受け取ります。 |
| **Destructible** || 被破壊メッシュはデフォルトでこのタイプを受け取ります。 |
diff --git a/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.KOR.udn
index 496d53b55327..799db2cac84b 100644
--- a/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Collision/Reference/Reference.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3418529
Availability: Public
Title:콜리전 반응 참고서
Crumbs: %ROOT%, Engine, Engine/Physics, Engine/Physics/Collision
@@ -33,17 +33,9 @@ Collision Properties (콜리전 프로퍼티) 카테고리의 Collision Presets(
(convert:false)
-[OBJECT:modulesectionexpanded]
- [PARAMLITERAL:id]
- coll
- [/PARAMLITERAL]
- [PARAM:heading]
- Collision Presets (콜리전 프리셋)
- [/PARAM]
- [PARAM:content]
- %p2%
- [/PARAM]
-[/OBJECT]
+### 콜리전 프리셋
+
+%p2%
[VAR:p2]
diff --git a/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/HowTo.KOR.udn b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/HowTo.KOR.udn
index 7ca772156836..974b76f56721 100644
--- a/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/HowTo.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/HowTo.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3149430
+INTSourceChangelist:3459053
Availability: Public
Title:피직스 애셋 툴 비법 첫 페이지
Crumbs: %ROOT%, Engine, Engine/Physics, Engine/Physics/PhAT
diff --git a/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.CHN.udn b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.CHN.udn
new file mode 100644
index 000000000000..63bab964fcba
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.CHN.udn
@@ -0,0 +1,152 @@
+INTSourceChangelist:0
+Availability: Public
+Title:Using Kinematic Bodies with Simulated Parents
+Crumbs: %ROOT%, Engine
+Description:This how-to covers setting up kinematic physics bodies with simulated parents.
+parent:Engine/Physics/PhAT/HowTo
+order:1
+Version: 4.16
+skilllevel:Intermediate
+topic-image:KinematicHowTo_04.png
+checkpoint: editorqs
+Related: Engine/Physics/PhAT
+Related: Engine/Physics/PhAT/Reference
+type:how-to
+tags:Physics
+tags:Kinematic
+tags:PhAT
+
+The [](Engine/Physics/PhAT) provides several different ways in which you can simulate physics bodies including the ability to have kinematic physics bodies with simulated parents.
+This enables you to define child bodies that can be driven by animation data while the parents of those bodies are driven by physics simulation data.
+This can be useful if you have a character hanging from a ledge playing a hanging idle or traversing across a ledge but what them to react to impulses like falling rocks or other debris and generate a physics based reaction.
+
+In this How-to, we use kinematic bodies with simulated parents to generate the effect of a character hanging from a ledge while the rest of the body is simulated with physics.
+
+
+
+## Steps
+
+[REGION:note]
+For this guide, we are using the **Blueprint Third Person Template** project with **Starter Content** enabled.
+[/REGION]
+
+1. In your project in the **Content/Mannequin/Character/Mesh** folder, open the **SK_Mannequin_PhysicsAsset**.
+
+ 
+
+1. In the **Hierarchy** window, click the **All Bones** drop-down and change it to **Bones With Bodies**.
+
+ 
+
+ This will filter the hierarchy to only show bones with bodies and make it easier to select the bones you want to manipulate.
+
+1. In the hierarchy list, hold **Ctrl** and select both the **hand_l** and **hand_r** bones, then in the **Details** panel, change the **Physics Type** to **Kinematic**.
+
+ 
+
+ By setting these bones to Kinematic, they will not simulate physics and will follow any animation data.
+
+ Alternatively, you can **Right-click** bones in the hierarchy list and set their **Physics Type** from the roll-out menu.
+
+ 
+
+ This option enables you to set the **Physics Type** property for children bodies below the current bone.
+
+1. Click on an empty space within the viewport to deselect all bones, then in the **Details** panel, change the **Physics Update Mode** to **Component Transform is Kinematic**.
+
+ 
+
+ This option determines whether the simulation of the root body updates component transform or is kinematic.
+
+1. From the toolbar, click the **Simulate** button.
+
+ 
+
+ The character in the viewport will slump over and appear to be hanging by their hands.
+
+ 
+
+1. From the toolbar, click the **Animation** selection icon, then select the **ThirdPersonJump_Loop** animation.
+
+ 
+
+ The hands (because they are set to kinematic) will follow the animation data contained within the ThirdPersonJump_Loop motion.
+
+ 
+
+1. From the Main Editor window, drag the **SK_Mannequin_PhysicsAsset** into the level and in the **Details** panel, set **Physics Transform Update Mode** to **Component Transform is Kinematic**.
+
+ 
+
+1. Select the **SkeletalMeshComponent**, then change **Animation Mode** to **Use Animation Asset** and **Anim to Play** to **ThirdPersonJump_Loop**.
+
+ 
+
+1. Click the **Play** button from the toolbar to play in the editor.
+
+## End Result
+
+Below we've placed the character near a ledge when we run and bump into it, it reacts to physics while the hands appear slightly fixed.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 9IrH75GvdU8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+While the animation we used above not ideal, below we apply the same concept to an animation of a character hanging and traversing a ledge.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 7SB3IrnWOjw
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+The arms and head are set to Kinematic (denoted below with Gold Boxes) while the rest is being simulated.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.INT.udn b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.INT.udn
new file mode 100644
index 000000000000..dfd6dd34ad2b
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.INT.udn
@@ -0,0 +1,151 @@
+Availability: Public
+Title:Using Kinematic Bodies with Simulated Parents
+Crumbs: %ROOT%, Engine
+Description:This how-to covers setting up kinematic physics bodies with simulated parents.
+parent:Engine/Physics/PhAT/HowTo
+order:1
+Version: 4.16
+skilllevel:Intermediate
+topic-image:KinematicHowTo_04.png
+checkpoint: editorqs
+Related: Engine/Physics/PhAT
+Related: Engine/Physics/PhAT/Reference
+type:how-to
+tags:Physics
+tags:Kinematic
+tags:PhAT
+
+The [](Engine/Physics/PhAT) provides several different ways in which you can simulate physics bodies including the ability to have kinematic physics bodies with simulated parents.
+This enables you to define child bodies that can be driven by animation data while the parents of those bodies are driven by physics simulation data.
+This can be useful if you have a character hanging from a ledge playing a hanging idle or traversing across a ledge but want them to react to impulses like falling rocks or other debris and generate a physics based reaction.
+
+In this How-to, we use kinematic bodies with simulated parents to generate the effect of a character hanging from a ledge while the rest of the body is simulated with physics.
+
+
+
+## Steps
+
+[REGION:note]
+For this guide, we are using the **Blueprint Third Person Template** project with **Starter Content** enabled.
+[/REGION]
+
+1. In your project in the **Content/Mannequin/Character/Mesh** folder, open the **SK_Mannequin_PhysicsAsset**.
+
+ 
+
+1. In the **Hierarchy** window, click the **All Bones** drop-down and change it to **Bones With Bodies**.
+
+ 
+
+ This will filter the hierarchy to only show bones with bodies and make it easier to select the bones you want to manipulate.
+
+1. In the hierarchy list, hold **Ctrl** and select both the **hand_l** and **hand_r** bones, then in the **Details** panel, change the **Physics Type** to **Kinematic**.
+
+ 
+
+ By setting these bones to Kinematic, they will not simulate physics and will follow any animation data.
+
+ Alternatively, you can **Right-click** bones in the hierarchy list and set their **Physics Type** from the roll-out menu.
+
+ 
+
+ This option enables you to set the **Physics Type** property for children bodies below the current bone.
+
+1. Click on an empty space within the viewport to deselect all bones, then in the **Details** panel, change the **Physics Update Mode** to **Component Transform is Kinematic**.
+
+ 
+
+ This option determines whether the simulation of the root body updates component transform or is kinematic.
+
+1. From the toolbar, click the **Simulate** button.
+
+ 
+
+ The character in the viewport will slump over and appear to be hanging by their hands.
+
+ 
+
+1. From the toolbar, click the **Animation** selection icon, then select the **ThirdPersonJump_Loop** animation.
+
+ 
+
+ The hands (because they are set to kinematic) will follow the animation data contained within the ThirdPersonJump_Loop motion.
+
+ 
+
+1. From the Main Editor window, drag the **SK_Mannequin_PhysicsAsset** into the level and in the **Details** panel, set **Physics Transform Update Mode** to **Component Transform is Kinematic**.
+
+ 
+
+1. Select the **SkeletalMeshComponent**, then change **Animation Mode** to **Use Animation Asset** and **Anim to Play** to **ThirdPersonJump_Loop**.
+
+ 
+
+1. Click the **Play** button from the toolbar to play in the editor.
+
+## End Result
+
+Below we've placed the character near a ledge when we run and bump into it, it reacts to physics while the hands appear slightly fixed.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 9IrH75GvdU8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+While the animation we used above not ideal, below we apply the same concept to an animation of a character hanging and traversing a ledge.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 7SB3IrnWOjw
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+The arms and head are set to Kinematic (denoted below with Gold Boxes) while the rest is being simulated.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.JPN.udn b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.JPN.udn
new file mode 100644
index 000000000000..63bab964fcba
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.JPN.udn
@@ -0,0 +1,152 @@
+INTSourceChangelist:0
+Availability: Public
+Title:Using Kinematic Bodies with Simulated Parents
+Crumbs: %ROOT%, Engine
+Description:This how-to covers setting up kinematic physics bodies with simulated parents.
+parent:Engine/Physics/PhAT/HowTo
+order:1
+Version: 4.16
+skilllevel:Intermediate
+topic-image:KinematicHowTo_04.png
+checkpoint: editorqs
+Related: Engine/Physics/PhAT
+Related: Engine/Physics/PhAT/Reference
+type:how-to
+tags:Physics
+tags:Kinematic
+tags:PhAT
+
+The [](Engine/Physics/PhAT) provides several different ways in which you can simulate physics bodies including the ability to have kinematic physics bodies with simulated parents.
+This enables you to define child bodies that can be driven by animation data while the parents of those bodies are driven by physics simulation data.
+This can be useful if you have a character hanging from a ledge playing a hanging idle or traversing across a ledge but what them to react to impulses like falling rocks or other debris and generate a physics based reaction.
+
+In this How-to, we use kinematic bodies with simulated parents to generate the effect of a character hanging from a ledge while the rest of the body is simulated with physics.
+
+
+
+## Steps
+
+[REGION:note]
+For this guide, we are using the **Blueprint Third Person Template** project with **Starter Content** enabled.
+[/REGION]
+
+1. In your project in the **Content/Mannequin/Character/Mesh** folder, open the **SK_Mannequin_PhysicsAsset**.
+
+ 
+
+1. In the **Hierarchy** window, click the **All Bones** drop-down and change it to **Bones With Bodies**.
+
+ 
+
+ This will filter the hierarchy to only show bones with bodies and make it easier to select the bones you want to manipulate.
+
+1. In the hierarchy list, hold **Ctrl** and select both the **hand_l** and **hand_r** bones, then in the **Details** panel, change the **Physics Type** to **Kinematic**.
+
+ 
+
+ By setting these bones to Kinematic, they will not simulate physics and will follow any animation data.
+
+ Alternatively, you can **Right-click** bones in the hierarchy list and set their **Physics Type** from the roll-out menu.
+
+ 
+
+ This option enables you to set the **Physics Type** property for children bodies below the current bone.
+
+1. Click on an empty space within the viewport to deselect all bones, then in the **Details** panel, change the **Physics Update Mode** to **Component Transform is Kinematic**.
+
+ 
+
+ This option determines whether the simulation of the root body updates component transform or is kinematic.
+
+1. From the toolbar, click the **Simulate** button.
+
+ 
+
+ The character in the viewport will slump over and appear to be hanging by their hands.
+
+ 
+
+1. From the toolbar, click the **Animation** selection icon, then select the **ThirdPersonJump_Loop** animation.
+
+ 
+
+ The hands (because they are set to kinematic) will follow the animation data contained within the ThirdPersonJump_Loop motion.
+
+ 
+
+1. From the Main Editor window, drag the **SK_Mannequin_PhysicsAsset** into the level and in the **Details** panel, set **Physics Transform Update Mode** to **Component Transform is Kinematic**.
+
+ 
+
+1. Select the **SkeletalMeshComponent**, then change **Animation Mode** to **Use Animation Asset** and **Anim to Play** to **ThirdPersonJump_Loop**.
+
+ 
+
+1. Click the **Play** button from the toolbar to play in the editor.
+
+## End Result
+
+Below we've placed the character near a ledge when we run and bump into it, it reacts to physics while the hands appear slightly fixed.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 9IrH75GvdU8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+While the animation we used above not ideal, below we apply the same concept to an animation of a character hanging and traversing a ledge.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 7SB3IrnWOjw
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+The arms and head are set to Kinematic (denoted below with Gold Boxes) while the rest is being simulated.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.KOR.udn b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.KOR.udn
new file mode 100644
index 000000000000..d8a6bb376aee
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/PhAT/HowTo/KinematicWithSimulatedParents/KinematicWithSimulatedParents.KOR.udn
@@ -0,0 +1,151 @@
+INTSourceChangelist:3467926
+Availability: Public
+Title:시뮬레이션 부모가 있는 키네마틱 바디 사용법
+Crumbs: %ROOT%, Engine
+Description:시뮬레이션 부모가 있는 키네마틱 피직스 바디 셋업 안내입니다.
+parent:Engine/Physics/PhAT/HowTo
+order:1
+Version: 4.16
+skilllevel:Intermediate
+topic-image:KinematicHowTo_04.png
+checkpoint: editorqs
+Related: Engine/Physics/PhAT
+Related: Engine/Physics/PhAT/Reference
+type:how-to
+tags:Physics
+tags:Kinematic
+tags:PhAT
+
+[](Engine/Physics/PhAT) 에는 시뮬레이션 부모가 있는 키네마틱 피직스 바디를 만드는 기능을 포함해서, 피직스 바디 시뮬레이션을 위한 여러가지 다양한 방법이 제공됩니다.
+자손 바디는 애니메이션 데이터로, 부모 바디는 피직스 시뮬레이션 데이터로 구동시키는 구성이 가능합니다.
+턱에 매달린 캐릭터에 hanging idle 애니메이션을 재생하거나 턱을 따라 이동하는 와중에, 떨어지는 바위나 잔해같은 것의 충격에 반응하여 물리 기반 반응을 만들 수 있습니다.
+
+여기서는 시뮬레이션 바디가 있는 키네마틱 바디를 사용하여 턱에 걸린 상태에서도 나머지 바디는 물리 시뮬레이션이 적용되는 캐릭터 효과를 만들어 보도록 하겠습니다.
+
+
+
+## 단계
+
+[REGION:note]
+여기서는 **블루프린트 삼인칭 템플릿** 프로젝트에 **시작용 콘텐츠** 를 포함시켜 사용하고 있습니다.
+[/REGION]
+
+1. 프로젝트의 **Content/Mannequin/Character/Mesh** 폴더에서 **SK_Mannequin_PhysicsAsset** 을 엽니다.
+
+ 
+
+1. **계층구조** 창에서 **All Bones** (모든 본) 드롭다운을 클릭한 뒤 **Bones With Bodies** (바디가 있는 본)으로 변경합니다.
+
+ 
+
+ 그러면 계층구조 창에 바디가 있는 본만 표시되어 조작하려는 본을 선택하기가 쉬워집니다.
+
+1. 계층구조 목록에서 **Ctrl** 을 누르고 **hand_l** 과 **hand_r** 본을 둘 다 선택한 뒤, **디테일** 패널에서 **Physics Type** 을 **Kinematic** 으로 변경합니다.
+
+ 
+
+ 이 본을 키네마틱으로 설정하면, 피직스 시뮬레이션이 아닌 애니메이션 데이터를 따릅니다.
+
+ 또는, 계층구조 목록에서 본을 **우클릭** 하면 펼쳐지는 메뉴에서 그 **Physics Type** 을 설정해도 됩니다.
+
+ 
+
+ 이 옵션은 현재 본 아래 자손 바디의 **Physics Type** 프로퍼티를 설정해 줍니다.
+
+1. 뷰포트 빈 공간에 클릭하여 모든 본 선택을 해제한 뒤, **디테일** 패널에서 **Physics Update Mode** (피직스 업데이트 모드)를 **Component Transform is Kinematic** (컴포넌트 트랜스폼은 키네마틱)으로 설정합니다.
+
+ 
+
+ 이 옵션은 루트 바디의 시뮬레이션이 컴포넌트 트랜스폼을 업데이트할지 키네마틱인지 결정합니다.
+
+1. 툴바에서 **시뮬레이트** 버튼을 클릭합니다.
+
+ 
+
+ 뷰포트의 캐릭터가 주저앉으면서 손으로 매달린 듯이 보일 것입니다.
+
+ 
+
+1. 툴바에서, **애니메이션** 선택 아이콘을 클릭한 뒤, **ThirdPersonJump_Loop** 애니메이션을 선택합니다.
+
+ 
+
+ 손은 (키메나틱으로 설정되어 있으므로) ThirdPersonJump_Loop 모션에 들어있는 애니메이션 데이터를 따를 것입니다.
+
+ 
+
+1. 메인 에디터 창에서 **SK_Mannequin_PhysicsAsset** 을 끌어 레벨에 놓고, **디테일** 패널에서 **Physics Transform Update Mode** (피직스 트랜스폼 업데이트 모드)를 **Component Transform is Kinematic** (컴포넌트 트랜스폼은 키네마틱)으로 설정합니다.
+
+ 
+
+1. **SkeletalMeshComponent** 를 선택한 뒤, **Animation Mode** (애니메이션 모드)를 **Use Animation Asset** (애니메이션 애셋)으로, **Anim to Play** (재생할 애님)을 **ThirdPersonJump_Loop** 로 설정합니다.
+
+ 
+
+1. 툴바의 **플레이** 를 클릭하여 에디터에서 플레이합니다.
+
+## 최종 결과
+
+아래는 턱 근처에 캐릭터를 배치해 두고 달려가 부딛히면 물리 반응을 하면서 손이 살짝 수정되는 것을 볼 수 있습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 9IrH75GvdU8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+위에 사용한 애니메이션이 이상적이지 않은 반면, 같은 개념을 턱에 매달려 이동하는 캐릭터 애니메이션에 적용한 것이 아래입니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 7SB3IrnWOjw
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+팔과 머리는 키네마틱으로 (아래 금색 박스 부분) 설정된 반면, 나머지는 시뮬레이션이 적용됩니다.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/PhAT/Reference/Properties.INT.udn b/Engine/Documentation/Source/Engine/Physics/PhAT/Reference/Properties.INT.udn
index 2df69cbdd2d2..28ef7447785f 100644
--- a/Engine/Documentation/Source/Engine/Physics/PhAT/Reference/Properties.INT.udn
+++ b/Engine/Documentation/Source/Engine/Physics/PhAT/Reference/Properties.INT.udn
@@ -116,7 +116,7 @@ When the Physics Asset Tool is in Body Mode and a Physics Body is selected, the
| **Linear Damping** | "Drag" force added to reduce linear movement. |
| **Angular Damping** | "Drag" force added to reduce angular movement. |
| **Enable Gravity** | If object should have the force of gravity applied. |
-| **Physics Type** | If this is set to **Unfixed** it will use physics. If this is set to **Fixed** it will use kinematic. **Default** will inherit from **OwnerComponent**'s behavior. |
+| **Physics Type** | If this is set to **Simulated** it will use physics. If this is set to **Kinematic** it will use kinematic. **Default** will inherit from **OwnerComponent**'s behavior. |
| **Double Sided Geometry** | If true, the physics triangle mesh will use double sided faces when doing scene queries. Thsi is useful for planes and single sided meshes that need traces to work on both sides. |
| **Simple Collision Physical Material** | The **Physical Material** to use for simple collision on this body. |
[/REGION]
diff --git a/Engine/Documentation/Source/Engine/Physics/PhAT/Reference/Properties.KOR.udn b/Engine/Documentation/Source/Engine/Physics/PhAT/Reference/Properties.KOR.udn
index 464fe61655b3..f003116829cd 100644
--- a/Engine/Documentation/Source/Engine/Physics/PhAT/Reference/Properties.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Physics/PhAT/Reference/Properties.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3255748
+INTSourceChangelist:3459053
Availability: Public
Title:피직스 애셋 프로퍼티 참고서
Crumbs: %ROOT%, Engine, Engine/Physics, Engine/Physics/PhAT
@@ -117,7 +117,7 @@ SkillLevel: Beginner
| **Linear Damping** | 직선 제동 - 직선 운동을 감소시키기 위해 더할 인력입니다. |
| **Angular Damping** | 각 제동 - 각 운동을 감소시키기 위해 더할 인력입니다. |
| **Enable Gravity** | 중력 켜기 - 오브젝트에 중력을 적용시킵니다. |
-| **Physics Type** | 피직스 유형 - **Unfixed** 로 설정되면 피직스를 사용합니다. **Fixed** 로 설정되면 키네마틱을 사용합니다. **Default** 는 **OwnerComponent** 작동방식을 상속합니다. |
+| **Physics Type** | 피직스 유형 - **Simulated** 로 설정되면 피직스를 사용합니다. **Kinematic** 으로 설정되면 키네마틱을 사용합니다. **Default** 는 **OwnerComponent** 작동방식을 상속합니다. |
| **Double Sided Geometry** | 양면 지오메트리 - true 면 피직스 트라이앵글 메시는 씬 쿼리를 할 때 양면을 사용합니다. 양쪽 면에 통하는 트레이스가 필요한 단면 메시 또는 면에 좋습니다. |
| **Simple Collision Physical Material** | 단순 콜리전 피지컬 머티리얼 - 이 바디의 단순 콜리전에 사용할 **피지컬 머티리얼** 입니다. |
[/REGION]
diff --git a/Engine/Documentation/Source/Engine/Physics/Physics.INT.udn b/Engine/Documentation/Source/Engine/Physics/Physics.INT.udn
index f5910fd11d0c..e52178c2f26f 100644
--- a/Engine/Documentation/Source/Engine/Physics/Physics.INT.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Physics.INT.udn
@@ -2,8 +2,10 @@ Availability: Public
Title:Physics Simulation
Crumbs: %ROOT%, Engine
Description:Subsystem used to calculate collision and simulate physical actors.
-Version: 4.9
+Version: 4.16
+Type:landing
parent:Engine
+tags:Physics
order:8
[VAR:Topic]
@@ -72,6 +74,18 @@ Unreal Engine 4 uses the PhysX 3.3 physics engine to drive its physical simulati
[/PARAM]
[/OBJECT]
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Clothing Tools
+ [/PARAM]
+ [PARAM:links]
+ * [Clothing Tool Overview](Engine/Physics/Cloth/Overview "%Engine/Physics/Cloth/Overview:description%")
+ [/PARAM]
+[/OBJECT]
+
[OBJECT:TopicButtonList]
[PARAM:icon]
(convert:false)
@@ -82,6 +96,7 @@ Unreal Engine 4 uses the PhysX 3.3 physics engine to drive its physical simulati
[PARAM:links]
* [Vehicle User Guide](Engine/Physics/Vehicles/VehicleUserGuide "%Engine/Physics/Vehicles/VehicleUserGuide:description%")
* [Vehicle Content Creation Guide](Engine/Physics/Vehicles/VehcileContentCreation "%Engine/Physics/Vehicles/VehcileContentCreation:description%")
+ * [Simple Wheeled Vehicle Movement Component](Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent "%Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent:description%")
* [Advanced Vehicle Template](Engine/Physics/Vehicles/DoubleWishboneVehicle "%Engine/Physics/Vehicles/DoubleWishboneVehicle:description%")
* [Vehicle API Reference](API:AWheeledVehicle)
[/PARAM]
diff --git a/Engine/Documentation/Source/Engine/Physics/Physics.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Physics.JPN.udn
index 6fb1a44572aa..b37c641c9ddc 100644
--- a/Engine/Documentation/Source/Engine/Physics/Physics.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Physics.JPN.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3317470
+INTSourceChangelist:3454591
Availability:Public
Title:物理のシミュレーション
Crumbs: %ROOT%, Engine
Description:コリジョンを計算し、物理アクタをシミュレートするために使用するシステム
-Version:4.9
+Version:4.16
parent:Engine
order:8
@@ -83,8 +83,9 @@ order:8
[PARAM:links]
* [ビークル ユーザー ガイド](Engine/Physics/Vehicles/VehicleUserGuide "%Engine/Physics/Vehicles/VehicleUserGuide:description%")
* [ビークル コンテンツ作成ガイド](Engine/Physics/Vehicles/VehcileContentCreation "%Engine/Physics/Vehicles/VehcileContentCreation:description%")
+ * [シンプルな車輪付きビークルの移動コンポーネント](Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent "%Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent:description%")
* [高度なビークル テンプレート](Engine/Physics/Vehicles/DoubleWishboneVehicle "%Engine/Physics/Vehicles/DoubleWishboneVehicle:description%")
- * [Vehicle API Reference](API:AWheeledVehicle)
+ * [ビークルの API リファレンス](API:AWheeledVehicle)
[/PARAM]
[/OBJECT]
diff --git a/Engine/Documentation/Source/Engine/Physics/Physics.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Physics.KOR.udn
index f5fcacee79d2..9284ae89d6dd 100644
--- a/Engine/Documentation/Source/Engine/Physics/Physics.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Physics.KOR.udn
@@ -1,10 +1,12 @@
-INTSourceChangelist:3317470
+INTSourceChangelist:3469699
Availability: Public
Title:피직스 시뮬레이션
Crumbs: %ROOT%, Engine
Description:피지컬 액터의 시뮬레이션과 콜리전 계산에 사용되는 서브시스템 입니다.
-Version: 4.9
+Version: 4.16
+Type:landing
parent:Engine
+tags:Physics
order:8
[VAR:Topic]
@@ -73,6 +75,18 @@ order:8
[/PARAM]
[/OBJECT]
+[OBJECT:TopicButtonList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ 클로딩 툴
+ [/PARAM]
+ [PARAM:links]
+ * [](Engine/Physics/Cloth/Overview "%Engine/Physics/Cloth/Overview:description%")
+ [/PARAM]
+[/OBJECT]
+
[OBJECT:TopicButtonList]
[PARAM:icon]
(convert:false)
@@ -83,6 +97,7 @@ order:8
[PARAM:links]
* [](Engine/Physics/Vehicles/VehicleUserGuide "%Engine/Physics/Vehicles/VehicleUserGuide:description%")
* [](Engine/Physics/Vehicles/VehcileContentCreation "%Engine/Physics/Vehicles/VehcileContentCreation:description%")
+ * [](Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent "%Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent:description%")
* [](Engine/Physics/Vehicles/DoubleWishboneVehicle "%Engine/Physics/Vehicles/DoubleWishboneVehicle:description%")
* [Vehicle API Reference](API:AWheeledVehicle)
[/PARAM]
diff --git a/Engine/Documentation/Source/Engine/Physics/PhysicsBodies/Reference/PhysicsBodiesRef.CHN.udn b/Engine/Documentation/Source/Engine/Physics/PhysicsBodies/Reference/PhysicsBodiesRef.CHN.udn
index f7be9f2b2970..f5afe9f51e0d 100644
--- a/Engine/Documentation/Source/Engine/Physics/PhysicsBodies/Reference/PhysicsBodiesRef.CHN.udn
+++ b/Engine/Documentation/Source/Engine/Physics/PhysicsBodies/Reference/PhysicsBodiesRef.CHN.udn
@@ -1,16 +1,16 @@
-INTSourceChangelist:0
-Availability: Public
-Title:Physics Bodies Reference
+INTSourceChangelist:3262203
+Availability:Public
+Title:物理形体参考
Crumbs: %ROOT%
-Description:Physics Body, or Body Instance, property reference.
+Description:物理形体、或形体实例、属性参考。
topic-image:Engine/Physics/physics_topic.png
-This page contains a reference listing of properties in the Physics and Collision categories of properties. If you are looking for reference on Collision Responses or Collision Presets please see: [](Engine/Physics/Collision/Reference).
+本页参考列出了属性下 Physics and Collision 类目中的所有属性。如需了解碰撞响应或碰撞预设的参考,请查阅[碰撞响应](Engine/Physics/Collision/Reference)。
-## Properties
+## 属性
-Below are the properties for Physics Bodies (Body Instances) separated by major category.
+以下是按主要类目区分的物理形体(形体实例)属性。
[EXCERPT:PropPhysicsCat]
[OBJECT:modulesectionexpanded]
@@ -30,17 +30,17 @@ Below are the properties for Physics Bodies (Body Instances) separated by major

[REGION:raw]
-| Property | %spacer% | Description |
-| --- | :---: | :--- |
+| 属性 | %spacer% | 描述 |
+| --- | :---:| :--- |
| **Simulate Physics** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bSimulatePhysics" output:"block")] |
-| **Mass in KG** || Mass of the body in KG. |
+| **Mass in KG** || 形体的质量按千克计。|
| **Angular Damping** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:AngularDamping" output:"block")] |
| **Linear Damping** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:LinearDamping" output:"block")] |
| **Enable Gravity** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bEnableGravity" output:"block")] |
-|[REGION:tablesection]**Constraints**[/REGION]|||
+|[REGION:tablesection]**约束**[/REGION]|||
| **Lock Position** || [INCLUDE:#lockpos] |
| **Lock Rotation** || [INCLUDE:#lockrot] |
-| **Mode** || [INCLUDE:#mode] |
+| **模式** || [INCLUDE:#mode] |
[/REGION]
### Advanced
@@ -48,8 +48,8 @@ Below are the properties for Physics Bodies (Body Instances) separated by major

[REGION:raw]
-| Property | %spacer% | Description |
-| --- | :---: | :--- |
+| 属性 | %spacer% | 描述 |
+| --- | :---:| :--- |
| **Auto Weld** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bAutoWeld" output:"block")] |
| **Start Awake** ||[TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bStartAwake" output:"block")] |
| **Center Of Mass Offset** ||[TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:COMNudge" output:"block")] |
@@ -59,7 +59,7 @@ Below are the properties for Physics Bodies (Body Instances) separated by major
| **Override Max Depenetration Velocity** ||[TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bOverrideMaxDepenetrationVelocity" output:"block")] |
| **Max Depenetration Velocity** ||[TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:MaxDepenetrationVelocity" output:"block")] |
| **Override Walkable Slope on Instance** ||[TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bOverrideWalkableSlopeOnInstance" output:"block")] |
-| **Walkable Slope Override** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodySetup:WalkableSlopeOverride" output:"block")] See the **[](Engine/Physics/WalkableSlope)** documentation for usage information. |
+| **Walkable Slope Override** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodySetup:WalkableSlopeOverride" output:"block")] 查阅 **[](Engine/Physics/WalkableSlope)** 文档中的使用信息。|
| **Walkable Slope Behavior** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"WalkableSlopeOverride:WalkableSlopeBehavior" output:"block")] |
| **Walkable Slope Angle** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"WalkableSlopeOverride:WalkableSlopeAngle" output:"block")] |
| **Sleep Family** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:SleepFamily" output:"block")] |
@@ -89,12 +89,12 @@ Below are the properties for Physics Bodies (Body Instances) separated by major

[REGION:raw]
-| Property | %spacer% | Description |
-| --- | :---: | :--- |
+| 属性 | %spacer% | 描述 |
+| --- | :---:| :--- |
| **Simulation Generates Hit Events** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bNotifyRigidBodyCollision" output:"block")] |
| **Phys Material Override** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:PhysMaterialOverride" output:"block")] |
| **Generate Overlap Events** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"PrimitiveComponent:bGenerateOverlapEvents" output:"block")] |
-| **Collision Responses** || See the **[](Engine/Physics/Collision/Reference)** documentation for more information. |
+| **Collision Responses** || 查阅 **[](Engine/Physics/Collision/Reference)** 文档中的详细内容。|
[/REGION]
### Advanced
@@ -102,15 +102,15 @@ Below are the properties for Physics Bodies (Body Instances) separated by major

[REGION:raw]
-| Property | %spacer% | Description |
-| --- | :---: | :--- |
+| 属性 | %spacer% | 描述 |
+| --- | :---:| :--- |
| **Use CCD** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bUseCCD" output:"block")] |
| **Always Create Physics State** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"PrimitiveComponent:bAlwaysCreatePhysicsState" output:"block")] |
| **Multi Body Overlap** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"PrimitiveComponent:bMultiBodyOverlap" output:"block")] |
| **Check Async Scene On Move** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"PrimitiveComponent:bCheckAsyncSceneOnMove" output:"block")] |
| **Trace Complex On Move** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"PrimitiveComponent:bTraceComplexOnMove" output:"block")] |
| **Return Material On Move** || [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"PrimitiveComponent:bReturnMaterialOnMove" output:"block")] |
-| **Can Ever Affect Navigation** || Whether this component can potentially influence navigation |
+| **Can Ever Affect Navigation** || 确定该组件是否对导航存在潜在影响 |
[/REGION]
@@ -126,7 +126,7 @@ Below are the properties for Physics Bodies (Body Instances) separated by major
[TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bLockTranslation" output:"block")]
[REGION:simpletable]
-| Property | Description |
+| 属性 | 描述 |
| --- | :--- |
| **Lock X Translation** | [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bLockXTranslation" output:"block")] |
| **Lock Y Translation** | [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bLockYTranslation" output:"block")] |
@@ -139,7 +139,7 @@ Below are the properties for Physics Bodies (Body Instances) separated by major
[TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bLockRotation" output:"block")]
[REGION:simpletable]
-| Property | Description |
+| 属性 | 描述 |
| --- | :--- |
| **Lock X Rotation** | [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bLockXRotation" output:"block")] |
| **Lock Y Rotation** | [TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:bLockYRotation" output:"block")] |
@@ -152,15 +152,15 @@ Below are the properties for Physics Bodies (Body Instances) separated by major
[TEXT(type:"tooltip" namespace:"UObjectToolTips" key:"BodyInstance:DOFMode" output:"block")]
[REGION:simpletable]
-| Property | Description |
+| 属性 | 描述 |
| --- | :--- |
-| **Default** | Inherits the degrees of freedom from the project settings. |
-| **Six DOF** | Specifies which axis to freeze rotation and movement along. |
-| **YZPlane** | Allows 2D movement along the Y-Z plane. |
-| **XZPlane** | Allows 2D movement along the X-Z plane. |
-| **XYPlane** | Allows 2D movement along the X-Y plane. |
-| **Custom Plane** | Allows 2D movement along the plane of a given normal. |
-| **None** | No constraints. |
+| **Default** | 从项目设置继承自由度。|
+| **Six DOF** | 指定冻结旋转和运动所沿的轴。|
+| **YZPlane** |允许沿 Y-Z 面的 2D 运动。|
+| **XZPlane** | 允许沿 X-Z 面的 2D 运动。|
+| **XYPlane** | 允许沿 X-Y 面的 2D 运动。|
+| **Custom Plane** | 允许沿特定法线面的 2D 运动。|
+| **None** | 无约束。|
[/REGION]
[/EXCERPT]
--->
\ No newline at end of file
+-->
diff --git a/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.INT.udn b/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.INT.udn
index 2659ec43e12e..1ad35844a4eb 100644
--- a/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.INT.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.INT.udn
@@ -1,7 +1,7 @@
Availability: Public
-Title:Traces (Raycasts)
+Title:Traces with Raycasts
Crumbs:
-Description:The landing page for Physics Traces (Raycasts).
+Description:The landing page for Physics Traces.
version: 4.14
Parent:Engine/Physics
type:landing
diff --git a/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.JPN.udn
index 8c0cdeb381db..a0694bda6859 100644
--- a/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.JPN.udn
@@ -1,8 +1,8 @@
-INTSourceChangelist:3317466
+INTSourceChangelist:3429244
Availability:Public
-Title:トレース(レイキャスト)
-Crumbs: %ROOT%
-Description:物理のトレース(レイキャスト)のランディング ページ
+Title:レイキャストによるトレース
+Crumbs:
+Description:物理のトレースのランディング ページ
version:4.14
Parent:Engine/Physics
type:landing
@@ -10,19 +10,21 @@ order:4
tags:Physics
tags:Tracing
tags:Raycast
+tags:Gameplay
topic-image:trace_topic.png
social-image:trace_social.png
(convert:false)
-ゲーム中にプレイヤー キャラクターが何かを見ているかどうかを判断したい状況があるかもしれません。見た場合には、何らかの方法でゲーム ステートを変更します (例えば、プレイヤーがそれを見ると強調表示するなど)。あるいは、敵にプレイヤー キャラクターが見えているのかどうかを判断したい状況があります。見えている場合は、何らかの方法でプレイヤー キャラクターへの射撃または交戦を開始します。レイキャスト (またはトレース) を使って両方のシナリオを実現することができます。 2 点間のジオメトリを探知する見えない光線を放ち、ジオメトリにヒットすれば何をヒットしたかを返して、それに対して何かをすることができます。
+ゲーム中にプレイヤー キャラクターが何かを見ているかどうかを判断したい状況があるかもしれません。見た場合には、何らかの方法でゲーム ステートを変更します (例えば、プレイヤーがそれを見ると強調表示するなど)。あるいは、敵にプレイヤー キャラクターが見えているのかどうかを判断したい状況があります。見えている場合は、何らかの方法でプレイヤー キャラクターへの射撃または交戦を開始します。**トレース** ( **レイキャスト**) を使って両方のシナリオを実現することができます。 2 点間のジオメトリを探知する見えない光線を放ち、ジオメトリにヒットすれば何をヒットしたかを返して、それに対して何かをすることができます。
-トレース実行時に利用できるオプションがいくつかあります。オブジェクト ヒットを返されるとオブジェクトとのコリジョンをチェックするためにトレースを実行したり、またはオブジェクトが指定した Trace Channel に反応するように設定された場合のみ (Collision Settings (コリジョン設定) で設定可能)、オブジェクト ヒットがヒット情報を返すように Trace Channel でトレースを実行することができます。
+トレース実行時に利用できる様々なオプションがあります。オブジェクト ヒットを返されるとオブジェクトとのコリジョンをチェックするためにトレースを実行したり、またはオブジェクトが指定した Trace Channel に反応するように設定された場合のみ (Collision Settings (コリジョン設定) で設定可能)、オブジェクト ヒットがヒット情報を返すように Trace Channel でトレースを実行することができます。
オブジェクトまたは Trace Channel でトレースを実行する他に、 Single ヒットまたは Multi ヒットを探知するためにトレースを実行することができます。 Single Trace は、トレースからひとつのヒット結果を返し、 Multi Trace は複数のヒット結果を返します。トレースを使えば、使用する光線のタイプ、すなわち直線、ボックス、カプセル、球体を指定することができます。
## トピックス
-ブループリントを使ったレイキャストについては、以下を参照してください。
+ブループリントを使ったレイキャストについては、以下のリンクを参照してください。
-[DIR(output:"topic" parent:"Engine/Physics/Tracing" org:"hierarchy" end:"1")]
+%Engine/Physics/Tracing/Overview:topic%
+%Engine/Physics/Tracing/HowTo:topic%
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.KOR.udn
index 8870bd3c7232..b73081ab24f3 100644
--- a/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Tracing/Tracing.KOR.udn
@@ -1,8 +1,8 @@
-INTSourceChangelist:3346514
+INTSourceChangelist:3429244
Availability: Public
-Title:트레이스, 레이캐스트
+Title:레이캐스트와 트레이스
Crumbs:
-Description:피직스 트레이스, 또는 레이캐스트 홈 페이지입니다.
+Description:피직스 트레이스 홈 페이지입니다.
version: 4.14
Parent:Engine/Physics
type:landing
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.CHN.udn
new file mode 100644
index 000000000000..305bb3599db1
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.CHN.udn
@@ -0,0 +1,95 @@
+INTSourceChangelist:0
+Availability:Docs
+Title:Simple Wheeled Vehicle Movement Component
+Crumbs:
+Description:The Unreal Engine 4 Blueprint Vehicles User Guide for SimpleWheeledVehicleMovement Component.
+Parent: Engine/Vehicles/
+type:how-to
+prereq: Engine/Physics/Vehicles/VehicleUserGuide
+Version: 4.15
+SkillLevel: Advanced
+tags: vehicles
+
+The **SimpleWheeledVehicleMovement** component provides wheel suspension and tire friction without the complexities of engine or drivetrain simulation. Instead, it
+lets you easily apply torque to individual tires for components inheriting from Wheeled Vehicle Movement component, which can give you vehicle-like movement
+to arbitrary components without having to rely on the Wheeled Vehicle Actor class.
+
+In order to setup and use SimpleWheeledVehicleMovement component, you will first need to complete the following steps outlined in the [Vehicle User Guide](Engine/Physics/Vehicles/VehicleUserGuide).
+Use these steps to make sure your vehicle is setup properly before proceeding:
+
+* [Creating the Wheel Blueprints](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingthewheelblueprints)
+* [Creating the TireType Data Asset](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingthetiretypedataasset)
+* [Creating the Animation Blueprint](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingtheanimationblueprint)
+* [Editing the Animation Blueprint](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#editingtheanimationblueprint)
+
+### Creating a Simple Wheeled Vehicle Blueprints
+
+To create a new Simple Wheeled Vehicle Blueprint, in the **Content Browser** click the **Add New** button, navigate to and click on **Blueprint Class**, and finally, select **Pawn** from the options in the Pick Parent Class window.
+
+[REGION:raw]
+(w:850)
+[/REGION]
+
+
+### Editing the Simple Wheeled Vehicle Blueprint
+
+Now that we've created a Simple Wheeled Vehicle Blueprint, we can start to set up our simple vehicle movement. So, if your vehicle mesh is ready and you have already setup your wheels, then you will be able to
+apply vehicle-like properties to arbitrary objects that do not require the drive-train or simulation of a normal vehicle.
+
+Double-click your **SimpleWheeledVehicle Blueprint** from your Content Browser to bring up the Blueprint Editor.
+
+1. In the **Components** window, use the **Add Component** button and add a **Skeletal Mesh** component.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+ Then click and drag the **Skeletal Mesh** component onto the **DefaultSceneRoot** component. This will make it the root for this Blueprint.
+
+ [REGION:raw]
+ (w:650)
+ [/REGION]
+
+1. With your Skeletal Mesh component selected, set the **Anim Class** to your vehicle's Animation Blueprint and then assign your Skeletal Mesh.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+1. Return to the **Components** window and add **SimpleWheeledVehicleMovement** component.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+1. With the SimpleWheeledVehicleMovement component selected, in the **Vehicle Setup** section click the down arrow to expand **Wheel Setups** and then click the **+** to add your wheels.
+
+1. For each wheel (0-3):
+
+ * Set the **Wheel Class** to one of the wheel Blueprints you created.
+ * Set the **Bone Name** to the name of the joint that should be controlled by the wheel.
+
+ [REGION:raw]
+ 
+ [/REGION]
+ [REGION:caption]
+ The Bone Name in the above image is specific to this Skeletal Mesh.
+ [/REGION]
+
+ The order you assigned the wheels has no bearing on if it is a front or rear wheel, only the Bone Name and Wheel Class have any effect.
+
+ [REGION:tip]
+ If you need more than 4 wheels, you can click the "**+**" icon next to the **Wheel Setups** property to add more.
+ [/REGION]
+
+At this point, assuming your vehicle is not substantially larger than a minivan, the default values will be a good starting point to start testing.
+
+
+### Applying Torque to Wheels
+
+In order for your simple vehicle to move, you'll need to apply torque to the individual tires that you want to move. You can do this by pulling off your
+SimpleWheeledVehicleMovement component and using **Set Drive Torque**. Use the **Drive Torque** value to set how much torque and the **Wheel Index** to
+assign a wheel that will have the torque applied to. The Wheel Index corresponds to the index number in the Wheel Setups section of the SimpleWheeledVehicleMovement's Details Panel.
+
+
+(w:650)
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.INT.udn
new file mode 100644
index 000000000000..d7aae03f6917
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.INT.udn
@@ -0,0 +1,94 @@
+Availability:Public
+Title:Simple Wheeled Vehicle Movement Component
+Crumbs:
+Description:The Unreal Engine 4 Blueprint Vehicles User Guide for SimpleWheeledVehicleMovement Component.
+Parent: Engine/Vehicles/
+type:how-to
+prereq: Engine/Physics/Vehicles/VehicleUserGuide
+Version: 4.15
+SkillLevel: Advanced
+tags: vehicles
+
+The **SimpleWheeledVehicleMovement** component provides wheel suspension and tire friction without the complexities of engine or drivetrain simulation. Instead, it
+lets you easily apply torque to individual tires for components inheriting from Wheeled Vehicle Movement component, which can give you vehicle-like movement
+to arbitrary components without having to rely on the Wheeled Vehicle Actor class.
+
+In order to setup and use SimpleWheeledVehicleMovement component, you will first need to complete the following steps outlined in the [Vehicle User Guide](Engine/Physics/Vehicles/VehicleUserGuide).
+Use these steps to make sure your vehicle is setup properly before proceeding:
+
+* [Creating the Wheel Blueprints](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingthewheelblueprints)
+* [Creating the TireType Data Asset](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingthetiretypedataasset)
+* [Creating the Animation Blueprint](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingtheanimationblueprint)
+* [Editing the Animation Blueprint](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#editingtheanimationblueprint)
+
+### Creating a Simple Wheeled Vehicle Blueprints
+
+To create a new Simple Wheeled Vehicle Blueprint, in the **Content Browser** click the **Add New** button, navigate to and click on **Blueprint Class**, and finally, select **Pawn** from the options in the Pick Parent Class window.
+
+[REGION:raw]
+(w:850)
+[/REGION]
+
+
+### Editing the Simple Wheeled Vehicle Blueprint
+
+Now that we've created a Simple Wheeled Vehicle Blueprint, we can start to set up our simple vehicle movement. So, if your vehicle mesh is ready and you have already setup your wheels, then you will be able to
+apply vehicle-like properties to arbitrary objects that do not require the drive-train or simulation of a normal vehicle.
+
+Double-click your **SimpleWheeledVehicle Blueprint** from your Content Browser to bring up the Blueprint Editor.
+
+1. In the **Components** window, use the **Add Component** button and add a **Skeletal Mesh** component.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+ Then click and drag the **Skeletal Mesh** component onto the **DefaultSceneRoot** component. This will make it the root for this Blueprint.
+
+ [REGION:raw]
+ (w:650)
+ [/REGION]
+
+1. With your Skeletal Mesh component selected, set the **Anim Class** to your vehicle's Animation Blueprint and then assign your Skeletal Mesh.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+1. Return to the **Components** window and add **SimpleWheeledVehicleMovement** component.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+1. With the SimpleWheeledVehicleMovement component selected, in the **Vehicle Setup** section click the down arrow to expand **Wheel Setups** and then click the **+** to add your wheels.
+
+1. For each wheel (0-3):
+
+ * Set the **Wheel Class** to one of the wheel Blueprints you created.
+ * Set the **Bone Name** to the name of the joint that should be controlled by the wheel.
+
+ [REGION:raw]
+ 
+ [/REGION]
+ [REGION:caption]
+ The Bone Name in the above image is specific to this Skeletal Mesh.
+ [/REGION]
+
+ The order you assigned the wheels has no bearing on if it is a front or rear wheel, only the Bone Name and Wheel Class have any effect.
+
+ [REGION:tip]
+ If you need more than 4 wheels, you can click the "**+**" icon next to the **Wheel Setups** property to add more.
+ [/REGION]
+
+At this point, assuming your vehicle is not substantially larger than a minivan, the default values will be a good starting point to start testing.
+
+
+### Applying Torque to Wheels
+
+In order for your simple vehicle to move, you'll need to apply torque to the individual tires that you want to move. You can do this by pulling off your
+SimpleWheeledVehicleMovement component and using **Set Drive Torque**. Use the **Drive Torque** value to set how much torque and the **Wheel Index** to
+assign a wheel that will have the torque applied to. The Wheel Index corresponds to the index number in the Wheel Setups section of the SimpleWheeledVehicleMovement's Details Panel.
+
+
+(w:650)
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.JPN.udn
new file mode 100644
index 000000000000..4762e16be07d
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.JPN.udn
@@ -0,0 +1,93 @@
+INTSourceChangelist:3469385
+Availability:Public
+Title:Simple Wheeled Vehicle Movement コンポーネント
+Crumbs:
+Description:SimpleWheeledVehicleMovement コンポーネントのブループリントのビークル ユーザー ガイド。
+Parent:Engine/Vehicles/
+type:how-to
+prereq:Engine/Physics/Vehicles/VehicleUserGuide
+Version:4.15
+SkillLevel:Advanced
+tags: vehicles
+
+**Simple Wheeled Vehicle Movement** コンポーネントは、複雑なエンジンやドライブトレインのシミュレーションなしで、ホイールのサスペンションとタイヤの摩擦を表現します。代わりに
+このコンポーネントは Wheeled Vehicle Movement コンポーネントから継承したコンポーネントの個々のタイヤに簡単にトルクを適用します。
+これで、ビークルのような動きを、Wheeled Vehicle Actor クラスに依存する必要なく、任意のコンポーネントに適用することができます。
+
+SimpleWheeledVehicleMovement コンポーネントをセットアップして使用するためには、まず [ビークルのユーザー ガイド](Engine/Physics/Vehicles/VehicleUserGuide) に記載されている以下のステップを完了する必要があります。
+こうしたステップを使ってビークルをセットアップしてから、先の手順に進んでください。
+
+* [Wheel ブループリントを作成する](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingthewheelblueprints)
+* [TireTypeData アセットを作成する](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingthetiretypedataasset)
+* [Animation ブループリントを作成する](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingtheanimationblueprint)
+* [Animation ブループリントを編集する](http://www.newegg.com/Product/Product.aspx?Item=N82E16814487129)
+
+### Simple Wheeled Vehicle ブループリントを作成する
+
+新規で Simple Wheeled Vehicle ブループリントを作成するには、**コンテンツ ブラウザ** で **[Add New]** ボタンをクリックし、**[Blueprint Class]** に移動してクリックし、最後に [Pick Parent Class] ウィンドウにあるオプションから **Pawn** を選択します。
+
+[REGION:raw]
+(w:850)
+[/REGION]
+
+
+### Simple Wheeled Vehicle ブループリントを編集する
+
+Simple Wheeled Vehicle ブループリントを作成したので、シンプルなビークルの動きをセットアップします。ビークルのメッシュの準備ができていて、車輪をセットアップ済みの場合、
+ビークルのようなプロパティを、通常のビークルのドライブ トレインやシミュレーションを必要としない任意のオブジェクトに適用することができます。
+
+コンテンツ ブラウザから **SimpleWheeledVehicle ブループリント** をダブルクリックして、ブループリント エディタを表示します。
+
+1. **[Components]** ウィンドウで **[Add Component]** ボタンを使用して、 **Skeletal Mesh** コンポーネントを追加します。
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+ **Skeletal Mesh** コンポーネントをクリックして **DefaultSceneRoot** コンポーネントにドラッグします。これが、このブループリントのルートになります。
+ [REGION:raw]
+ (w:650)
+ [/REGION]
+
+1. Skeletal Mesh コンポーネントを選択した状態で、**Anim Class** をビークルの Animation ブループリントに適用し、スケルタルメッシュを割り当てます。
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+1. **[Components]** ウィンドウに戻り、**SimpleWheeledVehicleMovement** コンポーネントを追加します。
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+1. SimpleWheeledVehicleMovement コンポーネントを選択した状態で、**Vehicle Setup** セクションで、下向きの矢印をクリックし、**Wheel Setups** を展開します。次に、**+** をクリックして車輪を追加します。
+
+1. 各車輪 (0-3) について以下のようにします。
+
+ * 作成した車輪のブループリントの 1 つに **Wheel Class** を設定します。
+ * 車輪が制御するジョイント名に **[Bone Name (ボーン名)]** を設定します。
+
+ [REGION:raw]
+ 
+ [/REGION]
+ [REGION:caption]
+ 上の画像の Bone Name は、このスケルタルメッシュ固有のものです。
+ [/REGION]
+
+ 車輪を割り当てた順序は、前輪であるか後輪であるかに関係なく、[Bone Name (ボーン名)] と [Wheel Class (車輪のクラス)] だけが影響を与えます。
+
+ [REGION:tip]
+ 4 つよりも多く車輪が必要な場合、**Wheel Setups** プロパティの隣にある "**+**" アイコンをクリックして車輪を追加できます。
+ [/REGION]
+
+この時点で、ビークルがミニバンよりも大幅に大きくないことを前提に、まずデフォルト値でテストするとよいでしょう。
+
+
+### 車輪にトルクを適用する
+
+ビークルが動くためには、動かしたい個々のタイヤにトルクを適用する必要があります。これを行うには、
+SimpleWheeledVehicleMovement コンポーネントを引き出して、**Set Drive Torque** を使用します。**Drive Torque** 値を使って、車輪にどれくらいのトルクを適用するか、
+トルクを適用する車輪に割り当てる **Wheel Index** を設定します。Wheel Index は、SimpleWheeledVehicleMovement の [Details (詳細)] パネルの Wheel Setups セクションのインデックス番号に対応します。
+
+
+(w:650)
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.KOR.udn
new file mode 100644
index 000000000000..3ea38475f005
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/SimpleWheeledVehicleMovementComponent/SimpleWheeledVehicleMovementComponent.KOR.udn
@@ -0,0 +1,95 @@
+INTSourceChangelist:0
+Availability:Public
+Title:Simple Wheeled Vehicle Movement Component
+Crumbs:
+Description:The Unreal Engine 4 Blueprint Vehicles User Guide for SimpleWheeledVehicleMovement Component.
+Parent: Engine/Vehicles/
+type:how-to
+prereq: Engine/Physics/Vehicles/VehicleUserGuide
+Version: 4.15
+SkillLevel: Advanced
+tags: vehicles
+
+The **SimpleWheeledVehicleMovement** component provides wheel suspension and tire friction without the complexities of engine or drivetrain simulation. Instead, it
+lets you easily apply torque to individual tires for components inheriting from Wheeled Vehicle Movement component, which can give you vehicle-like movement
+to arbitrary components without having to rely on the Wheeled Vehicle Actor class.
+
+In order to setup and use SimpleWheeledVehicleMovement component, you will first need to complete the following steps outlined in the [Vehicle User Guide](Engine/Physics/Vehicles/VehicleUserGuide).
+Use these steps to make sure your vehicle is setup properly before proceeding:
+
+* [Creating the Wheel Blueprints](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingthewheelblueprints)
+* [Creating the TireType Data Asset](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingthetiretypedataasset)
+* [Creating the Animation Blueprint](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#creatingtheanimationblueprint)
+* [Editing the Animation Blueprint](https://docs.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehicleUserGuide/#editingtheanimationblueprint)
+
+### Creating a Simple Wheeled Vehicle Blueprints
+
+To create a new Simple Wheeled Vehicle Blueprint, in the **Content Browser** click the **Add New** button, navigate to and click on **Blueprint Class**, and finally, select **Pawn** from the options in the Pick Parent Class window.
+
+[REGION:raw]
+(w:850)
+[/REGION]
+
+
+### Editing the Simple Wheeled Vehicle Blueprint
+
+Now that we've created a Simple Wheeled Vehicle Blueprint, we can start to set up our simple vehicle movement. So, if your vehicle mesh is ready and you have already setup your wheels, then you will be able to
+apply vehicle-like properties to arbitrary objects that do not require the drive-train or simulation of a normal vehicle.
+
+Double-click your **SimpleWheeledVehicle Blueprint** from your Content Browser to bring up the Blueprint Editor.
+
+1. In the **Components** window, use the **Add Component** button and add a **Skeletal Mesh** component.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+ Then click and drag the **Skeletal Mesh** component onto the **DefaultSceneRoot** component. This will make it the root for this Blueprint.
+
+ [REGION:raw]
+ (w:650)
+ [/REGION]
+
+1. With your Skeletal Mesh component selected, set the **Anim Class** to your vehicle's Animation Blueprint and then assign your Skeletal Mesh.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+1. Return to the **Components** window and add **SimpleWheeledVehicleMovement** component.
+
+ [REGION:raw]
+ (w:850)
+ [/REGION]
+
+1. With the SimpleWheeledVehicleMovement component selected, in the **Vehicle Setup** section click the down arrow to expand **Wheel Setups** and then click the **+** to add your wheels.
+
+1. For each wheel (0-3):
+
+ * Set the **Wheel Class** to one of the wheel Blueprints you created.
+ * Set the **Bone Name** to the name of the joint that should be controlled by the wheel.
+
+ [REGION:raw]
+ 
+ [/REGION]
+ [REGION:caption]
+ The Bone Name in the above image is specific to this Skeletal Mesh.
+ [/REGION]
+
+ The order you assigned the wheels has no bearing on if it is a front or rear wheel, only the Bone Name and Wheel Class have any effect.
+
+ [REGION:tip]
+ If you need more than 4 wheels, you can click the "**+**" icon next to the **Wheel Setups** property to add more.
+ [/REGION]
+
+At this point, assuming your vehicle is not substantially larger than a minivan, the default values will be a good starting point to start testing.
+
+
+### Applying Torque to Wheels
+
+In order for your simple vehicle to move, you'll need to apply torque to the individual tires that you want to move. You can do this by pulling off your
+SimpleWheeledVehicleMovement component and using **Set Drive Torque**. Use the **Drive Torque** value to set how much torque and the **Wheel Index** to
+assign a wheel that will have the torque applied to. The Wheel Index corresponds to the index number in the Wheel Setups section of the SimpleWheeledVehicleMovement's Details Panel.
+
+
+(w:650)
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.CHN.udn
new file mode 100644
index 000000000000..3ab41897b72d
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.CHN.udn
@@ -0,0 +1,84 @@
+INTSourceChangelist:0
+Availability: Docs
+Title: Vehicle Center of Mass
+Crumbs:%ROOT%
+Description: An overview of how Center of Mass works with Vehicles.
+Type: Reference
+Parent: Engine/Physics/Vehicles/
+Order:
+Version: 4.15
+Tags: Vehicles
+
+[TOC (start:1)]
+
+Weight distribution of a vehicle is important to its control, as it affects a variety of its characteristics, like handling, acceleration, and traction. Different vehicle types will require different weight distributions depending on their intended use. For the purposes of game development, these characteristics can also define what style of game you are making, whether that is an arcade-style racer, a simulation, or even a hybrid of the two. Altering **Center of Mass** enables you to change the weight distribution of your vehicle.
+
+In games, the primary use of Center of Mass is for vehicles, but it can also be used for large Physics Bodies encapsulating an irregular shape. In your
+[Physics Asset](Engine/Physics/PhAT), you will often use one large Physics Body to define the majority of the Mass for the vehicle (or large object). The
+Center of Mass will be generated at the center of this Physics Body, which can make the vehicle handle oddly, so you can adjust the Center of Mass to
+account for where the mass of the vehicle is really located.
+
+[(w:400)](CenterOfmass.png)
+
+##Understeering versus Oversteering
+
+Depending on where the Center of Mass is located, you can shift it to be predominantly front-heavy, causing the vehicle to have a tendency toward **understeering** (not turning enough when going around corners), or to be predominantly rear-heavy, causing it to tend toward **oversteering** (turning more sharply than intended). In most cases, it is ideal to find a neutral balance for your Center of Mass so that the vehicle is more easily controlled.
+
+[REGION:imagetable]
+| (w:450) | (w:450) |
+| --- | --- |
+| Understeer | Oversteer |
+[/REGION]
+
+Also, when you consider where to place the Center of Mass, it is worth noting that this choice can have an effect on how your vehicle handles in the air. In this example, the Center of Mass has been lowered and moved closer to the rear of the car. Since it's low to the ground and can get to high speed quickly, the lower rear Center of Mass helps to stabilize the car, especially with jumps!
+
+[REGION:imagetable]
+| [INCLUDE:#originalCoM] | [INCLUDE:#adjustedCoM] |
+| --- | --- |
+| Center of Mass: X: 0, Y: 0, Z: 0 | Center of Mass: X: -25, Y: 0, Z: -10 |
+[/REGION]
+
+
+
+## Debugging Center of Mass
+
+To help you debug mass properties and inertia tensors associated with physics objects while in the Level Editor, you can enable the `Show` flag by going to **Show** > **Advanced** > **Mass Properties**.
+
+[REGION:imagetable]
+| (w:500) | (w:500) |
+| --- | --- |
+| CoM: X: 0, Y: 0, Z: 0 | CoM: X: -25, Y: 0, Z: -10 |
+[/REGION]
+
+The thickness of each axis indicates the moment of inertia magnitude along that axis.
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.INT.udn
index 12c63ae89037..7ed3edb446a5 100644
--- a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.INT.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.INT.udn
@@ -1,33 +1,47 @@
-Availability: Docs
-Title: Vehicle Center of Mass
Crumbs:%ROOT%
+Title: Vehicle Center of Mass
Description: An overview of how Center of Mass works with Vehicles.
+Availability:public
Type: Reference
+Version: 4.15
Parent: Engine/Physics/Vehicles/
Order:
-Version: 4.15
Tags: Vehicles
-SkillLevel: Beginner
-Weight distribution of a vehicle is important to its control, as it affects a variety of its characteristics, like handling, acceleration, and traction. Different vehicle types will require different weight distributions depending on their intended use. For the purposes of game development, these characteristics can also define what style of game you’re making, whether that is an arcade-style racer, a simulation, or even a hybrid of the two. Altering **Center of Mass** enables you to change weight distribution of the vehicle.
+[TOC (start:1)]
-In games, the primary use of Center of Mass is for vehicles, but it can also be used for large Physics Bodies that encompass an irregular shape. In your
-[Physics Asset](Engine/Physics/PhAT), you will often use one large Physics Body to define the majority of the Mass for the vehicle or large object. The
+Weight distribution of a vehicle is important to its control, as it affects a variety of its characteristics, like handling, acceleration, and traction. Different vehicle types will require different weight distributions depending on their intended use. For the purposes of game development, these characteristics can also define what style of game you are making, whether that is an arcade-style racer, a simulation, or even a hybrid of the two. Altering **Center of Mass** enables you to change the weight distribution of your vehicle.
+
+In games, the primary use of Center of Mass is for vehicles, but it can also be used for large Physics Bodies encapsulating an irregular shape. In your
+[Physics Asset](Engine/Physics/PhAT), you will often use one large Physics Body to define the majority of the Mass for the vehicle (or large object). The
Center of Mass will be generated at the center of this Physics Body, which can make the vehicle handle oddly, so you can adjust the Center of Mass to
account for where the mass of the vehicle is really located.
-[(w:400)](CenterOfmass.png)
+[(w:400)](CenterofMass.png)
-Depending on where the Center of Mass is located for your vehicle, you can shift it to be predominantly front-heavy, causing the vehicle to have a tendency toward **understeering** (not turning enough when going around corners), or to be predominantly rear-heavy, causing it to tend toward **oversteering** (turning more sharply than intended). In most cases, it is ideal to find a neutral balance for your center of mass so that the vehicle is more easily controlled.
+##Understeering versus Oversteering
+Depending on where the Center of Mass is located, you can shift it to be predominantly front-heavy, causing the vehicle to have a tendency toward **understeering** (not turning enough when going around corners), or to be predominantly rear-heavy, causing it to tend toward **oversteering** (turning more sharply than intended). In most cases, it is ideal to find a neutral balance for your Center of Mass so that the vehicle is more easily controlled.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+
-Also, when you consider where to place the Center of Mass, it is worth noting that this choice can even have an effect on how your vehicle handles in the air. In this example, the Center of Mass has been lowered and moved closer to the rear of the car. Since it's low to the ground and can get to high speed quickly, the lower rear center of mass helps stabilize the car, especially with jumps!
+Also, when you consider where to place the Center of Mass, it is worth noting that this choice can have an effect on how your vehicle handles in the air. In this example, the Center of Mass has been lowered and moved closer to the rear of the car. Since it's low to the ground and can get to high speed quickly, the lower rear Center of Mass helps to stabilize the car, especially with jumps!
[REGION:imagetable]
| [INCLUDE:#originalCoM] | [INCLUDE:#adjustedCoM] |
@@ -68,13 +82,16 @@ Also, when you consider where to place the Center of Mass, it is worth noting th
## Debugging Center of Mass
-To help you better debug mass properties and inertia tensors associated with physics objects while in the Level Editor, you can enable the showflag by going to **Show** > **Advanced** > **Mass Properties**.
+To help you debug mass properties and inertia tensors associated with physics objects while in the Level Editor, you can enable the `Show` flag by going to **Show** > **Advanced** > **Mass Properties**.
-[REGION:imagetable]
-| (w:500) | (w:500) |
-| --- | --- |
-| CoM: X: 0, Y: 0, Z: 0 | CoM: X: -25, Y: 0, Z: -10 |
-[/REGION]
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
The thickness of each axis indicates the moment of inertia magnitude along that axis.
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.JPN.udn
index 01eb94cc5e15..4c52971f1e38 100644
--- a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.JPN.udn
@@ -1,45 +1,53 @@
-INTSourceChangelist:0
-Availability: Docs
-Title: Vehicle Center of Mass
-Description: An overview of how Center of Mass works with Vehicles.
-Type: Reference
-Parent: Engine/Physics/Vehicles/
+INTSourceChangelist:3469385
+Crumbs:%ROOT%
+Title:ビークルの重心
+Description:重心がビークルに及ぼす作用の概要
+Availability:public
+Type:Reference
+Version:4.15
+Parent:Engine/Physics/Vehicles/
Order:
-Version: 4.15
-Tags: Vehicles
-SkillLevel: Beginner
+Tags:Vehicles
-Weight distribution of a vehicle is important to its control by affecting a variety of its characteristics, like handling, acceleration, and traction.
-Different vehicle types will require different weight distributions depending on their intended use. For the purposes of game development, these characteristics
-can also define what style of game you’re making, whether that is an arcade-style racer, a simulation, or even a hybrid of the two. **Center of Mass**, in real
-life and simulated ones, enables you to shift part of this control in handling, acceleration, and traction based on the weight distribution of the vehicle.
+[TOC (start:1)]
-In games, the primary use of Center of Mass is for vehicles, but it can also be used for large Physics Bodies that encompass an irregular shape. In your
-[Physics Asset](Engine/Physics/PhAT), you will often use one large Physics Body to define the majority of the Mass for the vehicle or large object. The
-Center of Mass will be generated at the center of this Physics Body, which can make the vehicle handle oddly, so you can adjust the Center of Mass to
-account for where the mass of the vehicle is really located.
+ビークルのウェイト分布は、制御上重要です。ハンドリング、加速、トラクションなどの様々な特性に影響を及ぼすからです。ビークルの種類が違うと、用途に応じて異なる重心分布が必要になります。ゲーム制作では、こうした特性によって制作しているゲームのスタイルが決まります。アーケード スタイルのレーシング ゲーム、シミュレーター、またはこの 2 つを組み合わせたものなどがあります。**Center of Mass (重心)** を変更すると、ビークルのウェイト分布を変更することができます。
-[(w:400)](CenterOfmass.png)
+ゲームでは、重心の主な用途はビークルですが、不規則な形状を囲む大きな物理ボディに対しても使用することができます。[Physics アセット](Engine/Physics/PhAT) では、
+ひとつの大きな物理ボディを使って、ビークル (または大きなオブジェクト) の質量の大部分を定義することが多いでしょう。重心は
+こうした物理ボディの中心で生成されますが、ビークルの操作が不自然になることがあります。そのため、ビークルの質量が実際にある場所を考慮して
+重心を調整します。
-Depending on where the Center of Mass is located for your vehicle, you can shift it to be predominantly front-heavy where the vehicle will have a tendency to
-**understeer** causing it to not turn enough when going around corners, or the vehicle can be rear-heavy causing it to **oversteer** where it will
-turn more sharply than intended. In most cases, it is ideal to find a neutral balance for your center of mass so that the vehicle is more easily controlled.
+[(w:400)](CenterofMass.png)
+##アンダーステアリングとオーバーステアリング
+
+重心の位置に応じて、主に前側を重くするようにシフトし、ビークルが **アンダーステアリング** (コーナーを回るときに十分に曲がらない) 傾向を持つようにしたり、主に後部側を重くするようにして、**オーバーステアリング** (意図したよりも曲がる) 傾向になるようにします。ほとんどの場合、ビークルの制御が簡単になるように重心のニュートラル バランスを見つけるのが理想です。
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+
-Also, when you consider where to place the Center of Mass, it can have an effect on how your vehicle handles in the air. In this example, the Center of Mass has been
-lowered and moved closer to the rear of the car. Since it's low to the ground and can get to high speed quickly, the lower rear center of mass helps stabilize the car, especially
-with jumps!
+重心をどこに置くかを検討する場合、ビークルが宙に浮いたときの処理に影響を及ぼすことを覚えておいてください。この例では重心は低くなっていて車の後部に近くなっています。地面から低いため、簡単に高速になり、重心が後部の低い場所にあるということは車を安定させます。特にジャンプの場合はそうです。
[REGION:imagetable]
| [INCLUDE:#originalCoM] | [INCLUDE:#adjustedCoM] |
| --- | --- |
-| blah | blah2|
+| 重心:X:0, Y:0, Z:0 | 重心:X: -25, Y:0, Z: -10 |
[/REGION]
-## Debugging Center of Mass
+## 重心のデバッグ
-To help you better debug mass properties and inertia tensor associated with physics object while in the Level Editor, you can enable the showflag
-by going to **Show** > **Advanced** > **Mass Properties**.
+レベル エディタで物理オブジェクトに関連する質量のプロパティと慣性テンソルをデバッグするために **[Show** > **Advanced** > **Mass Properties]** の順に進んで `Show` フラグを有効にします。
-[REGION:imagetable]
-| (w:500) | (w:500) |
-| --- | --- |
-| CoM: X: 0, Y: 0, Z: 0 | CoM: X: -25, Y: 0, Z: -10 |
-[/REGION]
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
-The thickness of each axis indicates the moment of inertia magnitude along that axis.
+各軸の太さは軸に沿った慣性モーメントの大きさを示しています。
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.KOR.udn
new file mode 100644
index 000000000000..eae6fef03c28
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleCenterOfMass/VehicleCenterOfMass.KOR.udn
@@ -0,0 +1,99 @@
+INTSourceChangelist:3469385
+Crumbs:%ROOT%
+Title: 비히클 질량 중심
+Description: 비히클 관련 Center of Mass, 질량 중심의 작동방식 개요입니다.
+Availability:public
+Type: Reference
+Version: 4.15
+Parent: Engine/Physics/Vehicles/
+Order:
+Tags: Vehicles
+
+
+[TOC (start:1)]
+
+비히클의 무게 배분(weight distribution)은 핸들링, 가속, 견인과 같은 다양한 특성에 영향을 끼치므로 조작에 있어 중요한 부분입니다. 사용 용도에 따라 각기 다른 비히클 유형마다 각기 다른 무게 배분이 필요합니다. 게임 개발 목적상 이러한 특성은 어떤 스타일의 게임을 만드는가를 정의하기도 합니다. 아케이드 스타일의 레이싱 게임인지, 시뮬레이션인지, 아니면 그 둘의 하이브리드가 될 수도 있습니다. **Center of Mass** (질량 중심)을 바꾸면 비히클의 무게 배분을 변경할 수 있습니다.
+
+게임에서 질량 중심의 주 용도는 비히클 용이지만, 일정치 않은 모양을 캡슐화시킨 큰 피직스 바디에도 사용할 수 있습니다.
+[피직스 애셋](Engine/Physics/PhAT) 에서 종종 큰 피직스 바디 하나를 사용하여 비히클( 또는 큰 오브젝트)의 질량 대부분을 정의하게 됩니다.
+질량 중심은 이 피직스 바디의 중앙에 생성되므로, 비히클 핸들링이 이상해질 수가 있기에 비히클의 질량이 실제 있는 곳에 오도록
+질량 중심을 조절하면 됩니다.
+
+[(w:400)](CenterofMass.png)
+
+##언더스티어링 vs 오버스티어링
+
+질량 중심의 위치에 따라 비히클 중심을 대개 전방에 두어 **언더스티어링** (코너를 돌 때 불충분한 회전) 경향을 띄도록 만들 수도 있고, 후방에 두어 **오버스티어링** (의도한 것보다 날카로운 회전) 경향을 띄도록 만들 수도 있습니다. 대부분의 경우, 비히클의 보다 쉬운 제어를 위해 질량 중심의 중립 균형 위치를 찾는 것이 이상적입니다.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+
+
+또 질량 중심 배치 위치를 고려할 때, 비히클이 공중에 있을 때에도 영향을 준다는 점 언급해 둘 가치가 있겠습니다. 이 예제에서는 질량 중심을 낮춘 뒤 차량 배후 가까이 이동시켰습니다. 땅에 낮게 붙어 있어 빠른 고속 도달이 가능하므로, 질량 중심을 차량 낮은 배후 위치에 설정하면 특히나 점프할 때 안정화에 도움이 됩니다!
+
+[REGION:imagetable]
+| [INCLUDE:#originalCoM] | [INCLUDE:#adjustedCoM] |
+| --- | --- |
+| 질량 중심: X: 0, Y: 0, Z: 0 | 질량 중심: X: -25, Y: 0, Z: -10 |
+[/REGION]
+
+
+
+## 질량 중심 디버깅
+
+레벨 에디터의 **Show** (표시) > **Advanced** (고급) > **Mass Properties** (질량 프로퍼티)에서 `표시` 플래그를 켜면 피직스 오브젝트에 관련된 질량 프로퍼티 및 관성 텐서 디버깅에 도움이 됩니다.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+각 축의 두께는 해당 축의 관성 모멘트 크기를 나타냅니다.
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.CHN.udn
new file mode 100644
index 000000000000..8730c65d9865
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.CHN.udn
@@ -0,0 +1,37 @@
+INTSourceChangelist:0
+Availability: Public
+crumbs:%ROOT%
+Title: 1 - Required Project Setup
+Description: Creating a new project with the specifications we need.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:1
+Tags: Vehicles
+
+
+
+
+[Nav]
+
+For this guide, we'll use a Blank Template project, however, tread with caution if you use an existing project or one of the other template projects because in later steps of this
+guide you may run into conflicts with some parts that are already setup or setup differently than intended by this guide.
+
+## Steps
+
+1. Open **Unreal Engine** from the Launcher. The [Project Browser](Engine/Basics/Projects/Browser) will appear.
+
+1. Click on the **New Project** tab and then under the **Blueprint** tab, select **Blank** so that you have a clean starting point. You won't need Starter Content, so you can make sure that is set to **No Starter Content**. We'll need a to enter a project name, so we'll use "QuickStart". We can now click **Create Project** and get started.
+
+ [](CreateProject.png)
+
+The **Unreal Editor** will now open our new project.
+
+[REGION:raw]
+(w:800)
+[/REGION]
+
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.INT.udn
new file mode 100644
index 000000000000..fbbbc7f79661
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.INT.udn
@@ -0,0 +1,36 @@
+Availability: Public
+crumbs:%ROOT%
+Title: 1 - Required Project Setup
+Description: Creating a new project with the specifications we need.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:1
+Tags: Vehicles
+
+
+
+
+[Nav]
+
+For this guide, we'll use a Blank Template project, however, tread with caution if you use an existing project or one of the other template projects because in later steps of this
+guide you may run into conflicts with some parts that are already setup or setup differently than intended by this guide.
+
+## Steps
+
+1. Open **Unreal Engine** from the Launcher. The [Project Browser](Engine/Basics/Projects/Browser) will appear.
+
+1. Click on the **New Project** tab and then under the **Blueprint** tab, select **Blank** so that you have a clean starting point. You won't need Starter Content, so you can make sure that is set to **No Starter Content**. We'll need a to enter a project name, so we'll use "QuickStart". We can now click **Create Project** and get started.
+
+ [](CreateProject.png)
+
+The **Unreal Editor** will now open our new project.
+
+[REGION:raw]
+(w:800)
+[/REGION]
+
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.JPN.udn
new file mode 100644
index 000000000000..63b538e985c1
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.JPN.udn
@@ -0,0 +1,37 @@
+INTSourceChangelist:3400712
+Availability:Public
+crumbs:%ROOT%
+Title:1 - 必要なプロジェクト設定
+Description:必要な内容を指定して新規プロジェクトを作成します。
+Type:how-to
+SkillLevel:Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:1
+Tags:Vehicles
+
+
+
+
+[Nav]
+
+このガイドでは Blank Template プロジェクトを使用しますが、既存のプロジェクトや他のテンプレートのプロジェクトを使う場合は注意してください。このガイドの後の方のステップの内容と合わなくなるかもしれません。
+既にご自分でセットアップが済んでいたり、本ガイドで意図しているものとは違うものをセットアップしている可能性があるからです。
+
+## ステップ
+
+1. ランチャーから **アンリアル エンジン** を開きます。[Project Browser](Engine/Basics/Projects/Browser) が表示されます。
+
+1. **[New Project]** タブをクリックして、**[Blueprint (ブループリント)]** タブから **Blank** を選んで何もない状態から開始します。Starter Content は不要なため、**[No Starter Content]** に設定するようにしてください。プロジェクト名を入力する必要があるので、ここでは「QuickStart」とします。**[Create Project (プロジェクトを作成)]** をクリックすると開始します。
+
+ [](CreateProject.png)
+
+**アンリアル エディタ** が新規プロジェクトを開きます。
+
+[REGION:raw]
+(w:800)
+[/REGION]
+
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.KOR.udn
new file mode 100644
index 000000000000..3c474a6d8961
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/1/VehicleProjectSetup.KOR.udn
@@ -0,0 +1,37 @@
+INTSourceChangelist:3400712
+Availability: Public
+crumbs:%ROOT%
+Title: 1 - 필수 프로젝트 셋업
+Description: 필요에 맞는 새 프로젝트를 만듭니다.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:1
+Tags: Vehicles
+
+
+
+
+[Nav]
+
+여기서는 공백 템플릿 프로젝트를 사용하지만, 기존 프로젝트를 사용하거나 다른 템플릿 프로젝트를 사용하는 경우, 나중에 여기서 의도한 셋업과 다르게 되어 있는 경우 충돌이 나는 부분이
+생길 수 있으므로 주의해야 합니다.
+
+## 단계
+
+1. 런처에서 **언리얼 엔진** 을 엽니다. [프로젝트 브라우저](Engine/Basics/Projects/Browser) 가 나타납니다.
+
+1. **블루프린트** 탭 아래 **새 프로젝트** 탭을 클릭하고, **공백** 을 선택하여 깨끗한 상태에서 시작합니다. 시작용 콘텐츠는 필요치 않으니, **시작용 콘텐츠 없음** 으로 설정합니다. 프로젝트 이름을 입력해야 하므로, QuickStart 라 하겠습니다. 이제 **프로젝트 생성** 을 클릭하여 시작하면 됩니다.
+
+ [](CreateProject.png)
+
+이제 **언리얼 에디터** 에 새 프로젝트가 열립니다.
+
+[REGION:raw]
+(w:800)
+[/REGION]
+
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.CHN.udn
new file mode 100644
index 000000000000..067bc4121086
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.CHN.udn
@@ -0,0 +1,112 @@
+INTSourceChangelist:0
+Availability: Public
+crumbs:
+Title: 1 - Create a TireConfig Data Asset and Wheel Blueprint
+Description: In this part of the guide, we'll create the TireConfig Data Assets that we can use with our Wheel Blueprints for the Vehicle.
+Type: Multi-step
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:1
+Tags: Vehicles
+
+[Nav]
+
+[TOC(start:2 end:2)]
+
+In this first step to creating our own vehicle, we have two parts that go together to make up the wheels for our vehicle; the TireConfig Data Asset and the Wheel Blueprint class. We'll start by first
+creating the TireConfig Data Asset and then move on to create the Wheel Blueprint that houses a bunch of properties for our wheels and where the TireConfig data is assigned to.
+
+
+Follow along with the steps below to get started creating your TireConfig data and then using that with a Wheel Blueprint.
+
+## Tire Config Data Asset
+
+The **TireConfig Data Asset** is used to control **Friction Scale**. This value not only affects the raw friction of the wheel but also scales the values for how difficult (or easy) it is for the
+wheel to slide while in a hard turn. There is also the additional option of **Tire Friction Scales** which enables you to specify a specific Friction Scale to different Physical Material types.
+
+
+
+### Create your TireConfig Data Asset
+
+1. In the **Content Browser** click the **Add New** Button, then hover over **Miscellaneous** and then select **Data Asset** from the Context Menu.
+1. In the **Pick Data Asset Class** window, select **TireConfg** to create this type of Data Asset.
+1. In your **Content Browser** the new asset will be created. Make sure to give it a recognizable name so you can easily locate it later.
+
+[REGION:raw]
+(convert:false)
+[/REGION]
+
+[REGION:warning]
+In the Pick Data Asset Class window, you may notice that there is also a **TireType** Data Asset class. This is a deprecated function and is only used when upgrading older projects to 4.15 or a later version.
+You should not have any reason to use this data asset type if using Unreal Engine 4.15 or later.
+[/REGION]
+
+
+## Wheel Blueprints
+
+In most cases, you will have at least two wheel types; a wheel that is affected by steering and one that is not. Also, this may be the case for having differently sized wheels for the front or the back, in
+which case you have full control over setting the differing radii, mass, width, handbrake effect, suspension, and many other properties to give your vehicle the handling you desire.
+
+[REGION:lightbox]
+[(h:400)](WheelBlueprintDetailsPanel.png)
+[/REGION]
+[REGION:caption]
+_Click the image for full size view._
+[/REGION]
+
+### Create your Wheel Blueprint
+
+1. In the **Content Browser** click the **Add New** button, then select **Blueprint Class** from the menu.
+1. In the **Pick Parent Class** window, under **All Classes** search for "wheel" and then select **VehicleWheel**.
+1. In your **Content Browser** the new Blueprint asset will be created. Make sure to give it a recognizable name so you can easily locate it later.
+1. **Optional** - Repeat these steps again so that you have a **front** and **rear** wheel type.
+
+[REGION:raw]
+(convert:false)
+[/REGION]
+
+### Editing the Wheel Blueprint
+
+Now that you've got your Wheel Blueprint(s), open them in the Blueprint Editor, and you'll see all the available options to edito your wheels!
+
+There are five properties that we need to initially change for each wheel, as the rest of them will change how the vehicle performs and should be tweaked later as you start to test out your vehicle in your
+own game.
+
+* **Shape Radius**
+* **Shape Width**
+* **Affected by Handbrake (usually restricted to the rear wheels)**
+* **Steer Angle (usually only the front wheels)**
+
+
+
+[REGION:note]
+The properties here are set to match the Buggy from Vehicle Game. If you're using your own Skeletal Mesh you may need to use different values for the **Shape Radius** and **Shape Width**.
+[/REGION]
+
+Now, under the **Tire** section, you can assign the Tire Config Data Asset that you initially created using the **Tire Config** selection box.
+
+[REGION:raw]
+
+[/REGION]
+
+## End Result
+
+At this point, you've set up your Tire Config Data Asset that is used to control how much the tires slide on any surface and setup the Wheel Blueprint that can be used to specify all the different
+properties of your wheel. In the next step, we'll continue creating the assets we need that make up our vehicle by creating the Animation Blueprint that handles all the necessary animation information
+for our vehicle, like spinning tires, steering, suspension, etc.
+
+
+[Nav]
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.INT.udn
new file mode 100644
index 000000000000..93862b44f522
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.INT.udn
@@ -0,0 +1,109 @@
+Availability: Public
+crumbs:%ROOT%
+Title: 2 - Creating a TireConfig Data Asset and Wheel Blueprint
+Description: In this step, we'll create the TireConfig Data Assets that we can use with our Wheel Blueprints for our Vehicle.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:2
+Tags: Vehicles
+
+
+
+[Nav]
+
+In this first step to creating our own vehicle, we have two parts that go together to make up the wheels for the vehicle; the TireConfig Data Asset and the Wheel Blueprint class. We'll start by first
+creating the TireConfig Data Asset and then move on to create the Wheel Blueprint that houses properties for our wheels, including where the TireConfig data is assigned to.
+
+Follow along with the steps below to get started creating your TireConfig data and then using that with a Wheel Blueprint.
+
+## Tire Config Data Asset
+
+The **TireConfig Data Asset** is used to control **Friction Scale**. This value not only affects the raw friction of the wheel but also scales the values for how difficult (or easy) it is for the
+wheel to slide while in a hard turn. There is also the additional option of **Tire Friction Scales**, which enables you to specify a specific Friction Scale to different Physical Material types.
+
+
+
+### Create your TireConfig Data Asset
+
+1. In the **Content Browser**, click the **Add New** Button, then hover over **Miscellaneous** and then select **Data Asset** from the Context Menu.
+1. In the **Pick Data Asset Class** window, select **TireConfg** to create this type of Data Asset.
+1. The new asset will be created in your **Content Browser**. Make sure to give it a recognizable name so you can easily locate it later.
+
+[REGION:raw]
+(convert:false)
+[/REGION]
+
+[REGION:warning]
+In the Pick Data Asset Class window, you may notice that there is also a **TireType** Data Asset class. This is a deprecated function and is only used when upgrading older projects to Unreal Engine, version 4.15 (or a later version).
+You should not have any reason to use this data asset type if using Unreal Engine, version 4.15 (or later).
+[/REGION]
+
+## Wheel Blueprints
+
+In most cases, you will have at least two wheel types; a wheel that is affected by steering and one that is not. Also, this may be the case for having differently sized wheels for the front or the back, in
+which case, you have full control over setting the differing radii, mass, width, handbrake effect, suspension, and many other properties to give your vehicle the handling you desire.
+
+[REGION:lightbox]
+[(h:400)](WheelBlueprintDetailsPanel.png)
+[/REGION]
+[REGION:caption]
+_Click the image for full size view._
+[/REGION]
+
+### Create your Wheel Blueprint
+
+1. In the **Content Browser**, click the **Add New** button, then select **Blueprint Class** from the menu.
+1. In the **Pick Parent Class** window, under **All Classes**, search for "wheel" and then select **VehicleWheel**.
+1. The new asset will be created in your **Content Browser**. Make sure to give it a recognizable name so that you can easily locate it later.
+1. **Optional** - Repeat these steps again so that you have a **front** and **rear** wheel type.
+
+[REGION:raw]
+(convert:false)
+[/REGION]
+
+### Editing the Wheel Blueprint
+
+Now that you've got your Wheel Blueprint(s), open them in the Blueprint Editor, where you'll see all the available options to edit your wheels!
+
+There are five properties that we need to initially change for each wheel, as the rest of them will change how the vehicle performs (and should be tweaked later) as you start to test out the vehicle in your
+own game.
+
+* **Shape Radius**
+* **Shape Width**
+* **Affected by Handbrake (usually restricted to the rear wheels)**
+* **Steer Angle (usually only the front wheels)**
+
+
+
+[REGION:note]
+The properties here are set to match the Buggy from Vehicle Game. If you're using your own Skeletal Mesh, you may need to use different values for the **Shape Radius** and **Shape Width**.
+[/REGION]
+
+Now, under the **Tire** section, you can assign the Tire Config Data Asset that you initially created using the **Tire Config** selection box.
+
+[REGION:raw]
+
+[/REGION]
+
+## End Result
+
+At this point, you've set up your Tire Config Data Asset, which is used to control how much the tires slide on any surface, having set up the Wheel Blueprint that can be used to specify all of the different
+properties for your wheel. In the next step, you'll continue creating the assets you need, which make up our vehicle ,by creating the Animation Blueprint that handles all of the necessary animation information
+for our vehicle (such as spinning tires, steering, suspension, etc).
+
+
+[Nav]
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.JPN.udn
new file mode 100644
index 000000000000..9719e1003340
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.JPN.udn
@@ -0,0 +1,110 @@
+INTSourceChangelist:3400712
+Availability:Public
+crumbs:%ROOT%
+Title:2 - TireConfig Data アセットと Wheel ブループリントを作成する
+Description:ビークルの Wheel ブループリントと合わせて使用できる TireConfig Data アセットを作成します。
+Type:how-to
+SkillLevel:Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:2
+Tags:Vehicles
+
+
+
+[Nav]
+
+ビークルを作成するこの最初のステップでは、ビークルの車輪を構成する 2 つのパーツ、TireConfig Data アセットと Wheel Blueprint クラスを作成します。まず、
+TireConfig Data アセットを作成します。次に TireConfig データを割り当てる場所など車輪のプロパティを収容する Wheel ブループリントを作成します。
+
+以下の手順に従い、TireConfig データの作成を開始し、それを Wheel ブループリントで使用します。
+
+## Tire Config Data アセット
+
+**TireConfig Data アセット** を使って **Friction Scale** を制御します。この値は、車輪の未加工の摩擦力に影響を与えるだけでなく、
+きついカーブで車輪がどれくらいスライドしづらいか (またはスライドしやすいか) についてもスケーリングします。**Tire Friction Scales** というオプションもあります。これは、特定の Friction Scale を様々な Physical Material タイプに指定することができます。
+
+
+
+### TireConfig Data アセットの作成
+
+1. **コンテンツ ブラウザ** で、 **[Add New (新規追加)]** ボタンをクリックします。次に **Miscellaneous** にマウスをかざして、コンテキスト メニューから **Data Asset** を選択します。
+1. **[Pick Data Asset Class]** ウィンドウで、**TireConfg** を選択してこのタイプの Data Asset を作成します。
+1. **コンテンツ ブラウザ** に新規アセットが作成されます。後で簡単に見つけられるようにわかりやすい名前を付けてください。
+
+[REGION:raw]
+(convert:false)
+[/REGION]
+
+[REGION:warning]
+[Pick Data Asset Class] ウィンドウに、**TireType** Data Asset クラスもあるかもしれません。これは非推奨の関数であり、古いオブジェクトをアンリアル エンジン 4.15 以降のバージョンにアップグレードする場合に限り使用します。
+アンリアル エンジン 4.15 以降のバージョンを使用している場合は、このデータ アセット タイプを使用する理由はありません。
+[/REGION]
+
+## Wheel ブループリント
+
+ほとんどの場合、少なくとも 2 種類の車輪があります。ステアリングの影響を受ける車輪と影響を受けない車輪です。また、前輪と後輪でサイズが異なる車輪を持つことがあります。
+この場合、半径、質量、幅、ハンドブレーキのエフェクト、サスペンションなど多くのプロパティを十分に制御する設定があります。
+
+[REGION:lightbox]
+[(h:400)](WheelBlueprintDetailsPanel.png)
+[/REGION]
+[REGION:caption]
+_画像をクリックしてフルサイズで表示_
+[/REGION]
+
+### Wheel ブループリントの作成
+
+1. **コンテンツ ブラウザ** で、 **[Add New (新規追加)]** ボタンをクリックします。次にメニューから **[Blueprint Class]** を選択します。
+1. **[Pick Parent Class]** ウィンドウで "wheel" に対する **全クラス** 検索で **[VehicleWheel]** を選択します。
+1. **コンテンツ ブラウザ** に新規アセットが作成されます。後で簡単に見つけられるようにわかりやすい名前を付けてください。
+1. **オプション** - 上記のステップを繰り返して **front** と **rear** wheel を用意します。
+
+[REGION:raw]
+(convert:false)
+[/REGION]
+
+### Wheel ブループリントを編集する
+
+Wheel ブループリントが用意できたので、Blueprint エディタで開きます。車輪を編集するために利用可能なオプションがすべて表示されます。
+
+各車輪について最初に変更すべきプロパティが 5 つあります。それ以外のものはゲームでビークルをテストするとビークルの動作に影響を与えます
+ (後で微調整してください) 。
+
+* **Shape Radius** (形状の半径)
+* **Shape Width** (形状の幅)
+* **Affected by Handbrake** (ハンドブレーキによる影響。通常は、後輪に限定)
+* **Steer Angle** (ステアリング角、通常は前輪のみ)
+
+
+
+[REGION:note]
+こうしたプロパティは Vehicle Game の Buggy と同じように設定されます。独自のスケルタルメッシュを使用する場合は、**Shape Radius** と **Shape Width** に別の値を使用する必要があるかもしれません。
+[/REGION]
+
+**[Tire]** セクションで、**Tire Config** 選択ボックスを使って、最初に作成した Tire Config Data Asset を割り当てることができます。
+
+[REGION:raw]
+
+[/REGION]
+
+## 最終結果
+
+ここまでで車輪の様々なプロパティを指定するために使用できる Wheel ブループリントをセットアップし、Tire Config Data アセットをセットアップしました。
+これは、タイヤがサーフェス上をどの程度スライドするかを制御するために使用することができます。次のステップでは、ビークルを構成する必要なアセットの作成を続けます。ビークルで必要なすべてのアニメーション情報 (タイヤのスピン、ステアリング、サスペンションなど) を処理する
+Animation ブループリントを作成します。
+
+
+[Nav]
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.KOR.udn
new file mode 100644
index 000000000000..51a04f01b75b
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/2/CreatingWheelBP.KOR.udn
@@ -0,0 +1,110 @@
+INTSourceChangelist:3400712
+Availability: Public
+crumbs:%ROOT%
+Title: 2 - TireConfig 데이터 애셋 및 휠 블루프린트 생성
+Description: 비히클용 휠 블루프린트에 사용할 수 있는 TireConfig 데이터 애셋을 만들어 봅니다.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:2
+Tags: Vehicles
+
+
+
+[Nav]
+
+이번 비히클 제작 첫 단계에서는, 두 부분을 조립하여 비히클의 휠을 만듭니다. 바로 TireConfig 데이터 애셋과 휠 블루프린트 클래스입니다. 먼저
+TireConfig 데이터 애셋을 만든 뒤 휠의 프로퍼티가 들어있는 휠 블루프린트를 만들겠습니다. 이 블루프린트에는 TireConfig 데이터가 할당됩니다.
+
+TireConfig 데이터를 만들고 휠 블루프린트에 사용하는 방법은 다음과 같습니다.
+
+## Tire Config 데이터 애셋
+
+**TireConfig Data Asset** 은 **Friction Scale** (마찰 스케일) 제어에 사용됩니다. 이 값은 휠의 순수 마찰에 영향을 줄 뿐 아니라 하드 턴 도중 휠이 얼마나 잘 (또는 안) 미끄러지도록 하는 값의 스케일을 조절하기도 합니다.
+**Tire Friction Scales** (타이어 마찰 스케일) 에는 부가 옵션이 있어, 특정 마찰 스케일을 다양한 피지컬 머티리얼 유형으로 지정할 수 있습니다.
+
+
+
+### TireConfig 데이터 애셋 생성
+
+1. **콘텐츠 브라우저** 에서 **신규 추가** 버튼을 클릭한 뒤, 맥락 메뉴에서 **기타** 아래 **데이터 애셋** 을 선택합니다.
+1. **데이터 애셋 클래스 선택** 창에서 **TireConfig** 을 선택하여 이 유형의 데이터 애셋을 만듭니다.
+1. **콘텐츠 브라우저** 에 새로운 애셋이 생깁니다. 나중에 쉽게 찾을 수 있도록 알아보기 좋은 이름을 지어주세요.
+
+[REGION:raw]
+(convert:false)
+[/REGION]
+
+[REGION:warning]
+데이터 애셋 클래스 선택 창에는 **TireType** 데이터 애셋 클래스도 있는 것이 보일 수 있습니다. 이는 폐기된 함수로, 예전 프로젝트를 언리얼 엔진 4.15 (이상) 버전으로 업그레이드할 때만 사용됩니다.
+언리얼 엔진 4.15 (이상) 버전을 사용한다면 이 데이터 애셋 유형을 사용할 이유는 없습니다.
+[/REGION]
+
+## 휠 블루프린트
+
+대부분의 경우 최소 두 개의 휠 유형이 있습니다. 스티어링에 영향받는 휠이 있고, 받지 않는 휠이 있습니다.
+또한, 앞 또는 뒤 휠 크기가 다른 경우가 될 수 있습니다. 그럴 때는 다양한 반경, 질량, 폭, 핸드브레이크 효과, 서스펜션, 기타 여러가지 속성으로 비히클에 원하는 핸들링 느낌을 낼 수 있습니다.
+
+[REGION:lightbox]
+[(h:400)](WheelBlueprintDetailsPanel.png)
+[/REGION]
+[REGION:caption]
+_클릭하면 이미지 원본을 확인합니다._
+[/REGION]
+
+### 휠 블루프린트 생성
+
+1. **콘텐츠 브라우저** 에서 **신규 추가** 버튼을 클릭한 뒤, 메뉴에서 **블루프린트 클래스** 를 선택합니다.
+1. **부모 클래스 선택** 창에서 **모든 클래스** 아래 wheel 을 검색한 뒤 **VehicleWheel** 을 선택합니다.
+1. **콘텐츠 브라우저** 에 새 애셋이 생성됩니다. 나중에 쉽게 찾을 수 있도록 알아보기 쉬운 이름을 지어주세요.
+1. **옵션** - 위 단계를 반복하여 **front** 와 **rear** 휠 유형을 만드세요.
+
+[REGION:raw]
+(convert:false)
+[/REGION]
+
+### 휠 블루프린트 편집
+
+휠 블루프린트가 생겼으니, 블루프린트 에디터에서 열어보면 휠 편집에 쓸 수 있는 모든 옵션이 보일 것입니다!
+
+각 휠마다 변경해야 하는 초기 프로퍼티가 다섯 있고, 나머지는 비히클 작동 방식을 변경하는 것이기에 나중에 실제 게임에서 테스트해 보며 조정해 줘야 할 수
+있습니다.
+
+* **Shape Radius** 셰이프 반경
+* **Shape Width** 셰이프 폭
+* **Affected by Handbrake (usually restricted to the rear wheels)** 핸드브레이크에 영향받음 (보통 뒷바퀴에만 제한)
+* **Steer Angle (usually only the front wheels)** 스티어 각도 (보통 앞바퀴만)
+
+
+
+[REGION:note]
+여기 프로퍼티는 비히클 게임의 버기에 일치하도록 설정되어 있습니다. 별도의 스켈레탈 메시를 사용하는 경우, **Shape Radius** 와 **Shape Width** 에 다른 값을 사용해야 할 수 있습니다.
+[/REGION]
+
+이제 **Tire** 섹션 아래, **Tire Config** 선택 박스를 사용하여 처음에 만든 Tire Config 데이터 애셋을 할당할 수 있습니다.
+
+[REGION:raw]
+
+[/REGION]
+
+## 최종 결과
+
+이 시점에서 타이어가 표면에 얼마만큼 미끄러지나 조절하는 데 사용되는 Tire Config 데이터 애셋 구성과, 휠에 각기 다른 프로퍼티를 지정하는 데 사용할 수 있는 휠 블루프린트 구성도 마쳤습니다.
+다음 단계에서는 계속해서 비히클을 만드는 데 필요한 애셋을 제작할텐데, 애니메이션 블루프린트를 만들어 비히클에 필요한 (타이어 회전, 스티어링, 서스펜션 등의)
+필수 애니메이션 정보를 전부 처리하도록 하겠습니다.
+
+
+[Nav]
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.CHN.udn
new file mode 100644
index 000000000000..d7ca43fdc525
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.CHN.udn
@@ -0,0 +1,79 @@
+INTSourceChangelist:0
+Availability: Public
+crumbs:
+Title: 2 - Creating a Vehicle Animation Blueprint
+Description: In this step we will create the Animation Blueprint that controls our vehicles animations.
+Type: Multi-step
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:2
+Tags: Vehicles
+
+
+
+[Nav]
+
+[TOC(start:2 end:2)]
+
+At this point, you've created the TireConfig Data Asset and your Wheel Blueprint(s) that we'll use later with the Vehicle Blueprint. In this step, we'll continue to ready our content by
+creating an Animation Blueprint that drives all of our animation needs for the wheels on the vehicle!
+
+## Animation Blueprints
+
+The Animation Blueprint will be used to specifically control the animation of our Vehicle Skeletal Mesh so that it has animations specific to a vehicle, like spinning tires, suspension,
+handbrakes, and steering. To offload a lot of the work in creating animations for these types of things you can use the **Wheel Handler** node to easily drive these types of animations.
+
+### Wheel Handler Node
+
+Where the Animation Blueprint is used to get and control our animations for the vehicle, more specifically, the **Wheel Handler** node makes controlling all these animations for the vehicle
+fairly easy with little to no additional setup! It just grabs the necessary information from the wheels (How fast is it spinning? Is it affected by the Handbrake? What are the suspension
+settings for this wheel?) and translates that to animation on the bone the wheel is associated with.
+
+
+
+
+## Creating the Animation Blueprint
+
+1. In the **Content Browser** click the **Add New** button, then hover over **Animation** and then select **Animation Blueprint** from the menu list.
+1. In the **Create Animation Blueprint** window, locate and select **your** Skeleton from the list that is for your vehicle. Then click **OK**.
+
+ [REGION:tip]
+ Alternatively, you can create an Animation Blueprint directly from your Skeletal Mesh by selecting it in the Content Browser and from the context menu select **Create** > **Anim Blueprint**.
+ [/REGION]
+
+ [REGION:raw]
+ (convert:false)
+ [/REGION]
+
+1. Now that you've got an Animation Blueprint to work from, you can open it from the Content Browser and in the **Anim Graph** you'll want to start by bringing up the
+context menu and then search for the **Mesh Space Ref Pose** node and select it from the list to create it.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. Next, right-click in the **Anim Graph** again to bring up the context menu and then search for the **Wheel Handler** node and select it from the list to create it.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. Now connect the nodes so that your Anim Graph looks like this one.
+
+
+
+1. **Optional** If you have additional struts or other suspension needs, like the Buggy from Vehicle Game, you will need to additional nodes in your Animation Graph to handle the joints that
+affect those polygons. In the Buggy from Vehicle Game the extra joints are used to control the axle connections to the wheels. These are driven by a simple **Look At** node, which given the
+wheel joints will be driven by the Wheel Handler node and the Look At nodes will make sure the suspension stays attached to the wheels.
+
+(w:850)
+
+
+## End Result
+
+That's it for setting up the Animation Blueprint! The **Component to Local** conversion node will be created automatically and the Animation Blueprint will now drive the wheels of the vehicle.
+Continue on to the next step to learn how to create your Vehicle Blueprint that brings all the previous steps together!
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.INT.udn
new file mode 100644
index 000000000000..895f7cd46fc4
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.INT.udn
@@ -0,0 +1,83 @@
+Availability: Public
+crumbs:%ROOT%
+Title: 3 - Creating a Vehicle Animation Blueprint
+Description: In this step, we will create the Animation Blueprint that controls our vehicles animations.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:3
+Tags: Vehicles
+
+[Nav]
+
+At this point, you've created the TireConfig Data Asset and your Wheel Blueprint(s), which you'll use later with the Vehicle Blueprint. In this step, you'll continue to ready your content by
+creating an Animation Blueprint that drives all of your animation needs for the wheels on the vehicle.
+
+## Animation Blueprints
+
+The Animation Blueprint will be used to control the animation of our Vehicle Skeletal Mesh so that it has animations specific to a vehicle, like spinning tires, suspension,
+handbrakes, and steering. To offload a lot of the work in creating animations for these types of things, you can use the **Wheel Handler** node to drive these types of animations.
+
+### Wheel Handler Node
+
+Where the Animation Blueprint is used to get and control animations for the vehicle, more specifically, the **Wheel Handler** node makes controlling all of the animations for the vehicle
+fairly easy with little to no additional setup. It simply grabs the necessary information from the wheels (How fast is it spinning? Is it affected by the Handbrake? What are the suspension
+settings for this wheel?) and translates the query results to an animation on the bone that the wheel is associated with.
+
+
+
+## Creating the Animation Blueprint
+
+1. In the **Content Browser**, click the **Add New** button, then hover over **Animation**, selecting **Animation Blueprint** from the menu list.
+
+1. In the **Create Animation Blueprint** window, locate and select **your** Skeleton from your vehicle's list. Then click **OK**.
+
+ [REGION:tip]
+ Alternatively, you can create an Animation Blueprint directly from your Skeletal Mesh by selecting it in the **Content Browser**, where you'll be able to select **Create** > **Anim Blueprint**.
+ [/REGION]
+
+ [REGION:raw]
+ (convert:false)
+ [/REGION]
+
+1. Now that you've got an Animation Blueprint to work from, you can open it from the **Content Browser** by selecting and double-clicking it. From the main toolbar select **Class Settings** and then in the **Details** panel
+set the **Parent Class** to **VehicleAnimInstance**.
+
+ [REGION:raw]
+ (w:725)
+ [/REGION]
+
+ [REGION:warning]
+ If this is not properly set to the right **Parent Class**, you will not have access to nodes needed later in this guide.
+ [/REGION]
+
+1. In the **Anim Graph**, you'll want to start by right-clicking to bring up the context menu and then searching for the **Mesh Space Ref Pose** node. Select it from the list to create it in place.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. Next, right-click in the **Anim Graph** to bring up the context menu and then search for the **Wheel Handler**, selecting it from the list to create it.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. Now, connect the nodes so that your **Anim Graph** looks like this one.
+
+ 
+
+1. Optionally, if you have additional struts or other suspension needs (like the Buggy from Vehicle Game) you will need additional nodes in your Animation Graph to handle the joints that
+affect those polygons. In the Buggy, from Vehicle Game, the extra joints are used to control the axle connections to the wheels. These are driven by a simple **Look At** node, which, when given the
+wheel joints, will be driven by the **Wheel Handler** node and the **Look At** nodes will make sure the suspension stays attached to the wheels.
+
+ (w:850)
+
+## End Result
+
+You've finished setting up the Animation Blueprint! The **Component to Local** conversion node will be created automatically and the Animation Blueprint will now drive the wheels of the vehicle.
+Continue on to the next step to learn how to create a Vehicle Blueprint that brings all of the previous steps together.
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.JPN.udn
new file mode 100644
index 000000000000..e9783b3857b0
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.JPN.udn
@@ -0,0 +1,84 @@
+INTSourceChangelist:3469520
+Availability:Public
+crumbs:%ROOT%
+Title:3 - Vehicle Animation ブループリントを作成する
+Description:このステップでは、ビークルのアニメーションを制御する Animation ブループリントを作成します。
+Type:how-to
+SkillLevel:Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:3
+Tags:Vehicles
+
+[Nav]
+
+ここまでで、TireConfig Data アセットと Wheel ブループリントを作成しました。これは、後で Vehicle ブループリントと合わせて使用します。このステップでは、ビークルの車輪で必要なすべてのアニメーションを操作する
+Animation ブループリントを作成します。
+
+## Animation ブループリント
+
+Animation ブループリントを使って Vehicle のスケルタルメッシュのアニメーションを制御して、タイヤのスピン、サスペンション、ハンドブレーキ、ステアリングなどの
+ビークル固有のアニメーションを持つようにします。こうしたアニメーション作成のための作業の負担を減らすために、**Wheel Handler** ノードを使ってアニメーションを操作することができます。
+
+### Wheel Handler ノード
+
+Animation ブループリントを使ってビークルのアニメーションを取得して制御する場合、**Wheel Handler** ノードが非常に簡単に追加の作業をほとんど必要とせずに、
+ビークルのすべてのアニメーションを制御します。車輪から必要な情報を集めます(どれくらい速くスピンするか、ハンドブレーキの影響を受けるか、車輪のサスペンション設定など)。
+その結果を車輪が関連付けられているボーンのアニメーションに変換します。
+
+
+
+## Animation ブループリントを作成する
+
+1. **コンテンツ ブラウザ** で、 **[Add New (新規追加)]** ボタンをクリックします。次に **Animation** にマウスをかざして、メニュー リストから **[Animation Blueprint]** を選択します。
+
+1. **[Create Animation Blueprint]** ウィンドウでビークル リストから **ご自分の ** スケルトンを選択します。**[Ok]** をクリックします。
+
+ [REGION:tip]
+ または、スケルタルメッシュから直接 Animation ブループリントを作成することもできます。これを行うには、**コンテンツ ブラウザ** で、**Create** > **Anim Blueprint** の順に選択します。
+ [/REGION]
+
+ [REGION:raw]
+ (convert:false)
+ [/REGION]
+
+1. 作業する Animation ブループリントが用意できたので、それを **コンテンツ ブラウザ** で選択して、ダブルクリックして開きます。メイン ツールバーで **[Class Settings]** を選択し **[Details]** パネルで
+**[Parent Class]** を **[VehicleAnimInstance]** に設定します。
+ [REGION:raw]
+
+ (w:725)
+ [/REGION]
+
+ [REGION:warning]
+ 適切な **[Parent Class (親クラス)]** に設定しないと、後でこのガイドで必要になるノードを利用できません。
+ [/REGION]
+
+1. **Anim Graph** で右クリックしてコンテキスト メニューを呼び出し、**Mesh Space Ref Pose** ノードを検索します。それを、リストから選択して作成します。
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. 次に **Anim Graph** で右クリックしてコンテキスト メニューを呼び出し、**Wheel Handler** を検索し、リストから選択し、作成します。
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. 以下のように **Anim Graph** のノードを接続してください。
+
+ 
+
+1. オプションでストラットの追加や他のサスペンションのニーズがあれば (Vehicle Game の Buggy のようなもの)、Animation Graph でこうしたポリゴンに影響を与えるジョイントを処理する
+追加のノードが必要になります。Vehicle Game の Buggy では、こうした追加のジョイントは車輪へのアクセルの接続を制御するために使います。こうしたジョイントは単純な **Look At** ノードによって動きますが、車輪のジョイントが与えられると、
+**Wheel Handler** ノードによって操作され、**Look At** ノードによって、サスペンションが車輪に確実にアタッチされる状態を保つようにします。
+
+ (w:850)
+
+## 最終結果
+
+これで Animation ブループリントのセットアップが終了しました!**Component to Local** 変換ノードが自動的に作成されて、Animation ブループリントがビークルの車輪を操作します。
+次のステップで、これまで作成したものをまとめる Vehicle ブループリントの作成方法を説明します。
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.KOR.udn
new file mode 100644
index 000000000000..30e985bdd8f0
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/3/CreatingAnimBP.KOR.udn
@@ -0,0 +1,84 @@
+INTSourceChangelist:3469520
+Availability: Public
+crumbs:%ROOT%
+Title: 3 - 비히클 애니메이션 블루프린트
+Description: 여기서는 비히클 애니메이션을 제어하는 애니메이션 블루프린트를 만듭니다.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:3
+Tags: Vehicles
+
+[Nav]
+
+이 시점에서 TireConfig 데이터 애셋과 휠 블루프린트를 만들어 두었으니, 나중에 비히클 블루프린트에서 사용하겠습니다. 여기서는 계속해서 콘텐츠 준비 작업을 하겠습니다.
+비히클의 휠에 필요한 애니메이션 전부를 구동시키는 애니메이션 블루프린트 제작 작업입니다.
+
+## 애니메이션 블루프린트
+
+애니메이션 블루프린트는 비히클 스켈레탈 메시의 애니메이션 제어에 사용되며, 타이어 회전, 서스펜션, 핸드브레이크, 스티어링 등 비히클 전용 애니메이션을 만들 수 있습니다.
+이와 같은 것들에 대한 애니메이션 제작 작업을 다수 줄이기 위해, **Wheel Handler** 노드를 사용하여 이러한 유형의 애니메이션을 구동시켜 주면 됩니다.
+
+### Wheel Handler 노드
+
+애니메이션 블루프린트가 비히클의 애니메이션을 구하고 제어하는 데 사용되는 곳, 보다 구체적으로 **Wheel Handler** 노드는 추가 구성 작업을 거의 하지 않고도 꽤나 쉽게 모든 비히클 애니메이션을
+제어할 수 있습니다. 단순히 휠에서 필수 정보(얼마나 빨리 회전하는가? 핸드브레이크에 영향받는가? 이 휠의 서스펜션 세팅은 어떠한가?)를 구해온 뒤,
+그 쿼리 결과를 휠이 할당된 본의 애니메이션으로 전환합니다.
+
+
+
+## 애니메이션 블루프린트 생성
+
+1. **콘텐츠 브라우저** 에서 **신규 추가** 버튼을 클릭한 뒤 **애니메이션** 위에 커서를 올리면 나오는 메뉴 목록에서 **애니메이션 블루프린트** 를 선택합니다.
+
+1. **애니메이션 블루프린트 생성** 창의 비히클 목록에서 **자신의** 스켈레톤을 찾아 선택합니다. 그리고 **OK** 를 클릭합니다.
+
+ [REGION:tip]
+ 다른 방법으로는, **콘텐츠 브라우저** 에서 스켈레탈 메시를 바로 선택하고 **생성** > **애님 블루프린트** 를 선택하여 애니메이션 블루프린트를 바로 만들 수도 있습니다.
+ [/REGION]
+
+ [REGION:raw]
+ (convert:false)
+ [/REGION]
+
+1. 작업할 애니메이션 블루프린트가 생겼으면, **콘텐츠 브라우저** 에서 선택하고 더블클릭하는 것으로 열 수 있습니다. 메인 툴바에서 **클래스 세팅** 을 선택한 뒤 **디테일** 패널에서
+**Parent Class** (부모 클래스)를 **VehicleAnimInstance** 로 설정하면 됩니다.
+
+ [REGION:raw]
+ (w:725)
+ [/REGION]
+
+ [REGION:warning]
+ 올바른 **Parent Class** 에 설정하지 않으면, 나중에 필요한 노드에 접근할 수 없게 됩니다.
+ [/REGION]
+
+1. **애님 그래프** 에서 우클릭으로 맥락 메뉴를 띄운 뒤 **Mesh Space Ref Pose** 노드를 검색하는 것으로 시작합니다. 리스트에서 선택하면 그 자리에 생성됩니다.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. 다음, **애님 그래프** 에 우클릭하여 맥락 메뉴를 띄우고 **Whell Handler** 를 검색하여 선택하면 생성됩니다.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. 이제 **애님 그래프** 가 다음과 같아 보이도록 노드를 연결합니다.
+
+ 
+
+1. 옵션으로, (비히클 게임의 버기처럼) 지지대나 다른 서스펜션이 추가로 필요한 경우 애니메이션 그래프에서 노드를 추가하여 그 폴리곤에 영향을 주는 조인트 처리를 해 줘야 합니다.
+비히클 게임의 버기의 경우, 부가 조인트를 사용하여 휠에 연결되는 차축 제어를 하고 있습니다. 이는 단순한 **Look At** 노드로 구동되는데, 휠 조인트를 주면
+**Wheel Handler** 노드로 구동시키고 **Look At** 노드는 서스펜션이 휠에 계속 붙어있도록 해줍니다.
+
+ (w:850)
+
+## 최종 결과
+
+애니메이션 블루프린트 구성 작업이 완료되었습니다! **Component to Local** 변환 노드가 자동 생성되어 이제 애니메이션 블루프린트가 비히클의 휠을 구동시킬 것입니다.
+계속해서 다음 단계에서는 예전 단계의 모든 것들을 조립하는 비히클 블루프린트를 만드는 법을 알아보겠습니다.
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.CHN.udn
new file mode 100644
index 000000000000..a4c9a8cac3cb
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.CHN.udn
@@ -0,0 +1,88 @@
+INTSourceChangelist:0
+Availability: Public
+crumbs:
+Title: 3 - Creating a Vehicle Blueprint
+Description: In this step, we'll create the Vehicle Blueprint where we create and setup a functional vehicle.
+Type: Multi-step
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:3
+Tags: Vehicles
+
+
+[Nav]
+
+By now, you've created a few different assets (TireConfig Data Assets, Wheel Blueprints, and an Animation Blueprint) that we need to bring together to create a fully functional vehicle in Unreal Engine 4.
+In this step, we'll create the Vehicle Blueprint and use those previous assets we created and setup!
+
+
+## Creating and Editing the Vehicle Blueprint
+
+1. In the **Content Browser** click the **Add New** button, then select **Blueprint Class** from the menu.
+1. In the **Pick Parent Class** window, under **All Classes** search for "wheel" and then select **WheeledVehicle**.
+1. In your **Content Browser** the new Blueprint asset will be created. Make sure to give it a recognizable name so you can easily locate it later.
+
+ [REGION:raw]
+ (convert:false)
+ [/REGION]
+
+1. From the Content Browser, select and open your newly created Vehicle Blueprint.
+
+ (w:775)
+
+1. Click on the **Skeletal Mesh Component** named **Mesh** from the **Components Window**. Then in its **Details** panel, set the **Skeletal Mesh** selection box to your vehicle's own Skeletal Mesh asset.
+
+ 
+
+1. Set the **Anim Blueprint Generated Class** to your vehicle's Animation Blueprint that we created in the Step 2 of this guide.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. Go back to the **Components** window and select the **Add Component** button and select a **Camera Component**
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. Use the Viewport in the Blueprint Editor to position the Camera where you would like it to be relative to your vehicle. In the image below, it is positioned behind, slightly raised, and tilted down towards the vehicle.
+
+ 
+
+1. With the **Camera** component still selected, in the **Details** panel under **Camera Settings** disable the option for **Use Pawn Control Rotation**. This will lock the camera to its view direction rather than that of the Player
+Controller.
+
+ 
+
+1. Next, select the **Vehicle Movement Component** in the Components window.
+
+ 
+
+ In the **Details** panel under the **Vehicle Setup** section, expand the arrow next to **Wheel Setups** and for each wheel (0-3) set the following:
+
+ * Set the **Wheel Class** to the Wheel Blueprint(s) you created.
+ * Set the **Bone Name** to the name of the joint that should be controlled by the wheel.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+ _The **Bone Name** in the above image is specific to this skeletal mesh. If you're using the Vehicle from Vehicle Game, you can use these specific Bone Names._
+
+ The order you assign wheels has no bearing on if it is a front or a rear wheel, only the **Bone Name** and **Wheel Class** have any effect. For organizational purposes, it's best to do them in
+ keep the wheels (front and rear) together.
+
+ [REGION:note]
+ If you need more than 4 wheels, you can click the "**+**" icon next to the **Wheel Setups** property to add more.
+ [/REGION]
+
+
+## End Result
+
+At this point, assuming your vehicle is not substantially larger than a minivan, the default values will be a good starting point for you to move on to the next step in this guide where we'll setup the
+inputs and controls to properly test out the vehicle.
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.INT.udn
new file mode 100644
index 000000000000..e111095851b1
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.INT.udn
@@ -0,0 +1,81 @@
+Availability: Public
+crumbs:%ROOT%
+Title: 4 - Creating a Vehicle Blueprint
+Description: In this step, we'll create the Vehicle Blueprint where we create and setup a functional vehicle.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:4
+Tags: Vehicles
+
+[Nav]
+
+By now, you've created a few different assets (TireConfig Data Assets, Wheel Blueprints, and an Animation Blueprint), which you need to bring together to create a fully functional vehicle in Unreal Engine 4 (UE4).
+In this step, you'll create the Vehicle Blueprint, using those assets that were previously created and set up.
+
+## Creating and Editing the Vehicle Blueprint
+
+1. In the **Content Browser**, click the **Add New** button, then select **Blueprint Class** from the menu.
+1. In the **Pick Parent Class** window, under **All Classes**, search for "wheel" and then select **WheeledVehicle**.
+1. In your **Content Browser**, the new Blueprint asset will be created. Make sure to give it a recognizable name so that you can easily locate it later.
+
+ [REGION:raw]
+ (convert:false)
+ [/REGION]
+
+1. From the Content Browser, select and open your newly created Vehicle Blueprint.
+
+ (w:775)
+
+1. Click on the **Skeletal Mesh Component** named **Mesh** from the **Components Window**. Then, in its **Details** panel, set the **Skeletal Mesh** selection box to your vehicle's own Skeletal Mesh asset.
+
+ 
+
+1. Set the **Anim Blueprint Generated Class** to your vehicle's Animation Blueprint that we created in Step 2 of this guide.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. Go back to the **Components** window and select the **Add Component** button and select a **Camera Component**
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. Use the Viewport in the Blueprint Editor to position the Camera where you would like it to be relative to your vehicle. In the image below, it is positioned behind, slightly raised, and tilted down towards the vehicle.
+
+ 
+
+1. With the **Camera** component still selected (in the **Details** panel under **Camera Settings**), disable the option for **Use Pawn Control Rotation**. This will lock the camera to its view direction (rather than that of the Player Controller).
+
+ 
+
+1. Next, select the **Vehicle Movement Component** in the Components window.
+
+ 
+
+ In the **Details** panel under the **Vehicle Setup** section, expand the arrow next to **Wheel Setups** and for each wheel (0-3) set the following:
+
+ * Set the **Wheel Class** to the Wheel Blueprint(s) you created.
+ * Set the **Bone Name** to the name of the joint that should be controlled by the wheel.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+ _The **Bone Name** in the above image is specific to this skeletal mesh. If you're using the Vehicle from Vehicle Game, you can use these Bone Names._
+
+ The order you assign wheels has no bearing on if it is a front or a rear wheel, only the **Bone Name** and **Wheel Class** have any effect. For organizational purposes, it's best to keep the wheels (front and rear) together.
+
+ [REGION:note]
+ If you need more than 4 wheels, you can click the "**+**" icon next to the **Wheel Setups** property to add more.
+ [/REGION]
+
+## End Result
+
+At this point, assuming your vehicle is not substantially larger than a minivan, the default values will be a good starting point for you to move on to the next step in this guide, where you'll setup the inputs and controls to properly test the vehicle.
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.JPN.udn
new file mode 100644
index 000000000000..6654fa352dd2
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.JPN.udn
@@ -0,0 +1,82 @@
+INTSourceChangelist:3400712
+Availability:Public
+crumbs:%ROOT%
+Title:4 - Vehicle ブループリントを作成する
+Description:このステップでは、動作するビークルを作成し、セットアップする Vehicle ブループリントを作成します。
+Type:how-to
+SkillLevel:Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:4
+Tags:Vehicles
+
+[Nav]
+
+ここまでで、数種類のアセットを作成しました (TireConfig Data アセット、 Wheel ブループリントおよび Animation ブループリント)。これをまとめてアンリアル エンジン 4 で動作するビークルを作成します。
+このステップでは以前作成し、セットアップしたアセットを使って Vehicle ブループリントを作成します。
+
+## Vehicle ブループリントの作成と編集
+
+1. **コンテンツ ブラウザ** で、 **[Add New (新規追加)]** ボタンをクリックします。次にメニューから **[Blueprint Class]** を選択します。
+1. **[Pick Parent Class]** ウィンドウで "wheel" に対する **全クラス** 検索で **[WheeledVehicle]** を選択します。
+1. **コンテンツ ブラウザ** に新規 Blueprint アセットが作成されます。後で簡単に見つけられるようにわかりやすい名前を付けてください。
+
+ [REGION:raw]
+ (convert:false)
+ [/REGION]
+
+1. コンテンツ ブラウザで、新規作成した Vehicle ブループリントを選択して開きます。
+
+ (w:775)
+
+1. **[Components Window]** で **Mesh** という名前の **Skeletal Mesh コンポーネント** 上でクリックします。次に **[Details]** パネルで、**[Skeletal Mesh]** 選択ボックスをビークルの独自の Skeletal Mesh アセットに設定します。
+
+ 
+
+1. **Anim Blueprint Generated Class** をこのガイドのステップ 2 で作成したビークルの Animation ブループリントに設定します。
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. **[Components]** ウィンドウに戻り、**[Add Component]** ボタンを選択して、 **Camera コンポーネント** を選択します。
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. ブループリント エディタのビューポートを使ってビークルに対して必要な場所にカメラを配置します。以下の画像では、カメラはビークルの後ろの少し上側に配置され、ビークルに向かって下方に傾いています。
+
+ 
+
+1. **Camera** コンポーネントを選択した状態で (**[Details]** パネルの **[Camera Settings]** で)、**[Use Pawn Control Rotation]** のオプションを無効にします。これにより、カメラを (プレイヤー コントローラの方向ではなく) 視線方向にロックします。
+
+ 
+
+1. 次に [Components] ウィンドウで **[Vehicle Movement Component]** を選択します。
+
+ 
+
+ **[Details]** パネルの **[Vehicle Setup]** セクションで **[Wheel Setups]** の隣の矢印を展開します。各車輪 (0-3) について以下のように設定します。
+
+ * 作成した Wheel ブループリントに **Wheel Class** を設定します。
+ * 車輪が制御するジョイント名に **[Bone Name (ボーン名)]** を設定します。
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+ _上の画像の **Bone Name** は、このスケルタルメッシュ固有のものです。Vehicle Game の Vehicle を使用している場合、このような Bone Names を使用することができます。_
+
+ 車輪を割り当てた順序は、前輪であるか後輪であるかに関係なく、**[Bone Name (ボーン名)]** と **[Wheel Class (車輪のクラス)]** だけが影響を与えます。整理の目的上、車輪 (前輪、後輪) を一緒にまとめておくとよいでしょう。
+
+ [REGION:note]
+ 4 つよりも多く車輪が必要な場合、**Wheel Setups** プロパティの隣にある "**+**" アイコンをクリックして車輪を追加できます。
+ [/REGION]
+
+## 最終結果
+
+この時点で、ビークルがミニバンよりも大幅に大きくないことを前提に、まずデフォルト値を使用するとよいでしょう。次のステップで、ビークルを適切にテストするために入力と制御をセットアップします。
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.KOR.udn
new file mode 100644
index 000000000000..412033e8df38
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/4/CreatingVehicleBP.KOR.udn
@@ -0,0 +1,82 @@
+INTSourceChangelist:3400712
+Availability: Public
+crumbs:%ROOT%
+Title: 4 - 비히클 블루프린트 제작
+Description: 비히클 블루프린트를 만들어 실제 작동하는 비히클을 만들고 구성해 봅니다.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:4
+Tags: Vehicles
+
+[Nav]
+
+지금까지 여러가지 다양한 애셋(TireConfig 데이터 애셋, 휠 블루프린트, 애니메이션 블루프린트)들을 만들었는데, 이들을 조립해야 언리얼 엔진 4 (UE4) 에서 정상 작동하는 비히클을 만들 수 있습니다.
+여기서는 기존에 생성 및 구성해 둔 애셋들을 사용하여 비히클 블루프린트를 만들어 보겠습니다.
+
+## 비히클 블루프린트 생성 및 편집
+
+1. **콘텐츠 브라우저** 에서 **신규 추가** 버튼을 클릭한 뒤 메뉴에서 **블루프린트 클래스** 를 선택합니다.
+1. **부모 클래스 선택** 창에서 **모든 클래스** 아래 wheel 을 검색한 뒤 **WheeledVehicle** 을 선택합니다.
+1. **콘텐츠 브라우저** 에 새 블루프린트 애셋이 생성됩니다. 나중에 쉽게 찾을 수 있도록 알아보기 쉬운 이름을 지어주세요.
+
+ [REGION:raw]
+ (convert:false)
+ [/REGION]
+
+1. 콘텐츠 브라우저에서 새로 만든 비히클 블루프린트를 선택하여 엽니다.
+
+ (w:775)
+
+1. **컴포넌트 창** 에서 **Mesh** 라는 이름의 **Skeletal Mesh Component** 를 클릭합니다. 그리고 **디테일** 패널에서 **Skeletal Mesh** 선택 박스를 자체 스켈레탈 메시 애셋으로 설정합니다.
+
+ 
+
+1. **Anim Blueprint Generated Class** 를 이 안내서 2 단계에 생성한 비히클의 애니메이션 블루프린트로 설정합니다.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. **컴포넌트** 창으로 돌아가 **컴포넌트 추가** 버튼을 선택한 뒤 **Camera Component** 를 선택합니다.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. 블루프린트 에디터의 뷰포트에서 비히클을 기준으로 카메라가 있었으면 하는 위치를 잡습니다. 아래 그림에서는 약간 뒤쪽에서 들어올리고, 비히클 쪽으로 살짝 기울였습니다.
+
+ 
+
+1. **Camera** 컴포넌트를 여전히 선택한 채 (**디테일** 패널의 **Camera Settings** 아래) **Use Pawn Control Rotation** 옵션을 끕니다. 카메라를 (플레이어 컨트롤러 방향이 아닌) 뷰 방향으로 고정시킵니다.
+
+ 
+
+1. 다음, 컴포넌트 창에서 **Vehicle Movement Component** 를 선택합니다.
+
+ 
+
+ **디테일** 패널의 **Vehicle Setup** 섹션 아래, **Wheel Setups** 옆의 화살표를 펼친 뒤 각 (0-3) 휠에 대해 다음과 같이 설정합니다:
+
+ * **Wheel Class** 는 앞서 만든 휠 블루프린트로 설정합니다.
+ * **Bone Name** 은 휠이 제어할 조인트 이름으로 설정합니다.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+ _위 그림의 **Bone Name** 은 이 스켈레탈 메시 전용입니다. 비히클 게임의 비히클을 사용한다면, 이 Bone Name 을 사용하면 됩니다._
+
+ 휠 할당 순서는 앞바퀴인지 뒷바퀴인지와는 상관 없으며, **Bone Name** 과 **Wheel Class** 만 영향을 줍니다. 정리 목적 상, 앞뒷바퀴 둘씩 같이 묶는 것이 좋습니다.
+
+ [REGION:note]
+ 휠이 4 개 이상 필요한 경우, **Wheel Setups** 프로퍼티 옆 **+** 아이콘을 클릭하여 추가하면 됩니다.
+ [/REGION]
+
+## 최종 결과
+
+이 시점에서, 비히클이 미니밴보다 엄청 크지 않다 가정한다면, 이 안내서 다음 단계부터 비히클을 제대로 테스트하기 위해 입력 및 컨트롤 구성을 할 때 기본값에서부터 시작하면 좋을 것입니다.
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.CHN.udn
new file mode 100644
index 000000000000..d7156a1b61eb
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.CHN.udn
@@ -0,0 +1,84 @@
+INTSourceChangelist:0
+Availability: Public
+crumbs:
+Title: 4 - Setting up and Testing Functionality
+Description: In this step, we'll setup functionality to control our vehicle!
+Type: Multi-step
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:4
+Tags: Vehicles
+
+
+
+[Nav]
+
+[TOC(start:2 end:2)]
+
+By now, you've done everything you need to do to have a fully functional vehicle by creating the Wheel, Animation, and Vehicle Blueprints in Unreal Engine 4, except to be able to control it in your game!
+In this step, we'll show you how to setup the necessary axis mappings and binding so that you can drive the vehicle around and fully test its capabilities.
+
+Because there are a few ways to go about setting up the vehicle for testing and assuming that you did start with a blank project template, all of the inputs will need to be added to control
+the vehicle. If you started with an existing template, some or all of these axis mappings and bindings may already be available for you in your project.
+
+
+
+## Setting Up The Controls
+
+1. Go to the Main Menu and select **Edit** > **Project Settings** to open the Project Settings window. Then under the **Engine** section in the side panel, select **Input**.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. In the Bindings, setup the following controls if you do not currently have them listed. If you do have them listed, it would be wise to double-check that they are setup like the ones
+listed here so that you know your vehicle will work correctly.
+
+ 1. **Add** an **Axis Mapping**, by clicking the "**+**" sign next to the Axis Mappings property
+ 1. **Expand** the Axis Mappings
+ 1. **Rename** the Axis Mapping from "None" to **Forward**
+ 1. **Click** the "**+**" next to the **Forward** Axis Mapping
+ 1. **Expand** the **Forward** Axis Mapping
+ 1. **Set** the first "None" to "**W**"
+ 1. **Set** the second "None" to "**S**"
+ 1. **Set** the Scale of the "**S**" mapping to "-1.0"
+ 1. **Add** another **Axis Mapping**, by clicking the "**+**" sign next to the Axis Mappings property
+ 1. **Rename** the new Axis Mapping from "None" to **Right**
+ 1. **Expand** the **Right** Axis Mapping
+ 1. **Set** the first "None" to "**D**"
+ 1. **Set** the second "None" to "**A**"
+ 1. **Set** the Scale of the "**A**" mapping to "-1.0"
+ 1. Then **add** an **Action Mapping**, by clicking the "**+**" sign next to the Action Mappings property, for:
+ 1. **Expand** the **Action Mappings** property
+ 1. **Rename** the new Action Mapping from "None" to "**Handbrake**"
+ 1. **Expand** the **Handbrake** Action Mapping
+ 1. **Set** the "None" to "**Space Bar**"
+
+1. Now that you've got the controls setup, you'll need to actually do something with them. So open up the Vehicle Blueprint that you created in previous step (Step 3) and locate the
+Event Graph where you'll be able to call theses Axis and Action events that you created in the Project Settins' Input section.
+
+ (w:669)
+
+1. In the Event Graph, for the throttle setup create the following:
+
+ 
+
+1. In the Event Graph, for steering setup the following:
+
+ 
+
+1. In the Event Graph, for the handbrake setup the following:
+
+ 
+
+
+
+## End Result
+
+Now with these Input Events added you have a fully functional vehicle that can take input movement! In the next and final step, we'll setup a new Game Mode that uses our Vehicle pawn as the
+default pawn when we launch a game.
+
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.INT.udn
new file mode 100644
index 000000000000..118d91617266
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.INT.udn
@@ -0,0 +1,85 @@
+Availability: Public
+crumbs:%ROOT%
+Title: 5 - Setting up and Testing Functionality
+Description: In this step, we'll setup functionality to control our vehicle.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:5
+Tags: Vehicles
+
+[Nav]
+
+By now, you've done everything you need to do to have a fully functional vehicle by creating the Wheel, Animation, and Vehicle Blueprints in Unreal Engine 4, except to be able to control it in your game!
+In this step, we'll show you how to set up the necessary axis mappings and bindings so that you can drive the vehicle around and fully test its capabilities.
+
+Because there are a few ways to go about setting up the vehicle for testing, and assuming that you started with a blank project template, all of the inputs will need to be added to control
+the vehicle. If you started with an existing template, some (or all) of these axis mappings and bindings may already be available for you in your project.
+
+## Setting Up The Controls
+
+1. Go to the Main Menu and select **Edit** > **Project Settings** to open the Project Settings window. Then, under the **Engine** section in the side panel, select **Input**.
+
+ (w:950)
+
+1. In the Bindings menu, set up the following controls (if you do not currently have them listed). If you do have them listed, it would be wise to double-check that they are set up like the ones listed here, so that you know your vehicle will work correctly.
+
+ 1. First, we'll setup an **Action Mappings** by clicking the **+** sign next to the Action Mappings property.
+
+ 
+
+ 1. **Rename** the Action Mapping from "NewActionMapping_0" to **Handbrake**. Then, expand this property to use the selection box to change the key value from "None" to **Space Bar**.
+
+ 
+
+ 1. Next, we'll setup the **Axis Mappings** by clicking the **+** sign next to the Axis Mappings property. Repeat this so that you have two Axis Mappings, like this:
+
+ 
+
+ 1. **Rename** the first Axis Mapping from "NewAxisMapping_0" to **Forward**. Then do the same for the second and rename it from "NewAxisMapping_1" to **Right**.
+
+ 
+
+ 1. **Expand** the **Forward** Axis Mapping and then click the **+** sign once so that you have two Axis Mappings listed under "Forward". Then set the first "None" to use the **W** key for input. Set the second "None" to use the **S** key.
+
+ 
+
+ 1. Next to the **S** key input under the **Forward** Axis Mapping, change the **Scale** value to be **-1**.
+
+ 
+
+ 1. **Expand** the **Right** Axis Mapping and then click the **+** sign once so that you have two Axis Mappings listed under "Right". Then set the first "None" to use the **D** key for input. Set the second "None" to use the **A** key.
+
+ 
+
+ 1. Next to the **A** key input under the **Right** Axis Mapping, change the **Scale** value to be **-1**.
+
+ 
+
+ Once you're done setting the Action and Axis Mappings, your Bindings should look like this:
+
+ 
+
+1. Now that you've got the controls set up, you'll need to actually do something with them. So, open up the **Vehicle Blueprint** that you created and locate the **Event Graph**, where you'll be able to call these Axis and Action events that you created in the Project Settings Input section.
+
+ (w:669)
+
+1. In the Event Graph, for the throttle setup create the following:
+
+ 
+
+1. In the Event Graph, for steering setup the following:
+
+ 
+
+1. In the Event Graph, for the handbrake setup the following:
+
+ 
+
+## End Result
+
+Now with these Input Events added you have a fully functional vehicle that can take input movement! In the next and final step, you'll set up a new Game Mode that uses your Vehicle pawn as the default pawn when you launch a game.
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.JPN.udn
new file mode 100644
index 000000000000..d1330e0b90c3
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.JPN.udn
@@ -0,0 +1,86 @@
+INTSourceChangelist:3400712
+Availability:Public
+crumbs:%ROOT%
+Title:5 - 機能をセットアップし、テストする
+Description:このステップでは、ビークルを制御する機能をセットアップします。
+Type:how-to
+SkillLevel:Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:5
+Tags:Vehicles
+
+[Nav]
+
+ここまでで、UE4 で車輪、アニメーション、Vehicle ブループリントを作成して十分に機能するビークルにするために必要なことをすべて行ってきました。残っているのは、ゲーム内で制御できるようにすることです。
+このステップでは、必要な軸マッピングとバインディングをセットアップする方法を説明し、ビークルを操作し、その機能を十分にテストできるようにします。
+
+テスト目的でビークルをセットアップするにはいくつかの方法があり、ブランク プロジェクトのテンプレートで始めたことを前提としてビークルをコントロールするには、
+すべての入力を追加する必要があります。既存のテンプレートで始めた場合は、こうした軸マッピングの一部 (またはすべて) およびバインディングはすでにプロジェクトで利用可能な場合があります。
+
+## 制御をセットアップする
+
+1. メイン メニューから **[Edit]** > **[Project Settings]** を選択して [Project Settings] ウィンドウを開きます。サイド パネルの **[Engine]** セクションから **Input (入力)** を選択します。
+
+ (w:950)
+
+1. [Bindings ] メニューで、以下の制御をセットアップします (現在、リストされていない場合)。リストされていたら、ビークルが正しく動作するように、ここでリストされているものと同様であるかを確認するとよいでしょう。
+
+ 1. 最初に、 [Action Mappings (アクション マッピング)] プロパティの隣にある **+** 記号をクリックして、**Action Mapping** をセットアップします。
+
+ 
+
+ 1. Action マッピング名を "NewActionMapping_0" から **Handbrake** に **名前変更** します。次にこのプロパティを展開して選択ボックスを使ってキー値を "None" から **Space Bar** に変更します。
+
+ 
+
+ 1. 次に、 [Axis Mappings (軸マッピング)] プロパティの隣にある **+** 記号をクリックして、Axis Mapping をセットアップします。以下のように Axis Mapping が 2 つになるようにこのプロセスを繰り返します。
+
+ 
+
+ 1. 最初の Axis Mapping を "NewAxisMapping_0" から **Forward** に **名前変更** します。次に 2 つめについても同じことを行い、"NewAxisMapping_1" から **Right** に名前変更します。
+
+ 
+
+ 1. **Forward** Axis Mapping を **展開** します。次に **+** 記号を一回クリックして、"Forward" の下に Axis Mapping が 2 つあるようにします。1 つめの "None" を入力で **W** キーを使うように設定します。2 つめの"None" を **S** キーを使うように設定します。
+
+ 
+
+ 1. **Forward** Axis Mapping の **S** キー入力の隣の **Scale** 値を **-1** に変更します。
+
+ 
+
+ 1. **Right** Axis Mapping を **展開** します。次に **+** 記号を一回クリックして、"Right" の下に Axis Mapping が 2 つあるようにします。1 つめの "None" を入力で **D** キーを使うように設定します。2 つめの"None" を **A** キーを使うように設定します。
+
+ 
+
+ 1. **Right** Axis Mapping の **A** キー入力の隣の **Scale** 値を **-1** に変更します。
+
+ 
+
+ Action Mapping と Axis Mapping を設定すると、バインディングは以下のようになります。
+
+ 
+
+1. これで、制御のセットアップが終了しました。これを使って実際に何かをやってみる必要があります。作成した **Vehicle ブループリント** を開き、**Event Graph** を探します。ここで、[Project Settings Input] セクションで作成した Axis event および Action event を呼び出すことができます。
+
+ (w:669)
+
+1. Event Graph でスロットルのセットアップに関して以下のように作成します。
+
+ 
+
+1. Event Graph でステアリングのセットアップに関して以下のように作成します。
+
+ 
+
+1. Event Graph でハンドブレーキのセットアップに関して以下のように作成します。
+
+ 
+
+## 最終結果
+
+Input Event を追加した状態で、入力の動きを取り込む十分に機能するビークルが用意できました。次の最終ステップでは、ゲーム起動時にビークルのポーンをデフォルトのポーンとして使用する新規 Game Mode をセットアップします。
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.KOR.udn
new file mode 100644
index 000000000000..29a5adc79831
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/5/TestingFunctionality.KOR.udn
@@ -0,0 +1,86 @@
+INTSourceChangelist:3400712
+Availability: Public
+crumbs:%ROOT%
+Title: 5 - 함수 기능 셋업 및 테스트
+Description: 비히클 제어를 위한 함수 기능을 셋업해 보겠습니다.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:5
+Tags: Vehicles
+
+[Nav]
+
+이제, 언리얼 엔진 4 의 휠, 애니메이션, 비히클 블루프린트를 만들었으니, 완벽 작동하는 비히클을 만들 준비가 전부 되었습니다. 이제 남은 것은 게임에서 실제로 제어하는 것입니다!
+이번 단계에서는, 비히클을 운전하고 성능을 테스트하기 위해 필요한 축 매핑과 바인딩 셋업 방법을 보여드리겠습니다.
+
+비히클 테스트 셋업 방법은 여러가지인데, 공백 프로젝트 템플릿으로 시작했다 가정한다면, 모든 입력을 추가해 줘야 비히클 제어가 가능합니다.
+기존 템플릿으로 시작했다면, 이들 축 매핑 및 바인딩 중 일부( 또는 전부)는 이미 프로젝트에서 사용할 수 있을 수도 있습니다.
+
+## 컨트롤 셋업
+
+1. 메인 메뉴의 **편집** > **프로젝트 세팅** 으로 프로젝트 세팅 창을 엽니다. 사이드 패널의 **Engine** (엔진) 섹션에서 **Input** (입력)을 선택합니다.
+
+ (w:950)
+
+1. 바인딩 메뉴에서, (현재 나열되어 있지 않은 경우) 컨트롤을 다음과 같이 셋업합니다. 나열되어 있지 않으면 여기 나온 대로 셋업되어 있는지 다시 한 번 확인하는 것이 비히클 정상 작동에 좋습니다.
+
+ 1. 먼저 Action Mappings (액션 매핑) 프로퍼티 옆의 **+** 부호를 클릭하여 **액션 매핑** 셋업을 해주겠습니다.
+
+ 
+
+ 1. 액션 매핑 이름을 NewActionMapping_0 에서 **Handbrake** 로 변경합니다. 그리고 이 프로퍼티를 펼친 뒤 선택 박스를 사용하여 키 값을 None (없음)에서 **Space Bar** (스페이스 바)로 변경합니다.
+
+ 
+
+ 1. 다음, Axis Mappings (축 매핑) 프로퍼티 옆 **+** 부호를 클릭하여 **축 매핑** 셋업을 해주겠습니다. 두 개의 축 매핑에 대해 다음과 같이 반복해 줍니다:
+
+ 
+
+ 1. 첫 축 매핑 이름을 NewAxisMapping_0 에서 **Forward** 로 변경합니다. 두 번째 것에 대해서도 똑같이 이름을 NewAxisMapping_1 에서 **Right** 로 변경합니다.
+
+ 
+
+ 1. **Forward** 축 매핑을 펼친 뒤 **+** 부호를 한 번 클릭하여 Forward 아래 두 개의 축 매핑이 오도록 합니다. 그리고 첫 번째 None 이 **W** 키를 입력으로 사용하도록 설정합니다. 두 번째 None 은 **S** 키를 사용하도록 설정합니다.
+
+ 
+
+ 1. **Forward** 축 매핑 아래 **S** 키 입력 옆 **Scale** 값을 **-1** 로 설정합니다.
+
+ 
+
+ 1. **Right** 축 매핑을 펼치고 **+** 를 한 번 클릭하여 Right 아래 두 개의 축 매핑이 오도록 합니다. 그리고 첫 번째 None 은 **D** 키로, 두 번째는 **A** 키로 설정합니다.
+
+ 
+
+ 1. **Right** 축 매핑 아래 **A** 키 입력 옆 **Scale** 값을 **-1** 로 변경합니다.
+
+ 
+
+ 액션 및 축 매핑 설정이 완료되었으면, 바인딩은 다음과 같을 것입니다:
+
+ 
+
+1. 컨트롤 셋업이 되었으니, 이제 실제로 무언가 작업을 해야 합니다. 앞서 만든 **비히클 블루프린트** 를 열고 **이벤트 그래프** 를 찾습니다. 여기서 프로젝트 세팅의 입력 섹션에서 만든 축 및 액션 이벤트 호출이 가능할 것입니다.
+
+ (w:669)
+
+1. 이벤트 그래프에서, 스로틀 셋업은 다음과 같습니다:
+
+ 
+
+1. 이벤트 그래프에서, 스티어링 셋업은 다음과 같습니다:
+
+ 
+
+1. 이벤트 그래프에서, 핸드 브레이크 셋업은 다음과 같습니다:
+
+ 
+
+## 최종 결과
+
+입력 이벤트를 추가했으니 이제 입력 이동을 받는 정상 작동 비히클이 생겼습니다! 다음 마지막 단계에서는, 게임을 실행하면 비히클 폰을 기본 폰으로 사용하는 게임 모드를 새로 셋업하겠습니다.
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.CHN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.CHN.udn
new file mode 100644
index 000000000000..19e565aed300
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.CHN.udn
@@ -0,0 +1,76 @@
+INTSourceChangelist:0
+Availability: Public
+crumbs:
+Title: 5 - Setting up a New Game Mode
+Description: In this step, we'll setup a new Game Mode to spawn our Vehicle!
+Type: Multi-step
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:5
+Tags: Vehicles
+
+
+[Nav]
+
+In the previous step we finished setting up our Vehicle Blueprint and assigned all the controls we need to make it work properly. In this last step, we'll finish by setting up a new Game Mode that
+is uses our Vehicle Blueprint as the Default Pawn for the game.
+
+[REGION:note]
+If you did not use a blank project template when starting this guide you may find that you already have a Game Mode assigned that conflicts with the one we're creating in this step. Use the steps below
+to create a new Game Mode so that you can spawn in the vehicle you've created throughout this guide.
+[/REGION]
+
+## Creating a New Game Mode
+
+1. In the **Content Browser** click the **Add New** button and select **Blueprint Class** from the menu list.
+1. In the **Pick Parent Class** window, select **Game Mode Base** and then click the **Select** button to create the Game Mode Blueprint.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. In the **Content Browser**, double-click to open the new Game Mode Blueprint so that you can edit it. In the **Details** under **Classes** next to **Default Pawn Class**, use the drop-down selection to choose
+**Your Vehicle Blueprint** that you created in Step 3.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+ Aftering doing this you can click **Save** and then **Close** this window.
+
+1. In the Main Viewport window in the **World Settings** tab under the **Game Mode** section set **GameMode Override** to **Your Game Mode Blueprint**.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+
+
+## End Result
+
+[REGION:raw]
+
+[/REGION]
+
+Congratulations! Now, when you Play in Editor (PIE) you should automatically spawn in with your very own vehicle that you created! You've learned everything you need to create your own working
+vehicles in UE4. As you worked your way through this guide, you learned:
+
+✓ How to configure a TireConfig Data Asset.
+✓ How to configure a Wheel Blueprint for your Font and Rear wheels.
+✓ How to setup an Animation Blueprint specifically for a Vehicle.
+✓ How to configure your Vehicle Blueprint with your Skeletal Mesh, Animation Blueprint, and Wheel Blueprint(s).
+✓ How to configure your Axis Mappings and Bindings to control your Vehicle.
+✓ How to create and assign a new Game Mode to spawn your vehicle.
+
+## Getting Started with Vehicle in Unreal Engine
+
+For additional resources with Vehicles you can take a look at the following pages:
+
+* [Vehicle Content Creation](Engine/Physics/Vehicles/VehcileContentCreation)
+* [Vehicle Center of Mass](Engine\Physics\Vehicles\VehicleCenterOfMass)
+* [How to Build a Double Wishbone Suspension Vehicle](Engine/Physics/Vehicles/DoubleWishboneVehicle)
+* [Simple Wheeled Vehicle Movement Component](Engine\Physics\Vehicles\SimpleWheeledVehicleMovementComponent)
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.INT.udn
new file mode 100644
index 000000000000..c4b134dcca9f
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.INT.udn
@@ -0,0 +1,68 @@
+Availability: Public
+crumbs:%ROOT%
+Title: 6 - Setting up a New Game Mode
+Description: In this step, you'll setup a new Game Mode to spawn our Vehicle.
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:6
+Tags: Vehicles
+
+[Nav]
+
+In the previous step, you finished setting up our Vehicle Blueprint and assigned all of the controls that you need to make it work properly. In this last step, you'll finish by setting up a new Game Mode that uses your own Vehicle Blueprint as the Default Pawn for the game.
+
+[REGION:note]
+If you did not use a Blank Project Template when starting this guide you may find that you already have a Game Mode assigned that conflicts with the one you'll create in this step. Use the steps below to create a new Game Mode so that you can spawn in the vehicle you've created throughout this guide.
+[/REGION]
+
+## Creating a New Game Mode
+
+1. In the **Content Browser**, click the **Add New** button and select **Blueprint Class** from the menu list.
+1. In the **Pick Parent Class** window, select **Game Mode Base**, and then click the **Select** button to create the Game Mode Blueprint.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. In the **Content Browser**, double-click to open the new Game Mode Blueprint so that you can edit it. In the **Details** under **Classes**, next to **Default Pawn Class**, use the drop-down selection to choose **Your Vehicle Blueprint** (which you created in Step 3).
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+ Aftering doing this, you can click **Save** and then **Close** this window.
+
+1. In the Main Viewport window, in the **World Settings** tab under the **Game Mode** section, set **GameMode Override** to **Your Game Mode Blueprint**.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+## End Result
+
+[REGION:raw]
+
+[/REGION]
+
+Congratulations! Now, when you Play in Editor (PIE) you should automatically spawn in with your very own vehicle that you created. You've learned everything you need to create your own working
+vehicles in UE4. As you worked your way through this guide, you learned:
+
+✓ How to configure a TireConfig Data Asset.
+✓ How to configure a Wheel Blueprint for your Font and Rear wheels.
+✓ How to setup an Animation Blueprint specifically for a Vehicle.
+✓ How to configure your Vehicle Blueprint with your Skeletal Mesh, Animation Blueprint, and Wheel Blueprint(s).
+✓ How to configure your Axis Mappings and Bindings to control your Vehicle.
+✓ How to create and assign a new Game Mode to spawn your vehicle.
+
+## Getting Started with Vehicle in Unreal Engine
+
+For additional resources with Vehicles you can take a look at the following pages:
+
+* [Vehicle Content Creation](Engine/Physics/Vehicles/VehcileContentCreation)
+* [How to Build a Double Wishbone Suspension Vehicle](Engine/Physics/Vehicles/DoubleWishboneVehicle)
+* [Vehicle Center of Mass](Engine\Physics\Vehicles\VehicleCenterOfMass)
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.JPN.udn
new file mode 100644
index 000000000000..00ccdc397903
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.JPN.udn
@@ -0,0 +1,69 @@
+INTSourceChangelist:3400712
+Availability:Public
+crumbs:%ROOT%
+Title:6 - 新規 Game Mode を設定する
+Description:このステップでは、ビークルをスポーンするための Game Mode をセットアップします。
+Type:how-to
+SkillLevel:Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:6
+Tags:Vehicles
+
+[Nav]
+
+前のステップでは、Vehicle ブループリントのセットアップを終了し、適切に機能するために必要なすべての制御を割り当てました。この最後のステップでは、Vehicle ブループリントをゲームのデフォルト ポーンとして使用する新規 Game Mode をセットアップします。
+
+[REGION:note]
+このガイドを開始するときに、Blank Project Template を使わなかった場合、既に Game Mode が割り当てられていて、このステップで作成するものとコンフリクトすることがあります。以下のステップを使って新規 Game Mode を作成し、このガイドを通して作成したビークルでスポーンできるようにします。
+[/REGION]
+
+## 新規 Game Mode を作成する
+
+1. **コンテンツ ブラウザ** で **[Add New]** ボタンをクリックして、メニュー リストから **[Blueprint Class]** を選択します。
+1. **[Pick Parent Class]** ウィンドウで、**[Game Mode Base]** を選択します。次に **[Select]** ボタンをクリックして Game Mode ブループリントを作成します。
+ [REGION:raw]
+
+ 
+ [/REGION]
+
+1. **コンテンツ ブラウザ** で Game Mode ブループリントをダブルクリックして開いて編集できるようにします。**[Details]** の **[Classes]** で、**[Default Pawn Class]** の隣で、ドロップダウンの選択肢から **Vehicle Blueprint** (ステップ 3 で作成したもの) を選択します。
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+ これを行うと、**[Save]** をクリックして、このウィンドウを **[Close]** できるようになります。
+
+1. メイン ビューポート ウィンドウの **[World Settings]** タブの **[Game Mode]** セクションで、**[GameMode Override]** をご自分の **[Game Mode Blueprint]** に設定します。
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+## 最終結果
+
+[REGION:raw]
+
+[/REGION]
+
+これで終わりです! エディタでプレイする (PIE) と、作成したビークルが自動的にスポーンされます。ここまでで UE4 で機能するビークルを作成するために必要なことについて
+学習しました。このガイドで学んだ内容は以下の通りです。
+
+✓ TireConfig Data アセットの設定方法
+✓ 前輪と後輪に対して Wheel ブループリントを設定する方法
+✓ ビークル用に Animation ブループリントをセットアップする方法
+✓ スケルタルメッシュ、Animation ブループリント、および Wheel ブループリントを使って Vehicle ブループリントを設定する方法
+✓ 軸マッピングとバインディングを設定してビークルを制御する方法
+✓ 新しい Game Mode を作成し割り当ててビークルをスポーンする方法
+
+## アンリアル エンジンでビークルの作業を開始する
+
+ビークルに関するその他の情報については、以下のページをご覧ください。
+
+* [ビークルのコンテンツ作成](Engine/Physics/Vehicles/VehcileContentCreation)
+* [ダブルウィッシュボーン式サスペンション ビークルのビルド方法](Engine/Physics/Vehicles/DoubleWishboneVehicle)
+* [ビークルの重心](Engine\Physics\Vehicles\VehicleCenterOfMass)
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.KOR.udn
new file mode 100644
index 000000000000..2a2b96af0841
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/6/VehicleNewGameMode.KOR.udn
@@ -0,0 +1,69 @@
+INTSourceChangelist:3400712
+Availability: Public
+crumbs:%ROOT%
+Title: 6 - 새 게임 모드 구성
+Description: 비히클 스폰을 위한 새 게임 모드를 구성합니다!
+Type:how-to
+SkillLevel: Advanced
+Version: 4.15
+Parent: Engine/Physics/Vehicles/VehicleUserGuide
+checkpoint:vehicleuserguideHT
+Order:6
+Tags: Vehicles
+
+[Nav]
+
+예전 단계에서, 비히클 블루프린트 구성 및 정상 작동을 위해 필요한 모든 컨트롤 할당 작업을 마쳤습니다. 이번 마지막 단계에서는 우리 비히클 블루프린트를 게임의 기본 폰으로 사용하도록 새 Game Mode (게임 모드)를 구성해 보겠습니다.
+
+[REGION:note]
+이 안내서를 시작할 때 공백 프로젝트 템플릿을 사용하지 않았다면, 이미 할당된 게임 모드가 있어 이번 단계에서 만들려는 것과 충돌이 일어납니다. 게임 모드를 새로 만들어 지금까지 만든 비히클을 스폰하는 방법은 아래와 같습니다.
+[/REGION]
+
+## 새 게임 모드 생성
+
+1. **콘텐츠 브라우저** 에서 **신규 추가** 버튼을 클릭하고 메뉴 목록에서 **블루프린트 클래스** 를 선택합니다.
+1. **부모 클래스 선택** 창에서 **Game Mode Base** 를 선택한 뒤 **선택** 버튼을 눌러 게임 모드 블루프린트를 만듭니다.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+1. **콘텐프 브라우저** 에서 새로 만든 게임 모드 블루프린트를 더블클릭하여 편집할 수 있도록 합니다. **디테일** 에서 **Classes** 아래 **Default Pawn Class** 옆, 드롭다운 선택 버튼을 사용하여 (3 단계에서 만든) **Your Vehicle Blueprint** 를 선택합니다.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+ 그 후 **저장** 한 뒤 이 창을 **닫습니다**.
+
+1. 메인 뷰포트 창에서, **월드 세팅** 탭의 **Game Mode** 섹션 아래 **GameMode Override** (게임모드 오버라이드)를 **Your Game Mode Blueprint** 로 설정합니다.
+
+ [REGION:raw]
+ 
+ [/REGION]
+
+## 최종 결과
+
+[REGION:raw]
+
+[/REGION]
+
+축하합니다! 이제 에디터에서 플레이(PIE)해 보면 직접 만든 바로 그 비히클이 자동 스폰되는 것이 보일 것입니다. UE4 에서 제대로 된 비히클을 만드는 데 필요한 것들은 모두 배우셨습니다.
+그 내용은 다음과 같습니다:
+
+✓ TireConfig 데이터 애셋 환경설정 방법.
+✓ 앞뒷바퀴에 대한 휠 블루프린트 구성 방법.
+✓ 비히클 전용 애니메이션 블루프린트 구성 방법.
+✓ 스켈레탈 메시, 애니메이션 블루프린트, 휠 블루프린트로 비히클 블루프린트를 구성하는 방법.
+✓ 비히클 제어를 위한 축 및 바인딩 매핑 구성 방법.
+✓ 비히클 스폰을 위해 새 게임 모드 생성 및 할당 방법.
+
+## 언리얼 엔진에서 비히클 시작하기
+
+비히클 관련 부가 자료는 다음과 같습니다:
+
+* [](Engine/Physics/Vehicles/VehcileContentCreation)
+* [](Engine/Physics/Vehicles/DoubleWishboneVehicle)
+* [](Engine\Physics\Vehicles\VehicleCenterOfMass)
+
+[Nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.INT.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.INT.udn
index fca4149299bc..284513bec751 100644
--- a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.INT.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.INT.udn
@@ -1,336 +1,88 @@
-Availability:Public
-Title:Vehicles User Guide
-Crumbs:%ROOT%
-Description:The Unreal Engine 4 Blueprint Vehicles User Guide.
-Navigation:topic
-Version: 4.9
-SkillLevel: Advanced
+Availability: Public
+crumbs:%ROOT%
+Title: Vehicle User Guide
+Description: The Unreal Engine 4 Blueprint Vehicle User Guide.
+Type:how-to
+SkillLevel:Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles
+Prereq:Engine/Physics/Vehicles/VehcileContentCreation
+Order:1
+checkpoint:vehicleuserguideHT
+Tags:Vehicles
+topic-image:Vechicle_Topic.png
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Programming/Gameplay/Framework/Vehicle:title%
- [/PARAM]
- [PARAM:description]
- %Programming/Gameplay/Framework/Vehicle:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Programming/Gameplay/Framework/Vehicle]
- [/PARAM]
+
+
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ pYelGtIMQpk
+ [/PARAMLITERAL]
[/OBJECT]
-[/VAR]
-[TOC(start:2 end:3)]
+At the end of this guide, you'll have a fully functional vehicle that you can use in your own game projects.
+## Goal
+In this guide, we'll cover the creation of a vehicle using the **Wheeled Vehicle** Blueprint class in a new blank project. This guide will take you through the process of creating all the necessary
+in-editor items you need to have a functional vehicle but assumes you have your own **Skeletal Mesh** and a **Physics Asset** ready to go. At the end of this guide, you should have a fully functional
+vehicle similar to the one from the Vehicle Game or the Vehicle Template.
-This document will cover the creation of a vehicle using the **Wheeled Vehicle** Blueprint class, in a blank project. The process will take you through the creation of all the
-necessary in-editor items, but assumes you have a **Skeletal Mesh** and a **Physics Asset** for your vehicle ready to go.
+[REGION:note]
+If you need information on getting a vehicle Skeletal Mesh and a Physics Asset into the engine, please see the [Vehicle Content Guide](Engine/Physics/Vehicles/VehcileContentCreation).
+Alternatively, you can work out of the **Vehicle Template** or the **Vehicle Game** project to have access to a pre-built Skeletal Mesh and Physics Asset.
+The **Vehicle Template** is in the **New Project** menu of the **Unreal Project Browser**, and the **Vehicle Game** is on the **Learn** tab of the **Epic Games Launcher**.
+[/REGION]
-If you need information on getting a vehicle Skeletal Mesh and Physics Asset into the engine, please see the [Vehicle Content Guide](Engine/Physics/Vehicles/VehcileContentCreation).
-Alternatively, you can work out of the **Vehicle Template** or **Vehicle Game** to have access to a prebuilt Skeletal Mesh and Physics Asset.
+## Objective
+During the course of this tutorial you will create the key components that make up a Vehicle in Unreal Engine 4 (UE4). Some of this requires assets that you create outside of UE4, while the majority
+of the components will be created right inside of the Editor!
-## Content
-
-A vehicle in Unreal Engine 4 is composed of a number of assets:
+This is the individual assets that make up the Vehicle we'll construct:
* A Skeletal Mesh
* A Physics Asset
* An Animation Blueprint
* A Vehicle Blueprint
* One or more Wheel Blueprints.
-* A TireType Data Asset
+* A TireConfig Data Asset
[REGION:raw]
(convert:false)
[/REGION]
-[REGION:note]
-This document will cover the Blueprint setup required to make a functioning vehicle in Unreal Engine 4, and assumes you already have a vehicle asset to work with. See the
-[](Engine/Physics/Vehicles/VehcileContentCreation) for more information on setting up the Skeletal Mesh and Physics Asset.
+By the end of this guide you'll know how to setup each of these asset types and how they work together to bring your vehicles to life!
+
+* How to configure a TireConfig Data Asset
+* How to configure a Wheel Blueprint for your Font and Rear wheels.
+* How to setup an Animation Blueprint specifically for a Vehicle.
+* How to configure your Vehicle Blueprint with your Skeletal Mesh, Animation Blueprint, and Wheel Blueprint(s).
+* How to configure your Axis Mappings and Bindings to control your Vehicle.
+* How to create and assign a new Game Mode to spawn your vehicle.
+
+[OBJECT:TopicList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ Steps
+ [/PARAM]
+ [PARAM:description]
+ [/PARAM]
+ [PARAM:links]
+ [DIR(output:"checkpoint" parent:"Engine/Physics/Vehicles/VehicleUserGuide" org:"hierarchy")]
+ [/PARAM]
+[/OBJECT]
+
+[REGION:call_to_action]
+ [Click to Start](Engine/Physics/Vehicles/VehicleUserGuide/1 "%Engine/Physics/Vehicles/VehicleUserGuide/1:title%")
[/REGION]
-## Creating the Vehicle Blueprint
-
-To create a new **Vehicle Blueprint**: in the **Content Browser** click **Add New** button -> **Blueprint** -> search for "vehicle" and click **WheeledVehicle** from the list.
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-## Creating the Wheel Blueprints
-
-To create a new **Wheel Blueprint**: in the **Content Browser** click **Add New** button -> **Blueprint** -> search for "wheel" and click **VehicleWheel** from the list. Repeat
-this at least once so you have a front and rear wheel type.
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-In most cases, you will have at least two wheel types: A wheel that is affected by steering, and one that is not. Also you can set differing radii, mass, width, handbrake effect,
-suspension, and many other properties to give your vehicle the handling you desire.
-
-
-## Creating the TireType Data Asset
-
-To create a new **TireType Data Asset**: in the **Content Browser** click **Add New** button -> **Misc** -> **Data Asset** -> choose **TireType** -> click the **Select** button.
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-[EXCERPT:frictionScale]
-The **TireType Data Asset** only has a single value: **Friction Scale**. This value not only affects the raw friction of the wheel, but also scales the values for how difficult
-(or easy) it is for a wheel to slide while in a hard turn.
-[/EXCERPT:frictionScale]
-
-There is a property slot on the **VehicleWheel** Blueprint type for the **TireType Data Asset**.
-
-## Creating the Animation Blueprint
-
-To create a new **Animation Blueprint**: in the **Content Browser** click **Add New** button -> **Animation** -> **Animation Blueprint** -> choose the **Skeleton** from the list
-that is for your vehicle -> choose **VehicleAnimInstance** -> click the **Ok** button.
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-
-## Editing the Animation Blueprint
-
-**Double-click** the **Animation Blueprint** from the **Content Browser** to edit the vehicle Animation Blueprint in Persona. The **Anim Graph** for a vehicle has been greatly
-simplified for the 4.2 release:
-
-1. **Right-click** in the **Anim Graph**, from the context menu search for the **Mesh Space Ref Pose** node, and select it to create it.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **Right-click** in the **Anim Graph**, from the context menu search for the **Wheel Handler** node, and select it to create it.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. Connect the **Mesh Space Ref Pose** node to the **Wheel Handler** node
-1. Connect the **Wheel Handler** node to the **Final Animation Pose** node
-
-
-
-
-That is it! The **Component to Local** conversion node will be created automatically, and the Animation Blueprint will now drive the wheels of the vehicle.
-
-
-
-### The Wheel Handler Node
-
-
-
-The **Wheel Handler** node handles all the animation needs of your wheels: spinning, steering, handbrake, and suspension. There is no additional setup, it just grabs all the
-necessary information from the wheels (How fast is it spinning? Can it steer? Is it affected by the Handbrake? What are the suspension settings for this wheel?) and translates that
-to animation on the bone the wheel is associated with.
-
-Now, if you have additional struts and other suspension needs, you will need additional nodes in your Anim Graph to handle the joints that affect those polygons. The Vehicle from
-Vehicle Game has a few extra joints that control the axel connections to the wheels. These are driven by simple **Look At** nodes:
-
-
-
-The additional nodes in the Vehicle Game's Vehicle Anim Graph simply cause the strut joints point at the wheel joints. Given the wheel joints will be driven by the Wheel Handler
-Node, and the **Look At** nodes will make sure the suspension stays attached to the wheels.
-
-## Editing the Tires Data Asset
-
-**Double-click** the **TireType Data Asset** from the **Content Browser**.
-
-
-
-[INCLUDE:#frictionscale]
-
-
-## Editing the Wheels Blueprints
-
-**Double-click** the **Wheel Blueprint** from the **Content Browser** to bring up the Blueprint Editor.
-
-
-1. Switch the Blueprint Editor to Defaults Editing mode:
-
- 
-
-1. The properties that initially need to be set are:
-
- * Shape Radius
- * Shape Width
- * Affected by Handbrake (usually restricted to the rear wheels)
- * Steer Angle (usually only the front wheels)
-
- [REGION:raw]
- 
- [/REGION]
-
-1. Finally, you will need to set your Tire Type.
-
- [REGION:raw]
- 
- [/REGION]
-
-
-These are the 5 things you will need to change for each wheel. The rest of the properties change the way your vehicle will perform, and can be tweaked as you start testing your
-vehicle.
-
-## Editing the Vehicle Blueprint
-
-This is really where the vehicle starts to come together. If your art is ready, and you have setup your wheels, then you will be able to fashion a working vehicle at this point.
-
-**Double-click** the **Vehicle Blueprint** from the **Content Browser** to bring up the Blueprint Editor.
-
-1. Click on the **Skeletal Mesh Component's** called "Mesh" and in its **Details** panel, set the **Skeletal Mesh** property to your vehicle's Skeletal Mesh asset.
-
- 
-
-1. **Set** the **Anim Blueprint Generated Class** to your vehicles Animation Blueprint.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. Return to the **Components** panel and add a **Camera Component**.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **Position** this Camera Component where you like. In the image below, it is positioned behind the vehicle.
-
- 
-
-1. Disable **Camera Settings** -> **Use Controller View Rotation**, this will lock the camera to its view direction, rather than that of the Player Controller.
-
- 
-
-1. Select the **Vehicle Movement Component** and in the **Vehicle Setup** category, expand **Wheel Setups**.
-
- 
-
-1. For each wheel (0-3):
- 1. **Set** the **Wheel Class** to one of the wheel Blueprints you created.
- 1. **Set** the **Bone Name** to the name of the joint that should be controlled by the wheel.
-
- [REGION:raw]
- 
- [/REGION]
-
- _The **Bone Name** in the above image is specific to this skeletal mesh._
-
- The order you assign wheels has no bearing on if it is a front or a rear wheel, only the **Bone Name** and **Wheel Class** have any affect.
-
- [REGION:note]
- If you need more than 4 wheels, you can click the "**+**" icon next to the **Wheel Setups** property to add more.
- [/REGION]
-
-At this point, assuming your vehicle is not substantially larger than a minivan, the default values will be a good starting point for you to start testing.
-
-
-## Testing
-
-There are a few ways to setup the vehicle for testing, and some steps will be dependent on which template you started with.
-
-1. Controls
-
- [REGION:raw]
- 
- [/REGION]
-
- 1. **Project Settings** -> **Input**
- 1. **Add** an **Axis Mapping**, by clicking the "**+**" sign next to the Axis Mappings property
- 1. **Expand** the Axis Mappings
- 1. **Rename** the Axis Mapping from "None" to **Forward**
- 1. **Click** the "**+**" next to the **Forward** Axis Mapping
- 1. **Expand** the **Forward** Axis Mapping
- 1. **Set** the first "None" to "**W**"
- 1. **Set** the second "None" to "**S**"
- 1. **Set** the Scale of the "**S**" mapping to "-1.0"
- 1. **Add** another **Axis Mapping**, by clicking the "**+**" sign next to the Axis Mappings property
- 1. **Rename** the new Axis Mapping from "None" to **Right**
- 1. **Expand** the **Right** Axis Mapping
- 1. **Set** the first "None" to "**D**"
- 1. **Set** the second "None" to "**A**"
- 1. **Set** the Scale of the "**A**" mapping to "-1.0"
- 1. Then **add** an **Action Mapping**, by clicking the "**+**" sign next to the Action Mappings property, for:
- 1. **Expand** the **Action Mappings** property
- 1. **Rename** the new Action Mapping from "None" to "**Handbrake**"
- 1. **Expand** the **Handbrake** Action Mapping
- 1. **Set** the "None" to "**Space Bar**"
-1. New Game Mode
- 1. Create new Game Mode Blueprint.
-
- [REGION:raw]
- 
- [/REGION]
-
- 1. **Double-click** your new Game Mode Blueprint to edit it.
-
- 1. **Game Mode** Category -> **Default Pawn Class** -> **change** "None" to your **Vehicle Blueprint**.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **World Settings** -> **Game Mode** -> set **GameMode Override** to "Your Game Mode".
-
- [REGION:raw]
- 
- [/REGION]
-
-1. In your vehicle's Blueprint, you can then call on the Axis and Action events you created in the **Project Settings Input** category.
- 1. **Edit** your Vehicle Blueprint, and open the **Event Graph**.
-
- 
-
- 1. Throttle
-
- 
-
- 1. Steering
-
- 
-
- 1. Handbrake
-
- 
-
-1. Player Start
- * If you do not have a **Player Start** Actor in the world, you can either add one to your map using the **Modes Panel** -> **Placement Mode** -> **Basic** -> then clicking and
- dragging a **Player Start** into the world.
-
- [REGION:raw]
- 
- [/REGION]
-
- Alternatively you can set Play in Editor to play from the current camera location.
-1. Finally, with everything setup, you are now ready to use **Play in Editor** to test your vehicle.
-
- [REGION:raw]
- 
- [/REGION]
-
- Given the Axis and Action Bindings you setup above, **W** will increase your throttle, **S** will apply the brakes, **A** will turn left, **D** will turn right, and
- **Space Bar** will apply the Handbrake.
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.JPN.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.JPN.udn
index 1229be217658..c8fa0dd58004 100644
--- a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.JPN.udn
@@ -1,337 +1,89 @@
-INTSourceChangelist:2752762
+INTSourceChangelist:3453053
Availability:Public
-Title:ビークル ユーザー ガイド
-Crumbs:%ROOT%
-Description:アンリアル エンジン 4 のブループリントのビークル ユーザー ガイド
-Navigation:topic
-Version:4.9
+crumbs:%ROOT%
+Title:ビークルのユーザーガイド
+Description:UE4 のブループリントのビークルのユーザーガイド
+Type:how-to
SkillLevel:Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles
+Prereq:Engine/Physics/Vehicles/VehcileContentCreation
+Order:1
+checkpoint:vehicleuserguideHT
+Tags:Vehicles
+topic-image:Vechicle_Topic.png
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Programming/Gameplay/Framework/Vehicle:title%
- [/PARAM]
- [PARAM:description]
- %Programming/Gameplay/Framework/Vehicle:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Programming/Gameplay/Framework/Vehicle]
- [/PARAM]
+
+
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ pYelGtIMQpk
+ [/PARAMLITERAL]
[/OBJECT]
-[/VAR]
-[TOC(start:2 end:3)]
+このガイドを終えると、ゲーム プロジェクトで使用可能な十分機能するビークルが出来上がります。
+## ゴール
+このガイドでは、新規ブランク プロジェクトで **Wheeled Vehicle** Blueprint クラスを使用したビークル作成について説明します。このガイドでは、ビークルを機能させるために必要なすべてのインエディタのアイテムを作成する方法を説明しますが、
+ご自身で **スケルタルメッシュ** と **Physics アセット** を用意してあることを前提とします。このガイドを終えると、 Vehicle Game や Vehicle Template にあるもののように
+十分機能するビークルが出来上がります。
-このドキュメントでは、ブランク プロジェクトで、**Wheeled Vehicle** ブループリント クラスを使用したビークルの作成について説明します。このプロセスでは、必要なすべてのインエディタのアイテムを作成する方法を説明しますが、
-ご自身のビークルの スケルタルメッシュ と 物理アセット を用意してあることを前提とします。
+[REGION:note]
+ビークルのスケルタルメッシュと Physics アセットをアンリアル エンジンで用意するための情報が必要な場合は、[ビークルのコンテンツ ガイド] (Engine/Physics/Vehicles/VehcileContentCreation) をご覧ください。
+他の方法としては、**Vehicle Template** または **Vehicle Game** プロジェクトで作業して、プリビルドされたスケルタルメッシュと Physics アセットを利用できます。
+**Vehicle Template** は、**Unreal Project Browser** の **[New Project]** メニューにあります。**Vehicle Game** は **Epic Games Launcher** の **[Learn]** タブにあります。
+[/REGION]
-ビークルのスケルタルメッシュと物理アセットをエンジンに用意する情報が必要な場合は、[ビークルのコンテンツ ガイド] (Engine/Physics/Vehicles/VehcileContentCreation) をご覧ください。
-他の方法としては、**Vehicle Template** または **Vehicle Game** で作業して、プリビルドされたスケルタルメッシュと物理アセットを利用できます。
+## 目的
+このチュートリアルでは、UE4 のビークルを構成する主なコンポーネントを作成します。その一部は UE4 の外部で作成したアセットを必要としますが、ほとんどのコンポーネントは
+エディタ内で作成できます。
-## コンテンツ
+以下は、これから作成するビークルを構成するアセットです。
-アンリアル エンジン 4 のビークルは、以下のような数多くのアセットから構成されます。
-
-* スケルタル メッシュ
-* 物理アセット
+* スケルタルメッシュ
+* Physics アセット
* Animation ブループリント
* Vehicle ブループリント
-* 1 つ以上の Wheel のブループリント
-* TireType のデータアセット
+* ひとつ以上の Wheel ブループリント
+* TireConfig Data アセット
[REGION:raw]
(convert:false)
[/REGION]
-[REGION:note]
-このドキュメントでは、アンリアル エンジン 4 で機能するビークルを作るために必要なブループリントのセットアップについて説明します。ただし、作業するビークル アセットを既にご用意いただいていることを前提とします。詳細は
-ビークルの スケルタルメッシュ と 物理アセット をセットアップする情報については、以下をご覧ください。[ビークルのコンテンツ ガイド] (Engine/Physics/Vehicles/VehcileContentCreation)
+このガイドを終えると、こうしたアセットをセットアップし、それがどのように機能してビークルを生き生きと動かすかがわかるようになるでしょう。
+
+* TireConfig Data アセットの設定方法
+* 前輪と後輪に対して Wheel ブループリントを設定する方法
+* 特にビークル用に Animation ブループリントをセットアップする方法
+* スケルタルメッシュ、Animation ブループリント、および Wheel ブループリントを使って Vehicle ブループリントを設定する方法
+* 軸マッピングとバインディングを設定してビークルを制御する方法
+* 新しい Game Mode を作成し割り当ててビークルをスポーンする方法
+
+[OBJECT:TopicList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ ステップ
+ [/PARAM]
+ [PARAM:description]
+ [/PARAM]
+ [PARAM:links]
+ [DIR(output:"checkpoint" parent:"Engine/Physics/Vehicles/VehicleUserGuide" org:"hierarchy")]
+ [/PARAM]
+[/OBJECT]
+
+[REGION:call_to_action]
+ [クリックして開始](Engine/Physics/Vehicles/VehicleUserGuide/1 "%Engine/Physics/Vehicles/VehicleUserGuide/1:title%")
[/REGION]
-## Vehicle のブループリントを作成する
-
-新規 **Vehicle ブループリント** を作成するには、**[コンテンツ ブラウザ]** の **[New (新規)]** ボタン -> **[Blueprint]** -> [vehicle (ビークル)] を検索し、次に、リストの **[WheeledVehicle]** をクリックします。
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-## Wheel ブループリントを作成する
-
-**Vehicle ブループリント** を作成するには、**[コンテンツ ブラウザ]** の **[New (新規)]** ボタン -> **[Blueprint]** -> [vehicle (ビークル)] を検索し、次にリストの **[WheeledVehicle]** をクリックします。上記手順を最低 1 回繰り返すと、
-前輪と後輪のタイプができます。
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-車輪の種類は、最低でも 2 種類選ぶことが多いです。ステアリングの影響を受ける車輪と影響を受けない車輪の 2 種類です。また、異なる半径、質量、幅、ハンドブレーキの効果、サスペンションや他の多くのプロパティを設定し、
-必要とするハンドリングをビークルに設定します。
-
-
-## TireType のデータアセットを作成する
-
-**コンテンツ ブラウザ** で新規 **TireType のデータアセット** を作成するには、以下の順序で選択します。**[Add New (新規追加)]** ボタン-> **[Misc (その他)]** -> **[Data Asset (データアセット)]** -> **[TireType]** を選択し **[Select (選択)]** ボタンをクリックします。
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-[EXCERPT:frictionScale]
-**TireType のデータアセット** には、次の 1 つの値だけがあります。**Friction Scale** です。この値は、車輪の未加工の摩擦力に影響を与えるだけでなく、
-きついカーブで車輪がどれくらいスライドしづらいか (またはスライドしやすいか) についてもスケーリングします。
-[/EXCERPT:frictionScale]
-
-**TireType データアセット** には、**VehicleWheel** ブループリントのプロパティ スロットがあります。
-
-## Animation ブループリントを作成する
-
-新規 **Animation ブループリント** を作成するには、**[コンテンツ ブラウザ]** で **[New (新規)]** ボタン -> **[Animation]** -> **[Animation ブループリント]** を選択し、
-ビークルのリストから **[Skeleton]** そして **VehicleAnimInstance** を選択したら [Ok] ボタンをクリックします。
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-
-## Animation ブループリントを編集する
-
-**[コンテンツ ブラウザ]** から **[Animation ブループリント]** を **ダブルクリック** して、ペルソナでビークルの Animation ブループリントを編集します。ビークルの **Anim Graph** は、
-4.2 リリースでは非常に単純化されています。
-
-1. コンテキスト メニューから、**[Anim Graph]** で **右クリック** して、**Mesh Space Ref Pose** ノードを検索し、それを選択し、作成します。
-
- [REGION:raw]
- 
- [/REGION]
-
-1. コンテキスト メニューから、**[Anim Graph]** で **右クリック** して、**Wheel Handler** ノードを検索し、それを選択し、作成します。
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **Mesh Space Ref Pose** ノードを **Wheel Handler** ノードに接続します。
-1. **Wheel Handler** ノードを **Final Animation Pose** ノードに接続します。
-
-
-
-
-完了です ! **Component to Local** 変換ノードが自動的に作成され、Animation ブループリントがビークルの車輪を動かします。
-
-
-
-### Wheel Handler ノード
-
-
-
-**Wheel Handler** ノードは、スピン、ステアリング、ハンドブレーキ、サスペンションの車輪のすべてのアニメーションのニーズを処理します。新たにセットアップするものはなく、
-単に車輪から必要な情報 (どれくらい速くスピンするか、操縦できるか?ハンドブレーキの影響を受けるか?車輪のサスペンション設定はどうなっているか?) を集め、
-それを車輪が関連づけられているボーンのアニメーションに変換します。
-
-追加のストラットやその他のサスペンションが必要であれば、ポリゴンに影響を与えるジョイントを処理するためのノードを Anim Graph に追加する必要があります。カメラから遠ざかるにつれてメッシュの影響が制限されます。
-ビークル ゲームのビークルには、いくつかのエクストラ ジョイントがあります。こうしたジョイントは単純な **Look At** ノードによって動きます。
-
-
-
-ビークル ゲームのビークルの Anim Graph は単にストラット ジョイントが車輪ジョイントをポイントするようにします。車輪ジョイントが Wheel Handler Node で動き、
-**Look At** ノードによって、サスペンションが車輪に確実にアタッチされる状態を保つようにすることを前提とします。
-
-## タイヤのデータアセットを編集する
-
-**コンテンツ ブラウザ** から **TireType Data Asset** を **ダブルクリック** します。
-
-
-
-[INCLUDE:#frictionscale]
-
-
-## Wheel ブループリントを編集する
-
-**コンテンツ ブラウザ** から **Wheel Blueprint** を **ダブルクリック** して、ブループリント エディタ を表示します。
-
-
-1. ブループリント エディタをデフォルトの編集モードに切り替えます。
-
- 
-
-1. 以下は最初に設定すべきプロパティです。
-
- * Shape Radius
- * Shape Width
- * Affected by Handbrake (通常は後輪に制限)
- * Steer Angle (通常、前輪のみ)
-
- [REGION:raw]
- 
- [/REGION]
-
-1. 最後に、Tire Type を設定する必要があります。
-
- [REGION:raw]
- 
- [/REGION]
-
-
-上記 5 つのプロパティを、各車輪に対して変更する必要があります。それ以外のプロパティは、ビークルの動き方を変えるものであり、
-ビークルのテストを開始後に微調整できます。
-
-## Vehicle のブループリントを編集する
-
-ここから、実際にビークルが一体化されていきます。アートの準備が整い、車輪をセットアップしたら、この時点で動作するビークルを形作ることができます。
-
-**コンテンツ ブラウザ** から **Vehicle ブループリント** を **ダブルクリック** して、ブループリント エディタを表示します。
-
-1. 「Mesh」 という **Skeletal Mesh コンポーネント** で、 **Skeletal Mesh** プロパティをビークルの Skeletal Mesh アセットに設定します。
-
- 
-
-1. **Anim Blueprint Generated クラス** をビークルの Animation ブループリントに設定します。
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **Components モード** のまま、**Camera コンポーネント** を追加します。
-
- [REGION:raw]
- 
- [/REGION]
-
-1. お好みの位置にカメラを **配置** します。以下の画像では、カメラはビークルの後ろにあります。
-
- 
-
-1. 以下の順序で、**[Camera Settings (カメラ設定)]** -> **[Use Controller View Rotation (コントローラー ビュー回転を使用)]** を無効にします。これにより、カメラをプレイヤー コントローラの方向ではなく視線方向にロックします。
-
- 
-
-1. **Vehicle Movement コンポーネント** の **[Vehicle Setup (ビークル設定)]** カテゴリで **[Wheel Setups (車輪の設定)]** を展開します。
-
- 
-
-1. 各車輪 (0-3) に対して以下を設定します。
- 1. 作成した車輪のブループリントの 1 つに **[Wheel Class (車輪のクラス)]** を **設定** します。
- 1. 車輪が制御するジョイント名に **[Bone Name (ボーン名)]** を **設定** します。
-
- [REGION:raw]
- 
- [/REGION]
-
- _上記画像の **ボーン名** は、このスケルタルメッシュ固有のものです。_
-
- 車輪を割り当てた順序は、前輪であるか後輪であるかに関係なく、**[Bone Name (ボーン名)]** と **[Wheel Class (車輪のクラス)}** だけが影響を与えます。
-
- [REGION:note]
- 4 つ以上の車輪が必要な場合、**Wheel Setups** プロパティの隣にある "**+**" アイコンをクリックして車輪を追加できます。
- [/REGION]
-
-この時点では、ビークルがミニバンよりもはるかに大きなものではないことを前提とし、テストを開始するにはデフォルト値が最適な開始点になるでしょう。
-
-
-## テスト
-
-テストのためにビークルをセットアップするには、2、3 の方法があります。いくつかの手順は、どのテンプレートで開始したかによって変わります。
-
-1. コントロール
-
- [REGION:raw]
- 
- [/REGION]
-
- 1. **[Project Settings (プロジェクト設定)]** -> **[Input (入力)]**
- 1. **Axis Mappings** プロパティの隣にある "**+**" 記号をクリックして、Axis Mappings を **追加** します。
- 1. 軸マッピングを **展開** します。
- 1. 軸マッピングを "None" から **Forward** に **名前変更** します。
- 1. **Forward** 軸マッピングの隣にある "**+**" 記号を **クリック** します。
- 1. **Forward** 軸マッピングを **展開** します。
- 1. 1 つ目の "None" を "**W**" に **設定** します。
- 1. 2 つ目の"None" を "**S**" に **設定** します。
- 1. "**S**" マッピングのスケールを "-1.0" に **設定** します。
- 1. **Axis Mappings** プロパティの隣にある "**+**" 記号をクリックして、Axis Mappings プロパティにもう 1 つ追加します。
- 1. 新しい軸マッピングを "None" から **Right** に **名前変更** します。
- 1. **Right** 軸マッピングを **展開** します。
- 1. 1 つ目の "None" を "**D**" に **設定** します。
- 1. 2 つ目の"None" を "**A**" に **設定** します。
- 1. "**A**" マッピングのスケールを "-1.0" に **設定** します。
- 1. **Action Mappings** プロパティの隣にある "**+**" 記号をクリックして、Action マッピングを追加します。
- 1. **Action Mappings** プロパティを **展開** します。
- 1. 新しい Action マッピング名を "None" から **Handbrake** に **変更** します。
- 1. **Handbrake** アクション マッピングを **展開** します。
- 1. "None" を "**Space Bar**" に **設定** します。
-1. 新規ゲームモード
- 1. 新規ゲームモードのブループリントを作成します。
-
- [REGION:raw]
- 
- [/REGION]
-
- 1. 新規ゲームモードのブループリントを編集するには **ダブルクリック** します。
-
- 1. **[Game Mode]** カテゴリ-> **[Default Pawn Class]** -> の順序で選択し、"None" をご自身の **ビークル ブループリント** に変更してください。
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **[World Settings (ワールド設定)]** -> **[Game Mode]** -> **[Gamemode Override (ゲームモードをオーバーライド)]** をご自身のゲームモードに設定します。
-
- [REGION:raw]
- 
- [/REGION]
-
-1. Vehicle ブループリントで、**[Project Settings Input]** カテゴリで作成した Axis Event と Action Event を呼び出すことができます。
- 1. Vehicle ブループリントを **編集** し、**Event Graph** に切り替えます。
-
- 
-
- 1. スロットル
-
- 
-
- 1. ステアリング
-
- 
-
- 1. ハンドブレーキ
-
- 
-
-1. プレイヤースタート
- * ワールドに **Player Start** アクタがない場合、以下の順序で選択してマップに追加することができます。
- **[Modes Panel]** -> **[Placement Mode]** -> **[Basic]** -> 次に、[Player Start] をクリックしてワールドにドラッグします。
-
- [REGION:raw]
- 
- [/REGION]
-
- または現在のカメラ位置からプレイするために PIE (Play in Editor) を設定することもできます。
-1. 最後に、すべてをセットアップした状態で、**Play in Editor** を使用してビークルをテストする準備が整いました。
-
- [REGION:raw]
- 
- [/REGION]
-
- 上記で設定した軸と Axis と Action Bindings を前提に、**W** はスロットルを強め、**S** はブレーキを適用し、**A** は左折、**D** は右折、
- **Space Bar** はハンドブレーキを適用します。
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.KOR.udn b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.KOR.udn
index a9786fb662fe..4d7e3d1f7d76 100644
--- a/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Physics/Vehicles/VehicleUserGuide/VehicleIntro.KOR.udn
@@ -1,336 +1,89 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3453053
Availability:Public
Title:비히클 사용 안내서
-Crumbs:%ROOT%
+crumbs:%ROOT%
Description:언리얼 엔진 4 블루프린트 비히클 사용 안내서입니다.
-Navigation:topic
-Version: 4.9
+Type:how-to
SkillLevel: Advanced
+Version:4.15
+Parent:Engine/Physics/Vehicles
+Prereq:Engine/Physics/Vehicles/VehcileContentCreation
+Order:1
+checkpoint:vehicleuserguideHT
+Tags:Vehicles
+topic-image:Vechicle_Topic.png
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Programming/Gameplay/Framework/Vehicle:title%
- [/PARAM]
- [PARAM:description]
- %Programming/Gameplay/Framework/Vehicle:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Programming/Gameplay/Framework/Vehicle]
- [/PARAM]
+
+
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ pYelGtIMQpk
+ [/PARAMLITERAL]
[/OBJECT]
-[/VAR]
-[TOC(start:2 end:3)]
+이 글을 마칠 즈음이면 다른 게임 프로젝트에서도 사용할 수 있을 만큼 완벽히 동작하는 비히클이 완성되어 있을 것입니다!
+## 목적
+여기서는 새로운 공백 프로젝트에서 **Wheeled Vehicle** 블루프린트 클래스를 사용하여 비히클을 만드는 법을 다루겠습니다. 정상 작동하는 비히클을 만드는 데 필요한
+모든 에디터내 아이템 제작 프로세스를 안내해 드리겠지만, 별도의 **스켈레탈 메시** 와 **피직스 애셋** 이 준비되어 있다 가정합니다. 이 글을 마칠 즈음이면
+비히클 게임 또는 비히클 템플릿에 있는 것과 비슷한 정상 작동 비히클이 완성되어 있을 것입니다.
-빈 프로젝트에서 **Wheeled Vehicle** 블루프린트 클래스를 사용하여 블루프린트를 만드는 방법에 대해 다루는 문서입니다. 이 프로세스를 통해 에디터내 필수 항목 전체를 생성해 보지만,
-비히클에 쓸 **스켈레탈 메시** 와 **피직스 애셋** 은 갖고있다 가정합니다.
-
+[REGION:note]
비히클 **스켈레탈 메시** 와 **피직스 애셋** 을 엔진에 임포트하는 법에 대한 정보가 필요하다면, [](Engine/Physics/Vehicles/VehcileContentCreation) 문서를 참고하세요.
-또는 **비히클 템플릿** 이나 **비히클 게임** 을 통해 미리 만들어진 **스켈레탈 메시** 나 **피직스 애셋** 에서 작업할 수도 있습니다.
+또는 **비히클 템플릿** 이나 **비히클 게임** 프로젝트를 통해 미리 만들어진 **스켈레탈 메시** 나 **피직스 애셋** 에서 작업할 수도 있습니다.
+**비히클 템플릿** 은 **언리얼 프로젝트 브라우저** 의 **새 프로젝트** 메뉴에 있으며, **비히클 게임** 은 **에픽 게임스 런처** 의 **학습** 탭에 있습니다.
+[/REGION]
+## 목표
-## 콘텐츠
+이 튜토리얼 전반에 걸쳐 언리얼 엔진 4 (UE4) 의 비히클을 이루는 핵심 컴포넌트를 생성하게 됩니다. 이 중 일부는 UE4 외부에서 애셋을 만들어야 하는 반면 컴포넌트 대부분은
+에디터 안에서 바로 만들 수 있습니다!
-언리얼 엔진 4 의 비히클은 다수의 애셋으로 구성되어 있습니다:
+우리가 만들 비히클을 이루는 애셋을 개별 단위로 나누어 보면 이렇습니다:
* **스켈레탈 메시** 하나.
* **피직스 애셋** 하나.
* **애니메이션 블루프린트** 하나.
* Vehicle (비히클) 블루프린트 하나.
* Wheel (휠) 블루프린트 하나 이상.
-* TireType (타이어 타입) **데이터 애셋** 하나.
+* TireConfig **데이터 애셋** 하나.
[REGION:raw]
(convert:false)
[/REGION]
-[REGION:note]
-이 문서에서는 언리얼 엔진 4 에서 작동하는 비히클을 만드는 데 필요한 블루프린트 셋업에 대해 다루며, 이미 작업할 비히클 애셋이 있다고 가정합니다.
-**스켈레탈 메시** 와 **피직스 애셋** 셋업 관련 상세 정보는 [](Engine/Physics/Vehicles/VehcileContentCreation) 문서를 참고하시기 바랍니다.
+이 글을 마칠 즈음이면 이들 애셋 유형 각각을 구성하는 방법과, 비히클에 생동감을 불어넣기 위한 조합 방법을 확인할 수 있을 것입니다!
+
+* TireConfig 데이터 애셋 환경설정 방법
+* 앞/뒤 휠에 대한 휠 블루프린트 환경설정 방법
+* 비히클 전용 애니메이션 블루프린트 구성 방법
+* 스켈레탈 메시, 애니메이션 블루프린트, 휠 블루프린트로 비히클 블루프린트 환경설정 방법
+* 축 매핑 및 바인딩으로 비히클 제어 방법
+* 비히클 스폰을 위한 새 게임 모드 생성 및 할당 방법
+
+[OBJECT:TopicList]
+ [PARAM:icon]
+ (convert:false)
+ [/PARAM]
+ [PARAM:title]
+ 단계
+ [/PARAM]
+ [PARAM:description]
+ [/PARAM]
+ [PARAM:links]
+ [DIR(output:"checkpoint" parent:"Engine/Physics/Vehicles/VehicleUserGuide" org:"hierarchy")]
+ [/PARAM]
+[/OBJECT]
+
+[REGION:call_to_action]
+ [클릭하면 시작합니다.](Engine/Physics/Vehicles/VehicleUserGuide/1 "%Engine/Physics/Vehicles/VehicleUserGuide/1:title%")
[/REGION]
-## 비히클 블루프린트 만들기
-
-**비히클 블루프린트** 를 새로 만들려면, **콘텐츠 브라우저** 에서 **신규 추가** -> **블루프린트** 버튼을 누른 다음 "vehicle" 을 검색하여 리스트에서 **WheeledVehicle** 을 클릭합니다.
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-## 휠 블루프린트 만들기
-
-**휠 블루프린트** 를 새로 만들려면, **콘텐츠 브라우저** 에서 **추가** -> **블루프린트** 버튼을 누른 다음 "wheel" 을 검색하여 리스트에서 **VehicleWheel** 을 선택합니다.
-앞바퀴와 뒷바퀴 유형을 만들려면 이 작업을 최소 한 번 더 반복해 줍니다.
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-대부분의 경우 바퀴 유형은 스티어링에 영향받는 것과 받지 않는 것, 최소 두 가지일 것입니다. 또한 반경, 질량, 폭, 핸드브레이크 이펙트,
-서스펜션, 기타 프로퍼티를 설정하여 비히클에 원하는 핸들링 감을 낼 수 있습니다.
-
-
-## TireType 데이터 애셋 만들기
-
-**TypeType 데이터 애셋** 을 새로 만들려면, **콘텐츠 브라우저** 에서 **신규 추가** -> **기타** -> **데이터 애셋** -> **TireType** 선택 -> **선택** 버튼을 클릭합니다.
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-[EXCERPT:frictionScale]
-**TireType 데이터 애셋** 에는 값이 **Friction Scale** (마찰 스케일) 하나뿐입니다. 이 값은 바퀴의 원래 마찰에 영향을 끼칠 뿐만 아니라, 급선회(hard turn)시 바퀴가 얼마나 안
-(또는 잘) 미끄러지는지 결정하는 값에 대한 스케일을 조절하기도 합니다.
-[/EXCERPT:frictionScale]
-
-**VehicleWheel** 블루프린트 유형에 **TireType 데이터 애셋** 에 대한 프로퍼티 슬롯이 있습니다.
-
-## 애니메이션 블루프린트 만들기
-
-**애니메이션 블루프린트** 를 새로 만들려면, **콘텐츠 브라우저** 에서 **신규 추가** -> **애니메이션** -> 목록에서 비히클에 대한 **스켈레톤** 선택 -> **Ok** 버튼을 누릅니다.
-
-[REGION:raw]
-(convert:false)
-[/REGION]
-
-
-## 애니메이션 블루프린트 편집하기
-
-**콘텐츠 브라우저** 에서 **애니메이션 블루프린트** 를 더블클릭하면 페르소나에서 비히클 애니메이션 블루프린트를 편집할 수 있습니다. 비히클에 대한 **애님 그래프** 가
-4.2 릴리즈에서 크게 단순화되었습니다:
-
-1. **애님 그래프** 에 우클릭하고, 맥락 메뉴에서 **Mesh Space Ref Pose** 노드를 검색한 다음 선택하여 생성합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **애님 그래프** 에 우클릭하고, 맥락 메뉴에서 **Whell Handler** 노드를 검색한 다음 선택하여 생성합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **Mesh Space Ref Pose** 노드를 **Wheel Handler** 노드에 연결합니다.
-1. **Wheel Handler** 노드를 **Final Animation Pose** 노드에 연결합니다.
-
-
-
-
-그러면 끝! **Component to Local** 변환 노드는 자동 생성되며, 이제 애니메이션 블루프린트가 비히클의 바퀴를 구동시킵니다.
-
-
-
-### Wheel Handler 노드
-
-
-
-**Wheel Handler** 노드는 휠에 필요한 모든 애니메이션: 스핀, 스티어, 핸드브레이크, 서스펜션을 처리해 줍니다. 추가적인 셋업은 없으며,
-그냥 휠에서 필수 정보를 (스핀은 얼마나 빠른지, 스티어링은 가능한지, 핸드브레이크에 영향받는지, 이 휠에 대한 서스펜션 세팅은 어떠한지)
-전부 뽑아 휠이 연결되어 있는 본의 애니메이션으로 전환합니다.
-
-여기서 별도의 받침대(strut)나 서스펜션이 추가로 필요한 경우, 해당 폴리곤에 영향을 끼치는 조인트 처리를 위한 노드를 애님 그래프에 추가해 줘야 합니다.
-비히클 게임의 비히클에는 휠에 대한 악셀 연결을 제어하는 조인트가 추가로 몇 개 더 있습니다. 이들은 단순한 **Look At** 노드로 구동됩니다:
-
-
-
-비히클 게임의 비히클 애님 그래프에 추가되어 있는 노드는 단순히 받침대 조인트가 휠 조인트를 가리키도록 하기 위함입니다. 휠 조인트가 Wheel Handler
-노드로 구동된다고 할 때, **Look At** 노드는 서스펜션이 휠에 확실히 붙어있도록 해 줍니다.
-
-## TireType 데이터 애셋 편집하기
-
-**콘텐츠 브라우저** 에서 **TireType 데이터 애셋** 을 더블클릭합니다.
-
-
-
-[INCLUDE:#frictionscale]
-
-
-## 휠 블루프린트 편집하기
-
-**콘텐츠 브라우저** 에서 **휠 블루프린트** 를 더블클릭하여 **블루프린트 에디터** 를 띄웁니다.
-
-
-1. 블루프린트 에디터를 디폴트 편집 모드로 전환합니다:
-
- 
-
-1. 초기 설정이 필요한 프로퍼티는 다음과 같습니다:
-
- * Shape Radius - 셰이프 반경
- * Shape Width - 셰이프 폭
- * Affected by Handbrake - 핸드브레이크에 영향받음 (보통 뒤쪽 휠에 한정됨)
- * Steer Angle - 스티어 각도 (보통 앞쪽 휠만)
-
- [REGION:raw]
- 
- [/REGION]
-
-1. 마지막으로 '타이어 타입'을 설정해 줘야 합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
-
-각 휠마다 바꿔줘야 하는 것이 다섯 가지 있습니다. 나머지 프로퍼티는 비히클 작동 방식에 변화를 주며, 비히클 테스트를 시작하면서 미세조정
-가능합니다.
-
-## 비히클 블루프린트 편집하기
-
-이 곳에서 비히클이 실제로 조립되기 시작합니다. 아트가 준비되고 휠 셋업이 완료되었다면, 이제 정상 작동하는 비히클을 만들어낼 수 있을 것입니다.
-
-**콘텐츠 브라우저** 에서 **비히클 블루프린트** 를 더블클릭하여 **블루프린트 에디터** 를 띄웁니다.
-
-1. "Mesh" 라는 **스켈레탈 메시 컴포넌트** 를 클릭하고 그 디테일 패널에서, **스켈레탈 메시** 프로퍼티를 비히클에 쓸 스켈레탈 메시 애셋으로 설정합니다.
-
- 
-
-1. **Anim Blueprint Generated Class** (애님 블루프린트 생성 클래스)를 비히클 애니메이션 블루프린트로 설정합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **컴포넌트** 패널로 돌아가 **카메라 컴포넌트** 를 추가합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. 이 카메라 컴포넌트 위치는 원하는대로 잡습니다. 아래 그림에서는, 비히클 뒤에 놨습니다.
-
- 
-
-1. **Camera Settings** (카메라 세팅) -> **Use Controller View Rotation** (콘트롤러 뷰 로테이션 사용) 옵션을 끕니다. 그러면 카메라를 플레이어 콘트롤러 방향이 아닌 카메라의 시야 방향으로 고정시킵니다.
-
- 
-
-1. **Vehicle Movement Component** (비히클 무브먼트 컴포넌트)를 선택하고 **Vehicle Setup** (비히클 셋업) 카테고리의 **Wheel Setups** (휠 셋업)을 펼칩니다.
-
- 
-
-1. 각 (0-3 번) 휠에 대해:
- 1. **Wheel Class** (휠 클래스)를 이미 만들어 둔 휠 블루프린트 중 하나로 설정합니다.
- 1. **Bone Name** (본 이름)을 휠의 제어를 받는 조인트 이름으로 설정합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
- _위 그림에서 **Bone Name** 은 이 스켈레탈 메시에 한정된 것입니다._
-
- 휠을 할당하는 순서는 앞 휠이든 뒷 휠이든 관계가 없으며, **Bone Name** 과 **Wheel Class** 만 영향을 끼칩니다.
-
- [REGION:note]
- 휠이 네 개 이상 필요한 경우, **Wheel Setups** 프로퍼티 옆의 "**+**" 아이콘을 클릭하여 추가할 수 있습니다.
- [/REGION]
-
-이쯤에서 미니밴보다 너무 크기 않은 비히클이라 가정하고 기본값을 넣어 주면 테스트를 시작하기 좋은 지점이 됩니다.
-
-
-## 테스팅
-
-테스트용 비히클 셋업 방법은 몇 가지 있으며, 몇몇 셋업은 처음 시작한 템플릿에 따라 달라집니다.
-
-1. 콘트롤
-
- [REGION:raw]
- 
- [/REGION]
-
- 1. **Project Settings** (프로젝트 세팅) -> **Input** (입력)
- 1. **Axis Mapping** (축 매핑)을 추가합니다. **Axis Mappings** 프로퍼티 옆의 "**+**" 부호를 클릭하면 됩니다.
- 1. Axis Mappings 를 펼칩니다.
- 1. 축 매핑 이름을 **Forward** 로 변경합니다.
- 1. **Forward** 축 매핑 옆의 "**+**" 부호를 클릭합니다.
- 1. **Forward** 축 매핑을 펼칩니다.
- 1. 첫 번째 "None" 을 "**W**" 로 설정합니다.
- 1. 두 번째 "None" 을 "**S**" 로 설정합니다.
- 1. "**S**" 매핑의 Scale 을 "-1.0" 으로 설정합니다.
- 1. **축 매핑** 을 하나 더 추가합니다. **Axis Mappings** (축 매핑) 프로퍼티 옆의 "**+**" 부호를 클릭하면 됩니다.
- 1. 새로운 축 매핑 이름을 **Right** 로 변경합니다.
- 1. **Right** 축 매핑을 펼칩니다.
- 1. 첫 번째 "None" 을 "**D**" 로 설정합니다.
- 1. 두 번째 "None" 을 "**A**" 로 설정합니다.
- 1. "**A**" 매핑의 스케일을 "-1.0" 으로 설정합니다.
- 1. 그리고 **Action Mapping** (액션 매핑)을 추가합니다. Action Mappings 프로퍼티 옆의 "**+**" 부호를 클릭하면 됩니다.
- 1. **Action Mappings** 프로퍼티를 펼칩니다.
- 1. 액션 매핑 이름을 "**Handbrake**" 로 변경합니다.
- 1. **Handbrake** 액션 매핑을 펼칩니다.
- 1. "None" 을 "**Space Bar**" 로 설정합니다.
-1. 새 게임 모드
- 1. 게임 모드 블루프린트를 새로 만듭니다.
-
- [REGION:raw]
- 
- [/REGION]
-
- 1. 새로 만든 게임 모드 블루프린트를 더블클릭하여 편집합니다.
-
- 1. **Game Mode** 카테고리 -> **Default Pawn Class** -> "None" 을 만들어둔 비히클 블루프린트로 변경합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. **월드 세팅** -> **Game Mode** -> **GameMode Override** 를 만들어둔 게임 모드로 설정합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
-1. 이제 비히클의 블루프린트에서, **Project Settings Input** 카테고리에 생성한 축 및 액션 이벤트상에서 호출할 수 있습니다.
- 1. 비히클 블루프린트를 편집, **이벤트 그래프** 를 엽니다.
-
- 
-
- 1. 스로틀
-
- 
-
- 1. 스티어링
-
- 
-
- 1. 핸드브레이크
-
- 
-
-1. 플레이어 스타트
- * 월드에 **Player Start** (플레이어 스타트) 액터가 없는 경우, **모드 패널** -> **배치 모드** -> **기본** -> **Player Start** (플레이어 스타트)를 끌어
- 월드에 놓으면 됩니다.
-
- [REGION:raw]
- 
- [/REGION]
-
- 또는 현재 카메라 위치에서 '에디터에서 플레이' 기능으로 플레이해도 됩니다.
-1. 마지막으로 모든 것의 셋업을 마치면, **에디터에서 플레이** 기능으로 비히클 테스트가 가능합니다.
-
- [REGION:raw]
- 
- [/REGION]
-
- 위의 축 및 액션 바인딩 셋업 상태에서, **W** 는 액셀러레이터, **S** 는 브레이크, **A** 는 좌회전, **D** 는 우회전,
- **Space Bar** 는 핸드브레이크입니다.
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Engine/Documentation/Source/Engine/Plugins/Ansel/Testing/AnselTesting.KOR.udn b/Engine/Documentation/Source/Engine/Plugins/Ansel/Testing/AnselTesting.KOR.udn
index 28b5f9d8538e..197a55c6f33e 100644
--- a/Engine/Documentation/Source/Engine/Plugins/Ansel/Testing/AnselTesting.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Plugins/Ansel/Testing/AnselTesting.KOR.udn
@@ -52,12 +52,12 @@ topic-image:Ansel_Testing_Topic.png
| W | 왼쪽 아날로그 스틱 위 | 카메라를 앞으로 이동합니다. |
| A | 왼쪽 조이스틱 왼쪽 | 카메라를 왼쪽으로 이동합니다. |
| S | 왼쪽 조이스틱 아래 | 카메라를 뒤로 이동합니다. |
-| D | 왼쪽 조이스틱 오른쪽 - 카메라를 오른쪽으로 이동합니다 |
+| D | 왼쪽 조이스틱 오른쪽 | 카메라를 오른쪽으로 이동합니다 |
| X | 왼쪽 트리거 | 카메라를 위로 이동합니다. |
| Y | 오른쪽 트리거 | 카메라를 아래로 이동합니다. |
| Shift (유지) | 오른쪽 아날로그 스틱 (누름) | 카메라 이동 속도를 가속합니다. |
| [REGION:tablesection]카메라 이동[/REGION] |||
-| 좌클릭 + 마우스 이동 | 오른쪽 아날로그 스틱 - 카메라를 회전시킵니다 (yaw, pitch) |
+| 좌클릭 + 마우스 이동 | 오른쪽 아날로그 스틱 | 카메라를 회전시킵니다 (yaw, pitch) |
diff --git a/Engine/Documentation/Source/Engine/QuickStart/1/LDQS_1.INT.udn b/Engine/Documentation/Source/Engine/QuickStart/1/LDQS_1.INT.udn
index 770533cfbcd8..b05445d26bdc 100644
--- a/Engine/Documentation/Source/Engine/QuickStart/1/LDQS_1.INT.udn
+++ b/Engine/Documentation/Source/Engine/QuickStart/1/LDQS_1.INT.udn
@@ -37,7 +37,33 @@ After completing this step, you will have a Template that you can build onto for
1. Click the **New Project** tab and select the **Blank** Blueprint Template, enter a Save Location and Name, then click **Create Project**.
- (w:720)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
The **New Project** tab is where you can create new projects based off several different template types while the **Projects** tab contains any previously created projects or samples that you have downloaded.
@@ -46,7 +72,33 @@ After completing this step, you will have a Template that you can build onto for
After creating your project, once the Unreal Editor has finished loading, you will be presented with the Main Editor Interface as shown below.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]

+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
In the next step, we will cover the basic controls for navigating the **Viewports** inside the Unreal Editor.
diff --git a/Engine/Documentation/Source/Engine/QuickStart/1/LDQS_1.KOR.udn b/Engine/Documentation/Source/Engine/QuickStart/1/LDQS_1.KOR.udn
index 53ecf86c225b..c340fc3983b8 100644
--- a/Engine/Documentation/Source/Engine/QuickStart/1/LDQS_1.KOR.udn
+++ b/Engine/Documentation/Source/Engine/QuickStart/1/LDQS_1.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3481084
Availability: Public
Title:1. 필수 구성
Crumbs:%ROOT%, GettingStarted, Engine/QuickStart
@@ -38,7 +38,33 @@ checkpoint: editorqs
1. **새 프로젝트** 탭을 클릭한 다음 **공백** 블루프린트 템플릿을 선택하고, 저장 위치와 이름을 입력한 뒤, **프로젝트 생성** 을 클릭합니다.
- (w:720)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
**새 프로젝트** 탭에서는 여러가지 템플릿 유형을 기반으로 새 프로젝트를 생성할 수 있는 반면, **프로젝트** 탭에는 기존에 생성된 프로젝트 또는 다운로드한 샘플이 표시됩니다.
@@ -47,8 +73,35 @@ checkpoint: editorqs
프로젝트 생성 이후, 언리얼 에디터 로딩이 끝나면 메인 에디터 인터페이스가 아래와 같이 표시될 것입니다.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]

+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
다음 단계에서는 언리얼 에디터 안에서의 기본적인 뷰포트 조작법을 다루도록 하겠습니다.
%Steps%
+
diff --git a/Engine/Documentation/Source/Engine/QuickStart/3/LDQS_3.INT.udn b/Engine/Documentation/Source/Engine/QuickStart/3/LDQS_3.INT.udn
index 3d49ee425d14..70f152a6e55b 100644
--- a/Engine/Documentation/Source/Engine/QuickStart/3/LDQS_3.INT.udn
+++ b/Engine/Documentation/Source/Engine/QuickStart/3/LDQS_3.INT.udn
@@ -34,11 +34,63 @@ While there are several different ways in which you can create a new Level, we w
1. Inside the Unreal Editor, click the **File Menu** option then select **New Level...**.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
This will open the **New Level** dialog window:
- (w:550)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
Above the **Default** level includes some of the commonly used assets for constructing levels, there is also a **VR-Basic** level which includes some assets for constructing levels with the VR Editor and **Empty Level** is a completely blank level with no assets. For the purposes of this guide we are going to start from scratch with a completely blank slate.
diff --git a/Engine/Documentation/Source/Engine/QuickStart/3/LDQS_3.KOR.udn b/Engine/Documentation/Source/Engine/QuickStart/3/LDQS_3.KOR.udn
index d5fb39cc5826..c7aac5586cf9 100644
--- a/Engine/Documentation/Source/Engine/QuickStart/3/LDQS_3.KOR.udn
+++ b/Engine/Documentation/Source/Engine/QuickStart/3/LDQS_3.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3481084
Availability: Public
Title:3 - 새 레벨 생성
Crumbs:%ROOT%, GettingStarted, Engine/QuickStart
@@ -35,11 +35,63 @@ checkpoint: editorqs
1. 언리얼 에디터 안에서, **파일 메뉴** 옵션을 선택한 다음 **새 레벨...** 을 선택합니다.
- 
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
그러면 **새 레벨** 대화창이 열립니다.
- (w:550)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
위의 **디폴트** 레벨에는 레벨 제작시 흔히 사용되는 애셋이 약간 포함되어 있고, **VR-Basic** 레벨에는 VR 에디터로 레벨을 제작할 때 쓰이는 애셋이 포함되어 있으며, **공백 레벨** 은 애셋 없이 완전히 비어있는 레벨입니다. 이 가이드의 목적상 완전히 비어있는 레벨에서 시작하도록 하겠습니다.
diff --git a/Engine/Documentation/Source/Engine/QuickStart/4/LDQS_4.CHN.udn b/Engine/Documentation/Source/Engine/QuickStart/4/LDQS_4.CHN.udn
index ebb89f9a4956..54d0d6cc0cb9 100644
--- a/Engine/Documentation/Source/Engine/QuickStart/4/LDQS_4.CHN.udn
+++ b/Engine/Documentation/Source/Engine/QuickStart/4/LDQS_4.CHN.udn
@@ -1,4 +1,5 @@
-Availability: Public
+INTSourceChangelist:0
+Availability: Public
Title:4. 放置Actor
Crumbs:%ROOT%, GettingStarted, Engine/QuickStart
Description:放置及操作Actor是构建任何关卡的基础。
@@ -79,7 +80,7 @@ Description:放置及操作Actor是构建任何关卡的基础。

-1. 在 **模式面板** 中,切换到 **Volumes(视觉效果)** 类别。
+1. 在 **模式面板** 中,切换到 **Volumes** 类别。
1. 放置一个 **Lightmass Importance Volume(Lightmass 重要体积)** 到关卡中。
[REGION:raw]
diff --git a/Engine/Documentation/Source/Engine/QuickStart/EditorQuickStart.JPN.udn b/Engine/Documentation/Source/Engine/QuickStart/EditorQuickStart.JPN.udn
index 32d20f8bb8ae..375c12cbf854 100644
--- a/Engine/Documentation/Source/Engine/QuickStart/EditorQuickStart.JPN.udn
+++ b/Engine/Documentation/Source/Engine/QuickStart/EditorQuickStart.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2744014
+INTSourceChangelist:3367473
Availability:Public
Title:レベル デザイナー向けクイックスタート
Crumbs: %ROOT%, GettingStarted
@@ -10,6 +10,7 @@ Version:4.9
parent:Engine/Editor
order:1
checkpoint: editorqs
+type:quick start
[VAR:Topic]
[OBJECT:Topic]
@@ -47,7 +48,7 @@ checkpoint: editorqs

-_このガイドを終える頃には、上図のような部屋が出来上がります。_
+_このガイドを完了すると、上図のような部屋が作成されます。_
## 目標
@@ -55,7 +56,7 @@ _このガイドを終える頃には、上図のような部屋が出来上が
## 目的
-このチュートリアルでは、以下の習得を目指します。
+このチュートリアルでは以下を習得します。
* ビューポートのナビゲーション方法
* 新規レベルの作成方法
@@ -77,5 +78,5 @@ _このガイドを終える頃には、上図のような部屋が出来上が
[/OBJECT]
[REGION:call_to_action]
- [クイックスタートへ](Engine/QuickStart/1 "%Engine/QuickStart/1:title%")
+ [クリックしてスタート](Engine/QuickStart/1 "%Engine/QuickStart/1:title%")
[/REGION]
diff --git a/Engine/Documentation/Source/Engine/QuickStart/EditorQuickStart.KOR.udn b/Engine/Documentation/Source/Engine/QuickStart/EditorQuickStart.KOR.udn
index addcfc010604..7306d7167c60 100644
--- a/Engine/Documentation/Source/Engine/QuickStart/EditorQuickStart.KOR.udn
+++ b/Engine/Documentation/Source/Engine/QuickStart/EditorQuickStart.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367473
Availability:Public
Title: 레벨 디자이너 퀵스타트 가이드
Crumbs: %ROOT%, GettingStarted
@@ -10,6 +10,7 @@ Version: 4.9
parent:Engine/Editor
order:1
checkpoint: editorqs
+type:quick start
[VAR:Topic]
[OBJECT:Topic]
diff --git a/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.CHN.udn b/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.CHN.udn
new file mode 100644
index 000000000000..129b412aed0f
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.CHN.udn
@@ -0,0 +1,134 @@
+INTSourceChangelist:0
+Availability: Docs
+Crumbs:
+Title: High Dynamic Range Display Output
+Description: Overview for HDR Display Output and available options.
+Type: Overview
+SkillLevel: Intermediate
+Version: 4.15
+Parent: Engine/Rendering/
+Order:
+Tags: Rendering
+
+
+
+In Unreal Engine 4, you can now output to High Dynamic Range (HDR) displays taking advantage of features such as higher contrast and wider color gamut! The goal here is to give the displayed images the
+characteristics that are more like natural light conditions experienced in the "real world". This is part of the move to the **Academy Color Encoding System** (ACES) standard that is a pipeline to ensure
+consistent color is preserved across multiple formats and displays, and also as a way to _future-proof_ the source material used without having to adjust it for another medium.
+
+[REGION:fullwidth raw]
+
+[/REGION]
+[REGION:caption]
+_These are simulated images and are for demonstration purposes only since it is impossible to convey HDR difference on an LDR screen._
+[/REGION]
+
+with the current implementation, the full processing of the rendered scene is handled through what is known as the **ACES Viewing Transform**. This process works by using scene-referred and display-referred images.
+
+* **Scene-referred** images maintain the original _linear light_ values of the source materials without limiting the exposure range.
+* **Display-referred** is the final image transformed into the color space of the display being used.
+
+By using this pipeline, the original source files do not have to be edited each time they are used with a different display in order to guarantee correct coloring. Instead, the display being output to maps it to the
+correct color space.
+
+The ACES Viewing Transform, more specifically, works in the following order in the viewing pipeline:
+
+* **Look Modification Transform (LMT)** - This part of the process takes the ACES color-encoded image that has had a creative "look" (color grading and correction) applied to it and then outputs the images rendered with
+ACES in combination with the Reference Rendering Transform (RRT) and an Output Device Transform (ODT).
+* **Reference Rendering Transform (RRT)** - Then, this part takes the scene-referred color values and converts them to display-referred. In this process, it enables the rendered images to not rely on a specific display
+and, instead, can ensure a larger gamut and dynamic range that is correct for the specific display it's being output to, including ones that have yet to be created.
+* **Output Device Transform (ODT)** - Finally, this takes the HDR Data output of the RRT to then match it with the different devices and color spaces they can display. Because of this, each target requires its own
+ODT to be matched against (eg Rec709, Rec2020, DCI-P3, etc.).
+
+
+## Enabling HDR Output
+
+You can enable HDR output at runtime by toggling the console variables or by using the **GameUserSettings** node in Blueprints.
+
+(w:800)
+
+The **GameUserSettings** controls will automatically clamp to the closest available match for the current output device and set all flags accordingly. Alternatively, you can use the following console variables to enable
+and change the available options for the HDR device and color gamut output need.
+
+[REGION:simpletable]
+| Console Variable | Description |
+| --- | --- |
+| `r.HDR.EnableHDROutput` | When set to 1, this recreates the swap-chain and enables HDR output. |
+| `r.HDR.Display.OutputDevice` | This is the device format of the output display [INCLUDE:#deviceOuptut] |
+| `r.HDR.Display.ColorGamut` | This is the color gamut of the output display. [INCLUDE:#colorGamut] |
+[/REGION]
+
+
+
+Once you've setup the Blueprint or C++ call for GameUserSettings, you can run any cooked project, use the command line argument `-game mode`, use Standalone game mode, or Play-in-Editor (PIE) in a new window using
+exclusive fullscreen (press **Alt** + **Enter** or use the command `fullscreen`). Using borderless windowed or windowed mode will not currently work for HDR output.
+
+
+### Low Dynamic Range (LDR) UI support in HDR
+
+[REGION:note]
+This feature is experimental and may change in a future release.
+[/REGION]
+
+There is support for bringing Low Dynamic Range (LDR)
+
+When HDR output has been enabled your User Interface (UI) may not look correct. We've added experimental support for LDR UI composition for this reason. It attempts to match the
+LDR look as closely as possible, although, it's recommended to boost the UI slightly to avoid looking washed out next to the vibrancy of the main scene.
+
+To do this, you can use the following console variables:
+
+[REGION:simpletable]
+| Console Variable | Description |
+| --- | --- |
+| `r.HDR.UI.CompositeMode` | When set to 1, this enables HDR UI composition, which attempts to preserve LDR visuals and blending. |
+| `r.HDR.UI.Level` | This adjusts the brightness of the composited UI. It is recommended to use a value of 1.5 or 2. |
+[/REGION]
+
+
+## HDR Hardware and Setup Considerations
+
+With the many different types of displays and TVs that are available, along with console and PC considerations, you may find that you need to use a specific piece of hardware or change a setting to get
+HDR output to work properly. The following are some things to consider when you're running through your setup process:
+
+* Make sure that your system is connected to the HDR display using a high-speed HDMI 2.0 cable so that you can take advantage of the transfers speeds. (HDMI 1.4 may work, but may have issues displaying the content.)
+Not all HDMI ports may accept HDMI 2.0 and HDR. Refer to your display's manual if you're unsure.
+* Ensure that the TV port is HDR enabled. Sometimes this may be listed in your TV or display settings as "HDMI Deep Color" or "Enhanced Format." Refer to your display's manual if you're unsure.
+* With some consoles, like the PS4, you may need to disable the system setting for **Enable HDCP** for HDR output to work properly.
+* For some displays, you may need to adjust display settings to get the correct output.
+ * With NVIDIA GPUs, use the NVIDIA Control Panel and adjust the display resolution Output Color Format to use **RGB** and the Output Color Depth to use **10-bit** or **12-bit**.
+
+## Notes and Limitations
+
+* By default, the film-mapping curve is disabled during HDR output due to poor compatibility with LDR controls.
+* Currently, only paths for 1000-nit and 2000-nit display outputs are implemented.
+* D3D11 restrictions limit HDR output to exclusive fullscreen support only. With D3D12 support in Windows 10, this can likely be extended to enable individual viewports for HDR Output. The implementation on Mac currently supports this, already.
+
+## Reference Material
+
+* [http://www.oscars.org/science-technology/sci-tech-projects/aces](http://www.oscars.org/science-technology/sci-tech-projects/aces)
+* [http://www.oscars.org/science-technology/aces/aces-documentation](http://www.oscars.org/science-technology/aces/aces-documentation)
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.INT.udn b/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.INT.udn
index 1f5cfa8c0987..7a3e013d7bbb 100644
--- a/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.INT.udn
@@ -1,28 +1,39 @@
-Availability: Docs
+Availability:Public
Crumbs:
Title: High Dynamic Range Display Output
Description: Overview for HDR Display Output and available options.
-Type: Overview
+Type:overview
+Type:landing
SkillLevel: Intermediate
-Version: 4.15
+Version: 4.16
Parent: Engine/Rendering/
-Order:
+Order:28
Tags: Rendering
+Topic-image:HDRDisplayOutput_Topic.png
+Social-image:HDRDisplayOutput_Social.png
+[TOC(start:2)]
In Unreal Engine 4, you can now output to High Dynamic Range (HDR) displays taking advantage of features such as higher contrast and wider color gamut! The goal here is to give the displayed images the
characteristics that are more like natural light conditions experienced in the "real world". This is part of the move to the **Academy Color Encoding System** (ACES) standard that is a pipeline to ensure
consistent color is preserved across multiple formats and displays, and also as a way to _future-proof_ the source material used without having to adjust it for another medium.
-[REGION:fullwidth raw]
-
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:700)
+ [/PARAM]
+ [PARAM:after]
+ (w:700)
+ [/PARAM]
+[/OBJECT]
+[REGION:caption]
[/REGION]
[REGION:caption]
-_These are simulated images and are for demonstration purposes only since it is impossible to convey HDR difference on an LDR screen._
+This example is simulated and purely for demonstration purposes only. It is impossible to convey HDR differences on an LDR screen.
[/REGION]
-with the current implementation, the full processing of the rendered scene is handled through what is known as the **ACES Viewing Transform**. This process works by using scene-referred and display-referred images.
+With the current implementation, the full processing of the rendered scene is handled through what is known as the **ACES Viewing Transform**. This process works by using scene-referred and display-referred images.
* **Scene-referred** images maintain the original _linear light_ values of the source materials without limiting the exposure range.
* **Display-referred** is the final image transformed into the color space of the display being used.
@@ -30,7 +41,7 @@ with the current implementation, the full processing of the rendered scene is ha
By using this pipeline, the original source files do not have to be edited each time they are used with a different display in order to guarantee correct coloring. Instead, the display being output to maps it to the
correct color space.
-The ACES Viewing Transform, more specifically, works in the following order in the viewing pipeline:
+The ACES Viewing Transform works in the following order in the viewing pipeline:
* **Look Modification Transform (LMT)** - This part of the process takes the ACES color-encoded image that has had a creative "look" (color grading and correction) applied to it and then outputs the images rendered with
ACES in combination with the Reference Rendering Transform (RRT) and an Output Device Transform (ODT).
@@ -39,6 +50,9 @@ and, instead, can ensure a larger gamut and dynamic range that is correct for th
* **Output Device Transform (ODT)** - Finally, this takes the HDR Data output of the RRT to then match it with the different devices and color spaces they can display. Because of this, each target requires its own
ODT to be matched against (eg Rec709, Rec2020, DCI-P3, etc.).
+[REGION:note]
+For additional information on the ACES Viewing Transform, you can download the PDF documentation from the [ACES GitHub](https://github.com/ampas/aces-dev/tree/master/documents) page or follow the links in the Reference Material section of this page.
+[/REGION]
## Enabling HDR Output
@@ -46,53 +60,55 @@ You can enable HDR output at runtime by toggling the console variables or by usi
(w:800)
-The **GameUserSettings** controls will automatically clamp to the closest available match for the current output device and set all flags accordingly. Alternatively, you can use the following console variables to enable
-and change the available options for the HDR device and color gamut output need.
+The Game User Settings controls will automatically clamp to the closest available match for the current output device and set all flags accordingly. Alternatively, you can use the following console variables to enable
+and change the available options for the HDR device and color gamut output needed.
[REGION:simpletable]
| Console Variable | Description |
| --- | --- |
-| `r.HDR.EnableHDROutput` | When set to 1, this recreates the swap-chain and enables HDR output. |
-| `r.HDR.Display.OutputDevice` | This is the device format of the output display [INCLUDE:#deviceOuptut] |
-| `r.HDR.Display.ColorGamut` | This is the color gamut of the output display. [INCLUDE:#colorGamut] |
+| **r.HDR.EnableHDROutput** | When set to 1, this recreates the swap-chain and enables HDR output. |
+| **r.HDR.Display.OutputDevice** | This is the device format of the output display [INCLUDE:#deviceOuptut] |
+| **r.HDR.Display.ColorGamut** | This is the color gamut of the output display. [INCLUDE:#colorGamut] |
[/REGION]
Once you've setup the Blueprint or C++ call for GameUserSettings, you can run any cooked project, use the command line argument `-game mode`, use Standalone game mode, or Play-in-Editor (PIE) in a new window using
-exclusive fullscreen (press **Alt** + **Enter** or use the command `fullscreen`). Using borderless windowed or windowed mode will not currently work for HDR output.
+exclusive fullscreen (press **Alt** + **Enter** or use the command `fullscreen` from the console window).
+
+[REGION:note]
+Using borderless window or windowed mode will not currently work for HDR output.
+[/REGION]
### Low Dynamic Range (LDR) UI support in HDR
-[REGION:note]
-This feature is experimental and may change in a future release.
+[REGION:warning]
+This particular feature is experimental and may change in a future release.
[/REGION]
-There is support for bringing Low Dynamic Range (LDR)
-
When HDR output has been enabled your User Interface (UI) may not look correct. We've added experimental support for LDR UI composition for this reason. It attempts to match the
LDR look as closely as possible, although, it's recommended to boost the UI slightly to avoid looking washed out next to the vibrancy of the main scene.
@@ -101,8 +117,8 @@ To do this, you can use the following console variables:
[REGION:simpletable]
| Console Variable | Description |
| --- | --- |
-| `r.HDR.UI.CompositeMode` | When set to 1, this enables HDR UI composition, which attempts to preserve LDR visuals and blending. |
-| `r.HDR.UI.Level` | This adjusts the brightness of the composited UI. It is recommended to use a value of 1.5 or 2. |
+| **r.HDR.UI.CompositeMode** | When set to 1, this enables HDR UI composition, which attempts to preserve LDR visuals and blending. |
+| **r.HDR.UI.Level** | This adjusts the brightness of the composited UI. It is recommended to use a value of 1.5 or 2. |
[/REGION]
@@ -116,7 +132,14 @@ Not all HDMI ports may accept HDMI 2.0 and HDR. Refer to your display's manual i
* Ensure that the TV port is HDR enabled. Sometimes this may be listed in your TV or display settings as "HDMI Deep Color" or "Enhanced Format." Refer to your display's manual if you're unsure.
* With some consoles, like the PS4, you may need to disable the system setting for **Enable HDCP** for HDR output to work properly.
* For some displays, you may need to adjust display settings to get the correct output.
- * With NVIDIA GPUs, use the NVIDIA Control Panel and adjust the display resolution Output Color Format to use **RGB** and the Output Color Depth to use **10-bit** or **12-bit**.
+ * With NVIDIA GPUs, use the NVIDIA Control Panel and adjust the display resolution Output Color Format to use **RGB** and the Output Color Depth to use **10-bit** or **12-bit**. Depending on your
+ hardware you may only have certain options available. Refer to your display's manual if you're unsure.
+ [REGION:lightbox]
+ [(w:400)](NVControlPanel.png)
+ [/REGION]
+ [REGION:caption]
+ _Click image for full size view._
+ [/REGION]
## Notes and Limitations
@@ -126,8 +149,5 @@ Not all HDMI ports may accept HDMI 2.0 and HDR. Refer to your display's manual i
## Reference Material
-* [http://www.oscars.org/science-technology/sci-tech-projects/aces](http://www.oscars.org/science-technology/sci-tech-projects/aces)
-* [http://www.oscars.org/science-technology/aces/aces-documentation](http://www.oscars.org/science-technology/aces/aces-documentation)
-
-
-
+* ["ACES." Oscars.org | Academy of Motion Picture Arts and Sciences. N.p., 06 Feb. 2017. Web. 05 June 2017.](http://www.oscars.org/science-technology/sci-tech-projects/aces)
+* ["Aces Documentation." Oscars.org | Academy of Motion Picture Arts and Sciences. N.p., 26 Sept. 2016. Web. 05 June 2017.](http://www.oscars.org/science-technology/aces/aces-documentation)
diff --git a/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.JPN.udn
index 129b412aed0f..1dd460370e97 100644
--- a/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.JPN.udn
@@ -1,70 +1,89 @@
-INTSourceChangelist:0
-Availability: Docs
+INTSourceChangelist:3387247
+Availability:Docs
Crumbs:
-Title: High Dynamic Range Display Output
-Description: Overview for HDR Display Output and available options.
-Type: Overview
-SkillLevel: Intermediate
-Version: 4.15
-Parent: Engine/Rendering/
+Title:High Dynamic Range 対応ディスプレイへの出力
+Description:High Dynamic Range 対応ディスプレイへの出力およびオプションの概要
+Type:Overview
+SkillLevel:Intermediate
+Version:4.15
+Parent:Engine/Rendering/
Order:
-Tags: Rendering
+Tags:Rendering
-In Unreal Engine 4, you can now output to High Dynamic Range (HDR) displays taking advantage of features such as higher contrast and wider color gamut! The goal here is to give the displayed images the
-characteristics that are more like natural light conditions experienced in the "real world". This is part of the move to the **Academy Color Encoding System** (ACES) standard that is a pipeline to ensure
-consistent color is preserved across multiple formats and displays, and also as a way to _future-proof_ the source material used without having to adjust it for another medium.
+高いコントラストと幅広い色域などの機能を使って、アンリアル エンジン 4 で High Dynamic Range (HDR) 対応ディスプレイへ出力できるようになりました。表示された画像に
+「現実世界」で体感する自然光の状態ような特性を出すことが目標です。これは、複数のフォーマットとディスプレイ上で、確実に色に整合性を持たせるパイプラインである **Academy Color Encoding System** (ACES) スタンダードへの動きの表れでもあり、
+他の媒体用に色を調節せずに使用されたソース マテリアルが _古くならない_ ようにする手段でもあります。
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:700)
+ [/PARAM]
+ [PARAM:after]
+ (w:700)
+ [/PARAM]
+[/OBJECT]
+
+[REGION:note]
+LDR スクリーンでは HDR の違いを表現できないので、デモ用にシミュレーションした画像です。
+[/REGION]
+
+
+
+
+現在の実装では、レンダリングされたシーンの処理は、いわゆる **ACES Viewing Transform** がすべて行っています。処理の工程では、シーン基準画像とディスプレイ基準画像が使用されます。
+
+* **シーン リファード (Scene-referred)** 画像は、露出範囲を制限することなくソース マテリアルのオリジナル _リニア ライト_ 値を維持します。
+* **ディスプレイ リファード (Display-referred)** 画像は、使用中のディスプレイのカラースペースへ変換される最終画像です。
+
+このパイプラインを使用すると、ディスプレイを変えるたびにオリジナルのソース ファイルを編集しなくても必ず正しい色合いがでます。代わりに、出力先のディスプレイが
+正しい色空間にマップします。
+
+厳密に言えば、ACES Viewing Transform は、表示パイプラインで以下の順序で機能します。
+
+* **Look Modification Transform (LMT)** - クリエイティブな "外見" (カラー グレーディングおよび補正) を適用した ACES カラー エンコード画像を受け取り、
+Reference Rendering Transform (RRT) および Output Device Transform (ODT) と組み合わせて ACES でレンダリングされた画像を出力します。
+* **Reference Rendering Transform (RRT)** - 次に、シーン リファード画像のカラー値を受け取り、それをディスプレイ リファード画像に変換します。この処理では、レンダリングされた画像を特定のディスプレイだけに依存しないようにします。
+そして、出力先の指定されたディスプレイに合わせて、広めの範囲とダイナミックレンジが保証されます。
+* **Output Device Transform (ODT)** - 最後に、RPT の HDR Data 出力を受け取り、各種デバイスと色空間に一致させます。このため、各ターゲットはそれぞれの ODT を一致させる必要があります
+(Rec709、Rec2020、DCI-P3 など)。
+
+[REGION:note]
+ACES Viewing Transform の追加情報については、[ACES GitHub](https://github.com/ampas/aces-dev/tree/master/documents) から PDF ドキュメントをダウンロードすることができます。または、本ページの『リファレンス』セクションをご覧ください。
[/REGION]
-with the current implementation, the full processing of the rendered scene is handled through what is known as the **ACES Viewing Transform**. This process works by using scene-referred and display-referred images.
+## HDR Output を有効にする
-* **Scene-referred** images maintain the original _linear light_ values of the source materials without limiting the exposure range.
-* **Display-referred** is the final image transformed into the color space of the display being used.
-
-By using this pipeline, the original source files do not have to be edited each time they are used with a different display in order to guarantee correct coloring. Instead, the display being output to maps it to the
-correct color space.
-
-The ACES Viewing Transform, more specifically, works in the following order in the viewing pipeline:
-
-* **Look Modification Transform (LMT)** - This part of the process takes the ACES color-encoded image that has had a creative "look" (color grading and correction) applied to it and then outputs the images rendered with
-ACES in combination with the Reference Rendering Transform (RRT) and an Output Device Transform (ODT).
-* **Reference Rendering Transform (RRT)** - Then, this part takes the scene-referred color values and converts them to display-referred. In this process, it enables the rendered images to not rely on a specific display
-and, instead, can ensure a larger gamut and dynamic range that is correct for the specific display it's being output to, including ones that have yet to be created.
-* **Output Device Transform (ODT)** - Finally, this takes the HDR Data output of the RRT to then match it with the different devices and color spaces they can display. Because of this, each target requires its own
-ODT to be matched against (eg Rec709, Rec2020, DCI-P3, etc.).
-
-
-## Enabling HDR Output
-
-You can enable HDR output at runtime by toggling the console variables or by using the **GameUserSettings** node in Blueprints.
+HDR 出力はランタイム時にコンソール変数を切り替えるか、ブループリントの **GameUserSettings** ノードを使って有効にします。
(w:800)
-The **GameUserSettings** controls will automatically clamp to the closest available match for the current output device and set all flags accordingly. Alternatively, you can use the following console variables to enable
-and change the available options for the HDR device and color gamut output need.
+**GameUserSettings** コントロールは、利用できる最も近くの出力デバイスと一致するように自動的にクランプし、すべてのフラグもそれに合わせて設定します。もしくは、以下のコンソール変数でも、
+HDR デバイスおよび必要なカラー範囲出力のオプションの有効化や変更ができます。
[REGION:simpletable]
-| Console Variable | Description |
+| コンソール変数 | 説明 |
| --- | --- |
-| `r.HDR.EnableHDROutput` | When set to 1, this recreates the swap-chain and enables HDR output. |
-| `r.HDR.Display.OutputDevice` | This is the device format of the output display [INCLUDE:#deviceOuptut] |
-| `r.HDR.Display.ColorGamut` | This is the color gamut of the output display. [INCLUDE:#colorGamut] |
+| `r.HDR.EnableHDROutput` | 1 に設定するとスワップ チェーンを作成し、HDR 出力が有効になります。|
+| `r.HDR.Display.OutputDevice` | 出力ディスプレイのデバイス フォーマットです [INCLUDE:#deviceOuptut] |
+| `r.HDR.Display.ColorGamut` | 出力ディスプレイの色域です。 [INCLUDE:#colorGamut] |
[/REGION]
-Once you've setup the Blueprint or C++ call for GameUserSettings, you can run any cooked project, use the command line argument `-game mode`, use Standalone game mode, or Play-in-Editor (PIE) in a new window using
-exclusive fullscreen (press **Alt** + **Enter** or use the command `fullscreen`). Using borderless windowed or windowed mode will not currently work for HDR output.
-
-
-### Low Dynamic Range (LDR) UI support in HDR
+GameUserSettings のブループリントまたは C++ コールを設定したら、クック済みのプロジェクトの実行、コマンドライン引数 `-game mode`、Standalone ゲームモードの使用、
+あるいは排他的全画面 (**[Alt]** + **[Enter]** またはコマンド `fullscreen` を押します) での Play-in-Editor (PIE) の使用が可能になります。
[REGION:note]
-This feature is experimental and may change in a future release.
+現在のところ、縁なしウィンドウあるいはウィンドウ モードは HDR 出力には機能しません。
[/REGION]
-There is support for bringing Low Dynamic Range (LDR)
-When HDR output has been enabled your User Interface (UI) may not look correct. We've added experimental support for LDR UI composition for this reason. It attempts to match the
-LDR look as closely as possible, although, it's recommended to boost the UI slightly to avoid looking washed out next to the vibrancy of the main scene.
+### HDR での Low Dynamic Range (LDR) UI サポート
-To do this, you can use the following console variables:
+[REGION:note]
+この機能は実験的なものであり、今後のリリースにおいて変更される可能性があります。
+[/REGION]
+
+HDR 出力が有効にされていると、ユーザーインターフェース (UI) が正しく表示されないことがあります。このため、LDR UI コンポジションに実験的サポートを追加しました。LDR の見た目をできる限りマッチさせるようにします。
+ただし、メインシーンの活気の影に埋もれてしまわないように UI の強化を推奨します。
+
+以下のコンソール変数を使って行います。
[REGION:simpletable]
-| Console Variable | Description |
+| コンソール変数 | 説明 |
| --- | --- |
-| `r.HDR.UI.CompositeMode` | When set to 1, this enables HDR UI composition, which attempts to preserve LDR visuals and blending. |
-| `r.HDR.UI.Level` | This adjusts the brightness of the composited UI. It is recommended to use a value of 1.5 or 2. |
+| `r.HDR.UI.CompositeMode` | 1 に設定すると HDR UI コンポジションが有効になり、LDR のビジュアルとブレンドを維持しようとします。 |
+| `r.HDR.UI.Level` | 合成した UI の輝度を調整します。使用する値は 1.5 または 2 をお勧めします。 |
[/REGION]
-## HDR Hardware and Setup Considerations
+## HDR ハードウェアおよびセットアップに関する考慮事項
-With the many different types of displays and TVs that are available, along with console and PC considerations, you may find that you need to use a specific piece of hardware or change a setting to get
-HDR output to work properly. The following are some things to consider when you're running through your setup process:
+ディスプレイやテレビとして利用できる様々な種類がありますが、コンソールや PC の考慮事項と同様に、
+特定のハードウェア部品の使用や HDR 出力を正しく動かすための設定変更が必要になります。以下は、設定を行う際の考慮事項です。
-* Make sure that your system is connected to the HDR display using a high-speed HDMI 2.0 cable so that you can take advantage of the transfers speeds. (HDMI 1.4 may work, but may have issues displaying the content.)
-Not all HDMI ports may accept HDMI 2.0 and HDR. Refer to your display's manual if you're unsure.
-* Ensure that the TV port is HDR enabled. Sometimes this may be listed in your TV or display settings as "HDMI Deep Color" or "Enhanced Format." Refer to your display's manual if you're unsure.
-* With some consoles, like the PS4, you may need to disable the system setting for **Enable HDCP** for HDR output to work properly.
-* For some displays, you may need to adjust display settings to get the correct output.
- * With NVIDIA GPUs, use the NVIDIA Control Panel and adjust the display resolution Output Color Format to use **RGB** and the Output Color Depth to use **10-bit** or **12-bit**.
+* 転送速度を速めるために、お使いの HDR ディスプレイが高速 HDMI 2.0 ケーブルで接続されていることを確認してください。(HDMI 1.4 も使用できますが、コンテンツの表示に問題が生じる可能性があります。)
+すべての HDMI ポートが HDMI 2.0 および HDR に対応しているわけではありません。ディスプレイの取扱説明書で今一度ご確認ください。
+* TV ポートの HDR は必ず有効にしてください。テレビまたはディスプレイ設定の中に "HDMI Deep Color" や "Enhanced Format" として表示されていることがあります。ディスプレイの取扱説明書で今一度ご確認ください。
+* PS4 など、コンソールによっては HDR 出力を正しく機能させるために **Enable HDCP** を無効にしなければいけない場合があります。
+* ディスプレイによっては、正しく出力するためにディスプレイ設定の調節が必要な場合があります。
+ * NVIDIA GPU の場合は、NVIDIA コントロール パネルで、ディスプレイ解像度の Output Color Format を **RGB** に、Output Color Depth は **10-bit** または **12-bit** に設定します。ハードウェアによっては、
+ 使用できるオプションが限れている場合があります。ディスプレイの取扱説明書で今一度ご確認ください。
+ [REGION:lightbox]
+ [(w:400)](NVControlPanel.png)
+ [/REGION]
+ [REGION:caption]
+ _画像をクリックしてフルサイズで表示_
+ [/REGION]
-## Notes and Limitations
+## 注意事項と考慮事項
-* By default, the film-mapping curve is disabled during HDR output due to poor compatibility with LDR controls.
-* Currently, only paths for 1000-nit and 2000-nit display outputs are implemented.
-* D3D11 restrictions limit HDR output to exclusive fullscreen support only. With D3D12 support in Windows 10, this can likely be extended to enable individual viewports for HDR Output. The implementation on Mac currently supports this, already.
+* フィルム マップ カーブは LDR コントロールとの相性が悪いため、HDR 出力中はデフォルトで無効されています。
+* 現在実装されているパスは、1000-nit および 2000-nit ディスプレイ出力用のみです。
+* D3D11 の場合は、HDR への出力が排他的全画面のみに制限されています。D3D12 がサポートされている Windows 10 では、おそらく HDR 出力の個々のビューポートを有効にできるように拡張されると思われます。Mac では既に実装はサポートされています。
-## Reference Material
+## リファレンス
* [http://www.oscars.org/science-technology/sci-tech-projects/aces](http://www.oscars.org/science-technology/sci-tech-projects/aces)
* [http://www.oscars.org/science-technology/aces/aces-documentation](http://www.oscars.org/science-technology/aces/aces-documentation)
diff --git a/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.KOR.udn
new file mode 100644
index 000000000000..f774d15cf66c
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/HDRDisplayOutput/HDRDispalyOutput.KOR.udn
@@ -0,0 +1,162 @@
+INTSourceChangelist:3387247
+Availability: Docs
+Crumbs:
+Title: 하이 다이내믹 레인지 디스플레이 출력
+Description: HDR Display Output 및 그 옵션에 대한 개요입니다.
+Type: Overview
+SkillLevel: Intermediate
+Version: 4.15
+Parent: Engine/Rendering/
+Order:
+Tags: Rendering
+
+
+
+언리얼 엔진 4 에서는 이제 더욱 높은 대비값과 폭넓은 색 공간(color gamut)을 활용할 수 있는 하이 다이내믹 레인지 (HDR) 디스플레이로 출력할 수 있습니다. 이 글의 목표는 디스플레이되는 이미지에
+"현실 세계"에서 느낄 수 있는 보다 자연스러운 라이팅 조건과 같은 특성을 낼 수 있도록 하는 것입니다. 이는 **Academy Color Encoding System** (ACES) 표준으로 넘어가기 위한 과정 중의 하나로, 이를 통해
+여러 포맷과 디스플레이에 걸쳐 일관된 색 보존이 가능하며, 소스 머티리얼을 별다른 수정 없이 다른 미디어에도 사용할 수 있도록 하는 미래 경쟁력 확보 차원의 방편이기도 합니다.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:700)
+ [/PARAM]
+ [PARAM:after]
+ (w:700)
+ [/PARAM]
+[/OBJECT]
+
+[REGION:note]
+이미지는 시뮬레이션이며, 순전히 데모용입니다. LDR 화면에 HDR 차이를 나타내는 것은 불가능하기 때문입니다.
+[/REGION]
+
+
+
+
+현재 구현을 통해서는, 렌더링된 씬의 전체 처리는 **ACES Viewing Transform** 이라 알려진 방식을 통해 처리합니다. 이 프로세스 작동방식은 씬 참조 이미지와 디스플레이 참조 이미지를 사용하는 것입니다.
+
+* **Scene-referred** (씬 참조) 이미지는 노출 범위 제한 없이 소스 머티리얼의 원본 _리니어 라이트_ 값을 유지합니다.
+* **Display-referred** (디스플레이 참조) 이미지는 사용중인 디스플레이의 컬러 스페이스로 변형된 최종 이미지입니다.
+
+이 파이프라인을 사용하면, 다른 디스플레이를 사용할 때마다 올바른 컬러 스페이스를 사용하도록 원본 소스 파일을 매번 수정할 필요가 없습니다. 대신 출력중인 디스플레이가 올바른 컬러 스페이스에
+매핑되도록 해주면 됩니다.
+
+보다 구체적으로 ACES Viewing Transform 은 뷰 파이프라인에서 다음과 같은 방식으로 작동합니다:
+
+* **Look Modification Transform (LMT)** - 프로세스 이 부분은 창의적 "외형" (컬러 그레이딩 및 보정)을 적용시킨 ACES 컬러 인코딩된 이미지를 받은 뒤, ACES 로 렌더링된 이미지를 출력합니다. 여기에는 Reference Rendering Transform (RRT) 와 Output Device Transform (ODT) 가 조합됩니다.
+* **Reference Rendering Transform (RRT)** - 그리고서 이 부분은 씬 참조 컬러 값을 받아 디스플레이 참조 값으로 변환합니다. 이 과정에서 렌더링된 이미지가 특정 디스플레이에만 의존하도록 하는 대신,
+아직 생성되지 않은 디스플레이를 포함해서 출력 대상 디스플레이에 맞도록 더 큰 색 공간과 다이내믹 레인지를 갖도록 합니다.
+* **Output Device Transform (ODT)** - 마지막으로 이 단계에서는 RRT 의 HDR 데이터 출력을 받은 뒤 다양한 디바이스와 거기서 디스플레이 가능한 컬러 스페이스에 일치시킵니다. 이 때문에, 각 타겟은
+일치시킬 별도의 ODT 가 필요합니다 (예: Rec709, Rec2020, DCI-P3, 등).
+
+[REGION:note]
+ACES Viewing Transform 관련 부가 정보는 [ACES GitHub](https://github.com/ampas/aces-dev/tree/master/documents) 에서 PDF 문서를 다운로드해 보시거나, 이 글의 참고 자료 부분에 있는 링크를 따라가시기 바랍니다.
+[/REGION]
+
+## HDR 출력 활성화
+
+HDR 출력은 런타임에 콘솔 변수 토글 또는 블루프린트의 **GameUserSettings** 노드를 통해 활성화시킬 수 있습니다.
+
+(w:800)
+
+**GameUserSettings** 컨트롤은 현재 출력 디바이스에 맞는 가장 가까운 값으로 자동 클램프시키고 모든 플래그도 적절히 설정해 줍니다. 다른 방법으로는, 다음 콘솔 변수를 통해 HDR 디바이스와 필요한 색 공간 출력에 맞는
+옵션을 활성화시키고 변경해도 됩니다.
+
+[REGION:simpletable]
+| 콘솔 변수 | 설명 |
+| --- | --- |
+| `r.HDR.EnableHDROutput` | 1 로 설정하면, 스왑 체인을 재생성하고 HDR 출력을 활성화시킵니다. |
+| `r.HDR.Display.OutputDevice` | 출력 디스플레이의 디바이스 포맷입니다. [INCLUDE:#deviceOuptut] |
+| `r.HDR.Display.ColorGamut` | 출력 디스플레이의 색 공간입니다. [INCLUDE:#colorGamut] |
+[/REGION]
+
+
+
+GameUserSettings 에 대한 블루프린트 또는 C++ 호출을 구성한 이후에는, 쿠킹된 프로젝트 실행, 명령줄 인수 `-game mode` 사용, 독립형 게임 모드 사용, 새 창에서 독점 전체화면 에디터에서 플레이 (PIE)
+등을 실행하면 됩니다 (**Alt** + **Enter** 또는 `fullscreen` 명령 사용).
+
+[REGION:note]
+테두리 없는 창 또는 창 모드는 현재 HDR 출력에 작동하지 않습니다.
+[/REGION]
+
+
+### HDR 에서 로우 다이내믹 레인지 (LDR) UI 지원
+
+[REGION:note]
+이 기능은 실험단계 기능으며, 앞으로 변경될 수 있습니다.
+[/REGION]
+
+HDR 출력이 활성화되면 유저 인터페이스(UI)가 올바르게 보이지 않을 수 있습니다. 그래서 LDR UI 합성을 위한 실험단계 기능 지원을 추가했습니다.
+LDR 모양에 가급적 비슷하게 일치하도록 시도하기는 하지만, 메인 씬의 활기로 인해 탈색되어 보이는 현상을 방지하기 위해서는 UI 를 약간 증폭시켜 주는 것이 좋습니다.
+
+그 방법은 다음 콘솔 변수를 사용하면 됩니다:
+
+[REGION:simpletable]
+| 콘솔 변수 | 설명 |
+| --- | --- |
+| `r.HDR.UI.CompositeMode` | 1 로 설정하면 HDR UI 합성을 활성화시켜, LDR 비주얼과 블렌딩 보존을 시도합니다. |
+| `r.HDR.UI.Level` | 합성된 UI 밝기를 조절합니다. 1.5 나 2 정도 값을 추천합니다. |
+[/REGION]
+
+
+## HDR 하드웨어 및 셋업 고려사항
+
+여러가지 다양한 디스플레이 및 TV 유형에다 콘솔 및 PC 고려사항과 맞물려서 생각해 보면, HDR 출력의 정상 작동을 위해서는 세팅을 변경하거나 특정 하드웨어 부품을 사용해야 할 수도 있습니다.
+다음은 셋업 프로세스를 거치는 도중 고려할 것들 몇 가지입니다.
+
+* 빠른 전송 속도를 위해서는 시스템과 HDR 디스플레이가 고속 HDMI 2.0 케이블로 연결되어있는지 확인합니다 (HDMI 1.4 도 작동은 합니다만, 콘텐츠 표시에 문제가 있을 수 있습니다).
+모든 HDMI 포트가 HDMI 2.0 및 HDR 을 받지 않을 수도 있습니다.
+확실치 않으면 디스플레이 매뉴얼을 참고하세요.
+* TV 포트가 HDR 활성화된 것인지 확인하세요. 가끔 TV 나 디스플레이 세팅에 "HDMI Deep Color" 또는 "Enhanced Format" 이라고 표시되어 있을 수 있습니다. 확실치 않으면 디스플레이 매뉴얼을 참고하세요.
+* PS4 와 같은 몇몇 콘솔에서는 HDR 출력의 정상 작동을 위해서는 **Enable HDCP** 시스템 세팅을 꺼줘야 할 수도 있습니다.
+* 일부 디스플레이의 경우, 올바른 출력을 위해서는 디스플레이 세팅을 조정해야 할 수 있습니다.
+ * NVIDIA GPU 의 경우 NVIDIA Control Panel 을 사용하여 디스플레이 해상도 Output Color Format 이 **RGB** 를 사용하고, Output Color Depth 가 **10-bit** 또는 **12-bit** 를 사용하도록 조절하세요. 하드웨어에 따라
+ 사용할 수 없는 옵션이 있을 수 있습니다. 확실치 않은 경우 디스플레이 매뉴얼을 참고하세요.
+ [REGION:lightbox]
+ [(w:400)](NVControlPanel.png)
+ [/REGION]
+ [REGION:caption]
+ _클릭하면 원본 이미지를 확인합니다._
+ [/REGION]
+
+## 참고 및 한계
+
+* 기본적으로 필름 매핑 커브는 LDR 컨트롤의 조악한 호환성으로 인해 HDR 출력 도중에는 비활성화됩니다.
+* 현재 1000-nit 및 2000-nit 디스플레이 출력에 대한 패스만 구현되어 있습니다.
+* D3D11 제약으로 인해 HDR 출력은 전체화면 전용으로만 제한됩니다. 윈도우 10 의 D3D12 지원을 통해 이 부분은 HDR 출력에 개별 뷰포트가 가능하도록 확장될 수도 있습니다. Mac 에서는 현재 이미 이 구현이 지원되고 있습니다.
+
+## 참고 자료
+
+* [http://www.oscars.org/science-technology/sci-tech-projects/aces](http://www.oscars.org/science-technology/sci-tech-projects/aces)
+* [http://www.oscars.org/science-technology/aces/aces-documentation](http://www.oscars.org/science-technology/aces/aces-documentation)
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.INT.udn
index de301ff99273..943c353c20e4 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.INT.udn
@@ -1,13 +1,14 @@
-availability:docs
+availability:Public
title: Capsule Shadows
description:Landing page for Capsule Shadows in Unreal Engine 4
crumbs:
version:4.15
-parent:Engine/Rendering/LightingAndShadows/
+parent:Engine/Rendering/LightingAndShadows
order:
related: Engine/Rendering/LightingAndShadows/DistanceFields/HowTo/DFHT_4
type:landing
tags: Lighting
+topic-image:CapsuleShadows_Topic.png
[REGION:fullwidth raw]

diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.JPN.udn
index baa862563af8..de697ba3323d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.JPN.udn
@@ -1,14 +1,15 @@
-INTSourceChangelist:3348703
-availability:docs
+INTSourceChangelist:3455313
+availability:Public
title:カプセル シャドウ
description:アンリアル エンジン 4 のカプセル シャドウのランディング ページです。
crumbs:
-version:4.15
-parent:Engine/Rendering/LightingAndShadows/
+Version:4.15
+parent:Engine/Rendering/LightingAndShadows
order:
related:Engine/Rendering/LightingAndShadows/DistanceFields/HowTo/DFHT_4
type:landing
tags:Lighting
+topic-image:CapsuleShadows_Topic.png
[REGION:fullwidth raw]

diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.KOR.udn
index cc901936bf7d..8c0dd537ddec 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/CapsuleShadowsLanding.KOR.udn
@@ -1,14 +1,15 @@
-INTSourceChangelist:3348703
-availability:docs
+INTSourceChangelist:3455313
+availability:Public
title: 캡슐 섀도
description:언리얼 엔진 4 의 캡슐 섀도 홈 페이지입니다.
crumbs:
version:4.15
-parent:Engine/Rendering/LightingAndShadows/
+parent:Engine/Rendering/LightingAndShadows
order:
related: Engine/Rendering/LightingAndShadows/DistanceFields/HowTo/DFHT_4
type:landing
tags: Lighting
+topic-image:CapsuleShadows_Topic.png
[REGION:fullwidth raw]

diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.INT.udn
index 9ffc61962f08..b73b6ffb7282 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.INT.udn
@@ -1,4 +1,4 @@
-Availability: Docs
+Availability:Public
Title: Capsule Shadows Overview
Crumbs:
Description: An overview of Capsules Shadows used in Unreal Engine 4.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.JPN.udn
index 24c9a73725d5..eb6825509aad 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:カプセル シャドウの概要
Crumbs:
Description:アンリアル エンジン 4 のカプセルシャドウの概要を説明します。
@@ -136,7 +136,7 @@ Capsule Indirect Shadow を有効にすると、キャラクターは領域に
#### Source Radius
-指向性ライトの Light Source Angle の機能と同様、Stationary のスポットライトおよびポイントライトの **Source Radius** もキャラクターにソフト シャドウを付けるために使用します。Source Radius を大きくすると、投影元から遠いサーフェスになるほどライトが柔らかくなります。
+指向性ライトの Light Source Angle の機能と同様、Stationary (固定) のスポットライトおよびポイントライトの **Source Radius** もキャラクターにソフト シャドウを付けるために使用します。Source Radius を大きくすると、投影元から遠いサーフェスになるほどライトが柔らかくなります。
[REGION:imagetable]
| (w:400) | (w:400) |
@@ -166,10 +166,10 @@ Capsule Indirect Shadow を有効にすると、キャラクターは領域に
## 制限事項
-* 演算シェーターによるタイル処理ディファード処理を実行するため DirectX 11 が必要です。
+* 演算シェーダーによるタイル処理ディファード処理を実行するため DirectX 11 が必要です。
* 自己シャドウイングによるアーティファクトが任意のメッシュ形状に対して発生する可能性があります。
* Spheres と Sphylls のみカプセル描写を使用できます。
-* カプセルシャドウがソフトになりすぎてアンビエント オクルージョンになった場合、シャドウイングの中にアーティファクトがハードラインの原因になっています。
+* カプセルシャドウがソフトすぎてアンビエント オクルージョンになってしまう場合、ハードラインの原因となるアーティファクトがシャドウイングの中にあります。
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.KOR.udn
index 8bc8d74e236d..2b49e88c9ab5 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview/CapsuleShadowsOverview.KOR.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability: Docs
+INTSourceChangelist:3454749
+Availability:Public
Title: 캡슐 섀도 개요
Crumbs:
Description: 언리얼 엔진 4 에 사용되는 캡슐 섀도 개요입니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.INT.udn
index cb343cfb78fd..a9bde096c101 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.INT.udn
@@ -1,4 +1,4 @@
-Availability:Docs
+Availability:Public
Title:1 - Required Setup
Crumbs:
Description: In this step we will use the Project Browser to create a New Project.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.JPN.udn
index 022074716d4e..5578fa4bc02a 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:1 - 必要な設定
Crumbs:
Description:プロジェクト ブラウザを使って新規プロジェクトを作成してみましょう。
@@ -13,7 +13,7 @@ tags:Lighting
[Nav]
-まず最初に、このガイドでの作業で使用する新規プロジェクトを作成する必要があります。
+まず最初に、このガイドの作業で使用する新規プロジェクトを作成する必要があります。
以降のステップでは、アンリアル エンジン 4 のプロジェクト ブラウザを使ってプロジェクトを作成していきます。このステップを終えると、
今後のプロジェクトにビルドできるテンプレートが完成します。
@@ -28,7 +28,7 @@ tags:Lighting
## 結果
プロジェクト作成後、アンリアル エディタでの取り込みが完了すると、以下のメイン エディタ インターフェースが表示されます。コンテンツ ブラウザの中には、
-次からのステップで使用する Blueprint Third Person Template の各種フォルダが入っています。
+次からのステップで使用する Blueprint Third Person テンプレート用の各種フォルダが入っています。
[REGION:lightbox]
[(w:800)](LoadedProject.png)
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.KOR.udn
index 1393852536de..13b6b0b7e226 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/1/CSQS_1.KOR.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:1 - 필수 구성
Crumbs:
Description: 이번 단계에서는 프로젝트 브라우저를 사용하여 새 프로젝트를 생성합니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.INT.udn
index 3d8207e3f535..a6e8ee771d62 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.INT.udn
@@ -1,4 +1,4 @@
-Availability:Docs
+Availability:public
Title:2 - Your Character - Creating a Shadow Physics Asset
Crumbs:
Description:In this step we will create a new Physics Asset for our Skeletal Mesh that will be used for shadow representation of our character.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.JPN.udn
index 361221e7e5ef..4d364e3eecd1 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:public
Title:2 - キャラクターの作成 - シャドウ物理アセット
Crumbs:
Description:このステップでは、キャラクターの影の表現に使うスケルタルメッシュ用の物理アセットを新規作成します。
@@ -21,7 +21,7 @@ tags:Lighting
## ステップ
1. **コンテンツ ブラウザ** のフォルダ階層を使って **「Mannequin」** > **「Character」** > **「Mesh」** フォルダを開きます。**「SK_Mannequin」** という名前のアセットがあります。選択して右クリックし、
-コンテクストメニューを表示させます。そして、**[Create]** > **[Physics Asset]** > **[Create]** の順に選択していきます。
+コンテキスト メニューを表示させます。そして、**[Create]** > **[Physics Asset]** > **[Create]** の順に選択していきます。
[REGION:raw]
(w:960)
@@ -40,7 +40,7 @@ tags:Lighting
(w:500)
1. ここからのステップはオプションです。先へ進む前に、ここでひとまず、新規作成した物理アセットに名前を付けておきましょう。ここで一旦 PhAT ウィンドウを最小化して **コンテンツ ブラウザ** に戻ると、
-「Mannequin > Mesh」 フォルダの中に物理アセットが新規作成されています。後で分かりやすいように名前を付けておきます (「SPA_Mannequin」が良いと思います)。名前を付け終わったら、PhAT ウィンドウを最大化します。
+**「Mesh」** フォルダの中に SK_Mannequin 用の物理アセットが新規作成されています。後で分かるような名前を付けておきます (「SPA_Mannequin」が良いと思います)。名前を付けたら、PhAT ウィンドウを最大化します。
(w:390)
@@ -48,7 +48,7 @@ tags:Lighting
精度をあげます。カプセルを調整および削除するにあたり、以下の事に注意してください。
* 手、腕、トルソや首用の複数のカプセルなど不要なカプセルを取り除いて、ボディ数を制限します。
- * 足のカプセルは、キャラクターが地上にいるように見せるために非常に重要で、精度を上げるために後からの調整が必要な場合があります。
+ * 足のカプセルは、キャラクターの接地感を出すために非常に重要です。後から調整して精度を高める場合があります。
* シャドウにギャップが生じないように、ジョイント間のカプセルは少しだけオーバーラップさせます。
* このクイックスタートでは腕のカプセルは必要ありませんので、削除することができます。
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.KOR.udn
index 062c73087181..09e06fc6fc10 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/2/CSQS_2.KOR.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:2 - 캐릭터 - 섀도 피직스 애셋 생성
Crumbs:
Description:이번 단계에서는 캐릭터의 그림자 표현으로 사용할 스켈레탈 메시의 피직스 애셋을 새로 만들어 보겠습니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.INT.udn
index 0fac1de65f70..2d9f4067687c 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.INT.udn
@@ -1,4 +1,4 @@
-Availability:Docs
+Availability:Public
Title:3 - Your Character - Assigning the Physics Asset
Crumbs:
Description:In this step we will assign our newly created Physics Asset to our Skeletal Mesh Character.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.JPN.udn
index ae4f90827e0e..1834576f91df 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:3 - キャラクターの作成 - 物理アセットを割り当てる
Crumbs:
Description:このステップでは、この新しい物理アセットをスケルタルメッシュ キャラクターに割り当てます。
@@ -19,7 +19,7 @@ tags:Lighting
## ステップ
-1. **コンテンツ ブラウザ** の中にフォルダ階層を使って **「Mannequin」** > **「Mesh」** フォルダを開きます。**SK_Mannequin** アセットを選択しダブルクリックして開きます。
+1. **コンテンツ ブラウザ** の中にフォルダ階層を使って **[Mannequin]** > **「Mesh」** フォルダを開きます。**SK_Mannequin** アセットを選択しダブルクリックして開きます。
(w:400)
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.KOR.udn
index a4e9469dde77..6de09e745bd9 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/3/CSQS_3.KOR.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:3 - 캐릭터 - 피직스 애셋 할당
Crumbs:
Description:이번 단계에서는 새로 만든 피직스 애셋을 스켈레탈 메시 캐릭터에 할당하겠습니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.INT.udn
index 2432f3dccaef..225766a0bf36 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.INT.udn
@@ -1,4 +1,4 @@
-Availability:docs
+Availability:Public
Title:4 - Your Level - Enabling Capsule Shadows For Your Character
Crumbs:
Description:In this step we create a second shot for our example cinematic.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.JPN.udn
index 7112a8b525f7..646436825722 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:docs
+INTSourceChangelist:3454749
+Availability:Public
Title:4 - レベル内のキャラクター用カプセル シャドウの有効化
Crumbs:
Description:サンプル シネマティックスの 2 つめのショットを作成します。
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.KOR.udn
index 06b6394a4305..7146f790d7c1 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/4/CSQS_4.KOR.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:docs
+INTSourceChangelist:3454749
+Availability:Public
Title:4 - 레벨 - 캐릭터에 캡슐 섀도 켜기
Crumbs:
Description:이번 단계에서는 캐릭터에 캡슐 섀도 옵션을 켜는 방법을 알아봅니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.INT.udn
index ff1ca2a6a899..dbc7c5368cb0 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.INT.udn
@@ -1,4 +1,4 @@
-Availability:Docs
+Availability:Public
Title:5 - On Your Own!
Crumbs:
Description: This step offers some additional things to try with your sample scene and links to more documentation.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.JPN.udn
index 26d25110cb21..aafa7014a4ff 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:5 - 応用編
Crumbs:
Description:サンプル シーンを使っていくつかの作業を試してみましょう。追加情報へのリンクも示します。
@@ -25,6 +25,6 @@ tags:Lighting
* カプセルシャドウに関する詳細は、[カプセルシャドウの概要](Engine/Rendering/LightingAndShadows/CapsuleShadows/Overview) ページをご覧ください。
* 物理アセット ツールのプロパティに関する情報は、[物理セットツール (PhAT)](https://docs.unrealengine.com/latest/INT/Engine/Physics/PhAT/) を参照してください。
-* ライティングに関する情報は、[背景のライティング(https://docs.unrealengine.com/latest/INT/Engine/Rendering/LightingAndShadows/) を参照してください。
+* ライティングに関する情報は、[背景のライティング](https://docs.unrealengine.com/latest/INT/Engine/Rendering/LightingAndShadows/) を参照してください。
[Nav]
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.KOR.udn
index 451ea3e14a4e..86153f4d902e 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/5/CSQS_5.KOR.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:5 - 직접 해보기!
Crumbs:
Description: 이번 단계에서는 샘플 신으로 해볼 수 있는 추가 작업을 몇 가지 제안해 드리고, 자세한 문서 링크를 제공해 드립니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.INT.udn
index 5669d37e2c00..dd4dffeb7c2c 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.INT.udn
@@ -1,4 +1,4 @@
-Availability:Docs
+Availability:Public
Title: Capsule Shadows Quick Start
Crumbs:
Description:A guide to quickly get up and running with the Sequencer Editor in Unreal Engine 4.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.JPN.udn
index 61cc6ee50f33..3b313f95e698 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title:カプセル シャドウ クイック スタート
Crumbs:
Description:UE4 でシーケンサー エディタの作業を開始するためのガイドです。
@@ -19,8 +19,8 @@ SkillLevel:Intermediate
## 目標
-このガイドは、UE4 で物理アセットを用いてキャラクターをカプセルで表現し、また様々に照らされるゲーム背景のキャラクターにカプセル シャドウを有効にするための基礎が
-早く学習できるようにしています。
+このガイドは、UE4 で物理アセットを用いてキャラクターをカプセルで表現し、また様々に照らされるゲーム背景においてキャラクターにカプセル シャドウを有効にするための基礎を
+速く習得できるように作成されています。
## 目的
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.KOR.udn
index d31c72b2570a..89c56e5a114a 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/CapsuleShadows/QuickStart/CSQuickStart.KOR.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3348703
-Availability:Docs
+INTSourceChangelist:3454749
+Availability:Public
Title: 캡슐 섀도 퀵스타트
Crumbs:
Description:캡슐 섀도를 빠르게 사용할 수 있는 방법을 안내해 드립니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/DistanceFields/HowTo/DFHT_1/DFHT_1.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/DistanceFields/HowTo/DFHT_1/DFHT_1.JPN.udn
index 6278257bdbbb..dc21df631b72 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/DistanceFields/HowTo/DFHT_1/DFHT_1.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/DistanceFields/HowTo/DFHT_1/DFHT_1.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3340382
+INTSourceChangelist:3351628
Availability:Docs
Crumbs:
Title:RayTraced Distance Field Soft Shadows
@@ -6,7 +6,7 @@ Description:RayTraced Distance Field Soft Shadows の設定および使用方法
Related:Engine/Rendering/LightingandShadows/DistanceFieldAmbientOcclusion
Related:Engine/Rendering/LightingandShadows/RayTracedDistanceFieldShadowing
SkillLevel:Intermediate
-Type:how to
+Type:how-to
Parent:Engine/Rendering/LightingAndShadows/DistanceFields/HowTo
Order:
Tags:Lighting
@@ -21,12 +21,9 @@ Version:4.15
-ゲーム開発をしていると、広大なオープン ワールドでは事前計算されたライティングがまったく使い物にならず、
-動的ライティングしか効率的に使えない状況になる場合があります。**Ray Traced Distance Field Soft Shadows** (略して **ディスタンス フィールド シャドウ**) は、
-指向性ライトを使った通常のカスケード シャドウ マップ (CSM) よりも遠い場所でのシャドウイングを可能にします。オープン ワールド ゲームまたはビュー ディスタンスが単に遠い場合に、ディスタンス フィールド シャドウは CSM ディスタンスよりも長く効率的なシャドウイングを可能にします。このメソッドは、エピック ゲームズ ランチャーの [Learn] タブからダウンロード可能な
-オープン ワールド デモ "A Boy and His Kite" でふんだんに使用されています。
+ゲーム開発をしていると、広大なオープン ワールドで事前計算されたライティングがまったく使い物ににならなかったり、ターゲット システムのリソースに厳しすぎる場合、そのシーンには動的ライティングを使うことが最善の策だと感じることがあります。**Ray Traced Distance Field Soft Shadows** (**Distance Field Shadows** とも呼ばれる) は、**指向性ライト** による通常の **Cascaded Shadow Maps** (CSM) よりも遠い距離でのシャドウイングを可能にします。オープン ワールド ゲームまたはビュー ディスタンスが一般的に遠い場合に、ディスタンス フィールド シャドウは CSM ディスタンスよりも長く効率的なシャドウイングを可能にします。このメソッドは、オープン ワールド デモ "A Boy and His Kite" (エピック ゲームズのランチャーの Learn タブからダウンロード可能) でふんだんに使用されています。
-このガイドでは、ライトタイプに合わせてディスタンス フィールド シャドウを有効にする方法およびそれらで使うことができる各種設定について説明します。
+このガイドでは、ライトタイプに合わせて Distance Field Shadows を有効にする方法およびそれらで使うことができる各種設定について説明します。
## ステップ
@@ -40,7 +37,7 @@ Version:4.15
(w:400)
[REGION:note]
- ディスタンス フィールド シャドウを有効にする方法は、すべての Light アクタ共通です。ガイドの中で、これらのライトタイプそれぞれの特有のプロパティを補足説明します。
+ Distance Field Shadows を有効にする方法は、すべての Light アクタ共通です。ガイドの中で、これらのライトタイプそれぞれの特有のプロパティを補足説明します。
[/REGION]
1. Light アクタを選択したら、そのアクタの **[Details (詳細)]** パネルを開いて **[Mobility]** を **[Movable]** に設定します。
@@ -54,28 +51,24 @@ Version:4.15
|---|---|
| 指向性ライト | スポット/ポイントライト |
[/Region]
-
[REGION:note]
+
このオプションがグレーアウトになっている場合は、ライトが **[Movable]** 設定になっていること、プロジェクト設定で **[Generate Mesh Distance Fields]** のオプションが有効になっていることを確認してください。
[/REGION]
- 1. この設定をオンにしたライトに対して、ディスタンス フィールド シャドウが有効にされました。コンテンツ ブラウザからいくつかスタティックメッシュをドラッグして、ゲームでディスタンス フィールド シャドウが機能するか確認します。
+1. この設定をオンにしたライトに対して、Distance Field Shadows が有効にされました。コンテンツ ブラウザからいくつかスタティックメッシュをドラッグして、ゲームでディスタンス フィールド シャドウが機能するか確認します。
[REGION:tip]
- 指向性ライトを使う場合、**Dynamic Shadow Distance Moveable Light** スライダーを **「0」** に設定しておくと便利です。こうすると、カスケード シャドウ マップ (CSM) が無効になるので、
- メッシュのディスタンス フィールド シャドウのみが表示されます。**[Show (表示)]** > **[Visualize (可視化)]** > **[Mesh Distance Fields]** を選択してメイン ビューポートで有効にできるメッシュ ディスタンス フィールドに対するビジュアル化モードの使用、
- さらにはシーンのテストおよび隠れているディスタンス フィールド問題の診断にも便利です。
+ 指向性ライトを使う場合、**Dynamic Shadow Distance Moveable Light** スライダーを **「0」** に設定しておくと便利です。こうすると、CMS シャドウ が無効になるので、メッシュの Distance Field Shadow だけを表示されます。[Show (表示)] > [Visualize (可視化)] > [Mesh Distance Fields] を選択してメッシュ ディスタンス フィールドの可視化モードをメイン ビューポートで有効にして使用する場合以外にも、シーンのテストおよびディスタンス フィールドに潜んでいる問題の診断に便利です。
[/REGION]
-
## 光源設定
-**指向性ライト**、**スポットライト**、**ポイントライト** は、それぞれ利用できるオプションが異なります。調節可能な設定内容、および
-ディスタンス フィールド シャドウへの使用方法は以下の通りです。
+指向性ライト、スポットライト、ポイントライト は、それぞれ利用できるオプションが異なります。Distance Field Shadows への調節および使用方法は以下の通りです。
### 指向性ライト
-ディスタンス フィールド シャドウがオンにされている **指向性** ライトでは、以下の設定が使用できます。
+Distance Field Shadows を有効にした指向性ライトでは、以下の設定が使用できます。

@@ -85,17 +78,17 @@ Version:4.15
| [REGION:tablesection]Light[/REGION] ||
| Light Source Angle | 光源の角度です。ディスタンス フィールドあるいはカプセル シャドウを使った動的シャドウイング メソッドでソフトエリア シャドウをサポートするために使用します。 |
| [REGION:tablesection]Distance Field Shadows[/REGION] ||
-| DistanceField Shadow Distance | ディスタンス フィールド シャドウの一番遠い距離です。ディスタンス フィールド シャドウは、この値と CMS シャドウ用 **Dynamic Shadow Distance Movable Light** の間の距離をカバーします。 |
-| RayTraced DistanceField Shadows | 光源のディスタンス フィールド シャドウをオンにします。 |
-| Distance Field Trace Distance | シャドウがキャスト可能な距離をワールド単位で設定します。値が大きいほどシーンに対するシャドウ負荷が高くなります。 |
-| Ray Start Offset Depth Scale | カメラが遠ざかるにつれて受影面からオフセットするレイトレース シャドウの大きさを調節します。非常に大きなスタティック メッシュの低解像ディスタンス フィールドからのセルフ シャドウのアーティファクトを隠すのに便利です。 |
+| DistanceField Shadow Distance | ディスタンス フィールド シャドウイングが可能な最長距離です。Distance Field Shadows は、この値と CMS シャドウ用 **Dynamic Shadow Distance Movable Light** の間の距離をカバーします。 |
+| RayTraced DistanceField Shadows | 光源の Distance Field Shadows をオンにします。 |
+| Distance Field Trace Distance | シャドウがシャドウ キャスターからキャスト可能な距離をワールド単位で設定します。値が大きいほどシーンに対するシャドウ負荷が高くなります。 |
+| Ray Start Offset Depth Scale | カメラが遠ざかるにつれて受影面からオフセットするレイトレース シャドウの大きさを調節します。非常に大きなスタティック メッシュの低解像ディスタンス フィールドからのセルフ シャドウのアーティファクトを隠すために使用します。 |
[/REGION]
-#### カスケード シャドウ マップとディスタンス フィールド シャドウの違い
+#### Cascaded Shadow Maps と Distance Field Shadows の違い
-この例では、指向性ライト上でのカスケード シャドウ マップとディスタンス フィールド シャドウの違いについて説明します。CSM シャドウの方は高品質ですが、ビュー ディスタンスが大きいと使用できません。
-一方、ディスタンス フィールドは、さらに遠くまで効率的にシャドウを表現することが可能です。指向性ライトでは両方のメソッドを使用して、カメラの近くにあるオブジェクトの CSM シャドウイングに対してトレードオフできる距離を見つけて、
-CSM ディスタンスより遠くのオブジェクトにディスタンス フィールド シャドウを使うと良いでしょう。
+Cascaded Shadow Maps は高品質ですが、ビュー ディスタンスが大きいと使用できません。
+一方、Distance Field Shadows はより遠くまで効率的にシャドウを表現することができますが、質はメッシュ ディスタンス フィールドの解像度次第になります。カメラの近くにあるオブジェクトの CSM シャドウイングに対してトレードオフできる距離を見つけてから、
+Distance Field Shadows を使って遠くにシャドウイングを行うと良いでしょう。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -108,12 +101,9 @@ CSM ディスタンスより遠くのオブジェクトにディスタンス フ
#### Light Source Angle (光源の角度)
-指向性ライトの **Light Source Angle** は、ライトの回転角と入力値に基づいてシャドウを鮮明にしたり柔らかくしたりします。この設定はディスタンス フィールドとカプセル シャドウでのみ機能し、
-シャドウが簡単にはぼけない従来の動的シャドウでは機能しません。
-
-この例では、Light Source Angle は 0 に設定されているので、シャドウは非常に鮮明に表現されています。
-一方、デフォルト値の 1 を使用すると、シャドウは照射面に沿って広がって柔らかくなります。
+指向性ライトの **Light Source Angle** は、ライトの回転角と入力値に基づいてシャドウを鮮明にしたり柔らかくしたりします。この設定は Distance Fields と Capsule Shadows でのみ機能し、シャドウが簡単にはぼけない従来の動的シャドウでは機能しません。
+Light Source Angle は 0 に設定されているので、シャドウは非常に鮮明に表現されています。一方、値を高くすると、シャドウは照射面に沿って広がって柔らかくなります。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -127,11 +117,10 @@ CSM ディスタンスより遠くのオブジェクトにディスタンス フ
#### Distance Field Trace Distance (ディスタンス フィールド トレース ディスタンス)
-**Distance Field Trace Distance** は、シャドウキャスターに対するシャドウイングのレイキャスト距離を調節します。トレース距離の値を下げると、シャドウはソースからそのポイントより先へは描画されないので、
-シーンへのシャドウ キャスト負荷が小さくなります。ただし、カメラ ビューからのシャドウ ディスタンスはこのトレース距離では変わらないので、**Distance Field Shadow Distance** で調節します。
+**Distance Field Trace Distance** は、シャドウ キャスターに対するシャドウイングのレイキャスト距離を調節します。トレース距離の値を下げると、シャドウはソースからそのポイントより先へは描画されないので、
+シーンへのシャドウ キャスト負荷が小さくなります。ただし、カメラ ビューからのシャドウ ディスタンスはこのトレース距離では変わらないので、**Distance Field Shadow Distance** で調節することを覚えておいてください。
-この例では、木は Mesh Distance Field を使ってグラウンドに沿ってシャドウをキャストしています。1500 単位という低めのトレース距離、およびデフォルト値 10000 を使った場合、
-ご覧のように木の影は、照射面から 1500 単位以上離れている木の頂点をキャプチャしていません。
+この例では、木は Mesh Distance Field を使ってグラウンドに沿ってシャドウをキャストしています。木の影は 1500 単位以上離れている照射面からキャストされるため、1500 単位のトレース距離 (デフォルト値は 10000) では最上部の枝と葉をキャプチャしません。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -144,7 +133,7 @@ CSM ディスタンスより遠くのオブジェクトにディスタンス フ
### ポイント / スポットライト
- **スポット** ライトおよび **ポイント** ライトは、[Distance Field Shadows] をオンにすると以下の設定が使用できます。
+**スポット** ライトおよび **ポイント** ライトは、[Distance Field Shadows] をオンにすると以下の設定が使用できます。

@@ -154,13 +143,13 @@ CSM ディスタンスより遠くのオブジェクトにディスタンス フ
| [REGION:tablesection]Light[/REGION] ||
| Source Radius | 光源の球体のサイズとして使います。値が大きくなると、半暗部が大きくなりますが、パフォーマンスの負荷も高くなります。 |
| [REGION:tablesection]Distance Field Shadows[/REGION] ||
-| RayTraced DistanceField Shadows | レイ トレース ディスタンス フィールド エリア シャドウを使用するかどうか設定します。 |
+| RayTraced DistanceField Shadows | RayTraced DistanceField Shadows を使用するかどうか設定します。 |
| Ray Start Offset Depth Scale | カメラが遠ざかるにつれて受影面からオフセットするレイトレース シャドウの大きさを調節します。非常に大きなスタティック メッシュの低解像ディスタンス フィールドからのセルフ シャドウのアーティファクトを隠すのに便利です。 |
[/REGION]
-#### 従来のシャドウ マップとディスタンス フィールド シャドウの違い
+#### 従来のシャドウ マップと Distance Field Shadows の違い
-この例では、ポイントライトからのデフォルト シャドウがディスタンス フィールド シャドウに比べてかなり鮮明なので、ライトの **Source Radius** で調節してシャドウを柔らかくします。
+スポットライトとポイントライトのシャドウマップは CSM シャドウと同様に非常に質の良い詳細なシャドウを作成します。一方、Distance Field Shadows はライトの **Source Radius** を使ってシャドウのシャープさを調節します。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -173,10 +162,9 @@ CSM ディスタンスより遠くのオブジェクトにディスタンス フ
### Source Radius
-**Source Radius** は指向性ライトの Light Source Angle と同じく、光源そのものの大きさを調節してエリア シャドウを柔らかくするために使用します。
+**Source Radius** は指向性ライトの Light Source Angle と同じく、光源そのものの大きさを調節してエリア シャドウをソフトにします。
-この例では、**Source Radius** を調節してシャドウを鮮明にしたり柔らかくします。
-半径を小さくするとシャドウが鮮明に、半径を大きくするとシャドウ キャスターからの距離が伸びてシャドウが柔らかくなります。
+値を低くするとシャドウはライトの減衰半径全体でシャープになり、値を高くするとシャドウはシャドウ キャスターから広がるにつれてソフトになります。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -190,7 +178,7 @@ CSM ディスタンスより遠くのオブジェクトにディスタンス フ
### Ray Start Offset Depth Scale
場合によっては、低解像度のディスタンス フィールドあるいは複雑なジオメトリによって、自己シャドウイングによるアーティファクトが生じることがあります。メッシュの **Distance Field Resolution** の調節でオフセットできる場合もありますが、
-必要とされるボリューム テクスチャを生成することで高い負荷をかけたくはありません。その代りにカメラが遠ざかるにつれて、**Ray Start Offset Depth Scale** を使って受影面からのシャドウに対する光線の開始位置を調節することができます。
+ボリューム テクスチャを生成する必要があるため、高い負荷が発生します。そこで、**Ray Start Offset Depth Scale** を代わりに使用すれば、カメラが遠ざかる時に受影面からのシャドウに対する光線の開始位置を調節することができます。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -204,8 +192,8 @@ CSM ディスタンスより遠くのオブジェクトにディスタンス フ
## 結果
-レベル内の様々なライト タイプのディスタンス フィールド シャドウを有効にして、それらの各種設定の調節方法を確認したので、
-ディスタンス フィールドを使ってこれらのコンセプトを独自のレベルとゲームに適用することができます。
+レベル内の様々な種類のライトの Distance Fields Shadows を有効にして、それらの各種設定の調節方法を説明しました。
+Distance Fields を使ってこれらのコンセプトを自分のレベルとゲームに活用してください。
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.INT.udn
index a12a9b822b70..0013e66e262e 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.INT.udn
@@ -80,12 +80,14 @@ type:landing
%Engine/Rendering/LightingAndShadows/DistanceFieldAmbientOcclusion:Topic%
%Engine/Rendering/LightingAndShadows/RayTracedDistanceFieldShadowing:Topic%
%Engine/Rendering/LightingAndShadows/ContactShadows:Topic%
+%Engine/Rendering/LightingAndShadows/CapsuleShadows:Topic%
[/REGION]
## General
[REGION:topics third]
+%Engine/Rendering/LightingAndShadows/VolumetricFog:Topic%
%Engine/Rendering/LightingAndShadows/AmbientOcclusion:Topic%
%Engine/Rendering/LightingAndShadows/LightShafts:Topic%
%Engine/Rendering/LightingAndShadows/AmbientCubemap:Topic%
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.JPN.udn
index 79ca6c627685..834c3a25a247 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.JPN.udn
@@ -1,8 +1,8 @@
-INTSourceChangelist:3275207
+INTSourceChangelist:3455315
Availability:Public
Title:背景のライティング
Crumbs: %ROOT%, Engine
-Description:ライティングとシャドウイング ジオメトリの使用、グローバル イルミネーションの使用、リフレクションの設定
+Description:ライティングとシャドウイング ジオメトリの使用方法、グローバル イルミネーションの使用方法、リフレクションの設定方法
Navigation:topic
Related:Engine/Rendering/ParticleSystems/ParticleLights
Version:4.9
@@ -81,12 +81,14 @@ type:landing
%Engine/Rendering/LightingAndShadows/DistanceFieldAmbientOcclusion:Topic%
%Engine/Rendering/LightingAndShadows/RayTracedDistanceFieldShadowing:Topic%
%Engine/Rendering/LightingAndShadows/ContactShadows:Topic%
+%Engine/Rendering/LightingAndShadows/CapsuleShadows:Topic%
[/REGION]
## 全般
[REGION:topics third]
+%Engine/Rendering/LightingAndShadows/VolumetricFog:Topic%
%Engine/Rendering/LightingAndShadows/AmbientOcclusion:Topic%
%Engine/Rendering/LightingAndShadows/LightShafts:Topic%
%Engine/Rendering/LightingAndShadows/AmbientCubemap:Topic%
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.KOR.udn
index 1f58f5076474..165dced52c58 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/LightingAndShadows.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3275207
+INTSourceChangelist:3455315
Availability:Public
Title: 환경 라이팅
Crumbs: %ROOT%, Engine
@@ -81,12 +81,14 @@ type:landing
%Engine/Rendering/LightingAndShadows/DistanceFieldAmbientOcclusion:Topic%
%Engine/Rendering/LightingAndShadows/RayTracedDistanceFieldShadowing:Topic%
%Engine/Rendering/LightingAndShadows/ContactShadows:Topic%
+%Engine/Rendering/LightingAndShadows/CapsuleShadows:Topic%
[/REGION]
## 일반
[REGION:topics third]
+%Engine/Rendering/LightingAndShadows/VolumetricFog:Topic%
%Engine/Rendering/LightingAndShadows/AmbientOcclusion:Topic%
%Engine/Rendering/LightingAndShadows/LightShafts:Topic%
%Engine/Rendering/LightingAndShadows/AmbientCubemap:Topic%
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/Shadows/Shadows.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/Shadows/Shadows.JPN.udn
index 7dedbb209e3c..57859d78cd38 100644
--- a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/Shadows/Shadows.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/Shadows/Shadows.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2685246
+INTSourceChangelist:3108692
Availability:Public
Title:シャドウ キャスティング
Crumbs: %ROOT%, Engine, Engine/Rendering/LightingAndShadows
@@ -69,7 +69,7 @@ _Stationary Lights (固定ライト) に照らされた右のキャラクター
[INCLUDE:Engine/Rendering/LightingAndShadows/LightMobility/StationaryLights#CascadedShadowMaps]
-## 固定ライトシャドウ
+## Stationary Light (固定ライト) Shadows
[INCLUDE:Engine/Rendering/LightingAndShadows/LightMobility/StationaryLights#StationaryShadows]
@@ -80,8 +80,8 @@ _Stationary Lights (固定ライト) に照らされた右のキャラクター
平均すると可動の動的シャドウ キャスティング ライトは最も負荷がかかります。
-## シャドウのプレビュー
-ライティングをアンビルドするような方法で静的ライトや固定ライトを編集する場合、**[Preview Shadowing (シャドウイングをプレビュー)]** を有効にして、ライティングを再ビルドした場合にシャドウがどのように見えるかを把握することができます。
+## Preview Shadows
+ライティングをアンビルドするような方法で Static Lithg (静的ライト) やStationary Light (固定ライト) を編集する場合、**[Preview Shadowing (シャドウイングをプレビュー)]** を有効にして、ライティングを再ビルドした場合にシャドウがどのように見えるかを把握することができます。
こうしたシャドウは事前に存在していたシャドウと区別するために、以下のようにエディタで「Preview」というテキスト付きで表示されます。
@@ -95,11 +95,11 @@ _Stationary Lights (固定ライト) に照らされた右のキャラクター
(w:480)
-ビューポートの **Show/Visualize** メニューで **[Preview Shadows Indicator (シャドウ インジケータのプレビュー)]** オプションのチェックを外すことでプレビュー シャドウを無効にすることができます。
+ビューポートの **[Show/Visualize]** メニューで **[Preview Shadows Indicator (シャドウ インジケータのプレビュー)]** オプションのチェックを外すことでプレビュー シャドウを無効にすることができます。
[REGION:note]
-テキスト投影のライト関数マテリアルの微調整は、_Engine/EditorMaterials/PreviewShadowIndicator_ をご覧ください。
+このテキストを投影するためのライト関数マテリアルの調整方法については、 _Engine/EditorMaterials/PreviewShadowIndicator_ をご覧ください。
[/REGION]
## 全シャドウの融合
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.CHN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.CHN.udn
new file mode 100644
index 000000000000..8c9af5398b8c
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.CHN.udn
@@ -0,0 +1,130 @@
+INTSourceChangelist:0
+Availability:Public
+Crumbs:
+Title:Volumetric Fog
+Description: An overview of the Volumetric Fog features available when using Exponential Height Fog.
+Type:Overview
+Version:4.16
+Parent:Engine/Rendering/LightingAndShadows
+Order:
+Tags:Rendering
+Tags:Lighting
+Topic-Image:VolumetricFog_Topic.png
+Social-Image:VolumetricFog_Social.png
+
+
+With Unreal Engine, version 4.16, we now have support for Volumetric Fog. This method computes participating media density and lighting at every point in the camera frustum, so we can
+support varying densities and any number of lights affecting the fog.
+
+[REGION:fullwidth raw]
+(w:1339)
+[/REGION]
+
+## Global Controls
+
+To control Volumetric Fog, you can adjust the properties in your Exponential Height Fog and on each light to control the light's contribution amount.
+
+### Exponential Height Fog
+
+Volumetric Fog controls can be found in the Exponential Height Fog component under the **Volumetric Fog** section. The exponential height distribution provides a global density for Volumetric Fog.
+
+
+
+| Property | Description |
+| --- | --- |
+| Scattering Distribution | This determines how directional the volumetric scattering is; a value of 0, means light scatters equally in all directions, while a value close to 1 causes scattering predominantly in the direction of the light (you have to be looking at the light to see its scattering). |
+| Albedo | This is the overall reflectiveness of the participating media. Clouds, fog, and mist, which are based on water particles, have an Albedo close to 1. |
+| Extinction Scale | Controls how much the participating media blocks light. |
+| View Distance | The distance from the camera over which Volumetric Fog will be computed. There are a limited number of Z slices in the volume texture, so pushing out the View Distance will increase under-sampling artifacts near the camera. |
+| Override Light Colors with Fog Inscattering Colors | When enabled, uses the **Fog Inscattering Color**, **Directional Inscattering Color**, and **Inscattering Texture** properties to override the light color with Volumetric Fog. |
+
+### Lights
+
+Each light's contribution amount to the scene and whether it shadows the fog can be controlled using the following properties.
+
+
+
+| Property | Description |
+| --- | --- |
+| Volumetric Scattering Intensity | Controls how much this light will contribute to the Volumetric Fog. When set to 0 there is no contribution. |
+| Cast Volumetric Shadow | Whether to cast a volumetric shadow for lights contributing to Volumetric Fog. When enabled, Point and Spot lights are ~3x more expensive than non-shadow casting lights. |
+
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:800)
+ [/PARAM]
+ [PARAM:after]
+ (w:800)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the Spot light's contribution to the Volumetric Fog has been disabled by setting the **Volumetric Scattering Intensity** to 0.
+
+## Local Controls
+
+Materials using the **Volume** domain describe Albedo, Emissive, and Extinction for a given point in space. Albedo is in the range [0-1] while Emissive and Extinction are world space densities with
+any value greater than 0.
+
+
+(w:700)
+[REGION:caption]
+This is an example of the simplest Volume material for a Particle System.
+[/REGION]
+
+[REGION:note]
+Volume materials currently only work on particles and only positions inside of the particle radius are valid, which is usually handled by a SphereMask.
+[/REGION]
+
+Placing a single Particle System with the material causes a sphere of density to be added to the Volumetric Fog. The effect is fully 3D with no billboards involved.
+
+(w:700)
+
+Taking this approach a step further, you could use multiple spherical fog particle with noise from textures to limit fog to a certain area of your scene.
+
+## Temporal Reprojection
+
+The volume textures used by Volumetric Fog are relatively low-resolution and aligned to the camera frustum. Volumetric Fog uses a heavy temporal reprojection filter with a different sub-voxel jitter
+each frame to smooth out the aliasing. As a side-effect, fast-changing lights like flashlights and muzzle flashes leave lighting trails. Disable the contribution of these lights by setting
+**Volumetric Scattering Intensity** set to 0.
+
+## Performance
+
+The GPU cost of Volumetric Fog is primarily controlled by the volume texture resolution, which is set from the Engine Shadow Scalability level. Volumetric Fog costs 1ms on PlayStation 4 at High Settings,
+and 3ms on an Nvidia 970 GTX on Epic settings, which has 8x more voxels to operate on.
+
+* Particles using **Volume** domain can add a significant GPU cost, depending on their 3D overdraw and instruction count. Use the console command `profilegpu` to inspect this cost.
+* Point and Spot Lights that have **Cast Volumetric Shadow** enabled cost ~3x more than unshadowed Point and Spot Lights.
+
+## Currently Supported Features
+
+This list comprises the currently supported features of Volumetric Fog:
+* A single Directional Light, with shadowing from Cascaded Shadow Maps or static shadowing, with a Light Function.
+* Any number of Point and Spot Lights, with dynamic or static shadowing if **Cast Volumetric Shadowing** is enabled.
+* A single Skylight, with shadowing from Distance Field Ambient Occlusion, if enabled.
+* Particle Lights, if **Volumetric Scattering Intensity** is greater than 0.
+
+Also, translucency is properly affected by Volumetric Fog, depending on its position in the scene. By default, translucency computes fog at vertices, so water planes with low tessellation can
+introduce artifacts. These materials can be set to compute fogging per-pixel to solve this with **Compute Fog Per-Pixel** enabled in the Material Details.
+
+## Known Issues & Common Questions
+
+The following features are **not yet supported** while using Volumetric Fog:
+* Precomputed Global Illumination.
+* Shadowing of Stationary Skylights.
+* IES profiles and Light Functions on Point and Spot Lights.
+* Shadowing from Ray Traced Distance Field Shadows.
+* Shadowing from Volumetric Fog itself.
+* Source Radius on Point and Spot lights.
+* Some settings in the Exponential Height Fog, like Fog Cutoff Distance, Start Distance, and Fog Max Opacity.
+
+Below are some common questions/issues that may arise when using Volumetric Fog.
+
+* **How can one achieve stronger light shafts without heavy global fog?**
+ * When the global density of fog is increased you get denser fog, so you only notice light shafts (shadows of light) if the fog is dense enough to have everything heavily fogged. There are two ways to go about having stronger light shafts without heavy fog:
+ * Keep the global fog density low, but use a higher **Volumetric Scattering Intensity** for the Directional Light. Also, adjust the **Scattering Distritbution** to near **0.9** in your Exponential Height Fog actor.
+ * Keep the global fog density low, but increase it in certain areas with Volume particles.
+* **Can Exponential Height Fog and Volumetric Fog be used at the same time?**
+ * Right now, Volumetric Fog replaces **Fog Inscattering Color** within the Volumetric Fog **View Distance**. Because Volumetric Fog is physically-based and Exponential Height Fog is not, it's impossible to match these precisely in the distance. This means that some settings in the Exponential Height Fog will have no effect on Volumetric Fog.
+* **Can Volumetric Fog's center be decoupled from the camera, which would be ideal for top-down games?**
+ * Not currently, though, a standalone volume would be ideal for this. However, it's hard to integrate them with translucency efficiently.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.INT.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.INT.udn
new file mode 100644
index 000000000000..c64f3eb7ef0d
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.INT.udn
@@ -0,0 +1,135 @@
+Availability:Public
+Crumbs:%ROOT%
+Title:Volumetric Fog
+Description: An overview of the Volumetric Fog features available when using Exponential Height Fog.
+Type:Overview
+Version:4.16
+Parent:Engine/Rendering/LightingAndShadows
+Order:
+Tags:Rendering
+Tags:Lighting
+Topic-Image:VolumetricFog_Topic.png
+Social-Image:VolumetricFog_Social.png
+SkillLevel:Advanced
+
+[TOC(start:1 end:2)]
+
+With Unreal Engine, version 4.16, we now have support for Volumetric Fog. This method computes participating media density and lighting at every point in the camera frustum, so that we can
+support varying densities and any number of lights affecting the fog.
+
+[REGION:fullwidth raw]
+(w:1339)
+[/REGION]
+
+## Global Controls
+
+To control Volumetric Fog, you can adjust the properties in your **Exponential Height Fog** and on each **Light** to control the Light's contribution amount.
+
+### Exponential Height Fog
+
+Volumetric Fog controls can be found in the Exponential Height Fog component under the **Volumetric Fog** section. The exponential height distribution provides a global density for Volumetric Fog.
+
+
+
+| Property | Description |
+| --- | --- |
+| **Scattering Distribution** | This determines how directional the volumetric scattering is; a value of 0, means light scatters equally in all directions, while a value close to 1 causes scattering, predominantly in the direction of the light (you have to be looking at the light to see its scattering). |
+| **Albedo** | This is the overall reflectiveness of the participating media. Clouds, fog, and mist, which are based on water particles, have an Albedo close to 1. |
+| **Extinction Scale** | Controls how much the participating media blocks light. |
+| **View Distance** | The distance from the camera over which Volumetric Fog will be computed. There are a limited number of Z slices in the volume texture, so pushing out the View Distance will increase under-sampling artifacts near the camera. |
+| **Override Light Colors with Fog Inscattering Colors** | When enabled, uses the **Fog Inscattering Color**, **Directional Inscattering Color**, and **Inscattering Texture** properties to override the light color with Volumetric Fog. |
+
+### Lights
+
+Each Light's contribution amount to the scene (and whether it shadows the fog) can be controlled with the following properties.
+
+
+
+| Property | Description |
+| --- | --- |
+| **Volumetric Scattering Intensity** | Controls how much this light will contribute to the Volumetric Fog. When set to 0, there is no contribution. |
+| **Cast Volumetric Shadow** | Toggles whether or not to cast a volumetric shadow for lights contributing to Volumetric Fog. When enabled, Point and Spot Lights are approximately three times more expensive than non-shadow casting lights. |
+
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:800)
+ [/PARAM]
+ [PARAM:after]
+ (w:800)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the Spot Light's contribution to the Volumetric Fog has been disabled by setting the **Volumetric Scattering Intensity** to 0.
+
+## Local Controls
+
+Materials using the **Volume** domain describe Albedo, Emissive, and Extinction for a given point in space. Albedo is in the range [0-1], while Emissive and Extinction are world space densities with
+any value greater than 0.
+
+
+(w:700)
+[REGION:caption]
+This is an example of the simplest Volume material for a Particle System.
+[/REGION]
+
+[REGION:note]
+Volume materials currently only work on particles and only positions inside of the particle radius are valid, which is usually handled by a SphereMask.
+[/REGION]
+
+Placing a single Particle System with the material causes a sphere of density to be added to the Volumetric Fog. The effect is fully three dimensional (3D) with no billboards involved.
+
+(w:700)
+
+Taking this approach a step further, you could use multiple spherical fog particle with noise from textures to limit fog to a certain area of your scene.
+
+## Temporal Reprojection
+
+The volume textures (voxels) used by Volumetric Fog are relatively low-resolution and aligned to the camera frustum. Volumetric Fog uses a heavy temporal reprojection filter with a different sub-voxel jitter
+per frame to smooth out the aliasing. As a side-effect, fast-changing lights, like flashlights and muzzle flashes, leave lighting trails. Disable the contribution of these lights by setting
+**Volumetric Scattering Intensity** set to 0.
+
+## Performance
+
+The GPU cost of Volumetric Fog is primarily controlled by the volume texture resolution, which is set from the Engine Shadow Scalability level. Volumetric Fog costs 1 millisecond on PlayStation 4 at High Settings,
+and 3 milliseconds on an Nvidia 970 GTX on Epic settings, which has eight times more voxels to operate on.
+
+* Particles using **Volume** domain can add a significant GPU cost, depending on their 3D overdraw and instruction count. Use the console command `profilegpu` to inspect this cost.
+* Point and Spot Lights that have **Cast Volumetric Shadow** enabled, cost approximately three times more than unshadowed Point and Spot Lights.
+
+## Currently Supported Features
+
+This list comprises the currently supported features of Volumetric Fog:
+
+* A single Directional Light, with shadowing from Cascaded Shadow Maps or static shadowing, with a Light Function.
+* Any number of Point and Spot Lights, with dynamic or static shadowing (if **Cast Volumetric Shadowing** is enabled).
+* A single Skylight, with shadowing from Distance Field Ambient Occlusion (if enabled).
+* Particle Lights (if **Volumetric Scattering Intensity** is greater than 0).
+
+Also, translucency is properly affected by Volumetric Fog, depending on its position in the scene. By default, translucency computes fog at vertices, so water planes with low tessellation can
+introduce artifacts. These materials can be set to compute fogging per-pixel to solve this with **Compute Fog Per-Pixel** enabled in the Material Details.
+
+## Known Issues
+
+The following features are **not yet supported** while using Volumetric Fog:
+
+* Precomputed Global Illumination.
+* Shadowing of Stationary Skylights.
+* IES profiles and Light Functions on Point and Spot Lights.
+* Shadowing from Ray Traced Distance Field Shadows.
+* Shadowing from Volumetric Fog (itself).
+* Source Radius on Point and Spot Lights.
+* Some settings in the Exponential Height Fog, like Fog Cutoff Distance, Start Distance, and Fog Max Opacity.
+
+### Common Questions
+
+Below are some common questions or issues that may arise when using Volumetric Fog.
+
+* **How can one achieve stronger light shafts without heavy global fog?**
+ * When the global density of fog is increased, you get denser fog, so you only notice light shafts (shadows of light) if the fog is dense enough to have everything heavily fogged. There are two ways to go about having stronger light shafts without heavy fog:
+ 1. Keep the global fog density low, but use a higher **Volumetric Scattering Intensity** for the Directional Light. Also, adjust the **Scattering Distritbution** to nearly **0.9** in your Exponential Height Fog Actor.
+ 1. Keep the global fog density low, but increase it in certain areas with Volume particles.
+* **Can Exponential Height Fog and Volumetric Fog be used at the same time?**
+ * At this time, Volumetric Fog replaces **Fog Inscattering Color** within the Volumetric Fog **View Distance**. Because Volumetric Fog is physically-based and Exponential Height Fog is not, it's impossible to precisely match these in the distance. This means that some settings in the Exponential Height Fog will have no effect on Volumetric Fog.
+* **Can the Volumetric Fog's center be decoupled from the camera? This would be ideal for top-down games...**
+ * Not currently, though, a standalone volume would be ideal for this. However, it's hard to integrate them with translucency efficiently.
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.JPN.udn
new file mode 100644
index 000000000000..12f731e82a71
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.JPN.udn
@@ -0,0 +1,136 @@
+INTSourceChangelist:3458296
+Availability:Public
+Crumbs:%ROOT%
+Title:Volumetric Fog
+Description:指数関数的高さフォグ (Exponential Height Fog) の Volumetric Fog 機能の概要
+Type:Overview
+Version:4.16
+Parent:Engine/Rendering/LightingAndShadows
+Order:
+Tags:Rendering
+Tags:Lighting
+Topic-Image:VolumetricFog_Topic.png
+Social-Image:VolumetricFog_Social.png
+SkillLevel:Advanced
+
+[TOC(start:1 end:2)]
+
+アンリアル エンジン 4.16 で Volumetric Fog がサポートされるようになりました。このメソッドは、カメラ錐台のすべてのポイントでメディア密度とライティングを計算し、
+密度とライト数を調整してフォグに効果を与えます。
+
+[REGION:fullwidth raw]
+(w:1339)
+[/REGION]
+
+## グローバル コントロール
+
+Volumetric Fog を制御するには、**Exponential Height Fog** と各 **ライト** を調節してライトの効果量を制御します。
+
+### 指数関数的高さフォグ (Exponential Height Fog)
+
+Volumetric Fog の調節機能は **[Volumetric Fog]** セクションの [Exponential Height Fog] コンポーネントにあります。Exponential Height を使用すると Volumetric Fog にグローバル密度を加えることができます。
+
+
+
+| プロパティ | 説明 |
+| --- | --- |
+| **Scattering Distribution** | ボリュメトリック スキャタリングに与える指向性を設定します。値が 0 の場合、ライトはすべての方向に均等に拡散し、1 に近づくにつれて主にライトの方向に拡散します (拡散を確認するためにはライトを見ていなければなりません)。 |
+| **Albedo** | 加えているメディアの全体的な反射性です。水のパーティクルがベースになっている雲、フォグ、もやの場合、Albedo は 1 に近づきます。 |
+| **Extinction Scale** | 加えるメディアでブロックするライトの量を制御します。 |
+| **View Distance** | Volumetric Fog の計算対象となるカメラからの距離です。ボリューム テクスチャには限られた数の Z スライスがあるので、View Distance を押し出すとカメラ付近でアンダーサンプリング アーティファクトが増加します。 |
+| **Override Light Colors with Fog Inscattering Colors** | 有効の場合、**Fog Inscattering Color**、**Directional Inscattering Color**、**Inscattering Texture** プロパティを使って Volumetric Fog でライト カラーをオーバーライドします。 |
+
+### ライトの調節
+
+ライトがシーンへ及ぼす効果量 (およびフォグへのシャドウイング有無) を以下のプロパティで調節することができます。
+
+
+
+| プロパティ | 説明 |
+| --- | --- |
+| **Volumetric Scattering Intensity** | Volumetric Fog へのライトの量を制御します。0 にすると、まったく影響しません。 |
+| **Cast Volumetric Shadow** | Volumetric Fog に影響を及ぼすライトへのボリュメトリック シャドウのキャスト有無を切り替えます。有効にすると、ポイントライトとスポットライトの負荷は、シャドウへのキャストなしの場合の約 3 倍になります。 |
+
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:800)
+ [/PARAM]
+ [PARAM:after]
+ (w:800)
+ [/PARAM]
+[/OBJECT]
+
+この例では、**[Volumetric Scattering Intensity]** を 0 にして Volumetric Fog に対するスポットライトの効果を無効にしています。
+
+## ローカル コントロール
+
+**Volume** ドメインを使うマテリアルは、空間の任意のポイントでの Albedo、Emissive、Extinction を表現します。Emissive と Extinction は 0 より大きいすべての値がワールド空間密度となりますが、
+Albedo の範囲は [0-1] です。
+
+
+(w:700)
+[REGION:caption]
+これは、最もシンプルなパーティクル システムの Volumen マテリアルのサンプルです。
+[/REGION]
+
+[REGION:note]
+Volume マテリアルは現在パーティクル上でのみ機能し、パーティクル半径内部の位置でのみ有効です。これは通常 SphereMask によって処理されます。
+[/REGION]
+
+単一のパーティクル システムをマテリアルで配置すると、密度の球体が Volumetric Fog に追加されます。エフェクトはビルボードは一切含まれない、完全な 3D です。
+
+(w:700)
+
+その次のステップとして、テクスチャからのノイズのある複数の球体フォグ パーティクルを使用して、フォグをシーンの所定の場所に制限することができます。
+
+## Temporal Reprojection
+
+Volumetric Fog に使用されるボリューム テクスチャ (voxels) はかなり低解像で、カメラ錐体にそって並びます。Volumetric Fog は、フレームごとにサブボクセル ジッターが異なる
+負荷の高いテンポラル リプロジェクション フィルタを使用します。懐中電灯や火光のような高速で変化するライトは、副次的提供としてライティング トレイルが残ってしまいます。これらのライトの効果を無効にするには、
+**[Volumetric Scattering Intensity]** を「0」に設定します。
+
+## パフォーマンス
+
+Volumetric Fog の GPU 負荷は主にボリューム テクスチャ解像度によって制御されます。これは Engine Shadow Scalability レベルから設定します。Volumetric Fog の負荷は、High Settings にした PlayStation 4 で 1 ミリ秒、
+Epic 設定の Nvidia 970 GTX で 3 ミリ秒で、ボクセルは 8 倍になります。
+
+* **Volume** ドメインを使っているパーティクルは、3D オーバードロー と命令数によってはかなり高い GPU 負荷を追加する場合があります。負荷を調べるには、コンソールコマンドの `profilegpu` を使います。
+* ポイントライトとスポットライトの **Cast Volumetric Shadow** を有効すると、シャドウがない場合と比べて約 3 倍の負荷がかかります。
+
+## 現在サポート対象の機能
+
+Volumetric Fog が現在サポートする機能は以下のとおりです。
+
+* カスケード シャドウ マップからのシャドウイングまたは静的シャドウイング、もしくは Light 関数のある単一の指向性ライト。
+* 動的または静的シャドウイングが付いた任意の数のポイントライトおよびスポットライト (**Cast Volumetric Shadowing** が有効の場合)。
+* ディスタンス フィールド アンビエント オクルージョン (有効の場合) からのシャドウイングが付いた単一のスカイライト。
+* パーティクル ライト (**Volumetric Scattering Intensity** が 0 より大きい場合)。
+
+さらに、シーンの位置に合わせて、透過性も Volumetric Fog によって正しく反映されます。デフォルトでは、透過性は頂点でフォグを計算するため、
+テセレーションの低い水の面ではアーティファクトが発生する可能性があります。[Material Details] で **[Compute Fog Per-Pixel]** を有効にして、フォグ処理をピクセル単位で計算する設定にすると、この問題は解決されます。
+
+## 既知の問題
+
+以下は、Volumetric Fog の使用中は **サポートされない機能** です。
+
+* 事前計算されたグローバル イルミネーション
+* Stationary Skylight (固定スカイライト) のシャドウイング
+* ポイントライトおよびスポットライト上での IES プロファイルと Light 関数
+* レイトレース ディスタンス フィールドシャドウからのシャドウイング
+* Volumetric Fog (そのもの) からのシャドウイング
+* ポイントライトとスポットライト上での Source Radius
+* Fog Cutoff Distance、Start Distance、Fog Max Opacity など、 Exponential Height Fog のいくつかの設定
+
+### 一般的な質問
+
+以下は、Volumetric Fog の使用に関する一般的な質問 / 問題点です。
+
+* **グローバル フォグの密度を上げずにライト シャフトを強める方法はありますか?**
+ * フォグのグローバル密度が増加するとフォグの密度も増加します。従って、フォグがかかるに十分な場合、ライト シャフト (ライトのシャドウ) のみに注目します。フォグ密度を上げずにライト シャフトを強める方法は 2 通りあります。
+ 1. グローバル フォグ密度は低いままにして、指向性ライトの **Volumetric Scattering Intensity** を高くします。さらに、Exponential Height Fog アクタの **[Scattering Distritbution]** を **0.9** に近づけます。
+ 1. グローバル フォグ密度は低くしたまま、Volume パーティクルを使ってある領域の密度を高くします。
+* **Exponential Height Fog と Volumetric Fog は同時に使用できますか?**
+ * 現在、Volumetric Fog は Volumetric Fog **[View Distance]** の **[Fog Inscattering Color]** の役目をします。Volumetric Fog は物理ベースですが Exponential Height Fog はそうでないため、両者を遠方でぴったり一致させることは不可能です。つまり、Exponential Height Fog 設定の中には Volumetric Fog では効果のないものもあるということです。
+* **トップダウン ゲームで使いやすくするために、Volumetric Fog の中心をカメラから切り離すことはできますか?
+ * 今はできませんが、スタンドアローン ボリュームを使うと良いと思います。ただし、透過性と効率よく統合するのは難しいです。
diff --git a/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.KOR.udn
new file mode 100644
index 000000000000..cf5c1fefe8d3
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/LightingAndShadows/VolumetricFog/VolumetricFog.KOR.udn
@@ -0,0 +1,137 @@
+INTSourceChangelist:3458296
+Availability:Public
+Crumbs:%ROOT%
+Title:볼류메트릭 포그
+Description: 익스포넨셜 하이트 포그를 사용할 때 쓸 수 있는 Volumetric Fog, 볼류메트릭 포그 기능에 대한 개요입니다.
+Type:Overview
+Version:4.16
+Parent:Engine/Rendering/LightingAndShadows
+Order:
+Tags:Rendering
+Tags:Lighting
+Topic-Image:VolumetricFog_Topic.png
+Social-Image:VolumetricFog_Social.png
+SkillLevel:Advanced
+
+[TOC(start:1 end:2)]
+
+언리얼 엔진 4.16 버전 이후 Volumetric Fog (볼류메트릭 포그)가 지원됩니다. 이 메소드는 카메라 프러스텀 내 모든 지점에서 (안개나 물과 같은) 빛 전파 관여 매체의 밀도와 라이팅을 계산하므로,
+다양한 밀도의 포그가 지원되며, 라이트가 몇 개든 그 포그에 영향을 줄 수 있습니다.
+
+[REGION:fullwidth raw]
+(w:1339)
+[/REGION]
+
+## 글로벌 컨트롤
+
+볼류메트릭 포그 컨트롤은, **익스포넨셜 하이트 포그** 와 각 **라이트** 의 프로퍼티를 조절하여 그 라이트가 기여하는 양을 제어할 수 있습니다.
+
+### 익스포넨셜 하이트 포그
+
+볼류메트릭 포그 컨트롤은 Exponential Height Fog 컴포넌트의 **Volumetric Fog** 섹션 아래에서 찾을 수 있습니다. 익스포넨셜 하이트 분포는 볼류메트릭 포그의 전체 밀도 값을 줍니다.
+
+
+
+| 프로퍼티 | 설명 |
+| --- | --- |
+| **Scattering Distribution** | 산란 분포 - 볼류메트릭 스캐터(체적 산란) 방향성을 결정합니다. 0 이면 빛이 모든 방향으로 동등하게 퍼지는 반면, 1 에 가까울 수록 주로 라이트 방향쪽으로 산란이 일어납니다 (라이트를 바라보고 있어야 산란이 보입니다). |
+| **Albedo** | 알베도 - 빛 전파 관여 매체의 전체적인 반사성입니다. 구름, 안개 등은 물 입자를 기반으로 한 것이라, 알베도가 1 에 가깝습니다. |
+| **Extinction Scale** | 소멸 스케일 - 빛 전파 관여 매체가 빛을 차단하는 양을 조절합니다. |
+| **View Distance** | 가시 거리 - 카메라에서 이 거리까지 볼류메트릭 포그 계산을 합니다. 볼륨 텍스처에는 제한된 수의 Z 조각이 있어, 이 가시 거리를 높이면 카메라 근처 언더 샘플링 부작용이 늘어납니다. |
+| **Override Light Colors with Fog Inscattering Colors** | 포그 내부산란 색으로 라이트 색 덮어쓰기 - 켜면 **Fog Inscattering Color**, **Directional Inscattering Color**, **Inscattering Texture** 프로퍼티를 사용하여 볼류메트릭 포그의 라이트 색을 덮어씁니다. |
+
+### 라이트
+
+각 라이트가 씬에 기여하는 정도(와 포그에 그림자를 드리울지 여부)를 제어할 수 있는 프로퍼티입니다.
+
+
+
+| 프로퍼티 | 설명 |
+| --- | --- |
+| **Volumetric Scattering Intensity** | 볼류메트릭 스캐터링 세기 - 이 라이트가 볼류메트릭 포그에 얼마만큼 기여하는지를 제어합니다. 0 이면 기여하지 않습니다. |
+| **Cast Volumetric Shadow** | 볼류메트릭 섀도우 드리우기 - 볼류메트릭 포그에 기여하는 라이트에 대해 볼류메트릭 섀도우를 드리울지 말지 결정합니다. 켜면, 포인트 / 스포트 라이트 비용이 그림자를 드리우지 않을 때보다 약 세 배 높아집니다. |
+
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:800)
+ [/PARAM]
+ [PARAM:after]
+ (w:800)
+ [/PARAM]
+[/OBJECT]
+
+이 예제에서는, **Volumetric Scattering Intensity** 를 0 으로 설정하여 스포트 라이트가 볼류메트릭 포그에 기여하지 못하도록 하고 있습니다.
+
+## 로컬 컨트롤
+
+**Volume** 영역을 사용하는 머티리얼은 공간의 한 점에서 알베도, 이미시브(발광), 익스팅션(소멸)을 나타냅니다. 알베도 범위는 [0-1] 인 반면, 이미시브와 익스팅션은 0 보다 큰 값으로
+월드 스페이스 밀도를 나타냅니다.
+
+
+(w:700)
+[REGION:caption]
+파티클 시스템의 가당 간단한 볼륨 머티리얼 예제입니다.
+[/REGION]
+
+[REGION:note]
+볼륨 머티리얼은 현재 파티클에서만 작동하며 파티클 반경 내의 위치만 유효한데, 보통 SphereMask 로 처리됩니다.
+[/REGION]
+
+이 머티리얼을 가진 파티클 시스템을 하나 배치하면 볼류메트릭 포그에 밀도 구체가 추가됩니다. 빌보드 없이도 완벽한 삼차원(3D) 효과를 냅니다.
+
+(w:700)
+
+이 접근법에서 한 단계 더 나아가, 텍스처에서 노이즈를 받는 스페리컬 포그 파티클을 여러 개 사용하는 씩으로 씬의 특정 영역에 포그를 제한시킬 수 있습니다.
+
+## 템포럴 리프로젝션
+
+볼류메트릭 포그에 사용되는 볼륨 텍스처(복셀)는 비교적 저해상도이며 카메라 프러스텀에 정렬됩니다. 볼류메트릭 포그는 프레임마다 서브 복셀 지터링이 각기 다른 무거운 템포럴 리프로젝션 필터를 사용하여 계단현상을 부드럽게 만듭니다.
+부가 효과로 손전등이나 총구 섬광처럼 빠르게 변하는 라이트에 자취가 남게 됩니다. **Volumetric Scattering Intensity** 를 0 으로 설정하면
+이러한 라이트 기여 부분을 끌 수 있습니다.
+
+## 퍼포먼스
+
+볼류메트릭 포그의 GPU 비용은 엔진 퀄리티(Scalability) 섀도우 부분에서 설정되는 볼륨 텍스처 해상도에 크게 좌우됩니다. 볼류메트릭 포그 비용은 PlayStation 4 에서 높음으로 설정한 경우 1 밀리초,
+Nvidia 970 GTX 에서 에픽으로 설정한 경우 3 밀리초인데, 연산 대상 복셀이 8 배나 많은 것입니다.
+
+* **Volume** 영역을 사용하는 파티클은 그 3D 오버드로 및 인스트럭션 수에 따라 GPU 비용이 크게 추가될 수 있습니다. 이 비용을 조사하려면 `profilegpu` 명령을 사용하세요.
+* 포인트 및 스포트 라이트 중 **Cast Volumetric Shadow** (볼류메트릭 섀도우 드리우기) 옵션이 켜진 것은, 드리우지 않는 것보다 비용이 약 세 배 더 듭니다.
+
+## 현재 지원되는 기능
+
+볼류메트릭 포그에 현재 지원되는 기능 목록입니다:
+
+* 단일 디렉셔널 라이트, 캐스케이드 섀도우 맵 또는 스태틱 섀도우, 라이트 함수 포함.
+* 다수의 포인트 및 스포트 라이트, (**Cast Volumetric Shadowing** 옵션이 켜진 경우) 다이내믹 또는 스태틱 섀도우 포함.
+* 단일 스카이 라이트, 디스턴스 필드 앰비언트 오클루전(이 켜진 경우) 섀도우 포함.
+* 파티클 라이트 (**Volumetric Scattering Intensity** 값이 0 보다 큰 경우).
+
+볼류메트릭 포그는 씬에서 그 위치에 따라 반투명에도 제대로 영향을 줍니다. 기본적으로 반투명은 버텍스 위치의 포그를 계산하므로, 테셀레이션이 낮은 물 표면에서는 부작용이 생길 수 있습니다.
+이러한 머티리얼은 픽셀 단위로 포그 계산을 하도록 설정하여 문제를 해결할 수 있는데,
+머티리얼 디테일에서 **Compute Fog Per-Pixel** 옵션을 켜면 됩니다.
+
+## 알려진 문제점
+
+볼류메트릭 포그에 **아직 지원되지 않는** 기능은 다음과 같습니다:
+
+* 프리컴퓨티드 글로벌 일루미네이션.
+* 스테이셔너리 스카이라이트의 그림자.
+* 포인트 및 스포트 라이트 상의 IES 프로파일 및 라이트 함수.
+* 레이 트레이스드 디스턴스 필드 섀도우에서의 그림자.
+* 볼류메트릭 포그( 자체)에서의 그림자.
+* 포인트 및 스포트 라이트 상의 소스 반경.
+* 익스포넨셜 하이트 포그의 일부 세팅: Fog Cutoff Distance, Start Distance, Fog Max Opacity.
+
+### 잦은 질문
+
+볼류메트릭 포그를 사용할 때 자주 발생할 수 있는 이슈 또는 질문은 다음과 같습니다.
+
+* **전체 포그를 무겁게 하지 않고 강한 라이트 섀프트를 낼 수 있는 방법이 있나요?**
+ * 포그 전체 밀도를 높이면 포그가 짙어지며, 전부 무겁게 깔릴 만큼 포그가 짙어야지만 라이트 섀프트(빛의 그림자)가 보이게 됩니다. 포그를 무겁게 하지 않고도 강한 라이트 섀프트를 만드는 방법은 두 가지 있습니다:
+ 1. 글로벌 포그 밀도는 낮게 유지하면서, 디렉셔널 라이트의 **Volumetric Scattering Intensity** (볼류메트릭 스캐터링 세기)를 높입니다. 또 익스포넨셜 하이트 포그 액터의 **Scattering Distritbution** (산란 분포)를 거의 **0.9** 정도로 조절합니다.
+ 1. 전체 포그 밀도는 낮게 유지하면서, 특정 영역만 볼륨 파티클로 높입니다.
+* **익스포넨셜 하이트 포그와 볼류메트릭 포그를 동시에 사용할 수 있나요?**
+ * 현재 볼류메트릭 포그는 볼류메트릭 포그 **View Distance** (가시 거리) 내 **Fog Inscattering Color** (포그 내부산란 색)을 대체합니다. 볼류메트릭 포그는 물리 기반이고 익스포넨셜 하이트 포그는 그렇지 않기 때문에 원거리의 색을 정확히 일치시키는 것은 불가능합니다. 즉 익스포넨셜 하이트 포그의 일부 세팅은 볼류메트릭 포그에 영향이 없을 것이라는 뜻입니다.
+* **볼류메트릭 포그의 중심을 카메라와 분리시킬 수 있나요? 내려다 보는 게임에서는 좋을텐데...**
+ * 현재는 안됩니다만, 독립형 볼륨이 있으면 좋겠지요. 그렇다 해도 반투명과 효율적으로 통합시키기는 힘듭니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.INT.udn
index 0b31b5c2c51f..63c591c67002 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.INT.udn
@@ -12,7 +12,33 @@ tags:Materials
The Material Editor UI consists of a menu bar, a toolbar, and, by default, four open panels.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
1. [Menu Bar](#MenuBar) - Lists the menu options for the current Material.
1. [Toolbar](#Toolbar) - Contains tools that you can use to work with your Material.
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.JPN.udn
index 5459cae62c6e..4be3af759321 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3481084
Availability:Public
-Title: マテリアル エディタ UI
+Title:マテリアル エディタ UI
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/Editor
Description:マテリアル エディタ UI のユーザーガイド
Version:4.9
+tags:Materials
[TOC(start:2)]
@@ -12,7 +13,33 @@ Version:4.9
マテリアルエディタ UI は、メニューバー、ツールバー、そしてデフォルト設定では 4 つのオープンパネルで構成されています。
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
1. [メニューバー](#メニューバー) - 現在のマテリアルのメニューオプションをリスト表示します。
1. [ツールバー](#ツールバー) - マテリアルの作業に使用するツールを収容しています。
@@ -21,12 +48,12 @@ Version:4.9
1. [グラフパネル](#グラフパネル) - マテリアルのシェーダー命令を作成するマテリアル式と関数ノードを表示します。
1. [パレットパネル](#パレットパネル) - 利用可能なマテリアル式と関数ノード全てをリスト表示します。
[REGION:note]
-HLSL コードパネルもありますが、デフォルトでは非表示になっています。このパネルを表示するには、**[Window]** メニューで **[HLSLコード]** をクリックします。詳細は、[HLSLコードパネル](#HLSLコードパネル) を参照してください。
+HLSL コードパネルもありますが、デフォルトでは非表示になっています。このパネルを表示するには、**[Window]** メニューで **[HLSL Code]** をクリックします。詳細は、[HLSLコードパネル](#HLSLコードパネル) を参照してください。
[/REGION]
[INCLUDE:Shared/Editors/Common/EditorMenuItems#UITabTips]
-##メニューバー
+## メニューバー
### ファイル
@@ -68,13 +95,13 @@ HLSL コードパネルもありますが、デフォルトでは非表示にな
| --- | --- |
| [Include:Shared/Editors/Common/EditorToolbarItems/#ToolbarSaveIcon] | [Include:Shared/Editors/Common/EditorToolbarItems/#ToolbarSaveDescription] |
| [Include:Shared/Editors/Common/EditorToolbarItems/#ToolbarCBIcon] | [Include:Shared/Editors/Common/EditorToolbarItems/#ToolbarCBDescription] |
-| | マテリアルエディタで行った変更を、オリジナルのマテリアルとワールドでこのマテリアルを使用している箇所へ適用します。|
+| | ツールバー上の [Apply] ボタンでマテリアルエディタで行った変更を、オリジナルのマテリアルとワールドでこのマテリアルを使用している箇所へ適用します。 |
| | 現在のマテリアルの表現式とコメントを検索します。 |
| | ベースのマテリアル ノードを **[Graph (グラフ)]** パネルの中央に置きます。 |
| | マテリアルと接続していないマテリアルノードを全て削除します。|
| | 何にも接続していないマテリアルノードを表示または非表示にします。|
-| | 有効になると、それぞれのマテリアルノードのマテリアルをリアルタイムで更新します。マテリアルエディタのパフォーマンスを高速にするためにこのオプションを無効にします。[Live Nodes and Live Update](Engine/Rendering/Materials/Editor/#ライブノードとライブアップデート) セクションも参照してください。|
-| |有効になると、ノードが追加、削除、接続、非接続、またはプロパティ値に変更があるたびに全ての副次式のシェーダーがコンパイルされます。マテリアルエディタのパフォーマンスを高速にするためにこのオプションを無効にします。[Live Nodes and Live Update](Engine/Rendering/Materials/Editor/#ライブノードとライブアップデート) セクションも参照してください。|
+| | 有効になると、それぞれのマテリアルノードのマテリアルをリアルタイムで更新します。マテリアルエディタのパフォーマンスを高速にするためにこのオプションを無効にします。[Live Preview、Live Nodes、Live Update](Engine/Rendering/Materials/Editor/#LivePreview、LiveNodes、LiveUpdate) セクションも参照してください。|
+| |有効になると、ノードが追加、削除、接続、非接続、またはプロパティ値に変更があるたびに全ての副次式のシェーダーがコンパイルされます。マテリアルエディタのパフォーマンスを高速にするためにこのオプションを無効にします。[Live Preview、Live Nodes、Live Update](Engine/Rendering/Materials/Editor/#LivePreview、LiveNodes、LiveUpdate) セクションも参照してください。|
| | **[Graph (グラフ)]** パネルにマテリアル統計値を表示または非表示にします。 |
| | 統計情報の報告に使用するリリースまたは開発シェーダーを切り替えます。 |
| | 空のマテリアルの統計情報の表示を切り替えます。グラフでコスト変更の特定に役立ちます。|
@@ -115,7 +142,7 @@ HLSL コードパネルもありますが、デフォルトでは非表示にな
このパネルは、現在選択されているマテリアル式と関数ノード全てのプロパティ ウィンドウを収容しています。ノードが何も選択されていない場合、
編集中のプロパティが表示されます。
-全マテリアルプロパティの説明は、 [](Engine/Rendering/Materials/MaterialProperties)
+すべてのマテリアル プロパティの説明は、[](Engine/Rendering/Materials/MaterialProperties)
を参照してください。
## グラフ パネル
@@ -127,7 +154,7 @@ HLSL コードパネルもありますが、デフォルトでは非表示にな

-ベースとなるマテリアル ノードの各種入力に関する詳細は、 [](Engine/Rendering/Materials\MaterialInputs) を
+ベースとなるマテリアル ノードの各種入力に関する詳細は、[](Engine/Rendering/Materials\MaterialInputs) を
参照してください。
## パレット パネル
@@ -146,7 +173,7 @@ HLSL コードパネルもありますが、デフォルトでは非表示にな

-マテリアルで使用されているシェーダー インストラクション数だけでなく、[コンパイラーエラー](Engine/Rendering/Materials/Editor/#コンパイラエラー) もこのパネルに表示されます。シェーダー インストラクション数が少ないほど、マテリアルの処理コストが低下します。ベースとなる
+マテリアルで使用されているシェーダー インストラクション数だけでなく、[コンパイル エラー](Engine/Rendering/Materials/Editor/#コンパイルエラー) もこのパネルに表示されます。シェーダー インストラクション数が少ないほど、マテリアルの処理コストが低下します。ベースとなる
マテリアルノードに接続していないマテリアル式ノードは、
マテリアルのインストラクション数 (コスト) にはカウントされません。
@@ -167,7 +194,7 @@ HLSL コードパネルもありますが、デフォルトでは非表示にな
## グラフ制御
マテリアルエディタの制御です。アンリアルエディタの別のツール制御とほとんどの場合一致します。例えば、
-マテリアル式グラフをその他とリンクしたオブジェクトエディタのようにナビゲートしたり、マテリアルプレビューメッシュをその他のメッシュツールのように
+マテリアル式グラフをその他とリンクしたオブジェクト エディタのようにナビゲートしたり、マテリアル プレビュー メッシュをその他のメッシュ ツールのように
位置づけたりすることができます。
@@ -186,10 +213,10 @@ HLSL コードパネルもありますが、デフォルトでは非表示にな
| **コネクターをマウスの左ボタンでドラッグ** | 接続を作成します (コネクタを解放) |
| **接続からマウスの左ボタンをドラッグ** | 接続を移動します (同一タイプのコネクタを解放) |
| **Shift + コネクタの上でマウスの左ボタンをクリック** | コネクタに印をつけます。印をつけたコネクタにアクションをもう一度実行すると、2 つのコネクタ間に接続が作成されます。距離が離れているノード間の接続を最も速く作成する方法です。 |
-| **背景でマウスの右ボタンをクリック** | **[New Expression]*** メニューを開きます |
+| **背景でマウスの右ボタンをクリック** | **[New Expression]** メニューを開きます |
| **オブジェクトで右マウスボタンをクリック** | **[Object (オブジェクト)]** メニューを開きます |
| **コネクタでマウスの右ボタンをクリック** | **[Object (オブジェクト)]** メニューを開きます |
-| **Alt + コネクタでマウスの左ボタンをクリック** | コネクターの接続全てを切断します |
+| **Alt + コネクタでマウスの左ボタンをクリック** | コネクタのすべての接続を切断します |
### キーボードの操作
@@ -204,7 +231,7 @@ HLSL コードパネルもありますが、デフォルトでは非表示にな
| **Ctrl + Y** | やり直し |
| **Ctrl + Z** | 元に戻す |
| **Delete** | 選択対象を削除します。 |
-| **Spacebar** | マテリアル表現式のプレビューを強制的に全て更新します |
+| **Spacebar** | マテリアル表現式のプレビューをすべて強制的に更新します |
| **Enter** | (クリックして「適用」と同じです) |
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.KOR.udn
index c32a659fb182..3ef7cda3ae7b 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/Interface/MaterialEditorInterface.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3242329
+INTSourceChangelist:3481084
Availability: Public
Title:머티리얼 에디터 UI
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/Editor
@@ -13,7 +13,33 @@ tags:Materials
머티리얼 에디터 UI 는 메뉴바, 툴바, 그리고 기본적으로 네 개의 열린 패널로 구성됩니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
1. [메뉴 바](#메뉴바) - 현재 머티리얼에 대한 메뉴 옵션이 나열됩니다.
1. [툴바](#툴바) - 머티리얼 작업시 사용할 수 있는 툴이 들어있습니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/MaterialEditor.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/MaterialEditor.INT.udn
index 7b1fd6f74ae1..933631c4900d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/MaterialEditor.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/MaterialEditor.INT.udn
@@ -2,8 +2,10 @@ Availability: Public
Title:Material Editor Reference
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials
Description:Guide to using the Material Editor for creating shaders.
-Version: 4.9
+Version: 4.16
parent:Engine/Rendering/Materials
+related:Engine/Rendering/Materials/ExpressionReference
+related:Engine/Rendering/Materials/Editor/Interface
topic-image:Engine/Rendering/Materials/MatEditorUserGuideTopic.png
type:reference
order:2
@@ -13,162 +15,275 @@ tags:Materials
[TOC(start:2)]
-
-
[EXCERPT:Intro]
-The **Material Editor** provides the ability to create shaders to be applied to geometry using a node-based graph interface.
+The **Material Editor** is a node-based graph interface that enables you to create shaders that can be applied to your geometry, such as Static and Skeletal Meshes, or with other systems such
+as Cascade to create interesting materials.
[/EXCERPT:Intro]
-This document describes how to use the Unreal Editor's Material Editor. For a description of what the various material expressions
-do, see the [Materials Compendium](Engine/Rendering/Materials/ExpressionReference).
+Throughout this page, you'll learn about some of the functions you can perform along with general good practices to follow while using the Material Editor, such as using the Comment boxes to
+call out what a specific section of your material network is doing, using reroute nodes to clean up the pin wires making your network easier to read, what do when you get errors
+in the material statistics window and more.
-[PUBLISH:Licensee]
-For an explanation of how to create new material expressions, see [](Programming/Rendering/MaterialExpressions).
-[/PUBLISH:Licensee]
-
-For more information about the Material Editor UI, see [](Engine/Rendering/Materials\Editor\Interface).
## Opening the Material Editor
-The Material Editor can be opened by **double-clicking** any Material asset or through the **right-click** context menu of a Material
-asset in the Content Browser. Either of these will open up that particular Material in the Material Editor for editing.
+The Material Editor can be opened by **double-clicking** any Material asset or through the **right-click** context menu of a Material asset in the Content Browser. When performing
+either of these operations, that particular Material will open in the Material Editor for editing .
-The Material Editor is also opened whenever you create a new Material in the Content Browser, which is done either by **right-clicking**
-and choosing New Material from the context menu, or clicking the **Add New** button at the top of the **Content Browser** and choosing
-**Material** from the drop-down list.
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0kQDssI8fkI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
## Commenting Material Expression Networks
-Comments are a great way to document what your Material is doing, making it easier for you and others to understand
-what is going on within a complicated material graph. There are two ways to add comments to your Materials: by adding text to
-the **Desc** property of individual nodes or by placing nodes within a Comment object frame.
+Using Comments are a great way to document what your Material is doing, making it easier for you and others to understand what is going on within a complicated material graph.
-### Using the Desc Property
+There are two ways you can add comments to your Materials; by adding text to the individual node using the **Desc** property or its comment bubble (...) as you
+hover over a material node, or by using a comment box to encapsulate a larger section of your material graph.
-Every material expression node contains a **Desc** property, available in the **Details** panel. This property exists as a
-way for artists to add an explicit description of what a specific node is doing. Simply add text into the **Desc** property
-field in the **Details** panel and the text will appear in a text bubble just above the current node.
+### Adding Descriptions to Individual Nodes
-
+Every material node contains a **Desc** property that is available through its **Details** panel. This property exists as a way for artists to add an explicit description
+of what a specific node is doing. When this property is used, the text will appear in the text bubble as you hover over the node.
+
+You can add text descriptions to your nodes by doing the following:
+
+* Select it from your material graph and then from the **Details** panel, locate the **Desc** property to enter your text into.
+* Hover your mouse cursor over the node and click on the **Text Bubble** (...) to enter your description.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ mIWQv65M3gU
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+
+Additionally, if you'd like the comment to always be visible, you can click the **Push Pin** button in the text bubble for it to remain visible and not minimize when you are no longer
+hovering over the node.
### Using Comments
-Comments are another way to make descriptive notes about what certain parts of your material network are doing. Creating
-them will allow you to stretch a frame around a group of multiple nodes, making this a perfect way to describe entire
-sections of a network, rather than using the **Desc** property to describe a single node at a time.
+Comments are another way to make descriptive notes about what certain parts of your material network are doing. Creating them will enable you to stretch a comment box around a group
+of multiple nodes, making this a perfect way to describe entire sections of a network rather than using the **Desc** property to describe individual nodes.
-You can create a Comment at any time by pressing **C** while hovering the mouse over the Graph. You can also **right-click** in
-any blank area of the Graph and choose **Add Comment** from the context menu.
+The comments are displayed as banners of text along the top of the comment box. This text will not scale with the graph's zoom level, so even when zoomed far away, you will still
+be able to read the comment descriptions.
-The comments themselves are displayed as banners of text along the top of the comment box. This text will not scale
-with the Graph's zoom level, so even when zoomed far away, you will still be able to read the description.
+To create a Comment Box you can do the following:
+
+* Press the **C** keyboard shortcut while the mouse is over the Material Graph. If you have any nodes selected in your graph, the comment box will scale to encompass the selection.
+* You can right-click and use the Material Graph context menu to select **New Comment** and add a comment box.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ DKvPmoak4H8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Some additional things you can do with your comment box is:
+
+* Any nodes that are captured within the comment box can be moved by dragging on the group comment text, thus moving any nodes with it. the frame can be resized by dragging on the edges of the comment box to add additional nodes.
+* Colors of the comment box can be adjusted for those more visually inclined. You can use the **Details** panel to set the **Comment Color** property using the color wheel to pick a color or entering a specific RGB value.
+* You can also rename your comments by double-clicking on the comment text banner, or by selecting the comment box and then modifying the **Text** property from the **Details** panel.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ WEaPA92brTk
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
-
-Nodes within a comment frame can be moved by dragging on the group comment text. The frame can be resized by dragging on
-the edges of the comment box. Any nodes inside a group comment will be moved with the
-frame, so you can resize an existing frame to include new nodes.
-Comments can be renamed by selecting the comment and then modifying the **Text** property using the property window.
(#LiveNodesAndLiveUpdate)
-## Live Nodes and Live Update
+## Live Preview, Live Nodes, and Live Update
-
+[REGION:raw]
+(w:800)
+[/REGION]
-When making changes to a network, it can be useful to get immediate feedback from each change in realtime. The Material Editor
-offers two features in the Graph to give you instantaneous feedback for your network: Live Nodes and Live Update.
-The difference between these two options may not be apparent at first. **Live Nodes** allows for any constant changes that the nodes
-make - due to such expressions as Panners - to playback in real time.
+When making changes to a network, it can be useful to get immediate feedback from each change in realtime. The Material Editor offers two features that can be enabled to give you
+instantaneous feedback for your network; **Live Preview**, **Live Nodes** and **Live Update**.
-**Live Update**, on the other hand, allows for each node within the network to have its shader recompiled whenever a change is made.
-These changes include creation of new nodes, deletion of nodes, node connections and disconnections, and changes in properties.
-This recompilation is necessary so that the material preview drawn at that node is up to date. However, recompiling these
-intermediate shaders can be time-consuming, especially if your Material contains many nodes. If you are experiencing long wait
-times after every change, you may want to deactivate the Live Update option.
+The difference between these options may not seem apparent at first but they each perform a specific task for viewing your material in realtime.
-As an example, consider the example below, in which we have a panning texture of an awesome rocket hull being multiplied by a
-vector parameter, which is supplying color.
+* **Live Preview -** This option allows for any changes to update automatically in the Material Preview window in realtime without having to use the **Save** or **Apply** buttons.
+* **Live Node -** This option allows for any constant changes that the nodes make, such as material expressions for Panners, so that they playback in realtime inside the graph.
+* **Live Update -** This option allows for each node within the network to have its shader recompiled whenever a change is made. These changes include creation of new nodes, deletion of nodes, node connections and disconnections, and changes in properties. This recompilation is necessary so that the Material Preview drawn at that node is up to date. However, recompiling these intermediate shaders can be time-consuming, especially if your Material contains a large network. If you're experiencing long wait times after every change, you may want to deactivate the Live Update option.
+
+As an example, consider the example below, in which we have a panning texture of an awesome rocket hull being multiplied by a vector parameter, which is supplying color.

-* In this example, activating *Live Nodes* would cause the rocket texture to pan in realtime in the node's preview thumbnail.
-If *Live Nodes* was deactivated, the texture would remain stationary even though the Panner was telling it to move. You may, however,
-notice small updates as you move your mouse around the Graph area.
-* If you changed the color from cyan to purple, you would only see the change if *Live Update* was active. With *Live Update* off,
-the change in color would not be visible on the nodes, even though the color property was indeed changed.
+* In this example, activating **Live Nodes** would cause the rocket texture to pan in realtime in the node's preview thumbnail in the graph. If **Live Nodes** were deactivated, the texture would remain stationary even though the Panner was telling it to move. You may, however, notice small updates as you move your mouse around the graph area.
+* If you were to change the color from cyan to purple, you would only see the change if **Live Update** were enabled. With Live Update disabled, the change in color would not be visible on the nodes even though the color property was indeed changed.
+As an example, consider the example below, in which we have a panning texture of an awesome rocket hull being multiplied by a
+vector parameter, which is supplying color.
-
-When _Live Update_ is deactivated, you can force-update all previews manually by hitting the Spacebar. Fast iteration can be achieved
-by disabling _Live Update_ and then pressing the spacebar whenever you would like to view your changes.
+[REGION:tip]
+Also, when **Live Update** is deactivated, you can force-update all previews manually by hitting **Spacebar**. Fast iteration can be achieved by disabling **Live Update** and then pressing
+spacebar whenever you would like to view your changes.
+[/REGION]
(#CompilerErrors)
+## Reroute Nodes
+(w:600)
+
+When making complex Materials, sometimes your shader networks can become difficult to read or make sense of as the connection wires overlap or criss-cross large portions of your material network
+to connect to different inputs. **Reroute** nodes enable you to easily organize and clean up your shader network without impacting performance or adding to the instruction count since these are
+purely visual.
+
+To add **Reroute** nodes in the Material Editor, you can do the following:
+
+* From the right-click **Context Menu** or the **Material Palette** under the **Utility** category you can drag in the **Add Reroute Node**.
+ (w:600)
+* **Double-click** on a connection wire to **insert** a new Reroute node inline.
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ v1KgtZMBQDs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+ [/OBJECT]
## Compiler Errors
+Each time a change is made to the material network, the Material must be compiled to see the changes. If any required inputs of an expression within the network have no connections or are
+being passed the wrong type of data, a compiler error will occur.
-Each time a change is made to the material network, the Material must be compiled. If any required inputs of an expression within
-the network have no connections or are being passed the wrong type of data, a compiler error will occur. These errors are displayed
-in the [Graph Panel](Engine/Rendering/Materials/Editor/Interface/#GraphPanel).
+These types of errors are indicated in two places.
-Compiler errors let you know a problem exists and what that problem is by providing information about the type of expression
-that they occurred on and a description of the error.
+* The node that is throwing the error will display "ERROR!" along its bottom.
+* The **Stats** window will display the error that is being thrown causing the Material to fail to compile. If your Stats window is not opened, you can open it by going to **Window** > **Stats**.
+
+Compiler errors let you know that a problem exists and what that problem is by providing information about the type of node expression they occurred on and the description of the error.

-
+[REGION:caption]
+In this image, the MakeMaterialAttributes node is throwing an error with the Normal input property, as indicated by the Stats window in the lower portion.
+[/REGION]
(#ExpressionSearch)
-## Material Expression Search
+## Material Graph Search
-The search functionality in the Material Editor allows you to quickly find any nodes (including comments) within the material
-network that contain a specific piece of text in their description or certain other properties specific to individual types
-of expressions. This makes it easy to add identifying keywords to nodes and jump to them at a later time without hunting through
-the network of expressions haphazardly.
+The search functionality in the Material Editor enables you to quickly find any nodes (including comments) within the material network that contain a specific piece of text in their
+description or certain other properties specific to individual types of nodes. This makes it easy to add identifying keywords to nodes and jump to them at a later time without sifting
+through the network of nodes in your graph haphazardly.
-Typing a full or partial keyword into the search box will perform a search against the properties of the expressions present
-in the **Graph** panel. The currently selected result will be brought into view and highlighted.
+You can open this tab by going to **Window** > **Find Results**.
-
+Typing a full or partial keyword into the search box will perform a search against the properties of the nodes present within you your material graph. The currently selected result will be
+brought into view and highlighted.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ OlJzlgWI2ig
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
-[REGION:note]
-The search is case-insensitive.
-[/REGION]
Searches are performed against the following property values:
-| **Expression Type** | **Searched Properties** |
+| **Searched Properties** | **Expression Type** |
| --- | --- |
-| _All_ | Desc |
-| _Texture Sample_ | Texture |
-| _Parameters_ | ParamName |
-| _Comment_ | Text |
-| _FontSample_ | Font |
-| _MaterialFunctionCall_ | MaterialFunction |
+| **Desc** | All Nodes |
+| **Texture** | Texture Sample |
+| **ParamName** | Parameters |
+| **Text** | Comment |
+| **Font** | Font Sample |
+| **Material Function** | MaterialFunctionCall |
-Searches can also be performed for specific types of expressions by using the `NAME=` switch with your search. For
-example, to find all texture samplers, you could use the following search:
-
- NAME=texture
-
-When a new match is clicked in the **Search** panel, it will be brought into view in the **Graph** tab if it
-is not already visible.
-
-To clear a search, simply press the  button.
-
-
+Searches can also be performed for specific types of expressions by using the `NAME=` switch with your search. For example, to find all texture samples, you could use
+the following search:
+ NAME=texture
+When a new match is clicked in the **Search** panel, it will be brought into view in the graph table if it is not already visible.
+To clear a search, simply press the **Clear** (X) button.
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/MaterialEditor.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/MaterialEditor.JPN.udn
index 62a7e83e853c..7d774f3a0bb1 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/MaterialEditor.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Editor/MaterialEditor.JPN.udn
@@ -1,10 +1,12 @@
-INTSourceChangelist:3242329
+INTSourceChangelist:3476123
Availability:Public
Title:マテリアル エディタのリファレンス
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials
Description:シェーダー作成のためにマテリアル エディタを使用するためのガイド
-Version:4.9
+Version:4.16
parent:Engine/Rendering/Materials
+related:Engine/Rendering/Materials/ExpressionReference
+related:Engine/Rendering/Materials/Editor/Interface
topic-image:Engine/Rendering/Materials/MatEditorUserGuideTopic.png
type:reference
order:2
@@ -14,162 +16,275 @@ tags:Materials
[TOC(start:2)]
-
-
[EXCERPT:Intro]
-**マテリアル エディタ** には、ノードベースのグラフ インターフェイスを使用してジオメトリに適用するシェーダーを作成する機能があります。
+**Material Editor** には、ノードベースのグラフ インターフェイスを使用してスタティックメッシュやスケルタルメッシュといったジオメトリに適用するシェーダーを作成したり、
+カスケードなど他のシステムを使って魅力的なマテリアルを作成することができます。
[/EXCERPT:Intro]
-このドキュメントではアンリアル エディタのマテリアル エディタの使用法を説明します。各種マテリアル式の説明は、
-[マテリアルの概要](Engine/Rendering/Materials/ExpressionReference) を参照してください。
+このページでは、マテリアル エディタを使いながら一般的なグッドプラクティスに従って実行できる関数のいくつかを学習します。
+例えば、コメントボックスを使ってマテリアル ネットワークの特定のセクションの処理を呼び出したり、
+リルート ノードを使ってピン ワイヤーを整理してネットワークを見やすくしてマテリアル統計情報ウィンドウに表示されたエラーへの対応が分かりやすくします。
-[PUBLISH:Licensee]
-新しいマテリアル式の作成方法の説明に関しては、[](Programming/Rendering/MaterialExpressions) を参照してください。
-[/PUBLISH:Licensee]
-
-マテリアル エディタの UI に関する詳細は、 [](Engine/Rendering/Materials\Editor\Interface) を参照してください。
## マテリアル エディタを開く
-マテリアル エディタを開くには、いずれかのマテリアル アセットを **ダブルクリック**、
-もしくはコンテンツ ブラウザ 内のマテリアル アセットのコンテキスト メニューを **右クリック** します。いずれかの操作で、マテリアル エディタで特定のマテリアルが編集のために開きます。
+マテリアル エディタを開くには、いずれかのマテリアル アセットを **ダブルクリック** するか、コンテンツ ブラウザのマテリアルのコンテキスト メニューを **右クリック** します。いずれかの操作で、
+マテリアル エディタで特定のマテリアルが編集のために開きます。
-また、マテリアル エディタは、コンテンツ ブラウザで新規マテリアルを作成する時にいつでも、以下のいずれかの方法で開くこともできます。
-**右クリック** してコンテキスト メニューから新規マテリアルを選択する、または **コンテンツ ブラウザ** の上部にある **[Add New (新規)]** ボタンをクリックして、
-ドロップダウン リストから、**[Material (マテリアル)]** を選択します。
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0kQDssI8fkI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
## マテリアル式のネットワークにコメントを入れる
-コメントはマテリアルが何を行っているかを文書化する素晴らしい方法です。複雑なマテリアル グラフ内で何が行われているかについて、
-自分だけでなく他の人も理解しやすくなります。マテリアルにコメントを入れる方法は以下の 2 通りあります。
-各ノードの **Desc** プロパティでテキストを追加するか、コメント オブジェクトのフレーム内にノードを配置します。
+コメントはマテリアルが何を行っているかを文書化する素晴らしい方法です。複雑なマテリアル グラフ内で何が行われているかについて、誰が見ても理解しやすくします。
-### Desc プロパティを使用する
+マテリアルにコメントを入れる方法は以下の 2 通りあります。各ノードの **Desc** プロパティまたはマテリアル ノード上にマウスを当てると表示される吹き出しコメント (...) を使ってでテキストを追加するか、
+コメント ボックスを使ってマテリアル グラフの大きなセクションをカプセル化します。
-各マテリアル式ノードには、**[Desc]**プロパティがあり、**[Details (詳細)]** パネルで利用できます。このプロパティは、
-特定のノードが何を行っているかについての明確な説明をアーティストが追加できる手段として存在します。**[Details (詳細)]** パネルで **Desc** プロパティ入力フィールドにテキストを追加します。
-**[Details (詳細)]** パネルで **Desc** プロパティ入力フィールドにテキストを追加します。
+### 各ノードに説明を追加する
-
+各マテリアル式ノードには、**[Details (詳細)]** パネルの中に **[Desc]** プロパティがあります。特定のノードの機能について、
+アーティストは明確な説明を追加することができます。このプロパティを使うと、ノード上にマウスを当てるとテキストの吹き出しが表示されます。
+
+ノードにテキストの説明を追加するには、以下の操作を行います。
+
+* マテリアル グラフからノードを選択し、**[Details]** パネルでテキストを追加したい **Desc** プロパティを探します。
+* ノード上にマウスを当てて **テキストの吹き出し** (...) をクリックして説明を入れます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ mIWQv65M3gU
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+
+さらに、コメントを常に表示するには、テキストの吹き出し **[Push Pin]** ボタンをクリックして表示したままにします。
+カーソルが離れても、最小化されなくなります。
### コメントを使用する
-コメントは、マテリアル ネットワーク部分での実行内容の説明メモをつくるもう 1 つの方法です。コメントを作成することで、
-複数ノードのグループ周辺でフレームを伸縮し、
-**[Desc]** プロパティを使用して一回に 1 つのノードを説明するのではなく、ネットワークのセクション全体を説明する最適な方法になります。
+コメントを使って、マテリアル ネットワーク部分での実行内容の説明メモを作成することもできます。コメントの作成により、複数ノードのグループ周辺でフレームを伸縮し、
+**Desc** プロパティを使って使用して 1 つずつノードを説明するのではなく、ネットワークのセクション全体の説明に最も適しています。
-グラフにマウスをかざしながら、**C** キーを押しすことで、いつでもコメントを作成できます。また、グラフのブランク エリアで **右クリック** し、
-**[Add Commene (新規コメント)]** を選択することでもコメントを作成できます。
+コメント自体は、コメントボックスの上部に沿ったテキストのバナーとして表示されます。このテキストはグラフのズーム レベルではスケールしないので、
+遠く離れてズームしても説明を読むことができます。
-コメント自体は、コメントボックスの上部にそってテキストのバナーとして表示されます。このテキストは、グラフのズームレベルに合わせてスケーリングされません。
-そのため、遠く離れてズームされても、その説明を読むことができます。
+コメントボックスを作成するには、以下の操作を行います。
+
+* マテリアル グラフにマウスをかざしながらキーボードの **C** を押します。グラフで選んだノードはどれも、コメントボックスがスケールして選択範囲を調節できます。
+* マテリアル グラフのコンテキスト メニューを右クリックして **[New Comment]** を選択してコメントボックスを追加することができます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ DKvPmoak4H8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+コメントボックスを使って以下のこともできます。
+
+* コメント フレーム内のノードは、グループ コメント テキスト上でドラッグして移動できます。グループ コメント内のノードは、フレームと共に移動します。コメントボックスの端をドラッグしてフレームのサイズ調整して、ノードの追加ができます。
+* 視覚効果を強めたい場合に、コメントボックスの色を変えることができます。**[Details]** パネルで、カラーホイールで色を選択するか、RGB 値を指定して **Comment Color** プロパティを設定することができます。
+コメント テキスト バナーをダブルクリックするか、**[Details]** パネルから **Text** プロパティを修正することで、コメント名を変更することもできます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ WEaPA92brTk
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
-
-コメント フレーム内のノードは、グループ コメント テキスト上でドラッグして移動できます。フレームは、コメントボックスの端を
-ドラッグするとサイズ調整できます。グループ コメント内のノードは、フレームと共に移動します。
-そのため、既存のフレームに新しいノードを含むようにリサイズできます。
-コメントの名前を変更するには、コメントを選択し、[プロパティ] ウィンドウを使用して **Text** プロパティを修正します。
(#LiveNodesAndLiveUpdate)
-## Live Nodes と Live Update
+## Live Preview、Live Nodes、Live Update
-
+[REGION:raw]
+(w:800)
+[/REGION]
-ネットワークに変更を加える場合、各変更のフィードバックをリアルタイムで直ちに得ることが有用な場合があります。マテリアル エディタでは、
-グラフに次の 2 つの機能があり、ユーザーのネットワークについて即時にフィードバックします。その機能は、Live Nodes と Live Update です。
-この 2 つのオプションの違いは、最初はわかりずらいかもしれません。**Live Nodes** は、たとえば Panner などの式によって
-リアルタイムで再生するためにノードが行う一定の変化を可能にします。
+ネットワークに変更を加える場合、各変更のフィードバックをリアルタイムで直ちに得ることが有用な場合があります。マテリアル エディタは、ネットワークに即時フィードバックできる 2 つの機能を提供します。
+**Live Preview**、**Live Nodes**、**Live Update** です。
-これに対して **Live Update** では、変更が加えられるたびにネットワーク内の各ノードがそのシェーダーをリコンパイルします。
-こうした変更には、新規ノードの作成、ノードの削除、ノードの接続、ノードの非接続、プロパティの変更などがあります。
-ノードに対して描かれたマテリアル プレビューが最新のものになるように、この再コンパイルが必要です。ただし、これらの再コンパイルには
-非常に時間がかかる場合があります。特に、マテリアルに多くのノードが含まれる場合は時間がかかります。変更するたびにそのようなことが起こったら、
-Live Update オプションは無効にしたくなることがあるかもしれません。
+これらのオプションは一見するとあまり変わらないように見えますが、マテリアルをリアルタイムで表示する特別なタスクを実行します。
-たとえば、以下の例を考えてみます。
-ベクター パラメータによって乗算処理される素晴らしいロケットの外部構造のパニング テクスチャで、カラーを供給しています。
+* **Live Preview -** **[Save]** や **[Apply]** ボタンを使わずに、[Material Preview] ウィンドウにリアルタイムに自動更新をするための変更を可能にします。
+* **Live Node -** グラフ内でリアルタイムで再生するように、Panner の表現式などノードが行う一定の変化を可能にします。
+* **Live Update -** 変更が加えられるたびにネットワーク内の各ノードがそのシェーダーをリコンパイルします。こうした変更には、新規ノードの作成、ノードの削除、ノードの接続、ノードの非接続、プロパティの変更などがあります。ノードに対して描かれたマテリアル プレビューが最新のものになるように、この再コンパイルが必要です。ただし、これらの再コンパイルには非常に時間がかかる場合があります。特に、マテリアルに含まれるネットワークが大きい場合は時間がかかります。変更するたびにこのような事が起これば、Live Update オプションを非アクティブにしたくなると思います。
+
+例として、見事なロケットのハルのテクスチャをベクター パラメータで乗算処理して色付けをする例を考え見ましょう。

-* この例では、*Live Nodes* をアクティベートすると、そのノードのプレビュー サムネイルでロケットのテクスチャがリアルタイムでパンします。
-*Live Nodes* を非アクティブにすると、Panner が移動を指示してもテクスチャは静止したまま残ります。しかし、
-グラフ領域周辺でマウスを動かすと若干更新されていることに気づくかもしれません。
-* シアンから紫にカラーを変更すると、*Live Update* がアクティブな場合のみその変更がわかります。*Live Update* がオフの場合、
-カラー プロパティが実際に変更されても、ノード上でカラーの変更は不可視になります。
+* この例では、**Live Nodes** をアクティベートすると、グラフ内のそのノードのプレビュー サムネイルでロケットのテクスチャがリアルタイムでパンします。**Live Nodes** を非アクティブにすると、Panner が移動を指示してもテクスチャは静止したまま残ります。ただし、グラフ領域周辺でマウスを動かすと若干更新されていることに気づくかもしれません。
+* シアンから紫にカラーを変更すると、**Live Update** がアクティブな場合のみ、その変更がわかります。Live Update を無効にすると、カラー プロパティが実際に変更されても、ノード上では色の変更は可視化されません。
+例として、
+見事なロケットのハルのテクスチャをベクター パラメータで乗算処理して色付けをする例を考え見ましょう。
-
-_Live Update_ が非アクティブな場合、「スペースバー」を押してすべてのプレビューを手動で更新できます。_Live Update_ を無効にし、変更を表示したい場合にいつでも「スペースバー」を押せば、
-高速イタレーションを実現できます。
+[REGION:tip]
+**Live Update** が非アクティブな場合、**スペースバー** を押してすべてのプレビューを手動で更新できます。**Live Update** を無効にし、変更を表示したい時に「スペースバー」を押せば、
+高速イタレーションを実現できます。
+[/REGION]
(#CompilerErrors)
+## Reroute ノード
+(w:600)
+
+複雑なマテリアルを作成する場合、接続ワイヤーが重なったり、マテリアル ネットワークの大部分が交差すると、
+シェーダー ネットワークの読み取りや理解がしずらくなることがあります。**Reroute** ノードは、純粋に視覚化されているので、パフォーマンスに影響を与えたり、パフォーマンスを下げたり命令数を追加したりせずに、
+シェーダー ネットワークの整理整頓を簡単に行うことができます。
+
+マテリアル エディタに Reroute ノードを追加するには、以下の手順を行います。
+
+* **コンテンツ メニュー** あるいは **マテリアル パレット** を右クリックして **[Utility]** カテゴリで **Add Reroute Node** へドラッグすることができます。
+ (w:600)
+* 接続スプラインを **ダブルクリック** して、新規の Reroute ノードをインラインに **挿入** します。
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ v1KgtZMBQDs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+ [/OBJECT]
## コンパイル エラー
+マテリアル ネットワークに変更が加えられるたびに、マテリアルを変更を確認するためにコンパイルしなければなりません。ネットワーク内の表現式で必要な入力が接続されていないか、
+誤ったタイプのデータを渡されると、コンパイラ エラーが発生します。
-マテリアル ネットワークに変更が加えられるたびに、マテリアルをコンパイルしなければなりません。ネットワーク内の式の必須インプットが、コネクションを持たないか、
-誤ったタイプのデータを渡されると、コンパイラ エラーが発生します。こうしたエラーは
-[グラフパネル](Engine/Rendering/Materials/Editor/Interface/#グラフパネル ) に表示されます。
+このタイプのエラーは 2 つのフェーズを示します。
-コンパイラ エラーは、エラーが発生した式のタイプと説明についての情報を提供することで、
-問題の存在、またそれが何であるかを知らせてくれます。
+* エラーが発生しているノードの下に "ERROR!" と表示されます。
+* **[Stats]** ウィンドウに、マテリアルのコンパイルの失敗の原因となっているエラーが表示されます。[Stats] ウィンドウが開かない場合は、**[Window]** > **[Stats]** から開くことができます。
+
+コンパイラ エラーは、エラーが発生した式のタイプと説明についての情報を提供することで、発生場所と内容を知らせます

-
+[REGION:caption]
+この画像では、ウィンドウ下部の [Stat] ウィンドウで表示されいるように、MakeMaterialAttributes ノードの Normal 入力プロパティがエラーを出しています。
+[/REGION]
(#ExpressionSearch)
-## マテリアル式の検索
+## マテリアル グラフの検索
-マテリアル エディタの検索機能では、マテリアル ネットワーク内のノード (コメントも含む) を迅速に見つけることができます。
-説明に特定のテキストや、各タイプに特有のプロパティを含むノードを
-見つけることができます。これにより、ノードを特定するキーワードを追加し、後でそこにジャンプできるようになります。
-ネットワークを隅から隅まであくせくして捜さなくて済むようになります。
+マテリアル エディタの検索機能では、説明に特定のテキストや、
+各タイプに特有のプロパティを含むノードが含まれるマテリアル ネットワーク内のノード (コメントも含む) を迅速に見つけることができます。これにより、ノードを特定するキーワードを追加し、グラフ内のノード ネットワーク経由で、
+後でそこにジャンプできるようになります。
-検索ボックスにキーワード全体またはキーワードの一部を入力すると、
-**[Graph (グラフ)]** パネルにある式のプロパティに対して検索が実行されます。現在選択中の結果がビューに表示され、ハイライトされます。
+このタブは、**[Window]** > **[Stats]** から開くことができます。
-
+検索ボックスにキーワード全体またはキーワードの一部を入力すると、マテリアル グラフ内に存在するノードのプロパティに対して検索を行います。現在選択中の結果がビューに表示され、
+ハイライトされます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ OlJzlgWI2ig
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 75
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
-[REGION:note]
-この検索では、大文字・小文字は区別されません。
-[/REGION]
検索は以下のプロパティ値に対して実行されます。
-| **式のタイプ** | **検索されるプロパティ** |
+| **検索されるプロパティ** | **式のタイプ** |
| --- | --- |
-| _All_ | Desc |
-| _Texture Sample_ | Texture |
-| _Parameters_ | ParamName |
-| _Comment_ | Text |
-| _FontSample_ | Font |
-| _MaterialFunctionCall_ | MaterialFunction |
+| **Desc** | すべてのノード |
+| **Texture** | テクスチャ サンプル |
+| **ParamName** | パラメータ |
+| **Text** | コメント |
+| **Font** | フォント サンプル |
+| **Material Function** | MaterialFunctionCall |
-検索で、`NAME=` スイッチを使用することで、特定タイプの式に対する検索を行うことができます。例えば、
-すべてのテクスチャ サンプリングを見つけるには、以下の検索を使用します。
-
- NAME=texture
-
-**[Search (検索)]** パネルで新しい検索結果をクリックすると、まだ表示されていない場合は、
-**[Graph (グラフ)]** タブに表示されます。
-
-検索ワードをクリアするには  ボタンを押します。
-
-
+検索で、`NAME=` スイッチを使用することで、特定タイプの式に対する検索を行うことができます。例えば、すべてのテクスチャ サンプリングを見つけるには、
+以下の検索を使用します。
+ NAME=texture
+**[Search (検索)]** パネルで新しい検索結果をクリックすると、まだ表示されていない場合は表示されるようになります。
+検索ワードをクリアするには **[Clear]** (X) ボタンを押します。
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Atmosphere/Atmosphere.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Atmosphere/Atmosphere.JPN.udn
index 2209862d78ef..0901a9f051a5 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Atmosphere/Atmosphere.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Atmosphere/Atmosphere.JPN.udn
@@ -1,4 +1,5 @@
-INTSourceChangelist:3242329Availability:Public
+INTSourceChangelist:3242329
+Availability:Public
Title:Atmosphere 表現式
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/ExpressionReference
Description:霧やその他の大気レベル効果に影響を与える表現式
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.INT.udn
index 2a9abf1c5eef..953e2cf1f5cd 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.INT.udn
@@ -44,6 +44,104 @@ The **Add** expression takes two inputs, adds them together and outputs the resu
[INCLUDE:Engine/Rendering/Materials/ExpressionReference/VectorOps#AppendVector]
+## ArcSine
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcSine.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+The **Arcsine** expression outputs the inverse sine function. This is an expensive operation that is not reflected by the instruction count.
+
+## ArcSineFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcSineFast.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+The **ArcsineFast** expression outputs the approximate inverse sine function. Input must be between -1 and 1.
+
+## ArcCosine
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcCosine.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+The **Arccosine** expression outputs the inverse cosine function. This is an expensive operation that is not reflected by the instruction count.
+
+## ArcCosineFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcCosineFast.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+
+The **ArccosineFast** expression outputs the approximate inverse cosine function. Input must be between -1 and 1.
+
+## ArcTangent
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+The **Arctangent** expression outputs the inverse tangent function. This is an expensive operation that is not reflected by the instruction count.
+
+## ArcTragnetFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangentFast.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+The **ArctangentFast** expression outputs the approximate inverse tangent function.
+
+## ArcTangent2
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent2.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+
+The **Arctangent2** expression uses inverse tangent of x / y where input signs are used to determine quadrant. This is an expensive operation that is not reflected by the instruction count.
+
+## ArcrTangent2Fast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent2Fast.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+The **Arctangent2Fast** expression is an approximate inverse tangent of X / Y where input signs are used to determine quadrant.
+
## Ceil
The **Ceil** expression takes in value(s), rounds them **up** to the next integer, and outputs the result. See also [Floor](#Floor) and [Frac](#Frac).
@@ -241,8 +339,6 @@ In the example above, A is "0" and B is "1"; therefore, "0" (black) is the resul
| **B** | Takes in the second value(s) to compare. |
-
-
## Multiply
The **Multiply** expression takes two inputs, multiplies them together, and outputs the result. Similar to Photoshop's multiply layer blend. Multiplication happens per channel, meaning that the R channel of the first is multiplied by the R channel of the second; the G chanWnel of the first is multiplied by the G channel of the second, and so on. Both inputs must have the same number of values unless one of the values is a single float value.
@@ -319,6 +415,33 @@ The **Power** expression takes two inputs, raises Base to the Exp power, and out

+## Round
+
+The **Round** expression rounds the value up to the next whole number if the fractional part is greater than or equal to half, else rounds down.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:1100)
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+
+**Examples:**
+* A value of 1.1 will be Round down to a value of 1.
+* A value of 1.4 will be Round down to a value of 1.
+* A value of 1.5 will be Round up to a value of 2.
+* A value of 1.85 will be Round up to a value of 2.
+
+## Saturate
+
+The **Saturate** node clamps the value between 0 and 1. The instruction cost of Saturate is almost free on most modern graphics hardware.
+
+
+
+**Example Usage:** This node should be used whenever you need to clamp an output or input value between 0 and 1.
+
## Sine
The **Sine** expression outputs the value of a Sine wave over the input range of [0, 1] and the output range of [-1, 1], both repeating. The difference between this and the output of the [Cosine](#Cosine) expression is the output waveform is offset by one-quarter of the period, meaning that `Cos(X)` is equal to `Sin(X + 0.25)`. Most commonly, this is used to output a continuous oscillating waveform by connecting a [Time](Engine/Rendering/Materials/ExpressionReference/Constant#Time) expression to its input, but it can also be used to create ripples in worldspace or screenspace, or any other application where a continuous, smooth cycle is needed. A visual representation of the wave is shown below, scaled to the [0, 1] output range:
@@ -363,3 +486,34 @@ The **Subtract** node takes in two inputs, subtracts the second input from the f
(w:900)
+## Tangent
+
+[REGION:lightbox]
+[(w:469)](MEN_Tangent.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
+
+The **Tangent** node outputs the tangent of the specified value.
+
+## Truncate
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:1100)
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+
+
+The **Truncate** node truncates a value by discarding the fractional part while leaving the whole number untouched.
+
+**Examples:**
+* A value of 1.1 will be Truncated to a value of 1.
+* A value of 1.4 will be Truncated to a value of 1.
+* A value of 2.5 will be Truncated to a value of 2.
+* A value of 3.1 will be Truncated to a value of 3.
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.JPN.udn
index 306822c00599..784114b3ad84 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:2929391
+INTSourceChangelist:3409695
Availability:Public
Title:Math 表現式
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/ExpressionReference
-Description:1 つ以上の入力で様々な数学的操作を行うための表現式。
+Description:1 つ以上の入力で様々な数学演算を行うための表現式。
Version:4.9
+tags:Materials
[EXCERPT:TOC]
[TOC(start:2)]
@@ -11,30 +12,30 @@ Version:4.9
## Abs
-**Abs** は、数学用語「absolute value」 (絶対値) の略語です。Abs 表現式は絶対値、符号なしの値、または受け取った入力値を出力します。Abs によりマイナス符号を取り去って、負の数が正の数に変えられます。正の数と 0 に変化はありません。
+**Abs** は、数学用語「absolute value」 (絶対値) の略語です。Abs 表現式は絶対値、符号なしの値、または受け取った入力値を出力します。つまり、基本的にマイナス符号を取り除くことで負の数を正の数に変えます。正の数と 0 の場合は変化しません。
-**例: ** -0.7 の Abs は 0.7 、 -1.0 の Abs は 1.0 、 1.0 の Abs は 1.0 です。
+**例:** -0.7 の Abs は 0.7 、-1.0 の Abs は 1.0、1.0 の Abs は 1.0 です。
-**使用例:** Abs は、通常 [DotProduct](#DotProduct) と併用されます。DotProduct (ドット積) は、 -1..0..1 の順番で値が始まる一方、 DotProduct の Abs は、 1..0..1 の順番となります。
+**使用例:** Abs は、通常 [DotProduct](#DotProduct) と併用されます。DotProduct (ドット積) は、-1..0..1 の順番で値が始まる一方、DotProduct の Abs は、1..0..1 の順番となります。

-##Add
+## Add
-**Add** 表現式は、 2 つの入力値を受け取り、 2 つを足して結果を出力します。この加法演算はチャンネル毎に実行されます。つまり、 R チャンネルへの入力が加算され、 G チャンネルが加算され、そして B チャンネルが加算されるなどのようになります。入力の片方が単一の Constant 値でない限り、両入力は同数のチャンネル数を持っていなくてはいけません。Constant は入力数に関係なくベクターに加法できます。
+**Add** 表現式は、2 つの入力値を受け取り、2 つを足して結果を出力します。この加法演算はチャンネル毎に実行されます。つまり、R チャンネルへの入力が加算され、G チャンネルが加算され、そして B チャンネルが加算されるなどのようになります。入力の片方が単一の Constant 値でない限り、両入力は同数のチャンネル数を持っていなくてはいけません。Constant は入力数に関係なくベクターに加法できます。
| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
-| **Const A** | 加算する値を受け取ります。A入力が未使用時のみ使用されます。|
+| **Const A** | 加算する値を受け取ります。A 入力が未使用時のみ使用されます。|
| **Const B** | 加算される値を受け取ります。B 入力が未使用時のみ使用されます。 |
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 加算する値を受け取ります。 |
| **B** | 加算される値を受け取ります。 |
-**例: ** 0.2 と 0.4 の Add は 0.6 、 (0.2,-0.4,0.6) と (0.1,0.5,1.0) の Add は (0.3,0.1,1.6) 、 (0.2,-0.4,0.6) と 1.0 の Add は (1.2,0.6,1.6) となります。
+**例:** 0.2 と 0.4 の Add は 0.6 、 (0.2,-0.4,0.6) と (0.1,0.5,1.0) の Add は (0.3,0.1,1.6) 、 (0.2,-0.4,0.6) と 1.0 の Add は (1.2,0.6,1.6) となります。
**使用例:** Add はカラーを明るくまたは暗くする際、もしくは UV テクスチャ座標をオフセットする際にしばし使用します。
@@ -44,18 +45,116 @@ Version:4.9
[INCLUDE:Engine/Rendering/Materials/ExpressionReference/VectorOps#AppendVector]
+## ArcSine
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcSine.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+**Arcsine** は、逆正弦 (アークサイン) 関数を出力します。負荷が大きく、命令数に影響されない関数です。
+
+## ArcSineFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcSineFast.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+**ArcsineFast** は、近似の逆正弦 (アークサイン) 関数を出力します。入力値は -1 から 1 の間でなければなりません。
+
+## ArcCosine
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcCosine.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+**Arccosine** は逆余弦 (アークコサイン) 関数を出力します。負荷が大きく、命令数に影響されない関数です。
+
+## ArcCosineFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcCosineFast.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+
+**Arccosine** は近似の逆余弦 (アークコサイン) 関数を出力します。入力値は -1 から 1 の間でなければなりません。
+
+## ArcTangent
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+**Arctangent** は逆正接 (アークタンジェント) 関数を出力します。負荷が大きく、命令数に影響されない関数です。
+
+## ArcTragnetFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangentFast.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+**Arctangent** は近似の逆正接 (アークタンジェント) を計算します。
+
+## ArcTangent2
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent2.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+
+**Arctangent2** は、入力の符号を使用して、x / y の逆タンジェントを計算することで、四分円を決定します。負荷が大きく、命令数に影響されない関数です。
+
+## ArcrTangent2Fast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent2Fast.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+**Arctangent2Fast** は、入力の符号を使用して、X / Y の近似の逆タンジェントを計算することで、四分円を決定します。
+
## Ceil
**Ceil** 表現式は、値を受け取り、一番近い整数へ **切り上げて** 結果を出力します。[Floor](#Floor) と [Frac](#Frac) も参照してください。
-**例: ** 0.2 の Ceil は 1.0 、 (0.2,1.6) の Ceil は (1.0,2.0) となります。
+**例:** 0.2 の Ceil は 1.0 (0.2,1.6) の Ceil は (1.0,2.0) となります。
(w:900)
## Clamp
-**Clamp** 表現式は、最小値と最大値が定義された指定範囲で受け取った値を制限します。0.0 の最小値と 0.5 の最大値は、結果値が決して 0.0 より小さく、および 0.5 より大きくならないことを意味します。
+Clamp 表現式は、最小値と最大値が定義された指定範囲に受け取った値を制限します。0.0 の最小値と 0.5 の最大値は、結果値が決して 0.0 より小さく、および 0.5 より大きくならないことを意味します。
| アイテム | 説明 |
| -------- | ----------- |
@@ -63,12 +162,12 @@ Version:4.9
| **Clamp Mode** | 使用する Clamp のタイプを選択します。CMODE_Clamp は範囲の両端値をクランプします。CMODE_ClampMin と CMODE_ClampMax は、範囲内のそれぞれ対象となる値のみをクランプします。
| **Min Default** | クランプに使用する最小値を受け取ります。最小値の入力が未使用時のみ使用されます。 |
| **Max Default** | クランプに使用する最大値を受け取ります。最大値の入力が未使用時のみ使用されます。 |
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **Min** | クランプに使用する最少値を受け取ります。 |
| **Max** | クランプに使用する最大値を受け取ります。 |
-**例: ** Min0.0 と Max1.0 で 0.3 をクランプすると、結果は 0.3 になります。 Min0.0 と Max1.0 を 1.3 をクランプすると結果は 1.0 になります。
+**例:** (0.0) から (1.0) の入力範囲を Min 0.0 と Maxx 1.0 で 0.3 をクランプすると、結果は 0.3 になり、Min0.0 と Max1.0 で 1.3 をクランプすると結果は 1.0 になります。
(w:900)
@@ -78,14 +177,14 @@ Version:4.9
## Cosine
-**Cosine** 表現式は、[0, 1] の範囲に正弦波の値を繰り返し出力します。この関数は、[Time](Engine/Rendering/Materials/ExpressionReference/Constant#Time) 式と入力値を関連付けして継続的な振動の波形を出力することでよく知られています。出力値は -1 と 1 の周期を行ったり来たりします。波形を視覚的に表現したものが以下となります。
+**Cosine** 表現式は、[0, 1] の入力範囲および [-1, 1] の出力範囲に正弦波の値を繰り返し計算します。この関数は、[Time](Engine/Rendering/Materials/ExpressionReference/Constant#Time) 式と入力値を関連付けして継続的な振動の波形を出力することでよく知られていますが、ワールド スペースやスクリーン スペース、また継続した滑らかな円が必要なその他のアプリケーションでさざ波の作成に使用することもできます。波形を視覚的に表現したものが以下となります。出力範囲は [0, 1] に調整しています。

| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
-| **Period** | 合成振動の周期を特定します。つまり、これによって 1 つの振動が発生するまでの時間が分かります。|
+| **Period** | 結果として得られる振動の周期を特定します。つまり、これによって 1 つの振動が発生するまでの時間が分かります。|
**使用例:** この表現式は振動効果が必要な際にいつでも便利です。振動の速度と振幅は、時間入力 (速度) または出力 (振幅) を乗算することにより、動的に簡単な制御が可能です。
@@ -98,11 +197,11 @@ Version:4.9
[EXCERPT:CrossProduct]
## CrossProduct
-**CrossProduct** 表現式は、 3 チャンネルのベクター値の 2 つの入力値の外積を計算し、結果として 3 チャンネルのベクター値を出力します。空間に 2 つのライン (またはベクター) が与えられ、外積は両方の入力に対して垂直なライン (またはベクター) となります。
+**CrossProduct** 表現式は、3 チャンネルのベクター値の 2 つの入力値の外積を計算し、結果として 3 チャンネルのベクター値を計算します。空間に 2 つのライン (またはベクター) が与えられ、外積は両方の入力に対して垂直なライン (またはベクター) となります。
| アイテム | 説明 |
| -------- | ----------- |
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 3チャンネルのベクター値を受け取ります。 |
| **B** | 3チャンネルのベクター値を受け取ります。 |
@@ -116,19 +215,19 @@ Version:4.9
## Divide
-Divide 表現式は、 2 つの入力値を受け取り、 1 番目の値を 2 番目の値で割った結果を出力します。除算はチャンネルごとに計算されます。つまり、最初の R チャンネルが 2 番目のチャンネルによって、最初の G チャンネルが 2 番目のチャンネルによって除算される形です。約数が単精度浮動小数点値でない限り、両方の入力値は同数でなくてはいけません。 _ゼロ除算は絶対に行わないでください。_
+Divide 表現式は、2 つの入力値を受け取り、1 番目の値を 2 番目の値で割った結果を出力します。除算はチャンネルごとに計算されます。つまり、最初の R チャンネルが 2 番目のチャンネルによって、最初の G チャンネルが 2 番目のチャンネルによって除算される形です。約数が single float 値でない限り、両方の入力値は同等でなければなりmさえん。どのチャンネルにおいてもゼロで割るとチャンネルにローカル ハードウェアの "無限" インプリメンテーションが含まれる結果になり、通常は非常に大きい正の値になります。
| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
| **Const A** | 除算される値、被除数を受け取ります。A 入力が未使用時のみ使用されます。|
| **Const B** | 除算する値、約数を受け取ります。B 入力が未使用時のみ使用されます。|
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 除算される値、被除数を受け取ります。 |
| **B** | 除算する値、約数を受け取ります。 |
-**例: ** A=(1.0,0.5,-0.4) と B=(2.0,2.0,4.0) の Divide の結果は (0.5,0.25,-0.1) となります。
+**例:** A=(1.0) と B=(5.0) を持つ Divide を使うと (0.2) を出力して、暗いグレーとなります。

@@ -136,13 +235,13 @@ Divide 表現式は、 2 つの入力値を受け取り、 1 番目の値を 2
[EXCERPT:DotProduct]
## DotProduct
-**DotProduct** 表現式は、dot product (内積)、もしくはその他に投影されたあるベクターの長さを計算します。この計算は、フォールオフの計算に頻繁に使用される技術です。DotProduct は、両方のベクター入力値に同数のチャンネル数を必要とします。
+**DotProduct** 表現式は、別のベクターに投影された 1 つのベクターの長さ、もしくは大きさを乗じた 2 つのベクター間のコサインである dot product (内積) を計算します。この計算は、フォールオフの計算に頻繁に使用される技術です。DotProduct は、両方のベクター入力値に同等のチャンネル数を必要とします。
| アイテム | 説明 |
| -------- | ----------- |
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 任意の長さの値またはベクターを受け取ります。 |
-| **B** | 任意の長さの値またはベクターを受け取ります。 |
+| **B** | **A** と同じ長さの値またはベクターを受け取ります。 |
(w:900)
@@ -153,37 +252,37 @@ Divide 表現式は、 2 つの入力値を受け取り、 1 番目の値を 2
**Floor** 表現式は、値を受け取り前の整数へ **切り下げて** 結果を出力します。[Ceil](#Ceil) と [Frac](#Frac) も参照してください。
-**例: ** 0.2 の Floor は 0.0 、 (0.2,1.6) の Floor は (0.0, 1.0) です。
+**例:** 0.2 の Floor は 0.0 、 (0.2,1.6) の Floor は (0.0, 1.0) です。
(w:900)
## FMod
-**FMod** 表現式は、 2 つの入力値を除算した後の浮動小数点値余りを返します。
+**FMod** 表現式は、2 つの入力値を除算した後の浮動小数点値余りを返します。被除数 (入力 "A") はどの値でも構いませんが、被除数が負の場合は結果も負になります。約数 (2 つ目のインプット) をゼロにするとゼロでの除算を意味することになるので使えませんが、約数は正であっても負であっても結果に影響しません。一般的なユースケースでは、最大値まで明るいマテリアルを作成し、次のフレームで急に最小値に戻し、最大値へ上昇する結果となります。

-この例では、 FMod 式は 1 秒おきに 0 から 1 へ増える繰り返しの値を返します。1 へ到達すると、値は 0 へ戻り、これを無期限に繰り返します。
+この例では、FMod が 0 から 1 への UV 進捗を受け取り、それを変換して緑チャンネルの X 軸で 0.2 UV ごとに周期を繰り返されるようにします。
## Frac
-**Frac** 表現式は、値を受け取り、受け取った値の小数部分を出力します。[Ceil](#Ceil) と [Floor](#Floor) も参照してください。
+**Frac** 表現式は、値を受け取り、受け取った値の端数部分を出力します。言い換えると、入力値が "X" の場合、結果は "X - X の Floor" です。出力値は 0 から 1 です。下限は含みますが、上限は含みません。[Ceil](#Ceil) と [Floor](#Floor) も参照してください。
-**例: ** 0.2 の Franc は 0.2 、 (0.0,1.6) の Fran は (0.0, 0.6) です。
+**例:** (0.2) の Franc は (0.2) です。(-0.2) の ranc は (0.8) です。(0.0,1.6,1.0) の ranc は (0.0,0.6,0.0) です。
(w:900)
-この例では、Franc ノードは一連の繰り返しとなる 0 - 1 数列へ時間を変更しています。カラーを緑から赤へフェード (Lerp を通じて) させて、緑へ戻り、これを無期限に繰り返します。
+この例では、Franc ノードは一連の繰り返しとなる 0 - 1 数列へ時間を変更しています。カラーを緑から赤へフェード (Lerp を通じて) させて、緑へ戻り、これを無限に繰り返します。
[EXCERPT:If]
## If
-**If** 表現式は、 2 つの入力値を比較し、比較結果に基づいて他の 3 つの値のうち 1 つを渡します。比較される 2 つの入力値は単精度浮動小数点でなければいけません。
+**If** 表現式は、2 つの入力値を比較し、比較結果に基づいて他の 3 つの値のうち 1 つを渡します。比較される 2 つの入力値は単精度浮動小数点でなければいけません。
| アイテム | 説明 |
| -------- | ----------- |
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 単精度浮動小数点を受け取ります。 |
| **B** | 単精度浮動小数点を受け取ります。 |
| **A > B** | A の値が B の値より大きい時、値を受け取り出力します。 |
@@ -203,61 +302,59 @@ Divide 表現式は、 2 つの入力値を受け取り、 1 番目の値を 2
## Max
-**Max** 表現式は 2 つの入力を取り込み、この 2 つの最大値を出力します。
+**Max** 表現式は 2 つの入力を取り込み、高い方の値を出力します。
このノードは Photoshop の Lighten に似ています。
(w:720)
-上記の表現式では、A は「0」で B は「1」なので「1」(白) が結果となるベースカラーになります。
+上記の表現式では、A は "0" で B は "1" なので、ベースカラーは "1" (白) になります。
| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
| **Const A** | 最初の値を受け取ります。A 入力値が未使用の場合のみ使用されます。|
| **Const B** | 2 番目の値を受け取ります。B 入力値が未使用の場合のみ使用されます。|
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 比較する最初の値を受け取ります。 |
| **B** | 比較する 2 番目の値を受け取ります。 |
## Min
-**Min** 表現式は 2 つの入力を取り込み、この 2 つの最小値を取ります。
+**Min** 表現式は 2 つの入力を取り込み、低い方の値を出力します。
このノードは Photoshop の Darken に似ています。
(w:720)
-上記の表現式では、A は「0」で B は「1」なので「0」(黒) が結果となるベースカラーになります。
+上記の表現式では、A は "0" で B は "1" なので、ベースカラーは "0" (黒) になります。
| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
| **Const A** | 最初の値を受け取ります。A 入力値が未使用の場合のみ使用されます。|
| **Const B** | 2 番目の値を受け取ります。B 入力値が未使用の場合のみ使用されます。|
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 比較する最初の値を受け取ります。 |
| **B** | 比較する 2 番目の値を受け取ります。 |
-
-
## Multiply
-**Multiply** 表現式は、 2 つの入力値を受け取り、その入力値を掛け合わせて結果を出力します。Photoshop のレイヤーのブレンドモードの乗算に似た機能です。乗算はチャンネルごとに計算されます。つまり最初の R チャンネルが 2 番目の値と掛けられ、最初の G チャンネルが 2 番目の値と掛けられる形になります。片方の値が単精度浮動小数点値でない限り、同数の入力値でなくてはいけません。
+**Multiply** 表現式は、 2 つの入力値を受け取り、その入力値を掛け合わせて結果を出力します。Photoshop のレイヤーのブレンドモードの乗算に似た機能です。乗算はチャンネルごとに計算されます。つまり最初の R チャンネルを 2 番目の R チャンネルと掛け、最初の G チャンネルを 2 番目の G チャンネルと掛けます。片方の値が single float 値でない限り、両方の入力は同等の入力値でなくてはいけません。
| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
| **Const A** | 乗算する最初の値を受け取ります。A 入力値が未使用の場合のみ使用されます。|
| **Const B** | 乗算する 2 番目の値を受け取ります。B 入力値が未使用の場合のみ使用されます。|
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 乗算する最初の値を受け取ります。 |
| **B** | 乗算する 2 番目の値を受け取ります。 |
-UE4 のマテリアルは [0,1] に制限されていないことを忘れないでください!カラー / 値が 1 より大きい場合、Multiply 表現式は実際にカラーを明るくします。
+UE4 のマテリアルは [0,1] には制限されないことを忘れないでください!カラー / 値が 1 より大きい場合、Multiply 表現式は実際にカラーを明るくします。
**例:** 0.4 と 0.5 の Multiply は 0.2 、 (0.2、-0.4、0.6) と (0.0、2.0、1.0) の Multiply は (0.0、-0.8、0.6) 、 (0.2、-0.4、0.6) と 0.5 の Multiply は (0.1、-0.2、0.3) となります。
@@ -269,9 +366,18 @@ UE4 のマテリアルは [0,1] に制限されていないことを忘れない
[EXCERPT:Normalize]
## Normalize
-**Normalize** 表現式は、入力の標準値を計算して出力します。これは入力値の各コンポーネントが、ベクターの L-2 ノルム (長さ) で割られることを意味します。
+**Normalize** 表現式は、入力の標準値を計算して出力します。ノーマライズされたベクター ("単位ベクター" とも呼ばれます) の全長は 1.0 です。つまり、入力値の各コンポーネントをベクターの大きさ (長さ) で割ることを意味します。
-(w:900)
+**例:** Normalize で (0,2,0) あるいは (0,0.2,0) をパスすると、(0,1,0) が出力されます。Normalize で (0,1,-1) をパスすると (0, 0.707, -0.707) が出力されます。すべてのベクターがゼロの場合は特別なケースとなり、変化しません。
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:900)
+ [/PARAM]
+ [PARAM:after]
+ (w:900)
+ [/PARAM]
+[/OBJECT]
[REGION:note]
Normal マテリアル出力値に接続された表現式は、標準化する必要はありません。
@@ -281,7 +387,7 @@ Normal マテリアル出力値に接続された表現式は、標準化する
## OneMinus
-**OneMinus** 表現式は、入力値を受け取り、'1 からその値を引いて' 出力します。演算はチャンネルごとに実行されます。
+**OneMinus** は、入力値 "X" を受け取り、"X - 1" の値を出力します。演算はチャンネルごとに実行されます。
**例:** 0.4 の OneMinus は 0.6、 (0.2、0.5、1.0) の OneMinus は (0.8、0.5、0.0) 、 (0.0、-0.4、1.6) の OneMinus は (1.0、1.4、-0.6) になります。
@@ -292,65 +398,123 @@ Normal マテリアル出力値に接続された表現式は、標準化する
## Power
-**Power** 表現式は、2 つの入力値を受け取り、Base を Exp 乗の累乗をして結果を出力します。言い換えると、Base がその値によって Exp 回乗算されます。
+**Power** は、2 つの入力値を受け取り、Base を Exp 乗の累乗をして結果を出力します。言い換えると、Base がその値によって Exp 回乗算されます。
| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
| **Const Exponent** | 指数値を受け取ります。Exp 入力値が未使用の場合のみ使用されます。|
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **Base** | ベース値を受け取ります。 |
| **Exp** | 指数値を受け取ります。 |
**例:** Base0.5 の Exp2.0 乗は 0.25 になります。
-**使用例:** Power に渡すカラーが [0,1] の場合、Power は明るい色のみが残るコントラスト調整として動作します。
+**使用例:** Power に渡すカラーが [0,1] の場合、Power は非常に明るい値はわずかに下がり、暗めの値は大幅に減少するように、コントラスト調整のような動作をします。

+## Round
+
+**Round** は端数部分が半分以上の場合、その値を次の整数へ値を四捨五入します。半分以下の場合は切り捨てます。
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:1100)
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+
+**例:**
+* 1.1 は四捨五入すると 1 となります。
+* 1.4 は四捨五入すると 1 となります。
+* 1.5 は四捨五入すると 2 となります。
+* 1.85 は四捨五入すると 2 となります。
+
+## Saturate
+
+The **Saturate** ノードは値を 0 と 1 の間にクランプします。最新のグラフィックス ハードウェアの多くの場合、Saturate は命令負荷がほとんどありません。
+
+
+
+**使用例:** このノードは、入力値もしくは出力値を 0 と 1 の間にクランプする必要がある場合に使用します。
+
## Sine
-**Sine** 表現式は、[0, 1] の範囲に正弦波の値を繰り返し出力します。この関数は、[Time](Engine/Rendering/Materials/ExpressionReference/Constant#Time) 式と入力値を関連付けして継続的な振動の波形を出力することでよく知られています。出力値は -1 と 1 の周期を行ったり来たりします。この表現式の結果と [Cosine](#Cosine) 表現式の出力値の違いは、出力波形がほぼ半分にオフセットされることです。波形を視覚的に表現したものが以下となります。
+**Sine** 表現式は、[0, 1] の入力範囲および [-1, 1] の出力範囲に正弦波の値を繰り返し出力します。この表現式の結果と [Cosine](#Cosine) 表現式の出力値の違いは、出力波形が1/4 にオフセットされる、つまり `Cos(X)` は `Sin(X + 0.25)` に等しくなります。この関数は、[Time](Engine/Rendering/Materials/ExpressionReference/Constant#Time) 式と入力値を関連付けして継続的な振動の波形を出力することでよく知られていますが、ワールド スペースやスクリーン スペース、また継続した滑らかな円が必要なその他のアプリケーションでさざ波の作成に使用することもできます。波形を視覚的に表現したものが以下となります。出力範囲は [0, 1] に調整しています。

| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
-| **Period** | 合成振動の周期を特定します。つまり、これによって 1 つの振動が発生するまでの時間が分かります。|
+| **Period** | 結果として得られる振動の周期を特定します。つまり、これによって 1 つの振動が発生するまでの時間が分かります。|
-**使用例:** この表現式は振動効果が必要な際にいつでも便利です。振動の速度と振幅は、時間入力 (速度) または出力 (振幅) を乗算することにより、動的に簡単な制御が可能です。
+**使用例:** この表現式は振動効果が必要な場合に役立ちます。振動の速度と振幅は、時間入力 (速度) または出力 (振幅) を乗算することにより、動的に簡単な制御が可能です。

## SquareRoot
-**SquareRoot** 表現式は入力値の平方根を出力します。SquareRoot は、単精度浮動小数点入力値のみ演算することが出来ます。
+**SquareRoot** 表現式は入力値の平方根を出力します。ベクターに適用する場合、各コンポーネントは個々に処理されます。
(w:900)
## Subtract
-**Subtract** ノードは 2 つの入力値を受け取り、最初の入力値から 2 番目の値を減算し差分を出力します。減算はチャンネルごとに実行されます。つまり、 2 番目の入力の R チャンネルが最初の入力値から減算され、 2 番目の入力の G チャンネルから最初の入力値が減算される、といった具合です。2 番目の入力値が単精度浮動小数点値でない限り、両入力値は同数のチャンネルを持たなくてはいけません。定数は、ベクターのさまざまな入力値から減算されます。
+**Subtract** ノードは 2 つの入力値を受け取り、最初の入力値から 2 番目の値を減算し差分を出力します。減算はチャンネルごとに実行されます。つまり、 2 番目の入力の R チャンネルが最初の入力値から減算され、 2 番目の入力の G チャンネルから最初の入力値が減算される、といった具合です。2 番目の入力値が単一の定数値でない限り、両入力値は同数のチャンネルを持たなくてはいけません。定数は、ベクターのさまざまな入力値から減算されます。
| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
| **Const A** | 被減数の値を受け取ります。A 入力値が未使用の場合のみ使用されます。|
| **Const B** | 減数される値を受け取ります。B 入力値が未使用の場合のみ使用されます。|
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 被減数の値を受け取ります。 |
| **B** | 減数される値を受け取ります。
-**例:b** 0.5 から 0.2 を減算すると 0.3 、 (0.2、-0.4、0.6) から (0.1、0.1、1.0) を減算すると、 (0.1、-0.5、-0.4) 、 (0.2、0.4、1.0) から 0.2 を減算すると (0.0、0.2、0.8) になります。
+**例:** 0.5 から 0.2 を減算すると 0.3 、 (0.2、-0.4、0.6) から (0.1、0.1、1.0) を減算すると、 (0.1、-0.5、-0.4) 、 (0.2、0.4、1.0) から 0.2 を減算すると (0.0、0.2、0.8) になります。
**使用例:** Subtract は、濃いカラーやオフセット UV に使用出来ます。
(w:900)
+## Tangent
+
+[REGION:lightbox]
+[(w:469)](MEN_Tangent.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+
+**Tangent** ノードは指定した値のタンジェントを出力します。
+
+## Truncate
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:1100)
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+
+
+**Truncate** ノードは、整数部分は変更せずに端数部分を削除して、値を切り捨てます。
+
+**例:**
+* 1.1 は切り捨てると 1 になります。
+* 1.4 は切り捨てると 1 になります。
+* 2.5 は切り捨てると 2 になります。
+* 3.1 は切り捨てると 3 になります。
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.KOR.udn
index 92fe567dfe0f..55608af8fd3d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Math/MathExpressions.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3355715
+INTSourceChangelist:3409695
Availability:Public
Title:Math 표현식
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/ExpressionReference
@@ -45,6 +45,104 @@ Add 표현식은 두 입력을 받아 더한 다음 결과를 출력합니다.
[INCLUDE:Engine/Rendering/Materials/ExpressionReference/VectorOps#AppendVector]
+## ArcSine
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcSine.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+**Arcsine** (아크사인) 표현식은 사인 함수의 역을 출력합니다. 인스트럭션 카운트에는 반영되지 않는 비싼 연산입니다.
+
+## ArcSineFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcSineFast.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+**ArcsineFast** (빠른 아크사인) 표현식은 사인 함수의 역 추정 버전을 출력합니다. 입력 값은 -1 에서 1 범위여야 합니다.
+
+## ArcCosine
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcCosine.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+**Arccosine** (아크 코사인) 표현식은 코사인 함수의 역을 출력합니다. 인스트럭션 카운트에는 반영되지 않는 비싼 연산입니다.
+
+## ArcCosineFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcCosineFast.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+
+**ArccosineFast** (빠른 아크 코사인) 표현식은 역 코사인 함수의 추정 버전을 출력합니다. 입력 범위는 -1 에서 1 사이여야 합니다.
+
+## ArcTangent
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+**Arctangent** (아크 탄젠트) 표현식은 탄젠트 함수의 역을 출력합니다. 인스트럭션 카운트에 반영되지 않는 비싼 연산입니다.
+
+## ArcTragnetFast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangentFast.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+**ArctangentFast** 표현식은 역 탄젠트 함수의 추정 버전을 출력합니다.
+
+## ArcTangent2
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent2.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+
+**Arctangent2** (아크 탄젠트 2) 표현식은 입력 부호로 사분면을 결정하는 x / y 의 역 탄젠트를 사용합니다. 인스트럭션 카운트에 반영되지 않는 비싼 연산입니다.
+
+## ArcrTangent2Fast
+
+[REGION:lightbox]
+[(w:469)](MEN_ArcTangent2Fast.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+**Arctangent2Fast** 표현식은 입력 부호로 사분면을 결정하는 X / Y 의 역 탄젠트 추정입니다.
+
## Ceil
Ceil (천정) 표현식은 값을 받아 소수점을 무조건 **올려** 더 큰 정수로 만든 결과를 출력합니다. [Floor](#Floor) 와 [Frac](#Frac) 도 참고하세요.
@@ -242,8 +340,6 @@ Min (최소) 표현식은 입력을 둘 받은 다음 그 중 낮은 것을 출
| **B** | 비교할 두 번째 값을 받습니다. |
-
-
## Multiply
Multiply (곱하기) 표현식은 두 입력을 받아 서로 곱한 다음 결과를 출력합니다. 포포토샵의 멀티플라이 레이어 블렌드와 유사합니다. 곱하기는 채널별로 이루어집니다. 즉 첫째의 R은 둘째의 R로, 첫째의 G는 둘째의 G로 곱하는 식입니다. 둘 중 하나가 단일 실수값이 아닌 다음에야 두 입력은 채널 수가 같아야 합니다.
@@ -320,6 +416,33 @@ Power (거듭제곱) 표현식은 입력 둘을 받아서, Base(밑)을 Exp(지

+## Round
+
+**Round** (반올림) 표현식은 소수점이 .5 이상이면 다음 정수로 반올림을, 미만이면 내립니다.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:1100)
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+
+**예:**
+* 1.1 의 Round 는 1 입니다.
+* 1.4 의 Round 는 1 입니다.
+* 1.5 의 Round 는 2 입니다.
+* 1.85 의 Round 는 2 입니다.
+
+## Saturate
+
+**Saturate** (포화) 노드는 값을 0 에서 1 범위로 클램프(제한)시킵니다. Saturate 인스트럭션 비용은 최근 그래픽 하드웨어에서는 거의 무료입니다.
+
+
+
+**사용 예:** 출력이나 입력 값을 0 에서 1 사이 범위로 제한시키고자 할 때 사용하면 됩니다.
+
## Sine
**Sine** (사인) 표현식은 [0, 1] 입력 범위와 [-1, 1] 출력 범위에 걸쳐 둘 다 반복되는 사인 곡선 값을 출력합니다. [Cosine](#Cosine) 표현식 출력과의 차이는 파형에 주기의 1/4 만큼 오프셋이 적용되어 있습니다. `Cos(X)` 는 `Sin(X + 0.25)` 와 같다는 뜻입니다. 아주 흔하게, 입력에 [Time](Engine/Rendering/Materials/ExpressionReference/Constant#Time) 표현식을 입력하여 연속 진동 파형을 출력하는데 사용되지만, 월드스페이스 또는 스크린스페이스에서 물결을 만들 때나, 연속적인 부드러운 사이클이 필요한 경우에도 사용 가능합니다. 파형의 시각적 표현은 아래와 같으며, [0, 1] 출력 범위로 스케일을 조절한 것입니다:
@@ -364,3 +487,34 @@ Subtract (빼기) 표현식은 두 입력을 받아 첫째에서 둘째를 뺀
(w:900)
+## Tangent
+
+[REGION:lightbox]
+[(w:469)](MEN_Tangent.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
+
+**Tangent** (탄젠트) 노드는 지정된 값의 탄젠트를 출력합니다.
+
+## Truncate
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:1100)
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+
+
+**Truncate** (버림) 노드는 값의 정수 부분만 남기고 소수점 부분은 버립니다.
+
+**예제:**
+* 1.1 의 Truncate 는 1 입니다.
+* 1.4 의 Truncate 는 1 입니다.
+* 2.5 의 Truncate 는 2 입니다.
+* 3.1 의 Truncate 는 3 입니다.
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Utility/UtilityExpressions.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Utility/UtilityExpressions.INT.udn
index db4423b47776..d453e94d2f7d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Utility/UtilityExpressions.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Utility/UtilityExpressions.INT.udn
@@ -1,316 +1,31 @@
-Availability:Public
-Title:Utility Expressions
-Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/ExpressionReference
+Availability: Public
+Crumbs: %ROOT%
+Title: Utility Expressions
Description:Expressions that perform various utility operations on one or more inputs.
-Version: 4.9
-tags:Materials
+Type: Reference
+Version:4.16
+Parent:Engine/Rendering/Materials/ExpressionReference
+Order:
+Tags:Materials
+Topic-image:Utility_topic.png
+
[EXCERPT:TOC]
-[TOC(start:2)]
+[TOC(start:2 end:2)]
[/EXCERPT:TOC]
-## BlackBody
+In this page, you'll find the available Utility Expressions that enable you to input values to affect Material's output value, like for example, using the GIReplace node will Replace an objects
+indirect bounce color with a given value you input, or LinearInterpolate will blend between two inputs using an alpha value to control how much.
-The **BlackBody** expression simulates the effects of [black body radiation](http://en.wikipedia.org/wiki/Black-body_radiation) within your Material. The user inputs a temperature (in Kelvin) and the resulting color and intensity can be used to drive Base Color and Emissive values to get a physically accurate result.
+There are many others that enable you to control your Materials that you can look at the examples below to learn more about.
-[REGION:fullwidth]
-
-[/REGION]
-
-## BumpOffset
-
-[EXCERPT:BumpOffset]
-**BumpOffset** is the Unreal Engine 4 term for what is commonly known as 'Parallax Mapping'. The Bump Offset expression allows a material to give the illusion of depth without the need for additional geometry. BumpOffset materials use a grayscale _heightmap_ to give depth information. The brighter the value in the heightmap, the more 'popped out' the material will be; these areas will parallax (shift) as a camera moves across the surface. Darker areas in the heightmap are 'further away' and will shift the least.
-[/EXCERPT:BumpOffset]
-
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Properties[/REGION] ||
-| **HeightRatio** | Multiplier for the depth taken from the _heightmap_. The larger the value, the more extreme the depth will be. Typical values range from 0.02 to 0.1. |
-| **ReferencePlane** | Specifies the approximate height in texture space to apply the effect. A value of 0 will appear to distort the texture completely off the surface, whereas a value of 0.5 (the default) means that some of the surface will pop off while some areas will be sunken in. |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **Coordinate** | Takes in base texture coordinates to be modified by the expression. |
-| **Height** | Takes in the texture (or a value) to be used as the heightmap. |
-| **HeightRatioInput** | Multiplier for the depth taken from the _heightmap_. The larger the value, the more extreme the depth will be. Typical values range from 0.02 to 0.1. If used, this input supersedes any value in the Height Ratio property. |
-
-[REGION:fullwidth]
-
-[/REGION]
-
-## ConstantBiasScale
-
-The **ConstantBiasScale** expression takes an input value, adds a bias value to it, and then multiplies it by a scaling factor outputting the result. So for example, to convert input data from [-1,1] to [0,1] you would use a bias of 1.0 and a scale of 0.5.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Properties[/REGION] ||
-| **Bias** | Specifies the value to be added to the input. |
-| **Scale** | Specifies the multiplier for the biased result. |
-
-
-
-
-
-## DDX
-
-The **DDX** expression exposes DDX derivative calculation, a GPU hardware feature used in pixel shader calculation.
-
-## DDY
-
-The **DDY** expression exposes DDX derivative calculation, a GPU hardware feature used in pixel shader calculation.
-
-[INCLUDE:Engine/Rendering/Materials/ExpressionReference/Depth#DepthFade]
-
-
-## DepthOfFieldFunction
-
-The **Depth of Field Function** expression is designed to give artists control over what happens to a Material when it is being blurred by Depth of Field. It outputs a value between 0-1 such that 0 represents "in focus" and 1 represents "completely blurred." This is useful for interpolating between sharp and blurry versions of a texture, for instance. The Depth input allows for the existing results from the scene's Depth of Field calculations to be overridden by other calculations.
-
-[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:350)
- [/PARAM]
- [PARAM:after]
- (w:350)
- [/PARAM]
-[/OBJECT]
-
-[REGION:lightbox]
-[(w:300)](DepthOfFieldFunctionNetwork.png)
-[/REGION]
-[REGION:caption]
-Network sample (Click for full size)
-[/REGION]
-
-[EXCERPT:Desaturation]
-## Desaturation
-
-The **Desaturation** expression desaturates its input, or converts the colors of its input into shades of gray, based a certain percentage.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Properties[/REGION] ||
-| **Luminance Factors** | Specifies the amount that each channel contributes to the desaturated color. This is what controls that green is brighter than red which is brighter than blue when desaturated. |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **Fraction** | Specifies the amount of desaturation to apply to the input. Percent can range from 0.0 (fully desaturated) to 1.0 (full original color, no desaturation). |
-
-
-
-
-[REGION:note]
-**Programmers:** Define desaturated color `D`, input color `I` and luminance factor `L`. The output will be `O = (1-Percent)*(D.dot(I)) + Percent*I`
-[/REGION]
-[/EXCERPT:Desaturation]
-
-
-[EXCERPT:Distance]
-## Distance
-
-The **Distance** expression computes the (Euclidian) distance between two points/colors/positions/vectors and outputs the resulting value. This works on one, two, three and four component vectors, but both inputs to the expression must have the same number of channels.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **A** | Takes in a value or vector of any length. |
-| **B** | Takes in a value or vector of any length. |
-
-[REGION:fullwidth]
-
-[/REGION]
-
-**Pseudo code:**
-
- Result = length(A - B)
-
-**Low level HLSL code:**
-
- float Result = sqrt(dot(A-B, A-B))
-
-[/EXCERPT:Distance]
-
-
-
-[EXCERPT:FeatureLevelSwitch]
-## FeatureLevelSwitch
-
-The **Feature Level Switch** node allows you to make simplified materials for lower powered devices.
-
-**Example Usage**: You might have a material with 10 textures overlapping and complex math, but just a single static texture for mobile (feature level ES2).
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **Default** | The default Feature Level. |
-| **ES2** | Feature Level defined by the core capabilities of OpenGL ES2. |
-| **ES3.1** | Feature Level defined by the capabilities of Metal-level devices. |
-| **SM4** | Feature Level defined by the core capabilities of DX10 Shader Model 4. |
-| **SM5** | Feature Level defined by the core capabilities of DX11 Shader Model 5. |
-
-[/EXCERPT:FeatureLevelSwitch]
-
-
-
-## Fresnel
-
-The **Fresnel** expression calculates a falloff based on the dot product of the surface normal and the direction to the camera. When the surface normal points directly at the camera, a value of 0 is output. When the surface normal is perpendicular to the camera, a value of 1 is output. The result is clamped to [0,1] so you do not have any negative color in the center.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Properties[/REGION] ||
-| **Exponent** | Specifies the how quickly the output value falls off. Larger values mean tighter or quicker falloff. |
-| **Base Reflect Fraction** | Specifies the fraction of specular reflection the surface is viewed from straight on. A value of 1 effectively disables the Fresnel effect. |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **ExponentIn** | Specifies the how quickly the output value falls off. Larger values mean tighter or quicker falloff. If used, value will always supersede the Exponent property value. |
-| **Base Reflect Fraction** | Specifies the fraction of specular reflection the surface is viewed from straight on. A value of 1 effectively disables the Fresnel effect. If used, value will always supersede the Exponent property value. |
-| **Normal** | Takes in a three-channel vector value representing the normal of the surface, in world space. To see the results of a normal map applied to the surface of the Fresnel object, connect the normal map to the Normal input of the material, then connect a (PixelNormalWS)[Engine/Rendering/Materials/ExpressionReference/Vector#PixelNormalWS] expression to this input on the Fresnel. If no normal is specified, the tangent normal of the mesh is used. |
-
-
-
-
-
-[EXCERPT:GIReplace]
-## GIReplace
-
-**GIReplace** allows artists to specify a different, usually simpler, expression chain when the material is being used for GI.
-
-**Example Usage**: Lightmass static GI and LPV dynamic GI use it.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **Default** | The default GI. |
-| **StaticIndirect** | Used for baked indirect lighting. |
-| **DynamicIndirect** | Used for dynamic indirect lighting. |
-
-[INCLUDE:Engine\Rendering\LightingAndShadows\LightPropagationVolumes#gireplaceexample]
-
-
-[/EXCERPT:GIReplace]
-
-
-
-
-## LightmassReplace
-
-The **LightmassReplace** expression simply passes through the Realtime input when compiling the material for normal rendering purposes, and passes through the Lightmass input when exporting the material to Lightmass for global illumination. This is useful to work around material expressions that the exported version cannot handle correctly, for example WorldPosition.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **Realtime** | Takes in the value(s) to pass through for normal rendering. |
-| **Lightmass** | Takes in the value(s) to pass through when exporting the material to Lightmass. |
-
-
-[EXCERPT:LinearInterpolate]
-## LinearInterpolate
-
-The **LinearInterpolate** expression blends between two input value(s) based on a third input value used as a mask. This can be thought of as a mask to define transitions between two textures, like a layer mask in Photoshop. The intensity of the mask Alpha determines the ratio of color to take from the two input values. If Alpha is 0.0/black, the first input is used. If Alpha is 1.0/white, the second input is used. If Alpha is grey (somewhere between 0.0 and 1.0), the output is a blend between the two inputs. Keep in mind that the blend happens per channel. So, if Alpha is an RGB color, Alpha's red channel value defines the blend between A and B's red channels **independently** of Alpha's green channel, which defines the blend between A and B's green channels.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Properties[/REGION] ||
-| **Const A** | The value mapped to black (0.0). Only used if the A input is unconnected. |
-| **Const B** | The value mapped to white (1.0). Only used if the B input is unconnected. |
-| **Const Alpha** | Takes in the value to use as the mask alpha. Only used if the Alpha input is unconnected. |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **A** | Takes in the value(s) mapped to black (0.0). |
-| **B** | Takes in the value(s) mapped to white (1.0). |
-| **Alpha** | Takes in the value to use as the mask alpha. |
-
-
-**Programmers:** LinearInterpolate does a per-channel lerp between A and B based on the parametric value Alpha.
-
-(w:900)
-[/EXCERPT:LinearInterpolate]
-
-
-## Noise
-
-The **Noise** expression creates a procedural noise field, giving you control over how it is generated.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Properties[/REGION] ||
-| **Scale** | Changes the overall size of the noise cells. Lower numbers make the noise bigger. |
-| **Quality** | A look/performance setting. Lower values are faster but may look worse, higher values are slower but may look better. |
-| **Function** | [INCLUDE:#NoiseFunctions] |
-| **Turbulence** | Whether to use an absolute value when combining noise levels, results in a veined or billowy look. |
-| **Levels** | How many different levels of noise at different scales to combine, multiplies the computational cost by the number of levels. |
-| **Output Min** | The lowest value output by the noise calculation. |
-| **Output Max** | The highest value output by the noise calculation. |
-| **Level Scale** | Controls the scale of individual levels when using multiple levels of noise. This defaults to 2 so each level is twice the frequency at half the magnitude. |
-| **Tiling** | For noise functions that support it, allows noise to tile. This is more expensive, but useful when baking noise into a seamless wrapping texture. |
-| **Repeat Size** | When tiling, how often should the noise repeat. |
-|| [REGION:tablesection]Inputs[/REGION] ||
-| **Position** | Allows the texture size to be adjusted via a 3D vector. |
-| **FilterWidth** | In effect, controls how much blur will be applied to the noise texture. |
-
-
-
-
-## Vector Noise
-
-[INCLUDE:Engine\Rendering\Materials\ExpressionReference\Vector#VectorNoiseTest]
-
-## QualitySwitch
-
-The **QualitySwitch** expression allows for the use of different expression networks based on the engine is switched between quality levels, such as using lower quality on lower-end devices.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Inputs[/REGION] ||
-| Default | This input is used for networks designed for default visual quality. |
-| Low | This input is used for networks designed for lower visual quality. |
-| High | This input is used for networks designed for higher visual quality. |
-
-[EXCERPT:RotateAboutAxis]
-## RotateAboutAxis
-
-The **RotateAboutAxis** expression rotates a three-channel vector input given the rotation axis, a point on the axis, and the angle to rotate. It is useful for animations using WorldPositionOffset that have better quality than simple shears.
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **NormalizedRotationAxis** | Takes in a normalized (0-1) vector which represents the axis about which the object will rotate. |
-| **RotationAngle** | The angle of rotation. A value of 1 equals a full 360-degree rotation.
-| **PivotPoint** | Takes in the three-channel vector representing the pivot point about which the object will rotate. |
-| **Position** | Takes in the three-channel vector representing the position of the object. When the RotateAboutAxis expression is created, a WorldPosition expression is automatically created and connected to this input. |
-
-[REGION:fullwidth]
-
-[/REGION]
-In the above example, the preview plane would appear to spin on its vertical axis.
-
-[/EXCERPT:RotateAboutAxis]
-
-
-## SphereMask
-
-The **SphereMask** expression outputs a mask value based on a distance calculation. If one input is the position of a point and the other input is the center of a sphere with some radius, the mask value is 0 outside and 1 inside with some transition area. This works on one, two, three, and four component vectors
-
-| Item | Description |
-| -------- | ----------- |
-| [REGION:tablesection]Properties[/REGION] ||
-| **Attenuation Radius** | Specifies the radius to use for the distance calculation. |
-| **Hardness Percent** | Specifies the transition area size. This works like the Photoshop brush hardness value. 0 means the transition is hard, 100 means the transition area is maximal(soft). |
-| [REGION:tablesection]Inputs[/REGION] ||
-| **A** | Takes in the value representing the position of the point to check. |
-| **B** | Takes in the value representing the center of the sphere. |
-
-[REGION:fullwidth]
-
-[/REGION]
-
-In this example, the preview object will smoothly fade to black as the camera exceeds 256 units away from it.
+## A - H
[EXCERPT:AntialiasedTextureMask]
-
-
-## AntialiasedTextureMask
+### AntialiasedTextureMask
The **AntialiasedTextureMask** expression allows you to create a material using a soft (anti-aliased) transition mask. The mask can be used to blend between two complex material properties or to fade out an alpha blended material (works well with SoftMasked). Simply specify a texture with the mask specified in one channel (red, green, blue, or alpha), set the used channel in the expression and specify the comparison value. Assuming the channel stores a grayscale value in the range 0=black to 1=white the comparison function defines if the resulting mask should be 0 or 1. This expression is a parameter, allowing the **Texture** property to be overridden by child MaterialInstances.
@@ -343,32 +58,189 @@ The technique works best in magnification and with blurred input content. Compre
[/EXCERPT:AntialiasedTextureMask]
-## DistanceToNearestSurface
-The **Distance To Nearest Surface** Material Expression node allows Materials to sample any point in the levels Global Distance Field.
-This Material Expression works by outputting the signed distance in world space units from the distance field to the nearest occluders in the scene.
+
+
+
+### BlackBody
+
+The **BlackBody** expression simulates the effects of [black body radiation](http://en.wikipedia.org/wiki/Black-body_radiation) within your Material. The user inputs a temperature (in Kelvin) and the resulting color and intensity can be used to drive Base Color and Emissive values to get a physically accurate result.
+
+[REGION:fullwidth]
+
+[/REGION]
+
+
+
+
+### BumpOffset
+
+[EXCERPT:BumpOffset]
+**BumpOffset** is the Unreal Engine 4 term for what is commonly known as 'Parallax Mapping'. The Bump Offset expression allows a material to give the illusion of depth without the need for additional geometry. BumpOffset materials use a grayscale _heightmap_ to give depth information. The brighter the value in the heightmap, the more 'popped out' the material will be; these areas will parallax (shift) as a camera moves across the surface. Darker areas in the heightmap are 'further away' and will shift the least.
+[/EXCERPT:BumpOffset]
-[region:note]
-**Generate Mesh Distance Fields** must be enabled in **Project Settings** under **Rendering** for this expression to work correctly.
-[/region]
| Item | Description |
| -------- | ----------- |
-| **Position** | Defaults to current World Position if nothing is input. |
+| [REGION:tablesection]Properties[/REGION] ||
+| **HeightRatio** | Multiplier for the depth taken from the _heightmap_. The larger the value, the more extreme the depth will be. Typical values range from 0.02 to 0.1. |
+| **ReferencePlane** | Specifies the approximate height in texture space to apply the effect. A value of 0 will appear to distort the texture completely off the surface, whereas a value of 0.5 (the default) means that some of the surface will pop off while some areas will be sunken in. |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **Coordinate** | Takes in base texture coordinates to be modified by the expression. |
+| **Height** | Takes in the texture (or a value) to be used as the heightmap. |
+| **HeightRatioInput** | Multiplier for the depth taken from the _heightmap_. The larger the value, the more extreme the depth will be. Typical values range from 0.02 to 0.1. If used, this input supersedes any value in the Height Ratio property. |
-Here is an example of the **Distance To Nearest Surface** Material Expression in action.
+[REGION:fullwidth]
+
+[/REGION]
-[Region:lightbox]
-[(w:960)](DistanceNearSurface_01.png)
-[/Region]
+
-(w:550)
-In this example the Distance To Nearest Surface was fed into the Opacity input on a Material and that Material was applied to a Static Mesh plane that was placed just above the levels floor.
-What the Distance To Nearest Surface is doing is telling the Material to only color areas red were the Static Meshes plane will start to intersect other Static Meshes placed in the scene.
+### ConstantBiasScale
-## DistanceFieldGradient
+The **ConstantBiasScale** expression takes an input value, adds a bias value to it, and then multiplies it by a scaling factor outputting the result. So for example, to convert input data from [-1,1] to [0,1] you would use a bias of 1.0 and a scale of 0.5.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Properties[/REGION] ||
+| **Bias** | Specifies the value to be added to the input. |
+| **Scale** | Specifies the multiplier for the biased result. |
+
+
+
+
+
+
+
+
+### DDX
+
+The **DDX** expression exposes DDX derivative calculation, a GPU hardware feature used in pixel shader calculation.
+
+
+
+
+
+### DDY
+
+The **DDY** expression exposes DDX derivative calculation, a GPU hardware feature used in pixel shader calculation.
+
+
+
+
+
+### DepthFade
+
+The **DepthFade** expression is used to hide unsightly seams that take place when translucent objects intersect with opaque ones.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Properties[/REGION] ||
+| **Fade Distance** | World space distance over which the fade should take place. This is used if the FadeDistance input is unconnected. |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **Opacity** | Takes in the existing opacity for the object prior to the depth fade. |
+| **FadeDistance** | World space distance over which the fade should take place. |
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:340)
+ [/PARAM]
+ [PARAM:after]
+ (w:340)
+ [/PARAM]
+[/OBJECT]
+
+[REGION:lightbox]
+[(h:340)](Engine\Rendering\Materials\ExpressionReference\Depth\DepthFadeNetwork.png)
+[/REGION]
+[REGION:caption]
+Click image for full size view.
+[/REGION]
+
+
+
+
+
+### DepthOfFieldFunction
+
+The **Depth of Field Function** expression is designed to give artists control over what happens to a Material when it is being blurred by Depth of Field. It outputs a value between 0-1 such that 0 represents "in focus" and 1 represents "completely blurred." This is useful for interpolating between sharp and blurry versions of a texture, for instance. The Depth input allows for the existing results from the scene's Depth of Field calculations to be overridden by other calculations.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:350)
+ [/PARAM]
+ [PARAM:after]
+ (w:350)
+ [/PARAM]
+[/OBJECT]
+
+[REGION:lightbox]
+[(w:350)](DepthOfFieldFunctionNetwork.png)
+[/REGION]
+[REGION:caption]
+Click image for full size view.
+[/REGION]
+
+
+
+
+
+[EXCERPT:Desaturation]
+### Desaturation
+
+The **Desaturation** expression desaturates its input, or converts the colors of its input into shades of gray, based a certain percentage.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Properties[/REGION] ||
+| **Luminance Factors** | Specifies the amount that each channel contributes to the desaturated color. This is what controls that green is brighter than red which is brighter than blue when desaturated. |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **Fraction** | Specifies the amount of desaturation to apply to the input. Percent can range from 0.0 (fully desaturated) to 1.0 (full original color, no desaturation). |
+
+
+
+
+[REGION:note]
+**Programmers:** Define desaturated color `D`, input color `I` and luminance factor `L`. The output will be `O = (1-Percent)*(D.dot(I)) + Percent*I`
+[/REGION]
+[/EXCERPT:Desaturation]
+
+
+
+
+
+[EXCERPT:Distance]
+### Distance
+
+The **Distance** expression computes the (Euclidian) distance between two points/colors/positions/vectors and outputs the resulting value. This works on one, two, three and four component vectors, but both inputs to the expression must have the same number of channels.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **A** | Takes in a value or vector of any length. |
+| **B** | Takes in a value or vector of any length. |
+
+[REGION:fullwidth]
+
+[/REGION]
+
+**Pseudo code:**
+
+ Result = length(A - B)
+
+**Low level HLSL code:**
+
+ float Result = sqrt(dot(A-B, A-B))
+
+[/EXCERPT:Distance]
+
+
+
+
+
+### DistanceFieldGradient
The **DistanceFieldGradient** Material Expression node, when normalized, outputs the X,Y,Z direction an object would move with in the distance field.
This makes the Distance Field Gradient Material Expression node well-suited for Materials that need to simulate the flow of liquids.
@@ -389,6 +261,9 @@ The Mask Channel Parameter was added to allow for easier RGB channel switching w
[Region:lightbox]
[](DistanceFieldGradient_Material.png)
[/Region]
+[REGION:caption]
+Click image for full size view.
+[/REGION]
Here is an example of the DistanceFieldGradient in action.
The image below shows what data the DistanceFieldGradient will use when the various RGB are enabled.
@@ -396,6 +271,9 @@ The image below shows what data the DistanceFieldGradient will use when the vari
[Region:lightbox]
[(w:960)](DistanceFieldGradient_Example.png)
[/Region]
+[REGION:caption]
+Click image for full size view.
+[/REGION]
+### DistanceToNearestSurface
+
+The **Distance To Nearest Surface** Material Expression node allows Materials to sample any point in the levels Global Distance Field.
+This Material Expression works by outputting the signed distance in world space units from the distance field to the nearest occluders in the scene.
+
+[region:note]
+**Generate Mesh Distance Fields** must be enabled in **Project Settings** under **Rendering** for this expression to work correctly.
+[/region]
+
+| Item | Description |
+| -------- | ----------- |
+| **Position** | Defaults to current World Position if nothing is input. |
+
+Here is an example of the **Distance To Nearest Surface** Material Expression in action.
+
+
+[Region:lightbox]
+[(w:960)](DistanceNearSurface_01.png)
+[/Region]
+[REGION:caption]
+Click image for full size view.
+[/REGION]
+
+(w:550)
+
+In this example the Distance To Nearest Surface was fed into the Opacity input on a Material and that Material was applied to a Static Mesh plane that was placed just above the levels floor.
+What the Distance To Nearest Surface is doing is telling the Material to only color areas red were the Static Meshes plane will start to intersect other Static Meshes placed in the scene.
+
+
+
+
+
+[EXCERPT:FeatureLevelSwitch]
+### FeatureLevelSwitch
+
+The **Feature Level Switch** node allows you to make simplified materials for lower powered devices.
+
+**Example Usage**: You might have a material with 10 textures overlapping and complex math, but just a single static texture for mobile (feature level ES2).
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **Default** | The default Feature Level. |
+| **ES2** | Feature Level defined by the core capabilities of OpenGL ES2. |
+| **ES3.1** | Feature Level defined by the capabilities of Metal-level devices. |
+| **SM4** | Feature Level defined by the core capabilities of DX10 Shader Model 4. |
+| **SM5** | Feature Level defined by the core capabilities of DX11 Shader Model 5. |
+
+[/EXCERPT:FeatureLevelSwitch]
+
+
+
+
+
+### Fresnel
+
+The **Fresnel** expression calculates a falloff based on the dot product of the surface normal and the direction to the camera. When the surface normal points directly at the camera, a value of 0 is output. When the surface normal is perpendicular to the camera, a value of 1 is output. The result is clamped to [0,1] so you do not have any negative color in the center.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Properties[/REGION] ||
+| **Exponent** | Specifies the how quickly the output value falls off. Larger values mean tighter or quicker falloff. |
+| **Base Reflect Fraction** | Specifies the fraction of specular reflection the surface is viewed from straight on. A value of 1 effectively disables the Fresnel effect. |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **ExponentIn** | Specifies the how quickly the output value falls off. Larger values mean tighter or quicker falloff. If used, value will always supersede the Exponent property value. |
+| **Base Reflect Fraction** | Specifies the fraction of specular reflection the surface is viewed from straight on. A value of 1 effectively disables the Fresnel effect. If used, value will always supersede the Exponent property value. |
+| **Normal** | Takes in a three-channel vector value representing the normal of the surface, in world space. To see the results of a normal map applied to the surface of the Fresnel object, connect the normal map to the Normal input of the material, then connect a (PixelNormalWS)[Engine/Rendering/Materials/ExpressionReference/Vector#PixelNormalWS] expression to this input on the Fresnel. If no normal is specified, the tangent normal of the mesh is used. |
+
+
+
+
+
+
+
+
+[EXCERPT:GIReplace]
+### GIReplace
+
+**GIReplace** allows artists to specify a different, usually simpler, expression chain when the material is being used for GI.
+
+**Example Usage**: Lightmass static GI and LPV dynamic GI use it.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **Default** | The default GI. |
+| **StaticIndirect** | Used for baked indirect lighting. |
+| **DynamicIndirect** | Used for dynamic indirect lighting. |
+
+[INCLUDE:Engine\Rendering\LightingAndShadows\LightPropagationVolumes#gireplaceexample]
+
+
+[/EXCERPT:GIReplace]
+
+
+
+
+
+## I - P
+
+
+
+
+
+### LightmassReplace
+
+The **LightmassReplace** expression simply passes through the Realtime input when compiling the material for normal rendering purposes, and passes through the Lightmass input when exporting the material to Lightmass for global illumination. This is useful to work around material expressions that the exported version cannot handle correctly, for example WorldPosition.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **Realtime** | Takes in the value(s) to pass through for normal rendering. |
+| **Lightmass** | Takes in the value(s) to pass through when exporting the material to Lightmass. |
+
+
+
+
+
+[EXCERPT:LinearInterpolate]
+### LinearInterpolate
+
+The **LinearInterpolate** expression blends between two input value(s) based on a third input value used as a mask. This can be thought of as a mask to define transitions between two textures, like a layer mask in Photoshop. The intensity of the mask Alpha determines the ratio of color to take from the two input values. If Alpha is 0.0/black, the first input is used. If Alpha is 1.0/white, the second input is used. If Alpha is grey (somewhere between 0.0 and 1.0), the output is a blend between the two inputs. Keep in mind that the blend happens per channel. So, if Alpha is an RGB color, Alpha's red channel value defines the blend between A and B's red channels **independently** of Alpha's green channel, which defines the blend between A and B's green channels.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Properties[/REGION] ||
+| **Const A** | The value mapped to black (0.0). Only used if the A input is unconnected. |
+| **Const B** | The value mapped to white (1.0). Only used if the B input is unconnected. |
+| **Const Alpha** | Takes in the value to use as the mask alpha. Only used if the Alpha input is unconnected. |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **A** | Takes in the value(s) mapped to black (0.0). |
+| **B** | Takes in the value(s) mapped to white (1.0). |
+| **Alpha** | Takes in the value to use as the mask alpha. |
+
+
+**Programmers:** LinearInterpolate does a per-channel lerp between A and B based on the parametric value Alpha.
+
+(w:900)
+[/EXCERPT:LinearInterpolate]
+
+
+
+
+
+### Noise
+
+The **Noise** expression creates a procedural noise field, giving you control over how it is generated.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Properties[/REGION] ||
+| **Scale** | Changes the overall size of the noise cells. Lower numbers make the noise bigger. |
+| **Quality** | A look/performance setting. Lower values are faster but may look worse, higher values are slower but may look better. |
+| **Function** | [INCLUDE:#NoiseFunctions] |
+| **Turbulence** | Whether to use an absolute value when combining noise levels, results in a veined or billowy look. |
+| **Levels** | How many different levels of noise at different scales to combine, multiplies the computational cost by the number of levels. |
+| **Output Min** | The lowest value output by the noise calculation. |
+| **Output Max** | The highest value output by the noise calculation. |
+| **Level Scale** | Controls the scale of individual levels when using multiple levels of noise. This defaults to 2 so each level is twice the frequency at half the magnitude. |
+| **Tiling** | For noise functions that support it, allows noise to tile. This is more expensive, but useful when baking noise into a seamless wrapping texture. |
+| **Repeat Size** | When tiling, how often should the noise repeat. |
+|| [REGION:tablesection]Inputs[/REGION] ||
+| **Position** | Allows the texture size to be adjusted via a 3D vector. |
+| **FilterWidth** | In effect, controls how much blur will be applied to the noise texture. |
+
+
+
+
+
+
+
+### Previous Frame Switch
+
+The **Previous Frame Switch** Material Expression enables you to support complex [vertex animations](Engine/Animation/Tools/VertexAnimationTool/) implemented in your materials to generate correct motion vectors so that they can work correctly with Temporal AA and Motion Blur.
+
+Materials that are only a function of time already work without modification, however, they cannot account for other variables, such as Material Parameters, that can affect the animation. The Previous Frame Switch Material Expression enables Artists to solve these types of problem manually by tracking how these parameters change, for instance, in Blueprints, where they can manually provide expressions for motion vector generation that is caused by changes in World Position Offset between frames.
+
+[REGION:note]
+**Accurate Velocities from Vertex Deformations** must be enabled in the **Project Settings** under **Rendering** for this expression to work correctly.
+[/REGION]
+
+| Item | Description |
+| -------- | ----------- |
+| Current Frame | Directional Vector used as the starting position reference. |
+| Previous Frame | Directional Vector used as the XYZ reference for the amount of blur to add. |
+
+Here is an example using **Previous Frame Switch** Material Expression in a Material.
+
+(w:900)
+
+In this example, the Previous Frame Switch is using a constant value to control the directional blur through a Multiply node.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ YbjqiNZr4K4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 50
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+In this example, you can see how this is being used in Epic's own games, like Fortnite, to control the motion blur with a Vertex Animation that assembles on screen.
+The animation on the right is using Previous Frame Switch to add some motion blur, while the animation on the left is not.
+
+
+
+
+
+## Q - Z
+
+
+
+
+
+### QualitySwitch
+
+The **QualitySwitch** expression allows for the use of different expression networks based on the engine is switched between quality levels, such as using lower quality on lower-end devices.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Inputs[/REGION] ||
+| Default | This input is used for networks designed for default visual quality. |
+| Low | This input is used for networks designed for lower visual quality. |
+| High | This input is used for networks designed for higher visual quality. |
+
+
+
+
+
+[EXCERPT:RotateAboutAxis]
+### RotateAboutAxis
+
+The **RotateAboutAxis** expression rotates a three-channel vector input given the rotation axis, a point on the axis, and the angle to rotate. It is useful for animations using WorldPositionOffset that have better quality than simple shears.
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **NormalizedRotationAxis** | Takes in a normalized (0-1) vector which represents the axis about which the object will rotate. |
+| **RotationAngle** | The angle of rotation. A value of 1 equals a full 360-degree rotation.
+| **PivotPoint** | Takes in the three-channel vector representing the pivot point about which the object will rotate. |
+| **Position** | Takes in the three-channel vector representing the position of the object. When the RotateAboutAxis expression is created, a WorldPosition expression is automatically created and connected to this input. |
+
+[REGION:fullwidth]
+
+[/REGION]
+
+In the above example, the preview plane would appear to spin on its vertical axis.
+
+[/EXCERPT:RotateAboutAxis]
+
+
+
+
+
+### SphereMask
+
+The **SphereMask** expression outputs a mask value based on a distance calculation. If one input is the position of a point and the other input is the center of a sphere with some radius, the mask value is 0 outside and 1 inside with some transition area. This works on one, two, three, and four component vectors
+
+| Item | Description |
+| -------- | ----------- |
+| [REGION:tablesection]Properties[/REGION] ||
+| **Attenuation Radius** | Specifies the radius to use for the distance calculation. |
+| **Hardness Percent** | Specifies the transition area size. This works like the Photoshop brush hardness value. 0 means the transition is hard, 100 means the transition area is maximal(soft). |
+| [REGION:tablesection]Inputs[/REGION] ||
+| **A** | Takes in the value representing the position of the point to check. |
+| **B** | Takes in the value representing the center of the sphere. |
+
+[REGION:fullwidth]
+
+[/REGION]
+[REGION:caption] In this example, the preview object will smoothly fade to black as the camera exceeds 256 units away from it. [/REGION]
+
+
+
+
+
+### Vector Noise
+
+[INCLUDE:Engine\Rendering\Materials\ExpressionReference\Vector#VectorNoiseTest]
+
+
-
## Object Bounds
The **Object Bounds** expression outputs the size of the object in each axis. If used as color, the X, Y, and Z axes correspond to R, G, and B, respectively.
@@ -116,6 +131,78 @@ In this example, PixelNormalWS is fed into Base Color. Notice how the normal map
[/EXCERPT:PixelNormalWS]
+
+
+## Pre-Skinned Local Normal
+
+The **Pre-Skinned Local Normals** Vector Expression outputs a three-channel vector value representing the local surface normal for Skeletal and Static Meshes. This enables you to achieve locally-aligned tri-planar
+materials and mesh aligned effects in your materials.
+
+In this example, the material is using a tri-planar texture aligned to the mesh's local surface normal.
+
+[REGION:lightbox]
+[(w:700)](PreSkinnedTriPlanarSetup.png)
+[/REGION]
+[REGION:caption]
+_Click image for larger size._
+[/REGION]
+
+[REGION:imagetable]
+| [INCLUDE:#LocalNormal1] | [INCLUDE:#LocalNormal2] |
+| --- | --- |
+| Tri-Planar Pre-Skinned Local Normal Vector Expression | Tri-Planar Material |
+[/REGION]
+
+
+
+## Pre-Skinned Local Position
+
+The **Pre-Skinned Local Position** Vector Expression outputs a three-channel vector value that gives access to a Skeletal Mesh’s default pose position data for use in
+per-vertex outputs. This enables you to have localized effects on an animated character. This vector expression can also be used with Static Meshes, which will return
+the standard local position.
+
+[REGION:lightbox]
+[(w:500)](PreSkinnedLocalPos.png)
+[/REGION]
+[REGION:caption]
+_Click image for larger size._
+[/REGION]
+
+In this example, the Skeletal Mesh's default pose is used for mapping versus the default UV mapping on the right.
+
+[REGION:imagetable]
+| [INCLUDE:#LocalPos1] | [INCLUDE:#LocalPos2] |
+| --- | --- |
+| Pre-Skinned Local Position Vector Expression | Skeletal Mesh's Default UV Layout |
+[/REGION]
+
+
+
+
## ReflectionVectorWS
The **ReflectionVectorWS** expression is similar in spirit to [CameraVectorWS](#CameraVectorWS), but it outputs a three-channel vector value representing the camera direction reflected across the surface normal.
@@ -146,15 +233,15 @@ In the example above, the preview sphere would seem to scale up and down with si
[EXCERPT:VectorNoiseTest]

-The Vector Noise Material expression adds several more 3D or 4D vector noise results to use in your Materials. Due to the run-time expense of these functions, it is recommended that once a look is developed with them, all or part of the computation be baked into a Texture using the [Draw Material to Render Target Blueprint](Engine\Rendering\RenderTargets\BlueprintRenderTargets) feature introduced in Unreal Engine 4.13 and later. These Material graph Expressions allow procedural looks to be developed in engine on final assets, providing an alternative to creating procedurally generated Textures with an external tool to apply to assets in UE4. Inside of the Vector Noise Material Expression, you will find the following Vector Noise types.
+The Vector Noise Material expression adds several more 3D or 4D vector noise results to use in your Materials. Due to the run-time expense of these functions, it is recommended that once a look is developed with them, all or part of the computation be baked into a Texture using the [Draw Material to Render Target Blueprint](Engine\Rendering\RenderTargets\BlueprintRenderTargets) feature introduced in Unreal Engine 4.13 and later. These Material graph Expressions allow procedural looks to be developed in the engine on final assets, providing an alternative to creating procedurally generated Textures with an external tool to apply to assets in UE4. Inside of the Vector Noise Material Expression, you will find the following Vector Noise types.
|Image|Item|Description|
|-----|--------|---------------|
-|(w:128)|Cellnoise|Returns a random color for each cell in a 3D grid (i.e. from the mathematical floor operation applied to the node input). The results are always consistent for a given position, so can provide a reliable way to add randomness to a Material. This Vector Noise function is extremely cheap to compute, so it is not necessary to bake it into a Texture for performance.|
-|(w:128)|Perlin 3D Noise|Returns a random color for each cell in a 3D grid (i.e. from the mathematical floor operation applied to the node input). The results are always consistent for a given position, so can provide a reliable way to add randomness to a Material. This Vector Noise function is extremely cheap to compute, so it is not necessary to bake it into a Texture for performance.|
-|(w:128)|Perlin Gradient|Computes the analytical 3D gradient of a scalar Perlin Simplex Noise. The output is four channels, where the first three (RGB) are the gradient, and the fourth (A) is the scalar noise. This noise type is useful for bumps on a surface or for flow maps.|
-|(w:128)|Perlin Gradient|Computes the analytical 3D curl of a vector Perlin Simplex Noise (aka Curl Noise). The output is a 3D signed curl vector and is useful for fluid or particle flow.|
-|(w:128)|Voronoi|Computes the same Voronoi noise as the scalar Noise material node. The scalar Voronoi noise scatters seed points in 3D space and returns the distance to the closest one. The Vector Noise version returns the location of the closest seed point in RGB, and the distance to it in A. Especially coupled with Cellnoise, this can allow some randomized behavior per Voronoi cell.|
+|(w:128)|**Cellnoise** | Returns a random color for each cell in a 3D grid (i.e. from the mathematical floor operation applied to the node input). The results are always consistent for a given position, so can provide a reliable way to add randomness to a Material. This Vector Noise function is extremely cheap to compute, so it is not necessary to bake it into a Texture for performance.|
+|(w:128)|**Perlin 3D Noise** | Returns a random color for each cell in a 3D grid (i.e. from the mathematical floor operation applied to the node input). The results are always consistent for a given position, so can provide a reliable way to add randomness to a Material. This Vector Noise function is extremely cheap to compute, so it is not necessary to bake it into a Texture for performance.|
+|(w:128)|**Perlin Gradient** | Computes the analytical 3D gradient of a scalar Perlin Simplex Noise. The output is four channels, where the first three (RGB) are the gradient, and the fourth (A) is the scalar noise. This noise type is useful for bumps on a surface or for flow maps.|
+|(w:128)|**Perlin Gradient** | Computes the analytical 3D curl of a vector Perlin Simplex Noise (aka Curl Noise). The output is a 3D signed curl vector and is useful for fluid or particle flow.|
+|(w:128)|**Voronoi** | Computes the same Voronoi noise as the scalar Noise material node. The scalar Voronoi noise scatters seed points in 3D space and returns the distance to the closest one. The Vector Noise version returns the location of the closest seed point in RGB, and the distance to it in A. Especially coupled with Cellnoise, this can allow some randomized behavior per Voronoi cell.|
Below is a simple stone bed material using the distance component of the Vector Noise / Voronoi to modulate some surface bumps and blend in moss in the cracks, and the seed position together with Vector Noise / Cellnoise to change the color and bump height per rock.
@@ -164,23 +251,23 @@ The derivative-based operations Perlin Curl and Perlin Gradient can be added tog
|Item|Description|
|-----|-----------|
-|Prepare3DDeriv|Uses positions offset in a tetrahedral pattern to compute 3D derivatives. Evaluate the same 3D function at each offset position produced by this function, then feed the resulting values into Compute3DDeriv.|
-|Compute3DDeriv|Uses positions offset in a tetrahedral pattern to compute 3D derivatives. Use with Prepare3DDeriv.|
-|GradFrom3DDeriv|Computes 3D gradient vector from result of Prepare3DDeriv/Compute3DDeriv.|
-|CurlFrom3DDeriv|Computes curl of at 3D vector field from result of Prepare3DDeriv/Compute3DDeriv.|
+| **Prepare3DDeriv** | Uses positions offset in a tetrahedral pattern to compute 3D derivatives. Evaluate the same 3D function at each offset position produced by this function, then feed the resulting values into Compute3DDeriv.|
+| **Compute3DDeriv** | Uses positions offset in a tetrahedral pattern to compute 3D derivatives. Use with Prepare3DDeriv.|
+| **GradFrom3DDeriv** | Computes 3D gradient vector from result of Prepare3DDeriv/Compute3DDeriv.|
+| **CurlFrom3DDeriv** | Computes curl of a 3D vector field from result of Prepare3DDeriv/Compute3DDeriv.|
[region:note]
These helper Material Functions use four evaluations of the base expression spaced in a tetrahedral pattern to approximate these derivative-based operations.
[/region]
-Below you will find descriptions for the various noise functions you will find in the Vector Noise Material Expression.
+Below you will find descriptions of the various noise functions you will find in the Vector Noise Material Expression.
| Item | Description |
| -------- | ----------- |
| [REGION:tablesection]Properties[/REGION] ||
| **Function** | [INCLUDE:#VectorNoiseFunctions] |
| **Quality** | A look/performance setting. Lower values are faster but may look worse, higher values are slower but may look better. |
-| **Tiling** | For noise functions that support it, allows noise to tile. This is more expensive, but useful when baking noise into a seamless wrapping texture. |
+| **Tiling** | For noise functions that support it this allows noise to tile. This is more expensive, but useful when baking noise into a seamless wrapping texture. |
| **Tile Size** | When tiling, how often should the noise repeat. For Perlin noise variants, the Tile Size must be a multiple of three. |
|| [REGION:tablesection]Inputs[/REGION] ||
| **Position** | Allows the texture size to be adjusted via a 3D vector. |
@@ -219,21 +306,10 @@ Below you will find descriptions for the various noise functions you will find i
|Function| Description|
|---------|-----------|
-| Cellnoise | Random color for each integer grid cell in 3D space. About 10 instructions. |
-| Perlin 3D Noise | Computational Perlin noise with 3D output, each channel output ranges from -1 to 1. About 83 instructions if only the red channel is used, 125 instructions if all three channels are used|
-| Perlin Gradient | Computes the gradient of a Perlin noise function. RGB output contains the gradient vector, A is the scalar noise. About 106 instructions. |
-| Perlin Curl | Computes a 3D curl noise. Output is the mathematical curl of Perlin 3D Noise. About 162 instructions. |
-| Voronoi | The same algorithm and instruction counts as the Voronoi function in the *Noise* expression, but RGB is the location of the closest seed point in each Voronoi cell, and A is the distance to that seed point. |
+| **Cellnoise** | Random color for each integer grid cell in 3D space. About 10 instructions. |
+| **Perlin 3D Noise** | Computational Perlin noise with 3D output, each channel output ranges from -1 to 1. About 83 instructions if only the red channel is used, 125 instructions if all three channels are used|
+| **Perlin Gradient** | Computes the gradient of a Perlin noise function. RGB output contains the gradient vector, A is the scalar noise. About 106 instructions. |
+| **Perlin Curl** | Computes a 3D curl noise. The output is the mathematical curl of Perlin 3D Noise. About 162 instructions. |
+| **Voronoi** | The same algorithm and instruction counts as the Voronoi function in the *Noise* expression, but RGB is the location of the closest seed point in each Voronoi cell, and A is the distance to that seed point. |
[/EXCERPT]
-->
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Vector/VectorExpressions.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Vector/VectorExpressions.JPN.udn
index a7087728ae72..1eac6f43e306 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Vector/VectorExpressions.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/Vector/VectorExpressions.JPN.udn
@@ -1,14 +1,31 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3474197
Availability:Public
-Title:ベクター表現式
-Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/ExpressionReference
+Crumbs: %ROOT%
+Title:Vector 表現式
Description:位置や法線などのベクター値を出力する表現式
-Version:4.9
+Type:Reference
+Version:4.16
+Parent:Engine/Rendering/Materials
+reference-image:PreSkinnedTriPlanar.gif
+reference-image:TriPlanarMaterial.gif
+reference-image:PS_LocalPositionMaterial.gif
+reference-image:PS_DefaultMaterial.gif
+Order:
+Tags:Materials
+topic-image:VectorExpression_Topic.png
+
+
[EXCERPT:TOC]
[TOC(start:2)]
[/EXCERPT:TOC]
+
+このページでは、RGBA にマップされたベクター値を出力する利用可能な Vector 表現式を紹介します。これらは、キャラクターが指定エリアに入った時にマテリアルがキャラクターの色に反応あるいは色を変形するためのワールド空間でのオブジェクトの位置の取得など、
+マテリアルの作成のための様々なエフェクトに使うことができます。空間のローカル スタイル マテリアル エフェクトを制御する表現式は
+他にもあります。
+
+
[EXCERPT:ActorPositionWS]
## ActorPositionWS
@@ -35,9 +52,9 @@ CameraWorldPosition 表現式は、ワールド空間のカメラ位置を表す
## CameraVectorWS
-CameraVector 表現式はサーフェスに対するカメラ方向を表す 3 つのチャンネルのベクター値を出力します。つまり、ピクセルからカメラへの方向を表します。
+**CameraVector** 表現式は、サーフェスに対するカメラ方向、つまり、ピクセルからカメラへの方向を表す 3 つのチャンネルのベクター値を出力します。
-**使用例:** CameraVector は、CameraVector と ComponentMask を接続して環境マップの偽造や、テクスチャ座標として CameraVector の X、Y チャンネルを使用します。
+**使用例:** CameraVector は多くの場合、CameraVector を ComponentMask に接続して疑似的な環境マップに使用し、テクスチャ座標として CameraVector のX チャンネルと Y チャンネルを使用します。
[REGION:fullwidth]

@@ -55,12 +72,12 @@ CameraVector 表現式はサーフェスに対するカメラ方向を表す 3
## LightVector
[REGION:warning]
-**ライティング計算は現在保留となっているため、この表現式はアンリアル・エンジン 4 で将来的にサポートの保証がありません。**
+ライティングの演算はディファードで行われるため、この表現式は非推奨です。
[/REGION:warning]
-
## Object Bounds
**Object Bounds** 表現式は、各軸のオブジェクトのサイズを出力します。カラーとして使用すると、X 軸、Y 軸、および Z 軸はそれぞれ R、G、および B に対応します。
@@ -83,7 +99,7 @@ LightVector 表現式はサーフェスに対するライト方向を表す 3
## ObjectOrientation
-**ObjectOrientation** 表現式は、オブジェクトのワールド空間の Up ベクターを出力します。言い換えると、オブジェクトのローカルの正の z 軸はこの方向を指しています。
+**ObjectOrientation** 表現式は、オブジェクトのワールド空間の Up ベクターを出力します。言い換えると、オブジェクトのローカルの正の z 軸はこの方向を向いています。

[/EXCERPT:ObjectOrientation]
@@ -93,7 +109,7 @@ LightVector 表現式はサーフェスに対するライト方向を表す 3
## ObjectPositionWS
-**ObjectPositionWS** 表現式は、オブジェクト範囲のワールド空間の中心位置を出力します。フォーリッジに球状のライティングを作成するなどの場合に便利です。
+**ObjectPositionWS** 表現式は、オブジェクト範囲のワールド空間の中心位置を出力します。例えば、フォリッジに球状のライティングを作成する際に便利です。
(w:450) (h:349)
@@ -107,7 +123,7 @@ LightVector 表現式はサーフェスに対するライト方向を表す 3
[EXCERPT:PixelNormalWS]
## PixelNormalWS
-**PixelNormalWS** 表現式は、現在の法線をベースに対面しているピクセルの方向を表すベクターデータを出力します。
+**PixelNormalWS** 表現式は、現法線に基づきピクセルが向いている方向を表すベクターデータを出力します。

@@ -116,6 +132,78 @@ LightVector 表現式はサーフェスに対するライト方向を表す 3
[/EXCERPT:PixelNormalWS]
+
+
+## Pre-Skinned Local Normal
+
+**Pre-Skinned Local Normals** ベクター表現式は、スケルタルおよびスタティックメッシュのローカル サーフェス法線を表現する 3 つのチャンネル ベクター値を出力します。これにより、ローカルで位置合わせした 3 面マテリアルを使って
+スケルタルメッシュに自動 UV マッピングなどのエフェクトを適用できるようになりました。
+
+この例では、マテリアルはメッシュのローカル サーフェス法線に合わせた 3 面テクスチャを使っています。
+
+[REGION:lightbox]
+[(w:700)](PreSkinnedTriPlanarSetup.png)
+[/REGION]
+[REGION:caption]
+_画像をクリックしてフルサイズで表示_
+[/REGION]
+
+[REGION:imagetable]
+| [INCLUDE:#LocalNormal1] | [INCLUDE:#LocalNormal2] |
+| --- | --- |
+| Tri-Planar Pre-Skinned Local Normal Vector Expression | Tri-Planar Material |
+[/REGION]
+
+
+
+## Pre-Skinned Local Position
+
+**Pre-Skinned Local Position** ベクター表現式は、頂点ごとの出力に使用するスケルタルメッシュのデフォルト ポーズ位置データにアクセスできるように、
+3 チャンネル ベクター値を出力します。これにより、アニメートしたキャラクター上で局所的なエフェクトが可能になります。スタティックメッシュと使用することも可能で、
+標準ローカル位置を返します。
+
+[REGION:lightbox]
+[(w:500)](PreSkinnedLocalPos.png)
+[/REGION]
+[REGION:caption]
+_画像をクリックしてフルサイズで表示_
+[/REGION]
+
+この例では、スケルタルメッシュのデフォルト ポーズが、マッピングおよびデフォルト UV マッピング (右) に使用されています。
+
+[REGION:imagetable]
+| [INCLUDE:#LocalPos1] | [INCLUDE:#LocalPos2] |
+| --- | --- |
+| Pre-Skinned Local Position Vector Expression | Skeletal Mesh's Default UV Layout |
+[/REGION]
+
+
+
+
## ReflectionVectorWS
**ReflectionVectorWS** 表現式は [CameraVectorWS](#CameraVectorWS) と類似した性質をもっていますが、サーフェス法線上に反射するカメラ方向を表す 3 つのチャンネルのベクター値を出力します。
@@ -141,3 +229,88 @@ LightVector 表現式はサーフェスに対するライト方向を表す 3
[/EXCERPT:VertexNormalWS]
+## Vector Noise
+
+[EXCERPT:VectorNoiseTest]
+
+
+Vector Noise マテリアル表現式は、マテリアル内で使用する 3D あるいは 4D ベクター ノイズ結果をさらに追加します。これらの関数はランタイムに負荷がかかるため、外見が決定した後は 4.13 以降で導入された [Draw Material to Render Target Blueprint](Engine\Rendering\RenderTargets\BlueprintRenderTargets) 機能を使って計算のすべてまたは一部をテクスチャにベイクすることをお勧めします。こうしたマテリアル グラフ表現式を使うと、最終アセットでエンジン内でプロシージャルな見た目を決めることができます。外部ツールを使ってプロシージャルに生成したテクスチャを作成し、UE4 のアセットへ適用する代替方法になります。以下は、Vector Noise マテリアル表現式に含まれるタイプです。
+
+|画像|アイテム|説明|
+|-----|--------|---------------|
+|(w:128)|**Cellnoise** | 3D グリッドの各セルに対してランダムな色を戻します (すなわち、ノード入力に適用される数学的フロア演算から)。結果は常に任意の位置に対して一貫性があるため、高い信頼性でマテリアルにランダム性を加えることができます。この Vector Noise 関数の演算の負荷は非常に低いものです。そのため、パフォーマンス上の理由でテクスチャにベイクする必要はありません。|
+|(w:128)|**Perlin 3D Noise** | 3D グリッドの各セルに対してランダムな色を戻します (すなわち、ノード入力に適用される数学的フロア演算から)。結果は常に任意の位置に対して一貫性があるため、高い信頼性でマテリアルにランダム性を加えることができます。この Vector Noise 関数の演算の負荷は非常に低いものです。そのため、パフォーマンス上の理由でテクスチャにベイクする必要はありません。|
+|(w:128)|**Perlin Gradient** | スカラー Perlin Simplex Noise の解析的 3D 勾配を計算します。出力は 4 チャンネルです。この場合、最初から 3 つめ (RGB) までは勾配であり、4 つめが (A) スカラー ノイズになります。サーフェス上のバンプとフローマップに適しているノイズ タイプです。|
+|(w:128)|**Perlin Gradient** | ベクター Perlin Simplex Noise (いわゆる Curl Noise ) の解析的 3D カールを計算します。出力は 3D signed curl vector で、液体やパーティクルのフローに適しています。|
+|(w:128)|**Voronoi** | スカラー Noise マテリアルノードと同じ Voronoi ノイズを計算します。スカラー Voronoi ノイズは 3D 空間でシード ポイントを分散し、最も近いものからの距離を戻します。Vector Noise のバージョンは RGB で最も近いシード ポイントの位置を戻し、A でそれに対する距離を戻します。特に Cellnoise と併用すると、ボロノイのセル単位でビヘイビアを一部ランダム化することができます。|
+
+以下は、Vector Noise / Voronoi の距離コンポーネントを使って、サーフェスのバンプやクラックの苔のブレンドを調整したシンプルな地面の石のマテリアルです。シードの位置と Vector Noise / Cellnoise を合わせて石毎に色やバンプの高さを変えています。
+
+
+
+Perlin Curl と Perlin Gradient は微分係数ベースの演算なので、オクターブでまとめて追加することができます。より複雑な式の微分係数については、表現式の結果の勾配を計算する必要があります。これを行うには、計算する表現式をマテリアル関数に配置し、以下のヘルパー ノードと併用します。
+
+|項目|説明|
+|-----|-----------|
+| **Prepare3DDeriv** | 四面体パターンの位置オフセットを使用して、3D 微分係数を計算します。この関数で生成されたそれぞれのオフセット位置で同じ 3D 関数を評価してから、結果値を Compute3DDeriv に渡します。|
+| **Compute3DDeriv** | 四面体パターンの位置オフセットを使用して、3D 微分係数を計算します。Prepare3DDeriv と併用します。|
+| **GradFrom3DDeriv** | Prepare3DDeriv/Compute3DDeriv の結果から 3D グラディエント ベクターを計算します。|
+| **CurlFrom3DDeriv** | Prepare3DDeriv/Compute3DDeriv の結果から 3D ベクター フィールドのカールを計算します。|
+
+[region:note]
+これらのヘルパー マテリアル関数は、四面体パターンに配置された式をベースにした 4 つの評価を用いて、微分係数ベースの演算を近似します。
+[/region]
+
+以下は、Vector Noise マテリアル式で使用される各種ノイズ関数と説明です。
+
+| アイテム | 説明 |
+| -------- | ----------- |
+| [REGION:tablesection]プロパティ[/REGION] ||
+| **Function** | [INCLUDE:#VectorNoiseFunctions] |
+| **Quality** | 外観、パフォーマンスを設定します。値が低いと処理は速くなりますが外観が悪くなります。値が高いと処理は遅くなりますが外観が良くなります。 |
+| **Tiling** | ノイズのタイル処理を可能にします。負荷が高くなりますが、ノイズをシームレスにラップするテクスチャにベイクする場合に便利です。 |
+| **Tile Size** | タイリング処理でのノイズ繰り返し数です。Perlin ノイズ変数の場合、Tile Size は 3 の乗数でなければなりません。 |
+|| [REGION:tablesection]入力値[/REGION] ||
+| **Position** | 3D ベクターを介してテクスチャ サイズを調整できます。 |
+
+* **Cell Noise** マテリアル サンプル:
+ [REGION:lightbox]
+ [(w:504)](Engine\Rendering\Materials\ExpressionReference\Utility\Cellnoise.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
+
+* **Perlin Gradient** マテリアル サンプル:
+ [REGION:lightbox]
+ [(w:504)](Engine\Rendering\Materials\ExpressionReference\Utility\PerlinGradient.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
+
+* **Voronoi** マテリアル サンプル:
+ [REGION:lightbox]
+ [(w:504)](Engine\Rendering\Materials\ExpressionReference\Utility\Voronoi.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
+
+[/EXCERPT:VectorNoiseTest]
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/VectorOps/VectorOpExpressions.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/VectorOps/VectorOpExpressions.JPN.udn
index a7132d78a417..5fdfd601dae6 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/VectorOps/VectorOpExpressions.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/ExpressionReference/VectorOps/VectorOpExpressions.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:2690274
+INTSourceChangelist:3354806
Availability:Public
Title:Vector Operation 表現式
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/ExpressionReference
Description:ベクター入力値の演算を実行する表現式
Version:4.9
+tags:Materials
[EXCERPT:TOC]
[TOC(start:2)]
@@ -12,16 +13,16 @@ Version:4.9
[EXCERPT:AppendVector]
## AppendVector
-**AppendVector** 表現式は、オリジナルよりも多いチャンネルでベクターを作成するために、チャンネルの結合を有効にします。例えば、 2 つの個別の [Constants](Engine/Rendering/Materials/ExpressionReference/Constant#Constant) 値を受け取り、2チャンネルの [Constant2Vector](Engine/Rendering/Materials/ExpressionReference/Constant#Constant2Vector) 値を作成するためにこれらをアペンドします。単一テクスチャ内でチャンネルの再順序付けをしたり、複数のグレースケールテクスチャを 1 つの RGB カラーテクスチャに結合する際に実用的です。
+**AppendVector** 表現式は、チャンネルを結合して、オリジナルよりも多いチャンネルでベクターを作成することができます。例えば、 2 つの個別の [Constants](Engine/Rendering/Materials/ExpressionReference/Constant#Constant) 値を受け取り、2チャンネルの [Constant2Vector](Engine/Rendering/Materials/ExpressionReference/Constant#Constant2Vector) 値を作成するためにこれらをアペンドします。単一テクスチャ内でチャンネルの再順序付けをしたり、複数のグレースケール テクスチャを 1 つの RGB カラーテクスチャに結合する際に役立ちます。
| アイテム | 説明 |
| -------- | ----------- |
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **A** | 追加する値を受け取ります。 |
| **B** | 追加される値を受け取ります。 |
-**例:** 0.2 と 0.4 のアペンドは、 (0.2、0.4) 、(0.2、0.4) と (1.6) のアペンドは (0.2、0.4、1.6) です。
+**例:** 0.2 と 0.4 のアペンドは、 (0.2、0.4) 、(0.2、0.4) と (1.0) のアペンドは (0.2、0.4) です。

@@ -31,7 +32,7 @@ Version:4.9
[EXCERPT:ComponentMask]
## ComponentMask
-**ComponentMask** 表現式は、入力値から出力へ渡すためのチャンネル (R、G、B および / もしくは A) の特定サブセットの選択を有効にします。入力に存在しないチャンネルを通過する場合、入力値が単一の定数値でない限りエラーが生じます。その場合、単一値が各チャンネルを通過します。値が通過するチャンネルとして現在選択されたチャンネルは、表現式のタイトルバーに表示されます。
+**ComponentMask** 表現式は、入力値から出力へ渡すためのチャンネル (R、G、B および / もしくは A) の特定サブセットの選択を有効にします。入力に存在しないチャンネルを通過しようとすると、入力値が単一の定数値でない限りエラーが生じます。その場合、単一値が各チャンネルを通過します。値が通過するチャンネルとして現在選択されたチャンネルは、表現式のタイトルバーに表示されます。
| アイテム | 説明 |
| -------- | ----------- |
@@ -42,7 +43,7 @@ Version:4.9
| **A** | チェックされると、アルファ (4 番目の) チャンネルの入力値が出力へ渡されます。 |
-**例:** ComponentMask ノードに (0.2、0.8、1.4) の値を入力し、 R と B チャンネルにチェックを入れた状態は、 (0.2、1.4) を出力します。
+**例:** ComponentMask に (0.2,0.4,1.0) を入力すると G チャンネルから (0.4) が出力されます。これをカラー ベクターで使うと 40% 明るいグレースケール値として表示されます。
[REGION:fullwidth]

@@ -56,11 +57,11 @@ Version:4.9
## DeriveNormalZ
-**DeriveNormalZ** 表現式は、 X と Y コンポーネントが入力されてタンジェント空間法線の Z コンポーネントを派生し、結果として 3 チャンネルのタンジェント空間法線を出力します。Z は、「Z = sqrt(1 - (x * x + y * y))」として演算されます。
+**DeriveNormalZ** 表現式は、 X と Y コンポーネントが入力されてタンジェント空間法線の Z コンポーネントを派生し、結果として 3 チャンネルのタンジェント空間法線を出力します。Z は、「Z = sqrt(1 - (x \* x + y \* y));」として演算されます。
| アイテム | 説明 |
| -------- | ----------- |
-| [REGION:tablesection]入力値[/REGION] ||
+| [REGION:tablesection]入力[/REGION] ||
| **InXY** | 2 チャンネルベクター値の形式でタンジェント空間法線の X と Y コンポーネントを受け取ります。 |
@@ -77,13 +78,13 @@ Version:4.9
**Transform** 表現式は、3 チャンネル ベクター値をある参照座標系から別の系に変換します。
-デフォルト設定で、マテリアルの全てのシェーダー計算はタンジェント空間で実行されます。ベクター定数、カメラベクター、ライトベクターなどは、マテリアルで使用される前に全てタンジェント空間へ変換されます。Transform 表現式は、これらのベクターをタンジェント空間からワールド空間、ローカル空間、またはビュー空間の座標系への変換を可能にします。また、ワールド空間とローカル空間ベクターをその他の参照座標系への変換も可能にします。
+デフォルト設定で、マテリアルの全てのシェーダー計算はタンジェント空間で実行されます。ベクター定数、カメラ ベクター、ライト ベクターなどは、マテリアルで使用される前に全てタンジェント空間へ変換されます。Transform 表現式は、これらのベクターをタンジェント空間からワールド空間、ローカル空間、またはビュー空間の座標系への変換を可能にします。また、ワールド空間ベクターとローカル空間ベクターを他の参照座標系への変換も可能にします。
| アイテム | 説明 |
| -------- | ----------- |
| [REGION:tablesection]プロパティ[/REGION] ||
-| **Source** | 変換するベクターのソースとなる現座標システムを指定します。以下のいずれかになります。ワールド、ローカル、またはタンジェント。 |
-| **Destination** | 変換するベクターの送り先となる現座標システムを指定します。以下のいずれかになります。ワールド、ビュー、ローカル、またはタンジェント。 |
+| **Source** | 変換するベクターのソースとなる現在の座標システムを指定します。ワールド、ローカル、またはタンジェントのいずれかになります。 |
+| **Destination** | 変換するベクターの送り先となる現在の座標システムを指定します。ワールド、ビュー、ローカル、またはタンジェントのいずれかになります。 |
Transform ノードは、ミラー化された UV を構成するため、例えば、キャラクターの右端のみに影響を及ぼすハイライトなどを有効にします。
@@ -124,5 +125,5 @@ Transform ノードは、キューブマップのサンプリングに使用す
オリジンから離れたワールドポジションの派生に使用すると、主要な精密性に問題が発生するためこのノードは廃止される予定です。代わりに WorldPosition ノードを使用してください。
[/REGION]
-**TransformPosition** 表現式は、スクリーン空間から式の TransformType 変数で指定された変換先へ、どんなポジションの変換も有効にします。現時点では、ワールド空間への変換のみをサポートしています。この表現式は、マテリアルのワールド空間座標の取得に使用します。ワールド空間を可視化するには、エミッシブへ直接接続します。
+**TransformPosition** 表現式は、スクリーン スペースから式の TransformType 変数で指定された変換先へ、どんなポジションの変換も有効にします。現時点では、ワールド空間への変換のみをサポートしています。この表現式は、マテリアルのワールド空間座標の取得に使用します。ワールド空間を可視化するには、エミッシブへ直接接続します。
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter/PivotPainter.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter/PivotPainter.INT.udn
index 95cf42520be1..a445b6dfe806 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter/PivotPainter.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter/PivotPainter.INT.udn
@@ -1,9 +1,13 @@
Availability: Public
-title:Pivot Painter
+title:Pivot Painter Material Functions
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/Functions
Description:Functions designed to allow utilization of the Pivot Painter MAXScript.
Version: 4.9
+Parent:Engine/Rendering/Materials/Functions/Reference
+Related:Engine/Content/Tools/PivotPainter
+Topic-Image:PivotPainterMF_Topic.png
tags:Materials
+tags:Pivot Painter
[TOC (start:2 end:3)]
@@ -29,11 +33,13 @@ Although the data provided by Pivot Painter can be utilized without these functi
## Pivot Painter Functions
-The following is a list of all the functions underneath the Pivot Painter category.
+The following is a list of all the functions underneath the Pivot Painter category.
+
+These functions are used to process and organize world position and angle information stored in the model's UVs by the Pivot Painter MAXScript.
### PivotPainter_HierarchyData
-Processes and organizes world position and angle information stored in the model's UVs by the Pivot Painter MAXScript. This particular function is specifically designed to work with object hierarchies.
+This particular function is specifically designed to work with object hierarchies.
| Item | Description |
| -------- | -------- |
@@ -59,7 +65,7 @@ Processes and organizes world position and angle information stored in the model
### PivotPainter_PerObjectData
-Processes and organizes world position and angle information stored in the model's UVs by the Pivot Painter MAXScript. This particular function is designed to work on a per-object basis.
+This particular function is designed to work on a per-object basis.
| Item | Description |
| -------- | -------- |
@@ -75,7 +81,7 @@ Processes and organizes world position and angle information stored in the model
### PivotPainter_PerObjectFoliageData
-Processes and organizes world position and angle information stored in the model's UVs by the Pivot Painter MAXScript. This function is designed to work specifically with individual foliage objects.
+This function is designed to work specifically with individual foliage objects.
| Item | Description |
@@ -101,7 +107,7 @@ Processes and organizes world position and angle information stored in the model
### PivotPainter_TreeData
-Processes and organizes world position and angle information stored in the model's UVs by the Pivot Painter script. The outputs starting with *tree* process the model's UV information as it would be stored by the Pivot Painter MAXScript. The outputs starting with *Leaf* process the UV information as it would be stored by the per-object pivot painting section of the script.
+The outputs starting with *tree* process the model's UV information as it would be stored by the Pivot Painter MAXScript. The outputs starting with *Leaf* process the UV information as it would be stored by the per-object pivot painting section of the script.
| Item | Description |
| -------- | -------- |
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter/PivotPainter.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter/PivotPainter.JPN.udn
index 8a83bb0271ab..3194a3b58557 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter/PivotPainter.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter/PivotPainter.JPN.udn
@@ -1,9 +1,14 @@
-INTSourceChangelist:2729971
+INTSourceChangelist:3471591
Availability:Public
-title:Pivot Painter(軸ペインター)
+title:Pivot Painter マテリアル関数
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials, Engine/Rendering/Materials/Functions
Description:Pivot Painter MAXScript を使うために作成された機能
Version:4.9
+Parent:Engine/Rendering/Materials/Functions/Reference
+Related:Engine/Content/Tools/PivotPainter
+Topic-Image:PivotPainterMF_Topic.png
+tags:Materials
+tags:Pivot Painter
[TOC (start:2 end:3)]
@@ -29,20 +34,22 @@ Pivot Painter が提供するデータは、これらの関数を使わなくて
## Pivot Painter 関数
-以下は Pivot Painter カテゴリに属する全関数のリストです。
+以下は Pivot Painter カテゴリに属する全関数のリストです。
+
+これらの関数は、Pivot Painter MAXScript によりモデルの UV に格納されているワールド位置およびアングルに関する情報の処理と整理を行います。
### PivotPainter_HierarchyData
-Pivot Painter MAXScript によりモデルの UV に格納されているワールド位置と角度情報の処理と整理を行います。この特別な関数はオブジェクト階層と機能するように特別に作成されています。
+オブジェクト階層と機能する特殊な関数です。
| アイテム | 説明 |
| -------- | -------- |
| [REGION:tablesection]入力値[/REGION] ||
| **Max Dist for Parent Piv (Scalar)** | アセットのペイント中は MAXScript 「Max Dist for Parent Piv」のスピナーで使用された値と一致しなければなりません。 |
|[REGION:tablesection]出力値[/REGION] ||
-| **Parent Piv Position** | ワールド空間における各親の回転軸情報を返します。子供は自分がアタッチされている親の回転軸情報を返します。 |
+| **Parent Piv Position** | ワールド空間の親の回転軸情報を返します。子供は自分がアタッチされている親の回転軸情報を返します。 |
| **Parent X Axis Vector** | 親の X 軸方向を向いている標準化されたベクターを返します。 |
-| **Child Piv Position** | 各子供に対するワールド内での回転位置情報を返します。親は値 (0,0,0) を返します。|
+| **Child Piv Position** | それぞれの子のワールド内での回転位置情報を返します。親は値 (0,0,0) を返します。|
| **Child X-Axis Vector** | 親の回転軸方向を向いているノーマライズ化されたベクターを返します。|
| **Object Pivot Point** | オブジェクトの回転軸の位置です。 |
| **Object Orientation** | オブジェクトの方向です。 |
@@ -59,7 +66,7 @@ Pivot Painter MAXScript によりモデルの UV に格納されているワー
### PivotPainter_PerObjectData
-Pivot Painter MAXScript によりモデルの UV に格納されているワールド位置と角度情報の処理と整理を行います。この特別な関数はオブジェクト別に機能するように特別に作成されています。
+オブジェクト別に機能する特殊な関数です。
| アイテム | 説明 |
| -------- | -------- |
@@ -75,18 +82,18 @@ Pivot Painter MAXScript によりモデルの UV に格納されているワー
### PivotPainter_PerObjectFoliageData
-Pivot Painter MAXScript によりモデルの UV に格納されているワールド位置と角度情報の処理と整理を行います。この関数は個別のフォリッジ オブジェクトと特別に機能するように作成されました。
+個別のフォリッジ オブジェクトとのみ機能する関数です。
| アイテム | 説明 |
| -------- | -------- |
| [REGION:tablesection]入力値[/REGION] ||
| **Wind Vector (Vector4)** | 風の方向と大きさに使う入力ベクターを受け取ります。 |
-| **Optimized for Foliage Placement (StaticBool)** | 「Optimize for Foliage Placement」オプションにチェックを付けてPivot Painter を使用してメッシュを処理した場合は *true* に設定されています。デフォルトは *false* です。|
-| **Optimized Vector (Vector3)** | エレメントの回転軸として使用するローカルベクターを入力します。*Optimized for Foliage Placement* 入力が *true* に設定されている場合のみ実行可能です。|
+| **Optimized for Foliage Placement (StaticBool)** | [Optimize for Foliage Placement (フォリッジの配置を最適化)] オプションにチェックを付けてPivot Painter を使用してメッシュを処理した場合は *true* に設定されています。デフォルトは *false* です。|
+| **Optimized Vector (Vector3)** | エレメントの回転軸として使用するローカル ベクターを入力します。*Optimized for Foliage Placement* 入力が *true* に設定されている場合のみ実行可能です。|
|[REGION:tablesection]出力値[/REGION] ||
| **Piv Position** | ワールド空間における各エレメントの回転軸情報を返します。|
-| **Element Rot Axis** | RotateAboutAxis ノードで使用される枝の回転軸を返します。葉は同じ情報を返します。注記:ローカルからワールド空間へ枝の X 軸に沿ってベクターを変形すると角度が見つかります。すると、風向きと変形されたベクターの間の外積が見つかります。
+| **Element Rot Axis** | RotateAboutAxis ノードで使用される枝の回転軸を返します。葉は同じ情報を返します。注意:ローカルからワールド空間へ枝の X 軸に沿ってベクターを変形すると角度が見つかります。すると、風向きと変形されたベクターの間の外積が見つかります。|
| **Element X-Axis** | 回転軸からメッシュの平均的な中心に向かって、エレメントの X 軸方向を向いている標準化されたベクターを返します。回転軸からメッシュの平均的な中心に向かいます。 |
| **Random Value Per Element** | 0-1 の範囲でエレメントごとにランダムな値を返します。|
| **Custom Alpha Values** | モデルの頂点アルファ チャネルに格納されているカスタム フォールオフ値を返します。|
@@ -101,31 +108,31 @@ Pivot Painter MAXScript によりモデルの UV に格納されているワー
### PivotPainter_TreeData
-Pivot Painter スクリプトによりモデルの UV に格納されているワールド位置と角度情報の処理と整理を行います。*tree* で始まる出力ではモデルの UV 情報が処理され、Pivot Painter MAXScript で格納されます。*Leaf* で始まる出力では UV 情報が処理され、スクリプトのオブジェクトごとの pivot painting セクションによって格納されます。
+*tree* で始まる出力ではモデルの UV 情報が処理され、Pivot Painter MAXScript で格納されます。*Leaf* で始まる出力では UV 情報が処理され、スクリプトのオブジェクトごとの pivot painting セクションによって格納されます。
| アイテム | 説明 |
| -------- | -------- |
| [REGION:tablesection]入力値[/REGION] ||
| **WindVector (Vector3)** | 風が吹くことになる方向です。|
-| **Max Dist for Parent Piv (Scalar)** | アセットのペイント中は MAXScript 「Max Dist for Parent Piv」の最大スピナーで使用された値と一致しなければなりません。 |
+| **Max Dist for Parent Piv (Scalar)** | アセットのペイント中は MAXScript "Max Dist for Parent Piv" の最大スピナーで使用された値と一致しなければなりません。 |
|[REGION:tablesection]出力値[/REGION] ||
| **Piv Position** | ワールド空間における各枝の回転軸情報を返します。葉は自分がアタッチされている枝の回転軸情報を返します。|
-| **Branch Wind Rot Axis** | RotateAboutAxis ノードで使用される枝の回転軸を返します。葉は同じ情報を返します。注記:ローカルからワールド空間へ枝の X 軸に沿ってベクターを変形すると角度が見つかります。すると、風向きと変形されたベクターの間の外積が見つかります。
+| **Branch Wind Rot Axis** | RotateAboutAxis ノードで使用される枝の回転軸を返します。葉は同じ情報を返します。注意:ローカルからワールド空間へ枝の X 軸に沿ってベクターをトランスフォームすると、アングルが分かります。そうすると、風向きとトランスフォームしたベクター間の外積が見つかります。|
| **Branch X-Axis Vector** | 枝の X 軸方向を向いている標準化されたベクターを返します。 カスタム ベクター算出に必要ない限り、フォリッジ アニメーションには通常必要ありません。 |
| **Branch Flow Grad** | 風の吹いている方向にグラディエント値を返します。 |
| **Branch Flow Grad 90 Deg** | 風に対して 90 度の角度でワールド空間を横切るグラディエント値を返します。|
| **Leaf Piv Position** | 各葉のワールド内での回転位置情報を返します。枝は値 (0,0,0) を返します。
-| **Leaf Rot Axis** | RotateAboutAxis ノードで使用される葉の回転軸を返します。枝は (0,0,0) を返します。注記:ローカルからワールド空間へ葉の X 軸に沿ってベクターを変形すると角度が分かります。すると、風向きと変形されたベクターの間の外積が見つかります。
+| **Leaf Rot Axis** | RotateAboutAxis ノードで使用される葉の回転軸を返します。枝は (0,0,0) を返します。注意:ローカルからワールド空間へ葉の X 軸に沿ってベクターを変形すると角度が分かります。そうすると、風向きとトランスフォームしたベクター間の外積が見つかります。|
| **Leaf X-Axis Vector** | 枝の X 軸方向を向いている標準化されたベクターを返します。 カスタム ベクター算出に必要ない限り、フォリッジ アニメーションには通常必要ありません。 |
-| **Leaf Mask** | 葉に使う白いマスクテクスチャを返します。枝は全て黒です。 |
+| **Leaf Mask** | 葉に使う白いマスク テクスチャを返します。枝は全て黒です。 |
| **Leaf Flow Grad** | 風の吹いている方向のグラディエント値を返します。
| **Leaf Flow Grad 90 Deg** | 風に対して 90 度の角度でワールド空間を横切るグラディエント値を返します。|
| **Object Pivot Point** | オブジェクトの回転軸の位置を返します。|
| **Object Orientation** | オブジェクトの方向を返します。|
| **オブジェクト回転軸** | オブジェクトの回転軸を返します。|
-| **Object Orientation** | オブジェクトのスケールを返します。|
-| **Object Flow Grad** |ワールド空間のオブジェクトレベルで風のベクター値と揃っているグラディエントです。|
-| **Object Flow Grad 90 deg** |ワールド空間のオブジェクトレベルで風のベクター値と揃っているグラディエントです。|
+| **Object Scale** | オブジェクトのスケールを返します。|
+| **Object Flow Grad** | ワールド空間のオブジェクトレベルで風のベクター値と揃っているグラディエントです。|
+| **Object Flow Grad 90 deg** | ワールド空間のオブジェクトレベルで風のベクター値と揃っているグラディエントです。|
| **WindStrength** | 風の強さを返します。風のベクター値の強度は風のベクター値から 0 へ距離を計算して割り出します。 |
| **Normalized Wind Vector** | 0-1 の間の大きさで標準化された風のベクター値を返します。|
| **WindSpeed** | 時間を乗算した風の速度です。|
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.CHN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.CHN.udn
new file mode 100644
index 000000000000..4a74c11ca9fe
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.CHN.udn
@@ -0,0 +1,184 @@
+INTSourceChangelist:0
+Availability:Public
+Crumbs:%ROOT%
+Title:Pivot Painter 2 Material Functions
+Description: Material Functions designed to enable utilization of the Pivot Painter 2 MAXScript in an Unreal shader network.
+Type:reference
+Version:4.16
+Parent:Engine/Rendering/Materials/Functions/Reference
+Related:Engine/Content/Tools/PivotPainter2
+Related:Engine/Content/Tools/PivotPainter2/Reference
+Order:1
+Topic-image:PivotPainter2MF_Topic.png
+Social-image:PP2MaterialFunction_Social.png
+Tags:Script
+Tags:Pivot Painter
+Tags:Materials
+
+
+[TOC (start:2 end:3)]
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 840
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 560
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Kcqm89nu0tw
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Pivot Painter 2 Material Functions enable you to tap into and decode useful model information stored by Pivot Painter 2 MAXScript using textures. Each texture output by the MAXScript can be referenced
+directly in a Material but without applying the proper steps after sampling the texture the values would be incorrect. These Material Functions found in this page make it easy to quickly decode
+the texture information.
+
+A lot of the Material Functions included in this page will enable you to use the Pivot Painter 2 pivot and rotational information to do specific effects via your Material, however, one of
+the greater benefits of Pivot Painter 2 is its ease of use with the provided sample shader for foliage; **PivotPainter2FoliageShader**. This specific Material Function enables you to
+quickly setup your model and its Pivot Painter 2 generated textures with your foliage to quickly create wind and turbulence without having to create your own Material network.
+
+
+
+
+## Pivot Painter 2 Functions
+
+The following is a list of all the functions related to Pivot Painter 2.
+
+
+### PivotPainter2FoliageShader
+
+
+
+This Material Function contains texture and numeric parameters that should be altered to fit your particular asset.
+
+Also, for this particular function, it is suggested that you create a Material Instance, where the Material Function's parameters will be accessible to make changes to your Pivot Painter 2 shader.
+
+[REGION:lightbox]
+[(w:300)](PP2FoliageShaderMaterialInstanceParams.png)
+[/REGION]
+[REGION:caption]
+_Click image for full size view._
+[/REGION]
+
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Material Attributes** | Make sure that you are using tangent space normals within your material and that the **Use Tangent Space Normals** option is unchecked. The normals will be transformed to world space internally. |
+| **Pivot Painter Texture Coordinate** | Takes an input to reference which texture coordinate UV is being used. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Final Material with World Space Normals** | This output material attribute replaces the input material attribute's world position offset and normal output if **Animate Level "X" Normals** is enabled in the Material Instance. [REGION:note] Updating the model's normals is fairly expensive and can be done selectively. [/REGION]|
+| **Modified World Space Normal Component** | This output returns the modified asset normals by itself. |
+| **World Position Offset Component** | This output returns the new world position offset values. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_CalculateMeshElementIndex
+
+
+
+This Material Function pulls the model's Element ID from the model's UVs.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Data Texture Dimensions** | Use the texture property node to gather the texture's dimensions. |
+| **Pivot Painter UV Coordinates** | Pulls the model elements element ID from the model's UVs. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Index** | This output pulls the model element ID from the model's UVs. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_Decode8BitAlphaAxisExtent
+
+
+
+This Material Function rescales 8-bit axis extent texture data information from Pivot Painter 2 MAXScript into world space data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **8 Bit Alpha Extent Value** | Insert a Pivot Painter 2 alpha texture component from a texture with an 8-bit alpha extent value. This can be generated by selecting the appropriate option from the alpha output drop-down option in the Pivot Painter 2 MAXScript under the Render Options. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Rescaled Extent** | The output value represents the chosen models' length along a given axis starting at the object's pivot points. The return value can represent values between 8 to 2048 in increments of 8. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_DecodeAxisVector
+
+
+
+This Material Function transforms Pivot Painter 2's local space vector information into world space vectors.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Axis Vector RGB** | Input RGB vector information from a Pivot Painter 2 texture that output those values. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | The input axis vector information has now been transformed to world space. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_DecodePosition
+
+
+
+This Material Function transforms Pivot Painter 2's local space information into world position information.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+|** Position RGB** | Insert the RGB values of a texture that contain Pivot Painter 2 **Pivot Position (16-bit)** data. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | The output value is the world space location of each model's pivot point position as it was captured by Pivot Painter 2. |
+[/REGION]
+
+### ms_PivotPainter2_ReturnParentTextureInfo
+
+
+
+This Material Function reads a parent sub-object's texture data using Pivot Painter 2's **Parent Index (Integer as Float)** texture data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Parent Index As Float** | This input assumes that the data is in float form. If you're reading from a parent index "int as float" texture, first decode the asset using the Material Function **ms_PivotPainter2_UnpackIntegerAsFloat**. |
+| **Texture Dimensions** | The current dimensions of the texture. |
+| **Current Index** | Providing this value is only necessary if you would like to determine if this asset is a child of another component. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Parent UVs** | This outputs the UV coordinates for the element's parent element pixel location. |
+| **Is Child?** | This returns 1 if the object is a child of another object. It returns 0 otherwise. This requires that the current index to be entered in the **Current Index** input. The current index can be found by using **ms_PivotPainter2_CalculateMeshElementIndex** if you are referencing your textures using the model's UVs. |
+[/REGION]
+
+
+### ms_PivotPainter2_UnpackIntegerAsFloat
+
+
+
+This Material Function decodes Pivot Painter 2's **Integer as Float** texture data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Integer as Float** | This decodes the integer data for conversion to float data. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | This outputs Pivot Painter integer as float data. |
+[/REGION]
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.INT.udn
new file mode 100644
index 000000000000..9b9b3dcd49a8
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.INT.udn
@@ -0,0 +1,183 @@
+Availability:Public
+Crumbs:%ROOT%
+Title:Pivot Painter 2 Material Functions
+Description: Material Functions designed to enable utilization of the Pivot Painter 2 MAXScript in an Unreal shader network.
+Type:reference
+Version:4.16
+Parent:Engine/Rendering/Materials/Functions/Reference
+Related:Engine/Content/Tools/PivotPainter2
+Related:Engine/Content/Tools/PivotPainter2/Reference
+Order:1
+Topic-image:PivotPainter2MF_Topic.png
+Social-image:PP2MaterialFunction_Social.png
+Tags:Script
+Tags:Pivot Painter
+Tags:Materials
+
+
+[TOC (start:2 end:3)]
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 840
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 560
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Kcqm89nu0tw
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Pivot Painter 2 Material Functions enable you to tap into and decode useful model information stored by Pivot Painter 2 MAXScript using textures. Each texture output by the MAXScript can be referenced
+directly in a Material but without applying the proper steps after sampling the texture the values would be incorrect. These Material Functions found in this page make it easy to quickly decode
+the texture information.
+
+A lot of the Material Functions included in this page will enable you to use the Pivot Painter 2 pivot and rotational information to do specific effects via your Material, however, one of
+the greater benefits of Pivot Painter 2 is its ease of use with the provided sample shader for foliage; **PivotPainter2FoliageShader**. This specific Material Function enables you to
+quickly setup your model and its Pivot Painter 2 generated textures with your foliage to quickly create wind and turbulence without having to create your own Material network.
+
+
+
+
+## Pivot Painter 2 Functions
+
+The following is a list of all the functions related to Pivot Painter 2.
+
+
+### PivotPainter2FoliageShader
+
+
+
+This Material Function contains texture and numeric parameters that should be altered to fit your particular asset.
+
+Also, for this particular function, it is suggested that you create a Material Instance, where the Material Function's parameters will be accessible to make changes to your Pivot Painter 2 shader.
+
+[REGION:lightbox]
+[(w:300)](PP2FoliageShaderMaterialInstanceParams.png)
+[/REGION]
+[REGION:caption]
+_Click image for full size view._
+[/REGION]
+
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Material Attributes** | Make sure that you are using tangent space normals within your material and that the **Use Tangent Space Normals** option is unchecked. The normals will be transformed to world space internally. |
+| **Pivot Painter Texture Coordinate** | Takes an input to reference which texture coordinate UV is being used. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Final Material with World Space Normals** | This output material attribute replaces the input material attribute's world position offset and normal output if **Animate Level "X" Normals** is enabled in the Material Instance. [REGION:note] Updating the model's normals is fairly expensive and can be done selectively. [/REGION]|
+| **Modified World Space Normal Component** | This output returns the modified asset normals by itself. |
+| **World Position Offset Component** | This output returns the new world position offset values. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_CalculateMeshElementIndex
+
+
+
+This Material Function pulls the model's Element ID from the model's UVs.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Data Texture Dimensions** | Use the texture property node to gather the texture's dimensions. |
+| **Pivot Painter UV Coordinates** | Pulls the model elements element ID from the model's UVs. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Index** | This output pulls the model element ID from the model's UVs. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_Decode8BitAlphaAxisExtent
+
+
+
+This Material Function rescales 8-bit axis extent texture data information from Pivot Painter 2 MAXScript into world space data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **8 Bit Alpha Extent Value** | Insert a Pivot Painter 2 alpha texture component from a texture with an 8-bit alpha extent value. This can be generated by selecting the appropriate option from the alpha output drop-down option in the Pivot Painter 2 MAXScript under the Render Options. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Rescaled Extent** | The output value represents the chosen models' length along a given axis starting at the object's pivot points. The return value can represent values between 8 to 2048 in increments of 8. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_DecodeAxisVector
+
+
+
+This Material Function transforms Pivot Painter 2's local space vector information into world space vectors.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Axis Vector RGB** | Input RGB vector information from a Pivot Painter 2 texture that output those values. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | The input axis vector information has now been transformed to world space. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_DecodePosition
+
+
+
+This Material Function transforms Pivot Painter 2's local space information into world position information.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+|** Position RGB** | Insert the RGB values of a texture that contain Pivot Painter 2 **Pivot Position (16-bit)** data. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | The output value is the world space location of each model's pivot point position as it was captured by Pivot Painter 2. |
+[/REGION]
+
+### ms_PivotPainter2_ReturnParentTextureInfo
+
+
+
+This Material Function reads a parent sub-object's texture data using Pivot Painter 2's **Parent Index (Integer as Float)** texture data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Parent Index As Float** | This input assumes that the data is in float form. If you're reading from a parent index "int as float" texture, first decode the asset using the Material Function **ms_PivotPainter2_UnpackIntegerAsFloat**. |
+| **Texture Dimensions** | The current dimensions of the texture. |
+| **Current Index** | Providing this value is only necessary if you would like to determine if this asset is a child of another component. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Parent UVs** | This outputs the UV coordinates for the element's parent element pixel location. |
+| **Is Child?** | This returns 1 if the object is a child of another object. It returns 0 otherwise. This requires that the current index to be entered in the **Current Index** input. The current index can be found by using **ms_PivotPainter2_CalculateMeshElementIndex** if you are referencing your textures using the model's UVs. |
+[/REGION]
+
+
+### ms_PivotPainter2_UnpackIntegerAsFloat
+
+
+
+This Material Function decodes Pivot Painter 2's **Integer as Float** texture data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Integer as Float** | This decodes the integer data for conversion to float data. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | This outputs Pivot Painter integer as float data. |
+[/REGION]
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.JPN.udn
new file mode 100644
index 000000000000..1d9751a51a77
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.JPN.udn
@@ -0,0 +1,184 @@
+INTSourceChangelist:3472589
+Availability:Public
+Crumbs:%ROOT%
+Title:Pivot Painter 2 マテリアル関数
+Description:マテリアル関数は、アンリアル シェーダー ネットワークでの Pivot Painter 2 MAXScript の使用を可能にします。
+Type:reference
+Version:4.16
+Parent:Engine/Rendering/Materials/Functions/Reference
+Related:Engine/Content/Tools/PivotPainter2
+Related:Engine/Content/Tools/PivotPainter2/Reference
+Order:1
+Topic-image:PivotPainter2MF_Topic.png
+Social-image:PP2MaterialFunction_Social.png
+Tags:Script
+Tags:Pivot Painter
+Tags:Materials
+
+
+[TOC (start:2 end:3)]
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 840
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 560
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Kcqm89nu0tw
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Pivot Painter 2 マテリアル関数は、Pivot Painter 2 MAXScript に格納されている便利なモデル情報のテキストによる利用およびデコードを可能にします。MAXScript で出力された各テキストはマテリアル内での直接参照が可能です。
+ただし、テクスチャのサンプリング後に正しいステップが適用されないと、正確な値は出ません。このページでは、テクスチャ情報を速く簡単にデコードできる
+マテリアル関数を紹介します。
+
+以下のマテリアル関数のほとんどは、Pivot Painter 2 ピボットと回転情報を使って、マテリアルを使って指定したエフェクトを実行します。
+Pivot Painter 2 の長所の 1 つは、フォリッジ用に提供されているサンプル シェーダー **PivotPainter2FoliageShader** が使いやすいことです。この特別な関数は、モデルを迅速にセットアップし、
+専用のネットワークを作成しなくても、モデルの Pivot Painter 2 がフォリッジを使って生成したテクスチャを使って、風と揺れを簡単に作成することができます。
+
+
+
+
+## Pivot Painter 2 関数
+
+以下は Pivot Painter 2 に関係するすべての関数です。
+
+
+### PivotPainter2FoliageShader
+
+
+
+このマテリアル関数には、特定のアセットにフィットするように変更されたテクスチャおよび数値のパラメータが含まれています。
+
+この関数の場合、マテリアル インスタンスを作成することを推奨します。マテリアル関数のパラメータにアクセスして Pivot Painter 2 シェーダーの変更ができます。
+
+[REGION:lightbox]
+[(w:300)](PP2FoliageShaderMaterialInstanceParams.png)
+[/REGION]
+[REGION:caption]
+_画像をクリックしてフルサイズで表示_
+[/REGION]
+
+
+[REGION:raw]
+| アイテム | 説明 |
+| -------- | -------- |
+| [REGION:tablesection]入力値[/REGION] ||
+| **Material Attributes** | マテリアル内でタンジェント空間を使用していること、**Use Tangent Space Normals** 出力のチェックが外れていることを確認してください。法線は最初にワールド空間へ変換されます。 |
+| **Pivot Painter Texture Coordinate** | テクスチャ座標 UV が使用されているリファレンスへの入力を受け取ります。 |
+|[REGION:tablesection]出力値[/REGION] ||
+| **Final Material with World Space Normals** | マテリアル インスタンスで **[Animate Level "X" Normals]** が有効の場合、入力マテリアルのワールド位置オフセットと法線出力となる属性です。[REGION:note] モデルの法線のアップデートはかなり負荷が高いので、必要性を慎重に検討してください。 [/REGION]|
+| **Modified World Space Normal Component** | それ自体が修正したアセット法線を出力します。 |
+| **World Position Offset Component** | 新規のワールド位置オフセット値を出力します。 |
+[/REGION]
+
+
+
+### ms_PivotPainter2_CalculateMeshElementIndex
+
+
+
+このマテリアル関数はモデの UV からモデルのエレメント ID を引き出します。
+
+[REGION:raw]
+| アイテム | 説明 |
+| -------- | -------- |
+| [REGION:tablesection]入力値[/REGION] ||
+| **Data Texture Dimensions** | テクスチャ プロパティ ノードを使ってテクスチャのディメンションを集めます。 |
+| **Pivot Painter UV Coordinates** | モデルの UV からモデル エレメント ID を引き出します。 |
+|[REGION:tablesection]出力値[/REGION] ||
+| **Index** | モデルの UV からモデル エレメント ID を引き出す出力です。 |
+[/REGION]
+
+
+
+### ms_PivotPainter2_Decode8BitAlphaAxisExtent
+
+
+
+8 ビットの軸拡張テクスチャ データ情報を Pivot Painter 2 MAXScript からワールド空間データへ再スケールします。
+
+[REGION:raw]
+| アイテム | 説明 |
+| -------- | -------- |
+| [REGION:tablesection]入力値[/REGION] ||
+| **8 Bit Alpha Extent Value** | テクスチャから 8 ビットのアルファ拡張値で Pivot Painter 2 アルファ テクスチャ コンポーネントを挿入します。[Render] オプションにある [Pivot Painter 2] のアルファ出力ドロップダウン オプションから適切なオプションを選択すると生成できます。 |
+|[REGION:tablesection]出力値[/REGION] ||
+| **Rescaled Extent** | 出力値は、オブジェクトの回転軸で開始している軸に平行の選択したモデルの長さを表します。戻り値は 8 から 2048 の間で 8 単位で表すことができます。 |
+[/REGION]
+
+
+
+### ms_PivotPainter2_DecodeAxisVector
+
+
+
+このマテリアル関数は Pivot Painter 2 のローカル空間ベクター情報をワールド空間ベクターに変換します。
+
+[REGION:raw]
+| アイテム | 説明 |
+| -------- | -------- |
+| [REGION:tablesection]入力値[/REGION] ||
+| **Axis Vector RGB** | これらの値を出力する Pivot Painter 2 テクスチャからの RGB ベクター情報を入力します。 |
+|[REGION:tablesection]出力値[/REGION] ||
+| **Result** | 入力軸ベクター情報がワールド空間に変換されました。 |
+[/REGION]
+
+
+
+### ms_PivotPainter2_DecodePosition
+
+
+
+このマテリアル関数は Pivot Painter 2 のローカル空間情報をワールド位置情報に変換します。
+
+[REGION:raw]
+| アイテム | 説明 |
+| -------- | -------- |
+| [REGION:tablesection]入力値[/REGION] ||
+|** Position RGB** | Pivot Painter 2 **Pivot Position (16-bit)** データを含むテクスチャの RGB 値を挿入します。 |
+|[REGION:tablesection]出力値[/REGION] ||
+| **Result** | 出力値は、Pivot Painter 2 によるキャプチャ時の各モデルの軸ポイント位置のワールド空間位置です。 |
+[/REGION]
+
+### ms_PivotPainter2_ReturnParentTextureInfo
+
+
+
+このマテリアル関数は、Pivot Painter 2 の **Parent Index (Integer as Float)** テクスチャ データを使って親のサブ オブジェクトのテクスチャ データを読み取ります。
+
+[REGION:raw]
+| アイテム | 説明 |
+| -------- | -------- |
+| [REGION:tablesection]入力値[/REGION] ||
+| **Parent Index As Float** | この入力は、データが float 形式であることを前提とします。親インデックス "int as float" テクスチャから読み取る場合は、まずマテリアル関数 **ms_PivotPainter2_UnpackIntegerAsFloat** を使ってアセットをデコードします。 |
+| **Texture Dimensions** | テクスチャの現在のディメンションです。 |
+| **Current Index** | アセットが別のコポーネントの子かどうかを判断する場合のみこの値が必要となります。 |
+|[REGION:tablesection]出力値[/REGION] ||
+| **Parent UVs** | エレメントの親エレメント ピクセル位置の UV 座標を出力します。 |
+| **Is Child?** | 別のオブジェクトの子の場合は 1 を返します。そうでない場合は 0 を返します。これには、**Current Index** 入力に現在のインデックスを入力する必要があります。モデルの UV でテクスチャ参照している場合、現在のインデックスは **ms_PivotPainter2_CalculateMeshElementIndex** で検索することができます。 |
+[/REGION]
+
+
+### ms_PivotPainter2_UnpackIntegerAsFloat
+
+
+
+このマテリアル関数は、Pivot Painter 2 の **Integer as Float** テクスチャ データをデコードします。
+
+[REGION:raw]
+| アイテム | 説明 |
+| -------- | -------- |
+| [REGION:tablesection]入力値[/REGION] ||
+| **Integer as Float** | float 型データへ変換するために integer 型データをデコードします。 |
+|[REGION:tablesection]出力値[/REGION] ||
+| **Result** | float 型データとして Pivot Painter integer を出力します。 |
+[/REGION]
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.KOR.udn
new file mode 100644
index 000000000000..4a74c11ca9fe
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/Functions/Reference/PivotPainter2/PivotPainter2.KOR.udn
@@ -0,0 +1,184 @@
+INTSourceChangelist:0
+Availability:Public
+Crumbs:%ROOT%
+Title:Pivot Painter 2 Material Functions
+Description: Material Functions designed to enable utilization of the Pivot Painter 2 MAXScript in an Unreal shader network.
+Type:reference
+Version:4.16
+Parent:Engine/Rendering/Materials/Functions/Reference
+Related:Engine/Content/Tools/PivotPainter2
+Related:Engine/Content/Tools/PivotPainter2/Reference
+Order:1
+Topic-image:PivotPainter2MF_Topic.png
+Social-image:PP2MaterialFunction_Social.png
+Tags:Script
+Tags:Pivot Painter
+Tags:Materials
+
+
+[TOC (start:2 end:3)]
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 840
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 560
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Kcqm89nu0tw
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Pivot Painter 2 Material Functions enable you to tap into and decode useful model information stored by Pivot Painter 2 MAXScript using textures. Each texture output by the MAXScript can be referenced
+directly in a Material but without applying the proper steps after sampling the texture the values would be incorrect. These Material Functions found in this page make it easy to quickly decode
+the texture information.
+
+A lot of the Material Functions included in this page will enable you to use the Pivot Painter 2 pivot and rotational information to do specific effects via your Material, however, one of
+the greater benefits of Pivot Painter 2 is its ease of use with the provided sample shader for foliage; **PivotPainter2FoliageShader**. This specific Material Function enables you to
+quickly setup your model and its Pivot Painter 2 generated textures with your foliage to quickly create wind and turbulence without having to create your own Material network.
+
+
+
+
+## Pivot Painter 2 Functions
+
+The following is a list of all the functions related to Pivot Painter 2.
+
+
+### PivotPainter2FoliageShader
+
+
+
+This Material Function contains texture and numeric parameters that should be altered to fit your particular asset.
+
+Also, for this particular function, it is suggested that you create a Material Instance, where the Material Function's parameters will be accessible to make changes to your Pivot Painter 2 shader.
+
+[REGION:lightbox]
+[(w:300)](PP2FoliageShaderMaterialInstanceParams.png)
+[/REGION]
+[REGION:caption]
+_Click image for full size view._
+[/REGION]
+
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Material Attributes** | Make sure that you are using tangent space normals within your material and that the **Use Tangent Space Normals** option is unchecked. The normals will be transformed to world space internally. |
+| **Pivot Painter Texture Coordinate** | Takes an input to reference which texture coordinate UV is being used. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Final Material with World Space Normals** | This output material attribute replaces the input material attribute's world position offset and normal output if **Animate Level "X" Normals** is enabled in the Material Instance. [REGION:note] Updating the model's normals is fairly expensive and can be done selectively. [/REGION]|
+| **Modified World Space Normal Component** | This output returns the modified asset normals by itself. |
+| **World Position Offset Component** | This output returns the new world position offset values. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_CalculateMeshElementIndex
+
+
+
+This Material Function pulls the model's Element ID from the model's UVs.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Data Texture Dimensions** | Use the texture property node to gather the texture's dimensions. |
+| **Pivot Painter UV Coordinates** | Pulls the model elements element ID from the model's UVs. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Index** | This output pulls the model element ID from the model's UVs. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_Decode8BitAlphaAxisExtent
+
+
+
+This Material Function rescales 8-bit axis extent texture data information from Pivot Painter 2 MAXScript into world space data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **8 Bit Alpha Extent Value** | Insert a Pivot Painter 2 alpha texture component from a texture with an 8-bit alpha extent value. This can be generated by selecting the appropriate option from the alpha output drop-down option in the Pivot Painter 2 MAXScript under the Render Options. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Rescaled Extent** | The output value represents the chosen models' length along a given axis starting at the object's pivot points. The return value can represent values between 8 to 2048 in increments of 8. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_DecodeAxisVector
+
+
+
+This Material Function transforms Pivot Painter 2's local space vector information into world space vectors.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Axis Vector RGB** | Input RGB vector information from a Pivot Painter 2 texture that output those values. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | The input axis vector information has now been transformed to world space. |
+[/REGION]
+
+
+
+### ms_PivotPainter2_DecodePosition
+
+
+
+This Material Function transforms Pivot Painter 2's local space information into world position information.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+|** Position RGB** | Insert the RGB values of a texture that contain Pivot Painter 2 **Pivot Position (16-bit)** data. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | The output value is the world space location of each model's pivot point position as it was captured by Pivot Painter 2. |
+[/REGION]
+
+### ms_PivotPainter2_ReturnParentTextureInfo
+
+
+
+This Material Function reads a parent sub-object's texture data using Pivot Painter 2's **Parent Index (Integer as Float)** texture data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Parent Index As Float** | This input assumes that the data is in float form. If you're reading from a parent index "int as float" texture, first decode the asset using the Material Function **ms_PivotPainter2_UnpackIntegerAsFloat**. |
+| **Texture Dimensions** | The current dimensions of the texture. |
+| **Current Index** | Providing this value is only necessary if you would like to determine if this asset is a child of another component. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Parent UVs** | This outputs the UV coordinates for the element's parent element pixel location. |
+| **Is Child?** | This returns 1 if the object is a child of another object. It returns 0 otherwise. This requires that the current index to be entered in the **Current Index** input. The current index can be found by using **ms_PivotPainter2_CalculateMeshElementIndex** if you are referencing your textures using the model's UVs. |
+[/REGION]
+
+
+### ms_PivotPainter2_UnpackIntegerAsFloat
+
+
+
+This Material Function decodes Pivot Painter 2's **Integer as Float** texture data.
+
+[REGION:raw]
+| Item | Description |
+| -------- | -------- |
+|[REGION:tablesection]Inputs[/REGION] ||
+| **Integer as Float** | This decodes the integer data for conversion to float data. |
+|[REGION:tablesection]Outputs[/REGION] ||
+| **Result** | This outputs Pivot Painter integer as float data. |
+[/REGION]
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.INT.udn
index 3a9dace27cc6..164dcc582319 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.INT.udn
@@ -7,7 +7,7 @@ prereq: Engine/Rendering/Materials/MaterialInputs
prereq: Engine/Rendering/Materials/Editor
prereq: Engine/Rendering/Materials/IntroductionToMaterials
prereq: Engine/Rendering/Materials/MaterialProperties
-Version: 4.9
+Version: 4.15
parent:Engine/Rendering/Materials
order:3
type:landing
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.JPN.udn
index a430ed6f1018..e4ed5155b99d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.JPN.udn
@@ -1,41 +1,26 @@
-INTSourceChangelist:2690368
+INTSourceChangelist:3377213
Availability:Public
-Title:マテリアル - 操作ガイド
+Title:マテリアルの操作ガイド
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials
-Description:UE4 でマテリアル エディタの様々な機能を使用するための操作ガイド
-Related:Engine/Rendering/Materials/Editor/Interface
-Related:Engine/Rendering/Materials/MaterialInputs
-Related:Engine/Rendering/Materials/Editor
-Related:Engine/Rendering/Materials/IntroductionToMaterials
-Related:Engine/Rendering/Materials/MaterialProperties
-Version:4.9
+Description:UE4 マテリアル エディタの様々な特性を使いこなすためのガイド
+prereq:Engine/Rendering/Materials/Editor/Interface
+prereq:Engine/Rendering/Materials/MaterialInputs
+prereq:Engine/Rendering/Materials/Editor
+prereq:Engine/Rendering/Materials/IntroductionToMaterials
+prereq:Engine/Rendering/Materials/MaterialProperties
+Version:4.15
+parent:Engine/Rendering/Materials
+order:3
+type:landing
+topic-image:Materail_How_To.png
+tags:Materials
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/Materials/HowTo:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/Materials/HowTo:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/Materials/HowTo]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+
-
-
-以下の操作ガイドでは、UE4 のマテリアル エディタを十分に活用する方法について説明します。
+プロジェクトにおけるマテリアルの作成および使用に役立つ幅広いトピックを 1 つずつ説明しします。
+
+## はじめよう
+[DIR(output:"fancy" parent:"Engine/Rendering/Materials/HowTo" skill_level:"Beginner")]
+
+## マテリアル応用編
+
+[DIR(output:"fancy" parent:"Engine/Rendering/Materials/HowTo" skill_level:"Intermediate")]
+
+## まとめ
+
+[DIR(output:"fancy" parent:"Engine/Rendering/Materials/HowTo" skill_level:"Advanced")]
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.KOR.udn
index a82986c99724..c1c82eeb8251 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MaterialHowTo.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3242329
+INTSourceChangelist:3377213
Availability: Public
Title:머티리얼 - 비법
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials
@@ -8,7 +8,7 @@ prereq: Engine/Rendering/Materials/MaterialInputs
prereq: Engine/Rendering/Materials/Editor
prereq: Engine/Rendering/Materials/IntroductionToMaterials
prereq: Engine/Rendering/Materials/MaterialProperties
-Version: 4.9
+Version: 4.15
parent:Engine/Rendering/Materials
order:3
type:landing
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.INT.udn
deleted file mode 100644
index 781e7450a896..000000000000
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.INT.udn
+++ /dev/null
@@ -1,166 +0,0 @@
-Availability:Docs
-Title: Using Mesh Decals
-Description: This how to will cover setting up and using Mesh Decals.
-Crumbs:
-parent: Engine/Rendering/Materials/HowTo
-type: reference
-tags:Materials
-version:4.15
-skilllevel:intermediate
-
-[TOC (start:2 end:4)]
-
-
-Unreal Engine 4 now has support for Mesh Decals which enables you to use the properties of Deferred Decals on separate surface geometry
-for added detail to your Static and Skeletal Meshes. Because Deferred Decals rely on projection, you are limited to mostly planar surface
-details that shear and distort when not aligned with the surface it’s projecting onto. Mesh Decals afford you decals that do not follow
-a simple projection and instead can be used with geometry that wraps around edges, used with spline meshes, and enhance the look of your characters.
-
-
-## Mesh Decal VS Masked Material
-
-Mesh Decals are a mix of translucent blend mode and deferred decals in that they do not render to depth but do update the GBuffer or
-DBuffer after the opaque geometry has been rendered. In contrast to using a masked material, there is no cost for EarlyZ pass, you don't get shadows or
-proper occlusion, but with the trade-off, you get the soft transitions in the material.
-
-Mesh Decals provide several differences to Deferred Decal Actors that you should be aware of:
-
-* There are fewer draw calls since large Deferred Decals often do front and back facing draw calls.
-* It's quite faster since there are fewer pixels covered and flat back facing decals cover 0 pixels.
-* You have the ability to do more complex projections since you can use a custom UV.
-* You have the ability to have properly normal mapped decals wrapping around surfaces or stretching along splines.
-
-[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:400)
- [/PARAM]
- [PARAM:after]
- (w:400)
- [/PARAM]
-[/OBJECT]
-
-
-## Authoring Content
-
-Authoring content for use as Mesh Decal geometry is in-line with any model creation. Since this geometry will not rely on projection like a Deferred Decal Actor, the geometry
-needs only to stay in front of the surface you want to affect. With this in mind, the decal geometry should "hug" the underlying surface, but it does not have to match it
-very closely because there is already a small depth bias that is hard-coded to account for this small offset. Also, using a bit of geometry that feathers out from the decal can be good
-to create the soft transitions for the decal that you cannot attain with a masked material.
-
-
-[REGION:imagetable]
-| (h:450) | (h:450) |
-| --- | --- |
-| Base Mesh and Decal Geometry (Isolated) | Composited Mesh |
-[/REGION]
-
-
-Another thing to keep in mind when developing your content is that Mesh Decals can be a challenge with Levels of Detail (LOD) or long view distances when there is limited depth buffer
-precision because geometry will intersect or not match up as intended. However, you can either change the mesh to account for this in most cases or you can use World Position Offset in
-your material to adjust the offset without having to return to your modeling application.
-
-(w:500)
-
-[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:500)
- [/PARAM]
- [PARAM:after]
- (w:500)
- [/PARAM]
-[/OBJECT]
-
-In this example, the decal geometry is close enough to the base mesh that the depth cannot account the offset. Using a small negative offset value pushes the geometry out just enough that it
-doesn't intersect with the underlying geometry.
-
-## Limitations
-
-* There is no artist specified sort order.
-* Tangent Space support is not yet implemented.
-* Shader Overdraw/Overdraw functionality is missing.
-* There is no easily adjustable DepthBias. Currently, you have to use an offset in the mesh from the surface it's above, or control with World Position Offset in the Material.
-* Sort by depth to avoid artifacts when there are many layers overlapping.
-* Material Editor Preview is not visible.
-* Material Editor does not currently show the correct instructions count since it assumes base pass usage.
-* DBuffer and non-DBuffer use the same container.
-* Parallel Rendering isn't yet hooked up. There are some CPU savings if this feature is used extensively.
-
-## Using Mesh Decal Materials
-
-In the following steps, we will enable Dbuffer Decals for our project so that we can take advantage of lighting features for our decal material and we'll create a basic
-Deferred Decal Material that can be applied to our Static Mesh.
-
-### Required Files
-
-In order to follow along with this How-To, you will need to download, extract, and then import to UE4 the following FBX and Texture files. If you are unfamiliar with how to do this please
-check out [How to Import Static Meshes Guide](Engine/Content/ImportingContent/ImportingMeshes) and [How to Import Texture Guide](Engine/Content/ImportingContent/ImportingTextures) for more
-information about how to go about doing this.
-
-**[Required Textures Download](MeshDecalAssets.zip)** (Right - Click Save as)
-
-
-### Enabling DBuffer Decals for your Project
-
-1. In the **Edit** menu, click on **Project Settings** to view the Unreal Editor options.
-
- (w:250)
-1. Under the **Engine** heading, select the **Rendering** section and locate the **Lighting** category that contains various Lighting options.
-
- [REGION:lightbox]
- [(w:700)](ProjectSettings.png)
- [/REGION]
-1. Now, you can toggle the **DBuffer Decals** option to use lighting features with your Deferred Decals.
-
- (w:350)
-
-1. Before you'll be able to use this feature, you'll first need to **Restart the Editor**.
-
- (w:550)
-
-
-### Creating a Basic Deferred Decal
-
-1. In the **Content Browser**, select the **Add New** button and choose the option for **Material** to create a new Material. Make sure you give your Material a name that will be easy to locate later.
-For the purpose of this how-to, I have named mine "M_MeshDecal."
-
- (w:300)
-
-1. Now, select your **Material** and double-click it to open it. Once the Material Editor opens, start by setting the following attributes in the **Details** panel so that it can be used as a Deferred Decal.
-
- * **Material Domain:** Deferred Decal
- * **Blend Mode:** Translucent
- * **Decal Blend Mode:** DBuffer Translucent Color, Normal, Roughness
-
-1. Next, you'll need to setup your material using the textures in the **Required Files** section of this page. There are three textures in the .zip file that we will need for this step; a diffuse, mask, and normal texture.
-Once you've imported these textures, select them from the **Content Browser** and drag them into the Material Editor Graph.
-
- (w:400)
-
- Now, plug in the outputs of the Texture Sample nodes into their corresponding inputs on the Main Material node. For the Mask texture,"T_MeshDecalDamage_M", be sure to use the **Blue Channel** output when
- plugging into the Opacity Mask input. This will make sure the blue values in the texture are used as the maskfor what should be visible.
-
- (w:400)
-1. Right-click in the Material Graph and type in "Constant" or hold down the "1" key and click in the graph to add a **Constant** value node. Plug this into your **Roughness** input and give it a default value of **0.7**.
-
- (w:400)
-1. Before finishing up, we'll need a way to control the offset of the decal geometry from the base mesh to prevent or lessen any artifacts that can occur due to depth precision. Add the following nodes to your Material Graph
-and plug the output of the **Multiply** node into the **World Position Offset** input of the Main Material node.
-
- (w:400)
-
- Once you've done this, you're Material Graph should look similar to this:
-
- [REGION:lightbox]
- [(w:400)](FinalMaterialGraph.png)
- [/REGION]
-1. With your Deferred Decal Material complete, place the Static Mesh "SM_MeshDecal", which is included in the Required Files .zip, into your level and apply the Material **M_MeshDecal** to Element 0
-of the Static Mesh's Material slots. For the Base Mesh's Material you can assign any material or even just a basic color to Element 1 for the purposes of this demonstration. You should now have something
-that looks similar to our example below.
-
- (w:400)
-
-
-## End Result
-
-Now that you've set up and seen how to create your own Materials to use with a Mesh Decal, you should be confident in authoring your own assets in your modeling applications and creating your own Materials that take
-full advantage of lighting for use with Mesh Decals applied.
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.JPN.udn
deleted file mode 100644
index 7c5ab2407a17..000000000000
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.JPN.udn
+++ /dev/null
@@ -1,167 +0,0 @@
-INTSourceChangelist:3346002
-Availability:Docs
-Title:メッシュ デカールの使用方法
-Description:メッシュ デカールの設定方法および使用方法について説明します。
-Crumbs:
-parent:Engine/Rendering/Materials/HowTo
-type: reference
-tags:Materials
-version:4.15
-skilllevel:intermediate
-
-[TOC (start:2 end:4)]
-
-
-アンリアル エンジン 4 でメッシュ デカールがサポートされるようになりました。
-これにより、スタティクメッシュおよびスケルタルメッシュに追加した詳細に対して、別のサーフェス ジオメトリ上でディファード デカールのプロパティが使用できます。ディファード デカールはプロジェクションに依存するので、
-投影先のサーフェスにそろっていない場合は、シアおよび変形が生じる平面サーフェイスの詳細にほぼ限られます。メッシュ デカールは、シンプルなプロジェクションを追わずに
-エッジの周囲をラップするジオメトリやスプライン メッシュと一緒に使用し、キャラクターの外見を美しくすることができます。
-
-
-## メッシュ デカールとマスク付きマテリアル
-
-メッシュ デカールは、透過ブレンド モードとディファード デカールを混ぜたものです。
-不透明なジオメトリがレンダリングされた後、深部まではレンダリングせず、GBuffer または DBuffer の更新を行います。マスク付きマテリアルの使用とは対照的に、EarlyZ pass の負荷はかからず、
-シャドウあるいは適切なオクルージョンは得ませんが、その代わりマテリアルがソフトに変形します。
-
-メッシュ デカールは、Deferred Decal アクタとは以下の点で異なります。
-
-* 大きいディファード デカールは、正面向きと後ろ向きの描画コールをするので、描画コールは少なくなります。
-* カバーするピクセルも減り、背面が平らなデカールはピクセルを全くカバーしないので、かなり速くなります。
-* カスタム仕様の UV を使用するので、より複雑なプロジェクションの実行が可能になります。
-* サーフェスの周りをラップしたり、スプラインに沿って伸び、正しく法線マップ化されたデカールが作成できます。
-
-[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:400)
- [/PARAM]
- [PARAM:after]
- (w:400)
- [/PARAM]
-[/OBJECT]
-
-
-## コンテンツのオーサリング
-
-コンテンツをメッシュ デカール ジオメトリとして使用するオーサリングは、すべてのモデル作成と一致しています。このジオメトリはディファード デカール アクタのようにプロジェクションに依存はしないので、
-ジオメトリは影響を与えたいサーフェスの正面にさえあれば良いです。このことを踏まえた上で、この小さなオフセットの主な原因となる小さな深度バイアスが既にあるので、
-デカール ジオメトリは下層のサーフェスには合わせますが、そこまでぴったり一致する必要はありません。さらに、デカールの境界をぼかすジオメトリを少し使うと、
-マスク付きマテリアルでは実現できないデカール用の柔らかいトランジションを作成することができます。
-
-
-[REGION:imagetable]
-| (h:450) | (h:450) |
-| --- | --- |
-| 基本メッシュとデカール ジオメトリ (個々) | 合成したメッシュ |
-[/REGION]
-
-
-ジオメトリは交差してしまったり、思い通りにぴったりには一致しないため、深度バッファ精度には限度があります。
-従って、メッシュ デカールは LOD あるいは長い表示距離が難しいということも覚えておくと良いでしょう。ただしほとんどの場合は、メッシュを変更すれば解決しますし、
-マテリアルに World Position Offset を使えばモデリング アプリケーションに戻らずにオフセットの調節ができます。
-
-(w:500)
-
-[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:500)
- [/PARAM]
- [PARAM:after]
- (w:500)
- [/PARAM]
-[/OBJECT]
-
-この例では、デカール ジオメトリは、基本メッシュに近すぎて、深度がオフセットを考慮できません。小さな負のオフセット値を使うと、ジオメトリを十分押し出すので、
-下層のジオメトリと交わりません。
-
-## 制限事項
-
-* アーティストはソート順序を指定しません。
-* タンジェント空間はまだサポートされていません。
-* Shader Overdraw/Overdraw 機能がついていません。
-* 深度バイアスの調整が簡単ではありません。現在、上にあるサーフェスからメッシュのオフセットを使用するか、マテリアルの World Position Offset で調整しなければなりません。
-* レイヤー オーバーラップが多い場合は、アーティファクトを避けるために深度でソートします。
-* マテリアル エディタ プレビューは表示されません。
-* マテリアル エディタはベース パスの使用を前提としているので、正しい命令数は表示しません。
-* DBuffer も non-DBuffer も同じコンテナを使用します。
-* 並列レンダリングはまだ組み込まれていません。この機能を広範囲に使用すると CPU 負荷を若干抑えることができます。
-
-## メッシュ デカール マテリアルの使用方法
-
-デカール マテリアルにライティング機能を使って、スタティックメッシュに適用できる基本的なディファード デカール マテリアルが作成できるように
-プロジェクト用に Dbuffer Decal を有効にするには、以下の手順に従います。
-
-### 必要なファイル
-
-操作ガイドに従って作業するために、まず以下の FBX およびテクスチャ ファイルをダウンロード、展開して UE4 にインポートしてください。操作方法がよく分からない場合は、
-[スタティックメッシュのインポート方法](Engine/Content/ImportingContent/ImportingMeshes) and [テクスチャのインポート方法](Engine/Content/ImportingContent/ImportingTextures) で
-詳細を確認してください。
-
-**[必要なテクスチャをダウンロード](MeshDecalAssets.zip)** (右クリックして [Save as (名前を付けて保存)] をクリック)
-
-
-### プロジェクトで DBuffer Decals を有効にする
-
-1. **[Edit (編集)]** メニューで **[Project Settings (プロジェクト設定)]** をクリックして [Unreal Editor] オプションを表示します。
-
- (w:250)
-1. 見出し **[Engine]** の下の **[Rendering]** セクションを選択し、各種ライティング オプションのある **[Lighting]** カテゴリを展開します。
-
- [REGION:lightbox]
- [(w:700)](ProjectSettings.png)
- [/REGION]
-1. 次に **[DBuffer Decals]** オプションを Deferred Decals でライティング機能を使用するように切り替えます。
- (w:350)
-
- 1. この機能を使えるようにするには、まず **エディタを再起動** する必要があります。
-
- (w:550)
-
-
-
-### 基本のディファード デカールを作成する
-
-1. **コンテンツ ブラウザ** で **[Add New (新規追加)]** ボタンを選択し、**[Material]** のオプションを選択して、マテリアルを新規作成します。マテリアルには、後で場所が分かりやすいような名前を付けるようにしてください。
-ここでは学習内容を踏まえて、「M_MeshDecal」という名前を付けておきました。
-
- (w:300)
-
-1. **Material** を選択し、ダブルクリックして開きます。マテリアル エディタを開いて、Deferred Decal で使えるように **[Details (詳細)]** パネルの以下の属性の設定から開始します。
-
- * **Material Domain:** Deferred Decal
- * **Blend Mode:** Translucent
- * **Decal Blend Mode:** DBuffer Translucent Color, Normal, Roughness
-
-1. 次に、このページの **[Required Files]** セクションのテクスチャを使って、マテリアルを設定する必要があります。そのステップに必要なディフューズ、マスク、法線テクスチャの 3 つのテクスチャが入っている .zip ファイルがあります。
-両方のテクスチャをインポートしたら、これらを **コンテンツ ブラウザ** へドラッグして、マテリアル エディタ グラフへドロップします。
-
- (w:400)
-
- 最後に MS_VertexAnimationTools_MorphTargets マテリアル関数の出力を Main Material ノードの関連する入力値に接続します。Mask テクスチャ "T_MeshDecalDamage_M" の場合は、
- Opacity Mask 入力に挿し込んだ時は **Blue Channel** 出力を使うようにしてください。これにより、テクスチャの中の青の値が表示されるべき maskfor として確実に使用されるようになります。
- (w:400)
-
-1. マテリアル グラフ内をクリックして「Constant」と入力するか、"1" キーを長押ししてグラフ内をクリックすると **Constant** 値ノードが追加されます。これを **Roughness** 入力に接続し、デフォルト値を **0.7** にします。
-
- (w:400)
-1. 仕上げ前に、深度精度が原因のアーティファクトを防ぐ、または減らすためにデカール ジオメトリのオフセットを基本メッシュから調節する方法が必要になります。以下のノードをマテリアル グラフに追加して、
-**Multiply** ノードの出力をメイン マテリアル ノードの **World Position Offset** 入力に接続します。
-
- (w:400)
-
- マテリアル グラフはこのような感じになっているはずです。
-
- [REGION:lightbox]
- [(w:400)](FinalMaterialGraph.png)
- [/REGION]
-1. ディファード デカール マテリアルが完了したので、Required Files .zip の中のスタティックメッシュ "SM_MeshDecal" をレベルに配置して、Material **M_MeshDecal** を
-スタティックメッシュのマテリアル スロットの Element 0 に適用します。基本メッシュのマテリアルの場合は、デモ目的で、すべてのマテリアルもしくは基本色を Element 1 に割り当てることができます。以下の例のように
-なるはずです。
-
- (w:400)
-
-
-## 結果
-
-メッシュ デカールと使用する独自のマテリアルの設定および作成方法を説明したので、
-モデリング アプリケーションで自分のアセットをオーサリングし、適用されたメッシュ デカールを使うためにライティングを存分に利用したマテリアルの作成に自信を持てるはずです。
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.KOR.udn
deleted file mode 100644
index 94be154fe8e0..000000000000
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.KOR.udn
+++ /dev/null
@@ -1,167 +0,0 @@
-INTSourceChangelist:3346002
-Availability:Docs
-Title: 메시 데칼 사용법
-Description: 메시 데칼 구성 및 사용법 안내입니다.
-Crumbs:
-parent: Engine/Rendering/Materials/HowTo
-type: reference
-tags:Materials
-version:4.15
-skilllevel:intermediate
-
-[TOC (start:2 end:4)]
-
-
-언리얼 엔진 4 에는 이제 Mesh Decal (메시 데칼)이 지원되어 별도의 표면 지오메트리에 디퍼드 데칼 프로퍼티를 사용할 수 있어
-스태틱 / 스켈레탈 메시에 디테일을 추가할 수 있습니다. 디퍼드 데칼은 투영에 의존하므로, 투영 대상 표면에 일치하지 않으면 잘리고 뒤틀리는
-평면 표면 디테일에 거의 제한됩니다. 메시 데칼은 단순 투영을 따르지 않는 데칼을 제공해 주는 대신
-에지를 감싸는 지오메트리나 스플라인 메시와 함께 사용할 수 있으며, 캐릭터의 외형을 강화시켜 줍니다.
-
-
-## 메시 데칼 VS 마스크드 머티리얼
-
-메시 데칼은 뎁스 렌더링은 하지 않지만 불투명 지오메트리 렌더 후 GBuffer 와 DBuffer 업데이트를 한다는 점에서 반투명 블렌드 모드와 디퍼드 데칼을 섞은 것입니다.
-마스크드 머티리얼을 사용한 것과 비교하면, EarlyZ 패스 비용이 없고, 그림자나 적절한 오클루전도 없지만,
-그에 대한 균형으로 머티리얼에 부드러운 전환이 가능합니다.
-
-메시 데칼은 Deffered Decal Actor (디퍼드 데칼 액터)에 비해 주의해야 할 차이점이 몇 가지 있습니다:
-
-* 커다란 디퍼드 데칼은 종종 앞면과 뒷면 드로 콜을 하므로 드로 콜 수가 적습니다.
-* 커버되는 픽셀 수가 적고 평평한 뒷면 데칼은 0 픽셀을 커버하므로 꽤 빠릅니다.
-* 커스텀 UV 를 사용할 수 있어 보다 복잡한 투영이 가능합니다.
-* 스플라인 상에 늘어나거나 표면을 감싸도록 제대로 노멀 매핑된 데칼을 가질 수 있습니다.
-
-[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:400)
- [/PARAM]
- [PARAM:after]
- (w:400)
- [/PARAM]
-[/OBJECT]
-
-
-## 콘텐츠 제작
-
-메시 데칼 지오메트리로 사용할 콘텐츠를 제작하는 것은 모델 생성과 밀접한 관계가 있습니다. 이 지오메트리는 디퍼드 데칼 액터처럼 투영에 의존하지 않으므로, 지오메트리는
-영향을 주고자 하는 표면 앞에만 있으면 됩니다. 이 점을 염두에 두고, 데칼 지오메트리는 아래 놓인 표면을 "hug"해야 하지만, 매우 근접하게 일치할 필요는 없습니다.
-이런 작은 오프셋을 위해 이미 약간의 뎁스 바이어스가 하드코딩되어 있기 때문입니다. 또한, 데칼에서 점차 사라지는 지오메트리를 약간 사용하면
-마스크드 머티리얼로는 얻을 수 없는 데칼의 부드러운 전환 효과를 내는 데 좋습니다.
-
-
-[REGION:imagetable]
-| (h:450) | (h:450) |
-| --- | --- |
-| 베이스 메시 및 데칼 지오메트리 (고립) | 합성 메시 |
-[/REGION]
-
-
-또 한가지 콘텐츠 개발시 염두에 두어야 할 점은, 메시 데칼은 뎁스 버퍼 정밀도 제한으로 인해 레벨 오브 디테일(LOD)이나 원거리에서 볼 때 문제가 될 수 있습니다.
-지오메트리가 교차하거나 의도대로 일치하지 않기 때문입니다. 하지만 대부분의 경우 메시가 이 부분을 고려하도록 변경하거나, 머티리얼의 월드 포지션 오프셋을 사용하여 오프셋을 조절하면
-모델링 프로그램으로 돌아가 별도의 작업을 하지 않아도 됩니다.
-
-(w:500)
-
-[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:500)
- [/PARAM]
- [PARAM:after]
- (w:500)
- [/PARAM]
-[/OBJECT]
-
-이 예제에서, 뎁스가 오프셋을 처리하지 못하는 베이스 메시에 데칼 지오메트리가 충분히 가까이 있습니다. 작은 음수 오프셋 값을 사용하면 아래 있는 지오메트리와 교차하지 않을 만큼 지오메트리를
-약간 밀어줍니다.
-
-## 한계점
-
-* 소트 순서를 아티스트가 지정할 수 없습니다.
-* 탄젠트 스페이스 지원이 아직 구현되지 않았습니다.
-* Shader Overdraw/Overdraw 함수 기능이 빠져있습니다.
-* 쉽게 조절 가능한 DepthBias 가 없습니다. 현재 메시 위의 표면에서 메시의 오프셋을 사용하거나, 머티리얼의 월드 포지션 오프셋으로 제어해야 합니다.
-* 다수의 레이어가 겹치는 경우 뎁스로 소트하여 부작용을 피합니다.
-* 머티리얼 에디터 프리뷰가 보이지 않습니다.
-* 머티리얼 에디터에 현재 올바른 인스트럭션 수가 표시되지 않습니다. 베이스 패스 사용량을 추정하기 때문입니다.
-* DBuffer 및 non-DBuffer 가 같은 컨테이너를 사용합니다.
-* 병렬 렌더링이 아직 후킹되지 않았습니다. 이 기능을 적극 활용하면 CPU 가 약간 절약됩니다.
-
-## 메시 데칼 머티리얼 사용
-
-여기서는 프로젝트에 DBuffer Decal 옵션을 켜 데칼 머티리얼에 라이팅 기능 혜택을 활용하고 스태틱 메시에 적용할 수 있는
-기본적인 디퍼드 데칼 머티리얼을 만들어 보겠습니다.
-
-### 필수 파일
-
-이 안내서를 따라하기 위해서는 다음 FBX 및 텍스처 파일을 다운로드하고 압축을 푼 뒤 UE4 에 임포트해야 합니다.
-그 방법이 익숙치 않은 경우 [](Engine/Content/ImportingContent/ImportingMeshes) 및 [](Engine/Content/ImportingContent/ImportingTextures) 문서를
-참고하세요.
-
-**[필수 텍스처 다운로드](MeshDecalAssets.zip)** (우클릭 - 다른 이름으로 저장)
-
-
-### 프로젝트에 DBuffer Decals 켜기
-
-1. **편집** 메뉴에서 **프로젝트 세팅** 을 선택하여 언리얼 에디터 옵션을 엽니다.
-
- (w:250)
-1. **엔진** 제목줄 아래 **Rendering** 섹션에서 **Lighting** 카테고리를 보면 다양한 Lighting 옵션이 있습니다.
-
- [REGION:lightbox]
- [(w:700)](ProjectSettings.png)
- [/REGION]
-1. 여기서 **DBuffer Decals** 옵션을 체크하면 디퍼드 데칼과 함께 라이팅 기능을 사용할 수 있습니다.
-
- (w:350)
-
-1. 이 기능을 사용하기 위해서는 먼저 **에디터를 재시작** 해야 합니다.
-
- (w:550)
-
-
-### 기본 디퍼드 데칼 제작
-
-1. **콘텐츠 브라우저** 에서 **신규 추가** 버튼을 선택하고 **머티리얼** 옵션을 선택하여 새 머티리얼을 만듭니다. 나중에 쉽게 찾을 수 있도록 머티리얼에 이름을 지어주세요.
-여기서는 M_MeshDecal 로 했습니다.
-
- (w:300)
-
-1. 이제 **머티리얼** 을 선택하고 더블클릭하여 엽니다. 머티리얼 에디터가 열리면 디퍼드 데칼로 사용할 수 있도록 **디테일** 패널에 다음 어트리뷰트 설정부터 합니다.
-
- * **Material Domain:** Deferred Decal
- * **Blend Mode:** Translucent
- * **Decal Blend Mode:** DBuffer Translucent Color, Normal, Roughness
-
-1. 다음, 이 페이지의 **필수 파일** 섹션의 텍스처를 사용하여 머티리얼 구성을 해야 합니다. .zip 파일에 있는 디퓨즈, 마스크, 노멀 세 개의 텍스처가 필요합니다.
-이 텍스처 임포트를 완료했으면, **콘텐츠 브라우저** 에서 선택한 뒤 머티리얼 에디터 그래프에 끌어 놓습니다.
-
- (w:400)
-
- 이제 Texture Sample 노드의 출력을 메인 머티리얼 노드의 해당 입력에 연결합니다. 마스크 텍스처 T_MeshDecalDamage_M 의 경우 오파시티 마스크 입력에 연결할 때 **Blue Channel** 출력을
- 사용하도록 합니다. 그래야 보이는 것에 대한 마스크로 텍스처의 파랑 값을 사용합니다.
-
- (w:400)
-1. 머티리얼 그래프에 우클릭한 후 Constant 라 입력하거나, "1" 키를 누르고 그래프를 클릭하여 **Constant** 노드를 추가합니다. 이것을 **러프니스** 입력에 연결하고 기본값을 **0.7** 로 설정합니다.
-
- (w:400)
-1. 마무리하기 전 베이스 메시에서 데칼 지오메트리의 오프셋 또는 뎁스 정밀도로 인해 발생할 수 있는 부작용을 제어할 수 있는 방법이 필요합니다. 머티리얼 그래프에 다음 노드를 추가하고
-**Multiply** 노드의 출력을 메인 머티리얼 노드의 **월드 포지션 오프셋** 입력에 연결합니다.
-
- (w:400)
-
- 완료했으면 머티리얼 그래프는 다음과 같을 것입니다:
-
- [REGION:lightbox]
- [(w:400)](FinalMaterialGraph.png)
- [/REGION]
-1. 디퍼드 데칼 머티리얼이 완료되었으면, 필수 파일 .zip 에 포함된 SM_MeshDecal 스태틱 메시를 레벨에 배치한 뒤 스태틱 메시의 머티리얼 슬롯 중 엘리먼트 0 에 **M_MeshDecal** 머티리얼을 적용합니다.
-베이스 메시의 머티리얼의 경우 엘리먼트 1 에 아무 머티리얼 또는 이 데모 목적 상 그냥 기본 컬러를 연결해도 됩니다. 아래 예제와 비슷한 것이
-생겨있을 것입니다.
-
- (w:400)
-
-
-## 최종 결과
-
-메시 데칼과 사용할 자체 머티리얼을 만들어 구성하는 법을 배우셨으니, 이제 모델링 어플리케이션에서 별도의 애셋을 만든 뒤 메시 데칼을 적용하고도 라이팅 장점을 최대한 활용하는 자체 머티리얼을
-제작하실 수 있을 것입니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/IntroductionToMaterials/IntroductionToMaterials.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/IntroductionToMaterials/IntroductionToMaterials.JPN.udn
index 8219d2a1d398..65ada66075bb 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/IntroductionToMaterials/IntroductionToMaterials.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/IntroductionToMaterials/IntroductionToMaterials.JPN.udn
@@ -1,5 +1,4 @@
-INTSourceChangelist:3304580
-Availability:Public
+Availability:Public
Title:マテリアルの基本概念
Crumbs: %ROOT%, Engine, Engine/Rendering/Materials
Description:UE4 のマテリアルとその機能に関する入門書
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/SSSProfileLightingModel.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/SSSProfileLightingModel.INT.udn
index 4e2bb7127c91..4fd986e09241 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/SSSProfileLightingModel.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/SSSProfileLightingModel.INT.udn
@@ -1,6 +1,6 @@
Availability:Public
Title:Subsurface Profile Shading Model
-Crumbs: %ROOT%, Engine, Engine/Rendering/Materials
+Crumbs: %ROOT%
Description:Description and technical details of the Subsurface Profile shading model available in Materials.
Version: 4.9
parent:Engine/Rendering/Materials/LightingModels
@@ -8,59 +8,36 @@ order:1
topic-image:sss_profile_topic.png
type:overview
tags:Materials
+SkillLevel:Intermediate
+[TOC(start:2 end:3)]
-[TOC(start:2)]
-
-Unreal Engine 4 (UE4) now offers a shading method specifically for rendering realistic skin or wax surfaces called **Subsurface Profile**.
-The Subsurface Profile shading method is similar to the Subsurface method, but with a key difference in how it renders: Subsurface Profile is based in **screen space**. This is because screen space rendering is more effective at displaying the subtle subsurface effects seen in human skin, where backscattering is a secondary effect only seen in few cases, such as ears.
-
-
-The following document will cover what Subsurface Profiles are and how you can use them in your work.
+Unreal Engine 4 (UE4) now offers a specific shading method for rendering realistic skin or wax surfaces, which is called **Subsurface Profile** shading.
+The Subsurface Profile shading method is similar to the Subsurface method, but with a fundamental difference in how it renders: Subsurface Profile is based in **screen space**. This is because screen space rendering is a more effective to display the subtle subsurface effects seen in human skin, where backscattering is a secondary effect only seen in few cases, such as ears. In the following document will cover what Subsurface Profiles are and how you can use them in your work.
[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:700 convert:false)
- [/PARAM]
- [PARAM:after]
- (w:700 convert:false)
- [/PARAM]
+ [PARAM:before]
+ (w:700 convert:false)
+ [/PARAM]
+ [PARAM:after]
+ (w:700 convert:false)
+ [/PARAM]
[/OBJECT]
-
-
[Region:note]
-Special thanks to Lee Perry-Smith and his company [Infinite Realities] (http://ir-ltd.net ) for providing the 3D scanned head model and assistance.
+Special thanks to Lee Perry-Smith and his company [Infinite Realities] (http://ir-ltd.net ) for their assistance with this documentation, also for providing the 3D scanned head model.
[/region]
-
## What is a Subsurface Profile
-Subsurface Scattering Profile data can be created, shared, and saved in the **Content Browser**. The data is intended to be authored by artists, and controls the distance the light in the Subsurface should scatter, the color of the Subsurface, and the falloff color of the light once it has exited the object. This data can then be applied to a Subsurface Material. Subsurface Profile data can also be tweaked interactively, meaning that you do not need to re-compile the material to see the results of edits.
-
-
-
-
-
-
+The Subsurface Scattering Profile data is an asset that can be created, shared, and saved in the **Content Browser**. The data is intended to be authored by artists and controls the distance the light in the Subsurface should scatter, the color of the Subsurface, and the falloff color of the light once it has exited the object. This data can then be applied to a Subsurface Material. Subsurface Profile data can also be tweaked interactively, meaning that you do not need to re-compile the material to see the results of edits.
## Enabling, Creating, and Using a Subsurface Profile
-To use a Subsurface Profile in a Material, you must first set the Material to use a Subsurface Profile by setting the **Shading Model** to **Subsurface Profile** in the **Details** panel of the Material. You can override the Subsurface Profile that is used with the **Subsurface Profile** input.
+There are many different ways of using Sub Surface profiles in UE4. In the following section, we will take a look at each of these ways.
+### Creating A Subsurface Profile
-[REGION:tip]
-The default settings for the Subsurface Profile are close to Caucasian skin. Please note that this is just one component to realistic looking skin. _Always make sure the base color of your texture fits to your Subsurface scattering profile._
-[/REGION]
-
-
-
-
-The Subsurface Profile can also be overridden in a Material Instance. To do this, you first need to open the Material Instance that you wish to change. Then, in the **Details** section of the Material Instance, enable **Override Subsurface Profile** and then supply the Subsurface profile you want to use in the **Subsurface Profile** input.
-
-
-
-To create a Subsurface Profile, first **Right-Click** inside of the **Content Browser**. Then select the ** Materials & Textures** option and select the **Subsurface Profile** option.
-
+To create a Subsurface Profile, first Right-click inside of the **Content Browser**. Then select the ** Materials & Textures** option and then select the **Subsurface Profile** option.

[region:note]
@@ -68,57 +45,93 @@ If no SubsurfaceProfile is specified, it uses the default, which is Caucasian hu
[/region]
-You can edit Subsurface Profiles by **Double-Clicking** on them with the **Left Mouse Button** in the **Content Browser** to open it up.
+You can edit Subsurface Profiles by Double-clicking on them with the **Left Mouse Button** in the **Content Browser** to open it up.
Once open, you can adjust the individual properties of the Subsurface Scattering Profile by either inputting a number using the keyboard or by using the **Left Mouse Button** to **Click** on the color bar to expose the color picker.
-
-
-
-* ** Scatter Radius:** The distance in world space units to perform the scatter.
-
-* ** Subsurface Color:** The Subsurface Color can be used as a weight for the Subsurface effect. Black means there is no Subsurface scattering. White means all lighting is entering the material and gets scattered around. A non-grayscale value gives more control over what color contributions are entering the surface, resulting in a more complex looking shading.
+### Enabling Subsurface Profile
+To use a Subsurface Profile in a Material, you must first enable it by setting the Materials **Shading Model** to **Subsurface Profile** in the **Details** panel of the Material. Once enabled, you can override the default Subsurface Profile that is used by inputting a new one into the **Subsurface Profile** input.
+[REGION:tip]
+The default settings for the Subsurface Profile are close to the Caucasian skin type. Please note that this is just one component to getting a realistic looking skin. _Always make sure the base color of your texture fits your Subsurface scattering profile._
+[/REGION]
+
+The Subsurface Profile can also be overridden in a Material Instance. To do this go the **Details** pannel of the Material Instance and enable the **Override Subsurface Profile**. Once enabled, supply the Subsurface profile you want to use in the **Subsurface Profile** input.
-* **Falloff Color:** The Falloff Color defines the material scattering color once the light has entered the material. You should avoid using a vivid color here if you want to get a more complex shading variation over area where you see the scattering.
+
[region:note]
-Remember that the whole computation is energy-conserving, so it is not possible to create light through scattering.
+Remember that the whole computation is energy-conserving, so it is not possible to create additional light through scattering.
[/region]
+## Material Input Channels
+
+The Screen Space Subsurface shading profile does not differ much from the Lit shading mode, with the main difference being that the Metallic input has been repurposed and is not available to be used.
+
+**Base Color Input:** The Base Color input is used as usual for Diffuse lighting. There is no extra Subsurface Scattering color as the Screen Space Subsurface Scatter is not supposed to change color or brightness, it is just redistributing the lighting to nearby pixels.
+So, if a material should scatter in a specific color, it needs to be expressed as part of the Base Color.
+The Base Color should be the final color as if the material is viewed from a large distance where the scattering cannot be distinguished from diffuse lighting.
+
+[REGION:note]
+Human skin is a thin layer that blocks a certain amount and color of light, and it covers vibrant, red-colored flesh below its surface. The visible scatter distance for light-colored human skin is about 1.2 CM.
+[/region]
+
+**Metallic Input:** The Metallic input channel is not available when using a Subsurface Profile because the GBuffer space for the Metallic input has been repurposed to accommodate the Subsurface Profile data.
+
+**Opacity Input:** The Opacity input channel is used to mask the Subsurface scattering contribution.
+It works by using a value in the 0 to 1 range to allow for smooth transitions between different areas of Subsurface scattering intensity, where 0 is no scattering, and 1 is full scattering.
+
+
+To better control where the Subsurface scattering is stronger or weaker, it is best to use a mask texture.
+Areas in the mask Texture that have values closer to 1, or white, will have the strongest Subsurface scattering effect while areas that are closer to 0, or black, will have less of an effect.
+Adjusting the Subsurface Color will help to compensate if areas get too dark. Remember that using brighter colors results in more Subsurface scattering.
+
+Here you can see how the mask can be used to render two surface types with one material. Note that the transition is soft and not limited to triangle borders.
+
+[REGION:lightbox]
+[(w:920 convert:false)](4.png)
+[/REGION]
+[REGION:caption]
+Click for full image.
+[/REGION]
+
## Full-Resolution Skin Shading
UE4 supports full-resolution skin shading for the Subsurface Profile shading model. This provides high-fidelity lighting for surface details, such as pores and wrinkles.
+
[OBJECT:ComparisonSlider]
- [PARAM:before]
- 
- [/PARAM]
- [PARAM:after]
- 
- [/PARAM]
+ [PARAM:before]
+ 
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
[/OBJECT]
-[OBJECT:ComparisonSlider]
- [PARAM:before]
- 
- [/PARAM]
- [PARAM:after]
- 
- [/PARAM]
-[/OBJECT]
-
-Previously, lighting on skin was represented using a checkerboard pattern, where half the pixels used only Diffuse lighting and the other half used Specular lighting. The lighting was recombined during a final Subsurface profile fullscreen pass. That approach gave good results for Subsurface lighting (which is low-frequency by nature), but it could result in lower-fidelity lighting for surface details. With the new approach, every pixel contains Diffuse and Specular lighting information, packed into an RGBA encoding. This allows us to reconstruct full-resolution lighting during the final Subsurface profile fullscreen pass, giving better results for surface details and more stable behavior with Temporal Antialiasing.
+Previously, lighting on the skin was represented using a checkerboard pattern, where half the pixels used only Diffuse lighting and the other half used Specular lighting. The lighting was recombined during a final Subsurface profile fullscreen pass. That approach gave good results for Subsurface lighting (which is low-frequency by nature), but it could result in lower-fidelity lighting for surface details. With the new approach, every pixel contains Diffuse and Specular lighting information, packed into an RGBA encoding. This allows us to reconstruct full-resolution lighting during the final Subsurface profile fullscreen pass, giving better results for surface details and more stable behavior with Temporal Antialiasing.
### Compatibility
-Full-resolution skin shading requires at least a 64-bit scene color format with a full alpha channel. The default FloatRGBA scene color format works fine, but 32-bit representations such as FloatRGB are not supported. If the scene color format is not compatible with full resolution skin, we fall back to checkerboard-based lighting.
-This behaviour can be overridden using the **r.SSS.Checkerboard** console variable. The possible values for this are:
-* 0: Checkerboard disabled (full resolution)
-* 1: Checkerboard enabled (old behavior)
-* 2: Automatic (default) - Full resolution lighting will be used if the scene color pixelformat supports it
+Full-resolution skin shading requires at least a 64-bit scene color format with a full alpha channel. The default FloatRGBA Scene Color format works fine, but 32-bit representations such as FloatRGB are not supported. If the scene color format is not compatible with full resolution skin, we fall back to checkerboard-based lighting.
+
+This behavior can be overridden using the **r.SSS.Checkerboard** console variable. The possible values for this are:
+
+|Property Name| Value|Description|
+|-------------|------------|------|
+|**r.SSS.Checkerboard**|0|Checkerboard disabled|
+|**r.SSS.Checkerboard**|1|Checkerboard enabled (old behavior)|
+|**r.SSS.Checkerboard**|2|Automatic (default) - Full resolution lighting will be used if the scene color pixel format supports it.|
### Limitations
@@ -127,54 +140,23 @@ It
* Metallic Materials
* Emissive Materials
-These features will work, but you may notice differences in output compared to checkerboard due to the packed RGBA diffuse/specular encoding. It is possible to work around some issues when authoring materials by setting the **Opacity** to **0** in areas where skin shading is not desirable. Pixels with an Opacity of zero are treated as default lit for the purposes of shading.
+These features will work, but you may notice differences in output compared to checkerboard due to the packed RGBA diffuse/specular encoding. It is possible to work around some issues when authoring materials by setting the **Opacity** to **0** in areas where skin shading is not desirable. Pixels with an Opacity of zero are treated as default lit for shading.
[region:note]
-Masking non-opaque pixels in this way is also worthwhile for performance reasons, since these pixels are bypassed by the Subsurface Postprocess.
+Masking non-opaque pixels in this way is also worthwhile for performance reasons since these pixels are bypassed by the Subsurface Postprocess.
[/region]
### Performance Considerations
-If your title has a 64-bit scene color format, full-resolution Subsurface lighting will typically be faster than checkerboard due to the reduced number of Texture fetches. However, if your title has a 32-bit scene color, the performance gain from the reduced Texture bandwidth will likely outweigh the benefits (although this is hardware dependent).
-
-## Material Input Channels
-
-The Screen Space Subsurface shading profile does not differ much from the Lit shading mode, with the main difference being that the Metallic input has been repurposed and is not available to be used.
-
-**Base Color Input:** The Base Color input is used as usual for Diffuse lighting. There is no extra Subsurface Scattering color as the Screen Space Subsurface scatter is not supposed to change color or brightness, it is just redistributing the lighting to nearby pixels.
-So, if a material should scatter in a specific color, it needs to be expressed as part of the Base Color.
-The Base Color should be the final color as if the material is viewed from a large distance where the scattering cannot be distinguished from diffuse lighting.
-
-[REGION:note]
-Human skin is a thin layer that blocks a certain amount and color of light, and it covers vibrant, red-colored flesh below its surface. The visible scatter distance in light-colored human skin is about 1.2 cm.
-
-[/region]
-
-**Metallic Input:** The Metallic input channel is not available when using a Subsurface Profile because the GBuffer space for the Metallic input has been repurposed to accommodate the Subsurface Profile data.
-
-**Opacity Input:** The Opacity input channel is used to mask the Subsurface scattering contribution.
-It works by using a value in the 0 to 1 range to allow for smooth transitions between different areas of Subsurface scattering intensity, where 0 is no scattering and 1 is full scattering.
-
-
-In order to better control where the Subsurface scattering is stronger or weaker, it is best to use a mask texture.
-Areas in the mask texture that have values closer to 1, or white, will have the strongest Subsurface scattering effect while areas that are closer to 0, or black, will have less of an effect.
-Adjusting the Subsurface Color will help to compensate if areas get too dark. Remember that using brighter colors results in more Subsurface scattering.
-
-Here you can see how the mask can be used to render two surface types with one material. Note that the transition is soft and not limited to triangle borders.
-
-[REGION:lightbox]
-[(w:920 convert:false)](4.png)
-[/REGION]
-
-
+If your title has a 64-bit scene color format, full-resolution Subsurface lighting will typically be faster than checkerboard due to the reduced number of Texture fetches. However, if your title has a 32-bit scene color, the performance gain from the reduced Texture bandwidth will likely outweigh the benefits (although this is hardware dependent).
## Technical Details
-At the moment, the Subsurface scattering profile shading model does not differ much from Lit (Lambert diffuse, GGX for specular, no Metallic). Most of the effect happens in a post process after all lighting has been computed.
+Currently, e Subsurface scattering profile shading model does not differ much from Lit (Lambert diffuse, GGX for specular, no Metallic). Most of the effect happens in a post process after all lighting has been computed.
[REGION:note]
-The Subsurface scattering profile is based on work from [Jorge Jimenez](http://www.iryoku.com/). Make sure to check out his webpage for many useful tips on how to make your 3D images look more realistic.
+The Subsurface scattering profile is based on work from [Jorge Jimenez](http://www.iryoku.com/). Make sure to check out his web page for useful tips on how to make your 3D images look more realistic.
[/REGION]
We separate the non-specular (non-view dependent) lighting contributions to support a specular on top of Subsurface Material and down sample for better performance.
@@ -182,27 +164,33 @@ Similar to a Gaussian blur, we filter the image with a two-pass (assuming a sepa
The filter kernel depends on the Subsurface scattering profile which is stored in the GBuffer (Max 255 active profiles per scene).
The kernel has colored weights and specific sample positions which can be scaled in the profile (defined in units/cm).
In the final step, we recombine the scattered light contribution with the full resolution image. To separate the view-dependent and non-view-dependent lighting, we store a weighting value in the scene color alpha channel.
-This approximation requires a 64 bit render target (see r.SceneColorFormat) and this approximation works for most cases.
+This approximation requires a 64-bit render target (see r.SceneColorFormat), and this approximation works for most cases.
-It successfully takes out the specular but you get a more desaturated non view dependent color for those specular pixels. This can be improved by using two 32-bit render targets for all lighting passes. That has the same memory bandwidth but on some hardware this might be slower. This might be something we want to change (added code complexity).
+It successfully takes out the specular, but you get a more desaturated on view dependent color for those specular pixels. This can be improved by using two 32-bit render targets for all lighting passes. That has the same memory bandwidth, but on some hardware, this might be slower. This might be something we want to change (added code complexity).
Here we have an example where the Specular was removed before the blurring was applied. Notice how the Specular reflection is crisp and smooth in the end image (image on the far right). This is the effect we wanted to achieve.
[REGION:lightbox]
[(w:920 convert:false)](Good_Combination.png)
[/REGION]
+[REGION:caption]
+Click for full image.
+[/REGION]
Here we have an example where the Specular was not removed before the blurring was applied. Notice how the Specular reflection is dull and looks a bit stretched in the end image (image on the far right). This is not the correct way to render this effect.
[REGION:lightbox]
[(w:920 convert:false)](Bad_Combination.png)
[/REGION]
+[REGION:caption]
+Click for full image.
+[/REGION]
## Scalability and Console Commands
There are some scaling and performance console commands that you can use to help you get a good trade off between high quality visuals and better performance.
-**r.SSS.Scale**: Can be used to scale the effect for quick experiments. Setting this to **0** will disable the effect. Setting numbers higher than 0 will increase the effect which can be seen in the image sequence below.
+**r.SSS.Scale**: Can be used to scale the effect for quick experiments. Setting this to **0** will disable the effect. Setting numbers higher than 0 will increase the effect that can be seen in the image sequence below.
[INCLUDE:Engine\Rendering\Materials\LightingModels\SubSurfaceProfile\#SSRScale]
@@ -210,12 +198,12 @@ There are some scaling and performance console commands that you can use to help
**r.SSS.SampleSet**: Sets the number of samples used. Decreasing this will cause the effect to run faster. However, this will mean that the effect will have a lower quality, and rendering artifacts could show up.
[OBJECT:ComparisonSlider]
- [PARAM:before]
- 
- [/PARAM]
- [PARAM:after]
- 
- [/PARAM]
+ [PARAM:before]
+ 
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
[/OBJECT]
The following image shows a bit more of the internals of the system. This view can be enabled using **ShowFlag.VisualizeSSS 1**.
@@ -223,16 +211,27 @@ The following image shows a bit more of the internals of the system. This view c
[REGION:lightbox]
[(w:920 convert:false)](5.png)
[/REGION]
+[REGION:caption]
+Click for full image.
+[/REGION]
While the Subsurface scattering profile shading model is a step forward when it comes to rendering skin, there are some limitations in what it can do.
_Please note that as this system becomes more and more polished, this list could change._
* The feature does not work in the non-deferred (mobile) rendering mode.
-* Setting a large screen scatter radius will show banding artifacts in extreme lighting conditions.
+* Setting a large screen to scatter radius will show banding artifacts in extreme lighting conditions.
* Currently, there is no backscatter of light.
-* Currently, a grey outline appears when SSS Materials are occluded by non-SSS Materials.
+* Currently, a gray outline appears when non-SSS Materials occlude SSS Materials.
+## Subsurface Profile Property Referance
+
+
+|Property Name| Description|
+|-------------|------------|
+|**Scatter Radius:**|The distance in world space units to perform the scatter.|
+|**Subsurface Color:**|The Subsurface Color can be used as a weight for the Subsurface effect. Black means there is no Subsurface scattering. White means all lighting is entering the material and gets scattered around. A non-grayscale value gives more control over what color contributions are entering the surface, resulting in a more complex looking shading. |
+|**Falloff Color**|The Falloff Color defines the material scattering color once the light has entered the material. You should avoid using a vivid color here if you want to get a more complex shading variation over the area where you see the scattering.|
## Special Thanks
@@ -240,37 +239,34 @@ _Please note that as this system becomes more and more polished, this list could
Special thanks to Lee Perry-Smith and his company [Infinite Realities](http://ir-ltd.net) for providing the head model and assistance.
Also a very special thanks to [Jorge Jimenez](http://www.iryoku.com/) for releasing his implementation as this feature is based on his work.
-
-
-
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/SSSProfileLightingModel.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/SSSProfileLightingModel.JPN.udn
index e4fd481487f5..90b80a65c623 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/SSSProfileLightingModel.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/SSSProfileLightingModel.JPN.udn
@@ -1,124 +1,160 @@
-Availability:Public
+INTSourceChangelist:3462330
+Availability:Public
Title:サブサーフェス プロファイルのシェーディング モデル
-Crumbs: %ROOT%, Engine, Engine/Rendering/Materials
+Crumbs: %ROOT%
Description:マテリアルで利用可能なサブサーフェス プロファイルのシェーディング モデルの説明と技術的な詳細。
Version:4.9
+parent:Engine/Rendering/Materials/LightingModels
+order:1
+topic-image:sss_profile_topic.png
+type:overview
+tags:Materials
+SkillLevel:Intermediate
-[TOC(start:2)]
+[TOC(start:2 end:3)]
-
-
-リアルに見える人間の皮膚をレンダリングする機能は、最近のビデオ ゲーム エンジンでは必須です。このニーズに応えるために現在、アンリアル エンジン 4 (UE4) では、**サブサーフェス プロファイル** と呼ばれる皮膚やワックスのようなサーフェス用のシェーディング方法を提供しています。
-サブサーフェス プロファイルのシェーディング モデルは、サブサーフェス シェーディング モデルと類似のプロパティがあります。主な違いはどのようにレンダリングを行うかにあります。
-サブサーフェス プロファイルでは、これは人間の皮膚に見られる繊細なサブサーフェス エフェクトをよりよく表示しやすくする、スクリーン空間に基づいたレンダリング手法を採用しています。これにより、背面散乱が二次的なエフェクトとして耳などに稀に表れることがあります。
-以下のドキュメントでは、サブサーフェス プロファイルがどのようなものであるか、各自の作業でどのように使用できるかについて説明します。
+アンリアル エンジン 4 (UE4) は、**Subsurface Profile (サブサーフェス プロファイル)** と呼ばれる皮膚やワックスのようなサーフェス用のシェーディング方法を提供しています。
+サブサーフェス プロファイル シェーディイング メソッドは サブサーフェス メソッドと似ていますが、レンダリングの方法が基本的に異なります。サブサーフェス プロファイルは **スクリーン スペース** をベースにしています。スクリーン スペース レンダリングは人間の皮膚に見られる繊細なサブサーフェス エフェクトの表示により効果的である一方で、背面散乱が二次的なエフェクトとして耳などに表れることが稀にあります。以下のドキュメントでは、サブサーフェス プロファイルがどのようなものであるか、各自の作業でどのように使用できるかについて説明します。
[OBJECT:ComparisonSlider]
- [PARAM:before]
- (w:700 convert:false)
- [/PARAM]
- [PARAM:after]
- (w:700 convert:false)
- [/PARAM]
+ [PARAM:before]
+ (w:700 convert:false)
+ [/PARAM]
+ [PARAM:after]
+ (w:700 convert:false)
+ [/PARAM]
[/OBJECT]
-
-
[Region:note]
-3D スキャン ヘッドモデルの提供とご支援いただいた Lee Perry-Smith 氏と彼の会社 [Infinite Realities] (http://ir-ltd.net ) に深く感謝いたします。
+文書の作成および3D スキャン ヘッドモデル提供にご協力いただいた Lee Perry-Smith 氏および Perry-Smith 氏の [Infinite Realities] (http://ir-ltd.net ) に深く感謝いたします。
[/region]
+## サブサーフェス プロファイルの概要
-## サブサーフェス プロファイルとは?
-
-サブサーフェス スキャタリング プロファイルは、サブサーフェス スキャタリングがどのようにレンダリングされるかに関する情報を格納します。
-他のアクタと同様に **コンテンツ ブラウザ** で作成、共有、および格納できます。
-サブサーフェス スキャタリング プロファイルは、サブサーフェスでライトが散乱する距離、サブサーフェスの色、オブジェクトから出た後のライトのフォールオフ カラーなどアーティストが操作するデータを設定することで機能します。
-このデータをサブサーフェス マテリアルに適用して、サブサーフェスの見え方に影響を与えることができます。
-サブサーフェス プロファイルは、インタラクティブに微調整することもできます。つまり、編集結果を確認するためにマテリアルを再コンパイルする必要はありません。
-
-
-
+サブサーフェス スキャタリング データは、**コンテンツ ブラウザ** での作成、共有、保存が可能なアセットです。データはアーティストによって作成され、サブサーフェスでライトが散乱する距離、サブサーフェスの色、オブジェクトから出た後のライトのフォールオフ カラーなどを調節します。このデータをサブサーフェス マテリアルに適用することができます。サブサーフェス プロファイル データは、インタラクティブに微調整することもできます。つまり、編集結果を確認するためにマテリアルを再コンパイルする必要はありません。
## サブサーフェス プロファイルの有効化、作成および使用
-マテリアルでサブサーフェス プロファイルを使用するには、最初にマテリアルの **[Details (詳細)]** パネルで **Shading Model** を **Subsurface Profile** に設定して、マテリアルがサブサーフェス プロファイルを使用できるようにします。
-また、**Subsurface Profile** 入力で別のサブサーフェス プロファイルを入力してマテリアルが使用するサブサーフェス プロファイルをオーバーライドすることもできます。
+サブサーフェス プロファイルは UE4 で様々な使用方法があります。次のセクションで 1 つずつ説明していきます。
+
+### サブサーフェス プロファイルの作成
+
+サブサーフェス プロファイルを作成するには、まず **コンテンツ ブラウザ** 内を **右クリック** します。**[Materials & Textures]** オプション、そして **[Subsurface Profile]** オプションを選択します。
+
+
+[region:note]
+サブサーフェス プロファイルを指定しないと、白色人種の皮膚であるデフォルトのサブサーフェス プロファイルが使用されます。
+[/region]
+
+
+サブサーフェス プロファイルを編集するには、 **コンテンツ ブラウザ** で **マウスの左ボタン** でダブルクリックして開きます。
+一度開くと、サブサーフェス スキャタリング プロファイルの各プロパティを調整できます。これは、キーボードを使用して数字を入力するか、**マウスの左ボタン** でカラーバーを **クリック** してカラーピッカーに入れます。
+
+### サブサーフェス プロファイルを有効にする
+マテリアルでサブサーフェス プロファイルを使用するには、最初にマテリアルの **[Details (詳細)]** パネルでマテリアルの **[Shading Model]** を **[Subsurface Profile]** に設定して有効にします。有効にすると、**Subsurface Profile** 入力に新しく追加することで、使用しているデフォルトのサブサーフェス プロファイルをオーバーライドすることができます。
+
[REGION:tip]
-サブサーフェス プロファイルのデフォルト設定は白色人種の皮膚に近いものです。これは、リアルに見える皮膚のひとつのコンポーネントにすぎないことに注意してください。 _テクスチャのベースカラーがサブサーフェス スキャタリング プロファイルに合うように常に確認してください。_
+サブサーフェス プロファイルのデフォルト設定は白色人種の皮膚のタイプに近いです。これは、リアルに見える皮膚のひとつのコンポーネントにすぎないことに注意してください。_テクスチャのベースカラーがサブサーフェス スキャタリング プロファイルに合うように常に確認してください。_
[/REGION]

-サブサーフェス プロファイルは、マテリアル インスタンスでもオーバーライドできます。これを行うには、まず変更対象のマテリアル インスタンスを開く必要があります。
-次にマテリアル インスタンスの **[Details (詳細)]** セクションで **[Override Subsurface Profile (サーフェスプロファイルをオーバーライド)]** を有効にして、**Subsurface Profile** 入力で使用するサブサーフェス プロファイルを入れます。
+サブサーフェス プロファイルは、マテリアル インスタンスでもオーバーライドできます。操作方法は、Material Instance の **[Details (詳細)]** パネルで **[Override Subsurface Profile]** を有効にします。有効にしたら、使用するサブサーフェス プロファイルを **[Subsurface Profile]** で指定します。

-サブサーフェス プロファイルを作成するには、まず **コンテンツ ブラウザ** 内で **右クリック** します。**[Materials & Textures]** オプション、そして **[Subsurface Profile]** オプションを選択します。
-
-
-
[region:note]
-サブサーフェス プロファイルを指定しないと、白色人種の皮膚であるデフォルトのサブサーフェス プロファイルを使用します。
-[/region]
-
-
-サブサーフェス プロファイルを編集するには、**コンテンツ ブラウザ** で **マウスの左ボタン** を **ダブルクリック** して開きます。
-一度開くと、サブサーフェス スキャタリング プロファイルの各プロパティを調整できます。これは、キーボードを使用して数字を入力するか、**マウスの左ボタン** を使用してカラーバー上で **クリック** してカラーピッカーに入れます。
-
-
-
-
-* ** Scatter Radius: ** スキャタリングを行うワールド空間単位における距離です。
-
-* ** Subsurface Color: ** サブサーフェス カラーの色は、サブサーフェス エフェクトのウェイトとして使用できます。黒はサブサーフェス スキャタリングがないことを意味します。
-白はすべてのライティングがマテリアルに入り、周囲に散乱することを意味します。非グレイスケール値は、
-どの色の寄与がサーフェスに入ってきて、より複雑な外観のシェーディングになるかをさらに制御します。
-
-* **Falloff Color: ** フォールオフ カラーは、ライトがマテリアルに入った後のマテリアルのスキャタリング カラーを定義します。
-スキャタリングが見えるエリアでシェーディングがより複雑に変化するようにしたければ、ここでは鮮明な色を使用しないようにします。
-
-[region:note]
- 計算全体ではエネルギーを節約しているため、スキャタリングでさらに多くのライトは作れないことを覚えておいてください (旧/他のサブサーフェス方式とは異なります)。
+計算全体ではエネルギーを節約しているため、スキャタリングでライトの追加作成はできないことを覚えておいてください。
[/region]
-
-
## マテリアル入力チャンネル
-スクリーン空間のサブサーフェス シェーディング プロファイルは、lit (ライティング有り) のシェーディング モードとあまり違いがありません。主な違いは、メタリック入力が再利用され、使用できないことです。
+スクリーン スペースのサブサーフェス シェーディング プロファイルは、lit (ライティング有り) のシェーディング モードとあまり違いがありません。主な違いは、メタリック入力が再利用され、使用できないことです。
-**ベースカラーの入力:** ベースカラーの入力は通常通りディフューズ ライティングに使用します。スクリーン空間サブサーフェス スキャタリングは、色や明るさの変更は前提としておらず、近くのピクセルにライティングを再分配するだけです。そのため、追加のサブサーフェス スキャタリング カラーはありません。
+**ベースカラーの入力:** ベースカラーの入力は通常通りディフューズ ライティングに使用します。スクリーン スペース サブサーフェス スキャタリングは、色や明るさの変更は前提としておらず、近くのピクセルにライティングを再分配するだけです。そのため、追加のサブサーフェス スキャタリング カラーはありません。
従って、マテリアルが特定のカラーでスキャタリングする場合、ベースカラーの一部として表現する必要があります。
ベースカラーは、スキャタリングとディフューズ ライティングとの区別ができないような相当離れた場所からマテリアルを見たかのような最終的なカラーにします。
[REGION:note]
- 人間の皮膚は薄い淡いレイヤーとして、サーフェスの下ではより鮮やかな赤色で表示され、デフォルト カラーはこのように見えます。人間の皮膚の可視のスキャタリング距離は約 1.2 cm です。これはサブサーフェス プロファイルのデフォルト値でもあります。
+人間の皮膚は、ライトの量と色をある程度ブロックする薄いレイヤーで、赤みを帯びた肉を覆います。ライトで色付けされた人間の皮膚の可視のスキャタリング距離は約 1.2 cm です。
[/region]
**メタリック入力:** メタリック入力チャンネルは、サブサーフェス プロファイルを使用する場合は利用できません。メタリック入力の GBuffer 空間はサブサーフェス プロファイル データに対応するように再利用されているからです。
**オパシティ入力:** オパシティ入力チャンネルは、サブサーフェス スキャタリングの寄与をマスクするために使用します。
-0 から 1 の範囲の値を使用すると、サブサーフェス スキャタリングの強度が異なりエリアの間で滑らかなトランジションを実現します。
-例えば、値 0 をオパシティ入力に入れると、サブサーフェス スキャタリングは無効になります。
-値 1 を入れると、サブサーフェス スキャタリングが最大限表示されます。
-サブサーフェス スキャタリングがどこで強くなるか、弱くなるかの制御を適切に行うために、マスク テクスチャを使用するのが最適です。
-1 により近い値すなわち白のマスク テクスチャのエリアでは、最強のサブサーフェス スキャタリング エフェクトになります。一方、 0 により近い値すなわち黒のマスク テクスチャのエリアでは、エフェクトは弱くなります。
-サブサーフェス カラーを調整すると、暗すぎるエリアがあれば補正します。より明るい色を使用するとサブサーフェス スキャタリングは増えることを覚えておいてください。
+0 がスキャタリングなし、1 はフル スキャタリングの場合、0 から 1 の範囲の値を使用すると、サブサーフェス スキャタリング強度が異なるエリア間のトランジションをスムーズにすることができます。
-ここでは、マスクを使用して1 つのマテリアルで 2 つのサーフェス タイプを どのようにレンダリングするかがわかります。トランジションはソフトでトライアングルの境界に制限されていないことに注意してください。
+
+サブサーフェス スキャタリングの強弱位置をうまく調整するためには、マスク テクスチャの使用が便利です。
+1 により近い値すなわち白のマスク テクスチャのエリアでは、最強のサブサーフェス スキャタリング エフェクトになります。一方、0 により近い値すなわち黒のマスク テクスチャのエリアでは、エフェクトは弱くなります。
+暗すぎるエリアはサブサーフェス カラーを調整して補正します。使用する色を明るくするほど、サブサーフェス スキャタリングが増えることを覚えておいてください。
+
+以下の画像を見ると、1 つのマテリアルで 2 つのサーフェス タイプをレンダリングするためのマスクの使い方が分かります。トランジションはソフトでトライアングルの境界に制限されていないことに注意してください。
[REGION:lightbox]
[(w:920 convert:false)](4.png)
[/REGION]
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
+## フル解像度スキンシェーディング
+UE4 がサブサーフェス プロファイル シェーディング モデルでフル解像度のスキンシェーディングをサポートするようになりました。毛穴やしわなどのサーフェスの詳細に対して忠実度の高いライティングを実現します。
+
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ 
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+
+これまでは皮膚へのライティングはチェッカーボード パターンを使って表していました。この場合、ピクセルの半分はディフューズ ライティングで、残りの半分は スペキュラ ライティングになっています。こうしたライティングは最終的なサブサーフェス プロファイルのフルスクリーン パス中に再結合されます。このようなアプローチは、サブサーフェス ライティングに良い結果をもたらしますが (性質上、低周波)、サーフェスの詳細部分ではライティングの忠実度が低くなることがあります。新しいアプローチを使うと、すべてのピクセルにディフューズとスペキュラのライティング情報が含まれ、RGBA にエンコードされます。これにより、最終的なサブサーフェス プロファイルのフルスクリーン パス中にフル解像度のライティングを再構築して、サーフェスの詳細で良い結果が得られ、テンポラル アンチエイリアスで安定したビヘイビアを示すようになります。
+
+### 互換性
+
+互換性 フル解像度のスキンシェーディングでは、フルアルファ チャンネルで最低 64 ビットのシーン カラー形式を必要とします。デフォルトの FloatRGBA シーン カラー フォーマットはうまく機能しますが、FloatRGB などの 32 ビットの表現はサポートされていません。シーン カラー フォーマットがフル解像度のスキンと互換性がない場合は、チェッカーボード ベースのライティングに戻ります。
+
+このビヘイビアは **r.SSS.Checkerboard **コンソール変数を使ってオーバーライドすることができます。これに対する値は以下の通りです。
+
+|プロパティ名| 値|説明|
+|-------------|------------|------|
+|**r.SSS.Checkerboard**|0|チェッカーボード無効|
+|**r.SSS.Checkerboard**|1|チェッカーボード有効 (従来のビヘイビア)|
+|**r.SSS.Checkerboard**|2|自動 (デフォルト) - シーン カラーのピクセル フォーマットがサポートしていれば、フル解像度のライティングを使用|
+
+### 制限事項
+
+フル解像度のスキンシェーディングは近似値であることを覚えておいてください。ほとんどの場合うまく機能しますが、マテリアルの一部の機能ではエンコードの方式が原因で問題が生じることがあります。特に、
+
+* メタリック マテリアル
+* エミッシブ マテリアル
+
+これらは機能するものの、チェッカーボードと比べると出力の違いに気付くかもしれません。これは、RGBA のディフューズ / スペキュラのエンコードが一緒になっていることが原因です。マテリアルをオーサリングする際に、スキンシェーディングが望ましくない場所で **オパシティ** を **0** に設定することで特定の問題を回避できます。オパシティ 0 のピクセルは、シェーディングのためにデフォルトの lit (ライティング有り) として扱われます。
+
+[region:note]
+不透明でないピクセルをこうしたやり方でマスクするのもパフォーマンス上、意味があります。こうしたピクセルはサブサーフェスのポストプロセスでバイパスされるからです。
+[/region]
+
+### パフォーマンスへの配慮
+
+制作しているタイトルが 64 ビットのシーン カラー フォーマットの場合は、テクスチャ フェッチ数が減るため、フル解像度のサブサーフェス ライティングの方がチェッカーボードよりも処理が速くなります。ただし、タイトルが 32 ビットのシーン カラーの場合、削減されたテクスチャの帯域幅によって得られるパフォーマンス ゲインの方が、そのメリットを上回るでしょう (ハードウェアに依存)。
## 技術的な詳細
-現時点では、サブサーフェス スキャタリング プロファイルのシェーディング モデルは Lit (ライティング有り) (ランバート ディフューズ、スペキュラーの GGX、メタリックなし) とあまり変わりがありません。
- ほとんどの素晴らしい機能は、すべてのライティングが計算された後のポスト プロセスで実現します。
+現時点では、サブサーフェス スキャタリング プロファイルのシェーディング モデルは Lit (ライティング有り) (ランバート ディフューズ、スペキュラーの GGX、メタリックなし) とあまり変わりがありません。素晴らしい機能のほとんどは、すべてのライティングが計算された後のポスト プロセスで実現します。
+
[REGION:note]
サブサーフェス スキャタリング プロファイルは、[Jorge Jimenez 氏](http://www.iryoku.com/) の成果に基づいたものです。彼のウェブページで 3D 画像をよりリアルに見せるための役立つヒントをご覧ください。
@@ -128,55 +164,112 @@ Version:4.9
ガウスぼかしと同様に、画像を 2 パス (分割可能なカーネルと想定) のポストプロセスでフィルタリングします。
フィルターのカーネルはサブサーフェス スキャタリング プロファイルに依存し、これは、GBuffer (シーン毎に最高 255 アクティブ プロファイル) に格納されています。
カーネルは色付けされたウェイトと特定のサンプル位置を持ち、プロファイルでスケーリングできます (cm 単位で定義)。
-最終段階で散乱光の寄与をフル解像度の画像と再結合します。このビューと、非視点依存のライティングを分けるために、シーンカラーのアルファチャンネルにウェイト付けの条件を格納します。
+最終段階で散乱光の寄与をフル解像度の画像と再結合します。視点依存のライティングと非視点依存のライティングを分けるために、シーンカラーのアルファチャンネルにウェイト付けの条件を格納します。
この近似では、64 ビットのレンダリング ターゲット (r.SceneColorFormat を参照) を必要とし、ほとんどの場合で機能します。
これはスペキュラ (鏡面反射色) をうまく取り除きますが、スペキュラ ピクセルは彩度が減じられた非視点依存のカラーになります。これは、すべてのライティング パスに 2 つの 32 ビットのレンダリング ターゲットを使用することで改善できます。同じメモリ帯域幅を持ちますが、一部のハードウェアでは遅くなることがあります。これは変更対象です (コードの複雑度を追加)。
-ここでは、ブラー適用前にスペキュラ(鏡面反射色) を取り除いた例をとりあげます。最終画像 (右端の画像) でスペキュラ反射が鮮明で滑らかなのがわかります。これが目標とするエフェクトです。
+ここでは、ブラー適用前にスペキュラ (鏡面反射色) を取り除いた例をとりあげます。最終画像 (右端の画像) でスペキュラ反射が鮮明で滑らかなのがわかります。これが目標とするエフェクトです。
[REGION:lightbox]
[(w:920 convert:false)](Good_Combination.png)
[/REGION]
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
-ここでは、ブラー適用前にスペキュラ (鏡面反射色) が取り除かれなかった例をとりあげます。最終画像 (右端の画像) でスペキュラ反射に光沢がなく伸縮しているのがわかります。これは、このエフェクトをレンダリングする正しいやり方ではありません。
+ここでは、ブラー適用前にスペキュラ (鏡面反射色) が取り除かれなかった例をとりあげます。最終画像 (右端の画像) でスペキュラ反射に光沢がなく伸縮しているのがわかります。これは、このエフェクトの正しいレンダリング方法ではありません。
[REGION:lightbox]
[(w:920 convert:false)](Bad_Combination.png)
[/REGION]
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
## スケーラビリティとコンソール コマンド
高品質なビジュアルと高いパフォーマンスとの間で適切なトレードオフを得るために使用できるスケーリングとパフォーマンスのコンソール コマンドがあります。
-**r.SSS.Scale**:ポストプロセスのパスを無効化、または簡単な実験のためにエフェクトをスケーリングすることができます。
+**r.SSS.Scale**:ポストプロセス パスの無効化、または簡単な実験用のエフェクトのスケーリングが行えます。これを **0** にするとエフェクトが無効になります。0 より大きい値に設定すると、以下の画像シーケンスのようにエフェクトが増加します。
-**r.SSS.SampleSet**:エフェクトの実行を速くするように使用するサンプルを減らすことができます。しかし、これはエフェクトが低品質になるか、レンダリングのアーティファクトが表示される可能性があることを意味します。
+[INCLUDE:Engine\Rendering\Materials\LightingModels\SubSurfaceProfile\#SSRScale]
+
+
+**r.SSS.SampleSet**:サンプル使用数を設定します。この数を減らすとエフェクトの実行速度が速くなります。しかし、これはエフェクトが低品質になるか、レンダリングのアーティファクトが表示される可能性があることを意味します。
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ 
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
以下の画像は、システム内部を表しています。このビューは、**ShowFlag.VisualizeSSS 1** を使用して有効になります。
[REGION:lightbox]
[(w:920 convert:false)](5.png)
[/REGION]
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
サブサーフェス スキャタリング プロファイルのシェーディング モデルは、皮膚のレンダリングに関しては一歩進んだものですが、行えることにはいくつかの制限があります。
- _このシステムはますます進歩していくため、このリストは変更の可能性があることにご注意ください。_
+_このシステムはますます進歩していくため、このリストは変更の可能性があることにご注意ください。_
* この機能は非ディファード (モバイル) レンダリング モードでは動作しません。
* 大きな画面でスキャタリング半径を設定すると、極端なライティング条件ではバンディングアーティファクトが表示されるかもしれません。
* 現在、ライトのバックスキャタリングはありません。
-* 現在、SSS マテリアルが非 SSS マテリアルによってオクルードされる場合、グレイのアウトラインが発生します。
+* 現在、non-SSS Materials が SSS Material をオクルードするとグレイのアウトラインが表示されます。
+## Subsurface Profile プロパティのリファレンス
+
+
+|プロパティ名| 説明|
+|-------------|------------|
+|**Scatter Radius:**|スキャタリングを行うワールド スペース単位の距離です。|
+|**Subsurface Color:**|サブサーフェス エフェクトのウェイトとして使用できます。黒はサブサーフェス スキャタリングがないことを意味します。白はすべてのライティングがマテリアルに入り、周囲に散乱することを意味します。非グレイスケール値は、どの色の寄与がサーフェスに入ってきて、より複雑な外観のシェーディングになるかをさらに制御します。 |
+|**Falloff Color**|フォールオフ カラーは、ライトがマテリアルに入った後のマテリアルのスキャタリング カラーを定義します。スキャタリングが見えるエリアでシェーディングがより複雑に変化するようにしたければ、ここでは鮮明な色を使用しないようにします。|
## 謝辞
-ヘッドモデルの提供とご支援いただいた Lee Perry-Smith 氏と彼の会社 [Infinite Realities](http://ir-ltd.net) に深く感謝いたします。
+ヘッドモデルの提供とご支援いただいた Lee Perry-Smith 氏と Perry-Smith 氏の [Infinite Realities] (http://ir-ltd.net ) に深く感謝いたします。
また、この機能のもとになった実装をリリースいただいた [Jorge Jimenez 氏](http://www.iryoku.com/) にも深く感謝いたします。
-
-
-
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.INT.udn
index 3de574cae067..385ce23d8de8 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.INT.udn
@@ -3,7 +3,7 @@ Title:Materials
Crumbs: %ROOT%, Engine
Description:Controlling the appearance of surfaces in the world using shaders.
Navigation:topic
-Version:4.9
+Version:4.15
parent:Engine/Rendering
order:2
type:landing
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.JPN.udn
index 5d1b8391310f..52162787f975 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.JPN.udn
@@ -1,10 +1,10 @@
-INTSourceChangelist:3155346
+INTSourceChangelist:3481084
Availability:Public
-Title:Materials
+Title:マテリアル
Crumbs: %ROOT%, Engine
-Description:シェーダを使ったワールド内のサーフェスの外観の調節
+Description:シェーダを使ってワールド内のサーフェスの外観を調節する
Navigation:topic
-Version:4.9
+Version:4.15
parent:Engine/Rendering
order:2
type:landing
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.KOR.udn
index ea8eb529ccfc..4e6ab0b26a39 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/MaterialsAndTextures.KOR.udn
@@ -1,10 +1,10 @@
-INTSourceChangelist:3155346
+INTSourceChangelist:3481084
Availability:Public
Title:머티리얼
Crumbs: %ROOT%, Engine
Description:셰이더를 활용하여 월드의 표면 외형을 제어하는 방법입니다.
Navigation:topic
-Version:4.9
+Version:4.15
parent:Engine/Rendering
order:2
type:landing
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.CHN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.CHN.udn
similarity index 100%
rename from Engine/Documentation/Source/Engine/Rendering/Materials/HowTo/MeshDecals/MeshDecals.CHN.udn
rename to Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.CHN.udn
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.INT.udn
new file mode 100644
index 000000000000..32e441b181f3
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.INT.udn
@@ -0,0 +1,99 @@
+Availability:Public
+Title: Mesh Decals Overview
+Description: This is an overview of the Mesh Decals feature in Unreal Engine 4.
+Crumbs:
+parent: Engine/Rendering/Materials
+Related:Engine/Rendering/Materials/howto/MeshDecals
+order: 14
+type:overview
+version:4.15
+Topic-image: MeshDecalTopic.png
+tags:Materials
+tags: Decals
+
+[TOC (start:2 end:2)]
+
+Unreal Engine 4 now has support for **Mesh Decals**, enabling you to use the properties of Deferred Decals on separate surface geometry
+for added detail to your Static and Skeletal Meshes. Because Deferred Decals rely on projection, you are limited to mostly planar surface
+details that shear and distort when not aligned with the surface it’s projecting onto. Mesh Decals afford you decals that do not follow a
+simple projection and instead can be used with geometry that wraps around edges, being used with spline meshes, ultimately enhancing the
+look of your characters.
+
+
+
+## Mesh Decal versus Masked Material
+
+Mesh Decals are a mix of translucent blend mode and deferred decals in that they do not render to depth but do update the GBuffer or DBuffer
+after the opaque geometry has been rendered. In contrast to using a masked material, there is no cost for EarlyZ pass, you don't get shadows
+or proper occlusion, but with the trade-off, you get the soft transitions in the material.
+
+Mesh Decals provide several differences to Deferred Decal Actors that you should be aware of:
+
+* Since large Deferred Decals often do front and back facing draw calls, there are fewer draw calls.
+* Since there are fewer pixels covered and flat back facing decals cover 0 pixels, it's quite faster.
+* Since you can use a custom UV, You have the ability to do more complex projections.
+* You have the ability to have properly normal mapped decals wrapping around surfaces (or stretching along splines).
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:400)
+ [/PARAM]
+ [PARAM:after]
+ (w:400)
+ [/PARAM]
+[/OBJECT]
+
+## Authoring Content
+
+Authoring content for use as Mesh Decal geometry is in line with any model creation. Since this geometry will not rely on projection (like a Deferred Decal Actor), the geometry
+needs only to stay in front of the surface you want to affect. With this in mind, the decal geometry should "hug" the underlying surface, but it does not have to match it very closely
+because there is already a small depth bias applied to account for this small offset. Also, using a bit of geometry that feathers out from the decal can be good to create the soft transitions
+for the decal, which is something you cannot attain with a masked material.
+
+
+
+[REGION:imagetable]
+| (h:450) | (h:450) |
+| --- | --- |
+| Base Mesh and Decal Geometry (Isolated) | Composited Mesh |
+[/REGION]
+
+
+Another thing to keep in mind when developing your content, is that Mesh Decals can be a challenge with Levels of Detail (LOD), or long view distances when there is limited depth buffer
+precision, because geometry will intersect (or not match-up) as intended. However, you can either change the mesh to account for this (in most cases), or you can use **World Position Offset** in
+your material to adjust the offset without having to return to your modeling application.
+
+(w:500)
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+In this example, the decal geometry is close enough to the base mesh, such that the depth cannot account for the offset. Using a small negative offset value pushes the geometry out just enough so that it
+does not intersect with the underlying geometry.
+
+## Notes
+
+* DBuffer and non-DBuffer use the same container.
+* Sort by depth to avoid artifacts when there are many layers overlapping.
+* Parallel Rendering isn't yet hooked up. There are some CPU savings if this feature is used extensively.
+
+## Limitations
+
+* Material Editor Preview is not visible.
+* There is no artist specified sort order.
+* Tangent Space support is not yet implemented.
+* Shader Overdraw/Overdraw functionality is missing.
+* Since it assumes base pass usage, the Material Editor does not currently show the correct instructions count.
+* There is no easily adjustable DepthBias. Currently, you have to use an offset in the mesh from the surface it's above, or control with World Position Offset in the Material.
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.JPN.udn
new file mode 100644
index 000000000000..2f21353d42c8
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.JPN.udn
@@ -0,0 +1,100 @@
+INTSourceChangelist:3455346
+Availability:Public
+Title:メッシュ デカールの概要
+Description:アンリアル エンジン 4 のメッシュ デカール機能の概要を説明します。
+Crumbs:
+parent:Engine/Rendering/Materials
+Related:Engine/Rendering/Materials/howto/MeshDecals
+order:14
+type:overview
+version:4.15
+Topic-image:MeshDecalTopic.png
+tags:Materials
+tags:Decals
+
+[TOC (start:2 end:2)]
+
+アンリアル エンジン 4 で **メッシュ デカール** がサポートされるようになりました。
+これにより、スタティクメッシュおよびスケルタルメッシュに追加した詳細に対して、別のサーフェス ジオメトリ上でディファード デカールのプロパティが使用できます。ディファード デカールはプロジェクションに依存するので、
+投影先のサーフェスと一致しない時にシアおよび変形が生じる平面サーフェイス ディティールにほぼ限定されます。メッシュ デカールは、シンプルなプロジェクションを追わずに
+エッジの周囲をラップするジオメトリやスプライン メッシュと一緒に使用し、
+キャラクターの外見を美しくします。
+
+
+
+## メッシュ デカールとマスク付きマテリアルの比較
+
+メッシュ デカールは、透過ブレンド モードとディファード デカールを混ぜたものです。
+不透明なジオメトリがレンダリングされた後、深部まではレンダリングせず、GBuffer または DBuffer の更新を行います。マスク付きマテリアルの使用とは対照的に、EarlyZ pass の負荷がなく、
+シャドウあるいは適切なオクルージョンは得ませんが、その代わりマテリアルがソフトに変形します。
+
+メッシュ デカールは、Deferred Decal アクタとは以下の点で異なります。
+
+* 大きいディファード デカールの場合、正面向きと後ろ向きの描画コールをするので、描画コール数が減ります。
+* カバーするピクセルも減り、デカールの背面が平らな場合はカバーするピクセルがないのでかなり速くなります。
+* カスタム仕様の UV も使用できるので、より複雑なプロジェクションの実行が可能になります。
+* 正しく法線マップ化したデカールをサーフェスの周りにラップする (またはスプラインに沿って伸ばす) ことができます。
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:400)
+ [/PARAM]
+ [PARAM:after]
+ (w:400)
+ [/PARAM]
+[/OBJECT]
+
+## コンテンツのオーサリング
+
+コンテンツをメッシュ デカール ジオメトリとして使用するオーサリングは、すべてのモデル作成と一致しています。このジオメトリは (ディファード デカール アクタとは違って) プロジェクションに依存はしないので、
+ジオメトリは影響を与えたいサーフェスの正面にあるだけで良いです。このことを踏まえた上で、この小さなオフセットの主要要因となる小さな深度バイアスが既にあるので、
+デカール ジオメトリは下層のサーフェスには合わせますが、そこまでぴったり一致する必要はありません。さらに、デカールの境界をぼかすジオメトリを少し使うと、
+マスク付きマテリアルでは実現できないデカール用の柔らかいトランジションを作成することができます。
+
+
+
+[REGION:imagetable]
+| (h:450) | (h:450) |
+| --- | --- |
+| 基本メッシュとデカール ジオメトリ (個々) | 合成したメッシュ |
+[/REGION]
+
+
+ジオメトリには深度バッファ精度に限度があるため、
+メッシュ デカールでの LOD あるいは長距離表示は難しいということも覚えておくと良いでしょう。ただしほとんどの場合は、メッシュを変更すれば解決しますし、
+マテリアルに **World Position Offset** を使えばモデリング アプリケーションに戻らずにオフセットの調節ができます。
+
+(w:500)
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+この例では、デカール ジオメトリは、基本メッシュに近すぎて、深度がオフセットを考慮できません。小さな負のオフセット値を使うと、ジオメトリを十分押し出すので、
+下層のジオメトリと交わりません。
+
+## 注記
+
+* DBuffer も non-DBuffer も同じコンテナを使用します。
+* レイヤー オーバーラップが多い場合は、アーティファクトを避けるために深度でソートします。
+* 並列レンダリングはまだ組み込まれていません。この機能を広範囲に使用すると CPU 負荷を若干抑えることができます。
+
+## 制限事項
+
+* マテリアル エディタ プレビューは表示されません。
+* アーティストはソート順序を指定しません。
+* タンジェント空間はまだサポートされていません。
+* Shader Overdraw/Overdraw 機能がついていません。
+* マテリアル エディタはベース パスの使用を前提としているので、正しい命令数は表示しません。
+* 深度バイアスの調整が簡単ではありません。現在、上にあるサーフェスからメッシュのオフセットを使用するか、マテリアルの World Position Offset で調整しなければなりません。
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.KOR.udn
new file mode 100644
index 000000000000..adfbc209e4dd
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/MeshDecals/MeshDecals.KOR.udn
@@ -0,0 +1,100 @@
+INTSourceChangelist:3455346
+Availability:Public
+Title: 메시 데칼 개요
+Description: 메시 데칼에 대한 개요입니다.
+Crumbs:
+parent: Engine/Rendering/Materials
+Related:Engine/Rendering/Materials/howto/MeshDecals
+order: 14
+type:overview
+version:4.15
+Topic-image: MeshDecalTopic.png
+tags:Materials
+tags: Decals
+
+[TOC (start:2 end:2)]
+
+언리얼 엔진 4 에는 이제 Mesh Decal (메시 데칼)이 지원되어 별도의 표면 지오메트리에 디퍼드 데칼 프로퍼티를 사용할 수 있어
+스태틱 / 스켈레탈 메시에 디테일을 추가할 수 있습니다. 디퍼드 데칼은 투영에 의존하므로, 투영 대상 표면에 일치하지 않으면 잘리고 뒤틀리는
+평면 표면 디테일에 거의 제한됩니다. 메시 데칼은 단순 투영을 따르지 않는 데칼을 제공해 주는 대신
+에지를 감싸는 지오메트리나 스플라인 메시와 함께 사용할 수 있으며,
+캐릭터의 외형을 강화시켜 줍니다.
+
+
+
+## 메시 데칼 VS 마스크드 머티리얼
+
+메시 데칼은 뎁스 렌더링은 하지 않지만 불투명 지오메트리 렌더 후 GBuffer 와 DBuffer 업데이트를 한다는 점에서 반투명 블렌드 모드와 디퍼드 데칼을 섞은 것입니다.
+마스크드 머티리얼을 사용한 것과 비교하면, EarlyZ 패스 비용이 없고, 그림자나 적절한 오클루전도 없지만,
+그에 대한 균형으로 머티리얼에 부드러운 전환이 가능합니다.
+
+메시 데칼은 Deffered Decal Actor (디퍼드 데칼 액터)에 비해 주의해야 할 차이점이 몇 가지 있습니다:
+
+* 커다란 디퍼드 데칼은 종종 앞면과 뒷면 드로 콜을 하므로 드로 콜 수가 적습니다.
+* 커버되는 픽셀 수가 적고 평평한 뒷면 데칼은 0 픽셀을 커버하므로 꽤 빠릅니다.
+* 커스텀 UV 를 사용할 수 있어 보다 복잡한 투영이 가능합니다.
+* 스플라인 상에 늘어나거나 표면을 감싸도록 제대로 노멀 매핑된 데칼을 가질 수 있습니다.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:400)
+ [/PARAM]
+ [PARAM:after]
+ (w:400)
+ [/PARAM]
+[/OBJECT]
+
+## 콘텐츠 제작
+
+메시 데칼 지오메트리로 사용할 콘텐츠를 제작하는 것은 모델 생성과 밀접한 관계가 있습니다. 이 지오메트리는 디퍼드 데칼 액터처럼 투영에 의존하지 않으므로, 지오메트리는
+영향을 주고자 하는 표면 앞에만 있으면 됩니다. 이 점을 염두에 두고, 데칼 지오메트리는 아래 놓인 표면을 "hug"해야 하지만, 매우 근접하게 일치할 필요는 없습니다.
+이런 작은 오프셋을 위해 이미 약간의 뎁스 바이어스가 하드코딩되어 있기 때문입니다. 또한, 데칼에서 점차 사라지는 지오메트리를 약간 사용하면
+마스크드 머티리얼로는 얻을 수 없는 데칼의 부드러운 전환 효과를 내는 데 좋습니다.
+
+
+
+[REGION:imagetable]
+| (h:450) | (h:450) |
+| --- | --- |
+| 베이스 메시 및 데칼 지오메트리 (고립) | 합성 메시 |
+[/REGION]
+
+
+또 한가지 콘텐츠 개발시 염두에 두어야 할 점은, 메시 데칼은 뎁스 버퍼 정밀도 제한으로 인해 레벨 오브 디테일(LOD)이나 원거리에서 볼 때 문제가 될 수 있습니다.
+지오메트리가 교차하거나 의도대로 일치하지 않기 때문입니다. 하지만 대부분의 경우 메시가 이 부분을 고려하도록 변경하거나, 머티리얼의 월드 포지션 오프셋을 사용하여 오프셋을 조절하면
+모델링 프로그램으로 돌아가 별도의 작업을 하지 않아도 됩니다.
+
+(w:500)
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:500)
+ [/PARAM]
+ [PARAM:after]
+ (w:500)
+ [/PARAM]
+[/OBJECT]
+
+이 예제에서, 뎁스가 오프셋을 처리하지 못하는 베이스 메시에 데칼 지오메트리가 충분히 가까이 있습니다. 작은 음수 오프셋 값을 사용하면 아래 있는 지오메트리와 교차하지 않을 만큼 지오메트리를
+약간 밀어줍니다.
+
+## 주
+
+* DBuffer 및 non-DBuffer 는 같은 컨테이너를 사용합니다.
+* 겹치는 레이어가 여럿 있을 때 부작용을 피하기 위해 깊이로 소트합니다.
+* Parallel Rendering (병렬 렌더링)이 아직 후크되지 않았습니다. 이 기능을 적극 활용하면 CPU 비용이 약간 절약됩니다.
+
+## 한계점
+
+* 머티리얼 에디터 프리뷰가 보이지 않습니다.
+* 소트 순서를 아티스트가 지정할 수 없습니다.
+* 탄젠트 스페이스 지원이 아직 구현되지 않았습니다.
+* Shader Overdraw/Overdraw 함수 기능이 빠져있습니다.
+* 머티리얼 에디터에 현재 올바른 인스트럭션 수가 표시되지 않습니다. 베이스 패스 사용량을 추정하기 때문입니다.
+* 쉽게 조절 가능한 DepthBias 가 없습니다. 현재 메시 위의 표면에서 메시의 오프셋을 사용하거나, 머티리얼의 월드 포지션 오프셋으로 제어해야 합니다.
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.CHN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.CHN.udn
index bd01420eaf92..aa713575ea9d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.CHN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.CHN.udn
@@ -1,46 +1,54 @@
-INTSourceChangelist:0
-Availability: Docs
-Title:Refraction Mode: Pixel Normal Offset
-Crumbs: %ROOT%, Engine, Engine/Rendering/Materials
-Description:How to use the Refraction mode for Pixel Normal Offset in your Materials.
-Related: Engine/REndering/Materials/HowTo/Refraction
-Version: 4.13
-SkillLevel: Intermediate
+INTSourceChangelist:3378497
+Availability:Public
+Title:折射模式:像素法线偏移
+Crumbs:
+Description:材质中像素法线偏移折射模式总览。
+Related:Engine/Rendering/Materials
+Related:Engine/Rendering/Materials/HowTo/Refraction
+Version:4.14
+SkillLevel:Intermediate
+Parent:Engine/Rendering/Materials
+Order:13
+type:overview
+tags:Materials
+topic-image:PNO_Topic.png
+
+[TOC(start:2 end:2)]
+
+在虚幻引擎 4 的当前版本中,我们使用了折射的非物理模型 **像素法线偏移(Pixel Normal Offset)**。内嵌代码使用 **Index of Refraction** 的折射物理模型,以光线在媒介之间的折射方式为基础,可能导致大量穿帮(因为场景颜色在屏幕外读取)。可用于玻璃罐之类的小型物体(效果不甚明显),但在平面上存在问题。**像素法线偏移(Pixel Normal Offset)** 可为水面之类的大型平面启用折射,此处常量偏移不会从远离屏幕之外之处进行读取。它以顶点法线作为参考,然后通过逐像素法线和顶点法线之间的差别计算折射偏移,使这些平面不会移位。
+
+## 折射的物理和非物理模型
+
+在下方的对比中,**Index of Refraction** 物理模型的折射模式和 **Pixel Normal Offset** 的非物理模型展示了材质中
+法线读取方式的差异。
+
+[REGION:note]
+可阅读 [使用折射](Engine/Rendering/Materials/HowTo/Refraction) 页面,了解折射物理模型的更多内容,以及如何结合材质使用。
+[/REGION]
+
+[REGION:imagetable]
+| [INCLUDE:#IORWithoutNormals] | [INCLUDE:#PNOWithoutNormals] |
+| (w:400) | (w:400) |
+|---|---|
+| 折射物理模型:无法线贴图 Index of Refraction| 折射非物理模型:无法线贴图 Pixel Normal Offset |
+[/REGION]
+
+在此处对比 **Index of Refraction** 模式和 **Pixel Normal Offset** 模式(不从屏幕过远的地方进行读取)后,即可发现图像出现移位。**Index of Refraction** 无需法线贴图插入材质即可使用;而 **Pixel Normal Offset** 没有法线贴图则无法获得折射。
-[TOC(start:2 end:3)]
+[REGION:imagetable]
+| [INCLUDE:#IORWithNormals] | [INCLUDE:#PNOWithNormals] |
+| (w:400) | (w:400) |
+|---|---|
+| 带法线贴图的物理模型 | 带法线贴图的非物理模型 |
+[/REGION]
+添加法线贴图到材质时,大于 1 的折射值插入 Refraction 输入;使用 **Pixel Normal Offset** 后法线将沿表面平移。
+然而您会注意到使用 **Index of Refraction** 后仍然会从屏幕外读取偏移,对使用折射的平面而言并非理想效果。
+## 最终结果
-The Refraction in Unreal Engine 4 is based on how light rays refract as they are transferred between mediums with different Indices of Refraction that acts as a physical model
-for refraction, which can have unforeseen artifacts for large surfaces. In Unreal Engine 4.13 and higher, you now can select a non-physical refraction model that uses the vertex
-normal as a reference and then computes the difference to have better results for large surfaces, like water or glass panes.
-
-
-## Steps
-
-To use the Refraction Mode for Pixel Offset Normal select the main material inputs node then in the Detail's panel use the drop-down selection for Refraction Mode to select between the
-built-in **Index of Refraction** or the **Pixel Normal Offset** model.
-
-1. Select the **Main Material Node** and in the **Detail's** panel scroll down to the section named **Refraction**. Use the drop-down next to **Refraction Mode** to choose
-between the Index of Refraction and Pixel Normal Offset.
-
- (w:350)
-
- Select **Pixel Normal Offset**.
-
- (w:350)
-
-2. In the Material Graph, use the following setup to control the amount of refraction for your material. Use a **Scalar Parameter** plugged into the **Lerp's** input **B** to
-control the amount of refraction.
-
- [REGION:lightbox]
- [(w:350)](RefractionInput.png)
- [/REGION]
- _You can use a constant value or a Lerp node to get a nice variation between the surface detail and defined Index of Refraction._
-
-By using a Scalar Parameter that can be dynamically adjusted, the [Index of Refraction](https://docs.unrealengine.com/latest/INT/Engine/Rendering/Materials/HowTo/Refraction/#indexofrefractionorior)
-can easily be controlled like the example here that uses a sliding range between 1.0 and 10.0.
+在此例中,折射量在值 1.0(完全无折射)到 2.0 之间调整,使用 **Pixel Normal Offset** 时沿表面形成一些折射而不使图像发生移位。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -50,48 +58,37 @@ can easily be controlled like the example here that uses a sliding range between
360
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
- 6UnuWlr0C5Y
+ H8FGf4iZdn0
[/PARAMLITERAL]
[/OBJECT]
-## Key Benefits
-The benefit of using the Refraction Mode for Pixel Normal Offset can instantly be seen when using large flat surfaces where refraction is used since it is not going to read from outside
-the scene. This provides a leap in quality for fluid water surfaces over the built-in model that is really good for smaller objects, like glassware.
-(w:640)
-[REGION:caption]
-_Index of Refraction model with artist defined value of 1.5_
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.JPN.udn
index dcc98cc17afc..6522dfd15c92 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3340108
+INTSourceChangelist:3378497
Availability:Public
Title:Refraction モード:Pixel Normal Offset
Crumbs:
@@ -7,8 +7,8 @@ Related:Engine/Rendering/Materials
Related:Engine/Rendering/Materials/HowTo/Refraction
Version:4.14
SkillLevel:Intermediate
-parent:Engine/Rendering/Materials
-order:13
+Parent:Engine/Rendering/Materials
+Order:13
type:overview
tags:Materials
topic-image:PNO_Topic.png
diff --git a/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.KOR.udn
index 6eb24db0b263..eb6d4c841c39 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Materials/PixelNormalOffset/RefractionPixelNormalOffset.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3340108
+INTSourceChangelist:3378497
Availability: Public
Title:굴절 모드: 픽셀 노멀 오프셋
Crumbs:
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.CHN.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.CHN.udn
new file mode 100644
index 000000000000..07bf4f82f6c0
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.CHN.udn
@@ -0,0 +1,26 @@
+INTSourceChangelist:0
+Availability:Docs
+Crumbs:
+Title: NVIDIA Aftermath
+Description: Integration of Nvidia's Aftermath technology that enabls post-mortem GPU crash analysis on NVIDIA GeForce based GPUs.
+Type:Overview
+Version:4.15
+Parent:Engine/Nvidia
+Order:1
+topic-image:Aftermath_Topic.png
+Tags:Nvidia
+
+
+[REGION:fullwidth raw]
+(w:900)
+[/REGION]
+
+As of version 4.15.2, Unreal Engine supports Nvidia's **Aftermath** C++ library for Windows-based developers, which provides additional data from Nvidia GeForce-based GPUs after a crash occurs.
+This data contains crucial information about what the GPU was doing when the crash occurred, enabling you to track down what's happening with the GPU in your own projects.
+
+Aftermath is a lightweight tool that is unobtrusive and reduces the performance footprint needed by some debugging tools. In fact, it's lightweight enough that it can even ship with finished
+games to provide the data you need from your customers' machines. Aftermath enables programmers to insert markers into their code that assist in tracking the root causes of crashes. This is
+now being used in the Unreal Engine Editor to track down and fix reported or captured issues.
+
+For additional information and how to use it in your own project, visit [Nvidia's Aftermath documentation](https://developer.nvidia.com/nvidia-aftermath) page.
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.INT.udn
new file mode 100644
index 000000000000..c2ed329c9c53
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.INT.udn
@@ -0,0 +1,25 @@
+Availability:Docs
+Crumbs:
+Title: NVIDIA Aftermath
+Description: Integration of Nvidia's Aftermath technology that enabls post-mortem GPU crash analysis on NVIDIA GeForce based GPUs.
+Type:Overview
+Version:4.15
+Parent:Engine/Nvidia
+Order:1
+topic-image:Aftermath_Topic.png
+Tags:Nvidia
+
+
+[REGION:fullwidth raw]
+(w:900)
+[/REGION]
+
+As of version 4.15.2, Unreal Engine supports Nvidia's **Aftermath** C++ library for Windows-based developers, which provides additional data from Nvidia GeForce-based GPUs after a crash occurs.
+This data contains crucial information about what the GPU was doing when the crash occurred, enabling you to track down what's happening with the GPU in your own projects.
+
+Aftermath is a lightweight tool that is unobtrusive and reduces the performance footprint needed by some debugging tools. In fact, it's lightweight enough that it can even ship with finished
+games to provide the data you need from your customers' machines. Aftermath enables programmers to insert markers into their code that assist in tracking the root causes of crashes. This is
+now being used in the Unreal Engine Editor to track down and fix reported or captured issues.
+
+For additional information and how to use it in your own project, visit [Nvidia's Aftermath documentation](https://developer.nvidia.com/nvidia-aftermath) page.
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.JPN.udn
new file mode 100644
index 000000000000..73628a5d33f0
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.JPN.udn
@@ -0,0 +1,26 @@
+INTSourceChangelist:3435012
+Availability:Docs
+Crumbs:
+Title:NVIDIA Aftermath
+Description:NVIDIA GeForce GPU に対するクラッシュ発生後の分析を可能にする Nvidia Aftermath 技術の統合
+Type:Overview
+Version:4.15
+Parent:Engine/Nvidia
+Order:1
+topic-image:Aftermath_Topic.png
+Tags:Nvidia
+
+
+[REGION:fullwidth raw]
+(w:900)
+[/REGION]
+
+アンリアル エンジン 4.15.2 では、Windows 使用のデベロッパー向けに Nvidia の **Aftermath** C++ ライブラリをサポートしています。これにより、クラッシュ発生後に Nvidia GeForce-based GPUwhich からの追加データを提供します。
+このデータにはクラッシュ時に GPU が何を行っていたかという重要な情報が含まれ、プロジェクトの GPU に起きている問題の追跡が可能になります。
+
+Aftermath は、他のデバッグツールに比べてパフォーマンス使用料が控えめで負荷の少ないツールです。完成品のゲームと一緒に出荷して、
+カスタマーのマシンから必要なデータの追加が可能なほど低負荷です。Aftermath は、プログラマーがクラッシュの主要因の追跡を支援するマーカーをコードに挿入できるようにします。Aftermath は現在アンリアル エンジン エディタにおいて、
+問題の追跡し、レポートあるいは発見された問題を修正のために使用されています。
+
+詳細およびプロジェクトでの使用方法に関しては、[Nvidia's Aftermath documentation](https://developer.nvidia.com/nvidia-aftermath) ページをご覧ください。
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.KOR.udn
new file mode 100644
index 000000000000..07bf4f82f6c0
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAftermath/NvidiaAftermath.KOR.udn
@@ -0,0 +1,26 @@
+INTSourceChangelist:0
+Availability:Docs
+Crumbs:
+Title: NVIDIA Aftermath
+Description: Integration of Nvidia's Aftermath technology that enabls post-mortem GPU crash analysis on NVIDIA GeForce based GPUs.
+Type:Overview
+Version:4.15
+Parent:Engine/Nvidia
+Order:1
+topic-image:Aftermath_Topic.png
+Tags:Nvidia
+
+
+[REGION:fullwidth raw]
+(w:900)
+[/REGION]
+
+As of version 4.15.2, Unreal Engine supports Nvidia's **Aftermath** C++ library for Windows-based developers, which provides additional data from Nvidia GeForce-based GPUs after a crash occurs.
+This data contains crucial information about what the GPU was doing when the crash occurred, enabling you to track down what's happening with the GPU in your own projects.
+
+Aftermath is a lightweight tool that is unobtrusive and reduces the performance footprint needed by some debugging tools. In fact, it's lightweight enough that it can even ship with finished
+games to provide the data you need from your customers' machines. Aftermath enables programmers to insert markers into their code that assist in tracking the root causes of crashes. This is
+now being used in the Unreal Engine Editor to track down and fix reported or captured issues.
+
+For additional information and how to use it in your own project, visit [Nvidia's Aftermath documentation](https://developer.nvidia.com/nvidia-aftermath) page.
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.CHN.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.CHN.udn
new file mode 100644
index 000000000000..ae8ed23bcdff
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.CHN.udn
@@ -0,0 +1,46 @@
+INTSourceChangelist:0
+Availability:Docs
+Crumbs:
+Title: NVIDIA SLI Alternate Frame Rendering
+Description: Integration of Nvidia's Alternate Frame Rendering technology that enables support for games using SLI.
+Type:Overview
+Version:4.15
+Parent:Engine/Nvidia
+Order:1
+topic-image:AFR_topic.png
+Tags:Nvidia
+
+
+[REGION:fullwidth raw]
+
+[/REGION]
+
+
+As of version 4.15, Unreal Engine supports NVIDIA's **Alternate Frame Rendering** (AFR) for packaged games running on NVIDIA SLI configurations. AFR works by alternating frames between the linked
+GPUs; one frame is rendered by GPU 1, then the next frame is rendered by GPU 2, then back to GPU 1, and so on. By using multiple GPUs on a single monitor, its output can increase in image quality
+and performance!
+
+With AFR, the largest improvement in performance comes from the renderer copying inter-frame dependencies between GPUs as early as possible. Developers who intend to use AFR will still need to
+work directly with NVIDIA to test their games and to have it automatically switch over to use the Alternating Frame Rendering functionality where appropriate.
+
+For additional details, you can read NVIDIA's documentation on their [SLI modes, specifically Alternate Frame Rendering](https://docs.nvidia.com/gameworks/content/technologies/desktop/sli.htm) here.
+
+## Force Enabling AFR
+
+For some applications, the NVIDIA Control Panel enables you to add a program for which the SLI Rendering mode will have AFR forcibly enabled. To do this, follow these steps:
+
+1. Open the **NVIDIA Control Panel** from your task tray, then navigate to **Manage 3D Settings**.
+1. Click on the **Program Settings** tab, then under **Select a program to cumstomize** use the drop-down to select a program to add.
+1. Next to the option for **SLI Rendering Mode**, you can select **Force Alternate Frame Rendering**.
+
+
+
+[REGION:note]
+This feature is not guaranteed to improve the quality or performance of your application. It is not intended for use with the Unreal Engine 4 Editor. Talking directly with NVIDIA to set up this
+functionality with their own driver is highly recommended.
+[/REGION]
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.INT.udn
new file mode 100644
index 000000000000..4a342b34866f
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.INT.udn
@@ -0,0 +1,45 @@
+Availability:Docs
+Crumbs:
+Title: NVIDIA SLI Alternate Frame Rendering
+Description: Integration of Nvidia's Alternate Frame Rendering technology that enables support for games using SLI.
+Type:Overview
+Version:4.15
+Parent:Engine/Nvidia
+Order:1
+topic-image:AFR_topic.png
+Tags:Nvidia
+
+
+[REGION:fullwidth raw]
+
+[/REGION]
+
+
+As of version 4.15, Unreal Engine supports NVIDIA's **Alternate Frame Rendering** (AFR) for packaged games running on NVIDIA SLI configurations. AFR works by alternating frames between the linked
+GPUs; one frame is rendered by GPU 1, then the next frame is rendered by GPU 2, then back to GPU 1, and so on. By using multiple GPUs on a single monitor, its output can increase in image quality
+and performance!
+
+With AFR, the largest improvement in performance comes from the renderer copying inter-frame dependencies between GPUs as early as possible. Developers who intend to use AFR will still need to
+work directly with NVIDIA to test their games and to have it automatically switch over to use the Alternating Frame Rendering functionality where appropriate.
+
+For additional details, you can read NVIDIA's documentation on their [SLI modes, specifically Alternate Frame Rendering](https://docs.nvidia.com/gameworks/content/technologies/desktop/sli.htm) here.
+
+## Force Enabling AFR
+
+For some applications, the NVIDIA Control Panel enables you to add a program for which the SLI Rendering mode will have AFR forcibly enabled. To do this, follow these steps:
+
+1. Open the **NVIDIA Control Panel** from your task tray, then navigate to **Manage 3D Settings**.
+1. Click on the **Program Settings** tab, then under **Select a program to cumstomize** use the drop-down to select a program to add.
+1. Next to the option for **SLI Rendering Mode**, you can select **Force Alternate Frame Rendering**.
+
+
+
+[REGION:note]
+This feature is not guaranteed to improve the quality or performance of your application. It is not intended for use with the Unreal Engine 4 Editor. Talking directly with NVIDIA to set up this
+functionality with their own driver is highly recommended.
+[/REGION]
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.JPN.udn
new file mode 100644
index 000000000000..d62404f53747
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.JPN.udn
@@ -0,0 +1,46 @@
+INTSourceChangelist:3435012
+Availability:Docs
+Crumbs:
+Title:NVIDIA SLI Alternate Frame Rendering
+Description:SLI を使用するゲームのサポートを可能にする Nvidia Alternate Frame Rendering 機能
+Type:Overview
+Version:4.15
+Parent:Engine/Nvidia
+Order:1
+topic-image:AFR_topic.png
+Tags:Nvidia
+
+
+[REGION:fullwidth raw]
+
+[/REGION]
+
+
+アンリアル エンジン 4.15 では、NVIDIA SLI コンフィギュレーションでパッケージ化されたゲームを実行するための NVIDIA **Alternate Frame Rendering** (AFR) がサポートされています。AFR は結びついた GPU 間でフレームを交互に変える、
+つまり 1 つのフレームを GPU 1、次のフレームは GPU 2、その次はまたは GPU 1 を使ってレンダリングをすることにより動作します。単一のモニタ上で複数の GPU を使用すると、
+画質とパフォーマンスが向上します!
+
+AFR によってパフォーマンスで最も改善される点は、レンダラが GPU 間でフレーム間の依存性を可能な限り早くコピーすることです。AFR を使用する場合、デベロッパーは NVIDIA を直接使ってゲームをテストし、
+必要に応じて Alternating Frame Rendering 機能へ自動的に切り替わるようにする必要があります。
+
+詳細に関下は、NVIDIA のドキュメント [SLI modes, specifically Alternate Frame Rendering](https://docs.nvidia.com/gameworks/content/technologies/desktop/sli.htm) をご覧ください。
+
+## AFR を強制的に有効にする方法
+
+アプリケーションの中には、NVIDIA コントロール パネルでプログラムを追加できる場合があります。以下の手順で行います。
+
+1. タスク トレイから **[NVIDIA Control Panel]** を開いて、**[Manage 3D Settings]** を開きます。
+1. **[Program Settings]** タブをクリックして **[Select a program to cumstomize]** の下のドロップダウンから追加するプログラムを選択します。
+1. **[SLI Rendering Mode]** オプションの横にある **[Force Alternate Frame Rendering]** を選択します。
+
+
+
+[REGION:note]
+この機能はアプリケーションの品質もしくはパフォーマンスの改善を保証するものではありません。アンリアル エンジン 4 エディタによる使用を意図していません。NVIDIA のドライバーでこの機能を設定する場合は、
+直接 NVIDIA に問い合わせることを強くお勧めします。
+[/REGION]
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.KOR.udn
new file mode 100644
index 000000000000..ae8ed23bcdff
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/NVAlternateFrameRendering/NvidiaAlternateFrameRendering.KOR.udn
@@ -0,0 +1,46 @@
+INTSourceChangelist:0
+Availability:Docs
+Crumbs:
+Title: NVIDIA SLI Alternate Frame Rendering
+Description: Integration of Nvidia's Alternate Frame Rendering technology that enables support for games using SLI.
+Type:Overview
+Version:4.15
+Parent:Engine/Nvidia
+Order:1
+topic-image:AFR_topic.png
+Tags:Nvidia
+
+
+[REGION:fullwidth raw]
+
+[/REGION]
+
+
+As of version 4.15, Unreal Engine supports NVIDIA's **Alternate Frame Rendering** (AFR) for packaged games running on NVIDIA SLI configurations. AFR works by alternating frames between the linked
+GPUs; one frame is rendered by GPU 1, then the next frame is rendered by GPU 2, then back to GPU 1, and so on. By using multiple GPUs on a single monitor, its output can increase in image quality
+and performance!
+
+With AFR, the largest improvement in performance comes from the renderer copying inter-frame dependencies between GPUs as early as possible. Developers who intend to use AFR will still need to
+work directly with NVIDIA to test their games and to have it automatically switch over to use the Alternating Frame Rendering functionality where appropriate.
+
+For additional details, you can read NVIDIA's documentation on their [SLI modes, specifically Alternate Frame Rendering](https://docs.nvidia.com/gameworks/content/technologies/desktop/sli.htm) here.
+
+## Force Enabling AFR
+
+For some applications, the NVIDIA Control Panel enables you to add a program for which the SLI Rendering mode will have AFR forcibly enabled. To do this, follow these steps:
+
+1. Open the **NVIDIA Control Panel** from your task tray, then navigate to **Manage 3D Settings**.
+1. Click on the **Program Settings** tab, then under **Select a program to cumstomize** use the drop-down to select a program to add.
+1. Next to the option for **SLI Rendering Mode**, you can select **Force Alternate Frame Rendering**.
+
+
+
+[REGION:note]
+This feature is not guaranteed to improve the quality or performance of your application. It is not intended for use with the Unreal Engine 4 Editor. Talking directly with NVIDIA to set up this
+functionality with their own driver is highly recommended.
+[/REGION]
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.CHN.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.CHN.udn
new file mode 100644
index 000000000000..b37138ce48f2
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.CHN.udn
@@ -0,0 +1,24 @@
+INTSourceChangelist:0
+Availability:Docs
+Title:NVIDIA Feature Support
+Description: Integrated and supported technologies from NVIDIA for use with your games.
+Crumbs:
+Parent:Engine/Rendering
+Order:101
+type:landing
+version:4.16
+topic-image:NVIDIA_logo_Topic.png
+
+
+[REGION:raw]
+(w:700)
+[/REGION]
+
+
+Here you will find the integrated technologies and relevant information from NVIDIA for use with your games.
+
+
+%Engine\Nvidia\NVAlternateFrameRendering:Topic%
+%Engine\Nvidia\NVAftermath:Topic%
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.INT.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.INT.udn
new file mode 100644
index 000000000000..a0f0ae722a1e
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.INT.udn
@@ -0,0 +1,23 @@
+Availability:Docs
+Title:NVIDIA Feature Support
+Description: Integrated and supported technologies from NVIDIA for use with your games.
+Crumbs:
+Parent:Engine/Rendering
+Order:101
+type:landing
+version:4.16
+topic-image:NVIDIA_logo_Topic.png
+
+
+[REGION:raw]
+(w:700)
+[/REGION]
+
+
+Here you will find the integrated technologies and relevant information from NVIDIA for use with your games.
+
+
+%Engine\Nvidia\NVAlternateFrameRendering:Topic%
+%Engine\Nvidia\NVAftermath:Topic%
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.JPN.udn
new file mode 100644
index 000000000000..3b7782fa4357
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.JPN.udn
@@ -0,0 +1,24 @@
+INTSourceChangelist:3435012
+Availability:Docs
+Title:NVIDIA 機能のサポート
+Description:使用する NVIDIA 技術の統合およびサポート
+Crumbs:
+Parent:Engine/Rendering
+Order:101
+type:landing
+version:4.16
+topic-image:NVIDIA_logo_Topic.png
+
+
+[REGION:raw]
+(w:700)
+[/REGION]
+
+
+ゲームで使用できる NVIDIA の統合技術と関連情報です。
+
+
+%Engine\Nvidia\NVAlternateFrameRendering:Topic%
+%Engine\Nvidia\NVAftermath:Topic%
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.KOR.udn
new file mode 100644
index 000000000000..1452d3ba3634
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Rendering/Nvidia/Nvidia.KOR.udn
@@ -0,0 +1,24 @@
+INTSourceChangelist:3435012
+Availability:Docs
+Title:NVIDIA 피처 지원
+Description: 게임에서 사용하기 위한 NVIDIA 테크놀로지 통합 및 지원 사항입니다.
+Crumbs:
+Parent:Engine/Rendering
+Order:101
+type:landing
+version:4.16
+topic-image:NVIDIA_logo_Topic.png
+
+
+[REGION:raw]
+(w:700)
+[/REGION]
+
+
+게임에서 사용하기 위한 NVIDIA 통합 테크놀로지 및 관련 정보를 찾아볼 수 있는 페이지입니다.
+
+
+%Engine\Nvidia\NVAlternateFrameRendering:Topic%
+%Engine\Nvidia\NVAftermath:Topic%
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/Overview/RenderingOverview.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/Overview/RenderingOverview.KOR.udn
index a8eb90201045..36a7361e2b67 100644
--- a/Engine/Documentation/Source/Engine/Rendering/Overview/RenderingOverview.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/Overview/RenderingOverview.KOR.udn
@@ -58,16 +58,16 @@ tags:Rendering
## 디퍼드 셰이딩
-언리얼 엔진 3 에서 사용되던 포워드(바로바로 처리하는) 라이팅 방법과는 달리, 언리얼 엔진 4 의 모든 라이트는 디퍼드(비슷한 종류의 패스를 모아 한꺼번에 처리하는) 방식으로 적용됩니다. 머티리얼은 그 특성을 GBuffer 에 쓰고, 라이팅 패스에서는 픽셀별로 머티리얼 프로퍼티를 읽어들여 라이팅을 처리합니다.
+언리얼 엔진 3 에서 사용되던 포워드(바로바로 처리하는) 라이팅 방법과는 달리, 언리얼 엔진 4 의 모든 라이트는 디퍼드(비슷한 종류의 패스(pass)를 모아 한꺼번에 처리하는) 방식으로 적용됩니다. 머티리얼은 그 특성을 GBuffer 에 쓰고, 라이팅 패스에서는 픽셀별로 머티리얼 프로퍼티를 읽어들여 라이팅을 처리합니다.
-## 라이팅 패쓰
+## 라이팅 패스
-UE4 에는 세 가지의 라이팅 패쓰가 있습니다:
- * **완전 다이내믹** - [무버블 라이트](Engine/Rendering/LightingAndShadows/LightMobility/DynamicLights)
+UE4 에는 세 가지의 라이팅 패스가 있습니다:
+ * **전체 다이내믹** - [무버블 라이트](Engine/Rendering/LightingAndShadows/LightMobility/DynamicLights)
* **부분 스태틱** - [스테이셔너리 라이트](Engine/Rendering/LightingAndShadows/LightMobility/StationaryLights)
- * **완전 스태틱** - [스태틱 라이트](Engine/Rendering/LightingAndShadows/LightMobility/StaticLights)
+ * **전체 스태틱** - [스태틱 라이트](Engine/Rendering/LightingAndShadows/LightMobility/StaticLights)
- 이들 각각은 퀄리티, 퍼포먼스, 게임내 변경 여부가 각기 다른 툴입니다. 각 게임마다 적합한 패쓰를 선택하면 됩니다.
+ 이들 각각은 퀄리티, 퍼포먼스, 게임내 변경 여부가 각기 다른 툴입니다. 각 게임마다 적합한 패스를 선택하면 됩니다.
## 라이팅된 반투명
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.INT.udn
index 37ac6d1d1a03..443975ad0d46 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.INT.udn
@@ -4,6 +4,10 @@ Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:An overview of the Cascade Editor's UI, breaking down each key area.
Version: 4.9
tags:Particles
+parent:Engine/Rendering/ParticleSystems
+order:2
+type:reference
+topic-image:cascade_topic.png
[VAR:Topic]
[OBJECT:Topic]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.JPN.udn
index 95299bc38a30..71cd1126cbb0 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.JPN.udn
@@ -1,10 +1,14 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3429247
Availability:Public
Title:カスケード パーティクル エディタのリファレンス
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:カスケード エディタの各 UI の概説
Version:4.9
tags:Particles
+parent:Engine/Rendering/ParticleSystems
+order:2
+type:reference
+topic-image:cascade_topic.png
[VAR:Topic]
[OBJECT:Topic]
@@ -32,7 +36,7 @@ tags:Particles
-## カスケードを開く
+## カスケードの開き方
カスケード パーティクル エディタは、いずれかのパーティクル システム アセットをダブルクリック、もしくは **コンテンツブラウザ** 内のパーティクル システム アセットのコンテキスト メニューを右クリックして開きます。カスケード内の特定のパーティクル システムの編集が可能になります。
@@ -50,7 +54,7 @@ tags:Particles
1. [ビューポート パネル](#ビューポートパネル) - 現在のパーティクル システムを表示します (そのシステムにあるすべてのエミッタを含みます)。_Sim_ ツールバーのオプション設定のシミュレーション速度で制御します。
1. [Emitters パネル](#Emittersパネル) -現在のパーティクル システム内にあるすべてのエミッタのリストと、これらのエミッタ内のすべてのモジュールのリストがあります。
1. [詳細パネル](#詳細パネル) -現在のパーティクル システム、パーティクル エミッタ、パーティクル モジュールを表示したり、修正できます。
-1. [カーブ エディタ](#カーブエディタ) -このグラフ エディタでは、相対時間または絶対時間のいずれかで修正されているプロパティが表示されます。グラフ エディタにはモジュールが追加されるので、表示コントロールがあります (このドキュメントの後半で説明します)。
+1. [カーブ エディタ](#カーブエディタ) - 相対時間または絶対時間のいずれかで修正されたプロパティを表示するグラフ エディタです。グラフ エディタにはモジュールが追加と、表示を調節できます (このドキュメントの後半で説明します)。
@@ -64,7 +68,7 @@ tags:Particles
| ------- | ----------- |
| [REGION:tablesection]**ロードと保存**[/REGION] ||
| **Save** | 現在のパーティクル システムのアセットを保存します。|
-| **Save All** | 全てのアセットを保存します。|
+| **Save All** | すべてのアセットを保存します。|
| **Choose Files to Save** | アセットの保存オプションを付けてダイアログを開きます。 |
| [REGION:tablesection]**アプリケーション**[/REGION] ||
| **Switch Project** | 使用可能なすべてのゲーム プロジェクトを切り替えます。 |
@@ -91,7 +95,7 @@ tags:Particles
| コマンド | 説明 |
| ------- | ----------- |
-| [REGION:tablesection]**Asset Editor TabsEditor Tabs**[/REGION] ||
+| [REGION:tablesection]**アセット エディタ TabsEditor タブ**[/REGION] ||
| **Viewport** | [ビューポートパネル] (#ビューポートパネル) タブを開きます。このタブには、結果として得られるパーティクル システムが表示されます。 |
| **Emitters** | [エミッタ リスト](#Emittersパネル) タブを開きます。このタブで、各種エミッタをパーティクル システムに追加できます。 |
| **Details** | [詳細パネル](#詳細パネル) タブを開きます。このタブで、各パーティクル モジュールのプロパティを編集できます。|
@@ -119,17 +123,17 @@ tags:Particles
| | **Redo** | 直前の元に戻した操作をやり直します。**Ctrl + Y** を使用しても同じ操作を行うことができます。。 |
| | **Save Thumbnail Image** | コンテンツ ブラウザのパーティクル システムのサムネイルとして、ビューポート ペインのカメラからビューポートを保存します。 |
||**Toggle Bounds**| ビューポート ペインで、パーティクル システムの現在の境界の表示を切り替えます。|
-||**Bounds Options**| クリックすると、GPU スプライトパーティクル システムに対する固定の境界をセットアップできます。固定された境界が GPU スプライト パーティクルの移動可能距離を制限します。|
+||**Bounds Options**| クリックすると、GPU スプライトパーティクル システムに対して固定の境界をセットアップできます。固定された境界が GPU スプライト パーティクルの移動可能距離を制限します。|
||**Toggle Origin Axis**| パーティクル ビューポート ウィンドウで、原点軸の表示、非表示を切り替えます。 |
| | **Regenerate lowest LOD duplicating highest** | 最高 LOD を複製して最低 LOD を再生成します。 |
-| | **Regenerate lowest LOD** | 最高 LOD の値のプリセットしたパーセント値を使用して、最低 LOD を再生成します。 |
+| | **Regenerate lowest LOD** | 最高 LOD 値の設定済みパーセントである値を使って最低 LOD を再生成します。 |
| | **Jump to Highest LOD Level** | 最高 LOD をロードします。 |
| | **Add LOD before current** | 現在ロードした LOD の直前に新しい LOD を追加します。 |
| | **Add LOD after current** | 現在ロードした LOD の直後に新しい LODを追加します。 |
| | **Jump to Lower LOD Level** | 次に低い LOD をロードします。 |
| | **Jump to Lowest LOD Level** |最低 LOD をロードします。 |
| | **Delete LOD** | 現在ロードした LOD を削除します。 |
-| | **Current LOD Slider** | プレビューしたい現在の LOD を選択できます。値を手入力、もしくはマウスをドラッグして数字を編集します。
+| | **Current LOD Slider** | プレビューする LOD を選択できます。値を手入力、もしくはマウスをドラッグして数字を編集します。
@@ -164,7 +168,7 @@ tags:Particles

-[View (表示)] メニューでは、ビューポート ペインの様々な診断と可視化機能を表示、非表示にすることができます。[View (表示)] メニューには以下のオプションが含まれます。
+[View (表示)] メニューでは、ビューポート ペインの様々な診断と可視化機能の表 / 非表示が可能になります。[View (表示)] メニューには以下のオプションが含まれます。
| アイテム | 説明 |
@@ -218,13 +222,13 @@ tags:Particles
###### Unlit (ライティング無し)
-[Unlit] ビューモードでは、ライティングまたはポストプロセスなしのパーティクルの結果が表示されます。
+[Unlit] ビューモードでは、ライティングまたはポストプロセスなしのパーティクルが表示されます。

###### Lit (ライティング有り)
-[Unlit] ビューモードでは、ライティングまたはポストプロセスなしのパーティクルの結果が表示されます。
+[Lit] ビューモードでは、ライティングまたはポストプロセスが付いたパーティクルが表示されます。

@@ -268,11 +272,11 @@ Shader Complexity (シェーダの複雑度) では、特定のシェーダに
(w:700)
-**[Emitters]** パネルには、カスケードで現在開いているパーティクル システム内の各パーティクル エミッタがあります。ユーザーは、パーティクル システムの外観と挙動を制御する様々なパーティクル モジュールをここで追加、選択、作業を行います。
+**[Emitters]** パネルには、カスケードで現在開いているパーティクル システム内の各パーティクル エミッタがあります。ユーザーは、パーティクル システムの外観とビヘイビアを制御する様々なパーティクル モジュールをここで追加、選択、作業を行います。
エミッタ リストには、現在のパーティクル システム内のすべてのエミッタが横方向に配置されています。パーティクル システムあたりのエミッタ数に制限はなく、エフェクト全体でそれぞれが別々の側面を処理するのが一般的です。
-1 カラムで 1 つのパーティクル エミッタを表します。上部にエミッタブロック、その下に任意の数のモジュールブロックが表示されます。エミッタ ブロックには、エミッタの名前、タイプなどのエミッタの主要なプロパティが含まれます。その下にあるモジュールは、それぞれパーティクルの動作の様々な側面を制御します。
+1 カラムにつきパーティクル エミッタ 1 つを表します。上部にエミッタブロック、その下に任意の数のモジュールブロックが表示されます。エミッタ ブロックには、エミッタの名前、タイプなどのエミッタの主要なプロパティが含まれます。その下にあるモジュールは、それぞれパーティクルの動作の様々な側面を制御します。
エミッタ リストのインターフェイスは、比較的簡単なものですが、右マウスボタンからアクセスできるコンテキスト依存のメニューもあります。
@@ -390,7 +394,7 @@ Shader Complexity (シェーダの複雑度) では、特定のシェーダに
カスケード インターフェイスには、標準のアンリアル エディタの [Curve Editor (カーブ エディタ)] ウィンドウが含まれます。このウィンドウで、ユーザーはパーティクルの寿命中またはエミッタの寿命中に変更すべき値も調整が可能です。つまり、時間の経過に伴い変化する値を定義します。カーブ エディタ内でプロパティを (一般的にパーティクル モジュール内から) 編集可能にするには、そのプロパティはカーブを利用する DistributionFloatConstantCurve などの Distribution タイプでなければなりません。Distributions (ディストリビューション) の操作については、[ディストリビューションのセクション](Engine/Basics/Distributions) を参照してください。
-詳細は [カーブ エディタのユーザーガイド](Engine/UI/CurveEditor) ドキュメントを参照してください。
+詳細は [カーブ エディタのユーザーガイド](Engine/UI/CurveEditor) ドキュメントを参照してください。
[REGION:note]
カーブ エディタにモジュールを追加するには、モジュールの左側に表示される緑色のボックスをクリックしてください。グラフ エディタに表示されるモジュールの色は、モジュール作成時にランダムに決定されます。色を変更するには、各モジュールの [Property] ウィンドウの Module Editor Color プロパティを開いて行います。
@@ -425,7 +429,7 @@ Shader Complexity (シェーダの複雑度) では、特定のシェーダに
グラフエディタで点を作成するには、目的の値に対するスプラインを **Ctrl + 左クリック** します。一番簡単な方法は、前述のチェックボックスを使い他のモジュールをすべてオフにすることです。すべてのモジュールは、時間 0 の単一キーとしてゼロの位置から開始します。タイムライン内でスプラインの任意の位置を **Ctrl + 左クリック** すると、そこに点が作成されます。この点は自由自在にドラッグできますが、既に述べたようにスプラインがベクトル (XYZ) を表す場合は、そのベクトルの 3 つのキーすべての時間が移動するのに対し、値は変動しません。
-キーポイントを **右クリック** するとメニューが表示され、そこでキーポイントの時間と値を手動で入力することができます。キーがカラーカーブ内にある場合は、カラーピッカーを使って色を選択できます。
+キーポイントを **右クリック** して表示されるメニューに、キーポイントの時間と値を手動で入力することができます。キーがカラーカーブ内にある場合は、カラーピッカーを使って色を選択できます。
モジュールが ColorOverLife の場合、描かれるスプラインはその時点の色を反映しますが、点はそのスプラインの特定のチャネルを反映する色で描かれます。
@@ -456,9 +460,9 @@ Shader Complexity (シェーダの複雑度) では、特定のシェーダに
ディストリビューション (Distribution) は特殊なデータ型であり、非常に専門的な方法で数を定めるように設計されています。パーティクル モジュール内で利用可能な主要プロパティのほとんどは、割り当てられたディストリビューションを持ちます。こうしたディストリビューションは、プロパティが単一の値、範囲を持つ、またはカーブに沿って補間されるものとして定義する場合があります。
-使用するディストリビューションのタイプは、プロパティに基づき変わります。例として、すべてのパーティクルのライフタイムを 5 秒にしたい場合、 _DistributionFloatConstant_ のディストリビューションでは、単一の値を保持できます。しかし、パーティクルのライフタイムを 2 秒から 5 秒の間のランダムな値にしたい場合、 そうした範囲を指定できる DistributionFloatUniform に切り替えます。
+使用するディストリビューションのタイプは、プロパティに基づき変わります。例として、すべてのパーティクルのライフタイムを 5 秒にするには、_DistributionFloatConstant_ のディストリビューションで単一の値を保持することができます。パーティクルのライフタイムを 2 秒から 5 秒の間のランダムな値にするのであれば、そうした範囲の指定が可能な _DistributionFloatUniform_ に切り替えます。
-新規ユーザーにとっては、最初は分布はわかりずらいと感じるかもしれません。しかし、パーティクル システム内で様々なプロパティを扱ううえで分布がもたらす自由度の高さをすぐに実感するでしょう。詳細は [ディストリビューションのリファレンス](Engine/Basics/Distributions) ページを参照してください。
+新規ユーザーはディストリビューションが最初は複雑に感じるかもしれません。しかし、パーティクル システム内で各種プロパティの使用によって自由度が増す事にすぐ気が付くでしょう。詳細は [ディストリビューションのリファレンス](Engine/Basics/Distributions) ページを参照してください。
(#PartileSystemLODs)
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.KOR.udn
index 253dc9cbcf39..677942ee7e87 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Cascade/CascadeEditor.KOR.udn
@@ -1,10 +1,14 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3429247
Availability: Public
Title:캐스케이드 파티클 에디터 참고서
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:캐스케이드 에디터의 UI 를 핵심 영역별로 나눠 보는 개요입니다.
Version: 4.9
tags:Particles
+parent:Engine/Rendering/ParticleSystems
+order:2
+type:reference
+topic-image:cascade_topic.png
[VAR:Topic]
[OBJECT:Topic]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.INT.udn
index 3f6319b7f1f1..bc1f6ef6e79d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:GPU-simulation of particles that allows for hundreds of thousands of particles at any time.
Version: 4.9
tags:Particles
+topic-image:ParticleSystemLOD_topic.png
[TOC(start:2 end:3)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.JPN.udn
index c00bccf84dba..705ed59ddacd 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.JPN.udn
@@ -1,14 +1,15 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3467293
Availability:Public
Title:パーティクル システムの詳細度 (LOD)
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:膨大な数のパーティクルに対しいつでも実施可能な GPU シミュレーション
Version:4.9
tags:Particles
+topic-image:ParticleSystemLOD_topic.png
[TOC(start:2 end:3)]
-詳細度 (LOD) を使うと、エフェクト アーティストはプレイヤーの範囲に合わせてスクリーン空間を最も効率よく使用するパーティクル エフェクトを作成することができます。キャンプ ファイアーのパーティクル システムを考えてください。次のようなエミッタが含まれています。
+LOD を使うと、エフェクト アーティストはプレイヤーの範囲に合わせてスクリーン スペースを最も効率よく使用するパーティクル エフェクトを作成することができます。キャンプ ファイアーのパーティクル システムを考えてください。次のようなエミッタが含まれています。
* 炎心
* 外炎
@@ -17,16 +18,16 @@ tags:Particles
* 一層以上の煙
-お持ちのシステムは間近ではこのように見えると思います。
+詳細表示するとこのようなものが表示されます。

-ただし、プレイヤーが遠ざかっていくと、占有するスクリーン空間は以下のように激減します。
+ただし、プレイヤーが遠ざかっていくと、スクリーン スペースは以下のように小さくなります。

-このようなケースでは、燃えさしなど、パーティクル システムのアスペクトがレンダリングには小さすぎる (ピクセルより小さい) 場合があります。しかしながら、このようなパーティクルも計算や処理はまだ可能です。そこで LOD の出番です。LOD はパーティクル システムを距離に合わせて簡素化することが可能なので、プレイヤーがエフェクトを効果的に認識するには遠すぎる状態になると、システム内のエミッタとモジュールは設定を終了、または完全にオフにすることができます。
+これは、燃えさしなどパーティクル システムのアスペクトがレンダリングには小さすぎる (ピクセルより小さい) ためです。しかしながら、このようなパーティクルでも計算や処理は可能です。そこで LOD の出番です。LOD はパーティクル システムを距離に合わせて簡素化することが可能なので、プレイヤーがエフェクトを効果的に認識するには遠すぎる状態になると、システム内のエミッタとモジュールは設定を終了、または完全にオフにすることができます。
本ドキュメントでは、詳細度 (LOD) に関して、インゲームでの使用方法に加えてお使いのパーティクル システムでの作成方法について記述します。
@@ -40,7 +41,7 @@ tags:Particles

-以下が各コントロールの内訳です。
+各コントロールの詳細です。
| **ボタン** | **名前** | **説明** |
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.KOR.udn
index daabd3792a2e..a4e45c0e1601 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/LODs/LODs.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3467293
Availability:Public
Title: 파티클 시스템 레벨 오브 디테일 (LOD)
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:언제든지 십만 단위의 파티클이 가능한 GPU 파티클 시뮬레이션 입니다.
Version: 4.9
tags:Particles
+topic-image:ParticleSystemLOD_topic.png
[TOC(start:2 end:3)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.INT.udn
index 6b0113e67d5a..a88b3e90b835 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:Solving performance issues by optimizing Particle Systems.
Version: 4.9
tags:Particles
+topic-image:VFXOptimization_topic.png
[TOC (start:2 end:3)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.JPN.udn
index c17b2eb443c3..e7868cdd4ca9 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.JPN.udn
@@ -1,22 +1,23 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3467293
Availability:Public
Title:VFX 最適化ガイド
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:パーティクル システムの最適化によるパフォーマンス問題の解決方法
Version:4.9
tags:Particles
+topic-image:VFXOptimization_topic.png
[TOC (start:2 end:3)]
-このドキュメントは、カスケード、マテリアルエディタ、マチネ、一般的なエフェクトに関連したパフォーマンス問題に関する知識があることを前提としています。パフォーマンス問題を解決する方法は複数あります。このドキュメントでは、利用可能なツールを使ってこれらの問題を解決するために、Epic のエフェクトチームが取っている方法の概略を説明します。
+このドキュメントは、カスケード、マテリアルエディタ、マチネ、一般的なエフェクトに関連したパフォーマンス問題に関する知識があることを前提としています。パフォーマンス問題には複数の解決方法があります。このドキュメントでは、Epic のエフェクトチームが利用可能なツールで行ったこれらの問題の解決方法を概説します。
## エフェクト パフォーマンスを低下させる一般的な原因
-$ **Overdraw (オーバードロー)** :パーティクルが覆うスクリーン空間の量、および、それらのパーティクルに関する命令数です。オーバードロー = ピクセルシェーダーの負荷 = レイヤー数 × 影響を受ける平均ピクセル数(GPU)
-$ **Tick Time (ティック時間)** :ゲームスレッドが、すべてのパーティクルシステムを更新するのに要する時間です。(ゲーム スレッド)
-$ **Draw Calls (描画コール)** :GPU のために準備するステート設定です。(レンダリング スレッド)
-$ **Bounds Calculation (境界計算)** :エフェクトの境界を更新するのに要する時間です。この境界は、カメラの視錘台に基づいてビジビリティを決定するために使用されるものです。(エフェクトの境界が見えるか?)
+$ **Overdraw (オーバードロー)** :パーティクルが覆うスクリーン スペースの面積、およびそれらのパーティクルに関する命令数です。オーバードロー = ピクセルシェーダーの負荷 = レイヤー数 × 影響を受ける平均ピクセル数(GPU)
+$ **Tick Time (ティック時間)** :ゲームスレッドによるすべてのパーティクルシステムの更新に要する時間です。(ゲーム スレッド)
+$ **Draw Calls (描画コール)** :GPU 用のステート設定です。(レンダリング スレッド)
+$ **Bounds Calculation (境界計算)** :カメラの視錘台に基づいたビジビリティ決定に使用されるエフェクト境界の更新に要する時間です。(エフェクト結合境界が見えるか?)
これらの主要な問題には、問題発生の原因となる下位の問題が多数含まれます。通常、下位の問題それぞれについて、パフォーマンス問題を処理するためのツールが用意されています。
@@ -24,7 +25,7 @@ $ **Bounds Calculation (境界計算)** :エフェクトの境界を更新する
##エフェクト パフォーマンスのためのコアシステム
$ **GPU** :スクリーン上にピクセルを描画するのに要する時間です。(オーバードロー)
-$ **Game Thread (ゲームスレッド)** :そのパーティクル システム ビヘイビアの更新にかかる時間です。(ティック時間)
+$ **Game Thread (ゲームスレッド)** :そのパーティクル システム ビヘイビアの更新に要する時間です。(ティック時間)
$ **Render Thread (レンダリングスレッド)** :パーティクル ジオメトリおよび関連する描画コールをパック化するために要する時間です。(描画コール)
## パフォーマンスへの配慮
@@ -69,10 +70,10 @@ $ **Render Thread (レンダリングスレッド)** :パーティクル ジオ
[PARAM:description]
[/PARAM]
[PARAM:links]
- * [VFX の最適化、ビジュアル エフェクトとパフォーマンスのバランスをとる](Engine/Rendering/ParticleSystems/Optimization/Balance)
+ * [VFX の最適化、ビジュアル エフェクトとパフォーマンス間のバランス](Engine/Rendering/ParticleSystems/Optimization/Balance)
* [VFX 最適化の中心的な概念](Engine/Rendering/ParticleSystems/Optimization/Concepts)
- * [VFX の最適化、結果を得る](Engine/Rendering/ParticleSystems/Optimization/Results)
- * [VFX の最適化、分割画面](Engine/Rendering/ParticleSystems/Optimization/SplitScreen)
+ * [VFX の最適化:結果表示](Engine/Rendering/ParticleSystems/Optimization/Results)
+ * [VFX の最適化:分割画面](Engine/Rendering/ParticleSystems/Optimization/SplitScreen)
[/PARAM]
[/OBJECT]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.KOR.udn
index 430b7870458a..77bbf04c4d60 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Optimization/Optimization.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3467293
Availability: Public
Title:VFX 최적화 안내서
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:파티클 시스템 최적화를 통한 퍼포먼스 문제 해결하기 입니다.
Version: 4.9
tags:Particles
+topic-image:VFXOptimization_topic.png
[TOC (start:2 end:3)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.INT.udn
index 1df62c643a80..2f5ac6951aef 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.INT.udn
@@ -4,6 +4,12 @@ Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:Critical concepts for working with particles in Unreal and the Cascade particle editor.
Version: 4.9
tags:Particles
+tags:Getting Started
+parent:Engine/Rendering/ParticleSystems
+order:1
+type:overview
+topic-image:Engine/Rendering/ParticleSystems/particles_topic.png
+
[TOC(start:2 end:3)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.JPN.udn
index 901fc8b510fb..0f5c52022411 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.JPN.udn
@@ -1,13 +1,20 @@
-INTSourceChangelist:2743189
+INTSourceChangelist:3429247
Availability:Public
Title:キー パーティクルのコンセプト
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:アンリアル エディタおよびカスケード パーティクル エディタにおいてパーティクルを操作するための非常に重要な概念
Version:4.9
+tags:Particles
+tags:Getting Started
+parent:Engine/Rendering/ParticleSystems
+order:1
+type:overview
+topic-image:Engine/Rendering/ParticleSystems/particles_topic.png
+
[TOC(start:2 end:3)]
-**パーティクル システム** と **カスケード** は _パーティクル システム_ エディタで、非常に柔軟でパワフルです。しかし、実際の作業に着手する前に、重要な概念をしっかり理解しておく必要があります。本ドキュメントの目的は、ユーザーインターフェースのニュアンスやパーティクル エフェクト作成の詳細を避ける代わりに、パーティクル システムのこうした特性がどのように機能するのか体感してもらいながら主要な概念を紹介することです。
+**パーティクル システム** と **カスケード** は _パーティクル システム_ エディタで、非常に柔軟でパワフルです。しかし、実際の作業に着手する前に、重要な概念をしっかり理解しておく必要があります。本ドキュメントの目的は、ユーザーインターフェースの微妙な違いやパーティクル エフェクト作成の詳細には触れずに、パーティクル システムのこうした特性がどのように機能するのかを体感してもらいながら主要な概念を紹介することです。
## パーティクル エフェクトへのモジュール式アプローチ
@@ -15,9 +22,9 @@ Version:4.9
一方カスケードでは、パーティクル システムは _必要最小限の_ プロパティやいくつかの動作のモジュールのみで起動します。
-それぞれのモジュールはパーティクルの動作の特定の特性を表しており、カラー、生成や移動、スケーリング位置など、その動作を制御するプロパティのみを保有します。ユーザーはモジュールの追加や削除による調整でき、調整結果がパーティクルの動作として定義されます。必要な動作のモジュールのみ追加するので、不要なプロパティのために無駄な計算をする必要がありません。
+それぞれのモジュールはパーティクルの動作の特定の特性を表しており、カラー、生成や移動、スケーリング位置など、その動作を制御するプロパティのみを保有します。ユーザーはモジュールの追加や削除による調整ができ、調整結果がパーティクルの動作として定義されます。必要な動作のモジュールのみ追加するので、不要なプロパティのために無駄な計算をする必要がありません。
-特に、モジュールは、追加、削除、コピー、さらにはパーティクル システム内のエミッターからのインスタンス化までもが簡単に行えるので、利用可能なモジュールに慣れてしまえば、複雑なステップも簡単にこなせます。
+特に、モジュールは、追加、削除、コピー、さらにはパーティクル システム内のエミッタからのインスタンス化までもが簡単に行えるので、利用可能なモジュールに慣れてしまえば、複雑なステップも簡単にこなせます。
@@ -40,10 +47,10 @@ Version:4.9
[REGION:note]
- *Required* と *Spawn* モジュールは永続的で、エミッターから削除することはできません。ただし、他のすべてのモジュールは自由自在に削除することができます。
+ *Required* と *Spawn* モジュールは永続的で、エミッタから削除することはできません。ただし、他のすべてのモジュールは自由自在に削除することができます。
[/REGION]
### モジュールのカテゴリ
-パーティクル エミッターには様々なモジュールを追加することができます。混乱しないように、モジュールをカテゴリに分類しました。以下になります。
+パーティクル エミッタには様々なモジュールを追加することができます。混乱しないように、モジュールをカテゴリに分類しました。以下になります。
| カテゴリ | 説明 |
| --- | --- |
@@ -67,15 +74,15 @@ Version:4.9
| **Camera** | カメラ空間でのパーティクルの動きを制御するモジュールで、ユーザーはカメラに近づけたり遠ざけたりすることができます。|
| **Collision** | パーティクルとジオメトリ間のコリジョンの処理方法を制御するモジュールです。 |
| **Color** | パーティクルのカラーに影響するモジュールです。 |
-| **Event** | パーティクル イベントのトリガを制御するモジュールで、各種インゲーム レスポンスを順番に返すことができます。 |
+| **Event** | パーティクル イベントのトリガーを制御するモジュールで、各種インゲーム レスポンスを順番に返すことができます。 |
| **Kill** | パーティクルの削除を管理するモジュールです。 |
| **Lifetime** | パーティクルの存在期間を制御するモジュールです。 |
| **Light** | パーティクルのライトを管理するモジュールです。 |
-| **Location** | エミッター アクタの位置と相対してパーティクルが生成される場所を制御するモジュールです。 |
+| **Location** | エミッタ アクタの位置と相対してパーティクルが生成される場所を制御するモジュールです。 |
| **Material** | パーティクル自体に適用されるマテリアルを制御するモジュールです。 |
| **Orbit** | 画面空間の軌道上での動作を可能にし、エフェクトへモーションを追加するモジュールです。 |
| **Orientation** | パーティクルの回転軸のロックを可能にするモジュールです。 |
-| **Parameter** | ブループリントや Matinee など外部ソース経由でのパラメータ化や制御が可能なモジュールです。 |
+| **Parameter** | ブループリントやマチネなど外部ソース経由でのパラメータ化や制御が可能なモジュールです。 |
| **Rotation** | パーティクルの回転を制御するモジュールです。 |
| **RotationRate** | スピンなど、回転速度の変更を管理するモジュールです。 |
| **Size** | パーティクルのスケールを管理するモジュールです。 |
@@ -84,9 +91,9 @@ Version:4.9
| **Velocity** | 各パーティクルの速度を制御するモジュールです。 |
-個別のパーティクル モジュールに関する詳細については、 [パーティクル モジュールのリファレンス](Engine/Rendering/ParticleSystems/Reference/) を必ず確認してください。
+個別のパーティクル モジュールに関する詳細については、[パーティクル モジュール リファレンス](Engine/Rendering/ParticleSystems/Reference/) を必ず確認してください。
-### Initial モジュールとOver Life モジュール
+### Initial vs.Over Life
パーティクル モジュールで作業する時にしっかり覚えておいて頂きたい重要な概念が 2 つあります。1 つが *initial* プロパティで、もう 1 つが *over life* または *per life* プロパティです。
@@ -100,7 +107,7 @@ Version:4.9
プロパティを時間経過と共に変化するディストリビューション タイプに変更すると、モジュールによって「相対時間」を用いるものと、「絶対時間」を用いるものがあります (ディストリビューションについては下記を参照)。
-* 基本的に、絶対時間は含まれているエミッターの時間です。エミッターに 2 秒のループが 3 回設定されている場合、そのエミッター内のモジュールには、絶対時間が 0 から 2 秒まで 3 回実行されます。
+* 基本的に、絶対時間は含まれているエミッタの時間です。エミッタに 2 秒のループが 3 回設定されている場合、そのエミッタ内のモジュールには、絶対時間が 0 から 2 秒まで 3 回実行されます。
* 相対時間は、各パーティクルの存続期間を示す 0 から 1 までの時間です。
@@ -109,32 +116,32 @@ Version:4.9
-## エミッター、パーティクル システム、エミッター アクタ
+## エミッタ、パーティクル システム、エミッタ アクタ
-カスケードを使ってパーティクル エフェクトを作成する場合、1 つのオブジェクトと他のオブジェクトとの関係性を覚えておくことが重要です。本ドキュメントでは既にモジュールの概念について説明しましたが、モジュールはパーティクル エフェクト全体を構成する 1 コンポーネントにすぎません。つまり、パーティクル システムのコンポーネントは、モジュール、 エミッター、パーティクル システム、エミッター アクタ となります。それぞれのコンポーネントの相関は、以下のように覚えると確実です。
+カスケードを使ってパーティクル エフェクトを作成する場合、1 つのオブジェクトと他のオブジェクトとの関係性を覚えておくことが重要です。本ドキュメントでは既にモジュールの概念について説明しましたが、モジュールはパーティクル エフェクト全体を構成する 1 コンポーネントにすぎません。つまり、パーティクル システムのコンポーネントは、モジュール、 エミッタ、パーティクル システム、エミッタ アクタ となります。それぞれのコンポーネントの相関は、以下のように覚えると確実です。
* **モジュール** はパーティクルの動作を定義し、場所は・・・にあります。
-* **エミッター** は、エフェクト用の特定のパーティクル タイプを放出するために使用し、数に制限なく・・・に置くことができます。
+* **エミッタ** は、エフェクト用の特定のパーティクル タイプを放出するために使用し、数に制限なく・・・に置くことができます。
* **パーティクル システム** は、**コンテンツ ブラウザ** で利用できるアセットで、・・・から順々に参照することができます。
-* **エミッター アクタ** は、レベル内に存在する配置可能なオブジェクトで、シーン内でのパーティクルの使用場所、使用方法を制御します。
+* **エミッタ アクタ** は、レベル内に存在する配置可能なオブジェクトで、シーン内でのパーティクルの使用場所、使用方法を制御します。
## パーティクルの計算
-パーティクル システムで作業する場合、計算順序に注意することが重要です。カスケード エミッター リスト領域の各カラムには別のエミッターが表示され、カラムの各ブロックには別のモジュールが表示されます。計算は以下の順序で実施されます。
+パーティクル システムで作業する場合、計算順序に注意することが重要です。カスケード エミッタ リスト領域の各カラムには別のエミッタが表示され、カラムの各ブロックには別のモジュールが表示されます。計算は以下の順序で実施されます。
-* エミッターは、エミッターリストの左から右へ計算されます。
+* エミッタは、エミッタ リストの左から右へ計算されます。
* モジュールは、スタックの上から下へ計算されます。
-## エミッター タイプ
+## エミッタ タイプ
-パーティクルを使って作成したいエフェクト タイプの種類が幅広いように、エミッター タイプにも様々な種類が利用できるので、まさに必要とするタイプを作成した場合に便利です。利用可能なエミッター タイプは以下の通りです。
+パーティクルを使って作成したいエフェクト タイプの種類が幅広いように、エミッタ タイプにも様々な種類が利用できるので、まさに必要とするタイプを作成した場合に便利です。利用可能なエミッタ タイプは以下の通りです。
-タイプに関係なく、エミッターはすべて、最初はスプライト エミッターであることに注意してください。後から各種エミッター *Type Data* モジュールをエミッターに追加して別のタイプに変更します。
+タイプに関係なく、エミッタはすべて、最初はスプライト エミッタであることに注意してください。後から各種エミッタ *Type Data* モジュールをエミッタに追加して別のタイプに変更します。
-* **Sprite Emitters** - 最も基本的なエミッター タイプで、一番よく使用されます。パーティクルは、常にカメラ方向を向く多角形スプライト (2 つのポリゴンをもつカード) として放出されます。煙、火、その他幅広いエフェクトに便利です。
+* **Sprite Emitters** - 最も基本的なエミッタ タイプで、一番よく使用されます。パーティクルは、常にカメラ方向を向く多角形スプライト (2 つのポリゴンをもつカード) として放出されます。煙、炎、他の幅広いエフェクトで役立ちます。
* **AnimTrail Data** - アニメートされたスケルトンのソケットからトレイルを作成するために使用します。
@@ -142,19 +149,19 @@ Version:4.9
* **GPU Sprites** - 実行時間の計算の大部分が GPU に渡される特別なパーティクル タイプです。これにより、数千から *数十万* の CPU パーティクルをもつ莫大な数のパーティクルが起動されます。数はターゲット システムの GPU のタイプにより異なります。
-* **Mesh Data** - 一連のスプライトを放出する代わりに、多角形メッシュを放出するタイプのエミッターです。岩崩れ、残骸などのエフェクトにうってつけです。
+* **Mesh Data** - 一連のスプライトを放出する代わりに、多角形メッシュを放出するタイプのエミッタです。岩崩れ、残骸などのエフェクトに最適です。
-* **Ribbon Data** - 端から端まで適用するパーティクルのストリングを生成して、移動するエミッターの後をトレイルするリボンの形成します。
+* **Ribbon Data** - 端から端まで適用するパーティクルのストリングを生成して、移動するエミッタの後をトレイルするリボンの形成します。
-利用可能なエミッターのタイプに関しては、 [エミッタのタイプのページ](Engine/Rendering/ParticleSystems/Reference) をご覧ください。
+利用可能なエミッタのタイプに関しては、 [エミッタのタイプのページ](Engine/Rendering/ParticleSystems/Reference) をご覧ください。
## パラメータ
パーティクル システムの特性はそのすべてを事前に定義できるわけではありません。時として、パーティクル システムの動作の中に実行時の制御や変更が必要な部分もあります。例えば、魔法がかけられた時、消費した魔力の量に応じてカラーを変える魔法エフェクトも作成できます。この場合、パーティクル システムにパラメータを追加する必要があります。
-*parameter* は、ブループリント、Matinee、マテリアル、その他さまざまなソースなどの他のシステムとのデータのやり取りが可能なプロパティのタイプです。カスケードでは、どんなプロパティにもパラメータを割り当てることができるので、パーティクル システム外からプロパティを制御することが可能です。
+*parameter* は、ブループリント、マチネ、マテリアル、その他さまざまなソースなどの他のシステムとのデータのやり取りが可能なプロパティのタイプです。カスケードでは、どんなプロパティにもパラメータを割り当てることができるので、パーティクル システム外からプロパティを制御することが可能です。
例えば、炎のエフェクトに対してスポーン レートを制御するパラメータを設定することで、プレイヤーは実行時に放出される炎の量を増減できるようになります。
@@ -162,7 +169,7 @@ Version:4.9
カスケードでは、パラメータの作成方法として、通常 Distributions (ディストリビューション)、つまりプロパティ内のデータを処理する方法を使用します。Distributions の概要については以下の [ディストリビューション](#Distributions(ディストリビューション))、または [ディストリビューションのページ](Engine/Basics/Distributions) の詳細をご覧ください。
-## Lit パーティクル
+## Lit (ライティング有り) パーティクル
パーティクル システムでライトを受け取る設定ができますが、特別な設定が必要です。
@@ -170,10 +177,10 @@ Lit パーティクルの設定方法:
1. マテリアルが unlit 以外のシェーディング モデルを使用していることを確認してください。DefaultLit を使用すると、法線マップ、スペキュラリティ (鏡面反射性)などへアクセスできます。
-1. カスケードの LODSettings (モジュールおよびエミッターが何も選択されていないと表示される LOD プロパティの中にあります) には、bLit と呼ばれる LOD 別のフラグがあります。このフラグを必ず選択してください。このフラグはカスケード内でしか更新することができません。
+1. カスケードの LODSettings (モジュールおよびエミッタが何も選択されていないと表示される LOD プロパティの中にあります) には、bLit と呼ばれる LOD 別のフラグがあります。このフラグを必ず選択してください。このフラグはカスケード内でしか更新することができません。
-この手順に従えば、ご自分のパーティクルが lit としてゲーム中に表示されるはずです。これらはエミッター基点から光を発しているので、ワールド内で基点を動かして光源が変わるか確認する、または動的ライトをそばでスポーンしてみてください。
+この手順に従えば、ご自分のパーティクルが lit としてゲーム中に表示されるはずです。これらはエミッタ基点から光を発しているので、ワールド内で基点を動かして光源が変わるか確認する、または動的ライトをそばでスポーンしてみてください。
##詳細度 (LOD)
@@ -182,7 +189,7 @@ Lit パーティクルの設定方法:
例えば、キャンプ ファイアーのパーティクル システムを考えてください。近くで見ると、燃えさしと火花が煙の中へ立ち上っていくのが見えます。しかしながら、数百メートル離れて見ると、その燃えさしが小さすぎてモニターや画面はレンダリングすらできません。ではなぜ計算をするのでしょうか?
-ここで詳細度 (LOD) が関わってきます。パーティクル システムが自動的に簡素化するカスタム距離範囲を LOD システムで設定できます。各範囲ではもう 1 つ LOD が構成されます。プロパティ値の低いものから非アクティブのモジュール、非アクティブのエミッターという順序で簡素化されていきます。上記のキャンプファイアーの例で言えば、プレイヤーが遠すぎて見えなくなったら、エフェクト全体に火花を追加したエミッターを完全に非アクティブにするのが理想的です。
+ここで詳細度 (LOD) が関わってきます。パーティクル システムが自動的に簡素化するカスタム距離範囲を LOD システムで設定できます。各範囲ではもう 1 つ LOD が構成されます。プロパティ値の低いものから非アクティブのモジュール、非アクティブのエミッタという順序で簡素化されていきます。上記のキャンプファイアーの例で言えば、プレイヤーが遠すぎて見えなくなったら、エフェクト全体に火花を追加したエミッタを完全に非アクティブにするのが理想的です。
パーティクル システムでは好きなだけ LOD を構成し、各 LOD の範囲を手動で制御できます。
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.KOR.udn
index c29fa26f6962..062265af5821 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Overview/KeyConcepts.KOR.udn
@@ -1,10 +1,16 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3429247
Availability:Public
Title: 핵심 파티클 개념
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:언리얼 내에서 그리고 캐스케이드 파티클 에디터에서 파티클 작업을 할 때의 핵심 개념입니다.
Version: 4.9
tags:Particles
+tags:Getting Started
+parent:Engine/Rendering/ParticleSystems
+order:1
+type:overview
+topic-image:Engine/Rendering/ParticleSystems/particles_topic.png
+
[TOC(start:2 end:3)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.INT.udn
index 6a66cab95dcb..52e06e9ea45c 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.INT.udn
@@ -4,45 +4,10 @@ Crumbs: %ROOT%, Engine, Engine/Rendering/LightingAndShadows
Description:Particle Lights are another weapon in the VFX artist's arsenal.
Version: 4.9
tags:Particles
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/ParticleLights:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/ParticleLights:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/ParticleLights]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/ParticleLights:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/ParticleLights:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/ParticleLights]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+parent:Engine/Rendering/ParticleSystems
+order:6
+type:overview
+topic-image:particleLights_topic.png
[TOC(start:2 end:2)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.JPN.udn
index 46edcf32c377..e0ae1a6ad67a 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.JPN.udn
@@ -1,62 +1,28 @@
-INTSourceChangelist:2737439
+INTSourceChangelist:3429247
Availability:Public
Title:パーティクル ライト
Crumbs: %ROOT%, Engine, Engine/Rendering/LightingAndShadows
-Description:パーティクル ライトは VFX アーティストの保管庫にあるもう 1 つの武器です。
+Description:パーティクル ライトは VFX アーティストの必殺技の 1 つです。
Version:4.9
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/ParticleLights:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/ParticleLights:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/ParticleLights]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/ParticleLights:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/ParticleLights:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/ParticleLights]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+tags:Particles
+parent:Engine/Rendering/ParticleSystems
+order:6
+type:overview
+topic-image:particleLights_topic.png
[TOC(start:2 end:2)]
[EXCERPT:PL001]
-_CPU Particle Emitters_ は **カスケード** の **Particle Light Module** を追加して、それぞれのパーティクルに適用されたライトでレンダリングするために作成することができます。ライトを十分にエミットして周りの環境より目立たせる火花や花火などのエフェクトに便利です。
+_CPU パーティクル エミッタ_ は **カスケード** の **Particle Light Module** を追加して、それぞれのパーティクルに適用したライトでレンダリングするために作成します。周囲より目立つだけのライトをエミットする、火花や花火などのエフェクトに便利です。
[/EXCERPT:PL001]
-## 準備全般
+## 使用前の準備
-パーティクル ライトのパフォーマンス負荷はほぼ完全と言っていいほど、画面上で発生するオーバードローの量に依存しています。オーバードローは、ライト数 X 影響を受けるピクセル数です。
+パーティクル ライトのパフォーマンス負荷はほぼ完全と言っていいほど、画面上で発生するオーバードローの量に依存しています。オーバードローは、ライト数 x 影響を受けるピクセル数です。
-パーティクル ライトを設定する際には、大きいパーティクル ライトは少なく、小さいパーティクル ライトを多くするのが一般的な戦略です。パーティクル ライトの負荷はあっという間に手に負えなくなるので、 _ProfileGPU_ コンソール コマンドで調整およびプロファイルすることが重要です。負荷は _ライト_ の下に表示されます。
+パーティクル ライトを設定するコツは、大きいパーティクル ライトを少なくし、小さいパーティクル ライトを多くすることです。パーティクル ライトの負荷は一気に膨れ上がるので、_ProfileGPU_ コンソール コマンドで調整およびプロファイルすることが重要です。負荷は _[Lights]_ で確認できます。
-[OBJECT:EmbeddedVideo]
+[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
640
[/PARAMLITERAL]
@@ -80,15 +46,15 @@ nyGqpilZe08
[/PARAMLITERAL]
[/OBJECT]
-パーティクル ライト エミッタのみを使って上のアニメーションをした静止画像がこちらです。
+上の画像をパーティクル ライト エミッタのみでアニメーションをした静止画像が以下の 2 つです。
(h:407) (h:407)
-最初の画像では、パーティクル ライトは既にソリッドなパーティクル システムである火花や炎により物理感を出すためのアクセントに使用されています。さらに、パーティクル ライトはどの瞬間でもほとんど存在しません。2 つ目の画像では、ライトはボリュームと位置をシステムに追加しますが、エフェクト効果を出すためにかなり多くのパーティクル (200 以上) を使用します。
+最初の画像では、パーティクル ライトは既にソリッドなっているパーティクル システムのアクセントとして使用し、火花や花火にさらに物理間を出しています。さらに、パーティクル ライトが存在する瞬間はほとんどありません。2 つ目の画像ではライトがボリュームと位置を追加しています。エフェクト効果を出すために大量のパーティクル (200 以上) を使用します。
## 使用方法
-ライトをパーティクル システムに追加する方法は単刀直入です。
+ライトをパーティクル システムに追加する方法は、非常に分かりやすいです。
1. カスケードでパーティクル システムを開きます。
1. エミッタへライトを配置する位置でエミッタを **右クリック** をします。
@@ -96,30 +62,30 @@ nyGqpilZe08
[REGION:lightbox]
[(w:830)](PL_addLightModule.png)
[/REGION]
-1. 最高のライトモジュールを新規に設定します。
+1. 新規 Light モジュールを設定します。
[REGION:lightbox]
[(w:830)](PL_lightModuleAdded.png)
[/REGION]
[REGION:note]
-注記: **Light** モジュールは CPU パーティクル上のみで使用できます。 GPU パーティクルはどれもこのモジュールとは機能しません。GPU エミッタへモジュールを追加してもシステムを壊すようなことはありませんが、実際には何も起こらずリストのモジュール上に巨大な赤い _X_ マークが表示されます。
+注記: **Light** モジュールは CPU パーティクル上のみで使用できます。このモジュールとは機能する GPU パーティクルはありません。GPU エミッタへモジュールを追加してもシステムを壊すようなことはありませんが、実際には何も起こらずリストのモジュール上に巨大な赤い _X_ マークが表示されます。
[/REGION]
-###プロパティ
+### プロパティ

| プロパティ | 説明 |
| -------- | ----------- |
| Use Inverse Squared Falloff | 有効になると、ライトの半径に基づいてより現実味のあるフォールオフとするために **Light Exponent** は無視されます。 |
-| **Affects Translucency** | 有効になると、それぞれのパーティクル ライトは lit 透過に影響します。煙を通過するロケットのエミッシブ トレイルに便利です。このプロパティは、レンダリングされるそれぞれのパーティクルに対してかなりの負荷がかかるので、この設定を有効にするパーティクルは少なめにすることを推奨します。 |
+| **Affects Translucency** | 有効になると、それぞれのパーティクル ライトは lit 透過に影響します。煙を通過するロケットのエミッシブ トレイルに便利です。このプロパティはレンダリング対象のパーティクルにかなりの負荷をかけるので、この設定を有効にするパーティクルは少なくすることを推奨します。 |
| **Preview Light Radius** | **[Preview]** ウィンドウに球体のワイヤーフレームでライトの半径を表示します。 |
-| Spawn Fraction | ライトをアタッチするパーティクルの割合を定義します。値が 1.0 だと全てのパーティクル、値が 0.5 だとパーティクルの 50 %、値が 0.1 だと 10 %のパーティクルの割合になります。これを使って最適化時の負荷を減らします。 |
+| Spawn Fraction | ライトをアタッチするパーティクルの割合を定義します。値が 1.0 だとパーティクル全体、値が 0.5 だとパーティクルの 50 %、値が 0.1 だとパーティクルの 10 % になります。これを使って最適化処理の負荷を減らします。 |
| **Color Scale Over Life** | Radius Scale 同様に、パーティクルの色に基づいてライトの色をオフセットするために、ここで入力した値でライトの色を乗算します。 |
-| **Brightness Over Life** | ライフタイムを通じてライトの輝度の変更を有効にします。 |
+| **Brightness Over Life** | ライフタイム中、ライトの輝度の変更を有効にします。 |
| **Radius Scale** | パーティクルのサイズに基づいてライトの範囲を定義する乗数です。X 軸上で値 1 でスケーリングされたパーティクルは **Radius Scale** と同等の半径になりますが、 X 軸上で値 10 でスケーリングされたパーティクルは **Radius Scale** の半径の 10 倍になります。 |
-| **Light Exponent** | **Use Inverse Squared Falloff** を無効にすると、このプロパティがライトのフォールオフを制御します。大きい数値は、ライトがライトの半径に近づくにつれてより緩やかなフォールオフとなるのに対して、数値が小さくなるとライトの半径付近でライトが突然落下します。 |
+| **Light Exponent** | **Use Inverse Squared Falloff** を無効にすると、ライトのフォールオフを制御します。数値が大きくなるとライトがライトの半径に近づくにつれてフォールオフが緩やかになり、数値が小さくなるとライトの半径付近でライトが突然落ちます。 |
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.KOR.udn
index 4443f115c1b1..7470fc5f451f 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleLights/ParticleLights.KOR.udn
@@ -1,49 +1,14 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3429247
Availability:Public
Title:파티클 라이트
Crumbs: %ROOT%, Engine, Engine/Rendering/LightingAndShadows
Description:VFX 아티스트에게 있어서 또하나의 무기, 파티클 라이트입니다.
Version: 4.9
tags:Particles
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/ParticleLights:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/ParticleLights:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/ParticleLights]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/ParticleLights:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/ParticleLights:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/ParticleLights]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+parent:Engine/Rendering/ParticleSystems
+order:6
+type:overview
+topic-image:particleLights_topic.png
[TOC(start:2 end:2)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.INT.udn
index 80cf3ff41c0b..ce69eb2b3b0f 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.INT.udn
@@ -8,6 +8,8 @@ parent:Engine/Rendering
order:4
type:landing
tags:Particles
+related:Engine/Basics/Distributions
+related:Engine/Rendering/Materials/Editor
[VAR:Topic]
[OBJECT:Topic]
@@ -61,91 +63,19 @@ Unreal's Particle Systems are edited via **Cascade**, a fully integrated and mod
Particle systems are also very closely related to the various materials and textures applied to each particle. The primary job of the particle system itself is to control the behavior of the particles, while the specific look and feel of the particle system as a whole is often controlled by way of materials. As such, we have included a shortcut to the material documentation below.
-[REGION:topics third]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Overview:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Overview:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Overview]
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Cascade:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Cascade:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Cascade]
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Reference:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Reference:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Reference]
- [/PARAM]
-[/OBJECT]
-[/REGION]
+## Starting Out
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" tags:"Getting Started")]
+
+## Guides
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" type:"!reference" tags:"!Getting Started")]
+
+## Reference
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" type:"reference")]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Particle Topics
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Rendering/ParticleSystems/UserGuide "%Engine/Rendering/ParticleSystems/UserGuide:Description%")
- * [](Engine/Rendering/ParticleSystems/LODs "%Engine/Rendering/ParticleSystems/LODs:Description%")
- * [](Engine/Rendering/ParticleSystems/ParticleLights "%Engine/Rendering/ParticleSystems/ParticleLights:Description%")
- [/PARAM]
-[/OBJECT]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Related Topics
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Basics/Distributions "%Engine/Basics/Distributions:Description%")
- * [](Engine/Rendering/Materials/Editor "%Engine/Rendering/Materials/Editor:Description%")
- * [](Engine/Rendering/ParticleSystems/Optimization "%Engine/Rendering/ParticleSystems/Optimization:Description%")
- [/PARAM]
-[/OBJECT]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.JPN.udn
index 022a27d74899..eae79e573cb1 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.JPN.udn
@@ -1,10 +1,16 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3429245
Availability:Public
Title:カスケード パーティクル システム
-Crumbs: %ROOT%, Engine, Engine/Rendering
-Description:ワールドでエフェクトの作成に使用するエミッタを格納したアセット
+crumbs:%ROOT%, Engine, Engine/Rendering
+Description:ワールドでエフェクトの作成に使用するエミッタを含んだアセット
Version:4.9
SkillLevel:Beginner
+parent:Engine/Rendering
+order:4
+type:landing
+tags:Particles
+related:Engine/Basics/Distributions
+related:Engine/Rendering/Materials/Editor
[VAR:Topic]
[OBJECT:Topic]
@@ -54,95 +60,23 @@ SkillLevel:Beginner
アンリアルエンジンは非常にパワフルでロバストなパーティクルシステムを搭載しています。アーティストは、煙、スパーク、炎など多岐に渡る衝撃的なビジュアルエフェクトで、はるかに複雑で異世界の例を作成することができます。
[/EXCERPT:Intro]
-アンリアルのパーティクルシステムは **カスケード** で編集します。カスケードは完全統合型の、モジュラー パーティクルエフェクト エディタです。カスケードは、最も複雑なエフェクトさえも迅速かつ簡単に作成して、リアルタイムなフィードバックとモジュラーエフェクト編集を提供します。
+アンリアルのパーティクルシステムは **カスケード** で編集します。カスケードは完全統合型の、モジュラー パーティクルエフェクト エディタです。カスケード は、最も複雑なエフェクトさえも迅速かつ簡単に作成して、リアルタイムなフィードバックとモジュラーエフェクト編集を提供します。
パーティクルシステムは、各パーティクルに適用したさまざまなマテリアルやテクスチャとも密接に関係しています。パーティクルシステムの主な機能は、全体のパーティクルシステムのある固有の外観や印象をしばしマテリアルでコントロールする一方で、パーティクルの挙動をコントロールすることです。例として、マテリアルに関するドキュメントへのショートカットを以下に示します。
-[REGION:topics third]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Overview:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Overview:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Overview]
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Cascade:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Cascade:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Cascade]
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Reference:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Reference:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Reference]
- [/PARAM]
-[/OBJECT]
-[/REGION]
+## はじめよう
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" tags:"Getting Started")]
+
+## ガイド
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" type:"!reference" tags:"!Getting Started")]
+
+## リファレンス
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" type:"reference")]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- パーティクル関連トピック
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Rendering/ParticleSystems/UserGuide "%Engine/Rendering/ParticleSystems/UserGuide:Description%")
- * [](Engine/Rendering/ParticleSystems/LODs "%Engine/Rendering/ParticleSystems/LODs:Description%")
- * [](Engine/Rendering/ParticleSystems/ParticleLights "%Engine/Rendering/ParticleSystems/ParticleLights:Description%")
- [/PARAM]
-[/OBJECT]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Related Topics
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Basics/Distributions "%Engine/Basics/Distributions:Description%")
- * [](Engine/Rendering/Materials/Editor "%Engine/Rendering/Materials/Editor:Description%")
- * [](Engine/Rendering/ParticleSystems/Optimization "%Engine/Rendering/ParticleSystems/Optimization:Description%")
- [/PARAM]
-[/OBJECT]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.KOR.udn
index ad2ee6e86b83..8894f187acb8 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/ParticleSystems.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3429245
Availability:Public
Title: 파티클 시스템
Crumbs: %ROOT%, Engine, Engine/Rendering
@@ -9,6 +9,8 @@ parent:Engine/Rendering
order:4
type:landing
tags:Particles
+related:Engine/Basics/Distributions
+related:Engine/Rendering/Materials/Editor
[VAR:Topic]
[OBJECT:Topic]
@@ -62,91 +64,19 @@ tags:Particles
파티클 시스템은 각 파티클에 적용되는 여러가지 머티리얼이나 텍스처에도 밀접한 관련이 있습니다. 파티클 시스템 자체의 주요 임무는 파티클의 동작을 조절하는 것이고, 파티클 시스템 전체적인 외양과 느낌은 종종 머티리얼을 통해 조절됩니다. 그렇기에 머티리얼 관련 문서 링크도 포함시켜 뒀습니다.
-[REGION:topics third]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Overview:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Overview:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Overview]
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Cascade:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Cascade:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Cascade]
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Rendering/ParticleSystems/Reference:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Rendering/ParticleSystems/Reference:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Rendering/ParticleSystems/Reference]
- [/PARAM]
-[/OBJECT]
-[/REGION]
+## 시작하기
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" tags:"Getting Started")]
+
+## 안내서
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" type:"!reference" tags:"!Getting Started")]
+
+## 참고서
+
+[DIR(output:"topic" parent:"Engine/Rendering/ParticleSystems" end:"1" org:"hierarchy" type:"reference")]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 파티클 관련
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Rendering/ParticleSystems/UserGuide "%Engine/Rendering/ParticleSystems/UserGuide:Description%")
- * [](Engine/Rendering/ParticleSystems/LODs "%Engine/Rendering/ParticleSystems/LODs:Description%")
- * [](Engine/Rendering/ParticleSystems/ParticleLights "%Engine/Rendering/ParticleSystems/ParticleLights:Description%")
- [/PARAM]
-[/OBJECT]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 관련 글타래
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Basics/Distributions "%Engine/Basics/Distributions:Description%")
- * [](Engine/Rendering/Materials/Editor "%Engine/Rendering/Materials/Editor:Description%")
- * [](Engine/Rendering/ParticleSystems/Optimization "%Engine/Rendering/ParticleSystems/Optimization:Description%")
- [/PARAM]
-[/OBJECT]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.INT.udn
index 8fb1b2afcf7f..7f57342f46dc 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.INT.udn
@@ -4,7 +4,10 @@ Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:Complete reference for Particle System type data and modules.
Version: 4.9
tags:Particles
-
+parent:Engine/Rendering/ParticleSystems
+order:3
+type:reference
+topic-image:particlereference_topic.png
## Base Classes
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.JPN.udn
index f55e4cb69822..c5cb0eb10763 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.JPN.udn
@@ -1,10 +1,14 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429247
Availability:Public
Title:パーティクル システムのリファレンス
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:パーティクル システムのタイプデータおよびモジュール用リファレンスの完全版
Version:4.9
-
+tags:Particles
+parent:Engine/Rendering/ParticleSystems
+order:3
+type:reference
+topic-image:particlereference_topic.png
## 基本クラス
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.KOR.udn
index 1f25750394a7..94a1c1370cb0 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/Reference.KOR.udn
@@ -1,11 +1,14 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3429247
Availability: Public
Title:파티클 시스템 참고서
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description:전체 파티클 시스템과 모듈에 대한 참고서입니다.
Version: 4.9
tags:Particles
-
+parent:Engine/Rendering/ParticleSystems
+order:3
+type:reference
+topic-image:particlereference_topic.png
## 베이스 클래스
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/TypeData/Beam/BeamTypeData.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/TypeData/Beam/BeamTypeData.KOR.udn
index 51cc57ea54ea..1735e7aa9c52 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/TypeData/Beam/BeamTypeData.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/Reference/TypeData/Beam/BeamTypeData.KOR.udn
@@ -49,7 +49,7 @@ coXs-CmI_v8
| **Render Geometry** | 지오메트리 렌더 - _True_ 면 빔의 실제 지오메트리가 렌더링됩니다. 다른 식으로는 트레일을 볼 수가 없기에 이 옵션은 보통 켜 둡니다. |
| **Render Direct Line** | 직선 렌더 - _True_ 면 빔의 소스와 타겟 사이에 직선이 렌더링됩니다. 캐스케이드에서 버그잡이에 사용됩니다. |
| **Render Lines** | 선 렌더 - _True_ 면 빔의 각 세그먼트마다 선이 렌더링됩니다. 캐스케이드에서 버그잡이에 사용됩니다. |
-| **Render Tessellation** | 테셀레이션 렌더 - _True_ 면 소스와 타겟 사이 테셀레이션 패쓰로 렌더링됩니다. 캐스케이드에서의 버그잡이에 사용됩니다. |
+| **Render Tessellation** | 테셀레이션 렌더 - _True_ 면 소스와 타겟 사이 테셀레이션 패스로 렌더링됩니다. 캐스케이드에서의 버그잡이에 사용됩니다. |
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.INT.udn
index 9885c4123f3d..138ec4ecbb4d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.INT.udn
@@ -5,6 +5,7 @@ Description:The general usage of Particle Systems and Cascade.
Version: 4.9
SkillLevel: Intermediate
tags:Particles
+topic-image:ParticleSystemUserGuide_topic.png
[TOC(start:2 end:3)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.JPN.udn
index e64d5f634b33..51e6a2dcda0c 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.JPN.udn
@@ -1,14 +1,16 @@
-INTSourceChangelist:2750870
+INTSourceChangelist:3481084
Availability:Public
Title:パーティクル システム ユーザーガイド
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
Description: パーティクル システムとカスケードの一般的な使用方法
Version:4.9
SkillLevel:Intermediate
+tags:Particles
+topic-image:ParticleSystemUserGuide_topic.png
[TOC(start:2 end:3)]
-このページでは、パーティクル システムとパーティクル システム エディタである **カスケード** を使った作業の最も一般的なワークフローについて説明していきます。さらに詳しいドキュメントは準備が整い次第リンクを提供いたします。
+このページでは、パーティクル システムとパーティクル システム エディタである **カスケード** を使った作業の最も一般的なワークフローについて説明していきます。詳細ドキュメントが整い次第、各文書へのリンクを追加します。
## パーティクル システムの作成
@@ -24,7 +26,7 @@ SkillLevel:Intermediate
[/PARAM]
[/OBJECT]
-**パーティクル システム** を作成するには、 **コンテンツ ブラウザ** 上の **[Add New (新規追加)]** ボタンを**左クリック** し **[Particle System]** を選択、あるいは **コンテンツ ブラウザ** の **[Asset View (アセットビュー)]** を**右クリック** し、コンテキスト メニューを使って [Particle System] を選択します。
+**パーティクル システム** を作成するには、**コンテンツ ブラウザ** 上の **[Add New (新規追加)]** ボタンを **クリック** し **[Particle System]** を選択、あるいは **コンテンツ ブラウザ** の **[Asset View (アセットビュー)]** を **右クリック** し、コンテキスト メニューを使って [Particle System] を選択します。
作成された新規パーティクル システムの名前は、新しい名前を入力できるようにハイライトされています。新しい名前を入力するか、別の部分をクリックすると、パーティクル システムのアイコンは [No Image] サムネイルで更新されます。アンリアル エンジン 4 のパーティクル エディタであるカスケードから、サムネイルの作成が可能になります。
@@ -42,7 +44,7 @@ SkillLevel:Intermediate

[/REGION]
-## エミッターの追加
+## エミッタの追加
[REGION:raw]
[INCLUDE:Shared/Tutorials/InParticleSystemEditorTutorial#Stage2.1]
@@ -50,16 +52,16 @@ SkillLevel:Intermediate
-## エミッターの編集
+## エミッタの編集
-エミッターを **クリック** すると、**[Details (詳細)] パネル** にプロパティが表示されます。エミッターには僅かなプロパティがあるだけですが、中でも大きなものは **Name** 、 **Detail Mode** 、 **Medium Detail Spawn Rate Scale** です。
+エミッタを **クリック** すると、**[Details (詳細)] パネル** にプロパティが表示されます。エミッタのプロパティはわずかですが、特に重要なプロパティは **Name**、**Detail Mode**、**Medium Detail Spawn Rate Scale** です。
[REGION:raw]

[/REGION]
-## エミッターの記録
+## エミッタの記録
パーティクル システムでエミッタの順序を変更するには、エミッタを選んで **左矢印キー** と **右矢印キー** を使用します。
@@ -74,10 +76,10 @@ SkillLevel:Intermediate

[/REGION]
-**Solo Mode** は、自分で有効化した Solo Mode 以外の他の全てのパーティクル エミッターを無効にします (Solo Mode が有効にされているエミッターは他にはない前提とします)。こうすることで、そのエミッターだけのエフェクトを表示できるようになります。Solo Mode を 1 つのエミッター上で有効にすることで、別のエミッター上で Solo Mode が有効にされると、Solo Mode に設定されている他のエミッターと一緒にそれがプレビューに追加されます。つまり、特定のエミッターを組み合わせてプレビューすることができるのです。
+**Solo Mode** は、自分で有効化した Solo Mode 以外の他の全てのパーティクル エミッタを無効にします (Solo Mode が有効なエミッタは他にない前提)。こうすることで、そのエミッターだけのエフェクトを表示できるようになります。Solo Mode を 1 つのエミッタ上で有効にすることで、別のエミッター上で Solo Mode が有効にされると、Solo Mode に設定されている他のエミッタと一緒にそれがプレビューに追加されます。つまり、特定のエミッタを組み合わせてプレビューすることができるのです。
[REGION:note]
-Solo Mode を有効にしたエミッターが別のエミッターでのイベントに応じてのみスポーンする場合、何もレンダリングされません。スポーン イベントのあるエミッターも Solo Mode を有効にしておく必要があります。
+Solo Mode が有効のエミッタが別のエミッタでのイベントに応じてスポーンのみする場合、レンダリングは一切されません。スポーン イベントのあるエミッタも Solo Mode を有効にしておく必要があります。
[/REGION]
@@ -90,7 +92,7 @@ Solo Mode を有効にしたエミッターが別のエミッターでのイベ

[/REGION]
-個別のモジュールに関する詳細は、 [パーティクル システムのリファレンス](Engine/Rendering/ParticleSystems/Reference#モジュール) を参照してください。
+個別のモジュールに関する詳細は、[パーティクル システムのリファレンス](Engine/Rendering/ParticleSystems/Reference#モジュール) を参照してください。
@@ -103,15 +105,15 @@ Solo Mode を有効にしたエミッターが別のエミッターでのイベ
ここで、簡単なフラグからディストリビューションを使用するプロパティ上の個々のキーの調整に至るまで、モジュールの全てのプロパティの調整ができます。
-## Distributions (ディストリビューション)
+## Distributions
-ディストリビューションは、パーティクルのライフタイムの間、値を調整できるようにします。
+Distributions (ディストリビューション) は、パーティクルのライフタイムにわたり値を調整できるようにします。
[REGION:raw]

[/REGION]
-ディストリビューションは、データ型の集まりであり、定数値、一定範囲内のランダム値、カーブに沿って補間された値、パラメータによって動く値を使用できる柔軟性があります。
+ディストリビューションは、データ タイプのグループです。不変な値、ある範囲内にあるランダムな値、カーブに沿って補間された値、パラメータ主導の値が可能になり、柔軟性を与えます。
ディストリビューションの詳細については、 [ディストリビューション](Engine/Basics/Distributions) ドキュメント ページをご覧ください。
@@ -127,7 +129,7 @@ Solo Mode を有効にしたエミッターが別のエミッターでのイベ

[/REGION]
-カーブエディタの左側のセクションには、モジュールにおいて **Distributions** をサポートするプロパティがあります。
+カーブ エディタの左側のセクションには、モジュールで **ディストリビューション** をサポートするプロパティがあります。
[REGION:raw]

@@ -149,18 +151,18 @@ Solo Mode を有効にしたエミッターが別のエミッターでのイベ
## Type Data
-**TypeData** モジュールは、パーティクル エミッターの外観と機能を劇的に変える特殊なモジュールです。エミッターに適用することができる **TypeData** は 1 つだけです。また、エミッター スタックではそのエミッターと他のエミッターの間の黒い空間に表示されます。
+**TypeData** モジュールは、パーティクル エミッタの外観と機能を劇的に変える特殊なモジュールです。エミッタに適用することができる **TypeData** は 1 つだけです。また、エミッタ スタックではそのエミッタと他のエミッタの間の黒い空間に表示されます。
[REGION:raw]

[/REGION]
-利用可能な TypeData モジュールに関する詳細は、 [パーティクル システムのリファレンス](Engine/Rendering/ParticleSystems/Reference#TypeDataモジュール) を参照してください。
+利用可能な TypeData モジュールに関する詳細は、[パーティクル システムのリファレンス](Engine/Rendering/ParticleSystems/Reference#TypeDataモジュール) を参照してください。
-## エミッターとモジュールの削除
+## エミッタとモジュールの削除
-エミッターまたはモジュールを削除するには、 **右クリック** して [Delete (削除)] オプションを選びます。エミッターの場合、**[Emitter]** 拡張メニューの中にあります。モジュールの場合はそこにあります。
+エミッタまたはモジュールを削除するには、 **右クリック** して [Delete (削除)] オプションを選びます。エミッタの場合、**[Emitter]** 拡張メニューの中にあります。モジュールの場合はそこにあります。
[REGION:raw]

@@ -170,13 +172,13 @@ Solo Mode を有効にしたエミッターが別のエミッターでのイベ
-## 簡易 LOD 設定
+## クイック LOD セットアップ
[REGION:note]
-現在、 **GPU Particles** モジュールを使用している **パーティクル エミッター** は LOD を使うことができません。
+現在、**GPU Particles** モジュールを使用している **パーティクル エミッタ** は LOD を使うことができません。
[/REGION]
-1. **[Add LOD (LOD を追加)]** ボタンを使って新しく LOD を追加します。一番高い LOD は LOD 0 です。ここで一番高いとは、「品質が一番高い」という意味です。
+1. **[Add LOD (LOD を追加)]** ボタンを使って新しい LOD を追加します。一番高い LOD は LOD 0 です。ここで一番高いとは、「品質が一番高い」という意味です。
* **[Add LOD Before (直前に LOD を追加)]**  ボタンを使って、現在の LOD と二番目に高い LOD の間に LOD を挿入します。
* **[Add LOD After (直後に LOD を追加)]**  ボタンを使って、現在の LOD と二番目に低い LOD (存在する場合) の間に LOD を挿入します。
@@ -193,7 +195,7 @@ Solo Mode を有効にしたエミッターが別のエミッターでのイベ
[(w:880)](LODDetails.png)
[/REGION]
- 1. エミッター リストの最後の黒い部分を **クリック** します。
+ 1. エミッタ リストの最後の黒い部分を **クリック** します。
1. **[Details (詳細)]** パネルにそのパーティクル システム用の設定が表示されます。
1. パーティクル システムの各 LOD の距離設定はLOD カテゴリで変更できます。
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.KOR.udn
index 3fa838c3fc24..e24becff7320 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/UserGuide/UserGuide.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3481084
Availability:Public
Title: 파티클 시스템 사용 안내서
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems
@@ -6,6 +6,7 @@ Description:파티클 시스템과 캐스케이드의 일반적인 사용법입
Version: 4.9
SkillLevel: Intermediate
tags:Particles
+topic-image:ParticleSystemUserGuide_topic.png
[TOC(start:2 end:3)]
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.INT.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.INT.udn
index e7ca29ca542b..b9d1639c5627 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems, Engine/Rendering/Parti
Description:An overview of vector fields and how they work with GPU sprites.
Version: 4.9
tags:Particles
+topic-image:VectorFields_topic.png
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.JPN.udn
index f99c83924ed0..5e1f94154591 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.JPN.udn
@@ -1,9 +1,11 @@
-INTSourceChangelist:2750876
+INTSourceChangelist:3467293
Availability:Public
Title:ベクター フィールド
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems, Engine/Rendering/ParticleSystems/Reference, Engine/Rendering/ParticleSystems/Reference/TypeData/GPUSprites
Description:ベクター フィールドの概要とベクター フィールドと GPU スプライトとの連携方法
Version:4.9
+tags:Particles
+topic-image:VectorFields_topic.png
@@ -11,7 +13,7 @@ Version:4.9
効率性はさておき、GPU パーティクルの最も興味深い機能はベクター フィールドです。ベクター フィールドはベクトルの統一グリッドで、パーティクルの動作に影響を及ぼします。ベクターフィールドはアクタ (グローバル ベクター フィールド) としてワールドに配置され、その他のアクタ同様に移動、回転、そしてスケーリングされます。ベクター フィールドは、動的でいつでも移動させることができます。フィールドはカスケード (ローカル ベクター フィールド) 内に配置することも可能で、関連するエミッタに及ぼす影響を制限します。パーティクルがベクター フィールド範囲に突入すると、パーティクルの動作はフィールドに影響され、パーティクルがフィールド範囲を離れるにつれて影響度が薄れます。
-ベクター フィールドは、デフォルト設定でフィールド内のパーティクルへ影響力を与えます。ベクター フィールドには、「タイトネス」パラメータもあります。このパラメータは、パーティクルがフィールドのベクターを直接追跡する方法を制御します。タイトネスが 1 に設定されると、パーティクルはベクターのベロシティを直接フィールドから読み出し、フィールドを正確に追跡します。
+ベクター フィールドは、デフォルト設定でフィールド内のパーティクルへ影響力を与えます。ベクター フィールドには、正確さを制御するパラメータもあります。このパラメータは、パーティクルがフィールドのベクターを追跡する正確さを制御します。Tightness を 1 に設定すると、パーティクルはベクターのベロシティを直接フィールドから読み出し、フィールドを正確に追跡します。
スタティック ベクター フィールドは、ベクターのグリッドが絶対に変化しません。フィールドは Maya からエクスポートして、ボリューム テクスチャとしてインポートします。スタティック フィールドは負荷がほとんどかからず、特にフィールド自体の動作をアニメートすることによって興味深い動作をパーティクルに追加します。
@@ -19,13 +21,13 @@ Version:4.9
[/EXCERPT:VectorFields]
-## グローバル ベクター フィールド
+## Global Vector Fields
-上述のように、**Global Vector Fields** はアクタとしてレベルに配置することができます。ただし、 **コンテンツ ブラウザ** からドラッグすることはできません。レベル内にベクター フィールドを設定するには、Vector Field Volume アクタを追加する必要があります。また、適切なベクター フィールド アセットを関連付ける必要があります。
+上述のように、**Global Vector Fields** はアクタとしてレベルに配置することができます。ただし、**コンテンツ ブラウザ** からドラッグすることはできません。レベル内にベクター フィールドを設定するには、Vector Field Volume アクタを追加する必要があります。また、適切なベクター フィールド アセットを関連付ける必要があります。
### Vector Field Volume アクタ
-**Vector Field Volume Actor** アクタは、従来型のボリュームとは異なります。作成するには、クラス ビューアのベクター フィールド ボリュームを見つけ、それをレベル内にドラッグ&ドロップします。その後、**コンテンツ ブラウザ** からアクタのプロパティ経由でベクター フィールドを割り当てます。一度追加されると、フィールドは位置決定、回転、スケーリングすることができます。
+**Vector Field Volume Actor** アクタは、従来型のボリュームとは異なります。作成するには、クラス ビューアのベクター フィールド ボリュームを見つけ、それをレベル内にドラッグ&ドロップします。その後、**コンテンツ ブラウザ** からアクタのプロパティ経由でベクター フィールドを割り当てます。追加されたフィールドは、配置、回転、スケールが可能になります。
(w:460)
@@ -41,9 +43,9 @@ Version:4.9
## ローカル ベクター フィールド
-グローバルに対応するフィールドとは対照的に **Local Vector Fields** は、パーティクル システム内に存在しワールド空間に配置されないベクター フィールドです。つまり、[Global Vector Fields](Engine/Rendering/ParticleSystems/Reference/Modules/VectorField) モジュールで全てのパーティクル システムに作用するグローバル ベクター フィールドとは異なり、ローカル ベクター フィールドは割り当てられたパーティクル エミッタのみに変化をもたらします。
+グローバルに対応するフィールドとは対照的に **Local Vector Fields** は、パーティクル システム内に存在しワールド スペースに配置されないベクター フィールドです。つまり、[Global Vector Fields モジュール](Engine/Rendering/ParticleSystems/Reference/Modules/VectorField) ですべてのパーティクル システムに影響するグローバル ベクター フィールドとは異なり、ローカル ベクター フィールドは割り当てられたパーティクル エミッタのみに変化をもたらします。
-ローカル ベクター フィールドは [Local Vector Field モジュール](Engine/Rendering/ParticleSystems/Reference/Modules/VectorField) を用いて追加されます。
+ローカル ベクター フィールドは [Local Vector Field モジュール](Engine/Rendering/ParticleSystems/Reference/Modules/VectorField) で追加されます。
(w:460)
diff --git a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.KOR.udn
index b7ac459e8757..46ad4754042f 100644
--- a/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/ParticleSystems/VectorFields/VectorFields.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3243860
+INTSourceChangelist:3467293
Availability: Public
Title:벡터 필드
Crumbs: %ROOT%, Engine, Engine/Rendering/ParticleSystems, Engine/Rendering/ParticleSystems/Reference, Engine/Rendering/ParticleSystems/Reference/TypeData/GPUSprites
Description:벡터 필드에 대한 개요, GPU 스프라이트와 어떻게 작동하는가에 대한 문서입니다.
Version: 4.9
tags:Particles
+topic-image:VectorFields_topic.png
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.INT.udn
index b3a2bfa594a9..011216030db3 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.INT.udn
@@ -1,8 +1,14 @@
-Availability:Public
-Title:Anti-Aliasing
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:Smoothing of jagged edges using the FXAA method.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Anti-Aliasing
+Description: Smoothing of jagged edges using the FXAA method.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:1
+Tags:Post Process
+topic-image:AntiAliasing_Topic.png
**Anti-Aliasing** (AA) refers to the smoothing of aliased, or jagged, lines when displayed on a computer monitor.
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.JPN.udn
index 5ae348f01aa7..4c194946c045 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.JPN.udn
@@ -1,12 +1,18 @@
-INTSourceChangelist:2685398
+INTSourceChangelist:3474032
Availability:Public
-Title:アンチエイリアス
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
+Crumbs: %ROOT%
+Title:アンチエイリアシング
Description:FXAA 手法を使用してギザギザになった縁を滑らかにする処理
-Version:4.9
+Type:Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:1
+Tags:Post Process
+topic-image:AntiAliasing_Topic.png
-**アンチエイリアス** (AA) は、PC のモニターに表示されるエイリアス (ジャギー) またはギザギザになった線を滑らかに補整する処理のことです。
+**アンチエイリアス** (AA) は、PC のモニターに表示されるエイリアス (ジャギー) またはギザギザになった線を滑らかに補正する処理のことです。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -17,7 +23,7 @@ Version:4.9
[/PARAM]
[/OBJECT]
-アンリアル・エンジン 4のアンチエイリアス処理は、FXAA を使用して後処理時に実行されます。FXAA は効果的な GPU MLAA 実装です。
+アンリアル・エンジン 4 のアンチエイリアス処理は、FXAA を使用して後処理時に実行されます。FXAA は効果的な GPU MLAA 実装です。
この手法によりほとんどのエイリアス アーティファクトが解決されますが、定期的に発生するエイリアスを完全に回避することは出来ません。
以下はその他の技術です。UE4 は、現状は エディター 3D プリミティブ (3D ギズモなど) とテンポラル アンチエイリアシングのいくつかに対してのみ MSAA をサポートしています。
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.KOR.udn
index 33b0eed70752..a0db7e24a570 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AntiAliasing/AntiAliasing.KOR.udn
@@ -1,9 +1,15 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3474032
Availability:Public
+Crumbs: %ROOT%
Title:안티-앨리어싱
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:각진 선분을 FXAA 메소드를 사용해서 부드럽게 만드는 법입니다.
-Version: 4.9
+Description:각진 에지를 부드럽게 만드는 FXAA 메소드입니다.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:1
+Tags:Post Process
+topic-image:AntiAliasing_Topic.png
안티 앨리어싱(Anti-Aliasing, AA) 이란 컴퓨터 모니터에 표시되는 선이 (중간 단계 없이) 0 이나 1 로 각지게 그려지는 것을 부드럽게 만들어 주는 현상을 말합니다.
@@ -28,3 +34,4 @@ Version: 4.9
자세한 정보: [FXAA 백서](http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf) (외부 링크)
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AutomaticExposure/AutomaticExposure.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AutomaticExposure/AutomaticExposure.INT.udn
index 25a66032d662..68aa03b202b0 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AutomaticExposure/AutomaticExposure.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AutomaticExposure/AutomaticExposure.INT.udn
@@ -1,8 +1,15 @@
-Availability:Public
-Title:Eye Adaptation
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:Automatic adjustment of scene exposure to simulate eye adaptation from changes in brightness.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Eye Adaptation (Auto-Exposure)
+Description: Automatic adjustment of scene exposure to simulate eye adaptation from changes in brightness.
+Type: Overview
+SkillLevel: Beginnner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:2
+Tags:Post Process
+Topic-image:EyeAdap_Topic.png
+
[EXCERPT:EyeAdaptation_Desc]
**Eye Adaptation**, or automatic exposure, causes the exposure of the scene to automatically adjust to recreate the effect experienced as human eyes adjust when going from a bright environment into a dark environment or vice versa.
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AutomaticExposure/AutomaticExposure.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AutomaticExposure/AutomaticExposure.JPN.udn
index f39bd19ba944..baad18dc198b 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AutomaticExposure/AutomaticExposure.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/AutomaticExposure/AutomaticExposure.JPN.udn
@@ -1,12 +1,19 @@
-INTSourceChangelist:2685419
+INTSourceChangelist:3474032
Availability:Public
-Title:自動露光
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
+Crumbs: %ROOT%
+Title:自動露光 (別名:明暗順応)
Description:輝度の変更から視覚の順応をシミュレートするためにシーンの露出を自動調整します。
-Version:4.9
+Type:Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:2
+Tags:Post Process
+Topic-image:EyeAdap_Topic.png
+
[EXCERPT:EyeAdaptation_Desc]
-**自動露光**、または自動露出は、明るい環境から暗い環境へ、そして逆もまた同様に、人間の視覚が体験する効果を再現するために、シーンの露出を自動調整します。
+**自動露光**、または明暗順応は、明るい環境から暗い環境へそして逆もまた同様に、人間の視覚が体験する効果を再現するために、シーンの露出を自動的に調整します。
[/EXCERPT:EyeAdaptation_Desc]
[REGION:fullwidth]
@@ -15,13 +22,13 @@ Version:4.9
| プロパティ | 説明 |
| -------- | ----------- |
-| **Low Percent** | シーンカラーの輝度ヒストグラムから抽出した値へ視覚を順応させます。値はヒストグラムの低い方の割合を定義します。この割合はシーン輝度の平均値の検知に使用されます。明るい画像部分のクランプを避けたいため、暗い領域のほとんどの部分を無視するのが最良です。例えば、80 の値は暗部の 80 %を回避します。設定値は、 [0, 100] の範囲でなくてはいけません。70 から 80 の範囲の値で最高の結果を得られます。
-| **High Percent** | シーンカラーの輝度ヒストグラムから抽出した値へ視覚を順応させます。値はヒストグラムの高い方の割合を定義します。この割合はシーン輝度の平均値の検知に使用されます。いくつかの明るいピクセルがあっても問題ないため (大抵は太陽) 、数パーセント縮小させます。設定値は、[0, 100] の範囲でなくてはいけません。80 から 98 の範囲の値で最高の結果を得られます。|
-| **Min Brightness** | この値は視覚が順応する範囲内の低い方の輝度を制限します。値は 0 より大きい数値および<= **EyeAdaptationMaxBrightness** であることが必須です。実際の値はコンテンツが使用している HDR 範囲で決定します。
-| **Max Brightness** | この値は視覚が順応する範囲内の低い方の輝度を制限します。値は 0 より大きい数値および>= **EyeAdaptationMinBrightness** であることが必須です。実際の値はコンテンツが使用している HDR 範囲で決定します。
-| **Speed Up** | 暗い環境から明るい環境へ暗順応が起こる速度です。 |
+| **Low Percent** | シーンカラーの輝度ヒストグラムから抽出した値へ視覚を順応させます。値はヒストグラムの低い方の割合を定義します。この割合はシーン輝度の平均値の検知に使用されます。明るい画像部分のクランプを避けたいため、暗い領域のほとんどの部分を無視するのが最良です。例えば、80 の値は暗部の 80 %を回避します。設定値は、[0, 100] の範囲でなくてはいけません。70 から 80 の範囲の値で最高の結果を得られます。
+| **High Percent** | シーンカラーの輝度ヒストグラムから抽出した値へ視覚を順応させます。値はヒストグラムの高い方の割合を定義します。この割合はシーン輝度の平均値の検知に使用されます。いくつかの明るいピクセルがあっても問題ないため (大抵は太陽)、数パーセント縮小させます。設定値は、[0, 100] の範囲でなくてはいけません。80 から 98 の範囲の値で最高の結果を得られます。|
+| **Min Brightness** | この値は視覚が順応する範囲内の低い方の輝度を制限します。値は 0 より大きい数値および <= **EyeAdaptationMaxBrightness** であることが必須です。実際の値はコンテンツが使用している HDR 範囲で決定します。 |
+| **Max Brightness** | この値は視覚が順応する範囲内の低い方の輝度を制限します。値は 0 より大きい数値および >= **EyeAdaptationMinBrightness** であることが必須です。実際の値はコンテンツが使用している HDR 範囲で決定します。 |
+| **Speed Up** | 暗い環境から明るい環境へ明順応が起こる速度です。 |
| **Speed Down** | 明るい環境から暗い環境へ暗順応が起こる速度です。 |
-| **Auto Exposure Bias** | 露出設定のバイアスを制御します。値は対数で表されています。 [INCLUDE:#ExposureOffset] つまり 1.5 などの小数値、または表示例の外側の値でも機能します。自動露光がアクティブな時、値は自動露出に加算されます。 |
+| **Auto Exposure Bias** | 露光設定のバイアスを制御します。値は対数で表されています。 [INCLUDE:#ExposureOffset] つまり 1.5 などの小数値、または表示例の外側の値でも機能します。自動露光がアクティブな時、値は自動露出に加算されます。 |
+## Bloom Convolution
+
+The Bloom **Convolution** effect enables you to add custom bloom kernel shapes with a texture that represent physically realistic bloom effects whereby the scattering
+and diffraction of light within the camera or eye that give rise to bloom is modeled by a mathematical convolution of a source image with a kernel image.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ 
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+[REGION:caption]
+[/REGION]
+[REGION:caption]
+In this example, the bloom technique produces a continuum of responses ranging from star-like bursts to diffuse glowing regions.
+[/REGION]
+
+The kernel represents the response of the optical device to a single point source in the center of the viewing field. Each pixel in the source contributes some of its brightness
+to neighbors as prescribed by the kernel image. The brighter the source pixel the more visible the bloom it produces. Under the hood this energy conserving scatter is formulated
+as a convolution operations and accelerated by use of a Fast Fourier Transform (FFT).
+
+[REGION:warning]
+Bloom Convolution is designed for use with with in-game or offline cinematics or on high-end hardware, while the **_Standard_ bloom should be used for most game applications**.
+In assessing the trade off, the _Standard_ bloom has a significant performance advantage but it is not conservative (it can result in an overall brightening of the image)
+and it lacks the visual complexity of the Bloom Convolution.
+[/REGION]
+
+To enable Bloom Convolution, navigate to the **Lens** section of the Post Process Volume and next to **Method** use the selection box to choose **Convolution**.
+
+(w:450)
+
+[REGION:raw]
+| Property | %spacer2% | Description |
+| -------- | --------- | ----------- |
+| **Convolution Kernel** || Use this to select the texture that defines the kernel. |
+| [REGION:tablesection] Advanced Properties [/REGION] |||
+| **Convolution Scale** || This indicates the relative size of the Convolution Kernel image in units of the viewport, defaults to 1. Primarily used to decrease the size of the bloom. |
+| **Convolution Center** || In UV coordinates, defaults to (1/2, 1/2). Ideally the Convolution Kernel image is a perfectly centered response to a brighter source, but generally small tweaks will be required. Offsets here will result in full offsets of the bloom image. |
+| **Convolution Boost** || Boosts the intensity of select pixels prior to applying the convolution bloom filter. This consists of a minimum value, a maximum value and a multiplier. The brightness delta above the minimum value will be amplified by the multiplier. By default this boost is disabled and should be used with caution. |
+| **Convolution Buffer** || Implicit buffer region as a fraction of screen size to insure the bloom does not wrap around the image. Increasing this value has adverse performance impact. |
+[/REGION]
+
+### Kernel Image Best Practices
+
+The additional realism generated by the image-based convolution is the result of its ability to use a visually interesting, non-symmetric kernel images. When
+creating your kernel images and setting them up for use with Bloom Convolution, there are a few things that you should keep in mind.
+
+* The kernel image should be fully present on the GPU and available at full resolution, otherwise a low resolution version of the kernel may be used and will result in serious
+degradation of quality. To do this, set the following properties in the Texture Editor for the kernel image:
+ [INCLUDE:#cbtextureproperties]
+* Bloom is a whole image filter, so with Convolution Bloom the hottest part of the image should be the considerably brighter than the rest of the image (.exr format works well for this),
+otherwise the filter will have a strong blurring effect over the screen.
+* The system expects the hottest point to be at the center of your kernel image, however, this can be adjusted by using the **Convolution Center** controls.
+* A good bloom kernel structure should fill most of the kernel image. If you look at the default kernel image in Photoshop, you'll see that the radial lines that diverge from the center spread out
+for a considerable amount of the image.
+ [OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:400)
+ [/PARAM]
+ [PARAM:after]
+ (w:400)
+ [/PARAM]
+ [/OBJECT]
+* Large changes in the Convolution behavior should be done by changing the kernel image with minor tweaks done using the Bloom Convolution Advanced properties.
+
+
+
## Bloom Dirt Mask
-The **Bloom Dirt Mask** effect uses a texture to brighten up the bloom in some defined screen areas. This can be used to create a war camera look, more impressive HDR effect, or camera imperfections.
+The **Bloom Dirt Mask** effect uses a texture to brighten up the bloom in some defined screen areas. This can be used to create a war camera look, more impressive HDR effect, or camera
+imperfections.
-| Property | Description |
-| -------- | ----------- |
-| **Dirt Mask** | The Texture2D to use as the mask. It is recommended that a non-power of two texture is used as it fits the screen size better and it avoids mip creation and streaming. A low resolution texture is often sufficient as dirt on the camera is likely to be out of focus and blurry anyway. The texture can be created with the Photoshop Lens blur. Chromatic aberration (color fringe) can improve the look. Beware of compression artifacts. This property cannot be blended. We plan to make this more dynamic and programmable through custom shaders. |
-| **Dirt Mask Tint Color** | Used to darken or color tint the dirt mask texture. This can be used to tweak the dirt mask brightness and color. |
-| **Dirt Mask Intensity** | Scales the color of the bloom dirt mask effect (linear). This property is used to tweak dirt mask brightness. |
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:600)
+ [/PARAM]
+ [PARAM:after]
+ (w:600)
+ [/PARAM]
+[/OBJECT]
+To enable Bloom Dirt Mask, navigate to the **Lens** section of the Post Process Volume and enable the option for **Dirt Mask Texture**. Use the Texture selection to apply the texture for your Dirt Mask.
+
+(w:450)
+
+[REGION:raw]
+| Property | %spacer2% | Description |
+| -------- | --------- | ----------- |
+| **Dirt Mask Texture** || Use the selection box to assign a Texture2D to be used for your Dirt Mask. Keep in mind that this property cannot be blended with other Post Process Volumes. |
+| **Dirt Mask Intensity** || Scales the color of the bloom dirt mask effect (linear). This property is used to tweak dirt mask brightness. |
+| **Dirt Mask Tint Color** || Used to darken or color tint the dirt mask texture. This can be used to tweak the dirt mask brightness and color. |
+[/REGION]
+
+### Dirt Mask Image Best Practices
+
+When creating your Dirt Mask textures and setting them up for use with Bloom Dirt Mask, there are a few things you should keep in mind.
+
+* The texture should be fully present on the GPU and available at the full resolution. To do this, set the following property in the Texture Editor:
+ [INCLUDE:#dirtmasktextureproperty]
+* This Post Process property cannot be blended with other Post Process Volumes in your level.
+* When constructing your Dirt Mask Texture, keep the following in mind:
+ [INCLUDE:#dirtmaskexample]
+ * It is recommended to use a non-power of two image size. This avoids Mip creation and streaming, so these should be set automatically, however, if you use a power of two texture size, you'll need to set these in the Texture Editor properties.
+ * You can use a low-resolution texture as this is usually sufficient to represent dirt or scratches on the camera and these are likely to be out of focus and blurry anyway. If you're getting compression artifacts you can try a higher resolution image.
+ * You can create the texture using Photoshop (or similar image editing software) using Lens blur.
+ * Use chromatic aberration (color fringe), in the texture, to help improve the look of the dirt mask.
+
+
+
+
+
+## Training Streams
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ SkJgopq-JQA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Bloom/Bloom.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Bloom/Bloom.KOR.udn
index 051b7bfa5eea..06a31d5981b1 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Bloom/Bloom.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Bloom/Bloom.KOR.udn
@@ -1,28 +1,47 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3474032
Availability:Public
+Crumbs:
Title:블룸
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
Description:광륜을 통해 라이트처럼 밝은 오브젝트를 밝게 빛나게 만드는 글로우 이펙트입니다.
-Version: 4.9
+Type:reference
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:1
+Tags:Post Process
+Topic-image:bloom_Topic.png
+
+[VAR:spacer](w:150 convert:false)[/VAR]
+[VAR:spacer2](w:40 convert:false)[/VAR]
+
+[TOC(start:2 end:2)]
+
[EXCERPT:Bloom_Desc]
-**Bloom** (블룸)이란 중간 정도의 렌더링 퍼포먼스 비용으로 이미지 렌더링에 사실감을 크게 더해줄 수 있는, 현실에서도 볼 수 있는 광학 현상입니다. 블룸 현상은 훨씬 어두운 배경에 있는 매우 밝은 물체를 맨눈으로 바라볼 때 목격할 수 있습니다. 그보다 밝아지면 (빛줄기나 렌즈 플레어같은) 다른 현상도 생길 수 있지만, 고전적인 블룸 효과에서는 다루지 않습니다. 보통 쓰는 (TV, TFT 등의) 디스플레이에서는 HDR(High Dynamic Range)이 지원되지 않기에, 너무 밝은 오브젝트는 렌더링할 수가 없습니다. 대신 빛이 필름에 내리쬐거나(필름 피하산란) 카메라 앞에 내리쬘 때(유윳빛 유리 필터) 눈에서 벌어지는 (망막 피하산란) 현상을 흉내냅니다. 그 효과가 물리적으로야 항상 옳지는 않겠지만, 오브젝트의 상대적 밝기를 살려주거나 화면에 표시되는 LDR(Low Dynamic Range) 이미지에 사실감을 더하는 데 도움이 될 수는 있습니다.
+**Bloom** (블룸)이란 중간 정도의 렌더링 퍼포먼스 비용으로 이미지 렌더링에 사실감을 크게 더해줄 수 있는, 현실에서도 볼 수 있는 광학 현상입니다.
+블룸 현상은 훨씬 어두운 배경에 있는 매우 밝은 물체를 맨눈으로 바라볼 때 목격할 수 있습니다. 그보다 밝아지면 (빛줄기나 렌즈 플레어같은) 다른 현상도 생길 수 있지만,
+고전적인 블룸 효과에서는 다루지 않습니다. 보통 쓰는 (TV, TFT 등의) 디스플레이에서는 HDR(High Dynamic Range)이 지원되지 않기에, 너무 밝은 오브젝트는 렌더링할 수가 없습니다.
+대신 빛이 필름에 내리쬐거나(필름 피하산란) 카메라 앞에 내리쬘 때(유윳빛 유리 필터) 눈에서 벌어지는 (망막 피하산란) 현상을 흉내냅니다.
+그 효과가 물리적으로야 항상 옳지는 않겠지만, 오브젝트의 상대적 밝기를 살려주거나 화면에 표시되는 LDR(Low Dynamic Range) 이미지에 사실감을 더하는 데 도움이 될 수는 있습니다.
[/EXCERPT:Bloom_Desc]
[REGION:fullwidth]

[/REGION]
-블룸은 하나의 가우시안 블러(Gaussian blur)로 구현할 수 있습니다. 품질을 높이기 위해서는, 반경이 다른 가우시안 블러 여럿을 합칩니다. 퍼포먼스를 높이기 위해서는, 매우 넓은 블러를 훨씬 낮은 해상도로 합니다. UE3 에서는 1/4, 1/8, 1/16 해상도의 가우시안 블러 셋을 썼었습니다. 현재는 Blur1 부터 5 까지, 1/2 (Blur1) 에서 1/32 (Blur5) 해상도의 블러를 씁니다. 필요하다면 최대 해상도 블러용 Blur0 을 추가할 수도 있습니다.
+블룸은 하나의 가우시안 블러(Gaussian blur)로 구현할 수 있습니다. 품질을 높이기 위해서는, 반경이 다른 가우시안 블러 여럿을 합칩니다. 퍼포먼스를 높이기 위해서는, 매우 넓은
+블러를 훨씬 낮은 해상도로 합니다. UE3 에서는 1/4, 1/8, 1/16 해상도의 가우시안 블러 셋을 썼었습니다. 현재는 Blur1 부터 5 까지, 1/2 (Blur1) 에서 1/32 (Blur5) 해상도의 블러를 씁니다.
-제어할 수 있는 폭과 품질을 높이기 위해 블러를 합치는 방식을 다양화시킬 수 있습니다. 최적의 퍼포먼스를 위해서는, 고해상도 (낮은 번호) 블러는 좁게, 넓은 블러에는 주로 저해상도 (높은 번호) 블러를 사용해야 할 것입니다.
+제어할 수 있는 폭과 품질을 높이기 위해 블러를 합치는 방식을 다양화시킬 수 있습니다. 최적의 퍼포먼스를 위해서는, 고해상도 (낮은 번호) 블러는 좁게,
+넓은 블러에는 주로 저해상도 (높은 번호) 블러를 사용해야 할 것입니다.
-| 프로퍼티 | 설명 |
-| -------- | ---- |
-| **Intensity** | 블룸 강도 - 전체 블룸 이펙트의 (선형) 색 스케일입니다. 시간에 따른 페이드 인이나 아웃, 어둡게 만드는 데 사용할 수 있습니다. [INCLUDE:#Intensity] |
-| **Threshold** | 블룸 한계치 - 블룸을 적용하기 시작할 색의 휘도를 정의합니다. 한계치 이외에 색이 블룸에 부분적으로만 영향을 끼치는 (1 유닛 폭) 선형 부분이 있습니다. 씬의 모든 색이 블룸에 공헌하게 하려면, -1 볼륨을 사용해야 합니다. 일부 비현실적인 HDR 콘텐츠, 몽환적인 부분 트윅에 사용할 수 있습니다. [INCLUDE:#Threshold] |
-| **#1/#2/#3/#4/#5 Tint** | 블룸 #1/#2/#3/#4/#5 색조 - 각 블룸의 밝기와 색을 변경합니다. 검정색을 사용한다고 그 패스가 빨라지지는 않지만, 가능은 합니다. |
-| **#1/#2/#3/#4/#5 Size** | 블룸 #1/#2/#3/#4/#5 크기 - 화면 폭을 기준으로 한 백분율 크기입니다. 일정 수치로 제한됩니다. 큰 수치가 필요하다면 한 단계 낮은 해상도 (높은 번호) 블러를 대신 사용하세요. [INCLUDE:#Size] |
+[REGION:raw]
+| 프로퍼티 | %spacer2% | 설명 |
+| -------- | --------- | ----------- |
+| **Intensity** || 블룸 강도 - 전체 블룸 이펙트의 (선형) 색 스케일입니다. 시간에 따른 페이드 인이나 아웃, 어둡게 만드는 데 사용할 수 있습니다. [INCLUDE:#Intensity] |
+| **Threshold** || 블룸 한계치 - 블룸을 적용하기 시작할 색의 휘도를 정의합니다. 한계치 이외에 색이 블룸에 부분적으로만 영향을 끼치는 (1 유닛 폭) 선형 부분이 있습니다. 씬의 모든 색이 블룸에 공헌하게 하려면, -1 볼륨을 사용해야 합니다. 일부 비현실적인 HDR 콘텐츠, 몽환적인 부분 트윅에 사용할 수 있습니다. [INCLUDE:#Threshold] |
+| **#1/#2/#3/#4/#5 Tint** || 블룸 #1/#2/#3/#4/#5 색조 - 각 블룸의 밝기와 색을 변경합니다. 검정색을 사용한다고 그 패스가 빨라지지는 않지만, 가능은 합니다. |
+| **#1/#2/#3/#4/#5 Size** || 블룸 #1/#2/#3/#4/#5 크기 - 화면 폭을 기준으로 한 백분율 크기입니다. 일정 수치로 제한됩니다. 큰 수치가 필요하다면 한 단계 낮은 해상도 (높은 번호) 블러를 대신 사용하세요. [INCLUDE:#Size] |
+[/REGION]
+## 블룸 컨볼루션
+
+블룸 **Convolution** (컨볼루션)은 물리적으로 사실적인 블룸 이펙트를 표현하는 텍스처와 함께 커스텀 블룸 커널 모양을 추가할 수 있도록 해주는 이펙트로,
+카메라나 눈 내부 빛의 산란이나 굴절이 블룸 효과를 일으킬 때 소스 이미지와 커널 이미지의 컨볼루션(합성곱) 수학 연산으로 모델링해 내는 기법입니다.
+
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ 
+ [/PARAM]
+ [PARAM:after]
+ 
+ [/PARAM]
+[/OBJECT]
+[REGION:caption]
+[/REGION]
+[REGION:caption]
+이 예제에서는 블룸 기법으로 별모양 광채에서부터 디퓨즈 글로우 구역에 이르기까지 다양한 반응 연속체 효과를 만들어내고 있습니다.
+[/REGION]
+
+커널은 시야 중심의 단일 지점 소스에 대한 광학 기기의 반응을 나타냅니다. 그 소스의 각 픽셀은 그 밝기 일부를 커널 이미지에 미리 정해진 대로 인접 픽셀에 기여합니다.
+소스 픽셀이 밝을 수록 거기서 만들어 내는 블룸도 더욱 잘 보이게 됩니다. 내부적으로 이러한 에너지 보존 산란 공식은
+컨볼루션(합성곱) 연산과 고속 푸리에 변환(Fast Fourier Transform, FFT) 가속으로 이루어집니다.
+
+[REGION:warning]
+블룸 컨볼루션은 고사양 하드웨어에서의 게임내 또는 오프라인 시네마틱에 사용하도록 의도된 것이며, **대부분의 게임 어플리케이션에서는 표준 블룸을 사용해야 할 것입니다**.
+득실을 따져보자면, _표준_ 블룸은 퍼포먼스가 크게 뛰어나지만 보존적이지 않(이미지가 전반적으로 밝아질 수 있)으며
+블룸 컨볼루션의 시작적인 복잡도를 따라가지는 못합니다.
+[/REGION]
+
+블룸 컨볼루션을 켜려면, Post Process Volume 의 **Lens** 섹션에서 **Method** 옆 선택 박스에서 **Convolution** 을 선택합니다.
+
+(w:450)
+
+[REGION:raw]
+| 프로퍼티 | %spacer2% | 설명 |
+| -------- | --------- | ----------- |
+| **Convolution Kernel** || 컨볼루션 커널 - 커널을 정의하는 텍스처를 선택합니다. |
+| [REGION:tablesection] 고급 프로퍼티 [/REGION] |||
+| **Convolution Scale** || 컨볼루션 스케일 - 컨볼루션 커널 이미지의 상대적 크기를 뷰포트 유닛 단위로 나타낸 것으로, 기본값은 1 입니다. 블룸 크기를 줄이는 데 주로 사용됩니다. |
+| **Convolution Center** || 컨볼루션 중심 - UV 좌표로 기본값은 (�, �) 입니다. Convolution Kernel 이미지는 보다 밝은 소소에 대해 완벽히 중심 위치인 것이 이상적이지만, 일반적으로 약간의 트윅이 필요합니다. 여기서 오프셋은 블룸 이미지에 풀 오프셋을 주게 됩니다. |
+| **Convolution Boost** || 컨볼루션 부스트 - 컨볼루션 블룸 필터 적용 전 선택 픽셀 밝기를 증폭시킵니다. 최소, 최대값과 배수로 이루어집니다. 최소값 이상의 밝기 델타에 배수만큼 증폭시킵니다. 기본적으로 이 부스트는 꺼져있으며, 조심해서 사용해야 합니다. |
+| **Convolution Buffer** || 컨볼루션 버퍼 - 화면 크기의 일정 비율로 정하는 암묵적 버퍼 구역으로, 블룸이 이미지를 감싸지(wrap around) 않도록 하기 위함입니다. 이 값을 올리면 퍼포먼스에 안좋은 영향을 줍니다. |
+[/REGION]
+
+### 커널 이미지 실전 사례
+
+이미지 기반 컨볼루션으로 추가되는 사실적 느낌은 시각적으로 흥미로운 비대칭 커널 이미지를 사용할 수 있기 때문에 발생하는 결과입니다.
+커널 이미지를 만들어 블룸 컨볼루션에 사용하도록 구성할 때, 몇 가지 염두에 두어야 할 점이 있습니다.
+
+* 커널 이미지는 GPU 에 온전히 존재해야 하며, 전체 해상도로 사용가능해야 합니다. 그렇지 않으면 커널 저해상도 버전이 사용되어 심각한 퀄리티 저하로 이어집니다.
+텍스처 에디터에서 커널 이미지에 대해 다음과 같은 프로퍼티 설정을 해주면 됩니다:
+ [INCLUDE:#cbtextureproperties]
+* 블룸은 전체 이미지 필터로, 컨볼루션 블룸은 이미지의 가장 핫한 부분을 나머지 부분보다 현저히 밝게 만들거나 (.exr 포맷이 여기에 좋습니다),
+아니면 필터로 인해 화면에 강력한 블러 이펙트가 생길 것입니다.
+* 시스템에서는 가장 핫한 지점이 커널 이미지 중심일 것으로 기대합니다만, **Convolution Center** 컨트롤로 제어할 수 있습니다.
+* 블룸 커널 스트럭쳐가 괜찮으면 대부분의 커널 이미지를 채울 것입니다. Photoshop 에서 기본 커널 이미지를 살펴보면, 중심에서 이미지 상당 부분까지 뻗어나가는 방사선이
+보일 것입니다.
+ [OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:400)
+ [/PARAM]
+ [PARAM:after]
+ (w:400)
+ [/PARAM]
+ [/OBJECT]
+* 블룸 컨볼루션 고급 프로퍼티로 커널 이미지에 약간의 트윅 작업을 하는 것으로 컨볼루션 작동방식을 크게 바꿀 수 있을 것입니다.
+
+
+
## 블룸 더트 마스크
-**Bloom Dirt Mask** (블룸 더트 마스크) 이펙트는 텍스처를 사용해서 일부 정의된 화면 영역의 블룸을 밝게 만드는 것을 말합니다. 전장의 카메라, 더욱 인상깊은 HDR 이펙트, 카메라 결함 등의 효과를 내는 데 사용할 수 있습니다.
+**Bloom Dirt Mask** (블룸 더트 마스크) 이펙트는 텍스처를 사용해서 일부 정의된 화면 영역의 블룸을 밝게 만드는 것을 말합니다. 전장의 카메라, 더욱 인상깊은 HDR 이펙트, 카메라 결함 등의 효과를 내는 데
+사용할 수 있습니다.
-| 프로퍼티 | 설명 |
-| -------- | ---- |
-| **Dirt Mask** | 블룸 더트 마스크 - 마스크로 사용할 Texture2D 입니다. 화면 측면에 더 잘 맞고 밉 생성과 스트리밍을 피하게 되므로 2 제곱이 아닌 텍스처를 사용하는 것이 좋습니다. 카메라에 붙은 먼지는 초점이 안맞아 흐려지게 마련이므로, 보통은 저해상도 텍스처로 충분합니다. 이 텍스처는 포토샵 렌즈 블러로 만들 수 있습니다. 색수차(Chromatic aberration, 또는 color fringe) 효과로 느낌을 살릴 수도 있습니다. 압축 부작용에 주의하세요. 이 프로퍼티는 블렌딩 불가능하며, 나중에 커스텀 셰이더를 통해 동적으로 프로그래밍 가능하도록 만들 계획입니다. |
-| **Dirt Mask Tint Color** | 블룸 더트 마스크 색조 - 더트 마스크 텍스처에 색을 입히거나 어둡게 만듭니다. 더트 마스크 밝기와 색을 조정하는 데 사용할 수 있습니다.|
-| **Dirt Mask Intensity** | 블룸 더트 마스크 강도 - 블룸 더트 마스크의 (선형) 색 스케일입니다. 이 프로퍼티는 더트 마스크의 밝기를 조정하는 데 사용됩니다. |
+[OBJECT:ComparisonSlider]
+ [PARAM:before]
+ (w:600)
+ [/PARAM]
+ [PARAM:after]
+ (w:600)
+ [/PARAM]
+[/OBJECT]
+
+Bloom Dirt Mask (블룸 더트 마스크)를 켜려면, Post Process Volume 의 **Lens** 섹션에서 **Dirt Mask Texture** 옵션을 켜면 됩니다. 텍스처 선택을 통해 더트 마스크에 텍스처를 적용하면 됩니다.
+
+(w:450)
+
+[REGION:raw]
+| 프로퍼티 | %spacer2% | 설명 |
+| -------- | --------- | ----------- |
+| **Dirt Mask Texture** || 더트 마스크 텍스처 - 선택 박스로 더트 마스크에 사용할 Texture2D 를 할당합니다. 이 프로퍼티는 다른 Post Process Volume 과 블렌딩할 수 없다는 점 유념하세요. |
+| **Dirt Mask Intensity** || 블룸 더트 마스크 강도 - 블룸 더트 마스크의 (선형) 색 스케일입니다. 이 프로퍼티는 더트 마스크의 밝기를 조정하는 데 사용됩니다. |
+| **Dirt Mask Tint Color** || 블룸 더트 마스크 색조 - 더트 마스크 텍스처에 색을 입히거나 어둡게 만듭니다. 더트 마스크 밝기와 색을 조정하는 데 사용할 수 있습니다.|
+[/REGION]
+### 더트 마스크 이미지 실전 사례
+
+더트 마스크 텍스처를 생성하여 블룸 더트 마스크에 사용하도록 구성할 때, 몇 가지 유념해야 하는 것이 있습니다.
+
+* 텍스처는 GPU 에 온전히 존재해야 하며 전체 해상도로 사용 가능해야 합니다. 그러기 위해서는 텍스처 에디터에서 다음 프로퍼티를 설정해 줍니다:
+ [INCLUDE:#dirtmasktextureproperty]
+* 이 Post Process 프로퍼티는 레벨의 다른 Post Process Volume 과 블렌딩할 수 없습니다.
+* 더트 마스크 텍스처 구성 시 유념해야 할 점은 다음과 같습니다:
+ [INCLUDE:#dirtmaskexample]
+ * 이미지 크기가 2 제곱이 아닌 것을 사용할 것을 추천합니다. 밉 생성과 스트리밍을 하지 않아 자동 설정될 것이지만, 2 제곱 크기 텍스처를 사용한다면 텍스처 에디터 프로퍼티에서 설정해 줘야 합니다.
+ * 저해상도 텍스처를 사용해도 되는데, 보통 카메라의 먼지나 긁힘을 표현하기에 충분할 뿐만 아니라, 어쨌든 초점을 흐려 뿌옇게 만들 것이기 때문입니다. 압축 부작용이 생기는 경우 더욱 높은 해상도의 이미지를 사용해 보면 됩니다.
+ * Photoshop (이나 기타 이미지 편집 소프트웨어)의 렌즈 블러를 사용하여 텍스처를 만들면 됩니다.
+ * 텍스처에 색수차(chromatic aberration, 컬러 프린지)를 사용하면 더트 마스크 느낌을 살리는 데 도움이 될 수 있습니다.
+
+
+
+
+
+## 교육 자료
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ SkJgopq-JQA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ColorGrading/ColorGrading.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ColorGrading/ColorGrading.INT.udn
index 8150208d1ea5..076d4fba73b6 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ColorGrading/ColorGrading.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ColorGrading/ColorGrading.INT.udn
@@ -1,8 +1,16 @@
-Availability:Public
-Title:Color Grading
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:Tonemapping and color correction effects for adjusting scene colors.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Color Grading
+Description: Tonemapping and color correction effects for adjusting scene colors.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:4
+Tags:Post Process
+Topic-image:ColorGrading_Topic.png
+
+
Within the Unreal engine, the term **Color Grading** covers the Tone Mapping function (HDR to LDR transformation) and the further Color Correction (LDR color to screen color transformation).
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ColorGrading/ColorGrading.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ColorGrading/ColorGrading.KOR.udn
index 2b65b92ef310..432b185d8f13 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ColorGrading/ColorGrading.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ColorGrading/ColorGrading.KOR.udn
@@ -1,9 +1,17 @@
-INTSourceChangelist:3108692
-Availability:Public
+INTSourceChangelist:3474032
+Availability: Public
+Crumbs: %ROOT%
Title:컬러 그레이딩
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
Description:씬 컬러 조절을 위한 톤매핑과 색보정 이펙트입니다.
-Version: 4.9
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:4
+Tags:Post Process
+Topic-image:ColorGrading_Topic.png
+
+
언리얼 엔진에서 용어 **컬러 그레이딩** (Color Grading) 은 *톤 매핑* (HDR to LDR 변형) 및 그에 따른 *색 보정* (LDR color to color 변형) 기능을 포함합니다. (HDR/LDR = High/Low Dynamic Range)
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/DepthOfField/DepthOfField.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/DepthOfField/DepthOfField.INT.udn
index de4ceb206efb..430b8dccbf38 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/DepthOfField/DepthOfField.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/DepthOfField/DepthOfField.INT.udn
@@ -1,8 +1,17 @@
-Availability:Public
-Title:Depth of Field
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:Simulating focus by blurring the scene depending on depth.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Depth of Field
+Description: Simulating focus by blurring the scene depending on depth.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:5
+Tags:Post Process
+Topic-image:DoF_topic.png
+
+
+
[REGION:fullwidth]

diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/DepthOfField/DepthOfField.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/DepthOfField/DepthOfField.KOR.udn
index 4fd252e363f6..ef7ed875fdd5 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/DepthOfField/DepthOfField.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/DepthOfField/DepthOfField.KOR.udn
@@ -1,9 +1,18 @@
-INTSourceChangelist:3108692
-Availability:Public
+INTSourceChangelist:3474032
+Availability: Public
+Crumbs: %ROOT%
Title:뎁스 오브 필드
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
Description:깊이에 따라 씬을 흐리게 만드는 초점 효과 시뮬레이션입니다.
-Version: 4.9
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:5
+Tags:Post Process
+Topic-image:DoF_topic.png
+
+
+
[REGION:fullwidth]

diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/LensFlare/LensFlare.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/LensFlare/LensFlare.INT.udn
index ff705fa5aeef..7e810bec8712 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/LensFlare/LensFlare.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/LensFlare/LensFlare.INT.udn
@@ -1,8 +1,16 @@
-Availability:Public
-Title:Lens Flare
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:Simulating scattered light from bright objects due to imperfections in camera lenses.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Lens Flare
+Description: Simulating scattered light from bright objects due to imperfections in camera lenses.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:6
+Tags:Post Process
+Topic-image:LensFlare_Topic.png
+
+
[REGION:fullwidth]
(w:1182)
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/LensFlare/LensFlare.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/LensFlare/LensFlare.KOR.udn
index 521da430d685..7a034da1651a 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/LensFlare/LensFlare.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/LensFlare/LensFlare.KOR.udn
@@ -1,9 +1,17 @@
-INTSourceChangelist:3108692
-Availability:Public
+INTSourceChangelist:3474032
+Availability: Public
+Crumbs: %ROOT%
Title:렌즈 플레어
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
Description:카메라 렌즈 결함으로 인해 밝은 오브젝트에서 빛이 산란되어 보이는 효과의 시뮬레이션 입니다.
-Version: 4.9
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:6
+Tags:Post Process
+Topic-image:LensFlare_Topic.png
+
+
[REGION:fullwidth]
(w:1182)
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PaniniProjection/PaniniProjection.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PaniniProjection/PaniniProjection.INT.udn
index 5b059d1069e1..e189491a0c68 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PaniniProjection/PaniniProjection.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PaniniProjection/PaniniProjection.INT.udn
@@ -1,8 +1,14 @@
-Availability:Public
-Title:Panini projection
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:3D projection that fixes the perspective projection's geometric distortion on sides of the view having a wide FOV.
-
+Availability: Public
+Crumbs: %ROOT%
+Title: Panini Projection
+Description: 3D projection that fixes the perspective projection's geometric distortion on sides of the view having a wide FOV.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:7
+Tags:Post Process
+Topic-image:PaniniProjection_Topic.png
## Configuration
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PaniniProjection/PaniniProjection.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PaniniProjection/PaniniProjection.KOR.udn
index f46514712805..006e3c4d1a47 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PaniniProjection/PaniniProjection.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PaniniProjection/PaniniProjection.KOR.udn
@@ -1,20 +1,26 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3474032
Availability:Public
-Title:파니니 투사
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:광각 FOV 뷰의 측면에 원근 투사의 지오메트리 왜곡 문제를 해결하는 3D 투사 방식입니다.
-
+Crumbs: %ROOT%
+Title:파니니 투영
+Description:광각 FOV 뷰의 측면에 원근 투영의 지오메트리 왜곡 문제를 해결하는 3D 투영 방식입니다.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:7
+Tags:Post Process
+Topic-image:PaniniProjection_Topic.png
## 환경설정
-기본적으로 언리얼 엔진 4 는 원근 투사 방식을 사용합니다. 하지만 이러한 투사 모델은 광각 FOV 에서 작업시
+기본적으로 언리얼 엔진 4 는 원근 투영 방식을 사용합니다. 하지만 이러한 투영 모델은 광각 FOV 에서 작업시
지오메트리 왜곡이 생깁니다. FOV = 120 인 상태로 구체를 보면 다음과 같이
매우 눈에 띕니다.

-그래서 언리얼 엔진은 Panini Projection (파니니 투사)를 사용하여 이 문제 해결을 시도하는 옵션 포스트 프로세싱 패스를
-제공합니다. 이 포스트 프로세싱은, 원근 투사 대신 파니니 투사를 사용해서 렌더링되는 픽셀의 위치를
+그래서 언리얼 엔진은 Panini Projection (파니니 투영)을 사용하여 이 문제 해결을 시도하는 옵션 포스트 프로세싱 패스를
+제공합니다. 이 포스트 프로세싱은, 원근 투영 대신 파니니 투영으로 렌더링되는 픽셀의 위치를
원래 있어야 할 곳으로 변위시킨다는 개념입니다. 그 구성을 위해서는 r.Upscale.Panini.D 를 0 이상으로 설정해 주기만 하면 됩니다.
이 포스트 프로세스 이펙트는 Upscaling 패스에서 이루어집니다. 즉 이 패스는 r.ScreenPercentage != 100 또는
r.Upscale.Panini.D > 0 인 경우 사용된다는 뜻입니다. 이 파라미터를 더욱 자세히 이해하기 위해서는,
@@ -30,7 +36,7 @@ r.Upscale.Panini.D > 0 이면 이펙트가 직접 강조됩니다. 하지만 이

이 이펙트 작동방식을 보다 자세히 이해하기 이해서는, r.Upscale.ScreenFit 을 조정해보는 것도 도움이 됩니다.
-한 가지 염두에 둘 것은, 끝에 있는 원근 투사 픽셀 중 일부는 화면 상하단 부근에서
+한 가지 염두에 둘 것은, 끝에 있는 원근 투영 픽셀 중 일부는 화면 상하단 부근에서
나타나지 않을 수 있습니다.

@@ -38,10 +44,10 @@ r.Upscale.Panini.D > 0 이면 이펙트가 직접 강조됩니다. 하지만 이
## 직선
-파니니 투사는 선에 대해 여러가지가 보장됩니다. 우선 수직선은 r.Upscale.Panini.D 나 r.Upscale.Panini.S 값이 어떻든
+파니니 투영은 선에 대해 여러가지가 보장됩니다. 우선 수직선은 r.Upscale.Panini.D 나 r.Upscale.Panini.S 값이 어떻든
수직이 보장됩니다. 둘째, 화면 중앙을 가로지르는 선 역시 r.Upscale.Panini.S = 0 이면 r.Upscale.Panini.D 값이 어떻든
수직이 보장됩니다. 이러한 수학적 속성은 일인칭 슈팅 게임에 이상적입니다.
-왜냐하면 화면 중앙을 향하는 무기의 파니니 투사는
+왜냐하면 화면 중앙을 향하는 무기의 파니니 투영은
중앙을 향한 직선이 유지될 것이기 때문입니다.

@@ -51,7 +57,7 @@ r.Upscale.Panini.D > 0 이면 이펙트가 직접 강조됩니다. 하지만 이
## 중앙 블러링
이 포스트 프로세싱 이펙트의 문제 한 가지는, r.Upscale.Panini.D 상승에 따라 화면 중앙에
-블러링 현상이 나타나기 시작한다는 점입니다. 파니니 투사를 업스케일 패스에 구현한 것도,
+블러링 현상이 나타나기 시작한다는 점입니다. 파니니 투영을 업스케일 패스에 구현한 것도,
바로 이 현상에 대비하기 위해 선명화 필터를 적극 활용하기 위해서입니다. 하지만 이러한
문제를 고치기에는 순식간에 역부족이 될 수 있습니다. 그래서 그러한 문제 해결을 돕기 위해
r.ScreenPercentage 를 올려야 할 수도 있지만, 그렇게 되면 그려야 하는 픽셀 수가
@@ -61,9 +67,9 @@ r.ScreenPercentage 를 올려야 할 수도 있지만, 그렇게 되면 그려

-파니니 투사를 사용하는 또 한가지 방법은, 월드 포지션 오프셋을 출력하는 머티리얼 함수를
+파니니 투영을 사용하는 또 한가지 방법은, 월드 포지션 오프셋을 출력하는 머티리얼 함수를
머티리얼의 월드 포지션 오프셋 입력 핀에 연결시키는 방법을 통하는 것입니다. 이는 사실
-언리얼 토너먼트에서 원근 투사 왜곡 문제 해결을 위해 무기를 다른 FOV 로 렌더링하는 방법
+언리얼 토너먼트에서 원근 투영 왜곡 문제 해결을 위해 무기를 다른 FOV 로 렌더링하는 방법
대신 사용하는 것입니다. UT 의 GitHub 리포지터리를 살펴보는 것도 좋을 것입니다.
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.INT.udn
index 5e8f1e263da8..63b61241ecb4 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.INT.udn
@@ -3,10 +3,15 @@ Title: Post Process Effects
Crumbs: %ROOT%, Engine
Description:Effects applied to the whole rendered scene prior to being rendered.
Navigation:topic
-Version: 4.9
+Version: 4.15
parent:Engine/Rendering
order:5
type:landing
+tags:Rendering
+Topic-image:ppe_topic.png
+
+
+
[VAR:Topic]
[OBJECT:Topic]
@@ -49,13 +54,31 @@ type:landing
[/OBJECT]
[/VAR]
[REGION:banner]
-
+
[/REGION]
[EXCERPT:Intro]
Unreal Engine provides Post Process Effects to allow artists and designers to tweak the overall look and feel of the scene. Examples of elements and effects include bloom (HDR blooming effect on bright objects), ambient occlusion, and tone mapping.
[/EXCERPT:Intro]
+## Physically-Based Post Process
+
+As of Unreal Engine 4.15, the filmic tone mapper has been enabled by default matching the standards set by the [Academy Color Encoding System (ACES)](http://www.oscars.org/science-technology/sci-tech-projects/aces).
+This enables the tone mapper in UE4 to easily target multiple display types, including High Dynamic Range (HDR) displays. The move to the ACES standard ensures consistent color is preserved across multiple
+formats and displays, while also as a way to _future proof_ the source material used without having to adjust it for another medium.
+
+The filmic tone mapper provides these added benefits:
+
+* Matches the ACES standard for Television and Film.
+* Additional Color Grading and White Balance control.
+* Emissive colors bloom in a more physically correct way now.
+
+[REGION:warning]
+The new filmic tone mapper will look different than the tone mapper in previous versions of UE4 for content you may have developed. To use the older tone mapper you can enter the following console command:
+ r.TonemapperFilm 0
+[/REGION]
+
+
## Post Process Volume
The **PostProcessVolume** is a special type of volume that can be added to a level and, because Unreal Engine 4 does not make use of post processing chains, these volumes are currently the only way to manipulate post processing parameters. The new system is not complete and we will expose some programmability, but we want the common cases to be handled very well by the system. This makes it easier for artists/designers to use the system and for programmers to optimize it.
@@ -73,7 +96,7 @@ The properties found in the PostProcessVolume are explained below:
| **Blend Radius** | Distance in Unreal units around the volume at which blending with the volume's settings occurs.
| **Blend Weight** | The amount of influence the volume's properties have. 0 is no effect; 1 is full effect.
| **Enabled** | Whether the volume affects the post processing or not. If _true_, the volume's settings will be used for blending.
-| **Unbound** | Whether the bounds of the volume are taken into account. If _true_, the volume affects the entire world, regardless of its bounds. If _false_, the volume only has effect within its bounds.
+| **Unbound** | Whether the bounds of the volume are taken into account. If _true_, the volume affects the entire world, regardless of its bounds. If _false_, the volume only has an effect within its bounds.
### Post Process Settings
@@ -84,6 +107,11 @@ For descriptions of each of the available settings, see the page for the corresp
## Effects
+[DIR(output:"topiccompact" parent:"Engine/Rendering/PostProcessEffects" org:"hierarchy" tags:"Post Process" end:"1")]
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.JPN.udn
index 0032456c59a9..a3878d7f2a99 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.JPN.udn
@@ -1,13 +1,17 @@
-INTSourceChangelist:3151855
+INTSourceChangelist:3471588
Availability:Public
Title:ポストプロセス エフェクト
Crumbs: %ROOT%, Engine
-Description:レンダリングの前にレンダリングシーン全体に適用するエフェクト
+Description:レンダリングする前にレンダリング シーン全体に適用するエフェクト
Navigation:topic
-Version:4.9
+Version:4.15
parent:Engine/Rendering
order:5
type:landing
+tags:Rendering
+
+
+
[VAR:Topic]
[OBJECT:Topic]
@@ -50,36 +54,54 @@ type:landing
[/OBJECT]
[/VAR]
[REGION:banner]
-
+
[/REGION]
[EXCERPT:Intro]
-アンリアル・エンジンが提供するいくつかのポストプロセスのエフェクトにより、アーティストやデザイナーは、全体的な見た目やシーンの雰囲気の細かいチューニングが可能となります。ブルーム (明るいオブジェクトに対する HDR ブルーム エフェクト) 、アンビエントオクルージョン、トーンマッピングなどが、エレメントやエフェクトの例です。
+アンリアル・エンジンは、アーティストやデザイナーは、全体的な見た目やシーンの雰囲気の細かいチューニングを可能にするポストプロセス エフェクトが提供されています。ブルーム (明るいオブジェクトに対する HDR ブルーム エフェクト)、アンビエントオクルージョン、トーンマッピングなどが、エレメントやエフェクトの例です。
[/EXCERPT:Intro]
+## 物理ベース ポストプロセス
+
+バージョン 4.15 では、[Academy Color Encoding System (ACES)](http://www.oscars.org/science-technology/sci-tech-projects/aces) による標準設定に合わせて映画的なトーン マッパがデフォルトで有効になっています。
+これにより、UE4 でトーン マッパを有効にして、High Dynamic Range (HDR) を始めとする複数の表示タイプを簡単にターゲットにすることができます。ACES に合わせることで、複数の形式および表示で色の整合性が保たれます。
+他の媒体用に色を調節せずに使用されたソース マテリアルが _古くならない_ ようにする手段でもあります。
+
+映画的なトーン マッパには以下のような長所があります。
+
+* テレビ / 映画用の ACES に一致
+* さらに多くのカラーグレーディングとホワイト バランス
+* 物理的により正しい方法でのエミッシブ カラー ブルーム
+
+[REGION:warning]
+新しい映画的なトーン マッパは、古いバージョンの UE4 で開発したコンテンツのトーン マッパとは異なって見えます。古いトーン マッパを使用するには、以下のコンソール コマンドを入力してください。
+ r.TonemapperFilm 0
+[/REGION]
+
+
## Post Process Volume
**PostProcessVolume** は、レベルへの追加が可能な特別なタイプのボリュームです。アンリアル・エンジン 4 はポストプロセスのチェーンを使用しないため、現時点ではこのボリュームがポストプロセスのパラメータをコントロールする唯一の方法です。新しいシステムはまだ完全ではなく、プログラムが可能であることを紹介していきますが、システムが共通のケースを確実に処理するようにしたいと考えています。システムの使用によりアーティストおよびデザイナーが抱える負担を軽減し、プログラマーはシステムを最大限に活かすことができます。
-アンリアル・エンジン 4 では、それぞれの PostProcessVolume が本質的に唯一のブレンドレイヤータイプです。その他のブレンドレイヤーは、ゲームコード (例、ヒット エフェクト) 、UI コード (例、一時停止メニュー) 、カメラ (例、vignette) 、またはマチネ (昔の映画のようなエフェクト) からもたらされます。エフェクトのブレンドを容易にするために、各レイヤーに重さを設定することができます。
+アンリアル・エンジン 4 では、それぞれの PostProcessVolume が本質的に唯一のブレンドレイヤータイプです。その他のブレンドレイヤーは、ゲームコード (例、ヒット エフェクト)、UI コード (例、一時停止メニュー)、カメラ (例、vignette)、またはマチネ (昔の映画のようなエフェクト) からもたらされます。エフェクトをブレンドを容易にするために、各レイヤーに重さを設定することができます。
-ブレンドは常に lerp (線形補間) で行い、有効なボリュームのみがブレンドされます。PostProcessVolume は、 **Unbound** プロパティがチェックされていない限り、カメラがボリューム範囲内にあるときのみ適用されます。
+ブレンドは常に lerp (線形補間) で行い、有効なボリュームのみがブレンドされます。PostProcessVolume は、**Unbound** プロパティがチェックされていない限り、カメラがボリューム範囲内にあるときのみ適用されます。
以下は PostProcessVolume に存在するプロパティです。
| プロパティ | 説明 |
| -------- | ----------- |
| **Settings** | ボリュームの [ポストプロセス設定](#ポストプロセス設定) です。ほとんどのプロパティの前にあるチェックボックスは、ボリュームのラインがボリュームの **Blend Weight** を使用してブレンドする条件を定義します。
-| **Priority** | 複数のボリュームをブレンドする順序を定義します。最優先度のボリュームがオーバーラップする、全てのボリュームに対して優先します。
+| **Priority** | 複数のボリュームをブレンドする順序を定義します。最優先度のボリュームがオーバーラップする、すべてのボリュームに対して優先します。
| **Blend Radius** | ボリューム周りの距離をアンリアル単位で表したものです。ボリュームの設定に基づいたブレンドが実行されます。
-| **Blend Weight** | ボリュームのプロパティが持つ影響力です。0 はエフェクトなし、 1 は最大のエフェクトを意味します。
+| **Blend Weight** | ボリュームのプロパティが持つ影響力です。0 はエフェクトなし、1 は最大のエフェクトを意味します。
| **Enabled** | ボリュームがポストプロセスに与える影響の有無です。_true_ の場合、ボリュームの設定がブレンドに使用されます。
| **Unbound** | ボリューム範囲が考慮されているかを表します。_true_ の場合、ボリュームは範囲に関係なくワールド全体に作用します。_false_ の場合、ボリュームは範囲内のみに作用します。
### ポストプロセス設定
-ポストプロセス設定は、制御またはオーバーライドするさまざまなポストプロセス エフェクトの全プロパティです。これらのプロパティは UScene クラスで宣言します。**PostProcessVolume** は、 Settings プロパティに `FPostProcessSettings` の構造体を格納しています。このプロパティには全プロパティが格納され、ボリュームによってオーバーライドされます。
+ポストプロセス設定は、各種ポストプロセス エフェクトを制御またはオーバーライドするすべてのプロパティです。これらのプロパティは UScene クラスで宣言します。**PostProcessVolume** は、Settings プロパティに `FPostProcessSettings` の構造体を格納しています。このプロパティにすべてのプロパティが格納され、ボリュームによってオーバーライドされます。
有効設定のそれぞれの説明は、以下のエフェクトの対応ページを参照してください。
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.KOR.udn
index 4e5629e09815..3a5839e6fee1 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessEffects.KOR.udn
@@ -1,13 +1,18 @@
-INTSourceChangelist:3151855
+INTSourceChangelist:3474032
Availability:Public
Title: 포스트 프로세스 이펙트
Crumbs: %ROOT%, Engine
Description:렌더링 직전의 전체 씬에 적용되는 이펙트입니다.
Navigation:topic
-Version: 4.9
+Version: 4.15
parent:Engine/Rendering
order:5
type:landing
+tags:Rendering
+Topic-image:ppe_topic.png
+
+
+
[VAR:Topic]
[OBJECT:Topic]
@@ -50,13 +55,31 @@ type:landing
[/OBJECT]
[/VAR]
[REGION:banner]
-
+
[/REGION]
[EXCERPT:Intro]
언리얼 엔진은 아티스트나 디자이너가 씬의 전체적인 모양새와 느낌을 조정할 수 있도록 여러가지 포스트 프로세스를 제공하고 있습니다. 요소와 이펙트의 예제에는 블룸 (밝은 오브젝트의 HDR 뽀샤시 효과), 앰비언트 오클루전 (구석의 실감나는 음영), 톤 매핑 등이 있습니다.
[/EXCERPT:Intro]
+## 물리 기반 포스트 프로세스
+
+언리얼 엔진 4.15 부로, [Academy Color Encoding System (ACES)](http://www.oscars.org/science-technology/sci-tech-projects/aces) 에서 설정한 표준에 맞추기 위해 필름 톤 매퍼가 기본 활성화되었습니다.
+이로써 UE4 톤 매퍼는 하이 다이내믹 레인지(HDR) 디스플레이를 포함한 여러 디스플레이 유형을 쉽게 타겟으로 삼을 수 있게 되었습니다. ACES 표준으로의 전환은 여러 포맷이나 디스플레이에서도 일관된 색을 얻을 수 있을 뿐 아니라,
+소스 머티리얼을 별다른 조정 없이 다른 매체에서도 사용할 수 있도록 해주는 미래 대비 역할을 하기도 합니다.
+
+그 외에도 필름 톤 매퍼의 장점은 다음과 같습니다:
+
+* 텔레비전 및 영화용 ACES 표준과 일치합니다.
+* 추가적인 컬러 그레이딩 및 화이트 밸런스 컨트롤이 가능합니다.
+* 이미시브 컬러 블룸이 보다 물리적으로 바른 방식으로 이루어집니다.
+
+[REGION:warning]
+새로운 필름 톤 매퍼는 기존에 개발한 콘텐츠의 경우 UE4 기존 버전에서와 달라보일 것입니다. 예전 톤 매퍼를 사용하는 콘솔 명령은 다음과 같습니다:
+ r.TonemapperFilm 0
+[/REGION]
+
+
## 포스트 프로세스 볼륨
**PostProcessVolume** 은 레벨에 추가할 수 있는 특수한 종류의 볼륨으로, 언리얼 엔진 4 에서는 포스트 프로세싱 체인을 활용하지 않기 때문에, 포스트프로세싱 파라미터를 조작할 수 있는 유일한 방법은 현재 이 볼륨 뿐입니다. 새로운 시스템은 아직 완성 단계가 아니라 프로그래밍 여지를 남겨두고는 있지만, 일반적인 상황에서는 시스템을 통해 원활히 처리되도록 하려 하고 있습니다. 아티스트와 디자이너가 더욱 쉽게 사용하도록, 프로그래머가 더욱 잘 최적화하도록 하는 것입니다.
@@ -85,6 +108,11 @@ PostProcessVolume 안에서 찾을 수 있는 프로퍼티에 대한 설명입
## 이펙트
+[DIR(output:"topiccompact" parent:"Engine/Rendering/PostProcessEffects" org:"hierarchy" tags:"Post Process" end:"1")]
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessMaterials/PostProcessMaterials.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessMaterials/PostProcessMaterials.INT.udn
index c7657f77bc21..244bff349e35 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessMaterials/PostProcessMaterials.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessMaterials/PostProcessMaterials.INT.udn
@@ -1,8 +1,15 @@
-Availability:Public
-Title:Post Process Materials
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:How to author and blend custom Post Process passes with the material editor.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Post Process Materials
+Description: How to author and blend custom Post Process passes with the material editor.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:8
+Tags:Post Process
+Topic-image:PPMaterials_Topic.png
+


diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessMaterials/PostProcessMaterials.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessMaterials/PostProcessMaterials.KOR.udn
index 082cf85b06b0..d1e9d304abca 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessMaterials/PostProcessMaterials.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/PostProcessMaterials/PostProcessMaterials.KOR.udn
@@ -1,9 +1,16 @@
-INTSourceChangelist:3151927
-Availability:Public
+INTSourceChangelist:3474032
+Availability: Public
+Crumbs: %ROOT%
Title:포스트 프로세스 머티리얼
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
Description:포스트 프로세스 패스를 만들어 머티리얼 에디터에 블렌딩하는 법입니다.
-Version: 4.9
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:8
+Tags:Post Process
+Topic-image:PPMaterials_Topic.png
+


@@ -169,7 +176,7 @@ Version: 4.9
GBuffer 는 (서브서피스/스페큘러 컬러, 러프니스 등의) 머티리얼과 (노멀, 뎁스 등의) 오브젝트 특성을 저장하는 텍스처 다수로 구성되어 있습니다.
셰이딩 (빛과 머티리얼의 상호작용) 계산을 위한 라이팅 없이요. 디퍼드 렌더러에서는 먼저 GBuffer 를 렌더링한 다음 모든 라이팅을 GBuffer 특성과 함께 (deffered,
-나중에 몰아서) 계산합니다. UE4 가 (DirectX 11 또는 고사양 OpenGL) 디퍼드 셰이딩 패쓰를 사용한다면 포스트 프로세싱 도중 해당 버퍼들에 접근할 수 있습니다.
+나중에 몰아서) 계산합니다. UE4 가 (DirectX 11 또는 고사양 OpenGL) 디퍼드 셰이딩 패스를 사용한다면 포스트 프로세싱 도중 해당 버퍼들에 접근할 수 있습니다.
안티-앨리어싱의 경우 이 작업이 약간 더 어려워 지는데, GBuffer 픽셀/텍셀과 출력 픽셀이 더이상 1:1 상관 관계에 있지 않기 때문입니다 (아래 섹션 참고).
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/SceneFringe/SceneFringe.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/SceneFringe/SceneFringe.INT.udn
index 99ccb10a8ef0..60eb20e01758 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/SceneFringe/SceneFringe.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/SceneFringe/SceneFringe.INT.udn
@@ -1,8 +1,15 @@
-Availability:Public
-Title:Scene Fringe
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:Chromatic aberration effect that simulates the color shifts near the edges of real-world camera lenses.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Scene Fringe (Chromatic Aberration)
+Description: Chromatic aberration effect that simulates the color shifts near the edges of real-world camera lenses.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:9
+Tags:Post Process
+Topic-image:SceneFringe_topic.png
+
[EXCERPT:SceneFringe_Desc]
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/SceneFringe/SceneFringe.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/SceneFringe/SceneFringe.KOR.udn
index 5ce103d822c2..c51904aaea85 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/SceneFringe/SceneFringe.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/SceneFringe/SceneFringe.KOR.udn
@@ -1,9 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3474032
Availability:Public
+Crumbs: %ROOT%
Title:씬 프린지 (Scene Fringe)
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
Description:실제 카메라 렌즈의 가장자리 부근에서 색이 전환되는 것을 시뮬레이션하는 색수차 효과입니다.
-Version: 4.9
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:9
+Tags:Post Process
+Topic-image:SceneFringe_topic.png
+
[EXCERPT:SceneFringe_Desc]
diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ScreenSpaceReflection/ScreenSpaceReflection.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ScreenSpaceReflection/ScreenSpaceReflection.INT.udn
index 02e8299560f3..415ed78213cb 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ScreenSpaceReflection/ScreenSpaceReflection.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ScreenSpaceReflection/ScreenSpaceReflection.INT.udn
@@ -1,8 +1,15 @@
-Availability:Public
-Title:Screen Space Reflection
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:Effect which alters the reflection that appear on the surface of materials.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Screen Space Reflections
+Description: Effect which alters the reflection that appear on the surface of materials within scene view.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:10
+Tags:Post Process
+Topic-image:SSR_topic.png
+
[REGION:fullwidth]

diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ScreenSpaceReflection/ScreenSpaceReflection.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ScreenSpaceReflection/ScreenSpaceReflection.KOR.udn
index 07523d8132b1..db97d0691a8d 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ScreenSpaceReflection/ScreenSpaceReflection.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/ScreenSpaceReflection/ScreenSpaceReflection.KOR.udn
@@ -1,9 +1,16 @@
-INTSourceChangelist:3108692
-Availability:Public
+INTSourceChangelist:3474032
+Availability: Public
+Crumbs: %ROOT%
Title:스크린 스페이스 리플렉션
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:머티리얼 표면에 나타나는 리플렉션을 변경하는 이펙트입니다.
-Version: 4.9
+Description:씬 뷰 안에서 머티리얼 표면에 나타나는 리플렉션을 변경하는 이펙트입니다.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:10
+Tags:Post Process
+Topic-image:SSR_topic.png
+
[REGION:fullwidth]

diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Vignette/Vignette.INT.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Vignette/Vignette.INT.udn
index 90ec6f889aef..6cc3598bf4ec 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Vignette/Vignette.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Vignette/Vignette.INT.udn
@@ -1,8 +1,16 @@
-Availability:Public
-Title:Vignette
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:Effect causing the brightness of the to decrease as the distance from the viewport's center increases.
-Version: 4.9
+Availability: Public
+Crumbs: %ROOT%
+Title: Vignette
+Description: Effect causing the brightness of the to decrease as the distance from the viewport's center increases.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:11
+Tags:Post Process
+Topic-image:Vignette_topic.png
+
+
[REGION:fullwidth]

diff --git a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Vignette/Vignette.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Vignette/Vignette.KOR.udn
index e59fd55b2087..483e06f598b7 100644
--- a/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Vignette/Vignette.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/PostProcessEffects/Vignette/Vignette.KOR.udn
@@ -1,9 +1,17 @@
-INTSourceChangelist:3200686
-Availability:Public
-Title:비녜트 (Vignette)
-Crumbs: %ROOT%, Engine, Engine/Rendering/PostProcessEffects
-Description:뷰포트 중심에서부터의 거리가 멀어져감에 따라 밝기를 감소시키는 이펙트입니다.
-Version: 4.9
+Availability: Public
+Availability: Public
+Crumbs: %ROOT%
+Title: 비녜트 (Vignette)
+Description: 뷰포트 중심에서부터의 거리가 멀어져감에 따라 밝기를 감소시키는 이펙트입니다.
+Type: Overview
+SkillLevel:Beginner
+Version:4.16
+Parent:Engine/Rendering/PostProcessEffects
+Order:11
+Tags:Post Process
+Topic-image:Vignette_topic.png
+
+
[REGION:fullwidth]

diff --git a/Engine/Documentation/Source/Engine/Rendering/RenderTargets/BlueprintRenderTargets/HowTo/HeightFieldPainter/3/HFP3.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/RenderTargets/BlueprintRenderTargets/HowTo/HeightFieldPainter/3/HFP3.JPN.udn
index 41f70175dd9f..53e24f7e0ea5 100644
--- a/Engine/Documentation/Source/Engine/Rendering/RenderTargets/BlueprintRenderTargets/HowTo/HeightFieldPainter/3/HFP3.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/RenderTargets/BlueprintRenderTargets/HowTo/HeightFieldPainter/3/HFP3.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangeList:3216146
-availability:docs
+INTSourceChangeList:3259022
+availability:Public
title:3.ブループリントの設定
description:Height Map Painter ブループリントの作成と設定方法の説明
crumbs:%ROOT%, Engine, Engine\Rendering\RenderTargets
diff --git a/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.INT.udn b/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.INT.udn
index c9e458f8dcc5..be40a798bff0 100644
--- a/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.INT.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.INT.udn
@@ -8,6 +8,7 @@ parent:Engine/Rendering
order:7
Navigation:topic
tags: Render Targets
+topic-image:RenderTargets_topic.png

diff --git a/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.JPN.udn
index a5b88a4c1e02..a105db2ed399 100644
--- a/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.JPN.udn
@@ -1,6 +1,6 @@
-INTSourceChangelist:3264165
+INTSourceChangelist:3467293
availability:Public
-title:Render Targets
+title:レンダー ターゲット
description:アンリアル エンジン 4 でのレンダー ターゲットの使用方法
crumbs:%ROOT%, Engine, Engine/Rendering
version:4.13
@@ -9,6 +9,7 @@ parent:Engine/Rendering
order:7
Navigation:topic
tags:Render Targets
+topic-image:RenderTargets_topic.png

diff --git a/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.KOR.udn b/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.KOR.udn
index 4c9d7bb3f3b3..6f3419c97f04 100644
--- a/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/RenderTargets/RenderTargets.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3264165
+INTSourceChangelist:3467293
availability:Public
title: 렌더 타겟
description:언리얼 엔진 4 에서 렌더 타겟 사용하는 법입니다.
@@ -9,6 +9,7 @@ parent:Engine/Rendering
order:7
Navigation:topic
tags: Render Targets
+topic-image:RenderTargets_topic.png

diff --git a/Engine/Documentation/Source/Engine/Rendering/SceneCapture/SceneCaptureMobile/SceneCaptureMobile.JPN.udn b/Engine/Documentation/Source/Engine/Rendering/SceneCapture/SceneCaptureMobile/SceneCaptureMobile.JPN.udn
index fbd4dd26e9de..5dc5be76c0a8 100644
--- a/Engine/Documentation/Source/Engine/Rendering/SceneCapture/SceneCaptureMobile/SceneCaptureMobile.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Rendering/SceneCapture/SceneCaptureMobile/SceneCaptureMobile.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3348720
+INTSourceChangelist:3350143
availability:Docs
title:モバイル用 Scene Capture アクタ
description:Scene Captures アクタをモバイル デバイスで使用する際の注意点
@@ -12,6 +12,20 @@ Navigation:topic
topic-image:Scene_Capture_Mobile.png
related:Resources/ContentExamples/Reflections/1_6
related:Resources/ContentExamples/Reflections/1_7
+tags:mobile
+tags:rendering
+tags:Daydream
+tags:iOS
+tags:Android
+tags:User Interface
+tags:UMG UI Designer
+tags:Materials
+prereq:Gameplay/HowTo/UsingCameras
+prereq:Engine/Rendering/RenderTargets
+prereq:Engine/UMG
+
+
+
モバイル デバイス向けプロジェクトで Scene Capture アクタを使用する場合、以下の点に注意して、モバイル デバイス上で Scene Capture アクタが最善のパフォーマンスで使用できることを確認してください。
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.CHN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.CHN.udn
new file mode 100644
index 000000000000..29c5c7c3667f
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.CHN.udn
@@ -0,0 +1,208 @@
+INTSourceChangelist:0
+Availability: Public
+Title:Using Embedded Sequencer Animations in Blueprints
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Description:Describes how you can embed Sequences within Actor Blueprints using an Actor Sequence Component.
+Version: 4.15
+SkillLevel: Advanced
+parent:Engine/Sequencer/HowTo
+order:1
+checkpoint: editorqs
+Related: Engine/Sequencer/Overview
+Related: Engine/Sequencer/ReferenceEditor
+Related: Engine/Blueprints
+tags:Sequencer
+type:how-to
+
+[REGION:warning]
+This is an experimental feature that is currently undergoing development. Some aspects may not work as expected or may change in future revisions.
+[/REGION]
+
+When working with and creating [Sequences](Engine/Sequencer/Overview), there may be situations where you want to reuse the functionality of a Sequence in other places or instances.
+With the **Actor Sequence Plugin** and **Actor Sequence Component**, it is possible to embed Sequences directly into an Actor [Blueprint](Engine/Blueprints).
+This enables reuse of Sequences by binding the animations to the Blueprint instance and triggering them automatically or through the **Event Graph** of the Blueprint.
+Additionally, you can add an Actor Sequence Component to any Actor in the world to add animations to a single instance of an Actor.
+
+In this how-to guide, you'll create a Blueprint with an embedded Sequence that animates and changes the color of a Spot Light over time.
+
+
+
+The Blueprint can then be placed in any level or duplicated and the embedded Sequence will play automatically when called.
+
+## Steps
+
+[REGION:note]
+For this how-to guide, we are using the **Blueprint Third Person Template** with **Starter Content** enabled.
+[/REGION]
+
+1. With your project open, from the **Edit** menu select **Plugins**.
+
+ 
+
+1. From the **Plugins** menu, under **Built-in**, enable the **Actor Sequence Editor** option and restart the editor when prompted.
+
+ 
+
+1. Create a new **Blueprint** of the **Actor** type can call it **Light_BP**.
+
+ 
+
+1. Inside the **Light_BP**, click **Add Component** and add a **Spot Light**.
+
+ 
+
+1. In the **Details** panel for the **Spot Light**, change the **Rotation** value for **Y** to **-60**.
+
+ 
+
+ This will rotate and angle the light slightly downward in the viewport.
+
+1. Add another **Component** of the **Static Mesh** type, then in the **Details** panel set the mesh to **Floor_400x400** with its **Location** set to **-180x-180x-100**.
+
+ 
+
+ We will use this mesh as a temporary way to see the effects of our Sequence a little later in the guide and will delete it once we are done.
+
+1. Add another **Component** of the **Actor Sequence** type.
+
+ 
+
+1. In the **Details** panel for the **Actor Sequence**, set **Loop Indefinitely**, **Random Start Time** and **Auto Play**, then click **Open in Tab**.
+
+ 
+
+ For this example we will automatically trigger and play the Sequence, however, you can also call this to play from the **Event Graph**.
+
+1. In the **Sequencer** tab, click **Add** then under **Component** select **SpotLight**.
+
+ 
+
+1. On the **SpotLight** track, click the **Track** button and select **Transform**.
+
+ 
+
+1. Click the **Track** button again for the **SpotLight** track and add the **Light Color** track.
+
+ 
+
+1. For the **Transform** track under **Rotation**, click the **+** icon for the **Z** value to add a key of **0** at frame **0**.
+
+ 
+
+1. Select the key that was added, then press the **4** key to change the interpolation type to **Linear**.
+
+ 
+
+ You can change the type of interpolation with the number keys or by **Right-clicking** on the keyframe and selecting your interpolation method.
+
+1. Add a key at **2.00** for the **Z** value of **Rotation** set to **-180.0** and change the interpolation to **Linear** by pressing **4** on the key.
+
+ 
+
+1. Add a key at **4.00** for the **Z** value of **Rotation** set to **-360.0** and change the interpolation to **Linear** by pressing **4** on the key.
+
+ 
+
+ You can also move the red **End Marker** back to **4.00** so the Sequence ends where it began.
+
+1. For the **Light Color** track, click the **+** button to add a key at frame **0**.
+
+ 
+
+1. Add a key at **1.00** for **Red** with a value of **0.0**.
+
+ 
+
+1. Add a key at **2.00** for **Green** with a value of **0.0**.
+
+ 
+
+1. Add keys at **3.00** for **Blue** with a value of **0.0**, and both **Red** and **Green** at **1.0**.
+
+ 
+
+1. Add a key at **4.00** for **Blue** with a value of **1.0**.
+
+ 
+
+ This will cause the light to go from white to various colors before returning back to white at the end of the Sequence.
+
+1. In the **Components** window, select and **Delete* the **StaticMesh** floor.
+
+ 
+
+ Now that our light is set up, we no longer need this mesh as a way to preview the light in the viewport.
+
+1. In the Main Level Editor Viewport, select the floor, then while holding **Alt** drag up a copy of the floor to create a roof encapsulating the level.
+
+ 
+
+1. From the **Content Browser**, drag and place instances of the **Light_BP** in the level (you can also press **E** and rotate them if desired).
+
+ 
+
+1. From the **Build** drop-down menu, select **Build Lighting Only** to rebuild the lighting in the level.
+
+ 
+
+1. Click the **Play** button to play in the editor.
+
+## End Result
+
+When you play in the level, you will see that the lights you placed start rotating and changing colors playing the embedded Sequence.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bohLiPXTyMs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Since the Sequence is embedded withing the Actor Blueprint, it has no dependencies and can play in any level or can be duplicated without any issues.
+
+In our example we've set the Sequence to **Auto Play**, however, you can also use the **Event Graph** to script when the Sequence should Play.
+
+
+
+Above, upon **Event BeginPlay** we have allowed the Actor to receive input from a **Player Controller**.
+When the **P** key is pressed, we take the **Actor Sequence Component** and get the **Sequence Player** which allows us to make a call to the function **Play** to start playing the Sequence.
+You can use any method you desire to make the call to the Play function if you prefer not to have the Sequence Auto Play upon level load.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.INT.udn
new file mode 100644
index 000000000000..9f3b2a5d7169
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.INT.udn
@@ -0,0 +1,217 @@
+Availability: Docs
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Title:Using Embedded Sequencer Animations in Blueprints
+Description:Describes how you can embed Sequences within Actor Blueprints using an Actor Sequence Component.
+Type: how-to
+SkillLevel: Advanced
+Version: 4.16
+parent:Engine/Sequencer/HowTo
+order:1
+tags:Sequencer
+topic-image:ActorSequenceTopicCompact.png
+Related: Engine/Sequencer/Overview
+Related: Engine/Sequencer/ReferenceEditor
+Related: Engine/Blueprints
+
+
+[REGION:warning]
+This is an experimental feature that is currently undergoing development. Some aspects may not work as expected or may change in future revisions.
+[/REGION]
+
+When working with and creating [Sequences](Engine/Sequencer/Overview), there may be situations where you want to reuse the functionality of a Sequence in other places or instances.
+With the **Actor Sequence Plugin** and **Actor Sequence Component**, it is possible to embed Sequences directly into an Actor [Blueprint](Engine/Blueprints).
+This enables reuse of Sequences by binding the animations to the Blueprint instance and triggering them automatically or through the **Event Graph** of the Blueprint.
+Additionally, you can add an Actor Sequence Component to any Actor in the world to add animations to a single instance of an Actor.
+
+In this how-to guide, you'll create a Blueprint with an embedded Sequence that animates and changes the color of a Spot Light over time.
+
+
+
+The Blueprint can then be placed in any level or duplicated and the embedded Sequence will play automatically when called.
+
+## Steps
+
+[REGION:note]
+For this how-to guide, we are using the **Blueprint Third Person Template** with **Starter Content** enabled.
+[/REGION]
+
+1. With your project open, from the **Edit** menu select **Plugins**.
+
+ 
+
+1. From the **Plugins** menu, under **Built-in**, enable the **Actor Sequence Editor** option and restart the editor when prompted.
+
+ 
+
+ [REGION:note]
+ You may see the **Experimental** confirmation dialog window when enabling the Actor Sequence Editor, click **Yes** to proceed.
+ [/REGION]
+
+1. Create a new **Blueprint** of the **Actor** type can call it **Light_BP**.
+
+ 
+
+1. Inside the **Light_BP**, click **Add Component** and add a **Spot Light**.
+
+ 
+
+1. In the **Details** panel for the **Spot Light**, change the **Rotation** value for **Y** to **-60**.
+
+ 
+
+ This will rotate and angle the light slightly downward in the viewport.
+
+1. Add another **Component** of the **Static Mesh** type, then in the **Details** panel set the mesh to **Floor_400x400** with its **Location** set to **-180 (X), -180 (Y), -100 (Z)**.
+
+ 
+
+ We will use this Floor Mesh to shine our Lights on and to see the effects of Sequencer driving the parameter changes.
+
+1. Add another **Component** of the **Actor Sequence** type.
+
+ 
+
+1. In the **Details** panel for the **Actor Sequence**, set **Loop Indefinitely**, **Random Start Time** and **Auto Play**, then click **Open in Tab**.
+
+ 
+
+ After clicking **Open in Tab**, the **Sequencer Editor** will open within the Blueprint.
+
+ 
+
+ For this example we will automatically trigger and play the Sequence, however, you can also call this to play from the **Event Graph**.
+
+1. In the **Sequencer** tab, click **Add** then under **Component** select **SpotLight**.
+
+ 
+
+1. On the **SpotLight** track, click the **Track** button and select **Transform**.
+
+ 
+
+1. Click the **Track** button again for the **SpotLight** track and add the **Light Color** track.
+
+ 
+
+1. For the **Transform** track under **Rotation**, click the **+** icon for the **Z** value to add a key of **0** at frame **0**.
+
+ 
+
+1. Select the key that was added, then press the **4** key to change the interpolation type to **Linear**.
+
+ 
+
+ You can change the type of interpolation with the number keys or by right-clicking on the keyframe and selecting your interpolation method.
+
+1. Add a key at **2.00** for the **Z** value of **Rotation** set to **-180.0** and change the interpolation to **Linear** by pressing **4** on the key.
+
+ 
+
+1. Add a key at **4.00** for the **Z** value of **Rotation** set to **-360.0** and change the interpolation to **Linear** by pressing **4** on the key.
+
+ 
+
+ You can also move the red **End Marker** back to **4.00** so the Sequence ends where it began.
+
+1. For the **Light Color** track, click the **+** button to add a key at frame **0**.
+
+ 
+
+1. Add a key at **1.00** for **Red** with a value of **0.0**.
+
+ 
+
+1. Add a key at **2.00** for **Green** with a value of **0.0**.
+
+ 
+
+1. Add keys at **3.00** for **Blue** with a value of **0.0**, and both **Red** and **Green** at **1.0**.
+
+ 
+
+1. Add a key at **4.00** for **Blue** with a value of **1.0**.
+
+ 
+
+ This will cause the light to go from white to various colors before returning back to white at the end of the Sequence.
+
+1. In the **Components** window, select and **Delete** the **StaticMesh** floor.
+
+ 
+
+ Now that our light is set up, we no longer need this mesh as a way to preview the light in the viewport.
+
+1. In the Main Level Editor Viewport, select the floor, then while holding **Alt** drag up a copy of the floor to create a roof encapsulating the level.
+
+ 
+
+1. From the **Content Browser**, drag and place instances of the **Light_BP** in the level (you can also press **E** and rotate them if desired).
+
+ 
+
+1. From the **Build** drop-down menu, select **Build Lighting Only** to rebuild the lighting in the level.
+
+ 
+
+1. Click the **Play** button to play in the editor.
+
+## End Result
+
+When you play in the level, you will see that the lights you placed start rotating and changing colors playing the embedded Sequence.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bohLiPXTyMs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Since the Sequence is embedded within the Actor Blueprint, it has no dependencies and can play in any level or can be duplicated without any issues.
+
+In our example we've set the Sequence to **Auto Play**, however, you can also use the **Event Graph** to script when the Sequence should Play.
+
+
+
+Above, upon **Event BeginPlay** we have allowed the Actor to receive input from a **Player Controller**.
+When the **P** key is pressed, we take the **Actor Sequence Component** and get the **Sequence Player** which allows us to make a call to the function **Play** to start playing the Sequence.
+You can use any method you desire to make the call to the Play function if you prefer not to have the Sequence Auto Play upon level load.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.JPN.udn
new file mode 100644
index 000000000000..2386e4cf8eae
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.JPN.udn
@@ -0,0 +1,218 @@
+INTSourceChangelist:3477716
+Availability:Docs
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Title:ブループリントで埋め込んだシーケンサー アニメーションを使用する
+Description:Actor Sequence コンポーネントを使って Actor ブループリント内にシーケンスを埋め込む方法を説明します。
+Type: how-to
+SkillLevel:Advanced
+Version:4.16
+parent:Engine/Sequencer/HowTo
+order:1
+tags:Sequencer
+topic-image:ActorSequenceTopicCompact.png
+Related:Engine/Sequencer/Overview
+Related:Engine/Sequencer/ReferenceEditor
+Related:Engine/Blueprints
+
+
+[REGION:warning]
+これは現在、開発進行中の実験的な機能です。一部の機能は期待どおりに機能しなかったり、将来のリビジョンで変更される可能性があります。
+[/REGION]
+
+[シーケンス](Engine/Sequencer/Overview) で作業をしたり、シーケンスを作成する場合、シーケンスの機能を他の場所やインスタンスで再利用したい状況があるかもしれません。
+**[Actor Sequence Plugin]** と **[Actor Sequence Component]** を使って、シーケンスを直接 Actor [ブループリント](Engine/Blueprints) に埋め込むことができます。
+この機能により、アニメーションをブループリント インスタンスに結合して、自動的にトリガーするか、ブループリントの **イベントグラフ** でトリガーすることでシーケンスを再利用することができます。
+また、Actor Sequence コンポーネントをワールドの任意のアクタに追加して、アクタの単一のインスタンスにアニメーションを追加することもできます。
+
+この操作ガイドでは、埋め込みシーケンスを持つブループリントを作成し、時間経過に伴いスポットライトの色をアニメートし、変化させます。
+
+
+
+このブループリントはどのレベルでも配置、複製が可能であり、埋め込みシーケンスは呼び出されると自動的に再生します。
+
+## ステップ
+
+[REGION:note]
+ここでは **Starter Content Enabled (スターター コンテンツを有効にした状態)** で **Blueprint Third Person Template** を使います。
+[/REGION]
+
+1. プロジェクトを開いた状態で **[Edit (編集)]** メニューから、 **[Plugins (プラグイン)]** を選択します。
+
+ 
+
+1. **[Plugins]** メニューの **[Built-in]** で、**[Actor Sequence Editor]** オプションを有効にし、プロンプトが表示されたらエディタを再起動します。
+
+ 
+
+ [REGION:note]
+ Actor Sequence Editor を有効にすると **Experimental (実験的機能)** の確認ダイアログ ウィンドウが表示されます。先に進むには、**Yes** をクリックします。
+ [/REGION]
+
+1. **Actor** タイプの新規 **ブループリント** を作成し、**Light_BP** と名前を付けます。
+
+ 
+
+1. **Light_BP** 内で、**[Add Component]** をクリックし、**[Spot Light]** を追加します。
+
+ 
+
+1. **Spot Light** の **[Details (詳細)]** パネルで **Y** の **[Rotation]** 値を、**-60** に変更します。
+
+ 
+
+ これにより、ビューポート内でライトが回転し、若干下方向に傾きます。
+
+1. **Static Mesh** タイプの別の **コンポーネント** を追加します。次に **[Details]** パネルで、**[Location]** を **-180 (X)、 -180 (Y)、 -100 (Z)** に設定したメッシュを **Floor_400x400** に設定します。
+
+ 
+
+ この Floor Mesh を使ってライトを照らし、シーケンサーによってパラメータの変更を操作するエフェクトを確認します。
+
+1. **Actor Sequence** タイプの別の **コンポーネント** を追加します。
+
+ 
+
+1. **[Actor Sequence]** の **[Details]** パネルで、**[Loop Indefinitely]**、 **[Random Start Time]**、および **[Auto Play]** を設定して **[Open in Tab]** をクリックします。
+
+ 
+
+ **[Open in Tab]** をクリックすると、**[Sequencer Editor]** がブループリント内で開きます。
+
+ 
+
+ この例では、シーケンスを自動的にトリガーし再生しますが、**イベントグラフ** から呼び出して再生することもできます。
+
+1. **[Sequencer]** タブで、**[Add]** をクリックします。次に **[Component]** で **[SpotLight]** を選択します。
+
+ 
+
+1. **SpotLight** トラックで、**[Track]** ボタンをクリックし、**[Transform]** を選択します。
+
+ 
+
+1. **SpotLight** トラックで再度 **[Track]** ボタンを押して、**[Light Color]** トラックを追加します。
+
+ 
+
+1. **Transform** トラックの **Rotation** で、 **Z** 値の **+** アイコンをクリックし、フレーム **0** に キー **0** を追加します。
+
+ 
+
+1. 追加したキーを選択し、**4** キーを押して補間のタイプを **Linear** に変更します。
+
+ 
+
+ 補間のタイプを変更するには、数字キーを使うか、該当するキーフレーム上で右クリックして、使用したい補間方法を選択します。
+
+1. **-180.0** に設定されている **Rotation** の **Z** 値に対して **2.00** にキーを追加し、そのキーの上で **4** を押して補間のタイプを **Linear** に変更します。
+
+ 
+
+1. **-360.0** に設定されている **Rotation** の **Z** 値に対して **4.00** にキーを追加し、そのキーの上で **4** を押して補間のタイプを **Linear** に変更します。
+
+ 
+
+ 赤色の **エンド マーカー** を **4.00** に戻して開始した場所でシーケンスが終わるようにすることもできます。
+
+1. **Light Color** トラックの **[+]** ボタンをクリックして、フレーム **0** にキーを追加します。
+
+ 
+
+1. 値 **0.0** の **Red** に対して **1.00** にキーを追加します。
+
+ 
+
+1. 値 **0.0** の **Green** に対して **2.00** にキーを追加します。
+
+ 
+
+1. 値 **0.0** の **Blue** に対して **3.00** にキーを追加します。**Red** と **Green** は両方とも **1.0** にキーを追加します。
+
+ 
+
+1. 値 **1.0** の **Blue** に対して **4.00** にキーを追加します。
+
+ 
+
+ 以上の操作により、ライトが白色から様々な色に変化してシーケンスの終わりに白色に戻ります。
+
+1. **[Component]** ウィンドウで、**StaticMesh** フロアを選択して **[Delete (削除)]** します。
+
+ 
+
+ ライトがセットアップできたので、ビューポートでライトをプレビューするためにこのメッシュを使う必要がなくなりました。
+
+1. メイン レベル エディタ ビューポートで、このフロアを選択し、**Alt** キーを押しながら、フロアのコピーを上方向にドラッグして、レベルを覆うルーフを作ります。
+
+ 
+
+1. **コンテンツ ブラウザ** から、**Light_BP** のインスタンスをドラッグしてレベルに配置します (**E** キーを押して必要に応じて回転させることもできます)。
+
+ 
+
+1. **Build** ドロップダウン メニューから、**Build Lighting Only** を選択して、レベルでライティングを再ビルドします。
+
+ 
+
+1. **[Play (プレイ)]** ボタンをクリックして、エディタで再生します。
+
+## 最終結果
+
+レベルで再生すると、配置したライトが回転し始め色が変化し、埋め込んだシーケンスを再生します。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bohLiPXTyMs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Actor ブループリント内でシーケンスが埋め込まれているため、依存関係はなく、どのレベルでも問題なく再生したり、複製することができます。
+
+この例では、シーケンスを **Auto Play** に設定しましたが、**イベントグラフ** を使ってシーケンスをいつ再生するかをスクリプティングすることができます。
+
+
+
+上の図では、**Event BeginPlay** で、アクタが **Player Controller** からの入力を受け取ります。
+**P** キーを押すと、**Actor Sequence コンポーネント** を取り込み、**Sequence Player** を取得します。これにより、関数 **Play** を呼び出してシーケンスの再生を開始します。
+レベルのロード時に Sequence Auto Play を持たないようにしたい場合は、Play 関数を呼び出すための任意の方法を使うことができます。
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.KOR.udn
new file mode 100644
index 000000000000..d2d9e049497b
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/ActorSequence/ActorSequence.KOR.udn
@@ -0,0 +1,215 @@
+INTSourceChangelist:3454405
+Availability: Public
+Title:블루프린트에서 삽입된 시퀀서 애니메이션 사용
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Description:Actor Sequence 컴포넌트를 사용해서 액터 블루프린트 안에 시퀀스를 삽입하는 방법 설명서입니다.
+Version: 4.15
+SkillLevel: Advanced
+parent:Engine/Sequencer/HowTo
+order:1
+checkpoint: editorqs
+Related: Engine/Sequencer/Overview
+Related: Engine/Sequencer/ReferenceEditor
+Related: Engine/Blueprints
+tags:Sequencer
+type:how-to
+
+[REGION:warning]
+이 기능은 현재 개발중인 실험단계 기능입니다. 일부분 예상대로 작동치 않거나 앞으로의 버전에서 변경될 수 있습니다.
+[/REGION]
+
+[시퀀스](Engine/Sequencer/Overview) 작업 및 생성을 할 때, 다른 곳이나 인스턴스의 시퀀스 기능을 재사용하고 싶을 때가 있습니다.
+**Actor Sequence Plugin** 과 **Actor Sequence Component** 가 있으면, 시퀀스를 액터 [블루프린트](Engine/Blueprints) 안에 바로 삽입하는 것이 가능합니다.
+이렇게 하면 블루프린트 인스턴스에 애니메이션을 바인딩하한 뒤 자동으로 또는 블루프린트 **이벤트 그래프** 를 통해 발동시키는 방식으로 시퀀스를 재사용할 수 있습니다.
+추가적으로, 월드의 아무 액터에나 Actor Sequence 컴포넌트를 추가하여 액터 단일 인스턴스에 애니메이션을 추가할 수 있습니다.
+
+여기서는 스포트 라이트의 컬러에 애니메이션을 주어 시간에 따라 변하게 만드는 시퀀스가 삽입된 블루프린트를 만들어 보겠습니다.
+
+
+
+그 후 블루프린트를 아무 레벨에 배치하거나 복제하면, 호출했을 때 삽입된 시퀀스가 자동 재생될 것입니다.
+
+## 단계
+
+[REGION:note]
+여기서는 **블루프린트 삼인칭 템플릿** 에 **시작용 콘텐츠** 를 포함한 것을 사용하고 있습니다.
+[/REGION]
+
+1. 프로젝트를 열고, **편집** 메뉴의 **플러그인** 을 선택합니다.
+
+ 
+
+1. **플러그인** 메뉴에서 **Built-in** 아래 **Actor Sequence Editor** (액터 시퀀스 에디터) 옵션을 활성화시키고 확인창이 뜨면 에디터를 재시작합니다.
+
+ 
+
+ [REGION:note]
+ 액터 시퀀스 에디터를 활성화시킬 때 **실험단계** 확인 대화창이 보일텐데, **예** 를 눌러 계속합니다.
+ [/REGION]
+
+1. **Actor** 유형 **블루프린트** 를 새로 만들어 **Light_BP** 라 합니다.
+
+ 
+
+1. **Light_BP** 안에서 **컴포넌트 추가** 를 클릭하고 **Spot Light** 를 추가합니다.
+
+ 
+
+1. 그 **Spot Light** 의 **디테일** 패널에서 **회전** 의 **Y** 값을 **-60** 으로 변경합니다.
+
+ 
+
+ 그러면 라이트를 살짝 회전시켜 뷰포트 아래쪽을 향하도록 합니다.
+
+1. **Static Mesh** 유형 **컴포넌트** 를 하나 더 추가한 뒤, **디테일** 패널에서 메시를 **Floor_400x400**, **위치** 는 **-180 (X), -180 (Y), -100 (Z)** 로 설정합니다.
+
+ 
+
+ 이 Floor Mesh 에 라이트를 비추어 시퀀서 구동 파라미터 변화 효과를 확인하도록 하겠습니다.
+
+1. **Actor Sequence** 유형 **컴포넌트** 를 하나 더 추가합니다.
+
+ 
+
+1. **Actor Sequence** 의 **디테일** 패널에서 **Loop Indefinitely** (무한 루프), **Random Start Time** (시작 시간 랜덤), **Auto Play** (자동 재생) 설정 후 **Open in Tab** (탭에서 열기)를 선택합니다.
+
+ 
+
+ **Open in Tab** (탭에서 열기)를 선택하면, **시퀀서 에디터** 가 블루프린트 안에 열립니다.
+
+ 
+
+ 이 예제에서는 시퀀서를 자동 발동시켜 재생하겠지만, **이벤트 그래프** 에서도 호출하여 재생할 수 있습니다.
+
+1. **시퀀서** 탭에서 **추가** 를 클릭한 뒤 **컴포넌트** 아래 **SpotLight** 를 선택합니다.
+
+ 
+
+1. **SpotLight** 트랙에서 **Track** (트랙) 버튼을 클릭하고 **Transform** (트랜스폼)을 선택합니다.
+
+ 
+
+1. **SpotLight** 트랙에 대해 **Track** (트랙) 버튼을 다시 클릭하고 **Light Color** 트랙을 추가합니다.
+
+ 
+
+1. **Transform** 트랙에서 **회전** 아래 **Z** 값에 대한 **+** 아이콘을 클릭하여 **0** 프레임에 **0** 키를 추가합니다.
+
+ 
+
+1. 추가된 키를 선택한 뒤, **4** 키를 눌러 보간 유형을 **Linear** (선형)으로 변경합니다.
+
+ 
+
+ 보간 유형 변경은 숫자 키 또는 키프레임에 **우클릭** 하고 보간 방법을 선택하면 됩니다.
+
+1. **Rotation** 의 **Z** 값에 대해 **2.00** 위치에 키를 추가하고 **-180.0** 으로 설정한 뒤, **4** 키를 눌러 **선형** 보간으로 변경합니다.
+
+ 
+
+1. **Rotation** 의 **Z** 값에 대해 **4.00** 위치에 키를 추가하여 **-360.0** 으로 설정하고, **4** 키를 눌러 보간을 **선형** 으로 변경합니다.
+
+ 
+
+ 빨강 **End Marker** (끝 마커)를 **4.00** 으로 움직여 시퀀스가 시작한 곳에서 끝나도록 할 수도 있습니다.
+
+1. **Light Color** 트랙의 **+** 버튼을 클릭하여 **0** 프레임에 키를 추가합니다.
+
+ 
+
+1. **Red** 의 **1.00** 위치에 키를 추가하여 값을 **0.0** 으로 합니다.
+
+ 
+
+1. **Green** 의 **2.00** 위치에 키를 추가하여 값을 **0.0** 으로 합비다.
+
+ 
+
+1. **Blue** 의 **3.00** 위치에 키를 추가하여 값을 **0.0** 으로, **Red** 와 **Green** 에도 **1.0** 위치에 키를 추가합니다.
+
+ 
+
+1. **Blue** 의 **4.00** 위치에 값이 **1.0** 인 키를 추가합니다.
+
+ 
+
+ 이렇게 하면 라이트가 흰색에서 다양한 색으로 변한 다음 시퀀스 끝에서 다시 흰색으로 돌아갑니다.
+
+1. **컴포넌트** 창에서 **StaticMesh** 바닥을 선택하고 **삭제** 합니다.
+
+ 
+
+ 라이트 구성이 완료되었으니, 뷰포트에서 라이트 미리보기에 이 메시가 더이상 필요치 않습니다.
+
+1. 메인 레벨 에디터 뷰포트에서, 바닥을 선택한 뒤 **Alt** 키를 누른 상태에서 드래그하여 바닥 사본으로 레벨을 덮는 지붕을 만듭니다.
+
+ 
+
+1. **콘텐츠 브라우저** 에서 레벨에 **Light_BP** 인스턴스를 끌어 배치합니다 (**E** 키를 눌러 회전시킬 수도 있습니다).
+
+ 
+
+1. **빌드** 드롭다운 메뉴에서 **라이팅만 빌드** 를 선택하여 레벨의 라이팅을 리빌드합니다.
+
+ 
+
+1. **플레이** 버튼을 클릭하여 에디터에서 플레이합니다.
+
+## 최종 결과
+
+레벨에서 플레이해 보면, 배치한 라이트가 회전하기 시작하고 삽입 시퀀스를 재생하면서 색이 변하는 것이 보일 것입니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bohLiPXTyMs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+액터 블루프린트에 시퀀스를 삽입했으므로, 종속성이 없으며 어느 레벨에서도 재생할 수 있고 별다른 문제 없이 복제할 수도 있습니다.
+
+우리 예제에서는 시퀀스를 **Auto Play** (자동 재생)하도록 설정했지만, **이벤트 그래프** 를 사용하여 시퀀스를 언제 재생할지 스크립트를 짤 수도 있습니다.
+
+
+
+위에서, **Event BeginPlay** 이후 액터가 **Player Controller** 에서 입력을 받을 수 있도록 했습니다.
+**P** 키가 눌리면, **Actor Sequence 컴포넌트** 를 받아 **Sequence Player** 를 구하고, 시퀀스 재생 시작을 위한 **Play** 함수 호출을 할 수 있도록 해줍니다.
+레벨 로드 시 시퀀스가 자동 재생되지 않도록 하기를 원하는 경우, Play 함수 호출은 어떤 식으로 해도 상관 없습니다.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.CHN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.CHN.udn
index 6a5f2e5c255c..702401ff6086 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.CHN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.CHN.udn
@@ -1,22 +1,22 @@
-INTSourceChangelist:0
-Availability: Public
-Title:Animating Dynamic Objects at Runtime
+INTSourceChangelist:3378719
+Availability:Public
+Title:在运行时设置动态对象的动画
Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
-Description:This example illustrates how you can apply Sequences to dynamic objects at runtime that are different than the one the Sequence was authored with.
-Version: 4.15
-SkillLevel: Advanced
+Description:此例说明如何在运行时将序列应用到动态对象(此对象与序列中原始拥有的对象不同)。
+Version:4.15
+SkillLevel:Advanced
parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
-Related: Engine/Sequencer/Overview
-Related: Engine\Sequencer\ReferenceEditor\
+Related:Engine/Sequencer/Overview
+Related:Engine\Sequencer\ReferenceEditor\
tags:Sequencer
-When creating cinematics for gameplay purposes, there may be times when you want to animate an object that is dynamically spawned at runtime through Sequencer.
-For instance, you create an animated object that moves along a path but that object is something that can be defined by the player.
-With the help of [Blueprint Visual Scripting](Engine/Blueprints), you can expose binding identifiers from a Level Sequence using the **Get Sequence Bindings** node and override any of those bindings with your own.
+针对游戏性目的创建动画时,有时需要对通过 Sequencer 在运行时动态生成的对象设置动画。
+举例而言,用户可创建一个带动画的对象沿路径移动,而该对象可由玩家定义。
+在 [蓝图可视化脚本](Engine/Blueprints) 的协助下,用户可使用 **Get Sequence Bindings** 节点从关卡序列公开绑定辨识符,并使用自有绑定覆盖这些绑定。
-In this example, we animate and move an object along a path and allow the player to change that object by pressing a button as seen below.
+在此例中,我们将为一个对象设置动画,使其沿路径行进;按键后可变更此对象。详情见下方视频。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -31,127 +31,127 @@ XdahqJz2cyM
[/OBJECT]
[REGION:note]
-For this how-to, we are using the **Blueprint Third Person Template** project and with **Starter Content** enabled.
+在此指南中,我们使用的是启用 **Starter Content** 的 **Blueprint Third Person Template** 项目,**Target Hardware** 和 **Project Settings** 为默认设置。
[/REGION]
-## Steps
+## 步骤
-1. In the **Content Browser**, create two new **Blueprints** based off the **Actor** class and name one **Cube_Blueprint** and the other **Sphere_Blueprint**.
+1. 在 **Content Browser** 中以 **Actor** 类为基础新建两个 **蓝图** ,将一个命名为 **Cube_Blueprint**,另一个命名为 **Sphere_Blueprint**。

- We will use the Cube Blueprint in our default Sequence but will swap in our Sphere Blueprint when the player presses a key.
+ 默认序列中使用的是立方体蓝图,而玩家按键后将切换为球体蓝图。
-1. Inside each Blueprint, add a **Static Mesh** component with one using a **Shape_Cube** mesh and the other using the **Shape_Sphere** mesh.
+1. 在每个蓝图中添加一个 **Static Mesh** 组件,一个使用 **Shape_Cube** 模型,另一个使用 **Shape_Sphere** 模型。

-1. From the **Modes** panel, drag an **Empty Actor** anywhere into the Level Viewport.
+1. 在 **Modes** 面板中将一个 **Empty Actor** 拖入关卡视口中。
(w:940)
-1. From the **Main Toolbar**, click the **Cinematics** button and **Add Level Sequence**, then assign it any name.
+1. 在 **主工具栏** 中点击 **Cinematics** 和 **Add Level Sequence** 按钮,然后为其指定任意命名。

-1. In your sequence, with the **Empty Actor** in the level selected, click **Add** then **Add Actor** to add it to the sequence.
+1. 在序列中,在关卡中选中 **Empty Actor** 后,先点击 **Add**,然后点击 **Add Actor** 将其添加到序列。

-1. Add a **Transform** track for the **Empty Actor** and add a key at **0** for its initial position in the level.
+1. 为 **Empty Actor** 添加一个 **Transform** 轨迹,在 **0** 处添加一个键,设为关卡中的初始位置。

-1. Move the timeline to frame **50** then move the **Empty Actor** in the level and press **S** to add a new key at its new position.
+1. 将时间轴移至第 **50** 帧,然后在关卡中移动 **Empty Actor**,然后在其新位置按下 **S** 新建一个键。
(w:740)
-1. Move the timeline to frame **100** then move the **Empty Actor** back to its starting position and press **S** to add a key at its ending transform.
+1. 将时间轴移至第 **100** 帧,然后将 **Empty Actor** 移回至其初始位置,然后按下 **S** 在其最终变形处添加一个键。
(w:740)
- You can also press the **]** key inside Sequencer while at frame 100 to end the Sequence at this key.
+ 也可在 Sequencer 中的第 100 帧处按下 **]**,在此键处终止序列。
-1. Select your Level Sequence in the Level Viewport, then in the **Details** panel, set **Loop** to **Lopp Indefinitely**.
+1. 在关卡视口中选中关卡序列,然后在 **Details** 面板中将 **Loop** 设为 **Loop Indefinitely**。

-1. With your Level Sequence selected in the Level Viewport, from the **Main Toolbar**, select **Blueprints** and **Open Level Blueprint**.
+1. 在关卡视口中选中关卡序列后,在 **主工具栏** 中选择 **Blueprints** 和 **Open Level Blueprint**。

-1. **Right-click** in the graph and create a reference to your Level Sequence.
+1. 在图表中 **点击右键**,创建一个对关卡序列的引用。

- In our case, we named our Level Sequence **Master**, however, your name may differ.
+ 在此例中我们将关卡序列命名为 **Master**,您可以使用其他命名。
-1. **Right-click** and add an **Event Begin Play** node, then drag off your Level Sequence reference and add a **Play (Sequence Player)** node.
+1. **点击右键** 添加一个 **Event Begin Play** 节点,然后从关卡序列引用连出引线,添加一个 **Play (Sequence Player)** 节点。

- Then connect the nodes as shown below.
+ 然后按下图所示连接节点。

- This will automatically start playing our Sequence when we start the game.
+ 此设置将在游戏开始时播放序列。
-1. **Right-click** in the graph and add a **1** Keyboard Event and connect it to a **Flip Flop** node.
+1. 在图表中 **点击右键**,添加一个 **1** 键盘事件并将其连接到一个 **Flip Flop** 节点。

- When we press 1 the first time, we will change the Empty Actor to our Cube, when we press 1 again, we will change it to our Sphere.
+ 第一次按下 1 时,空白 Actor 将变为立方体;再次按下 1 时,立方体将变为球体。
-1. **Right-click** and create a **Spawn Actor From Class** node and set the class as **Cube Blueprint**.
+1. **点击右键** 并创建一个 **Spawn Actor From Class** 节点,然后将类设为 **Cube Blueprint**。
-1. **Right-click** the **Return Value** and **Promote to Variable** called **Cube**, then drag off **Spawn Transform** and use **Make Transform**.
+1. **右键点击** **Return Value**,然后 **Promote to Variable** 调用 **Cube**,然后从 **Spawn Transform** 连出引线并使用 **Make Transform**。

- Here we are spawning our Cube Blueprint when 1 is pressed, storing it as a variable called Cube and giving it a default transform to spawn it at.
+ 在此处按下 1 时将生成立方体蓝图,将其保存为调用立方体的变量,然后为其赋予一个生成的默认变形。
-1. Off the **B** pin of the **Flip Flop** node, use **Spawn Actor from Class** (set to **Sphere Blueprint**), create a variable to store it and connect as shown below.
+1. 从 **Flip Flop** 的 **B** 引脚连出引线,使用 **Spawn Actor from Class**(设为 **Sphere Blueprint**),创建一个变量进行保存,并以下图中的方式进行连接。

- When we press 1 a second time, we are now creating and spawning in our Sphere Blueprint and storing it as a variable for use later.
+ 第二次按下 1 时,便会在球体蓝图中进行创建和生成,并将其保存为变量以便之后使用。
-1. **Right-click** in the graph and add the **Get Sequence Bindings** node and in the **Details** panel, point it to your Level Sequence.
+1. 在图表中 **点击右键** 并添加 **Get Sequence Bindings** 节点,然后在 **Details** 面板中将其指向关卡序列。

- This will allow us to access and override the contains within our Level Sequence through Blueprint Script.
+ 此设置将使用户能够通过蓝图脚本访问并覆盖关卡序列中包含的内容。
-1. **Right-click** in the graph and add the **Add Binding** node and connect the following nodes:
+1. 在图表中 **点击右键** 并添加 **Add Binding** 节点,然后连接到以下节点:

- Above we have connected the reference to our Level Sequence as the **Target**, the **Get Sequence Bindings** node as the **Binding** and the variable we created for our spawned Cube as the **Actor**.
- This will allow us to replace the Empty Actor (**Actor**) in our Level Sequence with the Actor we specify (our **Cube** that we spawn or our **Sphere**). The animation that was applied to the Empty Actor will also be applied to the Actor we set as part of the binding.
+ 上图中我们已将对关卡序列的引用连接为 **Target**、**Get Sequence Bindings** 节点连接为 **Binding**,而为生成立方体创建的变量连接为 **Actor**。
+ 此设置使用户能用指定的 Actor(生成的 **立方体** 或 **球体**)替换关卡序列中的空白 Actor(**Actor**)。应用到空白 Actor 的动画也将被应用到设为绑定部分的 Actor。
-1. Repeat the previous step for the **Sphere** portion of script, replacing **Cube** with **Sphere** as the **Actor**.
+1. 针对脚本的 **Sphere** 部分执行之前的步骤,用 **Sphere** 替代 **Cube** 作为 **Actor**。

-1. Following the **Add Binding** node for the Cube portion of script, use the **Sphere** variable and perform an **? IsValid** check and **Destroy Actor** if valid.
+1. 跟随脚本 Cube 部分的 **Add Binding** 节点,使用 **Sphere** 变量并执行一个 **?IsValid** 检查,如有效则执行 **Destroy Actor**。

- This will destroy the Sphere when we spawn in the Cube.
+ 完成此设置后生成立方体时便会销毁球体。
-1. Repeat the previous step for the **Sphere** portion of script, using **? IsValid** on the **Cube** variable and **Destroy Actor** if valid.
+1. 针对脚本的 **Sphere** 部分执行之前的步骤,使用 **Cube** 变量上的 **?IsValid** 检查,如有效则执行 **Destroy Actor**。

- This will destroy the Cube when we spawn the Sphere.
+ 完成此设置后生成球体时便会销毁立方体。
-1. Play in the editor, then press the **1** key to cycle between our spawned Actors.
+1. 在编辑器中进行游戏,然后按下 **1** 键在生成的 Actor 之间切换。
-## End Result
+## 最终结果
-When we play in the editor and press the 1 key, our Empty Actor is replaced by a spawned Actor either the Cube or the Sphere but continues to use the animation we applied.
+在编辑器中进行游戏并按下 1 键时,空白 Actor 将被生成的 Actor(立方体或球体)所替代,但继续使用应用的动画。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -165,7 +165,7 @@ XdahqJz2cyM
[/PARAMLITERAL]
[/OBJECT]
-You can also set and bind an array of Actors to a binding with the **Set Binding** node, **Reset Binding** for a particular binding or **Reset Bindings** for an entire Level Sequence.
+可使用 **Set Binding** 节点设置并绑定一个 Actor 阵列到绑定,为一个特定绑定 **设置绑定(Set Binding)** 或为整个关卡序列 **重设绑定(Reset Binding)**。

diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.INT.udn
index ca2806e721ab..f6ee69489ff3 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.INT.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.INT.udn
@@ -10,38 +10,30 @@ checkpoint: editorqs
Related: Engine/Sequencer/Overview
Related: Engine\Sequencer\ReferenceEditor\
tags:Sequencer
+type:how-to
When creating cinematics for gameplay purposes, there may be times when you want to animate an object that is dynamically spawned at runtime through Sequencer.
-For instance, you create an animated object that moves along a path but that object is something that can be defined by the player.
-With the help of [Blueprint Visual Scripting](Engine/Blueprints), you can expose binding identifiers from a Level Sequence using the **Get Sequence Bindings** node and override any of those bindings with your own.
+For instance, you can create an animated object that moves along a path but that object is something which can be defined by the player.
+With the help of [](Engine/Blueprints), you can expose binding identifiers from a Level Sequence using the **Get Sequence Bindings** node, and override any of those bindings with your own.
-In this example, we animate and move an object along a path and allow the player to change that object by pressing a button as seen below.
+In this example, we animate and move an object along a path, enabling the player to change that object by pressing a button.
+
+
-[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-XdahqJz2cyM
-[/PARAMLITERAL]
-[/OBJECT]
[REGION:note]
-For this how-to, we are using the **Blueprint Third Person Template** project and with **Starter Content** enabled.
+For this how-to guide, we are using the **Blueprint Third Person Template** project, enabling **Starter Content**, with default **Target Hardware** and **Project Settings**.
[/REGION]
## Steps
-1. In the **Content Browser**, create two new **Blueprints** based off the **Actor** class and name one **Cube_Blueprint** and the other **Sphere_Blueprint**.
+1. In the **Content Browser**, create two new **Blueprints** based off of the **Actor** class and name one **Cube_Blueprint** and the other **Sphere_Blueprint**.

We will use the Cube Blueprint in our default Sequence but will swap in our Sphere Blueprint when the player presses a key.
-1. Inside each Blueprint, add a **Static Mesh** component with one using a **Shape_Cube** mesh and the other using the **Shape_Sphere** mesh.
+1. Inside each Blueprint, add a **Static Mesh** component with one using a **Shape_Cube** mesh, and the other using the **Shape_Sphere** mesh.

@@ -53,7 +45,7 @@ For this how-to, we are using the **Blueprint Third Person Template** project an

-1. In your sequence, with the **Empty Actor** in the level selected, click **Add** then **Add Actor** to add it to the sequence.
+1. In your sequence, with the **Empty Actor** in the level selected, click **Add** and then **Add Actor** to add it to the sequence.

@@ -61,17 +53,17 @@ For this how-to, we are using the **Blueprint Third Person Template** project an

-1. Move the timeline to frame **50** then move the **Empty Actor** in the level and press **S** to add a new key at its new position.
+1. Move the timeline to frame **50**, then move the **Empty Actor** in the level and press **S** to add a new key at its new position.
(w:740)
-1. Move the timeline to frame **100** then move the **Empty Actor** back to its starting position and press **S** to add a key at its ending transform.
+1. Move the timeline to frame **100**, then move the **Empty Actor** back to its starting position and press **S** to add a key at its ending transform.
(w:740)
- You can also press the **]** key inside Sequencer while at frame 100 to end the Sequence at this key.
+ You can also press the **]** key inside of Sequencer while at frame 100 to end the Sequence at this key.
-1. Select your Level Sequence in the Level Viewport, then in the **Details** panel, set **Loop** to **Lopp Indefinitely**.
+1. Select your Level Sequence in the Level Viewport, then in the **Details** panel, set **Loop** to **Loop Indefinitely**.

@@ -79,66 +71,70 @@ For this how-to, we are using the **Blueprint Third Person Template** project an

-1. **Right-click** in the graph and create a reference to your Level Sequence.
+1. Right-click in the graph and create a reference to your Level Sequence.

In our case, we named our Level Sequence **Master**, however, your name may differ.
-1. **Right-click** and add an **Event Begin Play** node, then drag off your Level Sequence reference and add a **Play (Sequence Player)** node.
+1. Right-click and add an **Event Begin Play** node, then drag off your Level Sequence reference and add a **Play (Sequence Player)** node.

- Then connect the nodes as shown below.
+1. Then connect the nodes as shown below.

This will automatically start playing our Sequence when we start the game.
-1. **Right-click** in the graph and add a **1** Keyboard Event and connect it to a **Flip Flop** node.
+1. Right-click in the graph and add a **1** Keyboard Event, connecting it to a **Flip Flop** node.

When we press 1 the first time, we will change the Empty Actor to our Cube, when we press 1 again, we will change it to our Sphere.
-1. **Right-click** and create a **Spawn Actor From Class** node and set the class as **Cube Blueprint**.
+1. Right-click and create a **Spawn Actor From Class** node and set the class as **Cube Blueprint**.
-1. **Right-click** the **Return Value** and **Promote to Variable** called **Cube**, then drag off **Spawn Transform** and use **Make Transform**.
+ 
+
+1. Right-click the **Return Value** and **Promote to Variable** called **Cube**, then drag off **Spawn Transform** and use **Make Transform**.

- Here we are spawning our Cube Blueprint when 1 is pressed, storing it as a variable called Cube and giving it a default transform to spawn it at.
+ We are spawning our Cube Blueprint when 1 is pressed, storing it as a variable called Cube, and giving it a default transform to spawn it at.
1. Off the **B** pin of the **Flip Flop** node, use **Spawn Actor from Class** (set to **Sphere Blueprint**), create a variable to store it and connect as shown below.

- When we press 1 a second time, we are now creating and spawning in our Sphere Blueprint and storing it as a variable for use later.
+ When we press **1** a second time, we are now creating and spawning in our Sphere Blueprint and storing it as a variable for use later.
-1. **Right-click** in the graph and add the **Get Sequence Bindings** node and in the **Details** panel, point it to your Level Sequence.
+1. Right-click in the graph to add the **Get Sequence Bindings** node, and in the **Details** panel, point it to your Level Sequence.

- This will allow us to access and override the contains within our Level Sequence through Blueprint Script.
+ This will allow us to access and override the content within our Level Sequence through Blueprint Script.
-1. **Right-click** in the graph and add the **Add Binding** node and connect the following nodes:
+1. Right-click in the graph and add the **Add Binding** node, connecting the following nodes:

- Above we have connected the reference to our Level Sequence as the **Target**, the **Get Sequence Bindings** node as the **Binding** and the variable we created for our spawned Cube as the **Actor**.
+ [REGION:note]
+ Now that we've connected the reference to our Level Sequence as the **Target**, the **Get Sequence Bindings** node as the **Binding**, and the variable we created for our spawned Cube as the **Actor**.
This will allow us to replace the Empty Actor (**Actor**) in our Level Sequence with the Actor we specify (our **Cube** that we spawn or our **Sphere**). The animation that was applied to the Empty Actor will also be applied to the Actor we set as part of the binding.
+ [/REGION]
1. Repeat the previous step for the **Sphere** portion of script, replacing **Cube** with **Sphere** as the **Actor**.

-1. Following the **Add Binding** node for the Cube portion of script, use the **Sphere** variable and perform an **? IsValid** check and **Destroy Actor** if valid.
+1. Following the **Add Binding** node for the Cube portion of script, use the **Sphere** variable and perform a **? IsValid** check and **Destroy Actor** (if valid).

This will destroy the Sphere when we spawn in the Cube.
-1. Repeat the previous step for the **Sphere** portion of script, using **? IsValid** on the **Cube** variable and **Destroy Actor** if valid.
+1. Repeat the previous step for the **Sphere** portion of script, using **? IsValid** on the **Cube** variable and **Destroy Actor** (if valid).

@@ -146,25 +142,29 @@ For this how-to, we are using the **Blueprint Third Person Template** project an
1. Play in the editor, then press the **1** key to cycle between our spawned Actors.
-
-
## End Result
-When we play in the editor and press the 1 key, our Empty Actor is replaced by a spawned Actor either the Cube or the Sphere but continues to use the animation we applied.
+When we play in the editor and press the 1 key, our Empty Actor is replaced by a spawned Actor with either the Cube or the Sphere, but continues to use the animation we applied.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-XdahqJz2cyM
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ XdahqJz2cyM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-You can also set and bind an array of Actors to a binding with the **Set Binding** node, **Reset Binding** for a particular binding or **Reset Bindings** for an entire Level Sequence.
+You can also set and bind an array of Actors to a binding with the **Set Binding** node. Additionally, you can use the **Reset Binding** node for a particular binding or the **Reset Bindings** node for an entire Level Sequence.

diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.JPN.udn
index 1140612b7d1b..ac26261c38d5 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3348041
+INTSourceChangelist:3439832
Availability:Public
Title:ランタイムに動的オブジェクトをアニメートする
Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
@@ -11,27 +11,19 @@ checkpoint: editorqs
Related:Engine/Sequencer/Overview
Related:Engine\Sequencer\ReferenceEditor\
tags:Sequencer
+type:how-to
ゲームプレイ目的でシネマティックスを作成する場合、ランタイムに動的にスポーンされるオブジェクトをシーケンサーでアニメートする必要が生じるかもしれません。
例えば、パスに沿って移動するアニメートしたオブジェクトを作成し、そのオブジェクトがプレイヤーによって定義可能なものであるとします。
-[ブループリント ビジュアル スクリプティング](Engine/Blueprints) で、**Get Sequence Bindings** ノードを使ってレベル シーケンスからバインディング識別子を公開し、こうしたバインディングを自分のものでオーバーライドすることができます。
+[](Engine/Blueprints) で、**Get Sequence Bindings** ノードを使ってレベル シーケンスからバインディング識別子を公開し、こうしたバインディングを自分のものでオーバーライドすることができます。
-この例では、以下のようにオブジェクトをアニメートしパスに沿って動かし、プレイヤーがボタンを押すことでオブジェクトを変更できるようにします。
+この例では、オブジェクトをアニメートしパスに沿って動かし、プレイヤーがボタンを押すことでオブジェクトを変更できるようにします。
+
+
-[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-XdahqJz2cyM
-[/PARAMLITERAL]
-[/OBJECT]
[REGION:note]
-ここでは **Starter Content Enabled (スターター コンテンツを有効にした状態)** で **Blueprint Third Person Template** プロジェクトを使います。
+この操作ガイドでは **Starter Content** を有効にした状態で、デフォルトの **Target Hardware** と **Project Settings** で**Blueprint Third Person Template** プロジェクトを使います。
[/REGION]
## ステップ
@@ -80,31 +72,33 @@ XdahqJz2cyM

-1. グラフ内で **右クリック** して、レベル シーケンスへのリファレンスを作成します。
+1. グラフ内で 右クリック して、レベル シーケンスへのリファレンスを作成します。

この場合、レベル シーケンスに **Master** という名前を付けましたが、別の名前を付けることもできます。
-1. **右クリック** して、**Event Begin Play** ノードを追加します。次に、レベル シーケンスのリファレンスからドラッグして、**Play (Sequence Player)** ノードを追加します。
+1. 右クリック して、**Event Begin Play** ノードを追加します。次に、レベル シーケンスのリファレンスからドラッグして、**Play (Sequence Player)** ノードを追加します。

- 以下のようにノードを接続します。
+1. 以下のようにノードを接続します。

これでゲーム開始時にシーケンスが自動的に開始します。
-1. グラフ内で **右クリック** し、 **1** Keyboard Event を追加し、 **Flip Flop** ノードに接続します。
+1. グラフ内で右クリックし、 **1** Keyboard Event を追加し、 **Flip Flop** ノードに接続します。

初めて 1 を押すと、Empty Actor が Cube に変わります。再度 1 を押すと、Sphere に変わります。
-1. **右クリック** して、 **Spawn Actor from Class** ノードを作成し、クラスを **Cube Blueprint** として設定します。
+1. 右クリック して、 **Spawn Actor from Class** ノードを作成し、クラスを **Cube Blueprint** として設定します。
-1. **Return Value** を **右クリック** し、 **Cube** に **変数化** し、 **Spawn Transform** からドラッグして **Make Transform** を使用します。
+ 
+
+1. Return Value を **右クリック** し、 **Cube** に **変数化** し、 **Spawn Transform** からドラッグして **Make Transform** を使用します。

@@ -114,32 +108,34 @@ XdahqJz2cyM

- さらに 1 を押すと、Sphere ブループリントを作成し、スポーンし、後で使用するために変数として格納します。
+ さらに **1** を押すと、Sphere ブループリントを作成し、スポーンし、後で使用するために変数として格納します。
-1. グラフ内で **右クリック** し、 **Get Sequence Bindings** ノードを追加します。**[Details]** パネルでそれをレベル シーケンスにポイントします。
+1. グラフ内で右クリックし、 **Get Sequence Bindings** ノードを追加します。**[Details]** パネルでそれをレベル シーケンスにポイントします。

- これでブループリント スクリプトを通してレベル シーケンス内のものにアクセスしオーバーライドすることができます。
+ これでブループリント スクリプトを通してレベル シーケンス内のコンテンツにアクセスしオーバーライドすることができます。
-1. グラフ内で **右クリック** して、**Add Binding** ノードを追加し、以下のノードを接続します。
+1. グラフ内で 右クリック して、**Add Binding** ノードを追加し、以下のノードを接続します。

- 上の図では、レベル シーケンスへのリファレンスを **Target** として接続し、**Get Sequence Bindings** ノードを **Binding** として接続しました。スポーンした Cube に対して作成した変数は **Actor** として接続しました。
+ [REGION:note]
+ ここまでで、レベル シーケンスへのリファレンスを **Target** として接続し、**Get Sequence Bindings** ノードを **Binding** として接続しました。スポーンした Cube に対して作成した変数は **Actor** として接続しました。
これでレベル シーケンス内の Empty Actor (**Actor**) を指定したアクタに置換することができます (スポーンする **Cube** または **Sphere**)。Empty Actor に適用されたアニメーションも、バインディングの一部として設定したアクタに適用されます。
+ [/REGION]
1. スクリプトの **Sphere** 部分に対して前のステップを繰り返し、 **Actor** として **Cube** を **Sphere** に置き換えます。

-1. スクリプトの Cube 部分の **Add Binding** ノードの後に、**Sphere** 変数を使って、**?IsValid** チェックを行い、有効ならば **Destroy Actor** します。
+1. スクリプトの Cube 部分の **Add Binding** ノードの後に、**Sphere** 変数を使って、**?IsValid** チェックを行い、 (有効ならば) **Destroy Actor** します。

これで Cube スポーン時に Sphere が破棄されます。
-1. スクリプトの **Sphere** 部分に対して前のステップを繰り返し、**Cube** 変数で **?IsValid** チェックを行い、有効ならば **Destroy Actor** します。
+1. スクリプトの **Sphere** 部分に対して前のステップを繰り返し、**Cube** 変数で **?IsValid** チェックを行い、 (有効ならば) **Destroy Actor** します。

@@ -149,23 +145,27 @@ XdahqJz2cyM
## 最終結果
-
-
エディタで再生し、1 キーを押すと、Empty Actor が Cube または Sphere のいずれかのスポーンしたアクタに置き換わりますが、適用したアニメーションを使い続けます。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-XdahqJz2cyM
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ XdahqJz2cyM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-一連のアクタを設定、バインドし、**Set Binding** ノードを使ってバインディングし、特定のバインディングに対して **Reset Binding** したり、レベル シーケンス全体を **Reset Bindings** することもできます。
+一連のアクタを設定、バインドし、**Set Binding** ノードを使ってバインディングすることができます。特定のバインディングに対して **Reset Binding** ノードを使ったり、レベル シーケンス全体に対して **Reset Binding** ノードを使うこともできます。

diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.KOR.udn
index 69ffabf6baa5..9e9040535e18 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/AnimateDynamicObjects/AnimateDynamicObjects.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3348041
+INTSourceChangelist:3439832
Availability: Public
Title:런타임에 다이내믹 오브젝트 애니메이션
Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
@@ -11,27 +11,19 @@ checkpoint: editorqs
Related: Engine/Sequencer/Overview
Related: Engine\Sequencer\ReferenceEditor\
tags:Sequencer
+type:how-to
게임플레이 용도로 시네마틱을 제작할 때, 시퀀서를 통해 런타임 동적 스폰되는 오브젝트에 애니메이션을 주고플 때가 있습니다.
예를 들어 경로를 따라 움직이는 애니메이션 오브젝트를 만드는데, 그 오브젝트를 플레이어가 정의할 수 있는 것입니다.
[블루프린트 비주얼 스크립트](Engine/Blueprints) 덕에 **Get Sequence Bindings** 노드를 사용하여 레벨 시퀀스에서의 바인딩 식별자를 노출시키고 그 바인딩을 자신의 것으로 덮어쓸 수 있습니다.
-이 예제에서는 길을 따라 오브젝트를 움직이고 애니메이션을 적용하며, 아래와 같이 플레이어가 버튼을 누르면 그 오브젝트를 바꿀 수 있습니다.
+이 예제에서는 길을 따라 오브젝트를 움직이고 애니메이션을 적용하며, 플레이어가 버튼을 누르면 그 오브젝트를 바꿀 수 있습니다.
+
+
-[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-XdahqJz2cyM
-[/PARAMLITERAL]
-[/OBJECT]
[REGION:note]
-여기서는 **블루프린트 삼인칭 템플릿** 프로젝트에 **시작용 콘텐츠** 를 포함시켜 사용하고 있습니다.
+여기서는 **블루프린트 삼인칭 템플릿** 프로젝트에 **시작용 콘텐츠** 포함, 기본 **타겟 하드웨어** 및 **프로젝트 세팅** 을 사용하고 있습니다.
[/REGION]
## 단계
@@ -72,7 +64,7 @@ XdahqJz2cyM
100 프레임에 있을 때 시퀀서 안에서 **]** 키를 눌러도 이 키에서 시퀀스를 종료시킬 수 있습니다.
-1. 레벨 뷰포트에서 레벨 시퀀스를 선택한 후, **디테일** 패널에서 **Loop** 를 **Lopp Indefinitely** (무한 반복)으로 설정합니다.
+1. 레벨 뷰포트에서 레벨 시퀀스를 선택한 후, **디테일** 패널에서 **Loop** 를 **Loop Indefinitely** (무한 루프)로 설정합니다.

@@ -104,6 +96,8 @@ XdahqJz2cyM
1. **우클릭** 후 **Spawn Actor From Class** 노드를 생성한 뒤 클래스를 **Cube Blueprint** 로 설정합니다.
+ 
+
1. **Return Value** 에 **우클릭** 하고 **변수로 승격** 시켜 **Cube** 라 한 뒤, **Spawn Transform** 을 끌어 놓고 **Make Transform** 을 사용합니다.

@@ -120,14 +114,16 @@ XdahqJz2cyM

- 그러면 블루프린트 스크립트를 통해 레벨 시퀀스 내용물에 접근하고 덮어쓸 수 있도록 해줍니다.
+ 그러면 블루프린트 스크립트를 통해 레벨 시퀀스 내 콘텐츠에 접근하고 덮어쓸 수 있도록 해줍니다.
1. 그래프에 **우클릭** 하고 **Add Binding** 노드를 추가한 뒤 다음 노드를 연결합니다:

+ [REGION:note]
위에서 레벨 시퀀스로의 레퍼런스를 **Target** 으로, **Get Sequence Bindings** 노드를 **Binding** 으로, 스폰한 큐브에 대해 생성한 변수를 **Actor** 로 연결했습니다.
그러면 레벨 시퀀스의 공백 액터 (**Actor**) 를 지정한 (**Cube** 또는 **Sphere**) 액터로 대체할 수 있습니다. 공백 액터에 적용된 애니메이션 역시 바인딩 일부로 설정한 액터에 적용될 것입니다.
+ [/REGION]
1. 스크립트 **Sphere** 부분에 대한 예전 단계를 반복, **Cube** 를 **Sphere** 로 **Actor** 에 대체합니다.
@@ -147,22 +143,26 @@ XdahqJz2cyM
1. 에디터에서 플레이한 뒤, **1** 키를 눌러 스폰되는 액터를 순환시킵니다.
-
-
## 최종 결과
에디터에서 플레이하고 1 키를 누르면, 공백 액터가 큐브 또는 구체로 스폰되는 액터로 대체되나, 적용한 애니메이션은 계속 유지됩니다.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-XdahqJz2cyM
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ XdahqJz2cyM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
**Set Binding** 노드로 바인딩에 액터 배열을 설정 및 바인딩할 수도, **Reset Binding** 으로 특정 바인딩 또는 **Reset Bindings** 로 전체 레벨 시퀀스 리셋도 가능합니다.
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.CHN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.CHN.udn
index 50b776095f15..c3af42f14b7f 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.CHN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.CHN.udn
@@ -1,86 +1,91 @@
-INTSourceChangelist:2997698
+INTSourceChangelist:3439587
Availability:Public
-Title:生成角色动画
-Crumbs:%ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
-Description:说明如何在 Sequencer 中对骨骼网格 Actor 应用动画
-Version:4.12
+Title:动画和动画混合
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Description:说明如何在 Sequencer 中将动画应用到骨架网格体并混合动画。
+Version:4.15
SkillLevel:Intermediate
parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
Related:Engine/Sequencer/Overview
Related:Engine\Sequencer\ReferenceEditor\
+tags:Sequencer
-在创建过场动画序列时,您有时可能希望让一个角色在场景中四处移动,或演出某些类型的动画。
-在 **Sequencer** 中要做到这一点,可以将骨骼网格 Actor 添加到关卡序列,然后添加一条动画子轨道,并指定您希望该 Actor 演出的动画。
-重复此过程,为 Actor 添加不同类型的演出动画,就能让您的角色在过场动画序列中栩栩如生!
+创建影片序列时,有时可能需要角色在场景中四处移动,或者执行一些动画。
+在 **Sequencer** 实现这种效果的方法是为关卡序列添加一个骨架网格体 Actor,然后添加一个动画子轨迹,并指定 Actor 需要执行的动画。
+重复此流程,为 Actor 添加不同类型的动画,使影片序列中的角色活灵活现!
-在本指南中我们将创建一个小场景,通过应用不同动画让其中的角色跳上跳下。
+我们将在此指南中创建一个小场景,其中的角色将以行走开始,然后混合到跳跃动画中。
## 步骤
[REGION:note]
-在本操作指南中,我们使用 **Blueprint Third Person Template** 项目,并 **启用了起步内容**。
+在此指南中,我们使用的是启用了 **Starter Content** 的 **Blueprint Third Person Template** 项目。
[/REGION]
-1. 在项目打开的情况下,在关卡中选择 **ThirdPersonCharacter**,然后按 **Delete** 删除它。
+1. 点击项目中工具栏下的 **Cinematics** 按钮和 **Add Level Sequence**。

- 这是您在运行此模板附带的游戏时使用的 **角色蓝图**,我们并不需要它。
-
-1. 在 **内容浏览器** 中的 **Content/Mannequin/Character/Mesh** 下,将 **SK_Mannequin** 资产拖动到关卡视口中。
+1. 在 **Content Browser** 下的 **Content/Mannequin/Character/Mesh** 中,将 **SK_Mannequin** 拖入关卡。

-1. 在 **工具栏** 中单击 **过场动画(Cinematics)**下拉选项,再选择 **添加关卡序列(Add Level Sequence)**。
+1. 保持 **SK_Mannequin** 的选中状态,点击 Sequencer 中的 **Add** 按钮将其添加到关卡序列。

- 当系统提示时,为新的关卡序列选择保存名称和保存位置。
-
-1. 在关卡中选择 **SK_Mannequin**。
-
-1. 在 **Sequencer** 窗口中,单击 **添加(Add)**按钮并选择 **添加 Actor 到 Sequencer(Add Actor To Sequencer)**,然后选择 **添加 SK_Mannequin(Add SK_Mannequin)**。
+1. 点击新骨架网格体轨迹中的 **Animation** 按钮,指定 **ThirdPersonWalk** 动画。

- 这会将一条用于 SK_Mannequin 的 **轨道** 添加到 Sequencer,然后我们可以用它操纵场景中的 Actor。
-
- 
-
-1. 在 **动画(Animation)**子轨道上单击 **+** 调出快捷菜单,然后选择 **ThirdPersonIdle**。
+1. 展开 **Animation**,然后将 **时间轴** 拖至第 **30** 帧处。

- 选中 Actor 后,它会摆出闲散的姿态,动画将添加到动画轨道。
-
- 
-
-1. 选择 **动画(Animation)**轨道,然后 **左键单击** 时间轴标记将它拖动到闲散动画的结束处,按 **Enter**。
+1. 再次点击 **Animation** 按钮并添加 **ThirdPersonJump_Start** 动画。

- 这将会在序列中的该时间点添加一个新的 **关键帧**,还会出现一个快捷菜单,您可在其中选择其他动画。
+ 现在播放动画会发现两个动画之间存在跳动。
-1. 添加 **ThirdPersonJump_Start** 动画。
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ oHjDpYPAdCo
+ [/PARAMLITERAL]
+ [/OBJECT]
+
+ 添加动画时,可以使用加权值在多个动画之间进行混合。这就是处理动画之间跳动的方法。
+
+1. 将下方的 **ThirdPersonJump_Start** 动画拖至行走动画下方,并回到序列的第 **25** 帧。

- 在我们当前的设置下,在播放闲散动画后会继续播放开始跳跃动画。您可以将时间轴标记沿着时间轴前后拖动或按视口中的 **播放(Play)**按钮来播放我们当前的场景,预览这段动画。
-
-1. 在跳跃开始动画结束时(选中动画轨道的情况下),按 **Enter** 并添加 **ThirdPersonJump_End**。
+1. 展开两个子动画轨迹并点击行走轨迹上的 **add key** 按钮,为跳跃开始动画的值设为 **1.0** 和 **0.0**。

-1. 在跳跃结束动画结束时(选中动画轨道的情况下),按 **Enter** 并添加 **ThirdPersonIdle** 动画。
+ 这将关闭跳跃开始动画的播放,因其权重值为 0.0。
+
+1. 拖至第 **30** 帧并分别在行走和跳跃动画上添加 **0.0** 和 **1.0** 的键。

+ 这将混入跳跃开始动画,混出行走动画。
+
+1. 点击 **Preview Play** 按钮观看动画混合。
+
## 最终结果
-当您在视口中单击 **播放(Play)**按钮时,将看到角色跳上跳下。
+现在序列便包含骨架网格体和多个顺畅混合的动画,动画之间不会出现跳动。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -90,44 +95,8 @@ Related:Engine\Sequencer\ReferenceEditor\
360
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
-FMZG4yGriqc
+kVotxriT1Y4
[/PARAMLITERAL]
[/OBJECT]
-我们在上面看到了过场动画序列在编辑器中显示的效果。如果我们现在运行游戏,将不会看到任何内容,因为我们还没有向关卡序列本身发出开始播放的命令。
-与 **Matinee** Actor 类似,你可以在关卡中选择关卡序列,然后在 **细节(Details)**面板中选中 **自动播放(Auto Play)**复选框,使序列在加载关卡时播放。
-
-
-
-在视频中,您也可以看到在 Sequencer 中是如何处理播放的。只有包含在 **片段边界** 内的内容(绿色和红色标记之间)才会播放。
-您可以拖动这些标记来扩大/缩小序列的边界,或者通过 **Sequencer** 选项,启用 **使播放范围保持在片段边界中(Keep Playback Range In Section Bounds)**选项(如下图所示)来确保播放范围包括所有内容。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+还可在此例基础上进行拓展:加入跳跃循环和跳跃结束动画,并将它们混入,使角色能够跳跃和落地。
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.INT.udn
index e6e229b23a9a..2b92ef201187 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.INT.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.INT.udn
@@ -1,6 +1,6 @@
Availability: Public
-Title:Animation and Animation Blending
-Crumbs:
+Title:Animation & Animation Blending
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
Description:Illustrates how you can apply animation to a Skeletal Mesh Actor in Sequencer and blend animations.
Version: 4.15
SkillLevel: Intermediate
@@ -8,25 +8,22 @@ parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
Related: Engine/Sequencer/Overview
-Related: Engine/Sequencer/ReferenceEditor
+Related: Engine\Sequencer\ReferenceEditor\
tags:Sequencer
-type:how-to
-When creating cinematic sequences, there may be times where you want to have a character in your scene move around or perform some kind of animation.
-In **Sequencer**, this can be done by adding a Skeletal Mesh Actor to a Level Sequence, then adding an Animation sub-track, and then specifying the animation that you want the Actor to perform.
-Repeating this process and adding different kinds of animations for your Actor to perform is what can bring your characters to life in your cinematic sequences!
+When creating cinematic sequences, there may be times where you want to have a character in your scene move around or perform some kind of animation.
+In **Sequencer**, this can be done by adding a Skeletal Mesh Actor to a Level Sequence then adding an Animation sub-track and specifying the animation that you want the Actor to perform.
+Repeating this process and adding different kinds of animations for your Actor to perform is what can bring your characters to life in your cinematic sequences!
-In the following guide, you will create a small scene that starts with a character walking, then blending from walking into a jumping animation.
-
-
+Here in this guide, we will create a small scene that has a character start out walking and blend from a walk into a jump animation.
## Steps
[REGION:note]
-For this guide, we are using the **Blueprint Third Person Template** project with **Starter Content Enabled**.
+For this how-to, we are using the **Blueprint Third Person Template** project with **Starter Content Enabled**.
[/REGION]
-1. Inside your project, from the Main Toolbar, click the **Cinematics** button, and then click the **Add Level Sequence** button.
+1. Inside your project, from the Main Toolbar, click the **Cinematics** button and **Add Level Sequence**.

@@ -38,7 +35,7 @@ For this guide, we are using the **Blueprint Third Person Template** project wit

-1. Click the **Animation** button on the new Skeletal Mesh Track and assign the **ThirdPersonWalk** Animation Sequence.
+1. Click the **Animation** button on the new Skeletal Mesh Track and assign the **ThirdPersonWalk** animation.

@@ -64,9 +61,7 @@ For this guide, we are using the **Blueprint Third Person Template** project wit
[/PARAMLITERAL]
[/OBJECT]
- [REGION:tip]
When adding animations, you can use the weight value to blend between multiple animations, which is how we will address the pop between animations.
- [/REGION]
1. Drag the **ThirdPersonJump_Start** animation below and under the walk animation, back to frame **25** of the sequence.
@@ -76,23 +71,20 @@ For this guide, we are using the **Blueprint Third Person Template** project wit

- [REGION:note]
- This will turn off the playback of the jump start animation since it's weighted value is `0.0`.
- [/REGION]
+ This will effectively turn off the playback of the jump start animation since its weighted value is 0.0.
-1. Scrub to frame **30** and add keys for both animations of **0.0** and **1.0** for the walk and jump animations respectively.
+1. Scrub to frame **30** and add keys for both animations of **0.0** and **1.0** for the walk and jump animations, respectively.

- [REGION:note]
- This will blend in the jump start animation and blend out the walk animation.
- [/REGION]
+ This will effectively blend in the jump start animation and blend out the walk animation.
+
+1. Click the **Preview Play** button to see the animation blending.
-1. Finally, click the **Preview Play** button to see the animation blending.
## End Result
-Your sequence now includes a Skeletal Mesh with multiple animations of which blend together smoothly instead of popping between animations.
+Your sequence now includes a Skeletal Mesh with multiple animations which blend together smoothly instead of popping between animations.
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -106,33 +98,4 @@ kVotxriT1Y4
[/PARAMLITERAL]
[/OBJECT]
-If you want to continue working on this example, you can add the jump loop and jump end animations, blending them in so that the character jumps and lands.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+You could continue with this example by adding in the jump loop and jump end animations and blend them in so the character jumps and lands.
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.JPN.udn
index 28989f30526f..5caf84bc96aa 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3267838
+INTSourceChangelist:3439587
Availability:Public
Title:アニメーションとアニメーションのブレンド
Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
@@ -12,9 +12,9 @@ Related:Engine/Sequencer/Overview
Related:Engine\Sequencer\ReferenceEditor\
tags:Sequencer
-シネマティック シーケンスを作る場合、シーン内でキャラクターを動かしたり、何らかのアニメーションを実行させたいことがあるでしょう。
-**シーケンサー** では、Skeletal Mesh アクタをレベル シーケンスに追加してから、アニメーションのサブトラックを追加し、アクタに行わせたいアニメーションを指定することでこれを行うことができます。
-上記のプロセスを繰り返し、アクタに行わせたい様々なアニメーションを追加することでシネマティック シーケンスでキャラクターが生き生きとしたものになります。
+シネマティック シーケンスを作る場合、シーン内でキャラクターを動かしたり、何らかのアニメーションを実行させたいことがあるでしょう。
+**シーケンサー** では、Skeletal Mesh アクタをレベル シーケンスに追加してから、アニメーションのサブトラックを追加し、アクタに行わせたいアニメーションを指定することでこれを行うことができます。
+上記のプロセスを繰り返し、アクタに行わせたい様々なアニメーションを追加することでシネマティック シーケンスでキャラクターが生き生きとしたものになります。
このガイドでは、キャラクターが歩行を開始し、歩行からジャンプのアニメーションにブレンドする小さなシーンを作ります。
@@ -100,32 +100,3 @@ kVotxriT1Y4
[/OBJECT]
このサンプルで作業を続けてアニメーションのジャンプ ループとジャンプ エンドを追加してブレンドし、キャラクターをジャンプさせて、着地させることができます。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.KOR.udn
index f0ef7c0671d9..530b3ae7c636 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/CharacterAnimation/CharacterAnimation.KOR.udn
@@ -1,6 +1,6 @@
-INTSourceChangelist:3267838
+INTSourceChangelist:3439587
Availability: Public
-Title:애니메이션 & 애니메이션 블렌딩
+Title:애니메이션 및 애니메이션 블렌딩
Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
Description:시퀀서에서 스켈레탈 메시 액터에 애니메이션을 적용하고 애니메이션을 블렌딩하는 방법을 알아봅니다.
Version: 4.15
@@ -21,7 +21,7 @@ tags:Sequencer
## 단계
[REGION:note]
-여기서는 **블루프린트 삼인칭 템플릿** 프로젝트에 **시작용 콘텐츠** 포함시킨 것을 사용합니다.
+여기서는 **블루프린트 삼인칭 템플릿** 프로젝트에 **시작용 콘텐츠** 를 포함한 것을 사용하고 있습니다.
[/REGION]
1. 프로젝트 내 메인 툴바에서 **Cinematics** (시네마틱) 버튼을 클릭하고 **Add Level Sequence** (레벨 시퀀스 추가) 를 선택합니다.
@@ -72,7 +72,7 @@ tags:Sequencer

- 그러면 점프 시작 애니메이션의 가중치 값은 0.0 이 되어 실제로는 재생이 꺼지는 효과가 납니다.
+ 그러면 점프 시작 애니메이션의 가중치 값은 0.0 이 되어 사실상 비활성화됩니다.
1. **30** 프레임으로 이동한 뒤 양쪽 애니메이션에 키를 추가합니다. 걷기 애니메이션에는 **0.0**, 점프 애니메이션에는 **1.0** 입니다.
@@ -100,32 +100,3 @@ kVotxriT1Y4
[/OBJECT]
점프 루프와 점프 끝 애니메이션을 추가하고 캐릭터가 점프 후 착지하도록 블렌딩하는 식으로 이 예제를 확장해 볼 수도 있습니다.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequenceRecorder/SequenceRecorder.CHN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequenceRecorder/SequenceRecorder.CHN.udn
index e1ab2a2ac45b..87f59e8261e5 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequenceRecorder/SequenceRecorder.CHN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequenceRecorder/SequenceRecorder.CHN.udn
@@ -1,61 +1,64 @@
-INTSourceChangelist:3007759
+INTSourceChangelist:3322057
Availability:Public
-Title:记录游戏
-Crumbs:%ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
-Description:用序列记录器记录您的游戏运行操作,并将该数据用于 Sequencer 中。
-Version:4.12
+Title:录制到 Sequencer
+Crumbs:
+Description:使用 Sequence Recorder 录制动作,然后在 Sequencer 中使用数据。
+Version:4.14
SkillLevel:Advanced
parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
Related:Engine/Sequencer/Overview
-Related:Engine\Sequencer\ReferenceEditor\
+Related:Engine/Sequencer/ReferenceEditor
+tags:Sequencer
+type:how-to
-**序列记录器** 允许您在游戏运行中捕获指定的 Actor,然后将其另存为新的 **关卡序列**,并可在 **Sequencer** 中编辑。
-这对于快速捕获场景的内容很有用,因为您可以让一个可操纵的角色在游戏运行时执行一些操作,同时用序列记录器进行记录,然后将该数据输入 Sequencer 中,围绕它创建一段过场动画。
-
-在这个示例中,我们将使用序列记录器记录我们的可操纵角色的运动,随后我们可以对其进行编辑。
+利用 **Sequence Recorder** 可捕捉关卡编辑或游戏进程中的特定 Actor,可另存为新的 **关卡序列**,并在 **Sequencer** 中进行编辑。
+这可用于快速捕捉场景中的内容。可选取一个可操作角色,在游戏进程中执行一些操作,同时使用 Sequence Recorder 进行录制,然后将数据导入 Sequencer,以此创建动画。
+在此例中,我们将使用 Sequence Recorder 记录可操作角色的动作,然后进行对其进行编辑。
## 步骤
[REGION:note]
-在本操作指南中,我们使用 **Blueprint Third Person Template** 项目,并 **启用了起步内容**。
+在此指南中,我们使用的是启用 **Starter Content** 的 **Blueprint Third Person Template** 项目。
[/REGION]
-1. 从 **菜单栏(Menu Bar)**中的 **窗口(Window)**下方,选择 **序列记录器(Sequence Recorder)**。
+1. 在 **窗口** 下的 **菜单栏** 中选中 **Sequence Recorder**。

-
- “序列记录器”(Sequence Recorder)窗口将自动打开。
- **序列记录(Sequence Recording)** 下的一些选项可确定新关卡序列资产的保存方式及保存位置。
- 您可以选择记录产生的 Actor(例如粒子效果和其他角色等等),确定命名约定和保存位置,以及更改其他设置(例如记录持续时间或开始记录前的延迟)。
-
-1. 在主编辑器工具栏中,单击 **运行(Play)**开始在编辑器会话中运行。
-1. 进入游戏后,按 **Shift+F1** 取得鼠标控制权。
+ Sequence Recorder 窗口将自动打开。**Sequence Recording** 有多个选项,将决定新关卡序列资源的保存方式和路径。可选择记录生成的 Actor(如粒子效果、其他角色等),确定命名规则和保存路径,并变更其他设置(如录制时长或开始录制前的延迟)。
+
+1. 在主编辑器工具栏中,点击 **Play** 按钮开始一个编辑器中进行游戏(PIE)会话。
-1. 在 **序列记录器(Sequence Recorder)**窗口上,单击 **添加(Add)**按钮。
+1. 在游戏中按下 **Shift+F1** 组合键进行鼠标控制。
+
+1. 点击 **Sequence Recorder** 窗口上的 **Add** 按钮。

-1. 单击新记录,然后对于 **要记录的 Actor(Actor to Record)**单击下拉菜单并选择 **ThirdPersonCharacter**。
+1. 点击新录制(为 **空**),然后点击 **Actor to Record** 的下拉菜单并选择 **ThirdPersonCharacter**。

- 这是开始记录过程前我们指定哪个 Actor 是记录目标的位置。
+ 开始录制进程前,我们在此处指定设为目标的 Actor,如上图所示更新 UI。
-1. 单击 **记录(Record)**按钮。
+1. 此外可选择录制音频并沿录制片段设置音频增益级。
+
+ 
+
+ 音频录制需要附带麦克风,将在开始录制序列时同时进行录制。
+
+1. 点击 **Record** 按钮。4 秒后(受 Sequence Recording 部分下的 **Record Delay** 选项影响),录制进程开始。

- 4 秒钟后(这是“序列记录”(Sequence Recording)部分的 **记录延迟(Record Delay)**选项所设定的),记录过程将开始。
-
[REGION:note]
- 单击 **记录(Record)**按钮时,还将记录列表中所有已设置为受追踪的 Actor。
+ 点击 **Record** 按钮,列表中所有设为被追踪的 Actor 也将被录制。
[/REGION]
-1. 使用 **WASD** 和 **空格** 键使角色移动和跳跃,完成后按 **ESC** 键。
+1. 使用 **WASD** 和**空格** 键移动角色并控制其跳跃,然后在完成时按下 **ESC**。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -65,22 +68,17 @@ Related:Engine\Sequencer\ReferenceEditor\
360
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
- xo5JRkV3_nI
+ 9mZI75qBsx8
[/PARAMLITERAL]
- [/OBJECT]
+ [/OBJECT]
- 以上是我们记录的序列。但是,如果您的角色还能攻击或执行其他操作,您大可让其做出这些操作。
+ 一个新文件夹将在 **Content Browser** 中被创建,其中包含与录制序列相关的资源。
-1. 在 **内容浏览器** 中将创建一个新的文件夹,其中包含与所记录序列相关的资产。
-
- 
-
- 记录完成后,将创建一个包含过场动画数据的 **关卡序列** 资产以及包含动画数据的 **动画序列**。
-
+
## 最终结果
-现在您可以打开 **RecordedSequence** 资产,并开始像编辑普通关卡序列一样进行编辑。
+可打开 **RecordedSequence** 资源进行编辑,方法和普通关卡序列并无区别。下方即是我们录制的序列,我们可为其添加镜头和 [镜头切换](Engine/Sequencer/HowTo/TracksCameraCut) 轨迹,构成多个角度、音乐、效果,或需要添加的任意内容。甚至我们还能将此序列作为 [镜头轨迹](Engine/Sequencer/HowTo/TracksShot) 的一部分嵌入其他序列中。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -90,22 +88,28 @@ Related:Engine\Sequencer\ReferenceEditor\
360
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
-hR5zBjYO5Oc
+1nFX_bpWfy0
[/PARAMLITERAL]
[/OBJECT]
-以上是我们记录的序列,我们可以在其中添加摄像机和 [**镜头切换**](Engine/Sequencer/HowTo/TracksCameraCut) 轨道,以提供多个角度、音乐、效果或者我们所需的任何内容。
-我们甚至可以将此序列作为 [**镜头轨道**] (Engine/Sequencer/HowTo/TracksShot) 的一部分嵌入到另一个序列中。
+除录制游戏进程外,还可指定一个需要录制的 Actor,录制关卡编辑中的操作。
+[OBJECT:EmbeddedVideo]
+[PARAMLITERAL:width]
+640
+[/PARAMLITERAL]
+[PARAMLITERAL:height]
+360
+[/PARAMLITERAL]
+[PARAMLITERAL:videoid]
+fMzumqLk7IQ
+[/PARAMLITERAL]
+[/OBJECT]
+在上方的视频中,我们在关卡中放置了一个立方体,并指示 Sequence Recorder 对立方体进行录制。
+然后四处移动立方体,Sequence Recorder 将通过新建关卡序列中的关键帧捕捉输入的动作。
+回放关卡序列时,关卡序列中将创建一个新的立方体 Actor(作为可生成物),这是序列启动时为何存在第二个立方体的原因。
-
-
-
-
-
-
-
-
-
-
+[REGION:note]
+仅限可在关卡编辑进行录制时设置关键帧、进行捕捉和录制的属性。
+[/REGION]
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.INT.udn
index 7265e9e663fe..675d7bca26d4 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.INT.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.INT.udn
@@ -3,7 +3,7 @@ Title: Sequencer - How To's
Crumbs: %ROOT%, Engine, Engine\Sequencer
Description:A How To Guide for creating cinematic sequences with the Sequencer Editor.
Related: Engine\Sequencer
-version: 4.11
+version: 4.15
tags:Sequencer
@@ -27,6 +27,7 @@ Refer to the table below for more information and click each link to view its co
[](FANCY:Engine\Sequencer\HowTo\TracksEvent "%Engine\Sequencer\HowTo\TracksEvent:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksShot "%Engine\Sequencer\HowTo\TracksShot:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksCameraCut "%Engine\Sequencer\HowTo\TracksCameraCut:description%")
+[](FANCY:Engine\Sequencer\HowTo\TracksMaterialParameter "%Engine\Sequencer\HowTo\TracksMaterialParameter:description%")
[](FANCY:Engine\Sequencer\HowTo\CameraRigCrane "%Engine\Sequencer\HowTo\CameraRigCrane:description%")
[](FANCY:Engine\Sequencer\HowTo\CameraRigRail "%Engine\Sequencer\HowTo\CameraRigRail:description%")
[](FANCY:Engine\Sequencer\HowTo\CineCameraActors "%Engine\Sequencer\HowTo\CineCameraActors:description%")
@@ -39,6 +40,7 @@ Refer to the table below for more information and click each link to view its co
## Advanced
[REGION:wrapper transparent]
[](FANCY:Engine\Sequencer\HowTo\AnimateDynamicObjects "%Engine\Sequencer\HowTo\AnimateDynamicObjects:description%")
+[](FANCY:Engine\Sequencer\HowTo\ActorSequence "%Engine\Sequencer\HowTo\ActorSequence:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksSub "%Engine\Sequencer\HowTo\TracksSub:description%")
[](FANCY:Engine\Sequencer\HowTo\Spawnables "%Engine\Sequencer\HowTo\Spawnables:description%")
[](FANCY:Engine\Sequencer\HowTo\SequenceRecorder "%Engine\Sequencer\HowTo\SequenceRecorder:description%")
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.JPN.udn
index 2f64a0a02e3c..360728b75d2d 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.JPN.udn
@@ -1,10 +1,10 @@
-INTSourceChangelist:3348041
+INTSourceChangelist:3446912
Availability:Public
Title:シーケンサーの操作ガイド
Crumbs: %ROOT%, Engine, Engine\Sequencer
Description:シーケンス エディタでシネマティックス シーケンスを作成するための操作ガイド
Related:Engine\Sequencer
-version:4.11
+version:4.15
tags:Sequencer
@@ -28,6 +28,7 @@ tags:Sequencer
[](FANCY:Engine\Sequencer\HowTo\TracksEvent "%Engine\Sequencer\HowTo\TracksEvent:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksShot "%Engine\Sequencer\HowTo\TracksShot:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksCameraCut "%Engine\Sequencer\HowTo\TracksCameraCut:description%")
+[](FANCY:Engine\Sequencer\HowTo\TracksMaterialParameter "%Engine\Sequencer\HowTo\TracksMaterialParameter:description%")
[](FANCY:Engine\Sequencer\HowTo\CameraRigCrane "%Engine\Sequencer\HowTo\CameraRigCrane:description%")
[](FANCY:Engine\Sequencer\HowTo\CameraRigRail "%Engine\Sequencer\HowTo\CameraRigRail:description%")
[](FANCY:Engine\Sequencer\HowTo\CineCameraActors "%Engine\Sequencer\HowTo\CineCameraActors:description%")
@@ -40,6 +41,7 @@ tags:Sequencer
## Advanced
[REGION:wrapper transparent]
[](FANCY:Engine\Sequencer\HowTo\AnimateDynamicObjects "%Engine\Sequencer\HowTo\AnimateDynamicObjects:description%")
+[](FANCY:Engine\Sequencer\HowTo\ActorSequence "%Engine\Sequencer\HowTo\ActorSequence:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksSub "%Engine\Sequencer\HowTo\TracksSub:description%")
[](FANCY:Engine\Sequencer\HowTo\Spawnables "%Engine\Sequencer\HowTo\Spawnables:description%")
[](FANCY:Engine\Sequencer\HowTo\SequenceRecorder "%Engine\Sequencer\HowTo\SequenceRecorder:description%")
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.KOR.udn
index 8df622a8e38c..345febe1a363 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/SequencerHowTo.KOR.udn
@@ -1,10 +1,10 @@
-INTSourceChangelist:3348041
+INTSourceChangelist:3446912
Availability: Public
Title: 시퀀서 - 안내서
Crumbs: %ROOT%, Engine, Engine\Sequencer
Description:시퀀서 에디터로 시네마틱 시퀀스를 제작하는 법에 대한 안내서입니다.
Related: Engine\Sequencer
-version: 4.11
+version: 4.15
tags:Sequencer
@@ -28,6 +28,7 @@ tags:Sequencer
[](FANCY:Engine\Sequencer\HowTo\TracksEvent "%Engine\Sequencer\HowTo\TracksEvent:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksShot "%Engine\Sequencer\HowTo\TracksShot:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksCameraCut "%Engine\Sequencer\HowTo\TracksCameraCut:description%")
+[](FANCY:Engine\Sequencer\HowTo\TracksMaterialParameter "%Engine\Sequencer\HowTo\TracksMaterialParameter:description%")
[](FANCY:Engine\Sequencer\HowTo\CameraRigCrane "%Engine\Sequencer\HowTo\CameraRigCrane:description%")
[](FANCY:Engine\Sequencer\HowTo\CameraRigRail "%Engine\Sequencer\HowTo\CameraRigRail:description%")
[](FANCY:Engine\Sequencer\HowTo\CineCameraActors "%Engine\Sequencer\HowTo\CineCameraActors:description%")
@@ -40,6 +41,7 @@ tags:Sequencer
## 고급
[REGION:wrapper transparent]
[](FANCY:Engine\Sequencer\HowTo\AnimateDynamicObjects "%Engine\Sequencer\HowTo\AnimateDynamicObjects:description%")
+[](FANCY:Engine\Sequencer\HowTo\ActorSequence "%Engine\Sequencer\HowTo\ActorSequence:description%")
[](FANCY:Engine\Sequencer\HowTo\TracksSub "%Engine\Sequencer\HowTo\TracksSub:description%")
[](FANCY:Engine\Sequencer\HowTo\Spawnables "%Engine\Sequencer\HowTo\Spawnables:description%")
[](FANCY:Engine\Sequencer\HowTo\SequenceRecorder "%Engine\Sequencer\HowTo\SequenceRecorder:description%")
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.INT.udn
index bba19da06b7c..42f193430133 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.INT.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.INT.udn
@@ -10,82 +10,95 @@ checkpoint: editorqs
Related: Engine/Sequencer/Overview
Related: Engine\Sequencer\ReferenceEditor\
tags:Sequencer
+type:how-to
-Whether you are looking to score your cinematic with a musical track or want to add sound effects such as impact sounds, voice overs, or others, you'll need to do so with an **Audio Track** inside Sequencer.
-Sequencer's Audio Track also allows you to adjust the Volume or Pitch of your audio assets at any point during your cinematic through keyframed value changes.
-In this how-to, we add a music track to a sample scene and fade it in over time as well as adjust the pitch during the cinematic.
+Whether you are looking to score your cinematic with a musical track, or whether you want to add sound effects (such as impact sounds and voice overs), you'll need to do it with an **Audio Track** inside of **Sequencer**.
+Sequencer's Audio Track also enables you to adjust the Volume or Pitch of your audio assets at any point during your cinematic with keyframed value changes.
+
+In this how-to guide, you'll add a music track to a sample scene and fade it in over time (as well as adjust the pitch during the cinematic).
+
+
## Steps
[REGION:note]
-For this how-to, we are using the **Blueprint Third Person Template** with **Starter Content** enabled.
+For this how-to guide, we are using the **Blueprint Third Person Template** with **Starter Content** enabled.
[/REGION]
-1. From the Main Tool Bar click **Cinematics** and **Add Level Sequence**.
+1. From the Main Tool Bar, click **Cinematics** and **Add Level Sequence**.

-1. In the **Save Asset As** window, choose a save location and save name then click **Save**.
+1. In the **Save Asset As** window, choose a save location and save name, then click **Save**.

-1. In the **Level Sequence**, click the **Add** button then select **Audio Track**.
+1. In the **Level Sequence**, click the **Add** button, and then select **Audio Track**.

-1. On the **Audio Track**, click the **+** button then search for and add the **Starter_Music_Cue** asset.
+1. On the **Audio Track**, click the **+** button, then search for and add the **Starter_Music_Cue** asset.

- You can click the **Expand** icon to expand out and see your audio sub-tracks.
+ * You can click the **Expand** icon to expand out and see your audio sub-tracks.
- 
+ 
- You can add additional sub-tracks to the Audio Track by clicking the **+** button and can drag them along the timeline to reposition them where you want in your sequence.
+ * You can add additional sub-tracks to the Audio Track by clicking the **+** button. You can then drag the additional sub-tracks along the timeline to reposition them where you want in your sequence.
- 
+ 
1. Expand the **Starter_Music_Cue** track, then change the **Volume** and **Pitch Multiplier** values to **0.0** and add keys for both.

- This will turn the Volume to off and the Pitch to low.
+ [REGION:note]
+ This will turn the Volume to off, and set the Pitch to low.
+ [/REGION]
-1. Scrub the Timeline marker ahead to frame **50**, change the **Volume** and **Pitch Multiplier** values to **1.0** and add keys for both.
+1. Scrub the Timeline marker (ahead) to frame **50**, change the **Volume** and **Pitch Multiplier** values to **1.0**, and then add keys for both.

- This will turn the Volume up to its default value (on) and the Pitch to its default value (not affecting the sound asset).
+ [REGION:note]
+ This will turn the Volume up to its default value (on), and the Pitch to its default value (not affecting the sound asset).
+ [/REGION]
-1. You can delete sub-tracks within the Audio Track by clicking on them in the Timeline window, then pressing **Delete** or **Right-click** and **Delete**.
+1. You can delete sub-tracks within the Audio Track by clicking on them in the Timeline window, and then pressing **Delete** (or **Right-click** and **Delete**).

-1. Return the Timeline to **0** then click the **Play** button inside Sequencer to play your sequence.
+1. Return the Timeline to **0**, then click the **Play** button inside of Sequencer to play your sequence.

-
## End Result
-When you play the Level Sequence, you will hear the audio fade in and the pitch adjusts as the sequence begins.
+When you play the Level Sequence, you will hear the audio fade in, with the pitch adjusting as the sequence begins.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-Tt_fKZnk8I4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Tt_fKZnk8I4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-While this example is fairly simplified, you can add more keyframes to fade in/out audio at any point during your sequence or adjust the pitch of audio assets as desired.
-Audio Tracks support either **Sound Cue** or **Sound Wave** assets and can be added by dragging-and-dropping from the **Content Browser** into a Level Sequence or by adding through the **Add** option of an Audio Track.
-
+
+While this example is fairly simple, you can add more keyframes to fade in (or fade out) audio at any point during your sequence, or you can adjust the pitch of audio assets as you desire.
+Audio Tracks support either **Sound Cue** or **Sound Wave** assets, which can be added by dragging-and-dropping from the **Content Browser** into a Level Sequence, or by adding through the **Add** option of an Audio Track.
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.JPN.udn
index 9b756bb00769..adbeeefc2bec 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3266245
+INTSourceChangelist:3439744
Availability:Public
Title:オーディオ トラックで作業する
Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
@@ -11,11 +11,15 @@ checkpoint: editorqs
Related:Engine/Sequencer/Overview
Related:Engine\Sequencer\ReferenceEditor\
tags:Sequencer
+type:how-to
-音楽トラックでシネマティックスに音楽を加えたり、衝撃音などのサウンド エフェクト、ボイス オーバーなどを追加したい場合は、シーケンサー内の **オーディオ トラック** を使用します。
+
+音楽トラックでシネマティックスに音楽を加えたり、サウンド エフェクト (衝撃音やボイス オーバーなど) を追加したい場合は、シーケンサー内の **オーディオ トラック** を使用します。
シーケンサーのオーディオ トラックでは、Audio アセットのボリュームやピッチをシネマティックスのどの時点であってもキーフレーム化した値を変更することで調整することができます。
-この操作ガイドでは、サンプル シーンに音楽トラックを追加し、時間の経過とともにフェードインさせたり、シネマティックス中にピッチを調整する方法を説明します。
+この操作ガイドでは、サンプル シーンに音楽トラックを追加し、時間の経過とともにフェードインさせる方法を説明します (シネマティックス中にピッチを調整する方法も説明します)。
+
+
## ステップ
@@ -23,7 +27,7 @@ tags:Sequencer
ここでは **Starter Content Enabled (スターター コンテンツを有効にした状態)** で **Blueprint Third Person Template** を使います。
[/REGION]
-1. メイン ツールバーから **[Cinematics (シネマティックス)]** をクリックし、[Add Level Sequence (レベル シーケンスを追加)] をクリックします。
+1. メイン ツールバーから **[Cinematics (シネマティックス)]** をクリックし、**[Add Level Sequence (レベル シーケンスを追加)]** をクリックします。

@@ -39,27 +43,31 @@ tags:Sequencer

- **[Expand]** アイコンをクリックして、展開してオーディオ サブトラックを見ることができます。
+ * **[Expand]** アイコンをクリックして、展開してオーディオ サブトラックを見ることができます。
- 
+ 
- **[+]** ボタンをクリックし、サブトラックをオーディオ トラックに追加することができます。それをタイムラインに沿ってドラッグして、シーケンス内で必要とする場所に再配置することができます。
+ * **[+]** ボタンをクリックし、サブトラックをオーディオ トラックに追加することができます。それをタイムラインに沿ってドラッグして、シーケンス内で必要とする場所に再配置することができます。
- 
+ 
1. **Starter_Music_Cue** トラックを拡げます。次に、**[Volume]** と **[Pitch Multiplier]** の値を **0.0** に変更し、両方にキーを追加します。

+ [REGION:note]
これで、ボリュームがオフになり、ピッチが低になります。
+ [/REGION]
-1. タイムライン マーカーを **50** までスクラブします。**[Volume]** と **[Pitch Multiplier]** の値を **1.0** に変更し、両方に対してキーを追加します。
+1. タイムライン マーカーを **50** までスクラブします。**[Volume]** と **[Pitch Multiplier]** の値を **1.0** に変更してから、両方に対してキーを追加します。

+ [REGION:note]
これでボリュームがデフォルト値まで上がり、ピッチはそのデフォルト値になります (Sound アセットには影響を与えません)。
+ [/REGION]
-1. オーディオ トラック内のサブトラックを削除するには、Timeline ウィンドウ内でサブトラックをクリックして、 **[Delete]** を押すか、**右クリック** して **[Delete]** を選ぶと削除することができます。
+1. オーディオ トラック内のサブトラックを削除するには、Timeline ウィンドウ内でサブトラックをクリックして、 **[Delete]** を押す (または **右クリック** して **[Delete]** を選ぶ) と削除することができます。

@@ -67,23 +75,29 @@ tags:Sequencer

-
## 最終結果
レベル シーケンスを再生する場合、シーケンスが開始するとオーディオがフェードインし、ピッチが調整されます。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-Tt_fKZnk8I4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Tt_fKZnk8I4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
+
この例はかなり単純化されていますが、さらに多くのキーフレームを追加して、シーケンスのどの時点でもオーディオをフェードイン、フェードアウトさせたり、必要に応じて Audio アセットのピッチを調整することができます。
オーディオ トラックは、**Sound Cue** または **Sound Wave** のいずれかのアセットをサポートします。これは、**コンテンツ ブラウザ** からレベル シーケンスにドラッグ&ドロップするか、またはオーディオ トラックの **[Add (追加)]** オプションから追加することができます。
@@ -111,6 +125,5 @@ Tt_fKZnk8I4
-
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.KOR.udn
index bf08d34fe778..f6f00fe0928b 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksAudio/Audio.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3266245
+INTSourceChangelist:3439744
Availability: Public
Title:오디오 트랙 작업
Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
@@ -11,12 +11,16 @@ checkpoint: editorqs
Related: Engine/Sequencer/Overview
Related: Engine\Sequencer\ReferenceEditor\
tags:Sequencer
+type:how-to
-시네마틱에 배경 음악을 곁들이거나, 음성 더빙 등의 음향 효과를 추가하고자 하는 경우, 시퀀서에서 **Audio Track** (오디오 트랙)을 사용하면 됩니다.
+
+시네마틱에 배경 음악을 곁들이거나, (충격음 및 음성 더빙 등의) 음향 효과를 추가하고자 하는 경우, **시퀀서** 에서 **Audio Track** (오디오 트랙)을 사용하면 됩니다.
시퀀서의 오디오 트랙에서는 키프레임 설정된 값 변화를 통해 시네마틱 도중 언제든 오디오 애셋의 볼륨 및 피치 값을 조절할 수도 있습니다.
여기서는 샘플 씬에 뮤직 트랙을 추가하고 서서히 페이드 인 시키는 것은 물론 시네마틱 도중 피치 값을 조절해 보겠습니다.
+
+
## 단계
[REGION:note]
@@ -39,11 +43,11 @@ tags:Sequencer

- **Expand** (확장) 아이콘을 클릭하여 오디오 서브 트랙을 펼쳐 확인할 수 있습니다.
+ * **Expand** (확장) 아이콘을 클릭하여 오디오 서브 트랙을 펼쳐 확인할 수 있습니다.

- 오디오 트랙에서 **+** 버튼을 눌러 서브 트랙을 추가한 뒤 타임라인상에서 끌어 보며 시퀀스 내 위치를 재조정할 수 있습니다.
+ * 오디오 트랙에서 **+** 버튼을 눌러 서브 트랙을 추가한 뒤 타임라인상에서 끌어 보며 시퀀스 내 위치를 재조정할 수 있습니다.

@@ -51,13 +55,17 @@ tags:Sequencer

+ [REGION:note]
그러면 볼륨을 끄고 피치를 낮춥니다.
+ [/REGION]
-1. 타임라인 마커를 **50** 프레임 앞으로 문질러 이동시킨 뒤, **볼륨** 과 **피치 배수** 값을 **1.0** 으로 변경하고 둘에 대한 키를 추가합니다.
+1. 타임라인 마커를 **50** 프레임(앞)으로 문질러 이동시킨 뒤, **볼륨** 과 **피치 배수** 값을 **1.0** 으로 변경하고 둘에 대한 키를 추가합니다.

+ [REGION:note]
그러면 볼륨을 기본값으로 높이고 (켜고) 피치를 기본값으로 (사운드 애셋에 영향을 주지 않도록) 되돌립니다.
+ [/REGION]
1. 오디오 트랙 내 서브 트랙의 삭제는 타임라인 창에서 서브 트랙을 클릭한 뒤 **Delete** 키 또는 **우클릭** 후 **Delete** (삭제)를 선택하면 됩니다.
@@ -67,23 +75,29 @@ tags:Sequencer

-
## 최종 결과
레벨 시퀀스를 재생하면, 시퀀스가 시작되면서 오디오가 페이드 인 되고 피치가 조정되는 것이 들릴 것입니다.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-Tt_fKZnk8I4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Tt_fKZnk8I4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
+
이 예제는 꽤나 단순하지만, 키프레임을 추가하여 시퀀스 도중 언제든 원하는 대로 오디오 페이드 인/아웃 또는 피치 조정이 가능합니다.
오디오 트랙은 **사운드 큐** 또는 **사운드 웨이브** 애셋을 지원하며, **콘텐츠 브라우저** 에서 끌어 레벨 시퀀스에 놓거나, 오디오 트랙의 **추가** 옵션을 통해 추가시킬 수 있습니다.
@@ -111,6 +125,5 @@ Tt_fKZnk8I4
-
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.CHN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.CHN.udn
index ff3157642d46..43c6b747f52d 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.CHN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.CHN.udn
@@ -1,116 +1,145 @@
-INTSourceChangelist:2998420
+INTSourceChangelist:3439709
Availability:Public
-Title:调用定制事件
-Crumbs:%ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
-Description:向您说明如何使用事件轨道在蓝图中调用定制事件和脚本。
-Version:4.12
+Title:使用自定义事件和结构体
+Crumbs:%ROOT%
+Description:说明如何使用事件轨迹在蓝图中调用带自定义结构体的自定义事件进行使用。
+Version:4.15
SkillLevel:Intermediate
parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
Related:Engine/Sequencer/Overview
-Related:Engine\Sequencer\ReferenceEditor\
+Related:Engine/Sequencer/ReferenceEditor
+tags:Sequencer
+type:how-to
-**事件轨道** 可用于在 [**关卡蓝图**](Engine/Blueprints/UserGuide/Types/LevelBlueprint) 中调用 [**定制事件**](Engine/Blueprints/UserGuide/Events/Custom) 和触发 [**蓝图脚本**](Engine/Blueprints)。
-一旦调用定制事件,还会执行所有与其关联的脚本,它们可根据您的需求用于任意数量的场景。
+**事件轨迹** 可用于调用 [自定义事件](Engine/Blueprints/UserGuide/Events/Custom),它能在 [关卡蓝图](Engine/Blueprints/UserGuide/Types/LevelBlueprint) 中发射 [蓝图脚本](Engine/Blueprints)。调用自定义事件后,为其附加的任意脚本也将被执行,可基于需求用于各种情况。使用事件轨迹并调用自定义事件时,也可传递您自己的自定义 [结构体](Engine/Blueprints/UserGuide/Variables/Structs),用于更新其中包含的变量。需要在关卡序列播放中更新其他变量时,它将十分实用。
-在本示例中我们将执行一个事件,它将用于在关卡中激活粒子效果。
+在此例中,我们将使用事件轨迹调用一个自定义结构体的自定义事件,用于在播放序列时移动关卡中的物体。
+
+ 
+
+在以下指南中,按下键后关卡序列将播放,而每次皆会执行向上移动立方体的事件。
## 步骤
[REGION:note]
-在本操作指南中,我们使用 **Blueprint Third Person Template** 项目,并启用了 **起步内容**。
+在此指南中,我们使用的是启用了 **Starter Content** 的 **Blueprint Third Person Template** 项目。
[/REGION]
-1. 在主工具栏中,单击 **过场动画(Cinematics)**按钮,然后单击 **添加关卡序列(Add Level Sequence)**。
+1. 在 **Content Browser** 的 **Content/StarterContent/Shapes** 中,将任意网格体拖入关卡。

- 当系统提示时选择一个保存位置并给关卡序列起个名称。
+ 将网格体放置在关卡中任意位置。
-1. 在 Sequencer,中单击 **添加(Add)**按钮,并选择添加 **事件轨道(Event Track)**。
+1. 在网格体的 **Details** 面板中将其设为 **Movable**。
+
+ 
+
+ 进行此设置后便可在游戏进程中移动网格体。
+
+1. 点击 **Add New** 按钮。然后在 **Blueprints** 下选中 **Structure** 选项。

-1. 在该 **事件轨道** 上,将时间轴标记移动到 **75**,然后单击 **+** 号添加一个键。
+1. 输入名称 **MyStruct**,然后打开资源并添加一个名为 **MoveCube** 的 **Vector** 变量。

-1. **右键单击** 该键,然后在 **属性(Properties)**下面为 **值(Value)**输入名称 **MyEvent**。
+ [REGION:note]
+ 此处的变量命名非常重要,因为它们将在以后起到参考指示的作用。
+ [/REGION]
+
+1. 通过 **Cinematics** 按钮新增一个名为 **Master** 的 **关卡序列** 到关卡,然后在 **Sequencer** 中添加一个 **事件轨迹**。

- 您在此处提供的名称是您创建要调用的 **定制事件** 时 **必须** 使用的名称。
-
-1. 在 **内容浏览器** 中的 **StarterContent/Particles** 下,将 **P_Explosion** 拖动到关卡中。
+1. 将时间轴移至第 **5** 帧并添加一个键,然后右键点击键将事件命名为 **LiftCube**。然后指定 **MyStruct** 并将 **Z 轴** 值设为 **100**。

-1. 选择 **P_Explosion** 资产后,在 **细节(Details)**面板中取消选中 **自动激活(Auto Activate)**选项。
+ 到达序列中的这个关键帧时,我们将把网格体沿 Z 轴上移 100 个单位。
+
+1. 移动时间轴到第 **10** 帧,然后按下 **]** 键让序列在第 10 帧处结束。

- 这将确保粒子效果不在关卡启动时播放。
-
-1. 在仍然选中 **P_Explosion** 资产的情况下,在工具栏中单击 **蓝图(Blueprints)**按钮,然后选择 **打开关卡蓝图(Open Level Blueprint)**。
+1. 选中添加的网格体(以及关卡中的关卡序列),然后点击工具栏中的 **Blueprints** 按钮,最后选中 **Open Level Blueprint**。

-1. 在 **关卡蓝图(Level Blueprint)**中,**右键单击** 并选择 **创建对 P_Explosion 的引用(Create a Reference to P_Explosion)**。
+1. 在 **关卡蓝图** 中点击右键并搜索 **Reference**,然后选择 **Create References to 2 selected Actors**。

-1. 在图中再次 **右键单击**,然后就搜索并添加一个 **定制事件(Custom Event)**节点,将它命名为 **MyEvent**(与 **第 4 步** 中相同)。
+1. 在图表中点击右键并添加一个 **1** 键盘事件,然后从 **Master** 关卡序列连出引线,搜索并添加 **Set Playback Position** 节点。

-
- [REGION:note]
- 这必须是您在步骤 4 中输入的文本值。您可在节点上按 **F2** 键,以将其重命名。
- [/REGION]
-1. **左键单击** **P_Explosion** 节点并拖出,然后搜索并添加 **激活 (ParticleSystemComponent)(Activate (ParticleSystemComponent))**节点。
+ [REGION:note]
+ 它将用于开始播放时、发出播放函数调用前重设序列。
+ [/REGION]
+
+1. 从添加的 **Sequence Player** 节点连出引线,然后使用 **Play** 节点,按下图所示进行连接。

-1. 将 **定制事件** 节点连接到 **激活** 节点,如下图所示。
+1. 在图表中点击右键并创建一个名为 **LiftCube** 的 **自定义事件**。

- 调用该事件时,它将激活(开启)我们放在关卡中的粒子效果。
+ [REGION:warning]
+ 自定义事件的命名必须和在 **Event Name** 下为 Sequencer 中的键指定的命名相同(否则它将无法被调用)。
+ [/REGION]
-1. 在主编辑器窗口中,从 **全局大纲(World Outliner)**选择您的关卡序列,然后在 **细节(Details)**中启用 **自动播放(Auto Play)**。
+1. 在自定义事件的 **Details** 面板中,点击 **+** 按钮添加一个输入,将其命名设为 **MoveCube**、变量类型设为 **Vector**。

- 当我们在此关卡中播放时,此关卡序列将自动播放并触发效果。
+ [REGION:warning]
+ 如未满足以下条件,则事件不会被调用:
+ * 输入命名必须和结构体中使用的命名相同。
+ * 输入的数字必须和自定义结构体中定义的变量数相同。
+
+ 例如,如结构体中有 2 个变量,那么自定义事件必须拥有 2 个带正确变量名和类型的输入。
+ [/REGION]
+
+1. 从网格体参考连出引线,搜索并使用 **AddActorLocalOffset** 节点。
-1. 在主工具栏中单击 **播放(Play)**按钮在编辑器中播放。
+ 
+
+1. 按下图所示,将 **MoveCube** 矢量引脚连至 **Delta Location** 引脚、**LiftCube** 可执行引脚连至 **AddActorLocalOffset** 节点。
+
+ 
+
+1. 在主工具栏中点击 **Play** 按钮进入 Play in Editor(PIE)模式。
## 最终结果
-在编辑器中播放几秒后,爆炸效果就会激活。
+在编辑器中进行游戏时,每次按下 **1** 键立方体都会沿 **Z** 轴移动。
+
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-krFTHenh9zw
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ wlLcUr8BXvY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-在上面的视频中,我们还展示了在 Sequencer 中单击 **播放(Play)**按钮时不会执行脚本。
-在播放关卡序列时,您无法预览在游戏运行中从事件轨道调用脚本事件。
-
-
-
-
-
-
+在此例中我们并未指定摄像机查看影片,而是使用 Sequencer 和蓝图执行已编辑脚本的序列。在项目中,带自定义事件和自定义结构体的事件轨迹可用于更新过场动画中的玩家信息(如玩家体力增加、获得新武器,或用户选择的其他游戏性相关的效果)。
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.INT.udn
index 24c004696371..34d37cb63d0b 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.INT.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.INT.udn
@@ -1,6 +1,6 @@
Availability: Public
Title:Using Custom Events and Structs
-Crumbs:
+Crumbs:%ROOT%
Description:Shows how you can use the Event Track to call Custom Events with Custom Structs for use in Blueprint.
Version: 4.15
SkillLevel: Intermediate
@@ -10,47 +10,38 @@ checkpoint: editorqs
Related: Engine/Sequencer/Overview
Related: Engine/Sequencer/ReferenceEditor
tags:Sequencer
+type:how-to
-The **Event Track** can be used to call [Custom Events](Engine/Blueprints/UserGuide/Events/Custom) and fire off [Blueprint Script](Engine/Blueprints) inside the [Level Blueprint](Engine/Blueprints/UserGuide/Types/LevelBlueprint).
-Once the Custom Event is called, any script attached to it will also be executed and can be used for any number of scenarios based on your needs.
-When using the Event Track and calling a Custom Event, you can also pass through your own Custom [Struct](Engine/Blueprints/UserGuide/Variables/Structs) which can be used to update the variables contained within.
+The **Event Track** can be used to call [Custom Events](Engine/Blueprints/UserGuide/Events/Custom), which fire off [Blueprint Scripts](Engine/Blueprints) inside of [Level Blueprints](Engine/Blueprints/UserGuide/Types/LevelBlueprint).
+When the Custom Event is called, any script attached to it will also be executed and can be used for any number of scenarios based on your needs.
+When using the Event Track and calling a Custom Event, you can also pass your own Custom [Struct](Engine/Blueprints/UserGuide/Variables/Structs), which can be used to update the variables contained therein.
This can be useful in situations where you want to update other variables during the playback of a level sequence.
In this example, we will use the Event Track to call a Custom Event with a Custom Struct that is used to move an object in the level when the sequence plays.
-[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-wlLcUr8BXvY
-[/PARAMLITERAL]
-[/OBJECT]
+ 
-In the example above, when we press a key, the level sequence plays and our event to move the cube upwards is executed each time.
+In the following how-to guide, when we press a key, the level sequence plays, and our event to move the cube upwards is executed each time.
## Steps
[REGION:note]
-For this how-to, we are using the **Blueprint Third Person Template** project with **Starter Content** enabled.
+For this how-to guide, we are using the **Blueprint Third Person Template** project with **Starter Content** enabled.
[/REGION]
1. From the **Content Browser** under the **Content/StarterContent/Shapes** folder, drag any mesh into the level.

- Position the mesh anywhere inside the level.
+ Position the mesh anywhere inside of the level.
1. In the **Details** panel for your mesh, set the mesh to **Movable**.

- This will allow us to move the mesh during gameplay.
+ This will enable us to move the mesh during gameplay.
-1. Click the **Add New** button, then under **Blueprints**, select the **Structure** option.
+1. Click the **Add New** button. Then, under **Blueprints**, select the **Structure** option.

@@ -58,13 +49,15 @@ For this how-to, we are using the **Blueprint Third Person Template** project wi

- Naming of your variables is important here as these names will need to be used when you want to reference them later.
+ [REGION:note]
+ The naming of your variables is important here because these names will need to be used when you want to reference them later.
+ [/REGION]
-1. Add a new **Level Sequence** from the **Cinematics** button called **Master** to the level, then inside **Sequencer** add an **Event Track**.
+1. Add a new **Level Sequence** from the **Cinematics** button called **Master** to the level, then inside **Sequencer**, add an **Event Track**.

-1. Move the timeline to frame **5** and add a key, then **Right-click** the key and name the event **LiftCube**, assign **MyStruct** and set the **Z** value to **100**.
+1. Move the timeline to frame **5** and add a key, then right-click the key and name the event **LiftCube**. Now, assign **MyStruct** and set the **Z** value to **100**.

@@ -74,78 +67,83 @@ For this how-to, we are using the **Blueprint Third Person Template** project wi

-1. Select your mesh that you added and the Level Sequence in the level, then click the **Blueprints** button from the toolbar and select **Open Level Blueprint**.
+1. Select the mesh that you added (along with the Level Sequence in the level), and then click the **Blueprints** button from the toolbar, ultimately selecting **Open Level Blueprint**.

-1. In the **Level Blueprint**, **Right-click** and search for **Reference** then select **Create Reference to 2 selected Actors**.
+1. In the **Level Blueprint**, right-click and search for **Reference**, then select **Create References to 2 selected Actors**.

-1. **Right-click** in the graph and add a **1** Keyboard Event, then drag off your **Master** Level Sequence and search for and add the **Set Playback Position** node.
+1. Right-click in the graph and add a **1** Keyboard Event, then drag off your **Master** Level Sequence, searching for and adding the **Set Playback Position** node.

- This will be used to reset our sequence whenever we start to play it before we actually issue a play function call.
+ [REGION:note]
+ This will be used to reset your sequence whenever you start to play it before issuing a play function call.
+ [/REGION]
-1. Drag off the **Sequence Player** node that is added and use the **Play** node and connect as shown below.
+1. Drag off the **Sequence Player** node being added, and use the **Play** node, connecting as shown below.

-1. **Right-click** in the graph and create a **Custom Event** called **LiftCube**.
+1. Right-click in the graph and create a **Custom Event** called **LiftCube**.

[REGION:warning]
- Your Custom Event name must be the same name that is specified under **Event Name** for your key in Sequencer or it will not get called.
+ Your Custom Event name must be the same name that is specified under **Event Name** for your key in Sequencer (or it will not get called).
[/REGION]
-1. In the **Details** panel for the Custom Event, click the **+** button to add an input and name it **MoveCube** with the variable type of **Vector**.
+1. In the **Details** panel for the Custom Event, click the **+** button to add an input, naming it **MoveCube** with the variable type of **Vector**.

[REGION:warning]
- Your Input names must be the same names that are used in your Struct or the event will not get called.
- Also, the number of inputs must match the number of variables defined in your custom struct or the event will not get called.
- For example, if you struct has 2 variables in it, your Custom Event must have 2 inputs with the correct variable names and types.
+ The event will not be called if the following conditions aren't met:
+ * The Input names must be the same names that are used in your Struct.
+ * The number of inputs must match the number of variables defined in your custom struct.
+
+ For example, if your struct has 2 variables in it, your Custom Event must have 2 inputs with the correct variable names and types.
[/REGION]
-1. Drag off your mesh reference and search for and use the **AddActorLocalOffset** node.
+1. Drag off your mesh reference, search for and use the **AddActorLocalOffset** node.

-1. Connect the **MoveCube** vector pin to the **Delta Location** pin and the **LiftCube** executable to the **AddActorLocalOffset** node as shown below.
+1. Connect the **MoveCube** vector pin to the **Delta Location** pin, and the **LiftCube** executable pin to the **AddActorLocalOffset** node as shown below.

-1. Click the **Play** button from the Main Toolbar to play in the editor.
+1. Click the **Play** button from the Main Toolbar to enter Play in Editor (PIE) mode.
## End Result
-When playing in the editor, each time you press the **1** key, the cube will move up along the **Z** axis.
+When playing your game in the editor, each time you press the **1** key, the cube will move along the **Z** axis.
+
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-wlLcUr8BXvY
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ wlLcUr8BXvY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-In this example we are not assigning a camera to view our cinematic from but instead are using Sequencer and Blueprint to perform scripted sequences.
-In your projects, an Event Track with a Custom Event and Custom Struct can be used to update player information during a cutscene (such as the player receiving a health increase, new weapon, or other gameplay related effects of your choosing).
-
-
-
-
-
-
-
+In this example, we are not assigning a camera to view our cinematic from but instead are using Sequencer and Blueprint to perform scripted sequences.
+In your projects, an Event Track with a Custom Event and Custom Struct can be used to update player information during a cutscene (such as the player
+receiving a health increase, new weapon, or other gameplay related effects of your choosing).
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.JPN.udn
index 7a44948bca55..68a46a6f7464 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3340363
+INTSourceChangelist:3439709
Availability:Public
Title:カスタム イベントとカスタム構造体を使用する
-Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Crumbs:%ROOT%
Description:イベント トラックを使ってブループリントで使用するためにカスタム構造体を持ったカスタム イベントを呼び出す方法を説明します。
Version:4.15
SkillLevel:Intermediate
@@ -9,34 +9,25 @@ parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
Related:Engine/Sequencer/Overview
-Related:Engine\Sequencer\ReferenceEditor\
+Related:Engine/Sequencer/ReferenceEditor
tags:Sequencer
+type:how-to
-**イベント トラック** を使用して [**カスタム イベント**](Engine/Blueprints/UserGuide/Events/Custom) を呼び出し、[**レベル ブループリント**](Engine/Blueprints/UserGuide/Types/LevelBlueprint) 内で [**ブループリント スクリプト**] (Engine/Blueprints) を実行します。
+**イベント トラック** を使って [カスタム イベント](Engine/Blueprints/UserGuide/Events/Custom) を呼び出すことができます。カスタム イベントは [Level ブループリント](Engine/Blueprints/UserGuide/Types/LevelBlueprint) 内の [ブループリント スクリプト](Engine/Blueprints) を実行します。
カスタム イベントが呼び出されると、それにアタッチされたスクリプトも実行され、ニーズに応じて任意の数のシナリオで使用することができます。
-イベント トラックを使用してカスタム イベントを呼び出す場合、その中の変数を更新するために使うカスタム [構造体](Engine/Blueprints/UserGuide/Variables/Structs) もパススルーすることができます。
+イベント トラックを使用してカスタム イベントを呼び出す場合、その中の変数を更新するために使うカスタム [構造体](Engine/Blueprints/UserGuide/Variables/Structs) も渡すことができます。
これはレベル シーケンスの再生中に他の変数を更新するような場合に便利です。
この例では、イベント トラックを使ってカスタム構造体を持つカスタム イベントを呼び出します。これは、シーケンス再生時にレベル内でオブジェクトを動かすために使用します。
-[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-wlLcUr8BXvY
-[/PARAMLITERAL]
-[/OBJECT]
+ 
-上の例では、キーを押すと、レベル シーケンスが再生し、キューブを上方向に動かすイベントが毎回実行されます。
+上の操作ガイドでは、キーを押すと、レベル シーケンスが再生し、キューブを上方向に動かすイベントが毎回実行されます。
## ステップ
[REGION:note]
-ここでは **Starter Content Enabled (スターター コンテンツを有効にした状態)** で **Blueprint Third Person Template** プロジェクトを使います。
+ここでは **Starter Content** を有効にした状態で **Blueprint Third Person Template** を使います。
[/REGION]
1. **コンテンツ ブラウザ** の、**Content/StarterContent/Shapes** フォルダで、任意のメッシュをレベルにドラッグします。
@@ -51,7 +42,7 @@ wlLcUr8BXvY
これで、ゲームプレイ中にメッシュをお好きな位置に動かすことができます。
-1. **[Add New (新規追加)]** ボタンをクリックしたら **[Blueprints]** で **[Structure]** オプションを選択します。
+1. **[Add New]** ボタンをクリックします。**[Blueprints]** で **[Structure]** オプションを選択します。

@@ -59,13 +50,15 @@ wlLcUr8BXvY

+ [REGION:note]
変数の命名は重要です。後で参照する場合、こうした名前を使うことになるからです。
+ [/REGION]
1. **[Cinematics]** ボタンから **Master** という新規 **レベル シーケンス** をレベルに追加します。**シーケンサー** 内で、**イベント トラック** を追加します。

-1. タイムラインをフレーム **5** まで動かし、キーを追加します。次に、 そのキーを **右クリック** し、イベントに **LiftCube** と名前を付け、 **MyStruct** を割り当て、 **Z** 値を **100** に設定します。
+1. タイムラインをフレーム **5** まで動かし、キーを追加します。次に、 そのキーを右クリック し、イベントに **LiftCube** と名前を付けます。**MyStruct** を割り当て、 **Z** 値を **100** に設定します。

@@ -75,30 +68,32 @@ wlLcUr8BXvY

-1. 追加したメッシュとレベル シーケンスをレベルで選択し、ツールバーから **[Blueprints]** ボタンをクリックして、**[Open Level Blueprint]** をクリックします。
+1. 追加したメッシュを (レベルのレベル シーケンスと共に) 選択し、ツールバーから **[Blueprints]** ボタンをクリックして、**[Open Level Blueprint]** をクリックします。

-1. **Level ブループリント** で、**右クリック** して、 **[Reference]** を検索し、**[Create Reference to 2 selected Actors]** を選択します。
+1. **Level ブループリント** で、右クリックして、 **[Reference]** を検索し、**[Create References to 2 selected Actors]** を選択します。

-1. グラフ内を **右クリック** して、**1** Keyboard Event を追加して、**Master** レベル シーケンスからドラッグして、**Set Playback Position** ノードを検索して追加します。
+1. グラフ内を右クリックして、**1** Keyboard Event を追加して、**Master** レベル シーケンスからドラッグして、**Set Playback Position** ノードを検索して追加します。

- これは、再生を開始する度に実際に再生の関数呼び出しを発行する前に、シーケンスをリセットするために使用されます。
+ [REGION:note]
+ これは、再生の関数呼び出しを発行する前に、再生を開始する度にシーケンスをリセットするために使用されます。
+ [/REGION]
-1. 追加した **Sequence Player** ノードから、 **Play** ノードを使用し、以下のように接続します。
+1. 追加した **Sequence Player** ノードからドラッグして、 **Play** ノードを使用し、以下のように接続します。

-1. グラフ内を **右クリック** して、 **LiftCube** と呼ばれる **カスタム イベント** を作成します。
+1. グラフ内を右クリックして、 **LiftCube** と呼ばれる **カスタム イベント** を作成します。

[REGION:warning]
- カスタム イベント名は、シーケンサーのキーの **Event Name** で指定したものと同じ名前でなければなりません。そうしないと呼び出されません。
+ カスタム イベント名は、シーケンサーのキーの **Event Name** で指定したものと同じ名前でなければなりません (そうしないと呼び出されません)。
[/REGION]
1. Custom Event の **[Details]** パネルで、 **+** ボタンをクリックして入力を追加し、**MoveCube** と名前を付け、変数の型は **Vector** にします。
@@ -106,8 +101,10 @@ wlLcUr8BXvY

[REGION:warning]
- 入力名は Struct (構造体) で使ったものと同じ名前でなければなりません。そうしないと、イベントは呼び出されません。
- さらに、入力数はカスタム構造体で定義した変数の数と一致しなければなりません。そうしないとイベントは呼び出されません。
+ 以下の条件を満たさなければイベントは呼び出されません。
+ * 入力名は Struct (構造体) で使ったものと同じ名前でなければなりません。
+ * 入力数はカスタム構造体で定義した変数の数と一致しなければなりません。
+
例えば、構造体が 2 つの変数を持つ場合、カスタム イベントは正しい変数名と型を持つ 2 つの入力を持たなければなりません。
[/REGION]
@@ -119,34 +116,35 @@ wlLcUr8BXvY

-1. メイン ツールバーで **Play** ボタンをクリックしてエディタで再生します。
+1. メイン ツールバーで **Play** ボタンをクリックして Play in Editor (PIE) モードにします。
## 最終結果
エディタで再生する場合、**1** キーを押すたびに、キューブが **Z** 軸に沿って上方向に移動します。
+
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-wlLcUr8BXvY
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ wlLcUr8BXvY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
この例では、シネマティックスを見るためにカメラを割り当てていませんが、代わりにシーケンサーとブループリントを使ってスクリプティングしたシーケンスを実行しています。
-プロジェクトでは、カスタム イベントとカスタム構造体を持つイベント トラックを使ってカットシーン中にプレイヤー情報を更新することができます (プレイヤーが、ヘルスの増加、新しい武器、選択したその他のゲームプレイ関連のエフェクトを受け取るなど)。
-
-
-
-
-
-
-
+プロジェクトでは、カスタム イベントとカスタム構造体を持つイベント トラックを使ってカットシーン中にプレイヤー情報を更新することができます
+ (プレイヤーが、ヘルスの増加、新しい武器、選択したその他のゲームプレイ関連のエフェクトを受け取るなど)。
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.KOR.udn
index 751cc057a07a..15d97eb79739 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksEvent/Event.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3340363
+INTSourceChangelist:3439709
Availability: Public
-Title:커스텀 이벤트 & 커스텀 구조체
-Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Title:커스텀 이벤트 및 커스텀 구조체
+Crumbs:%ROOT%
Description:이벤트 트랙을 사용하여 블루프린트에서 사용할 커스텀 구조체를 가진 커스텀 이벤트 호출 방법을 보여드립니다.
Version: 4.15
SkillLevel: Intermediate
@@ -9,8 +9,9 @@ parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
Related: Engine/Sequencer/Overview
-Related: Engine\Sequencer\ReferenceEditor\
+Related: Engine/Sequencer/ReferenceEditor
tags:Sequencer
+type:how-to
**Event Track** (이벤트 트랙)은 [**레벨 블루프린트**](Engine/Blueprints/UserGuide/Types/LevelBlueprint) 안에서 [**커스텀 이벤트**](Engine/Blueprints/UserGuide/Events/Custom) 호출 및 [**블루프린트 스크립트**](Engine/Blueprints) 를 발동시키는 데 사용될 수 있습니다.
커스텀 이벤트가 호출되면, 거기에 붙은 스크립트 역시도 실행되며, 필요에 따라 어떤 경우의 수만큼도 사용 가능합니다.
@@ -19,17 +20,7 @@ tags:Sequencer
이 예제에서는 이벤트 트랙을 사용하여 시퀀스 재생 시 레벨에서 오브젝트를 이동시키는 데 사용되는 커스텀 구조체 포함 커스텀 이벤트를 호출합니다.
-[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-wlLcUr8BXvY
-[/PARAMLITERAL]
-[/OBJECT]
+ 
위 예제에서 키를 누르면 레벨 시퀀스가 재생되고 이벤트가 한 번 실행될 때마다 큐브가 위로 이동합니다.
@@ -59,7 +50,9 @@ wlLcUr8BXvY

+ [REGION:note]
여기서 변수 이름이 중요한데, 나중에 이 이름을 사용하여 레퍼런스를 지정할 것이기 때문입니다.
+ [/REGION]
1. **시네마틱** 버튼에서 **Master** 라는 **레벨 시퀀스** 를 새로 추가한 뒤, **시퀀서** 안에서 **이벤트 트랙** 을 추가합니다.
@@ -87,7 +80,9 @@ wlLcUr8BXvY

+ [REGION:note]
그러면 플레이를 시작할 때마다 시퀀스를 리셋시켜 실제 재생 함수 호출을 내릴 수 있습니다.
+ [/REGION]
1. 추가한 **Sequence Player** 노드를 끌어놓고 **Play** 노드를 사용하여 아래와 같이 연결합니다.
@@ -106,8 +101,10 @@ wlLcUr8BXvY

[REGION:warning]
- 입력 이름이 구조체에 사용된 이름과 같아야 합니다. 그렇지 않으면 이벤트가 호출되지 않습니다.
- 또한 입력 수가 커스텀 구조체에 정의된 변수 개수와 일치해야 합니다. 그렇지 않으면 이벤트는 호출되지 않습니다.
+ 이벤트 호출을 위한 조건은 다음과 같습니다:
+ * 입력 이름이 구조체에 사용된 이름과 같아야 합니다.
+ * 입력 수가 커스텀 구조체에 정의된 변수 개수와 일치해야 합니다.
+
예를 들어, 구조체 안에 변수가 둘 있는 경우, Custom Event 역시 올바른 변수 이름과 유형의 입력이 둘 있어야 합니다.
[/REGION]
@@ -126,27 +123,28 @@ wlLcUr8BXvY
에디터에서 플레이하면, **1** 키를 누를 때마다 큐브가 **Z** 축으로 올라갈 것입니다.
+
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-wlLcUr8BXvY
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ wlLcUr8BXvY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
이 예제에서는 시네마틱을 확인할 카메라를 할당하지 않은 대신 시퀀서와 블루프린트를 사용하여 스크립트 시퀀스를 수행하고 있습니다.
-프로젝트에서는 커스텀 이벤트 및 커스텀 구조체와 함께 이벤트 트랙을 사용하여 컷씬 도중 (플레이어가 생명령 증가, 새 무기, 기타 게임플레이 관련 효과 등) 플레이어 정보를 업데이트할 수 있습니다.
-
-
-
-
-
-
-
+프로젝트에서는 커스텀 이벤트 및 커스텀 구조체와 함께 이벤트 트랙을 사용하여 컷씬 도중 (플레이어가 생명령 증가, 새 무기, 기타 게임플레이 관련 효과 등)
+플레이어 정보를 업데이트할 수 있습니다.
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.CHN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.CHN.udn
new file mode 100644
index 000000000000..eb4bac38b267
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.CHN.udn
@@ -0,0 +1,154 @@
+INTSourceChangelist:0
+Availability: Public
+Title: Animating Material Parameter Collections
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Description:Describes how you can update Material Parameter Collections within Sequencer.
+Version: 4.16
+SkillLevel: Intermediate
+parent:Engine/Sequencer/HowTo
+order:1
+topic-image: EndResult.png
+checkpoint: editorqs
+Related: Engine/Sequencer/Overview
+Related: Engine/Rendering/Materials/ParameterCollections
+Related: Engine/Rendering/Materials
+tags:Sequencer
+type:how-to
+
+Sequencer provides a special **Material Parameter Collection** track for working with and animating [](Engine/Rendering/Materials/ParameterCollections).
+This is extremely useful if you have several Materials that you need to update as you no longer have to animate individual parameter values on each material instance in order to share animation.
+
+In this how-to guide, you'll create a Material Parameter Collection and update its values through Sequencer causing any Materials that use the collection to pulsate between colors.
+
+
+
+## Steps
+
+[REGION:note]
+For this how-to guide, we are using the **Blueprint Third Person Template** with **Starter Content** enabled.
+[/REGION]
+
+1. With your project open, in the **Content/Mannequin/Character/Materials** folder, open the **M_UE4Man_Body** Material.
+
+ 
+
+1. In the **Graph** select the **BodyColor** parameter, then in the **Details** panel, **Right-click** and **Copy** the **Default Value** under **Material Expression Vector Parameter**.
+
+ 
+
+ We are going to use this value as the Default Value in our Material Parameter Collection asset.
+
+1. From the **Content Browser**, click the **Add New** button and under **Materials & Textures** select **Material Parameter Collection** and call it **Sample_MPC**.
+
+ 
+
+1. Inside **Sample_MPC**, add a **Vector Parameter** called **Example** and for the **Default Value**, **Right-click** and **Paste** the copied values.
+
+ 
+
+1. Back in the **M_UE4Man_Body** Material, **Right-click** and add a **CollectionParameter** node with **Collection** set to **Sample_MPC** and **Parameter Name** set to **Example**.
+
+ 
+
+1. Connect the **Example** Collection Parameter node to nodes marked **1** and **2** below.
+
+ 
+
+1. From the Main Editor Toolbar, click the **Cinematics** button and select **Add Level Sequence** and choose a name and save location.
+
+ 
+
+1. In the **Details** panel for the new sequence, check the **Auto Play** option and **Loop Indefinitely**.
+
+ 
+
+1. In Sequencer, click the **Add** button and select **Material Parameter Collection Track** then **Sample_MPC**.
+
+ 
+
+ Any Material Parameter Collection assets you have created will be displayed in the roll-out window when choosing the Material Parameter Collection Track.
+
+1. On the **Sample_MPC** track, click the **Parameter** button and add the **Example** vector track.
+
+ 
+
+ This corresponds to parameter name defined within the Material Parameter Collection asset, any other defined parameters will be displayed from the drop-down menu.
+
+1. Scrub the timeline ahead to frame **75** then add keys for **Red (1.0)**, **Green (0.0)** and **Blue (0.0)**.
+
+ 
+
+1. **Left-click** and drag a selection box around the keys at frame 0, then press **Ctrl+C** to copy them.
+
+ 
+
+1. Scrub the timeline ahead to frame **150** then press **Ctrl+V** to paste the copied keys.
+
+ 
+
+ This will set the Material Parameter Collection back to its Default Value.
+
+1. From the Main Editor Toolbar, click the **Play** button to play in the editor.
+
+
+## End Result
+
+When you play in the level, the character will continually pulsate between the default color and a red color.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 8PE6jCw7bhM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+We only applied this to our playable character, however, any Materials that use the **Sample_MPC** Material Parameter Collection asset within their Material Graph will also be updated.
+Below, we updated the **RampMaterial** (located in **Content/ThirdPerson/Meshes** folder) which is applied to the geometry in the level.
+
+
+
+As a result, they too are affected by our Material Parameter Collection Track within Sequencer and update accordingly.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.INT.udn
new file mode 100644
index 000000000000..d17b0e24f11e
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.INT.udn
@@ -0,0 +1,167 @@
+Availability: Docs
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Title: Animating Material Parameter Collections
+Description:Describes how you can update Material Parameter Collections within Sequencer.
+Type: how-to
+SkillLevel: Intermediate
+Version: 4.16
+Parent: Engine/Sequencer/HowTo
+order:1
+tags:Sequencer
+tags:Materials
+tags:Material Parameter
+topic-image: EndResult.png
+Related: Engine/Rendering/Materials/ParameterCollections
+Related: Engine/Rendering/Materials
+Related: Engine/Sequencer/Overview
+
+**Sequencer** provides a special track for working with and animating [](Engine/Rendering/Materials/ParameterCollections) called the **Material Parameter Collection** track.
+This is extremely useful if you have several **Materials** that you need to update as you no longer have to animate individual parameter values on each material instance in order to share animation updates.
+
+In this how-to guide, you'll use a Material Parameter Collection and Sequencer to dissolve and change the color of the environment around the player.
+
+
+
+## Steps
+
+[REGION:note]
+For this how-to guide, we are using the **Blueprint Third Person Template** with **Starter Content** enabled.
+[/REGION]
+
+1. Right-click this [Example Texture](T_Dissolve.png) and **Save target as...**, then drag-and-drop it into your project's **Content Browser** to import it.
+
+1. In the **Content Browser**, click the **Add New** button then under **Materials & Textures**, create a **Material Parameter Collection** called **Sample_MPC**.
+
+ 
+
+1. Inside **Sample_MPC**, add a **Scalar Parameter** called **DissolveValue** set to **1.0** and **Vector Parameter** called **ColorValue** with **RGB** all set to **0.18**.
+
+ 
+
+1. Inside the Main Editor viewport, select one of the walls in the level then double-click on the **CubeMaterial** in the **Details** panel to open the **Material Editor**.
+
+ 
+
+1. With the **CubeMaterial** node selected in the graph, in the **Details** panel, change the **Blend Mode** to **Masked**.
+
+ 
+
+1. Right-click in the graph and add a **CollectionParameter** node, then in the **Details** panel for the node, assign **Sample_MPC** and **ColorValue**.
+
+ 
+
+1. Add another **CollectionParameter** node set to **Sample_MPC** and **DissolveValue**, then connect the **ColorValue** to the **Base Color** on the **CubeMaterial** node.
+
+ 
+
+1. Hold **T** and left-click in the graph to create a **Texture Sample**, then hold **1** and create two **Material Expression Constant** nodes.
+
+1. Set the **Texture Sample** node to use the example texture from Step 1 and set one of the **Constant** nodes default value to **1**.
+
+ 
+
+ This texture is what we will use as part of our dissolve.
+
+1. Add a **If** Math Expression, then connect the nodes as shown below to the **Opacity Mask** value on the **CubeMaterial** node and click **Apply** from the toolbar.
+
+ 
+
+ This will allow us to shift between no dissolve (a **DissolveValue** of 1) or completely dissolved (a **DissolveValue** of 0).
+
+1. From the Main Editor Toolbar, click the **Cinematics** button and **Add Level Sequence** and assign a name and save location.
+
+ 
+
+1. In the **Details** panel for the new sequence, check the **Auto Play** option and **Loop Indefinitely** option.
+
+ 
+
+1. Inside the **Sequencer Editor**, click the **Add** button and select **Material Parameter Collection Track** then **Sample_MPC**.
+
+ 
+
+1. Click the **Parameter** button and add both the **DissolveValue** and **ColorValue** parameters.
+
+ 
+
+1. Scrub the **Timeline Marker** ahead to **50** and add a key for **DissolveValue** set to **0** and **Blue** on the **ColorValue** to **1.0**.
+
+ 
+
+1. Copy and Paste the keys from the previous step at **100** on the timeline, then at **150** set **DissolveValue** back to **1.0** and **Blue** back to **0.18**.
+
+ 
+
+ This will return the DissolveValue and ColorValues back to their default values.
+
+1. Select the stairs in the level, then open the **RampMaterial** in the **Details** panel to open the **Material Editor**.
+
+ 
+
+ The rest of the objects in the level use the Material above, to include them in the dissolve we will add the **CollectionParameter** setup to its Material Graph.
+
+1. With the **RampMaterial** node selected, in the **Details** panel, change the **Blend Mode** to **Masked**.
+
+ 
+
+1. Copy and paste the graph setup used in the **CubeMaterial** into the **RampMaterial** as shown below then click **Apply** from the toolbar.
+
+ 
+
+1. From the Main Editor Toolbar, click the **Play** button to play in the editor.
+
+## End Result
+
+When you play in the level, the environment around the player will shift from gray to purple and dissolve before returning back to normal and repeating the same process.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ V5Eq73oZVdw
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.JPN.udn
new file mode 100644
index 000000000000..e6de23c7708c
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.JPN.udn
@@ -0,0 +1,168 @@
+INTSourceChangelist:3478222
+Availability:Docs
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Title:Material Parameter Collection をアニメートする
+Description:シーケンサー内でマテリアル パラメータ コレクションをアニメートする方法を説明します。
+Type: how-to
+SkillLevel:Intermediate
+Version:4.16
+Parent:Engine/Sequencer/HowTo
+order:1
+tags:Sequencer
+tags:Materials
+tags:Material Parameter
+topic-image:EndResult.png
+Related:Engine/Rendering/Materials/ParameterCollections
+Related:Engine/Rendering/Materials
+Related:Engine/Sequencer/Overview
+
+**シーケンサー** には、[](Engine/Rendering/Materials/ParameterCollections) で作業しアニメートするための特別な Material Parameter Collection (マテリアル パラメータ コレクション) トラックがあります。
+更新する必要がある **マテリアル** がいくつかある場合、これは非常に便利です。アニメーションの更新を共有するために各マテリアル インスタンスで個々のパラメータ値をアニメートする必要がなくなるからです。
+
+この操作ガイドでは、Material Parameter Collection とシーケンサーを使って、プレイヤー周囲の色をディゾルブし、変更します。
+
+
+
+## ステップ
+
+[REGION:note]
+ここでは **Starter Content Enabled (スターター コンテンツを有効にした状態)** で **Blueprint Third Person Template** を使います。
+[/REGION]
+
+1. この [サンプル テクスチャ](T_Dissolve.png) を 右クリック し、**[Save target as...]** を選び、それをプロジェクトの **コンテンツ ブラウザ** にドラッグ&ドロップしてインポートします。
+
+1. **コンテンツブラウザ** で、**[Add New (新規追加)]** ボタンをクリックして、 **[Materials & Textures]** で **[Material Parameter Collection]** を作成し、**Sample_MPC** と名前を付けます。
+
+ 
+
+1. **Sample_MPC** 内で **1.0** に設定された **DissolveValue** という **Scalar Parameter** を追加し、**RGB** をすべて **0.18** に設定した **ColorValue** という **Vector Parameter** を追加します。
+
+ 
+
+1. メイン エディタのビューポート内でレベル内のウォールのひとつを選択します。次に **[Details]** パネルの **CubeMaterial** 上でダブルクリックし、 **マテリアル エディタ** を開きます。
+
+ 
+
+1. グラフ内で **CubeMaterial** ノードを選択した状態で **[Details]** パネルで、**Blend Mode** を **Masked** に変更します。
+
+ 
+
+1. グラフ内で 右クリック して、 **CollectionParameter** ノードを追加します。このノードの **[Details]** パネルで **Sample_MPC** と **ColorValue** を割り当てます。
+
+ 
+
+1. **Sample_MPC** と **DissolveValue** に設定された別の **CollectionParameter** ノードを追加します。次に、**ColorValue** を **CubeMaterial** ノードの **Base Color** に接続します。
+
+ 
+
+1. **T** を押したまま、グラフ内で左クリックして、**Texture Sample** を作成します。次に **1** を押したまま 2 つの **Material Expression Constant** ノードを作成します。
+
+1. **Texture Sample** ノードをステップ 1 のサンプル テクスチャを使用するように設定し、**Constant** ノードのデフォルト値のひとつを **1** に設定します。
+
+ 
+
+ このテクスチャはディゾルブの一部として使うものです。
+
+1. **If** Math Expression を追加し、以下のように **CubeMaterial** ノードの **Opacity Mask** 値にノードを接続して、ツールバーの **[Apply]** をクリックします。
+
+ 
+
+ これにより、ディゾルブなし (**DissolveValue** 1) または完全にディゾルブ (**DissolveValue** 0) との間でシフトすることができます。
+
+1. メイン エディタ ツールバー から **[Cinematics (シネマティックス)]** ボタンをクリックし、**[Add Level Sequence (レベル シーケンスを追加)]** を選択し、名前と保存場所を選びます。
+
+ 
+
+1. 新しいシーケンスの **[Details (詳細)]** パネルで、**[Auto Play]** オプションと **[Loop Indefinitely]** オプションにチェックを入れます。
+
+ 
+
+1. **シーケンサー エディタ** 内で、 **[Add]** ボタンをクリックし、**[Material Parameter Collection Track]** を選択し、次に **[Sample_MPC]** を選択します。
+
+ 
+
+1. **[Parameter]** ボタンをクリックし、**DissolveValue** パラメータと **ColorValue** パラメータの両方を追加します。
+
+ 
+
+1. **タイムライン マーカー** を **50** にスクラブし、**0** に設定した **DissolveValue** のキーを追加し、**ColorValue** の **Blue** を **1.0** に設定します。
+
+ 
+
+1. 前のステップからのキーをタイムラインの **100** にコピー&ペーストして、**150** で **DissolveValue** を **1.0** に戻し、**Blue** を **0.18** に戻します。
+
+ 
+
+ これで DissolveValue と ColorValues がデフォルト値に戻ります。
+
+1. レベル内で階段を選択します。次に [Details] パネルの **RampMaterial** を開き、 **マテリアル エディタ** を開きます。
+
+ 
+
+ レベルの残りのオブジェクトは上のマテリアルを使用し、これらをディゾルブに含めるために **CollectionParameter** セットアップをマテリアル グラフに追加します。
+
+1. **RampMaterial** ノードを選択した状態で **[Details]** パネルで、**Blend Mode** を **Masked** に変更します。
+
+ 
+
+1. **CubeMaterial** で使用したグラフのセットアップを以下のように **RampMaterial** にコピー&ペーストします。次にツールバーの **[Apply]** を適用します。
+
+ 
+
+1. メイン エディタ ツールバーで **[Play]** ボタンをクリックしてエディタで再生します。
+
+## 最終結果
+
+レベルで再生すると、プレイヤー周囲の背景がグレーからパープルにシフトし、ディゾルブしてから通常に戻りリピートします。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ V5Eq73oZVdw
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.KOR.udn
new file mode 100644
index 000000000000..c8b129f82368
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksMaterialParameter/MaterialParameterTrack.KOR.udn
@@ -0,0 +1,164 @@
+INTSourceChangelist:3449210
+Availability: Public
+Title: 머티리얼 파라미터 컬렉션 애니메이션
+Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Description:시퀀서 내 머티리얼 파라미터 컬렉션 업데이트 방법 안내입니다.
+Version: 4.16
+SkillLevel: Intermediate
+parent:Engine/Sequencer/HowTo
+order:1
+topic-image: EndResult.png
+checkpoint: editorqs
+Related: Engine/Rendering/Materials/ParameterCollections
+Related: Engine/Rendering/Materials
+Related: Engine/Sequencer/Overview
+tags:Sequencer
+type:how-to
+
+시퀀서에는 [](Engine/Rendering/Materials/ParameterCollections) 작업 및 애니메이션을 위한 특수 **Material Parameter Collection** (머티리얼 파라미터 컬렉션) 트랙이 제공됩니다.
+애니메이션 업데이트를 공유시키기 위해 각 머티리얼 인스턴스마다 개별 파라미터 값 애니메이션을 줄 필요 없이 다수의 머티리얼이 있는 경우에 매우 좋습니다.
+
+여기서는 머티리얼 파라미터 컬렉션 및 시퀀서를 사용하여 플레이어 주변 환경의 색을 분해하여 변화시키도록 하겠습니다.
+
+
+
+## 단계
+
+[REGION:note]
+여기서는 **블루프린트 삼인칭 템플릿** 에 **시작용 콘텐츠** 를 포함시켜 사용하고 있습니다.
+[/REGION]
+
+1. [예제 텍스처](T_Dissolve.png) 에 우클릭하고 **다른 이름으로 저장...** 한 뒤, 프로젝트의 **콘텐츠 브라우저** 에 드래그 앤 드롭 하여 임포트합니다.
+
+1. **콘텐츠 브라우저** 에서 **신규 추가** 버튼을 누르고 **머티리얼 & 텍스처** 아래 **머티리얼 파라미터 컬렉션** 을 선택하고 **Sample_MPC** 를 만듭니다.
+
+ 
+
+1. **Sample_MPC** 안에서 **Scalar Parameter** 를 추가하여 **DissolveValue** 라 하고 **1.0** 으로 설정한 뒤, **Vector Parameter** 를 추가하여 **ColorValue** 라 하고 **RGB** 모두 **0.18** 로 설정합니다.
+
+ 
+
+1. 메인 에디터 뷰포트 안에서, 레벨의 벽 하나를 선택한 뒤 **디테일** 패널의 **CubeMaterial** 에 **더블클릭** 하여 **머티리얼 에디터** 를 엽니다.
+
+ 
+
+1. 그래프에서 **CubeMaterial** 노드를 선택한 채 **디테일** 패널에서 **Blend Mode** 를 **Masked** 로 변경합니다.
+
+ 
+
+1. 그래프에 **우클릭** 하고 **CollectionParameter** 노드를 추가한 뒤, **디테일** 패널에서 **Sample_MPC** 와 **ColorValue** 를 할당합니다.
+
+ 
+
+1. **CollectionParameter** 노드를 하나 더 추가한 뒤 **Sample_MPC** 와 **DissolveValue** 로 설정한 뒤, **ColorValue** 를 **CubeMaterial** 노드의 **베이스 컬러** 에 연결합니다.
+
+ 
+
+1. **T** 를 누르고 그래프에 **좌클릭** 하여 **Texture Sample** 을 만든 뒤, **1** 을 누르고 **좌클릭** 하여 **Material Expression Constant** 노드를 둘 만듭니다.
+
+1. **Texture Sample** 노드가 1 단계의 예제 텍스처를 사용하도록 설정하고, **Constant** 노드 중 하나를 기본값 **1** 로 설정합니다.
+
+ 
+
+ 이 텍스처를 색 분해의 일부로 사용하겠습니다.
+
+1. **If** Math 표현식을 추가한 뒤, 아래와 같이 노드를 **CubeMaterial** 노드의 **오파시티 마스크** 값에 연결한 뒤 툴바의 **적용** 을 클릭합니다.
+
+ 
+
+ 이렇게 하면 분해가 없는 상태(**DissolveValue** 값 1)에서 완전히 분해된 상태(**DissolveValue** 값 0) 으로 전환됩니다.
+
+1. 메인 에디터 툴바에서 **시네마틱** 버튼을 클릭한 뒤, **레벨 시퀀스 추가** 를 선택하고 이름과 저장 위치를 지정합니다.
+
+ 
+
+1. 새 시퀀스의 **디테일** 패널에서 **Auto Play** (자동 재생) 및 **Loop Indefinitely** (무반 루프) 옵션을 체크합니다.
+
+ 
+
+1. **시퀀서 에디터** 안에서 **추가** 버튼을 클릭하고 **Material Parameter Collection Track** (머티리얼 파라미터 컬렉션 트랙)을 선택한 뒤 **Sample_MPC** 를 선택합니다.
+
+ 
+
+1. **Parameter** (파라미터) 버튼을 클릭하고 **DissolveValue** 와 **ColorValue** 파라미터를 추가합니다.
+
+ 
+
+1. **타임라인 마커** 를 **50** 까지 앞으로 이동하여 **DissolveValue** 에 대한 키를 추가하고 **0** 으로 설정, **ColorValue** 의 **Blue** 를 **1.0** 으로 설정합니다.
+
+ 
+
+1. 예전 단계에서 타임라인 **100** 위치의 키를 복사하여 붙인 뒤, **150** 위치에서 **DissolveValue** 값을 다시 **1.0** 으로, **Blue** 를 다시 **0.18** 로 설정합니다.
+
+ 
+
+ 이렇게 하면 DissolveValue 와 ColorValues 가 기본값으로 돌아갑니다.
+
+1. 레벨의 계단을 선택하고, **디테일** 패널의 **RampMaterial** 을 **더블클릭** 하여 **머티리얼 에디터** 를 엽니다.
+
+ 
+
+ 레벨의 나머지 오브젝트는 위 머티리얼을 사용하는데, 분해에 포함시키기 위해 머티리얼 그래프에 **CollectionParameter** 셋업을 추가하겠습니다.
+
+1. **RampMaterial** 노드를 선택한 채 **디테일** 패널에서 **Blend Mode** 를 **Masked** 로 변경합니다.
+
+ 
+
+1. **CubeMaterial** 에 사용된 그래프 셋업을 복사한 뒤 아래와 같이 **RampMaterial** 에 붙여넣고 툴바의 **적용** 을 클릭합니다.
+
+ 
+
+1. 메인 에디터 툴바에서 **플레이** 버튼을 클릭하여 에디터에서 플레이합니다.
+
+## 최종 결과
+
+레벨에서 플레이해 보면, 플레이어 주변 환경이 회색에서 보라색으로 전환되며 분해되다 원래대로 돌아가는 것을 반복합니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ V5Eq73oZVdw
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksShot/Shot.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksShot/Shot.JPN.udn
index e086ca6cb012..5294b9805c6c 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksShot/Shot.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksShot/Shot.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3244012
+INTSourceChangelist:3372149
Availability:Public
Title:ショットとテイクを作成する
-Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
+Crumbs:
Description:ショットを並び替えるノンリニア編集とテイクを使ったショットのバリエーションについて説明します。
Version:4.12
SkillLevel:Intermediate
@@ -9,7 +9,7 @@ parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
Related:Engine/Sequencer/Overview
-Related:Engine\Sequencer\ReferenceEditor\
+Related:Engine/Sequencer/ReferenceEditor
tags:Sequencer
従来の映像エディタと同様に、**Shot (ショット) トラック** ではレベル シーケンスを追加、配置、再配置し、配置した順序で再生することができます。
diff --git a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksShot/Shot.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksShot/Shot.KOR.udn
index 92e3a9bf9342..0ce00af62102 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksShot/Shot.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/HowTo/TracksShot/Shot.KOR.udn
@@ -1,6 +1,6 @@
-INTSourceChangelist:3244012
+INTSourceChangelist:3372149
Availability: Public
-Title:샷 & 테이크 생성
+Title:샷 및 테이크 생성
Crumbs: %ROOT%, Engine, Engine/Sequencer, Engine/Sequencer/HowTo
Description:샷, 그리고 그 변형인 테이크 배치를 통한 비선형 편집의 한 형태를 보여줍니다.
Version: 4.12
@@ -9,7 +9,7 @@ parent:Engine/Sequencer/HowTo
order:1
checkpoint: editorqs
Related: Engine/Sequencer/Overview
-Related: Engine\Sequencer\ReferenceEditor\
+Related: Engine/Sequencer/ReferenceEditor
tags:Sequencer
전통적인 영화 에디터와 비슷하게, **Shot Track** (샷 트랙)을 사용하여 레벨 시퀀스를 추가, 배치, 조정하면 그 순서대로 재생시킬 수 있습니다.
diff --git a/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.CHN.udn b/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.CHN.udn
index 9f4803d10ebf..5c887353a5a3 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.CHN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.CHN.udn
@@ -1,250 +1,365 @@
-INTSourceChangelist:3009005
+INTSourceChangelist:3444205
Availability:Public
-Title:Sequencer 概述
-Crumbs:%ROOT%, Engine
-Description:Sequencer 是虚幻引擎 4 的多轨道编辑器,用于实时创建和预览过场动画序列。
+Title:Sequencer 总览
+Crumbs:%ROOT%
+Description:Sequencer 是虚幻引擎 4 的多轨迹编辑器,用于实时创建和预览影片序列。
Navigation:topic
parent:Engine/Sequencer
-order:1
-Version:4.12
-Related:Engine\Sequencer\ReferenceEditor
-Related:Engine\Sequencer\HowTo
-
-**Sequencer** 编辑器使用户能够通过类似于 [**Matinee**](Engine\Matinee\) 的专用多轨道编辑器创建游戏过场动画。
-通过创建 **关卡序列** 和添加 **轨道**,用户可以定义每条轨道的构成,而这些轨道将决定序列的内容。
-轨道可以包含动画(用于使角色动起来)、转换(在场景中移动摄像机等对象)、音频(用于包含音乐或音效),以及其他多种轨道类型。
+order:2
+Version:4.15
+Related:Engine/Sequencer/ReferenceEditor
+Related:Engine/Sequencer/HowTo
+tags:Sequencer
+type:overview
+tags:Getting Started
+SkillLevel:Intermediate
[TOC(start:2 end:2)]
+借助 **Sequencer** 编辑器,用户可使用特殊的多轨迹编辑器创建游戏中的影片(与 [Matinee](Engine\Matinee\) 相似)。创建 **关卡序列** 并添加 **轨迹** 后,用户可定义每个轨迹的组成,决定场景的内容。估计可包含动画(让角色有动作)、变化(让物体在场景中移动)、音频(包含音乐或音效),以及数个其他轨迹类型。
+
## 创建关卡序列
-**关卡序列** 是过场动画场景的“容器”,必须先创建它们才能开始在 Sequencer 编辑器中工作。您可以从 **工具栏** 的 **过场动画(Cinematics)**下选择创建一个关卡序列,并将其直接放入关卡中,如下图所示。
+**关卡序列** 是影片场景的“容器”,必须创建后才能在 Sequencer Editor 中开始工作。您可以创建一个关卡序列并直接将其放置到关卡中,方法是从 **工具栏** 中的 **Cinematics** 下选择创建(如下图所示)。

-这会将它添加到关卡中,然后可以在关卡中选择它,用类似于 **Matinee Actor** 的 **细节(Details)**面板操纵其属性。在“细节”(Details)面板中(下图),您可以定义关卡序列是否在关卡启动时自动播放,序列的播放速率,序列是否应该循环播放,以及其他设置。
+它将被添加到关卡中,可对其进行选中,并通过 **Details** 面板调整其属性(和 **Matinee Actor** 相似)。在 Details 面板中(下图),可定义关卡序列是否在关卡开始后自动播放、序列播放速度、序列是否循环,以及其他设置。

-与 Matinee 不同之处是,关卡序列是自包含的资产,您可以将一个关卡序列嵌入另一个关卡序列中。
-例如,您可以创建一个包含动画角色和摄像机的关卡序列作为一个场景,以其作为一段更大的过场动画序列的一部分。
+关卡序列和 Matinee 的区别在于关卡序列是自含式资源,可将关卡序列嵌入到另一个关卡序列中。
+举例而言,可以创建一个包含动画角色和镜头的关卡序列,将其作为一个场景。而这个场景又是另一个大型影片序列的一部分。
-创建关卡序列的第二种方法可在 **内容浏览器** 中执行:单击 **新增(Add New)**按钮,再选择 _动画(Animation)_下的 **关卡序列(Level Sequence)**。用这种方式创建的关卡序列资产是尚未显式地放入关卡中的。
+创建关卡序列的另一种方法:在 **Content Browser** 中点击 **Add New** 按钮,从 **Animation** 菜单中选择 **Level Sequence**。执行此操作可创建一个关卡序列资源,然后将其放置到关卡中。

+## 为 Sequencer 添加轨迹
-## 向 Sequencer 添加轨道
-
-在创建关卡序列并打开 Sequencer 编辑器后,您可以开始创建过场动画。
+创建关卡序列后,对其执行双击,打开 Sequencer 编辑器,以便开始创建影片。

[REGION:caption]
-在上面我们创建了一个新的空关卡系列。
+上图为新建的空白关卡序列。
[/REGION]
-您需要做的第一件事是添加 **轨道** 类型,可以从 **添加(Add)**下拉菜单进行操作。
+首先需要做的是添加一个 **Track** 类,可从下拉菜单的 **Add** 按钮进行操作。

-在下拉菜单中,你将看到多种可以选择的轨道类型,以及添加 **Actor 到 Sequencer(Actor To Sequencer)**的功能。“Actor 到 Sequencer”(Actor To Sequencer)选项允许您将您当时在关卡中选择的任何 Actor 添加到 Sequencer,以便在场景中操纵它们。
+下拉菜单中有多个可选的轨迹类,以及 **Actor To Sequencer** 功能。Actor To Sequencer 选项可将在关卡中选中的 Actor 添加到 Sequencer,以便在场景中进行操作。
-通常,如果您要创建的过场动画中有角色、动物、怪物或任何类似的会做动作或移动的对象,您需要有它的骨骼网格,并且需要将网格添加到 Sequencer。
-在下面的示例中,我们在关卡中放入了一头熊的骨骼网格。选中它以后,我们在 Sequencer 中单击 **添加(Add)**按钮,然后选择 **Actor 到 Sequencer(Actor To Sequencer)**添加它,以便通过 Sequencer 编辑器控制它。
+通常而言,如果创建的影片中包含角色、动物、生物(或诸如此类)会做动作和移动的资源,则需要将其 [骨架网格体](Engine/Content/Types/SkeletalMeshes) 添加到 Sequencer。
+举例而言,在关卡中放置一个熊的骨架网格体(如下图所示)。选中熊之后,即可在 Sequencer 中点击 **Add** 按钮并选择 **Actor To Sequencer**,以便添加到 Sequencer 编辑器中并进行操控。
(w:640)
-添加骨骼网格后,我们可以添加影响该骨骼网格的 **子轨道**。
+添加骨架网格体后,即可添加 **子轨迹** 影响骨架网格体。

[REGION:caption]
-根据您创建的轨道类型,有可能可以添加子轨道,并可以使用添加子轨道的功能。
+可基于创建的轨迹类型添加子轨迹,添加子轨迹的功能也随之可用。
[/REGION]
-我们在下面选择动画子轨道,并为我们的骨骼网格熊指定一段要播放的动画。
+在下方的视频中,我们选中了动画子轨迹,并为熊的骨架网格体指定了动画进行播放。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-KoksbI7ZOTM
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ KoksbI7ZOTM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-##可占据项与可生成项
+## 可拥有项和可生成项
-Sequencer 与 Matinee 非常相似的一点是它使用了“可占据项”的概念,也就是说如果关卡中存在 Actor,Sequencer 将会占据它来应用您通过 Sequencer 对它作出的更改。
+Sequencer 和 Matinee 的相似度很高,两者均使用“可拥有项”的概念。意味着 Sequencer 将“拥有”关卡中的 Actor,以便对其应用用户通过 Sequencer 进行的修改。
+如实例中的熊所示(上方视频中),用户可在关卡中放置一个骨架网格体并将其添加到 Sequencer,然后可在 Sequencer 中添加与骨架网格体关联的动画轨迹并为其指定不同动画在场景中播放。
+在此例中,我们便“拥有”关卡中的骨架网格体,以便告知其行为。
-正如我们在上面的熊示例中所示,您可以在关卡中放置骨骼网格并添加到 Sequencer,然后在 Sequencer 中您可以向骨骼网格添加动画轨道,并为它指定在场景中要播放的不同动画。
-我们“占据”存在的骨骼网格是为了告诉它要做些什么。Sequencer 还包含另一种被称作“可生成项”的操作对象,也就是说如果我们要占据的对象不存在,Sequencer 会在接到指示时“生成”该对象并有权操纵它,还可定义其生命周期。
-
-那么这有什么好处呢?我什么时候应该选择使用“可生成”的对象?因为 Sequencer 是生成该对象的主人,所以对象并不绑定到特定关卡。任何被视作可生成项的对象都可以在任何关卡中使用,因此您可以创建一个场景,让它在任何环境中发生,并在新的关卡中复用它,而不必重新创建。
+Sequencer 还包含另一种形式的操作,其被称为“可生成项”。意思是用户所拥有的物体尚不存在,因此 Sequencer 将“生成”物体(接受到指令时),并拥有决定其生命周期的权限。Sequencer 负责生成并拥有物体,因此物体不会绑定在特定的关卡上。被标记为“可生成”的内容可在任意关卡中使用,因此可以创建一个场景,使其在任意环境中发生,并在新关卡中重复使用(而无需进行重建)。
[REGION:note]
-请参见 [创建可生成项](Engine\Sequencer\HowTo\Spawnables\) 了解更多信息。
+可在 [创建可生成项](Engine\Sequencer\HowTo\Spawnables\) 中查阅详细内容。
[/REGION]
-
## 设置场景关键帧
-如果您熟悉外部动画工具,那么可能也熟悉使用关键帧驱动内容的概念。
-如果您不熟悉,那么简单说来,就是 Sequencer 允许您通过在时间轴上的所需点添加带有定义属性的 **键**(称为设置关键帧)来操纵你的内容。
-当在时间轴上到达这些键时,您在每个关键帧上定义的属性会更新,以反映您输入的值。
+如您熟知大多数动画工具,那便不会对使用关键帧驱动内容的概念感到陌生。在 Sequencer 中,用户可沿时间轴在所需的点上添加带有已定义属性的 **键**(称之为“设置关键帧”),从而对内容进行操作。到达时间轴上的键后,在每个关键帧处定义的属性将更新,反映出输入的值。
-以下样本场景演示通过为骨骼网格 Actor 的不同转换建立关键帧来添加移动的过程。
+下方的场景实例说明了对骨架网格体 Actor 的不同变形进行关键帧设置,从而完成动作动作添加的流程。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-dVDNJkQxlRk
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ dVDNJkQxlRk
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
[REGION:caption]
-在上面的步骤中,我们已经为 **位置** 轨道的开始位置添加一个关键帧,并为结束位置添加了另一个关键帧。
+在上方视频的 **Location** 轨迹中,我们在开始位置添加了一个关键帧,然后在结束位置添加了另一个关键帧。
[/REGION]
-要添加关键帧,您可选择轨道并按 **Enter** 键,或者单击各个轨道上的“添加关键帧”按钮。
+选中轨迹并按下 **Enter**,或按下每个轨迹上的“add Keyframe”按钮即可添加关键帧。

-对于 Actor 的 **细节(Details)**面板中的部分属性,您可通过单击各属性旁边的“添加关键帧”按钮为其添加关键帧。
+点击每个属性旁边的“add Keyframe”按钮即可直接对 Actor **Details** 面板中的部分属性设置关键帧。

[REGION:caption]
-在上图中,对于电影摄像机 Actor 的“当前焦距”(Current Focal Length)和“光圈”(Aperture)设置,显示了关键帧按钮。
+上图中黄线圈出的部分即为一个电影摄像机 Actor 的 Current Focal Length 和 Current Aperture 设置的关键帧按钮。
[/REGION]
-
-
[REGION:tip]
-选择包含关键帧的轨道后,您可以按 **,** 和 **.** 键在每个已放置的关键帧之间快速移动。
+轨迹包含选中的关键帧后,即可按下 **,**(逗号)和 **.**(句号)键在每个放置的关键帧之间快速移动。
[/REGION]
+选中一个键(或多个键或分段)后,即可使用 **Transform Keys/Sections** 工具重新放置选项的位置并重新设置大小。
+
+
+
+按下 **Ctrl+M** 组合键即可打开 Transform Keys/Selection 工具。
+
+这样便可对键/选项进行特定量的偏移,或按特定时间对键/选项进行缩放。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ Kd3CwzMwTLs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
### 播放范围
-Sequencer 将根据定义的开始和停止播放范围(下图的绿色/红色标记)播放您的场景。
+Sequencer 将基于定义的开始和结束播放范围(下方的绿色/红色标记处)播放场景。

[REGION:caption]
-在上图中,我们的内容包含两个在第 600 帧结束的镜头,但我们的序列延伸到第 1000 帧,这导致存在空白。
+上图中的内容包含两个镜头,在第 600 帧结束,但序列却延长到了第 1000 帧,因此便出现了“无效空白”。
[/REGION]
-您可以拖动开始和停止播放标记来配合您的内容,也可选择一个选项,使您的内容保持在这些范围内。您可以在 Sequencer“选项”(Options)下拉菜单中找到该选项,启用 **使播放范围保持在片段边界中(Keep Playback Range In Section Bounds)**。
+可拖动 **开始** 和 **结束播放** 标记匹配内容长度,或通过选项设置将内容保持在范围之内。此选项在 **Sequencer Options** 下拉菜单中,名为 **Keep Playback Range In Section Bounds**。

-##专用视口
+从主关卡(以及镜头关卡)设置 [镜头轨迹](Engine\Sequencer\HowTo\TracksShot) 并查看序列时,我们将在相对时间对整个序列进行求值。下图中,播放范围的结尾有两个红色标记,第一个代表镜头的结尾(镜头关卡中),而第二个则代表主序列的结尾。此范例中的情况是 `Shot0020_001` 设为使用 50 帧,但我们将其设为在主关卡上使用 100 帧。
-Sequencer 允许您使用专用视口简化编辑过程。
+
+
+进入镜头中,第一个红色标记代表镜头在第 50 帧处结束,而第二个红色标记则代表主关卡上镜头的结束。
+
+
+
+第 50 帧到第 100 帧为灰色,说明为解决长度不同的问题,可以将镜头关卡处被求值的帧量增加到 100,或在主序列关卡处将镜头的长度缩短到 50 帧。
+
+## 特殊视口
+
+Sequencer 的特殊视口可让编辑更加简易。

-这些 [**过场动画视口**](Engine\Sequencer\HowTo\ViewportOptions) 可使您更好地了解场景外观,并可通过 **视口(Viewport)**选项按钮启用。
+这些 [动态视口](Engine\Sequencer\HowTo\ViewportOptions) 可更好地显示场景的效果,可通过 **Viewport** 选项按钮启用。
-##过场动画 Actor
+## 影片 Actor
-在 **过场动画(Cinematic)**下的 **模式(Modes)**面板中,有三个可用于操纵过场动画的过场动画 Actor。
+在 **Modes** 面板中的 **Cinematic** 菜单下,有三个可用于制作影片的影片 Actor。

-您可将其中任何过场动画 Actor 拖到关卡内,然后将其添加到 Sequencer,也可直接将其拖到 Sequencer 中(这将使其成为可生成项)。
+可将任意一个影片 Actor 拖入关卡,将其添加到 Sequencer;或将影片 Actor 拖入 Sequencer,使其成为一个可生成项。
### 摄像机吊臂
-摄像机吊臂 Actor 可用来模拟传统电影摄制中类似于吊臂的摄像机移动。
+**摄像机吊臂** Actor 可用于模拟传统影片拍摄中的吊臂式摄像机运动。
(w:480)
-您可将一个摄像机附加到摄像机吊臂 Actor,然后通过 **细节(Details)**面板和 **吊臂控件(Crane Controls)**值来操纵吊臂移动。这些值可以影响吊臂倾斜角、吊臂旋角和吊臂长度。在 Sequencer 中可以为这些值建立关键帧,这将允许您在过场动画期间根据需要调整这些值。
+可将摄像机附加到摄像机吊臂 Actor,以便通过 **Details** 面板和 **Crane Controls** 值控制吊臂运动。这些数值会影响吊臂绕 X 轴的旋转、绕 Y 轴的旋转,以及吊臂长度。所有这些数值均可在 Sequencer 中设置关键帧,以便根据需求在影片中进行调整。
[REGION:note]
-请参见 [创建可生成项](Engine\Sequencer\HowTo\Spawnables\) 了解更多信息。
+可在 [从摄像机吊臂进行拍摄](Engine\Sequencer\HowTo\CameraRigCrane) 中查阅详细内容。
[/REGION]
-### 摄像机轨道
+### 摄像机导轨
-摄像机轨道 Actor 是基于样条的工具,您可将摄像机附加到此工具,以提供移动“路径”。
+**摄像机导轨** Actor是一个以样条为基础的工具,可将摄像机附加在其上,提供运动的“路径”。
(w:480)
-您可选择每个样条点并改变切线,以产生要让摄像机遵循的路径。附加到轨道的摄像机可以独立旋转,摄像机在轨道上所处的位置可通过 **细节(Details)**面板中的 **轨道上的当前位置(Current Position on Rail)**属性进行调整。可以为此值建立关键帧,这将允许您通过 Sequencer 来改变值。
+用户可选择每个样条点并调整切线,生成所需要的摄像机路径。附加到导轨的摄像机可独立旋转,轨道上的摄像机位置可通过 **Details** 面板的 **Current Position on Rail** 属性进行调整。也可对此值设置关键帧。
[REGION:note]
-请参见 [创建可生成项](Engine\Sequencer\HowTo\Spawnables\) 了解更多信息。
+可在 [从摄像机导轨拍摄](Engine\Sequencer\HowTo\CameraRigRail) 中查阅详细内容。
[/REGION]
### 电影摄像机 Actor
-电影摄像机 Actor 与默认摄像机 Actor 类似,但提供了更多摄像机设置。
+**电影摄像机 Actor** 与默认摄像机 Actor 类似。然而,其有额外的摄像机设置可用。
(w:480)
[REGION:caption]
-上图显示电影摄像机 Actor(黑色摄像机)和默认摄像机 Actor(蓝色摄像机)。
+电影摄像机 Actor(黑色摄像机)和默认摄像机 Actor(蓝色摄像机)如上图所示。
[/REGION]
-电影摄像机 Actor 提供了观看追踪(追踪 Actor)设置、菲林板设置(16:9 DSLR、超级 8mm 和 35mm VistaVision 等等)、镜头和聚焦设置以及当前光圈和焦距设置。虽然使用普通的摄像机 Actor 就可以获得不错的效果,但为了实现更强烈的过场动画感受并公开更多摄像机设置,建议您使用电影摄像机 Actor 来拍摄场景。
+电影摄像机 Actor 包含追踪跟拍设置(跟踪 Actor)、菲林板设置(16:9 DSLR、超级 8 毫米、35 毫米 VistaVision 等)、镜头和对焦设置,以及当前光圈和对焦距离。虽然使用普通摄像机 Actor 完全没问题,为达到更佳的影片感并利用更多摄像机设置,推荐您使用电影摄像机 Actor 拍摄场景。
[REGION:note]
-请参见 [创建可生成项](Engine\Sequencer\HowTo\Spawnables\) 了解更多信息。
+可在 [使用电影摄像机 Actor](Engine\Sequencer\HowTo\CineCameraActors) 中查阅详细内容。
[/REGION]
+## 序列录制
-##序列记录
-
-有一个可用来缩短内容创建时间的工具是 **序列记录器**,它可记录游戏(或关卡序列)以生成新的关卡序列资产。
+使用 **Sequence Recorder** 录制游戏进程(或关卡序列)生成新关卡序列资源可有效缩短内容创建时间。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-mvCPXslVb8Y
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ mvCPXslVb8Y
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-添加新记录,选择要记录的 Actor,然后单击“记录”(Record)以开始捕获。停止记录时将会创建新的关卡序列资产,您可将这些资产合并到现有的过场动画中,或者使用所记录的关卡序列中的片段来创建新序列。
+
+
+选择进行的录制的 Actor,点击 Record 开始采集即可添加新录制。停止录制时,新的关卡序列资源将被创建。您之后便可将它们合并到现有的影片中,或使用已加载关卡序列的片段创建新序列。
+您也可以使用外部麦克风录制与录制序列相匹配的音频,对序列均进行讲述(或在录制关卡编辑器操作时提供说明)
[REGION:note]
-请参见 [**记录游戏**](Engine/Sequencer/HowTo/SequenceRecorder) 了解更多信息。
+可在 [录制游戏进程](Engine/Sequencer/HowTo/SequenceRecorder) 中查阅详细内容。
[/REGION]
-##渲染电影设置
+##渲染影片设置
-在 Sequencer 中,您可以通过 **渲染电影设置(Render Movie Settings)**选项选择将过场动画渲染为视频或图像序列。
+在 Sequencer 中,用户可通过 **Render Movie Settings** 选项将影片渲染为视频或图片序列。

-此选项将显示 **渲染电影设置(Render Movie Settings)**窗口,您可以用它定义如何渲染场景。
+可利用显示的 **Render Movie Settings** 窗口定义场景的渲染方式。

-单击 **采集电影(Capture Movie)**可开始记录场景的采集过程。
+点击 **Capture Movie** 按钮即可开始场景的录制进程。
+### 自定义烧入内容
-## 工作流程考虑事项
+[INCLUDE:Engine/Sequencer/HowTo/BurnIns#intro]
-对 Sequencer 编辑器的工作方式有了基本了解之后,您可以考虑使用该工具的方式,因为可以通过多种不同的方法来编写内容。无论您是在单个关卡序列中创建所有内容,使各个序列相互嵌套并使用主序列来控制所有这些序列,还是从使用主序列资产入手,Sequencer 都会提供多种可生成过场动画的方法。
+[REGION:note]
+请查看 [](Engine/Sequencer/HowTo/BurnIns) 中使用烧入内容的详细指南。
+[/REGION]
+
+### 导入/导出 EDL
+
+[INCLUDE:Engine/Sequencer/HowTo/ImportExportEDLs#intro]
+
+导出 EDL 时,也可为每个镜头自动添加 **帧柄**,并指定需要添加的帧数。
+
+ 
+
+[REGION:note]
+请查看 [](Engine/Sequencer/HowTo/ImportExportEDLs) 中使用 EDL 的详细指南。
+[/REGION]
+
+### 自定义渲染通道
+
+如果需要将影片导出到不同渲染通道中,可从 **Render Movie Settings** 窗口进行操作。通过此窗口可以指定导出序列时使用的渲染通道。还可将 HDR(高动态范围)数据导出为 .exr 文件,并定义压缩和色域设置。
[REGION:note]
-请参见 [**工作流程考虑事项**](Engine\Sequencer\Workflow\ToolUsage) 了解更多信息。
+可在 [](Engine\Sequencer\Workflow\CustomRenderPass) 中查阅详细内容。
[/REGION]
+
+## 蓝图中嵌入的序列
+
+[REGION:warning]
+这是尚处于开发阶段的实验性功能。一些方面可能无法正常使用,或会在未来版本中被修改。
+[/REGION]
+
+在 4.15 版本之后的引擎中,用户可以启用 **Actor 序列插件**,以便将 **Actor 序列组件** 添加到 **蓝图**。
+这样一来便可将序列直接嵌入 Actor 蓝图。将动画绑定到蓝图实例并自动触发或通过蓝图的 **事件图表** 触发,即可重复使用序列。
+
+以下视频展示了使用聚光源和 Actor 序列组件创建的蓝图,为光线颜色设置动画并进行修改。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bohLiPXTyMs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+[REGION:note]
+请查看 [](Engine\Sequencer\HowTo\ActorSequence) 中的详细指南。
+[/REGION]
+
+
+
+
+## 工作流考量
+
+基本理解 Sequencer 编辑器的工作原理后,即可考虑工作的使用方式(制作内容的方法不胜枚举)。使用 Sequencer 生成影片的方式多样,例如在单个关卡序列中创建所有内容、将序列嵌入到另一个序列并使用主序列对所有序列进行控制,或使用主序列资源开始。
+
+[REGION:note]
+可在 [工作流考量](Engine\Sequencer\Workflow\ToolUsage) 中查阅详细内容。
+[/REGION]
+
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.INT.udn
index c4a8a524a54d..5c96acf42a3b 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.INT.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.INT.udn
@@ -1,21 +1,23 @@
Availability:Public
Title: Sequencer Overview
-Crumbs:
-Description:Sequencer is Unreal Engine 4's multi-track editor, used for creating and previewing cinematic sequences in real time.
+Crumbs:%ROOT%
+Description:Sequencer is Unreal Engine 4's multi-track editor, used for creating and previewing cinematic sequences in real-time.
Navigation:topic
parent:Engine/Sequencer
-order:1
+order:2
Version: 4.15
Related: Engine/Sequencer/ReferenceEditor
Related: Engine/Sequencer/HowTo
tags:Sequencer
type:overview
+tags:Getting Started
+SkillLevel:Intermediate
[TOC(start:2 end:2)]
-The **Sequencer** Editor gives users the ability to create in-game cinematics through a specialized multi-track editor (similar to [Matinee](Engine\Matinee\)).
-By creating **Level Sequences** and adding **Tracks**, users can define the makeup of each Track, which will determine the content for the scene.
-Tracks can consist of things like Animations (for animating a character), Transformations (moving things around in the scene), Audio (for including music or sound effects), as well as several other Track types.
+The **Sequencer** Editor gives users the ability to create in-game cinematics with a specialized multi-track editor (similar to [Matinee](Engine\Matinee\)).
+By creating **Level Sequences** and adding **Tracks**, users can define the make-up of each Track, which will determine the content for the scene.
+Tracks can consist of things like Animations (for animating a character), Transformations (moving things around in the scene), Audio (for including music or sound effects), and several other Track types.
## Creating Level Sequences
@@ -23,18 +25,17 @@ The **Level Sequence** is the "container" for your cinematic scenes, and must be

-This will add it to the level, at which point it can be selected and its properties can be manipulated in the **Details** panel, similar to a **Matinee Actor**. In the Details panel (below), you can define whether the Level Sequence will automatically play upon level start, the Play Rate for the sequence, whether the sequence should loop, and other settings.
+This will add it to the Level, at which point it can be selected, and its properties can be manipulated in the **Details** panel (similar to a **Matinee Actor**). In the Details panel (below), you can define whether the Level Sequence will automatically play upon Level start, the Play Rate for the sequence, whether the sequence should loop, and other settings.

How this differs from Matinee, is that Level Sequences are self-contained assets, and you can embed a Level Sequence within another Level Sequence.
-For example, you can create a Level Sequence that has animated characters, cameras, etc. as one scene that is part of a larger cinematic sequence.
+For example, you can create a Level Sequence that has animated characters and cameras as one scene that is part of a larger cinematic sequence.
-An alternate method of creating Level Sequences can be performed in the **Content Browser** by clicking the **Add New** button and selecting **Level Sequence** under _Animation_. When doing so in this manner, you are creating the Level Sequence asset, but haven't placed it in a level.
+An alternate method of creating Level Sequences can be performed in the **Content Browser** by clicking the **Add New** button, and selecting **Level Sequence** from the **Animation** menu. When doing this, you are creating the Level Sequence asset before placing it in a Level.

-
## Adding Tracks to Sequencer
After creating a Level Sequence, double-click on it to open the Sequencer Editor so that you can begin creating your cinematic.
@@ -42,17 +43,17 @@ After creating a Level Sequence, double-click on it to open the Sequencer Editor

[REGION:caption]
-Above, we have a newly-created, empty Level Sequence.
+Above, we have a newly created, empty Level Sequence.
[/REGION]
The first thing you will need to do is add a **Track** type, which you can do from the **Add** button's drop-down menu.

-From the drop-down menu, you will see several Track types you can select from, as the ability to add an **Actor To Sequencer**. The Actor To Sequencer option will enable you to add any Actors that you have selected in your level at the time to Sequencer so that you can manipulate them during your scene.
+From the drop-down menu, you will see several Track types you can select from, as the ability to add an **Actor To Sequencer**. The Actor To Sequencer option will enable you to add any Actors that you have selected in your Level (at the time) to Sequencer so that you can manipulate them during your scene.
-Typically, if you are creating a cinematic that has characters, animals, creatures, or anything along those lines that will animate and move, you will have a [Skeletal Mesh](Engine/Content/Types/SkeletalMeshes) for it, which you will need to add to Sequencer.
-For example, below, we have a Skeletal Mesh of a bear that we have placed in our level. With it selected, we can then click the **Add** button in Sequencer and choose **Actor To Sequencer** so that we can add it and control it through the Sequencer Editor.
+Typically, if you are creating a cinematic that has characters, animals, creatures (or anything along those lines) that will animate and move, you will have a [Skeletal Mesh](Engine/Content/Types/SkeletalMeshes) for it, which you will need to add to Sequencer.
+For example, we have a Skeletal Mesh of a bear that we have placed in our Level (below). With the bear selected, we can then click the **Add** button in Sequencer and choose **Actor To Sequencer** so that we can add it and control it in the Sequencer Editor.
(w:640)
@@ -67,92 +68,107 @@ Based on the type of Track you create, Sub-Tracks may be added and the ability t
Below, we select the Animation Sub-Track and assign an Animation for our Skeletal Mesh Bear to play.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-KoksbI7ZOTM
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ KoksbI7ZOTM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
## Possessables vs. Spawnables
-Sequencer is very similar to Matinee in that it uses the concept of "possessables", meaning that an Actor exists in the level and Sequencer will take possession of it in order to apply changes you make to it via Sequencer.
-As illustrated in our bear example above, you can place a Skeletal Mesh in the level and add it to Sequencer, then inside Sequencer, you can add an Animation Track associated with the Skeletal Mesh and assign different animations for it to play during your scene.
-In this instance, we are "possessing" the Skeletal Mesh that exists in the level in order to tell it what to do.
+Sequencer is very similar to Matinee, in that it uses the concept of "possessables", meaning that an Actor exists in the Level, and Sequencer will take possession of it in order to apply changes you make to it via Sequencer.
+As illustrated in our bear example (above), you can place a Skeletal Mesh in the Level and add it to Sequencer, then inside Sequencer, you can add an Animation Track associated with the Skeletal Mesh and assign different animations for it to play during your scene.
+In this example, we are "possessing" the Skeletal Mesh that exists in the Level in order to tell it what to do.
-Sequencer also includes another form of manipulation, which is referred to as "spawnables", meaning that the object we are possessing does not yet exist, so Sequencer will "spawn" the object when told to, and will have authority over it to determine its lifecycle. Since Sequencer spawns and owns the object, the object is not bound to a particular level. Anything marked as "spawnable" can be used in any level, so you could create a scene and have it take place in any environment and reuse it in new levels without having to recreate it.
+Sequencer also includes another form of manipulation, which is referred to as "spawnables", meaning that the object we are possessing does not yet exist, so Sequencer will "spawn" the object (when told to), and will have authority over it to determine its lifecycle. Since Sequencer spawns and owns the object, the object is not bound to a particular Level. Anything marked as "spawnable" can be used in any Level, so you could create a scene and have it take place in any environment, and reuse it in new Levels without having to recreate it.
[REGION:note]
Please see [Creating Spawnables](Engine\Sequencer\HowTo\Spawnables\) for more information.
[/REGION]
-
## Keyframing Scenes
-If you are familiar with most animation tools, the concept of using Keyframes to drive content may be familiar to you. Sequencer allows you to manipulate your content by adding **Keys** (referred to as "Keyframing") with defined properties at desired points along a timeline.
-Upon reaching those keys in the Timeline, the properties you have defined at each keyframe are updated to reflect the values you've entered.
+If you are familiar with most animation tools, the concept of using Keyframes to drive content may be familiar to you.
+Sequencer allows you to manipulate your content by adding **Keys** (referred to as "Keyframing") with defined properties at desired points along a timeline.
+Upon reaching those Keys in the Timeline, the properties you have defined at each Keyframe are updated to reflect the values that you entered.
-A sample scene below illustrates the process of adding movement by keyframing different transformations of a Skeletal Mesh Actor.
+A sample scene (below) illustrates the process of adding movement by Keyframing different transformations of a Skeletal Mesh Actor.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-dVDNJkQxlRk
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ dVDNJkQxlRk
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
[REGION:caption]
-Above, we added a keyframe for the starting position, and another keyframe for the ending position, for the **Location** track.
+For the **Location** track (above), we added a Keyframe for the starting position, and another Keyframe for the ending position.
[/REGION]
-You can add a keyframe by selecting a track and pressing **Enter**, or by clicking the "add keyframe" button on each track.
+You can add a Keyframe by selecting a track and pressing **Enter**, or by clicking the "add Keyframe" button on each track.

-Some properties in the **Details** panel of an Actor can be keyframed directly by clicking the "add keyframe" button next to each property.
+Some properties in the **Details** panel of an Actor can be Keyframed directly by clicking the "add Keyframe" button next to each property.

[REGION:caption]
-Above, keyframe buttons are shown for the Current Focal Length and Aperture settings of a Cine Camera Actor.
+Above, Keyframe buttons are shown for the Current Focal Length and Aperture settings of a Cine Camera Actor.
[/REGION]
[REGION:tip]
-With a Track containing Keyframes selected, you can press the **,** (comma) and **.** (period) keys to quickly move between each placed keyframe.
+With a Track containing selected Keyframes, you can press the **,** (comma) and **.** (period) Keys to quickly move between each placed Keyframe.
[/REGION]
-With a key (or multiple keys or sections) selected, you can use the **Transform Keys/Sections** tools to reposition and rescale your selection.
+With a Key (or with multiple Keys or sections) selected, you can use the **Transform Keys/Sections** tools to reposition and rescale your selection.

-You can also open the Transform Keys/Selection tools by pressing **Ctrl+M**.
+You can also open the Transform Keys/Selection tools by pressing the **Ctrl+M** Key combination.
-This will allow you offset the keys/selection by a specified amount or the amount to scale the keys/section by the specified time.
+This will allow you to offset the Keys/selection by a specified amount, or the amount to scale the Keys/section by a specified time.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-890
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-196
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-Kd3CwzMwTLs
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Kd3CwzMwTLs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-
-
-
### Playback Range
Sequencer will play back your scenes based on the defined Start and Stop playback ranges (green/red markers below).
@@ -160,26 +176,25 @@ Sequencer will play back your scenes based on the defined Start and Stop playbac

[REGION:caption]
-Above, our content contains two shots which end at frame 600, but our sequence extends to frame 1000, resulting in dead space.
+Above, our content contains two shots that end at frame 600, but our sequence extends to frame 1000, resulting in "dead space".
[/REGION]
-You can drag the **Start** and **Stop Playback** markers to fit your content, or there is an option that can be set which will keep your content within these ranges. You can find this option under the **Sequencer Options** drop-down menu, called **Keep Playback Range In Section Bounds**.
+You can drag the **Start** and **Stop Playback** markers to fit your content, or there is an option which can be set that will keep your content within these ranges. You can find this option under the **Sequencer Options** drop-down menu, called **Keep Playback Range In Section Bounds**.

-When working with [Shot Tracks](Engine\Sequencer\HowTo\TracksShot) and viewing sequences from the Master level as well as the Shot level, we evaluate the entire sequence at its relative time.
-In the image below we have two red markers for the ending of playback ranges, the first denotes the end of the Shot (from the Shot level) while the second denotes the end of the Master Sequence.
-What is happening in this example is that our Shot0020_001 is set to use 50 frames but we've set it to use 100 frames on the Master Level.
+When working with [Shot Tracks](Engine\Sequencer\HowTo\TracksShot) and viewing sequences from the Master Level (as well as the Shot Level), we evaluate the entire sequence at its relative time.
+In the image below, we have two red markers for the ending of playback ranges, the first denotes the end of the Shot (from the Shot Level), while the second denotes the end of the Master Sequence.
+What is happening in this example is that our `Shot0020_001` is set to use 50 frames but we've set it to use 100 frames on the Master Level.

-If we dive into our Shot, the first red marker denotes the end of the Shot at frame 50, while the second red marker denotes the end of the Shot at the master level.
+If we dive into our Shot, the first red marker denotes the end of the Shot at frame 50, while the second red marker denotes the end of the Shot at the master Level.

Frames 50 through 100 are grayed out to indicate that they are not being considered for evaluation.
-To address the difference in length, we could increase the amount of frames being evaluated at the Shot level to 100 or at the Master Sequence level, we could reduce the length of the Shot to 50 frames.
-
+To address the difference in length, we could increase the amount of frames being evaluated at the Shot Level to 100, or at the Master Sequence Level, we could reduce the length of the Shot to 50 frames.
##Specialized Viewports
@@ -187,15 +202,15 @@ Sequencer allows you to use specialized viewports to make the editing process ea

-These [Cinematic Viewports](Engine\Sequencer\HowTo\ViewportOptions) give a better idea of what the scene will look like, and can be enabled from the **Viewport** options button.
+These [Cinematic Viewports](Engine\Sequencer\HowTo\ViewportOptions) give a better idea of what the scene will look like, and they can be enabled from the **Viewport** options button.
##Cinematic Actors
-From the **Modes** panel, under **Cinematic**, there are three Cinematic Actors you can use for crafting your cinematics.
+From the **Modes** panel, from the **Cinematic** menu, there are three Cinematic Actors that can be used for crafting cinematics.

-You can drag any of these into your level then add it to Sequencer, or you can drag it into Sequencer (which will make it a Spawnable).
+You can drag any of these Cinematic Actors into your Level, adding them to Sequencer, or you can drag a Cinematic Actor into Sequencer, which will make it a Spawnable.
### Camera Rig Crane
@@ -203,7 +218,7 @@ The **Camera Rig Crane** Actor can be used to simulate crane-like camera movemen
(w:480)
-You can attach a Camera to the Camera Rig Crane Actor, then manipulate the crane's movement through the **Details** panel and **Crane Controls** values. Those values can affect the Crane Pitch, Crane Yaw, and Crane Arm Length. These values can be keyframed within Sequencer, which will allow you to adjust them during your cinematics (as desired).
+You can attach a Camera to the Camera Rig Crane Actor, which enables you to manipulate the crane's movement through the **Details** panel and **Crane Controls** values. Those values can affect the Crane Pitch, Crane Yaw, and Crane Arm Length. All of these values can be Keyframed within Sequencer, which will allow you to adjust them during your cinematics (as desired).
[REGION:note]
Please see [Shooting from a Camera Rig Crane](Engine\Sequencer\HowTo\CameraRigCrane) for more information.
@@ -215,7 +230,7 @@ The **Camera Rig Rail** Actor is a spline based tool that a Camera can be attach
(w:480)
-You can select each spline point and alter the tangents to produce the path you want your camera to follow. The camera that is attached to the rail can be rotated independently, and the camera's position on the rail can be adjusted with the **Current Position on Rail** property inside of the **Details** panel. This value can also be keyframed.
+You can select each spline point and alter the tangents to produce the path that you want your camera to follow. The camera that is attached to the rail can be rotated independently, and the camera's position on the rail can be adjusted with the **Current Position on Rail** property inside of the **Details** panel. This value can also be Keyframed.
[REGION:note]
Please see [Shooting from a Camera Rig Rail](Engine\Sequencer\HowTo\CameraRigRail) for more information.
@@ -237,25 +252,32 @@ The Cine Camera Actor includes settings for Look at Tracking (following an Actor
Please see [Using Cine Camera Actors](Engine\Sequencer\HowTo\CineCameraActors) for more information.
[/REGION]
-
##Sequence Recording
One tool you can use to narrow down your content creation time is to use the **Sequence Recorder** to record gameplay (or Level Sequences) in order to generate new Level Sequence assets.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-mvCPXslVb8Y
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ mvCPXslVb8Y
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-Add a new recording, pick an Actor to record, and click Record to start capturing. When stopping the recording, new Level Sequence assets will be created. You can then incorporate them into your existing cinematic, or you can use pieces from the recorded Level Sequence to create new sequences.
-You can also record audio to go along with your recorded sequence from an external microphone, which will allow you to narrate your sequence, or provide instructions while recording level editor actions.
+
+
+To add a new recording, pick an Actor to record, and click Record to start capturing. When stopping the recording, new Level Sequence assets will be created. You can then incorporate them into your existing cinematic, or you can use pieces from the recorded Level Sequence to create new sequences.
+You can also record audio to go along with your recorded sequence from an external microphone, which will allow you to narrate your sequence (or provide instructions while recording Level Editor actions).
[REGION:note]
Please see [Recording Gameplay](Engine/Sequencer/HowTo/SequenceRecorder) for more information.
@@ -285,7 +307,7 @@ Please see [](Engine/Sequencer/HowTo/BurnIns) for a step-by-step guide on using
[INCLUDE:Engine/Sequencer/HowTo/ImportExportEDLs#intro]
-As part of exporting an EDL (Edit Decision List), you can also add **Frame Handles** automatically to each of your shots, and specify the number of frames you'd like to add.
+As part of exporting an EDL, you can also add **Frame Handles** automatically to each of your shots, and specify the number of frames you would like to add.

@@ -293,17 +315,51 @@ As part of exporting an EDL (Edit Decision List), you can also add **Frame Handl
Please see [](Engine/Sequencer/HowTo/ImportExportEDLs) for a step-by-step guide on using EDLs.
[/REGION]
-
### Custom Render Passes
If you are looking to export your cinematic in different render passes, you can do so from the **Render Movie Settings** window.
-This will allow you to specify the render pass(es) to use when exporting your sequence. You can also export HDR (high dynamic-range) data as .exr files, and define compression and color gamut settings.
+This will allow you to specify the render pass(es) to use when exporting your sequence. You can also export HDR (High Dynamic-Range) data as .exr files, and define compression and color gamut settings.
[REGION:note]
Please see [](Engine\Sequencer\Workflow\CustomRenderPass) for more information.
[/REGION]
+## Embedded Sequences in Blueprint
+
+[REGION:warning]
+This is an experimental feature that is currently undergoing development. Some aspects may not work as expected or may change in future revisions.
+[/REGION]
+
+As of engine version 4.15, you can enable the **Actor Sequence Plugin** which enables you to add **Actor Sequence Components** to **Blueprints**.
+Doing so provides the ability to embed Sequences directly into an Actor Blueprint which enables reuse of Sequences by binding the animations to the Blueprint instance and triggering them automatically or through the **Event Graph** of the Blueprint.
+
+Below is an example of a Blueprint created with a Spot Light and Actor Sequence Component that animates and changes the color of the light.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bohLiPXTyMs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+[REGION:note]
+Please see [](Engine\Sequencer\HowTo\ActorSequence) for a step-by-step guide.
+[/REGION]
+
+
+
## Workflow Considerations
@@ -313,3 +369,4 @@ Once you have a basic understanding of how the Sequencer Editor works, you may w
Please see [Workflow Considerations](Engine\Sequencer\Workflow\ToolUsage) for more information.
[/REGION]
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.JPN.udn
index 33dc1282b4c2..6b0bcb5a6fec 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.JPN.udn
@@ -1,16 +1,18 @@
-INTSourceChangelist:3349969
+INTSourceChangelist:3444205
Availability:Public
Title:シーケンサーの概要
-Crumbs:
+Crumbs:%ROOT%
Description:シーケンサーは UE4 のマルチトラック エディタです。シネマティックス シーケンスを作成し、リアルタイムでプレビューするために使用します。
Navigation:topic
parent:Engine/Sequencer
-order:1
+order:2
Version:4.15
Related:Engine/Sequencer/ReferenceEditor
Related:Engine/Sequencer/HowTo
tags:Sequencer
type:overview
+tags:Getting Started
+SkillLevel:Intermediate
[TOC(start:2 end:2)]
@@ -24,18 +26,17 @@ type:overview

-これでレベルにレベル シーケンスが追加され、選択可能になり、そのプロパティは **Matinee アクタ** 同様に、**[Details (詳細)]** パネルから操作することができます。[Details] パネル (以下) で、レベル シーケンスがレベル開始時に自動的にプレイするか、シーケンスのプレイ速度、シーケンスがループするか、およびその他の設定を定義することができます。
+これでレベルに追加され、選択可能になり、プロパティを **[Details]** パネルで操作できるようになります (**Matinee アクタ** と同様に)。[Details] パネル (以下) で、レベル シーケンスがレベル開始時に自動的にプレイするか、シーケンスのプレイ速度、シーケンスがループするか、およびその他の設定を定義することができます。

マチネとの違いですが、レベル シーケンスは自己完結型のアセットであり、あるレベル シーケンスを別のレベル シーケンスに埋め込むことができます。
-例えば、アニメートしたキャラクター、カメラなどを持つレベル シーケンスを、大きなシネマティックス シーケンスの一部のシーンとして作成することができます。
+例えば、アニメートしたキャラクターとカメラを持つレベル シーケンスを、大きなシネマティックス シーケンスの一部のシーンとして作成することができます。
-レベル シーケンスを作成する別の方法として、**コンテンツ ブラウザ** で **[Add New]** ボタンをクリックして、 _Animation_ の **Level Sequence** を選択します。この方法で行うと、Level Sequence アセットを作成していますが、レベルに配置していません。
+レベル シーケンスを作成する別の方法として、**コンテンツ ブラウザ** で **[Add New]** ボタンをクリックして、**[Animation]** メニューから **[Level Sequence]** を選択します。これを行うと、レベルに配置する前に Level Sequence アセットを作成しています。

-
## シーケンサーにトラックを追加する
レベル シーケンスを作成し、それをダブルクリックしてシーケンス エディタを開き、シネマティックスの作成を開始することができます。
@@ -53,7 +54,7 @@ type:overview
ドロップダウン メニューに選択対象のトラックが数種類が、**アクタをシーケンサー** に追加する機能として表示されます。この [Actor To Sequencer] オプションではレベルで選択したアクタをシーケンサーに追加して、シーン中に操作できます。
通常、アニメートし、動くキャラクター、動物、クリーチャーなどを持つシネマティックスを作成している場合、 [スケルタルメッシュ](Engine/Content/Types/SkeletalMeshes) を持ちますが、これをシーケンサーに追加する必要があります。
-例えば、以下ではレベルに配置したクマのスケルタルメッシュがあります。それを選択した状態で、次にシーケンサーの **[Add]** ボタンをクリックし、**[Actor To Sequencer]** を選択し、それを追加し、シーケンサー エディタで制御できるようにします。
+例えば、以下ではレベルに配置したクマのスケルタルメッシュがあります。クマを選択した状態で、次にシーケンサーの **[Add]** ボタンをクリックし、**[Actor To Sequencer]** を選択し、それを追加し、シーケンサー エディタで制御できるようにします。
(w:640)
@@ -68,15 +69,21 @@ type:overview
以下では、アニメーションのサブトラックを選択し、スケルタルメッシュのクマが再生するアニメーションを割り当てます。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-KoksbI7ZOTM
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ KoksbI7ZOTM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
## 所有可能なものとスポーン可能なもの
@@ -91,31 +98,37 @@ KoksbI7ZOTM
詳細は、 [**Spawnables(スポーン可能なもの)を作成する**](Engine\Sequencer\HowTo\Spawnables\) をご覧ください。
[/REGION]
-
## シーンのキーフレーム設定
-一般的なアニメーション ツールを使い慣れている場合、キーフレームを使ってコンテンツを操作する考え方は馴染みがあるものでしょう。シーケンサーでは、タイムラインに沿った必要なポイントにプロパティを定義した **キー** を追加して(キーフレーム設定) コンテンツを操作することができます。
+一般的なアニメーション ツールを使い慣れている場合、キーフレームを使ってコンテンツを操作する考え方は馴染みがあるものでしょう。
+シーケンサーでは、タイムラインに沿った必要なポイントにプロパティを定義した **キー** を追加して(キーフレーム設定) コンテンツを操作することができます。
タイムラインでこうしたキーに到達すると、各キーフレームで定義したプロパティが、入力した値を反映するように更新されます。
以下のサンプル シーンでは Skeletal Mesh アクタの様々なトランスフォームにキーフレームを作成して動きを追加するプロセスを示しています。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-dVDNJkQxlRk
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ dVDNJkQxlRk
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
[REGION:caption]
上の画面では、**Location** トラックの開始位置にキーフレームを追加し、終了位置にもキーフレームを追加しました。
[/REGION]
-キーフレームを追加するにはトラックを選択し、**Enter** を押すか、各トラックのキーフレーム追加ボタンをクリックします。
+トラックを選択して **Enter** を押すか、各トラック上で [add Keyframe] ボタンをクリックしてキーフレームを追加することができます。

@@ -128,32 +141,35 @@ dVDNJkQxlRk
[/REGION]
[REGION:tip]
-キーフレームを含むトラックを選択した状態で、**,** (コンマ) キーと **.** (ピリオド) キーを押して配置したキーフレーム間を迅速に移動することができます。
+選択したキーフレームを含むトラックで、**,** (コンマ) キーと **.** (ピリオド) キーを押して配置したキーフレーム間を迅速に移動することができます。
[/REGION]
キー (または複数のキーやセクション) を選択した状態で、**[Transform Keys/Sections]** ツールを使って選択したものを再配置したり、再スケーリングすることができます。

-**[Ctrl+M]** キーを押すことによっても、[Transform Keys/Selection] ツールを開くことができます。
+**[Ctrl+M]** キーの組み合わせを押すことによっても、[Transform Keys/Selection] ツールを開くことができます。
これにより、キー / 選択したものを指定した量でオフセット、または指定した時間でキー / 選択したものをスケーリングする量をオフセットすることができます。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-890
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-196
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-Kd3CwzMwTLs
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ Kd3CwzMwTLs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-
-
-
### 再生範囲
シーケンサーでは、定義されたスタートとストップの再生範囲に基づきシーンを再生します (以下の画面の緑/赤のマーカー)。
@@ -168,9 +184,9 @@ Kd3CwzMwTLs

-[ショット トラック](Engine\Sequencer\HowTo\TracksShot) を使った作業とマスター レベルおよびショット レベルからシーケンスを見る場合、シーケンス全体をその相対時間で評価します。
+[ショット トラック](Engine\Sequencer\HowTo\TracksShot) を使った作業とマスター レベル (およびショット レベル) からシーケンスを見る場合、シーケンス全体をその相対時間で評価します。
以下の画像では、再生範囲の終了時に赤いマーカーが 2 つあります。ひとつめは、ショットの終わりを (Shot レベルから)、2 つめはマスター シーケンスの終わりを示しています。
-この例では、Shot0020_001 は 50 フレームを使用するように設定していますが、マスター レベルでは 100 フレームを使用するように設定しています。
+この例では、`Shot0020_001` は 50 フレームを使用するように設定していますが、マスター レベルでは 100 フレームを使用するように設定しています。

@@ -181,7 +197,6 @@ Shot をよく見ると、ひとつめの赤いマーカーはフレーム 50
フレーム 50 から 100 まで評価対象ではないことを示すためグレイアウトされています。
長さの違いに対処するために、ショット レベルで評価されているフレームの量を 100 に増やすことができます。またはマスター シーケンス レベルで、ショットの長さを 50 に減らすことができます。
-
## 特殊なビューポート
シーケンサーでは特殊なビューポートを使って編集プロセスをやりやすくすることができます。
@@ -192,11 +207,11 @@ Shot をよく見ると、ひとつめの赤いマーカーはフレーム 50
##Cinematic アクタ
-**[Cinematic]** の **[Modes]** パネルには、シネマティックスを作成するための 3 種類の Cinematic アクタがあります。
+**[Modes]** パネルの **[Cinematic]** のメニューには、シネマティックスを作成するための 3 種類の Cinematic アクタがあります。

-こうしたものをレベルにドラッグしてからシーケンサーに追加したり、シーケンサーにドラッグすることができます (これでスポーン可能なものになります)。
+こうした Cinematic アクタをレベルにドラッグしてシーケンサーに追加したり、シーケンサーにドラッグしてスポーン可能なものにすることができます。
### Camera Rig Crane
@@ -204,7 +219,7 @@ Shot をよく見ると、ひとつめの赤いマーカーはフレーム 50
(w:480)
-カメラを Camera Rig Crane アクタにアタッチし、クレーンの動きを **[Details]** パネルと **[Crane Controls]** の値で操作します。こうした値は、クレーンのピッチ、クレーンのヨー、クレーンのアームの長さに影響を与えます。値をシーケンサー内でキーフレームすることができます。これにより、シネマティックス中に (必要に応じて) 調整することができます。
+カメラを Camera Rig Crane アクタにアタッチすることで、クレーンの動きを **[Details]** パネルと **[Crane Controls]** の値で操作することができます。こうした値は、クレーンのピッチ、クレーンのヨー、クレーンのアームの長さに影響を与えます。こうしたすべての値をシーケンサー内でキーフレーム化することができます。これにより、シネマティックス中に (必要に応じて) 調整することができます。
[REGION:note]
詳細は [**CameraRigCrane から撮影する**](Engine\Sequencer\HowTo\CameraRigCrane) をご覧ください。
@@ -238,25 +253,32 @@ Cine Camera アクタには、Look at トラッキング (Actor に追随)、Fil
詳細は [**CineCamera アクタを使用する**](Engine\Sequencer\HowTo\CineCameraActors) をご覧ください。
[/REGION]
-
## シーケンスの記録
コンテンツ作成時間を短縮できるツールとして、**シーケンス レコーダー** があります。これを使って新しい Level Sequence アセットを生成するためにゲームプレイ (またはレベル シーケンス) を記録します。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-mvCPXslVb8Y
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ mvCPXslVb8Y
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-新しい記録を追加し、記録対象のアクタを選んで、Record をクリックしてキャプチャを開始します。記録を停止すると新しい Level Sequence アセットが作成されます。これを既存のシネマティックスに組み込んだり、記録したレベル シーケンスの一部を使って新しいシーケンスを作成することができます。
-記録したシーケンスにあわせて外部のマイクからオーディオを記録することもできます。これにより、シーケンスにナレーションを付けたり、レベル エディタのアクションを記録しながら指示を与えることができます。
+
+
+新しい記録を追加するために、記録対象のアクタを選んで、Record をクリックしてキャプチャを開始します。記録を停止すると新しい Level Sequence アセットが作成されます。これを既存のシネマティックスに組み込んだり、記録したレベル シーケンスの一部を使って新しいシーケンスを作成することができます。
+記録したシーケンスに合わせて外部のマイクロフォンからオーディオを記録することもできます。これにより、シーケンスにナレーションを付けることができます (またはレベル エディタのアクションを記録しながら指示をすることもできます)。
[REGION:note]
詳細は [**ゲームプレイを記録する**](Engine/Sequencer/HowTo/SequenceRecorder) をご覧ください。
@@ -286,7 +308,7 @@ burn-ins の使用についての手順を示したガイドについては、[]
[INCLUDE:Engine/Sequencer/HowTo/ImportExportEDLs#intro]
-EDL (Edit Decision List) のエクスポートの一部として、各ショットに自動的に **Frame Handles** を追加して、追加するフレーム数を指定することができます。
+EDL のエクスポートの一部として、各ショットに自動的に **Frame Handles** を追加して、追加するフレーム数を指定することができます。

@@ -294,17 +316,51 @@ EDL (Edit Decision List) のエクスポートの一部として、各ショッ
EDLs の使用についての手順を示したガイドについては、[](Engine/Sequencer/HowTo/ImportExportEDLs) をご覧ください。
[/REGION]
-
### カスタム レンダー パス
異なるレンダー パスでシネマティックスのエクスポートをするには、**[Render Movie Settings]** ウィンドウから行うことができます。
-ここからシーケンスをエクスポートする場合に使うレンダー パスを指定することができます。HDR データを.exr ファイルとしてエクスポートして、圧縮と色域の設定を定義することができます。
+ここからシーケンスをエクスポートする場合に使うレンダー パスを指定することができます。HDR (High Dynamic-Range) データを.exr ファイルとしてエクスポートして、圧縮と色域の設定を定義することができます。
[REGION:note]
詳細は、 [](Engine\Sequencer\Workflow\CustomRenderPass) をご覧ください。
[/REGION]
+## ブループリントの埋め込みシーケンス
+
+[REGION:warning]
+これは現在、開発進行中の実験的な機能です。一部の機能は期待どおりに機能しなかったり、将来のリビジョンで変更される可能性があります。
+[/REGION]
+
+アンリアル エンジン 4.15 時点では、**Actor Sequence Plugin** を有効にして、**Actor Sequence コンポーネント** を **ブループリント** に追加することができます。
+この機能により、シーケンスを直接 Actor ブループリントに埋め込んで、シーケンスを再利用できるようにします。これは、アニメーションをブループリント インスタンスに結合して、自動的にトリガーするか、ブループリントの **イベントグラフ** でトリガーして行います。
+
+以下は、スポットライトと Actor Sequence コンポーネントを使って作成したライトの色をアニメートし変更するブループリントの例です。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bohLiPXTyMs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+[REGION:note]
+操作ガイドについては、 [](Engine\Sequencer\HowTo\ActorSequence) をご覧ください。
+[/REGION]
+
+
+
## ワークフロー上の考慮事項
@@ -314,3 +370,4 @@ EDLs の使用についての手順を示したガイドについては、[](Eng
詳細は、 [**ワークフロー上の考慮事項**](Engine\Sequencer\Workflow\ToolUsage) をご覧ください。
[/REGION]
+
diff --git a/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.KOR.udn
index ad18e7588f0e..b78ee6be2b2d 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/Overview/SequencerOverview.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3349969
+INTSourceChangelist:3410507
Availability:Public
Title: 시퀀서 개요
-Crumbs:
+Crumbs:%ROOT%
Description:시퀀서란 언리얼 엔진 4 에서 시네마틱 시퀀스를 실시간 미리보면서 만드는 데 사용되는 멀티 트랙 에디터입니다.
Navigation:topic
parent:Engine/Sequencer
@@ -11,6 +11,7 @@ Related: Engine/Sequencer/ReferenceEditor
Related: Engine/Sequencer/HowTo
tags:Sequencer
type:overview
+SkillLevel:Intermediate
[TOC(start:2 end:2)]
@@ -35,7 +36,6 @@ Sequencer (시퀀서)는 [**마티네**](Engine\Matinee\) 차기 버전으로,

-
## 시퀀서에 트랙 추가
레벨 시퀀스를 만들고 더블클릭하여 시퀀스 에디터가 열렸으면, 시네마틱 제작을 시작하면 됩니다.
@@ -91,7 +91,6 @@ KoksbI7ZOTM
자세한 정보는 [](Engine\Sequencer\HowTo\Spawnables\) 문서를 참고하세요.
[/REGION]
-
## 씬 키프레임 작업
다른 애니메이션 툴에 익숙한 분이라면, 키프레임을 사용하여 콘텐츠를 구동시킨다는 개념에도 익숙할 것입니다. 그렇지 않은 경우, 요약하자면 시퀀서에서는 ("키프레임" 이라는 작업을 통해) **키** 를 추가하고 타임라인 상의 원하는 위치에 정의된 프로퍼티대로 콘텐츠를 조작할 수 있습니다.
@@ -112,7 +111,7 @@ dVDNJkQxlRk
[/OBJECT]
[REGION:caption]
-위에서 시작 위치에 키프레임을 하나, 끝 위치에 **위치** 트랙 키프레임을 하나 추가했습니다.
+위의 **Location** (위치) 트랙에 대해, 시작 위치에 키프레임을 하나, 끝 위치에 키프레임을 하나 추가했습니다.
[/REGION]
키프레임 추가 방법은, 트랙을 선택하고 **Enter** 키를 치거나, 각 트랙에 있는 키프레임 추가 버튼을 클릭하면 됩니다.
@@ -151,9 +150,6 @@ Kd3CwzMwTLs
[/PARAMLITERAL]
[/OBJECT]
-
-
-
### 재생 범위
시퀀서는 정의된 시작 / 정지 재생 범위에 따라 (아래 초록/빨강 마커) 씬을 재생합니다.
@@ -181,7 +177,6 @@ Kd3CwzMwTLs
50 에서 100 프레임까지 회색으로 탈색된 것은 평가되지 않는다는 것을 나타냅니다.
길이 차이에 대한 처리를 위해서는, 샷 레벨에서 평가되는 프레임 양을 100 으로 늘리거나, 마스터 시퀀스 레벨에서 샷의 길이를 50 프레임으로 줄이면 됩니다.
-
##전문 뷰포트
시퀀서에서는 전문 뷰포트를 사용하여 편집 프로세스를 간편화시킬 수 있습니다.
@@ -196,7 +191,7 @@ Kd3CwzMwTLs

-이들 중 아무거나 레벨에 끌어 놓은 뒤 시퀀서에 추가하거나, 시퀀서에 바로 끌어 놓아도 (스포너블이) 됩니다.
+이들 시네마틱 액터 중 아무거나 레벨에 끌어 놓은 뒤 시퀀서에 추가하거나, 시퀀서에 바로 끌어 놓아도 (스포너블이) 됩니다.
### 카메라 릭 크레인
@@ -238,7 +233,6 @@ Cine Camera (시네 카메라) 액터는 기본 카메라 액터와 비슷합니
자세한 정보는 [](Engine\Sequencer\HowTo\CineCameraActors) 문서를 참고하세요.
[/REGION]
-
##시퀀스 녹화
콘텐츠 제작 시간 단축에 도움이 되는 툴 한 가지는, **시퀀스 레코더** 로 게임플레이(나 레벨 시퀀스)를 녹화하여 새로운 레벨 시퀀스 애셋을 생성하는 것입니다.
@@ -294,7 +288,6 @@ EDL (Edit Decision List, 편집 결정 목록) 익스포트 작업의 일부분
EDL 사용법 단계별 안내는 [](Engine/Sequencer/HowTo/ImportExportEDLs) 문서를 참고하세요.
[/REGION]
-
### 커스텀 렌더 패스
시네마틱을 다른 렌더 패스로 익스포트하려는 경우, **Render Movie Settings** (렌더 무비 세팅) 창에서 할 수 있습니다.
diff --git a/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.INT.udn b/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.INT.udn
index 3f0b8123ef8b..9a6e21417e7f 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.INT.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.INT.udn
@@ -9,40 +9,8 @@ Version: 4.12
type:quick start
checkpoint:sequencerqs
tags:Sequencer
-
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Engine/Sequencer/QuickStart:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Sequencer/QuickStart]
- [/PARAM]
- [PARAM:description]
- %Engine/Sequencer/QuickStart:description%
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Engine/Sequencer/QuickStart:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Sequencer/QuickStart]
- [/PARAM]
- [PARAM:description]
- %Engine/Sequencer/QuickStart:description%
- [/PARAM]
-[/OBJECT]
-[/VAR]
+tags:Getting Started
+topic-image:sequencerQS_topic.png
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
diff --git a/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.JPN.udn b/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.JPN.udn
index d16ce7b2e86f..453c5b362bec 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.JPN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3244012
+INTSourceChangelist:3429249
Availability:Public
Title:シーケンサー クイック スタート
Crumbs: %ROOT%, Engine
@@ -10,40 +10,8 @@ Version:4.12
type:quick start
checkpoint:sequencerqs
tags:Sequencer
-
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Engine/Sequencer/QuickStart:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Sequencer/QuickStart]
- [/PARAM]
- [PARAM:description]
- %Engine/Sequencer/QuickStart:description%
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Engine/Sequencer/QuickStart:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Sequencer/QuickStart]
- [/PARAM]
- [PARAM:description]
- %Engine/Sequencer/QuickStart:description%
- [/PARAM]
-[/OBJECT]
-[/VAR]
+tags:Getting Started
+topic-image:sequencerQS_topic.png
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
diff --git a/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.KOR.udn b/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.KOR.udn
index 1a4dd46653b6..4d57262b2203 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.KOR.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/QuickStart/SequencerQuickStart.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3244012
+INTSourceChangelist:3429249
Availability:Public
Title: 시퀀서 퀵스타트
Crumbs: %ROOT%, Engine
@@ -10,40 +10,8 @@ Version: 4.12
type:quick start
checkpoint:sequencerqs
tags:Sequencer
-
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Engine/Sequencer/QuickStart:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Sequencer/QuickStart]
- [/PARAM]
- [PARAM:description]
- %Engine/Sequencer/QuickStart:description%
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Engine/Sequencer/QuickStart:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Sequencer/QuickStart]
- [/PARAM]
- [PARAM:description]
- %Engine/Sequencer/QuickStart:description%
- [/PARAM]
-[/OBJECT]
-[/VAR]
+tags:Getting Started
+topic-image:sequencerQS_topic.png
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
diff --git a/Engine/Documentation/Source/Engine/Sequencer/Sequencer.CHN.udn b/Engine/Documentation/Source/Engine/Sequencer/Sequencer.CHN.udn
index d7e4bc5c4bb1..7a49fe3c5be8 100644
--- a/Engine/Documentation/Source/Engine/Sequencer/Sequencer.CHN.udn
+++ b/Engine/Documentation/Source/Engine/Sequencer/Sequencer.CHN.udn
@@ -1,92 +1,47 @@
-INTSourceChangelist:3013123
+INTSourceChangelist:3429248
Availability:Public
Title:Sequencer 编辑器
-Crumbs:%ROOT%, Engine
-Description:Sequencer 是虚幻引擎 4 的多轨道编辑器,用于实时创建和预览过场动画序列。
+Crumbs: %ROOT%, Engine
+Description:Sequencer 是虚幻引擎 4 的多轨迹编辑器,用于实时创建和预览动画序列。
Navigation:topic
parent:Engine
-order:3
+order:4
+topic-image:sequencer_topic.png
social-image:sequencer_social.png
-
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Sequencer:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Sequencer:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Sequencer]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Engine/Sequencer:title%
- [/PARAM]
- [PARAM:description]
- %Engine/Sequencer:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/Sequencer]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+related:Engine/Matinee
+tags:Sequencer
[REGION:banner]
(convert:false)
[/REGION]
-**Sequencer** 编辑器是虚幻引擎 4 中的两个过场动画编辑工具之一。在 Sequencer 推出之前,制作过场动画的主要手段是在 [**Matinee**](Engine/Matinee) 编辑器中操作。
-与 Matinee 类似,Sequencer 使用了各种用于定义场景构成的专用 **轨道**。
-可以向 Sequencer 添加几条骨骼网格轨道,然后添加动画轨道使这些骨骼网格活动起来,再添加摄像机轨道和镜头切换轨道来提供在不同摄像机之间切换的视角,这样您就有了设置过场动画序列的基础。
+**Sequencer** 是虚幻引擎中的两大动画编辑工具之一。在 Sequencer 之前,编辑动画的主要手段是 [**Matinee**](Engine/Matinee) 编辑器。
+和 Matinee 相似,Sequencer 使用诸多特殊 **轨迹** 定义动画场的组成。
+为 Sequencer 添加一些骨架网格体轨迹,然后添加动画轨迹为骨架网格体设置动画,放入镜头轨迹和镜头切换轨迹构成镜头之间的透视和循环。这样便拥有了设置动画序列的基础。
-在本页您将找到有关 Sequencer 编辑器的不同方面的文档链接。
-如果您刚刚接触 Sequencer,建议您查看 **基础** 部分,其中包含 Sequencer 编辑器的大体概述,分别介绍 Sequencer 编辑器各组件的编辑器参考,以及包含多份操作指南的部分(其中都是关于如何用 Sequencer 执行某些任务的一次性页面)。
+此页面包含指向 Sequencer 编辑器各方面的文档链接。
+如您刚开始接触 Sequencer,推荐阅读 **概要** 部分。其中包括 Sequencer 编辑器的高阶总览、详解 Sequencer 编辑器组件的编辑器参考、帮助用户快速上手的快速入门指南、多个讲述如何利用 Sequencer 执行特定任务的单页指南,以及一个工作流提示章节。
+
+可在 Epic Games Launcher 的 Learn 标签中下载的 Sequencer Subway 项目范例将为您展示如何使用虚幻引擎 4 的 Sequencer 编辑器创建电影级的动画序列。
+
+## 开始
+
+[DIR(output:"topic" parent:"Engine/Sequencer" org:"hierarchy" end:"1" tags:"Getting Started")]
+
+## 概要
+
+[DIR(output:"topic" parent:"Engine/Sequencer" org:"hierarchy" tags:"!Getting Started" path:"!Engine/Sequencer/HowTo")]
+
+## 指南
+
+[DIR(output:"fancy" parent:"Engine/Sequencer/HowTo" org:"hierarchy" skill_Level:"Beginner")]
+[DIR(output:"fancy" parent:"Engine/Sequencer/HowTo" org:"hierarchy" skill_Level:"Intermediate")]
+[DIR(output:"fancy" parent:"Engine/Sequencer/HowTo" org:"hierarchy" skill_Level:"Advanced")]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 基础
- [/PARAM]
- [PARAM:links]
- * [](Engine\Sequencer\Overview "%Engine\Sequencer\Overview:description%")
- * [](Engine\Sequencer\ReferenceEditor "%Engine\Sequencer\ReferenceEditor:description%")
- * [](Engine\Sequencer\QuickStart "%Engine\Sequencer\QuickStart:description%")
- * [](Engine\Sequencer\HowTo "%Engine\Sequencer\HowTo:description%")
- * [](Engine\Sequencer\Workflow\ "%Engine\Sequencer\Workflow:description%")
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 相关链接
- [/PARAM]
- [PARAM:links]
- * [Matinee 编辑器](Engine/Matinee "%Engine/Matinee:description%")
- [/PARAM]
-[/OBJECT]
+## 示例
+[DIR(output:"topiccompact" parent:"Resources/Showcases" tags:"Sequencer")]
-### Decal Mask (デカールマスク)
+### Decal Mask (デカールマスク)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Decal Mask** モードは、ディファード デカールを受けることが可能なサーフェスを全て白で表示します。不可能なオブジェクトは黒で表示されます。
-### Diffuse Color (ディフューズ カラー)
+### Diffuse Color (ディフューズ カラー)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Diffuse Color** は基本色とマテリアルのアンビエントオクルージョン入力の結果を表示します。
@@ -313,7 +313,7 @@ not sure why it's in there
[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Shading Model** モードでは、シーンの各マテリアルの Shading Model プロパティの値が表示されます。
@@ -324,7 +324,7 @@ not sure why it's in there
|**マテリアルの Shading Model**|**Default Lit**|**Unlit**|**Subsurface**|**Preintegrated Skin**|
-### Material AO (マテリアル AO)
+### Material AO (マテリアル AO)
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -335,25 +335,25 @@ not sure why it's in there
[/PARAM]
[/OBJECT]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Material AO** visualization モードは、マテリアルの _Ambient Occlusion_ 入力に接続している全てのテクスチャリングまたは Material Expression ノードの結果を表示します。
-### Metallic (メタリック)
+### Metallic (メタリック)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Metallic** visualization モードは、マテリアルの _Metallic_ 入力に接続している全てのテクスチャリングまたは Material Expression ノードの結果を表示します。
-注意:メタルには、 0 または 1 のメタリック値を使用し、その間の値にはなりません。レイヤー ブレンディングのために 0 と 1 の間の値が発生しますが、物理マテリアルは常にメタルかそうでないかになります。
+注意:メタルには、 0 または 1 のメタリック値を使用し、その間の値にはなりません。レイヤー ブレンディングのために 0 と 1 の間の値が発生しますが、物理マテリアルは常にメタルかそうでないかになります。
-### Opacity (オパシティ)
+### Opacity (オパシティ)
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -364,13 +364,13 @@ not sure why it's in there
[/PARAM]
[/OBJECT]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Opacity** visualization モードは、マテリアルの Opacity 入力に接続している全てのテクスチャリングまたは Material Expression ノードの結果を表示します。上図では、キャラクターのドレッドロック (髪) に若干透明性があるのが分かると思います。
Opacity ビューモードは Opacity の使用中に不透明なマテリアルのみを表示します。 Opacity によってどれくらい遠くにライトが差し込むかを制御するので、サブサーフェス スキャタリング マテリアルには重要です。
-### Roughness (ラフネス)
+### Roughness (ラフネス)
[REGION:fullwidth]
@@ -378,24 +378,24 @@ Opacity ビューモードは Opacity の使用中に不透明なマテリアル
[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
-**Roughness** visualization モードは、マテリアルの Roughness 入力に接続している全てのテクスチャリングまたは Material Expression ノードの結果を表示します。様々なリフレクションが発生するところでラフネスが変化します。
+**Roughness** visualization モードは、マテリアルの Roughness 入力に接続している全てのテクスチャリングまたは Material Expression ノードの結果を表示します。様々な反射が発生するところでラフネスが変化します。
-### Scene Color (シーン カラー)
+### Scene Color (シーン カラー)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Scene Color** はポストプロセスが完了する前にシーンの結果を表示します。つまり、露出、ブルーム、色補正、アンチ エイリアスの前という意味です。上図では、露出が明るくされていないため、シーンが非常に暗く表示されています。
-### Scene Depth (シーン深度)
+### Scene Depth (シーン深度)
@@ -404,7 +404,7 @@ Opacity ビューモードは Opacity の使用中に不透明なマテリアル
[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Scene Depth** は白 (最も遠く) から黒 (最も近く) への一定のグラディエントでのシーン深度を表示します。
@@ -416,7 +416,7 @@ Opacity ビューモードは Opacity の使用中に不透明なマテリアル
[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Separate Translucency RGB** は、透過マテリアルであり、 Separate Translucency を使用しているすべてのマテリアルの色情報を表示します。
@@ -429,76 +429,76 @@ Opacity ビューモードは Opacity の使用中に不透明なマテリアル
[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Separate Translucency A** は、透過マテリアルであり、 Separate Translucency を使用しているすべてのマテリアルのアルファ情報のみを表示します。
-### Specular Color (スペキュラカラー)
+### Specular Color (スペキュラカラー)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**スペキュラ カラー** はマテリアルのスペキュラ反射に使用される色を表示します。通常は、基本色とメタリックの値の組み合わせから推測されます。
-### Specular (スペキュラ)
+### Specular (スペキュラ)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Specular** は、マテリアルの Specular 入力に接続された全てのテクスチャリングまたは Material Expression ノードの結果を表示します。
-### Subsurface Color (サブサーフェス カラー)
+### Subsurface Color (サブサーフェス カラー)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Subsurface Color** は、マテリアルの Subsurface Color 入力に接続された全てのテクスチャリングまたは Material Expression ノードの結果を表示します。
-### World Normal (ワールド空間の法線)
+### World Normal (ワールド空間の法線)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**World Normal** は不透明なサーフェスのワールド空間法線を表示します。
-### アンビエント オクルージョン (AO)
+### アンビエント オクルージョン (AO)
[REGION:fullwidth]

[/REGION]
-* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
+* ビューモードのホットキー:**なし (デフォルトでメニューのみ)**
**Ambient Occlusion (AO)** はシーンで行われたアンビエント オクルージョンの計算結果を表示します。この計算はエンジンがサーフェスと法線マップに基づいて行っているので、マテリアルに適用される AO テクスチャとは別のものです。
## Landscape Visualizers
-### Normal
+### Normal (法線)
[REGION:fullwidth]

[/REGION]
-**Normal** Landscape visualization モードは、通常の lit ステートのランドスケープを表示します。
+**Normal** Landscape visualization モードは、正常な lit ステートのランドスケープを表示します。
### LOD
@@ -511,7 +511,7 @@ Opacity ビューモードは Opacity の使用中に不透明なマテリアル
-### Layer Density (レイヤーの密度)
+### Layer Density (レイヤーの密度)
[REGION:fullwidth]

@@ -522,11 +522,11 @@ Opacity ビューモードは Opacity の使用中に不透明なマテリアル
-## Exposure (露出)
+## Exposure (露出)
[REGION:fullwidth]
[OBJECT:EmbeddedVideo]
diff --git a/Engine/Documentation/Source/Engine/UI/MeshPreviewScene/MeshPreviewScene.INT.udn b/Engine/Documentation/Source/Engine/UI/MeshPreviewScene/MeshPreviewScene.INT.udn
index 62ea2a7611fa..5eead8479c12 100644
--- a/Engine/Documentation/Source/Engine/UI/MeshPreviewScene/MeshPreviewScene.INT.udn
+++ b/Engine/Documentation/Source/Engine/UI/MeshPreviewScene/MeshPreviewScene.INT.udn
@@ -73,19 +73,19 @@ profiles that can be shared between the various editor windows.
1. Select a profile from the drop-down menu next to **Scene Profile Settings**.
[REGION:lightbox]
- [(w:350)](ProfileSelection.png)
+ [(w:350)](RemoveProfileSelection.png)
[/REGION]
2. Click on the button for **Remove Profile** to permanently delete the currently selected profile.
[REGION:lightbox]
- [(w:350)](ProfileSelection.png)
+ [(w:350)](RemoveProfileButton.png)
[/REGION]
3. You will now see that profile has been removed leaving only the default profile and any other previously set up profiles.
[REGION:lightbox]
- [(w:350)](ProfileSelection.png)
+ [(w:350)](RemoveProfileSelection1.png)
[/REGION]
diff --git a/Engine/Documentation/Source/Engine/UI/MeshPreviewScene/MeshPreviewScene.JPN.udn b/Engine/Documentation/Source/Engine/UI/MeshPreviewScene/MeshPreviewScene.JPN.udn
index 226bd4ab1ae5..e0b7fecca3da 100644
--- a/Engine/Documentation/Source/Engine/UI/MeshPreviewScene/MeshPreviewScene.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UI/MeshPreviewScene/MeshPreviewScene.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3277768
+INTSourceChangelist:3482378
Availability:Public
Title:メッシュのプレビュー シーン
Crumbs: %ROOT%, Engine
@@ -74,19 +74,19 @@ tags:User Interface
1. **[Scene Profile Settings]** のドロップダウン メニューからプロファイルを選択します。
[REGION:lightbox]
- [(w:350)](ProfileSelection.png)
+ [(w:350)](RemoveProfileSelection.png)
[/REGION]
1. 現在選択しているプロファイルを完全に削除するには、**[Remove Profile]** ボタンをクリックします。
[REGION:lightbox]
- [(w:350)](ProfileSelection.png)
+ [(w:350)](RemoveProfileButton.png)
[/REGION]
1. プロファイルが取り除かれて、デフォルト プロファイルと以前設定されたプロファイルがあればそれが残っているのがわかります。
[REGION:lightbox]
- [(w:350)](ProfileSelection.png)
+ [(w:350)](RemoveProfileSelection1.png)
[/REGION]
diff --git a/Engine/Documentation/Source/Engine/UI/ProjectSettings/ProjectSettings.INT.udn b/Engine/Documentation/Source/Engine/UI/ProjectSettings/ProjectSettings.INT.udn
index e903e246e74a..63a28458f7cd 100644
--- a/Engine/Documentation/Source/Engine/UI/ProjectSettings/ProjectSettings.INT.udn
+++ b/Engine/Documentation/Source/Engine/UI/ProjectSettings/ProjectSettings.INT.udn
@@ -44,7 +44,33 @@ Version: 4.9
[/VAR]
[REGION:fullwidth]
-
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[/REGION]
[TOC (start:2)]
diff --git a/Engine/Documentation/Source/Engine/UI/ProjectSettings/ProjectSettings.KOR.udn b/Engine/Documentation/Source/Engine/UI/ProjectSettings/ProjectSettings.KOR.udn
index 8041460885a1..d1fa8cc14106 100644
--- a/Engine/Documentation/Source/Engine/UI/ProjectSettings/ProjectSettings.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UI/ProjectSettings/ProjectSettings.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3481084
Availability:Public
Title:프로젝트 세팅
Crumbs:%ROOT%, Engine, Engine/UI
@@ -45,7 +45,33 @@ Version: 4.9
[/VAR]
[REGION:fullwidth]
-
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[/REGION]
[TOC (start:2)]
diff --git a/Engine/Documentation/Source/Engine/UI/PropertyMatrix/PropertyMatrix.INT.udn b/Engine/Documentation/Source/Engine/UI/PropertyMatrix/PropertyMatrix.INT.udn
index 49ccf4dc8800..91c7f3b1916f 100644
--- a/Engine/Documentation/Source/Engine/UI/PropertyMatrix/PropertyMatrix.INT.udn
+++ b/Engine/Documentation/Source/Engine/UI/PropertyMatrix/PropertyMatrix.INT.udn
@@ -44,7 +44,33 @@ Version: 4.9
[/VAR]
[REGION:fullwidth]
-
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
[/REGION]
[EXCERPT:Intro]
diff --git a/Engine/Documentation/Source/Engine/UI/PropertyMatrix/PropertyMatrix.KOR.udn b/Engine/Documentation/Source/Engine/UI/PropertyMatrix/PropertyMatrix.KOR.udn
index 228f9f46641c..8d134a7c08c5 100644
--- a/Engine/Documentation/Source/Engine/UI/PropertyMatrix/PropertyMatrix.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UI/PropertyMatrix/PropertyMatrix.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3481084
Availability:Public
Title:프로퍼티 매트릭스
Crumbs:%ROOT%, Engine, Engine/UI
@@ -45,7 +45,33 @@ Version: 4.9
[/VAR]
[REGION:fullwidth]
-
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
[/REGION]
[EXCERPT:Intro]
diff --git a/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.INT.udn b/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.INT.udn
index 34f426e3e81e..800b76a00d9c 100644
--- a/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.INT.udn
+++ b/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.INT.udn
@@ -1,28 +1,18 @@
Availability: Public
Title:Source Control
-Crumbs:%ROOT%, Engine, Engine/UI
+Crumbs: %ROOT%
Description:This document overviews the Source Control features.
-Version: 4.9
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Engine/UI/SourceControl:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/UI/SourceControl]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+type:overview
+skilllevel:Beginner
+Version: 4.16
+parent:Engine/UI
+order:
+tags:User Interface
+topic-image:SourceControlTopic.png
[TOC(start:2)]
-
-
-Unreal Editor supports source control, allowing teams to coordinate their game development and design efforts, as well as handling version control.
+The Unreal Editor has built-in support for source control packages. Source control is used to manage changes over time to code and data, and enables teams to coordinate their game development efforts.
[REGION:note]
Perforce and SVN are supported by default.
@@ -36,13 +26,13 @@ You can activate source control in one of two ways:
### Activating Source Control via Editor Preferences
-You can activate source control via the editor's main Preferences window (**Edit > Editor Preferences > Loading & Saving**).
+You can activate source control via the Editor Preferences window (**Edit > Editor Preferences > Loading & Saving**).

| Item | Description |
| --- | --- |
-| **Automatically Checkout on Asset Modification** | When checked, this will automatically check out any asset that has been modified. |
+| **Automatically Checkout on Asset Modification** | When checked, this will automatically check out any asset that has been modified. |
| **Prompt for Checkout on Package Modification** | When checked, a prompt will appear when you make changes to a source controlled-package, asking if you would like to check out (lock) that package. |
| **Add New Files when Modified** | This will add new files into source control when they are modified. |
| **Use Global Settings** | Use global source control login settings, rather than per-project. Changing this will require you to login again. |
@@ -50,7 +40,7 @@ You can activate source control via the editor's main Preferences window (**Edit
### Activating Source Control via the Content Browser
-You can also activate Source Control in the **Content Browser**. To do so, **right-click** any asset or folder. At the bottom of the context menu, in the **Source Control** section, click **Connect to Source Control**.
+You can also activate Source Control in the **Content Browser**. To do so, right-click any asset or folder. At the bottom of the context menu, in the **Source Control** section, click **Connect to Source Control**.

@@ -58,17 +48,16 @@ This will open a log-in screen where you can select your source-control system a

-Enter the appropriate information, and click **Accept Settings**. After source control is activated, the display of the assets in the **Content Browser** will change to reflect their source-control status, and some source-control options will be included on the **right-click** context menu.
+Enter the appropriate information, and click **Accept Settings**. After source control is activated, the display of the assets in the **Content Browser** will change to reflect their source-control status, and some source-control options will be included on the right-click context menu.
## Status Icons
-The **Content Browser** will display special icons on the **upper-right corner** of assets to give the source control status. Below are the available icons and their meanings:
-
+The **Content Browser** will display special icons on the upper-right corner of assets to give the source control status. Below are the available icons and their meanings:
[REGION:imagetable]
-| (w:178) | (w:178) | (w:178) | (w:178) | (w:178)
+| (w:178) | (w:178) | (w:178) | (w:178) | (w:178)
| --- | --- | --- | --- | --- |
| Checked out by you | Checked out by another user | Marked for add | Not in depot | Newer version of file exists in source control
@@ -76,7 +65,7 @@ The **Content Browser** will display special icons on the **upper-right corner**
## Source Control Actions
-While source control is active, the following context menu will be available when you **right-click** on an asset:
+While source control is active, the following context menu will be available when you right-click on an asset:

@@ -87,22 +76,30 @@ While source control is active, the following context menu will be available whe
| **History** | Gives a revision history list of the selected asset, allowing you to see previous edits. |
| **Diff Against Depot** | This allows you to check the asset against the version currently stored in the source control depot. |
-## Checking Out and In
+## Checking Out and Checking In
-To check out an asset for editing, simply **right-click** it and choose **Check Out**. However, when checking back in, there is a certain protocol which must be followed.
+To check out an asset for editing, simply right-click it and choose **Check Out**. When checking the asset back in, adhere to the following protocol:
-* **Right-click** on the asset and choose **Check In**. A dialog will appear with a required changelist description for the check-in.
+* Right-click on the asset and choose **Check In**. A dialog will appear with a required changelist description for the check-in.
* Enter a description, which will be added to the asset's revision history.
* Click **OK** when finished.
-

[REGION:note]
- A changelist description is required, so the *OK* button will not be enabled until a description is entered.
+A changelist description is required, so the **OK** button will not be enabled until a description is entered.
[/REGION]
+## Content Hot Reloading
+
+**Content Hot Reloading** is a new feature that the in-editor source control uses to reload content automatically when the content has been modified by source control operations. Currently, automatic reloading only works when performing source control operations via the in-editor source control integration, and any external changes won't trigger a reload. We intend to remove this requirement in a later engine version, so that external changes will also trigger hot reloads.
+
+Content Hot Reloading also provides the ability to reload an asset from its last saved state on command. This can be done by right-clicking the asset in the **Content Browser** and selecting the **Reload** option under the **Asset Actions** group. This can be extremely useful if you have unsaved changes to an asset that you wish to discard in order to revert back to the on-disk version.
+
+
+
+[REGION:note]This feature currently carries the requirement that you have source control active for your project.[/REGION:note]
## Deactivating Source Control
@@ -114,7 +111,5 @@ Only use this option if you are absolutely certain that you do not want to use s
**To deactivate source control**:
-1. In the upper-right corner of the Level Editor window, click the green, double-arrow icon (). This brings up the **Source Control Login** screen.
+1. In the upper-right corner of the Level Editor window, click the green double-arrow icon (). This brings up the **Source Control Login** screen.
1. Click the **Run Without Source Control** button. The green icon in the Level Editor window changes to a red circle with a slash (), to indicate that source control is not being used.
-
-
diff --git a/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.JPN.udn b/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.JPN.udn
index c079faa81931..6a92e7292906 100644
--- a/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.JPN.udn
@@ -1,29 +1,19 @@
-INTSourceChangelist:3082411
+INTSourceChangelist:3477895
Availability:Public
Title:ソースコントロール
-Crumbs:%ROOT%, Engine, Engine/UI
+Crumbs: %ROOT%
Description:このドキュメントでは、ソースコントロール機能の概要を説明します。
-Version:4.9
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Engine/UI/SourceControl:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Engine/UI/SourceControl]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+type:overview
+skilllevel:Beginner
+Version:4.16
+parent:Engine/UI
+order:
+tags:User Interface
+topic-image:SourceControlTopic.png
[TOC(start:2)]
-
-
-エディタでは、ソースコントロールをサポートしています。これにより、チームはゲーム開発、デザイン作業、バージョン管理を調整することができます。
+アンリアル エディタでは、ソース コントロール パッケージをビルトイン サポートしています。ソース コントロールは時間経過に伴うコードやデータの変更を管理するために使用します。チーム内でゲーム制作の作業を調整することができます。
[REGION:note]
Perforce と SVN はデフォルトでサポートされています。
@@ -35,23 +25,23 @@ Version:4.9
* レベル エディタの **[Preferences]** ウィンドウで有効にする
* **コンテンツ ブラウザ**
-### エディタの環境設定でソースコントロールを有効にする
+### Editor Preferences (エディタの環境設定) でソースコントロールを有効にする
-エディタのメインの [Preferences] ウィンドウでソースコントロールを有効にできます (**Edit > Editor Preferences > Loading & Saving** の順序で)。
+エディタの [Preferences] ウィンドウでソースコントロールを有効にすることができます (**Edit > Editor Preferences > Loading & Saving** の順序で選択)。

| アイテム | 説明 |
| --- | --- |
| **Automatically Checkout on Asset Modification** | チェックを入れると、変更されたアセットがあれば自動的にチェックアウトします。 |
-| **Prompt for Checkout on Package Modification** | チェックを入れると、ソースコントロールされたパッケージを変更する場合に、そのパッケージをチェックアウト (ロック) したいかを尋ねるプロンプトが表示されます。 |
+| **Prompt for Checkout on Package Modification** | チェックを入れると、ソースコントロールされたパッケージを変更する場合に、そのパッケージをチェックアウト (ロック) するかを尋ねるプロンプトが表示されます。 |
| **Add New Files when Modified** | ファイルが修正されると、その新規ファイルがソースコントロールへ追加されます。 |
| **Use Global Settings** | プロジェクト毎ではなく、グローバルなソースコントロールのログイン設定を使用します。これを変更するには再度ログインする必要があります。 |
| **Tool for diffing text** | テキスト ファイルを比較し差分を検出するために使うツールへのファイル パスを指定します。 |
### [コンテンツ ブラウザ] でソースコントロールを有効にする
-**[コンテンツ ブラウザ]** でソースコントロールをアクティベートすることもできます。これを行うには、任意のアセットまたはフォルダで **右クリック** します。コンテキスト メニューの一番下の**[ソースコントロール]** セクションで**[ソースコントロールへ接続]** をクリックします。
+**[コンテンツ ブラウザ]** でソースコントロールをアクティベートすることもできます。これを行うには、任意のアセットまたはフォルダで右クリックします。コンテキスト メニューの一番下の**[ソースコントロール]** セクションで**[ソースコントロールへ接続]** をクリックします。

@@ -59,17 +49,16 @@ Version:4.9

-適切な情報を入力して、**[Accept Settings]** をクリックします。ソースコントロールがアクティベートしたら、**[コンテンツ ブラウザ]** のアセット表示がソースコントロールのステータスを反映するように変更されます。いくつかのソースコントロールのオプションが **右クリック** のコンテキストメニューに含まれます。
+適切な情報を入力して、**[Accept Settings]** をクリックします。ソースコントロールがアクティベートしたら、**[コンテンツ ブラウザ]** のアセット表示がソースコントロールのステータスを反映するように変更されます。いくつかのソースコントロールのオプションが 右クリック のコンテキストメニューに含まれます。
##ステータスのアイコン
-**[コンテンツ ブラウザ]** には、ソースコントロールのステータスを示す特別なアイコンがアセットの **右上** に表示されます。以下は利用可能なアイコンとその意味を示したものです。
-
+**[コンテンツ ブラウザ]** には、ソースコントロールのステータスを示す特別なアイコンがアセットの 右上 に表示されます。以下は利用可能なアイコンとその意味を示したものです。
[REGION:imagetable]
-| (w:178) | (w:178) | (w:178) | (w:178) | (w:178)
+| (w:178) | (w:178) | (w:178) | (w:178) | (w:178)
| --- | --- | --- | --- | --- |
| 自分がチェックアウト | 他のユーザーがチェックアウト | 追加するためにマーク付けされたもの | デポにありません | ソースコントロールに新しいバージョンのファイルがあります
@@ -77,7 +66,7 @@ Version:4.9
## ソースコントロールのアクション
-ソースコントロールが有効である間は、アセット上で **右クリック** することにより、以下のコンテキスト メニューを利用できます。
+ソースコントロールが有効である間は、アセット上で右クリックすることにより、以下のコンテキスト メニューを利用できます。

@@ -88,34 +77,40 @@ Version:4.9
| **History** | 選択したアセットの改訂履歴リストが表示されます。過去の編集履歴を見ることができます。 |
| **Diff Against Depot** | 現在、ソースコントロール デポに保存されているバージョンに対してアセットをチェックすることができます。 |
-## チェックアウト・チェックイン
+## チェックアウトとチェックイン
-編集を行うためにアセットをチェックアウトするには、そのアセット上で **右クリック** して、**チェックアウト** を選択します。しかし、再度チェックインする場合は、必ず従うべき手順があります。
+編集を行うためにアセットをチェックアウトするには、そのアセット上で右クリックして、**チェックアウト** を選択します。アセットをチェックインして戻す場合、以下の手順に従います。
-* アセット上で **右クリック** し、**チェックイン** を選択します。チェックインについて必要なチェンジリストの説明欄を含むダイアログが表示されます。
+* アセット上で右クリックし、**チェックイン** を選択します。チェックインについて必要なチェンジリストの説明欄を含むダイアログが表示されます。
* 簡単な説明を入力します。これはアセットの改訂履歴に追加されます。
* 終了したら **[OK]** をクリックしてください
-

[REGION:note]
- チェンジリストの説明は必須であるため、入力されるまで *OK* ボタンは有効になりません。
+チェンジリストの説明は必須であるため、入力されるまで **OK** ボタンは有効になりません。
[/REGION]
+##コンテンツのホット リロード
+
+**Content Hot Reloading (コンテンツのホット リロード)** は、ソース コントロールの操作によってコンテンツに変更が加えられた場合に、インエディタのソース コントロールでコンテンツを自動的にリロードする新機能です。現在、この自動リロードはインエディタのソース管理の統合を使ってソース コントロール操作を行っている場合にのみ機能します。外部で変更を加えてもリロードはトリガーされません。今後のバージョンではこの要件をなくして、外部の変更によってもホットリロードがトリガーするようにするつもりです。
+
+コンテンツのホットリロードでは、指示すると最後に保存した状態からアセットをリロードする機能もあります。これは **コンテンツ ブラウザ** でアセットを右クリックして、 **Asset Actions** グループで **Reload** オプションを選択して行うことができます。これは、アセットに対して保存していない変更があり、それを破棄してディスク上のバージョンに戻したい場合に非常に便利です。
+
+
+
+[REGION:note]現在、この機能はプロジェクトに対してアクティブなソース コントロールを行っていることを前提とします。[/REGION:note]
## ソースコントロールを非アクティブにする
アクティブにした後に、ソースコントロールを非アクティブにしたい場合があるかもしれません。
[REGION:warning]
-ソースコントロールを使用したくないことが確実である場合に限り、このオプションを使用してください。ソースコントロールを非アクティブにすると、ソースコントロール システムとコンテンツが同期しなくなり、変更を登録できなくなります。
+ソースコントロールを使用しないことが確実である場合に限り、このオプションを使用してください。ソースコントロールを非アクティブにすると、ソースコントロール システムとコンテンツが同期しなくなり、変更を登録できなくなります。
[/REGION]
**ソースコントロールを非アクティブにするには** 以下の手順に従います。
-1. [Level Editor] ウィンドウの右上隅で、緑色の矢印が2 つあるアイコン () をクリックします。これで **Source Control Login** 画面が表示されます。
-1. **Run Without Source Control** ボタンをクリックします。レベル エディタ ウィンドウの緑色のアイコンが、斜線付きの赤い円 () に変わります。この赤い円は、ソースコントロールが使用されていないことを表します。
-
-
+1. [Level Editor] ウィンドウの右上隅で、緑色の矢印が 2 つあるアイコン () をクリックします。これで **[Source Control Login]** 画面が表示されます。
+1. **[Run Without Source Control]** ボタンをクリックします。レベル エディタ ウィンドウの緑色のアイコンが、斜線付きの赤い円 () に変わります。この赤い円は、ソースコントロールが使用されていないことを表します。
diff --git a/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.KOR.udn b/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.KOR.udn
index 5c2aff3cfd41..e452c671d68b 100644
--- a/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UI/SourceControl/SourceControl.KOR.udn
@@ -1,9 +1,13 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3464910
Availability: Public
Title:소스 콘트롤
-Crumbs:%ROOT%, Engine, Engine/UI
+Crumbs:
Description:소스 콘트롤 기능에 대한 개요서입니다.
-Version: 4.9
+Version: 4.16
+parent:Engine/UI
+type:overview
+skilllevel:Beginner
+tags:User Interface
[VAR:TopicCompact]
[OBJECT:TopicCompact]
@@ -22,7 +26,6 @@ Version: 4.9
[TOC(start:2)]
-
언리얼 에디터는 소스 콘트롤을 지원, 팀의 조직적인 게임 개발 및 디자인 작업을 지원함은 물론, 버전 관리도 해 줍니다.
[REGION:note]
@@ -67,7 +70,6 @@ Version: 4.9
콘텐츠 브라우저에는 애셋 **우측 상단에** 특수 아이콘으로 소스 콘트롤 상태를 표시합니다. 아래는 표시되는 아이콘과 그 의미입니다:
-
[REGION:imagetable]
| (w:178) | (w:178) | (w:178) | (w:178) | (w:178)
| --- | --- | --- | --- | --- |
@@ -97,13 +99,21 @@ Version: 4.9
* 완료되면 **OK** 를 클릭합니다.
-

[REGION:note]
Changelist 의 설명은 필수이므로, 입력하지 않으면 *OK* 버튼은 나타나지 않습니다.
[/REGION]
+## 콘텐츠 핫 리로드
+
+**Content Hot Reloading** (콘텐츠 핫 리로드)는 소스 콘트롤 작업에 의해 콘텐츠가 변경되었을 때 에디터내 소스 콘트롤에서 콘텐츠를 자동으로 리로드해 주는 신기능입니다. 자동 리로드는 현재 에디터내 통합된 소스 콘트롤을 통해서 소스 콘트롤 작업을 할 때만 작동하며, 외부에서는 변경해도 리로드가 발동되지 않습니다. 앞으로의 엔진 버전에서는 이러한 요건을 제거하여 외부에서 변경해도 핫 리로드가 발동되도록 할 계획입니다.
+
+콘텐츠 핫 리로드는 명령이 있을 때 애셋의 지난 번 저장 상태에서 리로드하는 기능도 제공합니다. 콘텐츠 브라우저에서 애셋에 우클릭하고 "애셋 액션" 그룹 아래 "리로드" 옵션을 선택하면 됩니다. 애셋에 저장하지 않은 변경사항을 버리고 디스크에 있는 버전으로 되돌리고자 할 때 매우 유용합니다.
+
+
+
+[REGION:note]이 기능은 현재 프로젝트에 소스 콘트롤이 활성화된 상태여야 합니다. 이러한 요건은 앞으로의 엔진 버전에서 제거될 예정입니다.[/REGION:note]
## 소스 콘트롤 비활성화
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.INT.udn
index 7dd765502ac9..36d66649ee6c 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.INT.udn
@@ -2,6 +2,7 @@ Availability:Docs
Title:2. Setting up the Actor Blueprint
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo, Engine\UMG\HowTo\Create3DWidgets
Description:Here we use an Actor Blueprint with a Widget Component to display our Widget Blueprint in 3D world space.
+Parent:Engine/UMG/HowTo/Create3DWidgets
Related: Engine/UMG
Related: Engine/UMG/UserGuide
Related: Engine/Blueprints
@@ -9,6 +10,7 @@ Version: 4.10
SkillLevel: Intermediate
checkpoint: umg_create_3d_howto
tags:UMG UI Designer
+Order: 2
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.JPN.udn
index 40b5e9344ab3..8269a0fbf211 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.JPN.udn
@@ -1,8 +1,8 @@
-INTSourceChangelist:3343833
-Availability:Docs
+Availability:Docs
Title:2.Actor ブループリントをセットアップする
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo, Engine\UMG\HowTo\Create3DWidgets
Description:Actor ブループリントを Widget コンポーネントと合わせて使用して、Widget ブループリントを 3D ワールド空間で表示します。
+Parent:Engine/UMG/HowTo/Create3DWidgets
Related:Engine/UMG
Related:Engine/UMG/UserGuide
Related:Engine/Blueprints
@@ -10,6 +10,7 @@ Version:4.10
SkillLevel:Intermediate
checkpoint: umg_create_3d_howto
tags:UMG UI Designer
+Order:2
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.KOR.udn
index c114df25cf12..8edfc57eedb3 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/ActorSetup/ActorSetup.KOR.udn
@@ -1,8 +1,9 @@
-INTSourceChangelist:3343833
+INTSourceChangelist:3478014
Availability:Docs
Title:2. 액터 블루프린트 구성
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo, Engine\UMG\HowTo\Create3DWidgets
Description:위젯 컴포넌트가 포함된 액터 블루프린트를 사용해서 위젯 블루프린트를 3D 월드 스페이스에 표시합니다.
+Parent:Engine/UMG/HowTo/Create3DWidgets
Related: Engine/UMG
Related: Engine/UMG/UserGuide
Related: Engine/Blueprints
@@ -10,6 +11,7 @@ Version: 4.10
SkillLevel: Intermediate
checkpoint: umg_create_3d_howto
tags:UMG UI Designer
+Order: 2
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.INT.udn
index 13e4bee00a1c..45c8c53c027c 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.INT.udn
@@ -2,6 +2,7 @@ Availability:Docs
Title:1. Setting up the Widget Blueprint
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo, Engine\UMG\HowTo\Create3DWidgets
Description:Here we create the Widget Blueprint that we want to display in the 3D game world.
+Parent:Engine/UMG/HowTo/Create3DWidgets
Related: Engine/UMG
Related: Engine/UMG/UserGuide
Related: Engine/Blueprints
@@ -9,6 +10,7 @@ Version: 4.10
SkillLevel: Intermediate
checkpoint: umg_create_3d_howto
tags:UMG UI Designer
+Order: 1
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.JPN.udn
index f8ea6018bc2a..4014a7eafddd 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.JPN.udn
@@ -1,8 +1,9 @@
-INTSourceChangelist:3343833
+INTSourceChangelist:3478014
Availability:Docs
Title:1.Widget ブループリントの設定
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo, Engine\UMG\HowTo\Create3DWidgets
Description:3D ゲームワールドで表示する Widget ブループリントを作成します。
+Parent:Engine/UMG/HowTo/Create3DWidgets
Related:Engine/UMG
Related:Engine/UMG/UserGuide
Related:Engine/Blueprints
@@ -10,6 +11,7 @@ Version:4.10
SkillLevel:Intermediate
checkpoint: umg_create_3d_howto
tags:UMG UI Designer
+Order:1
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.KOR.udn
index f4d176306912..891a22dcc428 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/Create3DWidgets/WidgetSetup/WidgetSetup.KOR.udn
@@ -1,8 +1,9 @@
-INTSourceChangelist:3343833
+INTSourceChangelist:3478014
Availability:Docs
Title:1. 위젯 블루프린트 구성
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo, Engine\UMG\HowTo\Create3DWidgets
Description:3D 게임 월드에 표시할 위젯 블루프린트를 만듭니다.
+Parent:Engine/UMG/HowTo/Create3DWidgets
Related: Engine/UMG
Related: Engine/UMG/UserGuide
Related: Engine/Blueprints
@@ -10,6 +11,7 @@ Version: 4.10
SkillLevel: Intermediate
checkpoint: umg_create_3d_howto
tags:UMG UI Designer
+Order: 1
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.INT.udn
index ef81eb96df3d..807896481b57 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.INT.udn
@@ -1,10 +1,19 @@
-Availability:Docs
+Availability:Public
Title:Creating Drag and Drop UI
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:Shows how you can create drag and droppable UI widgets with UMG.
Version: 4.15
SkillLevel: Intermediate
+parent:Engine/UMG/HowTo
+order:1
+checkpoint: editorqs
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
+
There may be instances in your project where you want your players to be able to interact with UI elements by dragging and dropping them onscreen.
This could be to customize interface layouts (positioning health bars or unit frames) or interacting with gameplay systems like inventory screens (adding/removing items around).
@@ -13,15 +22,21 @@ With UMG you can create these types of interactions with the **DragAndDropOperat
In this example, we take a look at how a player can drag and reposition a health bar on screen with the Left Mouse Button.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-kYkhxuJsVs4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kYkhxuJsVs4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
_At the end of this guide, you will have a UI widget that you can drag around inside the viewport and drop at a new location._
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.JPN.udn
index 7feb8190b38b..20ed9b0c6bf0 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.JPN.udn
@@ -1,11 +1,20 @@
-INTSourceChangelist:3343774
-Availability:Docs
+INTSourceChangelist:3452142
+Availability:Public
Title:ドラッグ&ドロップの UI を作成する
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:UMG を使って、ドラッグ、ドロップ可能な UI ウィジェットを作成する方法を説明します。
Version:4.15
SkillLevel:Intermediate
+parent:Engine/UMG/HowTo
+order:1
+checkpoint: editorqs
+Related:Engine/UMG
+Related:Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
+
プロジェクトでプレイヤーが画面上で UI エレメントをドラッグ&ドロップできるようにしたい場合があるかもしれません。
これには、インターフェースのレイアウトをカスタマイズしたり (ヘルスバーやユニット フレームを配置)、インベントリ画面 (アイテムを追加したり、取り除いたりします) でゲームプレイ システムとインタラクションするなどが考えられます。
@@ -14,15 +23,21 @@ UMG を使って、**DragAndDropOperation** ノードを使ってこうしたタ
この例では、プレイヤーが左マウスボタンを使って画面上のヘルスバーをドラッグして再配置する方法を示します。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-kYkhxuJsVs4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kYkhxuJsVs4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
_このガイドの最後まで進むと、ビューポート内でドラッグして、新しい場所にドロップできる UI ウィジェットを作成することができます。_
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.KOR.udn
index 48f3d54e2137..f372027d2d33 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/DragAndDrop.KOR.udn
@@ -1,11 +1,20 @@
-INTSourceChangelist:3343774
-Availability:Docs
+INTSourceChangelist:3452142
+Availability:Public
Title:드래그 앤 드롭 UI 제작
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:UMG 로 드래그 앤 드롭 가능한 UI 위젯을 만드는 법을 보여드립니다.
Version: 4.15
SkillLevel: Intermediate
+parent:Engine/UMG/HowTo
+order:1
+checkpoint: editorqs
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
+
프로젝트에서 플레이어가 UI 엘리먼트를 화면상에서 드래그 앤 드롭으로 상호작용할 수 있도록 했으면 싶은 때가 있습니다.
인터페이스 레이아웃 커스터마이징 (헬스 바 또는 유닛 프레임 위치 이동) 또는 인벤토리 화면같은 게임플레이 시스템 상호작용 (아이템 추가/제거) 등이 될 수 있습니다.
@@ -14,15 +23,21 @@ UMG 에서 **DragAndDropOperation** 노드로 이러한 상호작용 유형을
이 예제에서는 플레이어가 왼쪽 마우스 버튼으로 화면상의 헬스 바를 끌어 위치를 조정할 수 있도록 만드는 방법을 살펴봅니다.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-kYkhxuJsVs4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kYkhxuJsVs4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
_이 가이드를 마칠 즈음엔 뷰포트 안에서 드래그하여 새 위치에 드롭할 수 있는 UI 위젯이 생길 것입니다._
@@ -49,3 +64,4 @@ _이 가이드를 마칠 즈음엔 뷰포트 안에서 드래그하여 새 위
[클릭하면 시작합니다.](Engine\UMG\HowTo\DragAndDrop\ProjectSetup "%Engine\UMG\HowTo\DragAndDrop\ProjectSetup:title%")
[/REGION]
+
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.INT.udn
index b34e2968e4f2..0f3708187722 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.INT.udn
@@ -1,11 +1,18 @@
-Availability: Docs
+Availability: Public
Title:5. Finishing Up
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:We finish by configuring our drag widget, adding our Health Bar to our Main HUD for display and testing everything out.
+SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:5
+checkpoint: editorqs
Related: Engine/UMG
Related: Engine/UMG/UserGuide
-SkillLevel: Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
@@ -71,17 +78,24 @@ We then tell our Character Blueprint to add the **HUD** Widget Blueprint to the
When you play in the Editor, you can **Left-click** and drag the health bar on screen then drop it in a new location.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-kYkhxuJsVs4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kYkhxuJsVs4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
+
This is just an example of the elements you will need to start the Drag and Drop process.
Additional checking may be needed to ensure that players do not drag the widget outside of Safe Zones or potentially on top of other widgets.
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.JPN.udn
index 265cf2629aac..9f088c132c0b 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.JPN.udn
@@ -1,12 +1,19 @@
-INTSourceChangelist:3343774
-Availability:Docs
+INTSourceChangelist:3478014
+Availability:Public
Title:5.仕上げ
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:ドラッグ ウィジェットを設定し、ヘルスバーをメインの HUD に追加して表示させ、すべてのものをテストします。
+SkillLevel:Intermediate
+Version:4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:5
+checkpoint: editorqs
Related:Engine/UMG
Related:Engine/UMG/UserGuide
-SkillLevel:Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
@@ -72,19 +79,25 @@ tags:UMG UI Designer
エディタでプレイする場合、**左クリック** して画面上のヘルスバーをドラッグして、新しい位置にドロップします。
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-kYkhxuJsVs4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kYkhxuJsVs4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-これは、ドラッグ&ドロップのプロセスを開始するために必要な要素の一例にすぎません。
+これは、ドラッグ&ドロップのプロセスを開始するために必要な要素の一例にすぎません。
プレイヤーがセーフゾーンの外側にウィジェットをドラッグしないように、または他のウィジェットの上に重ならないようにさらにチェックが必要になることがあります。
%Steps%
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.KOR.udn
index 6b762ab1dd0a..e9b6e9824d33 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/FinishingUp/FinishingUp.KOR.udn
@@ -1,12 +1,19 @@
-INTSourceChangelist:3343774
-Availability: Docs
+INTSourceChangelist:3478014
+Availability: Public
Title:5. 마무리
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:드래그 위젯 환경설정, 메인 HUD 에 표시 및 테스트용 Health Bar 를 추가하여 마무리하도록 합니다.
+SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:5
+checkpoint: editorqs
Related: Engine/UMG
Related: Engine/UMG/UserGuide
-SkillLevel: Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
@@ -72,17 +79,24 @@ tags:UMG UI Designer
에디터에서 플레이 후, 화면에서 Health Bar 를 **좌클릭** 드래그 후 새 위치에 드롭합니다.
[OBJECT:EmbeddedVideo]
-[PARAMLITERAL:width]
-640
-[/PARAMLITERAL]
-[PARAMLITERAL:height]
-360
-[/PARAMLITERAL]
-[PARAMLITERAL:videoid]
-kYkhxuJsVs4
-[/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kYkhxuJsVs4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
+
이는 드래그 앤 드롭 프로세스를 시작하는 데 필요한 엘리먼트 예제일 뿐입니다.
플레이어가 위젯을 세이프 존 외부 혹은 다른 위젯 위에 드래그하지는 않았나 추가적인 확인이 필요할 수 있습니다.
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.INT.udn
index 4107ff515e0d..eb628fbc1ffd 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.INT.udn
@@ -1,11 +1,18 @@
-Availability: Docs
+Availability: Public
Title:3. On Drag Detected
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:In this step we set up what happens when drag is detected.
+SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:3
+checkpoint: editorqs
Related: Engine/UMG
Related: Engine/UMG/UserGuide
-SkillLevel: Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.JPN.udn
index ef2a929d87fe..376546bf1ed1 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.JPN.udn
@@ -1,12 +1,19 @@
-INTSourceChangelist:3343774
-Availability:Docs
+INTSourceChangelist:3478014
+Availability:Public
Title:3.On Drag Detected
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:ドラッグが検知された場合に、何を起こるかを設定します。
+SkillLevel:Intermediate
+Version:4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:3
+checkpoint: editorqs
Related:Engine/UMG
Related:Engine/UMG/UserGuide
-SkillLevel:Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.KOR.udn
index e5533be80f69..345d1eb2c9f9 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDragDetected/OnDragDetected.KOR.udn
@@ -1,12 +1,19 @@
-INTSourceChangelist:3343774
-Availability: Docs
+INTSourceChangelist:3478014
+Availability: Public
Title:3. 드래그 감지 시
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:이번 단계에서는 드래그를 감지했을 때 어떤 일이 벌어질지 구성합니다.
+SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:3
+checkpoint: editorqs
Related: Engine/UMG
Related: Engine/UMG/UserGuide
-SkillLevel: Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
@@ -73,3 +80,4 @@ tags:UMG UI Designer
%Steps%
+
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.INT.udn
index f6d73b4a67b7..d956a71e935d 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.INT.udn
@@ -1,11 +1,18 @@
-Availability: Docs
+Availability: Public
Title:4. On Drop
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:In this step, we configure what happens when the player drops the dragged widget.
+SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:4
+checkpoint: editorqs
Related: Engine/UMG
Related: Engine/UMG/UserGuide
-SkillLevel: Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.JPN.udn
index 78b0a9d9bfc9..8eb3d28a985a 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.JPN.udn
@@ -1,12 +1,19 @@
-INTSourceChangelist:3343774
-Availability:Docs
+INTSourceChangelist:3478014
+Availability:Public
Title:4.On Drop
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:プレイヤーがドラッグしたウィジェットをドロップしたときに何がおこるかを設定します。
+SkillLevel:Intermediate
+Version:4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:4
+checkpoint: editorqs
Related:Engine/UMG
Related:Engine/UMG/UserGuide
-SkillLevel:Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
@@ -74,7 +81,6 @@ tags:UMG UI Designer
_フルサイズ表示するにはここをクリック_
**Remove DPIScale** のチェックを外して、**Return Value** のチェックボックスにチェックを入れています。[](Engine/UMG/UserGuide/DPIScaling) を取り除く必要はなく、この関数を処理したため true として戻します。
-
このスクリプトでは、最初に既存の Health Bar ウィジェットを取り除いてから、Drag Offset に相対的に画面の新しい位置に再度追加しています。
HUD はドラッグしたウィジェットをドロップ処理するようにセットアップされて、ヘルスバーを表示させます。
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.KOR.udn
index d7905048b290..99f5e42940b1 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/OnDrop/OnDrop.KOR.udn
@@ -1,12 +1,19 @@
-INTSourceChangelist:3343774
-Availability: Docs
+INTSourceChangelist:3478014
+Availability: Public
Title:4. 드롭 시
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:이번 단계에서는 플레이어 드래그중인 위젯을 드롭했을 때 벌어지는 일을 설정합니다.
+SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:4
+checkpoint: editorqs
Related: Engine/UMG
Related: Engine/UMG/UserGuide
-SkillLevel: Intermediate
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
@@ -81,3 +88,4 @@ HUD 가 드래그중인 위젯 드롭을 처리하고 Health Bar 를 표시하
%Steps%
+
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.INT.udn
index aeb5d9325734..fbaf2d8abbe2 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.INT.udn
@@ -1,9 +1,18 @@
-Availability: Docs
+Availability: Public
Title:1. Project Setup
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:Here we create the assets that we'll need and our DragAndDropOperation Class.
SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:1
+checkpoint: editorqs
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.JPN.udn
index 95cb66a96def..6ddd90e2722a 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.JPN.udn
@@ -1,10 +1,19 @@
-INTSourceChangelist:3355771
-Availability:Docs
+INTSourceChangelist:3478014
+Availability:Public
Title:1.プロジェクト設定
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:必要なアセットと DragAndDropOperation クラスを作成します。
SkillLevel:Intermediate
+Version:4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:1
+checkpoint: editorqs
+Related:Engine/UMG
+Related:Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.KOR.udn
index 1ad6795e3158..9be9785e66f8 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/ProjectSetup/ProjectSetup.KOR.udn
@@ -1,10 +1,19 @@
-INTSourceChangelist:3355771
-Availability: Docs
+INTSourceChangelist:3478014
+Availability: Public
Title:1. 프로젝트 셋업
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:필수 애셋과 DragAndDropOperation 클래스를 만듭니다.
SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:1
+checkpoint: editorqs
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.INT.udn
index d2cecf662e43..83d6a583cc4e 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.INT.udn
@@ -1,9 +1,18 @@
-Availability: Docs
+Availability: Public
Title:2. Widget Setup
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:In this step we script what happens when the Left Mouse Button is pressed.
SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:2
+checkpoint: editorqs
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.JPN.udn
index b2a3a51ae7d0..a81e3d6f8650 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.JPN.udn
@@ -1,10 +1,19 @@
-INTSourceChangelist:3343774
-Availability:Docs
+INTSourceChangelist:3478014
+Availability:Public
Title:2.ウィジェットのセットアップ
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:左マウスボタンを押したときに何がおこるかをスクリプティングします。
SkillLevel:Intermediate
+Version:4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:2
+checkpoint: editorqs
+Related:Engine/UMG
+Related:Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.KOR.udn
index cdf7c5f8b9ec..256699a973cb 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/DragAndDrop/WidgetSetup/WidgetSetup.KOR.udn
@@ -1,10 +1,19 @@
-INTSourceChangelist:3343774
-Availability: Docs
+INTSourceChangelist:3478014
+Availability: Public
Title:2. 위젯 셋업
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:여기서는 왼쪽 마우스 버튼을 눌렀을 때 벌어지는 일에 대한 스크립트를 작성합니다.
SkillLevel: Intermediate
+Version: 4.15
+parent:Engine/UMG/HowTo/DragAndDrop
+order:2
+checkpoint: editorqs
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide
tags:UMG UI Designer
+tags:UI
+type:how-to
+
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.INT.udn
index f7d9a8540235..50dbdcda8e76 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.INT.udn
@@ -7,6 +7,7 @@ Related: Engine/UMG
Related: Engine/UMG/UserGuide
SkillLevel: Advanced
tags:UMG UI Designer
+Order: 3
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.JPN.udn
index 61eda027a0a4..fc6f2b72a46c 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3343902
+INTSourceChangelist:3376720
Availability:Public
Title:3.アクタのセットアップとテスト
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
@@ -8,6 +8,7 @@ Related:Engine/UMG
Related:Engine/UMG/UserGuide
SkillLevel:Advanced
tags:UMG UI Designer
+Order:3
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.KOR.udn
index 5e7479c52f57..53a243d5a6d2 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/ActorSetup/ActorSetup.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3343902
+INTSourceChangelist:3376720
Availability: Public
Title:3. 액터 구성 및 테스트
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
@@ -8,6 +8,7 @@ Related: Engine/UMG
Related: Engine/UMG/UserGuide
SkillLevel: Advanced
tags:UMG UI Designer
+Order: 3
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.INT.udn
index 5cd9fe1b733b..21331e3809c9 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:Here we add the Widget Interaction component to our character and create the other assets we will need.
SkillLevel: Advanced
tags:UMG UI Designer
+Order: 1
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.JPN.udn
index e59a56c47d4d..9d3e88091670 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3343902
+INTSourceChangelist:3376720
Availability:Public
Title:1.キャラクターのセットアップ
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:Widget Interaction コンポーネントをキャラクターに追加して、必要となる他のアセットを作成します。
SkillLevel:Advanced
tags:UMG UI Designer
+Order:1
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.KOR.udn
index b29e4678d5d3..46283282a732 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/CharacterSetup/CharacterSetup.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3343902
+INTSourceChangelist:3376720
Availability: Public
Title:1. 캐릭터 구성
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:여기서는 캐릭터에 Widget Interaction 컴포넌트를 추가하고 필요한 다른 애셋을 생성합니다.
SkillLevel: Advanced
tags:UMG UI Designer
+Order: 1
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.INT.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.INT.udn
index 234a16d966b0..e982039f5da4 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:Here we create the keypad and keypad display widgets that will appear in the level.
SkillLevel: Advanced
tags:UMG UI Designer
+Order: 2
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.JPN.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.JPN.udn
index 1ddc4fd6fad9..b92eeb58ad07 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3343902
+INTSourceChangelist:3376720
Availability:Public
Title:2.Widget ブループリントの設定
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:レベルに現れるキーパッドとキーパッド表示ウィジェットを作成します。
SkillLevel:Advanced
tags:UMG UI Designer
+Order:2
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.KOR.udn b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.KOR.udn
index b5108d6b7cc2..507b6a097933 100644
--- a/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/HowTo/VirtualKeyboards/WidgetSetup/WidgetSetup.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3343902
+INTSourceChangelist:3376720
Availability: Public
Title:2. 위젯 블루프린트 구성
Crumbs: %ROOT%, Engine, Engine/UMG, Engine/UMG/HowTo
Description:여기서는 레벨에 표시할 키패드와 키패드 디스플레이 위젯을 생성합니다.
SkillLevel: Advanced
tags:UMG UI Designer
+Order: 2
[VAR:Steps]
[OBJECT:Navigation]
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.CHN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.CHN.udn
index 983861284856..25614f4cad72 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.CHN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.CHN.udn
@@ -1,124 +1,28 @@
-INTSourceChangelist:2709429
-Availability:Public
-Title:字体
+INTSourceChangelist:3399451
+Availability: Public
Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
-Description:导入字体的详细操作流程、如何使用字体编辑器以及如何在 UMG 中使用字体。
-Related:Engine/UMG
-Related:Engine/UMG/UserGuide/WidgetBlueprints
-Related:Engine/UMG/UserGuide/WidgetTypeReference
-version:4.9
+Title: 字体
+Description: 字体相关页面的汇总页
+Type: Landing
+Version:4.15
+Parent: Engine/UMG/UserGuide
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide/WidgetBlueprints
+Related: Engine/UMG/UserGuide/WidgetTypeReference
+Order:1
+Tags: UMG UI Designer
+Tags: Fonts
-[TOC(start:2 end:2)]
-
-该页面介绍如何导入您自己的字体、使用 **字体编辑器** 以及 **虚幻动态图形 (UMG) UI 设计器** 中的字体。
-
-## 字体资产
-
-虚幻引擎 4 中的字体被列为 **字体** 资产,使用两种缓存方式:复合字体形式的 **运行时** 和早期的预计算 Font Atlas 方式 **离线**。可以在字体编辑器中打开字体资产来切换这两种方式(这样可以简单地将现有的字体资产从早期的方式转换成新的复合方式,而不需要替换它们)。
-
-## 创建和导入字体
-
-此部分介绍如何创建新字体资产,或者导入 TTF 或 OTF 文件来生成字体资产。
-
-### 创建字体资产
-
-要创建字体资产,请执行以下的步骤:
-
-1. 在 **内容浏览器** 中点击 **添加新内容** 按钮,然后在 **用户界面** 下选择 **字体** 选项。
-
- 
-
-1. 这将创建一个新的复合字体资产,并会提示您输入名称。
-
- 
-
-1. 输入名称后,会在资产上看到一个星号,表示该资产尚未保存。单击 **保存全部** 按钮保存资产,然后在出现的弹出菜单中确认保存。
-
- 
-
-
-[REGION:tip]
-除了单击 **添加新内容** 按钮,您也可以 **右键单击** **内容浏览器** 中的空白处来访问上下文菜单。在上下文菜单中可以单击 **用户界面** 和 **字体** 选项来创建字体资产。不要忘了保存资产!
+[REGION:fullwidth raw]
+
[/REGION]
-在编辑器中创建新字体资产时,将会创建一个空白复合字体资产,之后可以使用字体编辑器定义其参数。导入 TTF 或 OTF 文件时,会使用您所提供的字体示例生成一个新的复合字体资产(此时可以使用字体编辑器将其打开并定义额外的参数)。
-
-### 导入字体
-
-可以使用多种方法向编辑器中导入 TTF 或 OTF 文件。
-
-第一种方法是单击 **内容浏览器** 中的 **导入** 按钮。
-
-
-
-在出现的对话框中,导航至要导入的文件并单击它,再单击 **打开**。
-
-
-
-这会使用您所选择的文件,将该文件作为复合字体资产添加到内容浏览器中。
-
-
-
-也可以将 TTF 或 OTF 文件 **拖放** 到 **内容浏览器** 中以创建复合字体资产。
-
-
-
-使用拖放方式时,也会使用您所选择的文件自动创建一个复合字体资产。
-
-## 字体编辑器
-
-在 **内容浏览器** 中 **双击** 字体资产时,会在 **字体编辑器** 窗口中打开该字体资产。
-
-(w:820)
-
-字体编辑器窗口的细分结构如下:
-
-1. **工具栏菜单** - 可以在该菜单中保存所做出的更改,查找 **内容浏览器** 中的资产,更改预览窗口的背景颜色 (4) 或更改预览窗口的前景颜色(文本颜色)。有用于更新或导出所做更改的选项,但这些选项仅可以在 **离线** 缓存模式下使用。
-1. **默认字体系列** - 可以在该窗口中指定该字体资产所使用的默认字体系列。可以添加特定字体样式的版本(例如正常、粗体、斜体、下划线等)或者在一个复合字体内包含一系列不同的字体样式。如果创建了空白的字体资产,则也可以在该窗口中指定一个字体。添加字体后,也可以定义该字体使用的提示算法。
-1. **子字体系列** - 可以在该窗口中指定该字体资产所使用的子字体系列。可以在此指定字符范围,如果输入的字符在该范围内,则可以指定使用默认字体以外的其他字体样式(当您想针对不同语言使用不同字体类型时就可以这样做)。
-1. **预览** - 该窗口中可以预览字体,并且提供用于输入示例文本的文本输入框。
-1. **细节** - 可以在该窗口中更改字体缓存类型、字体大小和字体名称(针对运行时)。
- * 如果您使用的是早期的方法,则仍可以在离线缓存模式下更改字体的参数。
- * 您也可以将现有的字体资产从 **离线** 转换成 **运行时**,而无需替换字体。
-
-下面给出了一个字体资产示例。
-
-[REGION:lightbox]
-[(w:820)](ExampleFontLayout.png)
-[/REGION]
-
-_点击查看全图。_
-
-复合字体始终包含一个默认字体系列,也可能包含任意数量的子字体系列,它们应用于给定范围的字符。每个字体系列本身由任意数量的字体组成,可以根据这些字体的样式对它们进行命名。在运行时,会在字体系列内可用于该字符范围的字体中,确定出对每个字符最合适的字体,并加以使用。
-
-如上图示例所示,日语文本属于日语字体系列的字符范围中,因此日文部分使用“Source Han Sans”绘制,而不是默认字体系列“Roboto”。子字体系列中的字体最好根据名称匹配选择,如对于正常、黑体和细体,但也可以随机应变地基于默认字体的属性进行匹配,如对于粗斜体(这将会自动选择粗体日语字体,因为该字体包含了粗体属性,是最佳匹配)。
-
-
-## UMG 中的字体
-
-创建 [Widget Blueprint](Engine/UMG/UserGuide/WidgetBlueprints) 并放置了包含文本(如文本框或文本控件)的控件之后,在单击该控件并访问 **细节** 面板时,可以在 **外观** 下面看到 **字体** 选项。
-
-
-
-默认情况下,引擎使用 **Roboto**,但可以单击下拉菜单并选择和使用任何已创建的复合字体资产来替换。
-
-
-
-也可以从该菜单中创建一个复合字体,并指定新资产保存的位置(默认为空白,必须填写)。
-
-选择复合字体后,可以在第二个下拉菜单从 **默认字体系列** 中选择要使用的字体。
-
-
-
-也可以在输入框中指定字体的大小。
-
-
-
-目前,UMG 仅支持 **运行时** 缓存的字体资产。另外,如果您指定了使用早期方式的字体,那么基于现有文件的字体设置并不会丢失,但是为了继续进行,您需要创建一个复合字体资产以便在 UMG 中使用自定义字体。
-
-
+**字体** 是一类可以和 Text Actor 一起使用的资源(尤其是和 [UMG UI Designer](Engine/UMG) 一起使用),在用户界面上增加更多的元素。
+下面这些页面会更详尽的解释什么是字体,如何在虚幻引擎 4 中使用字体。还有一个 How-To 的引导,用来说明如何导入、创建字体以及如何在 UMG 中使用字体。
+[DIR(output:"topiccompact" parent:"Engine/UMG/UserGuide/Fonts" org:"hierarchy" tags:"Fonts" end:"1")]
+[DIR(output:"topiccompact" parent:"Engine/UMG/UserGuide/Fonts/HowTo" org:"hierarchy" tags:"Fonts" end:"1")]
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.INT.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.INT.udn
index 525ce43000cf..c23e784e59f2 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.INT.udn
@@ -1,275 +1,28 @@
-Availability:Public
-Title: Fonts
+Availability: Public
Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
-Description:Details the process of importing fonts, working with the Font Editor and using fonts in UMG.
-Parent: Engine/UMG
+Title: Fonts
+Description: Landing page for all the documentation relating to Fonts.
+Type: Landing
+Version:4.15
+Parent: Engine/UMG/UserGuide
Related: Engine/UMG
Related: Engine/UMG/UserGuide/WidgetBlueprints
Related: Engine/UMG/UserGuide/WidgetTypeReference
-Version: 4.15
-tags:UMG UI Designer
+Order:1
+Tags: UMG UI Designer
+Tags: Fonts
-[TOC(start:2 end:2)]
-
-This page covers how to import your own fonts, using the **Font Editor**, and fonts in the **Unreal Motion Graphics (UMG) UI Designer**.
-
-## Font Assets
-
-Fonts in Unreal Engine 4 are categorized as a **Font** asset and use two caching methods, **Runtime** which is in the form of a Composite Font or **Offline** which is the older
-pre-computed Font Atlas method. You can switch between the two methods by opening up a Font asset in the Font Editor (this provides a simple way to convert existing Font assets
-from the older method to the new composite method without having to replace them).
-
-## Font Face Assets
-
-The **Font Face** asset is created when you import a font and it stores the font data that can be referenced by the Font asset. This means that the same font data can be reused across
-multiple Font assets or even with multiple typefaces within the asset, and ultimately reduces memory consumption.
-
-(w:400)
-
-From the Font Face editor window you have access to the settings for **Hinting** and **Loading Policy**.
-
-[REGION:simpletable]
-| Property | Description |
-| --- |--- |
-| Source File Name | The filename of the font face we were created from. This may not always exist on disk, as we may have previously loaded and cached the font data inside this asset. |
-| Hinting | The hinting algorithm to use with the font face. [INCLUDE:#hinting] |
-| Loading Policy | Enum controlling how this font face should be loaded at runtime. See the enum for more explanations of the options. [INCLUDE:#loadingpolicy]|
+[REGION:fullwidth raw]
+
[/REGION]
-
-
-
-## Upgrading Font Assets to 4.15 and Later
-
-Starting with Unreal Engine 4.15, Font assets have now been split into two separate assets; Font and Font Faces. Existing Font assets will upgrade their internal font data into
-embedded Font Face assets during load, but will not automatically split them. You will have to do this by opening the Font Editor and selecting **Upgrade Data** under the **Default Font Family** list.
-This will enable you to edit and share these assets with other Font assets that you've created.
-
-(w:175)
-
-After you click **Upgrade Data**, you will be prompted to save the new Font Face asset.
-
-
-## Font Editor
-
-When you **Double-click** on a Font asset in the **Content Browser**, it will open up inside the **Font Editor** window.
-
-(w:820)
-
-A breakdown of the Font Editor Window is presented below:
-
-#### Toolbar Menu
-
-(w:550)
-
-From this menu, you can save any changes you make, find the asset in the **Content Browser**, change the Background Color of the preview window (4) or
-the Foreground Color (text color) in the preview window. There are options for Updating or Exporting changes made, however, these options are only available
-within the **Offline** cache mode.
-
-#### Default Font Family
-
-(w:550)
-
-In this window, you can assign the Default Font Family for use with this Font asset. You can add versions of a particular Font style (for example Normal,
-Bold, Italics, Underline, etc.) or have a collection of different Font styles as one Composite Font. If you have created a blank Font asset, you can assign
-a font from inside this window as well. Once a Font has been added, you can also define the hinting algorithm used with the font.
-
-#### Sub-Font Family
-
-(h:50)
-
-In this window, when you click the **Add Sub-Font Family* button, you can assign the Sub-Font Family for this Font asset to use.
-
-[(w:550)](SubFontFamily.png)
-
-Here you can specify a Character Range and if a character entered falls within the range you can specify a different Font style
-to use instead of the Default. This is useful for when you want to use different Font types for different languages.
-
-
-#### Preview
-
-(w:550)
-
-This window allows you to preview your fonts and provides a text entry box for entering sample texts.
-
-##### Draw For Metrics
-
-[(w:550)](PreviewDrawFontMetrics.png)
-
-The **Draw Font Metrics** toggle will overlay the line height, glyph bounding boxes, and base-line as part of the preview.
-
-* **Base Line** - This is the line in which the text sits.
-* **Line Bounds** - This is the bounding box created for the length of the given text string.
-* **Grapheme Cluster Bounds** - This is the bounding box drawn around what is considered a logical character in a given language, and may be comprised of several glyphs (eg. a base character and accent glyph).
-* **Glyph Bounds** - This is the bounding box drawn around the given glyph.
-
-#### Details
-
-(w:500)
-
-In this window, you can change the Font Cache Type as well as change the Font Size and Font Name (for Runtime).
-* If you are using the older method, you can still change the parameters for your Font while in Offline cache mode.
-* You can also convert any existing Font assets from **Offline** to **Runtime** without having to replace them.
-
-
-An example Font asset is provided below.
-
-[REGION:lightbox]
-[(w:820)](ExampleFontLayout.png)
-[/REGION]
-
-_Click image for a full view._
-
-A Composite Font will always contain a Default Font Family, and may also contain any number of Sub-Font Families that should be used for a given range of characters. Each Font Family is itself made up of any number of Fonts that can be named based on their style. At runtime, the most suitable Font to use for each character based on the Fonts available in the Font Family for that character range is used.
-
-As seen in the example image above, the Japanese text falls within the character ranges of the Japanese font family and so is drawn using Source Han Sans rather than the Default Font Family Roboto. Fonts in a Sub-Font Family are preferably chosen by name match, as in the case of Regular, Bold, and Light, however can also fallback to matching based on the attributes of the Default Font, as is the case of Bold Italic (it automatically chose the Bold Japanese font because the font contained the Bold attribute, and was the best match).
-
-
-## Creating & Importing Fonts
-
-This section illustrates how to create a new Font asset and the ways you can import TTF or OTF files to generate your Font Face and Font assets.
-
-### Creating Font Assets
-
-To create a Font asset, follow the steps below:
-
-1. Click the **Add New** button inside the **Content Browser**, then under **User Interface** select the **Font** option.
-
- [REGION:lightbox]
- [(h:500)](NewFont.png)
- [/REGION]
- [REGION:caption]
- _Click image for full view._
- [/REGION]
-1. A new Composite Font asset will be created, prompting you to give it a **Name**.
-
- 
-
-1. Once you enter a name, you will notice an asterisk appears on the asset, this indicates that the asset has not be saved. Click the **Save All** button to save your asset, then confirm the save in the pop-up menu that appears to finish.
-
- 
-
-
-[REGION:tip]
-Instead of clicking the **Add New** button, you can instead **Right-click** in an empty space in the **Content Browser** to access the context menu. From there, you can click the **User Interface** and **Font** option to create a Font asset. Do not forget to save your assets!
-[/REGION]
-
-When you create a new Font asset inside the Editor, it will create an empty Composite Font asset which you can then define its parameters using the Font Editor. When you import a TTF or OTF file, a new Font Face asset is created
-and you have the option to automatically create a Composite Font asset using the font data you provided (at which point you can define additional parameters by opening it up in the Font Editor).
-
-
-### Importing Fonts
-
-You can import either TTF or OTF files into the Editor, and you can do so in a number of different ways demonstrated below.
-
-##### Importing Using the Content Browser
-
-You can use the Content Browser's **Import** button to select your TTF or OTF font file.
-
-1. In the Content Browser, click the **Import** button.
-
- 
-1. In the dialogue box that appears, navigate to the TFF or OTF font file you want to import and select it. Then, click **Open**.
-
- (w:500)
-1. After a moment, the **Font Face Import Options** will appear.
-
- (w:500)
-
- Select **Yes** from the options listed to create your Font Face asset and your Composite Font asset in your Content Browser.
-
- 
-
-
-##### Importing Using Drag-and-drop
-
-You can **Drag-and-drop** a TTF or OTF file directly into the Content Browser to create your font assets.
-
-1. Navigate to the folder where you've stored your TTF or OTF file(s). Select and hold to drag one over the **Content Browser** to start the import process.
-
- (w:650)
-1. After a moment, the **Font Import Options** will appear.
-
- (w:500)
-
- Select **Yes** from the options listed to create your Font Face asset and your Composite Font asset in your Content Browser.
-
- 
-
-
-#### Importing Using the Font Editor
-
-You can import and create Font Face assets directly from the Default Font Family list in the **Font Editor**.
-
-1. Open an existing **Font** asset or create a new one using the **Add New** button in the Content Browser.
-
- (w:600)
-1. Click the **Add Font** button to add a new font selection to the Default Font Family.
-
- (w:500)
-1. Select the **folder** button next to the selection dropdown.
-
- (w:500)
-1. In the dialogue box that appears, navigate to the TFF or OTF font file you want to import and select it. Then, click **Open**.
-
- (w:500)
-1. Next, the **Save Font Face** window will appear. Give your font a name and choose the save location in your game folder's hierarchy. Then, click **Save**.
-
- (w:500)
-
- The Font Face asset can now be found in your folder hierarchy.
-
- 
-
-
-## Fonts in UMG
-
-Once you have created a [Widget Blueprint](Engine/UMG/UserGuide/WidgetBlueprints) and placed a Widget that contains Text (such as a Text Box or Text Widget), when clicking on it and accessing the **Details** panel, under **Appearance**, you will see a **Font** option.
-
-
-
-By default the Engine uses **Roboto**, however, if you click the drop-down menu, any Composite Font assets created can be selected and used instead.
-
-
-
-You can also choose to create a Composite Font from this menu and specify where the new asset should be saved (it will be blank by default and you will have to fill it out).
-
-Once you select your Composite Font, the second drop-down menu will allow you to select a font to use from the **Default Font Family**.
-
-
-
-You can also specify the size of the font in the input box.
-
-
-
-Currently, UMG only supports **Runtime** cached font assets. Also, if you have assigned fonts using the old method, none of your existing file based font settings will be lost, however going forward, you will need to create a Composite Font asset in order to use custom fonts with UMG.
-
-You can style your **Font** by [setting colors, Materials, and outline properties](Engine/UMG/UserGuide/Fonts/Materials), as well as by using shadows.
-
+A **Font** is an asset that can be used with Text Actors (especially with the [UMG UI Designer](Engine/UMG)) to add visual styling to customized user interfaces. The following
+pages will cover, in more detail, what Fonts are, and how to use them in Unreal Engine 4. Additionally, you'll find some how-to guides, showing you how to import, create, and
+use fonts within UMG.
+[DIR(output:"topiccompact" parent:"Engine/UMG/UserGuide/Fonts" org:"hierarchy" tags:"Fonts" end:"1")]
+[DIR(output:"topiccompact" parent:"Engine/UMG/UserGuide/Fonts/HowTo" org:"hierarchy" tags:"Fonts" end:"1")]
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.JPN.udn
index dc81908f9033..6427a5ccda6a 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.JPN.udn
@@ -1,275 +1,29 @@
-INTSourceChangelist:3361457
+INTSourceChangelist:3399451
Availability:Public
-Title:フォント
Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
-Description:フォントのインポート、フォント エディタでの作業、および UMG でフォントを使用するプロセスの詳細を説明します。
-Parent:Engine/UMG
+Title:Fonts
+Description:Description:フォントに関する全ドキュメントへのランディング ページです。
+Type:Landing
+Version:4.15
+Parent:Engine/UMG/UserGuide
Related:Engine/UMG
Related:Engine/UMG/UserGuide/WidgetBlueprints
Related:Engine/UMG/UserGuide/WidgetTypeReference
-Version:4.15
-tags:UMG UI Designer
+Order:1
+Tags:UMG UI Designer
+Tags:Fonts
-[TOC(start:2 end:2)]
-
-このページでは、独自のフォントのインポート、 **フォント エディタ** の使用、および **Unreal Motion Graphics (UMG) UI デザイナ** のフォントについて説明します。
-
-## Font アセット
-
-UE4 のフォントは **Font** アセットとして分類され、 2 種類のキャッシング方法を使用します。**ランタイム** は、コンポジット フォントの形式をとります。**オフライン** は、
-事前計算された古いフォント アトラス方式です。フォント エディタで Font アセットを開くことで、この 2 つの方式を切り替えることができます (これは古い方式の既存のフォント アセットを置き換える必要なく
-新しいコンポジット方式に変換する簡単な方法です)。
-
-## Font Face アセット
-
-**Font Face** アセットは、フォント インポート時に作成され、Font アセットが参照できるフォント データを保存します。つまり、同じフォント データを複数のフォント アセットで再利用することができます。
-さらに、ひとつの Font アセット内で複数の書体を再利用することもできます。その結果、メモリ消費を減らします。
-
-(w:400)
-
-Font Face エディタ ウィンドウから、**[Hinting]** と **[Loading Policy]** の設定にアクセスすることができます。
-
-[REGION:simpletable]
-| プロパティ | 説明 |
-| --- |--- |
-| Source File Name | 書体の作成元のファイル名です。必ずしもディスク上にありません。フォント データを過去にロードして、このアセット内にキャッシュしたかもしれないからです。 |
-| Hinting | 書体と合わせて使うヒント アルゴリズムです。 [INCLUDE:#hinting] |
-| Loading Policy | ランタイムにこうした書体がどのようにロードされるかを制御する列挙型変数です。オプションの詳細説明については、列挙型変数をご覧ください。 [INCLUDE:#loadingpolicy]|
+[REGION:fullwidth raw]
+
[/REGION]
-
-
-
-## Font アセットを 4.15 以降にアップグレード
-
-アンリアル エンジン 4.15 から Font アセットは、Font と Font Faces という 2 つのアセットに分かれました。ロード中に既存の Font アセットはその内部フォントデータを、埋め込まれた Font Face アセットに自動的にアップグレードします。
-しかし、自動的にそれらを分割はしません。これを行うには、Font エディタを開き、**Default Font Family** リストで **Upgrade Data** を選択します。
-これらのアセットを編集したり、作成した他の Font アセットと共有できるようになります。
-
-(w:175)
-
-**[Upgrade Data]** をクリックすると、新しい Font Face アセットを保存するように促されます。
-
-
-## フォント エディタ
-
-**コンテンツ ブラウザ** で Font アセットを **ダブルクリック** すると、**フォント エディタ** ウィンドウ内でそのフォント アセットが開きます。
-
-(w:820)
-
-以下は Font Editor ウィンドウの各部を示したものです。
-
-#### ツールバー メニュー
-
-(w:550)
-
-加えた変更を保存し、**[コンテンツ ブラウザ]** でアセットを見つけ、プレビュー ウィンドウの背景色を変更したり、
-文字の表示色 (テキスト カラー) を変更することができます。加えた変更を更新またはエクスポートするオプションがあります。しかし、こうしたオプションは
-**オフライン** キャッシュ モード内でのみ利用可能です。
-
-#### デフォルト フォント ファミリー
-
-(w:550)
-
-このウィンドウでは Font アセットと合わせて使用するデフォルト フォント ファミリーを指定することができます。特定のフォント スタイルのバージョンを追加したり (例えば、標準、太字、イタリック、アンダーラインなど)、
-ひとつのコンポジット フォントとして様々なフォント スタイルのコレクションを持つことができます。ブランクの Font アセットを作成したらこのウィンドウ内からフォントを
-指定することもできます。フォントを追加したらフォントと併用するヒンティング アルゴリズムを定義することができます。
-
-#### サブ フォント ファミリー
-
-(h:50)
-
-このウィンドウでは、 **Add Sub-Font Family** ボタンをクリックすると、Font アセットが使用するサブフォント ファミリーを指定することができます。
-
-[(w:550)](SubFontFamily.png)
-
-ここでは、文字範囲 (Character Range) を指定し、入力した文字がこの範囲に入ったらデフォルトの代わりに
-別のフォント スタイルを指定することができます。これは異なる言語で様々なフォント タイプを使用したい場合に役立ちます。
-
-
-#### プレビュー
-
-(w:550)
-
-このウィンドウでは、フォントをプレビューすることが可能であり、サンプル テキストを入力するためのテキスト エントリ ボックスがあります。
-
-##### Draw For Metrics
-
-[(w:550)](PreviewDrawFontMetrics.png)
-
-**Draw Font Metrics** を切り替えるとは、ラインの高さ、グリフのバウンディング ボックス、ベース ラインをプレビューでオーバーレイ表示します。
-
-* **Base Line** - テキストが入るラインです。
-* **Line Bounds** - 任意のテキスト文字列の長さに対して作られたバウンディング ボックスです。
-* **Grapheme Cluster Bounds** - 任意の言語で論理文字とみなされる物の回りに描画されるバウンディング ボックスです。いくつかのグリフを含むことがあります (例、基本文字とアクセントのグリフ)。
-* **Glyph Bounds** - 任意のグリフ周囲に描画されるバウンディング ボックスです。
-
-#### Details
-
-(w:500)
-
-このウィンドウではフォント キャッシュ タイプ、フォント サイズ、フォント名 (ランタイム用) を変更することができます。
-* 古い方式を使用している場合は、オフライン キャッシュ モードでフォントのパラメータを変更することができます。
-* 既存のフォント アセットを置き換えることなく **オフライン** から **ランタイム** に変換できます。
-
-
-以下はフォント アセットの例です。
-
-[REGION:lightbox]
-[(w:820)](ExampleFontLayout.png)
-[/REGION]
-
-_画像をクリックして全画面表示にします。_
-
-コンポジット フォントには常にデフォルト フォント ファミリーが含まれます。任意の文字範囲で使用するサブフォント ファミリーをいくつでも含むことができます。各フォント ファミリー自体は、スタイルに基づいて命名できる任意の数のフォントから構成されます。ランタイムには、その文字範囲に対してフォント ファミリーで利用可能なフォントに基づき各文字に最適なフォントが使用されます。
-
-上の画像でわかるように、日本語のテキストは日本語フォント ファミリーの文字範囲にあります。そのため、デフォルト フォント ファミリーの Roboto ではなく Source Han Sans を使用して描画されます。サブフォント ファミリーのフォントは Regular、Bold、および Light の場合と同様に名前の一致によって選択されるのが理想的です。しかし、Bold Italic のようにデフォルト フォントの属性に基づきマッチするようにフォールバックすることもできます (自動的に太字の日本語フォントが選択されます。このフォントには、太字属性が含まれており、最適マッチであったためです)。
-
-
-## フォントの作成とインポート
-
-このセクションでは、新規 Font アセットの作成方法、TTF ファイルまたは OTF ファイルをインポートして Font Face アセットと Font アセットを生成する方法について説明します。
-
-### フォント アセットを作成する
-
-フォント アセットを作成するには、以下の手順に従います。
-
-1. **コンテンツ ブラウザ** で、 **[Add New]** ボタンをクリックし、 **[User Interface (ユーザーインターフェース)]** で **[Font]** オプションをクリックします。
-
- [REGION:lightbox]
- [(h:500)](NewFont.png)
- [/REGION]
- [REGION:caption]
- _画像をクリックしてフルサイズで表示_
- [/REGION]
-1. 新しい Composite Font アセットが作成されます。**名前** を付けるよう促されます。
-
- 
-
-1. 名前を入力したらアセットにアスタリスク記号が付いているのがわかります。これはアセットが保存されていないことを示します。**[Save All]** ボタンをクリックしてアセットを保存します。次に表示されるポップアップ メニューで保存を確認して終了します。
-
- 
-
-
-[REGION:tip]
-**[Add New]** ボタンをクリックする代わりに **[コンテンツ ブラウザ]** の空きエリアで **右クリック** してコンテキスト メニューを呼び出すこともできます。そこから **[User Interface]** と **[Font]** オプションをクリックして Font アセットを作成します。アセットを必ず保存してください!
-[/REGION]
-
-エディタで新規 Font アセットを作成すると、空のコンポジット フォント アセットが作成され、フォント エディタ を使用してそのパラメータを定義することができます。TTF ファイルまたは OTF ファイルをインポートする場合、新しい Font Face アセットが作成されます。
-指定したデータを使用して Composite Font アセットを自動的に作成するオプションがあります (この時点でフォント エディタを開いてパラメータを追加で定義することができます)。
-
-
-### フォントのインポート
-
-TTF ファイルまたは OTF ファイルをエディタにインポートすることができます。これを行うには以下のように様々な方法があります。
-
-##### コンテンツ ブラウザを使ってインポートする
-
-コンテンツ ブラウザの **[Import]** ボタンを使って TTF または OTF のフォントファイルを選択することができます。
-
-1. コンテンツ ブラウザで **[Import]** ボタンをクリックします。
-
- 
-1. 表示されるダイアログ ボックスでインポートする TFF または OTF のフォント ファイルに移動し、選択します。**[Open]** をクリックします。
-
- (w:500)
-1. しばらくすると、**[Font Face Import Options]** が表示されます。
-
- (w:500)
-
- コンテンツ ブラウザで Font Face アセットと Composite Font アセットを作成するには、表示されているオプションから、**Yes** を選択します。
-
- 
-
-##### ドラッグ&ドロップを使用したインポート
-
-TTF ファイルまたは OTF ファイルをコンテンツ ブラウザに直接 **ドラッグ & ドロップ** し、フォント アセットを作成することもできます。
-
-1. TTF ファイルまたは OTF ファイルを保存した場所に移動します。ファイルをひとつを選択して **コンテンツ ブラウザ** までドラッグしてインポート プロセスを開始します。
-
- (w:650)
-1. しばらくすると、**Font Import Options** が表示されます。
-
- (w:500)
-
- コンテンツ ブラウザで Font Face アセットと Composite Font アセットを作成するには、表示されているオプションから、**Yes** を選択します。
-
- 
-
-
-#### フォント エディタを使ってインポートする
-
-**Font Editor** の Default Font Family リストから Font Face アセットを直接インポートして作成することができます。
-
-1. 既存の **Font** アセットを開くか、コンテンツ ブラウザの **[Add New (新規追加)]** ボタンを使用して、新しいアセットを作成します。
-
- (w:600)
-1. デフォルトのフォント ファミリーに新しいフォントを追加するには、**[Add Font]** ボタンをクリックします。
-
- (w:500)
-1. 選択のドロップダウンの隣にある **folder** ボタンを選択します。
-
- (w:500)
-1. 表示されるダイアログ ボックスでインポートする TFF または OTF のフォント ファイルに移動し、選択します。**[Open]** をクリックします。
-
- (w:500)
-1. 続いて **[Save Font Face]** ウィンドウが表示されます。フォントに名前を付けてゲーム フォルダの階層で保存場所を選択します。**[Save (保存)]** をクリックします。
-
- (w:500)
-
- これで Font Face アセットがフォルダの階層に入ります。
-
- 
-
-
-## UMG のフォント
-
-[Widge ブループリント](Engine/UMG/UserGuide/WidgetBlueprints) を作成し、テキストを含むウィジェット (テキストボックスまたはテキスト ウィジェットなど) を配置後、それをクリックし、**[Details]** パネルにアクセスすると、**[Appearance]** に **[Font]** オプションがあります。
-
-
-
-デフォルトでは、エンジンは **Roboto** を使用します。しかし、ドロップダウン メニューをクリックし、作成した任意のコンポジット フォント アセットを選択し、代わりに使用することができます。
-
-
-
-このメニューからコンポジット フォントを作成し、新規アセットをどこに保存するかを指定することもできます (デフォルトでブランクになり、入力する必要があります)。
-
-コンポジット フォントを選択したら、2 つめのドロップダウン メニューで使用するフォントを **[Default Font Family]** から選択できます。
-
-
-
-フォント サイズを入力ボックスで指定することもできます。
-
-
-
-現時点では UMG は **ランタイム** にキャッシュされるフォント アセットのみをサポートしています。古い方式を用いてフォントを割り当てた場合、既存のファイル ベースのフォント設定は失われません。しかし、UMG でカスタム フォントを使用するためには、いずれは Composite Font アセットを作成する必要があります。
-
-[色、マテリアル、アウトラインのプロパティを設定](Engine/UMG/UserGuide/Fonts/Materials) したり、陰影をつけてフォントにスタイルを設定することができます。
-
+**Font** は Text アクタ (特に [UMG UI デザイナ](Engine/UMG)) と共に使用できるアセットで、カスタマイズしたユーザー インターフェース向けに視覚的スタイルを加えることができます。以下のページでは、
+フォントとは何か、UE4 内での使用方法を詳しく説明します。さらに、UMG 内でフォントのインポート、作成、使用についての
+操作ガイドがあります。
+[DIR(output:"topiccompact" parent:"Engine/UMG/UserGuide/Fonts" org:"hierarchy" tags:"Fonts" end:"1")]
+[DIR(output:"topiccompact" parent:"Engine/UMG/UserGuide/Fonts/HowTo" org:"hierarchy" tags:"Fonts" end:"1")]
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.KOR.udn
index ae84d7c03f7b..ae935e0aa1a2 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Fonts.KOR.udn
@@ -1,125 +1,29 @@
-INTSourceChangelist:3244089
+INTSourceChangelist:3399451
Availability:Public
-Title: 폰트
Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
-Description:폰트 임포트 프로세스, 폰트 에디터 작업 방법, UMG 에서 폰트 사용법 관련 자세한 내용입니다.
+Title: 폰트
+Description:폰트 관련 모든 문서 첫 페이지입니다.
+Type: Landing
+Version:4.15
+Parent: Engine/UMG/UserGuide
Related: Engine/UMG
Related: Engine/UMG/UserGuide/WidgetBlueprints
Related: Engine/UMG/UserGuide/WidgetTypeReference
-Version: 4.14
-tags:UMG UI Designer
+Order:1
+Tags: UMG UI Designer
+Tags: Fonts
-[TOC(start:2 end:2)]
-
-여기서는 별도의 폰트 임포트 방법, **폰트 에디터** 사용법, **언리얼 모션 그래픽 (UMG) UI 디자이너** 에서 폰트 사용법을 다룹니다.
-
-## 폰트 애셋
-
-언리얼 엔진 4 의 폰트는 **Font** (폰트) 애셋으로 분류되어 있으며, 두 가지 캐싱 방식이 있습니다. **Runtime** (런타임)은 컴포짓 (합성) 폰트 방식, **Offline** (오프라인)은 구형 미리계산된 폰트 아틀라스 방식입니다. **폰트 에디터** 에서 폰트 애셋을 열어보는 것으로 두 방식을 전환할 수 있습니다 (그 덕에 간단하게 기존 폰트 애셋을 대체하지 않고도 구형 방식에서 새로운 컴포짓 방식으로 전환 가능합니다).
-
-## 폰트 생성 & 임포트
-
-여기서는 새 폰트 애셋을 생성하고 TTF 또는 OTF 파일을 임포트하여 폰트 애셋을 생성하는 법을 알아보겠습니다.
-
-### 폰트 애셋 생성하기
-
-폰트 애셋을 생성하는 방법은 다음과 같습니다:
-
-1. **콘텐츠 브라우저** 에서 **신규 추가** 버튼을 누른 다음 **유저 인터페이스** - **폰트** 옵션을 선택합니다.
-
- 
-
-1. 컴포짓 폰트 애셋이 새로 생성되어, 이름을 지을 수 있습니다.
-
- 
-
-1. 이름을 지으면 애셋에 별표가 보입니다. 저장되지 않은 애셋임을 나타냅니다. **모두 저장** 버튼을 눌러 애셋을 저장한 다음, 뜨는 팝업 창에서 저장을 확인하여 마무리합니다.
-
- 
-
-
-[REGION:tip]
-**신규 추가** 버튼을 누르는 대신 **콘텐츠 브라우저** 의 빈 곳에 **우클릭** 하여 맥락 메뉴를 통하는 방법도 있습니다. 거기서 **유저 인터페이스** - **폰트** 옵션을 클릭하면 폰트 애셋이 생성됩니다. 애셋 저장하는 것 잊지 마시구요!
+[REGION:fullwidth raw]
+
[/REGION]
-에디터 안에서 새 폰트 애셋을 생성하면, 빈 컴포짓 폰트 애셋이 생성되며, **폰트 에디터** 를 사용하여 그 파라미터를 정의할 수 있습니다. TTF 또는 OTF 파일을 임포트하면 제공한 폰트 샘플을 사용하여 새로운 컴포짓 폰트 애셋이 생성됩니다 (여기서부터 **폰트 에디터** 에서 열어 부가 파라미터를 정의할 수 있습니다).
-
-### 폰트 임포트하기
-
-TTF 나 OTF 파일을 에디터에 임포트할 수 있는데, 그 방법은 여러가지 입니다.
-
-첫 번째 방법은 **콘텐츠 브라우저** 에서 **임포트** 버튼을 클릭하는 것입니다.
-
-
-
-뜨는 대화상자에서 임포트할 파일을 탐색하여 선택한 다음 **열기** 를 클릭합니다.
-
-
-
-그러면 선택된 파일을 사용하여 **콘텐츠 브라우저** 에 컴포짓 폰트 애셋으로 파일이 추가됩니다.
-
-
-
-TTF 또는 OTF 파일을 끌어 **콘텐츠 브라우저** 에 놓는 방식으로도 컴포짓 폰트를 만들 수 있습니다.
-
-
-
-드래그 앤 드롭 방식을 사용하면, 선택된 파일을 사용하여 컴포짓 폰트 애셋도 자동 생성됩니다.
-
-## 폰트 에디터
-
-**콘텐츠 브라우저** 에서 폰트 애셋에 **더블클릭** 하면 **폰트 에디터** 창에서 열립니다.
-
-(w:820)
-
-폰트 에디터 창을 나눠보면 다음과 같습니다:
-
-1. **툴바 메뉴** - 이 메뉴에서는 변경내용 저장, **콘텐츠 브라우저** 에서 애셋 찾기, 미리보기 창(4)의 전경/배경색 변경이 가능합니다. 가해진 변경사항 업데이트 또는 익스포트 기능도 있는데, 이 옵션들은 **오프라인** 캐시 모드에서만 가능합니다.
-1. **기본 폰트 패밀리** - 이 창에서는 이 폰트 애셋에 사용할 디폴트 폰트 패밀리를 할당할 수 있습니다. 특정 폰트 스타일의 여러가지 버전(예를 들어 보통, 두껍게, 이탤릭, 밑줄 등)을 추가하거나, 여러가지 폰트 스타일 모음을 하나의 컴포짓 폰트로 할 수도 있습니다. 빈 폰트 애셋을 생성했다면, 이 창 안에서 폰트를 할당할 수도 있습니다. 폰트가 추가되면, 그 폰트에 사용할 힌팅 알고리즘을 정의할 수도 있습니다.
-1. **서브 폰트 패밀리** - 이 창에서는 이 폰트 애셋이 사용할 서브 폰트 패밀리를 할당할 수 있습니다. 여기서 **Character Range** (글자 범위)를 지정하고, 한 글자가 그 범위 안에 들었을 때 기본 스타일 이외의 다른 스타일을 적용하도록 지정할 수 있습니다 (다른 언어에 다른 폰트 유형을 사용하고자 할 때 좋습니다).
-1. **프리뷰** - 이 창에는 폰트 미리보기와 샘플 텍스트 입력용 글상자가 제공됩니다.
-1. **디테일** - 이 창에서는 **폰트 캐시 유형** 변경 및 (런타임 용) 폰트 크기나 폰트 이름을 변경할 수 있습니다.
- * 구형 방식을 사용하는 경우, 여전히 **오프라인** 캐시 모드에 있을 때 폰트의 파라미터를 변경할 수 있습니다.
- * 기존 폰트 애셋을 대체하지 않고도 **오프라인** 에서 **런타임** 으로 전환할 수도 있습니다.
-
-예제 폰트 애셋은 아래와 같습니다.
-
-[REGION:lightbox]
-[(w:820)](ExampleFontLayout.png)
-[/REGION]
-
-_이미지를 클릭하면 원래 크기로 봅니다._
-
-컴포짓 폰트에는 항상 디폴트 폰트 패밀리가 들어있으며, 주어진 글자 범위에 대해 사용할 수 있는 서브 폰트 패밀리를 몇이든 포함 가능합니다. 각 폰트 패밀리 자체는 스타일에 따라 이름지을 수 있는 폰트 몇 개로든 구성됩니다. 런타임에 해당 글자 범위에 대한 폰트 패밀리에서 사용할 수 있는 폰트에 따라 각 글자에 사용하기 가장 적합한 폰트가 사용됩니다.
-
-위 예제 그림에서 확인할 수 있듯이, 일본어 텍스트가 일본어 폰트 패밀리 글자 범위에 해당하므로, 디폴트 폰트 패밀리인 Roboto 대신 Source Han Sans 를 사용해서 그립니다. 서브 폰트 패밀리의 폰트는 Regular, Bold, Light 처럼 이름이 일치되는 경우 선택될 수도 있고, Bold Italic 처럼 디폴트 폰트의 특성에 따라 일치되는 것으로 대체될 수도 있습니다 (폰트에 Bold 특성이 포함되어 있었고, 가장 일치가 잘 되어서 Bold Japanese 를 자동 선택했습니다).
-
-
-## UMG 의 폰트
-
-[위젯 블루프린트](Engine/UMG/UserGuide/WidgetBlueprints) 를 생성하고 (Text Box 나 Text Widget 처럼) Text 가 들어있는 위젯을 배치한 뒤, 그것을 클릭하고 **디테일** 패널에서 접근해 보면, **Appearance** 아래 **Font** option 가 보일 것입니다.
-
-
-
-엔진에서는 기본적으로 **Roboto** 를 사용하나, 드롭다운 메뉴를 클릭하면 미리 만들어둔 컴포짓 폰트 애셋을 선택하여 사용할 수도 있습니다.
-
-
-
-이 메뉴에서 컴포짓 폰트를 생성하여 새 애셋을 저장할 위치를 지정할 수도 있습니다 (기본적으로 비어있으며, 채워줘야 합니다).
-
-컴포짓 폰트를 선택하고 나면, 두 번째 드롭다운 메뉴를 통해 **디폴트 폰트 패밀리** 에서 사용할 폰트를 선택할 수 있습니다.
-
-
-
-입력 상자에서 폰트 크기를 지정할 수도 있습니다.
-
-
-
-현재 UMG 는 **런타임** 캐시 폰트 애셋만 지원합니다. 또한, 구형 방식을 사용하여 폰트를 할당한다 해도 기존 파일 기반 세팅을 잃게 되지는 않지만, 앞으로는 UMG 에서 커스텀 폰트를 사용하려면 컴포짓 폰트 애셋을 만들어야 합니다.
-
-[색, 머티리얼, 윤곽선 프로퍼티 설정](Engine/UMG/UserGuide/Fonts/Materials) 및 그림자를 사용해서 **폰트** 스타일을 잡을 수 있습니다.
+**Font** (폰트)란 Text Actor (텍스트 액터, 특히 [UMG UI 디자이너](Engine/UMG)) 와 함께 사용할 수 있는 애셋으로, 커스텀 유저 인터페이스에 비주얼 스타일을 더할 수 있습니다. 여기서는
+폰트란 무엇이고, 언리얼 엔진 4 에서 어떻게 사용하는지에 대해 보다 자세히 살펴보겠습니다. 추가적으로 UMG 안에서 폰트를 임포트, 생성, 사용법 안내서를
+찾아보실 수도 있습니다.
+[DIR(output:"topiccompact" parent:"Engine/UMG/UserGuide/Fonts" org:"hierarchy" tags:"Fonts" end:"1")]
+[DIR(output:"topiccompact" parent:"Engine/UMG/UserGuide/Fonts/HowTo" org:"hierarchy" tags:"Fonts" end:"1")]
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.CHN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.CHN.udn
new file mode 100644
index 000000000000..8c109f95a922
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.CHN.udn
@@ -0,0 +1,93 @@
+INTSourceChangelist:3403467
+Availability:Public
+crumbs:%ROOT%
+Title:创建并指定字体
+Description:此指南说明如何创建用于 UMG UI 设计器工具的字体资源。
+Type:how-to
+SkillLevel:Beginner
+Version:4.15
+Parent:Engine/UMG/UserGuide/Fonts/Howto
+Related:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG
+Order:2
+Tags:UMG UI Designer
+topic-image:CreatingFonts_Topic.png
+
+在此指南中,您将了解如何创建空白字体资源(可对其指定字体风格资源,或直接使用字体编辑器导入新 TTF 或 OTF 字体文件)。
+
+(w:700)
+
+
+## 步骤
+
+根据以下步骤自建字体资源,然后学习如何使用字体编辑器指定一个字体风格资源。
+
+[REGION:note]
+在此指南中,我们使用的是 **Blank Template**,未加入 **Starter Content**、选择默认 **Target Hardware** 和 **Project Settings**。
+[/REGION]
+
+
+### 创建字体资源
+
+1. 点击 **Content Browser** 中的 **Add New** 按钮,然后选择 **User Interface** 下的 **Font** 选项。
+
+ [REGION:lightbox]
+ [(h:500)](NewFont.png)
+ [/REGION]
+ [REGION:caption]
+ _点击图片查看全图。_
+ [/REGION]
+
+1. 将新建一个合成字体资源,并弹出提示为其 **命名**。
+
+ 
+
+1. 输入命名后,资源上将出现一个星号,说明资源尚未保存。点击 **Save All** 按钮保存资源,然后在弹出的菜单中确认保存。
+
+ 
+
+### 指定字体风格资源
+
+1. 创建空白字体资源后,便需要指定使用的字体风格。双击字体在字体编辑器中打开执行此操作。
+
+ (w:700)
+
+1. 在字体编辑器中点击 **Add Font** 按钮新增一个字体槽。
+
+ (w:381)
+
+1. 使用字体命名下方的下拉选择选中已导入项目的字体风格资源。
+
+ (w:700)
+
+ [REGION:note]
+ 如尚未拥有字体风格资源,可使用下拉选择框旁的文件夹图标寻找并导入您自己的 TrueType Font(TTF)或 OpenType Font(OTF)字体文件。
+ [/REGION]
+
+## 最终结果
+
+了解如何自建字体资源和使用字体编辑器指定导入的字体风格资源后,即可自建用于 UMG UI 设计器的字体资源。
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.INT.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.INT.udn
new file mode 100644
index 000000000000..1e68f2c97c12
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.INT.udn
@@ -0,0 +1,92 @@
+Availability: Public
+crumbs:%ROOT%
+Title: Creating and Assigning Fonts
+Description: This how-to will guide you through creating Font assets that can be used with the UMG UI designer tools.
+Type:how-to
+SkillLevel: Beginner
+Version: 4.15
+Parent: Engine/UMG/UserGuide/Fonts/Howto
+Related: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG
+Order:2
+Tags: UMG UI Designer
+topic-image:CreatingFonts_Topic.png
+
+In this guide, you'll learn how to create an empty Font asset to which you can then assign a Font Face asset or import a new TTF or OTF font file directly using the Font Editor.
+
+(w:700)
+
+
+## Steps
+
+Follow the steps below to create your own Font asset and then learn how to assign one of your Font Face assets using the Font Editor.
+
+[REGION:note]
+For this how-to guide, we are using the **Blank Template** project, using no **Starter Content**, with default **Target Hardware** and **Project Settings**.
+[/REGION]
+
+
+### Creating a Font Asset
+
+1. Click the **Add New** button inside the **Content Browser**, then under **User Interface**, select the **Font** option.
+
+ [REGION:lightbox]
+ [(h:500)](NewFont.png)
+ [/REGION]
+ [REGION:caption]
+ _Click image for full view._
+ [/REGION]
+
+1. A new Composite Font asset will be created, prompting you to give it a **Name**.
+
+ 
+
+1. Once you enter a name, you will notice an asterisk appears on the asset, this indicates that the asset has not be saved. Click the **Save All** button to save your asset, then confirm the save in the pop-up menu that appears.
+
+ 
+
+### Assign a Font Face Asset
+
+1. Now that you've created your empty Font asset, you will have to assign your Font Face(s) to be used. To do this, double-click to open your Font in the Font Editor.
+
+ (w:700)
+
+1. In the Font Editor, click on the **Add Font** button to add a new Font slot.
+
+ (w:381)
+
+1. Now, use the dropdown selection under the Font Name to select an existing Font Face asset that was already imported into your project.
+
+ (w:700)
+
+ [REGION:note]
+ If you do not have any Font Face assets, you can use the Folder icon next to the dropdown selection box to navigate and import your own TrueType Font (TTF) or OpenType Font (OTF) font file.
+ [/REGION]
+
+## End Result
+
+Now that you've seen how to create your own Font assets and assign an already imported Font Face asset using the Font Editor, you should be able to create your own Font assets that can be used with the UMG UI Designer.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.JPN.udn
new file mode 100644
index 000000000000..8cd18c2c1b16
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.JPN.udn
@@ -0,0 +1,93 @@
+INTSourceChangelist:3403467
+Availability:Public
+crumbs:%ROOT%
+Title:フォントを作成し、割り当てる
+Description:UMG UI デザイナ ツールで使用できる Font アセットの作成について説明します。
+Type:how-to
+SkillLevel:Beginner
+Version:4.15
+Parent:Engine/UMG/UserGuide/Fonts/Howto
+Related:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG
+Order:2
+Tags:UMG UI Designer
+topic-image:CreatingFonts_Topic.png
+
+このガイドでは空の Font アセットを作成する方法について説明します。この Font アセットに Font Face アセットを割り当てたり、フォント エディタを使って新しい TTF または OTF のフォント ファイルを直接インポートすることができます。
+
+(w:700)
+
+
+## ステップ
+
+以下のステップに従い、Font アセットを作成します。次に、フォント エディタを使って Font Face アセットを割り当てる方法を学びます。
+
+[REGION:note]
+この操作ガイドでは **スターターコンテンツを含まない** を有効にした状態で、デフォルトの **Target Hardware** と **Project Settings** を使います。
+[/REGION]
+
+
+### Font アセットを作成する
+
+1. **コンテンツ ブラウザ** で、 **[Add New]** ボタンをクリックし、 **[User Interface (ユーザーインターフェース)]** で **[Font]** オプションをクリックします。
+
+ [REGION:lightbox]
+ [(h:500)](NewFont.png)
+ [/REGION]
+ [REGION:caption]
+ _画像をクリックしてフルサイズで表示_
+ [/REGION]
+
+1. 新しい Composite Font アセットが作成されます。**名前** を付けるよう促されます。
+
+ 
+
+1. 名前を入力したらアセットにアスタリスク記号が付いているのがわかります。これはアセットが保存されていないことを示します。**[Save All]** ボタンをクリックしてアセットを保存します。次に表示されるポップアップ メニューで保存を確認します。
+
+ 
+
+### Font Face アセットを割り当てる
+
+1. 空の Font アセットを作成したので、使用する Font Face を割り当てなければなりません。これを行うには、フォント エディタで Font をダブルクリックします。
+
+ (w:700)
+
+1. フォント エディタで新しいフォント スロットを追加するには、**[Add Font]** ボタンをクリックします。
+
+ (w:381)
+
+1. Font Name のドロップダウン選択を使って、プロジェクトにインポート済みの既存の Font Face アセットを選択します。
+
+ (w:700)
+
+ [REGION:note]
+ Font Face アセットを何も持っていない場合は、ドロップダウン選択ボックスの隣にある Folder アイコンを使って TrueType Font (TTF) または OpenType Font (OTF) のフォント ファイルに移動してインポートしてください。
+ [/REGION]
+
+## 最終結果
+
+Font アセットの作成方法と、フォント エディタを使ってインポート済みの Font Face アセットに割り当てる方法について説明しました。これで UMG UI デザイナで使用できる Font アセットを作成できるはずです。
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.KOR.udn
new file mode 100644
index 000000000000..9372514d8a3c
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts/CreatingFonts.KOR.udn
@@ -0,0 +1,93 @@
+INTSourceChangelist:3403467
+Availability: Public
+crumbs:%ROOT%
+Title: 폰트 생성 및 할당
+Description: UMG UI 디자이너 툴에 사용할 수 있는 폰트 애셋을 만드는 법을 안내해 드립니다.
+Type:how-to
+SkillLevel: Beginner
+Version: 4.15
+Parent: Engine/UMG/UserGuide/Fonts/Howto
+Related: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG
+Order:2
+Tags: UMG UI Designer
+topic-image:CreatingFonts_Topic.png
+
+여기서는 공백 폰트 애셋을 만들어 폰트 페이스 애셋을 할당하거나, 폰트 에디터를 사용하여 새로운 TTF 또는 OTF 폰트 파일을 바로 임포트하는 법을 알아봅니다.
+
+(w:700)
+
+
+## 단계
+
+별도의 폰트 애셋을 만들고 폰트 에디터를 사용하여 폰트 페이스 애셋을 할당하는 법은 다음과 같습니다.
+
+[REGION:note]
+여기서는 **공백 템플릿** 프로젝트에 **시작용 콘텐츠** 없음, **타겟 하드웨어** 와 **프로젝트 세팅** 은 기본으로 한 것을 사용합니다.
+[/REGION]
+
+
+### 폰트 애셋 생성
+
+1. **콘텐츠 브라우저** 안에서 **신규 추가** 버튼을 클릭한 뒤, **유저 인터페이스** 아래 **폰트** 옵션을 선택합니다.
+
+ [REGION:lightbox]
+ [(h:500)](NewFont.png)
+ [/REGION]
+ [REGION:caption]
+ _클릭하면 이미지 원본을 확인합니다._
+ [/REGION]
+
+1. 새로운 컴포짓 폰트 애셋이 생성되며, **이름** 을 지어야 합니다.
+
+ 
+
+1. 이름을 입력했으면 애셋에 별표 표시가 보이는데, 애셋이 저장되지 않았음을 나타냅니다. **모두 저장** 버튼을 눌러 애셋을 저장, 팝업 메뉴가 뜨면 저장을 확인합니다.
+
+ 
+
+### 폰트 페이스 애셋 할당
+
+1. 공백 폰트 애셋을 생성했으니, 사용할 폰트 페이스를 할당해 줘야 합니다. 폰트 에디터에서 폰트를 더블클릭하여 엽니다.
+
+ (w:700)
+
+1. 폰트 에디터에서 **폰트 추가** 버튼을 클릭하여 새 폰트 슬롯을 추가합니다.
+
+ (w:381)
+
+1. 이제 Font Name (폰트 이름) 아래 선택 드롭다운으로 프로젝트에 이미 임포트해 둔 기존 폰트 페이스 애셋을 선택합니다.
+
+ (w:700)
+
+ [REGION:note]
+ 폰트 페이스 애셋이 없는 경우, 선택 드롭다운 옆 폴더 아이콘을 누른 뒤 별도의 트루타입 폰트(TTF) 또는 오픈타입 폰트(OTF) 파일을 임포트합니다.
+ [/REGION]
+
+## 최종 결과
+
+폰트 에디터를 사용하여 별도의 폰트 애셋을 만들고 이미 임포트된 폰트 페이스 애셋을 할당하는 법을 살펴봤으니, 이제 UMG UI 디자이너에 사용할 수 있는 별도의 폰트 애셋 제작이 가능하실 것입니다.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.CHN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.CHN.udn
new file mode 100644
index 000000000000..304438e04b23
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.CHN.udn
@@ -0,0 +1,34 @@
+INTSourceChangelist:3399451
+Availability:Public
+Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
+Title:字体指南
+Description:字体指南着陆页面。
+Type:Landing
+Version:4.15
+Parent:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/WidgetBlueprints
+Related:Engine/UMG/UserGuide/WidgetTypeReference
+Order:
+Tags:UMG UI Designer
+Tags:Fonts
+Topic-Image:FontHowTo_Topic.png
+
+以下指南将说明在项目中创建和使用字体的要点。
+
+## 初级
+
+[DIR(output:"fancy" parent:"Engine/UMG/UserGuide/Fonts/HowTo" skill_level:"Beginner")]
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.INT.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.INT.udn
new file mode 100644
index 000000000000..2ad385986025
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.INT.udn
@@ -0,0 +1,33 @@
+Availability: Public
+Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
+Title: Fonts - How To's
+Description: How-To landing page for Fonts.
+Type: Landing
+Version:4.15
+Parent: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/WidgetBlueprints
+Related: Engine/UMG/UserGuide/WidgetTypeReference
+Order:
+Tags: UMG UI Designer
+Tags: Fonts
+Topic-Image:FontHowTo_Topic.png
+
+The Following guides walk you through topics designed to help you create and use Fonts in your projects.
+
+## Beginner
+
+[DIR(output:"fancy" parent:"Engine/UMG/UserGuide/Fonts/HowTo" skill_level:"Beginner")]
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.JPN.udn
new file mode 100644
index 000000000000..4bc9fd91203f
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.JPN.udn
@@ -0,0 +1,34 @@
+INTSourceChangelist:3399451
+Availability:Public
+Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
+Title:フォント - 操作ガイド
+Description:フォント操作ガイドのランディング ページ
+Type:Landing
+Version:4.15
+Parent:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/WidgetBlueprints
+Related:Engine/UMG/UserGuide/WidgetTypeReference
+Order:
+Tags:UMG UI Designer
+Tags:Fonts
+Topic-Image:FontHowTo_Topic.png
+
+プロジェクトにおけるフォントの作成および使用について説明します。
+
+## Beginner
+
+[DIR(output:"fancy" parent:"Engine/UMG/UserGuide/Fonts/HowTo" skill_level:"Beginner")]
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.KOR.udn
new file mode 100644
index 000000000000..153b885baf9a
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsHowToLanding.KOR.udn
@@ -0,0 +1,34 @@
+INTSourceChangelist:3399451
+Availability: Public
+Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
+Title: 폰트 안내서
+Description: 폰트 안내서 첫 페이지입니다.
+Type: Landing
+Version:4.15
+Parent: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/WidgetBlueprints
+Related: Engine/UMG/UserGuide/WidgetTypeReference
+Order:
+Tags: UMG UI Designer
+Tags: Fonts
+Topic-Image:FontHowTo_Topic.png
+
+프로젝트에 쓸 폰트를 만들고 사용하는 데 도움이 되는 주제에 대한 안내입니다.
+
+## 초급
+
+[DIR(output:"fancy" parent:"Engine/UMG/UserGuide/Fonts/HowTo" skill_level:"Beginner")]
+
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.CHN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.CHN.udn
new file mode 100644
index 000000000000..f21ed0dcc767
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.CHN.udn
@@ -0,0 +1,77 @@
+INTSourceChangelist:3403467
+Availability:Public
+crumbs:%ROOT%
+Title:结合 UMG 使用字体
+Description:此指南说明如何结合 UMG UI 设计器工具使用字体。
+Type:how-to
+SkillLevel:Beginner
+Version:4.15
+Parent:Engine/UMG/UserGuide/Fonts/Howto
+Related:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts
+Related:Engine/UMG/UserGuide/WidgetBlueprints
+Order:3
+Tags:UMG UI Designer
+topic-image:FontsWithUMG_Topic.png
+
+
+在此指南中,您将学习到如何在包含文本的控件蓝图中使用自建字体资源。
+
+(w:700)
+
+
+## 步骤
+
+按以下步骤操作,学习如何对结合 UMG UI 设计器使用的自建字体进行指定。
+
+[REGION:note]
+在此指南中,我们使用的是 **Blank Template**,未加入 **Starter Content**、选择默认 **Target Hardware** 和 **Project Settings**。
+[/REGION]
+
+1. 在 Content Browser 中点击 **Add New** 按钮,鼠标悬停在 **User Interface** 上,然后点击 **Widget Blueprint** 选项新建一个 [控件蓝图](Engine/UMG/UserGuide/WidgetBlueprints)。此操作将新建一个控件蓝图。为其设置一个便于查找的命名。
+
+ (w:275)
+
+1. 返回保存控件蓝图的 Content Browser,双击将其打开。在控件蓝图的调色板中,选中一个 **Text** 控件并将其拖到图表之上。然后选中角落将其放大。
+
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 5GWSAIUZNaE
+ [/PARAMLITERAL]
+ [/OBJECT]
+
+1. 创建文本控件后,即可点击它访问 **Details** 面板,可在 **Appearance** 下的 **Font** 选项中修改字体类型、风格(常规、粗体、斜体等),以及大小。
+
+ (w:900)
+
+1. 引擎默认使用 **Roboto** 字体。然而点击下拉菜单即可选择和使用创建的任意合成字体资源。
+
+ (w:900)
+
+ [REGION:note]
+ 也可在此菜单中创建一个合成字体并指定新资源的保存位置(默认为空,需要填入)。
+ [/REGION]
+
+1. 选择合成字体后,可通过第二个下拉菜单从 **默认字体群** 中选择一个字体使用。
+
+ 
+
+ 也可在输入框中指定字体的大小。
+
+ (w:900)
+
+[REGION:note]
+当前版本中 UMG 只支持 **Runtime** 缓存字体资源。此外,如果您已使用老方法指定字体,基于文件的现有字体设置不会丢失;但之后需要创建合成字体文件以便以 UMG 使用自定义字体。
+[/REGION]
+
+## 最终结果
+
+在 UMG 中成功使用字体后,即可 [设置颜色、材质和外框属性](Engine/UMG/UserGuide/Fonts/Materials)(以及使用阴影),学习如何设置 **字体** 风格。
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.INT.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.INT.udn
new file mode 100644
index 000000000000..83b7f11ef04b
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.INT.udn
@@ -0,0 +1,79 @@
+Availability: Public
+crumbs:%ROOT%
+Title: Using Fonts with UMG
+Description: This how-to will guide you through using Fonts with the UMG UI designer tools.
+Type:how-to
+SkillLevel: Beginner
+Version: 4.15
+Parent: Engine/UMG/UserGuide/Fonts/Howto
+Related: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts
+Related: Engine/UMG/UserGuide/WidgetBlueprints
+Order:3
+Tags: UMG UI Designer
+topic-image:FontsWithUMG_Topic.png
+
+
+In this guide, you'll learn how to use your own Font assets in Widget Blueprints that contain Text.
+
+(w:700)
+
+
+## Steps
+
+Follow the steps below to see how to assign your own Fonts to be used with the UMG UI Designer.
+
+[REGION:note]
+For this how-to guide, we are using the **Blank Template** project, using no **Starter Content**, with default **Target Hardware** and **Project Settings**.
+[/REGION]
+
+1. To create a new [Widget Blueprint](Engine/UMG/UserGuide/WidgetBlueprints), from the Content Browser click on the **Add New** button, then hover over **User Interface**, and then click on **Widget Blueprint** selection. This will create
+a new Widget Blueprint. Make sure to give it a name that you can easily locate later.
+
+ (w:275)
+
+1. Go back to the Content Browser where you saved your Widget Blueprint and double-click on it to open it up. In the Widget Blueprint's Palette, select a **Text** widget and drag it onto the
+graph. Then grab the corner and scale it to a larger size.
+
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 5GWSAIUZNaE
+ [/PARAMLITERAL]
+ [/OBJECT]
+
+1. Now that you've created your Text Widget, you can click on it and access the **Details** panel, under **Appearance**, you'll see a **Font** option where you can change the font type, it's styling (regular, bold, itallic, etc.), and its size.
+
+ (w:900)
+
+1. By default, the Engine uses the **Roboto** font, however, if you click the dropdown menu, any Composite Font assets created can be selected and used instead.
+
+ (w:900)
+
+ [REGION:note]
+ You can also choose to create a Composite Font from this menu and specify where the new asset should be saved (it will be blank by default, requiring you to fill it out).
+ [/REGION]
+
+1. Once you select your Composite Font, the second dropdown menu will allow you to select a font to use from the **Default Font Family**.
+
+ 
+
+ You can also specify the size of the font in the input box.
+
+ (w:900)
+
+[REGION:note]
+Currently, UMG only supports **Runtime** cached font assets. Also, if you have assigned fonts using the old method, none of your existing file-based font settings will be lost, however going forward, you will need to create
+a Composite Font asset in order to use custom fonts with UMG.
+[/REGION]
+
+## End Result
+
+ Now that you've successfully used your fonts in UMG, you can head over to learn how to style your **Fonts** by [setting colors, Materials, and outline properties](Engine/UMG/UserGuide/Fonts/Materials) (as well as by using shadows).
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.JPN.udn
new file mode 100644
index 000000000000..0e0a8039db3c
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.JPN.udn
@@ -0,0 +1,80 @@
+INTSourceChangelist:3403467
+Availability:Public
+crumbs:%ROOT%
+Title:UMG でフォントを使用する
+Description:UMG UI デザイナ ツールでの Font アセットの使用について説明します。
+Type:how-to
+SkillLevel:Beginner
+Version:4.15
+Parent:Engine/UMG/UserGuide/Fonts/Howto
+Related:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts
+Related:Engine/UMG/UserGuide/WidgetBlueprints
+Order:3
+Tags:UMG UI Designer
+topic-image:FontsWithUMG_Topic.png
+
+
+このガイドでは Text を含む Widget ブループリントで Font アセットを使用する方法を説明します。
+
+(w:700)
+
+
+## ステップ
+
+以下のステップでは、ご自分のフォントを UMG UMG UI デザイナで使用するために割り当てる方法を説明します。
+
+[REGION:note]
+この操作ガイドでは **スターターコンテンツを含まない** を有効にした状態で、デフォルトの **Target Hardware** と **Project Settings** を使います。
+[/REGION]
+
+1. コンテンツ ブラウザで、新規 [Widget ブループリント](Engine/UMG/UserGuide/WidgetBlueprints) を作成するには、**[Add New (新規追加)]** ボタンをクリックします。次に **[ユーザーインターフェース (UI)]** にマウスをかざして、**[Widget ブループリント]** をクリックします。これで
+新規 Widget ブループリントが作成されます。後で簡単に見つけられるようにわかりやすい名前を付けてください。
+
+ (w:275)
+
+1. Widget ブループリントを保存したコンテンツ ブラウザに戻り、それをダブルクリックして開きます。Widget ブループリントのパレットで **Text** ウィジェットを選択し、グラフ上に
+ドラッグします。次に角をつかみ、大きなサイズにスケーリングします。
+
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 5GWSAIUZNaE
+ [/PARAMLITERAL]
+ [/OBJECT]
+
+1. ここまでで Text ウィジェットを作成しました。その上でクリックして、**[Details]** パネルを開くと、 **[Appearance]** に **[Font]** オプションがあります。ここで、フォントの種類、そのスタイル (通常、太字、斜体など) サイズを変更することができます。
+
+ (w:900)
+
+1. デフォルトでは、エンジンは **Roboto** フォントを使用します。しかし、ドロップダウン メニューをクリックし、作成した任意の Composite Font アセットを選択し、代わりに使用することができます。
+
+ (w:900)
+
+ [REGION:note]
+ このメニューからコンポジット フォントを作成して、その新しいアセットの保存場所を指定することもできます (デフォルトではブランクであり、入力する必要があります)。
+ [/REGION]
+
+1. コンポジット フォントを選択したら、2 つめのドロップダウン メニューで使用するフォントを **[Default Font Family]** から選択できます。
+
+ 
+
+ フォント サイズを入力ボックスで指定することもできます。
+
+ (w:900)
+
+[REGION:note]
+現時点では UMG は **ランタイム** にキャッシュされるフォント アセットのみをサポートしています。古い方式を用いてフォントを割り当てた場合、既存のファイル ベースのフォント設定は失われません。
+しかし、UMG でカスタム フォントを使用するためには、いずれは Composite Font アセットを作成する必要があります。
+[/REGION]
+
+## 最終結果
+
+ ここまでで、UMG のフォントの使用について説明してきました。[色、マテリアル、アウトラインのプロパティを設定](Engine/UMG/UserGuide/Fonts/Materials) したり、 (陰影をつけて) フォントにスタイルを設定することができます。
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.KOR.udn
new file mode 100644
index 000000000000..8dc793f9e0d1
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG/FontsWithUMG.KOR.udn
@@ -0,0 +1,80 @@
+INTSourceChangelist:3403467
+Availability: Public
+crumbs:%ROOT%
+Title: UMG 에 폰트 사용
+Description: UMG UI 디자이너 툴에 폰트를 사용하는 방법 안내서입니다.
+Type:how-to
+SkillLevel: Beginner
+Version: 4.15
+Parent: Engine/UMG/UserGuide/Fonts/Howto
+Related: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts
+Related: Engine/UMG/UserGuide/WidgetBlueprints
+Order:3
+Tags: UMG UI Designer
+topic-image:FontsWithUMG_Topic.png
+
+
+여기서는 텍스트가 들어있는 위젯 블루프린트에서 별도의 폰트 애셋을 사용하는 법을 알아보겠습니다.
+
+(w:700)
+
+
+## 단계
+
+UMG UI 디자이너에서 사용할 폰트 애셋을 할당하는 방법은 다음과 같습니다.
+
+[REGION:note]
+여기서는 **공백 템플릿** 프로젝트에 **시작용 콘텐츠** 없음, 기본 **타겟 하드웨어** 및 **프로젝트 세팅** 을 사용하고 있습니다.
+[/REGION]
+
+1. 새 [위젯 블루프린트](Engine/UMG/UserGuide/WidgetBlueprints) 생성을 위해서는, 콘텐츠 브라우저에서 **신규 추가** 버튼을 클릭한 뒤, **유저 인터페이스** 에 커서를 올리고 **위젯 블루프린트** 를 선택합니다.
+그러면 새 위젯 블루프린트가 생성됩니다. 나중에 쉽게 찾을 수 있도록 이름을 지어 주세요.
+
+ (w:275)
+
+1. 콘텐츠 브라우저의 위젯 블루프린트를 저장한 곳으로 돌아가 더블클릭하여 엽니다. 위젯 블루프린트의 팔레트 창에서 **Text** 위젯을 선택하고 그래프에 끌어 놓습니다.
+그런 다음 구석을 잡아 끌어 크기를 키웁니다.
+
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 5GWSAIUZNaE
+ [/PARAMLITERAL]
+ [/OBJECT]
+
+1. Text 위젯을 생성했으니, 클릭해서 **디테일** 패널 **Appearance** 아래 폰트 유형, 스타일(일반, 두껍게, 이탤릭 등), 크기를 바꿀 수 있는 **Font** 옵션이 보입니다.
+
+ (w:900)
+
+1. 기본적으로 엔진에서는 **Roboto** 폰트를 사용합니다만, 드롭다운 메뉴를 클릭하면 만들어 둔 컴포짓 폰트 애셋을 선택하여 대신 사용할 수도 있습니다.
+
+ (w:900)
+
+ [REGION:note]
+ 이 메뉴에서 컴포짓 폰트를 생성하고 새로운 애셋 저장 위치를 지정할 수도 있습니다 (기본값은 공백이므로 채워넣어야 합니다).
+ [/REGION]
+
+1. 컴포짓 폰트를 선택했으면, 두 번째 드롭다운 메뉴를 통해 **디폴트 폰트 패밀리** 의 폰트를 선택할 수 있습니다.
+
+ 
+
+ 입력 박스에 폰트 크기를 지정할 수도 있습니다.
+
+ (w:900)
+
+[REGION:note]
+현재 UMG 는 **Runtime** 캐시 폰트 애셋만 지원합니다. 또한 예전 메소드를 사용한 폰트를 할당한 경우, 기존 파일 기반 폰트 세팅이 사라지지는 않지만, 앞으로는 UMG 에 커스텀 폰트를 사용하기 위해서는
+컴포짓 폰트 애셋을 생성해야 합니다.
+[/REGION]
+
+## 최종 결과
+
+ UMG 에서 폰트를 사용하는 데 성공했으니, [색, 머티리얼, 윤곽선 프로퍼티 설정](Engine/UMG/UserGuide/Fonts/Materials) (및 음영 사용)과 같은 폰트 스타일 지정 방법도 참고해 보시기 바랍니다.
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.CHN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.CHN.udn
new file mode 100644
index 000000000000..dee085c1c636
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.CHN.udn
@@ -0,0 +1,103 @@
+INTSourceChangelist:3403467
+Availability:Public
+crumbs:
+Title:导入字体
+Description:此指南将说明如何将字体资源导入虚幻引擎 4 使用。
+Type:How-to
+SkillLevel:Beginner
+Version:4.15
+Parent:Engine/UMG/UserGuide/Fonts/Howto
+Related:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG
+Order:1
+Tags:UMG UI Designer
+topic-image:ImportingFonts_Topic.png
+
+此指南说明如何将自建字体文件导入虚幻引擎 4。
+
+[REGION:raw]
+(w:800)
+[/REGION]
+
+开始导入文件后,可在多种方法中进行选择,选择最适合您工作流程的方法。可选择的导入方法:
+
+* 使用 Content Browser 的 Import 按钮。
+* 拖放到 Content Browser 中
+* 使用字体编辑器
+
+导入字体时还可以在 **TrueType Font**(TTF)和 **OpenType Font**(OTF)之间进行选择。选择最能满足您需求的导入方法和字体类型。
+
+[REGION:note]
+在此指南中,我们使用的是 **Blank Template**,未加入 **Starter Content**、选择默认 **Target Hardware** 和 **Project Settings**。
+[/REGION]
+
+## 使用 Content Browser
+
+可使用 Content Browser 的 **Import** 按钮选择 TTF 或 OTF 字体文件。
+
+1. 在 Content Browser 中点击 **Import** 按钮。
+
+ 
+
+1. **Import** 对话框出现后,导航至需要导入的 TFF 或 OTF 字体文件并将其选中。然后点击 **Open**。
+
+ (w:500)
+
+1. 稍后将出现 **Font Face Import Options** 对话。从列出的选项中选择 **Yes**,在 Content Browser 中创建字体风格资源和合成字体资源。
+
+ (w:500)
+
+1. 现在即可在文件夹层级中找到字体风格资源。
+
+ 
+
+
+## 使用拖放
+
+用户可将 TTF 或 OTF 文件直接 **拖放** 到 Content Browser 中创建字体资源。
+
+1. 导航到保存 TTF 或 OTF 文件的文件夹。选择并长按将文件拖到 **Content Browser** 上开始导入进程。
+
+ (w:650)
+
+1. 稍后将出现 **Font Import Options**。从列出的选项中选择 **Yes**,在 Content Browser 中创建字体风格资源和合成字体资源。
+
+ (w:500)
+
+1. 现在即可在文件夹层级中找到字体风格资源。
+
+ 
+
+## 使用字体编辑器
+
+用户可直接从 **字体编辑器** 中的 [默认字体群](Engine/UMG/UserGuide/Fonts/Overview#defaultfontfamily) 列表导入并创建字体风格资源,无需先导入字体资源再对其进行指定。
+
+1. 打开一个现有 **字体** 资源或使用 Content Browser 中的 **Add New** 按钮。
+
+ (w:600)
+
+1. 点击 **Add Font** 按钮为 **默认字体群** 添加一个新的字体选项。
+
+ (w:500)
+
+1. 选择选项下拉旁边的 **folder** 按钮。
+
+ (w:500)
+
+1. **Import** 对话框出现后,导航至需要导入的 TFF 或 OTF 字体文件并将其选中。然后点击 **Open**。
+
+ (w:500)
+
+1. 之后将出现 **Save Font Face** 窗口。为字体命名,在游戏文件夹层级中选择相同路径。然后点击 **Save**。
+
+ (w:500)
+
+1. 现在即可在文件夹层级中找到字体风格资源。
+
+ 
+
+## 最终结果
+
+了解如何使用多种方法进行导入后,即可使用这些选项将自建字体文件导入游戏和项目。
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.INT.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.INT.udn
new file mode 100644
index 000000000000..e08f19818e0a
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.INT.udn
@@ -0,0 +1,104 @@
+Availability: Public
+crumbs:
+Title: Importing Fonts
+Description: This how-to will guide you through importing your Font assets for use in Unreal Engine 4.
+Type: How-to
+SkillLevel: Beginner
+Version: 4.15
+Parent: Engine/UMG/UserGuide/Fonts/Howto
+Related: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG
+Order:1
+Tags: UMG UI Designer
+topic-image:ImportingFonts_Topic.png
+
+In this guide, you'll learn how to import your own Font files into Unreal Engine 4.
+
+[REGION:raw]
+(w:800)
+[/REGION]
+
+When you start to import your Fonts, you can choose between several methods and choose the method that best fits your workflow. The available methods you can use to import are:
+
+* Using the Content Browser's Import button
+* Drag-and-drop method into the Content Browser
+* Using the Font Editor
+
+You also have the choice between **TrueType Font** (TTF) and **OpenType Font** (OTF) files when importing your fonts. Choose the import method and font type that best fits your needs.
+
+
+[REGION:note]
+For this how-to guide, we are using the **Blank Template** project, using no **Starter Content**, with default **Target Hardware** and **Project Settings**.
+[/REGION]
+
+## Using the Content Browser
+
+You can use the Content Browser's **Import** button to select your TTF or OTF font file.
+
+1. In the Content Browser, click the **Import** button.
+
+ 
+
+1. After the **Import** dialog box appears, navigate to the TFF or OTF font file you want to import and select it. Then, click **Open**.
+
+ (w:500)
+
+1. After a moment, the **Font Face Import Options** dialog will appear. Select **Yes** from the options listed to create your Font Face asset and your Composite Font asset in your Content Browser.
+
+ (w:500)
+
+1. The Font Face asset can now be found in your folder hierarchy.
+
+ 
+
+
+## Using Drag-and-drop
+
+You can **Drag-and-drop** a TTF or OTF file directly into the Content Browser to create your font assets.
+
+1. Navigate to the folder where you've stored your TTF or OTF file(s). Select and hold to drag the file over the **Content Browser** to start the import process.
+
+ (w:650)
+
+1. After a moment, the **Font Import Options** will appear. Select **Yes** from the options listed to create your Font Face asset and your Composite Font asset in your Content Browser.
+
+ (w:500)
+
+1. The Font Face asset can now be found in your folder hierarchy.
+
+ 
+
+## Using the Font Editor
+
+You can import and create Font Face assets directly from the [Default Font Family](Engine/UMG/UserGuide/Fonts/Overview#defaultfontfamily) list in the **Font Editor** removing the need to
+import a font asset first then assign it.
+
+1. Open an existing **Font** asset or create a new one using the **Add New** button in the Content Browser.
+
+ (w:600)
+
+1. Click the **Add Font** button to add a new font selection to the **Default Font Family**.
+
+ (w:500)
+
+1. Select the **folder** button next to the selection dropdown.
+
+ (w:500)
+
+1. After the **Import** dialog box appears, navigate to the TFF or OTF font file you want to import and select it. Then, click **Open**.
+
+ (w:500)
+
+1. Next, the **Save Font Face** window will appear. Give your font a name and choose the save location in your game folder's hierarchy. Then, click **Save**.
+
+ (w:500)
+
+1. The Font Face asset can now be found in your folder hierarchy.
+
+ 
+
+## End Result
+
+Now that you've seen how to import using the various methods, you should be able to import your own font files using any one of these options for use in your games and projects.
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.JPN.udn
new file mode 100644
index 000000000000..97e4d2ad15a6
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.JPN.udn
@@ -0,0 +1,105 @@
+INTSourceChangelist:3403467
+Availability:Public
+crumbs:
+Title:フォントのインポート
+Description:Font アセットをインポートして UE4 で使用する方法を説明します。
+Type:How-to
+SkillLevel:Beginner
+Version:4.15
+Parent:Engine/UMG/UserGuide/Fonts/Howto
+Related:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts
+Related:Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG
+Order:1
+Tags:UMG UI Designer
+topic-image:ImportingFonts_Topic.png
+
+このガイドではフォント ファイルを UE4 にインポートする方法を説明します。
+
+[REGION:raw]
+(w:800)
+[/REGION]
+
+フォントのインポートを開始する場合、複数の方法があるのでご自分のワークフローに最適なものから選んでください。インポートに使用できる方法は以下のとおりです。
+
+* コンテンツ ブラウザのインポート ボタンを使う
+* コンテンツ ブラウザにドラッグ&ドロップする
+* フォント エディタを使用する
+
+フォント インポート時に、**TrueType Font** (TTF) ファイルと **OpenType Font** (OTF) ファイルの選択肢もあります。ニーズに応じて最適なインポート方法とフォントの種類を選んでください。
+
+
+[REGION:note]
+この操作ガイドでは **スターターコンテンツを含まない** を有効にした状態で、デフォルトの **Target Hardware** と **Project Settings** を使います。
+[/REGION]
+
+## コンテンツ ブラウザを使用する
+
+コンテンツ ブラウザの **[Import]** ボタンを使って TTF または OTF のフォントファイルを選択することができます。
+
+1. コンテンツ ブラウザ で **[Import]** ボタンをクリックします。
+
+ 
+
+1. **[Import]** ダイアログ ボックスが表示されたら、インポートする TFF または OTF のフォント ファイルに移動し、選択します。**[Open]** をクリックします。
+
+ (w:500)
+
+1. しばらくすると、**[Font Face Import Options]** ダイアログが表示されます。コンテンツ ブラウザで Font Face アセットと Composite Font アセットを作成するには、表示されているオプションから、**Yes** を選択します。
+
+ (w:500)
+
+1. これで Font Face アセットがフォルダの階層に入ります。
+
+
+
+
+## ドラッグ&ドロップを使用する
+
+TTF ファイルまたは OTF ファイルをコンテンツ ブラウザに直接 **ドラッグ & ドロップ** し、フォント アセットを作成することもできます。
+
+1. TTF ファイルまたは OTF ファイルを保存した場所に移動します。ファイルを選択して **コンテンツ ブラウザ** までドラッグしてインポート プロセスを開始します。
+
+ (w:650)
+
+1. しばらくすると、**[Font Import Options]** が表示されます。コンテンツ ブラウザで Font Face アセットと Composite Font アセットを作成するには、表示されているオプションから、**Yes** を選択します。
+
+ (w:500)
+
+1. これで Font Face アセットがフォルダの階層に入ります。
+
+ 
+
+## フォント エディタを使用する
+
+**フォント エディタ** の [Default Font Family] (Engine/UMG/UserGuide/Fonts/Overview#defaultfontfamily) リストから Font Face アセットを直接インポートして作成することができます。
+これで、最初にフォント アセットをインポートしてから割り当てる必要がなくなります。
+
+1. 既存の **Font** アセットを開くか、コンテンツ ブラウザの **[Add New (新規追加)]** ボタンを使用して、新しいアセットを作成します。
+
+ (w:600)
+
+1. デフォルトのフォント ファミリーに新しいフォントを追加するには、**[Add Font]** ボタンをクリックします。
+
+ (w:500)
+
+1. 選択のドロップダウンの隣にある **[folder]** ボタンを選択します。
+
+ (w:500)
+
+1. **[Import]** ダイアログ ボックスが表示されたら、インポートする TFF または OTF のフォント ファイルに移動し、選択します。**[Open]** をクリックします。
+
+ (w:500)
+
+1. 続いて **[Save Font Face]** ウィンドウが表示されます。フォントに名前を付けてゲーム フォルダの階層で保存場所を選択します。**[Save (保存)]** をクリックします。
+
+ (w:500)
+
+1. これで Font Face アセットがフォルダの階層に入ります。
+
+ 
+
+## 最終結果
+
+様々な方法でフォント ファイルをインポートする方法を説明しました。ゲームやプロジェクトでこうした方法のいずれかを使用してください。
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.KOR.udn
new file mode 100644
index 000000000000..40f9489f3707
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/HowTo/ImportingFonts/ImportingFonts.KOR.udn
@@ -0,0 +1,104 @@
+INTSourceChangelist:3403467
+Availability: Public
+crumbs:
+Title: 폰트 임포트
+Description: 언리얼 엔진 4 에서 사용할 폰트 애셋을 임포트하는 방법을 안내해 드립니다.
+Type: How-to
+SkillLevel: Beginner
+Version: 4.15
+Parent: Engine/UMG/UserGuide/Fonts/Howto
+Related: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/CreatingFonts
+Related: Engine/UMG/UserGuide/Fonts/HowTo/FontsWithUMG
+Order:1
+Tags: UMG UI Designer
+topic-image:ImportingFonts_Topic.png
+
+여기서는 언리얼 엔진 4 에 폰트 파일을 임포트하는 법을 배워봅니다.
+
+[REGION:raw]
+(w:800)
+[/REGION]
+
+폰트 임포트를 시작할 때, 여러가지 메소드 중 작업방식에 가장 잘 맞는 메소드를 선택할 수 있습니다. 사용할 수 있는 임포트 메소드는 다음과 같습니다:
+
+* 콘텐츠 브라우저의 임포트 버튼
+* 콘텐츠 브라우저에 드래그 앤 드롭
+* 폰트 에디터 사용
+
+또한 폰트 임포트 시 **TrueType Font** (TTF) 와 **OpenType Font** (OTF) 파일 중에서 선택할 수 있습니다. 필요에 따라 가장 적합한 임포트 메소드와 폰트 유형을 선택하세요.
+
+
+[REGION:note]
+여기서는 **공백 템플릿** 프로젝트에 **시작용 콘텐츠** 은 없으며, 기본 **타겟 하드웨어** 및 **프로젝트 세팅** 을 사용하고 있습니다.
+[/REGION]
+
+## 콘텐츠 브라우저 사용
+
+콘텐츠 브라우저의 **임포트** 버튼을 사용하여 TTF 또는 OTF 폰트 파일을 선택하면 됩니다.
+
+1. 콘텐츠 브라우저에서 **임포트** 버튼을 클릭합니다.
+
+ 
+
+1. **임포트** 대화창이 뜨면, 임포트하고자 하는 TTF 또는 OTF 폰트 파일을 선택한 뒤 **열기** 를 클릭합니다.
+
+ (w:500)
+
+1. 잠시 후 **Font Face Import Options** (폰트 페이스 임포트 옵션) 대화창이 뜹니다. 나열된 옵션에서 **예** 를 선택하면 콘텐츠 브라우저에 폰트 페이스 애셋과 컴포짓 폰트 애셋이 생성됩니다.
+
+ (w:500)
+
+1. 이제 폴더 계층구조에서 폰트 페이스 애셋을 찾을 수 있습니다.
+
+ 
+
+
+## 드래그 앤 드롭 사용
+
+콘텐츠 브라우저에 TTF 또는 OTF 파일을 바로 드래그 앤 드롭하여 폰트 애셋을 만들 수 있습니다.
+
+1. TTF 또는 OTF 파일이 저장된 폴더로 이동합니다. 파일을 선택한 후 끌어 **콘텐츠 브라우저** 에 놓으면 임포트 프로세스가 시작됩니다.
+
+ (w:650)
+
+1. 잠시 후 **Font Import Options** (폰트 임포트 옵션)이 나타납니다. 나열된 옵션에서 **Yes** (예)를 선택하면 콘텐츠 브라우저에 폰트 페이스 애셋 및 컴포짓 폰트 애셋이 생성됩니다.
+
+ (w:500)
+
+1. 이제 폴더 계층구조에서 폰트 페이스 애셋을 찾을 수 있습니다.
+
+ 
+
+## 폰트 에디터 사용
+
+**폰트 에디터** 의 [Default Font Family](Engine/UMG/UserGuide/Fonts/Overview) 리스트에서 폰트 페이스 애셋을 바로 임포트 및 생성 가능하므로
+먼저 폰트 애셋을 임포트한 뒤 할당해 줄 필요가 없습니다.
+
+1. 기존 **폰트** 애셋을 열거나 콘텐츠 브라우저의 **신규 추가** 버튼으로 새로 만듭니다.
+
+ (w:600)
+
+1. **폰트 추가** 버튼을 클릭하여 새로운 폰트 선택을 **디폴트 폰트 패밀리** 에 추가합니다.
+
+ (w:500)
+
+1. 선택 드롭다운 옆 **폴더** 버튼을 선택합니다.
+
+ (w:500)
+
+1. **임포트** 대화창이 뜨면, 임포트하고자 하는 TTF 또는 OTF 폰트 파일로 이동하여 선택한 뒤 **열기** 를 클릭합니다.
+
+ (w:500)
+
+1. 다음, **폰트 페이스 저장** 창이 뜹니다. 폰트에 이름을 짓고 게임 폴더 계층구조에 저장 위치를 선택한 뒤 **저장** 을 클릭합니다.
+
+ (w:500)
+
+1. 이제 폴더 계층구조에서 폰트 페이스 애셋을 찾을 수 있습니다.
+
+ 
+
+## 최종 결과
+
+다양한 메소드를 통해 임포트하는 방법을 살펴봤으니, 이 방법 중 하나를 통해 직접 게임이나 프로젝트에 사용할 폰트 파일을 임포트할 수 있을 것입니다.
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.INT.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.INT.udn
index e83ec7d4deb9..70c395c48127 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.INT.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.INT.udn
@@ -7,9 +7,13 @@ Related: Engine/UMG/UserGuide/Fonts
Related: Engine/UMG/UserGuide/Styling
Version: 4.14
Parent: Engine/UMG/UserGuide/Fonts
-order: 1
+type: Overview
+Skilllevel:Beginner
+order: 2
tags: User Interface
tags:UMG UI Designer
+tags: Fonts
+Topic-image:FontMaterials_Topic.png
[TOC]
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.JPN.udn
index 2a0e02ba9f60..96d19e0e8eb5 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3244089
+INTSourceChangelist:3394420
Availability:Public
Title:フォントのマテリアルとアウトライン
Description:色、マテリアル、アウトラインを使って UMG にスタイルを適用する方法例を示します。
@@ -8,9 +8,13 @@ Related:Engine/UMG/UserGuide/Fonts
Related:Engine/UMG/UserGuide/Styling
Version:4.14
Parent:Engine/UMG/UserGuide/Fonts
-order:1
+type:Overview
+Skilllevel:Beginner
+order:2
tags:User Interface
tags:UMG UI Designer
+tags:Fonts
+Topic-image:FontMaterials_Topic.png
[TOC]
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.KOR.udn
index 2f5b51c99a49..d9dcf58df32b 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Materials/FontMaterialsAndOutlines.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3244089
+INTSourceChangelist:3394420
Availability:Public
Title: 폰트 머티리얼 및 윤곽선
Description:색, 머티리얼, 윤곽선을 사용하여 UMG 폰트의 스타일을 잡는 방법에 대한 예제입니다.
@@ -8,9 +8,13 @@ Related: Engine/UMG/UserGuide/Fonts
Related: Engine/UMG/UserGuide/Styling
Version: 4.14
Parent: Engine/UMG/UserGuide/Fonts
-order: 1
+type: Overview
+Skilllevel:Beginner
+order: 2
tags: User Interface
tags:UMG UI Designer
+tags: Fonts
+Topic-image:FontMaterials_Topic.png
[TOC]
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.CHN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.CHN.udn
new file mode 100644
index 000000000000..334395236667
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.CHN.udn
@@ -0,0 +1,159 @@
+INTSourceChangelist:3401632
+Availability:Public
+Title:字体资源和编辑器
+Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
+Description:详细说明字体风格和字体资源,以及字体编辑器的诸多功能。
+Parent:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG
+Related:Engine/UMG/UserGuide/Fonts/HowTo
+Related:Engine/UMG/UserGuide/WidgetBlueprints
+Related:Engine/UMG/UserGuide/WidgetTypeReference
+Version:4.16
+type:overview
+order:1
+tags:UMG UI Designer
+Tags:Fonts
+topic-image:FontOverview_Topic.png
+SkillLevel:Beginner
+
+[TOC(start:2 end:2)]
+
+此页面包含可用于 **字体编辑器** 的 **字体** 和 **字体风格** 资源。
+
+## 字体资源
+
+虚幻引擎 4 中的字体被分类为 **字体** 资源,使用两种缓存方法:**Runtime** 的形式是合成字体;**Offline** 是更古老的预计算字体图谱法。在字体编辑器中打开字体资源后即可在两种方法之间切换(无需替换即可简单将现有字体资源从 Offline 转换到新合成方法)。
+
+## 字体风格(Font Face)资源
+
+导入字体时便会创建 **字体风格** 资源,它将保存可被字体资源引用的字体数据。这意味着相同的字体数据可在多个字体资源之间交替使用,甚至与资源中的多个字型共用,最终减少内存消耗。
+
+(w:600)
+
+打开字体风格资源时,可访问 **Hinting** 和 **Loading Policy** 的设置。
+
+[REGION:simpletable]
+| 属性 | 描述 |
+| --- |--- |
+| **Source File Name** | 所创建字体风格的文件名。这不会固定保存在磁盘中,因为我们之前可能已在此资源中加载和缓存字体数据。|
+| **Hinting** | 字体风格所使用的微调算法。[INCLUDE:#hinting] |
+| **Loading Policy** | 控制此字体风格运行时加载方式的枚举。查看枚举获得选项的更多解释。[INCLUDE:#loadingpolicy]|
+| **Layout Method** | 此项将选择字体布局时所使用的方法。如字体出现裁剪或高度问题,可尝试对此项进行修改。[INCLUDE:#layoutmethod] |
+[/REGION]
+
+
+
+## 将字体资源更新至 4.15 及更新版本
+
+从虚幻引擎 4.15 版本开始,字体资源现已被拆分为两个单独的资源,字体和字体风格。现有的字体资源在加载中会更新其内部字体数据到内置的字体风格资源中,但不会对它们进行自动拆分。需要打开字体编辑器,在字体群里的条目下选择 **Upgrade Data**。此操作使用户能编辑这些资源,并与创建的其他字体资源共享这些资源。
+
+(w:175)
+
+点击 **Upgrade Data** 后,将弹出保存新字体风格资源的提示。
+
+
+## 字体编辑器
+
+在 **Content Browser** 中双击字体资源后,它将在 **字体编辑器** 窗口中打开。
+
+(w:820)
+
+字体编辑器窗口详解如下:
+
+#### 工具栏菜单
+
+(w:550)
+
+可在此菜单中保存修改、在 **Content Browser** 中查找资源,在预览窗口中变更预览窗口(4)背景颜色或前景颜色(文本颜色)。有更新或导出正在进行修改的选项,然而这些选项只在 **离线** 缓存模式中可用。
+
+(#defaultfontfamily)
+#### 默认字体群
+
+(w:550)
+
+用户可在此窗口中指定此字体资源使用的默认字体群。用户可添加特定字体风格的多个版本(如常规、粗体、斜体、下划线等),或将不同字体风格的合集设为一个合成字体。如已创建一个空白字体,则也可从此窗口中指定字体。
+
+#### 子字体群
+
+(h:50)
+
+在此窗口中点击 **Add Sub-Font Family** 按钮即可指定此字体资源所使用的子字体群。
+
+[(w:550)](SubFontFamily.png)
+
+可在此处指定字符范围。进入此字符范围后将指定不同于默认字体的另一种字体。这在需要为不同语言使用不同字体类型时十分实用。
+
+
+#### 预览
+
+
+
+此窗口可预览字体,并提供一个文本输入框以便输入范例文本。
+
+#### Draw For Metrics
+
+
+
+**Draw Font Metrics** 将覆盖行高、字形边界框,和作为预览一部分的的基线。
+
+* **Base Line** - 这是文本所处的线。
+* **Line Bounds** - 这是为给定文本字符串长度所创建的边界框。
+* **Grapheme Cluster Bounds** - 此边界框沿给定语言中的逻辑字符而绘制,可能由数个字形组成(例如一个基础字符和重音符号)。
+* **Glyph Bounds** - 这是沿给定字形绘制的边界框。
+
+#### 详情
+
+(w:500)
+
+可在此创库中修改 Font Cache Type,以及 Font Size 和 Font Name(针对运行时)。
+* 如使用旧方法,在 Offline 缓存模式中仍然可以修改字体的参数。
+* 也可将现有字体资源从 **Offline** 转换为 **Runtime**,无需进行替换。
+
+## 范例字体资源
+
+范例字体资源显示如下。
+
+[REGION:lightbox]
+[(w:820)](ExampleFontLayout.png)
+[/REGION]
+
+_点击查看全图。_
+
+合成字体固定包含一个默认字体群,也可能包含任意数量用于给定字符范围的子字体群。每个字体群其自身由任意数量的字体风格组成(这些字体风格可基于其风格进行命名)。运行时每个字符将使用字体群中该字符范围最适合的字体(基于可用字体)。
+
+如上图范例所示,日语文本属于日语字体群的字符范围中,因此使用源 Han Sans 进行绘制,而不以默认字体群(Roboto)进行绘制。子字体群中的字体优先按命名匹配选择。而常规体、粗体和细体也会基于默认字体的属性进行匹配,粗斜体同样如此(其自动选择日语粗体,因为字体包含加粗属性)。
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.INT.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.INT.udn
new file mode 100644
index 000000000000..6f9ab2bb5220
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.INT.udn
@@ -0,0 +1,167 @@
+Availability:Public
+Title: Font Asset and Editor
+Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
+Description: Details the Font Face and Font assets, along with covering the Font Editors various features.
+Parent: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide/Fonts/HowTo
+Related: Engine/UMG/UserGuide/WidgetBlueprints
+Related: Engine/UMG/UserGuide/WidgetTypeReference
+Version: 4.16
+type:overview
+order: 1
+tags:UMG UI Designer
+Tags: Fonts
+topic-image:FontOverview_Topic.png
+SkillLevel:Beginner
+
+[TOC(start:2 end:2)]
+
+This page covers the **Font** and **Font Face** asset types that can be used with the **Font Editor**.
+
+## Font Assets
+
+Fonts in Unreal Engine 4 are categorized as a **Font** asset and use two caching methods, **Runtime** which is in the form of a Composite Font or **Offline** which is the older
+pre-computed Font Atlas method. You can switch between the two methods by opening up a Font asset in the Font Editor (this provides a simple way to convert existing Font assets
+from Offline to the new composite method without having to replace them).
+
+## Font Face Assets
+
+The **Font Face** asset is created when you import a font and it stores the font data that can be referenced by the Font asset. This means that the same font data can be reused across
+multiple Font assets or even with multiple typefaces within the asset, and ultimately reduces memory consumption.
+
+(w:600)
+
+When you open your Font Face Asset, you have access to the settings for **Hinting** and **Loading Policy**.
+
+[REGION:simpletable]
+| Property | Description |
+| --- |--- |
+| **Source File Name** | The filename of the font face we were created from. This may not always exist on disk, as we may have previously loaded and cached the font data inside this asset. |
+| **Hinting** | The hinting algorithm to use with the font face. [INCLUDE:#hinting] |
+| **Loading Policy** | Enum controlling how this font face should be loaded at runtime. See the enum for more explanations of the options. [INCLUDE:#loadingpolicy]|
+| **Layout Method** | This selects the method to use when laying out the font. Try changing this if you notice clipping or height issues with your font. [INCLUDE:#layoutmethod] |
+[/REGION]
+
+
+
+## Upgrading Font Assets to 4.15 and Later
+
+Starting with Unreal Engine 4.15, Font assets have now been split into two separate assets, Font and Font Faces. Existing Font assets will upgrade their internal font data into
+embedded Font Face assets during load, but will not automatically split them. You will have to do this by opening the Font Editor and selecting **Upgrade Data** under the entries within your font families.
+This will enable you to edit and share these assets with other Font assets that you've created.
+
+(w:175)
+
+After you click **Upgrade Data**, you will be prompted to save the new Font Face asset.
+
+
+## Font Editor
+
+When you double-click on a Font asset in the **Content Browser**, it will open up inside of the **Font Editor** window.
+
+(w:820)
+
+A breakdown of the Font Editor Window is presented below:
+
+#### Toolbar Menu
+
+(w:550)
+
+From this menu, you can save any changes you make, find the asset in the **Content Browser**, change the Background Color of the preview window (4) or
+the Foreground Color (text color) in the preview window. There are options for Updating or Exporting changes being made, however, these options are only available
+within the **Offline** cache mode.
+
+#### Default Font Family
+
+(w:550)
+
+In this window, you can assign the Default Font Family for use with this Font asset. You can add versions of a particular Font style (for example Normal,
+Bold, Italics, Underline, etc.) or have a collection of different Font styles as one Composite Font. If you have created a blank Font asset, you can assign
+a font from inside this window as well.
+
+#### Sub-Font Family
+
+(h:50)
+
+In this window, when you click the **Add Sub-Font Family** button, you can assign the Sub-Font Family for this Font asset to use.
+
+[(w:550)](SubFontFamily.png)
+
+Here, you can specify a Character Range, and if a character entered falls within the range, you can specify a different Font style
+to use instead of the Default. This is useful for when you want to use different Font types for different languages.
+
+
+#### Preview
+
+
+
+This window allows you to preview your fonts and provides a text entry box for entering sample texts.
+
+#### Draw For Metrics
+
+
+
+The **Draw Font Metrics** toggle will overlay the line height, glyph bounding boxes, and base-line as part of the preview.
+
+* **Base Line** - This is the line in which the text sits.
+* **Line Bounds** - This is the bounding box created for the length of the given text string.
+* **Grapheme Cluster Bounds** - This is the bounding box drawn around what is considered a logical character in a given language, and may be comprised of several glyphs (for example, a base character and accent glyph).
+* **Glyph Bounds** - This is the bounding box drawn around the given glyph.
+
+#### Details
+
+(w:500)
+
+In this window, you can change the Font Cache Type as well as change the Font Size and Font Name (for Runtime).
+* If you are using the older method, you can still change the parameters for your Font while in Offline cache mode.
+* You can also convert any existing Font assets from **Offline** to **Runtime** without having to replace them.
+
+## Example Font Asset
+
+An example Font asset is shown below.
+
+[REGION:lightbox]
+[(w:820)](ExampleFontLayout.png)
+[/REGION]
+
+_Click image for a full view._
+
+A Composite Font will always contain a Default Font Family, and may also contain any number of Sub-Font Families that should be used for a given range of characters. Each Font Family is itself made up of any number of Font Faces that can be named based on their style. At runtime, the most suitable Font to use for each character (based on the Fonts available) in the Font Family for that character range is used.
+
+As seen in the example image above, the Japanese text falls within the character ranges of the Japanese font family, and therefore, is drawn using Source Han Sans rather than the Default Font Family (Roboto). Fonts in a Sub-Font Family are preferably chosen by name match, as in the case of Regular, Bold, and Light, however they can also fallback to matching based on the attributes of the Default Font, as is the case with Bold Italic (it automatically chose the Bold Japanese font because the font contained the Bold attribute).
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.JPN.udn
new file mode 100644
index 000000000000..29d7ee3098fc
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.JPN.udn
@@ -0,0 +1,168 @@
+INTSourceChangelist:3401632
+Availability:Public
+Title:Font アセット エディタ
+Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
+Description:フォント エディタの様々な機能と共に Font Face と Font のアセットについて詳しく説明します。
+Parent:Engine/UMG/UserGuide/Fonts
+Related:Engine/UMG
+Related:Engine/UMG/UserGuide/Fonts/Howto
+Related:Engine/UMG/UserGuide/WidgetBlueprints
+Related:Engine/UMG/UserGuide/WidgetTypeReference
+Version:4.16
+type:overview
+order:1
+tags:UMG UI Designer
+Tags:Fonts
+topic-image:FontOverview_Topic.png
+SkillLevel:Beginner
+
+[TOC(start:2 end:2)]
+
+このページでは、**フォント エディタ** で使用できる **Font** と **Font Face** のアセットのタイプについて説明します。
+
+## Font アセット
+
+UE4 のフォントは **Font** アセットとして分類され、 2 種類のキャッシング方法を使用します。**ランタイム** は、コンポジット フォントの形式をとります。**オフライン** は、
+事前計算された古いフォント アトラス方式です。フォント エディタで Font アセットを開くことで、この 2 つの方式を切り替えることができます (これはオフラインの既存のフォント アセットを置き換える必要なく
+新しいコンポジット方式に変換する簡単な方法です)。
+
+## Font Face アセット
+
+**Font Face** アセットは、フォント インポート時に作成され、Font アセットが参照できるフォント データを保存します。つまり、同じフォント データを複数のフォント アセットで再利用することができます。
+さらに、ひとつの Font アセット内で複数の書体を再利用することもできます。その結果、メモリ消費を減らします。
+
+(w:600)
+
+Font Face アセットを開くと、**[Hinting]** と **[Loading Policy]** の設定にアクセスすることができます。
+
+[REGION:simpletable]
+| プロパティ | 説明 |
+| --- |--- |
+| **Source File Name** | 書体の作成元のファイル名です。必ずしもディスク上にありません。フォント データを過去にロードして、このアセット内にキャッシュしたかもしれないからです。 |
+| **Hinting** | 書体と合わせて使うヒント アルゴリズムです。 [INCLUDE:#hinting] |
+| **Loading Policy** | ランタイムにこうした書体がどのようにロードされるかを制御する列挙型変数です。オプションの詳細説明については、列挙型変数をご覧ください。 [INCLUDE:#loadingpolicy]|
+| **Layout Method** | フォントをレイアウトする場合に使う方法を選択します。フォントでクリッピングや高さの問題が生じたら、これを使ってみてください。[INCLUDE:#layoutmethod] |
+[/REGION]
+
+
+
+## Font アセットを 4.15 以降にアップグレード
+
+アンリアル エンジン 4.15 から Font アセットは、Font と Font Faces という 2 つのアセットに分かれました。ロード中に既存の Font アセットはその内部フォントデータを、埋め込まれた Font Face アセットに自動的にアップグレードします。
+しかし、自動的にそれらを分割はしません。これを行うには、Font エディタを開き、フォント ファミリー内のエントリーで **Upgrade Data** を選択します。
+これらのアセットを編集したり、作成した他の Font アセットと共有できるようになります。
+
+(w:175)
+
+**[Upgrade Data]** をクリックすると、新しい Font Face アセットを保存するように促されます。
+
+
+## フォント エディタ
+
+**[コンテンツ ブラウザ]** でフォント アセットをダブルクリックすると、**フォント エディタ** ウィンドウ内でそのフォント アセットが開きます。
+
+(w:820)
+
+以下は Font Editor ウィンドウの各部を示したものです。
+
+#### ツールバー メニュー
+
+(w:550)
+
+加えた変更を保存し、**[コンテンツ ブラウザ]** でアセットを見つけ、プレビュー ウィンドウの背景色を変更したり、
+文字の表示色 (テキスト カラー) を変更することができます。加えられている変更を更新またはエクスポートするオプションがあります。しかし、こうしたオプションは
+**オフライン** キャッシュ モード内でのみ利用可能です。
+
+#### Default Font Family
+
+(w:550)
+
+このウィンドウでは Font アセットと合わせて使用するデフォルト フォント ファミリーを指定することができます。特定のフォント スタイルのバージョンを追加したり (例えば、標準、太字、イタリック、アンダーラインなど)、
+ひとつのコンポジット フォントとして様々なフォント スタイルのコレクションを持つことができます。ブランクの Font アセットを作成したらこのウィンドウ内からフォントを
+指定することもできます。
+
+#### Sub-Font Family
+
+(h:50)
+
+このウィンドウでは、 **[Add Sub-Font Family]** ボタンをクリックすると、Font アセットが使用するサブフォント ファミリーを指定することができます。
+
+[(w:550)](SubFontFamily.png)
+
+ここでは、文字範囲 (Character Range) を指定し、入力した文字がこの範囲に入ったらデフォルトの代わりに
+別のフォント スタイルを指定することができます。これは異なる言語で様々なフォント タイプを使用したい場合に役立ちます。
+
+
+#### Preview
+
+
+
+このウィンドウでは、フォントをプレビューすることが可能であり、サンプル テキストを入力するためのテキスト エントリ ボックスがあります。
+
+#### Draw Font Metrics
+
+
+
+**Draw Font Metrics** を切り替えるとは、ラインの高さ、グリフのバウンディング ボックス、ベース ラインをプレビューでオーバーレイ表示します。
+
+* **Base Line** - テキストが入るラインです。
+* **Line Bounds** - 任意のテキスト文字列の長さに対して作られたバウンディング ボックスです。
+* **Grapheme Cluster Bounds** - 任意の言語で論理文字とみなされる物の回りに描画されるバウンディング ボックスです。いくつかのグリフを含むことがあります (例、基本文字とアクセントのグリフ)。
+* **Glyph Bounds** - 任意のグリフ周囲に描画されるバウンディング ボックスです。
+
+#### Details
+
+(w:500)
+
+このウィンドウではフォント キャッシュ タイプ、フォント サイズ、フォント名 (ランタイム用) を変更することができます。
+* 古い方式を使用している場合は、オフライン キャッシュ モードでフォントのパラメータを変更することができます。
+* 既存のフォント アセットを置き換えることなく **オフライン** から **ランタイム** に変換できます。
+
+## Font アセットの例
+
+以下は Font アセットの例です。
+
+[REGION:lightbox]
+[(w:820)](ExampleFontLayout.png)
+[/REGION]
+
+_画像をクリックして全画面表示にします。_
+
+コンポジット フォントには常にデフォルト フォント ファミリーが含まれます。任意の文字範囲で使用するサブフォント ファミリーをいくつでも含むことができます。各フォント ファミリー自体は、スタイルに基づいて命名できる任意の数の Font Face から構成されます。ランタイムには、その文字範囲に対してフォント ファミリーで (利用可能なフォントに基づき) 各文字に最適なフォントが使用されます。
+
+上の画像でわかるように、日本語のテキストは日本語フォント ファミリーの文字範囲にあります。そのため、デフォルト フォント ファミリー (Roboto) ではなく Source Han Sans を使用して描画されます。サブフォント ファミリーのフォントは Regular、Bold、および Light の場合と同様に名前の一致によって選択されるのが理想的です。しかし、Bold Italic のようにデフォルト フォントの属性に基づきマッチするようにフォールバックすることもできます (自動的に太字の日本語フォントが選択されます。このフォントには、太字属性が含まれていたからです)。
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.KOR.udn
new file mode 100644
index 000000000000..82dd96134a2a
--- /dev/null
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/Fonts/Overview/FontsOverview.KOR.udn
@@ -0,0 +1,168 @@
+INTSourceChangelist:3401632
+Availability:Public
+Title: 폰트 애셋 및 에디터
+Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
+Description: 폰트 페이스와 폰트 애셋, 폰트 에디터의 다양한 기능에 대해 다룹니다.
+Parent: Engine/UMG/UserGuide/Fonts
+Related: Engine/UMG
+Related: Engine/UMG/UserGuide/Fonts/HowTo
+Related: Engine/UMG/UserGuide/WidgetBlueprints
+Related: Engine/UMG/UserGuide/WidgetTypeReference
+Version: 4.16
+type:overview
+order: 1
+tags:UMG UI Designer
+Tags: Fonts
+topic-image:FontOverview_Topic.png
+SkillLevel:Beginner
+
+[TOC(start:2 end:2)]
+
+이 글에서는 **폰트 에디터** 에서 사용할 수 있는 **Font** (폰트) 및 **Font Face** (폰트 페이스) 애셋 유형에 대해 다룹니다.
+
+## 폰트 애셋
+
+언리얼 엔진 4 의 폰트는 **Font** (폰트) 애셋으로 분류되며, 두 가지 캐시 메소드를 사용합니다. 하나는 **Runtime** (런타임)의 Composite Font (합성 폰트) 형태이며, 다른 하나는 **Offline** (오프라인)의 예전 미리 계산하는 Font Atlas (폰트 아틀라스) 메소드입니다.
+폰트 에디터에서 폰트 애셋을 열어 두 메소드 사이 전환이 가능합니다 (기존 폰트 애셋을 대체할 필요
+없이 오프라인 메소드에서 새로운 합성 메소드로 간단히 전환할 수 있습니다).
+
+## 폰트 페이스 애셋
+
+**Font Face** (폰트 페이스) 애셋은 폰트를 임포트할 때 생성되며, 폰트 애셋에서 레퍼런싱할 수 있는 폰트 데이터를 저장합니다. 즉 같은 폰트 데이터를 여러 폰트 애셋,
+심지어 애셋 내 여러 타입 페이스에도 재사용하여 궁극적으로 메모리 사용량을 줄일 수 있다는 뜻입니다.
+
+(w:600)
+
+폰트 페이스 애셋을 열면 **Hinting** (힌팅) 및 **Loading Policy** (로딩 정책) 세팅에 접근할 수 있습니다.
+
+[REGION:simpletable]
+| 프로퍼티 | 설명 |
+| --- |--- |
+| **Source File Name** | 이 폰트 페이스를 기준으로 생성합니다. 항상 디스크에 존재하지는 않을 수 있는데, 기존에 이 애셋 안에 폰트 데이터를 로드하고 캐시했을 수 있기 때문입니다. |
+| **Hinting** | 폰트 페이스에 사용할 힌팅 알고리즘입니다. [INCLUDE:#hinting] |
+| **Loading Policy** | 런타임에 이 폰트 페이스를 어떻게 로드할지 결정하는 enum 입니다. 옵션 관련 자세한 설명은 enum 부분을 확인하세요. [INCLUDE:#loadingpolicy]|
+| **Layout Method** | 폰트 레이아웃에 사용할 메소드를 선택합니다. 폰트가 잘리거나 높이 문제가 있는 경우 이 옵션을 변경해 보세요. [INCLUDE:#layoutmethod] |
+[/REGION]
+
+
+
+## 폰트 애셋을 4.15 이후로 업그레이드
+
+언리얼 엔진 4.15 이후 폰트 애셋은 Font (폰트)와 Font Face (폰트 페이스), 두 개의 애셋으로 분리되었습니다. 기존 폰트 애셋은 로드 도중 내부 폰트 데이터를
+삽입된 폰트 페이스 애셋으로 업그레이드하지만, 자동 분리하지는 않습니다. 폰트 에디터에서 폰트 패밀리 내 항목 아래에서 **Upgrade Data** (데이터 업그레이드)를 선택하여
+직접 해줘야 합니다.
+
+(w:175)
+
+**데이터 업그레이드** 선택 후 새로운 폰트 페이스 애셋을 저장하겠냐고 묻습니다.
+
+
+## 폰트 에디터
+
+**콘텐츠 브라우저** 에서 폰트 애셋을 더블클릭하면, **폰트 에디터** 창 안에서 열립니다.
+
+(w:820)
+
+폰트 에디터 창에 대한 분석은 아래와 같습니다:
+
+#### 툴바 메뉴
+
+(w:550)
+
+이 메뉴에서는, 변경 내용을 저장하거나, **콘텐츠 브라우저** 에서 애셋을 찾거나, 프리뷰 창(4)의 배경색을 변경하거나,
+프리뷰 창의 전경(텍스트)색을 변경할 수 있습니다. 변경 사항을 업데이트 또는 익스포트하는 옵션이 있지만, 이 옵션은
+**Offline** (오프라인) 캐시 모드에서만 사용 가능합니다.
+
+#### 기본 폰트 패밀리
+
+(w:550)
+
+이 창에서는, 이 폰트 애셋에 사용할 기본 폰트 패밀리를 지정할 수 있습니다. 특정 폰트 스타일 버전을 추가하거나 (예를 들어 Normal,
+Bold, Italics, Underline, 등.) 각기 다른 폰트 스타일 모음을 하나의 Composite Font (합성 폰트)로 만들 수도 있습니다. 공백 폰트 애셋을 생성했다면,
+이 창 안에서 폰트를 할당할 수도 있습니다.
+
+#### 서브 폰트 패밀리
+
+(h:50)
+
+이 창에서 **Add Sub-Font Family** (서브 폰트 패밀리 추가) 버튼을 클릭하면, 이 폰트 애셋이 사용할 서브 폰트 패밀리를 할당할 수 있습니다.
+
+[(w:550)](SubFontFamily.png)
+
+여기서 Character Range (글자 범위)를 지정하고, 어느 한 글자가 이 범위 안에 들어가면 기본 이외 다른 폰트 스타일을 사용하도록 지정할 수 있습니다.
+각기 다른 언어마다 다른 폰트 유형을 사용하고자 할 때 좋습니다.
+
+
+#### 프리뷰
+
+
+
+이 창에서는 폰트를 미리볼 수 있으며, 샘플 텍스트 입력을 위한 글상자가 제공됩니다.
+
+#### 폰트 메트릭스 그리기
+
+
+
+**Draw Font Metrics** (폰트 메트릭스 그리기)는 프리뷰의 일부로 선 높이, 글리프 바운딩 박스, 베이스 라인 오버레이 표시를 토글합니다.
+
+* **Base Line** - 베이스 라인은 텍스트가 놓이는 기준 선입니다.
+* **Line Bounds** - 라인 바운드는 주어진 텍스트 스트링 길이에 대해 생성된 바운딩 박스입니다.
+* **Grapheme Cluster Bounds** - 그래핌 클러스터(문자소군) 바운드는 주어진 언어의 논리적 글자로 간주되는 것 주변에 그리는 바운딩 박스로, 다수의 글리프 조합이 가능합니다 (예를 들어 기본 글자에 액센트 글리프).
+* **Glyph Bounds** - 주어진 글리프 주변에 그리는 바운딩 박스입니다.
+
+#### 디테일
+
+(w:500)
+
+이 창에서는, Font Cache Type (폰트 캐시 유형) 변경은 물론 (런타임에) Font Size (폰트 크기)와 Font Name (폰트 이름)을 바꿀 수 있습니다.
+* 예전 메소드를 사용중인 경우, Offline (오프라인) 캐시 모드에 있을 때도 여전히 폰트 파라미터를 변경할 수 있습니다.
+* 기존 폰트 애셋을 대체할 필요 없이 **Offline** (오프라인)에서 **Runtime** (런타임)으로 전환할 수도 있습니다.
+
+## 예제 폰트 애셋
+
+예제 폰트 애셋은 아래와 같습니다.
+
+[REGION:lightbox]
+[(w:820)](ExampleFontLayout.png)
+[/REGION]
+
+_클릭하면 이미지 원본을 확인합니다._
+
+Composite Font (합성 폰트)는 항상 Default Font Family (기본 폰트 패밀리)를 포함하며, 주어진 글자 범위에 사용할 Sub-Font Family (서브 폰트 패밀리)를 몇이든 포함할 수도 있습니다. 각 폰트 패밀리 자체는 폰트 페이스를 몇 개로든 구성할 수 있으며, 스타일에 따라 이름을 붙일 수 있습니다. 런타임에 해당 글자의 폰트 패밀리 중 (사용가능한 폰트에 따라) 각 글자에 가장 적합한 폰트가 사용됩니다.
+
+위 예제 이미지에서 보듯, 일본어 텍스트는 일본어 폰트 패밀리 글자 범위 안에 해당하므로, Default Font Family (Roboto) 가 아닌 Source Han Sans 로 그립니다. 서브 폰트 패밀리의 폰트는 Regular, Bold, Light 등 일치하는 이름에 따라 선택되지만, Bold Italic 처럼 Default Font 특성에 따라 맞추기도 합니다 (폰트에 Bold 특성에 포함되어 있어서 자동으로 Bold Japanese 를 선택했습니다).
+
+
+
+
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.CHN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.CHN.udn
index c1a84667bd1f..8d7fc9181c06 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.CHN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.CHN.udn
@@ -1,42 +1,45 @@
-INTSourceChangelist:0
+INTSourceChangelist:3372539
Availability:Public
-Title: Background Blur
-Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide, Engine/UMG/UserGuide/WidgetTypeReference
-Description: Describes how to use the Background Blur Widget to blur objects beneath a single child widget.
-Related: Engine/UMG/UserGuide
-version: 4.15
+Title:背景模糊控件
+Crumbs:%ROOT%
+Description:说明如何使用背景模糊控件将单个子控件下面的物体模糊。
+Related:Engine/UMG/UserGuide
+version:4.15
tags:UMG UI Designer
+Parent:Engine/UMG/UserGuide/WidgetTypeReference
+Order:
+Type:reference
[TOC(start:2 end:2)]
-## Description
+##描述
[EXCERPT:desc]
-This widget can contain one child widget, providing an opportunity to surround it with adjustable padding and apply a post-process Gaussian blur to all content beneath the widget.
+**背景模糊控件** 包含一个子控件,能用可调填充将其包围,并将后期处理高斯模糊应用到控件下方的全部内容。
[/EXCERPT:desc]
-## Details
+## 详情
-In the **Details** panel for a placed **Background Blur** widget, there are a couple of specific options that can be set that pertain to the Widget:
+在放置的 **Background Blur** 控件的 **Details** 面板中,可对从属于控件的几个特定选项进行设置:

-| Option | Description |
+| 选项 | 描述 |
| -------- | ----------- |
-| **Apply Alpha to Blur** | When true, this will modulate the strength of the blur based on the widget alpha. |
-| **Blur Strength** | How blurry the background is. Larger numbers mean more blurry but will result in larger runtime cost on the GPU. |
-| **Low-Quality Fallback Brush** | An image to draw instead of applying a blur when Low-Quality Override mode is enabled. You can enable Low-Quality Mode for background blurs by setting the cvar `Slate.ForceBackgroundBlurLowQualityOverride` to **1**. This is usually done in the project's scalability settings. |
-| **Blur Radius** | This is the number of pixels which will be weighted in each direction from any given pixel when computing the blur. A larger value is more costly but allows for stronger blurs. |
+| **Apply Alpha to Blur** | 为 true 时,此项将基于控件透明度调制模糊强度。|
+| **Blur Strength** | 背景的模糊强度。数值越大,模糊越强,GPU 的运行时开销越大。|
+| **Low-Quality Fallback Brush** | 启用 Low-Quality Override 模式时绘制的图像(而不应用模糊)。将 cvar `Slate.ForceBackgroundBlurLowQualityOverride` 设为 **1** 即可启用背景模糊的低精度模式。这通常在项目的可延展性设置中进行。|
+| **Blur Radius** | 计算模糊时,此项是从任意给定像素的每个方向进行加权的像素数量。数值越高,模糊越强,但开销越高。|
-Each of the properties above can also be set or changed at runtime through Blueprint Script.
+之前提及的每个属性也可在运行时通过蓝图脚本进行设置(或修改)。

-The ability to set other appearance settings such as Horizontal and Vertical Alignment as well as any padding around the widget can also be defined.
+也可定义其他外观设置(如水平或垂直对齐)和围绕控件的包围。
-## Usage Example
+## 使用范例
-In the example below, we use the Background Blur widget to highlight a menu when the game is paused, blurring out the background.
+在下例中,游戏暂停时我们使用 Background Blur 组件高亮菜单,将背景模糊。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -50,24 +53,24 @@ RUD047Z00bU
[/PARAMLITERAL]
[/OBJECT]
-For this, we add the Blur Widget along with our simplified menu and use the **Blur Strength** value to determine the level of background blur applied.
+针对这点,我们通过简化菜单增加了 Blur 控件,使用 **Blur Strength** 值确定应用的背景模糊强度。

-On our Menu Widget Blueprint's Graph, we create some script to handle how our menu reacts to button clicks.
+我们在菜单控件蓝图的图表上创建一个脚本,处理菜单对按键点击的响应。

-Above, when we construct the widget, we are turning on the Mouse Cursor. When the Resume button is pressed we hide the cursor, un-pause the game and remove the menu from being displayed.
-When Quit is pressed, we simply quit the game. Inside our player character's Blueprint (below), we add some script to create and display the menu when a key is pressed, in this case whenever **P** is pressed, as well as pause the game.
+我们在上方构建控件时打开了鼠标指针。按下 **Resume** 键时将隐藏指针、取消游戏暂停,并移除显示的菜单。
+按下 **Quit** 键后将退出游戏。在玩家角色的蓝图中(如下图所示)添加一个脚本,在发生按键时创建并显示菜单。在此情形下,**P** 按下时游戏将暂停,将显示菜单。

-The result is the ability to pause the game and blur the background but keep our menu intact for players to interact with.
+实现的结果是能够暂停游戏并模糊背景,使玩家能和完整的菜单进行交互。

-We could also decrease the Blur Strength from 50 (above) down to 10 (below) to make the background slightly more visible.
+也可将模糊强度(Blur Strength)从 50 降至 10,使背景可见度略微提高。

diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.JPN.udn
index e9e69009153a..1d8b77b78656 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.JPN.udn
@@ -1,18 +1,21 @@
-INTSourceChangelist:3345453
+INTSourceChangelist:3372539
Availability:Public
-Title:Background Blur
-Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide, Engine/UMG/UserGuide/WidgetTypeReference
+Title:Background Blur ウィジェット
+Crumbs:%ROOT%
Description:単一の子ウィジェットの下にあるオブジェクトをぼかす Background Blur ウィジェットの使用方法を説明します。
Related:Engine/UMG/UserGuide
version:4.15
tags:UMG UI Designer
+Parent:Engine/UMG/UserGuide/WidgetTypeReference
+Order:
+Type:reference
[TOC(start:2 end:2)]
-## 説明
+##説明
[EXCERPT:desc]
-このウィジェットには子ウィジェットをひとつ含めることが可能であり、調整可能なパディングで周囲を囲み、そのウィジェットの下のすべてのコンテンツにポストプロセスのガウス ブラーを適用することができます。
+**Background Blur ウィジェット** には子ウィジェットをひとつ含めることが可能であり、調整可能なパディングで周囲を囲み、そのウィジェットの下にあるすべてのコンテンツにポストプロセスのガウス ブラーを適用することができます。
[/EXCERPT:desc]
## 詳細
@@ -28,11 +31,11 @@ tags:UMG UI Designer
| **Low-Quality Fallback Brush** | Low-Quality Override モードが有効な場合に、ぼかしを適用するかわりに描画する画像です。バックグラウンド ブラーの Low-Quality Mode を有効にするには、 cvar `Slate.ForceBackgroundBlurLowQualityOverride` を **1** に設定します。これは通常、プロジェクトの scalability (拡張性) の設定で行います。
| **Blur Radius** | ブラー計算時に任意のピクセルから各方向にウェイトをかけるピクセル数です。値が大きくなると負荷は高くなりますが、ぼかしは強くなります。 |
-上記の各プロパティは、ブループリントのスクリプトでランタイムに設定または変更することもできます。
+前述の各プロパティは、ブループリントのスクリプトでランタイムに設定 (または変更) することもできます。

-Horizontal Alignment、 Vertical Alignment (水平方向、垂直方向のアライメント) や、ウィジェット周囲のパディングも定義することができます。
+他の外観を設定する機能 (水平方向、垂直方向のアライメント) や、ウィジェット周囲のパディングも定義することができます。
## 使用例
@@ -50,7 +53,7 @@ RUD047Z00bU
[/PARAMLITERAL]
[/OBJECT]
-ここでは、単純なメニューに Blur Widget を加えて、**Blur Strength** 値を使って適用するバックグラウンド ブラーのレベルを決めます。
+ここでは、単純なメニューに Blur Widget を加えて、**Blur Strength** 値を使って適用するバックグラウンド ブラーの強度を決めます。

@@ -58,8 +61,8 @@ Menu Widget Blueprint のグラフでは、ボタンのクリックにメニュ

-上の画面では、ウィジェットを構築する場合、マウス カーソルをオンにしています。Resume ボタンを押すとカーソルが非表示になり、ゲームの一時停止が解除され、表示されているメニューが取り除かれます。
-Quit を押すと、ゲームが終了します。プレイヤー キャラクターのブループリント (以下) で、キーが押されたときに、この場合、**P** が押されるたびに、メニューを作成、表示する、ゲームを一時停止するスクリプトを追加しました。
+上の画面では、ウィジェットを構築する場合、マウス カーソルをオンにしています。**Resume** ボタンを押すとカーソルが非表示になり、ゲームの一時停止が解除され、表示されているメニューが取り除かれます。
+**Quit** を押すと、ゲームが終了します。プレイヤー キャラクターのブループリント (以下) で、キーが押されたときに、メニューを作成、表示するスクリプトを追加しました。この場合、P が押されるたびに、メニューが表示されると、ゲームを一時停止します。

diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.KOR.udn
index 4d372dbd5f04..5dcc4d25997a 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/BackgroundBlur/BackgroundBlur.KOR.udn
@@ -1,18 +1,21 @@
-INTSourceChangelist:3345453
+INTSourceChangelist:3372539
Availability:Public
-Title: 백그라운드 블러
-Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide, Engine/UMG/UserGuide/WidgetTypeReference
+Title: 백그라운드 블러 위젯
+Crumbs:%ROOT%
Description: Background Blur 위젯을 사용하여 단일 자손 위젯 아래 오브젝트에 블러를 적용하는 법입니다.
Related: Engine/UMG/UserGuide
version: 4.15
tags:UMG UI Designer
+Parent:Engine/UMG/UserGuide/WidgetTypeReference
+Order:
+Type:reference
[TOC(start:2 end:2)]
## 설명
[EXCERPT:desc]
-이 위젯은 하나의 자손 위젯을 가질 수 있는데, 거기에 조절 가능한 패딩을 붙여 포스트 프로세스 가우시안 블러를 적용하여 위젯 아래 모든 콘텐츠에 블러를 적용할(뿌옇게 만들) 수 있습니다.
+Background Blur (백그라운드 블러) 위젯은 하나의 자손 위젯을 가질 수 있는데, 거기에 조절 가능한 패딩을 붙여 포스트 프로세스 가우시안 블러를 적용하여 위젯 아래 모든 콘텐츠에 블러를 적용할(뿌옇게 만들) 수 있습니다.
[/EXCERPT:desc]
## 디테일
@@ -59,7 +62,7 @@ RUD047Z00bU

위에서 위젯 생성 시, Mouse Cursor 를 켜고 있습니다. Resume 버튼이 눌리면 커서를 숨기고 게임을 재개한 뒤 메뉴 표시를 제거합니다.
-Quit 이 눌리면 단순히 게임을 종료합니다. 플레이어 캐릭터의 블루프린트에서 (아래), 키가 눌리면 (여기서는 **P**) 메뉴를 표시하고 게임을 일시정지합니다.
+Quit 버튼이 눌리면 단순히 게임을 종료합니다. 플레이어 캐릭터의 블루프린트에서 (아래), 키가 눌리면 (여기서는 **P**) 메뉴를 표시하고 게임을 일시정지합니다.

diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/WidgetTypeReference.JPN.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/WidgetTypeReference.JPN.udn
index a6a874dfea24..f4debc87c2c6 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/WidgetTypeReference.JPN.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/WidgetTypeReference.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3345453
+INTSourceChangelist:3372539
Availability:Public
Title:Widget タイプのリファレンス
Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
@@ -8,7 +8,7 @@ tags:UMG UI Designer
[TOC(start:2 end:2)]
-**Widget ブループリント エディタ** 内の **[Palette (パレット)]** ウィンドウには、4 種類の **Widget** のカテゴリがあります。各カテゴリ内には、様々な Widget があり、**ビジュアル デザイナ** にドラッグ&ドロップすることができます。こうしたウィジェットを組み合わせて、**[Designer (デザイナ)]** タブで UI の外観をレイアウトし、各ウィジェットの **[Details (詳細)]** パネルの設定と **[Graph (グラフ)]** タブの設定を通してウィジェットの機能を追加することができます。
+**Widget ブループリント エディタ** 内の **[Palette (パレット)]** ウィンドウには、いくつかの **Widget** のカテゴリがあります。各カテゴリ内には、様々な Widget があり、**ビジュアル デザイナ** にドラッグ&ドロップすることができます。こうしたウィジェットを組み合わせて、**[Designer (デザイナ)]** タブで UI の外観をレイアウトし、各ウィジェットの **[Details (詳細)]** パネルの設定と **[Graph (グラフ)]** タブの設定を通してウィジェットの機能を追加することができます。
以下は、**[Palette]** ウィンドウの Widget の種類を表しています。
@@ -29,7 +29,7 @@ tags:UMG UI Designer
| **Button** | ボタンは単一の子であり、基本的なインタラクションを有効にするクリック可能なプリミティブ ウィジェットです。ボタン内に他のウィジェットを入れてより複雑な面白いクリック可能なエレメントを UI に作ることができます。 |
| **Check Box** | 'unchecked'、 'checked'、'indeterminable' (未チェック、チェック済み、未確定) の切り替えた状態を表示できます。標準的なチェックボックス、またはトグルボタン、またはラジオボタンとしてこのチェックボックスを使用できます。 |
| **Image** | UI にスレートブラシ、テクスチャ、スプライト、またはマテリアルを表示できるようにします。[REGION:note]レンダリング時にすべて同じレイヤーを共有しているのであれば、同じテクスチャ アトラスを構成しているスプライトはスレートと一緒にバッチ処理することができます。つまり、ドロー コール カウントの制限が厳しいプラットフォームでは、Paper2D スプライトをブラシの入力として使用すると UMG とスレート ウィジェットのレンダリングの効率は大幅に上がります。[/REGION] |
-| [Named Slot](Engine\UMG\UserGuide\WidgetTypeReference\NamedSlot) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\NamedSlot#desc] |
+| [**Named Slot**](Engine\UMG\UserGuide\WidgetTypeReference\NamedSlot) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\NamedSlot#desc] |
| **Progress Bar** | 進捗バー ウィジェットは、進捗に合わせて満たされるシンプルなバーであり、経験値、ヘルス、ポイントなどの用途でいくつでも再スタイリングできます。 |
| **Slider** | ハンドル付きのスライド バーを表示するシンプルなウィジェットです。 0-1 の間の値を制御できます。 |
| **Text** | 画面上にテキストを表示する基本的な方法です。オプションや他の UI エレメントのテキストを記述するために使用できます。 |
@@ -89,7 +89,7 @@ tags:UMG UI Designer
| **Uniform Grid Panel** | 複数の子全体で利用可能な領域を均等に分割するパネルです。 |
| **Vertical Box** | 縦方向ボックス (vertical box) ウィジェットは、子ウィジェットを自動的に垂直に配列するレイアウト パネルです。これはウィジェットを積み重ね、縦方向に並べるのに適しています。|
| **Widget Switcher** | タブ コントロールのようなものですが、タブはなく、独自にタブを作成してこのウィジェット スイッチャーと組み合わせてタブ効果を得ることができます。最大限でもウィジェットは一度に 1 つだけ見えます。 |
-| [Wrap Box](Engine\UMG\UserGuide\WidgetTypeReference\WrapBox) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\WrapBox#desc] |
+| [**Wrap Box**](Engine\UMG\UserGuide\WidgetTypeReference\WrapBox) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\WrapBox#desc] |
## プリミティブ
@@ -103,7 +103,7 @@ tags:UMG UI Designer
| **Circular Throbber** | くるくると回る円で画像を表示するウィジェットです。 |
| **Editable Text** | ボックスの背景なしのユーザー入力可能なテキスト欄です。編集可能なテキストは一行だけです。 |
| **Editable Text (Multi-Line)** | Editable Text と似ていますが、一行ではなく複数行に対応しています。 |
-| [Menu Anchor](Engine\UMG\UserGuide\WidgetTypeReference\MenuAnchor) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\MenuAnchor#desc] |
+| [**Menu Anchor**](Engine\UMG\UserGuide\WidgetTypeReference\MenuAnchor) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\MenuAnchor#desc] |
| **Native Widget Host** | 子スレート ウィジェットを 1 つ格納できるコンテナ ウィジェットです。UMG ウィジェット内部にネイティブ ウィジェットをネスティングすることだけが必要な場合に使用します。 |
| **Spacer** |他のウィジェットとの間でカスタムのパディングをします。このスペーサーは、視覚的に表示されずゲーム内では見えません。|
| **Throbber** | いくつかのズームする円を一列に表示するアニメートされた throbber ウィジェットです (例えば、ロード中であることを表すために使用できます)。 |
@@ -117,7 +117,7 @@ UI ベースの特殊効果を生成するために使われるウィジェッ
| オプション | 説明 |
| -------- | ----------- |
-| [Background Blur](Engine\UMG\UserGuide\WidgetTypeReference\BackgroundBlur) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\BackgroundBlur#desc] |
+| [**Background Blur**](Engine\UMG\UserGuide\WidgetTypeReference\BackgroundBlur) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\BackgroundBlur#desc] |
## カテゴリなし
@@ -148,7 +148,7 @@ User Created Widgets (ユーザー作成ウィジェット) は、別の Widget
| オプション | 説明 |
| -------- | ----------- |
-| [Web Browser](Engine\UMG\UserGuide\WidgetTypeReference\WebBrowser) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\WebBrowser#desc] |
+| [**Web Browser**](Engine\UMG\UserGuide\WidgetTypeReference\WebBrowser) | [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\WebBrowser#desc] |
diff --git a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/WidgetTypeReference.KOR.udn b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/WidgetTypeReference.KOR.udn
index c7865aded181..6c5bf9499fac 100644
--- a/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/WidgetTypeReference.KOR.udn
+++ b/Engine/Documentation/Source/Engine/UMG/UserGuide/WidgetTypeReference/WidgetTypeReference.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3345453
+INTSourceChangelist:3372539
Availability:Public
Title: 위젯 유형 참고서
Crumbs:%ROOT%, Engine, Engine/UMG, Engine/UMG/UserGuide
@@ -29,7 +29,7 @@ tags:UMG UI Designer
| **Button** | 버튼 - 단일 자손 클릭 가능 프리미티브 위젯으로, 기본적인 상호작용에 쓰입니다. 버튼 안에 다른 위젯을 배치하여 UI 에 좀 더 복잡하고 재미난 클릭가능 요소를 만들 수 있습니다. |
| **Check Box** | 체크 박스 - 'unchecked' 체크해제 / 'checked' 체크됨 / 'indeterminable' 확인불가 세 가지 토글 상태를 표시할 수 있습니다. 체크 박스는 고전 체크 박스, 토글 버튼, 동글 버튼으로 사용할 수 있습니다. |
| **Image** | 이미지 - 이미지 위젯으로 UI 에 슬레이트 브러시, 텍스처, 스프라이트, 머티리얼을 표시할 수 있습니다. [REGION:note]같은 텍스처 아틀라스에 들어있는 스프라이트는, 렌더링할 때 같은 레이어를 공유하는 경우 슬레이트에 일괄 배치시킬 수 있습니다. 즉 드로 콜 수 예산이 빠듯한 플랫폼에서는 Paper2D 스프라이트를 브러시 입력으로 사용하는 경우 UMG 와 슬레이트 위젯의 렌더링 효율이 크게 향상된다는 뜻입니다.[/REGION] |
-| [Named Slot](Engine\UMG\UserGuide\WidgetTypeReference\NamedSlot) | 네임드 슬롯 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\NamedSlot#desc] |
+| [**Named Slot**](Engine\UMG\UserGuide\WidgetTypeReference\NamedSlot) | 네임드 슬롯 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\NamedSlot#desc] |
| **Progress Bar** | 진행상황 바 - 진행상황 바 위젯은 경험치, 생명력, 점수와 같은 여러가지 용도에 맞도록 스타일 조정이 가능한, 단순한 바 입니다. |
| **Slider** | 슬라이더 - 0-1 사이 값 조절이 가능한 핸들이 있는 미닫이 바가 표시되는 단순 위젯입니다. |
| **Text** | 텍스트 - 화면상에 텍스트를 표시하는 기본적인 방법으로, 옵션이나 기타 UI 요소에 대한 텍스트 설명에 사용할 수도 있습니다. |
@@ -89,7 +89,7 @@ tags:UMG UI Designer
| **Uniform Grid Panel** | 균등 그리드 패널 - 자손 모두와 남은 공간을 균등하게 나누는 패널입니다. |
| **Vertical Box** | 세로 박스 - 자손 위젯이 자동으로 세로로 배치되도록 하는 위젯입니다. 위젯끼리 세로 정렬을 유지하면서 서로 쌓이도록 하는 데 좋습니다. |
| **Widget Switcher** | 위젯 전환기 - 자체적으로 만들 수 있는 탭은 없으나 탭처럼 제어되는 것으로, 이와 함꼐 하여 탭 효과를 낼 수 있습니다. 한 번에 최대 하나의 위젯만 보입니다. |
-| [Wrap Box](Engine\UMG\UserGuide\WidgetTypeReference\WrapBox) | 줄바꿈 박스 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\WrapBox#desc] |
+| [**Wrap Box**](Engine\UMG\UserGuide\WidgetTypeReference\WrapBox) | 줄바꿈 박스 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\WrapBox#desc] |
## 프리미티브
@@ -103,7 +103,7 @@ tags:UMG UI Designer
| **Circular Throbber** | 원형 트로버 - 회전하는 원형 이미지로 (주로 로드중임을) 나타내는 트로버 위젯입니다. |
| **Editable Text** | 편집가능 텍스트 - 박스 배경 없이 사용자 입력이 가능한 글상자입니다. 편집가능 텍스트 한 줄만 지원합니다. |
| **Editable Text (Multi-Line)** | 편집가능 텍스트 (여러줄) - **Editable Text** 와 비슷하나 한 줄이 아닌 여러줄 텍스트를 지원합니다. |
-| [Menu Anchor](Engine\UMG\UserGuide\WidgetTypeReference\MenuAnchor) | 메뉴 앵커 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\MenuAnchor#desc] |
+| [**Menu Anchor**](Engine\UMG\UserGuide\WidgetTypeReference\MenuAnchor) | 메뉴 앵커 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\MenuAnchor#desc] |
| **Native Widget Host** | 네이티브 위젯 호스트 - 하나의 자손 슬레이트 위젯을 포함할 수 있는 컨테이너 위젯입니다. UMG 위젯 안에 네이티브 위젯을 중첩시키기만 하면 되는 경우에 사용합니다. |
| **Spacer** | 스페이서 - 다른 위젯 사이에 임의의 여백을 제공해 주는 위젯입니다. 스페이서는 시각적 표시가 없어 게임에서 보이지 않습니다. |
| **Throbber** | 트로버 - 연속해서 여러개 확대되는 원으로 보이는 애니메이션 트로버 위젯입니다 (주로 로딩중임을 나타낼 때 사용됩니다). |
@@ -117,7 +117,7 @@ tags:UMG UI Designer
| 옵션 | 설명 |
| -------- | ----------- |
-| [Background Blur](Engine\UMG\UserGuide\WidgetTypeReference\BackgroundBlur) | 배경 블러 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\BackgroundBlur#desc] |
+| [**Background Blur**](Engine\UMG\UserGuide\WidgetTypeReference\BackgroundBlur) | 배경 블러 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\BackgroundBlur#desc] |
## 미분류
@@ -148,7 +148,7 @@ User Created Widget (사용자 생성 위젯)은 미리 생성해 둔 **위젯
| 옵션 | 설명 |
| -------- | ----------- |
-| [Web Browser](Engine\UMG\UserGuide\WidgetTypeReference\WebBrowser) | 웹 브라우저 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\WebBrowser#desc] |
+| [**Web Browser**](Engine\UMG\UserGuide\WidgetTypeReference\WebBrowser) | 웹 브라우저 - [INCLUDE:Engine\UMG\UserGuide\WidgetTypeReference\WebBrowser#desc] |
diff --git a/Engine/Documentation/Source/Enterprise/Enterprise.INT.udn b/Engine/Documentation/Source/Enterprise/Enterprise.INT.udn
index e322b7565ceb..f2e8d23f14c2 100644
--- a/Engine/Documentation/Source/Enterprise/Enterprise.INT.udn
+++ b/Engine/Documentation/Source/Enterprise/Enterprise.INT.udn
@@ -14,4 +14,4 @@ topic-icon:%ROOT%/enterprise_icon.png
Unreal Engine and its real-time interaction and rendering capabilities are well-suited for a huge range of projects across all Enterprise applications, including automotive, aviation, architecture, consumer electronics and complex data visualization.
-[DIR(output:"topic" org:"hierarchy" parent:"Enterprise")]
+[DIR(output:"topic" org:"hierarchy" parent:"Enterprise" end:"1")]
diff --git a/Engine/Documentation/Source/Enterprise/Enterprise.JPN.udn b/Engine/Documentation/Source/Enterprise/Enterprise.JPN.udn
index 729f7e105519..567570701f18 100644
--- a/Engine/Documentation/Source/Enterprise/Enterprise.JPN.udn
+++ b/Engine/Documentation/Source/Enterprise/Enterprise.JPN.udn
@@ -1,4 +1,5 @@
-Availability:Public
+INTSourceChangelist:3454523
+Availability:Public
Title:エンタープライズ アプリケーション
Description:アンリアル エンジンを自動車、航空、建築、コンシューマー エレクトロニクス、および複合データ ビジュアライゼーションのアプリケーションに使用します。
Crumbs:%ROOT%,
@@ -14,4 +15,4 @@ topic-icon:%ROOT%/docs_icon.png
アンリアル エンジンとそのリアルタイム インタラクション、レンダリング機能は多岐にわたるエンタープライズ アプリケーションの幅広いプロジェクトに適したものです。例えば、自動車、航空、建築、コンシューマー エレクトロニクス、および複合データ ビジュアリゼーションに適用できます。
-[DIR(output:"topic" org:"hierarchy" parent:"Enterprise")]
+[DIR(output:"topic" org:"hierarchy" parent:"Enterprise" end:"1")]
diff --git a/Engine/Documentation/Source/Enterprise/Enterprise.KOR.udn b/Engine/Documentation/Source/Enterprise/Enterprise.KOR.udn
index 8538676325a2..e9c8c6abf5c9 100644
--- a/Engine/Documentation/Source/Enterprise/Enterprise.KOR.udn
+++ b/Engine/Documentation/Source/Enterprise/Enterprise.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3112291
+INTSourceChangelist:3454523
Availability:Public
Title: 엔터프라이즈 어플리케이션
Description:차량, 항공, 건축, 소비자 가전, 복합 데이터 시각화 어플리케이션에 사용되는 언리얼 엔진입니다.
@@ -15,4 +15,4 @@ topic-icon:%ROOT%/enterprise_icon.png
언리얼 엔진과 그 실시간 상호작용 및 렌더링 기술은 차량, 항공, 건축, 소비자 가전, 복합 데이터 시각화와 같은 폭넓은 분야의 다양한 엔터프라이즈 어플리케이션에 쓰기에 적합합니다.
-[DIR(output:"topic" org:"hierarchy" parent:"Enterprise")]
+[DIR(output:"topic" org:"hierarchy" parent:"Enterprise" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/ClassCreation/CodeAndBlueprints/CodeAndBlueprints.JPN.udn b/Engine/Documentation/Source/Gameplay/ClassCreation/CodeAndBlueprints/CodeAndBlueprints.JPN.udn
index 53a68df7851a..f748df5042f2 100644
--- a/Engine/Documentation/Source/Gameplay/ClassCreation/CodeAndBlueprints/CodeAndBlueprints.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/ClassCreation/CodeAndBlueprints/CodeAndBlueprints.JPN.udn
@@ -1,8 +1,8 @@
-INTSourceChangelist:2710135
+INTSourceChangelist:3238697
Availability:Public
Title:C++ とブループリント
Crumbs: %ROOT%, Gameplay, Gameplay/ClassCreation
-Description:ゲームプレイ プログラマ向けのアンリアル エンジン入門
+Description:ゲームプレイ プログラマ向けのアンリアル エンジン入門書
Version:4.9
C++ クラスをブループリントで拡張できます。プログラマーが、新しいゲームプレイ クラスをコードで作成し、それをレベル デザイナーがブループリントで設定および変更することができます。
@@ -10,10 +10,10 @@ C++ クラスがどのようにブループリント システムとインタラ
## クラス設定
-クラス設定の最初のセクションでは、[](Programming\Development\ManagingGameCode\CppClassWizard) を使用して「LightSwitchBoth」という名前のクラスを作成します。
+クラス設定の最初のセクションでは、[](Programming\Development\ManagingGameCode\CppClassWizard) を使用して LightSwitchBoth という名前のクラスを作成します。
-「LightSwitchBoth」クラスの大部分のコード設定は、[C++ Only LightSwitch example](Gameplay\ClassCreation\CodeOnly) のコードと類似しています。ブループリントで「LightSwitchCodeOnly」クラスの拡張が可能でも、
-そのクラスで作成されたコンポーネント、変数、関数は、ブループリント グラフにアクセスすることはできません。この例では、「LightSwitchBoth」クラスから派生するブループリントのテンプレートとして機能させる
+LightSwitchBoth クラスの大部分のコード設定は、[C++ Only LightSwitch example](Gameplay\ClassCreation\CodeOnly) のコードと類似しています。ブループリントで LightSwitchCodeOnly クラスの拡張が可能でも、
+そのクラスで作成されたコンポーネント、変数、関数は、ブループリント グラフにアクセスすることはできません。この例では、 LightSwitchBoth クラスから派生するブループリントのテンプレートとして機能させる
`UPROPERTY()`と`UFUNCTION()` 指定子について理解を深めていきます。
最初に、C++ Only LightSwitch の例で、LightSwitch コンポーネント、 Sphere コンポーネント、 DesiredIntensity 変数、そして OnOverlap 関数を作成するために
@@ -22,15 +22,15 @@ C++ クラスがどのようにブループリント システムとインタラ
ヘッダファイルは、以下の機能を追加するために、C++ Only LightSwitch から適用されます。
* PointLight コンポーネントと Sphereコンポーネントは BlueprintReadOnly です。**[My Blueprint]** タブの **[Switch Component]** カテゴリに表示されます。
-* OnOverlapBegin と OnOverlapEnd は BlueprintNativeEvents となりました。**[My Blueprint]** タブの **Switch Functions** カテゴリに表示されます。
-* DesiredIntensity はブループリントで読み出し/書き込み専用です。**[My Blueprint]** タブの **Switch Variables** カテゴリに表示されます。
+* OnOverlapBegin と OnOverlapEnd は BlueprintNativeEvent になりました。**[My Blueprint]** タブの **[Switch Functions]** カテゴリに表示されます。
+* DesiredIntensity は BlueprintReadWrite です。**[My Blueprint]** タブの **[Switch Variables]** カテゴリに表示されます。
* DesiredIntensity は VisibleAnywhere の代わりに EditAnywhere となりました。
[REGION:tip]
-`UCLASS()`マクロには「ブループリントで利用可能」な指定子があります。このケースでは不要です。LightSwitchBoth は、ブループリントで利用可能なアクタから直接継承し、そのブループリントで利用可能な指定子が継承されるからです。
+`UCLASS()`マクロには `Blueprintable` な指定子があります。このケースでは不要です。LightSwitchBoth は、Blueprintable アクタから直接継承し、そのBlueprintable 指定子が継承されるからです。
[/REGION]
-`UPROPERTY()` と `UFUNCTION()` マクロの追加の指定子で、「LightSwitchBoth」クラスのヘッダファイルは以下の通りです。
+`UPROPERTY()` マクロと `UFUNCTION()` マクロの指定子の追加で、LightSwitchBoth クラスのヘッダファイルは以下のようになります。
[REGION:codetitlebar]
LightSwitchBoth.h
@@ -51,32 +51,32 @@ LightSwitchBoth.h
{
GENERATED_BODY()
public:
- /** point light コンポーネント */
+ /** point light component */
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Switch Components")
class UPointLightComponent* PointLight1;
- /** sphere コンポーネント */
+ /** sphere component */
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Switch Components")
class USphereComponent* Sphere1;
ALightSwitchBoth();
- /** 何かが sphere コンポーネントに入ると呼び出されます。 */
+ /** called when something enters the sphere component (何かが sphere コンポーネントに入ると呼び出されます。)*/
UFUNCTION(BlueprintNativeEvent, Category="Switch Functions")
- void OnOverlapBegin(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);
- void OnOverlapBegin_Implementation(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);
+ void OnOverlapBegin(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);
+ void OnOverlapBegin_Implementation(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);
- /** 何かが sphere コンポーネントを離れると呼び出されます。 */
+ /** called when something leaves the sphere component (何かが sphere コンポーネントを離れると呼び出されます。) */
UFUNCTION(BlueprintNativeEvent, Category="Switch Functions")
- void OnOverlapEnd(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex);
+ void OnOverlapEnd(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex);
- void OnOverlapEnd_Implementation(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex);
+ void OnOverlapEnd_Implementation(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex);
- /** light コンポーネントの可視性を切り替えます。*/
+ /** Toggles the light component's visibility (light コンポーネントの可視性を切り替えます)*/
UFUNCTION()
void ToggleLight();
- /** ライトの望ましい明るさ */
+ /** the desired intensity for the light (ライトの望ましい明るさ) */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Switch Variables")
float DesiredIntensity;
@@ -110,13 +110,13 @@ LightSwitchBoth.cpp
Sphere1 = CreateDefaultSubobject(this, TEXT("Sphere1"));
Sphere1->InitSphereRadius(250.0f);
- Sphere1->AttachParent = RootComponent;
+ Sphere1->SetupAttachment(RootComponent);
- Sphere1->OnComponentBeginOverlap.AddDynamic(this, &ALightSwitchBoth::OnOverlapBegin); // このコンポーネントが何かとオーバーラップした場合の通知をセットアップします。
- Sphere1->OnComponentEndOverlap.AddDynamic(this, &ALightSwitchBoth::OnOverlapEnd); // このコンポーネントが何かとオーバーラップした場合の通知をセットアップします。
+ Sphere1->OnComponentBeginOverlap.AddDynamic(this, &ALightSwitchBoth::OnOverlapBegin); // set up a notification for when this component overlaps something (このコンポーネントが何かとオーバーラップした場合の通知をセットアップします)
+ Sphere1->OnComponentEndOverlap.AddDynamic(this, &ALightSwitchBoth::OnOverlapEnd); // set up a notification for when this component overlaps something (このコンポーネントが何かとオーバーラップした場合の通知をセットアップします)
}
- void ALightSwitchBoth::OnOverlapBegin_Implementation(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult)
+ void ALightSwitchBoth::OnOverlapBegin_Implementation(UPrimitiveComponent* OverlappedComp, AActor* OtherActor, UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult)
{
if (OtherActor && (OtherActor != this) && OtherComp)
{
@@ -124,7 +124,7 @@ LightSwitchBoth.cpp
}
}
- void ALightSwitchBoth::OnOverlapEnd_Implementation(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex)
+ void ALightSwitchBoth::OnOverlapEnd_Implementation(UPrimitiveComponent* OverlappedComp, AActor* OtherActor, UPrimitiveComponent* OtherComp, int32 OtherBodyIndex)
{
if (OtherActor && (OtherActor != this) && OtherComp)
{
@@ -138,35 +138,35 @@ LightSwitchBoth.cpp
}
-これがブランク オブジェクトに追加した最初のコード クラスである場合は、エディタを閉じて、Visual Studio または Xcode でプロジェクトをコンパイルした後に、エディタを開いてゲームモジュールが適切に作成されて再ロードされていることを確認するために、
- エディタを再び開きます。プロジェクトを開くために使用しているアンリアルエディタの実行ファイルと **Build Configuration** が同じバージョンである確認も重要となります。ビルド設定とプロジェクトのコンパイルに関する詳細は、
+これが空のプロジェクトに追加した最初のコード クラスである場合は、エディタを閉じて、Visual Studio または Xcode でプロジェクトをコンパイルした後に、エディタを開いてプロジェクトを再び開く必要があります。
+ ゲームモジュールが適切に作成されて再ロードされていることを確認するためです。プロジェクトを開くために使用しているアンリアル エディタの実行ファイルのバージョンが **Build Configuration** と同じであることの確認も重要となります。ビルド設定とプロジェクトのコンパイルに関する詳細は、
[](Programming\Development\CompilingProjects) ページをご覧ください。
コードを既存の C++ プロジェクトに追加する場合は、ホットリロード機能を使用してエディタ内で新規コードをコンパイルすることができます。
この新規クラスをコンパイル後に、新規の [ブループリント クラス](Engine/Blueprints\UserGuide\Types\ClassBlueprint) を [作成](Engine/Blueprints\UserGuide\Types\ClassBlueprint\Creation) することができます。
-この場合、ブループリントの親クラスに「LightSwitchBoth」を選択して、名前を **LightSwitchBoth_BP** とします。
+この場合、ブループリントの親クラスに LightSwitchBoth を選択して、名前を **LightSwitchBoth_BP** とします。

-C++ に追加した PointLight コンポーネントと Sphere コンポーネントも **ブループリントエディタ** の **[コンポーネント]** タブに表示されます。
+C++ に追加した PointLight コンポーネントと Sphere コンポーネントも **ブループリント エディタ** の **[コンポーネント]** タブに表示されます。
アイコンはダーク ブルーで表示されて、ネイティブ コンポーネントであること、親 LightSwitchBoth クラスから継承されたことを示します。単に **LightSwitchBoth_BP** ブループリントに追加された新規コンポーネントは、
-ライトブルーのアイコンで表示されます。**コンポーネント** タブを使用したコンポーネントの追加と配置についての詳しい情報は、[Components](Engine/Blueprints\UserGuide\Components) タブのドキュメントを参照してください。
+ライトブルーのアイコンになります。**[コンポーネント]** タブを使用したコンポーネントの追加と配置についての詳しい情報は、[Components](Engine/Blueprints\UserGuide\Components) タブのドキュメントを参照してください。

-**ブループリント エディタ** の **グラフ** パネル はブループリント編集の中心部分です。**グラフ** パネルでは、新しい [変数](Engine/Blueprints\UserGuide\Variables)、
-[関数](Engine/Blueprints\UserGuide\Functions) と [マクロ](Engine/Blueprints\UserGuide\Macros) を [](Engine/Blueprints\Editor/UIComponents\MyBlueprint) タブに追加することができます。ブループリント クラスに含まれている全ての [グラフ](Engine/Blueprints\UserGuide\Graphs) にも
-アクセスできます。グラフには、デザイン タイムとゲームプレイ機能を作成するために [ノード](Engine/Blueprints\UserGuide\Nodes) が接続されています。こうした機能はクラスの変数、ゲームプレイ イベント、
-さらにアクタの周囲のものなどで操作されます。
+**ブループリント エディタ** の **[グラフ]** パネル はブループリント編集の中心部分です。**[グラフ]** パネルでは、新しい [変数](Engine/Blueprints\UserGuide\Variables)、
+[関数](Engine/Blueprints\UserGuide\Functions) と [マクロ](Engine/Blueprints\UserGuide\Macros) を [](Engine/Blueprints\Editor/UIComponents\MyBlueprint) タブで追加することができます。Blueprint クラスに含まれている全ての [グラフ](Engine/Blueprints\UserGuide\Graphs) にも
+アクセスできます。グラフには、クラスの変数、gameplay event、さらにアクタの周囲のものなどで操作するデザイン タイムとゲームプレイ機能を作成するために
+ [ノード](Engine/Blueprints\UserGuide\Nodes) が接続されています。
-**[グラフ パネル]** の **[My Blueprint]** タブには、C++ コードで「LightSwitchBoth」クラスに追加した PointLight コンポーネントと Sphere コンポーネントが表示されます。これは`BlueprintReadOnly` 指定子によって表示されます。
-これらのコンポーネントのノードは、**[My Blueprint]** タブから名前をクリックしてグラフにドラッグすることで、グラフへ追加することができます。その後、こうしたノードを、可視性やライト色などの変数を変更するノードへ
+**[グラフ]** パネルの **[My Blueprint]** タブには、C++ コードで LightSwitchBoth クラスに追加した PointLight コンポーネントと Sphere コンポーネントが表示されます。これは `BlueprintReadOnly` 指定子によって表示されます。
+これらのコンポーネントのノードは、**[My Blueprint]** タブから名前をクリックしてグラフにドラッグすることで、グラフに追加することができます。その後、こうしたノードを、可視性やライト色などの変数を変更するノードに
接続することができます。**[DesiredIntensity]** 変数は **[My Blueprint]** タブにも表示されます。コンポーネントではなく変数であるため、
`BlueprintReadWrite` 指定子を使用できます。つまり、ブループリント グラフに **DesiredIntensity** の値を get および set するノードの作成が可能です。使用に関する一般情報については [](Engine/Blueprints\Editor/UIComponents\MyBlueprint) のドキュメントを参照してください。
[REGION:tip]
-親「LightSwitchBoth」クラスのコンポーネントと変数は、デフォルトで表示されない場合もあります。**[My Blueprint]** タブの下にある **[Show inherited variables(継承した変数を表示)]** チェックボックスにチェックを入れると、
+親の LightSwitchBoth クラスのコンポーネントと変数は、デフォルトで表示されない場合もあります。**[My Blueprint]** タブの下にある **[Show inherited variables(継承した変数を表示)]** チェックボックスにチェックを入れると、
親クラスから継承された変数が表示されます。
[/REGION]
@@ -176,32 +176,32 @@ C++ に追加した PointLight コンポーネントと Sphere コンポーネ
|  |  |
-LightSwitchBoth_BP クラスの挙動をセットアップするために使用するグラフが 2 つあります。1 つめのグラフは、[](Engine/Blueprints\UserGuide\UserConstructionScript) グラフで、特殊な Construction Script
-イベントを含みます。Construction Script 設定無しの状態では、新規の LightSwitchBoth_BP アクタは、LightSwitchBoth コンストラクタのみを使用します。しかし、アクタがレベル内で移動した時と DesiredIntensity の変更時に、
+LightSwitchBoth_BP クラスの挙動をセットアップするために使用するグラフが 2 つあります。1 つめは、[](Engine/Blueprints\UserGuide\UserConstructionScript) グラフで、
+特殊な Construction Script event を含みます。Construction Script 設定無しの状態では、新規の LightSwitchBoth_BP アクタは、LightSwitchBoth コンストラクタのみを使用します。しかし、アクタがレベル内で移動した時と DesiredIntensity の変更時に、
Construction Script は実行されます。Construction Script を使用するということは、ブループリントに公開されたアクタ変数を簡単に変更することが可能であり、
変更がもたらす効果を直ぐに確認できることを意味します。
**LightSwitchBoth_BP** クラスで、**Construction Script** イベントは **Set Intensity** ノードと接続しています。
-そのため **Point Light 1** (PointLight コンポーネント) のBrightness (輝度) は、アクタの追加時、レベル内で移動時、または **[DesiredIntensity]** が変更された時に **DesiredIntensity** の値に設定されます。
+これは、 **Point Light 1** (PointLight コンポーネント) のBrightness (輝度) が、アクタの追加時、レベル内で移動時、または [DesiredIntensity] が変更された時に **DesiredIntensity** の値に設定されるようにするためです。

LightSwitch_BPOnly クラスでセットアップされたもうひとつのグラフは、[](Engine/Blueprints\UserGuide\EventGraph) です。イベントグラフの実行は、イベントから開始します。この場合、C++ 関数 `OnOverlap` が呼ばれると常に
-**OnOverlap** イベントが実行されます。LightSwitchBoth ソース ファイルでは、デリゲートはアクタが Sphere コンポーネントへ入った時またはそこから離れた時に **OnOverlap** イベントが実行するように設定されています。
+OnOverlap event が実行されます。LightSwitchBoth ソース ファイルでは、デリゲートはアクタが Sphere コンポーネントへ入った時またはそこから離れた時に OnOverlap が実行するように設定されています。
- Sphere1->OnComponentBeginOverlap.AddDynamic(this, &ALightSwitchBoth::OnOverlapBegin); // このコンポーネントが何かとオーバーラップした場合の通知をセットアップします。
- Sphere1->OnComponentEndOverlap.AddDynamic(this, &ALightSwitchBoth::OnOverlapEnd); // このコンポーネントが何かとオーバーラップした場合の通知をセットアップします。
+ Sphere1->OnComponentBeginOverlap.AddDynamic(this, &ALightSwitchBoth::OnOverlapBegin); // set up a notification for when this component overlaps something (このコンポーネントが何かとオーバーラップした場合の通知をセットアップします)
+ Sphere1->OnComponentEndOverlap.AddDynamic(this, &ALightSwitchBoth::OnOverlapEnd); // set up a notification for when this component overlaps something (このコンポーネントが何かとオーバーラップした場合の通知をセットアップします)
-**OnOverlap** イベントノードは、**Set Light Color** ノードと接続されています。イベントが実行されると、常に PointLight コンポーネントのライト色をランダムな色にするように設定されています。これは、PointLight コンポーネントの可視性を切り替える、
+**OnOverlap** event ノードは、**Set Light Color** ノードと接続されています。イベントが実行されると、常に PointLight コンポーネントのライト色をランダムな色にするように設定されています。これは、PointLight コンポーネントの可視性を切り替える、
ソースファイルの `OnOverlap_Implementation` 関数をオーバーライドします。
-イベントおよびグラフでの作業に関する詳しい情報は、[](Engine/Blueprints\UserGuide\Events)、[](Engine/Blueprints\UserGuide\EventGraph)、および [グラフ パネル](Engine/Blueprints\Editor\Modes\GraphPanel) をご覧ください。
+イベントおよびグラフでの作業に関する詳しい情報は、[](Engine/Blueprints\UserGuide\Events)、[](Engine/Blueprints\UserGuide\EventGraph)、および [グラフ パネル](Engine/Blueprints\Editor\Modes\GraphPanel) のドキュメントをご覧ください。

-**DesiredIntensity** 変数は、LightSwitchBoth ヘッダファイルで EditAnywhere に設定されます。そのため、**ブループリント エディタ** のデフォルトで可視状態であり、**クラスのデフォルト** ボタンをクリックして、 [詳細] パネルでクラスのデフォルトを見て編集することができます。
-これは、クラスの各インスタンスに対して、変数の変更が可能であることも意味します。そのため、各アクタは独自の DesiredIntensity を保持することができます。DesiredIntensity は **ブループリントで読み出し/書き込み可能** でもあるため、これを **コンストラクション スクリプト** で使用すると、
-更新された時に **コンストラクション スクリプト** が再び実行されることになります。
+**DesiredIntensity** 変数は、LightSwitchBoth ヘッダファイルで EditAnywhere に設定されます。そのため、**ブループリント エディタ** のデフォルトで可視状態であり、**クラスのデフォルト** ボタンをクリックして、 [Details (詳細)] パネルでクラスのデフォルトを見て編集することができます。
+これは、クラスの各インスタンスに対して、変数の変更が可能であることも意味します。そのため、各アクタは独自の DesiredIntensity を保持することができます。DesiredIntensity は BlueprintReadWrite でもあるため、これをコンストラクション スクリプトで使用すると、
+更新された時にコンストラクション スクリプトが再び実行されることになります。

@@ -209,4 +209,4 @@ LightSwitch_BPOnly クラスでセットアップされたもうひとつのグ
ブループリントを **右クリック** して、**[Create New Blueprint Based on This]** を選択します。
ブループリント クラス、 LightSwitchBoth_BP は[](Engine/Content/Browser) にあり、そこからレベルにドラッグできます。[](Engine/UI/ClassViewer) にもあります。
-コンテンツ ブラウザ またはクラスビューアを使用したレベルへのアクタの配置については、[](Engine/Actors/Placement) のドキュメントを参照してください。
+コンテンツ ブラウザまたはクラスビューアを使用したレベルへのアクタの配置については、[](Engine/Actors/Placement) のドキュメントを参照してください。
diff --git a/Engine/Documentation/Source/Gameplay/ClassCreation/CodeOnly/CodeOnly.JPN.udn b/Engine/Documentation/Source/Gameplay/ClassCreation/CodeOnly/CodeOnly.JPN.udn
index a1c3de83b1b8..d156b9d8bc8b 100644
--- a/Engine/Documentation/Source/Gameplay/ClassCreation/CodeOnly/CodeOnly.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/ClassCreation/CodeOnly/CodeOnly.JPN.udn
@@ -1,15 +1,15 @@
-INTSourceChangelist:2796807
+INTSourceChangelist:3238697
Availability:Public
Title:C++ Only
Crumbs: %ROOT%, Gameplay, Gameplay/ClassCreation
-Description:ゲームプレイ プログラマ向けのアンリアル エンジン入門
+Description:ゲームプレイ プログラマ向けのアンリアル エンジン入門書
Version:4.9
[](Programming\Development\ManagingGameCode\CppClassWizard ) を使用して、新規 C++ クラスをプロジェクトへ簡単に追加できます。新規クラスを派生させるクラスを選択した後に、
ウィザードが必要なヘッダファイルとソースファイルを設定します。これがプロジェクトに初めて追加したコードの場合、プロジェクトはコード プロジェクトに変換されます。コード プロジェクトは、
ソース コードを含むゲーム モジュールを作成します。これは、アンリアル エディタにゲーム モジュールが存在することを知らせ、Visual Studio または Xcode から C++ の変更を読み込むことができるようにします。マイナーなコード変更はエディタ内部でコンパイルすることができます。
-C++ コードのみを使用した「LightSwitch」クラスは LightSwitchCodeOnly と名付けられます。これについては以下で説明します。
+C++ コードのみを使用した LightSwitch クラスは LightSwitchCodeOnly と名付けられます。これについては以下で説明します。
## クラス設定
@@ -24,10 +24,10 @@ C++ コードのみを使用した「LightSwitch」クラスは LightSwitchCodeO
};
-**[C++ Class Wizard]** で作成されたクラス宣言は、自動的に `UCLASS()` マクロが前にきます。
+**C++ Class Wizard** で作成されたクラス宣言は、自動的に `UCLASS()` マクロが前にきます。
`UCLASS()` マクロはエンジンにクラスの存在を知らせます。また、エンジン内のクラスの動作を設定するために、キーワード指定子と併用することも出来ます。
-クラス宣言は、変数および/または関数宣言を格納します。これらはそれぞれ `UPROPERTY()` マクロと `UFUNCTION()` マクロがそれぞれ前にきます。
+クラス宣言は、変数および/または関数宣言を格納します。これらは `UPROPERTY()` マクロと `UFUNCTION()` マクロがそれぞれ前にきます。
こうしたマクロは `UCLASS()` マクロと似たような役割をします。コンポーネントは `UPROPERTY()` マクロでも設定されます。
`LightSwitchCodeOnly.h` ファイルでは、C++ は以下のように利用されます。
@@ -35,11 +35,11 @@ C++ コードのみを使用した「LightSwitch」クラスは LightSwitchCodeO
つまりこれらのプロパティは LightSwitchCodeOnly アクタの **[Details (詳細)]** タブで見ることができます。
public:
- /** point light コンポーネント*/
+ /** point light component */
UPROPERTY(VisibleAnywhere, Category = "Switch Components")
class UPointLightComponent* PointLight1;
- /** sphere コンポーネント */
+ /** sphere component */
UPROPERTY(VisibleAnywhere, Category = "Switch Components")
class USphereComponent* Sphere1;
* コンストラクタを宣言し、コンポーネントと変数に対してデフォルト値を設定できるようにします。:
@@ -48,25 +48,25 @@ C++ コードのみを使用した「LightSwitch」クラスは LightSwitchCodeO
* `OnOverlapBegin` と `OnOverlapEnd`を宣言します。こうした関数は別のアクタが Sphere コンポーネントに入るまたは離れる時に呼ばれます。これらは異なるシグネチャを持つことに注意してください。
- /** sphere コンポーネントに何かが入ると呼び出されます。 */
+ /** called when something enters the sphere component (何かが sphere コンポーネントに入ると呼び出されます。)*/
UFUNCTION()
- void OnOverlapBegin(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);
+ void OnOverlapBegin(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);
- /** sphere コンポーネントから何かが離れると呼び出されます。 */
+ /** called when something leaves the sphere component (何かが sphere コンポーネントを離れると呼び出されます。) */
UFUNCTION()
- void OnOverlapEnd(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex);
+ void OnOverlapEnd(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex);
* `ToggleLight`は PointLightComponent の可視性を切り替える関数です。
- /** light コンポーネントの可視性を切り替えます。*/
+ /** Toggles the light component's visibility (light コンポーネントの可視性を切り替えます)*/
UFUNCTION()
void ToggleLight();
-* `DesiredBrightness` 変数を宣言して、`VisibleAnywhere` 指定子でどこにでも表示できるようにします。LightSwitchCodeOnly アクタの **[Details (詳細)]** タブで **[Switch Variables]** カテゴリに表示されます。
+* `DesiredIntensity` 変数を宣言して、`VisibleAnywhere` 指定子でどこにでも表示できるようにします。LightSwitchCodeOnly アクタの **[Details (詳細)]** タブで **[Switch Variables]** カテゴリに表示されます。
サブオブジェクトではない変数、例えばこの float 値などは、`VisibleAnywhere` 指定子によって変数が **[詳細]** タブに表示されるようにします。他にも使用可能なものとして、 `EditAnywhere` 指定子がありますが、
`DesiredIntensity` 変数はアクタがレベルへ追加された時のみ正しく使用されるため、変数は編集可能である必要はありません。
- /** ライトの望ましい強度 */
+ /** the desired intensity for the light (ライトの望ましい明るさ) */
UPROPERTY(VisibleAnywhere, Category="Switch Variables")
float DesiredIntensity;
@@ -92,28 +92,28 @@ LightSwitchCodeOnly.h
{
GENERATED_BODY()
public:
- /** point light コンポーネント*/
+ /** point light component */
UPROPERTY(VisibleAnywhere, Category = "Switch Components")
class UPointLightComponent* PointLight1;
- /** sphere コンポーネント */
+ /** sphere component */
UPROPERTY(VisibleAnywhere, Category = "Switch Components")
class USphereComponent* Sphere1;
ALightSwitchCodeOnly();
- /** sphere コンポーネントに何かが入ると呼び出されます。 */
+ /** called when something enters the sphere component (何かが sphere コンポーネントに入ると呼び出されます。)*/
UFUNCTION()
- void OnOverlapBegin(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);
- /** sphere コンポーネントから何かが離れると呼び出されます。 */
+ void OnOverlapBegin(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);
+ /** called when something leaves the sphere component (何かが sphere コンポーネントを離れると呼び出されます。) */
UFUNCTION()
- void OnOverlapEnd(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex);
+ void OnOverlapEnd(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex);
- /** light コンポーネントの可視性を切り替えます。*/
+ /** Toggles the light component's visibility (light コンポーネントの可視性を切り替えます)*/
UFUNCTION()
void ToggleLight();
- /** ライトの望ましい強度 */
+ /** the desired intensity for the light (ライトの望ましい明るさ) */
UPROPERTY(VisibleAnywhere, Category = "Switch Variables")
float DesiredIntensity;
@@ -134,26 +134,26 @@ LightSwitchCodeOnly.h
* `DesiredIntensity` 変数の値を 3000 に設定します。
DesiredIntensity = 3000.0f;
-* PointLight コンポーネントを作成し、その変数を設定し (その強度を `DesiredIntensity` の値に設定することも含む)、そしてこれをルートコンポーネントとして利用します。
+* PointLight コンポーネントを作成し、その変数を設定し (その明るさを `DesiredIntensity` の値に設定することも含む)、それをルートコンポーネントにします。
PointLight1 = CreateDefaultSubobject(TEXT("PointLight1"));
PointLight1->Intensity = DesiredIntensity;
PointLight1->bVisible = true;
RootComponent = PointLight1;
-* Sphere コンポーネントの作成、変数の設定、そしてこれを PointLight コンポーネントにアタッチします。
+* Sphere コンポーネントを作成、変数を設定し、PointLight コンポーネントにアタッチします。
Sphere1 = CreateDefaultSubobject(TEXT("Sphere1"));
Sphere1->InitSphereRadius(250.0f);
- Sphere1->AttachParent = RootComponent;
+ Sphere1->SetupAttachment(RootComponent);
* `OnOverlap` 関数をアクタが Sphere コンポーネントにオーバーラップした時、または Sphere コンポーネントから離れた時に呼ばれるデリゲートとして指定します。
- Sphere1->OnComponentBeginOverlap.AddDynamic(this, &ALightSwitchCodeOnly::OnOverlapBegin); // このコンポーネントが何かとオーバーラップした時の通知を設定します。
- Sphere1->OnComponentEndOverlap.AddDynamic(this, &ALightSwitchCodeOnly::OnOverlapEnd); // このコンポーネントが何かとオーバーラップした時の通知を設定します。
+ Sphere1->OnComponentBeginOverlap.AddDynamic(this, &ALightSwitchCodeOnly::OnOverlapBegin); // set up a notification for when this component overlaps something (このコンポーネントが何かとオーバーラップした時の通知を設定します)
+ Sphere1->OnComponentEndOverlap.AddDynamic(this, &ALightSwitchCodeOnly::OnOverlapEnd); // set up a notification for when this component overlaps something (このコンポーネントが何かとオーバーラップした時の通知を設定します)
-ソース ファイルにも、クラスのために宣言する関数を定義することができます。例えば、`LightSwitchCodeOnly.cpp` には、PointLight コンポーネントの可視性を切り替える `OnOverlapBegin` と `OnOverlapEnd` が実装されています。
-これは `ToggleLight` を呼び出すことで PointLightComponent の可視性を切り替えます。クラス コンストラクタと組み合わせるとソースファイルは以下のようになります。
+ソース ファイルにも、クラスのために宣言する関数を定義することができます。例えば、`LightSwitchCodeOnly.cpp` には、`ToggleLight` を呼び出すことでPointLight コンポーネントの可視性を切り替える `OnOverlapBegin` と `OnOverlapEnd`
+が実装されています。クラス コンストラクタと組み合わせるとソースファイルは以下のようになります。
[REGION:codetitlebar]
LightSwitchCodeOnly.cpp
[/REGION:codetitlebar]
@@ -174,14 +174,14 @@ LightSwitchCodeOnly.cpp
Sphere1 = CreateDefaultSubobject(TEXT("Sphere1"));
Sphere1->InitSphereRadius(250.0f);
- Sphere1->AttachParent = RootComponent;
+ Sphere1->SetupAttachment(RootComponent);
- Sphere1->OnComponentBeginOverlap.AddDynamic(this, &ALightSwitchCodeOnly::OnOverlapBegin); // このコンポーネントが何かとオーバーラップした時の通知を設定します。
- Sphere1->OnComponentEndOverlap.AddDynamic(this, &ALightSwitchCodeOnly::OnOverlapEnd); // このコンポーネントが何かとオーバーラップした時の通知を設定します。
+ Sphere1->OnComponentBeginOverlap.AddDynamic(this, &ALightSwitchCodeOnly::OnOverlapBegin); // set up a notification for when this component overlaps something (このコンポーネントが何かとオーバーラップした時の通知を設定します)
+ Sphere1->OnComponentEndOverlap.AddDynamic(this, &ALightSwitchCodeOnly::OnOverlapEnd); // set up a notification for when this component overlaps something (このコンポーネントが何かとオーバーラップした時の通知を設定します)
}
- void ALightSwitchCodeOnly::OnOverlapBegin(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult)
+ void ALightSwitchCodeOnly::OnOverlapBegin(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult)
{
if (OtherActor && (OtherActor != this) && OtherComp)
{
@@ -189,7 +189,7 @@ LightSwitchCodeOnly.cpp
}
}
- void ALightSwitchCodeOnly::OnOverlapEnd(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex)
+ void ALightSwitchCodeOnly::OnOverlapEnd(class UPrimitiveComponent* OverlappedComp, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex)
{
if (OtherActor && (OtherActor != this) && OtherComp)
{
@@ -206,14 +206,14 @@ LightSwitchCodeOnly.cpp
`BasicClasses.h` は、そのクラスがセットアップされたプロジェクト名を参照しています。
[/Region]
-これがブランク オブジェクトに追加した最初のコード クラスである場合は、エディタを閉じて、Visual Studio または Xcode でプロジェクトをコンパイルした後に、
- エディタを開いてプロジェクトを再び開きゲームモジュールが適切に作成され再ロードされていることを確認します。プロジェクトを開くために使用しているアンリアル エディタの実行ファイルのバージョンが **Build Configuration** と同じであることの確認も重要となります。[](Programming\Development\CompilingProjects) のドキュメントで
-Build Configuration とプロジェクトのコンパイルに関する情報を参照してください。
+これが空のプロジェクトに追加した最初のコード クラスである場合は、エディタを閉じて、Visual Studio または Xcode でプロジェクトをコンパイルした後に、エディタを開いてプロジェクトを再び開く必要があります。
+ ゲームモジュールが適切に作成されて再ロードされていることを確認するためです。プロジェクトを開くために使用しているアンリアル エディタの実行ファイルのバージョンが **Build Configuration** と同じであることの確認も重要となります。ビルド設定とプロジェクトのコンパイルに関する詳細は、
+[](Programming\Development\CompilingProjects) ページをご覧ください。
コードを既存の C++ プロジェクトに追加する場合は、ホットリロード機能を使用してエディタ内で新規コードをコンパイルすることができます。
-C++ クラスは、C++ クラスに加えてブループリント クラスで拡張することができます。**[C++ Class Wizard]** の **[Show All Classes]** チェックボックスのチェックを入れた後、およびブループリント クラスの作成時に、
+C++ クラスは、C++ クラスに加えてブループリント クラスで拡張することができます。**C++ Class Wizard** の **Show All Classes** チェックボックスのチェックを入れた後、およびブループリント クラスの作成時に、
**[Pick Parent Class]** ウィンドウの **[Custom Classes]** セクションの **[Show All Classes]** にチェックを入れた後に表示されます。
-「LightSwitchCodeOnly」クラスは、[](Engine/UI/ClassViewer) に格納されて、ここからレベルへドラッグすることができます。クラスビューア を使用したレベルでのアクタの配置については、[](Engine/Actors/Placement) のドキュメントをご覧ください。
+「LightSwitchCodeOnly」クラスは、[](Engine/UI/ClassViewer) に格納されて、ここからレベルへドラッグすることができます。クラスビューアを使用したレベルでのアクタの配置については、[](Engine/Actors/Placement) のドキュメントをご覧ください。
diff --git a/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.INT.udn b/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.INT.udn
index b120c8f395c4..097517aa6fef 100644
--- a/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.INT.udn
@@ -1,10 +1,12 @@
Availability:Public
Title: Data Driven Gameplay Elements
-Crumbs:%ROOT%, Gameplay
+Crumbs:%ROOT%
Description:Driving gameplay elements using externally stored data.
version: 4.9
+type:reference
+tags:Gameplay
-[TOC(start:2)]
+[toc(start:2 end:2)]
Data driven gameplay helps mitigate the amount of work and complexity involved, as well as providing
the ability to visualize and parameterize data creation and progression, for games that have an extended
diff --git a/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.JPN.udn b/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.JPN.udn
index 9f5acc347365..5c6e8fbf1a74 100644
--- a/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.JPN.udn
@@ -1,11 +1,13 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3401080
Availability:Public
Title:データ駆動型のゲームプレイエレメント
-Crumbs:%ROOT%, Gameplay
+Crumbs:%ROOT%
Description:外部に保存されたデータを使用するゲームプレイ エレメントの操作
version:4.9
+type:reference
+tags:Gameplay
-[TOC(start:2)]
+[toc(start:2 end:2)]
データ駆動型ゲームプレイは、一般的なボックス型ゲームの寿命をはるかに上回るゲームで、
プレイヤーのフィードバックに基づきデータの微調整やバランスを取る必要がある場合、
diff --git a/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.KOR.udn b/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.KOR.udn
index 377716a05d9a..d86f75b3ecef 100644
--- a/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/DataDriven/DataDrivenGameplay.KOR.udn
@@ -1,11 +1,13 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3401080
Availability:Public
Title: 데이터 주도형 게임플레이 요소
-Crumbs:%ROOT%, Gameplay
+Crumbs:%ROOT%
Description:외부 저장 데이터를 사용하여 게임플레이 요소를 구동시키는 법입니다.
version: 4.9
+type:reference
+tags:Gameplay
-[TOC(start:2)]
+[toc(start:2 end:2)]
데이터 주도형 게임플레이는 전형적인 패키지 게임보다 훨씬 수명이 긴 게임이나,
플레이어 피드백에 따라 데이터의 지속적인 트윅 및 밸런싱 작업이 필요한 게임에 관련된
diff --git a/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.INT.udn b/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.INT.udn
index dd4e7899c052..4e50433aa40b 100644
--- a/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.INT.udn
@@ -1,11 +1,16 @@
Availability:Public
Title: Force Feedback and the Force Feedback Component
-Crumbs:%ROOT%, Gameplay
+Crumbs:%ROOT%
Description: Using the vibration functionality of mobile devices and controllers to convey a force occuring in the game to the player.
Parent:Gameplay
+Order:
Related: Engine/Blueprints/UserGuide/Components
+Related: Engine/UI/CurveEditor
+Related: Engine/Blueprints/UserGuide/Timelines/KeysAndCurves
version: 4.15
-
+type:overview
+tags:Gameplay
+topic-image: force_feedback_topic
[VAR:Topic]
[OBJECT:Topic]
@@ -41,10 +46,10 @@ version: 4.15
[/OBJECT]
[/VAR]
-[TOC]
+[toc(start:1 end:2)]
[EXCERPT:WhatIsForceFeedback]
-**Force Feedback** (sometimes referred to as rumble or haptic feedback) refers to the vibrating of a device or controller used in games to convey a force occuring in the game to the player. A simple example is when an explosion occurs in the game and force feedback is used to simulate the shockwave, which gives an additional dimension to the immersion.
+Sometimes being called "rumble" or controller vibration, Force Feedback refers to the vibration of a device (such as gamepads or controllers), often being used in games to convey a force occurring in the game to the player. A simple example is when an explosion occurs in the game and force feedback is used to simulate the shockwave, which gives an additional dimension to a player's immersion.
[/EXCERPT:WhatIsForceFeedback]
Once implemented, Force Feedback will work on all platforms where it is supported. This includes iOS (as of 4.10), Android, and controllers.
@@ -55,7 +60,13 @@ A **Force Feedback Effect Asset** contains the properties used to define a speci
(w:640 convert:false)
-Each Force Feedback Effect can have multiple channels, each of which can play a diferent effect. For instance, one channel could play one large, long vibration on the right side of the controller while a second channel could play small, short bursts on the left side. The pattern of the effect for each channel is controlled by a curve.
+Each Force Feedback Effect can have multiple channels, each of which can play a different effect. For instance, one channel could play a large, long vibration on the right side of the controller, while a second channel could play small, short bursts on the left side. The pattern of the effect for each channel is controlled by a curve. This curve can be edited here with right-click, or the internal curve editor can be opened by double-clicking in the curve's graph.
+
+
+
+[REGION:tip]
+For information on Curves, Keys, creating external Curve Assets, and using the Curve Editor, check out the [](Engine/UI/CurveEditor/) and [](Engine/Blueprints/UserGuide/Timelines/KeysAndCurves/) pages.
+[/REGION]
The duration of the force feedback effect will be calculated automatically, based on the position of the last key in the curves for all channels. For example, if there are 3 channels and the last key in each is at 1.25, 1.5, and 1.75, then the duration for the overall effect will be 1.75.
@@ -68,16 +79,20 @@ Each channel has the following properties that control how the effect for the ch
| **Affects Left Large** | If true, the left large motor will be used to play the effect. |
| **Affects Left Small** | If true, the left small motor will be used to play the effect. |
| **Affects Right Large** | If true, the right large motor will be used to play the effect. |
-| **Affects Right Large** | If true, the right small motor will be used to play the effect. |
+| **Affects Right Small** | If true, the right small motor will be used to play the effect. |
| **Curve** | A curve that controls the intensity of the effect over time. In other words, this defines the pattern of the vibration. Values above 0.5 will vibrate, while values below 0.5 will not vibrate. |
## Creating a Force Feedback Effect Asset
Force Feedback Effect assets are created using the **Content Browser**:
-1. In the **Content Browser**, click **Add New** and choose **Miscellaneous > Force Feedback Effect**. By default, the asset will have one channel, but you can add more.
+1. In the **Content Browser**, click **Add New** and choose **Miscellaneous > Force Feedback Effect**, and open the asset you have just created.
-1. Select whether the force feedback affects the left and/or right of the device, as well as whether it's large or small on either side.
+ 
+
+1. By default, the asset will have one channel but you can add more. For each channel, select the combination of the four outputs that the channel will affect.
+
+ 
1. Hold **Shift** and click the **Left Mouse Button** on the curve to add one or more keys.
@@ -86,22 +101,28 @@ Force Feedback Effect assets are created using the **Content Browser**:
1. Manipulate the keys by entering values directly or dragging them in the curve editor.
[REGION:note]
- Unlike in other curve editors, the keys can only be connected by straight lines.
+ To adjust the curves between the keys, right-click on the curve segment to change its curve function, then adjust the tangent lines as usual.
[/REGION]
## Playing Force Feedback
-### Directly To A Player
+### Preview in Editor
-Force Feedback is implemented in the base PlayerController class. You will need access to the local Player Controller in order to play the force feedback on the target device or controller.
+You can preview your Force Feedback Effect in the editor by clicking the "play" button that appears in the middle of the Force Feedback Effect's icon when you mouse over it.
-**Playing Force Feedback in Blueprints:**
+
+
+### Directly to a Player
+
+Force Feedback is implemented in the base `PlayerController` class. You will need access to the local Player Controller in order to play Force Feedback on the target device or controller.
+
+####Playing Force Feedback in Blueprints
1. Get a reference to your Player Controller, either with a **Get Player Controller** node or a saved reference.
(w:640)
-1. Drag off of the output pin of the reference, then type _Play Force Feedback_ into the context menu and select **Client Play Force Feedback**.
+1. Drag off of the output pin of the reference, then type `Play Force Feedback` into the context menu and select **Client Play Force Feedback**.
(w:640)
@@ -117,15 +138,15 @@ Force Feedback is implemented in the base PlayerController class. You will need
(w:640)
-1. Optionally, set a tag for the effect. The tag allows you to stop the effect; if an effect with the same tag is already playing, it will be stopped and the new effect will play instead.
+1. Optionally, set a unique name for the effect via the Tag field. This feature allows you to stop the effect; if an effect with the same name is already playing, it will be stopped and the new effect will play instead.
(w:640)
-**Playing Force Feedback in C++:**
+#### Playing Force Feedback in C++
-Call [](API:APlayerController::ClientPlayForceFeedback) on the local Player Controller, passing it the Force Feedback Effect to use as well as whether or not the effect should loop, and an optional tag for the effect. If a tag is provided, and another Force Feedback Effect with the same tag is played before the original effect ends, the original will be stopped immediately and the new effect will play instead.
+Call `ClientPlayForceFeedback` on the local Player Controller, passing it the Force Feedback Effect to use as well as whether or not the effect should loop, and an optional name for the effect. If a name is provided, and another Force Feedback Effect with the same name is played before the original effect ends, the original will be stopped immediately and the new effect will play instead.
-### At A World Location
+### At a World Location
To play a Force Feedback Effect that changes intensity based on distance from the observing player, place a **Force Feedback Component** in the world at the intended source of the effect. A Force Feedback component plays a Force Feedback Effect on command, but also has a physical location in the world. Like sound or light, the intensity of the force experienced by the player will change with the player's distance from the source, according to a data-defined attenuation setting.
diff --git a/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.JPN.udn b/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.JPN.udn
index 263dca1aa70f..c25fdc135468 100644
--- a/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.JPN.udn
@@ -1,12 +1,17 @@
-INTSourceChangelist:3340410
+INTSourceChangelist:3411855
Availability:Public
Title:フォース フィードバックと Force Feedback コンポーネント
-Crumbs:%ROOT%, Gameplay
+Crumbs:%ROOT%
Description:モバイル デバイスとコントローラーのバイブレーション機能を使用して、ゲーム内で起こる力をプレイヤーに伝えます。
Parent:Gameplay
+Order:
Related:Engine/Blueprints/UserGuide/Components
+Related:Engine/UI/CurveEditor
+Related:Engine/Blueprints/UserGuide/Timelines/KeysAndCurves
version:4.15
-
+type:overview
+tags:Gameplay
+topic-image: force_feedback_topic
[VAR:Topic]
[OBJECT:Topic]
@@ -42,10 +47,10 @@ version:4.15
[/OBJECT]
[/VAR]
-[TOC]
+[toc(start:1 end:2)]
[EXCERPT:WhatIsForceFeedback]
-**フォースフィードバック** (振動フィードバックまたは触覚 (ハプティック) フィードバックともいう) とは、ゲーム内で起こる力をプレイヤーに伝えるためにゲームで使用するデバイスやコントローラーを振動させることをいいます。単純な例としては、ゲーム内で爆発が起きた場合にフォース フィードバックを使って衝撃波をシミュレートすることで、没入感に新たな奥行きを与えます。
+フォースフィードバック (振動またはコントローラーの振動ともいう) とは、デバイス (ゲームパッドやコントローラーなど) の振動を表します。多くの場合、ゲーム内で起こる力をプレイヤーに伝えるために使用されます。単純な例としては、ゲーム内で爆発が起きた場合にフォース フィードバックを使って衝撃波をシミュレートすることで、プレイヤーの没入感に新たな奥行きを与えます。
[/EXCERPT:WhatIsForceFeedback]
一度実装すると、フォースフィードバックはサポートされる全プラットフォームで機能します。これには、 iOS (4.10 時点)、Android、およびコントローラーが含まれます。
@@ -56,7 +61,13 @@ version:4.15
(w:640 convert:false)
-各フォースフィードバック エフェクトには、複数のチャンネルがあり、それぞれが異なるエフェクトを再生することができます。例えば、あるチャンネルではコントローラーの右側でひとつの大きな長い振動を再生します。一方、もうひとつのチャンネルでは、小さな短いバーストを左側で再生します。各チャンネルのエフェクトのパターンは、カーブによって制御されます。
+各フォースフィードバック エフェクトには、複数のチャンネルがあり、それぞれが異なるエフェクトを再生することができます。例えば、あるチャンネルではコントローラーの右側で大きな長い振動を再生します。一方、もうひとつのチャンネルでは、小さな短いバーストを左側で再生します。各チャンネルのエフェクトのパターンは、カーブによって制御されます。このカーブは右クリックで編集できます。またはカーブのグラフ内でダブルクリックすると内部のカーブを開くことができます。
+
+
+
+[REGION:tip]
+カーブ、キー、外部のカーブ アセットの作成、カーブ エディタの使用については、[](Engine/UI/CurveEditor/) および [](Engine/Blueprints/UserGuide/Timelines/KeysAndCurves/) のページをご覧ください。
+[/REGION]
フォースフィードバック エフェクトの持続時間は、すべてのチャンネルのカーブの最後のキーの位置に基づき自動的に計算されます。例えば、3 つのチャンネルがあり、それぞれの最後のキーが 1.25、 1.5、 および 1.75 にあるとします。この場合、全体的なエフェクトの持続時間は 1.75 になります。
@@ -69,16 +80,20 @@ version:4.15
| **Affects Left Large** | true の場合、左側の大きなモーターを使用してエフェクトを再生します。 |
| **Affects Left Small** | true の場合、左側の小さなモーターを使用してエフェクトを再生します。 |
| **Affects Right Large** | true の場合、右側の大きなモーターを使用してエフェクトを再生します。 |
-| **Affects Right Large** | true の場合、右側の小さなモーターを使用してエフェクトを再生します。 |
+| **Affects RightSmall** | true の場合、右側の小さなモーターを使用してエフェクトを再生します。 |
| **Curve** | 時間経過に伴いエフェクトの強度を制御するカーブです。つまり、振動のパターンを定義します。0.5 より大きいと振動し、0.5 より小さいと振動しません。 |
## Force Feedback Effect アセットの作成
Force Feedback Effect アセットは、以下のように **コンテンツ ブラウザ** を使用して作成します。
-1. **コンテンツ ブラウザ** で **[Add New (新規追加)]** をクリックして **Miscellaneous > Force Feedback Effect** の順に選択します。デフォルトでは、このアセットはひとつのチャンネルを持ちますが、さらに追加することができます。
+1. **コンテンツ ブラウザ** で **[Add New (新規追加)]** をクリックして **Miscellaneous > Force Feedback Effect** の順に選択し、作成したばかりのアセットを開きます。
-1. フォースフィードバックがデバイスの左および/または右に影響を及ぼすかを選択するとともに、いずれかの側で大きくなるか、または小さくなるかを選択します。
+ 
+
+1. デフォルトでは、このアセットはひとつのチャンネルを持ちますが、さらに追加することができます。各チャンネルに対して、そのチャンネルが影響を及ぼす 4 つの出力の組み合わせを選択します。
+
+ 
1. **Shift** キーを押しながら、カーブ上で **左クリック** し、ひとつ以上のキーを追加します。
@@ -87,22 +102,28 @@ Force Feedback Effect アセットは、以下のように **コンテンツ ブ
1. カーブ エディタに直接値を入力するか、値をドラッグすることによりキーを操作します。
[REGION:note]
- 他のカーブ エディタとは異なり、キーは直線でのみ接続することができます。
+ キー間のカーブを調整するにはカーブのセグメント上で右クリックしてカーブの関数を変更してから通常どおりにタンジェントのラインを調整します。
[/REGION]
## フォースフィードバックの再生
+### エディタでプレビュー
+
+Force Feedback Effect のアイコンにマウスをかざすと表示される [プレイ] ボタンをクリックすると、フォース フィードバック エフェクトをエディタでプレビューすることができます。
+
+
+
### プレイヤーに対して直接
-フォースフィードバックは、基本クラスの PlayerController で実装します。ターゲット デバイスやコントローラーでフォースフィードバックを再生するには、ローカルのプレイヤー コントローラーにアクセスする必要があります。
+フォースフィードバックは、基本クラスの `PlayerController` で実装します。ターゲット デバイスやコントローラーでフォースフィードバックを再生するには、ローカルのプレイヤー コントローラーにアクセスする必要があります。
-**ブループリントでフォースフィードバックを再生する手順は以下の通りです。**
+####ブループリントでフォースフィードバックを再生する手順は以下の通りです。
1. プレイヤー コントローラーへの参照を、**Get Player Controller** ノードまたは保存した参照を用いて取得します。
(w:640)
-1. 参照の出力ピンをドラッグして、コンテキスト メニューに _Play Force Feedback_ と入力して **Client Play Force Feedback** を選択します。
+1. 参照の出力ピンをドラッグして、コンテキスト メニューに `Play Force Feedback` と入力して **Client Play Force Feedback** を選択します。
(w:640)
@@ -118,15 +139,15 @@ Force Feedback Effect アセットは、以下のように **コンテンツ ブ
(w:640)
-1. オプションで、このエフェクトにタグを設定します。タグを使用するとエフェクトを停止できます。同じタグを持つエフェクトが既に再生中であれば、停止させ、代わりに新しいエフェクトが再生されます。
+1. オプションで、Tag 欄を使ってこのエフェクトに一意の名前を付けます。この機能では、同じ名前を持つエフェクトが既に再生中であれば、停止させ、代わりに新しいエフェクトが再生されます。
(w:640)
-**C++ でフォースフィードバックを再生する手順は以下の通りです。**
+####C++ でフォースフィードバックを再生する
-ローカルのプレイヤー コントローラー上で [](API:APlayerController::ClientPlayForceFeedback) を呼び出し、使用するフォースフィードバック エフェクトを渡し、エフェクトがループすべきかどうか、およびオプションのタグも渡します。タグが指定されていて、オリジナルのエフェクトが終了する前に同じタグを持つ別のフォース フィードバック エフェクトが再生されていたら、オリジナルのエフェクトはただちに終了し、この新しいエフェクトが代わりに再生されます。
+ローカルのプレイヤー コントローラー上で `ClientPlayForceFeedback` を呼び出し、使用するフォースフィードバック エフェクトを渡し、エフェクトがループすべきかどうか、およびエフェクトのオプションの名前も渡します。名前が指定されていて、オリジナルのエフェクトが終了する前に同じ名前を持つ別のフォース フィードバック エフェクトが再生されると、オリジナルのエフェクトはただちに終了し、この新しいエフェクトが代わりに再生されます。
-### ワールドの位置で
+### ワールドの位置
見ているプレイヤーからの距離に応じて強さが変化するフォース フィードバック エフェクトを再生するには、エフェクトのソースにしたい場所に **Force Feedback コンポーネント** を配置します。Force Feedback コンポーネントは、指示に従いフォース フィードバック エフェクトを再生しますが、ワールドで物理的位置も持ちます。サウンドや光のように、プレイヤーが感じる力の強さはプレイヤーがソースからどれくらい離れているかによってデータで定義されている減衰設定に従い変化します。
diff --git a/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.KOR.udn b/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.KOR.udn
index cf50ae57e1b3..0c9fafa46d06 100644
--- a/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/ForceFeedback/ForceFeedback.KOR.udn
@@ -1,12 +1,17 @@
-INTSourceChangelist:3340410
+INTSourceChangelist:3411855
Availability:Public
Title: 포스 피드백 및 포스 피드백 컴포넌트
-Crumbs:%ROOT%, Gameplay
-Description: 모바일 디바이스와 콘트롤러의 진동 기능을 사용하여 플레이어에게 게임의 포스를 전달하는 방법입니다.
+Crumbs:%ROOT%
+Description: 모바일 디바이스와 컨트롤러의 진동 기능을 사용하여 플레이어에게 게임의 포스를 전달하는 방법입니다.
Parent:Gameplay
+Order:
Related: Engine/Blueprints/UserGuide/Components
+Related: Engine/UI/CurveEditor
+Related: Engine/Blueprints/UserGuide/Timelines/KeysAndCurves
version: 4.15
-
+type:overview
+tags:Gameplay
+topic-image: force_feedback_topic
[VAR:Topic]
[OBJECT:Topic]
@@ -42,13 +47,13 @@ version: 4.15
[/OBJECT]
[/VAR]
-[TOC]
+[toc(start:1 end:2)]
[EXCERPT:WhatIsForceFeedback]
-**Force Feedback** (가끔은 진동 또는 햅틱 피드백이라고도 하는 포스 피드백)은 게임에서 사용되는 디바이스 또는 콘트롤러의 진동을 통해 게임에서 일어나는 힘의 느낌을 플레이어에게 전달하는 것을 말합니다. 간단한 예제라면, 게임에서 폭발이 일어났을 때 포스 피드백을 사용하여 충격파 시뮬레이션을 하면, 한 층 더 높은 몰입감을 낼 수 있습니다.
+**Force Feedback** (가끔은 "럼블" 또는 컨트롤러 진동이라고도 하는 포스 피드백)은 게임에서 사용되는 디바이스(게임패드나 컨트롤러)의 진동을 통해 게임에서 일어나는 힘의 느낌을 플레이어에게 전달하는 것을 말합니다. 간단한 예제라면, 게임에서 폭발이 일어났을 때 포스 피드백을 사용하여 충격파 시뮬레이션을 하면, 한 층 더 높은 몰입감을 낼 수 있습니다.
[/EXCERPT:WhatIsForceFeedback]
-구현하고 나면, 포스 피드백은 지원되는 모든 플랫폼에서 작동합니다. (4.10 이후로) iOS, 안드로이드, 콘트롤러가 포함됩니다.
+구현하고 나면, 포스 피드백은 지원되는 모든 플랫폼에서 작동합니다. (4.10 이후로) iOS, 안드로이드, 컨트롤러가 포함됩니다.
## 포스 피드백 이펙트 애셋
@@ -56,7 +61,13 @@ version: 4.15
(w:640 convert:false)
-각 포스 피드백 이펙트는 여러 채널을 가질 수 있으며, 각 채널마다 각기 다른 이펙트를 재생할 수 있습니다. 예를 들어 한 채널에서는 콘트롤러 오른쪽에 크고 긴 진동을 내는 반면, 두 번째 채널에서는 왼쪽에 작고 짧은 파동을 재생할 수 있습니다. 각 채널의 이펙트 패턴은 커브에 의해 제어됩니다.
+각 포스 피드백 이펙트는 여러 채널을 가질 수 있으며, 각 채널마다 각기 다른 이펙트를 재생할 수 있습니다. 예를 들어 한 채널에서는 컨트롤러 오른쪽에 크고 긴 진동을 내는 반면, 두 번째 채널에서는 왼쪽에 작고 짧은 파동을 재생할 수 있습니다. 각 채널의 이펙트 패턴은 커브에 의해 제어됩니다. 이 커브는 여기서 우클릭으로 편집할 수 있으며, 커브의 그래프에 더블클릭하여 내부 커브 에디터를 열 수도 있습니다.
+
+
+
+[REGION:tip]
+커브, 키, 외부 커브 애셋 생성, 커브 에디터 사용법 관련 정보는 [](Engine/UI/CurveEditor/) 및 [](Engine/Blueprints/UserGuide/Timelines/KeysAndCurves/) 문서를 참고하세요.
+[/REGION]
포스 피드백 이펙트 기간은, 모든 채널의 커브 내 마지막 키의 위치에 따라 자동 계산됩니다. 예를 들어 채널이 세 개 있고 각각의 마지막 키 위치가 1.25, 1.5, 1.75 인 경우, 전체 이펙트의 기간은 1.75 가 됩니다.
@@ -76,9 +87,13 @@ version: 4.15
포스 피드백 이펙트 애셋은 **콘텐츠 브라우저** 에서 생성합니다:
-1. **콘텐츠 브라우저** 에서 **신규 추가** - **기타 > 포스 피드백 이펙트** 를 선택하면 됩니다. 기본적으로 애셋에는 채널이 하나지만, 추가할 수 있습니다.
+1. **콘텐츠 브라우저** 에서 **신규 추가** - **기타 > 포스 피드백 이펙트** 를 선택하고 방금 만든 애셋을 엽니다.
-1. 포스 피드백이 디바이스의 왼쪽 및/또는 오른쪽 어디에 영향을 끼칠지와, 각각 큰 모터 또는 작은 모터를 사용할지 선택합니다.
+ 
+
+1. 기본적으로 애셋에는 채널이 하나지만 추가할 수 있습니다. 각 채널에 대해 채널이 영향을 주는 네 개의 출력 조합을 선택합니다.
+
+ 
1. 커브에 **Shift** 키를 누르고 **좌클릭** 하면 키를 하나 이상 추가할 수 있습니다.
@@ -87,22 +102,28 @@ version: 4.15
1. 값을 직접 입력하거나 커브 에디터에서 수정하여 키를 조정합니다.
[REGION:note]
- 다른 커브 에디터와는 달리, 여기서 키는 직선으로만 연결 가능합니다.
+ 키 사이 커브 조정을 위해서는, 커브 선분에 우클릭하여 커브 함수를 변경한 뒤, 평소처럼 탄젠트 라인을 조정합니다.
[/REGION]
## 포스 피드백 재생
+### 에디터에서 프리뷰
+
+포스 피드백 이펙트의 아이콘에 마우스 커서를 올리면 가운데 나타나는 "play" (재생) 버튼을 클릭하면 에디터에서 포스 피드백 이펙트를 미리볼 수 있습니다.
+
+
+
### 플레이어에 바로
-포스 피드백은 베이스 PlayerController 클래스에서 구현됩니다. 타겟 디바이스나 콘트롤러에서 포스 피드백을 재생하려면, 로컬 플레이어 콘트롤러에 접근할 수 있어야 합니다.
+포스 피드백은 베이스 PlayerController 클래스에서 구현됩니다. 타겟 디바이스나 컨트롤러에서 포스 피드백을 재생하려면, 로컬 플레이어 컨트롤러에 접근할 수 있어야 합니다.
-**블루프린트에서 포스 피드백 재생:**
+####블루프린트에서 포스 피드백 재생
-1. 플레이어 콘트롤러로의 레퍼런스를 구합니다. **Get Player Controller** 노드나 저장된 노드면 됩니다.
+1. 플레이어 컨트롤러로의 레퍼런스를 구합니다. **Get Player Controller** 노드나 저장된 노드면 됩니다.
(w:640)
-1. 레퍼런스의 출력 핀을 끌어 놓은 다음, 맥락 메뉴에 _Play Force Feedback_ 이라 입력하고 **Client Play Force Feedback** 을 선택합니다.
+1. 레퍼런스의 출력 핀을 끌어 놓은 다음, 맥락 메뉴에 `Play Force Feedback` 이라 입력하고 **Client Play Force Feedback** 을 선택합니다.
(w:640)
@@ -118,13 +139,13 @@ version: 4.15
(w:640)
-1. 옵션으로, 이펙트에 태그 설정 기능이 있습니다. 같은 태그의 이펙트가 이미 재생중인 경우, 먼저 것은 중지되고 새로운 이펙트가 대신 재생됩니다.
+1. 옵션으로, Tag 칸을 통해 이펙트에 고유 이름을 설정합니다. 이 기능으로 이펙트 중지가 가능한데, 같은 태그의 이펙트가 이미 재생중인 경우, 먼저 것은 중지되고 새로운 이펙트가 대신 재생됩니다.
(w:640)
-**C++ 에서 포스 피드백 재생:**
+####C++ 에서 포스 피드백 재생
-로컬 플레이어 콘트롤러에서 [](API:APlayerController::ClientPlayForceFeedback) 를 호출하되, 사용할 포스 피드백 이펙트 뿐 아니라 이펙트의 루핑 여부, 태그 옵션까지도 전달해 줍니다. 태그가 제공되고, 원래 이펙트가 끝나기 전 태그가 같은 포스 피드백 이펙트가 추가 재생되면, 원본은 즉시 중지하고 새로운 이펙트를 대신 재생합니다.
+로컬 플레이어 컨트롤러에서 `ClientPlayForceFeedback` 을 호출하되, 사용할 포스 피드백 이펙트 뿐 아니라 이펙트의 루핑 여부, 옵션으로 이름도 전달해 줍니다. 이름이 제공되고, 원래 이펙트가 끝나기 전 이름이 같은 포스 피드백 이펙트가 추가 재생되면, 원본은 즉시 중지하고 새로운 이펙트를 대신 재생합니다.
### 월드 위치에서
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.INT.udn
index a1c90684e919..e00f2b8a9783 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.INT.udn
@@ -3,10 +3,11 @@ Title:Camera
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:The Camera represents the player's point of view; how the player sees the world.
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
-order:6
+order:5
tags:Gameplay Framework
+topic-image:Gameplay/Framework/camera_lander.png
The **Camera** represents the player's point of view; how the player sees the world. For this reason,
cameras only have relevance to human-controlled players. The **PlayerController** specifies a camera class
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.JPN.udn b/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.JPN.udn
index ba502fefe852..1b36d0c1c62b 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.JPN.udn
@@ -1,13 +1,14 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3429254
Availability:Public
Title:カメラ
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:カメラは、ワールドを見るプレーヤーの視点を表します。
Version:4.9
-type:reference
+type:overview
parent:Gameplay/Framework
-order:6
+order:5
tags:Gameplay Framework
+topic-image:Gameplay/Framework/camera_lander.png
**Camera (カメラ)** は、プレーヤーがどのようにワールドを見ているのか、プレーヤーの視点を表します。従って
カメラは人が制御するプレーヤーのみに関連性をもちます。**PlayerController** は Camera クラスを指定し、
@@ -34,11 +35,11 @@ CameraComponentで、カメラを [パースペクティブ] モードまたは
## PlayerCameraManager
-**PlayerCameraManager** クラスは、カメラ マネージャーです。デフォルトでは、ビルトインされている動作により、ペンディングしているビューターゲットとコンソールのコマンドでトリガーされるデバッグカメラがブレンドされます。デフォルトでない場合は、カメラのビューポイントおよび
+**PlayerCameraManager** クラスは、カメラ マネージャーです。デフォルトでは、ビルトインされている動作は、ペンディングしているビューターゲットとコンソールのコマンドでトリガーされるデバッグ用のカメラがブレンドされます。デフォルトでない場合は、カメラのビューポイントおよび
他の全てのカメラ設定をどうするかを ViewTarget にクエリーします。通常は PlayerCameraManager サブクラスは不要です。
自動ルールでは不十分な場合、ViewTarget を設定するルールを追加する以外は、PlayerCameraManager への変更はほとんど必要ありません。
-PlayerCameraManager のサブクラス化が必要で、これを C++コードではなくブループリントで行う場合、カメラのカスタム実装に `BlueprintUpdateCamera` 関数を使用します。この関数を使用する場合、
+PlayerCameraManager のサブクラス化が必要で、これを C++コードではなくブループリントで行う場合、カメラのカスタム実装に `BlueprintUpdateCamera` 関数を使用します。_絶対的_ トランスフォーム
戻り値を使用するために _true_ を返し、戻り値を無視するために _false_ を返します。
### ViewTarget
@@ -54,7 +55,7 @@ PlayerCameraManager はカメラのマネージメント中に 2 つのカメラ
ゲーム固有のカメラ動作は、カメラの「responsibility chain (責任の連鎖) 」に沿ってどの時点でも提供することができます。これは、以下のクラスを通って一番上から下に流れてから、ALocalPlayer へ渡され、レンダリング、シーン表示、そして関連システムで終了します。
-### CameraComponent
+### Camera コンポーネント
ViewTarget が CameraActor または **CameraComponent** を含み bFindCameraComponentWhenViewTarget が _true_ に設定されているアクタである場合、
CameraComponent はカメラのプロパティに関する情報を提供します。すべてのポーンに設定することができる関連プロパティは、`bTakeCameraControlWhenPossessed` です。これにより、PlayerController に所有されるとポーンは自動的に ViewTarget になります。
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.KOR.udn
index e043387af12b..e3960676a33d 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Camera/Camera.KOR.udn
@@ -1,13 +1,14 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability:Public
Title:카메라
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:Camera, 카메라는 플레이어의 시점, 플레이어가 월드를 보는 방식을 나타냅니다.
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
-order:6
+order:5
tags:Gameplay Framework
+topic-image:Gameplay/Framework/camera_lander.png
**Camera** (카메라)는 플레이어의 시점, 플레이어가 월드를 보는 방식을 나타냅니다. 그 이유로
카메라는 사람이 제어하는 플레이어에만 관련이 있습니다. **PlayerController** 는 카메라 클래스를 나타내며,
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.INT.udn
index 8484b4572ce1..85ecefd10f5a 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.INT.udn
@@ -7,10 +7,11 @@ Related: Gameplay\Framework\Controller\AIController
Related: Gameplay\Framework\Pawn
Related: Gameplay\Framework\Pawn\Character
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
order:4
tags:Gameplay Framework
+topic-image:Gameplay/Framework/controller_lander.png
[INCLUDE:Shared/Glossary/C/#Glossary_Controller_Class]
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.JPN.udn b/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.JPN.udn
index 02abcbe639ce..41066ae4e556 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3429254
Availability:Public
Title:Controller
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
@@ -8,10 +8,11 @@ Related:Gameplay\Framework\Controller\AIController
Related:Gameplay\Framework\Pawn
Related:Gameplay\Framework\Pawn\Character
Version:4.9
-type:reference
+type:overview
parent:Gameplay/Framework
order:4
tags:Gameplay Framework
+topic-image:Gameplay/Framework/controller_lander.png
[INCLUDE:Shared/Glossary/C/#Glossary_Controller_Class]
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.KOR.udn
index 971144cf3833..4343d0903535 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Controller/Controller.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability:Public
Title:콘트롤러
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
@@ -8,10 +8,11 @@ Related: Gameplay\Framework\Controller\AIController
Related: Gameplay\Framework\Pawn
Related: Gameplay\Framework\Pawn\Character
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
order:4
tags:Gameplay Framework
+topic-image:Gameplay/Framework/controller_lander.png
[INCLUDE:Shared/Glossary/C/#Glossary_Controller_Class]
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameFlow/GameFlow.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/GameFlow/GameFlow.INT.udn
index e5542409c495..29bb6b632356 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameFlow/GameFlow.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameFlow/GameFlow.INT.udn
@@ -3,10 +3,11 @@ Title:Game Flow Overview
Crumbs:%ROOT%, Gameplay/Framework
Description:The process of starting the engine and launching a game or play-in-editor session.
Version: 4.12
-type:reference
+type:overview
parent:Gameplay/Framework
-order:5
+order:1
tags:Gameplay Framework
+topic-image:Gameplay/Framework/gameflow_lander.png
This document explains the process of starting the engine and launching a game. There are two main paths shown here: the editor path, and the standalone path. The general order of events is to initialize the engine, create and initialize a **GameInstance**, then load a level, and finally start playing. However, there are differences between standalone and editor modes, both in terms of the exact order of some of the functions that are called, and in which functions are called. The flowchart below shows the two paths running in parallel until they converge at the start of the game.
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameFlow/GameFlow.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/GameFlow/GameFlow.KOR.udn
index 420d6cf7187a..e0fb681ce926 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameFlow/GameFlow.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameFlow/GameFlow.KOR.udn
@@ -1,13 +1,14 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability:Public
Title:게임 흐름 개요
Crumbs:%ROOT%, Gameplay/Framework
Description:엔진 시작 및 게임이나 에디터에서 플레이 세션을 실행시키는 프로세스입니다.
Version: 4.12
-type:reference
+type:overview
parent:Gameplay/Framework
-order:5
+order:1
tags:Gameplay Framework
+topic-image:Gameplay/Framework/gameflow_lander.png
엔진 시작 및 게임 실행 프로세스에 대한 설명 문서입니다. 여기서 보여드리는 방법은 크게 두 가지, 에디터 방법과 독립형 방법입니다. 일반적인 이벤트 순서는, 엔진을 초기화시키고, **GameInstance** 를 생성 및 초기화한 뒤, 레벨을 로드하고, 마지막으로 플레이를 시작합니다. 하지만 독립형 모드와 에디터 모드 사이의 차이점이 있는데, 일부 함수가 호출되는 정확한 순서와, 어떤 함수가 호출되는지가 다릅니다. 아래 플로우 차트는 두 방법으로 병렬 실행했을 때 게임 시작 전 수렴할 때까지의 흐름을 보여줍니다.
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.CHN.udn b/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.CHN.udn
index e7e64c6d9e7c..d6a768585c14 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.CHN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.CHN.udn
@@ -1,88 +1,126 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3225556
Availability:Public
-Title:GameMode 游戏模式
+Title:Game Mode 和 Game State
Crumbs:%ROOT%, Gameplay/Framework
-Description:GameMode 负责制定游戏规则。
-Version: 4.9
+Description:Game Mode 和 Game State 总览
+Version:4.14
type:reference
parent:Gameplay/Framework
order:5
tags:Gameplay Framework
+Related:Gameplay/Framework/Controller/PlayerController
-即使是最没有限制的游戏也以规则为基础,而这些规则构成一个游戏类型。在最基本的层面上,这些规则包括:
+[TOC (start:2 end:2)]
-*在场的玩家和观众数量,以及所允许的玩家和观众最大数量。
-*玩家如何进入游戏,可能包括生成地点和生成/重生行为。
-*是否可以暂停游戏,以及如何暂停游戏。
-*等级间的过渡,包括游戏是否应以电影模式开始。
+两个主要类负责处理进行中游戏的相关信息:**Game Mode** 和 **Game State**。
-虽然所有游戏类型都有某些共同的基本规则,但取决于你在开发的游戏类型,它们有无限种变化。熟悉的游戏类型包括第一人称射击游戏,如:《死亡竞赛》、《夺旗》和《终极悍将》——选择这些游戏类型往往是比赛设置过程中的菜单选项,因此它们非常明显。其它类型,如角色扮演冒险游戏或平台游戏可能有较少的变量,以及不太明显的游戏类型,但游戏类型仍设定游戏的条件。例如,可能会向玩家施加时间限制,当玩家达到某一阶段或击败一位“首领”人物时才能过关。更复杂的情况会是《地牢探索者》类型的游戏。在主世界中会有一个总体的游戏类型,它将留意游戏的进度和条件。在每个地牢中可能会有该地牢特定的游戏类型,从而使每个地牢都完全独特,并有自己的一套规则和目标。
+即使最开放的游戏也拥有基础规则,而这些规则构成了 **Game Mode**。在最基础的层面上,这些规则包括:
-有两种主要的类来处理有关游戏类型的信息:GameMode 和 GameState。
+* 出现的玩家和观众数量,以及允许的玩家和观众最大数量。
+* 玩家进入游戏的方式,可包含选择生成地点和其他生成/重生成行为的规则。
+* 游戏是否可以暂停,以及如何处理游戏暂停。
+* 关卡之间的过渡,包括游戏是否以动画模式开场。
-## GameMode
+基于规则的事件在游戏中发生,需要进行追踪并和所有玩家共享时,信息将通过 **Game State** 进行存储和同步。这些信息包括:
+* 游戏已运行的时间(包括本地玩家加入前的运行时间)。
+* 每个个体玩家加入游戏的时间和玩家的当前状态。
+* 当前 Game Mode 的基类。
+* 游戏是否已开始。
-“AGameMode” 类定义所玩的游戏,并执行游戏规则。“AGameMode” 中的一些默认功能包括:
+## Game Modes
+特定的基础(如进行游戏所需要的玩家数量,或玩家加入游戏的方法)在多种类型的游戏中具有共通性。可根据开发的特定游戏进行无穷无尽的规则变化。无论规则如何,Game Modes 的任务都是定义和实现规则。Game Modes 当前常用的基类有两个。
-任何设定游戏规则的新函数或变量都应添加在 “AGameMode” 类的子类中。从玩家以什么库存道具开始,或有多少条命,到时间限制,以及结束游戏所需的分数都属于 GameMode。可以为游戏应包括的每个游戏类型创建 “AGameMode” 类的子类。一个游戏可以有任何数量的游戏类型,因此有任何数量的 “AGameMode” 类的子类;然而,在任何特定时间只可以使用一种游戏类型。每次通过 “UGameEngine::LoadMap()” 函数初始化一个游戏等级时都会实例化一个 GameMode Actor。该 Actor 定义的游戏类型将被用于该等级所持续的时间。
+4.14 版本中加入了 `AGameModeBase`,这是所有 Game Mode 的基类,是经典的 `AGameMode` 简化版本。`AGameMode` 是 4.14 版本之前的基类,仍然保留,功能 如旧,但现在是 `AGameModeBase` 的子类。由于其比赛状态概念的实现,`AGameMode` 更适用于标准游戏类型(如多人射击游戏)。`AGameModeBase` 简洁高效,是新代码项目中包含的全新默认游戏模式。
-
+### AGameModeBase
+所有 Game Mode 均为 `AGameModeBase` 的子类。而 `AGameModeBase` 包含大量可覆盖的基础功能。部分常见函数包括:
-### 比赛状态
+| 函数/事件 | 目的 |
+| --- | --- |
+| `InitGame` | `InitGame` 事件在其他脚本之前调用(包括 `PreInitializeComponents`),由 `AGameModeBase` 使用,初始化参数并生成其助手类。 [REGION:note]它在任意 Actor 运行 `PreInitializeComponents` 前调用(包括 Game Mode 实例自身)。[/REGION:note]|
+| `PreLogin` | 接受或拒绝尝试加入服务器的玩家。如它将 `ErrorMessage` 设为一个非空字符串,会导致 `Login` 函数失败。`PreLogin` 在 `Login` 前调用,Login 调用前可能需要大量时间,加入的玩家需要下载游戏内容时尤其如此。|
+| `PostLogin` | 成功登录后调用。这是首个在 `PlayerController` 上安全调用复制函数之处。`OnPostLogin` 可在蓝图中实现,以添加额外的逻辑。|
+| `HandleStartingNewPlayer` | 在 `PostLogin` 后或无缝游历后调用,可在蓝图中覆盖,修改新玩家身上发生的事件。它将默认创建一个玩家 pawn。|
+| `RestartPlayer` | 调用开始生成一个玩家 pawn。如需要指定 Pawn 生成的地点,还可使用 `RestartPlayerAtPlayerStart` 和 `RestartPlayerAtTransform` 函数。`OnRestartPlayer` 可在蓝图中实现,在此函数完成后添加逻辑。|
+| `SpawnDefaultPawnAtTransform` | 这实际生成玩家 Pawn,可在蓝图中覆盖。|
+| `Logout` | 玩家离开游戏或被摧毁时调用。可实现 `OnLogout` 执行蓝图逻辑。|
-GameMode 包含监测比赛状态或整体游戏流程的状态机。要查询当前状态,你可以使用 GetMatchState,或诸如 HasMatchStarted、IsMatchInProgress 和 HasMatchEnded 的包装器。以下是可能的比赛状态:
+可针对游戏提供的每个比赛格式、任务类型或特殊区域创建 `AGameModeBase` 的子类。一款游戏可拥有任意数量的 Game Mode,因此也可拥有任意数量的 `AGameModeBase` 类子类;然而,给定时间上只能使用一个 Game Mode。每次关卡进行游戏实例化时 Game Mode Actor 将通过 `UGameEngine::LoadMap()` 函数进行实例化。
-* EnteringMap 是初始状态。Actors 尚未开始计数,并且世界尚未完全初始化。当一切都完全加载后会过渡到下个状态。
-* WaitingToStart 是下个状态,进入时调用 HandleMatchIsWaitingToStart。Actors 开始计数,但尚未生成玩家。如果 ReadyToStartMatch 返回_true_,或如果有人调用 StartMatch,则过渡到下个状态。
-* InProgress 是下个状态,进入时调用 HandleMatchHasStarted,进而调用所有 Actors的 BeginPlay。普通游戏正在进行中。如果 ReadyToEndMatch 返回 _true_,或如果有人调用 EndMatch,则过渡到下个状态。
-* WaitingPostMatch 是下个状态,进入时调用 HandleMatchHasEnded。Actors 仍在计数,但不接受新玩家。当地图转换开始时过渡到下个状态。
-* LeavingMap 是最后的状态,进入时调用 HandleLeavingMap。在转至新地图时比赛停留在该状态。
-* Aborted 是故障状态,从 AbortMatch 开始。当存在不可恢复的错误时设置成该状态。
+Game Mode 不会复制到加入多人游戏的远程客户端;它只存在于服务器上,因此本地客户端可看到之前使用过的留存 Game Mode 类(或蓝图);但无法访问实际的实例并检查其变量,确定游戏进程中已发生哪些变化。如玩家确实需要更新与当前 Game Mode 相关的信息,可将信息保存在一个 `AGameStateBase` Actor 上,轻松保持同步。`AGameStateBase` Actor 随 Game Mode 而创建,之后被复制到所有远程客户端。
-默认情况下,比赛状态几乎总为 InProgress。但个别游戏可以覆盖该行为,以构建有更复杂规则的多人游戏。
+### AGameMode
-### GameMode 派生 Blueprints
+`AGameMode` 是 `AGameModeBase` 的子类,拥有一些额外的功能支持多人游戏和旧行为。所有新建项目默认使用 `AGameModeBase`。如果需要此额外行为,可切换到从 `AGameMode` 进行继承。如从 `AGameMode` 进行继承,也可从 `AGameState` 继承游戏状态(其支持比赛状态机)。
-GameMode 是可制定蓝图的类。可以创建 GameMode 派生的 _Blueprints_,并用其作为项目或等级的默认游戏模式。
+`AGameMode` 包含一个跟踪比赛状态或整体游戏流程的状态机。可使用 `GetMatchState` 或 `HasMatchStarted`、`IsMatchInProgress` 和 `HasMatchEnded` 之类的封装器查询当前的状态。以下是可能的比赛状态:
-GameMode 派生 Blueprints 可以设置以下默认值:
-* 默认Pawn类
-* HUD类
-* 玩家控制器类
-* 观众类
-* 游戏状态类
-* 玩家状态类
+* `EnteringMap` 是初始状态。Actor 尚未进行 tick,世界场景尚未完整初始化。内容完整加载后将过渡到下个状态。
+* `WaitingToStart` 是下个状态,进入时将调用 `HandleMatchIsWaitingToStart`。Actor 正在进行 tick,但玩家尚未生成。如 `ReadyToStartMatch` 返回 _true_ 或 `StartMatch` 被调用,它将过渡到下个状态。
+* `InProgress` 是游戏主体所发生的状态。进入此状态时将调用 `HandleMatchHasStarted`,然后在所有 Actor 上调用 `BeginPlay`。此时,正常游戏进程已在进行中。`ReadyToEndMatch` 返回 _true_ 或调用 `EndMatch` 时比赛将过渡到下个状态。
+* `WaitingPostMatch` 是倒数第二个状态,进入时将调用 `HandleMatchHasEnded`。Actor 仍在 tick,但新玩家无法加入。地图转换开始时它将过渡到下个状态。
+* `LeavingMap` 是正常流程中的最后一个状态,进入时将调用 `HandleLeavingMap`。转换到新地图时比赛将保持在此状态中,进入新地图时将过渡回到 `EnteringMap`。
+* `Aborted` 是失败状态,调用 `AbortMatch` 可开始此状态。出现无法恢复的错误时将进行此设置。
+游戏状态将固定为 `InProgress`,因为这是调用 `BeginPlay`、actor 开始 tick 的状态。然而,个体游戏可能覆盖这些状态的行为,用更复杂的规则构建一个多人游戏,如在一款多人射击游戏中等待其他玩家加入时允许玩家在关卡中自由飞行。
-### 设置 GameMode
+### Game Mode 蓝图
-有几种方法来设置某一等级的 GameMode,以下按照从最低优先级到最高优先级的顺序:
+可创建派生自 Game Mode 类的蓝图,并将它们用作项目或关卡的默认 Game Mode。
-* 在 “DefaultGame.ini” 文件中的 “/Script/Engine.WorldSettings/” 部分设置 “GlobalDefaultGameMode” 项将为项目中的所有地图设置默认游戏模式。
+派生自 Game Mode 的蓝图可进行以下默认设置:
+* 默认 [](Gameplay/Framework/Pawn) 类
+* HUD 类
+* [](Gameplay/Framework/Controller/PlayerController) 类
+* Spectator 类
+* Game State 类
+* Player State 类
- [/Script/Engine.WorldSettings]
+此外,Game Mode 的蓝图十分实用,因为它们无需调整代码即可启用变量调整。因此可用于使单一 Game Mode 适用到多个不同关卡,无需使用硬编码资源引用或为每次调整请求工程支持和代码修改。
+
+### 设置 Game Mode
+
+设置关卡的 Game Mode 有多种,此处的排序从优先级最低到最高:
+
+* 设置 `DefaultEngine.ini` 文件的 `/Script/EngineSettings.GameMapsSettings` 部分的 `GlobalDefaultGameMode` 输入将设置项目中所有地图的默认游戏模式。
+
+ [/Script/EngineSettings.GameMapsSettings]
GlobalDefaultGameMode="/Script/MyGame.MyGameGameMode"
GlobalDefaultServerGameMode="/Script/MyGame.MyGameGameMode"
-* 要覆盖一个地图的项目设置,在编辑器的 **World Settings** 选项卡中设置 **GameMode Override**。
+* 在编辑器中 **World Settings** 标签下设置 **GameMode Override** 即可覆盖个体地图的项目设置。

-* 符合一定规则的地址可以被传递给可执行文件,以强制游戏加载特定选项。使用“game”选项来设置游戏模式。查看 [](Programming/Basics/CommandLineArguments) 更多信息。
+* URL 可被传到可执行文件,强制游戏加载时带特定选项。使用 `game` 选项设置游戏模式。查看 [](Programming/Basics/CommandLineArguments) 中的详细内容。
UE4Editor.exe /Game/Maps/MyMap?game=MyGameMode -game
-* 最后,可以在 “DefaultGame.ini” 文件的 “/Script/Engine.WorldSettings/” 部分设置地图前缀。这些前缀为有特定前缀的所有地图设置默认游戏模式。
+* 最后,可在 `DefaultEngine.ini` 文件的 `/Script/Engine.WorldSettings/` 部分中设置地图前缀(和 URL 法的别名)。这些前缀设置所有拥有特定前缀的地图的默认游戏模式。
- [/Script/Engine.WorldSettings]
- +DefaultMapPrefixes=(Prefix="DM",GameMode="UTGame.UTDeathmatch")
+ [/Script/EngineSettings.GameMapsSettings]
+ +GameModeMapPrefixes=(Name="DM",GameMode="/Script/UnrealTournament.UTDMGameMode")
+ +GameModeClassAliases=(Name="DM",GameMode="/Script/UnrealTournament.UTDMGameMode")
[REGION:note]
-关于设置 **Game Mode** 的例子,请参阅 [设置游戏模式](Gameplay\HowTo\SettingUpAGameMode) 文档。
+请查阅 [设置 Game Mode] 文档中设置 Game Mode 的范例。
[/REGION]
+
+## Game State
+
+**Game State** 负责启用客户端监控游戏状态。从概念上而言,Game State 应该管理所有已连接客户端已知的信息(特定于 Game Mode 但不特定于任何个体玩家)。它能够追踪游戏层面的属性,如已连接玩家的列表、夺旗游戏中的团队得分、开放世界游戏中已完成的任务,等等。
+
+Game State 并非追踪玩家特有内容(如夺旗比赛中特定玩家为团队获得的分数)的最佳之处,因为它们由 **Player State** 更清晰地处理。整体而言,GameState 应该追踪游戏进程中变化的属性。这些属性与所有人皆相关,且所有人可见。Game mode 只存在于服务器上,而 Game State 存在于服务器上且会被复制到所有客户端,保持所有已连接机器的游戏进程更新。
+
+`AGameStateBase` 是基础实现,其部分默认功能包括:
+
+| 函数或变量 | 使用 |
+| --- | --- |
+| `GetServerWorldTimeSeconds` | 这是 `UWorld` 函数 `GetTimeSeconds` 的服务器版本,将在客户端和服务器上同步,因此该时间可用于复制,十分可靠。|
+| `PlayerArray` | 这是所有 `APlayerState` 对象的阵列,对游戏中所有玩家执行操作时十分实用。|
+| `HasBegunPlay` | 如 `BeginPlay` 函数在游戏中的 actor 上调用,则返回 true。|
+
+`AGameStateBase` 通常在 C++ 或蓝图中延展,包含用于使游戏中玩家知晓当前情况的额外变量和函数。进行的特定修改通常基于 Game State 的配对 Game Mode。Game Mode 自身也可将其默认 Game State 类覆盖为派生自 `AGameStateBase` 的任意 C++ 类或蓝图。
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.INT.udn
index 866928e34c66..109c7b1b5a76 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.INT.udn
@@ -3,11 +3,12 @@ Title: Game Mode and Game State
Crumbs:%ROOT%, Gameplay/Framework
Description: Overview of the Game Mode and Game State
Version: 4.14
-type:reference
+type:overview
parent:Gameplay/Framework
-order:5
+order:2
tags:Gameplay Framework
Related:Gameplay/Framework/Controller/PlayerController
+topic-image:Gameplay/Framework/gamemode_lander.png
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.JPN.udn b/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.JPN.udn
index 6df3c7e92eac..f09b8ca26e79 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.JPN.udn
@@ -1,14 +1,15 @@
-INTSourceChangelist:3225556
+INTSourceChangelist:3429254
Availability:Public
Title:Game Mode と Game State
Crumbs:%ROOT%, Gameplay/Framework
Description:Game Mode と Game State の概要
Version:4.14
-type:reference
+type:overview
parent:Gameplay/Framework
-order:5
+order:2
tags:Gameplay Framework
Related:Gameplay/Framework/Controller/PlayerController
+topic-image:Gameplay/Framework/gamemode_lander.png
[TOC (start:2 end:2)]
@@ -94,6 +95,7 @@ Game Mode から派生したブループリントに以下のデフォルト値

+
* ゲーム起動時にある特定のオプションを強制的に読み込ませるために URL を実行ファイルへ渡すことができます。ゲームモードの設定は `game` オプションを使用します。詳細は [](Programming/Basics/CommandLineArguments) を参照してください。
UE4Editor.exe /Game/Maps/MyMap?game=MyGameMode -game
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.KOR.udn
index 85331fa19b23..81cf01f8ac46 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameMode/GameMode.KOR.udn
@@ -1,14 +1,15 @@
-INTSourceChangelist:3225556
+INTSourceChangelist:3429254
Availability:Public
Title:게임 모드와 게임 스테이트
Crumbs:%ROOT%, Gameplay/Framework
Description: Game Mode, 게임 모드와 Game State, 게임 스테이트에 대한 개요입니다.
Version: 4.14
-type:reference
+type:overview
parent:Gameplay/Framework
-order:5
+order:2
tags:Gameplay Framework
Related:Gameplay/Framework/Controller/PlayerController
+topic-image:Gameplay/Framework/gamemode_lander.png
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.CHN.udn b/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.CHN.udn
deleted file mode 100644
index 1f1f4ba6116e..000000000000
--- a/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.CHN.udn
+++ /dev/null
@@ -1,11 +0,0 @@
-Availability:Public
-Title:GameState 游戏状态
-Crumbs:%ROOT%, Gameplay/Framework
-Description:GameState(游戏状态)负责监测客户端上游戏的状态。
-
-
-[OBJECT:Redirect]
- [PARAM:link]
- [](Gameplay/Framework/GameMode)
- [/PARAM]
-[/OBJECT]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.JPN.udn b/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.JPN.udn
deleted file mode 100644
index 19479d48e681..000000000000
--- a/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.JPN.udn
+++ /dev/null
@@ -1,10 +0,0 @@
-Availability:Public
-Title:GameState
-Crumbs:%ROOT%, Gameplay/Framework
-Description:GameState はクライアント上でゲーム ステートをモニタします。
-
-[OBJECT:Redirect]
- [PARAM:link]
- [](Gameplay/Framework/GameMode)
- [/PARAM]
-[/OBJECT]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.KOR.udn
deleted file mode 100644
index d9fbced7de6c..000000000000
--- a/Engine/Documentation/Source/Gameplay/Framework/GameState/GameState.KOR.udn
+++ /dev/null
@@ -1,10 +0,0 @@
-Availability:Public
-Title:GameState
-Crumbs:%ROOT%, Gameplay/Framework
-Description:GameState 는 클라이언트의 게임 상태 모니터링을 담당합니다.
-
-[OBJECT:Redirect]
- [PARAM:link]
- [](Gameplay/Framework/GameMode)
- [/PARAM]
-[/OBJECT]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.INT.udn
index 2ac379b46a5e..0e861ffd77e2 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.INT.udn
@@ -29,92 +29,15 @@ to pages with overviews of each class and information about how they can be set
## Basic Framework Elements
[EXCERPT:LandingBoxes]
-[REGION:topics third]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework/GameFlow:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework/GameFlow]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework/GameFlow:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\GameMode:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\GameMode]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\GameMode:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- Pawns
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Pawn]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Pawn:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\Controller:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Controller]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Controller:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\Camera:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Camera]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Camera:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\UIAndHUD:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\UIAndHUD]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\UIAndHUD:description%
- [/PARAM]
-[/OBJECT]
-[/REGION]
+[DIR(output:"topic" parent:"Gameplay/Framework" org:"hierarchy" end:"1")]
+
[/EXCERPT:LandingBoxes]
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.JPN.udn b/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.JPN.udn
index 6246d9e3eb4c..1808af8fd4ed 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.JPN.udn
@@ -1,107 +1,44 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3429253
Availability:Public
Title: ゲームプレイ フレームワーク
Crumbs:%ROOT%, Gameplay
-Description: ゲームルール、プレーヤー入力や制御、カメラ、ユーザー インターフェースなどのコア システム
+Description:ゲームルール、プレーヤー入力や制御、カメラ、ユーザー インターフェースなどのコア システム
Version:4.9
type:reference
Parent:Gameplay
order:1
tags:Gameplay Framework
-ゲームフレームワークでは様々なピースがどのように連結するのか、わかりやすい例を見てみましょう。ウサギとカタツムリが競争するという、
-シンプルなコンセプトをイメージします。ゲームフレームワークのベースは GameMode です。**GameMode**はゲームのルールを設定します。
-ゴールラインを先に横切ったプレーヤーが勝者となる、といったルールです。また、プレーヤーのスポーンもします。
+ゲームフレームワークでは様々なピースがどのように連結するのかを、わかりやすい例で考えてみましょう。ウサギとカタツムリが競争するという、
+シンプルなコンセプトをイメージします。ゲームフレームワークのベースは GameMode です。**GameMode** はゲームのルールを設定します。
+例えば、ゴールラインを先に横切ったプレーヤーが勝者となる、といったルールです。また、プレイヤーのスポーンもします。
-プレーヤーは **PlayerController** で設定され、ポーンを所有できます。**コントローラー** はポーンを所有し動作のルールを設定でき、ポーンはゲームでプレーヤーを物理的に表現します。
-この例では、ポーンの数は、カタツムリ 1 つととウサギ 1 つで合計 2 つとなります。うさぎは実際は **キャラクター** で、走行やジャンプなどのビルトインされている動作機能をもつポーンの特別なサブクラスです。一方カタツムリは異なる動作のスタイルを持っており、 Pawn クラスから直接拡張することができます。
+プレイヤーは **PlayerController** で設定され、ポーンを所有できます。コントローラーはポーンを所有し動作のルールを設定でき、**ポーン** はゲームでプレイヤーを物理的に表現します。
+この例では、ポーンの数は、カタツムリ 1 つとウサギ 1 つで合計 2 つとなります。ウサギは実際は **キャラクター** で、走行やジャンプなどのビルトインされている動作機能をもつポーンの特別なサブクラスです。一方カタツムリは異なる動作のスタイルを持っており、 Pawn クラスから直接拡張することができます。
-ポーンは動作と他のゲームロジックに対するルールを持ちますが、機能はコントローラーに含むことができます。コントローラーは、人間のプレーヤーからの入力を受け取る PlayerController か、
-コンピューターに自動制御される AIController のいずれかになることができます。この例では、プレーヤーはカタツムリを制御するので、カタツムリのポーンは PlayerController に所有されます。うさぎは、うさぎの **キャラクター** を所有する **AIController** にすべて設定されている、
-止まる、ダッシュする、油断すべきタイミングのルールに従って AI に制御されます。人間のプレーヤーだけがカメラが提供するビューに気をつけるので、
+ポーンは動作と他のゲームロジックに対するルールを持ちますが、機能はコントローラーに含むこともできます。コントローラーは、人間のプレイヤーからの入力を受け取る PlayerController か、
+コンピューターに自動制御される AIController のいずれかになることができます。この例では、プレイヤーはカタツムリを制御するので、カタツムリのポーンは PlayerController に所有されます。ウサギは、ウサギの **キャラクター** を所有する **AIController** にすべて設定されている、
+止まる、ダッシュする、油断すべきタイミングのルールに従って AI に制御されます。人間のプレイヤーだけがカメラが提供するビューに気をつけるので、
カタツムリのポーンの中の CameraComponent 1 つだけが PlayerCamera に使用されます。
-ゲームプレイの間、プレーヤーの入力によりカタツムリはマップの周りを動き、HUD は 現在の首位およびレースの残り時間に関する情報を表示しながら、
-**Camera** から提供されるビュー上でオーバーレイされます。
+ゲームプレイの間、プレイヤーの入力によりカタツムリはマップの周りを動き、HUD は現在の首位およびレースの経過時間に関する情報を
+**Camera** から提供されるビューにオーバーレイ表示します。
-基本的なフレームワーク エレメントおよび組み合わさり方の表については、[](Gameplay/Framework/QuickReference) を参照してください。あるいは、以下のリンクを使えば、
+基本的なフレームワーク エレメントおよび組み合わせ方の表については、[](Gameplay/Framework/QuickReference) を参照してください。あるいは、以下のリンクを使えば、
各クラスの概要およびブループリントや C++ での設定方法に関する情報が記載されたページに直接ジャンプすることができます。
##基本的なフレームワーク要素
[EXCERPT:LandingBoxes]
-[REGION:topics third]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\GameMode:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\GameMode]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\GameMode:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- ポーン
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Pawn]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Pawn:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\Controller:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Controller]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Controller:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\Camera:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Camera]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Camera:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\UIAndHUD:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\UIAndHUD]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\UIAndHUD:description%
- [/PARAM]
-[/OBJECT]
-[/REGION]
+[DIR(output:"topic" parent:"Gameplay/Framework" org:"hierarchy" end:"1")]
+
[/EXCERPT:LandingBoxes]
diff --git a/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.KOR.udn
index c40ee8ac5e31..692f8ef034db 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/GameplayFramework.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429253
Availability:Public
Title:게임플레이 프레임워크
Crumbs:%ROOT%, Gameplay
@@ -30,92 +30,15 @@ PlayerCamera 에 사용될 것입니다.
## 기본 프레임워크 요소
[EXCERPT:LandingBoxes]
-[REGION:topics third]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework/GameFlow:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework/GameFlow]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework/GameFlow:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\GameMode:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\GameMode]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\GameMode:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- Pawns
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Pawn]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Pawn:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\Controller:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Controller]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Controller:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\Camera:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\Camera]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\Camera:description%
- [/PARAM]
-[/OBJECT]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %Gameplay/Framework\UIAndHUD:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Gameplay/Framework\UIAndHUD]
- [/PARAM]
- [PARAM:description]
- %Gameplay/Framework\UIAndHUD:description%
- [/PARAM]
-[/OBJECT]
-[/REGION]
+[DIR(output:"topic" parent:"Gameplay/Framework" org:"hierarchy" end:"1")]
+
[/EXCERPT:LandingBoxes]
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.INT.udn
index c7474489bcb0..ec803475e8de 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.INT.udn
@@ -10,7 +10,7 @@ Related: Engine/Animation/CharacterSetupOverview
Related: Gameplay/HowTo/CharacterMovement
Version: 4.9
-With the addition of a `CharacterMovementComponent`, a `CapsuleComponent`, and a **Skeletal Mesh**, the **Pawn** class is extended into the highly-featured **Character** class.
+With the addition of a `CharacterMovementComponent`, a `CapsuleComponent`, and a `SkeletalMeshComponent`, the [Pawn](Gameplay/Framework/Controller) class is extended into the highly-featured **Character** class.
A Character is designed for a vertically-oriented player representation that can walk, run, jump, fly, and swim through the world. This class also contains
implementations of basic networking and input models.
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.JPN.udn b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.JPN.udn
index 5acd694fba1e..d587780d45e6 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.JPN.udn
@@ -1,8 +1,8 @@
-INTSourceChangelist:2699746
+INTSourceChangelist:3388780
Availability:Public
Title:Character
Crumbs:%ROOT%, Gameplay, Gameplay/Framework, Gameplay/Framework/Pawn
-Description:キャラクターとは、デフォルト設定で基本的な二足歩行の動作機能を持つポーンです。
+Description:キャラクター とは、デフォルト設定で基本的な二足歩行の動作機能を持つポーンです。
Related:Gameplay/Framework/Pawn
Related:Gameplay/Framework/Controller
Related:Gameplay/Framework/GameMode
@@ -11,12 +11,12 @@ Related:Engine/Animation/CharacterSetupOverview
Related:Gameplay/HowTo/CharacterMovement
Version:4.9
-`CharacterMovement コンポーネント`、 `Capsule コンポーネント`、および **Skeletal Mesh** が加わり、Pawn クラスは高度な機能を備えた **Character** クラスに拡張されました。
+`CharacterMovementComponent`、 `CapsuleComponent`、および `SkeletalMeshComponent` が加わり、[Pawn](Gameplay/Framework/Controller) クラスは高度な機能を備えた Character クラスに拡張されました。
Character は、ワールド内で歩行、走行、ジャンプ、飛行、水泳できる縦方向に表現したプレイヤー向けに設計されています。このクラスには、
基本的なネットワークの構築や入力モデルの実装も含まれます。
-### SkeletalMesh コンポーネント
-Pawn とは異なり、Character にはスケルトンを使用する高度なアニメーションを有効にするための `SkeletalMesh コンポーネント` が含まれています。Character から派生したクラスへ他のスケルタルメッシュを追加できますが、
+### SkeletalMeshComponent
+Pawn とは異なり、Character にはスケルトンを使用する高度なアニメーションを有効にするための `SkeletalMeshComponent` が含まれています。Character から派生したクラスへ他のスケルタルメッシュを追加できますが、
これが Character に関連付けられているメインのスケルタルメッシュになります。スケルタルメッシュに関する詳細は以下を参照してください。
[OBJECT:TopicButtonList]
@@ -36,8 +36,8 @@ Pawn とは異なり、Character にはスケルトンを使用する高度な
-### Capsule コンポーネント
-`Capsule コンポーネント` は移動コリジョンに使用します。`CharacterMovement コンポーネント` の複雑なジオメトリを計算するために、Character クラスの Collision コンポーネントは垂直方向のカプセルであると仮定します。コリジョンに関する詳細については以下を参照してください。
+### CapsuleComponent
+`CapsuleComponent` は移動コリジョンに使用します。`CharacterMovementComponent` の複雑なジオメトリを計算するために、Character クラスの Collision コンポーネントは垂直方向のカプセルであると仮定します。コリジョンに関する詳細については以下を参照してください。
[OBJECT:TopicButtonList]
[PARAM:icon]
@@ -54,11 +54,11 @@ Pawn とは異なり、Character にはスケルトンを使用する高度な
[/PARAM]
[/OBJECT]
-### CharacterMovement コンポーネント
-`CharacterMovement コンポーネント` は、歩行、走行、ジャンプ、飛行、落下、水泳によるアバターの移動を可能とするために剛体物理を使用しません。
-これは Character 特有のもので、その他のクラスには実装できません。`CharacterMovement コンポーネント` で設定可能なプロパティには、
+### CharacterMovementComponent
+`CharacterMovementComponent` では、アバターは剛体物理を使用せずに、歩行、走行、ジャンプ、飛行、落下、水泳で移動することができます。
+これは Character 特有のもので、その他のクラスには実装できません。`CharacterMovementComponent` で設定可能なプロパティには、
落下や歩行時の摩擦力の値、大気、水中、陸地を移動中の速度、浮力、重力スケールが含まれ、こうした物理によって、キャラクターが物理オブジェクトに
-影響を及ぼすことができるようにします。`CharacterMovement コンポーネント` はアニメーションに由来するルートモーション パラメータを含み、
+影響を及ぼすことができるようにします。`CharacterMovementComponent` はアニメーションに由来するルートモーション パラメータを含み、
ワールド空間で既に変換されて物理的な使用の準備が整っています。
---
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.KOR.udn
index 784598ce52ac..a76f2a3968fa 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Character/Character.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3388780
Availability:Public
Title:캐릭터
Crumbs:%ROOT%, Gameplay, Gameplay/Framework, Gameplay/Framework/Pawn
@@ -12,7 +12,7 @@ Related: Gameplay/HowTo/CharacterMovement
Version: 4.9
-`CharacterMovementComponent`, `CapsuleComponent`, **SkeletalMesh** 의 추가를 통해 Pawn 클래스는 매우 특징적인 Character (캐릭터) 클래스로 확장됩니다.
+`CharacterMovementComponent`, `CapsuleComponent`,`SkeletalMeshComponent` 의 추가를 통해 [Pawn](Gameplay/Framework/Controller) 클래스는 고도로 특화된 Character (캐릭터) 클래스로 확장됩니다.
캐릭터는 월드에서 걷기, 달리기, 점프, 비행, 수영 등이 가능한 직립 플레이어를 표현하기 위해 디자인된 것입니다.
이 클래스에는 기본적인 네트워킹이나 인풋 모델 구현도 추가되어 있습니다.
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.INT.udn
index 4d645032488f..51c373f8f083 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.INT.udn
@@ -6,10 +6,11 @@ Related: Gameplay/Framework\Pawn\Character
Related: Gameplay/Framework/Controller
Related: Gameplay/Framework/GameMode
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
order:3
tags:Gameplay Framework
+topic-image:Gameplay/Framework/pawn_lander.png
(w:300)
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.JPN.udn b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.JPN.udn
index a2156a26dd3f..b143c22242b5 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3429254
Availability:Public
Title:Pawn
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
@@ -7,18 +7,19 @@ Related:Gameplay/Framework\Pawn\Character
Related:Gameplay/Framework/Controller
Related:Gameplay/Framework/GameMode
Version:4.9
-type:reference
+type:overview
parent:Gameplay/Framework
order:3
tags:Gameplay Framework
+topic-image:Gameplay/Framework/pawn_lander.png
(w:300)
-**Pawn** クラスはプレイヤーまたは AI によって制御可能な、すべてのアクタのベースクラスです。ポーンは、ワールド内のプレイヤーまたは AI エンティティの物理的な実体です。
+**Pawn** クラスはプレイヤーまたは AI によって制御可能な、すべてのアクタの基本クラスです。ポーンは、ワールド内のプレイヤーまたは AI エンティティの物理的な実体です。
ポーンは、プレイヤーまたは AI エンティティの視覚的な表現のみならず、コリジョンや物理的インタラクションにおいて、これらのワールド内における相互作用方法を
-決定します。ゲームの種類によっては、ゲーム内に表示されるメッシュまたはアバターが存在しないため、特定の状況下では混乱を招く場合もあります。いずれにせよ、
+決定します。これは、特定の状況下では混乱を招く場合もあります。ゲームの種類によっては、ゲーム内に表示されるプレイヤーのメッシュやアバターが存在しないためです。いずれにせよ、
Pawn はゲーム内のプレイヤーまたはエンティティの物理的な位置、回転を表します。[Character](Gameplay\Framework\Pawn\Character) は、歩行能力を持つ特別な種類のポーンです。
デフォルトで、[コントローラー](Gameplay/Framework/Controller) とポーンは 1 対 1 の関係です。つまり、各コントローラーは常にポーンを 1 つだけ管理します。また、ゲームプレイ中にスポーンされたポーンは
@@ -39,7 +40,7 @@ DefaultPawn クラスには、ネイティブの _DefaultPawnMovementComponent_
### DefaultPawnMovementComponent
-_DefaultPawnMovementComponent_ には、無重力の飛行スタイルが設定されています。通常の _MovementComponent_ 変数の他に、`MaxSpeed` 、 `Acceleration` 、 `Deceleration` の浮動小数点値が含まれています。こうした 3 つの変数は、
+_DefaultPawnMovementComponent_ には、無重力の飛行スタイルが設定されています。通常の _MovementComponent_ 変数の他に、`MaxSpeed` 、 `Acceleration` 、 `Deceleration` の浮動小数点値が含まれています。これらは、
DefaultPawn から派生したブループリントでもアクセスが可能です。
### Spectator Pawn
diff --git a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.KOR.udn
index 71329d964961..77b78b0076ac 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/Pawn/Pawn.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability:Public
Title:폰
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
@@ -7,10 +7,11 @@ Related: Gameplay/Framework\Pawn\Character
Related: Gameplay/Framework/Controller
Related: Gameplay/Framework/GameMode
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
order:3
tags:Gameplay Framework
+topic-image:Gameplay/Framework/pawn_lander.png
(w:300)
diff --git a/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.CHN.udn b/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.CHN.udn
index 89263f505a60..132a9edd2729 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.CHN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.CHN.udn
@@ -4,9 +4,9 @@ Title:游戏架构快速指南
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:关于构成游戏架构的游戏规则、角色、控制器、用户界面等类的概述。
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
-order:2
+order:0
tags:Gameplay Framework
基本游戏类包括表示玩家、盟友、敌人的功能以及使用玩家输入或AI逻辑控制这些角色的功能。还有一些类用于为玩家创建
@@ -74,7 +74,7 @@ $ Camera(相机) : PlayerCameraManager是玩家的眼睛,管理玩家如
$ GameMode(游戏模式) : 游戏这个概念划分为两个类。[](Gameplay/Framework/GameMode)是游戏的定义,包括像游戏规则及获胜条件这样的内容。它仅存在于服务器上。它一般在游戏过程中不会有太多数据改变,并且它一定不应该具有客户端需要的临时数据。
-$ GameState(游戏状态) : [](Gameplay/Framework/GameState)包含了游戏状态,这包括像关联玩家的列表、分数、象棋游戏中的象棋位置或者在开放世界游戏中已经完成的任务列表。GameState存在于服务器和所有客户端上,可以自由地进行复制来保持同步。
+$ GameState(游戏状态) : [GameState](Gameplay/Framework/GameMode#GameState) 包含了游戏状态,这包括像关联玩家的列表、分数、象棋游戏中的象棋位置或者在开放世界游戏中已经完成的任务列表。GameState存在于服务器和所有客户端上,可以自由地进行复制来保持同步。
$ PlayerState(玩家状态) : PlayerState是游戏中的一个参与者的状态,比如人类玩家或者模拟人类玩家的机器人。作为游戏一部分存在的非人类玩家AI没有PlayerState。PlayerState中适合包含的示例数据有:玩家姓名、分数、像多人在线竞技场这样的比赛中的级别、或在夺旗模式游戏中玩家当前是否正占领旗帜。所有玩家的PlayerStates在所有机器上都存在(和PlayerControllers不同),并且可以自由地进行复制来保持同步。
diff --git a/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.INT.udn
index 13544999d20c..88ff1b6cf076 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.INT.udn
@@ -3,9 +3,9 @@ Title:Gameplay Framework Quick Reference
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:Short overview of classes for game rules, characters, controllers, user interfaces, etc., that make up the framework for the game.
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
-order:2
+order:0
tags:Gameplay Framework
The basic gameplay classes include functionality for representing players, allies, and enemies, as well as for controlling these avatars with player input or AI logic. There are also classes for creating
@@ -15,90 +15,43 @@ These classes all create types of Actors, which can either be placed into your l
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- Representing Players, Friends, and Foes in the World
- [/PARAM]
- [PARAM:description]
- **Pawn**
-
- A [](Gameplay/Framework/Pawn) is an Actor that can be an "agent" within the world. Pawns can be possessed by a Controller, they are set up to easily accept input, and they can do various and sundry other player-like things. Note that a Pawn is not assumed to be humanoid.
+## Representing Players, Friends, and Foes in the World
- **Character**
-
- A [](Gameplay/Framework/Pawn/Character) is a humanoid-style Pawn. It comes with a CapsuleComponent for collision and a CharacterMovementComponent by default. It can do basic human-like movement, it can replicate movement smoothly across the network, and it has some animation-related functionality.
+(w:300)
- [/PARAM]
-[/OBJECT]
+|||
+| --- | --- |
+| **Pawn** | A [](Gameplay/Framework/Pawn) is an Actor that can be an "agent" within the world. Pawns can be possessed by a Controller, they are set up to easily accept input, and they can do various and sundry other player-like things. Note that a Pawn is not assumed to be humanoid. |
+| **Character** | A [](Gameplay/Framework/Pawn/Character) is a humanoid-style Pawn. It comes with a CapsuleComponent for collision and a CharacterMovementComponent by default. It can do basic human-like movement, it can replicate movement smoothly across the network, and it has some animation-related functionality. |
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- Controlling Pawns With Player Input or AI Logic
- [/PARAM]
- [PARAM:description]
+## Controlling Pawns With Player Input or AI Logic
+
+(w:300)
- **Controller**
-
- A [](Gameplay/Framework/Controller) is an Actor that is responsible for directing a Pawn. They typically come in 2 flavors, AIController and PlayerController. A controller can "possess" a Pawn to take control of it.
+|||
+| --- | --- |
+| **Controller** | [](Gameplay/Framework/Controller) is an Actor that is responsible for directing a Pawn. They typically come in 2 flavors, AIController and PlayerController. A controller can "possess" a Pawn to take control of it. |
+| **PlayerController** | A [](Gameplay/Framework/Controller/PlayerController) is the interface between the Pawn and the human player controlling it. The PlayerController essentially represents the human player's will. |
+| **AIController** | An AIController is what it sounds like; a simulated "will" that can control a Pawn. |
- **PlayerController**
-
- A [](Gameplay/Framework/Controller/PlayerController) is the interface between the Pawn and the human player controlling it. The PlayerController essentially represents the human player's will.
+## Displaying Information to Players
- **AIController**
-
- An AIController is what it sounds like; a simulated "will" that can control a Pawn.
+(w:300)
+
+|||
+| --- | --- |
+| **HUD** | A [HUD](Gameplay/Framework/UIAndHUD) is a "heads-up display", or the 2D on-screen display that is common in many games. Think health, ammo, gun reticle, etc. Each PlayerController typically has one of these. |
+| **Camera** | The PlayerCameraManager is the "eyeball" for a player and manages how it behaves. Each PlayerController typically has one of these as well. For more, see the [camera workflow](Gameplay/Framework/Camera) page. |
- [/PARAM]
-[/OBJECT]
+## Setting and Tracking the Rules of the Game
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- Displaying Information to Players
- [/PARAM]
- [PARAM:description]
- **HUD**
+(w:300)
- A [HUD](Gameplay/Framework/UIAndHUD) is a "heads-up display", or the 2D on-screen display that is common in many games. Think health, ammo, gun reticle, etc. Each PlayerController typically has one of these.
-
- **Camera**
-
- The PlayerCameraManager is the "eyeball" for a player and manages how it behaves. Each PlayerController typically has one of these as well. For more, see the [camera workflow](Gameplay/Framework/Camera) page.
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- Setting and Tracking the Rules of the Game
- [/PARAM]
- [PARAM:description]
-
- **GameMode**
-
- The concept of a "game" is split into 2 classes. The [](Gameplay/Framework/GameMode) is the definition of the game, including things like the game rules and win conditions. It only exists on the server. It typically should not have much data that changes during play, and it definitely should not have transient data that clients need to know about.
-
- **GameState**
-
- The [](Gameplay/Framework/GameState) contains the state of the game, which could include things like the list of connected players, the score, where the pieces are in a chess game, or the list of what missions you have completed in an open world game. The GameState exists on the server and all clients and can replicate freely to keep all machines up to date.
-
- **PlayerState**
-
- A **PlayerState** is the state of a participant in the game, such as a human player or a bot that is simulating a player. Non-player AI that exists as part of the game would not have a PlayerState. Example data that would be appropriate in a PlayerState include player name, score, in-match level for something like a MOBA, or whether the player is currently carrying the flag in a CTF game. PlayerStates for all players exist on all machines (unlike PlayerControllers) and can replicate freely to keep things in sync.
-
- [/PARAM]
-[/OBJECT]
+|||
+| --- | --- |
+| **GameMode** | The concept of a "game" is split into 2 classes. The [](Gameplay/Framework/GameMode) is the definition of the game, including things like the game rules and win conditions. It only exists on the server. It typically should not have much data that changes during play, and it definitely should not have transient data that clients need to know about. |
+| **GameState** | The [GameState](Gameplay/Framework/GameMode#GameState) contains the state of the game, which could include things like the list of connected players, the score, where the pieces are in a chess game, or the list of what missions you have completed in an open world game. The GameState exists on the server and all clients and can replicate freely to keep all machines up to date. |
+| **PlayerState** | A **PlayerState** is the state of a participant in the game, such as a human player or a bot that is simulating a player. Non-player AI that exists as part of the game would not have a PlayerState. Example data that would be appropriate in a PlayerState include player name, score, in-match level for something like a MOBA, or whether the player is currently carrying the flag in a CTF game. PlayerStates for all players exist on all machines (unlike PlayerControllers) and can replicate freely to keep things in sync. |
## Framework Class Relationships
diff --git a/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.JPN.udn b/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.JPN.udn
index 45e65ad5c253..a9f60ed45db7 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.JPN.udn
@@ -1,12 +1,12 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3429254
Availability:Public
Title:ゲームプレイ フレームワークのクイック リファレンス
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:ゲームルール、キャラクター、コントローラー、ユーザーインターフェースなど、ゲームのフレームワークを構成するクラスの概略
Version:4.9
-type:reference
+type:overview
parent:Gameplay/Framework
-order:2
+order:0
tags:Gameplay Framework
基本的なゲームプレイ クラスにはプレイヤー、味方、敵を表す機能に加えて、プレイヤー入力もしくは AI ロジックでこれらのアバターを制御する機能が含まれます。プレイヤー用のヘッドアップ ディスプレイや
@@ -16,90 +16,43 @@ tags:Gameplay Framework
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- ワールドでプレイヤー、友達、敵を表現する
- [/PARAM]
- [PARAM:description]
- **ポーン**
+## ワールドでプレイヤー、友達、敵を表現する
- [](Gameplay/Framework/Pawn) はワールドで「エージェント」となりうるアクタです。ポーンはコントローラで所有することが可能で、入力の受け取りを簡単に設定でき、他のプレイヤーのような様々なことが行えます。ポーンは人間の形を前提としていないことにご注意ください。
+(w:300)
- **キャラクター**
+|||
+| --- | --- |
+| **Pawn** | [](Gameplay/Framework/Pawn) はワールドで「エージェント」となりうるアクタです。ポーンはコントローラで所有することが可能で、入力の受け取りを簡単に設定でき、他のプレイヤーのような様々なことが行えます。ポーンは人間の形を前提としていないことにご注意ください。 |
+| **Character** | [](Gameplay/Framework/Pawn/Character) は人間の形をしたポーンです。コリジョン用の CapsuleComponent と CharacterMovementComponent がデフォルトで付いています。人間の基本動作が可能で、ネットワーク全体でスムーズに動きをレプリケートでき、アニメーション関連機能も付いています。 |
- [](Gameplay/Framework/Pawn/Character) は人間の形をしたポーンです。コリジョン用の CapsuleComponent と CharacterMovementComponent がデフォルトで付いています。人間の基本動作が可能で、ネットワーク全体でスムーズに動きをレプリケートでき、アニメーション関連機能も付いています。
+## プレイヤー入力や AI ロジックでポーンを制御する
- [/PARAM]
-[/OBJECT]
+(w:300)
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- プレイヤー入力や AI ロジックでポーンを制御する
- [/PARAM]
- [PARAM:description]
+|||
+| --- | --- |
+| **Controller** | [](Gameplay/Framework/Controller) はポーンに指示を出す役目のアクタです。通常、 AIController と PlayerController の 2 タイプがあります。コントローラはポーンを「所有」して制御することができます。 |
+| **PlayerController** | [](Gameplay/Framework/Controller/PlayerController) は、ポーンと、それをコントロールする人プレーヤーとの間のインターフェースです。PlayerController は、基本的に人プレイヤーの意思を表します。 |
+| **AIController** | AIController は、ポーンを制御することができるシミュレートされた「意思」のようなものです。 |
- **コントローラー**
+## プレイヤーに情報を表示する
- [](Gameplay/Framework/Controller) はポーンに指示を出す役目のアクタです。通常、 AIController と PlayerController の 2 タイプがあります。コントローラはポーンを「所有」して制御することができます。
+(w:300)
- **プレイヤー コントローラー**
+|||
+| --- | --- |
+| **HUD** | [HUD](Gameplay/Framework/UIAndHUD) はヘッドアップ ディスプレイです。多くのゲームで一般的な 2D オンスクリーン ディスプレイです。Health 、 ammo 、 gun reticle 等と思ってください。各 PlayerController には、これらのいずれかが通常あります。 |
+| **Camera** | PlayerCameraManager はプレイヤーの「眼球」で、挙動を管理します。各 PlayerController は、通常これらのいずれかを持ちます。詳細は、 [camera workflow](Gameplay/Framework/Camera) ページをご覧ください。 |
- [](Gameplay/Framework/Controller/PlayerController) は、ポーンと、それをコントロールする人プレーヤーとの間のインターフェースです。PlayerController は、基本的に人プレイヤーの意思を表します。
+## ゲームのルールを設定しトラックする
- **AIController**
+(w:300)
- AIController は、ポーンを制御することができるシミュレートされた「意思」のようなものです。
-
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- プレイヤーに情報を表示する
- [/PARAM]
- [PARAM:description]
- **HUD**
-
- [HUD](Gameplay/Framework/UIAndHUD) はヘッドアップ ディスプレイです。多くのゲームで一般的な 2D オンスクリーン ディスプレイです。Health 、 ammo 、 gun reticle 等と思ってください。各 PlayerController には、これらのいずれかが通常あります。
-
- **カメラ**
-
- PlayerCameraManager はプレイヤーの「眼球」で、挙動を管理します。各 PlayerController は、通常これらのいずれかを持ちます。詳細は、 [camera workflow](Gameplay/Framework/Camera) ページをご覧ください。
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- ゲームのルールを設定しトラックする
- [/PARAM]
- [PARAM:description]
-
- **GameMode**
-
- 「ゲーム」のコンセプトは 2 つのクラスに分割されます。[](Gameplay/Framework/GameMode) は、ゲーム ルールや勝敗条件など含めたゲームの定義です。サーバー上にのみ存在します。通常はプレイ中に変更されるデータがあまりあってはならず、クライアントが知る必要のある一時的なデータは絶対にあってはいけません。
-
- **GameState**
-
- [](Gameplay/Framework/GameState) はゲームのステートを含みます。接続されたプレイヤーのリスト、スコア、チェス ゲームの駒の位置、オープンなワールドゲームで完了したミッションのリストなどが含まれます。GameState はサーバーとすべてのクライアント上に存在し、自由にレプリケートして全てのマシンを最新の状態に保つことができます。
-
- **PlayerState**
-
- **PlayerState** は、人プレーヤーやプレイヤーをシミュレートしているボットなどの、ゲームの参加者のステートです。ゲームの一部として存在する非プレイヤーの AI は PlayerState を持ちません。PlayerState として適切なデータの例には、プレイヤー名、スコア、MOBA などの場合のインマッチ レベル、CTF ゲームでプレイヤーが今フラグを持っているかどうか、などがあります。すべてのマシン上ですべてのプレイヤーに対して PlayerStates が存在し (PlayerControllers とは異なります) 、自由にレプリケートして同期することができます。
-
- [/PARAM]
-[/OBJECT]
+|||
+| --- | --- |
+| **GameMode** | 「ゲーム」のコンセプトは 2 つのクラスに分割されます。[](Gameplay/Framework/GameMode) は、ゲーム ルールや勝敗条件など含めたゲームの定義です。サーバー上にのみ存在します。通常はプレイ中に変更されるデータがあまりあってはならず、クライアントが知る必要のある一時的なデータは絶対にあってはいけません。 |
+| **GameState** | [GameState](Gameplay/Framework/GameMode#GameState) はゲームのステートを含みます。接続されたプレイヤーのリスト、スコア、チェス ゲームの駒の位置、オープンなワールドゲームで完了したミッションのリストなどが含まれます。GameState はサーバーとすべてのクライアント上に存在し、自由にレプリケートして全てのマシンを最新の状態に保つことができます。 |
+| **PlayerState** | **PlayerState** は、人プレーヤーやプレイヤーをシミュレートしているボットなどの、ゲームの参加者のステートです。ゲームの一部として存在する非プレイヤーの AI は PlayerState を持ちません。PlayerState として適切なデータの例には、プレイヤー名、スコア、MOBA などの場合のインマッチ レベル、CTF ゲームでプレイヤーが今フラグを持っているかどうか、などがあります。すべてのマシン上ですべてのプレイヤーに対して PlayerStates が存在し (PlayerControllers とは異なります) 、自由にレプリケートして同期することができます。 |
## Framework クラスの関係
diff --git a/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.KOR.udn
index 9ae06a07781e..7106bfb5da29 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/QuickReference/QuickReference.KOR.udn
@@ -1,12 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability:Public
Title:게임플레이 프레임워크 간단 참고서
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:게임의 프레임워크를 이루는 게임 규칙, 캐릭터, 콘트롤러, 유저 인터페이스 등에 대한 클래스 간단 개요입니다.
Version: 4.9
-type:reference
+type:overview
parent:Gameplay/Framework
-order:2
+order:0
tags:Gameplay Framework
기본적인 게임플레이 클래스에는 플레이어, 아군, 적군에 대한 표현 및 그에 대한 아바타를 플레이어 입력이나 AI 로직으로 제어하는 데 대한 함수성이 포함되어 있습니다. 또한
@@ -16,90 +16,43 @@ tags:Gameplay Framework
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- 월드에 플레이어, 아군, 적군 표시
- [/PARAM]
- [PARAM:description]
- **Pawn** 폰
+## 월드에 플레이어, 아군, 적군 표시
+
+(w:300)
- [](Gameplay/Framework/Pawn) 이란 월드의 대리인 역할을 하는 Actor 입니다. Pawn 은 Controller 에 의해 possess(빙의) 가능하며, 입력을 쉽게 받을 수 있도록 구성 가능하고, 여러가지 다양한 플레이어같은 동작을 할 수 있습니다. 참고로 Pawn 은 인간형이라 가정되지 않습니다.
+|||
+| --- | --- |
+| **Pawn** | [](Gameplay/Framework/Pawn) 이란 월드의 대리인 역할을 하는 Actor 입니다. Pawn 은 Controller 에 의해 possess(빙의) 가능하며, 입력을 쉽게 받을 수 있도록 구성 가능하고, 여러가지 다양한 플레이어같은 동작을 할 수 있습니다. 참고로 Pawn 은 인간형이라 가정되지 않습니다. |
+| **Character** | [](Gameplay/Framework/Pawn/Character) 는 인간형 Pawn 입니다. 기본적으로 콜리전에 쓸 CapsuleComponent 와 CharacterMovementComponent 가 들어있습니다. 기본적인 인간형 동작을 할 수 있으며, 네트워크를 통해 부드러운 이동 리플리케이션이 가능하고, 애니메이션 관련 함수성도 약간 있습니다. |
- **Character** 캐릭터
-
- [](Gameplay/Framework/Pawn/Character) 는 인간형 Pawn 입니다. 기본적으로 콜리전에 쓸 CapsuleComponent 와 CharacterMovementComponent 가 들어있습니다. 기본적인 인간형 동작을 할 수 있으며, 네트워크를 통해 부드러운 이동 리플리케이션이 가능하고, 애니메이션 관련 함수성도 약간 있습니다.
-
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- 플레이어 인풋 또는 AI 로직으로 폰 제어하기
- [/PARAM]
- [PARAM:description]
+## 플레이어 인풋 또는 AI 로직으로 폰 제어하기
- **Controller**
-
- [](Gameplay/Framework/Controller) 는 Pawn 에 대한 지시를 담당하는 Actor 입니다. 보통 두 가지 형태로 등장하는데, AIController 와 PlayerController 입니다. 콘트롤러는 Pawn 에 "possess"(빙의)되어 그 폰을 제어할 수 있습니다.
+(w:300)
+
+|||
+| --- | --- |
+| **Controller** | [](Gameplay/Framework/Controller) 는 Pawn 에 대한 지시를 담당하는 Actor 입니다. 보통 두 가지 형태로 등장하는데, AIController 와 PlayerController 입니다. 콘트롤러는 Pawn 에 "possess"(빙의)되어 그 폰을 제어할 수 있습니다. |
+| **PlayerController** | [](Gameplay/Framework/Controller\PlayerController) 는 Pawn 과 그것을 제어하는 사람 플레이어를 잇는 인터페이스입니다. PlayerController 는 본질적으로 사람 플레이어의 의지를 나타냅니다. |
+| **AIController** | AIController 는 말 그대로 Pawn 을 제어하는 의지를 시뮬레이션으로 재현한 것입니다. |
- **PlayerController**
-
- [](Gameplay/Framework/Controller\PlayerController) 는 Pawn 과 그것을 제어하는 사람 플레이어를 잇는 인터페이스입니다. PlayerController 는 본질적으로 사람 플레이어의 의지를 나타냅니다.
+## 플레이어에게 정보 표시하기
- **AIController**
+(w:300)
- AIController 는 말 그대로 Pawn 을 제어하는 의지를 시뮬레이션으로 재현한 것입니다.
+|||
+| --- | --- |
+| **HUD** | [HUD](Gameplay/Framework/UIAndHUD) 는 "Heads-Up Display" 의 준말이며, 여러 게임에서 볼 수 있는 머리 위에 뜨는 화면 표시기같은 것으로, 생명력, 탄환 수, 총 조준선 등이 표시됩니다. 각 PlayerController 에는 보통 이와 같은 것이 하나씩 있습니다. |
+| **Camera** | PlayerCameraManager 는 플레이어의 "눈"을 나타내며, 그 동작을 관리합니다. 각 PlayerController 에는 보통 하나씩 있습니다. 자세한 것은 [](Gameplay/Framework/Camera) 문서를 참고하세요. |
- [/PARAM]
-[/OBJECT]
+## 게임의 규칙 설정 및 기록하기
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- 플레이어에게 정보 표시하기
- [/PARAM]
- [PARAM:description]
- **HUD**
+(w:300)
- [HUD](Gameplay/Framework/UIAndHUD) 는 "Heads-Up Display" 의 준말이며, 여러 게임에서 볼 수 있는 머리 위에 뜨는 화면 표시기같은 것으로, 생명력, 탄환 수, 총 조준선 등이 표시됩니다. 각 PlayerController 에는 보통 이와 같은 것이 하나씩 있습니다.
-
- **Camera** 카메라
-
- PlayerCameraManager 는 플레이어의 "눈"을 나타내며, 그 동작을 관리합니다. 각 PlayerController 에는 보통 하나씩 있습니다. 자세한 것은 [](Gameplay/Framework/Camera) 문서를 참고하세요.
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:IconSection]
- [PARAM:icon]
- (w:300)
- [/PARAM]
- [PARAM:title]
- 게임의 규칙 설정 및 기록하기
- [/PARAM]
- [PARAM:description]
-
- **GameMode**
-
- "게임" 이라는 것의 개념은 두 개의 클래스로 나뉩니다. [](Gameplay/Framework/GameMode) 는 게임의 규칙이나 승리 조건같은 것이 포함된 게임의 정의로, 서버에만 존재합니다. 보통은 플레이 도중 바뀌는 데이터는 많이 없어야 하며, 클라이언트에서 알아야 하는 트랜션트(휘발성) 데이터는 반드시 없어야 할 것입니다.
-
- **GameState**
-
- [](Gameplay/Framework/GameState) 에는 접속된 플레이어 목록, 점수, 체크 게임에서 말들의 위치, 오픈 월드 게임에서 완료한 퀘스트 목록 등과 같은 것이 포함될 수 있는 게임 상태가 포함됩니다. GameState 는 서버와 모든 클라이언트에 존재하며, 최신 상태 유지를 위해 자유롭게 리플리케이트 가능합니다.
-
- **PlayerState**
-
- 인간 플레이어 또는 플레이어인 척 하는 봇과 같은 게임 참여자의 상태를 말합니다. 게임의 일부로써 존재하는 플레이어가 아닌 AI 에는 PlayerState 가 없습니다. PlayerState 에 적합한 예제 데이터라면, 플레이어 이름, 점수, MOBA 게임류에서의 대전상대 레벨, CTF 게임에서 플레이어가 현재 깃발을 운반중인지 여부 등입니다. 모든 플레이어에 대한 PlayerState 는 (PlayerController 와는 달리) 모든 머신에 존재하며, 동기화 상태 유지를 위해 자유로이 리플리케이트 가능합니다.
-
- [/PARAM]
-[/OBJECT]
+|||
+| --- | --- |
+| **GameMode** | "게임" 이라는 것의 개념은 두 개의 클래스로 나뉩니다. [](Gameplay/Framework/GameMode) 는 게임의 규칙이나 승리 조건같은 것이 포함된 게임의 정의로, 서버에만 존재합니다. 보통은 플레이 도중 바뀌는 데이터는 많이 없어야 하며, 클라이언트에서 알아야 하는 트랜션트(휘발성) 데이터는 반드시 없어야 할 것입니다. |
+| **GameState** | [GameState](Gameplay/Framework/GameMode) 에는 접속된 플레이어 목록, 점수, 체크 게임에서 말들의 위치, 오픈 월드 게임에서 완료한 퀘스트 목록 등과 같은 것이 포함될 수 있는 게임 상태가 포함됩니다. GameState 는 서버와 모든 클라이언트에 존재하며, 최신 상태 유지를 위해 자유롭게 리플리케이트 가능합니다. |
+| **PlayerState** | 인간 플레이어 또는 플레이어인 척 하는 봇과 같은 게임 참여자의 상태를 말합니다. 게임의 일부로써 존재하는 플레이어가 아닌 AI 에는 PlayerState 가 없습니다. PlayerState 에 적합한 예제 데이터라면, 플레이어 이름, 점수, MOBA 게임류에서의 대전상대 레벨, CTF 게임에서 플레이어가 현재 깃발을 운반중인지 여부 등입니다. 모든 플레이어에 대한 PlayerState 는 (PlayerController 와는 달리) 모든 머신에 존재하며, 동기화 상태 유지를 위해 자유로이 리플리케이트 가능합니다. |
## 프레임워크 클래스 관계
diff --git a/Engine/Documentation/Source/Gameplay/Framework/UIAndHUD/UIAndHUD.INT.udn b/Engine/Documentation/Source/Gameplay/Framework/UIAndHUD/UIAndHUD.INT.udn
index 206584fe2048..cbbe2b9a8811 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/UIAndHUD/UIAndHUD.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/UIAndHUD/UIAndHUD.INT.udn
@@ -3,6 +3,10 @@ Title:User Interfaces & HUDs
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:Guides and information for artists and programmers creating user interfaces such as menus and HUDs.
Version: 4.9
+topic-image:Gameplay/Framework/hud_lander.png
+parent:Gameplay/Framework
+order:6
+type:overview
-ゲームがとプレイヤーとどのようにコミュニケーションし、相互作用するかという問題は極めて重要です。**ユーザー インターフェース** (UI) と **ヘッドアップ ディスプレイ** (HUD) は、ゲームについての情報をプレイヤーに与えたり、場合によってはプレイヤーがゲームと相互に作用できるようにします。
+ゲームがプレイヤーとどのようにコミュニケーションし、相互作用するかという問題は極めて重要です。**ユーザー インターフェース** (UI) と **ヘッドアップ ディスプレイ** (HUD) は、ゲームについての情報をプレイヤーに与えたり、場合によってはプレイヤーがゲームと相互に作用できるようにします。
アンリアル エンジン 4 (UE4) には、UI と HUD を作成するためのいくつかの方法があります。`Canvas` クラスを使用すると、ローレベルでスクリーンに直接描画が可能になり、ワールド上にオーバーレイできます。
@@ -48,7 +52,7 @@ HUD とは、ゲームプレイ中にスクリーン上でオーバーレイ表
## HUD
-**HUD** は、スクリーン上にオーバーレイする要素を表示するための基本オブジェクトです。ゲーム内でユーザーがコントロールするすべてのプレイヤーは、各自で
+**HUD** は、スクリーン上にオーバーレイされる要素を表示するための基本クラスです。ゲーム内でユーザーがコントロールするすべてのプレイヤーは、各自で
`AHUD` クラスのインスタンスを持ち、それらは個々のビューポートに描画されます。分割スクリーンのマルチプレイヤー ゲームの場合、
複数のビューポートが同じスクリーンを共有しますが、各 HUD は各自のビューポートに描画します。使用する HUD のタイプやクラスは、
使用しているゲームタイプによって指定されます。
diff --git a/Engine/Documentation/Source/Gameplay/Framework/UIAndHUD/UIAndHUD.KOR.udn b/Engine/Documentation/Source/Gameplay/Framework/UIAndHUD/UIAndHUD.KOR.udn
index 9047efaaf5c8..75da3a7a4b0b 100644
--- a/Engine/Documentation/Source/Gameplay/Framework/UIAndHUD/UIAndHUD.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Framework/UIAndHUD/UIAndHUD.KOR.udn
@@ -1,9 +1,13 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:유저 인터페이스와 HUD
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:메뉴와 HUD 같은 유저 인터페이스를 만드는 아티스트와 프로그래머를 위한 정보와 안내서입니다.
Version: 4.9
+topic-image:Gameplay/Framework/hud_lander.png
+parent:Gameplay/Framework
+order:6
+type:overview
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/ActorInput" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/ActorInputOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/ActorInputOverview.JPN.udn
index b00c0433e65f..d84c533cf1ff 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/ActorInputOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/ActorInputOverview.JPN.udn
@@ -1,27 +1,21 @@
-INTSourceChangelist:2815879
+INTSourceChangelist:3429254
Availability:Public
Title:アクタに入力を設定する操作手順
Crumbs: %ROOT%, Gameplay
Description:UE4 でアクタに入力を設定するための操作ガイド
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Intermediate
+type:overview
order:9
ゲーム開発中に、レベル内のアクタにプレイヤーが何らかの **入力** をできるようにさせたい場合があります。例えば、プレイヤーが近づくと宝物箱が開くようにしたり、ライトのオンオフの切り替えができたり、あるいはプレイヤーがボタンを押すと、何らかの影響を与えるインタラクティブなオブジェクトが考えられます。
アクタに入力を設定すると、プレイヤー入力にそのアクタが反応する方法とタイミングをある程度制御できるようになります。詳細は、以下の **設定** セクションのリンクを参照してください。
-## セットアップ
+## 実装ガイド
-ブループリントを使用して **アクタに入力を設定する方法** については、以下のリンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\ActorInput\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/ActorInput" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/ActorInputOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/ActorInputOverview.KOR.udn
index 7c81999f041f..dc1d045fa2da 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/ActorInputOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/ActorInputOverview.KOR.udn
@@ -1,27 +1,21 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:액터에 입력 구성
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 액터에 입력을 구성하는 비법 안내서입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:9
게임 개발시 플레이어가 레벨의 액터에 일정한 형태의 **입력** 이 가능하도록 하고 싶을 때가 있습니다. 예를 들어 플레이어가 다가가서 열 수 있도록 하고픈 보물상자라든가, 껐다 켰다 할 수 있는 라이트라든가, 기타 플레이어가 버튼을 눌러 어떤 식으로든 영향을 끼치고자 하는 상호작용형 오브젝트가 있을 수 있습니다.
액터에 입력을 구성하면 액터가 언제 어떻게 플레이어 입력에 반응하는지에 대한 일정 수준의 제어가 가능합니다. 자세한 정보는, 아래 **구성** 부분의 링크를 참고하세요.
-## 구성
+## 구현 안내
-블루프린트를 사용한 **액터에 대한 입력 구성** 관련 상세 정보는 다음 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\ActorInput\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/ActorInput" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.INT.udn
index 068fcf83651d..8f31ed14f54c 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.INT.udn
@@ -3,6 +3,7 @@ Title:Setting Up Input on an Actor in Blueprints
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\ActorInput
Description:A How To Guide for setting up input on an Actor in Blueprints.
Version: 4.9
+type:how-to
SkillLevel: Intermediate
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.JPN.udn
index a0ef93e030f2..5fae3f3e5184 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:2699852
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントでアクタに入力を設定する操作手順
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\ActorInput
Description:ブループリントでアクタに入力を設定するためのガイド
Version:4.9
+type:how-to
SkillLevel:Intermediate
[TOC (start:2 end:2)]
@@ -15,7 +16,7 @@ SkillLevel:Intermediate
## アクタの入力を有効にする
- _この例では、**Blueprint First Person Template with Starter Content** を使用します。_
+ _この例では、**スターターコンテンツを含む Blueprint First Person Template ** を使用します。_
以下の方法で、アクタの入力を有効にします。
@@ -46,7 +47,7 @@ SkillLevel:Intermediate

-上記の例では、前述の方法でアクタの入力を有効にしてから、 **E** Key Event を追加しました。E キーが押されると、アクタへ入力を与えないように、画面に何らかのテキストを表示してアクタの入力を無効にします。
+上記の例では、前述の方法でアクタの入力を有効にしてから、 **E** Key Event を追加しました。**E** キーが押されると、アクタへ入力を与えないように、画面に何らかのテキストを表示してアクタの入力を無効にします。
**Enable Input** ノードと同様、 **Disable Input** ノードは **Target** と **Player Controller** を指定する必要があります。
@@ -75,7 +76,7 @@ SkillLevel:Intermediate

-1. **[Trigger]** を **右クリック** し、 **Add Event -> Add OnComponentEndOverla** を選びます。
+1. **[Trigger]** を **右クリック** し、 **[Add Event -> Add OnComponentEndOverla]** を選びます。

@@ -97,11 +98,11 @@ SkillLevel:Intermediate
プレイヤーがトリガー領域に入る時のみ入力は有効になり、プレイヤーがトリガーを離れると無効になります。これにより、プレイヤーがワールドのどこからでもアクタに影響してしまうことを防ぎ、作成したトリガー領域の内部にいる場合のみに制限されます。
-1. **E** Key イベントを **右クリック** し **Print String** ノードに追加します。
+1. **E** Key Event を **右クリック** し **Print String** ノードに追加します。

-1. **コンパイル** し **保存** してから、ブループリントを終了します(もし警告が表示されても、無視して次のステップへ進んでください)。
+1. **コンパイル** し **保存** してから、ブループリントを終了します (もし警告が表示されても、無視して次のステップへ進んでください)。
1. **Blueprint_CeilingLight** をレベルにドラッグし、 **[Play]** ボタンをクリックしてエディタで再生します。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.KOR.udn
index 91a4e2672972..4070f35472be 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ActorInput/Blueprints/ActorInput_BP.KOR.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트로 액터에 입력 구성
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\ActorInput
Description:블루프린트로 액터에 입력을 구성하는 비법 안내서입니다.
Version: 4.9
+type:how-to
SkillLevel: Intermediate
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.INT.udn
index a59b0cea0a11..b08ae1c7301e 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\AddingComponents
Description:A How To Guide for Adding Components in Blueprints.
Version: 4.9
SkillLevel: Intermediate
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.JPN.udn
index 6e7da9973f66..10ad60acc418 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:2699877
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントにコンポーネントを追加する
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\AddingComponents
Description:ブループリントにコンポーネントを追加するための操作ガイド
Version:4.9
SkillLevel:Intermediate
+type:how-to
[TOC (start:2 end:2)]
@@ -16,7 +17,7 @@ SkillLevel:Intermediate
以下は、Blueprint アクタにコンポーネントを追加するステップです。
-1. **コンテンツ ブラウザ** の **「StarterContent/Props」** フォルダの **SM_Bush** アセットを **右クリック** し、**Asset Actions** まで上方にスクロールし、**[Create Blueprint Using This...]** を選択します。
+1. **コンテンツ ブラウザ** の **「StarterContent/Props」** フォルダの **SM_Bush** アセットを **右クリック** し、**Asset Actions** までスクロールし、**[Create Blueprint Using This...]** を選択します。

@@ -38,7 +39,7 @@ SkillLevel:Intermediate
このウィンドウでコンポーネントをブループリントに追加できるようになります。この場合だと、炎とオーディオ エフェクトを追加できます。
-1. **[Audio]** をクリックして Audio コンポーネントを追加し、 **[Components]** ウィンドウの下に追加された **[Details]** ウィンドウに注目してください。
+1. **[Audio]** をクリックして Audio コンポーネントを追加すると、 **[Components]** ウィンドウの下の **[Details]** ウィンドウにデータが入ります。

@@ -74,10 +75,10 @@ SkillLevel:Intermediate
茂みからは炎があがり、炎のオーディオ エフェクトが再生されていることが分かります。茂みから遠ざかるとオーディオは徐々に小さくなり、茂みに近づくと徐々に大きくなります。
-これで、3 つのコンポーネントで構成される Blueprint アクタが作成されました。レベル内に置いた茂みにオーディオと炎を付けることも可能ですが、それだと要素がバラバラになるので、 3 つのコンポーネントで構成されるブループリントを 1 つ作成した方が管理は遥かに楽になります。
+これで、3 つのコンポーネントで構成される Blueprint アクタが作成されました。レベルに茂みを配置し、茂みの中にオーディオを配置して、茂み内に炎を配置することも可能ですが、それだと要素がバラバラになるので、 3 つのコンポーネントで構成されるブループリントを 1 つ作成した方が管理は遥かに楽になります。
-## ブループリントのコンポーネントで作業する
+## ブループリントでコンポーネントの作業をする
ブループリント内の各コンポーネントはブループリント自体から、または外部のブループリントからのアクセスと修正が可能です。例えば、 Car ブループリントがあり、コンポーネントとして Engine ブループリントがあった場合、Engine ブループリント内の値を調整することにより Car が動作する方法を修正することができます。
@@ -85,7 +86,7 @@ SkillLevel:Intermediate

-これらのコンポーネントをひとつづつグラフ内に配置し、ブループリント スクリプトによるアクセスと修正が可能です (以下の例を参照)。
+これらのコンポーネントをひとつずつグラフ内に配置し、ブループリント スクリプトによるアクセスと修正が可能です (以下の例を参照)。

@@ -94,7 +95,7 @@ SkillLevel:Intermediate
## 追加のリソース
-ブループリントにコンポーネントを追加することに関係するコンセプトを、以下のリンクで参照することができます。
+ブループリントにコンポーネントを追加することに関する考え方を、以下のリンクで参照することができます。
* [ブループリント ユーザーガイド](Engine/Blueprints/UserGuide)
* [ブループリントでコンポーネントを使用する](Engine/Blueprints/UserGuide/Components)
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.KOR.udn
index 0f98026166c1..b016e5a1142c 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/Blueprints/Components_BP.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 컴포넌트 추가
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\AddingComponents
Description:블루프린트에서 컴포넌트를 추가하는 방법 안내입니다.
Version: 4.9
SkillLevel: Intermediate
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.INT.udn
index 76a78eefa420..434df2ae5833 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.INT.udn
@@ -4,21 +4,15 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Adding Components to Actors in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:13
**Components** are a special type of **Object** designed to be used as sub-objects within **Actors**. These are generally used in situations where it is necessary to have easily swappable parts in order to change the behavior or functionality of some particular aspect of the owning Actor. For instance, a car is controlled and moves very differently from an aircraft, which is controlled and moves differently from a boat, etc.; yet all of these are vehicles that share other commonalities. By using a Component to handle the controls and movement, the same vehicle can easily be made to behave like any one of these specific types.
-## Setup
+## Implementation Guides
-To learn more about **Adding Components to an Actor using Blueprints**, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\AddingComponents\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/AddingComponents" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.JPN.udn
index 664ecb328048..dc27bdd071e6 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.JPN.udn
@@ -1,25 +1,19 @@
-INTSourceChangelist:2815879
+INTSourceChangelist:3429254
Availability:Public
Title:アクタにコンポーネントを追加する
Crumbs: %ROOT%, Gameplay
Description:UE4 でアクタにコンポーネントを追加するための操作ガイド
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Intermediate
+type:overview
order:13
-**コンポーネント** は、**アクタ** 内のサブオブジェクトとして使用するように設計された特殊な **オブジェクト** です。コンポーネントは、所有するアクタの特定の動作や機能を変更するために、簡単に取り替えられる部分が必要な状況で一般的に使用されます。例えば、車の制御や動きは飛行機とは異なり、飛行機の制御や動きは船とは異なります。しかし、これらはすべて他に共通点を持つ乗り物です。コンポーネントを使って制御や動きを処理することにより、いずれかの特定タイプと同様の動作をする乗り物を簡単に作成できます。
+**コンポーネント** は、**アクタ** 内のサブオブジェクトとして使用するように設計された特殊な **オブジェクト** です。コンポーネントは、所有するアクタの特定の動作や機能を変更するために、簡単に取り替えられる部分が必要な状況で一般的に使用されます。例えば、車の制御や動きは飛行機とは異なり、飛行機の制御や動きは船とは異なります。しかし、これらはすべて他に共通点を持つビークル (乗り物) です。コンポーネントを使って制御や動きを処理することにより、他のタイプと同様の動作をする乗り物を簡単に作成できます。
-## セットアップ
+## 実装ガイド
-ブループリントを使用して **アクタにコンポーネントを追加する方法** については、以下のリンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\AddingComponents\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/AddingComponents" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.KOR.udn
index cf86f0cfcd68..b55e9a98b835 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/AddingComponents/ComponentsOverview.KOR.udn
@@ -1,25 +1,19 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:액터에 코멘트 추가
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 액터에 컴포넌트를 추가하는 비법 안내서입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:13
**Component**, 컴포넌트는 **액터** 안에서 하위 오브젝트로 사용하도록 디자인된 특수한 유형의 **오브젝트** 입니다. 일반적으로 액터 특정 부분의 작동방식이나 함수성을 쉽게 교환할 수 있는 부속처럼 만들고자 하는 상황에 사용됩니다. 예를 들어 차량의 제어 및 이동 방식은 비행기와는 매우 다르며, 보트 등과도 다릅니다. 하지만 이 모두는 탈것이라는 공통 속성이 있습니다. 컴포넌트를 사용하여 조작 및 이동 처리를 함으로써, 그 중 한 가지 유형처럼 작동하는 비히클을 쉽게 만들 수 있습니다.
-## 구성
+## 구현 안내
-블루프린트를 사용하여 **액터에 컴포넌트를 추가하는** 법은 아래 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\AddingComponents\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/AddingComponents" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.INT.udn
index 281cb3da5d94..29cf22570247 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.INT.udn
@@ -3,25 +3,13 @@ Title:6. Animation Blueprint - Crouch States
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:Continuing on setting up the Animation Blueprint for our Character, in this section we set up the Crouch States.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:6
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [Previous Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [Next Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
In this section, we continue working on the **Animation Blueprint** and the **State Machine** focusing on the **Crouch** states.
@@ -96,4 +84,4 @@ In this section, we continue working on the **Animation Blueprint** and the **St
1. **Compile** and **Save** the Animation Blueprint.
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.JPN.udn
index b77558305b47..d7e4ef5cb75e 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.JPN.udn
@@ -1,25 +1,16 @@
-Availability:Public
+INTSourceChangelist:3429254
+Availability:Public
Title:6.Animationブループリント - Crouch ステート
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
-Description:引き続きキャラクターに Animation ブループリントの設定を行います。このセクションでは Crouch States の設定をします。
+Description:引き続きキャラクターに Animation ブループリントの設定を行います。このセクションでは Crouch ステートの設定をします。
+Version:4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
+SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:6
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [前のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクターの移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
引き続き **Animation ブループリント** と **ステートマシン** を使って、このセクションでは **Crouch** ステートに焦点を当てていきます。
@@ -58,7 +49,7 @@ Description:引き続きキャラクターに Animation ブループリントの
ここで、 Crouch Walk から Crouch Idle (および Crouch Idle から Crouch Walk) になる移行を設定します。Crouch Idle から Standing Idle (および Standing Idle から Crouch Idle) になる遷移を設定します。
- 必要であれば、遷移がスムーズになるように、グラフ上にノードを移動させることもできます。
+ 必要であれば、遷移がスムーズになるように、グラフ上でノードを移動させることもできます。
1. **Idle_Rifle_Hip** から **Crouch_Idle_Rifle_Hip** への **遷移ルール** を開きます。
@@ -94,4 +85,4 @@ Description:引き続きキャラクターに Animation ブループリントの
1. Animation ブループリントを **コンパイル** し **保存** します。
-%Steps%
\ No newline at end of file
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.KOR.udn
index 887a8ef35b76..1a4782122f5f 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Crouch/Crouch_ABP.KOR.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:6. 애니메이션 블루프린트 - 웅크리기 상태
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:캐릭터의 애니메이션 블루프린트 구성을 계속해서, 이번에는 웅크리기 상태를 구성합니다.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:6
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [예전 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [다음 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
여기서는 **애니메이션 블루프린트** 와 **스테이트 머신** 작업을 이어 **Crouch** 웅크리기 상태에 초점을 맞춰보겠습니다.
@@ -97,4 +85,4 @@ SkillLevel:Advanced
1. 애니메이션 블루프린트를 **컴파일** 하고 **저장** 합니다.
-%Steps%
\ No newline at end of file
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.INT.udn
index 1ad0aa1697aa..f7e1cb76c53e 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.INT.udn
@@ -3,25 +3,13 @@ Title:7. Animation Blueprint - Jog State
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:This section focuses on setting up the Jog States for our Character.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:7
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [Previous Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [Next Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
Continuing in the **Animation Blueprint** and **State Machine**, this section we set up the **Jog** state and transitions to/from it.
@@ -98,4 +86,4 @@ Continuing in the **Animation Blueprint** and **State Machine**, this section we
1. **Compile** and **Save** the Animation Blueprint.
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.JPN.udn
index 067949196b17..5c99387a8cd1 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.JPN.udn
@@ -1,27 +1,18 @@
-Availability:Public
+INTSourceChangelist:3429254
+Availability:Public
Title:7.Animation ブループリント - Jog ステート
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:このセクションではキャラクターの Jog ステートの設定に焦点を当てます。
+Version:4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
+SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:7
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [前のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクターの移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
+[NAV]
-%Steps%
-
-引き続き **Animation ブループリント** と **ステートマシン** を使って、このセクションでは **Jog** ステートと遷移の設定を行います。
+引き続き **Animation ブループリント** と **ステートマシン** を使って、このセクションでは **Jog** ステートへの遷移、**Jog** ステートからの遷移の設定を行います。
1. ステートマシン グラフに戻って **アセットブラウザ** で **Jog_BS** をグラフにドラッグします。
@@ -37,19 +28,19 @@ Description:このセクションではキャラクターの Jog ステートの

-1. **Crouch_Idle_Rifle_Hip** から **Jog_BS** への **遷移ルール** を開いて、以下のグラフを再度作成します。
+1. **Crouch_Idle_Rifle_Hip** から **Jog_BS** への **Transition Rule (遷移ルール)** を開いて、以下のグラフを再度作成します。

Is Jogging が _True_ でプレイヤーの速度が 0 より大きい場合、 Jogging Blend Space になります。
-1. ステートマシン グラフに戻り、 **Jog_BS** から **Crouch_Idle_Rifle_Hip** への **遷移ルール** を開きます。
+1. ステートマシン グラフに戻り、 **Jog_BS** から **Crouch_Idle_Rifle_Hip** への **Transition Rule** を開きます。
-1. **遷移ルール** 内のグラフを以下のように作成します。
+1. **Transition Rule** 内のグラフを以下のように作成します。

- ここで、プレイヤーが Jog ステートから Crouch ステート になれるようにします (走るのをやめたら Crouch に戻ります)。
+ ここで、プレイヤーが Crouch ステートから Jog ステートになれるようにします (走るのをやめたら Crouch に戻ります)。
1. ステートマシン グラフに戻り **Crouch_BS** から **Jog_BS** へ、および **Jog_BS** から **Crouch_BS** への **遷移** を作成します。
@@ -96,4 +87,4 @@ Description:このセクションではキャラクターの Jog ステートの
1. Animation ブループリントを **コンパイル** し **保存** します。
-%Steps%
\ No newline at end of file
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.KOR.udn
index 8833a25b7408..2f00510e492c 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jog/Jog_ABP.KOR.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:7. 애니메이션 블루프린트 - 조깅 상태
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:캐릭터의 조깅 상태 구성에 초점을 맞춥니다.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:7
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [예전 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [다음 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
**애니메이션 블루프린트** 와 **스테이트 머신** 작업을 이어서, 여기서는 **Jog** (조깅) 상태와 거기서 나가고 들어오는 전환을 구성하겠습니다.
@@ -99,4 +87,4 @@ SkillLevel:Advanced
1. 애니메이션 블루프린트를 **컴파일** 하고 **저장** 합니다.
-%Steps%
\ No newline at end of file
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.INT.udn
index 19548996af75..65219cbd9b21 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.INT.udn
@@ -3,25 +3,13 @@ Title:8. Animation Blueprint - Jump States
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:Moving on in our Animation Blueprint setup, here we set up the conditions for Jumping.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:8
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [Previous Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [Next Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
Next, we configure the **Jump** states inside the **State Machine**. We are going to have two Jump states, one for when the player is standing still and presses the Jump key and another for when the player is moving (Jogging, Crouch Walking, or Walking). We will use two different animations, one for stationary and one for movement.
@@ -87,4 +75,4 @@ Next, we configure the **Jump** states inside the **State Machine**. We are goin
1. **Compile** and **Save** the Animation Blueprint.
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.JPN.udn
index fe9dd40f1833..a6239c601435 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.JPN.udn
@@ -1,32 +1,20 @@
-INTSourceChangelist:2740691
+INTSourceChangelist:3429254
Availability:Public
Title:8.Animation ブループリント - Jump ステート
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
-Description:Animation ブループリントの設定です。ここではジャンプする条件を設定します。
+Description:Animation ブループリントを設定します。ここではジャンプする条件を設定します。
Version:4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:8
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [前のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクターの移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
**ステートマシン** 内で **Jump** ステートを設定します。2 種類の Jump ステートを設定します。 1 つは静止した状態から、もう 1 つはプレイヤーが移動中 (Jogging、Crouch Walking または Walking) に Jump キーを押します。静止と移動という、 2 つの異なるアニメーションを使います。
-1. ステートマシン グラフで、 **アセットブラウザ** から **Jump_From_Jog** をドラッグします。
+1. ステートマシン グラフで、 **アセットブラウザ** から **Jump_From_Jog** アニメーションをドラッグします。

@@ -38,7 +26,7 @@ SkillLevel:Advanced
1. ステートマシン グラフに戻り、 **Jump_From_Jog** から **Jog_BS** への **遷移ルール** を開きます。
-1. **遷移ルール** グラフで、 **TimeRemaining for 'Jump_From_Jog'** ノードを **右クリック** して追加します。
+1. **遷移ルール** グラフで、**右クリック** して **TimeRemaining for 'Jump_From_Jog'** ノードを追加します。

@@ -46,7 +34,7 @@ SkillLevel:Advanced

- これにより、Jog アニメーションから Jump するまでの残り時間が確認でき、 0.1 以下の場合は Jump から Job Blend Space へ遷移させます。他のステートへ移行する前に Jump アニメーションを確実に終了させる便利な方法です。
+ これにより、Jog アニメーションから Jump するまでの残り時間が確認でき、 0.1 以下の場合は Jump から Jog Blend Space へ遷移させます。他のステートへ遷移する前に Jump アニメーションを確実に終了させる便利な方法です。
1. ステートマシン グラフへ戻り、 **Walk_BS** と **Jump_From_Jog** 間の **遷移** を作成します。
@@ -62,7 +50,7 @@ SkillLevel:Advanced

-1. ステートマシン グラフで、 **アセットブラウザ** から **Jump_From_Stand** をドラッグします。
+1. ステートマシン グラフで、 **アセットブラウザ** から **Jump_From_Stand** アニメーションをドラッグします。

@@ -76,7 +64,7 @@ SkillLevel:Advanced

- プレイヤーが Jump キーを押したか、しゃがんでいないことを、ここで確認します。
+ プレイヤーが Jump キーを押すとしゃがんでいないことを、ここで確認します。
1. ステートマシン グラフに戻り、 **Jump_From_Stand** から **Idle_Rifle_Hip** への **遷移ルール** を開きます。
@@ -88,4 +76,4 @@ SkillLevel:Advanced
1. Animation ブループリントを **コンパイル** し **保存** します。
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.KOR.udn
index 533ff36ce705..90dc76054d3b 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Jump/Jump_ABP.KOR.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:8. 애니메이션 블루프린트 - 점프 상태
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:애니메이션 블루프린트 셋업을 이어, 점프에 대한 조건을 구성해 줍니다.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:8
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [예전 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [다음 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
다음으로 **스테이트 머신** 안에서 **Jump** (점프) 상태를 구성하겠습니다. 두 가지 점프 상태를 만들텐데, 하나는 플레이어가 가만히 서있는 상태에서 점프 키를 눌렀을 때, 다른 하나는 플레이어가 움직이는 (조깅, 웅크려 걷기, 걷기) 상태에서 눌렀을 때 입니다. 애니메이션도 정지 상태와 이동 상태 두 가지를 사용하도록 하겠습니다.
@@ -88,4 +76,4 @@ SkillLevel:Advanced
1. 애니메이션 블루프린트를 **컴파일** 하고 **저장** 합니다.
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.INT.udn
index 104d96dc0d14..c72b773340aa 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.INT.udn
@@ -3,24 +3,13 @@ Title:9. Animation Blueprint - Prone State
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:The final state to set up for our character is the Prone State which will complete our character.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:9
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [Previous Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
In this final section, we finish our **State Machine** by adding a **Prone** state along with the transition to/from it.
@@ -112,66 +101,4 @@ You should now have a fully animated character that can move around your level i
There are several other states that can be added to this State Machine (Death, Reload, etc.) or you could swap out the existing motions with your own. In either case, you should now have an understanding of how to set up Character Movement in **Blueprints**, define animation states with an **Animation Blueprint**, and how to blend animations through **Blend Spaces**.
-%Steps%
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.JPN.udn
index adbf39b679d7..107b7c7d4ec3 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.JPN.udn
@@ -1,24 +1,16 @@
-Availability:Public
+INTSourceChangelist:3429254
+Availability:Public
Title:9.Animation ブループリント - Prone ステート
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:キャラクターのステート設定の最後は Prone ステートです。これでキャラクターが完成します。
+Version:4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
+SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:9
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクターの移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
最後のセクションでは、 **Prone** ステートおよびその移行を追加して **ステートマシン** を完了します。
@@ -26,29 +18,29 @@ Description:キャラクターのステート設定の最後は Prone ステー

-1. **Idle_Rifle_Hip** から **Stand_To_Prone** への **遷移** を作成し、 **遷移ルール** をクリックします。
+1. **Idle_Rifle_Hip** から **Stand_To_Prone** への **移行** を作成し、 **移行ルール** をクリックします。

-1. **Idle_Rifle_Hip** から **Stand_To_Prone** への **遷移ルール** を開いて、以下のグラフを再度作成します。
+1. **Idle_Rifle_Hip** から **Stand_To_Prone** への **移行ルール** を開いて、以下のグラフを再度作成します。

-1. ステートマシン グラフで、 **アセットブラウザ** から **Prone_Idle** をドラッグします。
+1. ステートマシン グラフに戻り、 **アセットブラウザ** から **Prone_Idle** アニメーションをドラッグします。

-1. **Stand_To_Prone** から **Prone_Idle** への **遷移** を作成します。
+1. **Stand_To_Prone** から **Prone_Idle** への **移行** を作成します。
-1. **Prone_To_Stand** アニメーションを **アセットブラウザ** からドラッグして **Prone_Idle** から **Prone_To_Stand** への **遷移** を作成します。
+1. **Prone_To_Stand** アニメーションを **アセットブラウザ** からドラッグして **Prone_Idle** から **Prone_To_Stand** への **移行** を作成します。
-1. **Prone_To_Stand** から **Idle_Rifle_Hip** への **遷移** を作成します。
+1. **Prone_To_Stand** から **Idle_Rifle_Hip** への **移行** を作成します。
-1. **Stand_To_Prone** から **Prone_Idle** への **遷移ルール** をクリックします。
+1. **Stand_To_Prone** から **Prone_Idle** への **移行ルール** をクリックします。

-1. **遷移ルール** の **[Details (詳細)]** パネルで、 **BlendSetting** の **持続時間** を **0.0** に設定します。
+1. **移行ルール** の **[Details]** パネルで、 **BlendSetting** の **Duration (持続時間)** を **0.0** に設定します。

@@ -60,7 +52,7 @@ Description:キャラクターのステート設定の最後は Prone ステー
Prone がまだ _true_ になっているか、そして Idle Prone ステートになる前に Prone になったアニメーションが終了しているかどうかを確認します。
-1. ステートマシン グラフに戻り、 **Prone_Idle** から **Prone_To_Stand** への **遷移ルール** を開きます。
+1. ステートマシン グラフに戻り、 **Prone_Idle** から **Prone_To_Stand** への **移行ルール** を開きます。

@@ -70,18 +62,20 @@ Description:キャラクターのステート設定の最後は Prone ステー
Prone が _true_ でなくなっている場合、立った姿勢へ戻るシーケンスを開始します。
-1. **Prone_To_Stand** から **Idle_Rifle_Hip** への **遷移ルール** をクリックします。
+1. **Prone_To_Stand** から **Idle_Rifle_Hip** への **移行ルール** をクリックします。

-1. **遷移ルール** の **[Details (詳細)]** パネルで、 **BlendSetting** の **持続時間** を **0.0** に設定します。
+1. **移行ルール** の **[Details]** パネルで、 **BlendSetting** の **Duration (持続時間)** を **0.0** に設定します。

-1. **Prone_To_Stand** から **Idle_Rifle_Hip** への **遷移ルール** を開き、以下のグラフを作成します。
+1. **Prone_To_Stand** から **Idle_Rifle_Hip** への **移行ルール** を開き、以下のグラフを作成します。

+ **==** ノードが false (チェックが外されている) に設定されていること、つまり **Prone** が true ではないようにします。
+
1. ステートマシン グラフ全体は、このような感じになっているはずです (設定によってノードの配置は異なります)。
[REGION:lightbox]
@@ -92,24 +86,20 @@ Description:キャラクターのステート設定の最後は Prone ステー
1. Animation ブループリントを **コンパイル** し **保存** します。
-1. **コンテント ブラウザ** に戻り、「 **AnimStarterPack** 」フォルダ、次に **Prone_To_Stand** アニメーションを開きます。
+1. **コンテンツ ブラウザ** に戻り、「 **AnimStarterPack** 」フォルダ、次に **Prone_To_Stand** アニメーションを開きます。
1. **[Anim Asset Details]** ウィンドウで、 **[アニメーション]** セクションの **Rate Scale** 値を **1.4** に設定します。

- これにより、アニメーションの再生レートが若干速くなり、 Prone から Standing への遷移がスムーズに見えます。
+ これにより、アニメーションの再生レートが若干速くなり、 Prone から Standing への移行がスムーズに見えます。
-1. **コンテンツブラウザ** とメイン ツールバーの **[Save (保存)]** ボタンをクリックして、セットとレベルを保存します。
+1. **コンテンツブラウザ** とメイン ツールバーの **[保存]** ボタンをクリックして、アセットとレベルを保存します。
1. **[Play (プレイ)]** ボタンをクリックして、エディタで再生します。
-完全にアニメートされ、レベル内で様々な動き方をするキャラクターが出来上がりました。歩く、しゃがんで歩く、小走り、 (静止姿勢あるいは移動姿勢からの) ジャンプ、Standing ステートあるいは Jogging ステートから Prone (前かがみ)、といった動きが可能です。
+完全にアニメートされ、レベル内で様々な動き方をするキャラクターが出来上がりました。歩く、しゃがんで歩く、小走り、 (静止姿勢あるいは移動姿勢からの) ジャンプ、Standing ステートあるいは Jogging ステートからProne (前かがみ)、といった動きが可能です。
このステートマシンにはまだ他のステート (デス (機能停止)、再ロードなど) の追加が可能ですし、既存の動きを独自のものにスワップアウトすることができます。いずれにしても、 **ブループリント** でのキャラクターの移動の設定方法、 **Animation ブループリント** を使ったアニメーション ステートの定義方法、**Blend Spaces** でのアニメーションのブレンド方法を理解できていることでしょう。
-%Steps%
-
-
-
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.KOR.udn
index 4f36ecdd20ea..69784da4b6be 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Prone/Prone_ABP.KOR.udn
@@ -1,27 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:9. 애니메이션 블루프린트 - 엎드리기 상태
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:캐릭터에 Prone, 엎드리기 상태를 구성하여 마무리합니다.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:9
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [예전 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
이번 최종회에서는 **Prone** 엎드리기 스테이트와 거기서 나가고/들어오는 트랜지션을 추가하는 것으로 **스테이트 머신** 을 마무리하겠습니다.
@@ -113,66 +102,4 @@ SkillLevel:Advanced
이 스테이트 머신에 여러가지 (사망, 재장전 등) 상태를 추가할 수도 있고, 기존 모션을 자체 제작한 것으로 바꿀 수도 있습니다. 어느 경우든 이제 **블루프린트** 로 캐릭터 무브먼트를 구성하는 법, **애니메이션 블루프린트** 로 애니메이션 스테이트 정의하는 법, **블렌드 스페이스** 를 통해 애니메이션을 블렌딩하는 법이 이해가 가실 것이라 믿습니다.
-%Steps%
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.INT.udn
index 48588e1af6f5..295c355ab931 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.INT.udn
@@ -3,25 +3,13 @@ Title:5. Animation Blueprint - Idle and Walk States
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:Here in this step, we'll create the logic for Idle and Walking states for our character in our Animation Blueprint.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:5
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [Previous Step](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [Next Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
In this section, we will set up the **Animation Blueprint** that will determine what animations to play based on the actions that are taken in game by the player. We will then set up a **State Machine** and create an **Idle** and **Walk** state and set up the transition between each state.
@@ -108,4 +96,4 @@ The steps below will show you how to set up the Animation Blueprint:
1. **Compile** and **Save** the Animation Blueprint.
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.JPN.udn
index 70b044ae927d..eae755c0863a 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.JPN.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:2740691
+INTSourceChangelist:3429254
Availability:Public
Title:5.Animation ブループリント - Idle ステートと Walk ステート
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:このステップでは、Animation ブループリントでキャラクターの Idle ステートおよび Walking ステートのロジックを作成します。
Version:4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:5
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [前のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクターの移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
このセクションでは、プレイヤーがゲーム内で取るアクションに合わせて、どのアニメーションを再生するかを判断する **Animation ブループリント** を設定します。その後で **ステートマシン** を設定し、 **Idle** と **Walk** ステートを作成し、両ステート間の遷移を設定します。
@@ -63,7 +51,6 @@ Animation ブループリントは以下の方法で設定します。
1. State Machine を **ダブルクリック** して開きます。
1. **Asset Browser** ウィンドウで、 **Idle** を探して **Idle_Rifle_Hip** アセットをグラフにドラッグします。
-

1. **Entry** ノードを **Idle_Rifle_Hip** ノードに接続して、 **[Compile]** をクリックします。
@@ -109,4 +96,4 @@ Animation ブループリントは以下の方法で設定します。
1. Animation ブループリントを **コンパイル** し **保存** します。
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.KOR.udn
index 1b0910ada458..10de57bb7d73 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/AnimBlueprint_Walk/Walk_ABP.KOR.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:5. 애니메이션 블루프린트 - 대기 및 걷기 상태
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:이번 단계에서는 애니메이션 블루프린트에 캐릭터의 빈둥, 걷기 상태에 대한 로직을 만들어 주겠습니다.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:5
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [예전 단계](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [다음 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
여기서는 게임에서 플레이어가 취하는 동작에 따라 재생할 애니메이션을 결정하는 **애니메이션 블루프린트** 를 구성해 주겠습니다. 그런 다음 **스테이트 머신** 구성 후 **Idle** (대기) 및 **Walk** (걷기) 상태를 만든 다음 각 상태 트랜지션(전환) 구성을 해 주겠습니다.
@@ -109,4 +97,4 @@ SkillLevel:Advanced
1. 애니메이션 블루프린트를 **컴파일** 및 **저장** 합니다.
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.INT.udn
index 7e4ba785a9e3..6861ffcf4145 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.INT.udn
@@ -3,25 +3,13 @@ Title:4. Creating Blend Spaces
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:In this step we are going to set up Blend Spaces for our movement states so we can blend between animations when moving in different directions.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel: Advanced
+type:how-to
+type:multi-step
+order:4
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [Previous Step](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [Next Step](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
The next thing we will do to create movement for our character is to create **Blend Spaces** for each of our movement states (Walking, Jogging, and Crouch Walking). Blend Spaces are special assets that allow for blending of animations based on the values of two inputs. In our case, we will blend between forwards/backwards and left/right movement based on the character's movement Speed or Direction.
@@ -120,5 +108,4 @@ The steps below will show you how to set up the movement Blend Spaces:
1. **Save** then close the **Crouch_BS** Blend Space window.
-%Steps%
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.JPN.udn
index 133a5ff18167..ec1882855672 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.JPN.udn
@@ -1,30 +1,18 @@
-INTSourceChangelist:2740691
+INTSourceChangelist:3429254
Availability:Public
Title:4.ブレンド スペースの作成
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:このステップでは、違う方向に移動する時にアニメーション間でブレンドができるように、移動ステート用の Blend Spaces を設定します。
Version:4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:4
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [前のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクターの移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
+[NAV]
-%Steps%
-
-キャラクターに移動を作成するために、次は各移動ステート (Walking、Jogging、Crouch Walking) 用の **Blend Space** を作成します。ブレンド スペースは 2 つの入力値に基づいたアニメーションのブレンドを可能にする特殊なアセットです。ここでは、キャラクターの移動の速さと方向に合わせて、前後と左右をブレンドします。
+キャラクターを移動させるために、次は各移動ステート (Walking、Jogging、Crouch Walking) 用の **Blend Space** を作成します。ブレンド スペースは 2 つの入力値に基づいたアニメーションのブレンドを可能にする特殊なアセットです。ここでは、キャラクターの移動の速さと方向に合わせて、前後と左右をブレンドします。
[REGION:note]
Blend Space に関する詳細は、 [](Engine/Animation/Blendspaces) のページを参照してください。
@@ -38,7 +26,7 @@ Blend Space に関する詳細は、 [](Engine/Animation/Blendspaces) のペー
1. **[Pick Skeleton]** ウィンドウで、スケルトン (**UE4_Mannequin_Skeleton**) を選び、アセットに「 **Walk_BS** 」という名前を付けます。
-1. **Walk_BS** ブレンドスペースを開き、 **[Parameters]** で、 **X Axis Label** を **Direction** に **Y Axis Label** を **Speed** に設定します。
+1. **Walk_BS** ブレンドスペースを開き、 **[Parameters]** の、 **X Axis Label** を **Direction** に、**Y Axis Label** を **Speed** に設定します。
1. **X Axis Range** を **-180** から **180** に、 **X Axis Divisions** を **4** に設定します。
@@ -100,7 +88,7 @@ Blend Space に関する詳細は、 [](Engine/Animation/Blendspaces) のペー
1. **[Asset] ウィンドウ** で、 **Jog** アニメーションを探します。
-1. Jog アニメーションをグリッド上の Walk アニメーション上にドラッグして、グリッド上で歩くアニメーションを走るアニメーションに変えます。
+1. Jog アニメーションをグリッド上の Walk ポイントにドラッグして、グリッド上で歩くアニメーションを走るアニメーションに変えます。
(w:640)
@@ -121,5 +109,4 @@ Blend Space に関する詳細は、 [](Engine/Animation/Blendspaces) のペー
1. **保存** してから [**Crouch_BS** Blend Space] ウィンドウを閉じます。
-%Steps%
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.KOR.udn
index ef3a5b0c8eb8..a465eb1129a3 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/BlendSpace/BlendSpaces.KOR.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:4. 블렌드 스페이스 만들기
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:이번 단계에서는 다양한 방향 이동시의 애니메이션 블렌딩이 가능하도록 이동 상태에 대한 블렌드 스페이스 구성을 해 보도록 하겠습니다.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel: Advanced
+type:how-to
+type:multi-step
+order:4
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [예전 단계](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [다음 단계](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
다음 우리 캐릭터의 동작을 만드는 데 해 줄 작업은, 각각의 동작 (걷기, 조깅, 웅크려 걷기) 상태에 대한 **블렌드 스페이스** 를 만드는 것입니다. 블렌드 스페이스란 두 입력값에 따라 애니메이션을 블렌딩할 수 있도록 해 주는 특수 애셋으로, 여기서는 캐릭터의 이동 속도와 방향에 따라 전방/후방 및 좌/우 동작을 블렌딩하도록 하겠습니다.
@@ -121,5 +109,4 @@ SkillLevel: Advanced
1. **저장** 후 **Crouch_BS** 블렌드 스페이스 창을 닫습니다.
-%Steps%
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.INT.udn
index 4e00257bbb06..ea2de1af0e0c 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.INT.udn
@@ -3,25 +3,13 @@ Title:2. Input and the Game Mode
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:In this step we will set up the input to control our character as well as set our default pawn which is the playable character.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:2
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [Previous Step](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [Next Step](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
Here we will set up the **Input** (Game Controls) to control the character and create a **Game Mode** which will use our character.
@@ -71,5 +59,4 @@ Here we will set up the **Input** (Game Controls) to control the character and c
1. After setting both the Input and Game Mode settings, close the Project Settings Window.
-
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.JPN.udn
index 64eb4d4d68d7..82dae65c507f 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.JPN.udn
@@ -1,30 +1,18 @@
-INTSourceChangelist:2740691
+INTSourceChangelist:3429254
Availability:Public
Title:2.入力とゲームモード
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
-Description:このステップでは、キャラクターの制御だけでなくプレイ可能なキャラクターとなるデフォルトのポーンの設定を行うための入力を設定します。
+Description:このステップでは、キャラクターを制御する入力とプレイ可能なキャラクターとなるデフォルトのポーンを設定します。
Version:4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:2
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [前のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクターの移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
+[NAV]
-%Steps%
-
-このページでは、キャラクターを制御し、キャラクターに使用する **ゲームモード** を作成するための **入力** (ゲーム制御) の設定を行います。
+このページでは、キャラクターを制御する **入力** (ゲーム制御) を設定し、キャラクターを使用する **ゲームモード** を作成します。
1. **コンテンツブラウザ** 内を **右クリック** して **Game Mode** クラスの **Blueprint クラス** を作成し、「 **MyGame** 」と名前を付けます。
@@ -32,13 +20,13 @@ SkillLevel:Advanced

-1. **[Details]** パネルの **[Classes]** で、 **Default Pawn Class** を **MyCharacter** ブループリントを使用する設定にします。
+1. **[Details]** パネルの **[Classes]** で、 **Default Pawn Class** が **MyCharacter** ブループリントを使用するように設定します。

1. **コンパイル** し **保存** してから、ブループリントを閉じます。
-1. メインのエディタ ウィンドウの **メニュー バー** の **[Edit]** をクリックし **[Project Settings (プロジェクト設定)]** を選びます。
+1. メインのエディタ ウィンドウの **メニュー バー** の **[Edit]** をクリックし **[Project Settings]** を選びます。
1. プロジェクト設定で **[Engine]** セクションの **[Input]** をクリックします。
@@ -48,7 +36,7 @@ SkillLevel:Advanced
(w:480)
- 空の Bindings は上のようになっているはずです。
+ 空の Bindings はこのようになっているはずです。
1. **Bindings** を以下のように設定します (**Scale** を **A** 、 **S** そして **Mouse Y** を **-1.0** に設定するようにしてください)。
@@ -62,15 +50,14 @@ SkillLevel:Advanced
1. Project Settings の **[Project]** セクションの **[Maps & Modes]** オプションをクリックします。
-1. Maps & Modes の **Default Modes** で、 **Default GameMode** に **MyGame** ゲームモードを設定します。
+1. Maps & Modes の **Default Modes** で、 **Default GameMode** が **MyGame** ゲームモードを使用するように設定します。

[REGION:note]
- ゲームモード に関する詳細は、 [](Gameplay\HowTo\SettingUpAGameMode) を参照してください。
+ ゲームモードに関する詳細は、 [](Gameplay\HowTo\SettingUpAGameMode) を参照してください。
[/REGION]
-1. 入力とゲームモードの設定が完了したら、[Project Settings] ウィンドウを閉じます。
+1. 入力とゲームモードの設定が完了したら、[Project Settings] ウィンドウを終了します。
-
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.KOR.udn
index 61be4cd3b54a..193a0d585051 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Input/Input.KOR.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:2. 입력 및 게임 모드
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:여기서는 우리 캐릭터 제어를 위한 입력 구성 및 조종할 수 있는 캐릭터인 디폴트 폰을 설정합니다.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:2
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [예전 단계](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [다음 단계](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
여기서는 **입력** (게임 콘트롤)을 구성하여 캐릭터를 제어하고 우리 캐릭터를 사용하는 **게임 모드** 를 만들도록 하겠습니다.
@@ -72,5 +60,4 @@ SkillLevel:Advanced
1. 입력과 게임 모드 세팅 설정을 마친 이후에는, 프로젝트 세팅 창을 닫습니다.
-
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.INT.udn
index 922f79c87fba..59d3b7ae3fb9 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.INT.udn
@@ -4,6 +4,8 @@ Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement
Description:A How To Guide for Setting Up Character Movement in Blueprints.
Version: 4.9
SkillLevel: Advanced
+type:how-to
+type:landing
This "How To" series covers all the steps needed to create a fully playable and animated character through **Blueprints**. By the end of this How To series, you will have a character that can Walk, Run, Crouch and Crouch Walk, Go Prone, Jump from a stationary standing position, or Jump while moving.
@@ -28,25 +30,10 @@ For this series, we are using the **Animation Starter Pack**, which is available
To get started, follow the steps below.
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Steps
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone\:description%")
- [/PARAM]
-[/OBJECT]
+## Steps
+[DIR(output:"checkpoint" parent:"Gameplay/HowTo/CharacterMovement/Blueprints")]
+
+[REGION:call_to_action]
+[Click to Start](Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1)
+[/REGION]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.JPN.udn
index 3f768e632d04..b4c3af67f37d 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.JPN.udn
@@ -1,10 +1,12 @@
-INTSourceChangelist:2740691
+INTSourceChangelist:3429254
Availability:Public
-Title:ブループリントにおけるキャラクター移動の設定方法
+Title:ブループリントでキャラクターの移動を設定する
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement
Description:ブループリントにおいてキャラクター移動を設定するためのガイド
Version:4.9
SkillLevel:Advanced
+type:how-to
+type:landing
この「How To」シリーズでは、 **ブループリント** を使って完全にプレイ可能かつアニメートされたキャラクターを作成するために必要なすべてのステップを紹介していきます。シリーズの最後には、歩く、走る、しゃがむ、しゃがんで歩く、前かがみになる、静止した立ち姿勢または動作中からジャンプするといった動きが可能なキャラクターが出来上がります。
@@ -29,25 +31,10 @@ f5DQQWQ8GEY
では、以下のステップから開始していきましょう。
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- ステップ
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone\:description%")
- [/PARAM]
-[/OBJECT]
+## ステップ
+[DIR(output:"checkpoint" parent:"Gameplay/HowTo/CharacterMovement/Blueprints")]
+
+[REGION:call_to_action]
+[クリックして開始](Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1)
+[/REGION]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.KOR.udn
index c2bc424cd141..135ba3bbcd88 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Overview.KOR.udn
@@ -1,10 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트로 캐릭터 무브먼트 셋업
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement
Description:블루프린트로 캐릭터 무브먼트를 셋업하는 비법 안내입니다.
Version: 4.9
SkillLevel: Advanced
+type:how-to
+type:landing
여기서는 **블루프린트** 를 통해 제대로 플레이가능한 캐릭터를 만드는 데 필요한 방법을 알아보겠습니다. 이 비법 시리즈 마지막에서는 걷기, 달리기, 웅크리기, 웅크려 걷기, 엎드리기, 정지 자세에서 점프, 이동중 점프가 가능한 캐릭터가 생길 것입니다.
@@ -27,27 +29,12 @@ f5DQQWQ8GEY

-시작을 위한 단계는 다음과 같습니다.
+다음과 같이 시작합니다.
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 단계
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_1:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2 "%Gameplay\HowTo\CharacterMovement\Blueprints\Setup_2:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Walk:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Crouch:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jog:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Jump:description%")
- * [](Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone "%Gameplay\HowTo\CharacterMovement\Blueprints\AnimBlueprint_Prone\:description%")
- [/PARAM]
-[/OBJECT]
+## 단계
+[DIR(output:"checkpoint" parent:"Gameplay/HowTo/CharacterMovement/Blueprints")]
+
+[REGION:call_to_action]
+[클릭하면 시작합니다.](Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1)
+[/REGION]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.INT.udn
index d54f45c62985..7af911903275 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.INT.udn
@@ -4,23 +4,12 @@ Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\Chara
Description:Here we will set up our character and create some assets that we will need later in this guide.
Version: 4.9
SkillLevel: Advanced
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
+type:how-to
+type:multi-step
+order:1
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints\)
- [/PARAM]
- [PARAM:next]
- [Next Step](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input\:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
To get started, we will create some assets that will be used by our character. First we will create an **Animation Blueprint** (we will populate it later in this series) which will be used to drive the animations of the character, then we will create our **Character Blueprint** which will hold the logic behind our character's actions and how it responds to input.
@@ -96,5 +85,4 @@ For this project, we are using the **Blank** Project Template in order to start
1. **Compile** and **Save** then close the Blueprint.
-%Steps%
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.JPN.udn
index de20a302cccc..7e754004243b 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.JPN.udn
@@ -1,29 +1,18 @@
-INTSourceChangelist:2740691
+INTSourceChangelist:3429254
Availability:Public
-Title:1.キャラクター設定
+Title:1.キャラクターのセットアップ
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
-Description:キャラクターを設定し、このガイドで後に必要となるアセットを幾つか作成します。
+Description:キャラクターに設定を行い、このガイドで後に必要となるアセットを幾つか作成します。
Version:4.9
SkillLevel:Advanced
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
+type:how-to
+type:multi-step
+order:1
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクター移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints\)
- [/PARAM]
- [PARAM:next]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input\:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
+[NAV]
-%Steps%
-
-手始めに、キャラクターで使うアセットを幾つか作成します。まず最初にキャラクターのアニメーションを操作するための **Animation ブループリント** (このシリーズで後ほど実装していきます) を作成し、次にキャラクターのアクションや入力への反応方法のロジックを扱う **Character ブループリント** を作成します。
+手始めに、キャラクターで使うアセットを幾つか作成します。まず最初にキャラクターのアニメーションを操作するための **Animation ブループリント** (このシリーズで後ほど実装していきます) を作成し、次にキャラクターのアクションや入力への反応方法のロジックを司る **Character ブループリント** を作成します。
[REGION:note]
このプロジェクトでは **Animation Starter Pack** を使用します。 **マーケットプレイス** から無料でご利用いただけます。Animation Starter Pack をダウンロードしたら、ランチャーの **[Add to project]** ボタンで既存プロジェクト (できれば新規のブランク プロジェクト) に追加します。これで、アセットを追加するプロジェクトを指定することができます。
@@ -47,7 +36,7 @@ SkillLevel:Advanced
1. 「 **MyCharacter** 」などの名前を付けて開きます。
-1. [Component] ウィンドウで、 **Mesh** コンポーネントをクリックします。
+1. **[Component]** ウィンドウで、 **Mesh** コンポーネントをクリックします。

@@ -87,15 +76,14 @@ SkillLevel:Advanced

- 好きな値に設定することができますが、適切な値を選んでください。
+ お好きな値に設定することができますが、適切な値を選んでください。
1. **[MyBlueprint]** ウィンドウで **[Create Variable]** ボタンをクリックし、 **JogPressed** という **Bool** を作成します。
-1. 次の 4 つの **Bool** 変数を作成します。**CrouchPressed** 、 **PronePressed** 、 **JumpPressed** 、 **DisableMovement**。
+1. 次の 4 つの **Bool** 変数を作成します。**CrouchPressed** 、 **PronePressed** 、 **JumpPressed** 、 **DisableMovement**

1. **コンパイル** し **保存** してから、ブループリントを閉じます。
-%Steps%
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.KOR.udn
index 76ce37bafd2f..8dffe71eecc5 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/Setup_1.KOR.udn
@@ -1,27 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:1. 캐릭터 셋업
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:여기서는 캐릭터를 셋업한 다음 가이드 후반에 필요해질 애셋을 만들어 주겠습니다.
Version: 4.9
SkillLevel: Advanced
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
+type:how-to
+type:multi-step
+order:1
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints\)
- [/PARAM]
- [PARAM:next]
- [다음 단계](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input\:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
먼저 캐릭터에 사용할 애셋을 만들겠습니다. 우선 캐릭터의 애니메이션 구동에 사용할 **애니메이션 블루프린트** 를 만든 다음 (나중 시리즈에서 채우겠습니다), 캐릭터의 동작 배후 로직과 입력에 대한 캐릭터의 반응이 저장되는 **캐릭터 블루프린트** 를 만들겠습니다.
@@ -97,5 +86,4 @@ SkillLevel: Advanced
1. **컴파일**, **저장** 후 블루프린트를 닫습니다.
-%Steps%
-
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.INT.udn
index c7c1d810d7c8..00afd65bdb17 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.INT.udn
@@ -3,25 +3,13 @@ Title:3. Finishing Character Setup
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:Here we will implement the script in our Character Blueprint to respond to our Input Mappings so the character moves.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel: Advanced
+type:how-to
+type:multi-step
+order:3
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [Previous Step](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [Character Movement Overview](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [Next Step](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
In this section, we will finish setting up the Character by implementing the scripts that control our Character based on Player Input.
@@ -117,4 +105,4 @@ In this section, we will finish setting up the Character by implementing the scr
We then set how high the character can jump based on whether or not they are moving by setting the **JumpZVelocity** to **365** (for a moving character) or **340** while we are stationary. In either case, we set **Jump Pressed** to _True_ and set **Jump Pressed** to _False_ when Jump is released.
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.JPN.udn
index 6a9535be137d..ca1b0853317a 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.JPN.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:2740691
+INTSourceChangelist:3429254
Availability:Public
Title:3.キャラクター設定の完了
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:Input Mapping に反応してキャラクターが移動するようにブループリントでスクリプトを実行します。
Version:4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel:Advanced
+type:how-to
+type:multi-step
+order:3
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [前のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [キャラクターの移動の概要](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [次のステップ](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
このセクションでは、プレイヤー入力に合わせてキャラクターを制御するスクリプトを実行して、キャラクター設定を完了させます。
@@ -30,11 +18,11 @@ SkillLevel:Advanced
1. グラフ内で **InputAxis MoveForward** Event と **InputAxis MoveRight** Event を **右クリック** して追加します。
-1. **Control** を押したまま **DisableMovement** 変数をドラッグし、各イベントの **Branch** の **Condition** に接続します。
+1. **Control** キーを押したまま **DisableMovement** 変数をドラッグし、各イベントの **Branch** の **Condition** に接続します。
1. 残りのノード ネットワークを以下のように設定します。
-
[REGION:lightbox]
+
[(w:720)](Character_Movement.png)
[/REGION]
@@ -50,11 +38,11 @@ SkillLevel:Advanced
1. グラフ内を **右クリック** して、 **InputAction Jog** Event を追加します。
-1. **[MyBlueprint]** ウィンドウで、 **[Show inherited variables]** チェックボックスをクリックし、**Control** を押しながら、 **CharacterMovement** をグラフへドラッグします。
+1. **[MyBlueprint]** ウィンドウで、 **[Show inherited variables]** チェックボックスをクリックし、**Control** キーを押しながら、 **CharacterMovement** をグラフへドラッグします。

-1. **Alt** を押しながら **Jog Pressed** 変数をドラッグしたら、 **Control** を押しながら **Crouch Pressed** 変数をドラッグします。
+1. **Alt** キーを押しながら **Jog Pressed** 変数をドラッグしたら、 **Control** キーを押しながら **Crouch Pressed** 変数をドラッグします。
1. 適切な **Set** ノードの "Jog Pressed" がチェックされるように、ノード ネットワークを以下のように設定します:
@@ -69,7 +57,7 @@ SkillLevel:Advanced
1. グラフ内を **右クリック** して、 **InputAction Crouch** Eventを追加します。
-1. **Alt** を押しながら **Crouch Pressed** 変数をドラッグしたら、 **Control** を押しながら **Jog Pressed** 変数と **Prone Pressed** 変数をドラッグします。
+1. **Alt** キーを押しながら **Crouch Pressed** 変数をドラッグしたら、 **Control** キーを押しながら **Jog Pressed** 変数と **Prone Pressed** 変数をドラッグします。
1. 適切な **Set** ノードの "Crouch Pressed" がチェックされるように、ノード ネットワークを以下のように設定します。
@@ -84,9 +72,9 @@ SkillLevel:Advanced
1. グラフ内を **右クリック** して、 **InputAction Prone** Event を追加します。
-1. **Alt** を押しながら **Prone Pressed** 変数と **DisableMovement** 変数をドラッグします。
+1. **Alt** キーを押しながら **Prone Pressed** 変数と **DisableMovement** 変数をドラッグします。
-1. **Control** を押しながら、 **Crouch Pressed** 変数をドラッグします。
+1. **Control** キーを押しながら、 **Crouch Pressed** 変数をドラッグします。
1. 適切な **Set** ノードの "Prone Pressed" がチェックされるように、ノード ネットワークを以下のように設定します。
@@ -102,9 +90,9 @@ SkillLevel:Advanced
1. グラフ内を **右クリック** して、 **InputAction Jump** Event を追加し、 **[MyBlueprint]** ウィンドウから **CharacterMovement** をドラッグします。
-1. **Alt** を押しながら **Jump Pressed** 変数をドラッグしたら、 **Control** を押しながら **DisableMovement** 変数と **CrouchPressed** 変数をドラッグします。
+1. **Alt** キーを押しながら **Jump Pressed** 変数をドラッグしたら、 **Control** キーを押しながら **DisableMovement** 変数と **CrouchPressed** 変数をドラッグします。
-1. 適切な **Set** ノードの "Jump Pressed" がチェックされるように、ノード ネットワークを以下のように設定します。
+1. 適切な **Set** ノードの "Jump Pressed" をチェックするように、ノード ネットワークを以下のように設定します。
[REGION:lightbox]
[(w:720)](Character_Jump.png)
@@ -112,9 +100,9 @@ SkillLevel:Advanced
_画像をクリックしてフルサイズで表示_
- Jump スクリプトの場合は、まずステートが Prone か Crouched のいずれかになっているかを確認します。両方とも _true_ でなければ、 **CharacterMovement** コンポーネントを使って現在の速度を判断します。 0 より大きければ、移動していることになります。
+ Jump スクリプトの場合は、まずステートが Prone か Crouched のいずれかになっているかを確認します。両方とも _true_ ではなければ、 **CharacterMovement** コンポーネントを使って現在の速度を判断します。 0 より大きければ、移動していることになります。
移動しているかどうかに応じて、まだ固定状態のうちに **JumpZVelocity** を **365** (キャラクターが移動している場合) または **340** に設定して、キャラクターがジャンプできる高さを設定します。どちらの場合も **Jump Pressed** は _True_ に設定し、 Jump が解除されると **Jump Pressed** を _False_ に設定します。
-%Steps%
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.KOR.udn
index c30cea90871c..346ac6cef46c 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_2/Setup_2.KOR.udn
@@ -1,28 +1,16 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:3. 캐릭터 셋업 마무리
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\CharacterMovement, Gameplay\HowTo\CharacterMovement\Blueprints
Description:여기서는 캐릭터 이동이 가능하도록 입력 매핑에 대한 반응을 캐릭터 블루프린트의 스크립트로 구현합니다.
Version: 4.9
+Parent:Gameplay/HowTo/CharacterMovement/Blueprints
SkillLevel: Advanced
+type:how-to
+type:multi-step
+order:3
-[VAR:Steps]
-[OBJECT:Navigation]
- [PARAM:previous]
- [예전 단계](Gameplay\HowTo\CharacterMovement\Blueprints\Input "%Gameplay\HowTo\CharacterMovement\Blueprints\Input:title%")
- [/PARAM]
- [PARAM:current]
- [/PARAM]
- [PARAM:home]
- [캐릭터 무브먼트 개요](Gameplay\HowTo\CharacterMovement\Blueprints)
- [/PARAM]
- [PARAM:next]
- [다음 단계](Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace "%Gameplay\HowTo\CharacterMovement\Blueprints\BlendSpace:title%")
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-%Steps%
+[NAV]
여기서는 플레이어 입력에 따라 캐릭터를 제어하는 스크립트를 구현하여 캐릭터 셋업을 마무리하도록 하겠습니다.
@@ -118,4 +106,4 @@ SkillLevel: Advanced
그러면 이동중인지 여부에 따라 캐릭터의 점프 높이를 이동중인 경우 **JumpZVelocity** 를 **365** 로, 정지상태인 경우 **340** 으로 설정하면 됩니다. 어느 경우에도 **Jump Pressed** 를 _True_ 로 설정했다가, 점프가 끝나면 **Jump Pressed** 를 _False_ 로 설정합니다.
-%Steps%
\ No newline at end of file
+[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.INT.udn
index 18f3548e52ad..4e2b902b3d97 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.INT.udn
@@ -4,23 +4,17 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Setting Up a Character with Character Movement in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:10
To create **Character Movement**, several parts are needed, each working together to produce the end result of a character moving around in your game. You will need a character, inputs for that character, how the character responds to inputs from a player, animations for the character moving, transitions to and from animations, and the logic behind the transitioning between animations.
In this "How To" series, we intend to show you how you can set all this up from scratch in Blueprints where at the end of the series, you will have a playable character that exhibits different forms of Character Movement.
-## Setup
+## Implementation Guides
-To learn more about **Setting up Character Movement in Blueprints**, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\CharacterMovement\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/CharacterMovement" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.JPN.udn
index 97cd916c514e..a2d53ea6aa1f 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.JPN.udn
@@ -1,27 +1,21 @@
-INTSourceChangelist:2815879
+INTSourceChangelist:3429254
Availability:Public
Title:キャラクターの移動の設定方法
Crumbs: %ROOT%, Gameplay
Description:UE4 でキャラクターに移動を設定するためのガイド
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Intermediate
+type:overview
order:10
-**キャラクターの移動** を作成するには、いくつかの構成要素が必要で、それらがお互いに作用することで、最終的にゲーム内でキャラクターが移動します。必要なものは、キャラクター、キャラクターへの入力、プレイヤーからの入力に対するキャラクターの反応方法、キャラクター移動用のアニメーション、アニメーション間の遷移、アニメーション間の遷移を成り立たせるロジック、です。
+**キャラクターの移動** を作成するには、いくつかの構成要素が必要で、それらが互いに作用することで、最終的にゲーム内でキャラクターが移動します。必要なものは、キャラクター、キャラクターへの入力、プレイヤーからの入力に対するキャラクターの反応方法、キャラクター移動用のアニメーション、アニメーション間の遷移、アニメーション間の遷移を成り立たせるロジックです。
-この「How To」シリーズでは、ブループリントで全ての設定をゼロから行う方法を紹介し、シリーズの最後には、様々な動き方を表現できるプレイ可能なキャラクターが完成します。
+このガイドでは、ブループリントで全ての設定をゼロから行う方法を紹介し、シリーズの最後には、様々な動き方を表現できるプレイ可能なキャラクターが完成します。
-## セットアップ
+## 実装ガイド
-**ブループリントでキャラクターの移動を設定する方法** については、以下を参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\CharacterMovement\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/CharacterMovement" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.KOR.udn
index 5b1371f43a02..ee7030d40273 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/CharacterMovement/CharacterMovementOverview.KOR.udn
@@ -1,27 +1,21 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:캐릭터 무브먼트 셋업
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 캐릭터에 캐릭터 무브먼트를 구성하는 비법 안내입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:10
**Character Movement** (캐릭터 무브먼트, 동작)을 만들기 위해서는 여러 부속이 필요한데, 그 각각이 조합되어 게임을 돌아다니는 캐릭터가 탄생하게 됩니다. 캐릭터, 그 캐릭터에 대한 입력, 플레이어의 입력에 대한 그 캐릭터의 반응 방식, 캐릭터 이동에 대한 애니메이션, 애니메이션 사이의 전환, 애니메이션 사이 전환 배후의 로직 등이 필요할 것입니다.
이번 비법 시리즈에서는 블루프린트를 통해 이 모든 것들을 기초부터 구성해 나가는 법을 보여드리고자 하며, 시리즈 마지막에는 다양한 캐릭터 동작을 보여주는 플레이가능 캐릭터가 생길 것입니다.
-## 구성
+## 구현 안내
-블루프린트로 **캐릭터 무브먼트** 를 구성하는 방법 관련 상세 정보는, 다음 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\CharacterMovement\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/CharacterMovement" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.INT.udn
index dc4ad19220fd..69b756886a1f 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\FindingActors
Description:A How To Guide for Finding Actors in Blueprints.
Version: 4.9
SkillLevel: Intermediate
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.JPN.udn
index 1ed38aeab7cd..fa7d6d89b798 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:2701189
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントでアクタを検索する
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\FindingActors
Description:ブループリントでアクタを検索するための操作ガイド
Version:4.9
SkillLevel:Intermediate
+type:how-to
[TOC (start:2 end:2)]
@@ -69,7 +70,7 @@ SkillLevel:Intermediate
## 特定のアクタを取得する
-前のセクションで、 **Get All Actors of Class** ノードを使うと指定したクラスのアクタの配列が作成されることを理解できたと思います。このセクションでは、様々な基準に合わせて得た配列結果にフィルタを適用して、その配列から特定の複数のアクタを取得、あるいはアクタを 1 つだけ取得する方法を紹介します。
+前のセクションで、 **Get All Actors of Class** ノードを使うと、指定したクラスのアクタの配列が作成されることを理解できたと思います。このセクションでは、様々な基準に合わせて得た配列結果にフィルタを適用して、その配列から特定の複数のアクタを取得、あるいはアクタを 1 つだけ取得する方法を紹介します。
まずひとつめは、アクタで **タグ** を使う方法です。
@@ -103,7 +104,7 @@ SkillLevel:Intermediate
(w:800)
-1. **ForEachLoop** ピンの **Array Element** ピンを引き出して **P_Fire** と **Fire Audio** を get して、**Deactivate** ノードへ接続します。
+1. **ForEachLoop** ピンの **Array Element** ピンを引き出して **P_Fire** と **Fire Audio** を取得して、**Deactivate** ノードへ接続します。
[REGION:lightbox]
[(w:800)](Actors13.png)
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.KOR.udn
index b096d61352a3..5ab9088b8954 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/Blueprints/FindingActors_BP.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 액터 검색
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\FindingActors
Description:블루프린트에서 액터를 검색하는 비법 안내입니다.
Version: 4.9
SkillLevel: Intermediate
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.INT.udn
index 059e22f61b46..d316715a0cf4 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.INT.udn
@@ -4,7 +4,8 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Finding Actors in your Scenes in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:11
Once you start constructing your game and its levels, you may find that locating an individual Actor in your scene may be difficult. It is not uncommon to have hundreds of Actors in your scene ranging from level set pieces or geometry, to NPCs or enemies, to interactable objects or pick-ups and locating one Actor out of all those is like the old saying of "looking for a needle in a haystack".
@@ -23,17 +24,9 @@ Refer to the [](Engine/UI/LevelEditor/SceneOutliner) documentation for more info
While finding an Actor in the Editor can be accomplished with the help of the World Outliner, how do you go about finding an Actor through Blueprints so that you may modify it in some way? This "How To" series will show you some ways in which you can search your scene for an Actor based on varying criteria at which point you can then access and modify it if you wish.
+## Implementation Guides
-## Setup
-
-To learn more about Finding Actors using Blueprints, use the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\FindingActors\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/FindingActors" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.JPN.udn
index 14bf4ea49a24..32b28f67326b 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.JPN.udn
@@ -1,14 +1,15 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:アクタを検索する
Crumbs: %ROOT%, Gameplay
-Description:UE4 のシーン内でアクタを検索するための操作ガイド
+Description:UE4 のシーン内でアクタを見つけるための操作ガイド
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Intermediate
+type:overview
order:11
-ゲームとレベルを構築し始めると、シーン内の個々のアクタを見つけることが難しく感じるかもしれません。レベルに設定されている構成要素やジオメトリから NPC、敵、インタラクション可能なオブジェクトやピックアップに至るまで、シーン内のアクタが数百に上ることは珍しくありません。これらの中からアクタ 1 つを探し出すのは、ことわざでいう「干し草の山の中にある一本の針を見つける (つまり無駄骨を折る) 」ようなものです。
+ゲームとレベルを構築し始めると、シーン内の個々のアクタを見つけることが難しく感じるかもしれません。レベルに設定されている構成要素やジオメトリから NPC、敵、インタラクション可能なオブジェクトやピックアップに至るまで、シーン内のアクタが数百に上ることは珍しくありません。これらの中からひとつのアクタを探し出すのは、ことわざでいう「干し草の山の中にある一本の針を見つける (つまり無駄骨を折る) 」ようなものです。
ただし、 **ワールド アウトライナー** を使って、シーン内のアクタの検索幅を狭めることはできます (以下の図参照)。
@@ -17,24 +18,16 @@ order:11
上図では、レベル内に配置されたすべてのアクタがワールド アウトライナー (右) に表示されます。ワールド アウトライナー内のアクタを 1 つクリックすると、レベル ビューポート内でも強調表示されます。**Actor (アクタ)** または **Type (種類)** のヘッダをクリックすれば、 **ワールド アウトライナー** をアクタ名またはアクタの種類でソートすることができます (Type Box の下向き矢印をクリックすると、サブ カテゴリを種類から別のフィルタへ変更することができます)。
[REGION:tip]
-ワールド アウトライナーでアクタを選択した状態で、レベル ビューポート内をナビゲート中に **F** キーを押すと、選択中のアクタがフォーカスできる位置にカメラを移動します。
+ワールド アウトライナーでアクタを選択した状態で、レベル ビューポート内をナビゲート中に **F** キーを押すと、選択中のアクタが **フォーカス** できる位置にカメラを移動します。
[/REGION]
シーン内でのアクタの配置については、 [](Engine/UI/LevelEditor/SceneOutliner) をご覧ください。
-エディタでのアクタ検索にはワールド アウトライナー使うことができますが、ブループリントでアクタを見つけて修正できるようにするにはどうすれば良いでしょうか?この「How to」シリーズでは、必要に応じてアクセスおよび修正できる様々な基準でシーン内のアクタ検索を行う方法を紹介します。
+エディタでのアクタ検索にはワールド アウトライナー使うことができますが、ブループリントでアクタを見つけて修正できるようにするにはどうすれば良いでしょうか? 以下のガイドでは、必要に応じてアクセスおよび修正できる様々な基準でシーン内のアクタ検索を行う方法を紹介します。
+## 実装ガイド
-## セットアップ
-
-ブループリントを使用してアクタを検索する方法については、以下のリンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\FindingActors\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/FindingActors" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.KOR.udn
index fa91d7108722..56ce5e9416f5 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/FindingActors/FindingActorsOverview.KOR.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:액터 검색
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 씬에 있는 액터를 검색하는 비법 안내입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:11
게임 제작을 시작하고 레벨을 만들다 보면, 씬에 있는 액터를 검색하기가 까다롭게 느껴질 때가 옵니다. 레벨 세트 조각이나 지오메트리에서부터 NPC 와 적, 조작 가능한 오브젝트나 픽업에 이르기까지 씬에 있는 액터가 수백개에 달하여 그 중 하나를 찾다 보면 "모래사장에서 바늘찾기" 같은 옛말이 떠오르게 마련입니다.
@@ -24,17 +25,9 @@ order:11
**월드 아웃라이너** 의 도움으로 에디터에서 액터를 찾을 수는 있었다고 쳐도, **블루프린트** 를 통해 액터를 찾아 어떤 식으로든 변경을 하려면 어떻게 해야 할까요? 이 "비법" 시리즈에서는 다양한 범주에 따라 씬에서 액터를 검색하고 원한다면 접근하여 변경할 수도 있는 방법을 보여드리겠습니다.
+## 구현 안내
-## 셋업
-
-블루프린트를 사용한 **액터 검색** 관련 상세 정보는, 아래 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\FindingActors\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/FindingActors" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/Blueprints/ReplicateActor_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/Blueprints/ReplicateActor_BP.INT.udn
index f2c9c09d3fca..7f7efcda947c 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/Blueprints/ReplicateActor_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/Blueprints/ReplicateActor_BP.INT.udn
@@ -6,6 +6,7 @@ Related: Engine/Blueprints
Related: Resources/ContentExamples/Networking
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/Blueprints/ReplicateActor_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/Blueprints/ReplicateActor_BP.KOR.udn
index e47fbb30c775..dd19a8a5ac84 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/Blueprints/ReplicateActor_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/Blueprints/ReplicateActor_BP.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 액터 리플리케이트
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\Networking/ReplicateActor
@@ -7,6 +7,7 @@ Related: Engine/Blueprints
Related: Resources/ContentExamples/Networking
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.INT.udn
index c6c265696864..1fb222733a98 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.INT.udn
@@ -4,7 +4,8 @@ Crumbs: %ROOT%, Gameplay
Description:Guide for Replicating Actors in Multiplayer Games.
version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:15
The process of passing data or commands between Server and Clients is referred to as **Replication**, and Actor Replication is where the Server identifies and acknowledges if an Actor is set to use Replication or not. If the Actor is set to Replicate, the Server will tell the Client to create and maintain a Replicated copy of that Actor on the Client's machine. The Server always has the authoritative version of that Actor, while a Client (or multiple Clients) may have the approximate, replicated versions of that Actor.
@@ -12,14 +13,9 @@ The process of passing data or commands between Server and Clients is referred t
Options can be set to define how Replicated Actors behave on a Client, from whether or not to Replicate Movement (the location/rotation of the Actor) to setting its Network Relevancy (or when to send Replicated Data to the Client, as the Actor set to Replicate may or may not be relevant depending upon gameplay situations).
-## Setup
-
-To learn more about Replicating Actors using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateActor\Blueprints)
-[/REGION]
+## Implementation Guides
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateActor" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.JPN.udn
index 1eb868ed5337..aee0ddf318eb 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.JPN.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:アクタのレプリケート方法
Crumbs: %ROOT%, Gameplay
Description:マルチプレイヤー ゲームでアクタをレプリケートするためのガイド
version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Advanced
+type:overview
order:15
サーバーとクライアント間でデータやコマンドを渡すプロセスは **レプリケーション** と呼ばれ、アクタのレプリケーションとは、アクタがレプリケーションを使用するかどうかをサーバーが特定し認識することです。アクタが Replicate に設定されていると、サーバーはクライアントに、クライアント側でそのアクタのレプリケートされたコピーを作成し保持するように伝えます。サーバーのアクタが常にそのアクタの正式版で、クライアント側 (複数可) のアクタはそのアクタのレプリケート版となります。
@@ -13,14 +14,9 @@ order:15
移動をレプリケート (アクタの位置 / 回転) するか否かの設定から、 ネットワークの関連性の設定 (レプリケートを設定されたアクタはゲームの状況によって関連性が変わるため、レプリケートされたデータをいつクライアントに渡すか) に至るまで、レプリケートされたアクタのクライアント側でのビヘイビアを設定することもできます。
-## セットアップ
-
-ブループリントでアクタをレプリケートする方法については、以下のリンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateActor\Blueprints)
-[/REGION]
+## 実装ガイド
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateActor" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.KOR.udn
index 02344ac97e44..555800fe1156 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateActor/ReplicateActorOverview.KOR.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:액터 리플리케이트 비법
Crumbs: %ROOT%, Gameplay
Description:멀티플레이어 게임에서의 액터 리플리케이션에 대한 안내입니다.
version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:15
서버와 클라이언트 사이에서 데이터와 명령을 주고받는 프로세스를 일컬어 **Replication**, 리플리케이션이라 합니다 (역주: 복제라는 뜻이긴 합니다만, copy 나 duplicate 와의 혼동을 피하기 위해 그냥 영문을 그대로 음차하기로 했습니다). **액터 리플리케이션** 이라는 것은, 액터에 리플리케이션 설정이 되어있는지 아닌지 식별한 다음 승인하는 것입니다. 액터에 리플리케이트 설정이 되어 있다면, 서버는 클라이언트더러 클라이언트 머신에 그 액터의 복제된 사본을 만들어 유지하라 이르는 것이지요. 서버에는 항상 그 액터의 전권이 있는 원본이 있는 반면, 클라이언트(들)에는 그 액터를 추정해 낸 복사본이 있게 됩니다.
@@ -13,14 +14,9 @@ order:15
옵션을 통해 리플리케이티드 액터가 클라이언트에서의 작동 방식을 설정할 수 있는데, **Replicate Movement** (액터의 위치/방향 복제) 여부에서부터 **Network Relevancy** (네트워크 연관성) 설정도 가능합니다 (다른 말로 리플리케이티드 데이터를 클라이언트에 전송하는 시점을 결정하는 것인데, 리플리케이트 설정이 된 액터가 게임플레이 상황에 따라 연관성이 있을 수도 없을 수도 있기 때문입니다).
-## 구성
-
-블루프린트를 사용한 **액터 리플리케이션** 관련 상세 정보는, 다음 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateActor\Blueprints)
-[/REGION]
+## 구현 안내
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateActor" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/Blueprints/ReplicateFunction_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/Blueprints/ReplicateFunction_BP.INT.udn
index b4c101cdcd71..61744b745260 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/Blueprints/ReplicateFunction_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/Blueprints/ReplicateFunction_BP.INT.udn
@@ -6,6 +6,7 @@ Related: Engine/Blueprints
Related: Resources/ContentExamples/Networking
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/Blueprints/ReplicateFunction_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/Blueprints/ReplicateFunction_BP.KOR.udn
index 14536d074dfa..36de563b7288 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/Blueprints/ReplicateFunction_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/Blueprints/ReplicateFunction_BP.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 함수 리플리케이트
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\Networking\ReplicateFunction
@@ -7,6 +7,7 @@ Related: Engine/Blueprints
Related: Resources/ContentExamples/Networking
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.INT.udn
index c98e0a9d3f9a..6adeca0c5ec4 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.INT.udn
@@ -4,7 +4,8 @@ Crumbs: %ROOT%, Gameplay
Description:Guide for Replicating Functions in Multiplayer Games.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:16
**Function Replication** (Remote Procedure Calls or RPCs for short) are functions that are called locally, but executed remotely on another machine (separate from the machine performing the call). RPC functions can be very useful and allow either the Client or the Server to send messages to each other over a network connection. Replicated function calls can be set to either **Reliable** or **Unreliable** where Reliable calls are guaranteed to occur, while Unreliable calls may be dropped during heavy network traffic. Most Replicated Functions that handle cosmetic visuals are unreliable to avoid saturating the network.
@@ -13,13 +14,9 @@ There are 3 primary types of Replicated Functions: **Multicast**, **Run on Serve
Server and Client Replicated Functions have some restrictions, for one they can only be used on Actors that have a **Net Owner**. Actors have Net Owners if they are a Player Controller or owned by a Player Controller. For example, a Pawn possessed by a Player Controller can have Server or Client Replicated Functions executed upon it.
-## Setup
+## Implementation Guides
-To learn how to set up Replicated Functions using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateFunction\Blueprints)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateFunction" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.JPN.udn
index c480469e3bf0..09f2a003578a 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.JPN.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:関数をレプリケートする
Crumbs: %ROOT%, Gameplay
-Description:マルチプレイヤー ゲームで関数をレプリケートするガイド
+Description:マルチプレイヤー ゲームで関数をレプリケートするガイド
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Advanced
+type:overview
order:16
**関数のレプリケーション** (Remote Procedure Calls、略して RPCs) は、ローカルで呼び出される関数ですが、別のマシンでリモートで実行されます (呼び出しを実行する側のマシンとは別)。RPC 関数は非常に便利で、クライアントまたはサーバーがネットワーク接続で互いにメッセージを送信できます。レプリケート関数の呼び出しは **Reliable (信頼できる)** もしくは **Unreliable (信頼できない)** のいずれかに設定することができ、信頼できるコールは発生が保証される一方、信頼できないコールはネットワーク トラフィックの渋滞の間に取り下げられます。表面上の外見を処理するレプリケート関数のほとんどは、ネットワーク サチュレーションを避けるためのものなので信頼できません。
@@ -14,13 +15,9 @@ order:16
サーバーおよびクライアント側でレプリケートされたレプリケート関数には、 **Net Owner** を持つアクタ上でしか使用することができないという制限があります。アクタがプレイヤー コントローラーの場合、もしくはプレイヤー コントローラーにより所有される場合、アクタにはネット オーナーがあります。例えば、プレイヤー コントローラにより所有されるポーンは、 サーバー側でのレプリケート関数またはクライアント側でのレプリケート関数を、その上で実行することができます。
-## セットアップ
+## 実装ガイド
-ブループリントを使ったレプリケート関数のセットアップ方法については、以下のリンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateFunction\Blueprints)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateFunction" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.KOR.udn
index 505a4b0e7ec3..c6662131b632 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateFunction/ReplicateFunctionOverview.KOR.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:함수 리플리케이트
Crumbs: %ROOT%, Gameplay
Description:멀티플레이어 게임에서의 함수 리플리케이션 방법 안내서입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:16
**함수 리플리케이션** (리모트 프로시져 콜, 줄여서 RPC)은 로컬에서 호출되지만 (호출을 실행하는 머신과는 별개로) 다른 머신에서 원격으로 실행되는 함수를 말합니다. RPC 함수는 매우 유용할 수 있으며, 클라이언트나 서버가 네트워크 접속을 통해 서로에게 메시지를 전송할 수 있도록 합니다. 리플리케이티드 함수 호출은 **Reliable** (신뢰성) 또는 **Unreliable** (비신뢰성) 설정이 가능한데, 신뢰성 호출은 반드시 실행이 보장되는 반면, 비신뢰성 호출은 네트워크 트래픽이 심한 경우 버려질 수 있습니다. 대부분의 장식성 비주얼 처리를 하는 리플리케이티드 함수는 네트워크 포화 상태를 피하기 위해 비신뢰성으로 처리됩니다.
@@ -14,13 +15,9 @@ order:16
서버 및 클라이언트 리플리케이티드 함수에는 몇 가지 제약이 있는데, **넷 오너** 가 있는 액터에만 사용할 수 있습니다. 액터가 넷 오너를 갖는 경우는 플레이어 콘트롤러이거나, 플레이어 콘트롤러에 소유된 경우입니다. 예를 들어 플레이어 콘트롤러에 빙의된 폰은 거기서 서버 또는 클라이언트 리플리케이티드 함수를 실행시킬 수 있습니다.
-## 구성
+## 구현 안내
-블루프린트를 사용한 **리플리케이티드 함수** 구성 방법은, 다음 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateFunction\Blueprints)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateFunction" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/Blueprints/ReplicateVariable_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/Blueprints/ReplicateVariable_BP.INT.udn
index 4f39f4fc8db1..14fa128ff0ed 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/Blueprints/ReplicateVariable_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/Blueprints/ReplicateVariable_BP.INT.udn
@@ -6,6 +6,7 @@ Related: Engine/Blueprints
Related: Resources/ContentExamples/Networking
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/Blueprints/ReplicateVariable_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/Blueprints/ReplicateVariable_BP.KOR.udn
index db20b1e18132..36b71ba563bb 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/Blueprints/ReplicateVariable_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/Blueprints/ReplicateVariable_BP.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 변수 리플리케이트
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\Networking\ReplicateVariable
@@ -7,6 +7,7 @@ Related: Engine/Blueprints
Related: Resources/ContentExamples/Networking
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.INT.udn
index b4eb2fa9a981..de4ff28838c6 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.INT.udn
@@ -4,7 +4,8 @@ Crumbs: %ROOT%, Gameplay
Description:Guide for Replicating Variables in Multiplayer Games.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:17
[EXCERPT:Overview]
@@ -13,13 +14,9 @@ Just as [Actors](Gameplay\HowTo\Networking\ReplicateActor) and [Functions](Gamep
You can set a variable to Replicated which means the variable produces a one-to-one copy of the variable that is replicated from the Server to Clients. Or you can use the RepNotify which does everything that Replicated does, but also provides a Function that is called that executes on both the Server and Client machines whenever the variable it is attached to updates.
[/EXCERPT:Overview]
-## Setup
+## Implementation Guides
-To learn how to set up Replicated Variables using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateVariable\Blueprints)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateVariable" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.JPN.udn
index 98d124c9e771..84287fb16ba7 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.JPN.udn
@@ -1,26 +1,23 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:変数をレプリケートする
Crumbs: %ROOT%, Gameplay
Description:マルチプレイヤー ゲームで変数をレプリケーションするためのガイド
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Advanced
+type:overview
order:17
[EXCERPT:Overview]
-[アクタ](Gameplay\HowTo\Networking\ReplicateActor) と同様に [関数](Gameplay\HowTo\Networking\ReplicateFunction) もネットワーク上でレプリケーション可能であり、**変数** も同様です。ゲームプレイに重要な変数だけを Network Authority (サーバー) 側で編集し、知っておく必要のある情報のみをリモートのマシン (クライアント) にレプリケートします。いつ変数が変更できるかは不正につながりうるためクライアントに定義させないようにします (例、ヘルス、弾薬、エクスペリエンスの値)。
+[アクタ](Gameplay\HowTo\Networking\ReplicateActor) と同様に [関数](Gameplay\HowTo\Networking\ReplicateFunction) もネットワーク上でレプリケーション可能であり、**変数** も同様です。ゲームプレイに重要な変数だけを Network Authority (サーバー) 側で編集し、知っておく必要のある情報のみをリモートのマシン (クライアント) にレプリケートします。いつ変数が変更できるかは不正につながりうるためクライアントに定義させないようにします (例、ヘルス、弾薬、経験値)。
-変数を Replicated に設定することができます。これは、サーバーからクライアントにレプリケートされる変数が 1 対 1 のコピーを作ることを意味します。または、RepNotify を使用することもできます。これは、 Replicated が行うことを何でも行いますが、それに加えてアタッチされている変数が更新されるたびに呼び出され、サーバーとクライアントの両方のマシンで実行する関数があります。
+変数を Replicated に設定することができます。つまり、この変数はサーバーからクライアントにレプリケートされる変数の 1 対 1 のコピーを作ります。または、RepNotify を使用することもできます。RepNotify は Replicated が行うことを何でも行うだけでなく、アタッチされている変数が更新されるたびに呼び出され、サーバーとクライアントの両方のマシンで実行する関数を提供します。
[/EXCERPT:Overview]
-## セットアップ
+## 実装ガイド
-ブループリントを使った Replicated 変数のセットアップ方法については、以下のリンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateVariable\Blueprints)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateVariable" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.KOR.udn
index 7bf1373ec44b..259c0463071d 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/ReplicateVariable/ReplicateVariableOverview.KOR.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:변수 리플리케이트
Crumbs: %ROOT%, Gameplay
Description:멀티플레이어 게임에서 변수를 리플리케이트하는 방법 안내입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:17
[EXCERPT:Overview]
@@ -14,13 +15,9 @@ order:17
변수에 **Replicated** 설정을 하면, 그 변수는 서버에서 클라이언트로 리플리케이트되는 변수의 1:1 사본을 만든다는 뜻입니다. 또는 **RepNotify** 를 사용하면, **Replicated** 의 역할에 추가로 붙어있는 변수가 업데이트될 때마다 서버와 클라이언트 머신 양쪽에서 실행되는 함수가 제공되기도 합니다.
[/EXCERPT:Overview]
-## 구성
+## 구현 안내
-블루프린트를 사용한 **리플리케이티드 변수** 구성 방법에 대해서는, 다음 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\Networking\ReplicateVariable\Blueprints)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/Networking/ReplicateVariable" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.INT.udn
index e8acdb8f7d26..f733e8a9bd3b 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.INT.udn
@@ -5,6 +5,7 @@ Description:Demonstrates how you can set up the Unreal Editor for testing multip
Related: Resources/ContentExamples/Networking
Version: 4.9
Parent:Gameplay
+SkillLevel: Advanced
type:how-to
order:18
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.JPN.udn
index ced4c0646da1..14f9f60f86a3 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:マルチプレイヤー ゲームをテストする
Crumbs: %ROOT%, Gameplay
@@ -6,6 +6,7 @@ Description:マルチプレイヤー ゲームをテストするためにアン
Related:Resources/ContentExamples/Networking
Version:4.9
Parent:Gameplay
+SkillLevel:Advanced
type:how-to
order:18
@@ -17,7 +18,7 @@ order:18
**プレイヤー数を増やすには:**
-* **[Play]** ボタンの横にある下向きの矢印をクリックし、 **Number of Players** の値を入力します。
+* **[Play]** ボタンの横にある下向きの矢印をクリックし、 **[Number of Players]** の値を入力します。
[REGION:raw]

@@ -34,7 +35,7 @@ order:18
**サーバーのプレイ ウィンドウを調整するには:**
-* **Play** ボタンの隣にある下向き矢印をクリックし、 **New Editor Window** を選択します。
+* **[Play]** ボタンの隣にある下向き矢印をクリックし、 **[New Editor Window]** を選択します。
[REGION:raw]

@@ -48,17 +49,17 @@ order:18
**ウィンドウ サイズを調整するには:**
-1. **Play** ボタンの隣にある下向き矢印をクリックし、 **Advanced Settings** を選択します。
+1. **[Play]** ボタンの隣にある下向き矢印をクリックし、 **[Advanced Settings]** を選択します。
[REGION:raw]

[/REGION]
-1. **Play in New Window** セクションでお好みのウィンドウ サイズに設定します。
+1. **[Play in New Window]** セクションでお好みのウィンドウ サイズに設定します。

- **Play in New Window** サイズ オプションでは、作成されるウィンドウのサイズとデフォルト位置を設定することができます。いくつかのプリセット ウィンドウ サイズから選択するか、ウィンドウ サイズを手動入力できます (ここの例では 640x480 を指定しました)。作成されるウィンドウの **Left** と **Top** の位置を設定するか、**Always center window to screen (画面に対して常にウィンドウを中央に配置)** のチェックボックスをクリックします。
+ **[Play in New Window]** サイズ オプションでは、作成されるウィンドウのサイズとデフォルト位置を設定することができます。いくつかのプリセット ウィンドウ サイズから選択するか、ウィンドウ サイズを手動入力できます (ここの例では 640x480 を指定しました)。作成されるウィンドウの **Left** と **Top** の位置を設定するか、**[Always center window to screen (画面に対して常にウィンドウを中央に配置)]** のチェックボックスをクリックします。
ウィンドウ サイズを入力後、エディタで再生すると新しい各ウィンドウは同じサイズになります。
@@ -68,11 +69,11 @@ order:18
### マルチプレイヤー オプション
-**Advanced Settings** 内では、以下のマルチプレイヤーのオプションを追加でセットアップできるセクションがあります。
+**[Advanced Settings]** 内では、以下のマルチプレイヤーのオプションを追加でセットアップできるセクションがあります。

-| オプション| 説明 |
+| オプション | 説明 |
| -------- | ----------- |
| **Number of Players** | 起動時にゲームでスポーンするプレイヤー数を定義します。エディタとリッスン サーバーはプレイヤーとしてカウントされますが、デディケイテッド サーバーはカウントされません。プレイヤーの残りの数はクライアントになります。 |
| **Server Game Options** | ここで URL パラメータとしてサーバーに渡される追加オプションを指定することができます。 |
@@ -86,7 +87,7 @@ order:18

-| オプション| 説明 |
+| オプション | 説明 |
| -------- | ----------- |
| **Editor Multiplayer Mode** | Play In Editor で使用する NetMode です(**Play Offline**、**Play As Listen Server**、 または **Play As Client**)。|
| **Command Line Arguments** | スタンドアロンのゲーム インスタンスに渡される追加のコマンドラインオプションを割り当てることができます。 |
@@ -102,7 +103,7 @@ order:18
**デディケイテッド サーバーを実行するには:**
-* **Play** ボタンの隣にある下向き矢印をクリックし、 **Run Dedicated Server** チェックボックスにチェックを入れます。
+* **[Play]** ボタンの隣にある下向き矢印をクリックし、 **[Run Dedicated Server]** チェックボックスにチェックを入れます。
[REGION:raw]

diff --git a/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.KOR.udn
index fa730db64bb5..f2088cbd0da5 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/Networking/TestMultiplayer/TestMultiplayer.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:멀티플레이어 테스트
Crumbs: %ROOT%, Gameplay
@@ -6,6 +6,7 @@ Description:멀티플레이어 게임 테스트용으로 언리얼 에디터를
Related: Resources/ContentExamples/Networking
Version: 4.9
Parent:Gameplay
+SkillLevel: Advanced
type:how-to
order:18
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.INT.udn
index 7cd28afc01be..088abc1ac162 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/PossessPawns
Description:Illustrates using the Possess node in Blueprints to switch between and control multiple characters.
Version: 4.8
SkillLevel: Intermediate
+type:how-to
Related: Engine/Blueprints
Related: Gameplay/Framework/Pawn
Related: Gameplay/Framework/Pawn/Character
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.JPN.udn
index 9863002dfa22..88b9da9a8020 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:2701420
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントでポーンを所有する
Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/PossessPawns
Description:ブループリントで Possess ノードを使って、複数のキャラクター間で切り替えて、制御する方法を説明します。
Version:4.8
SkillLevel:Intermediate
+type:how-to
Related:Engine/Blueprints
Related:Gameplay/Framework/Pawn
Related:Gameplay/Framework/Pawn/Character
@@ -58,7 +59,6 @@ Related:Gameplay/Framework/Controller/PlayerController
(w:640)
これにより、プレイヤー コントローラーに対して、どのターゲット ポーンを所有し、制御するかを指示します。**Possess** 関数が呼び出されると、ポーンが現在制御されているかを自動的にチェックし、まずそれを **UnPossess (所有を解除)** してから、新しいポーンを所有しようとします。
-
プレイヤーのポーンの制御を解除させて、例えばプレイ可能なキャラクターを直接制御しないステートのスペクテーター (観戦者) タイプにする場合には、 UnPossess 関数を使用することができます。
1. あと 2 つ **Possess** ノードを作成して、以下のように **1**、**2**、および **3** の Keyboard Event を接続します。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.KOR.udn
index 2bfd18aaf892..b99b0114fea1 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/Blueprints/GHT_4B.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트로 폰 빙의
Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/PossessPawns
Description:블루프린트로 Possess 노드를 사용하여 다수의 캐릭터를 제어하고 전환하는 법에 대한 설명입니다.
Version: 4.8
SkillLevel: Intermediate
+type:how-to
Related: Engine/Blueprints
Related: Gameplay/Framework/Pawn
Related: Gameplay/Framework/Pawn/Character
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.INT.udn
index 1169bbb17533..e4fc447fbbc3 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.INT.udn
@@ -4,7 +4,8 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for possessing different pawns in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:3
If you want to switch between multiple Playable Characters in your game or you have a situation where you want a Character to enter and control a Vehicle (car, plane, tank, etc.) or other Pawn that has unique controls (like a mounted machine gun a player can control), you will want to take Possession of the Character or Pawn in order to pass input information to it.
@@ -13,16 +14,9 @@ The **PlayerController** is what is responsible for directing a Pawn and Possess
The link below in the Setup section will give you examples on Pawn Possession using Blueprints.
-## Setup
+## Implementation Guides
-To learn more about Possessing Pawns using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\PossessPawns\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\PossessPawns\Code)
-[/PUBLISH:Docs]
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/PossessPawns" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.JPN.udn
index 4c4da214f81e..6e0fa9e96b5a 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.JPN.udn
@@ -1,29 +1,23 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:ポーンを所有する
Crumbs: %ROOT%, Gameplay
Description:UE4 で様々なポーンを所有するための操作ガイド
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Intermediate
+type:overview
order:3
ゲーム内で複数のプレイ可能なキャラクター間で切り替えたり、キャラクターがビークルに入り、ビークル (車、飛行機、タンクなど) を制御する、または固有のコントロールを持つ他のポーン (プレイヤーが制御可能な装着されたマシンガンなど) を制御する状況など、入力情報を伝えるためにキャラクターやポーンを所有します。
**プレイヤー コントローラ** は、ポーンに指示を出すものであり、ポーンの所有には、プレイヤー コントローラを指定する必要があります。ポーン自体は人間の形をしたキャラクターである必要はありません。基本的な動きを適用し、プレイヤーが制御できるものであれば何でもかまいません。一方、キャラクターは、コリジョンを含み、人間のような基本的な動きを可能にする CharacterMovement コンポーネントをデフォルトで含むポーンの一形態です。
-以下のセットアップ セクションにあるリンクは、ブループリントを使用したポーン所有の例を示します。
+以下のリンク先のSetup セクションでは、ブループリントを使用したポーン所有の例を説明しています。
-## セットアップ
+## 実装ガイド
-ブループリントを使ったポーン所有については、以下を参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\PossessPawns\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/PossessPawns" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.KOR.udn
index 7e0e41e91cfd..cf07e5b1d40a 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/PossessPawns/GHT_4_Overview.KOR.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:폰 빙의
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 다양한 폰을 빙의하는 비법 안내입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:3
게임의 여러 플레이가능 캐릭터를 전환하거나, 캐릭터가 (차량, 비행기, 탱크 등의) 비히클에 탑승하도록 하거나, 별도로 제어되는 다른 폰(플레이어가 제어할 수 있는 일체형 기관총같은 것)을 제어하도록 하려는 경우, 거기에 입력 정보를 전달하기 위해서는 그 **캐릭터** 또는 **폰** 을 **빙의** (Possess)하는 것이 좋을 것입니다.
@@ -14,16 +15,9 @@ order:3
아래 **구성** 부분의 링크를 통해 블루프린트를 사용한 **폰 빙의** 예제를 참고할 수 있습니다.
-## 구성
+## 구현 안내
-블루프린트를 사용한 **폰 빙의** 관련 상세 정보는, 아래 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\PossessPawns\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\PossessPawns\Code)
-[/PUBLISH:Docs]
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/PossessPawns" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/Blueprints/GHT_5B.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/Blueprints/GHT_5B.INT.udn
index 1040ab4a511f..122bf2b667cb 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/Blueprints/GHT_5B.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/Blueprints/GHT_5B.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/ReferenceAssets
Description:A How To Guide for referencing Actors in Blueprints.
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/Blueprints/GHT_5B.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/Blueprints/GHT_5B.KOR.udn
index a7c1fb69d678..01ceda2617c0 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/Blueprints/GHT_5B.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/Blueprints/GHT_5B.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 액터 레퍼런싱
Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/ReferenceAssets
Description:블루프린트에서 액터를 레퍼런싱하는 비법 안내서입니다.
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.INT.udn
index fe43052b09c4..ba63b836fedf 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.INT.udn
@@ -4,7 +4,8 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Referencing Actors in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:5
[EXCERPT:ReferenceOverview]
@@ -17,16 +18,9 @@ Getting proper reference to an Actor is also important for communication between
The link below in the Setup section will give you examples on How to Reference Actors using Blueprints.
-## Setup
+## Implementation Guides
-To learn more about Referencing Actors using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\ReferenceAssets\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\ReferenceAssets\Code)
-[/PUBLISH:Docs]
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/ReferenceAssets" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.JPN.udn
index 03b7de34a764..2a405850eda8 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.JPN.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:アクタを参照する
Crumbs: %ROOT%, Gameplay
Description:UE4 でアクタを参照するための操作ガイド
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Advanced
+type:overview
order:5
[EXCERPT:ReferenceOverview]
@@ -16,18 +17,11 @@ order:5
アクタへの適切な参照を取得することは、アクタ間のやりとりでも重要です。参照を誤って指定するとやりとりに失敗して望ましくない結果を招くからです。
[/EXCERPT:ReferenceOverview]
-[Setup] セクションの下の方にあるリンクで、ブループリントを使用してアクタを参照する方法を紹介しています。
+以下のリンクの [Setup] セクションで、ブループリントを使用してアクタを参照する方法を紹介しています。
-## セットアップ
+## 実装ガイド
-ブループリントでアクタを参照する方法については、以下を参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\ReferenceAssets\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/ReferenceAssets" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.KOR.udn
index 6d2961b8d91c..41a887492e3f 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/ReferenceAssets/GHT_5_Overview.KOR.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:액터 레퍼런싱
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 액터를 레퍼런싱하는 방법 안내서입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:5
[EXCERPT:ReferenceOverview]
@@ -18,16 +19,9 @@ order:5
아래 **셋업** 부분의 링크에는 블루프린트를 사용한 **액터 레퍼런싱 방법** 에 대한 예제가 있습니다.
-## 셋업
+## 구현 안내
-블루프린트를 사용한 **액터 레퍼런싱** 관련 상세 정보는, 다음 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\ReferenceAssets\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\ReferenceAssets\Code)
-[/PUBLISH:Docs]
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/ReferenceAssets" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.INT.udn
index eeed9963d3c1..65c5cd6f3a28 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/RespawnPlayer
Description:A How To Guide for respawning a player character through Blueprints in Unreal Engine 4.
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.JPN.udn
index 859ab51ad926..4479201078f0 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:2697187
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントでプレイヤーをリスポーンするための操作ガイド
Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/RespawnPlayer
Description:UE4 のブループリントでプレイヤー キャラクターをリスポーンするための操作ガイド
Version:4.9
SkillLevel:Advanced
+type:how-to
[TOC (start:2)]
@@ -60,7 +61,7 @@ _以下の手順は、**Blueprint Third Person Template** プロジェクトの

- ノードをメニューに表示するために **Context Sensitive** オプションのチェックを再度入れる必要があるかもしれません。
+ ノードをメニューに表示するために **Context Sensitive** を再確認する必要があるかもしれません。
1. このカスタム イベントを **Cast To ThirdPersonCharacter** ノードに接続します。
@@ -72,7 +73,7 @@ _以下の手順は、**Blueprint Third Person Template** プロジェクトの
_画像をクリックしてフルサイズで表示_
-1. **コンパイル** し **保存** してから、ブループリントを終了します。
+1. **コンパイル** し **保存** してから、ブループリントを閉じます。
1. **ThirdPersonCharacter** ブループリントを開き、グラフ内で **右クリック** し、**Event Begin Play** ノードを追加します。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.KOR.udn
index c9f31e4c2cab..45558f96ed6c 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/Blueprints/GHT_3B.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트로 플레이어 리스폰
Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/RespawnPlayer
Description:언리얼 엔진 4 에서 블루프린트를 통해 플레이어 캐릭터를 리스폰하는 비법 안내서입니다.
Version: 4.9
SkillLevel: Advanced
+type:how-to
[TOC (start:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.INT.udn
index 0e405f155e8c..c4c5f8d8568b 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.INT.udn
@@ -4,22 +4,15 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for respawning player characters in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:2
In most games, there comes a time when the player character is killed and you want to respawn them in the world. In this How To guide, you will learn how to set up a simple respawn system for single player purposes.
-## Setup
-
-To learn more about Respawning a Player using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\RespawnPlayer\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\RespawnPlayer\Code)
-[/PUBLISH:Docs]
-[/REGION]
+## Implementation Guides
+[DIR(output:"role" parent:"Gameplay/HowTo/RespawnPlayer" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.JPN.udn
index c9db32d17c0d..3c53805e7530 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.JPN.udn
@@ -1,25 +1,19 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3429254
Availability:Public
-Title:プレイヤーを再スポーンするための操作ガイド
+Title:プレイヤーを再スポーンする
Crumbs: %ROOT%, Gameplay
Description:UE4 でプレイヤー キャラクターを再スポーンするための操作ガイド
+Version:4.9
+Parent:Gameplay
+SkillLevel:Advanced
+type:overview
+order:2
+ほとんどのゲームでは、プレイヤー キャラクターがキルされ、ワールドに再スポーンするときがやってきます。この操作ガイドでは、シングル プレイヤー用途での簡単な再スポーン システムのセットアップ方法について説明します。
-## 概要
-
-ほとんどのゲームでは、プレイヤー キャラクターがキルされ、ワールドに再スポーンするときがやってきます。この **操作ガイド** では、シングル プレイヤー用途での簡単な再スポーン システムのセットアップ方法について説明します。
-
-## セットアップ
-
-ブループリントを使った **プレイヤーの再スポーン** については、以下をご覧ください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\RespawnPlayer\Blueprints)
-
-[/REGION]
+## 実装ガイド
+[DIR(output:"role" parent:"Gameplay/HowTo/RespawnPlayer" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.KOR.udn
index 685cc2a9a795..56e7044294c7 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/RespawnPlayer/GHT_3_Overview.KOR.udn
@@ -1,26 +1,19 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:플레이어 리스폰
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 플레이어 캐릭터를 리스폰하는 비법 안내입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:2
대부분의 게임에서, 캐릭터가 죽고 월드에 리스폰시켜야 하는 때가 옵니다. 이 **비법** 안내에서는 싱글 플레이어용 간단한 리스폰 시스템을 구성하는 법을 배워보도록 하겠습니다.
-## 구성
-
-블루프린트를 사용한 **플레이어 리스폰** 관련 상세 정보는, 아래 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\RespawnPlayer\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\RespawnPlayer\Code)
-[/PUBLISH:Docs]
-[/REGION]
+## 구현 안내
+[DIR(output:"role" parent:"Gameplay/HowTo/RespawnPlayer" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.INT.udn
index d1aa3cfb3a87..ef6dffa6b8fe 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\SetUpInput
Description:A How To Guide for Setting Up Inputs in Blueprints.
Version: 4.9
SkillLevel: Intermediate
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.JPN.udn
index 2f770bd215b9..748f9427c36e 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:2747903
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントで入力をセットアップする操作手順
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\SetUpInput
Description:ブループリントで入力をセットアップする操作手順
Version:4.9
SkillLevel:Intermediate
+type:how-to
[TOC (start:2 end:2)]
@@ -43,8 +44,8 @@ _この例では、**Starter Content** を有効にした状態で **Blank** プ
[REGION:raw]

[/REGION]
-
[REGION:note]
+
この **Spring Arm** コンポーネントは、子を親から固定距離に保とうとしますが、コリジョンがあると収縮し、コリジョンがないと戻ります。この場合の子は **カメラ** であり、サードパーソンの視点を持つようにします。
[/REGION]
@@ -70,7 +71,7 @@ _この例では、**Starter Content** を有効にした状態で **Blank** プ

-1. **コンパイル** し **保存** してから、ブループリントを閉じます。
+1. **コンパイル** し **保存** してから、ブループリントを閉じます。
### ゲームモードを作成して単純なキャラクターを使用する
@@ -88,17 +89,17 @@ _この例では、**Starter Content** を有効にした状態で **Blank** プ

-1. **コンパイル** し **保存** してから、ブループリントを閉じます。
+1. **コンパイル** し **保存** してから、ブループリントを閉じます。
-1. メインエディタ ウィンドウで、メニューバーから **[編集]** ボタンをクリックして **[Project Settings]** を選択します。
+1. メイン エディタ ウィンドウで、メニューバーから **[Edit (編集)]** ボタンをクリックして **[Project Settings]** を選択します。

- プロジェクトに対して新規作成した **GameMode** を使用するように設定します。
+ この新規作成した **GameMode** を使用するようにプロジェクトに対して指示します。
1. **[Project Settings]** で、**[Maps & Modes]** オプションをクリックします。
-1. **Maps & Modes** の **Default Modes** で、**Default GameMode** のドロップダウンをクリックして、**GameMode** を選択します。
+1. **[Maps & Modes]** の **[Default Modes]** で、**[Default GameMode]** のドロップダウンをクリックして、**GameMode** を選択します。

@@ -119,8 +120,8 @@ _この例では、**Starter Content** を有効にした状態で **Blank** プ
ここでは、各マッピングに名前を付け、そのマッピングに対する入力を割り当てます。**Scale** としてハイライトされている **スケール** 値を **-1.0** に設定するようにします。これは軸の値を合計するときにキーの値の乗数として機能します (逆方向にすることができます)。
+ ## ブループリントでアクション / 軸のマッピングを実装する
-## ブループリントでアクション / 軸のマッピングを実装する
**Project Settings** で入力を作成すると、こうした入力を **ブループリント** 内から呼び出すことができます。このセクションでは単純なキャラクター (または独自のキャラクターを使用する場合はそのキャラクター) の入力設定を実装します。
@@ -170,7 +171,7 @@ _この例では、**Starter Content** を有効にした状態で **Blank** プ

-1. **Make Rot** ノードで **右クリック** して、**Break link to Break Rot (Yaw)** を選択します。
+1. **Make Rot** ノード上で **右クリック** して、**[Break link to Break Rot (Yaw)]** を選択します。

@@ -188,7 +189,7 @@ _この例では、**Starter Content** を有効にした状態で **Blank** プ
_シーケンスは上の画面のようになります。_
-1. **コンパイル** し **保存** してから、ブループリントを終了します。
+1. **コンパイル** し **保存** してから、ブループリントを終了します
1. エディタで再生します。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.KOR.udn
index e97878e5be25..8e4042a69d54 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/Blueprints/SetInput_BP.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트 입력 구성 비법
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\SetUpInput
Description:블루프린트에 입력을 구성하는 비법 안내입니다.
Version: 4.9
SkillLevel: Intermediate
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.INT.udn
index fb1eae5b721f..7ebc1635ddbf 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.INT.udn
@@ -4,7 +4,8 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Setting Up Inputs in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:8
@@ -12,16 +13,9 @@ After you have imported or created your Character, Vehicle, or Flying Spaceship
Once you have defined your Mappings, you can then bind them to behaviors in Blueprints or C++ (see the Setup section below).
-## Setup
+## Implementation Guides
-To learn more about Setting Up Input using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SetUpInput\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\SetUpInput\Code)
-[/PUBLISH:Docs]
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/SetUpInput" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.JPN.udn
index e8b323dca92f..fd8da7a60a04 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.JPN.udn
@@ -1,28 +1,22 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:入力の設定
Crumbs: %ROOT%, Gameplay
Description:UE4 で入力をセットアップする操作手順
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Intermediate
+type:overview
order:8
-キャラクター、ビークル、宇宙船のアセットをインポートまたは作成したら、プレイヤーの入力にどのように反応するかを定義する必要があります。入力の定義は主にユーザー定義の **アクション マッピング** (キーの押下と解放用) と **軸マッピング** (連続範囲を持つ入力用) のバインディングで行われます。
+Character、 Vehicle、または Flying Spaceship のアセットをインポートまたは作成したら、プレイヤーの入力にどのように反応するかを定義する必要があります。入力の定義は主にユーザー定義の **アクション マッピング** (キーの押下と解放用) と **軸マッピング** (連続範囲を持つ入力用) のバインディングで行われます。
マッピングを定義したら、それらをブループリントまたは C++ のビヘイビアにバインドできます (以下のセットアップ セクションを参照)。
-## セットアップ
+## 実装ガイド
-ブループリントを使用した入力を設定する方法については、以下のリンクをご覧ください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SetUpInput\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/SetUpInput" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.KOR.udn
index 3fc40dd6ca1a..4db85bd10324 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SetUpInput/SetUpInputOverview.KOR.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:입력 구성
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 입력을 구성하는 비법 안내서입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Intermediate
+type:overview
order:8
@@ -13,16 +14,9 @@ order:8
**매핑** 정의 이후에는 그 작동방식을 블루프린트나 C++ 에서 바인딩하면 됩니다 (아래 **구성** 부분 참고).
-## 구성
+## 구현 안내
-블루프린트를 사용한 **입력 구성** 방법에 대해 자세히 알아보려면, 아래 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SetUpInput\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\SetUpInput\Code)
-[/PUBLISH:Docs]
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/SetUpInput" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.INT.udn
index 5a26317c4146..a9ba69cdba92 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\SettingUpAGameMode
Description:A How To Guide for Setting Up a Game Mode in Blueprints.
Version: 4.14
SkillLevel: Advanced
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.JPN.udn
index fb1476451a28..387508efa010 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:2697210
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントでゲームモードをセットアップする操作手順
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\SettingUpAGameMode
Description:ブループリントでゲームモードをセットアップする操作手順
-Version:4.9
+Version:4.14
SkillLevel:Advanced
+type:how-to
[TOC (start:2 end:2)]
@@ -18,13 +19,13 @@ _以下の例では、**Blueprint Third Person Template** を使用しますが
[INCLUDE:Engine/Blueprints/UserGuide/Types/ClassBlueprint/Creation#CreateBP1]
-**[Pick Parent Class]** ウィンドウで、**Game Mode** クラスを選択します。
+**[Pick Parent Class]** ウィンドウで、**Game Mode Base** クラスを選択します。これは Game Mode の親クラスです。
## Game Mode のデフォルトを編集する
1. Game Mode のデフォルトを開くには、そのブループリント上で **ダブル クリック** して **Class Defaults (クラスのデフォルト)**  ボタンをクリックし、**[詳細]** パネルでブループリント デフォルトを開きます。
-1. **ゲーム モード** には、ゲームのデフォルト設定として使用可能ないくつかのオプションがあります (デフォルトのキャラクター、HUD など)。
+1. **Game Mode** には、ゲームのデフォルト設定として使用可能ないくつかのオプションがあります (デフォルトのキャラクター、HUD など)。

@@ -53,7 +54,7 @@ _以下の例では、**Blueprint Third Person Template** を使用しますが
これで、プロジェクトが読み込まれるたびに選択した **GameMode** が、**Default Game Mode** として割り当てられます。
-1. **Selected GameMode** の隣にある矢印をクリックすると、割り当てられた **GameMode** で使用する現在の設定が表示されます。
+1. **Selected GameMode** の隣にある矢印をクリックすると、割り当てられた **GameMode** が使用する現在の設定を見ることができます。

diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.KOR.udn
index 64e2e519d984..aa796c126414 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/Blueprints/GameMode_BP.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3151861
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트로 게임 모드 구성
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\SettingUpAGameMode
Description:블루프린트로 게임 모드를 구성하는 비법 안내서입니다.
Version: 4.14
SkillLevel: Advanced
+type:how-to
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.INT.udn
index 851ea9a0b710..e77d8c488ae0 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.INT.udn
@@ -4,24 +4,17 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Setting Up a Game Mode in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:7
The **GameMode** defines the game's set of rules. The rules can include how players join the game, game pausing, and level transition, as well as any game-specific behavior such as win conditions. The GameMode is set for each level, and GameModes can be reused in multiple levels.
The link below in the Setup section will give you examples on How to Set Up a Game Mode using Blueprints.
-## Setup
-
-To learn more about Setting Up a Game Mode using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SettingUpAGameMode\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\SettingUpAGameMode\Code)
-[/PUBLISH:Docs]
-[/REGION]
+## Implementation Guides
+[DIR(output:"role" parent:"Gameplay/HowTo/SettingUpAGameMode" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.JPN.udn
index a98d5fb299a3..2d1c80b119b3 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.JPN.udn
@@ -1,28 +1,21 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:ゲームモードをセットアップする
Crumbs: %ROOT%, Gameplay
Description:UE4 でゲームモードをセットアップする操作手順
Version:4.9
Parent:Gameplay
-type:how-to
+SkillLevel:Advanced
+type:overview
order:7
**GameMode** は、ゲームのルール セットを定義します。このルールには、プレイヤーがどのようにゲームに参加するか、ゲームの一時停止、レベルの移行、および勝利条件などのゲーム固有の動作が含まれます。ゲーム モードは、各レベルに対して設定され、複数レベルで再利用できます。
以下のセットアップ セクションにあるリンク先では、ブループリントを使用したゲームモードのセットアップ方法の例を示します。
-## セットアップ
-
-ブループリントを使用したゲームモードの設定方法については、以下のリンクをご覧ください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SettingUpAGameMode\Blueprints)
-
-[/REGION]
+## 実装ガイド
+[DIR(output:"role" parent:"Gameplay/HowTo/SettingUpAGameMode" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.KOR.udn
index 2c43d6d5bc00..a4c9eb826d41 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SettingUpAGameMode/GameModeOverview.KOR.udn
@@ -1,28 +1,21 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:게임 모드 구성
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 게임 모드를 구성하는 비법 안내서입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+SkillLevel: Advanced
+type:overview
order:7
**GameMode** (게임 모드)는 게임의 규칙 세트를 정의합니다. 그 규칙에는 플레이어의 게임 참가, 게임 일시정지, 레벨 전환 방식은 물론, 승리 조건과 같은 게임 전용 작동방식이 포함됩니다. GameMode 는 각 레벨별로 설정되며, 다수의 레벨에서 재사용 가능합니다.
아래 **구성** 부분의 링크를 통해 블루프린트를 사용해서 **게임 모드 구성 비법** 예제를 살펴볼 수 있습니다.
-## 구성
-
-블루프린트를 사용한 **게임 모드 구성** 방법 관련 상세 정보는, 아래 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SettingUpAGameMode\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\SettingUpAGameMode\Code)
-[/PUBLISH:Docs]
-[/REGION]
+## 구현 안내
+[DIR(output:"role" parent:"Gameplay/HowTo/SettingUpAGameMode" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.INT.udn
index 794340f775df..e2cdbfd7ac7a 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.INT.udn
@@ -4,6 +4,7 @@ Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/SpawnAndDestroyActors
Description:A How To Guide for Spawning/Destroying Actors through Blueprints in Unreal Engine 4.
Version: 4.9
SkillLevel:Intermediate
+type:how-to
[TOC (start:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.JPN.udn
index 1759bd576ffa..830477bce4d1 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.JPN.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:2705356
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントでアクタをスポーン/ 破壊する方法
Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/SpawnAndDestroyActors
Description:UE4 のブループリントでアクタをスポーン / 破壊するための操作ガイド
Version:4.9
SkillLevel:Intermediate
+type:how-to
[TOC (start:2)]
@@ -172,6 +173,7 @@ Transform を手動で設定する方法およびアクタの Transform を参
Level ブループリントでスポーンされたアクタを破壊するには、以下の操作を行います。
1. エディタ内で任意のプロジェクトを一旦開き、 **[ブループリント]** ボタンと **Open Level Blueprint** をクリックします。
+
[REGION:raw]

[/REGION]
@@ -208,7 +210,7 @@ Level ブループリントでスポーンされたアクタを破壊するに
SpawnActor ノードを実行してアクタをスポーンすると、必要に応じたイベントの種類でアクタの破壊がトリガーされます。
-ブループリントを使った作業の詳細については、 [](Engine/Blueprints/UserGuide) を参照してください。
+ブループリント を使った作業の詳細については、 [](Engine/Blueprints/UserGuide) を参照してください。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.KOR.udn
index 7cc00a4e1b49..350360310714 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/Blueprints/GHT_1B.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 액터 스폰/소멸
Crumbs: %ROOT%, Gameplay, Gameplay/HowTo/SpawnAndDestroyActors
Description:언리얼 엔진 4 에서 블루프린트를 통해 액터를 스폰/소멸시키는 법에 대한 비법입니다.
Version: 4.9
SkillLevel:Intermediate
+type:how-to
[TOC (start:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.INT.udn
index 115a92707beb..9bf405b76e4a 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.INT.udn
@@ -4,22 +4,15 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Spawning Actors in Unreal Engine 4.
Version: 4.9
Parent:Gameplay
-type:how-to
+type:overview
order:1
-skilllevel:Beginner
+SkillLevel:Intermediate
Often times in your game you will find that you want to add items to your levels dynamically during gameplay, this is called Spawning an Actor. Items you want to spawn could be anything from other players or enemies to pick-ups such as Health, Weapons, or Rewards. On this page, you will find information regarding how to spawn an Actor through Blueprints.
-## Setup
+## Implementation Guides
-To learn more about spawning/destroying Actors using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SpawnAndDestroyActors\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\SpawnAndDestroyActors\Code)
-[/PUBLISH:Docs]
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/SpawnAndDestroyActors" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.JPN.udn
index 5106ebe74e7b..042bb250fff3 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.JPN.udn
@@ -1,26 +1,19 @@
-INTSourceChangelist:2735872
+INTSourceChangelist:3429254
Availability:Public
Title:アクタをスポーン/ 破壊する方法の概要
Crumbs: %ROOT%, Gameplay
Description:UE4 でアクタをスポーン / 破壊するための操作ガイド
Version:4.9
Parent:Gameplay
-type:how-to
+type:overview
order:1
-skilllevel:Beginner
+SkillLevel:Intermediate
-ゲームプレイ中にアイテムを動的にレベルに追加したい場合がよくあります。これをアクタをスポーンするといいます。スポーンしたいアイテムは、他のプレイヤーや敵からヘルス値、武器、報酬などのピックアップに至るまで、何でも選ぶことができます。このページでは、ブループリントを使ってアクタをスポーンする方法を説明します。
+ゲームプレイ中にアイテムを動的にレベルに追加する場合がよくあります。これをアクタをスポーンするといいます。スポーンするアイテムは、他のプレイヤーや敵からヘルス値、武器、報酬などのピックアップに至るまで、何でも選ぶことができます。このページでは、ブループリントを使ってアクタをスポーンする方法を説明します。
-## セットアップ
+## 実装ガイド
-ブループリントで アクタをスポーン / 破壊する方法については、以下のリンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SpawnAndDestroyActors\Blueprints)
-
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/SpawnAndDestroyActors" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.KOR.udn
index 9c86589ee40c..d1c7d2390483 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/SpawnAndDestroyActors/GHT_1_Overview.KOR.udn
@@ -1,26 +1,19 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:액터 스폰/소멸 개요
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 액터를 스폰하는 비법 안내입니다.
Version: 4.9
Parent:Gameplay
-type:how-to
+type:overview
order:1
-skilllevel:Beginner
+SkillLevel:Intermediate
종종 게임에서 게임플레이 도중 동적으로 레벨에 아이템을 추가시키고 싶을 때가 있습니다. 그런 것을 **액터** 를 **스폰** 시킨다고 합니다. 스폰하고자 하는 아이템은 다른 플레이어나 적에서부터 생명력, 무기, 보상과 같은 픽업이 될 수도 있습니다. 여기서는 **블루프린트** 를 통해 **액터** 를 스폰시키는 법에 대한 정보를 알아보겠습니다.
-## 구성
+## 구현 안내
-블루프린트를 사용하여 액터를 스폰/소멸시키는 데 대한 정보는, 다음 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\SpawnAndDestroyActors\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\SpawnAndDestroyActors\Code)
-[/PUBLISH:Docs]
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/SpawnAndDestroyActors" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.INT.udn
index 9c954a713214..fb61a395c9ec 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.INT.udn
@@ -6,6 +6,8 @@ Related: Engine/Blueprints
Related: Engine/Blueprints/UserGuide/Events
Related: Engine/Blueprints/UserGuide/CastNodes
version: 4.9
+type:how-to
+skilllevel:Intermediate
On this page we will use the **OnComponentHit** and **Event Hit** [](Engine/Blueprints/UserGuide/Events) to apply damage to and fracture a Destructible Mesh as well as apply an impulse at the hit location to push the destructible, simulating the effects of being hit by a projectile and applying force at the hit location.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.JPN.udn
index db8263bb898c..24f7ac31e718 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2711665
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントで OnHit Event を使用する
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UseOnHit
@@ -7,9 +7,11 @@ Related:Engine/Blueprints
Related:Engine/Blueprints/UserGuide/Events
Related:Engine/Blueprints/UserGuide/CastNodes
version:4.9
+type:how-to
+skilllevel:Intermediate
-このページでは **OnComponentHit** と **Event Hit** [](Engine/Blueprints/UserGuide/Events) を使って被破壊メッシュにダメージを与えて破砕します。また、ヒット位置に推進力を適用し被破壊物をプッシュして、発射物によってヒットされるエフェクトをシミュレーションし、ヒット位置に力を適用します。
+このページでは **OnComponentHit** と **Event Hit** の [](Engine/Blueprints/UserGuide/Events) を使って被破壊メッシュにダメージを与えて破砕します。また、ヒット位置に推進力を適用し被破壊物をプッシュして、発射物によってヒットされるエフェクトをシミュレーションし、ヒット位置に力を適用します。
[REGION:note]
このチュートリアルでは **スターター コンテンツ** を有効にした状態で **Blueprint First Person** テンプレートを使用します。
@@ -53,7 +55,7 @@ version:4.9

- ここでは **FirstPersonProjectile** という別のブループリントに [](Engine/Blueprints/UserGuide/CastNodes) します。被破壊メッシュをヒットする場合、実際には FirstPersonProjectile ブループリントがヒットするようにします。その場合、スクリプトを追加して、このメッシュを破砕して粉々にすることができます。そうでなければ何も行いません。
+ ここでは **FirstPersonProjectile** という別のブループリントに対して [](Engine/Blueprints/UserGuide/CastNodes) を行います。被破壊メッシュをヒットする場合、実際には FirstPersonProjectile ブループリントがヒットするようにします。その場合、スクリプトを追加して、このメッシュを破砕して粉々にすることができます。そうでなければ何も行いません。
1. **Hit** ピンを引き出して、**Break Hit Result** ノードを追加します。
@@ -75,11 +77,11 @@ version:4.9
ノードをすべて接続すると、上のようなグラフになります。
-1. **コンパイル** し **保存** してから、ブループリントを閉じます。
+1. **コンパイル** し **保存** してから、ブループリントを終了します
1. **コンテンツ ブラウザ** からこのブループリントをレベルにドラッグします。
- 
+ 
1. エディタで再生するには、**Play** を押して、キューブで発射物を発射するには **左マウス** ボタンを使用します。
@@ -102,7 +104,7 @@ version:4.9
[REGION:lightbox]
[](OnHit12.png)
[/REGION]
- _拡大表示するにはここをクリック_
+ _拡大表示するにはここをクリック_
このブループリントのスクリプトは、ヒットされる物体が物理をシミュレーションするかをチェックします (ここではキューブのブループリントで true にしました)。物理をシミュレーションする場合、ヒットする位置で推進力を適用します (その量は、黄色のボックス内で定義されます。ここでは 50 に減らしました)。この値を調整して、ヒットが発生したときに適用される推進力の大きさを増減させることができます。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.KOR.udn
index 3b7eaea1c122..1e85226d40ed 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Blueprints/UseOnHit_BP.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 OnHit 이벤트 사용
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UseOnHit
@@ -7,6 +7,8 @@ Related: Engine/Blueprints
Related: Engine/Blueprints/UserGuide/Events
Related: Engine/Blueprints/UserGuide/CastNodes
version: 4.9
+type:how-to
+skilllevel:Intermediate
이 글에서는 **OnComponentHit** 와 **Event Hit** [이벤트](Engine/Blueprints/UserGuide/Events) 를 사용하여 대미지를 적용하고 디스트럭터블 메시를 부수고 적중 위치에 충격을 가해 디스트럭터블을 밀어내도록 하여, 발사체에 맞아 적중 위치에 힘을 가하는 효과를 시뮬레이션해 보겠습니다.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Code/UseOnHit_Code.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Code/UseOnHit_Code.JPN.udn
index a82b0f528709..0d3e57e70133 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Code/UseOnHit_Code.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Code/UseOnHit_Code.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2395232
+INTSourceChangelist:3429254
Availability:Docs
Title:コードでアクタに入力を設定する方法
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\ActorInput
@@ -8,11 +8,11 @@ Description:コードでアクタに入力を設定するためのガイド
## 概要
-## アクタ入力を有効にする
+## アクタの入力を有効にする
-## アクタ入力を無効にする
+## アクタの入力を無効にする
-## 入力使用を有効 / 無効にする
+## 入力の使用を有効/無効にする
### 入力の詳細
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Code/UseOnHit_Code.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Code/UseOnHit_Code.KOR.udn
index de4be157f057..9f31cc0326ac 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Code/UseOnHit_Code.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/Code/UseOnHit_Code.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Docs
Title:코드에서 액터에 입력 구성 비법
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\ActorInput
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.INT.udn
index 2a104471f176..ec13bd54a882 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.INT.udn
@@ -4,20 +4,16 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide to for using the OnHit Event in Blueprints or Code.
version: 4.9
Parent:Gameplay
-type:how-to
+skilllevel:Intermediate
+type:overview
order:14
If you are creating a game that involves any kind of damage to a player, enemy, or object, chances are you will run into the situation where you need to determine if they were hit by something and if so, who hit them, where the impact point was, or other information regarding the hit detected. The OnHit Event will provide this information and much more when the collision occurs in which you can use the data to drive changes in your game be it affecting health, destroying an object, or other gameplay related actions.
-## Setup
-
-To learn more about using the OnHit Event using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UseOnHit\Blueprints)
-[/REGION]
+## Implementation Guides
+[DIR(output:"role" parent:"Gameplay/HowTo/UseOnHit" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.JPN.udn
index fc3aba9185fb..2b652bbc1e8d 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.JPN.udn
@@ -1,24 +1,20 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
-Title: OnHit Event を使用する
+Title:OnHit Event を使用する
Crumbs: %ROOT%, Gameplay
Description:ブループリントまたはコードでOnHit Event を使用するための操作ガイド
version:4.9
Parent:Gameplay
-type:how-to
+skilllevel:Intermediate
+type:overview
order:14
プレイヤー、敵、またはオブジェクトに対し何らかのダメージを与えるゲームを制作中であれば、何かにヒットされるのか、その場合実際何がヒットするのか、衝撃点、または検知されたヒットに関するその他の情報の判断が必要になるかもしれません。OnHit Event はコリジョン発生時にこうした情報を提供します。こうしたデータを使用してヘルスに及ぼす影響、オブジェクトの破壊、またはその他のゲームプレイ関連のアクションなどゲーム進行の変更を操作できます。
-## セットアップ
-
-ブループリントで OnHit Event を使用する方法については、以下のリンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UseOnHit\Blueprints)
-[/REGION]
+## 実装ガイド
+[DIR(output:"role" parent:"Gameplay/HowTo/UseOnHit" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.KOR.udn
index cd58e14504d3..0f79e6541b19 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseOnHit/UseOnHit.KOR.udn
@@ -1,24 +1,20 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:OnHit 이벤트 사용법
Crumbs: %ROOT%, Gameplay
Description:블루프린트 또는 코드에서 OnHit 이벤트 사용 비법 안내입니다.
version: 4.9
Parent:Gameplay
-type:how-to
+skilllevel:Intermediate
+type:overview
order:14
플레이어, 적, 또는 오브젝트에 어떤 유형의 대미지를 입히는 게임을 만드는 경우, 무언가에 맞았는지 결정한 다음 그렇다면 누가 때렸는지, 맞은 지점이 어디인지, 또는 그 타격 관련 기타 정보가 필요한 상황이 있을 수 있습니다. **OnHit** 이벤트로 그 정보가 제공되며, 콜리전 발생시 제공되는 훨씬 더 많은 데이터를 통해 게임에서 생명력 변경, 오브젝트 파괴, 기타 게임플레이 동작 등의 변화를 구동시킬 수 있습니다.
-## 구성
-
-블루프린트를 사용한 **OnHit Event** 사용법 관련 상세 정보는, 다음 링크를 참고하세요:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UseOnHit\Blueprints)
-[/REGION]
+## 구현 안내
+[DIR(output:"role" parent:"Gameplay/HowTo/UseOnHit" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.CHN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.CHN.udn
index db6e46149756..4815f3ac2bfc 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.CHN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.CHN.udn
@@ -1,25 +1,25 @@
-INTSourceChangelist:0
-Availability: Public
-Title:Using Raycasts (Tracing)
+INTSourceChangelist:3146289
+Availability:Public
+Title:使用光线投射(追踪)
Crumbs: %ROOT%, Gameplay
-Description:A How To Guide for using Raycasts (Tracing) for gameplay purposes.
-version: 4.9
+Description:将光线投射(追踪)用于游戏性的指南。
+version:4.9
Parent:Gameplay
type:how-to
order:4
-There may be instances in your game where you want to determine if the player character is looking at something, and if so, alter the game state in some way (for example, highlight something when a player looks at it). Or maybe you want to determine if an enemy can see the player character, and if so, start shooting or engaging them in some way. You can accomplish both scenarios by using Raycasts (or Tracing) to "shoot" out an invisible ray which will detect geometry between two points and if geometry is hit, return what was hit so that you may then do something with it.
+游戏中可能存在这样的情况:需要确定玩家角色是否在看着某件物体;如是,则以某种方式调整游戏状态(例如在玩家看着某件物体时将其高亮显示)。或者需要确定敌人是否能看到玩家角色;如是,则开始射击或以其他方式攻击。使用光线投射(或追踪)可实现这两种情况——“发射”一道不可见的光线检测两点之间的几何体;如命中几何体,返回被击中的内容,以便对其进行操作。
-There are several different options available when running a Trace. You can run a Trace to check for collision with any Objects where any Objects hit are returned, or you can run a Trace by Trace Channel where any Objects hit will return hit information only if the Object is set to specifically respond to a specified Trace Channel (which can be set via Collision Settings).
+运行追踪时有数个不同的可用选项。您可运行追踪,检查和任意目标发生的碰撞(命中的对象将被返回);或者按追踪通道运行追踪,只有在对象被设为响应特定的追踪通道时(可通过 Collision Settings 进行设置)命中的对象才返回命中信息。
-In addition to running traces by Objects or Trace Channel, you can run your Trace to detect Single hits or Multi hits, where a Single Trace returns only one a singular hit result and a Multi Trace returns multiple hits resulting from the Trace. With Traces, you can also specify the type of ray that is used: a straight line, a box, a capsule, or sphere.
+除按对象或追踪通道运行追踪外,您还可运行追踪检测单次命中或多次命中,单次追踪只返回单次命中结果,多次追踪返回追踪造成的多次命中。也可通过追踪指定使用的光线类型:直线、方块、胶囊体或球体。
-## Setup
+## 设置
-To learn more about Raycasts using Blueprints , follow the link below:
+通过下方链接了解更多使用蓝图的光线追踪。
[REGION:buttonlist]
-* [](Gameplay\HowTo\UseRaycasts\Blueprints)
+* [](Engine/Physics/Tracing/HowTo)
[PUBLISH:Docs]
* [](Gameplay\HowTo\UseRaycasts\Code)
* [](Gameplay/HowTo/UseRaycasts/UVCoordsFromTrace)
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.INT.udn
index 01e820536edb..bd6adf5b95a5 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.INT.udn
@@ -18,7 +18,7 @@ In addition to running traces by Objects or Trace Channel, you can run your Trac
To learn more about Raycasts using Blueprints , follow the link below:
[REGION:buttonlist]
-* [](Gameplay\HowTo\UseRaycasts\Blueprints)
+* [](Engine/Physics/Tracing/HowTo)
[PUBLISH:Docs]
* [](Gameplay\HowTo\UseRaycasts\Code)
* [](Gameplay/HowTo/UseRaycasts/UVCoordsFromTrace)
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.KOR.udn
index 711b95c9549b..4dbb984b05d4 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseRaycasts/GHT_2_Overview.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3146289
+INTSourceChangelist:3429254
Availability: Public
Title:레이캐스트, 트레이스 사용법
Crumbs: %ROOT%, Gameplay
@@ -19,7 +19,7 @@ order:4
블루프린트를 사용한 레이캐스트 관련 상세 정보는 다음과 같습니다:
[REGION:buttonlist]
-* [](Gameplay\HowTo\UseRaycasts\Blueprints)
+* [](Engine/Physics/Tracing/HowTo)
[PUBLISH:Docs]
* [](Gameplay\HowTo\UseRaycasts\Code)
* [](Gameplay/HowTo/UseRaycasts/UVCoordsFromTrace)
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.INT.udn
index ac3ecd27a2fa..e4aaee324063 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.INT.udn
@@ -3,6 +3,8 @@ Title:Using Timers in Blueprints
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UseTimers
Description:A How To Guide for using timers in Blueprints.
version: 4.9
+type:how-to
+skilllevel:Intermediate
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.JPN.udn
index 7fb2e2f2829d..6b2e5cf285a4 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.JPN.udn
@@ -1,9 +1,11 @@
-INTSourceChangelist:2713187
+INTSourceChangelist:3429254
Availability:Public
Title:ブループリントでタイマーを使用する
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UseTimers
Description:ブループリントでタイマーを使用するための操作ガイド
version:4.9
+type:how-to
+skilllevel:Intermediate
[TOC (start:2 end:2)]
@@ -79,7 +81,7 @@ version:4.9

-1. **コンパイル** し **保存** してから、ブループリントを閉じます
+1. **コンパイル** し **保存** してから、ブループリントを終了します
1. **コンテンツ ブラウザ** で **Blueprint_Effect_Fire** ブループリントをレベルへドラッグします。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.KOR.udn
index 761c4574a4fb..b51414e1a3aa 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/Blueprints/UseTimers_BP.KOR.udn
@@ -1,9 +1,11 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:블루프린트에서 타이머 사용법
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UseTimers
Description:블루프린트에서 타이머를 사용하는 비법 안내입니다.
version: 4.9
+type:how-to
+skilllevel:Intermediate
[TOC (start:2 end:2)]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.INT.udn
index 3de551e4565f..ba1224c87802 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.INT.udn
@@ -4,24 +4,17 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Using Timers for Gameplay in Unreal Engine 4.
version: 4.9
Parent:Gameplay
-type:how-to
+skilllevel:Intermediate
+type:overview
order:6
**Timers** in Unreal Engine 4 are a useful tool that can be used to perform an action once (or repeatedly) at specified intervals. Timers can be used to set actions to happen on a delay or over a period of time. For example, you may want to make the player invincible after obtaining a certain item and then revert after 10 seconds. Or, you may want to apply damage every second to a player that is standing in fire. Each of these scenarios can be accomplished with the use of Timers.
The link below in the Setup section will give you examples on How to Use Timers using Blueprints.
-## Setup
-
-To learn more about Using Timers using Blueprints, follow the link below:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UseTimers\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\UseTimers\Code)
-[/PUBLISH:Docs]
-[/REGION]
+## Implementation Guides
+[DIR(output:"role" parent:"Gameplay/HowTo/UseTimers" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.JPN.udn
index 0b17aff04354..0f471acca108 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.JPN.udn
@@ -1,28 +1,21 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:タイマーを使用する
Crumbs: %ROOT%, Gameplay
Description:UE4 でゲームプレイ用のタイマーを使用するための操作ガイド
version:4.9
Parent:Gameplay
-type:how-to
+skilllevel:Intermediate
+type:overview
order:6
-UE4 の **タイマー** は、指定した間隔で 1 度 (または繰り返し) のアクションを実行することができる便利なツールです。タイマーは、アクションを遅らせて、もしくは所定の期間に渡って発生させる際に使用します。プレイヤーがあるアイテムを取得したその 10 秒後に、無敵キャラクターとなる例が挙げられます。あるいは、火の中に立っているプレイヤーに対して 1 秒ごとにダメージを与える場合もあります。タイマーを使って、これらのシナリオを実現することができます。
+UE4 の **タイマー** は、指定した間隔で 1 度 (または繰り返し) のアクションを実行することができる便利なツールです。タイマーは、アクションを遅らせたり、所定の期間に渡ってアクションを発生させる際に使用します。プレイヤーがあるアイテムを取得したその 10 秒後に、無敵キャラクターとなる例が挙げられます。あるいは、火の中に立っているプレイヤーに対して 1 秒ごとにダメージを与える場合もあります。タイマーを使って、これらのシナリオを実現することができます。
設定セクションの下の方にあるリンクで、ブループリントを使用したタイマーの使用例 を紹介しています。
-## セットアップ
-
-ブループリントでタイマーを使用する方法については、以下を参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UseTimers\Blueprints)
-
-[/REGION]
+## 実装ガイド
+[DIR(output:"role" parent:"Gameplay/HowTo/UseTimers" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.KOR.udn
index 71b075202104..aa187609aa9b 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UseTimers/UseTimersOverview.KOR.udn
@@ -1,28 +1,21 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:타이머 사용법
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 게임플레이에 쓰이는 타이머 사용 비법 안내입니다.
version: 4.9
Parent:Gameplay
-type:how-to
+skilllevel:Intermediate
+type:overview
order:6
언리얼 엔진 4 의 **타이머** 는 일정한 기간에 한 번 (또는 반복해서) 동작을 수행하는 데 사용할 수 있는 유용한 도구입니다. **타이머** 설정해서 일정한 기간이 지나면, 또는 일정 기간에 걸쳐 수행되는 동작을 설정할 수 있습니다. 예를 들어 플레이어가 특정 아이템을 획득하면 무적이 되었다가 10 초가 지나면 원래대로 되돌아오도록 만들 수 있습니다. 아니면 플레이어가 불에 서 있는 동안 매 초마다 대미지를 적용하도록 할 수도 있습니다. 이 각각의 시나리오는 **타이머** 사용을 통해 이뤄낼 수 있습니다.
아래 **구성** 부분의 링크를 통해 블루프린트를 사용한 **타이머 사용 비법** 예제를 확인할 수 있습니다.
-## 구성
-
-블루프린트를 사용한 **타이머 사용법** 관련 상세 정보는, 다음 링크와 같습니다:
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UseTimers\Blueprints)
-[PUBLISH:Docs]
-* [](Gameplay\HowTo\UseTimers\Code)
-[/PUBLISH:Docs]
-[/REGION]
+## 구현 안내
+[DIR(output:"role" parent:"Gameplay/HowTo/UseTimers" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.INT.udn
index 56c1a23d568b..d4b8690b87b8 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.INT.udn
@@ -8,6 +8,7 @@ Related: Engine/Matinee
Related: Engine/Blueprints
SkillLevel: Beginner
Version: 4.9
+type:how-to
In this How-to we take a look at creating a static (or fixed) camera angle that is used for a player's perspective during gameplay. Once completing this tutorial, you can take the process used here and apply it to your own game to set up a fixed perspective for a player to view your game from.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.JPN.udn
index 3488890ed110..739fcd3e43fc 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2713275
+INTSourceChangelist:3429254
Availability:Public
Title:スタティック カメラの使用
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UsingCameras
@@ -9,8 +9,9 @@ Related:Engine/Matinee
Related:Engine/Blueprints
SkillLevel:Beginner
Version:4.9
+type:how-to
-この操作ガイドでは、スタティック (すなわち固定) カメラ のアングルを作成します。このアングルは、ゲームプレイ中のプレイヤーの視点のために使用します。このチュートリアルを終了すると、ここで使用したプロセスを用いて、それをご自身の独自のゲームに適用して、プレイヤーからゲームを見る固定視点をセットアップすることができます。
+この操作ガイドでは、スタティック (すなわち固定) カメラのアングルを作成します。このアングルは、ゲームプレイ中のプレイヤーの視点のために使用します。このチュートリアルを終了すると、ここで使用したプロセスを用いて、それをご自身の独自のゲームに適用して、プレイヤーからゲームを見る固定視点をセットアップすることができます。
[REGION:note]
ここでは **スターター コンテンツ** を有効にした状態で **Blueprint Third Person Template** プロジェクトを使います。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.KOR.udn
index cf1d0b798906..403853689bcb 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/Blueprints/UsingCameras_BP.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:고정 카메라 사용법
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UsingCameras
@@ -9,6 +9,7 @@ Related: Engine/Matinee
Related: Engine/Blueprints
SkillLevel: Beginner
Version: 4.9
+type:how-to
이번에는 게임플레이 도중 플레이어의 시점에 사용되는 스태틱 (고정) 카메라 앵글을 만드는 법을 살펴보겠습니다. 이 튜토리얼을 마치고나서는, 여기 사용된 프로세스를 가져다가 직접 제작중인 게임에 옮기는 것으로 플레이어에 고정 시야 구성을 해줄 수 있을 것입니다.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.INT.udn
index d86f64bc755a..7601e4a82543 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.INT.udn
@@ -9,6 +9,7 @@ Related: Engine/Matinee
Related: Engine/Blueprints
SkillLevel: Beginner
Version: 4.8
+type:how-to
In this How-to we take a look at adding a **Camera** Component to a **Blueprint** which can be used to create third person perspectives for playable or non-playable characters in your levels. By the end of this tutorial you will have gone through the process of adding a Camera Component to a Character Blueprint and set up the ability to toggle between two different perspectives for a character.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.JPN.udn
index f35bed9fa770..bf4c29c3a96f 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2615116
+INTSourceChangelist:3429254
Availability:Public
Title:Camera コンポーネントの作業
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UsingCameras
@@ -10,6 +10,7 @@ Related:Engine/Matinee
Related:Engine/Blueprints
SkillLevel:Beginner
Version:4.8
+type:how-to
この操作ガイドでは、レベル内のプレイ可能な、あるいはプレイ不可能なキャラクターに対してサードパーソン視点を作るために使用する **Camera ** コンポーネントを **ブループリント** に追加する方法を説明します。このチュートリアルの最後まで進むと、Camera コンポーネントを Character ブループリントに追加し、二種類の視点間で切り替える機能をキャラクターに対してセットアップするプロセスを学ぶことになります。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.KOR.udn
index 7b8b505ae148..b56f37fe4df2 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/CameraComponents/CameraComponents_BP.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:카메라 컴포넌트 작업
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UsingCameras
@@ -10,6 +10,7 @@ Related: Engine/Matinee
Related: Engine/Blueprints
SkillLevel: Beginner
Version: 4.8
+type:how-to
이번 비법에서는 **블루프린트** 에 **카메라** 컴포넌트를 추가, 삼인칭 캐릭터나 레벨의 플레이 불가 캐릭터의 시야를 만드는 법을 살펴보겠습니다. 이 튜토리얼이 끝날 무렵에는 캐릭터 블루프린트에 카메라 컴포넌트를 추가하는 방법과 캐릭터에 두 가지 시야 토글 기능을 구성하는 법을 살펴보도록 하겠습니다.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.INT.udn
index bd3271de63bd..1585c92daf80 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.INT.udn
@@ -8,6 +8,7 @@ Related: Engine/Matinee
Related: Engine/Blueprints
SkillLevel: Beginner
Version: 4.8
+type:how-to
[REGION:warning]
You can use your own character for this tutorial provided it has a **Camera** component assigned to it. If you do not have a character, it is recommended that you complete the [](Gameplay\HowTo\UsingCameras\CameraComponents) tutorial in order to create the basic character being used in this guide first.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.JPN.udn
index ecd8ca0d13a4..55fc1bf767aa 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2617899
+INTSourceChangelist:3429254
Availability:Public
Title:Spring Arm コンポーネントを使用する
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UsingCameras
@@ -9,16 +9,17 @@ Related:Engine/Matinee
Related:Engine/Blueprints
SkillLevel:Beginner
Version:4.8
+type:how-to
[REGION:warning]
このチュートリアルでは **Camera** コンポーネントが割り当てられていることを前提に、皆さんの独自のキャラクターをご利用いただけます。キャラクターの用意がない場合は、まずこのガイドで使われている基本的なキャラクターを作成するために [](Gameplay\HowTo\UsingCameras\CameraComponents) チュートリアルを終わらせることをお勧めします。
[/REGION]
-この操作ガイドでは、**Spring Arm** コンポーネントを追加し、それに **Camera** コンポーネントを親子付けし、カメラがゲームプレイの状況に応じて伸縮できるするようにします。通常、サードパーソン視点を作るために Camera コンポーネントをキャラクターに追加する場合も、Spring Arm を含めるようにし、レベルのジオメトリや他の物体によって邪魔される場合に、カメラがどのように状況を処理するかを自動的に制御したいでしょう。
+この操作ガイドでは、**Spring Arm** コンポーネントを追加し、それに **Camera** コンポーネントを親子付けし、カメラがゲームプレイの状況に応じて伸縮できるするようにします。通常、サードパーソン視点を作るために Camera コンポーネントをキャラクターに追加する場合、Spring Arm を含めるようにすると、レベルのジオメトリや他の物体によって邪魔される場合に、カメラがどのように状況を処理するかを自動的に制御することができます。

-レベル内の物体をカメラが貫通することを防がないことがあるかもしれませんが、Spring Arm の設定に応じて、邪魔されるようになったらカメラの位置を自動的に動かすことでその可能性を減らし、邪魔がなくなったらデフォルトの位置に戻ります。
+レベル内の物体をカメラが貫通することがあるかもしれませんが、Spring Arm の設定に応じて、邪魔があればカメラの位置を自動的に動かすことでその可能性を減らし、邪魔がなくなったらデフォルトの位置に戻ります。
1. [](Gameplay\HowTo\UsingCameras\CameraComponents) の操作から引き続き、 **Character ブループリント** を開きます。
@@ -42,13 +43,13 @@ Version:4.8
| **Camera Settings** | ピッチ (上下動)、ヨー (左右回転)、ロール (進行軸回転) を親から継承するか、 Pawn Control Rotation を使用するかを設定します |
| **Lag** | カメラがターゲット位置に遅れるかどうか、およびラグに関連づいた設定です。 |
-1. **Target Arm Length** を **100** に設定し、**Enabled Camera lag (カメラ ラグを有効)** にしました。
+1. **[Target Arm Length]** を **100** に設定し、**[Enabled Camera lag (カメラ ラグを有効)]** にしました。

- これでデフォルト設定よりも短くなり、移動するときにカメラに若干のラグを加えます。
+ これでデフォルト設定よりも短くなり、移動するときにカメラに若干遅らせます。
-1. **Compile** をクリックし、エディタで再生するには **Play** をクリックします。
+1. **[Compile]** をクリックし、**Play** をクリックしてエディタで再生します。
## 最終結果
@@ -64,7 +65,7 @@ jjf9P6u052E
[/PARAMLITERAL]
[/OBJECT]
-キャラクターを動かす場合、カメラがキャラクターの動きから若干遅れるのがわかります。壁の近くに移動し、カメラを回転させると、再配置しようとし、近くに移動します。障害物がないと、設定で指定したデフォルトの長さに戻ります。
+キャラクターを動かすと、カメラがキャラクターの動きから若干遅れるのがわかります。壁の近くに移動し、カメラを回転させると、再配置しようとし、近くに移動します。障害物がないと、設定で指定したデフォルトの長さに戻ります。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.KOR.udn
index 2f48b57129b3..e5df303efa48 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SpringArmComponents/SpringArm.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:스프링 암 컴포넌트 사용법
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UsingCameras
@@ -9,6 +9,7 @@ Related: Engine/Matinee
Related: Engine/Blueprints
SkillLevel: Beginner
Version: 4.8
+type:how-to
[REGION:warning]
이 튜토리얼에는 **카메라** 컴포넌트가 할당된 것이면 어떤 캐릭터든 사용해도 좋습니다. 캐릭터가 없는 경우, 여기서 사용되는 기본 캐릭터 생성을 위해 [](Gameplay\HowTo\UsingCameras\CameraComponents) 튜토리얼 먼저 떼고 오실 것을 추천합니다.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.INT.udn
index 81f3291a21a7..7a95c33eb0fd 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.INT.udn
@@ -8,6 +8,7 @@ Related: Engine/Matinee
Related: Engine/Blueprints
SkillLevel: Beginner
Version: 4.8
+type:how-to
In this How-to we add multiple **Camera** Actors to our level and switch between them as the player enters **Trigger** Volumes that we have placed in the level. After completing this tutorial, you will have the ability to set up your own multi-camera based game and define when each camera is used.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.JPN.udn
index acedf479bdee..53eb07c78ce1 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2615116
+INTSourceChangelist:3429254
Availability:Public
Title:複数の固定カメラ間で切り替える
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UsingCameras
@@ -9,6 +9,7 @@ Related:Engine/Matinee
Related:Engine/Blueprints
SkillLevel:Beginner
Version:4.8
+type:how-to
この操作ガイドでは、複数の **Camera** アクタをレベルに追加して、プレイヤーがレベルに配置された **Trigger** ボリュームに入るとアクタ間を切り替えます。このチュートリアルの最後まで進むと、ご自身で複数のカメラを使ったゲームをセットアップして、各カメラをいつ使用するかを定義できるようになります。
@@ -24,7 +25,7 @@ Version:4.8
[/REGION]
_拡大表示するにはここをクリック_
- 使用するアングルが異なる 3 台のカメラを配置しました。
+ 使用するアングルが異なる 3 台のカメラを配置しました。
1. **[Modes]** メニューの **Basic** で、配置したカメラの番号と一致する **Box Trigger** の番号をドラッグしてきます。
@@ -36,7 +37,7 @@ Version:4.8
カメラの変更をプレイヤーにトリガーさせたい場所へ **Box Trigger** を移動させます。
[REGION:tip]
- Box Trigger を選択した状態で、**W** (平行移動モード), **E** (回転モード)、または **R** (スケーリング モード) を押して、アクタを操作して、必要な位置、回転、スケーリングになるようにします。詳細は、 [](GettingStarted/HowTo/ManipulatingActors) を参照してください。
+ Box Trigger を選択した状態で、**W** (平行移動モード)、 **E** (回転モード)、または **R** (スケーリング モード) を押して、アクタを操作して、必要な位置、回転、スケーリングになるようにします。詳細は、 [](GettingStarted/HowTo/ManipulatingActors) を参照してください。
[/REGION]
1. それぞれのカメラを選んだ状態で、 **[Blueprints]** ボタンをクリックして **[Open Level Blueprint]** を選びます。
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.KOR.udn
index ad5252a7325f..013c28ad8409 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/SwitchingCameras/SwitchingCameras_BP.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:여러 카메라 전환
Crumbs: %ROOT%, Gameplay, Gameplay\HowTo\UsingCameras
@@ -9,6 +9,7 @@ Related: Engine/Matinee
Related: Engine/Blueprints
SkillLevel: Beginner
Version: 4.8
+type:how-to
이번 비법에서는 레벨에 **카메라** 액터를 다수 추가한 뒤 플레이어가 레벨에 배치된 **Trigger Volume** 에 들어서면 그 카메라 액터를 전환하도록 하겠습니다. 이 튜토리얼을 마치고 나면, 직접 다중 카메라 기반 게임 구성 및 각 카메라 사용 시기를 정의할 수 있을 것입니다.
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.INT.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.INT.udn
index 3c04262dc811..41c8b7a727b1 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.INT.udn
@@ -4,7 +4,8 @@ Crumbs: %ROOT%, Gameplay
Description:A How To Guide for Finding Actors in your Scenes in Unreal Engine 4.
version: 4.9
Parent:Gameplay
-type:how-to
+skilllevel:Beginner
+type:overview
order:12
This "How To" series covers working with and placing **Cameras** in Unreal Engine 4. A Camera can be used by itself and placed directly into a level or it can be a part of a Blueprint (for instance to provide a perspective for the player when flying a plane, driving a car, or controlling a character).
@@ -60,16 +61,9 @@ For information on using Cameras for cinematic purposes, refer to [](Engine/Mati
Now that you have an understanding of how to place a Camera Actor in your level and some of the settings used to alter its look, the examples below provide some ways in which you can use Camera including how to use a Camera as a viewpoint for a player, how to use a Camera Component as part of a Blueprint, how to use a Spring Arm Component with a Camera Component (typically used for creating Third Person perspectives), as well as how to switch between Cameras during gameplay.
-## Usage Examples
+## Implementation Guides
-Refer to each of the links below for step-by-step usage case examples.
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UsingCameras\Blueprints)
-* [](Gameplay\HowTo\UsingCameras\SwitchingCameras)
-* [](Gameplay\HowTo\UsingCameras\CameraComponents)
-* [](Gameplay\HowTo\UsingCameras\SpringArmComponents)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/UsingCameras" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.JPN.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.JPN.udn
index 025d22139060..1192e291d067 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.JPN.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:2735882
+INTSourceChangelist:3429254
Availability:Public
Title:カメラを使用する
Crumbs: %ROOT%, Gameplay
Description:UE4 のシーン内でアクタを見つけるための操作ガイド
version:4.9
Parent:Gameplay
-type:how-to
+skilllevel:Beginner
+type:overview
order:12
この「How To」シリーズでは、UE4 の **カメラ** の操作および配置について説明します。カメラはそれ自体でも使用できますし、直接レベルに配置したり、ブループリントの一部とすることもできます (例えば、飛行機を飛ばしたり、車を運転したり、キャラクターを制御する時にプレイヤーのために視点を作成します)。
@@ -58,19 +59,12 @@ Camera アクタを探すには、検索バーを使うか、**All Classess**
シネマティックス用にカメラを使う場合は、 [](Engine/Matinee/HowTo) ドキュメントと [Camera] セクションを参照してください。[](Resources/Showcases/MatineeFightScene) では、カットシーンのサンプル、それらの構築方法に関する素晴らしいリソースを紹介しています。
[/REGION]
-レベル内に Camera アクタ を置く方法、外観を変更する設定に関して学びました。以下の使用例では、プレイヤー視点としてのカメラの使用方法、ブループリントの一部として Camera コンポーネントを使う方法、Camera コンポーネントと合わせて Spring Arm コンポーネントを使う方法 (サードパーソン視点の作成に使用することが多い) 、ゲームプレイ中にカメラ間で切り替える方法など、カメラ操作を学びます。
+レベル内に Camera アクタを置く方法、外観を変更する設定に関して学びました。以下の使用例では、プレイヤー視点としてのカメラの使用方法、ブループリントの一部として Camera コンポーネントを使う方法、Camera コンポーネントと合わせて Spring Arm コンポーネントを使う方法 (サードパーソン視点の作成に使用することが多い) 、ゲームプレイ中にカメラ間で切り替える方法など、カメラ操作を学びます。
-##使用例:
+## 実装ガイド
-使用例の操作手順については以下の各リンクを参照してください。
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UsingCameras\Blueprints)
-* [](Gameplay\HowTo\UsingCameras\SwitchingCameras)
-* [](Gameplay\HowTo\UsingCameras\CameraComponents)
-* [](Gameplay\HowTo\UsingCameras\CameraComponents)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/UsingCameras" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.KOR.udn b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.KOR.udn
index 432a2eb7057b..49cd935fa504 100644
--- a/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/HowTo/UsingCameras/UsingCamerasOverview.KOR.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3429254
Availability: Public
Title:카메라 사용법
Crumbs: %ROOT%, Gameplay
Description:언리얼 엔진 4 에서 씬에 있는 액터를 찾는 법에 대한 비법입니다.
version: 4.9
Parent:Gameplay
-type:how-to
+skilllevel:Beginner
+type:overview
order:12
언리얼 엔진 4 의 **카메라** 작업 및 배치 방법에 대해 다루는 "비법" 시리즈입니다. **카메라** 는 레벨에 바로 배치하여 그 자체로 사용할 수고 있고, **블루프린트** 의 일부로 (비행기 조종이나 자동차 운전 및 캐릭터 제어시 플레이어의 시점을 제공해 준다든가 하는 용도로) 사용할 수도 있습니다.
@@ -61,16 +62,9 @@ order:12
레벨에 **카메라 액터** 를 배치하는 법과 그 모양을 변경하는 법이 약간 이해가 되셨을 테니, 아래 **셋업** 섹션으로 가서 카메라 작업 방법 및 카메라를 플레이어 시점으로 활용하는 법, **블루프린트** 의 일부로써 **카메라 컴포넌트** 를 사용하는 법, (전형적으로 삼인칭 시점 제작에 쓰이는) **카메라 컴포넌트** 와 **스프링 암 컴포넌트** 사용법, 게임플레이 도중의 카메라 사이 전환법도 배워 보시기 바랍니다.
-## 사용 예제
+## 구현 안내
-아래 각 링크에서 단계별 사용 예제를 참고하시기 바랍니다.
-
-[REGION:buttonlist]
-* [](Gameplay\HowTo\UsingCameras\Blueprints)
-* [](Gameplay\HowTo\UsingCameras\SwitchingCameras)
-* [](Gameplay\HowTo\UsingCameras\CameraComponents)
-* [](Gameplay\HowTo\UsingCameras\SpringArmComponents)
-[/REGION]
+[DIR(output:"role" parent:"Gameplay/HowTo/UsingCameras" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Gameplay/Input/Input.INT.udn b/Engine/Documentation/Source/Gameplay/Input/Input.INT.udn
index dd3429a65f1b..e4b51de50518 100644
--- a/Engine/Documentation/Source/Gameplay/Input/Input.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Input/Input.INT.udn
@@ -1,22 +1,23 @@
Availability: Public
Title:Input
-Crumbs:%ROOT%, Gameplay
+Crumbs:%ROOT%
Description:The Input object is responsible for converting input from the player into data in a form Actors can understand and make use of.
version: 4.15
skilllevel:Beginner
Parent:Engine/Gameplay
+order:
type:overview
+tags:Input
+[TOC (start:2 end:4)]
-The **PlayerInput** object is responsible for converting input from the player into data in a form that Actors, like PlayerControllers or Pawns,
+The **PlayerInput** Object is responsible for converting input from the player into data that Actors (like PlayerControllers or Pawns)
can understand and make use of. It is part of an input processing flow that translates hardware input from players into game events and movement with PlayerInput mappings and InputComponents.
[REGION:note]
For an example of setting up Input, refer to the [](Gameplay\HowTo\SetUpInput) documentation.
[/REGION]
-[TOC (start:2 end:4)]
-
## Hardware Input
Hardware input from a player is very straightforward. It most commonly includes key presses, mouse clicks or mouse movement, and controller button presses or joystick movement. Specialized input devices that don't conform to standard axis or button indices, or that have unusual input ranges, can be configured manually by using the [](Gameplay\Input\RawInput).
@@ -44,7 +45,7 @@ is currently zero. This allows for smooth transitions in movement or other game
### Setting Input Mappings
-Input mappings are stored in configuration files, but can be set easily through the Project Settings tab in the Level Editor.
+Input mappings are stored in configuration files, and can be edited in the Input section of Project Settings.
1. In the Level Editor, select **Edit > Project Settings**.
@@ -66,20 +67,18 @@ In this window, you can:
[/EXCERPT:PlayerInput]
## InputComponent
-InputComponents are most commonly present in Pawns and Controllers, although they can be set in other Actors and Level Scripts if desired. The InputComponent links the AxisMappings and ActionMappings in your
+**InputComponents** are most commonly present in Pawns and Controllers, although they can be set in other Actors and Level Scripts if desired. The InputComponent links the AxisMappings and ActionMappings in your
project to game actions, usually functions, set up either in C++ code or Blueprint graphs.
The priority stack for input handling by InputComponents is as follows (highest priority first):
-1. The Actor with the most-recently enabled "Accepts input" - this can be anything from a door to a pickup item.
- 1. Input handling proceeds through all Actors with "Accepts input" enabled, from most-recently enabled to least-recently enabled.
-
+1. Actors with "Accepts input" enabled, from most-recently enabled to least-recently enabled.
[REGION:tip]
If you want a particular Actor to always be the first one considered for input handling, you can re-enable its "Accepts input" and it will be moved to the top of the stack.
[/REGION:tip]
-1. Controller
-1. Level Script
-1. Pawn
+1. Controllers.
+1. Level Script.
+1. Pawns.
If one InputComponent takes the input, it is not available further down the stack.
diff --git a/Engine/Documentation/Source/Gameplay/Input/Input.JPN.udn b/Engine/Documentation/Source/Gameplay/Input/Input.JPN.udn
index 7d66c6fa0f3a..7c6f3b8a9e7b 100644
--- a/Engine/Documentation/Source/Gameplay/Input/Input.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Input/Input.JPN.udn
@@ -1,22 +1,26 @@
-INTSourceChangelist:2711553
+INTSourceChangelist:3413921
Availability:Public
Title:入力値
-Crumbs:%ROOT%, Gameplay
+Crumbs:%ROOT%
Description:プレイヤーからの入力値をアクタが使用できるデータ形式へ変換する入力オブジェクト。
-version:4.9
-
-
-**PlayerInput** オブジェクトは、プレイヤーからの入力をアクタが認識し、利用可能なデータ形式へ変換します。例えば PlayerController や Pawn などのアクタは、
-入力を認識してこれらを利用することができます。これは入力処理フローの一部で、プレイヤーからのハードウェア入力をゲームイベント、 PlayerInput マッピングや InputComponent を使用した動作へ変換します。
-
-[REGION:note]
-入力値の設定例は、 [](Gameplay\HowTo\SettingUpAGameMode) を参照してください。
-[/REGION]
+version:4.15
+skilllevel:Beginner
+Parent:Engine/Gameplay
+order:
+type:overview
+tags:Input
[TOC (start:2 end:4)]
+**PlayerInput** オブジェクトは、プレイヤーからの入力をアクタ ( PlayerController や Pawn など) が認識可能で、
+利用可能なデータ形式へ変換します。これは入力処理フローの一部で、プレイヤーからのハードウェア入力をゲームイベント、 PlayerInput マッピングや InputComponent を使用した動作へ変換します。
+
+[REGION:note]
+入力値の設定例は、 [](Gameplay\HowTo\SetUpInput) のドキュメントを参照してください。
+[/REGION]
+
## ハードウェアへの入力
-プレイヤーからのハードウェアへの入力は非常に単純です。キー入力、マウスクリックやマウス動作、そしてコントローラーボタン入力かジョイスティックによる入力が最も一般的です。
+プレイヤーからのハードウェアへの入力は非常に単純です。キー入力、マウスクリックやマウス動作、そしてコントローラーボタン入力かジョイスティックによる入力が最も一般的です。標準的な軸やボタンのインデックスに従わない特殊な入力デバイスや、通常の入力範囲を超えたものを持つ場合は、[](Gameplay\Input\RawInput) を使って手動で設定することができます。
## PlayerInput (プレイヤー入力)
@@ -26,12 +30,12 @@ PlayerInput (プレイヤー入力) はプレイヤー入力を管理する Play
「ActionMappings」と「AxisMappings」の両方で使用するハードウェアの入力定義は InputCoreTypes で設定します。
[EXCERPT:ActionMapping]
-$ ActionMappings :後にイベント駆動の動作と結合する「フレンドリーネーム」へ、ディスクリート ボタンかキー入力をマッピングします。最終的な効果は、キー、マウスボタン、またはキーパッドボタンを押す (解放する) と、特定のゲーム動作が直接トリガーされます。
+$ ActionMappings :後にイベント駆動の動作と結合する「フレンドリーネーム」へ、ディスクリート ボタンかキー入力をマッピングします。最終的な効果は、キー、マウスボタン、またはキーパッドボタンを押す (解放する) と、特定のゲーム動作が直接トリガーされます。
[/EXCERPT:ActionMapping]
[EXCERPT:AxisMapping]
-$ AxisMappings :ゲーム内の移動など、後に継続的なゲーム動作と結合する「フレンドリーネーム」へ、キーボード、コントローラーまたはマウスの入力をマッピングします。AxisMapping でマッピングされた入力値は、たとえ入力値が 0 である報告のみの場合でも、
-継続的にポーリングされます。ActionMappings への入力でトリガーされる別個のゲームイベントではなく、移動や他のゲーム動作のスムーズな遷移を有効にします。
+$ AxisMappings :ゲーム内の移動など、後に継続的なゲーム動作と結合する「フレンドリーネーム」へ、キーボード、コントローラーまたはマウスの入力をマッピングします。AxisMapping でマッピングされた入力値は、単に入力値が現在 0 である旨の報告の場合でも、
+継続的にポーリングされます。ActionMapping への入力でトリガーされる別個のゲームイベントではなく、移動や他のゲーム動作のスムーズな遷移を有効にします。
[REGION:tip]
ゲーム用コントローラーのジョイスティックなどのハードウェア軸は、「discrete 1 (ボタンを押した状態) 」または「0 (ボタンを押していない状態) 」入力ではなく、入力の度合いを感知します。つまり、わずかな入力や力強い入力でキャラクターを動かすことが可能で、その度合いによって
@@ -41,7 +45,7 @@ $ AxisMappings :ゲーム内の移動など、後に継続的なゲーム動作
### 入力マッピングの設定
-入力マッピングはコンフィギュレーション ファイルに格納されていますが、レベルエディタの [Project Settings] タブで簡単に設定できます。
+入力マッピングはコンフィギュレーション ファイルに格納されていますが、[Project Settings] の [Input] セクションで簡単に設定できます。
1. レベルエディタで、 **Edit > Project Settings** の順に選択します。
@@ -50,7 +54,7 @@ $ AxisMappings :ゲーム内の移動など、後に継続的なゲーム動作
1. 表示される **[Project Settings]** タブで **[Input]** をクリックします。
-このウィンドウで、以下の設定を行うことができます。
+このウィンドウで、以下の設定を行うことができます。
**(ハードウェア) 軸入力のプロパティの変更:**

@@ -63,17 +67,15 @@ $ AxisMappings :ゲーム内の移動など、後に継続的なゲーム動作
[/EXCERPT:PlayerInput]
## InputComponent
-InputComponent は通常ポーンやコントローラに作成されますが、必要に応じて別のアクタやレベル スクリプトに設定することも出来ます。InputComponent は、ユーザープロジェクトの AxisMapping と ActionMapping をゲームアクションとリンクさせます。
+**InputComponent** は通常ポーンやコントローラに作成されますが、必要に応じて別のアクタやレベル スクリプトに設定することも出来ます。InputComponent は、ユーザープロジェクトの AxisMapping と ActionMapping をゲームアクションとリンクさせます。
通常は関数として、C++ コードかブループリントグラフに設定します。
InputComponent による入力処理のプライオリティ スタックは、以下の通りです (優先順位の高い順から)
-1. 直前に有効となった「Accepts input」を伴うアクタ。ドアからピックアップ アイテムまでさまざまです。
- 1. 入力処理は、「Accepts input」が有効となった全てのアクタを経由して、直前に有効となったものから最も長時間有効となっている順番で処理されます。
-
+1. 「Accepts input」が有効となったアクタは、直前に有効となったものから最も長時間有効となっている順番で処理されます。
[REGION:tip]
入力処理で特定のアクタを常に優先したい場合、そのアクタの「Accepts input」を再び有効にして、スタックのトップに移動させることができます。
[/REGION:tip]
-1. コントローラー
+1. コントローラ
1. レベルスクリプト
1. ポーン
@@ -89,16 +91,16 @@ InputComponent による入力処理のプライオリティ スタックは、
この例は、UE4 に同梱される First Person テンプレートからのものです。
-1. ハードウェアへの入力:プレイヤーが W を押します。
+1. **ハードウェアへの入力:** プレイヤーが W を押します。
1. **PlayerInput Mapping:** AxisMappingは W を値 1 のスケーリングで「MoveForward」へ変換します。

-1. **InputComponent Priority Stack:** InputComponent のプライオリティ スタックを通過した「MoveForward」入力が最初に結合するものは、AFirstPersonBaseCodeCharacterクラス内にあります。このクラスは現在のプレイヤーのポーンであるため、その InputComponent は最後にチェックされます。
+1. **InputComponent Priority Stack:** InputComponent のプライオリティ スタックを通過した「MoveForward」入力が最初に結合するものは、AFirstPersonBaseCodeCharacter クラス内にあります。このクラスは現在のプレイヤーのポーンであるため、その InputComponent は最後にチェックされます。
void AFirstPersonBaseCodeCharacter::SetupPlayerInputComponent(class UInputComponent* InputComponent)
{
- // ゲームプレイのキーバインド設定
+ // set up gameplay key bindings (ゲームプレイのキーバインド設定)
check(InputComponent);
...
InputComponent->BindAxis("MoveForward", this, &AFirstPersonBaseCodeCharacter::MoveForward);
@@ -115,14 +117,14 @@ InputComponent による入力処理のプライオリティ スタックは、
{
if ( (Controller != NULL) && (Value != 0.0f) )
{
- // 前進方向の確認
+ // find out which way is forward (前進方向の確認)
FRotator Rotation = Controller->GetControlRotation();
- // 歩行または落下時のピッチ (上下動) の制限
+ // Limit pitch when walking or falling (歩行または落下時のピッチ (上下動) の制限)
if ( CharacterMovement->IsMovingOnGround() || CharacterMovement->IsFalling() )
{
Rotation.Pitch = 0.0f;
}
- // その方向へもたらす動きを追加
+ // add movement in that direction (その方向へ動きを追加)
const FVector Direction = FRotationMatrix(Rotation).GetScaledAxis(EAxis::X);
AddMovementInput(Direction, Value);
}
diff --git a/Engine/Documentation/Source/Gameplay/Input/Input.KOR.udn b/Engine/Documentation/Source/Gameplay/Input/Input.KOR.udn
index a9b2e8cec74d..ce2cd8613a0d 100644
--- a/Engine/Documentation/Source/Gameplay/Input/Input.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Input/Input.KOR.udn
@@ -1,13 +1,16 @@
-INTSourceChangelist:3340402
+INTSourceChangelist:3413921
Availability: Public
Title:입력
-Crumbs:%ROOT%, Gameplay
+Crumbs:%ROOT%
Description:Input 오브젝트는 플레이어로부터의 입력을 액터가 이해하고 활용할 수 있는 형태의 데이터로 변환하는 작업을 담당합니다.
version: 4.15
skilllevel:Beginner
Parent:Engine/Gameplay
+order:
type:overview
+tags:Input
+[TOC (start:2 end:4)]
**PlayerInput** 오브젝트는 플레이어로부터 받은 입력을 PlyaerController 나 Pawn 같은 액터가 이해하고 활용할 수 있는 형태의 데이터로 변환하는 작업을 담당합니다.
이는 PlayerInput 매핑과 InputComponent 를 가지고 플레이어의 하드웨어 입력을 게임 이벤트와 동작으로 변환하는 입력 프로세스 흐름의 일부입니다.
@@ -16,8 +19,6 @@ type:overview
**입력** 셋업 예제는, [](Gameplay\HowTo\SetUpInput) 문서를 참고하세요.
[/REGION]
-[TOC (start:2 end:4)]
-
## 하드웨어 입력
플레이어로부터의 하드웨어 입력은 매우 단순합니다. 가장 흔하게는 키 입력, 마우스 클릭, 마우스 이동, 콘트롤러 버튼 입력이나 조이스틱 이동 등이 포함됩니다. 표준 축 또는 버튼 인덱스가 아니거나 일반적이지 않은 입력 범위를 갖는 특수 입력 디바이스의 경우, [](Gameplay\Input\RawInput) 으로 수동 설정할 수 있습니다.
@@ -45,7 +46,7 @@ $ AxisMappings : 키보드, 콘트롤러, 마우스 입력을 나중에 이동
### 입력 매핑 설정
-입력 매핑은 환경설정 파일에 저장되나, 레벨 에디터의 프로젝트 세팅 탭을 통해 쉽게 설정 가능합니다.
+입력 매핑은 환경설정 파일에 저장되며, 프로젝트 세팅의 입력(Input) 섹션에서 편집 가능합니다.
1. 레벨 에디터에서 **편집 > 프로젝트 세팅** 을 선택합니다.
@@ -72,9 +73,7 @@ InputComponent 는 필요에 따라 다른 액터나 레벨 스크립트에서
InputComponent 가 처리하는 입력에 대한 우선권 스택은 다음과 같습니다 (높은 우선권 먼저):
-1. 가장 최근 "Accepts input" (입력 받음) 활성화된 액터 - 문에서 픽업 아이템까지 어느것도 가능.
- 1. 가장 최근에서부터 나중까지 "Accepts input" (입력 받음) 활성화된 모든 액터를 대상으로 입력 처리 진행
-
+1. "Accepts input" 활성화된 액터, 가장 최근에서부터 나중 활성화된 순.
[REGION:tip]
입력 처리에 있어 항상 특정 액터를 가장 처음 고려하도록 만들고 싶은 경우, "Accepts input" (입력 받음) 을 재활성화시키면 스택 최상단으로 올라갈 것입니다.
[/REGION:tip]
diff --git a/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.INT.udn b/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.INT.udn
index 3b35f0208932..c0b063a4c91e 100644
--- a/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.INT.udn
@@ -1,38 +1,60 @@
Availability:Docs
Title:RawInput Plugin
-Crumbs:%ROOT%, Gameplay, Gameplay/Input
+Crumbs:%ROOT%
Description: The RawInput plugin can read specific devices that don't conform to XInput standards.
-version: 4.15
+version: 4.16
skilllevel:Intermediate
Parent:Engine/Gameplay/Input
+Order:
type:overview
+tags:Input
-## RawInput Plugin
+[TOC (start:2 end:4)]
-The ***RawInput** plugin provides support for specific, user-defined devices that aren't properly handled by XInput, usually flight sticks and steering wheels. The buttons and axes of these input devices can be custom-mapped to gameplay inputs, including new inputs created by the plugin itself.
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ QMD-OQ2Q-dI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
-### Enabling RawInput
+The ***RawInput** plugin provides support for specific, user-defined devices that aren't properly handled by Microsoft's XInput API (Application Programming Interface), usually flight sticks and steering wheels. The buttons and axes of these input devices can be custom-mapped to gameplay inputs, including new inputs created by the plugin itself.
+
+## Enabling RawInput
By default, the plugin is not enabled. It can be enabled from the **Plugins** menu, in the **Input Devices** section.

-Once the plugin is enabled, the **Raw Input** section will appear in the **Project Settings** menu.
+After the plugin is enabled, the **Raw Input** section will appear in the **Project Settings** menu.

-### Configuring Devices
+## Configuring Devices
-Within this section, you can add new devices. Each device is identified by a vendor ID and a product ID, which are hexadecimal values that can be found in the device's driver properties. An array of axes (by default, eight) and buttons (by default, twelve) will be added to the controller's configuration. This provides the ability to map any of the controller's axes or buttons (indicated by the array index) to any **Unreal Engine** axis or key. The plugin provides eight new axes ("Generic USB Controller Axis 1" through "Generic USB Controller Axis 8") and twelve new buttons ("Generic USB Controller Button 1" through "Generic USB Controller Button 12"). Each axis and button can be enabled or disabled, and axes can also be inverted and offset.
+Within this section, you can add new devices. Each device is identified by a vendor ID and a product ID, which are hexadecimal values that can be found in the device's driver properties. An array of axes (by default, eight) and buttons (by default, twelve) will be added to the controller's configuration. This provides the ability to map any of the controller's axes or buttons (indicated by the array index) to any **Unreal Engine** axis or key. The plugin provides eight new axes ("Generic USB Controller Axis 1" through "Generic USB Controller Axis 8") and twenty new buttons ("Generic USB Controller Button 1" through "Generic USB Controller Button 20"). Each axis and button can be enabled or disabled, and axes can also be inverted and offset.

-_Above, the Hardware ID information in Windows Control Panel (under Device Manager) for the Logitech G920. The Vendor ID is the four-character string following "VID\_" test (046D), and the Product ID is the four-character string following "PID\_" (C262). This information will be required when configuring the device in RawInput._
+[REGION:caption]
+Above, you can see the Hardware ID information in Windows Control Panel (under Device Manager) for the Logitech G920. The Vendor ID is the four-character string following "VID\_" test (046D), and the Product ID is the four-character string following "PID\_" (C262). This information will be required when configuring the device in RawInput.
+[/REGION]
-### Example (Vehicle Templates)
+## Example (Vehicle Templates)
As an example, the Vehicle templates that ship with the **Unreal Engine** have been configured to work with the **Logitech G920**, a driving-game controller with a steering wheel and gas/brake pedals.
-#### Configuring the Device in RawInput
+### Configuring the Device in RawInput
The steering wheel is reported by the driver as Axis 1, the brake is reported as Axis 3, and the gas pedal is reported as Axis 4. In the RawInput plugin settings, each input must be entered into the array at the corresponding axis from the device driver. That is, the steering wheel's data must be in array element 1, the brake's data must be in array element 3, and the gas pedal's data must be in array element 4. All other entries may be removed or marked as disabled.
[REGION:note]Note that the array index of an input does not need to correspond to the "Generic USB Controller Axis" or "Generic USB Controller Input" value. For example, the brake is bound to "Generic USB Controller Axis 2" even though it is in array position 3. This is necessary to ensure that different controllers can be configured to work the same way, even if they use different input axes.[/REGION]
@@ -41,10 +63,10 @@ The steering wheel is reported by the driver as Axis 1, the brake is reported as
Because the device's output range doesn't match what we might expect from a standard controller, we will remap the input ranges. The wheel returns values from 0.0 (left) to 1.0 (right), but we want the input range to center on 0.0, so we will give it an offset of -0.5. The brake and gas pedals also return values from 0.0 to 1.0, but the device uses 0.0 to indicate that the pedal is pressed down, and 1.0 to indicate that the pedal is up, where our project expects the reverse. To make this adjustment, we set the axis values to be inverted, and then add a 1.0 offset.
-#### Mapping our RawInput Axes to Input Bindings
+### Mapping our RawInput Axes to Input Bindings

-We can then map the new axes to our game's input bindings. The wheel (on "Generic USB Controller Axis 1") is mapped to the range [-0.5, 0.5], but we want it to be more sensitive, so we can scale it up by a factor of 3.0. Similarly, the brake (on "Generic USB Controller Axis 2") needs to go in the negative direction, and should be more powerful than the gas pedal, so it will be scaled by -2.0. The gas pedal (on "Generic USB Controller Axis 3") requires no modification, and only needs to be added to the appropriate input binding. By using RawInput and adding these input bindings, we are able to support the Logitech G920 without needing any new input bindings or making any changes to our project's code or blueprints.
+We can then map the new axes to our game's input bindings. The wheel (on "Generic USB Controller Axis 1") is mapped to the range [-0.5, 0.5], but we want it to be more sensitive, so we can scale it up by a factor of 3.0. Similarly, the brake (on "Generic USB Controller Axis 2") needs to go in the negative direction, and should be more powerful than the gas pedal, so it will be scaled by -2.0. The gas pedal (on "Generic USB Controller Axis 3") requires no modification, and only needs to be added to the appropriate input binding. By using RawInput and adding these input bindings, we are able to support the Logitech G920 without needing any new input bindings or making any changes to our project's code or Blueprints.
[REGION:tip]This use of scaling provides a good argument for using the "Generic USB Controller" axes instead of configuring the device to the standard gamepad stick inputs.[/REGION]
diff --git a/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.JPN.udn b/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.JPN.udn
index f1cac5589947..27ca201b5a91 100644
--- a/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.JPN.udn
@@ -1,51 +1,73 @@
-INTSourceChangelist:0
+INTSourceChangelist:3413921
Availability:Docs
-Title:RawInput Plugin
-Crumbs:%ROOT%, Gameplay, Gameplay/Input
-Description: The RawInput plugin can read specific devices that don't conform to XInput standards.
-version: 4.15
+Title:RawInput プラグイン
+Crumbs:%ROOT%
+Description:RawInput プラグインは、XInput に対応しない特定のデバイスを読み込むことができます。
+version:4.16
skilllevel:Intermediate
Parent:Engine/Gameplay/Input
+Order:
type:overview
+tags:Input
-## RawInput Plugin
+[TOC (start:2 end:4)]
-The ***RawInput** plugin provides support for specific, user-defined devices that aren't properly handled by XInput, usually flight sticks and steering wheels. The buttons and axes of these input devices can be custom-mapped to gameplay inputs, including new inputs created by the plugin itself.
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ QMD-OQ2Q-dI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
-### Enabling RawInput
+***RawInput** プラグインは、通常、フライト スティックやハンドルなどの Microsoft の XInput API が適切に処理しない特定のユーザー定義のデバイスをサポートします。入力デバイスのボタンと軸は、プラグイン自体で作成された新規入力も含むゲームプレイ入力にカスタム マッピングすることができます。
-By default, the plugin is not enabled. It can be enabled from the **Plugins** menu, in the **Input Devices** section.
+## RawInput を有効にする
+
+デフォルトでプラグインは無効になっています。**[Plugins]** メニューの **[Input Devices]** セクションで有効にすることができます。

-Once the plugin is enabled, the **Raw Input** section will appear in the **Project Settings** menu.
+プラグインが有効になったら、**[Project Settings]** メニューに **[Raw Input]** セクションが表示されます。

-### Configuring Devices
+## デバイスの設定
-Within this section, you can add new devices. Each device is identified by a vendor ID and a product ID, which are hexadecimal values that can be found in the device's driver properties. An array of axes (by default, eight) and buttons (by default, twelve) will be added to the controller's configuration. This provides the ability to map any of the controller's axes or buttons (indicated by the array index) to any **Unreal Engine** axis or key. The plugin provides eight new axes ("Generic USB Controller Axis 1" through "Generic USB Controller Axis 8") and twelve new buttons ("Generic USB Controller Button 1" through "Generic USB Controller Button 12"). Each axis and button can be enabled or disabled, and axes can also be inverted and offset.
+このセクションでは新規デバイスを追加します。各デバイスはベンダー ID とプロダクト ID によって特定されます。これらは、16 進数値であり、デバイスのドライバーのプロパティにあります。軸 (デフォルトで 8) とボタン (デフォルトで 12) の配列がコントローラーの設定に加えられます。これにより、任意のコントローラーの軸やボタン (配列のインデックスで示されるもの) を **アンリアル エンジン** の軸やキーにマッピングすることができます。このプラグインには 8 個の新しい軸 ("Generic USB Controller Axis 1" から "Generic USB Controller Axis 8" まで) と 20 個の新しいボタン ("Generic USB Controller Button 1" から "Generic USB Controller Button 20" まで) があります。それぞれの軸やボタンを有効または無効にすることができます。軸も反転、オフセットすることができます。

-_Above, the Hardware ID information in Windows Control Panel (under Device Manager) for the Logitech G920. The Vendor ID is the four-character string following "VID\_" test (046D), and the Product ID is the four-character string following "PID\_" (C262). This information will be required when configuring the device in RawInput._
+[REGION:caption]
+上の図は、Logitech G920 の Windows のコントロール パネルのデバイス マネージャのハードウェア ID 情報です。Vendor ID は、 "VID\_" に続く 4 つの文字列です (046D) 。Product ID は "PID\_" に続く 4 つの文字列です(C262)。この情報は、RawInput でデバイスを設定する場合に必要になります。
+[/REGION]
-### Example (Vehicle Templates)
-As an example, the Vehicle templates that ship with the **Unreal Engine** have been configured to work with the **Logitech G920**, a driving-game controller with a steering wheel and gas/brake pedals.
+## サンプル (Vehicle テンプレート)
+例として、**アンリアル エンジン** に同梱される Vehicle テンプレートが **Logitech G920** で機能するように設定しました。Logitech G920 は、ハンドルとアクセル ペダルとブレーキ ペダルを備えたドライブ ゲーム コントローラーです。
-#### Configuring the Device in RawInput
-The steering wheel is reported by the driver as Axis 1, the brake is reported as Axis 3, and the gas pedal is reported as Axis 4. In the RawInput plugin settings, each input must be entered into the array at the corresponding axis from the device driver. That is, the steering wheel's data must be in array element 1, the brake's data must be in array element 3, and the gas pedal's data must be in array element 4. All other entries may be removed or marked as disabled.
+### RawInput でデバイスを設定する
+ハンドルはデバイス ドライバーで Axis 1、ブレーキは Axis 3、アクセルは Axis 4 になります。RawInput プラグイン設定では、各入力はデバイス ドライバーからの対応する軸の配列に入力しなければなりません。つまりハンドルのデータは配列要素 1 に、ブレーキのデータは配列要素 3 にアクセル ペダルのデータは配列要素 4 に入れなければなりません。他のエントリは取り除くか、無効にします。
-[REGION:note]Note that the array index of an input does not need to correspond to the "Generic USB Controller Axis" or "Generic USB Controller Input" value. For example, the brake is bound to "Generic USB Controller Axis 2" even though it is in array position 3. This is necessary to ensure that different controllers can be configured to work the same way, even if they use different input axes.[/REGION]
+[REGION:note]入力の配列インデックスは、"Generic USB Controller Axis" や "Generic USB Controller Input" の値に対応する必要はありません。例えば、ブレーキが配列の位置 3 にあっても、"Generic USB Controller Axis 2" にバインドされます。これは異なるコントローラーが異なる入力軸を使用している場合であっても同様に機能するように設定するうえで必要です。[/REGION]

-Because the device's output range doesn't match what we might expect from a standard controller, we will remap the input ranges. The wheel returns values from 0.0 (left) to 1.0 (right), but we want the input range to center on 0.0, so we will give it an offset of -0.5. The brake and gas pedals also return values from 0.0 to 1.0, but the device uses 0.0 to indicate that the pedal is pressed down, and 1.0 to indicate that the pedal is up, where our project expects the reverse. To make this adjustment, we set the axis values to be inverted, and then add a 1.0 offset.
+デバイスの出力範囲は標準コントローラーで想定されるものとは一致しないため、入力範囲を再マッピングします。車輪が 0.0 (左) から 1.0 (右) の値を戻しますが、 0.0 を中心に入力範囲を設定します。そのため、オフセット -0.5 としました。ブレーキとアクセルも 0.0 から 1.0 の範囲の値を戻します。このデバイスは 0.0 を使用して、そのペダルが押されていることを示します。1.0 の値は、ペダルが上がっていることを示しますが、このプロジェクトでは逆を想定しています。この調整をするために、軸の値を反転するように設定し、1.0 のオフセットを追加します。
-#### Mapping our RawInput Axes to Input Bindings
+### RawInput の軸を入力バインディングにマッピングする
-
+
-We can then map the new axes to our game's input bindings. The wheel (on "Generic USB Controller Axis 1") is mapped to the range [-0.5, 0.5], but we want it to be more sensitive, so we can scale it up by a factor of 3.0. Similarly, the brake (on "Generic USB Controller Axis 2") needs to go in the negative direction, and should be more powerful than the gas pedal, so it will be scaled by -2.0. The gas pedal (on "Generic USB Controller Axis 3") requires no modification, and only needs to be added to the appropriate input binding. By using RawInput and adding these input bindings, we are able to support the Logitech G920 without needing any new input bindings or making any changes to our project's code or blueprints.
+次に新しい軸をゲームの入力バインディングにマッピングします。車輪 ("Generic USB Controller Axis 1") は、範囲 [-0.5、0.5] にマッピングされますが、さらに感度を上げて、3.0 の係数でスケールアップできるようにします。同様にブレーキ ("Generic USB Controller Axis 2") を負の方向に行くようにし、アクセルよりも強力になるようにします。そのため、-2.0 でスケーリングされるようにします。アクセル ("Generic USB Controller Axis 3") は修正が不要です。適切な入力バインディングに追加するだけです。RawInput を使ってこうした入力バインディングを加えることで、新しい入力バインディングを必要とせずに、プロジェクトのコードまたはブループリントに変更を加えることなく、Logitech G920 をサポートします。
-[REGION:tip]This use of scaling provides a good argument for using the "Generic USB Controller" axes instead of configuring the device to the standard gamepad stick inputs.[/REGION]
+[REGION:tip]デバイスを標準のゲームパッド スティック入力に設定する代わりに、このようなスケーリングを使うと "Generic USB Controller" 軸を使った適切な引数になります。[/REGION]
diff --git a/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.KOR.udn b/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.KOR.udn
index 8b8521d6d715..e8dfbc6310be 100644
--- a/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Input/RawInput/RawInput.KOR.udn
@@ -1,18 +1,38 @@
-INTSourceChangelist:3340402
+INTSourceChangelist:3413921
Availability:Docs
Title:RawInput 플러그인
-Crumbs:%ROOT%, Gameplay, Gameplay/Input
+Crumbs:%ROOT%
Description: RawInput 플러그인은 XInput 표준에 맞지 않는 디바이스에서 읽을 수 있습니다.
-version: 4.15
+version: 4.16
skilllevel:Intermediate
Parent:Engine/Gameplay/Input
+Order:
type:overview
+tags:Input
-## RawInput 플러그인
+[TOC (start:2 end:4)]
-***RawInput** 플러그인은 XInput 으로 정상 처리되지 않는 사용자 정의 디바이스 지원을 위한 것으로, 보통 비행기 조종 스틱이나 운전대같은 것을 말합니다. 이러한 입력 디바이스의 버튼과 축은 게임플레이 입력으로 커스텀 매핑시킬 수 있으며, 여기에는 플러그인 자체에서 만든 새로운 입력이 포함됩니다.
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ QMD-OQ2Q-dI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
-### RawInput 켜기
+***RawInput** 플러그인은 Microsoft 의 XInput API 로 정상 처리되지 않는 사용자 정의 디바이스 지원을 위한 것으로, 보통 비행기 조종 스틱이나 운전대같은 것을 말합니다. 이러한 입력 디바이스의 버튼과 축은 게임플레이 입력으로 커스텀 매핑시킬 수 있으며, 여기에는 플러그인 자체에서 만든 새로운 입력이 포함됩니다.
+
+## RawInput 켜기
기본적으로 플러그인은 켜져있지 않습니다. **플러그인** 메뉴의 **Input Devices** 섹션에서 켤 수 있습니다.
@@ -22,18 +42,20 @@ type:overview

-### 디바이스 환경설정
+## 디바이스 환경설정
-여기서는 새 디바이스를 추가할 수 있습니다. 각 디바이스는 벤더 ID 와 제품 ID 로 식별되며, 이는 디바이스의 드라이버 속성에서 찾을 수 있는 16진 값입니다. 컨트롤러의 환경설정에 (기본으로 8 개의) 축 배열과 (기본으로 12 개의) 버튼이 추가됩니다. 컨트롤러의 (배열 인덱스로 지시된) 축과 버튼을 어떤 **언리얼 엔진** 축이나 키에도 매핑시킬 수 있는 기능이 제공됩니다. 플러그인에는 ("Generic USB Controller Axis 1" 부터 "Generic USB Controller Axis 8" 까지) 8 개의 축과 ("Generic USB Controller Button 1" 부터 "Generic USB Controller Button 12" 까지) 12 개의 버는이 제공됩니다. 각 축과 버튼은 켜고 끌 수 있으며, 축 역시도 반전이나 오프셋 적용이 가능합니다.
+여기서는 새 디바이스를 추가할 수 있습니다. 각 디바이스는 벤더 ID 와 제품 ID 로 식별되며, 이는 디바이스의 드라이버 속성에서 찾을 수 있는 16진 값입니다. 컨트롤러의 환경설정에 (기본으로 8 개의) 축 배열과 (기본으로 12 개의) 버튼이 추가됩니다. 컨트롤러의 (배열 인덱스로 지시된) 축과 버튼을 어떤 **언리얼 엔진** 축이나 키에도 매핑시킬 수 있는 기능이 제공됩니다. 플러그인에는 ("Generic USB Controller Axis 1" 부터 "Generic USB Controller Axis 8" 까지) 8 개의 축과 ("Generic USB Controller Button 1" 부터 "Generic USB Controller Button 20" 까지) 20 개의 버튼이 제공됩니다. 각 축과 버튼은 켜고 끌 수 있으며, 축 역시도 반전이나 오프셋 적용이 가능합니다.

-_위는 윈도우 제어판 (디바이스 매니저 아래) Logitech G920 에 대한 하드웨어 ID 정보입니다. Vendor ID 는 "VID\_" 뒤의 네 글자이고 (046D), Product ID 는 "PID\_" 뒤의 네 글자입니다 (C262). 이 정보는 RawInput 에서 디바이스 환경설정을 할 때 필요합니다.
+[REGION:caption]
+위는 윈도우 제어판 (디바이스 매니저 아래) Logitech G920 에 대한 하드웨어 ID 정보입니다. Vendor ID 는 "VID\_" 뒤의 네 글자이고 (046D), Product ID 는 "PID\_" 뒤의 네 글자입니다 (C262). 이 정보는 RawInput 에서 디바이스 환경설정을 할 때 필요합니다.
+[/REGION]
-### 예제 (비히클 템플릿)
+## 예제 (비히클 템플릿)
**언리얼 엔진** 에 포함 출시되는 비히클 템플릿을 운전대와 액셀/브레이크 페달이 있는 운전용 게임 컨트롤러인 **Logitech G920** 과 작동하도록 환경설정한 예제입니다.
-#### RawInput 에서 디바이스 환경설정
+### RawInput 에서 디바이스 환경설정
운전대는 드라이버가 Axis 1, 브레이크는 Axis 3, 액셀 페달은 Axis 4 로 보고합니다. RawInput 플러그인 세팅에서 각 입력은 반드시 디바이스 드라이버에서 해당하는 축 위치의 배열에 입력해야 합니다. 즉 운전대의 데이터는 반드시 배열 엘리먼트 1, 브레이크 데이터는 배열 엘리먼트 3, 액셀 페달 데이터는 배열 엘리먼트 4 에 있어야 합니다. 다른 모든 항목은 제거하거나 비활성화 마킹해야 합니다.
[REGION:note]참고로 입력의 배열 인덱스는 "Generic USB Controller Axis" 나 "Generic USB Controller Input" 값에 해당할 필요가 없습니다. 예를 들어 브레이크는 배열 위치 3 에 있더라도 "Generic USB Controller Axis 2" 에 바인딩됩니다. 다른 컨트롤러가 다른 입력 축을 사용하라도 같은 방식으로 작동하게끔 환경설정할 수 있도록 하기 위해서입니다.[/REGION]
@@ -42,7 +64,7 @@ _위는 윈도우 제어판 (디바이스 매니저 아래) Logitech G920 에
디바이스의 출력 범위가 표준 콘트롤러에 기대하는 범위와 일치하지 않기 때문에, 입력 범위를 리매핑합니다. 운전대의 반환 값은 (왼쪽) 0.0 에서 (오른쪽) 1.0 이지만, 입력 범위는 가운데에서 0.0 이 되도록 해야 하므로, 오프셋을 0.5 줍니다. 브레이크와 액셀 페달 역시 0.0 에서 1.0 값을 반환하지만, 디바이스에서는 페달을 밟았을 때 0.0, 떼었을 때 1.0 을 사용하므로, 프로젝트에서는 반대 값을 기대합니다. 이러한 조정을 위해서는 축 값을 반전시킨 뒤 1.0 오프셋을 더합니다.
-#### RawInput 축을 입력 바인딩에 매핑
+### RawInput 축을 입력 바인딩에 매핑

diff --git a/Engine/Documentation/Source/Gameplay/Networking/Blueprints/Blueprints.KOR.udn b/Engine/Documentation/Source/Gameplay/Networking/Blueprints/Blueprints.KOR.udn
index 8d1d9e5dbe49..115a767e7239 100644
--- a/Engine/Documentation/Source/Gameplay/Networking/Blueprints/Blueprints.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Networking/Blueprints/Blueprints.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3366524
Availability:Public
Title: 블루프린트에서의 멀티플레이어
Crumbs:%ROOT%, Gameplay, Gameplay/Networking
@@ -24,11 +24,12 @@ version: 4.9
자세한 정보는 [](Gameplay/Framework) 문서를 참고하시고, 멀티플레이어 게임을 디자인할 때는 최소한 다음의 팁 정도는 유념해 주시기 바랍니다:
-* GameMode 오브젝트는 서버에서만 존재합니다.
-* GameState 는 서버와 클라이언트에 존재하며, 서버는 GameState 상의 리플리케이티드 변수를 사용하여 모든 클라이언트에서 게임에 대한 데이터를 최신 상태로 유지할 수 있습니다.
-* PlayerController 는 게임에 접속된 모든 플레이어에 대해 서버상에 존재합니다. 클라이언트에서는 그 클라이언트에 소유된 플레이어에 대한 PlayerController 만 존재합니다. 즉 PlayerController 는 모든 클라이언트가 알아야 하는 리플리케이티드 프로퍼티를 저장하기에 최적의 장소가 아니라는 뜻입니다. 그보다는 PlayerState 가 좋습니다.
-* PlayerState 는 게임에 접속된 모든 플레이어에 대해 서버와 클라이언트 양쪽에 존재합니다. 이 클래스는 소유중인 클라이언트만이 아닌 모든 클라이언트가 알아야 하는, 이를테면 각 플레이어의 현재 점수와 같은 리플리케이티드 프로퍼티에 사용할 수 있습니다.
-* Pawn (및 Character 포함) 역시 서버와 모든 클라이언트에 존재하며, 리플리케이티드 변수 및 이벤트를 갖고 있습니다. 특정 변수나 이벤트에 대해 PlayerState 를 쓸 것이냐 Pawn 을 쓸 것이냐 하는 것은 상황에 따라 다르지만, 주로 고려할 것은 PlayerState 는 플레이어가 접속된 시간동안 내도록 유지되는 반면, Pawn 은 그렇지 않을 수 있습니다. 예를 들어 플레이어 캐릭터가 게임플레이 도중 죽은 경우, 조종중이던 Pawn 은 소멸되고 플레이어 리스폰시 새로운 Pawn 이 생성될 것입니다.
+* GameInstance 는 엔진 세션 도중에만 존재합니다. 즉 엔진 시작 시 생성되며, 종료될 때까지 소멸 또는 대체되지 않습니다. 서버와 각 클라이언트마다 별도의 GameInstance 가 존재하며, 이 인스턴스는 서로 통신하지 않습니다. GameInstance 는 게임 세션 외부에 존재하므로, 특정 유형의 지속성 데이터를 저장하기에 좋은 곳입니다. 이를테면 플레이어 전반적인 통계 (지금까지 이긴 게임 횟수), 계정 정보 (특수 아이템 잠김/해제 상태), 언리얼 토너먼트같은 경쟁형 게임에서 돌아가며 플레이할 맵 목록 등을 말합니다.
+* GameMode 오브젝트는 서버에서만 존재합니다. 일반적으로 클라이언트가 명시적으로 알 필요가 없는 게임 관련 정보를 저장합니다. 예를 들어 "로켓 런처만" 나오는 특수 규칙 게임에서, 클라이언트는 이 정보를 알 필요가 없지만, 맵에 무기를 무작위로 스폰할 때 서버는 "로켓 런처" 카테고리에서만 선택해야한다 알아야 할 것입니다.
+* GameState 는 서버와 클라이언트에 존재하며, 서버는 GameState 상의 리플리케이티드 변수를 사용하여 모든 클라이언트에서 게임에 대한 데이터를 최신 상태로 유지할 수 있습니다. 예로, 야구 게임에서 GameState 를 통해 각 팀의 점수와 현재 이닝을 리플리케이트할 수 있습니다.
+* 각 클라이언트에는 그 머신의 플레이어마다 하나의 PlayerController 가 존재합니다. 이는 서버와 연결된 클라이언트 사이에 리플리케이트되지만, 다른 클라이언트에는 리플리케이트되지 않으므로, 서버는 모든 플레이어에 대한 PlayerController 를 갖고 있고, 로컬 클라이언트는 로컬 플레이어에 대한 PlayerController 만 갖습니다. 클라이언트가 접속되어 있는 도중에는 PlayerController 가 존재하여 Pawn 에 할당되지만, Pawn 과는 달리 소멸되거나 리스폰되지는 않습니다. 특정 플레이어에게만 감지된 게임 이벤트에 반응하여 미니맵에 핑을 찍도록 서버가 클라이언트에게 알리는 등의 작업처럼, 다른 클라이언트에 리플리케이트할 필요 없는 클라이언트와 서버 사이 통신에 적합합니다.
+* PlayerState 는 게임에 접속된 모든 플레이어에 대해 서버와 클라이언트 양쪽에 존재합니다. 이 클래스는 소유중인 클라이언트만이 아닌 모든 클라이언트가 알아야 하는, 이를테면 프리-포-올 게임에서 각 플레이어의 현재 점수와 같은 리플리케이티드 프로퍼티에 사용할 수 있습니다. PlayerController 처럼 개별 Pawn 에 할당되지만, Pawn 과는 달리 소멸 및 리스폰되지 않습니다.
+* Pawn (및 Character 포함) 역시 서버와 모든 클라이언트에 존재하며, 리플리케이티드 변수 및 이벤트를 갖고 있습니다. 특정 변수나 이벤트에 대해 PlayeyController 를 쓸 것이냐, PlayerState 를 쓸 것이냐, Pawn 을 쓸 것이냐 하는 것은 상황에 따라 다르지만, 주로 고려할 것은 PlayerController 와 PlayerState 는 플레이어가 접속된 시간동안 그리고 게임이 새 레벨을 로드하지 않는 한 내도록 유지되는 반면, Pawn 은 그렇지 않을 수 있습니다. 예를 들어 Pawn 이 게임플레이 도중 죽는 경우, 보통 소멸되고 새로운 Pawn 으로 대체되는 반면, PlayerController 와 PlayerState 는 계속해서 존재하며 새로운 Pawn 의 스폰이 끝나면 거기에 할당됩니다. Pawn 의 생명력은 그래서 Pawn 자체에 저장되는데, 실제 그 Pawn 인스턴스에만 해당되며, 새로운 Pawn 으로 대체되면 리셋시켜야 하기 때문됩니다.
## 액터 리플리케이션
diff --git a/Engine/Documentation/Source/Gameplay/Networking/CharacterMovementComponent/CharacterMovementComponent.KOR.udn b/Engine/Documentation/Source/Gameplay/Networking/CharacterMovementComponent/CharacterMovementComponent.KOR.udn
index 21c68401cde2..3c61b26cef5d 100644
--- a/Engine/Documentation/Source/Gameplay/Networking/CharacterMovementComponent/CharacterMovementComponent.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Networking/CharacterMovementComponent/CharacterMovementComponent.KOR.udn
@@ -27,7 +27,7 @@ CharacterMovementComponent 를 사용하는 캐릭터는 자동으로 클라이
##캐릭터 무브먼트 및 시뮬레이티드 프록시
지금까지 설명한 CharacterMovementComponent 의 접근법은 권위적 서버에 접속된 클라이언트 하나에 대해서만 자세히 다루고 있습니다.
-AI 조종 캐릭터나 원격 컴퓨터의 플레이어는 "시뮬레이티드 프록시" 로 간주되며, 약간 다른 코드 패쓰를 통합니다.
+AI 조종 캐릭터나 원격 컴퓨터의 플레이어는 "시뮬레이티드 프록시" 로 간주되며, 약간 다른 코드 패스를 통합니다.
원격 제어 캐릭터의 이동은 보통 일반적인 `PerformMovement` 코드를 사용하여 (오쏘리티가 있는) 서버에서 업데이트됩니다.
위치, 회전, 속도와 같은 액터 상태는 물론 기타 (점프나 웅크리기같은) 캐릭터 전용 정보도 일반 리플리케이션 메커니즘을 통해 다른 머신으로 리플리케이트됩니다.
diff --git a/Engine/Documentation/Source/Gameplay/Networking/Networking.INT.udn b/Engine/Documentation/Source/Gameplay/Networking/Networking.INT.udn
index 148fb42065f3..4adb7bfd5ef9 100644
--- a/Engine/Documentation/Source/Gameplay/Networking/Networking.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Networking/Networking.INT.udn
@@ -3,7 +3,14 @@ Title: Networking and Multiplayer
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:Setting up networked games for multiplayer.
version: 4.9
+Parent:Engine
+type:landing
+order:20
+topic-image:NetworkingAndMultiplayer_Topic.png
+[DIR(output:"listbutton" parent:"Gameplay/Networking" org:"hierarchy")]
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/Networking/Networking.KOR.udn b/Engine/Documentation/Source/Gameplay/Networking/Networking.KOR.udn
index 91d3ab810282..a1e458dcd1e9 100644
--- a/Engine/Documentation/Source/Gameplay/Networking/Networking.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Networking/Networking.KOR.udn
@@ -1,10 +1,17 @@
-INTSourceChangelist:3143336
+INTSourceChangelist:3467293
Availability:Public
Title: 네트워킹과 멀티플레이
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
Description:멀티플레이용 네트워크 게임 구성 방법입니다.
version: 4.9
+Parent:Engine
+type:landing
+order:20
+topic-image:NetworkingAndMultiplayer_Topic.png
+[DIR(output:"listbutton" parent:"Gameplay/Networking" org:"hierarchy")]
+
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Gameplay/Networking/OnlineBeacons/OnlineBeacons.INT.udn b/Engine/Documentation/Source/Gameplay/Networking/OnlineBeacons/OnlineBeacons.INT.udn
index 35faf4e6005b..d88987971039 100644
--- a/Engine/Documentation/Source/Gameplay/Networking/OnlineBeacons/OnlineBeacons.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Networking/OnlineBeacons/OnlineBeacons.INT.udn
@@ -3,7 +3,7 @@ Title: Online Beacons
Crumbs: %ROOT%, Engine
Description:Overview of the Online Beacon system
Version: 4.13
-parent:Engine
+parent:Gameplay/Networking
Related: Gameplay/Networking/Actors/RPCs
Related: Gameplay/Networking/Actors/Properties
diff --git a/Engine/Documentation/Source/Gameplay/Networking/OnlineBeacons/OnlineBeacons.KOR.udn b/Engine/Documentation/Source/Gameplay/Networking/OnlineBeacons/OnlineBeacons.KOR.udn
index 7813530bd281..368387d7b8b9 100644
--- a/Engine/Documentation/Source/Gameplay/Networking/OnlineBeacons/OnlineBeacons.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Networking/OnlineBeacons/OnlineBeacons.KOR.udn
@@ -1,10 +1,10 @@
-INTSourceChangelist:3169600
+INTSourceChangelist:3454520
Availability: Public
Title: 온라인 비컨
Crumbs: %ROOT%, Engine
Description:Online Beacon, 온라인 비컨 시스템 개요입니다.
Version: 4.13
-parent:Engine
+parent:Gameplay/Networking
Related: Gameplay/Networking/Actors/RPCs
Related: Gameplay/Networking/Actors/Properties
diff --git a/Engine/Documentation/Source/Gameplay/Networking/Overview/Overview.JPN.udn b/Engine/Documentation/Source/Gameplay/Networking/Overview/Overview.JPN.udn
index 09dbb2a77068..23cb879912f8 100644
--- a/Engine/Documentation/Source/Gameplay/Networking/Overview/Overview.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Networking/Overview/Overview.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2713567
+INTSourceChangelist:3356303
Availability:Public
Title:ネットワーク構築の概要
Crumbs:%ROOT%, Gameplay, Gameplay/Framework
@@ -6,14 +6,24 @@ Description:マルチプレイヤーに対応するネットワークゲーム
Related:Gameplay/Networking/Blueprints
Related:Gameplay/Networking/Example
Related:Gameplay/Networking/Actors
+Related:Gameplay/Networking/Server
version:4.9
UE4 のフレームワークはマルチプレイヤーゲームを考慮して作られています。フレームワークの規約に従う限り、シングルプレイ体験をマルチプレイヤーへ拡張する作業はほとんどの場合あまりありません。
-UE4 のネットワークはサーバー/クライアントモデルを元に構築されています。つまり権限を持つサーバー (重要なすべての意思決定) が 1 つあり、このサーバーはクライアントがサーバーのワールドの近似値を最新に保つために、接続中のクライアントが常に更新していることを確認します。
+UE4 のネットワークはサーバー/クライアントモデルを元に構築されています。つまり権限を持つサーバー (重要なすべての意思決定) が 1 つあり、このサーバーはクライアントがサーバーのワールドの近似値を最新に保つために、接続中のクライアントが常に更新していることを確認します。ネットワーク化されていないシングルプレイヤー ゲームにもサーバーがあります。この場合、ローカルマシンがサーバーの役割をします。
## アクタ
シングルプレイヤー体験のアクタは、ゲームワールドの表現に使用します。サーバーが正式な値を保持するのに対し、クライアントはそれぞれのアクタの近似値を保持する点を除いて、マルチプレイヤー体験でも違いはありません。
-アクタは、サーバーがクライアントを最新に保つために使用する主力オブジェクトです。サーバーが特定のクライアントを更新する時は、最後の更新から変更したと判断する関連アクタをすべて収集して、その後これらのアクタを最新ステートに保つためにクライアントへ必要な情報を送信します。
+アクタは、サーバーがクライアントを最新に保つために非常に便利です。サーバーが特定のクライアントを更新する時は、最後の更新から変更したと判断する関連アクタをすべて収集して、その後これらのアクタを最新ステートに保つためにクライアントへ必要な情報を送信します。
+
+## ネットワーク モード
+
+| ネットワーク モード タイプ | 機能 / 理想的なユースケース |
+| --- | --- |
+| `NM_Standalone` | ローカル マシン上で実行中のサーバーを示し、リモート クライアントからの接続要求は受け付けません。シングルプレイヤー ゲーム、またはローカル マルチプレイヤー ゲームに最適です。 |
+| `NM_DedicatedServer` | デディケイテッド サーバーはローカル プレイヤーは使用できないので、サウンド、グラフィックス、ユーザー入力、他のプレイヤー向け機能を切り捨てて効率的に実行できます。パフォーマンス力の高い信頼できるサーバーを必要とする、競争力の高い MOBA タイトル、MMO ゲーム、オンライン シューティングゲームなど、信頼できるサーバー上でホストされるマルチプレイヤー ゲームで使われます。 |
+| `NM_ListenServer` | リッスン サーバーはローカル プレイヤーをホストしますが、リモート プレイヤーからの接続も可能です。デディケイテッド サーバーを必要としないランクマッチ型や対戦型ゲームに適しています。ユーザーはサードパーティ サーバーなしで自分のゲームの設定およびプレイができます。ホストにネットワーク レイテンシーがないためホストに優位性を与え、ゲームはホストの警告なしに終了することができます。 |
+| `NM_Client` | 唯一、サーバーではないタイプです。このモードにすると、ローカル マシンはデディケイテッド サーバーもしくはリッスン サーバーのクライアントとなるので、サーバー側のロジックを実行しません。 |
diff --git a/Engine/Documentation/Source/Gameplay/SaveGame/Blueprints/BP_SaveGame.INT.udn b/Engine/Documentation/Source/Gameplay/SaveGame/Blueprints/BP_SaveGame.INT.udn
index f7af562cc72e..600ae2cd54d9 100644
--- a/Engine/Documentation/Source/Gameplay/SaveGame/Blueprints/BP_SaveGame.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/SaveGame/Blueprints/BP_SaveGame.INT.udn
@@ -32,9 +32,7 @@ You can set default values for the variables after the Blueprint is compiled.
_This is a snapshot of the entire saving setup. You can click the image to enlarge it._
[REGION:fullwidth]
-First, create an instance, or copy, of your SaveGame object, using the **Create Save Game Object** node. Make sure you set the Save Game Class dropdown to the name of your new SaveGame object Blueprint,
-in this case, **MySaveGame**. Because the Create Save Game Object node creates a generic SaveGame object copy, you have to drag off of the **Return Value** pin and **Cast to MySaveGame**. Save
-the result of the casting to a variable by using **Promote to Variable** so that you can reuse the SaveGame object easily later on.
+First, create an instance, or copy, of your SaveGame object, using the **Create Save Game Object** node. Make sure you set the Save Game Class dropdown to the name of your new Blueprint, in this case, **MySaveGame**. The Create Save Game Object node will automatically change its output pin type to match the type you specify with the Save Game Class input, enabling you to use it directly, without a Cast To node. Save the resulting object to a variable by using **Promote to Variable** so that you can reuse the MySaveGame object you just created later on.

@@ -63,8 +61,7 @@ can be read from it. Again, this may not apply in all game implementations.

-You can use the **Load Game From Slot** node to create an instance of your SaveGame object Blueprint. Just like when you created a SaveGame object for saving information, you need to cast to your specific
-SaveGame object Blueprint so that you can save the result to a variable for easy access later.
+You can use the **Load Game From Slot** node to create an instance of your SaveGame object Blueprint. A Cast To node will be needed to treat the resulting object as a MySaveGame, which you will want to do so that you can store it in a variable for easy access later.

diff --git a/Engine/Documentation/Source/Gameplay/SaveGame/Blueprints/BP_SaveGame.KOR.udn b/Engine/Documentation/Source/Gameplay/SaveGame/Blueprints/BP_SaveGame.KOR.udn
index bd713acf5e86..943bc31adf70 100644
--- a/Engine/Documentation/Source/Gameplay/SaveGame/Blueprints/BP_SaveGame.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/SaveGame/Blueprints/BP_SaveGame.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3397556
Availability:Public
Title: 블루프린트로 게임 저장하기
Crumbs:%ROOT%, Gameplay, Gameplay/SaveGame
@@ -33,9 +33,7 @@ SaveGame 오브젝트를 새로 생성하기 위해서는, [블루프린트 클
_전체 저장 구성 스냅샷입니다. 이미지를 클릭하면 원래 크기로 볼 수 있습니다._
[REGION:fullwidth]
-먼저 **Create Save Game Object** 노드를 사용하여 SaveGame 오브젝트의 인스턴스를 생성 또는 복사합니다. **Save Game Class** 드롭다운 이름을 새로운 SaveGame 오브젝트 블루프린트 이름으로 설정했는지 확인합니다.
-이 경우 **MySaveGame** 입니다. **Create Save Game Object** 노드가 범용 SaveGame 오브젝트 사본을 만들기 때문에, **Return Value** 핀을 드래그한 다음 **Cast to MySaveGame** 를 놓아야 합니다.
-나중에 SaveGame 오브젝트를 쉽게 재사용하려면 **변수로 승격** 을 통해 변수에 대한 형변환 결과를 저장하세요.
+먼저 **Create Save Game Object** 노드를 사용하여 SaveGame 오브젝트의 인스턴스를 생성 또는 복사합니다. **Save Game Class** 드롭다운 이름을 새로운 블루프린트 이름으로 설정했는지 확인합니다. 이 경우 **MySaveGame** 입니다. Create Save Game Object 노드는 출력 핀 유형이 Save Game Class 입력에 지정한 유형에 일치하도록 자동 변경하여 Cast To (형변환) 노드 없이 바로 사용할 수 있도록 해줍니다. 방금 생성한 MySaveGame 오브젝트를 나중에 쉽게 재사용하려면 **변수로 승격** 시켜주면 됩니다.

@@ -64,8 +62,7 @@ _전체 저장 셋업에 대한 스냅샷입니다. 이미지를 클릭하면

-**Load Game From Slot** 노드를 사용하여 SaveGame 오브젝트 블루프린트의 인스턴스를 생성할 수 있습니다. 정보 저장을 위해 SaveGame 오브젝트를 생성했을 때와 마찬가지로, 특정 SaveGame 오브젝트 블루프린트로
-형변환시켜 줘야 그 결과를 변수에 저장하여 나중에 쉽게 접근할 수 있습니다.
+**Load Game From Slot** 노드를 사용하여 SaveGame 오브젝트 블루프린트의 인스턴스를 생성할 수 있습니다. 결과 오브젝트를 MySaveGame 처럼 취급하기 위해서는 Cast To (형변환) 노드가 필요한데, 그래야 변수에 저장하여 나중에 쉽게 접근할 수 있습니다.

diff --git a/Engine/Documentation/Source/Gameplay/Tags/Tags.INT.udn b/Engine/Documentation/Source/Gameplay/Tags/Tags.INT.udn
index 2ad0ee753960..75cdf0b30913 100644
--- a/Engine/Documentation/Source/Gameplay/Tags/Tags.INT.udn
+++ b/Engine/Documentation/Source/Gameplay/Tags/Tags.INT.udn
@@ -1,63 +1,59 @@
-Availability:Docs
+Availability:Public
Title:Gameplay Tags
-Crumbs: %ROOT%, Engine, Engine/Gameplay
+Crumbs: %ROOT%
Description: Gameplay Tags can be used to identify, categorize, match, and filter objects.
version: 4.15
skilllevel:Intermediate
Parent:Engine/Gameplay
+Order:
type:overview
+tags:Gameplay
-## Gameplay Tags
-**Gameplay Tags** are conceptual, hierarchical labels with user-defined names. These tags can have any number of hierarchical levels, separated by the "." character; for example, a Gameplay Tag with three levels would take the form of "Family.Genus.Species", with "Family" being the broadest identifier in the hierarchy, and "Species" being the most specific. Note that the existence of "Family.Genus.Species" implicitly means that "Family.Genus" and "Family" Gameplay Tags also exist. Individual tags are lightweight, and use the type `FGameplayTag`. Since game objects frequently have multiple tags, **Gameplay Tag Containers** (using the type `FGameplayTagContainer`) are provided, and can handle a variety of additional queries. Gameplay Tags (or Gameplay Tag Containers) can be added to any object to associate it with conceptual labels that can then be used to identify, match, categorize, or filter as needed for your project.
+[toc(start:2 end:2)]
-### Creating Gameplay Tags
-Gameplay Tags must be added to the central tag dictionary for the engine to be aware of them. This can be done in three ways via editor functionality. Tags can be added manually in the **Project Settings** menu, with .ini files, through creating data table assets. All three methods are set up under **Project Settings**, by opening the **Gameplay Tags** tab under the **Project** section.
+**Gameplay Tags** are conceptual, hierarchical labels with user-defined names. These tags can have any number of hierarchical levels, separated by the "." character; for example, a Gameplay Tag with three levels would take the form of "Family.Genus.Species", with "Family" being the broadest identifier in the hierarchy, and "Species" being the most specific. Note that the existence of "Family.Genus.Species" implicitly means that "Family.Genus" and "Family" Gameplay Tags also exist. Individual tags are lightweight, and use the type `FGameplayTag`. Since game objects frequently have multiple tags, **Gameplay Tag Containers** (using the type `FGameplayTagContainer`) are provided, and can handle a variety of additional queries. Gameplay Tags (or Gameplay Tag Containers) can be added to any project, associating objects with conceptual labels that can then be used to identify, match, categorize, or filter them (as needed) for your project.
+## Creating Gameplay Tags
+Gameplay Tags must be added to the central tag dictionary for the engine to be aware of them. This can be done in three ways via editor functionality. Tags can be added manually in the **Project Settings** menu, with .ini files, or by creating data table assets.
+
+All three methods are set up under **Project Settings**, by opening the **Gameplay Tags** tab under the **Project** section.

-#### Manually Adding Tags
+### Manually Adding Tags
-The easiest way to add gameplay tags is to use enter them manually in the **Project Settings** menu. By checking the **Import Tags From Config** option, `Config/DefaultGameplayTags.Ini` will be loaded, as well as all Gameplay Tags in any .Ini files found under the `Config/Tags` path. An option labeled **Add New Gameplay Tag** will appear, and this option can be used to add new Gameplay Tags to any existing Gameplay Tag .Ini files, including the default file. Tags added in this way will also have an optional field for entering a brief description, which will appear as a tooltip in the editor.
+The easiest way to add Gameplay Tags is to enter them manually in the **Project Settings** menu. By checking the **Import Tags From Config** option, `Config/DefaultGameplayTags.ini` will be loaded, as well as all Gameplay Tags in any .ini files found under the `Config/Tags` path. An option labeled **Add New Gameplay Tag** will appear, and this option can be used to add new Gameplay Tags to any existing Gameplay Tag .ini files, including the default file. Tags added in this way will also have an optional field for entering a brief description, which will appear as a tooltip in the editor.

-#### Editing .Ini Files Directly
-To add tags using your own .Ini files, the **Import Tags From Config** option must be enabled. Gameplay Tags will then be loaded from each of the .Ini files found your project's `Config/Tags/` path, which are easy to hand-edit. If these edits are made while the editor is running, turning the **Import Tags From Config** option off and back on will reload the files. The format within these files looks like this:
-
- [UserTags]
- GameplayTags=Vehicle.Air.Helicopter
- GameplayTags=Movement.Flying
- GameplayTags=Movement.Hovering
-
-If a hand-written file is modified by the editor's **Add New Gameplay Tag** feature, all of the old tags, as well as the new tag, will be copied into a new section. The "[UserTags]" section will remain in the file, but will be ignored during load operations. For example, if "Movement.Landing" were added to our file above, the new file would look like this:
-
- [UserTags]
- GameplayTags=Vehicle.Air.Helicopter
- GameplayTags=Movement.Flying
- GameplayTags=Movement.Hovering
+### Editing .ini Files Directly
+To add tags using your own .ini files, the **Import Tags From Config** option must be enabled. Gameplay Tags will then be loaded from each of the .ini files found your project's `Config/Tags/` path, which are easy to hand-edit. If these edits are made while the editor is running, turning the **Import Tags From Config** option off and back on will reload the files. The format within these files looks like this:
[/Script/GameplayTags.GameplayTagsList]
- GameplayTagList=(Tag="Vehicle.Air.Helicopter",DevComment="")
+ GameplayTagList=(Tag="Vehicle.Air.Helicopter",DevComment="This is a custom tooltip!")
GameplayTagList=(Tag="Movement.Flying",DevComment="")
GameplayTagList=(Tag="Movement.Hovering",DevComment="")
GameplayTagList=(Tag="Movement.Landing",DevComment="")
-[REGION:note]It is not recommended to hand-edit a tag .Ini file after using the **Project Settings** menu to add tags to that file.[/REGION]
+This method is convenient for your teammates to add their own tags, since .ini files in `Config/Tags` are easily-edited text files that can be named with any file-naming convention you like.
-This method is very convenient as a way to enable members of your team to add their own tags, since .Ini files in `Config/Tags` are easily-edited text files that can be named with any file-naming convention you like.
+A "Developer Tag" config file can be used by going to the **Gameplay Tags Developer** menu within **Project Settings**, and filling in the **Developer Config Name** with your desired filename. If enabled, this will save all of the tags that were added to the default .ini file (by you), into an .ini file that you specify. Your .ini file will reside in the `Config/Tags` folder, and can be passed to other developers or submitted to your source control system without further modification. This can be useful on large projects with thousands of tags, or as a way to separate tags created by specific developers or for use with specific game features. This is entirely optional, but it can be helpful for some teams and workflows to have certain tags stored in separate files.
-A "Developer Tag" config file can be used by going to the **Gameplay Tags Developer** menu within **Project Settings** and filling in the **Developer Config Name** with your desired filename. If set, this will save all tags you personally add to the default .Ini file to your specified .Ini file instead. Your .Ini file will reside in the `Config/Tags` folder, and can be passed to other developers or submitted to your source control system without further modification. This can be useful on large projects with thousands of tags, or simply as a way to separate tags created by specific developers or for use with specific game features. This is entirely optional, but it can be helpful for some teams and workflows to have certain tags stored in separate files.
-
-#### Data Table Assets
-Finally, tags can be added via [DataTable](Gameplay/DataDriven/#datatables) assets with the row type `GameplayTagTableRow`. This is especially useful for importing Gameplay Tags from an external source, such as an Excel spreadsheet file. Once your asset is created, add it to the **GameplayTagTableList** in the **Project Settings** menu and all tags contained within it will be added to the **Gameplay Tag Manager**. Note that this system supports multiple assets being listed, so you can separate out your project's tags into different spreadsheets if this helps your workflow or organization.
+### Data Table Assets
+Finally, tags can be added via [DataTable](Gameplay/DataDriven/#datatables) assets with the row type `GameplayTagTableRow`. This is especially useful for importing Gameplay Tags from an external source, such as an Excel spreadsheet file, but you can create your own without a file to import and work with it in-editor. Once your asset is created, add it to the **GameplayTagTableList** in the **Project Settings** menu and all tags contained within it will be added to the **Gameplay Tag Manager**. Note that this system supports multiple assets being listed, so you can separate out your project's tags into different spreadsheets (if this helps your workflow or organization).

-### Managing Gameplay Tags
-Once your Gameplay Tags have been added, you can manage them by searching for references to them, deleting them, or renaming them. All of these actions can be accessed with the caret dropdown next to a tag in the **Project Settings** menu. Tags can only be deleted in this menu if they were added via a .Ini file (either hand-edited or added via the **Project Settings** menu), and are not referenced by anything else. Renamed tags will cause additions to be made to the GameplayTagRedirects list, and any renamed tags will be silently fixed on load.
+[REGION:caption]Data Table Assets use Unreal Engine assets rather than .ini files, and can be viewed and changed while the editor is running, similar to other game assets.[/REGION]
-#### Gameplay Tag Test Operations
-There are a number of test operations, all based on the concept of matching tags to other tags, that can be performed on Gameplay Tags and Gameplay Tag Containers. Each of these functions will be called on a Gameplay Tag or Gameplay Tag Container, and will take a single Gameplay Tag or Gameplay Tag Container as a parameter.
+## Managing Gameplay Tags
+After your Gameplay Tags have been added, you can manage them by searching for references to them, deleting them, or renaming them. All of these actions can be accessed with the caret dropdown next to a tag in the **Project Settings** menu. Tags can only be deleted in this menu if they were added via a .ini file (either hand-edited or added via the **Project Settings** menu), and are not referenced by anything else. Renamed tags will cause additions to be made to the GameplayTagRedirects list, and any renamed tags will be silently fixed on load.
+
+
+
+[REGION:caption]Gameplay Tags can be edited in Project Settings via a caret dropdown.[/REGION]
+
+### Gameplay Tag Test Operations
+There are a number of test operations, all based on the concept of matching tags to other tags, that can be performed on Gameplay Tags and Gameplay Tag Containers. Each of these functions will be called on a Gameplay Tag or Gameplay Tag Container and will take a single Gameplay Tag or Gameplay Tag Container as a parameter.
The following table details the operations available for tags and tag containers. In this table, the format "A.1" represents a single Gameplay Tag, while "{A.1}" represents that same tag as part of a Gameplay Tag Container. A container with multiple tags will be of the format "{A.1, B.1}".
@@ -76,25 +72,41 @@ The following table details the operations available for tags and tag containers
| {A.1, B.1} | HasAll | {A, B} | true |
| {A.1, B.1} | HasAllExact | {A, B} | false |
-Note that providing empty or default Gameplay Tag Containers as the input parameter will cause all operations to return false, except for `HasAll`, `HasAllExact`, `MatchesAll`, and `MatchesAllExact`. The justification for this is that there are no tags in the parameter container that aren't in the source set, and this is consistent with set theory.
+Note that providing empty or default Gameplay Tag Containers as the input parameter will cause all operations to return false, except for `HasAll`, `HasAllExact`, `MatchesAll`, and `MatchesAllExact`. The justification for this, is that there are no tags in the parameter container that are missing from the source set.
-### Gameplay Tag Queries
+As an example, the following Blueprint will use some of the above-named operations to detect whether a Gameplay Tag Container has `TestTag.One` or `TestTag.Three`, but not both tags, and not `TestTag.Two` (when the test Actor is spawned into a game). For this test, we will use literal container values in our Blueprint for our test, but use a Blueprint (or C++) variable for our Actor's container.
+
+
+
+## Gameplay Tag Queries
Certain types of queries for Gameplay Tag Containers can be stored in a **Gameplay Tag Query** variable in order to make them data-driven, perform them in many places without having to edit more than one variable or piece of code, and speed them up. Gameplay Tag Queries are limited to three basic tests:
-**Any Tags Match** succeeds if at least one tag from the query is found in the container.
-**All Tags Match** succeeds if there are no tags in the query that are not also found in the container. (This includes the case that no tags are present in the query.)
-**No Tags Match** succeeds if there are no tags in the query that are also found in the container. (This includes the case that no tags are present in the query.)
+
+* **Any Tags Match** succeeds if at least one tag from the query is found in the container.
+
+* **All Tags Match** succeeds if there are no tags in the query that are not also found in the container. _This includes the case that no tags are present in the query._
+
+* **No Tags Match** succeeds if there are no tags in the query that are also found in the container. _This includes the case that no tags are present in the query._
+
However, those tests can be combined together via three larger expressions, each of which contains an array of additional expressions or tests:
-**Any Expressions Match** succeeds when any of its sub-expressions or tests succeeds.
-**All Expressions Match** succeeds when none of its sub-expressions or tests fail. (This includes the case that no sub-expressions or tests are present in the query.)
-**No Expressions Match** succeeds when none of its sub-expressions or tests succeed. (This includes the case that no sub-expressions or tests are present in the query.)
+
+* **Any Expressions Match** succeeds when any of its sub-expressions or tests succeeds.
+
+* **All Expressions Match** succeeds when none of its sub-expressions or tests fail. _This includes the case that no sub-expressions or tests are present in the query._
+
+* **No Expressions Match** succeeds when none of its sub-expressions or tests succeed. _This includes the case that no sub-expressions or tests are present in the query._
+
[REGION:note]Note that all three test types refer to "exact" matching as per the table of operations above.[/REGION]
-
+We can recreate our earlier test example where we required either `TestTag.One` or `TestTag.Three` (but not both) to be in the source container, having required that `TestTag.Two` not be, using a single Gameplay Tag Query. For this test, we will use Blueprint (or C++) variables exclusively, although literal values are also supported. Here is our test query variable:
-In the above sample query, either TestTag.One or TestTag.Three (but not both) must be in the source container, and TestTag.Two must not be.
+
-### Using Gameplay Tags In Your Game
+With this query set up, we can evaluate our Gameplay Tag Container against it in our test Actor's Blueprint as follows:
+
+
+
+## Using Gameplay Tags In Your Game
To apply the tags you have created to objects in your game, add Gameplay Tags (C++ type `FGameplayTag`) or Gameplay Tag Containers (C++ type `FGameplayTagContainer`) properties to the objects. You can also add **Gameplay Tag Queries** (C++ type `FGameplayTagQuery`) to your objects as desired, or you can use the tag operations directly in Blueprints or C++ code. Once these properties have been added, you can edit them from the code or editor, like any other variable.
-### Accessing Gameplay Tags Quickly (Requires C++)
-The `IGameplayTagAssetInterface` can be implemented in C++. Doing so, and overriding the `GetOwnedGameplayTags` function, will create a Blueprint-accessible way to populate a Gameplay Tag Container with the tags associated with that object. In most cases, this just means copying the tags from the base class into a new container, but your implementation of the class could gather tags from multiple containers, call a Blueprint function to get access to Blueprint-declared tags, or whatever your object requires. The advantage of this interface is that it enables you to interact with a variety of disparate object types in a standardized way, so that you can get an object's tags without explicitly casting the object and then writing custom code for each possible type to get the correct tag variable (or variables). This is especially useful on larger projects, where it can help to avoid hard-to-reproduce bugs and make code cleaner, faster, and easier to maintain.
+## Quickly Accessing Gameplay Tags in C++
+The `IGameplayTagAssetInterface` can be implemented in C++. Doing so, and overriding the `GetOwnedGameplayTags` function, will create a Blueprint-accessible way to populate a Gameplay Tag Container with the tags associated with that object. In most cases, this just means copying the tags from the base class into a new container, but your implementation of the class could gather tags from multiple containers, or call a Blueprint function to get access to Blueprint-declared tags, or whatever your object requires. The advantage of this interface is that it enables you to interact with a variety of disparate object types in a standardized way, so that you can get an object's tags without explicitly casting the object and then writing custom code for each possible type to get the correct tag variable (or variables). This is especially useful on larger projects, where it can help to avoid (hard-to-reproduce) bugs and make code cleaner, faster, and easier to maintain.
diff --git a/Engine/Documentation/Source/Gameplay/Tags/Tags.JPN.udn b/Engine/Documentation/Source/Gameplay/Tags/Tags.JPN.udn
index 8bbfcb230546..18d1e75a64cb 100644
--- a/Engine/Documentation/Source/Gameplay/Tags/Tags.JPN.udn
+++ b/Engine/Documentation/Source/Gameplay/Tags/Tags.JPN.udn
@@ -1,68 +1,64 @@
-INTSourceChangelist:0
-Availability:Docs
-Title:Gameplay Tags
-Crumbs: %ROOT%, Engine, Engine/Gameplay
-Description: Gameplay Tags can be used to identify, categorize, match, and filter objects.
-version: 4.15
+INTSourceChangelist:3484974
+Availability:Public
+Title:Gameplay Tag
+Crumbs: %ROOT%
+Description:Gameplay Tag を使ってオブジェクトを特定、分類、マッチング、フィルタリングすることができます。
+version:4.15
skilllevel:Intermediate
Parent:Engine/Gameplay
+Order:
type:overview
+tags:Gameplay
-## Gameplay Tags
-**Gameplay Tags** are conceptual, hierarchical labels with user-defined names. These tags can have any number of hierarchical levels, separated by the �.� character; for example, a Gameplay Tag with three levels would take the form of �Family.Genus.Species�, with �Family� being the broadest identifier in the hierarchy, and �Species� being the most specific. Note that the existence of �Family.Genus.Species� implicitly means that �Family.Genus� and �Family� Gameplay Tags also exist. Individual tags are lightweight, and use the type `FGameplayTag`. Since game objects frequently have multiple tags, **Gameplay Tag Containers** (using the type `FGameplayTagContainer`) are provided, and can handle a variety of additional queries. Gameplay Tags (or Gameplay Tag Containers) can be added to any object to associate it with conceptual labels that can then be used to identify, match, categorize, or filter as needed for your project.
+[toc(start:2 end:2)]
-### Creating Gameplay Tags
-Gameplay Tags must be added to the central tag dictionary for the engine to be aware of them. This can be done in three ways via editor functionality. Tags can be added manually in the **Project Settings** menu, with .ini files, through creating data table assets. All three methods are set up under **Project Settings**, by opening the **Gameplay Tags** tab under the **Project** section.
+**Gameplay Tag** は概念的なものであり、ユーザー定義の名前を持つ階層ラベルです。こうしたタグは階層レベルをいくつでも持つことが可能であり、"." 文字で区切られます。例えば 3 階層の Gameplay Tag は "Family.Genus.Species" という形式になります。"Family" は階層で最も広い範囲の識別子であり、"Species" が最も限定的なものになります。"Family.Genus.Species" の存在は、 "Family.Genus" と "Family" Gameplay のタグも存在することを暗に示しています。個々のタグは軽量であり、型 `FGameplayTag` を使用します。ゲーム オブジェクトは複数のタグを持つことが多いため、**Gameplay Tag Container** (型 `FGameplayTagContainer` を使用) が用意されており、様々なクエリーを追加で処理することができます。Gameplay Tag (またはGameplay Tag Container) を任意のプロジェクトに追加してオブジェクトを概念的なラベルに関連付けます。次にこれを使ってプロジェクトでこれらを (必要に応じて) 特定、マッチング、分類、フィルタリングします。
+## Gameplay Tag の作成
+エンジンに認識させるために Gameplay Tag をベースとなるタグ辞書に追加しなければなりません。これはエディタの機能を使って次の 3 種類の方法で行うことができます。タグを手動で .ini ファイルを使って、またはデータ テーブル アセットを作成して、**[Project Settings (プロジェクト設定)]** メニューに追加することができます。
+
+こうした 3 種類の方法は、**[Project Settings]** で **[Project]** セクションの **[Gameplay Tag]** を開いてセットアップします。

-#### Manually Adding Tags
+### 手動でタグを追加する
-The easiest way to add gameplay tags is to use enter them manually in the **Project Settings** menu. By checking the **Import Tags From Config** option, `Config/DefaultGameplayTags.Ini` will be loaded, as well as all Gameplay Tags in any .Ini files found under the `Config/Tags� path. An option labeled **Add New Gameplay Tag** will appear, and this option can be used to add new Gameplay Tags to any existing Gameplay Tag .Ini files, including the default file. Tags added in this way will also have an optional field for entering a brief description, which will appear as a tooltip in the editor.
+Gameplay Tag を追加する最も簡単な方法は **[Project Settings]** メニューで手入力するやり方です。**[Import Tags From Config]** オプションにチェックを入れると、`Config/DefaultGameplayTags.ini` がロードされます。`Config/Tags` パスの.ini ファイルにあるすべてのゲームプレイ タグもロードされます。**[Add New Gameplay Tag]** とラベル付けされたオプションが表示されます。このオプションを使って新規ゲームプレイ タグをデフォルト ファイルを含む既存の Gameplay Tag .ini ファイルに追加します。このように追加されたタグには、短い説明を入力するオプション欄があります。これは、エディタでツールチップとして表示されます。

-#### Editing .Ini Files Directly
-To add tags using your own .Ini files, the **Import Tags From Config** option must be enabled. Gameplay Tags will then be loaded from each of the .Ini files found your project�s `Config/Tags/` path, which are easy to hand-edit. If these edits are made while the editor is running, turning the **Import Tags From Config** option off and back on will reload the files. The format within these files looks like this:
-
- [UserTags]
- GameplayTags=Vehicle.Air.Helicopter
- GameplayTags=Movement.Flying
- GameplayTags=Movement.Hovering
-
-If a hand-written file is modified by the editor�s **Add New Gameplay Tag** feature, all of the old tags, as well as the new tag, will be copied into a new section. The �[UserTags]� section will remain in the file, but will be ignored during load operations. For example, if �Movement.Landing� were added to our file above, the new file would look like this:
-
- [UserTags]
- GameplayTags=Vehicle.Air.Helicopter
- GameplayTags=Movement.Flying
- GameplayTags=Movement.Hovering
+### .ini ファイルを直接編集する
+.ini ファイルを使ってタグを追加するには **[Import Tags From Config]** オプションを有効にしなければなりません。プロジェクトの `Config/Tags/` パスにある各 .ini ファイルから Gameplay Tag がロードされ、手作業で簡単に編集することができます。エディタ実行中にこうした編集が加えられると、**Import Tags From Config** オプションをオフにし、オンに戻すとファイルを再ロードします。ファイル形式は次のようになります。
[/Script/GameplayTags.GameplayTagsList]
- GameplayTagList=(Tag="Vehicle.Air.Helicopter",DevComment="")
+ GameplayTagList=(Tag="Vehicle.Air.Helicopter",DevComment="This is a custom tooltip!")
GameplayTagList=(Tag="Movement.Flying",DevComment="")
GameplayTagList=(Tag="Movement.Hovering",DevComment="")
GameplayTagList=(Tag="Movement.Landing",DevComment="")
-[REGION:note]It is not recommended to hand-edit a tag .Ini file after using the **Project Settings** menu to add tags to that file.[/REGION]
+これはチームのメンバーが独自のタグを追加できる便利な方法です。`Config/Tags` の .ini ファイルは簡単に編集できるテキスト ファイルであり、任意のファイル命名規則に従い名前を付けることができるからです。
-This method is very convenient as a way to enable members of your team to add their own tags, since .Ini files in `Config/Tags` are easily-edited text files that can be named with any file-naming convention you like.
+**[Project Settings]** 内の **[Gameplay Tags Developer]** メニューに進み "Developer Tag" config ファイルを使用し、お好みのファイル名を **Developer Config Name** に入力します。有効にすると、デフォルトの .ini ファイルに自分で追加したすべてのタグを指定した .ini ファイルに保存します。.ini ファイルは `Config/Tags` フォルダにあり、他のデベロッパーに渡したり、さらに修正を加えることなくソース コントロール システムにサブミットすることができます。これは非常に多くのタグを持つ大規模プロジェクトで役立ちます。あるいは、特定のデベロッパーが作成したタグや特定のゲーム機能で使用するタグを区別する手段として役立ちます。これは全くのオプションですが、特定のタグを別個のファイルに保存する一部のチームやワークフローで役立つでしょう。
-A �Developer Tag� config file can be used by going to the **Gameplay Tags Developer** menu within **Project Settings** and filling in the **Developer Config Name** with your desired filename. If set, this will save all tags you personally add to the default .Ini file to your specified .Ini file instead. Your .Ini file will reside in the `Config/Tags` folder, and can be passed to other developers or submitted to your source control system without further modification. This can be useful on large projects with thousands of tags, or simply as a way to separate tags created by specific developers or for use with specific game features. This is entirely optional, but it can be helpful for some teams and workflows to have certain tags stored in separate files.
-
-#### Data Table Assets
-Finally, tags can be added via [DataTable](Gameplay/DataDriven/#datatables) assets with the row type `GameplayTagTableRow`. This is especially useful for importing Gameplay Tags from an external source, such as an Excel spreadsheet file. Once your asset is created, add it to the **GameplayTagTableList** in the **Project Settings** menu and all tags contained within it will be added to the **Gameplay Tag Manager**. Note that this system supports multiple assets being listed, so you can separate out your project�s tags into different spreadsheets if this helps your workflow or organization.
+### Data Table アセット
+最後に行の型が `GameplayTagTableRow` の [データ テーブル](Gameplay/DataDriven/#データテーブル) アセットを介してタグを追加することができます。これは Excel のスプレッドシート ファイルなどの外部ソースから Gameplay Tag をインポートする際に特に便利です。しかし、インポートするファイルがなくても独自のものを作成してインエディタで作業することができます。アセットを作成したらそれを **[Project Settings]** メニューの **[GameplayTagTableList]** に追加し、その中に入っているすべてのタグが **[Gameplay Tag Manager]** に追加されます。このシステムでは、リストされている複数アセットに対応します。そのため、ワークフローや整理に役立つならば、プロジェクトのタグを複数のスプレッド シートに分けることもできます。

-### Managing Gameplay Tags
-Once your Gameplay Tags have been added, you can manage them by searching for references to them, deleting them, or renaming them. All of these actions can be accessed with the caret dropdown next to a tag in the **Project Settings** menu. Tags can only be deleted in this menu if they were added via a .Ini file (either hand-edited or added via the **Project Settings** menu), and are not referenced by anything else. Renamed tags will cause additions to be made to the GameplayTagRedirects list, and any renamed tags will be silently fixed on load.
+[REGION:caption]Data Table アセットは .ini ファイルではなくアンリアル エンジンのアセットを使用します。他のゲーム アセットと同様にエディタ実行中に表示したり、変更することができます。[/REGION]
-#### Gameplay Tag Test Operations
-There are a number of test operations, all based on the concept of matching tags to other tags, that can be performed on Gameplay Tags and Gameplay Tag Containers. Each of these functions will be called on a Gameplay Tag or Gameplay Tag Container, and will take a single Gameplay Tag or Gameplay Tag Container as a parameter.
+## Gameplay Tag を管理する
+Gameplay Tag を追加後、それらに対する参照を検索、削除、名前変更して管理することができます。こうした操作をするには、**[Project Settings]** メニューでタグのとなりにある下向き三角のドロップダウンを使用します。タグは ini ファイルで追加した場合に限り (手作業で編集または **Project Settings** メニューから追加)、このメニューから削除可能であり、他のものから参照されません。名前変更したタグは、GameplayTagRedirects リストに入り、名前変更したタグがあればロード中にサイレント修正されます。
-The following table details the operations available for tags and tag containers. In this table, the format �A.1� represents a single Gameplay Tag, while �{A.1}� represents that same tag as part of a Gameplay Tag Container. A container with multiple tags will be of the format �{A.1, B.1}�.
+
-| Source | Function/Operation | Input Parameter | Return Value |
+[REGION:caption]Gameplay Tag は下向き三角のドロップダウンから [Project Settings (プロジェクト設定)] で編集することができます。[/REGION]
+
+### Gameplay Tag のテスト演算
+テスト演算は多数ありますが、そのすべてはタグを他のタグにマッチングさせるという概念に基づいています。これは、Gameplay Tag と Gameplay Tag Container で行うことができます。こうした関数はそれぞれ、Gameplay Tag または Gameplay Tag Container と呼ばれ、単独のGameplay Tag または Gameplay Tag Container をパラメータとして取ります。
+
+以下の表は、タグとタグ コンテナで利用可能な演算の詳細です。この表ではフォーマット、"A.1" は単独の Gameplay Tag を表します。 "{A.1}" は Gameplay Tag Container の一部である同じタグを表しています。複数のタグを持つコンテナは、"{A.1, B.1}" というフォーマットになります。
+
+| ソース| 関数/演算 | 入力パラメータ | 戻り値 |
| --- | --- | --- | --- |
| A.1 | MatchesTag | A | true |
| A.1 | MatchesTagExact (or ==) | A | false |
@@ -77,25 +73,41 @@ The following table details the operations available for tags and tag containers
| {A.1, B.1} | HasAll | {A, B} | true |
| {A.1, B.1} | HasAllExact | {A, B} | false |
-Note that providing empty or default Gameplay Tag Containers as the input parameter will cause all operations to return false, except for `HasAll`, `HasAllExact`, `MatchesAll`, and `MatchesAllExact`. The justification for this is that there are no tags in the parameter container that aren�t in the source set, and this is consistent with set theory.
+空すなわちデフォルトの Gameplay Tag Container を入力パラメータとして与えると、`HasAll`、 `HasAllExact`、 `MatchesAll`、および `MatchesAllExact` 以外の全ての演算で false を戻すようになります。ソースの集合にないタグが、このパラメータのコンテナにないからです。
-### Gameplay Tag Queries
-Certain types of queries for Gameplay Tag Containers can be stored in a **Gameplay Tag Query** variable in order to make them data-driven, perform them in many places without having to edit more than one variable or piece of code, and speed them up. Gameplay Tag Queries are limited to three basic tests:
-**Any Tags Match** succeeds if at least one tag from the query is found in the container.
-**All Tags Match** succeeds if there are no tags in the query that are not also found in the container. (This includes the case that no tags are present in the query.)
-**No Tags Match** succeeds if there are no tags in the query that are also found in the container. (This includes the case that no tags are present in the query.)
-However, those tests can be combined together via three larger expressions, each of which contains an array of additional expressions or tests:
-**Any Expressions Match** succeeds when any of its sub-expressions or tests succeeds.
-**All Expressions Match** succeeds when none of its sub-expressions or tests fail. (This includes the case that no sub-expressions or tests are present in the query.)
-**No Expressions Match** succeeds when none of its sub-expressions or tests succeed. (This includes the case that no sub-expressions or tests are present in the query.)
-[REGION:note]Note that all three test types refer to �exact� matching as per the table of operations above.[/REGION]
+例えば、以下のブループリントでは、テスト アクタがゲームにスポーンされると上記の演算の一部を使って、ある Gameplay Tag Container に、`TestTag.One` または `TestTag.Three` のいずれかがあるかを検出しますが、両方のタグは検出せず、`TestTag.Two` も検出しません。ここではテスト目的のためにブループリントのリテラル コンテナ値を使いますが、アクタのコンテナに対してブループリント (または C++) の変数を使います。
-
+
-In the above sample query, either TestTag.One or TestTag.Three (but not both) must be in the source container, and TestTag.Two must not be.
+## Gameplay Tag のクエリー
+Gameplay Tag コンテナの一部のクエリーのタイプは、**Gameplay Tag Query** 変数に格納してデータ駆動にし、ひとつの変数やコードの一部を編集する必要なく多くの場所で実行し、スピードアップすることができます。Gameplay Tag のクエリーは以下の 3 種類の基本テストに限定されます。
-### Using Gameplay Tags In Your Game
-To apply the tags you have created to objects in your game, add Gameplay Tags (C++ type `FGameplayTag`) or Gameplay Tag Containers (C++ type `FGameplayTagContainer`) properties to the objects. You can also add **Gameplay Tag Queries** (C++ type `FGameplayTagQuery`) to your objects as desired, or you can use the tag operations directly in Blueprints or C++ code. Once these properties have been added, you can edit them from the code or editor, like any other variable.
+* **Any Tags Match** はクエリーのタグが最低 1 つコンテナで見つかれば成功です。
-### Accessing Gameplay Tags Quickly (Requires C++)
-The `IGameplayTagAssetInterface` can be implemented in C++. Doing so, and overriding the `GetOwnedGameplayTags` function, will create a Blueprint-accessible way to populate a Gameplay Tag Container with the tags associated with that object. In most cases, this just means copying the tags from the base class into a new container, but your implementation of the class could gather tags from multiple containers, call a Blueprint function to get access to Blueprint-declared tags, or whatever your object requires. The advantage of this interface is that it enables you to interact with a variety of disparate object types in a standardized way, so that you can get an object�s tags without explicitly casting the object and then writing custom code for each possible type to get the correct tag variable (or variables). This is especially useful on larger projects, where it can help to avoid hard-to-reproduce bugs and make code cleaner, faster, and easier to maintain.
+* **All Tags Match** は、クエリーのタグでコンテナでも見つからなかったものがない場合に成功します。 _これには、クエリーにタグが何もない場合も含まれます。_
+
+* **No Tags Match** は、クエリーのタグでコンテナで見つかったものがない場合、成功です。 _これには、クエリーにタグが全く存在しない場合が含まれます。_
+
+ただし、こうしたテストは 3 つの大きな表現式を組み合わせてテストすることもできます。それぞれ、追加の表現式やテストの配列を含みます。
+
+* **Any Expressions Match** は、その部分式やテストが成功すれば成功です。
+
+* **All Expressions Match** は、その部分式やテストがひとつも失敗しない場合に成功になります。 _これには部分式やテストがクエリーに全く存在しない場合を含みます。_
+
+* **No Expressions Match** は、その部分式やテストがひとつも成功しない場合に成功になります。 _これには部分式やテストがクエリーに全く存在しない場合を含みます。_
+
+[REGION:note]上記の 3 種類のテストは、上の演算の表の「完全一致」を表しています。[/REGION]
+
+上記のテスト サンプル、`TestTag.One` または `TestTag.Three` のいずれかひとつ (両方はだめ) はソース コンテナに入っていて、`TestTag.Two` はコンテナに入っていないことを求めることを、ひとつの Gameplay Tag Query を使って再現することができます。このテストでは、リテラル値もサポートしますが、ブループリント (または C++) の変数だけを使います。以下はテスト クエリーの変数です。
+
+
+
+このクエリーをセットアップした状態で、以下のようにテストアクタのブループリントで Gameplay Tag Container を評価することができます。
+
+
+
+## ゲームで Gameplay Tags を使用する
+作成したタグをゲーム内のオブジェクトに適用するには、Gameplay Tag (C++ 型 `FGameplayTag`) または Gameplay Tag Container (C++ 型 `FGameplayTagContainer`) のプロパティをオブジェクトに追加します。**Gameplay Tag Queries** (C++ 型 `FGameplayTagQuery`) を必要に応じてオブジェクトに追加するか、ブループリントまたは C++ コードで直接タグ演算を使用することができます。こうしたプロパティを追加したら、他の変数と同様にコードまたはエディタで編集することができます。
+
+## C++ で Gameplay Tag に迅速にアクセスする
+`IGameplayTagAssetInterface` は C++ で実装可能です。実装し、`GetOwnedGameplayTags` 関数をオーバーライドすると、ブループリントで、そのオブジェクトに関連するタグを Gameplay Tag Container に入れられるようになります。ほとんどの場合、これは単に基底クラスから新規コンテナにタグをコピーすることを意味しますが、クラスを実装すると複数のコンテナからタグを集めて、ブループリントの関数を呼び出してブループリントで宣言したタグにアクセスしたり、オブジェクトが必要とすることを行います。このインタフェースのメリットは標準化された方法で多様な異なるオブジェクトの型とインタラクションできるようにし、明示的にオブジェクトをキャストせずにオブジェクトのタグを取得することができます。次に各型に対してカスタム コードを記述し、正しいタグ変数を取得します。これは大規模プロジェクトで役立ちます。 (再現が難しい) バグの回避や、コードをクリーンにし高速化し、容易に維持管理できるようにします。
diff --git a/Engine/Documentation/Source/Gameplay/Tags/Tags.KOR.udn b/Engine/Documentation/Source/Gameplay/Tags/Tags.KOR.udn
index 408ca2e6f9a8..c3e481b7114d 100644
--- a/Engine/Documentation/Source/Gameplay/Tags/Tags.KOR.udn
+++ b/Engine/Documentation/Source/Gameplay/Tags/Tags.KOR.udn
@@ -1,62 +1,59 @@
-Availability:Docs
+INTSourceChangelist:3484974
+Availability:Public
Title:게임플레이 태그
-Crumbs: %ROOT%, Engine, Engine/Gameplay
+Crumbs: %ROOT%
Description: 게임플레이 태그는 오브젝트 식별, 분류, 일치, 필터링에 사용 가능합니다.
version: 4.15
skilllevel:Intermediate
Parent:Engine/Gameplay
+Order:
type:overview
+tags:Gameplay
+
+[toc(start:2 end:2)]
-## 게임플레이 태그
**Gameplay Tags** (게임플레이 태그)는 사용자 정의 이름을 붙인 개념적 계층형 라벨입니다. 이 태그는 "." 글자로 구분되는 계층구조를 몇 단계든 가질 수 있습니다. 예를 들어 세 단계의 게임플레이 태그는 "Family.Genus.Species" 형태를 띄며, "Family" 가 계층구조에서 가장 넓은 식별자가 되고, "Species" 는 가장 구체적인 것이 됩니다. 참고로 "Family.Genus.Species" 가 존재한ㄴ다는 것은 "Family.Genus" 와 "Family" 게임플레이 태그 역시 존재한다는 것을 암시합니다. 개별 태그는 경량이며, `FGameplayTag` 를 사용합니다. 게임 오브젝트는 자주 다수의 태그를 갖기에 (`FGameplayTagContainer` 유형을 사용하는) **Gameplay Tag Containers** (게임플레이 태그 컨테이너)가 제공되어, 다양한 추가 질의 처리가 가능합니다. 게임플레이 태그 (또는 게임플레이 태그 컨테이너)는 아무 오브젝트에 추가하고 개념적 라벨을 할당한 뒤 프로젝트의 요구에 따라 식별, 일치, 분류, 필터 적용이 가능합니다.
### 게임플레이 태그 생성
-게임플레이 태그는 엔진의 중앙 태그 디렉토리에 추가해야 인식이 가능합니다. 에디터 기능을 통해 세 가지 방식으로 가능합니다. 태그는 **프로젝트 세팅** 메뉴에서, .ini 파일을 통해, 데이터 테이블 애셋을 생성하여, 총 세 가지 방법으로 수동 추가할 수 있습니다. 이 세 가지 방법 모두 **프로젝트 세팅** 아래에서 **프로젝트** 섹션 아래 **Gameplay Tags** 탭에서 구성 가능합니다.
+게임플레이 태그는 엔진의 중앙 태그 디렉토리에 추가해야 인식이 가능합니다. 에디터 기능을 통해 세 가지 방식으로 가능합니다. 태그는 **프로젝트 세팅** 메뉴에서, .ini 파일을 통해, 데이터 테이블 애셋을 생성하여, 총 세 가지 방법으로 수동 추가할 수 있습니다.
+이 세 가지 방법 모두 **프로젝트 세팅** 아래에서 **프로젝트** 섹션 아래 **Gameplay Tags** 탭에서 구성 가능합니다.

-#### 태그 수동 추가
+### 태그 수동 추가
게임플레이 태그를 추가하는 가장 쉬운 방법은 **프로젝트 세팅** 메뉴에서 수동 입력하는 것입니다. **Import Tags From Config** 옵션을 체크하면, `Config/DefaultGameplayTags.Ini` 파일이 로드되며, `Config/Tags` 경로의 .ini 파일에서 찾은 모든 게임플레이 태그도 같이 로드됩니다. **Add New Gameplay Tag** 라는 라벨의 옵션이 나타나며, 이 옵션을 사용하여 기본 파일을 포함해서 기존 게임플레이 태그 .ini 파일에 새로운 게임플레이 태그를 추가할 수 있습니다. 이런 식으로 추가된 태그는 짧은 설명을 입력할 수 있는 옵션 칸이 추가로 생기며, 이 부분은 에디터의 툴팁에 나타나게 됩니다.

-#### .Ini 파일 직접 편집
+#### .ini 파일 직접 편집
별도의 .ini 파일을 사용해서 태그를 추가하려면, **Import Tags From Config** 옵션을 켜야 합니다. 그러면 프로젝트의 `Config/Tags/` 경로에서 찾은 각 .ini 파일에서 게임플레이 태그가 로드되어 쉽게 수동 편집할 수 있습니다. 에디터 실행 도중 이러한 편집을 한 경우, **Import Tags From Config** 옵션을 껐다 다시 켜면 파일을 다시 로드합니다. 이 파일 내 포맷은 다음과 같습니다:
- [UserTags]
- GameplayTags=Vehicle.Air.Helicopter
- GameplayTags=Movement.Flying
- GameplayTags=Movement.Hovering
-
-에디터의 **Add New Gameplay Tag** 기능으로 수동 작성 파일이 변경되면, 모든 기존 태그와 새로운 태그는 새로운 섹션에 복사됩니다. "[UserTags]" 섹션은 파일에 남아있지만 로드 연산 도중 무시됩니다. 예를 들어 위 파일에 "Movement.Landing" 이 추가되면, 새 파일은 다음과 같을 것입니다:
-
- [UserTags]
- GameplayTags=Vehicle.Air.Helicopter
- GameplayTags=Movement.Flying
- GameplayTags=Movement.Hovering
-
[/Script/GameplayTags.GameplayTagsList]
- GameplayTagList=(Tag="Vehicle.Air.Helicopter",DevComment="")
+ GameplayTagList=(Tag="Vehicle.Air.Helicopter",DevComment="This is a custom tooltip!")
GameplayTagList=(Tag="Movement.Flying",DevComment="")
GameplayTagList=(Tag="Movement.Hovering",DevComment="")
GameplayTagList=(Tag="Movement.Landing",DevComment="")
-[REGION:note]**프로젝트 세팅** 메뉴를 사용하여 그 파일에 태그를 추가한 이후 태그 .ini 파일을 수동 편집하는 것은 좋지 않습니다.[/REGION]
-
-이 방법은 팀원이 자신의 태그를 추가하도록 하기에 매우 편리한 방법인데, `Config/Tags` 의 .ini 파일은 원하는 작명 규칙으로 쉽게 이름지을 수 있는 텍스트 파일이기 때문입니다.
+이 방법은 팀원이 자신의 태그를 추가하도록 하기에 편리한 방법인데, `Config/Tags` 의 .ini 파일은 원하는 작명 규칙으로 쉽게 이름지을 수 있는 텍스트 파일이기 때문입니다.
"Developer Tag" 컨픽 파일은 **프로젝트 세팅** 의 **Gameplay Tags Developer** (게임플레이 태그 개발자) 메뉴에서 **Developer Config Name** (개발자 환경설정 이름)을 원하는 파일명으로 채우면 사용할 수 있습니다. 설정하면 개인적으로 기본 .ini 파일에 추가한 모든 태그가 지정된 .ini 파일에 대신 저장됩니다. 자신의 .ini 파일은 `Config/Tags` 폴더에 들어가며, 추가 변경 없이 다른 개발자에게 전달하거나 소스 콘트롤 시스템에 제출할 수 있습니다. 태그가 수천 개인 거대 프로젝트나, 특정 개발자가 만든 태그를 분류하기 위해서라거나, 아니면 특정 게임 기능으로 사용하기 위한 목적으로 유용하게 쓰일 수 있습니다. 이 기능은 완전 옵션이지만, 별도의 파일에 특정 태그를 저장하려는 팀이나 작업방식에 유용하게 쓰일 수 있습니다.
#### 데이터 테이블 애셋
-마지막으로 태그는 `GameplayTagTableRow` 행 유형을 가진 [데이터 테이블](Gameplay/DataDriven/#datatables) 애셋을 통해 추가할 수 있습니다. 이는 엑셀 스프레드시트 파일같은 외부 소스에서 게임플레이 태그를 임포트할 때 특히나 좋습니다. 애셋이 생성되면, **프로젝트 세팅** 메뉴의 **GameplayTagTableList** 에 추가하고, 그 안에 들어있는 모든 태그가 **게임플레이 태그 매니저** 에 추가됩니다. 참고로 이 시스템은 다중 애셋 표시를 지원하므로, 프로젝트의 태그를 여러 개의 스프레드 시트에 나누는 것이 작업방식이나 체계 정리에 도움이 된다면 그렇게도 할 수 있습니다.
+마지막으로 태그는 `GameplayTagTableRow` 행 유형을 가진 [데이터 테이블](Gameplay/DataDriven/#datatables) 애셋을 통해 추가할 수 있습니다. 이는 엑셀 스프레드시트 파일같은 외부 소스에서 게임플레이 태그를 임포트할 때 특히나 좋습니다만, 임포트할 파일 없이도 에디터 안에서 작업하여 직접 만들 수 있습니다. 애셋이 생성되면, **프로젝트 세팅** 메뉴의 **GameplayTagTableList** 에 추가하고, 그 안에 들어있는 모든 태그가 **게임플레이 태그 매니저** 에 추가됩니다. 참고로 이 시스템은 다중 애셋 표시를 지원하므로, 프로젝트의 태그를 여러 개의 스프레드 시트에 나누는 것이 작업방식이나 체계 정리에 도움이 된다면 그렇게도 할 수 있습니다.

+[REGION:caption]데이터 테이블 애셋은 .ini 파일이 아닌 언리얼 엔진 애셋을 사용하며, 다른 게임 애셋과 비슷하게 에디터 실행 도중 확인 및 변경 가능합니다.[/REGION]
+
### 게임플레이 태그 관리
게임플레이 태그를 추가했으면, 그에 대한 레퍼런스 검색, 삭제, 이름변경 등의 관리가 가능합니다. 이러한 동작 모두 **프로젝트 세팅** 메뉴에서 태그 옆의 드롭다운으로 접근할 수 있습니다. 태그는 (수동 편집 또는 **프로젝트 세팅** 메뉴를 통해 추가된) .ini 파일을 통해 추가된 경우에만, 그리고 다른 것에 레퍼런싱되지 않은 경우에만 삭제할 수 있습니다. 태그 이름변경은 GameplayTagRedirects 목록에 추가 작업이 발생하며, 이름변경된 태그는 로드시 자동으로 수정됩니다.
-#### 게임플레이 태그 테스트 연산
+
+
+[REGION:caption]게임플레이 태그는 프로젝트 세팅에서 드롭다운을 통해 편집할 수 있습니다.[/REGION]
+
+### 게임플레이 태그 테스트 연산
테스트 연산이 다수 있는데, 모두 태그를 다른 태그에 일치시키는 개념을 기반으로 한 것으로, 게임플레이 태그 및 게임플레이 태그 컨테이너에서 수행할 수 있습니다. 이 함수 각각은 게임플레이 태그 또는 게임플레이 태그 컨테이너에서 호출할 수 있으며, 하나의 게임플레이 태그 또는 게임플레이 태그 컨테이너를 파라미터로 받습니다.
다음 테이블은 태그 및 태그 컨테이너에 사용할 수 있는 연산 상세 내용입니다. 이 표에서 "A.1" 포맷은 단일 게임플레이 태그를 나타내는 반면, "{A.1}" 은 게임플레이 태그 컨테이너의 일부분 중 같은 태그를 나타냅니다. 태그가 여럿 있는 컨테이너는 "{A.1, B.1}" 포맷이 됩니다.
@@ -76,25 +73,41 @@ type:overview
| {A.1, B.1} | HasAll | {A, B} | true |
| {A.1, B.1} | HasAllExact | {A, B} | false |
-참고로 공백 또는 기본 게임플레이 태그 컨테이너를 입력 파라미터로 제공하면 `HasAll`, `HasAllExact`, `MatchesAll`, `MatchesAllExact` 를 제외한 모든 연산이 false 반환하게 됩니다. 이는 소스 세트에 있지 않은 파라미터 태그에는 태그가 없다는 데 대한 정당화가 되며, 집합 이론과도 일관되는 내용입니다.
+참고로 공백 또는 기본 게임플레이 태그 컨테이너를 입력 파라미터로 제공하면 `HasAll`, `HasAllExact`, `MatchesAll`, `MatchesAllExact` 를 제외한 모든 연산이 false 반환하게 됩니다. 이는 소스 세트에 없는 파라미터 컨테이너에 태그가 없다는 데 대한 정당화가 됩니다.
-### 게임플레이 태그 쿼리
+예로 다음 블루프린트는 위 이름의 연산을 사용하여 테스트 액터가 게임에 스폰될 때 Gameplay Tag Container 에 `TestTag.One` 또는 `TestTag.Three` 가, 둘 다는 아닌 하나만 있는지 검사합니다. 이 테스트에는 시범으로 블루프린트의 리터럴 컨테이너 값을 사용하지만, 액터의 컨테이너에는 블루프린트( 또는 C++) 변수를 사용합니다.
+
+
+
+## 게임플레이 태그 쿼리
게임플레이 태그 컨테이너에 대한 특정 유형 쿼리는 **Gameplay Tag Query** 변수에 저장하여 데이터 주도형으로 만들어, 변수나 코드 조각 하나 이상을 편집할 필요 없이 여러 곳에서 수행할 수 있도록 하여 속도를 올릴 수 있습니다. 게임플레이 태그 쿼리는 세 가지 기본 테스트에 제한됩니다:
-**Any Tags Match** (아무 태그 일치)는 컨테이너에 쿼리의 태그 중 하나라도 있으면 성공합니다.
-**All Tags Match** (모든 태그 일치)는 컨테이너에 없는 태그가 쿼리에도 하나도 없는 경우 성공합니다 (쿼리에 태그가 존재하지 않는 경우도 포함합니다).
-**No Tags Match** (태그 일치 없음)은 컨테이너에 있는 태그가 쿼리에는 하나도 없는 경우 성공합니다 (쿼리에 태그가 존재하지 않는 경우도 포함합니다).
+
+* **Any Tags Match** (아무 태그 일치)는 컨테이너에 쿼리의 태그 중 하나라도 있으면 성공합니다.
+
+* **All Tags Match** (모든 태그 일치)는 컨테이너에 없는 태그가 쿼리에도 하나도 없는 경우 성공합니다 (쿼리에 태그가 존재하지 않는 경우도 포함합니다).
+
+* **No Tags Match** (태그 일치 없음)은 컨테이너에 있는 태그가 쿼리에는 하나도 없는 경우 성공합니다 (쿼리에 태그가 존재하지 않는 경우도 포함합니다).
+
하지만 이 테스트는 세 가지 커다란 표현식으로 합칠 수 있으며, 이들 각각에는 부가 표현식이나 테스트 배열이 포함됩니다:
-**Any Expressions Match** (아무 표현식 일치)는 하위 표현식 또는 테스트가 성공하면 성공합니다.
-**All Expressions Match** (모든 표현식 일치)는 하위 표현식 또는 테스트가 실패한 것이 없으면 성공합니다 (여기에는 쿼리에 하위 표현식이나 테스트가 존재하지 않는 경우도 포함됩니다).
-**No Expressions Match** (일치 표현식 없음)은 하위 표현식이나 테스트가 성공한 것이 없으면 성공합니다 (여기에는 쿼리에 하위 표현식 또는 테스트가 존재하지 않는 경우도 포함됩니다).
+
+* **Any Expressions Match** (아무 표현식 일치)는 하위 표현식 또는 테스트가 성공하면 성공합니다.
+
+* **All Expressions Match** (모든 표현식 일치)는 하위 표현식 또는 테스트가 실패한 것이 없으면 성공합니다 (여기에는 쿼리에 하위 표현식이나 테스트가 존재하지 않는 경우도 포함됩니다).
+
+* **No Expressions Match** (일치 표현식 없음)은 하위 표현식이나 테스트가 성공한 것이 없으면 성공합니다 (여기에는 쿼리에 하위 표현식 또는 테스트가 존재하지 않는 경우도 포함됩니다).
+
[REGION:note]참고로 세 가지 테스트 유형 모두 위 테이블 연산에 한해 "정확한" 일치입니다.[/REGION]
-
+이전의 테스트를 재활용하여 소스 컨테이너에 `TestTag.One` 나 `TestTag.Three` 중 (둘 다는 아닌) 하나만 있고 `TestTag.Two` 는 없도록 하는 것을, 하나의 Gameplay Tag Query 로 만들 수 있습니다. 이 테스트에는 블루프린트( 또는 C++) 변수만 독점적으로 사용할텐데, 리터럴 값 역시 지원하기는 합니다. 테스트 쿼리 변수는 이와 같습니다:
-위 샘플 쿼리에서 TestTag.One 이나 TestTag.Three 중 하나는 (둘 다는 안됨) 반드시 소스 컨테이너에 있어야 하며, TestTag.Two 는 없어야 합니다.
+
-### 게임에서 게임플레이 태그 사용
+이 쿼리 구성으로 우리 게임플레이 태그 컨테이너를 테스트 액터의 블루프린트에 있는 것에 대해 평가할 수 있는데, 다음과 같습니다:
+
+
+
+## 게임에서 게임플레이 태그 사용
게임의 오브젝트에 만든 태그를 적용하려면, 오브젝트에 Gameplay Tags (C++ 유형 `FGameplayTag`) 또는 Gameplay Tag Containers (C++ 유형 `FGameplayTagContainer`) 프로퍼티를 추가하면 됩니다. 또한 원하는 대로 오브젝트에 **Gameplay Tag Queries** (C++ 유형 `FGameplayTagQuery`) 추가도 가능하며, 블루프린트나 C++ 코드에서 직접 태그 연산을 사용할 수도 있습니다. 이 프로퍼티 추가가 완료되면, 다른 변수처럼 코드나 에디터에서 편집할 수 있습니다.
-### 게임플레이 태그 빠르게 접근하기 (C++ 필요)
+### C++ 에서 게임플레이 태그 빠른 접근
`IGameplayTagAssetInterface` 는 C++ 에서 구현할 수 있습니다. 그 후 `GetOwnedGameplayTags` 함수를 오버라이드하면, 블루프린트를 접근하는 방식으로 해당 오브젝트에 태그가 할당된 게임플레이 태그 컨테이너를 채우는 방법을 만들 수 있습니다. 대부분의 경우 베이스 클래스에서 새로운 컨테이너로 태그를 복사한다는 뜻일 뿐이지만, 클래스 구현은 다수의 컨테이너에서 태그를 수집하고, 블루프린트 함수를 호출하여 블루프린트 선언 태그를 접근하거나, 필요한 다른 오브젝트를 접근할 수도 있습니다. 이러한 인터페이스의 장접은 표준화된 방식으로 다양한 오브젝트 유형과 상호작용할 수 있다는 것으로, 오브젝트를 명시적으로 형변환한 뒤 올바른 태그 변수(들)을 구하기 위해 가능한 유형마다 커스텀 코드를 작성하지 않아도 오브젝트 태그를 구할 수 있다는 점입니다. 이는 커대한 프로젝트에서 특히나 유용한데, 재현하기 어려운 버그를 방지하고 코드를 깔끔하고 빠르고 관리하기 쉽도록 만드는 데 도움이 될 수 있기 때문입니다.
diff --git a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadZip/DownloadZip.INT.udn b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadZip/DownloadZip.INT.udn
index 98fb20bab57b..7704a798d427 100644
--- a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadZip/DownloadZip.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadZip/DownloadZip.INT.udn
@@ -1,10 +1,12 @@
-Availability:Public
+Availability:NoPublish
Title:Downloading Unreal as a Zip from GitHub
Crumbs:%ROOT%, GettingStarted, GettingStarted/DownloadingUnrealEngine
Description:Downloading the Unreal Engine source code as a Zip file.
Prereq: GettingStarted/DownloadingUnrealEngine
Related: Programming/Development/BuildingUnrealEngine
-Version: 4.8
+Parent:GettingStarted
+Order:
+Version: 4.16
SkillLevel: Advanced
If you prefer to download our source code as a Zip file from GitHub, this page is for you.
@@ -40,7 +42,7 @@ If you prefer to download our source code as a Zip file from GitHub, this page i
1. Decompress 'UnrealEngine-(branch_name).zip' onto your hard disk.
1. If you already haven't done so, install Visual Studio 2013. Although MFC libraries are included in Visual Studio's default installation settings, make sure that MFC libraries are included for ATL support.
[REGION:note]
- Developers build UE4 with all desktop editions of Visual Studio, including Microsoft's free version ([Visual Studio Community 2013](https://www.visualstudio.com/products/visual-studio-community-vs)).
+ Developers build UE4 with all desktop editions of Visual Studio, including the latest version of [Microsoft's Visual Studio](https://www.visualstudio.com/).
[/REGION]
1. Open your source folder in Explorer and run **Setup.bat**.
[REGION:note]
diff --git a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadZip/DownloadZip.KOR.udn b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadZip/DownloadZip.KOR.udn
index affbe3853754..1e3ac3454092 100644
--- a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadZip/DownloadZip.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadZip/DownloadZip.KOR.udn
@@ -1,11 +1,13 @@
-INTSourceChangelist:3108692
-Availability:Public
+INTSourceChangelist:3452211
+Availability:NoPublish
Title:Zip 파일로 언리얼 엔진 다운로드
Crumbs:%ROOT%, GettingStarted, GettingStarted/DownloadingUnrealEngine
Description:언리얼 엔진 소스 코드를 Zip 파일로 다운로드합니다.
Prereq: GettingStarted/DownloadingUnrealEngine
Related: Programming/Development/BuildingUnrealEngine
-Version: 4.8
+Parent:GettingStarted
+Order:
+Version: 4.16
SkillLevel: Advanced
소스 코드를 GitHub 에서 ZIP 파일로 다운로드하는 방법이 편하신 분들을 위한 글입니다.
@@ -41,7 +43,7 @@ SkillLevel: Advanced
1. 'UnrealEngine-(branch_name).zip' 파일 압축을 하드 디스크에 풉니다.
1. Visual Studio 2013 이 설치되어 있지 않은 경우, 설치합니다. MFC 라이브러리가 Visual Studio 기본 설치 세팅에 포함되어 있기는 하지만, ATL 지원을 위해 MFC 라이브러리가 포함되어 있는지 다시 한 번 확인합니다.
[REGION:note]
- UE4 빌드는 Visual Studio 모든 데스크톱 에디션으로 가능한데, 무료 버전도 포함됩니다 ([Visual Studio Community 2013](https://www.visualstudio.com/products/visual-studio-community-vs)).
+ UE4 빌드는 Visual Studio 모든 데스크톱 버전으로 가능합니다: [Microsoft's Visual Studio](https://www.visualstudio.com/).
[/REGION]
1. 탐색기에서 소스 폴더를 열고 **run Setup.bat** 를 실행합니다.
[REGION:note]
diff --git a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadingUnrealEngine4.INT.udn b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadingUnrealEngine4.INT.udn
index 603cad90527f..80989abe4435 100644
--- a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadingUnrealEngine4.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadingUnrealEngine4.INT.udn
@@ -3,10 +3,12 @@ Title:Downloading Unreal Engine Source Code
Crumbs: %ROOT%, GettingStarted, GettingStarted/DownloadingUnrealEngine
Description:Steps for connecting to the source code repository and downloading the latest build of Unreal Engine.
Prereq: GettingStarted/RecommendedSpecifications
-Related: GettingStarted/DownloadingUnrealEngine/GitHub
-Related: GettingStarted/DownloadingUnrealEngine/DownloadZip
-Version: 4.9
+Version: 4.16
+Parent:GettingStarted
+Order:
+Type:Landing
SkillLevel: Advanced
+Related:Programming/Development/BuildingUnrealEngine
[TOC (start:2 end:3)]
@@ -18,10 +20,6 @@ Unreal Engine 4 is available to be downloaded by licensees from Epic's Perforce
Source code for Unreal Engine 4 (UE4) can be downloaded by our subscribers from the Unreal Engine GitHub repository. Before you can access the [repository](https://github.com/EpicGames/UnrealEngine), you must be an Unreal Engine subscriber with a GitHub account. For instructions on associating your GitHub account with your Unreal Engine account, visit the [UE4 on GitHub](https://www.unrealengine.com/ue4-on-github) page.
-
-
[INCLUDE:GettingStarted/DownloadingUnrealEngine/SourceBranches]
[/PUBLISH:Rocket]
@@ -32,17 +30,88 @@ With access to our source code, subscribers can customize the engine and tools t
[PUBLISH:Rocket]
-## Next Steps
+## Downloading the Source Code
-Subscribers can download Unreal Engine's source code in one of two ways:
+Please follow these instructions to download the Unreal Engine source code.
-* [%GettingStarted/DownloadingUnrealEngine/GitHub:title%](GettingStarted/DownloadingUnrealEngine/GitHub)
-* [%GettingStarted/DownloadingUnrealEngine/DownloadZip:title%](GettingStarted/DownloadingUnrealEngine/DownloadZip)
+%Globals:osselect_linux%
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ active_button_content
+ [/PARAMLITERAL]
+ [PARAM:content]
+
+ [INCLUDE:GettingStarted/WindowsInstructions]
+
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ active_button_content
+ [/PARAMLITERAL]
+ [PARAM:content]
+
+ [INCLUDE:GettingStarted/MacInstructions]
+
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ linux
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ active_button_content
+ [/PARAMLITERAL]
+ [PARAM:content]
+
+ [REGION:warning]
+ Our developers and support teams currently use the latest version of Ubuntu; as a result, we may not be able to provide support for other Linux distributions (including other versions of Ubuntu).
+ [/REGION]
+
+ [INCLUDE:GettingStarted/LinuxInstructions]
+
+ [/PARAM]
+[/OBJECT]
[REGION:note]
This page shows subscribers how to download and build Unreal Engine from our source code repository on GitHub. If you'd like to download the binary version of Unreal Engine, read our [](GettingStarted/Installation) documentation to learn how to [Get Unreal](https://www.unrealengine.com/).
[/REGION]
+## Licensing and Contribution
+
+Your access to and use of Unreal Engine on GitHub is governed by the [Unreal Engine End User License Agreement](https://www.unrealengine.com/eula). If you don't agree to those terms, as amended from time to time, you are not permitted to access or use Unreal Engine.
+
+We welcome any contributions to Unreal Engine development through [pull requests](https://github.com/EpicGames/UnrealEngine/pulls/) on GitHub. Most of our active development is in the **master** branch, so we prefer to take pull requests there (particularly for new features). We try to make sure that all new code adheres to the [Epic coding standards](https://docs.unrealengine.com/latest/INT/Programming/Development/CodingStandard/). All contributions are governed by the terms of the EULA.
+
+## Next Steps
+
+Now that you've downloaded and set-up Unreal Engine, you're ready to [build the engine from source](Programming/Development/BuildingUnrealEngine).
+
+#### Footnotes
+The first time you start the editor from a fresh source build, you may experience long load times.
+The engine is optimizing content for your platform to the _derived data cache_, and it should only happen once.
+
+Your private forks of the Unreal Engine code are associated with your GitHub account permissions.
+If you unsubscribe or switch GitHub user names, you'll need to re-fork and upload your changes from a local copy.
+
[/PUBLISH:Rocket]
[/EXCERPT:Main]
diff --git a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadingUnrealEngine4.KOR.udn b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadingUnrealEngine4.KOR.udn
index be80e8d31d34..a885974b3b3e 100644
--- a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadingUnrealEngine4.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/DownloadingUnrealEngine4.KOR.udn
@@ -1,13 +1,15 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3426963
Availability:Public
Title:언리얼 엔진 소스 코드 내려받기
Crumbs: %ROOT%, GettingStarted, GettingStarted/DownloadingUnrealEngine
Description:소스 코드 저장소에 접속하여 언리얼 엔진 최신 빌드를 다운로드하는 법에 대한 단계별 안내입니다.
Prereq: GettingStarted/RecommendedSpecifications
-Related: GettingStarted/DownloadingUnrealEngine/GitHub
-Related: GettingStarted/DownloadingUnrealEngine/DownloadZip
-Version: 4.9
+Version: 4.16
+Parent:GettingStarted
+Order:
+Type:Landing
SkillLevel: Advanced
+Related:Programming/Development/BuildingUnrealEngine
[TOC (start:2 end:3)]
@@ -19,10 +21,6 @@ SkillLevel: Advanced
언리얼 엔진 4 (UE4) 소스 코드는 멤버쉽 회원의 경우 Unreal Engine GitHub repository(저장소)에서 다운로드 가능합니다. [repository](https://github.com/EpicGames/UnrealEngine) (저장소) 접근을 위해서는 GitHub 계정을 가지고 언리얼 엔진 계정에 연동시켜야 합니다. 언리얼 엔진 계정에 GitHub 계정을 연동시키는 법에 대한 안내는, [GitHub 의 언리얼 엔진 4](https://www.unrealengine.com/ue4-on-github) 페이지를 참고하세요.
-
-
[INCLUDE:GettingStarted/DownloadingUnrealEngine/SourceBranches]
[/PUBLISH:Rocket]
@@ -33,17 +31,88 @@ SkillLevel: Advanced
[PUBLISH:Rocket]
-## 다음 단계
+## 소스 코드 다운로드
-멤버쉽 회원분들이 언리얼 엔진 소스 코드를 다운로드할 수 있는 방법은 다음과 같습니다:
+다음 안내에 따라 언리얼 엔진 소스 코드를 다운로드해 주세요.
-* [](GettingStarted/DownloadingUnrealEngine/GitHub)
-* [](GettingStarted/DownloadingUnrealEngine/DownloadZip)
+%Globals:osselect_linux%
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ active_button_content
+ [/PARAMLITERAL]
+ [PARAM:content]
+
+ [INCLUDE:GettingStarted/WindowsInstructions]
+
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ active_button_content
+ [/PARAMLITERAL]
+ [PARAM:content]
+
+ [INCLUDE:GettingStarted/MacInstructions]
+
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ linux
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ active_button_content
+ [/PARAMLITERAL]
+ [PARAM:content]
+
+ [REGION:warning]
+ 저희 개발 및 서포트 팀은 현재 Ubuntu 최신 버전을 사용하고 있습니다. 다른 (Ubuntu 버전을 포함해서) 리눅스 배포 버전은 지원하지 못할 수 있습니다.
+ [/REGION]
+
+ [INCLUDE:GettingStarted/LinuxInstructions]
+
+ [/PARAM]
+[/OBJECT]
[REGION:note]
이 글은 GitHub 의 소스 코드 저장소에서 언리얼 엔진을 다운로드하여 빌드하는 법을 보여드립니다. 언리얼 엔진 바이너리 버전을 다운로드하려면, [](GettingStarted/Installation) 문서를 통해 [언리얼을 시작](https://www.unrealengine.com/) 하는 법을 배워보세요.
[/REGION]
+## 라이선싱 및 기여
+
+GitHub 의 언리얼 엔진 접근 및 사용 권한은 [언리얼 엔진 최종 사용자 라이선스 계약](https://www.unrealengine.com/eula) 에 따릅니다. 때때로 개정되는 내용을 포함해서 그 조항에 동의하지 않는 경우, 언리얼 엔진 접근 및 사용이 불가능합니다.
+
+GitHub 의 [pull requests](https://github.com/EpicGames/UnrealEngine/pulls/) 를 통한 언리얼 엔진 개발 기여는 언제든 환영합니다! 현재 대부분의 개발은 **master** 브랜치에서 일어나고 있기에 거기서 (특히나 신기능에 대한) pull request 를 받습니다. 모든 신규 코드는 [에픽 코딩 표준](Programming/Development/CodingStandard) 을 준수하도록 하고 있습니다. 모든 기여 부분은 EULA 조항을 따릅니다.
+
+## 다음 단계
+
+언리얼 엔진 다운로드 및 셋업을 마쳤으면, [소스에서 엔진을 빌드](Programming/Development/BuildingUnrealEngine) 할 차례입니다.
+
+#### 사족
+새로 받은 소스 빌드에서 에디터를 처음 실행시키면, 로드 시간이 길 수 있습니다.
+엔진에서 _파생 데이터 캐시(DDC)_ 에 플랫폼에 맞는 콘텐츠 최적화를 하기 때문인데, 일회성 작업일 것입니다.
+
+언리얼 엔진 코드 private fork 는 귀하의 GitHub 계정 권한에 연동되어 있습니다.
+GitHub 사용자명을 해제하거나 바꾸면, fork 를 다시 한 뒤 로컬 사본에서 변경사항을 업로드해 줘야 할 것입니다.
+
[/PUBLISH:Rocket]
[/EXCERPT:Main]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/GitHub/GitHub.INT.udn b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/GitHub/GitHub.INT.udn
index 5baaa469a80f..2d8a530ead07 100644
--- a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/GitHub/GitHub.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/GitHub/GitHub.INT.udn
@@ -1,10 +1,12 @@
-Availability:Public
+Availability:NoPublish
Title:Forking and Cloning Unreal from GitHub
Crumbs:%ROOT%, GettingStarted, GettingStarted/DownloadingUnrealEngine
Description:Forking and cloning the Unreal Engine source code from GitHub.
Prereq: GettingStarted/DownloadingUnrealEngine
Related: Programming/Development/BuildingUnrealEngine
-Version: 4.8
+Parent:GettingStarted
+Order:
+Version: 4.16
SkillLevel: Advanced
Forking and cloning our source code from GitHub is a great way to get started with Unreal.
diff --git a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/GitHub/GitHub.KOR.udn b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/GitHub/GitHub.KOR.udn
index da4f490e1416..74bca1fcc2e9 100644
--- a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/GitHub/GitHub.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/GitHub/GitHub.KOR.udn
@@ -1,11 +1,13 @@
-INTSourceChangelist:3147055
-Availability:Public
+INTSourceChangelist:3426963
+Availability:NoPublish
Title:GitHub 에서 언리얼 엔진 Fork 및 Clone
Crumbs:%ROOT%, GettingStarted, GettingStarted/DownloadingUnrealEngine
Description:GitHub 에서 언리얼 엔진 소스 코드를 Fork 및 복제하는 방법입니다.
Prereq: GettingStarted/DownloadingUnrealEngine
Related: Programming/Development/BuildingUnrealEngine
-Version: 4.8
+Parent:GettingStarted
+Order:
+Version: 4.16
SkillLevel: Advanced
GitHub 에서 소스 코드를 Fork 및 Clone 하는 것으로 언리얼 작업을 시작합니다.
diff --git a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/SourceBranches/SourceBranches.INT.udn b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/SourceBranches/SourceBranches.INT.udn
index 0e18749f9a89..226f0ee0966c 100644
--- a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/SourceBranches/SourceBranches.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/SourceBranches/SourceBranches.INT.udn
@@ -7,7 +7,10 @@ Related: GettingStarted/DownloadingUnrealEngine
Related: Programming/Development/BuildingUnrealEngine
Related: Programming/Development/CompilingProjects
Related: Support/Builds
-Version: 4.8
+Version: 4.16
+type:reference
+Parent:GettingStarted/DownloadingUnrealEngine
+Order:
## Source Code Branches
diff --git a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/SourceBranches/SourceBranches.KOR.udn b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/SourceBranches/SourceBranches.KOR.udn
index a17a43887d6f..d2a2f9b06202 100644
--- a/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/SourceBranches/SourceBranches.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/DownloadingUnrealEngine/SourceBranches/SourceBranches.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3426963
Availability: NoPublish
Title: 소스 브랜치 참고서
Crumbs: %ROOT%, GettingStarted, GettingStarted/DownloadingUnrealEngine
@@ -8,7 +8,10 @@ Related: GettingStarted/DownloadingUnrealEngine
Related: Programming/Development/BuildingUnrealEngine
Related: Programming/Development/CompilingProjects
Related: Support/Builds
-Version: 4.8
+Version: 4.16
+type:reference
+Parent:GettingStarted/DownloadingUnrealEngine
+Order:
## 소스 코드 브랜치
diff --git a/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.CHN.udn b/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.CHN.udn
index a2b575fcda62..47a65aef3bb3 100644
--- a/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.CHN.udn
+++ b/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.CHN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2717841
+INTSourceChangelist:3317931
Availability: Public
Title: 为 Unity 开发者准备的虚幻引擎 4
Crumbs: %ROOT%, GettingStarted
@@ -799,7 +799,7 @@ _点击查看大图。_
### 物理:刚体 vs. 元组件
-在 Unity 中药给一个 GameObject 物理特性,需要给它一个刚体组件。在虚幻中,任何元组件(C++ 中为 UPrimitiveComponent)都可以是物理对象。一些通用的元组件,比如 ShapeComponent(胶囊形,球形,盒形),StaticMeshComponent,以及 SkeletalMeshComponent。
+在 Unity 中,要给一个 GameObject 物理特性,需要给它一个刚体组件。在虚幻中,任何元组件(C++ 中为 UPrimitiveComponent)都可以是物理对象。一些通用的元组件,比如 ShapeComponent(胶囊形,球形,盒形),StaticMeshComponent,以及 SkeletalMeshComponent。
和 Unity 不同,Unity 将碰撞体和可视物体分列到不同的组件中。而虚幻则将潜在的物理碰撞和潜在的可视效果组合到了 PrimitiveComponent 中。任何在世界中具有形状的物体,要么就是能够被渲染显示,要么就是能作物理交互,它们都继承于 PrimitiveComponent。
@@ -905,28 +905,9 @@ Unity C#:
Trigger.SetCollisionEnabled(ECollisionEnabled::QueryOnly);
}
- void BeginPlay()
- {
- // Register to find out when an overlap occurs
- OnActorBeginOverlap.AddDynamic(this, &AMyActor::OnTriggerEnter);
- OnActorEndOverlap.AddDynamic(this, &AMyActor::OnTriggerExit);
+ virtual void NotifyActorBeginOverlap(AActor* Other) override;
- Super::BeginPlay();
- }
-
- void EndPlay(const EEndPlayReason::Type EndPlayReason)
- {
- OnActorBeginOverlap.RemoveDynamic(this, &AMyActor::OnTriggerEnter);
- OnActorEndOverlap.RemoveDynamic(this, &AMyActor::OnTriggerExit);
-
- Super:EndPlay(EndPlayReason);
- }
-
- UFUNCTION()
- void OnTriggerEnter(AActor* Other);
-
- UFUNCTION()
- void OnTriggerExit(AActor* Other);
+ virtual void NotifyActorEndOverlap(AActor* Other) override;
};
虚幻 4 蓝图:
diff --git a/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.INT.udn b/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.INT.udn
index f45a59229cfc..f6b077fe636b 100644
--- a/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.INT.udn
@@ -15,13 +15,66 @@ This guide provides an overview of UE4 from the viewpoint of a Unity user, and a
Below are pictures of the Unity Editor and Unreal Editor, color-coded to indicate common functionality. Each block is labeled to show the equivalent UE4 terminology. Unreal Editor's layout is fully customizable by dragging and dropping tabs around.
-
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
### Editing Assets
In Unity, the Inspector tab is used to edit selected assets in your Project. In UE4, the **Details** panel exposes properties of selected objects, while larger editing tasks lead to a dedicated window or tab. New tabbed windows will open for each edited asset, similar to a web browser. Of course, you can freely drag the tabs around or float them as standalone windows.
-
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
## Quick Glossary
@@ -63,7 +116,33 @@ Just like Unity projects, Unreal projects always exist in their own directory an
In UE4, each project has a **Content **folder. Similar to a Unity project's Assets folder, this is where your game assets are stored. To import assets into your game, simply drop files into your project's Content directory and they will be automatically imported and appear in the **Content Browser**. The assets in the editor will update automatically as you make changes to the files using an external program.
-
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
### What common file formats are supported?
diff --git a/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.KOR.udn b/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.KOR.udn
index 0fb8791226f0..9908ca068292 100644
--- a/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/FromUnity/UnrealEngineforUnityDevelopers.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3317931
+INTSourceChangelist:3481084
Availability: Public
Title:유니티 개발자를 위한 언리얼 엔진 4
Crumbs: %ROOT%, GettingStarted
@@ -16,13 +16,66 @@ version: 4.9
아래 그림은 유니티 에디터와 언리얼 에디터를 나란 놓은 것으로, 색을 통해 기능이 같은 부분을 확인할 수 있습니다. 각 블록에는 이름표를 붙여 그에 맞는 UE4 용어를 표시해 뒀습니다. 언리얼 에디터의 레이아웃은 드래그 앤 드롭을 통해 탭을 이리저리 끌어 붙여 입맛대로 조정하는 것이 가능합니다.
-
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
### 애셋 편집
유니티에서는 Inspector 탭을 사용하여 프로젝트에 선택된 애셋을 편집합니다. UE4 에서는 **디테일** 패널에 선택된 오브젝트의 프로퍼티가 노출되기는 하지만, 규모가 큰 편집 작업은 **전용 창이나 탭** 에서 이루어집니다. **웹 브라우저와 비슷하게** 편집되는 애셋 각각에 대해 새로운 탭 창이 열립니다. 물론 각 탭은 자유롭게 끌어붙이거나 독립 창으로 띄울 수도 있습니다.
-
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
## 간략 용어집
@@ -64,7 +117,33 @@ version: 4.9
UE4 에는 각 프로젝트마다 **Content** 폴더가 있습니다. 유니티 프로젝트의 Assets 폴더와 비슷하게 이 폴더에 게임 애셋이 저장됩니다. 애셋을 게임에 임포트하려면, 단순히 파일을 프로젝트의 Content 디렉토리에 끌어놓기만 하면 자동으로 임포트되어 **콘텐츠 브라우저** 에 나타납니다. 애셋도 외부 프로그램으로 파일을 변경할 때마다 자동으로 에디터에 업데이트됩니다.
-
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+[/OBJECT]
### 주로 지원되는 파일 포맷은?
diff --git a/Engine/Documentation/Source/GettingStarted/GettingStarted.INT.udn b/Engine/Documentation/Source/GettingStarted/GettingStarted.INT.udn
index f25bc1d6cf25..e81eaa298d24 100644
--- a/Engine/Documentation/Source/GettingStarted/GettingStarted.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/GettingStarted.INT.udn
@@ -99,221 +99,125 @@ gettingstarted
[/PARAM]
[/OBJECT]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Editor Basics
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Shared/Glossary/P/#Glossary_project]
+## Editor Basics
- [INCLUDE:Engine/UI/LevelEditor#levels]
- [/PARAM]
- [PARAM:links]
- * [](Engine/QuickStart "%Engine/QuickStart:description%")
- * [Level Editor Walkthrough](Engine/UI/LevelEditor "%Engine/UI/LevelEditor:description%")
- * [](Engine/UI/LevelEditor/Toolbar "%Engine/UI/LevelEditor/Toolbar:description%")
+[INCLUDE:Shared/Glossary/P/#Glossary_project]
- [REGION:gallery]
- [REGION:normaltitle]
- Related Videos
- [/REGION]
- [VideoLink(videoid:"w4XlBKeE46E" playlistid:"PLZlv_N0_O1gasd4IcOe9Cx9wHoBB7rxFl" width:"180")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
+[INCLUDE:Engine/UI/LevelEditor#levels]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Editor Viewports
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Engine/UI/LevelEditor/Viewports#intro]
- [/PARAM]
- [PARAM:links]
- * [](Engine/UI/LevelEditor/Viewports/Basics "%Engine/UI/LevelEditor/Viewports/Basics:description%")
- * [](Engine/UI/LevelEditor/Viewports/ViewportControls "%Engine/UI/LevelEditor/Viewports/ViewportControls:description%")
- [/PARAM]
-[/OBJECT]
+%Engine/QuickStart:topic%
+%Engine/UI/LevelEditor:topic%
+%Engine/UI/LevelEditor/Toolbar:topic%
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Editor Modes
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Shared/Glossary/M#glossary_modes_panel]
- [/PARAM]
- [PARAM:links]
- * [](Engine/UI/LevelEditor/Modes "%Engine/UI/LevelEditor/Modes:description%")
- [/PARAM]
-[/OBJECT]
+[REGION:section]
+[REGION:normaltitle]
+Related Videos
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gasd4IcOe9Cx9wHoBB7rxFl" type:"playlist" output:"playlist")]
+[/REGION]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Actors & Geometry
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Engine/UI/LevelEditor#actors]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Actors/Placement "%Engine/Actors/Placement:description%")
- * [Geometry Actors](Engine/Actors/Brushes "%Engine/Actors/Brushes:description%")
- * [](Engine/Actors/Transform "%Engine/Actors/Transform:description%")
-
- [REGION:gallery]
- [REGION:normaltitle]
- Related Videos
- [/REGION]
- [VideoLink(videoid:"cl_eoVfNDKU" playlistid:"PLZlv_N0_O1gak1_FoAJVrEGiLIploeF3F" width:"180")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Content Browser
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Shared/Glossary/C/#Glossary_Content_Browser]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Content/QuickStart "%Engine/Content/QuickStart:description%")
- * [](Engine/Basics/AssetsAndPackages "%Engine/Basics/AssetsAndPackages:description%")
- * [](Engine/Content/Browser "%Engine/Content/Browser:description%")
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Lighting
- [/PARAM]
- [PARAM:description]
- Lighting your scenes is accomplished using Light Actors that act as light sources and contain properties to determine the characteristics of the light, such as:
-
- * How bright the light is
- * What color the light is
-
- There are also different kinds of lights that emit light in different ways. For example, a standard light bulb emits light in all directions. In Unreal Engine,
- this is called a _point light_. In other circumstances, the light emitted is physically limited by making the back of the bulb opaque, such as with a flood light.
- This would be a _spot light_. Outdoor lighting from the sun - because it is located so far away - appears to come more from a direction instead of from a single
- location. To simulate this type of lighting, a _directional light_ is available.
- [/PARAM]
- [PARAM:links]
- * [](Engine/Rendering/LightingAndShadows/QuickStart "%Engine/Rendering/LightingAndShadows/QuickStart:description%")
- * [](Engine/Rendering/LightingAndShadows/Basics "%Engine/Rendering/LightingAndShadows/Basics:description%")
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Materials & Shading
- [/PARAM]
- [PARAM:description]
-
- [INCLUDE:Shared/Glossary/M/#Glossary_Material]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Rendering/Materials/IntroductionToMaterials "%Engine/Rendering/Materials/IntroductionToMaterials:description%")
-
- [REGION:gallery]
- [REGION:normaltitle]
- Related Videos
- [/REGION]
- [VideoLink(videoid:"lngF4VVNER4" playlistid:"PLZlv_N0_O1gbQjgY0nDwZNYe_N8IcYWS-" width:"180" image:"https://img.youtube.com/vi/lngF4VVNER4/hqdefault.jpg")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
-
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Blueprints Visual Scripting
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Engine/Blueprints#intro]
- [/PARAM]
- [PARAM:links]
- * [Introduction to Blueprints](Engine/Blueprints/GettingStarted "%Engine/Blueprints/GettingStarted:description%")
-
- [REGION:gallery]
- [REGION:normaltitle]
- Related Videos
- [/REGION]
- [VideoLink(videoid:"EFXMW_UEDco" playlistid:"PLZlv_N0_O1gY35ezlSQn1sWOGfh4C7ewO" width:"180")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Programming
- [/PARAM]
- [PARAM:description]
- Implementing gameplay and modifying the engine are essential aspects of any game project. Unreal Engine
- gives you the ability to implement gameplay through code or visually using Blueprints or even create a
- plugin that modifies or extends the engine and editor to add completely custom functionality for designers
- or artists to use.
- [/PARAM]
- [PARAM:links]
- * [](Programming "%Programming:description%")
- * [](Programming/Development/VisualStudioSetup "%Programming/Development/VisualStudioSetup:description%")
- * [](Programming/QuickStart "%Programming/QuickStart:description%")
- * [](Programming/Basics "%Programming/Basics:description%")
- * [Learn About the Game Framework](Gameplay/Framework/QuickReference "%Gameplay/Framework/QuickReference:description%")
+## Editor Viewports
- [REGION:gallery]
- [REGION:normaltitle]
- Related Videos
- [/REGION]
- [VideoLink(videoid:"mSRov77hNR4" playlistid:"PLZlv_N0_O1gYup-gvJtMsgJqnEB_dGiM4" width:"180")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
+[INCLUDE:Engine/UI/LevelEditor/Viewports#intro]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Playtest Your Game
- [/PARAM]
- [PARAM:description]
- Test and debug your levels and gameplay using Unreal Engine's built-in features. Get real-time feedback
- directly in the editor using Play In Editor mode, and even inspect and manipulate the objects in the
- game while it is running using Simulate In Editor mode. Make changes to gameplay code, recompile, and
- update the game during play using Hot Reload.
- [/PARAM]
- [PARAM:links]
- * [](Engine/UI/LevelEditor/InEditorTesting "%Engine/UI/LevelEditor/InEditorTesting:description%")
- * **Platforms**
- * [](Platforms/iOS/QuickStart "%Platforms/iOS/QuickStart:description%")
- * [](Platforms/Android/GettingStarted "%Platforms/Android/GettingStarted:description%")
- * [](Platforms/Oculus/QuickStart "%Platforms/Oculus/QuickStart:description%")
- [/PARAM]
-[/OBJECT]
+%Engine/UI/LevelEditor/Viewports/Basics:topic%
+%Engine/UI/LevelEditor/Viewports/ViewportControls:topic%
+
+## Editor Modes
+
+[INCLUDE:Shared/Glossary/M#glossary_modes_panel]
+
+%Engine/UI/LevelEditor/Modes:topic%
+
+## Actors & Geometry
+
+[INCLUDE:Engine/UI/LevelEditor#actors]
+
+%Engine/Actors/Placement:topic%
+%Engine/Actors/Brushes:topic%
+%Engine/Actors/Transform:topic%
+
+[REGION:section]
+[REGION:normaltitle]
+Related Videos
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gak1_FoAJVrEGiLIploeF3F" type:"playlist" output:"playlist")]
+[/REGION]
+
+## Content Browser
+
+[INCLUDE:Shared/Glossary/C/#Glossary_Content_Browser]
+
+%Engine/Content/QuickStart:topic%
+%Engine/Basics/AssetsAndPackages:topic%
+%Engine/Content/Browser:topic%
+
+## Lighting
+
+Lighting your scenes is accomplished using Light Actors that act as light sources and contain properties to determine the characteristics of the light, such as:
+
+* How bright the light is
+* What color the light is
+
+There are also different kinds of lights that emit light in different ways. For example, a standard light bulb emits light in all directions. In Unreal Engine,
+this is called a _point light_. In other circumstances, the light emitted is physically limited by making the back of the bulb opaque, such as with a flood light.
+This would be a _spot light_. Outdoor lighting from the sun - because it is located so far away - appears to come more from a direction instead of from a single
+location. To simulate this type of lighting, a _directional light_ is available.
+
+%Engine/Rendering/LightingAndShadows/QuickStart:description%
+%Engine/Rendering/LightingAndShadows/Basics:description%
+
+## Materials & Shading
+
+[INCLUDE:Shared/Glossary/M/#Glossary_Material]
+
+%Engine/Rendering/Materials/IntroductionToMaterials:topic%
+
+[REGION:section]
+[REGION:normaltitle]
+Related Videos
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gbQjgY0nDwZNYe_N8IcYWS-" type:"playlist" output:"playlist")]
+[/REGION]
+
+## Blueprints Visual Scripting
+
+[INCLUDE:Engine/Blueprints#intro]
+
+%Engine/Blueprints/GettingStarted:topic%
+
+[REGION:gallery]
+[REGION:normaltitle]
+Related Videos
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gY35ezlSQn1sWOGfh4C7ewO" type:"playlist" output:"playlist")]
+[/REGION]
+
+## Programming
+
+Implementing gameplay and modifying the engine are essential aspects of any game project. Unreal Engine
+gives you the ability to implement gameplay through code or visually using Blueprints or even create a
+plugin that modifies or extends the engine and editor to add completely custom functionality for designers
+or artists to use.
+
+%Programming:topic%
+%Programming/Development/VisualStudioSetup:topic%
+%Programming/QuickStart:topic%
+%Programming/Basics:topic%
+%Gameplay/Framework/QuickReference:topic%
+
+[REGION:gallery]
+[REGION:normaltitle]
+Related Videos
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gYup-gvJtMsgJqnEB_dGiM4" type:"playlist" output:"playlist")]
+[/REGION]
+
+## Playtest Your Game
+
+Test and debug your levels and gameplay using Unreal Engine's built-in features. Get real-time feedback
+directly in the editor using Play In Editor mode, and even inspect and manipulate the objects in the
+game while it is running using Simulate In Editor mode. Make changes to gameplay code, recompile, and
+update the game during play using Hot Reload.
+
+%Engine/UI/LevelEditor/InEditorTesting:topic%
diff --git a/Engine/Documentation/Source/GettingStarted/GettingStarted.KOR.udn b/Engine/Documentation/Source/GettingStarted/GettingStarted.KOR.udn
index dba2fff8971b..ecd435b5faf7 100644
--- a/Engine/Documentation/Source/GettingStarted/GettingStarted.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/GettingStarted.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3351664
+INTSourceChangelist:3429256
Availability:Public
Title: UE4 시작하기
Crumbs: %ROOT%
@@ -100,221 +100,125 @@ gettingstarted
[/PARAM]
[/OBJECT]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 에디터 기본
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Shared/Glossary/P/#Glossary_project]
+## 에디터 기본
- [INCLUDE:Engine/UI/LevelEditor#levels]
- [/PARAM]
- [PARAM:links]
- * [](Engine/QuickStart "%Engine/QuickStart:description%")
- * [레벨 에디터 길잡이](Engine/UI/LevelEditor "%Engine/UI/LevelEditor:description%")
- * [](Engine/UI/LevelEditor/Toolbar "%Engine/UI/LevelEditor/Toolbar:description%")
+[INCLUDE:Shared/Glossary/P/#Glossary_project]
- [REGION:gallery]
- [REGION:normaltitle]
- 관련 비디오
- [/REGION]
- [VideoLink(videoid:"w4XlBKeE46E" playlistid:"PLZlv_N0_O1gasd4IcOe9Cx9wHoBB7rxFl" width:"180")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
+[INCLUDE:Engine/UI/LevelEditor#levels]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 에디터 뷰포트
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Engine/UI/LevelEditor/Viewports#intro]
- [/PARAM]
- [PARAM:links]
- * [](Engine/UI/LevelEditor/Viewports/Basics "%Engine/UI/LevelEditor/Viewports/Basics:description%")
- * [](Engine/UI/LevelEditor/Viewports/ViewportControls "%Engine/UI/LevelEditor/Viewports/ViewportControls:description%")
- [/PARAM]
-[/OBJECT]
+%Engine/QuickStart:topic%
+%Engine/UI/LevelEditor:topic%
+%Engine/UI/LevelEditor/Toolbar:topic%
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 에디터 모드
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Shared/Glossary/M#glossary_modes_panel]
- [/PARAM]
- [PARAM:links]
- * [](Engine/UI/LevelEditor/Modes "%Engine/UI/LevelEditor/Modes:description%")
- [/PARAM]
-[/OBJECT]
+[REGION:section]
+[REGION:normaltitle]
+관련 비디오
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gasd4IcOe9Cx9wHoBB7rxFl" type:"playlist" output:"playlist")]
+[/REGION]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 액터 & 지오메트리
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Engine/UI/LevelEditor#actors]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Actors/Placement "%Engine/Actors/Placement:description%")
- * [지오메트리 액터](Engine/Actors/Brushes "%Engine/Actors/Brushes:description%")
- * [](Engine/Actors/Transform "%Engine/Actors/Transform:description%")
-
- [REGION:gallery]
- [REGION:normaltitle]
- 관련 비디오
- [/REGION]
- [VideoLink(videoid:"cl_eoVfNDKU" playlistid:"PLZlv_N0_O1gak1_FoAJVrEGiLIploeF3F" width:"180")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 콘텐츠 브라우저
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Shared/Glossary/C/#Glossary_Content_Browser]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Content/QuickStart "%Engine/Content/QuickStart:description%")
- * [](Engine/Basics/AssetsAndPackages "%Engine/Basics/AssetsAndPackages:description%")
- * [](Engine/Content/Browser "%Engine/Content/Browser:description%")
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 라이팅
- [/PARAM]
- [PARAM:description]
- 씬의 라이팅은 광원 역할을 하면서 다음과 같은 빛의 특성을 결정하는 프로퍼티가 들어있는 라이트 액터를 통해 이루어집니다.
-
- * 라이트가 얼마나 밝은가
- * 라이트의 색은 어떠한가
-
- 여러가지 방식으로 빛을 내뿜는 라이트 종류도 여러가지 있습니다. 예를 들어 일반적인 전구는 모든 방향으로 빛을 내뿜습니다. 언리얼 엔진에서,
- 이러한 것은 _포인트 라이트_ 라고 합니다. 한편 투광 조명등처럼 전구 뒷부분을 불투명하게 만들어 빛의 방출을 물리적으로 제한시키는 경우도 있습니다.
- 그런 것은 _스포트 라이트_ 라고 합니다. 태양에서 오는 야외의 빛은, 태양이 정말 먼 거리에 있기 때문에, 한 지점이 아닌 한 방향에서 오는 것처럼 보입니다.
- 이러한 라이팅 유형의 시뮬레이션으로, _디렉셔널 라이트_ 가 있습니다.
- [/PARAM]
- [PARAM:links]
- * [](Engine/Rendering/LightingAndShadows/QuickStart "%Engine/Rendering/LightingAndShadows/QuickStart:description%")
- * [](Engine/Rendering/LightingAndShadows/Basics "%Engine/Rendering/LightingAndShadows/Basics:description%")
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 머티리얼 & 셰이딩
- [/PARAM]
- [PARAM:description]
-
- [INCLUDE:Shared/Glossary/M/#Glossary_Material]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Rendering/Materials/IntroductionToMaterials "%Engine/Rendering/Materials/IntroductionToMaterials:description%")
-
- [REGION:gallery]
- [REGION:normaltitle]
- 관련 비디오
- [/REGION]
- [VideoLink(videoid:"lngF4VVNER4" playlistid:"PLZlv_N0_O1gbQjgY0nDwZNYe_N8IcYWS-" width:"180" image:"https://img.youtube.com/vi/lngF4VVNER4/hqdefault.jpg")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
-
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 블루프린트 비주얼 스크립팅
- [/PARAM]
- [PARAM:description]
- [INCLUDE:Engine/Blueprints#intro]
- [/PARAM]
- [PARAM:links]
- * [](Engine/Blueprints/GettingStarted "%Engine/Blueprints/GettingStarted:description%")
-
- [REGION:gallery]
- [REGION:normaltitle]
- 관련 비디오
- [/REGION]
- [VideoLink(videoid:"EFXMW_UEDco" playlistid:"PLZlv_N0_O1gY35ezlSQn1sWOGfh4C7ewO" width:"180")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 프로그래밍
- [/PARAM]
- [PARAM:description]
- 게임플레이 구현과 엔진 변경은 어느 게임 프로젝트에 있어서도 핵심적인 부분입니다. 언리얼 엔진은 게임플레이 구현시
- 코드를 통한 방식 말고도 블루프린트를 사용한 비주얼 방식으로도 가능하며, 심지어 엔진이나 에디터를 변경 및
- 확장시키는 플러그인을 제작하여 디자이너나 아티스트가 마음대로 커스텀 함수성을
- 추가할 수도 있습니다.
- [/PARAM]
- [PARAM:links]
- * [](Programming "%Programming:description%")
- * [](Programming/Development/VisualStudioSetup "%Programming/Development/VisualStudioSetup:description%")
- * [](Programming/QuickStart "%Programming/QuickStart:description%")
- * [](Programming/Basics "%Programming/Basics:description%")
- * [](Gameplay/Framework/QuickReference "%Gameplay/Framework/QuickReference:description%")
+## 에디터 뷰포트
- [REGION:gallery]
- [REGION:normaltitle]
- 관련 비디오
- [/REGION]
- [VideoLink(videoid:"mSRov77hNR4" playlistid:"PLZlv_N0_O1gYup-gvJtMsgJqnEB_dGiM4" width:"180")]
- [/REGION]
- [/PARAM]
-[/OBJECT]
+[INCLUDE:Engine/UI/LevelEditor/Viewports#intro]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 게임 플레이 테스트
- [/PARAM]
- [PARAM:description]
- 언리얼 엔진 내장 기능을 사용하여 레벨과 게임플레이를 테스트하고 버그를 잡습니다.
- **에디터에서 플레이** (PIE) 모드로 에디터에서 바로 실시간 피드백을 구하고,
- **에디터에서 시뮬레이트** (SIE) 모드로는 실행중인 게임에서도 오브젝트를 확인하고 수정할 수 있습니다.
- 이를 통해 플레이 도중에도 코드 변경, 리컴파일, 바로 적용이 가능합니다.
- [/PARAM]
- [PARAM:links]
- * [](Engine/UI/LevelEditor/InEditorTesting "%Engine/UI/LevelEditor/InEditorTesting:description%")
- * **플랫폼**
- * [](Platforms/iOS/QuickStart "%Platforms/iOS/QuickStart:description%")
- * [](Platforms/Android/GettingStarted "%Platforms/Android/GettingStarted:description%")
- * [](Platforms/Oculus/QuickStart "%Platforms/Oculus/QuickStart:description%")
- [/PARAM]
-[/OBJECT]
+%Engine/UI/LevelEditor/Viewports/Basics:topic%
+%Engine/UI/LevelEditor/Viewports/ViewportControls:topic%
+
+## 에디터 모드
+
+[INCLUDE:Shared/Glossary/M#glossary_modes_panel]
+
+%Engine/UI/LevelEditor/Modes:topic%
+
+## 액터 & 지오메트리
+
+[INCLUDE:Engine/UI/LevelEditor#actors]
+
+%Engine/Actors/Placement:topic%
+%Engine/Actors/Brushes:topic%
+%Engine/Actors/Transform:topic%
+
+[REGION:section]
+[REGION:normaltitle]
+관련 비디오
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gak1_FoAJVrEGiLIploeF3F" type:"playlist" output:"playlist")]
+[/REGION]
+
+## 콘텐츠 브라우저
+
+[INCLUDE:Shared/Glossary/C/#Glossary_Content_Browser]
+
+%Engine/Content/QuickStart:topic%
+%Engine/Basics/AssetsAndPackages:topic%
+%Engine/Content/Browser:topic%
+
+## 라이팅
+
+씬의 라이팅은 광원 역할을 하면서 다음과 같은 빛의 특성을 결정하는 프로퍼티가 들어있는 라이트 액터를 통해 이루어집니다.
+
+* 라이트가 얼마나 밝은가
+* 라이트의 색은 어떠한가
+
+여러가지 방식으로 빛을 내뿜는 라이트 종류도 여러가지 있습니다. 예를 들어 일반적인 전구는 모든 방향으로 빛을 내뿜습니다. 언리얼 엔진에서,
+이러한 것은 _포인트 라이트_ 라고 합니다. 한편 투광 조명등처럼 전구 뒷부분을 불투명하게 만들어 빛의 방출을 물리적으로 제한시키는 경우도 있습니다.
+그런 것은 _스포트 라이트_ 라고 합니다. 태양에서 오는 야외의 빛은, 태양이 정말 먼 거리에 있기 때문에, 한 지점이 아닌 한 방향에서 오는 것처럼 보입니다.
+이러한 라이팅 유형의 시뮬레이션으로, _디렉셔널 라이트_ 가 있습니다.
+
+%Engine/Rendering/LightingAndShadows/QuickStart:description%
+%Engine/Rendering/LightingAndShadows/Basics:description%
+
+## 머티리얼 & 셰이딩
+
+[INCLUDE:Shared/Glossary/M/#Glossary_Material]
+
+%Engine/Rendering/Materials/IntroductionToMaterials:topic%
+
+[REGION:section]
+[REGION:normaltitle]
+관련 비디오
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gbQjgY0nDwZNYe_N8IcYWS-" type:"playlist" output:"playlist")]
+[/REGION]
+
+## 블루프린트 비주얼 스크립팅
+
+[INCLUDE:Engine/Blueprints#intro]
+
+%Engine/Blueprints/GettingStarted:topic%
+
+[REGION:gallery]
+[REGION:normaltitle]
+관련 비디오
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gY35ezlSQn1sWOGfh4C7ewO" type:"playlist" output:"playlist")]
+[/REGION]
+
+## 프로그래밍
+
+게임플레이 구현과 엔진 변경은 어느 게임 프로젝트에 있어서도 핵심적인 부분입니다. 언리얼 엔진은 게임플레이 구현시
+코드를 통한 방식 말고도 블루프린트를 사용한 비주얼 방식으로도 가능하며, 심지어 엔진이나 에디터를 변경 및
+확장시키는 플러그인을 제작하여 디자이너나 아티스트가 마음대로 커스텀 함수성을
+추가할 수도 있습니다.
+
+%Programming:topic%
+%Programming/Development/VisualStudioSetup:topic%
+%Programming/QuickStart:topic%
+%Programming/Basics:topic%
+%Gameplay/Framework/QuickReference:topic%
+
+[REGION:gallery]
+[REGION:normaltitle]
+관련 비디오
+[/REGION]
+[DIR(playlist_id:"PLZlv_N0_O1gYup-gvJtMsgJqnEB_dGiM4" type:"playlist" output:"playlist")]
+[/REGION]
+
+## 게임 플레이 테스트
+
+언리얼 엔진 내장 기능을 사용하여 레벨과 게임플레이를 테스트하고 버그를 잡습니다.
+**에디터에서 플레이** (PIE) 모드로 에디터에서 바로 실시간 피드백을 구하고,
+**에디터에서 시뮬레이트** (SIE) 모드로는 실행중인 게임에서도 오브젝트를 확인하고 수정할 수 있습니다.
+이를 통해 플레이 도중에도 코드 변경, 리컴파일, 바로 적용이 가능합니다.
+
+%Engine/UI/LevelEditor/InEditorTesting:topic%
diff --git a/Engine/Documentation/Source/GettingStarted/HowTo/DetailsPanel/Transform/Transforms.INT.udn b/Engine/Documentation/Source/GettingStarted/HowTo/DetailsPanel/Transform/Transforms.INT.udn
index 22ce92d3ad81..16daa41a16c8 100644
--- a/Engine/Documentation/Source/GettingStarted/HowTo/DetailsPanel/Transform/Transforms.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/HowTo/DetailsPanel/Transform/Transforms.INT.udn
@@ -42,10 +42,37 @@ For this How To guide, we will be using a new project using the **Blueprint Thir
1. When the Actor is placed, the **Details** panel in the lower-right porition of the editor will become populated.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
[REGION:lightbox]
- [](Details2.png)
- _Click for full view._
+ [](DetailsPanel_Windows.png)
[/REGION]
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ [REGION:lightbox]
+ [](DetailsPanel_Mac.png)
+ [/REGION]
+ [/PARAM]
+ [/OBJECT]
1. Inside the **Details** panel under **Transform**, click the lock icon for **Scale** and set the **XYZ** values to **3.0**.
diff --git a/Engine/Documentation/Source/GettingStarted/HowTo/DetailsPanel/Transform/Transforms.KOR.udn b/Engine/Documentation/Source/GettingStarted/HowTo/DetailsPanel/Transform/Transforms.KOR.udn
index f61cae70ecdc..f6ae8e936835 100644
--- a/Engine/Documentation/Source/GettingStarted/HowTo/DetailsPanel/Transform/Transforms.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/HowTo/DetailsPanel/Transform/Transforms.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3481084
Availability:Public
Title:1. 액터 트랜스폼 작업
Crumbs: %ROOT%, Gameplay, GettingStarted\HowTo, GettingStarted\HowTo\DetailsPanel
@@ -43,10 +43,37 @@ checkpoint: editorqs
1. 액터가 배치되면, 에디터 우하단의 **디테일** 패널이 채워집니다.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
[REGION:lightbox]
- [](Details2.png)
- _클릭하면 원래 크기로 봅니다._
+ [](DetailsPanel_Windows.png)
[/REGION]
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ [REGION:lightbox]
+ [](DetailsPanel_Mac.png)
+ [/REGION]
+ [/PARAM]
+ [/OBJECT]
1. **디테일** 패널에서 **트랜스폼** 아래, **스케일** 부분의 자물쇠 아이콘을 클릭하고 **XYZ** 값을 **3.0** 으로 설정합니다.
diff --git a/Engine/Documentation/Source/GettingStarted/HowTo/FindingHelp/FindingHelp.INT.udn b/Engine/Documentation/Source/GettingStarted/HowTo/FindingHelp/FindingHelp.INT.udn
index 5b19f9ea7908..782a0afb6c27 100644
--- a/Engine/Documentation/Source/GettingStarted/HowTo/FindingHelp/FindingHelp.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/HowTo/FindingHelp/FindingHelp.INT.udn
@@ -38,7 +38,33 @@ Some aspects of the Editor may have a **?** icon next to them.
This **Help Icon** when clicked will take you to relevant external documentation related to object it is linked to.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Above we have clicked on a **Brush** Actor in our level, then in the **Details** panel, clicked the **?** Help Icon which automatically opened a documentation page on **Geometry Brush Actors**. This is useful when you are not sure what an object does or want to learn more about the object, but not sure where to look on the official documentation pages.
@@ -66,7 +92,33 @@ _Click for full image._
Located in the upper-left corner of an Editor Window is the **Menu Bar** and the **Help** option.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
When clicking the **Help** button, several options are available in the dropdown menu.
@@ -90,15 +142,93 @@ Inside the **Help Menu** noted above, next to **Documentation...** you may have
Pressing **F1** is a keyboard shortcut to bringing up an Official Documentation page. The **F1 Help** button is context sensitive, meaning that depending on where you are in the Editor, a different help page may be presented to you. For example, below we are in the Main Editor View and pressing **F1** for help displays the home documentation page.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
With a **Blueprint** window open, if we were to press **F1** here a different documentation page is displayed for help regarding Blueprints.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Or if we were in the **Material Editor**, a page on **Materials** is displayed.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Whenever you are in a new Editor window and not sure what it is or how to work with it, try pressing **F1** for help.
@@ -106,7 +236,33 @@ Whenever you are in a new Editor window and not sure what it is or how to work w
You can also search for help by using the **Help Search** bar located in the upper-right corner of the Main Editor Window.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Inside the search bar, you can enter any topic and as you start to enter text, a popup window will display results related to your entry.
@@ -140,23 +296,153 @@ These options will allow you to **Exit** the tutorial, proceed to the ***Next**
You can access the In-Editor Tutorial hub by clicking the **More Tutorials** option noted above, or by clicking **Help** from the Menu Bar and selecting **Tutorials**.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
When you open the In-Editor Tutorial hub, a list of tutorials will be presented by category.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Any In-Editor Tutorials that you have completed will be denoted by a green checkmark next to its icon.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Any time you enter an area inside the Editor where a new In-Editor Tutorial is available, an icon will blink in the upper right corner.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Click the blinking icon to start an In-Editor Tutorial covering the area you are currently in.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Above we opened a Static Mesh asset, then clicked the In-Editor Tutorial icon and a **Static Mesh Editor** tutorial was started.
@@ -178,7 +464,33 @@ For more information, see the [Content Examples](Resources/ContentExamples) docu
When you want to learn about a particular feature or aspect of the Editor, the [Official Documentation](https://docs.unrealengine.com/latest/INT/index.html) is the place to start.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
You can use the search field to search for the information you want to retrieve, or you can use the **Quick Search Terms** to browse commonly searched topics. Additionally, you can browse the documentation by topic. If you are new to Unreal Engine 4, **Getting Started** is a fine place to start.
@@ -188,13 +500,65 @@ For those that want a more hands-on learning experience, you can take a look at
If you cannot find what you are looking for in the Official Documentation or have a specific question, you can search [Answer Hub](https://answers.unrealengine.com/index.html) to see if your question has been asked/answered by Epic Staff or the Unreal Engine community.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
You can enter your topic or question in the search field to see if it has been asked or answered before.
Below we searched for **Multiplayer Games** to see what topics came up related to our keyword search.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Any questions/answers related to Multiplayer Games are returned so that we can browse and see if our particular questions regarding Multiplayer have been asked.
@@ -209,7 +573,33 @@ If you are new to Answer Hub, there is a Quick Start guide to using it which you
Another resource for help is the [Official Unreal Engine 4 Forums](https://forums.unrealengine.com/forum.php).
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
The forums are broken up into several categories from Animation, Blueprints, and C++ Gameplay Programming to Android or iOS development or even Community Content, Tools, and Tutorials. The forums are largely community driven but Epic Staff does contribute to and respond to posts in the forums quite a bit. While Answer Hub is geared toward one-off questions and answers, the forums is a good place to start a discussion on a particular topic or how to
approach creating something in Unreal Engine 4.
@@ -219,7 +609,33 @@ approach creating something in Unreal Engine 4.
The [Official Unreal Engine 4 Wiki](https://wiki.unrealengine.com/Main_Page) is a place you can go for more Tutorials, Sample Projects, or Code samples.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
The wiki is a community driven learning resource where users can post their own tutorials for others to use and learn from. Often times in Game Development, trial-and-error is the best method in which to learn something and with the wiki, you can learn from others who may have went through similar stumbling blocks as you.
diff --git a/Engine/Documentation/Source/GettingStarted/HowTo/FindingHelp/FindingHelp.KOR.udn b/Engine/Documentation/Source/GettingStarted/HowTo/FindingHelp/FindingHelp.KOR.udn
index e250bc8233b9..c2bb45a8c2bd 100644
--- a/Engine/Documentation/Source/GettingStarted/HowTo/FindingHelp/FindingHelp.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/HowTo/FindingHelp/FindingHelp.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3482370
Availability:Public
Title:도움말 & 답변 찾기
Crumbs: %ROOT%, Gameplay, GettingStarted\HowTo
@@ -39,7 +39,33 @@ version: 4.9
이 **도움말 아이콘** 을 클릭하면 연결된 오브젝트 관련 외부 문서로 이동됩니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
위에서, 레벨의 **브러시** 액터를 클릭한 다음 **디테일** 패널에서 **?** 도움말 아이콘을 클릭하면 **지오메트리 브러시 액터** 관련 문서가 자동으로 열립니다. 오브젝트가 무엇인지 잘 몰라 그에 대해 자세히 알고싶은데, 공식 문서에서 무엇을 찾아봐야 할 지 잘 모르겠는 경우에 좋습니다.
@@ -67,7 +93,33 @@ _이미지를 클릭하면 원래 크기로 보입니다._
에디터 창 좌상단 구석에 있는 것이 **메뉴 바** 이며, 마지막에 있는 옵션이 **도움말** 옵션입니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
**도움말** 버튼을 클릭하면, 드롭다운 메뉴에 사용가능 옵션이 여러가지 나타납니다.
@@ -91,15 +143,93 @@ _이미지를 클릭하면 원래 크기로 보입니다._
**F1** 키는 공식 문서 페이지를 띄우는 키보드 단축키입니다. **F1 도움말** 버튼은 맥락에 따라 달라지는, 즉 에디터 내 어디서 눌렀는다게 따라 다른 도움말 페이지가 제공될 수 있다는 뜻입니다. 예를 들어, 메인 에디터 뷰에서 **F1** 키를 눌러 홈 문서 페이지의 도움말을 표시한 것입니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
**블루프린트** 창이 열려있을 때 **F1** 키를 눌렀다면, 블루프린트 관련 도움말이 표시되는 문서가 열립니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
아니면 **머티리얼 에디터** 에 있었던 경우, **머티리얼** 관련 페이지가 표시됩니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
새 에디터 창에서 작업 방법을 잘 모르겠다면, **F1** 키를 눌러 도움말을 참고해 보세요.
@@ -107,7 +237,33 @@ _이미지를 클릭하면 원래 크기로 보입니다._
메인 에디터 창 우상단 구석에 위치한 **도움말 검색창** 에서도 도움말을 검색할 수 있습니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
검색창 안에 원하는 주제를 입력할 수 있으며, 글자를 입력하기 시작하면 거기에 관련된 결과가 표시되는 팝업창이 뜹니다.
@@ -141,23 +297,153 @@ _이미지를 클릭하면 원래 크기로 보입니다._
위에 언급한 **추가 튜토리얼** 을 클릭하거나, 메뉴 바의 **도움말** - **튜토리얼** 을 선택하여 에디터내 튜토리얼 허브를 접할 수 있습니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
에디터내 튜토리얼 허브를 열면, 튜토리얼 목록이 범주별로 나타납니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
완료했던 에디터내 튜토리얼은 그 아이콘 옆에 녹색 체크표시가 붙습니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
새로운 에디터내 튜토리얼이 가능한 에디터내 특정 부분에 들어서면, 우상단 구석에 아이콘이 깜빡입니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
깜빡이는 아이콘을 클릭하면 현재 들어와 있는 영역에 관련된 에디터내 튜토리얼이 시작됩니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
위에서 **스태틱 메시** 애셋을 연 다음 에디터내 튜토리얼 아이콘을 클릭했더니 **스태틱 메시 에디터** 튜토리얼이 시작되었습니다.
@@ -179,7 +465,33 @@ _이미지를 클릭하면 원래 크기로 보입니다._
에디터의 특정 기능 및 부분에 대해 배우고자 할 때는, [공식 문서](https://docs.unrealengine.com/latest/KOR/index.html) 가 시작하기 딱 좋은 곳입니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
검색창을 통해 얻고자 하는 정보를 검색하거나, **빠른 검색어** 를 통해 자주 검색되는 주제를 둘러볼 수 있습니다. 추가적으로, 주제를 통해 문서를 둘러볼 수 있습니다. 언리얼 엔진 4 에 처음이신 분들은, **시작하기** 부터 시작해 보시면 좋습니다.
@@ -189,13 +501,65 @@ _이미지를 클릭하면 원래 크기로 보입니다._
공식 문서에서 원하는 것을 찾지 못했거나 특정한 질문이 있으신 경우, [Answer Hub](https://answers.unrealengine.com/index.html) 를 검색해 보면 에픽 직원이나 언리얼 엔진 커뮤니티에서 질문/답변이 되었는지 확인해 볼 수 있습니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
검색칸에 주제나 질문을 입력하여 전에 질문/답변이 있었는지 확인할 수 있습니다.
아래에는 **Multiplayer Games** 를 입력하여 검색어에 일치한 주제를 확인한 것입니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
멀티플레이어 게임 관련 질문/답변 결과가 나와 찾는 질문이 이미 있었는지 둘러보며 확인할 수 있습니다.
@@ -210,16 +574,69 @@ Answer Hub 가 처음이신 경우, [Quick Start Guide](https://answers.unrealen
[공식 언리얼 엔진 4 Forums](https://forums.unrealengine.com/forum.php) 역시도 또하나의 도움말 참고 자료입니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
-포럼은 **애니메이션**, **블루프린트**, **C++ 게임플레이 프로그래밍**, **안드로이드** 나 **iOS** 개발, **커뮤니티 콘텐츠, 툴, 튜토리얼** 등등 여러 범주별로 나뉘어 있습니다. 포럼은 크게 커뮤니티 기반으로 이루어지나, 에픽의 직원들 역시도 포럼 게시물에 답변하는 등 기여를 많이 합니다. **Answer Hub** 가 일회성 질문 답변에 초점을 맞춘 반면, 포럼은 언리얼 엔진 4 의 특정 주제나 무언가를 만드는 접근법에 대한 논의를 시작하기 좋은 곳입니다.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+포럼은 **애니메이션**, **블루프린트**, **C++ 게임플레이 프로그래밍**, **안드로이드** 나 **iOS** 개발, **커뮤니티 콘텐츠, 툴, 튜토리얼** 등등 여러 범주별로 나뉘어 있습니다. 포럼은 크게 커뮤니티 기반으로 이루어지나, 에픽의 직원들 역시도 포럼 게시물에 답변하는 등 기여를 많이 합니다. **Answer Hub** 가 일회성 질문 답변에 초점을 맞춘 반면, 포럼은 언리얼 엔진 4 의 특정 주제나 무언가를 만드는 접근법에 대한
+논의를 시작하기 좋은 곳입니다.
## 외부 도움말: 위키
[공식 언리얼 엔진 4 위키](https://wiki.unrealengine.com/Main_Page) 는 더 많은 튜토리얼, 샘플 프로젝트, 코드 샘플을 찾을 수 있는 곳입니다.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
위키는 커뮤니티 주도형 학습 자료 사이트로, 사용자가 다른 이가 보고 배울 수 있도록 튜토리얼을 올리는 곳입니다. 종종 게임 개발에 있어 시행착오를 통한 개선이 무언가를 배우는 데는 최선의 방법이며, 위키를 통해 여러분과 비슷한 무언가를 겪었을 다른 이들로부터 무언가를 배울 수 있습니다.
diff --git a/Engine/Documentation/Source/GettingStarted/HowTo/PIE/PIE.INT.udn b/Engine/Documentation/Source/GettingStarted/HowTo/PIE/PIE.INT.udn
index 90045b7af229..80031a3fff81 100644
--- a/Engine/Documentation/Source/GettingStarted/HowTo/PIE/PIE.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/HowTo/PIE/PIE.INT.udn
@@ -27,7 +27,37 @@ This section will show you how you can use **Play In Editor** to play your game.
When clicking the **Play** button, the game should start and you should see the character in the Level Editor Viewport.
- (w:800)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ [REGION:lightbox]
+ 
+ [/REGION]
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ [REGION:lightbox]
+ 
+ [/REGION]
+ [/PARAM]
+ [/OBJECT]
You will also see text appear in the upper left corner of the Level Editor Viewport.
diff --git a/Engine/Documentation/Source/GettingStarted/HowTo/PIE/PIE.KOR.udn b/Engine/Documentation/Source/GettingStarted/HowTo/PIE/PIE.KOR.udn
index 7033bfefd403..08f541f37dec 100644
--- a/Engine/Documentation/Source/GettingStarted/HowTo/PIE/PIE.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/HowTo/PIE/PIE.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3481084
Availability:Public
Title:플레이 & 시뮬레이트
Crumbs: %ROOT%, Gameplay, GettingStarted\HowTo
@@ -28,7 +28,37 @@ version: 4.9
**플레이** 버튼을 클릭하면 게임이 시작되고, 레벨 에디터 뷰포트에서 캐릭터를 확인할 수 있습니다.
- (w:800)
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ [REGION:lightbox]
+ 
+ [/REGION]
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ [REGION:lightbox]
+ 
+ [/REGION]
+ [/PARAM]
+ [/OBJECT]
레벨 에디터 뷰포트 좌상단 구석에 텍스트가 나타나는 것도 보일 것입니다.
diff --git a/Engine/Documentation/Source/GettingStarted/Installation/InstallingUnrealEngine.KOR.udn b/Engine/Documentation/Source/GettingStarted/Installation/InstallingUnrealEngine.KOR.udn
index b55d11ec7159..53aadfd57313 100644
--- a/Engine/Documentation/Source/GettingStarted/Installation/InstallingUnrealEngine.KOR.udn
+++ b/Engine/Documentation/Source/GettingStarted/Installation/InstallingUnrealEngine.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367474
Availability:Public
Title:언리얼 엔진 설치하기
Description:언리얼 엔진 설치법 단계별 안내입니다.
@@ -14,25 +14,25 @@ SkillLevel: Beginner
이 튜토리얼을 통해 배울 수 있는 내용은 다음과 같습니다:
-* [에픽 게임스 계정 생성 (없는 경우)](#Bookmark1)
-* [인스톨러 다운로드 및 실행 (에픽 게임스 런처 구성 프로그램)](#Bookmark2)
-* [에픽 게임스 런처 로그인](#Bookmark3)
+* [에픽 게임즈 계정 생성 (없는 경우)](#Bookmark1)
+* [인스톨러 다운로드 및 실행 (에픽 게임즈 런처 구성 프로그램)](#Bookmark2)
+* [에픽 게임즈 런처 로그인](#Bookmark3)
* [언리얼 엔진 설치](#Bookmark4)
* [언리얼 엔진 실행](#Bookmark5)

-에픽 게임스 런처를 통해 UE4 를 보다 편리하게 다운로드하고 업데이트를 설치할 수 있습니다.
+에픽 게임즈 런처를 통해 UE4 를 보다 편리하게 다운로드하고 업데이트를 설치할 수 있습니다.
[REGION:warning]
-이미 에픽 게임스 계정이 있으시다면, [인스톨러 다운로드 및 실행](#Bookmark2) 부분으로 넘어가시기 바랍니다.
+이미 에픽 게임즈 계정이 있으시다면, [인스톨러 다운로드 및 실행](#Bookmark2) 부분으로 넘어가시기 바랍니다.
[/REGION]
(#Bookmark1)
-## 에픽 게임스 계정 생성
+## 에픽 게임즈 계정 생성
-에픽 게임스 런처 실행을 위해서는, 유효한 에픽 게임스 계정이 있어야 합니다.
+에픽 게임즈 런처 실행을 위해서는, 유효한 에픽 게임즈 계정이 있어야 합니다.
[INCLUDE:GettingStarted/AccountSetup#epicAccount]
@@ -40,7 +40,7 @@ SkillLevel: Beginner
(#Bookmark2)
-유효한 에픽 게임스 계정이 있으면 인스톨러 (에픽 게임스 구성 프로그램) 다운로드가 가능합니다.
+유효한 에픽 게임즈 계정이 있으면 인스톨러 (에픽 게임즈 구성 프로그램) 다운로드가 가능합니다.
%Globals:osselect_linux%
@@ -55,20 +55,26 @@ SkillLevel: Beginner
active_button_content
[/PARAMLITERAL]
[PARAM:content]
- 1. **다운로드** 버튼을 눌러 인스톨러를 받습니다.
-
- 
-
- 1. 다운로드가 완료되면, 인스톨러를 실행합니다.
-
- 
-
- 1. **에픽 게임스 런처 구성** 대화창이 뜨면 **설치** 버튼을 누릅니다.
-
- 
+ [INCLUDE:#windows_install]
[/PARAM]
[/OBJECT]
+
+
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
@@ -86,7 +92,7 @@ SkillLevel: Beginner
1. `**Finder**` 에서 `EpicGamesLauncher.dmg` 아이콘을 더블클릭하여 창을 새로 엽니다.
- 1. **에픽 게임스 런처** 아이콘을 끌어 **Applications** 폴더에 놓습니다.
+ 1. **에픽 게임즈 런처** 아이콘을 끌어 **Applications** 폴더에 놓습니다.

[/PARAM]
@@ -114,7 +120,7 @@ SkillLevel: Beginner
(#Bookmark3)
-구성 프로그램이 로컬 머신에 에픽 게임스 런처를 설치한 이후에는, 에픽 게임스 계정 정보로 로그인합니다.
+구성 프로그램이 로컬 머신에 에픽 게임즈 런처를 설치한 이후에는, 에픽 게임즈 계정 정보로 로그인합니다.

@@ -122,7 +128,7 @@ SkillLevel: Beginner
(#Bookmark4)
-에픽 게임스 런처에 로그인했으니 UE4 설치 준비가 다 되었습니다.
+에픽 게임즈 런처에 로그인했으니 UE4 설치 준비가 다 되었습니다.
[REGION:warning]
[REGION:largetitle]
@@ -131,7 +137,7 @@ SkillLevel: Beginner
언리얼 엔진은 설치되는 버전당 약 8 GB 정도의 하드 디스크 공간이 필요합니다. UE4 설치 전 공간이 충분한지 확인하세요.
[/REGION]
-1. 에픽 게임스 런처 로딩 화면 안에서 **언리얼 엔진** 탭을 클릭합니다.
+1. 에픽 게임즈 런처 로딩 화면 안에서 **언리얼 엔진** 탭을 클릭합니다.

@@ -153,15 +159,15 @@ SkillLevel: Beginner
(#Bookmark5)
-에픽 게임스 런처가 언리얼 엔진 다운로드 & 설치에 성공한 이후, **실행** 버튼을 누르면 됩니다.
+에픽 게임즈 런처가 언리얼 엔진 다운로드 & 설치에 성공한 이후, **실행** 버튼을 누르면 됩니다.

축하합니다! 지금까지 배우신 내용은 다음과 같습니다:
-✓ [에픽 게임스 계정 생성 (없는 경우)](#Bookmark1)
-✓ [인스톨러 다운로드 및 실행 (에픽 게임스 런처 구성 프로그램)](#Bookmark2)
-✓ [에픽 게임스 런처 로그인](#Bookmark3)
+✓ [에픽 게임즈 계정 생성 (없는 경우)](#Bookmark1)
+✓ [인스톨러 다운로드 및 실행 (에픽 게임즈 런처 구성 프로그램)](#Bookmark2)
+✓ [에픽 게임즈 런처 로그인](#Bookmark3)
✓ [언리얼 엔진 설치](#Bookmark4)
✓ [언리얼 엔진 실행](#Bookmark5)
diff --git a/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.INT.udn b/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.INT.udn
new file mode 100644
index 000000000000..e137e75e3ffb
--- /dev/null
+++ b/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.INT.udn
@@ -0,0 +1,18 @@
+Availability: NoPublish
+Title: Linux Instructions
+Crumbs: %ROOT%
+Description: Telling Linux users how to download the Unreal Engine source code from GitHub.
+version: 4.16
+parent:GettingStarted
+Order:
+
+1. [Set up Git](https://help.github.com/articles/set-up-git/) and [fork our repository](https://help.github.com/articles/fork-a-repo/).
+ If you'd prefer not to use Git, use the 'Download ZIP' button on the right to get the source as a zip file.
+
+1. Open your source folder and run **Setup.sh** to download binary content for the engine.
+
+1. Both cross-compiling and native builds are supported.
+
+ **Cross-compiling** is handy when you are a Windows (Mac support planned too) developer who wants to package your game for Linux with minimal hassle, and it requires a [cross-compiler toolchain](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) to be installed (see the [Linux cross-compiling page on the wiki](https://docs.unrealengine.com/latest/INT/Platforms/Linux/GettingStarted/)).
+
+ **Native compilation** is discussed in [a separate README](https://github.com/EpicGames/UnrealEngine/blob/release/Engine/Build/BatchFiles/Linux/README.md) and [community wiki page](https://wiki.unrealengine.com/Building_On_Linux).
\ No newline at end of file
diff --git a/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.JPN.udn b/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.JPN.udn
new file mode 100644
index 000000000000..4db4fd72489e
--- /dev/null
+++ b/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.JPN.udn
@@ -0,0 +1,19 @@
+INTSourceChangelist:3426963
+Availability:NoPublish
+Title:Linux ユーザーへの案内
+Crumbs: %ROOT%
+Description:Linux ユーザーに GitHub からアンリアル エンジンのソースコードをダウンロードするように伝える
+version:4.16
+parent:GettingStarted
+Order:
+
+1. [Set up Git](https://help.github.com/articles/set-up-git/) および [fork our repository](https://help.github.com/articles/fork-a-repo/)。
+ Git を使用したくない場合は、'Download ZIP' ボタンを使ってソースを Zip ファイルでダウンロードしてください。
+
+1. ソースフォルダを 開き **Setup.sh** を実行して、エンジンのバイナリ コンテンツを ダウンロード します。
+
+1. クロスコンパイルとネイティブ ビルドがサポートされます。
+
+ Windows (Mac もサポート予定) デベロッパーが一番楽な方法でゲームを Linux 向けにパッケージ化する場合、**クロスコンパイル** が便利です。その場合、[クロスコンパイラ ツールチェーン](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) のインストールが必要です ([Wiki の Linux 向けクロスコンパイルの説明](https://docs.unrealengine.com/latest/INT/Platforms/Linux/GettingStarted/) をご覧ください)。
+
+ **ネイティブ コンパイル** は [README](https://github.com/EpicGames/UnrealEngine/blob/release/Engine/Build/BatchFiles/Linux/README.md) および [コミュニティ Wiki ページ](https://wiki.unrealengine.com/Building_On_Linux) で説明されています。
\ No newline at end of file
diff --git a/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.KOR.udn b/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.KOR.udn
new file mode 100644
index 000000000000..d67fc97bf4f1
--- /dev/null
+++ b/Engine/Documentation/Source/GettingStarted/LinuxInstructions/LinuxInstructions.KOR.udn
@@ -0,0 +1,19 @@
+INTSourceChangelist:3426963
+Availability: NoPublish
+Title: 리눅스 안내
+Crumbs: %ROOT%
+Description: 리눅스에서 GitHub 의 언리얼 엔진 소스 코드를 다운로드하는 방법입니다.
+version: 4.16
+parent:GettingStarted
+Order:
+
+1. [Git 셋업](https://help.github.com/articles/set-up-git/) 후 [repository 를 fork](https://help.github.com/articles/fork-a-repo/) 합니다.
+ Git 를 사용하고 싶지 않은 경우, 오른쪽의 'Download ZIP" 버튼을 누르면 소스를 zip 파일로 받습니다.
+
+1. 소스 폴더를 열고 **Setup.sh** 를 실행시켜 엔진 바이너리 콘텐츠를 다운로드합니다.
+
+1. 크로스 컴파일 및 네이티브 빌드 모두 지원합니다.
+
+ **크로스 컴파일** 은 윈도우에서 (맥도 지원할 계획이 있습니다) 최소한의 번거로운 작업으로 리눅스용 게임을 패키징하고자 하는 경우 편리하며, [크로스 컴파일러 툴체인](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) 이 설치되어 있어야 합니다 (자세한 내용은 [리눅스 크로스 컴파일 페이지](Platforms/Linux/GettingStarted) 를 참고하세요).
+
+ **네이티브 컴파일** 은 [별도의 README](https://github.com/EpicGames/UnrealEngine/blob/release/Engine/Build/BatchFiles/Linux/README.md) 와 [커뮤니티 wiki 페이지](https://wiki.unrealengine.com/Building_On_Linux) 에서 찾아볼 수 있습니다.
\ No newline at end of file
diff --git a/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.INT.udn b/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.INT.udn
new file mode 100644
index 000000000000..0ac04f39c514
--- /dev/null
+++ b/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.INT.udn
@@ -0,0 +1,25 @@
+Availability: NoPublish
+Title: Mac Instructions
+Crumbs: %ROOT%
+Description: Telling Mac users how to download the Unreal Engine source code from GitHub.
+version: 4.16
+parent:GettingStarted
+Order:
+
+1. Install [GitHub for Mac](https://mac.github.com/) then [fork and clone our repository](https://guides.github.com/activities/forking/).
+
+ To use Git from the Terminal, see the [Setting up Git](https://help.github.com/articles/set-up-git/) and [Fork a Repo](https://help.github.com/articles/fork-a-repo/) articles.
+ If you'd rather not use Git, use the 'Download ZIP' button on the right to get the source directly.
+
+1. Install the latest version of [Xcode](https://itunes.apple.com/us/app/xcode/id497799835).
+
+1. Open your source folder in Finder and double-click on **Setup.command** to download binary content for the engine. You can close the Terminal window afterwards.
+
+ If you downloaded the source as a .zip file, you may see a warning about it being from an unidentified developer (because .zip files on GitHub aren't digitally signed).
+ To work around it, right-click on Setup.command, select Open, then click the Open button.
+
+1. In the same folder, double-click **GenerateProjectFiles.command**. It should take less than a minute to complete.
+
+1. Load the project into Xcode by double-clicking on the **UE4.xcworkspace** file. Select the **ShaderCompileWorker** for **My Mac** target in the title bar, then select the 'Product > Build' menu item. When Xcode finishes building, do the same for the **UE4** for **My Mac** target. Compiling may take anywhere between 15 and 40 minutes, depending on your system specs.
+
+1. After compiling finishes, select the 'Product > Run' menu item to load the editor.
\ No newline at end of file
diff --git a/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.JPN.udn b/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.JPN.udn
new file mode 100644
index 000000000000..dbe9c2135c11
--- /dev/null
+++ b/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.JPN.udn
@@ -0,0 +1,26 @@
+INTSourceChangelist:3426963
+Availability:NoPublish
+Title:Mac ユーザーへの案内
+Crumbs: %ROOT%
+Description:Mac ユーザーに GitHub からアンリアル エンジンのソースコードをダウンロードするように伝える
+version:4.16
+parent:GettingStarted
+Order:
+
+1. [GitHub for Mac](https://mac.github.com/) そして [fork and clone our repository](https://guides.github.com/activities/forking/) をインストールします。
+
+ ターミナルで Git を使用する場合は、[Git を設定する](https://help.github.com/articles/set-up-git/) と [レポジトリをフォークする](https://help.github.com/articles/fork-a-repo/) に関する記事を参照してください。
+ Git を使用したくない場合は、'Download ZIP' ボタンを使ってソースを直接ダウンロードしてください。
+
+1. [Xcode](https://itunes.apple.com/us/app/xcode/id497799835) の最新版をインストールしてください。
+
+1. Finder でソースフォルダを 開き **Setup.sh** をダブルクリックしてエンジンのバイナリ コンテンツをダウンロードします。ダウンロードしたらターミナルのウィンドウを閉じます。
+
+ Zip ファイルでソースをダウンロードすると、デベロッパーとして認識できない旨の警告が表示されます (GitHub 上の Zip ファイルはデジタル署名されていないので)。
+ 回避するには、Setup.コマンドを右くりっくして、[Open] を選択し、[Open] ボタンをクリックします。
+
+1. 同じフォルダの中の **GenerateProjectFiles.command** をダブルクリックします。完了までに 1 分弱程度かかります。
+
+1. プロジェクトを XCode にロードするには、**「UE4.xcworkspace」** ファイルをダブルクリックします。タイトルバーで **My Mac** ターゲット向け **ShaderCompileWorker** を選択し、次に [Product] > [Build] を選択します。Xcode のビルドが終了したら、**My Mac** ターゲット向け **UE4** を選択し同じことをします。システム仕様によっては、コンパイルに 15 分から 40 分程度かかることがあります。
+
+1. コンパイルが終了したら [Product] > [Run] を選択してエディタをロードします。
\ No newline at end of file
diff --git a/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.KOR.udn b/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.KOR.udn
new file mode 100644
index 000000000000..875f9060e564
--- /dev/null
+++ b/Engine/Documentation/Source/GettingStarted/MacInstructions/MacInstructions.KOR.udn
@@ -0,0 +1,26 @@
+INTSourceChangelist:3426963
+Availability: NoPublish
+Title: 맥 안내
+Crumbs: %ROOT%
+Description: 맥에서 GitHub 의 언리얼 엔진 소스 코드를 다운로드하는 방법입니다.
+version: 4.16
+parent:GettingStarted
+Order:
+
+1. [맥용 GitHub](https://mac.github.com/) 를 설치한 뒤 [repository 를 fork 및 clone](https://guides.github.com/activities/forking/) 합니다.
+
+ Terminal 에서 Git 를 사용하는 방법은, [Setting up Git](https://help.github.com/articles/set-up-git/) 및 [Fork a Repo](https://help.github.com/articles/fork-a-repo/) 페이지를 참고하세요.
+ Git 를 사용하고 싶지 않으면, 오른쪽의 'Download ZIP' 버튼으로 소스를 바로 다운로드할 수 있습니다.
+
+1. [Xcode](https://itunes.apple.com/us/app/xcode/id497799835) 최신 버전을 설치합니다.
+
+1. Finder 에서 소스 폴더를 열고 **Setup.command** 를 더블클릭하여 엔진 바이너리 콘텐츠를 다운로드합니다. 그 후 Terminal 창을 닫아도 됩니다.
+
+ 소스를 .zip 파일로 다운로드했다면, 개발자를 알 수 없다는 경고가 뜰 것입니다 (GitHub 의 .zip 파일은 디지털 사인 되어있지 않기 때문입니다).
+ 우회법은, Setup.command 에 우클릭하고, Open 을 선택한 뒤 Open 버튼을 클릭하면 됩니다.
+
+1. 같은 폴더에서 **GenerateProjectFiles.command** 를 더블클릭합니다. 1 분이 채 안되어 완료될 것입니다.
+
+1. **UE4.xcworkspace** 파일을 더블클릭하여 프로젝트를 Xcode 에 로드합니다. 제목줄에서 **My Mac** 타겟에 대한 **ShaderCompileWorker** 를 선택한 뒤, 'Product > Build' 메뉴 항목을 선택합니다. Xcode 빌드가 끝나면, **My Mac** 타겟의 **UE4** 에 대해서도 같은 작업을 해줍니다. 시스템 사양에 따라 컴파일 시간은 15 - 40 분 정도 걸립니다.
+
+1. 컴파일이 끝나면, 'Product > Run' 메뉴 항목으로 에디터를 로드합니다.
\ No newline at end of file
diff --git a/Engine/Documentation/Source/GettingStarted/SubEditors/SubEditors.INT.udn b/Engine/Documentation/Source/GettingStarted/SubEditors/SubEditors.INT.udn
index 0504e5bd91c9..3e495fd7ff6c 100644
--- a/Engine/Documentation/Source/GettingStarted/SubEditors/SubEditors.INT.udn
+++ b/Engine/Documentation/Source/GettingStarted/SubEditors/SubEditors.INT.udn
@@ -3,40 +3,7 @@ Title:Tools and Editors
Crumbs: %ROOT%, Gameplay, GettingStarted
Description:There are several different types of Editors contained within Unreal Engine 4, this page highlights each of them.
version: 4.9
-
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %GettingStarted\SubEditors:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:GettingStarted\SubEditors]
- [/PARAM]
- [PARAM:description]
- %GettingStarted\SubEditors:description%
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:title]
- %GettingStarted\SubEditors:title%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:GettingStarted\SubEditors]
- [/PARAM]
- [PARAM:description]
- %GettingStarted\SubEditors:description%
- [/PARAM]
-[/OBJECT]
-[/VAR]
+topic-image:editortypes_topic.png
This page is intended to give you an overview of each of the different types of Editors that you will be working with inside Unreal Engine 4. Whether you are inside the **Level Editor** building your game's level, working with the **Blueprint Editor** to script behaviors for the Actors in your level, creating particle effects with the **Cascade Editor** or setting up animations for characters inside the **Persona Editor**; a good understanding of what each Editor can do and how to navigate it can improve your workflow and help prevent any stumbling blocks during development.
@@ -45,23 +12,56 @@ Refer to each of the sections below for an overview along with links to more det
| ------- | ------------ |
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#leveleditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#materialeditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#blueprinteditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#behavioreditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#personaeditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#cascadeeditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#umguieditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#matineeeditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#soundcueeditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#spriteeditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#flipbookeditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#phateditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#staticmesheditor]|
-|(w:400 h:240)|[INCLUDE:GettingStarted\SubEditors#mediaeditor]|
+|[INCLUDE:GettingStarted\SubEditors#leveleditorimage]|[INCLUDE:GettingStarted\SubEditors#leveleditor]|
+|[INCLUDE:GettingStarted\SubEditors#materialeditorimage]|[INCLUDE:GettingStarted\SubEditors#materialeditor]|
+|[INCLUDE:GettingStarted\SubEditors#blueprinteditorimage]|[INCLUDE:GettingStarted\SubEditors#blueprinteditor]|
+|[INCLUDE:GettingStarted\SubEditors#behavioreditorimage]|[INCLUDE:GettingStarted\SubEditors#behavioreditor]|
+|[INCLUDE:GettingStarted\SubEditors#personaeditorimage]|[INCLUDE:GettingStarted\SubEditors#personaeditor]|
+|[INCLUDE:GettingStarted\SubEditors#cascadeeditorimage]|[INCLUDE:GettingStarted\SubEditors#cascadeeditor]|
+|[INCLUDE:GettingStarted\SubEditors#umguieditorimage]|[INCLUDE:GettingStarted\SubEditors#umguieditor]|
+|[INCLUDE:GettingStarted\SubEditors#matineeeditorimage]|[INCLUDE:GettingStarted\SubEditors#matineeeditor]|
+|[INCLUDE:GettingStarted\SubEditors#soundcueeditorimage]|[INCLUDE:GettingStarted\SubEditors#soundcueeditor]|
+|[INCLUDE:GettingStarted\SubEditors#spriteeditorimage]|[INCLUDE:GettingStarted\SubEditors#spriteeditor]|
+|[INCLUDE:GettingStarted\SubEditors#flipbookeditorimage]|[INCLUDE:GettingStarted\SubEditors#flipbookeditor]|
+|[INCLUDE:GettingStarted\SubEditors#phateditorimage]|[INCLUDE:GettingStarted\SubEditors#phateditor]|
+|[INCLUDE:GettingStarted\SubEditors#staticmesheditorimage]|[INCLUDE:GettingStarted\SubEditors#staticmesheditor]|
+|[INCLUDE:GettingStarted\SubEditors#mediaeditorimage]|[INCLUDE:GettingStarted\SubEditors#mediaeditor]|
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1#AndroidLinux_1]
[/EXCERPT:LinuxSetup]
-->
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/1/AndroidQS_1.JPN.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/1/AndroidQS_1.JPN.udn
index eac30f8e632d..43a8d36a923c 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/1/AndroidQS_1.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/1/AndroidQS_1.JPN.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
-Title:1.必要な Android の設定
+Title:1.Android 開発に必要な設定
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
-Description:CodeWorks for Android 1R4 SDK をインストールします。
-Version:4.12
+Description:CodeWorks for Android 1R6 SDK をインストールします。
+Version:4.16
Skilllevel:Intermediate
tags:Android
type:multi-step
@@ -15,9 +15,9 @@ Checkpoint:AndroidQS
[nav]
## ステップ
-Android 用の開発でまず最初にすることは、CodeWorks for Android 1R4 のインストールです。
+Android 用の開発でまず最初にすることは、CodeWorks for Android 1R6 のインストールです。
これは、Android デバイスにデプロイするために必要なプログラムとコードが確実にすべてそろいます。
-以下のセクションでは、開発用の PC に CodeWorks for Android 1R4 をインストールする方法を説明します。
+以下のセクションでは、開発用の PC に CodeWorks for Android 1R6 をインストールする方法を説明します。
%Globals:osselect_linux%
@@ -70,17 +70,17 @@ Android 用の開発でまず最初にすることは、CodeWorks for Android 1R
[EXCERPT:WindowsSetup]
[REGION:note]
-CodeWorks for Android 1R4 はインストールして、環境変数の設定がまだの場合は、以下の手順はすべて抜かして、エディタから **[Edit Menu (メニューの編集)]** -> **[Project Settings (プロジェクト設定)]** -> **[Android SDK]** プロパティを使って、エディタをインストール場所に指定してください。
+CodeWorks for Android 1R6 はインストール済みで環境変数の設定がまだの場合、以下の手順はすべて抜かして、エディタから **[Edit Menu (メニューの編集)]** -> **[Project Settings (プロジェクト設定)]** -> **[Android SDK]** プロパティを使って、エディタをインストール場所に指定してください。
[/REGION]
[region:warning]
-CodeWorks for Android 1R4 のインストール中は、インストールに問題が発生しないように、エディタとランチャーを閉じることをお勧めします。
+CodeWorks for Android 1R6 のインストール中は、インストールに問題が発生しないように、エディタとランチャーを閉じることをお勧めします。
[/region]
-1. CodeWorks for Android 1R4 をインストールをするには、**[Engine]** > **[Extras]** > **[Android]** フォルダを開きます。
+1. CodeWorks for Android 1R6 をインストールをするには、**[Engine]** > **[Extras]** > **[Android]** フォルダを開きます。
[region:note]
- CodeWorks for Android 1R4 インストーラーを正常に完了するためには、Visual Studio をインストールする必要があります。サポートしているバージョンは、2010、2012、2013 (2015 は対象外) です。
+ CodeWorks for Android 1R6 インストーラを正常に完了するためには、Visual Studio をインストールする必要があります。サポートしているバージョンは、2010、2012、2013 (2015 は対象外) です。
[/region]
| インストールの種類 | 保存場所 |
@@ -89,17 +89,17 @@ CodeWorks for Android 1R4 のインストール中は、インストールに問
| GitHub | [EngineSyncLocation\UE4\Engine\Extras\Android |
[region:note]
- **Github** から UE4 をダウンロードする場合は、まず次のステップを完了しないと CodeWorks for Android 1R4 インストーラーを実行できません。
+ **Github** から UE4 をダウンロードする場合は、まず次のステップを完了しないと CodeWorks for Android 1R6 インストーラを実行できません。
以下は、UE4 ソースコードを Github からダウンロードした Windows と Mac の入った PC 向けの手順になりますのでご注意ください。
- ランチャーからダウンロードしたバイナリ ビルドを使用する場合は、このステップを飛ばして CodeWorks for Android 1R4 をすぐにインストールできます。
+ ランチャーからダウンロードしたバイナリ ビルドを使用する場合は、このステップを抜かして CodeWorks for Android 1R6 をすぐにインストールできます。
- 1. UE4 を Github からダウンロードして展開したら、**Setup.bat** ファイルを実行して、必要なファイルおよび **CodeWorks for Android 1R4** インストーラーをダウンロードします。
+ 1. UE4 を Github からダウンロードして展開したら、**Setup.bat** ファイルを実行して、必要なファイルおよび **CodeWorks for Android 1R6** インストーラをダウンロードします。
- 1. **Setup.bat** の実行が完了したら、以下の手順で CodeWorks for Android 1R4 を実行します。
+ 1. **Setup.bat** の実行が完了したら、以下の手順で CodeWorks for Android 1R6 を実行します。
[/region]
-1. **AndroidWorks-1R1-windows.exe** ファイルをダブルクリックしてインストール処理を開始します。
+1. **CodeWorksforAndroid-1R6-windows.exe** ファイルをダブルクリックしてインストール処理を開始します。

@@ -111,7 +111,7 @@ CodeWorks for Android 1R4 のインストール中は、インストールに問

-1. CodeWorks for Android 1R4 のダウンロードおよびインストール先を設定したら、**[Next]** ボタンをクリックします。
+1. CodeWorks for Android 1R6 のダウンロードおよびインストール先を設定したら、**[Next]** ボタンをクリックします。

@@ -119,7 +119,7 @@ CodeWorks for Android 1R4 のインストール中は、インストールに問
この設定のままデフォルト位置にしても全く問題ありません。
[/region]
-1. **CodeWorks for Android 1R4u2** がインストールされていることを確認したら、**[Next]** ボタンをクリックします。
+1. **CodeWorks for Android 1R6** がインストールされていることを確認したら、**[Next]** ボタンをクリックします。

@@ -127,18 +127,14 @@ CodeWorks for Android 1R4 のインストール中は、インストールに問

-1. 新規ウィンドウが開いて、必要な CodeWorks for Android 1R4 ツールのダウンロードおよびインストールの進捗が表示されます。
+1. 新規ウィンドウが開いて、必要な CodeWorks for Android 1R6 ツールのダウンロードおよびインストールの進捗が表示されます。
[region:note]
インターネットへ接続する必要があります。インターネットの接続速度によって数分、もしくは数時間かかる場合があります。
[/region]

-1. 必要なすべてのツールのダウンロードおよびインストールが完了すると、以下のウィンドウが表示されます。**[Next]** ボタンを押して、インストール処理を続けます。
-
- 
-
-1. **[Next]** ボタンを押して CodeWorks for Android 1R4 のインストールを続行します。
+1. **[Next]** ボタンを押して CodeWorks for Android 1R6 のインストールを続行します。

@@ -151,47 +147,46 @@ CodeWorks for Android 1R4 のインストール中は、インストールに問

[region:note]
- UE4 を Github からダウンロードした場合は、CodeWorks for Android 1R4 のインストールが終了した際に、PC あるいは Mac を再起動して環境変数が設定されてから **Setup.bat** ファイルをもう一度実行して、必要な Android 開発ファイルをダウンロードしてください。
+ UE4 を Github からダウンロードした場合は、CodeWorks for Android 1R6 のインストールが終了した際に、PC あるいは Mac を再起動して環境変数が設定されてから **Setup.bat** ファイルをもう一度実行して、必要な Android 開発ファイルをダウンロードしてください。
[/region]
[/EXCERPT:WindowsSetup]
[EXCERPT:MacOSSetup]
[REGION:note]
-CodeWorks for Android 1R4 はインストール済みで環境変数の設定がまだの場合、以下の手順はすべて抜かして、エディタから **[Edit Menu (メニューの編集)]** -> **[Project Settings (プロジェクト設定)]** -> **[Android SDK]** プロパティを使って、エディタをインストール場所に指定してください。
+CodeWorks for Android 1R6 はインストール済みで環境変数の設定がまだの場合、以下の手順はすべて抜かして、エディタから **[Edit Menu (メニューの編集)]** -> **[Project Settings (プロジェクト設定)]** -> **[Android SDK]** プロパティを使って、エディタをインストール場所に指定してください。
[/REGION]
[region:warning]
-CodeWorks for Android 1R4 のインストール中は、インストールに問題が発生しないように、エディタとランチャーを閉じることをお勧めします。
+CodeWorks for Android 1R6 のインストール中は、インストールに問題が発生しないように、エディタとランチャーを閉じることをお勧めします。
[/region]
-CodeWorks for Android 1R4 を Mac にインストールするには、Java 6 と Java 7 が両方インストールされている必要があります。ご確認ください。
-以下のリンクから、適切なバージョンの Java をダウンロードおよびインストールしてください。
+CodeWorks for Android 1R6 を Mac にインストールするには、Java 8 が両方インストールされている必要があります。ご確認ください。
+以下のリンクから、Java 8 をダウンロードおよびインストールしてください。
-* **Java 6** のダウンロードは [こちら](http://support.apple.com/kb/DL1572) から行えます。
-* **Java 7** のダウンロードは [こちら](http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html) から行えます。
+* **Java 8** のダウンロードは [こちら]( http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) から行えます。
-1. CodeWorks for Android 1R4 をインストールをするには、**[Engine]** > **[Extras]** > **[Android]** フォルダを開きます。
+1. CodeWorks for Android 1R6 をインストールをするには、**[Engine]** > **[Extras]** > **[Android]** フォルダを開きます。
| インストールの種類 | 保存場所 |
| --- | --- |
- | Binary | [EngineInstallLocation]\Unreal Engine[EngineVersion]\Engine\Extras\Android |
- | GitHub | [EngineSyncLocation\UE4\Engine\Extras\Android |
+ | Binary | [EngineInstallLocation]\Unreal Engine[EngineVersion]\Engine\Extras\AndroidWorks\Mac |
+ | GitHub | [EngineSyncLocation\UE4\Engine\Extras\AndroidWorks\Mac |
[region:note]
- **Github** から UE4 をダウンロードする場合は、まず次のステップを完了しないと CodeWorks for Android 1R4 インストーラーを実行できません。
+ **Github** から UE4 をダウンロードする場合は、まず次のステップを完了しないと CodeWorks for Android 1R6 インストーラを実行できません。
以下は、UE4 ソースコードを Githum からダウンロードした Windows と Mac の入った PC 向けの手順になりますのでご注意ください。
- ランチャーからダウンロードしたバイナリ ビルドを使用する場合は、このステップを抜かして CodeWorks for Android 1R4 をすぐにインストールできます。
+ ランチャーからダウンロードしたバイナリ ビルドを使用する場合は、このステップを抜かして CodeWorks for Android 1R6 をすぐにインストールできます。
- 1. UE4 を Github からダウンロードして展開したら、**Setup.command** ファイルを実行して、必要なファイルおよび CodeWorks for Android 1R4 インストーラーをダウンロードします。
+ 1. UE4 を Github からダウンロードして展開したら、**Setup.command** ファイルを実行して、必要なファイルおよび CodeWorks for Android 1R6 インストーラをダウンロードします。
- 1. **Setup.command** の実行が完了したら、以下の手順で CodeWorks for Android 1R4 を実行します。
+ 1. **Setup.command** の実行が完了したら、以下の手順で CodeWorks for Android 1R6 を実行します。
[/region]
-1. ** CodeWorks for Android 1R4-osx.dmg** をダブルクリックして、CodeWorks for Android 1R4 インストーラーをロードします。
+1. ** CodeWorks for Android 1R6-osx.dmg** をダブルクリックして、CodeWorks for Android 1R6 インストーラをロードします。

-1. CodeWorks for Android 1R4 インストーラ アイコンをダブルクリックしてインストール処理を開始します。
+1. CodeWorks for Android 1R6 インストーラ アイコンをダブルクリックしてインストール処理を開始します。

@@ -203,7 +198,7 @@ CodeWorks for Android 1R4 を Mac にインストールするには、Java 6 と

-1. CodeWorks for Android 1R4 のインストール先を指定して **[Next]** ボタンを押します。
+1. CodeWorks for Android 1R6 のインストール先を指定して **[Next]** ボタンを押します。
[region:note]
この設定のままデフォルト位置にしても全く問題ありません。
@@ -211,7 +206,7 @@ CodeWorks for Android 1R4 を Mac にインストールするには、Java 6 と

-1. Android 1R4 Component Manager が表示されたら、**[Next]** ボタンを押してダウンロードとインストール処理を開始します。
+1. Android 1R6 Component Manager が表示されたら、**[Next]** ボタンを押してダウンロードとインストール処理を開始します。

@@ -219,30 +214,51 @@ CodeWorks for Android 1R4 を Mac にインストールするには、Java 6 と

-1. Android 1R4 Component Manager が必要なツールのダウンロードとインストールを開始します。
+1. Android 1R6 Component Manager が必要なツールのダウンロードとインストールを開始します。
[region:note]
インターネットへ接続する必要があります。インターネットの接続速度によって数分、もしくは数時間かかる場合があります。
[/region]
- 
1. 必要なすべてのツールのダウンロードおよびインストールが完了すると、以下のウィンドウが表示されます。**[Next]** ボタンを押して続けます。

-1. **[Finish (終了)]** ボタンを押して、CodeWorks for Android 1R4 のインストールを完了します。
+1. **[Finish (終了)]** ボタンを押して、CodeWorks for Android 1R6 のインストールを完了します。

[region:note]
- UE4 を Github からダウンロードした場合は、CodeWorks for Android 1R4 のインストールが終了した際に、Mac を再起動して環境変数が設定されてから **Setup.command** ファイルをもう一度実行して、必要な Android 開発ファイルをダウンロードしてください。
+ UE4 を Github からダウンロードした場合は、CodeWorks for Android 1R6 のインストールが終了した際に、Mac を再起動して環境変数が設定されてから **Setup.command** ファイルをもう一度実行して、必要な Android 開発ファイルをダウンロードしてください。
[/region]
+Once CodeWorks for Android 1R6 のインストールが完了したら、以下の操作をして Bash ファイルを編集する必要があります。
+
+1. Mac Terminal を開きます。
+
+ 
+
+1. Terminal に **「nano ~/.bash_profile」** とタイプします。
+
+ 
+
+1. ファイルの最下部までスクロールし、**export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home** を追加します。
+
+ 
+
+ [region:note]
+ 上記はデフォルト パスです。別の場所へインストールした場合は、パスが **jdk1.8.0_121.jdk/Contents/Home** に指定されていることを確認してください。
+ [/region]
+
+1. **CTRL + X** を押して Bash ファイルを閉じ、**Y** キーを押して変更を保存してから **Enter** で変更を確定し、最後に Mac を再起動します。
+
+1. Mac を再起動したら、Terminal を開いて **「Monitor」** と入力して Enter キーを押します。設定がすべて正常に行われると、Android Device Monitor スプラッシュスクリーンは以下のようになります。
+
+ 
+
[/EXCERPT:MacOSSetup]
[EXCERPT:LinuxSetup]
-本文書は現在作成中です。現在公開されている文書については、
-[新規および更新リソース](https://docs.unrealengine.com/latest/INT/Updates/index.html) を参照してください。
-
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1#AndroidLinux_1]
[/EXCERPT:LinuxSetup]
-->
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/1/AndroidQS_1.KOR.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/1/AndroidQS_1.KOR.udn
index 2852fc95ce2d..35ac6dfa48ea 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/1/AndroidQS_1.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/1/AndroidQS_1.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
Title:1. 필수 안드로이드 셋업
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
-Description: CodeWorks for Android 1R4 SDK 설치 방법 안내입니다.
-Version:4.12
+Description: CodeWorks for Android 1R6 SDK 설치 방법 안내입니다.
+Version:4.16
Skilllevel:Intermediate
Tags:Android
type:multi-step
@@ -15,9 +15,9 @@ Checkpoint:AndroidQS
[nav]
## 단계
-안드로이드 개발을 시작하기에 앞서 먼저 CodeWorks for Android 1R4 를 설치해야 합니다.
-CodeWorks for Android 1R4 는 안드로이드 디바이스에 디플로이하기 위해 필요한 프로그램과 코드가 전부 설치되도록 도와줄 것입니다.
-여기서는 개발 PC 에 CodeWorks for Android 1R4 를 설치하는 법에 대해 다루겠습니다.
+안드로이드 개발을 시작하기에 앞서 먼저 CodeWorks for Android 1R6 를 설치해야 합니다.
+CodeWorks for Android 1R6 는 안드로이드 디바이스에 디플로이하기 위해 필요한 프로그램과 코드가 전부 설치되도록 도와줄 것입니다.
+여기서는 개발 PC 에 CodeWorks for Android 1R6 를 설치하는 법에 대해 다루겠습니다.
%Globals:osselect_linux%
@@ -70,17 +70,17 @@ CodeWorks for Android 1R4 는 안드로이드 디바이스에 디플로이하기
[EXCERPT:WindowsSetup]
[REGION:note]
-이미 CodeWorks for Android 1R4 가 설치되어 있는데 환경 변수는 없어진 경우, 이 단계는 전부 건너뛰고 에디터의 **편집 메뉴** -> **프로젝트 세팅** -> **Android SDK** 프로퍼티에서 설치 위치를 지정해 주기만 해도 됩니다.
+이미 CodeWorks for Android 1R6 가 설치되어 있는데 환경 변수는 없어진 경우, 이 단계는 전부 건너뛰고 에디터의 **편집 메뉴** -> **프로젝트 세팅** -> **Android SDK** 프로퍼티에서 설치 위치를 지정해 주기만 해도 됩니다.
[/REGION]
[region:warning]
-CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설치할 것을 강력 추천합니다. 그래야 설치에 문제가 없습니다.
+CodeWorks for Android 1R6 는 에디터와 런처 둘 다 닫힌 상태로 설치할 것을 강력 추천합니다. 그래야 설치에 문제가 없습니다.
[/region]
-1. CodeWorks for Android 1R4 를 설치하려면 **Engine** > **Extras** > **Android** 폴더로 이동합니다.
+1. CodeWorks for Android 1R6 를 설치하려면 **Engine** > **Extras** > **Android** 폴더로 이동합니다.
[region:note]
- CodeWorks for Android 1R4 인스톨러의 정상 완료를 위해서는 Visual Studio 가 설치되어 있어야 합니다. 지원되는 버전은 2010, 2012, 2013 (2015 제외)입니다 .
+ CodeWorks for Android 1R6 인스톨러의 정상 완료를 위해서는 Visual Studio 가 설치되어 있어야 합니다. 지원되는 버전은 2010, 2012, 2013 (2015 제외)입니다 .
[/region]
| 설치 유형 | 위치 |
@@ -89,17 +89,17 @@ CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설
| GitHub | [EngineSyncLocation\UE4\Engine\Extras\Android |
[region:note]
- UE4 를 **Github** 에서 다운로드한 경우, CodeWorks for Android 1R4 인스톨러 실행 전 다음과 같은 작업을 해 줘야 합니다.
+ UE4 를 **Github** 에서 다운로드한 경우, CodeWorks for Android 1R6 인스톨러 실행 전 다음과 같은 작업을 해 줘야 합니다.
GitHub 에서 UE4 소스 코드를 다운로드했으면 윈도우 기반 PC 든 맥이든 양쪽에 적용된다는 점 참고 바랍니다.
- 런처에서 다운로드한 바이너리 빌드를 사용중이라면 이 부분은 건너뛰고 바로 CodeWorks for Android 1R4 설치로 들어가시면 됩니다.
+ 런처에서 다운로드한 바이너리 빌드를 사용중이라면 이 부분은 건너뛰고 바로 CodeWorks for Android 1R6 설치로 들어가시면 됩니다.
- 1. GitHub 에서 UE4 다운로드를 마치고 압축을 풀었으면, **Setup.bat** 파일을 실행하여 필수 파일과 **CodeWorks for Android 1R4** 인스톨러를 다운로드합니다.
+ 1. GitHub 에서 UE4 다운로드를 마치고 압축을 풀었으면, **Setup.bat** 파일을 실행하여 필수 파일과 **CodeWorks for Android 1R6** 인스톨러를 다운로드합니다.
- 1. **Setup.bat** 실행이 완료되면 CodeWorks for Android 1R4 인스톨러를 실행하고 아래 안내를 따릅니다.
+ 1. **Setup.bat** 실행이 완료되면 CodeWorks for Android 1R6 인스톨러를 실행하고 아래 안내를 따릅니다.
[/region]
-1. **CodeWorksforAndroid-1R4-windows.exe** 파일을 더블클릭하여 설치 프로세스를 시작합니다.
+1. **CodeWorksforAndroid-1R6-windows.exe** 파일을 더블클릭하여 설치 프로세스를 시작합니다.

@@ -111,7 +111,7 @@ CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설

-1. CodeWorks for Android 1R4 를 다운로드하고 설치할 위치를 설정한 뒤 **다음** 버튼을 누릅니다.
+1. CodeWorks for Android 1R6 를 다운로드하고 설치할 위치를 설정한 뒤 **다음** 버튼을 누릅니다.

@@ -119,7 +119,7 @@ CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설
이 위치는 기본 위치로 놔둬도 전혀 상관 없습니다.
[/region]
-1. **CodeWorks for Android 1R4u2** 설치중인지 확인한 뒤 **다음** 버튼을 누릅니다.
+1. **CodeWorks for Android 1R6** 설치중인지 확인한 뒤 **다음** 버튼을 누릅니다.

@@ -127,18 +127,14 @@ CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설

-1. 필수 CodeWorks for Android 1R4 툴의 다운로드 및 설치 진행상황이 표시되는 창이 새로 뜹니다.
+1. 필수 CodeWorks for Android 1R6 툴의 다운로드 및 설치 진행상황이 표시되는 창이 새로 뜹니다.
[region:note]
이 부분의 완료를 위해서는 인터넷 연결이 필요합니다. 그 인터넷 연결 속도에 따라 몇 분에서 몇 시간까지 걸릴 수 있습니다.
[/region]

-1. 필수 툴의 다운로드 및 설치가 전부 끝나면 다음 창이 표시됩니다. **다음** 버튼을 눌러 설치 프로세스를 계속합니다.
-
- 
-
-1. 이제 **다음** 버튼을 눌러 CodeWorks for Android 1R4 설치를 완료합니다.
+1. 이제 **다음** 버튼을 눌러 CodeWorks for Android 1R6 설치를 완료합니다.

@@ -151,47 +147,46 @@ CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설

[region:note]
- GitHub 에서 UE4 를 다운로드한 경우, CodeWorks for Android 1R4 가 설치를 완료하면 환경 변수 설정을 위해 PC 또는 맥을 재시작하고 **Setup.bat** 파일을 한 번 더 실행하여 필수 안드로이드 파일을 다운로드합니다.
+ GitHub 에서 UE4 를 다운로드한 경우, CodeWorks for Android 1R6 가 설치를 완료하면 환경 변수 설정을 위해 PC 또는 맥을 재시작하고 **Setup.bat** 파일을 한 번 더 실행하여 필수 안드로이드 파일을 다운로드합니다.
[/region]
[/EXCERPT:WindowsSetup]
[EXCERPT:MacOSSetup]
[REGION:note]
-이미 CodeWorks for Android 1R4 가 설치되어 있는데 환경 변수는 없어진 경우, 이 단계는 전부 건너뛰고 에디터의 **편집 메뉴** -> **프로젝트 세팅** -> **Android SDK** 프로퍼티에서 설치 위치를 지정해 주기만 해도 됩니다.
+이미 CodeWorks for Android 1R6 가 설치되어 있는데 환경 변수는 없어진 경우, 이 단계는 전부 건너뛰고 에디터의 **편집 메뉴** -> **프로젝트 세팅** -> **Android SDK** 프로퍼티에서 설치 위치를 지정해 주기만 해도 됩니다.
[/REGION]
[region:warning]
-CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설치할 것을 강력 추천합니다. 그래야 설치에 문제가 없습니다.
+CodeWorks for Android 1R6 는 에디터와 런처 둘 다 닫힌 상태로 설치할 것을 강력 추천합니다. 그래야 설치에 문제가 없습니다.
[/region]
-맥에 CodeWorks for Android 1R4 설치 전 Java 6 와 Java 7 둘 다 설치되어 있는지 확인해야 합니다.
-아래 링크를 사용해서 올바른 Java 버전을 다운로드 및 설치하도록 하세요.
+맥에 CodeWorks for Android 1R6 설치 전 Java 8 이 설치되어 있는지 확인해야 합니다.
+아래 링크를 사용해서 Java 8 을 다운로드 및 설치하도록 하세요.
-* **Java 6** 다운로드는 [여기서](http://support.apple.com/kb/DL1572) 가능합니다.
-* **Java 7** 다운로드는 [여기서](http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html) 가능합니다.
+* **Java 8** 은 [여기서]( http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) 다운로드할 수 있습니다.
-1. CodeWorks for Android 1R4 를 설치하려면 **Engine** > **Extras** > **Android** 폴더로 이동합니다.
+1. CodeWorks for Android 1R6 를 설치하려면 **Engine** > **Extras** > **Android** 폴더로 이동합니다.
| 설치 유형 | 위치 |
| ------------ | ---------|
- | 바이너리 | [EngineInstallLocation]\Unreal Engine[EngineVersion]\Engine\Extras\Android |
- | GitHub | [EngineSyncLocation\UE4\Engine\Extras\Android |
+ | Binary | [EngineInstallLocation]\Unreal Engine[EngineVersion]\Engine\Extras\AndroidWorks\Mac |
+ | GitHub | [EngineSyncLocation\UE4\Engine\Extras\AndroidWorks\Mac |
[region:note]
- UE4 를 **Github** 에서 다운로드한 경우, CodeWorks for Android 1R4 인스톨러 실행 전 다음과 같은 작업을 해 줘야 합니다.
+ UE4 를 **Github** 에서 다운로드한 경우, CodeWorks for Android 1R6 인스톨러 실행 전 다음과 같은 작업을 해 줘야 합니다.
GitHub 에서 UE4 소스 코드를 다운로드했으면 윈도우 기반 PC 든 맥이든 양쪽에 적용된다는 점 참고 바랍니다.
- 런처에서 다운로드한 바이너리 빌드를 사용중이라면 이 부분은 건너뛰고 바로 CodeWorks for Android 1R4 설치로 들어가시면 됩니다.
+ 런처에서 다운로드한 바이너리 빌드를 사용중이라면 이 부분은 건너뛰고 바로 CodeWorks for Android 1R6 설치로 들어가시면 됩니다.
- 1. GitHub 에서 UE4 다운로드를 마치고 압축을 풀었으면, **Setup.command** 파일을 실행하여 필수 파일과 **CodeWorks for Android 1R4** 인스톨러를 다운로드합니다.
+ 1. GitHub 에서 UE4 다운로드를 마치고 압축을 풀었으면, **Setup.command** 파일을 실행하여 필수 파일과 **CodeWorks for Android 1R6** 인스톨러를 다운로드합니다.
- 1. **Setup.command** 실행이 완료되면 CodeWorks for Android 1R4 인스톨러를 실행하고 아래 안내를 따릅니다.
+ 1. **Setup.command** 실행이 완료되면 CodeWorks for Android 1R6 인스톨러를 실행하고 아래 안내를 따릅니다.
[/region]
-1. **CodeWorks for Android 1R4-osx.dmg.dmg** 파일을 더블클릭하여 설치 프로세스를 시작합니다.
+1. **CodeWorks for Android 1R6-osx.dmg.dmg** 파일을 더블클릭하여 설치 프로세스를 시작합니다.

-1. CodeWorks for Android 1R4 인스톨러 아이콘을 더블클릭하여 설치 프로세스를 시작합니다.
+1. CodeWorks for Android 1R6 인스톨러 아이콘을 더블클릭하여 설치 프로세스를 시작합니다.

@@ -203,7 +198,7 @@ CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설

-1. CodeWorks for Android 1R4 를 다운로드하고 설치할 위치를 설정한 뒤 **다음** 버튼을 누릅니다.
+1. CodeWorks for Android 1R6 를 다운로드하고 설치할 위치를 설정한 뒤 **다음** 버튼을 누릅니다.
[region:note]
이 위치는 기본 위치로 놔둬도 전혀 상관 없습니다.
@@ -211,7 +206,7 @@ CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설

-1. CodeWorks for Android 1R4 Component Manager 가 표시되면 **다음** 버튼을 눌러 다운로드 및 설치 프로세스를 시작합니다.
+1. CodeWorks for Android 1R6 Component Manager 가 표시되면 **다음** 버튼을 눌러 다운로드 및 설치 프로세스를 시작합니다.

@@ -219,30 +214,51 @@ CodeWorks for Android 1R4 는 에디터와 런처 둘 다 닫힌 상태로 설

-1. CodeWorks for Android 1R4 Component Manager 가 필수 툴 다운로드 및 설치를 시작합니다.
+1. CodeWorks for Android 1R6 Component Manager 가 필수 툴 다운로드 및 설치를 시작합니다.
[region:note]
이 부분의 완료를 위해서는 인터넷 연결이 필요합니다. 그 인터넷 연결 속도에 따라 몇 분에서 몇 시간까지 걸릴 수 있습니다.
[/region]
- 
1. 필수 툴의 다운로드 및 설치가 전부 끝나면 다음 창이 표시됩니다. **다음** 버튼을 눌러 설치 프로세스를 계속합니다.

-1. 이제 **완료** 버튼을 눌러 CodeWorks for Android 1R4 설치를 완료합니다.
+1. 이제 **완료** 버튼을 눌러 CodeWorks for Android 1R6 설치를 완료합니다.

[region:note]
- GitHub 에서 UE4 를 다운로드한 경우, CodeWorks for Android 1R4 가 설치를 완료하면 환경 변수 설정을 위해 PC 또는 맥을 재시작하고 **Setup.command** 파일을 한 번 더 실행하여 필수 안드로이드 파일을 다운로드합니다.
+ GitHub 에서 UE4 를 다운로드한 경우, CodeWorks for Android 1R6 가 설치를 완료하면 환경 변수 설정을 위해 PC 또는 맥을 재시작하고 **Setup.command** 파일을 한 번 더 실행하여 필수 안드로이드 파일을 다운로드합니다.
[/region]
+CodeWorks for Android 1R6 설치가 완료되면, 다음과 같이 Bash 파일을 편집해 줘야 합니다:
+
+1. Mac Terminal 을 엽니다.
+
+ 
+
+1. Terminal 에 다음과 같이 입력합니다: **nano ~/.bash_profile**.
+
+ 
+
+1. 파일 끝으로 내려가 **export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home** 를 추가합니다.
+
+ 
+
+ [region:note]
+ 위 경로는 기본 경로이며, 다른 곳에 설치한 경우 경로가 **jdk1.8.0_121.jdk/Contents/Home** 를 가르키도록 해줘야 합니다.
+ [/region]
+
+1. **CTRL + X** 를 눌러 bash 를 빠져나간 뒤 **Y** 를 눌러 변경사항을 저장하고 **Enter** 키를 쳐 변경사항을 확인, 마지막으로 Mac 을 재시작합니다.
+
+1. Mac 이 재시작되면 Terminal 을 연 뒤 **Monitor** 라 입력하고 엔터를 칩니다. 모두 제대로 구성되었으면 Android Device Monitor 스플래시 화면이 보일 것입니다.
+
+ 
+
[/EXCERPT:MacOSSetup]
[EXCERPT:LinuxSetup]
-이 문서는 현재 작업중입니다. 현재 공개된 문서를 확인하려면 [New and Updated Resources](https://docs.unrealengine.com/latest/INT/Updates/index.html)
-페이지를 참고하세요.
-
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1#AndroidLinux_1]
[/EXCERPT:LinuxSetup]
-->
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.INT.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.INT.udn
index 373c03ca7b8f..6ad2c930ffdd 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.INT.udn
@@ -2,7 +2,7 @@ Availability:Public
Title:2. Set Up Your Android Device
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:Set up your Android device for development.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -85,7 +85,7 @@ Now that Android Works has been installed it is now time to set up your Android
1. Tap the **Build Number** **7** times to activate developer mode.
- 
+ (w:350)
1. After the first few presses, you will see a message stating You are now **# steps** away from becoming a developer.
@@ -95,26 +95,26 @@ Now that Android Works has been installed it is now time to set up your Android
1. Navigate back to the **Settings** menu and select **Developer Options** which should now available.
- 
+ (w:350)
1. In the **Developer Options** menu, enable **USB debugging** by tapping on it with your finger.
- 
+ (w:350)
1. When prompted press the **OK** button to enable USB debugging.
- 
+ (w:350)
1. You can tell USB Debugging has been enabled as there will be a green checkmark in the checkmark box next to USB debugging.
- 
+ (w:350)
-1. Disconnect your Android device from USB and then immediately plug it back in.
- After the device is recognized by the PC the following message will appear on your Android device asking you if you want to allow this PC to talk to your device.
- Press the checkmark box that says **Always allow this computer** and the press the **OK** button.
+1. Disconnect your Android device from USB and then immediately plug it back in. After the device is recognized by the PC the following message will appear on your Android device
+asking you if you want to allow this PC to talk to your device. A message box will ask what you'd like to use the USB connection to do. Press the checkmark box that says **Always
+allow this computer** and the press the **OK** button.
+
+ (w:350)
- 
-
1. To verify that your device is set up properly, open a command prompt by pressing the **Windows + R** keys and typing **cmd** in the **Run** window.

@@ -157,37 +157,36 @@ Now that Android Works has been installed it is now time to set up your Android
1. Tap the **Build Number** **7** times to activate developer mode.
- 
+ (w:350)
1. After the first few presses, you will see a message that says, **You are now # steps away from becoming a developer**.
1. Once developer mode has been activated you will get a success message displayed on the screen similar to the one below.
- 
+ (w:350)
1. Navigate back to the **Settings menu** and select **Developer Options** which is now available.
- 
+ (w:350)
1. In the **Developer Options** menu, enable **USB debugging**.
- 
+ (w:350)
1. When prompted press the **OK** button to enable USB debugging.
- 
+ (w:350)
1. You can tell USB Debugging has been enabled as there will be a green checkmark in the checkmark box next to USB debugging.
- 
+ (w:350)
-1. Disconnect your Android device from USB and then immediately plug it back in.
- After the device is recognized by the PC the following message will appear on your Android device asking you if you want to allow this Mac to talk to your device.
- Press the checkmark box that says **Always allow this computer** and the press the **OK** button.
+1. Disconnect your Android device from USB and then immediately plug it back in. After the device is recognized by the PC the following message will appear on your Android device
+asking you if you want to allow this PC to talk to your device. A message box will ask what you'd like to use the USB connection to do. Press the checkmark box that says **Always
+allow this computer** and the press the **OK** button.
- 
-
-1. To verify that your device is set up properly, open the **Terminal app** from /Applications/Utilties.
+ (w:350)
+1. To verify that your device is setup properly, open the **Terminal app** from /Applications/Utilties.

@@ -208,14 +207,12 @@ If you do not see your device after you input the adb devices command, here are
[/EXCERPT:MacOSSetup]
[EXCERPT:LinuxSetup]
-We're currently in the process of writing this documentation. Please refer to our [New and Updated Resources](https://docs.unrealengine.com/latest/INT/Updates/index.html) page to see
-which documentation is being published at this time.
-
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2#AndroidLinux_2]
[/EXCERPT:LinuxSetup]
-->
## End Result
-When completed you will now have an Android based smartphone that is ready for your UE4 project to be deployed to and run on.
+When completed you will now have an Android-based smartphone that is ready for your UE4 project to be deployed to and run on.
[nav]
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.JPN.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.JPN.udn
index 4591c39c684f..a210533de3df 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.JPN.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
-Title:2.Android デバイスを設定する
+Title:2.Android デバイスの設定
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:Android デバイスを開発用に設定する
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -12,7 +12,7 @@ parent:Platforms/Android/GettingStarted
order:2
Checkpoint:AndroidQS
-Android Works をインストールしたら、Android デバイスを開発で使用できるように設定します。次のセクションでは、Android デバイスを UE4 プロジェクトで使用するための設定方法を説明します。
+Android Works をインストールしたら、Android デバイスを開発用に設定します。次のセクションでは、Android デバイスを UE4 プロジェクトで使用するための設定方法を説明します。
[nav]
@@ -68,7 +68,7 @@ Android Works をインストールしたら、Android デバイスを開発で
1. Android デバイスを USB で開発用 PC に接続します。
-1. デバイス ドライバ ソフトウェアは自動的にインストールされますが、そうでない場合は、[Android の OEM USB ドライバ](http://developer.android.com/tools/extras/oem-usb.html) ページでドライバ インストール リンクと追加情報を確認してください。
+1. デバイス ドライバ ソフトウェアは自動的にインストールされます。インストールされない場合は、[Android の OEM USB ドライバ](http://developer.android.com/tools/extras/oem-usb.html) ページでドライバ インストール リンクと追加情報を確認してください。
1. Android デバイスの **[Settings]** アプリケーションを開きます。
@@ -86,9 +86,9 @@ Android Works をインストールしたら、Android デバイスを開発で
1. **[Build Number]** を **7** 回たたきます。
- 
+ (w:350)
-1. 数回たたいた段階で、「You are now **# steps **away from becoming a developer (デベロッパーになるまであと**# ステップ **)」 というメッセージが表示されます。
+1. 数回たたくと、「You are now **# steps **away from becoming a developer (デベロッパーになるまであと **# ステップ**)」 というメッセージが表示されます。
1. Developer Mode が起動すると、正常な処理を示す以下のメッセージが表示されます。
@@ -96,27 +96,27 @@ Android Works をインストールしたら、Android デバイスを開発で
1. 再度 **[Settings]** メニューへ戻ると **[Developer Options]** が利用可能になっているので、選択します。
- 
+ (w:350)
-1. **[Developer Options]** メニューの **USB デバッグ** を指で 2 回叩いて有効にします。
+1. **[Developer Options]** メニューの **USB デバッグ** を指で 2 回たたいて有効にします。
- 
+ (w:350)
1. 求められたら **[Ok]** ボタンをクリックして USB デバッグを有効にしてください。
- 
+ (w:350)
1. USB デバッグの横のチェックボックスの緑が有効になっている印です。
- 
+ (w:350)
-1. Android デバイスを USB から一旦取り外して、すぐに再度接続してください。
- PC がデバイスを認識したら、この PC にデバイスと通信を許可するかどうかのメッセージが Android デバイス上に表示されます。
- **[Always allow this computer (常に許可)]** を押して、**[OK]** ボタンをクリックします。
+1. Android デバイスを USB から一旦取り外して、すぐに再度接続してください。PC がデバイスを認識したら、
+この Mac にデバイスとの通信許可に関する次のメッセージが Android デバイス上に表示されます。 メッセージ ボックスは USB 接続をどのようにするか尋ねるので、**[Always allow this computer (常に許可)]** を押して、
+**[OK]** ボタンをクリックします。
- 
+ (w:350)
-1. デバイスの設定が適切か確認するために **Windows + R** キーでコマンド プロンプトを開き、**[Run (実行)]** ウィンドウに **「cmd」** とタイプします。
+ 1. デバイスの設定が適切か確認するために **Windows + R** キーでコマンド プロンプトを開き、**[Run (実行)]** ウィンドウに **「cmd」** とタイプします。

@@ -126,7 +126,7 @@ Android Works をインストールしたら、Android デバイスを開発で
[region:note]
- adb devices と打ち込んでも自分のデバイスが確認できない場合は、次の方法で PC が Android デバイスを認識できるか試してみてください。
+ 「adb devices」と打ち込んでも自分のデバイスが確認できない場合は、次の方法で PC が Android デバイスを認識できるか試してみてください。
* デバイスが表示されているのに権限がないと表示される場合は、デバイスに PC に認証させるかどうかを尋ねさせる必要があります。
* デバイスを表示させるためには、デバイスを一旦取り外して再接続しなければならない場合があります。
* [Always allow (常に許可)] チェックボックスにチェックを入れておくことを推奨します。
@@ -144,62 +144,61 @@ Android Works をインストールしたら、Android デバイスを開発で
1. Android デバイスの **[Settings (セッティング)]** アプリケーションを開きます。
1. **[Developer Options (デベロッパー オプション)]** をタップして [Developer Options] メニューを開きます。
- [REGION:note]
+ [REGION:note]
このメニューが表示されない場合は、デバイスの [Developer Options] を有効にしてください。
デベロッパー オプションの詳細は、[Android で使用しているハードウェア](http://developer.android.com/tools/device.html) ページをご覧ください。
[/REGION]
-1. 下へスクロールして **[About Phone]** を選びます。Android デバイスによっては、このオプションは **[About Device]**、**[About Tablet]**、または **[About Shield]** となる場合もあります。
+1. 下へスクロールして **[About Phone]** を選びます。Android デバイスによっては、このオプションは **[About Device]**、**[About Tablet]**、または **[About Shield]** となっている場合もあります。
[REGION: note]
- 注記:** 新しい Andorid のバージョンでは **[More]** セクションにある場合があります。
+ 注記:新しい Andorid のバージョンでは **[More]** セクションにある場合があります。
[/REGION]
1. **[Build Number]** を **7** 回たたきます。
- 
+ (w:350)
-1. 数回たたいた段階で、「**You are now # steps away from becoming a developer (デベロッパーになるまであと # ステップ )**」 というメッセージが表示さrます。
+1. 数回たたいた段階で、「**You are now # steps away from becoming a developer (デベロッパーになるまであと # ステップ)**」というメッセージが表示さrます。
1. Developer Mode が起動すると、以下のようなメッセージが表示されて、通常に処理されたことが分かります。
- 
+ (w:350)
1. 再度 **[Settings]** メニューへ戻ると **[Developer Options]** が利用可能な状態になっているので選択します。
- 
+ (w:350)
1. **[Developer Options]** メニューの **[USB debugging]** を有効にします。
- 
+ (w:350)
-1. 求められたら **[Ok]** ボタンをクリックして USB デバッグを有効にしてください。
+1. 求められたら **[OK]** ボタンをクリックして USB デバッグを有効にしてください。
- 
+ (w:350)
1. USB デバッグの横のチェックボックスの緑が有効になっている印です。
- 
+ (w:350)
-1. Android デバイスを USB から一旦取り外して、すぐに再度接続してください。
- PC がデバイスを認識したら、この Mac にデバイスとの通信wp許可するかどうかのメッセージが Android デバイス上に表示されます。
- **[Always allow this computer (常に許可)]** を押して、**[OK]** ボタンをクリックします。
-
- 
+1. Android デバイスを USB から一旦取り外して、すぐに再度接続してください。PC がデバイスを認識したら、
+この Mac にデバイスとの通信許可に関する次のメッセージが Android デバイス上に表示されます。 メッセージ ボックスは USB 接続をどのようにするか尋ねるので、**[Always allow this computer (常に許可)]** を押して、
+**[OK]** ボタンをクリックします。
+ (w:350)
1. デバイスの設定が適切か確認するために、/Applications/Utilties から **Terminal app** を開きます。

-1. コマンド プロンプトに **ADB devices** とタイプすると、Mac に接続されているすべてのデバイスが表示されます。
+1. コマンド プロンプトに **「ADB devices」** と打ち込むと、Mac に接続されているすべてのデバイスが表示されます。

[region:note]
-adb devices と打ち込んでも自分のデバイスが確認できない場合は、次の方法で PC が Android デバイスを認識できるか試してみてください。
-* デバイスが表示されているのに権限がないと表示される場合は、デバイスに PC に認証させるかどうかを尋ねさせる必要があります。
+「adb devices」と打ち込んでも自分のデバイスが確認できない場合は、次の方法で PC が Android デバイスを認識できるか試してみてください。
+* デバイスが表示されても権限がないと表示される場合は、デバイスに PC に認証させるかどうかを尋ねさせる必要があります。
* デバイスを表示させるためには、デバイスを一旦取り外して再接続しなければならない場合があります。
* [Always allow (常に許可)] チェックボックスにチェックを入れておくことを推奨します。
* **Camera (PTP)** ではなく **Media Device (MTP)** として接続されている場合、正しく設定されているデバイスが表示されない場合があります。この段階でご自分のデバイスが ***adb devices*** として全く表示されない場合は、**Camera (PTP)** オプションを選択してください。
@@ -209,9 +208,7 @@ adb devices と打ち込んでも自分のデバイスが確認できない場
[/EXCERPT:MacOSSetup]
[EXCERPT:LinuxSetup]
-本文書は現在作成中です。現在公開されている文書については、
-[新規および更新リソース](https://docs.unrealengine.com/latest/INT/Updates/index.html) を参照してください。
-
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2#AndroidLinux_2]
[/EXCERPT:LinuxSetup]
-->
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.KOR.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.KOR.udn
index 59888e296278..a74c445d39ed 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/2/AndroidQS_2.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
Title:2. 안드로이드 디바이스 셋업
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:안드로이드 디바이스 개발용으로 셋업하기 입니다.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -86,7 +86,7 @@ Android Works 가 설치되었으니 안드로이드 디바이스를 개발에
1. Build Number 를 7 회 탭하여 개발자 모드를 활성화시킵니다.
- 
+ (w:350)
1. 처음 몇 번 탭하고 나면 You are now **# steps** away from becoming a developer. 메시지가 뜰 것입니다.
@@ -96,26 +96,26 @@ Android Works 가 설치되었으니 안드로이드 디바이스를 개발에
1. Settings 메뉴로 되돌아가 사용가능해진 Developer Options 를 선택합니다.
- 
+ (w:350)
1. Developer Options 메뉴에서 USB 디버깅을 탭하여 켭니다.
- 
+ (w:350)
1. 묻는 창이 뜨면 OK 를 선택하여 USB 디버깅을 켭니다.
- 
+ (w:350)
1. USB 디버깅 활성화 여부는 그 옆의 체크박스에 초록색 체크표시가 있는 것을 보고 알 수 있습니다.
- 
+ (w:350)
-1. USB 에서 안드로이드 디바이스를 뽑은 다음 바로 다시 꽂습니다.
- 디바이스를 PC 에서 인식한 이후 안드로이드 디바이스에 이 PC 와의 통신을 허용하겠냐는 메시지가 뜹니다.
- **이 컴퓨터 항상 허용** 이라는 체크박스를 누른 다음 **OK** 버튼을 누릅니다.
+1. USB 에서 안드로이드 디바이스를 뽑은 다음 바로 다시 꽂습니다. 디바이스를 PC 에서 인식한 이후 안드로이드 디바이스에
+이 PC 와의 통신을 허용하겠냐는 메시지가 뜹니다. 메시지 박스에서 USB 연결에 무엇을 사용하겠느냐고 물어옵니다. **이 컴퓨터 항상 허용** 이라는 체크박스를 누른 다음
+**OK** 버튼을 누릅니다.
+
+ (w:350)
- 
-
1. 디바이스 셋업이 제대로 되었는지 확인하기 위해, 윈도우+R 키를 눌러 실행 창에 cmd 라 입력합니다.

@@ -158,36 +158,35 @@ Android Works 가 설치되었으니 안드로이드 디바이스를 개발에
1. Build Number 를 7 회 탭합니다.
- 
+ (w:350)
1. 처음 몇 번 탭하고 나면 **You are now # steps away from becoming a developer.** 메시지가 뜰 것입니다.
1. Developer Mode 가 활성화되면 아래와 같은 성공 메시지가 화면에 뜰 것입니다.
- 
+ (w:350)
1. Settings 메뉴로 되돌아가 사용가능해진 Developer Options 를 선택합니다.
- 
+ (w:350)
1. Developer Options 메뉴에서 USB 디버깅을 켭니다.
- 
+ (w:350)
1. 묻는 창이 뜨면 OK 를 선택하여 USB 디버깅을 켭니다.
- 
+ (w:350)
1. USB 디버깅 활성화 여부는 그 옆의 체크박스에 초록색 체크표시가 있는 것을 보고 알 수 있습니다.
- 
+ (w:350)
1. USB 에서 안드로이드 디바이스를 뽑은 다음 바로 다시 꽂습니다.
- 디바이스를 PC 에서 인식한 이후 안드로이드 디바이스에 이 PC 와의 통신을 허용하겠냐는 메시지가 뜹니다.
- **이 컴퓨터 항상 허용** 이라는 체크박스를 누른 다음 **OK** 버튼을 누릅니다.
+이 PC 와의 통신을 허용하겠냐는 메시지가 뜹니다. 메시지 박스에서 USB 연결에 무엇을 사용하겠느냐고 물어옵니다. **이 컴퓨터 항상 허용** 이라는 체크박스를 누른 다음
+**OK** 버튼을 누릅니다.
- 
-
+ (w:350)
1. 디바이스 셋업이 제대로 되었는지 확인하기 위해, /Applications/Utilties 에서 **Terminal app** 을 엽니다.

@@ -209,9 +208,7 @@ Android Works 가 설치되었으니 안드로이드 디바이스를 개발에
[/EXCERPT:MacOSSetup]
[EXCERPT:LinuxSetup]
-이 문서는 현재 작업중입니다. 현재 공개된 문서를 확인하려면 [New and Updated Resources](https://docs.unrealengine.com/latest/INT/Updates/index.html) 페이지를
-참고해 주세요.
-
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2#AndroidLinux_2]
[/EXCERPT:LinuxSetup]
-->
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.INT.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.INT.udn
index b011bd9308be..f6645a393efe 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.INT.udn
@@ -2,7 +2,7 @@ Availability:Public
Title:3. Create Your Project
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:Start a template project
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.JPN.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.JPN.udn
index b26c5d259e6e..bb049983af33 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.JPN.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3477690
Availability:Public
-Title:3.プロジェクトを作成する
+Title:3.プロジェクトの作成
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:テンプレート プロジェクトを開始する
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -21,7 +21,7 @@ Blueprint Third Person template を用いてブループリント ベースの
-1. **[Unreal Projects Browser]** ウィンドウから、 「EmissiveMaterials」 という名前の FPS プロジェクト を新規作成します。
+1. **[Unreal Projects Browser]** ウィンドウから、「EmissiveMaterials」 という名前の FPS プロジェクトを新規作成します。
* Third Person Template を使う
* ハードウェアをモバイル / タブレットに設定する
* グラフィック レベルを Scalable 3D または 2D に設定する
@@ -33,7 +33,7 @@ Blueprint Third Person template を用いてブループリント ベースの
1. 完了したら緑の **[Create Project (プロジェクトを作成)]** ボタンを押してプロジェクトを作成します。
[REGION:tip]
-この例はブループリント ベースのプロジェクトですが、C++ やブループリントなど、すべてのプロジェクト タイプを Android デバイスへパッケージ化およびデプロイできます。
+これはブループリント ベース プロジェクトの例ですが、C++ やブループリントなど、すべてのプロジェクト タイプを Android デバイスへパッケージ化およびデプロイすることができます。
[/REGION]
## 結果
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.KOR.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.KOR.udn
index 1690068d41ae..caf86e5e34b1 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/3/AndroidQS_3.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3477690
Availability:Public
Title:3. 프로젝트 생성
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:템플릿 프로젝트를 시작합니다.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.INT.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.INT.udn
index f249f2812518..d2876ffeb224 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.INT.udn
@@ -2,6 +2,7 @@ Availability:Public
Title:4. Deploy Your Level
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:Launch your level with one-click deploying.
+version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -54,16 +55,22 @@ The chart below shows you which Texture formats work with which Android based de
1. While your level is being launched on your device the progress will be displayed in the bottom right-hand corner of the screen.
When the project has been successfully deployed to your device you will see a message telling you so.
-
+
[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ afagQeEvf4Q
+ [/PARAMLITERAL]
[PARAMLITERAL:width]
640
[/PARAMLITERAL]
[PARAMLITERAL:height]
360
[/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- afagQeEvf4Q
+ [PARAMLITERAL:units]
+ px
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
[/PARAMLITERAL]
[/OBJECT]
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.JPN.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.JPN.udn
index edd90aa9cefd..f6983622b70a 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.JPN.udn
@@ -1,8 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
-Title:4.レベルをデプロイする
+Title:4.レベルのデプロイ方法
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description: ワンクリック デプロイでレベルを起動する
+version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -31,8 +32,8 @@ Android ベースのデバイスとサポートしているテクスチャ フ
どのテクスチャ フォーマットがサポートされているのか不確かな場合は、ゲームを実行して以下の操作を行うと確認できます。
1. 画面を指 4 本で一度にタップすると、ダイアログが表示されます。
- 1. これは、コンソールコマンド (stat fps などの) の入力に通常使用するダイアログ ボックスですが、ユーザーのデバイスがサポートしているフォーマットも表示します。
- 1. リストが表示されたら、これを活用してデプロイおよびパッケージングに最も適したタイプを選択します。
+ 1. このダイアログ ボックスは通常コンソールコマンド (stat fps などの) の入力に使用しますが、ユーザーのデバイスがサポートしているフォーマットも表示します。
+ 1. 表示されたリストの中からデプロイおよびパッケージングに最も適したタイプを選択します。

@@ -40,12 +41,12 @@ Android ベースのデバイスとサポートしているテクスチャ フ
## ステップ
-1. Android ベースのデバイス上のレベルをテストするには、テスト対象のレベルが開いていることをまず確認してください。
- このサンプルでは、最後のステップで作成したブループリント ベースのプロジェクトから **ThirdPersonExampleMap** レベルを使用します。
+1. Android ベースのデバイス上でレベルのテストを行うには、テスト対象のレベルが開いていることをまず確認してください。
+ 最後のステップで作成したブループリント ベースのプロジェクトの **ThirdPersonExampleMap** レベルを使って説明します。

-1. **ThirdPersonExampleMap** を開いたら、**メイン ツールバー** の **[Launch]** アイコンの横にある三角をクリックして、さらにオプションを表示します。
+1. **ThirdPersonExampleMap** を開いたら、**メイン ツールバー** の **[Launch]** アイコンの横にある三角をクリックしてオプションを展開します。

@@ -57,14 +58,20 @@ Android ベースのデバイスとサポートしているテクスチャ フ
プロジェクトが正常にデバイスにデプロイされると、その旨のメッセージが表示されます。
[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ afagQeEvf4Q
+ [/PARAMLITERAL]
[PARAMLITERAL:width]
640
[/PARAMLITERAL]
[PARAMLITERAL:height]
360
[/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- afagQeEvf4Q
+ [PARAMLITERAL:units]
+ px
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
[/PARAMLITERAL]
[/OBJECT]
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.KOR.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.KOR.udn
index c9fc1e4b11fb..e6f168868b14 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/4/AndroidQS_4.KOR.udn
@@ -1,8 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
Title:4. 레벨 디플로이
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:원클릭 디플로이로 레벨을 실행시킵니다.
+version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -55,16 +56,22 @@ Checkpoint:AndroidQS
1. 디바이스에서 레벨이 실행되는 도중 그 진행상황이 화면 우하단 구석에 표시됩니다.
프로젝트가 디바이스에 성공적으로 디플로이되면 알림창이 뜹니다.
-
+
[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ afagQeEvf4Q
+ [/PARAMLITERAL]
[PARAMLITERAL:width]
640
[/PARAMLITERAL]
[PARAMLITERAL:height]
360
[/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- afagQeEvf4Q
+ [PARAMLITERAL:units]
+ px
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
[/PARAMLITERAL]
[/OBJECT]
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.INT.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.INT.udn
index 1fb315fb5c14..81cd50612129 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.INT.udn
@@ -2,7 +2,7 @@
Title:5. Package Your Game
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:Package your game for installation.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -81,7 +81,7 @@ We are currently packaging in **Development** because we are testing this game,
Different devices support different Texture formats depending on the hardware they run on. See, [](Platforms/Android/Reference) for a detailed breakdown of the various formats.
[/REGION]
-1. You will then be prompted for a location to save your packaged game. For now create a new folder on the desk top and select that as the location to save your project to.
+1. You will then be prompted for a location to save your packaged game. For now create a new folder on the desktop and select that as the location to save your project to.

@@ -154,9 +154,7 @@ We are currently packaging in **Development** because we are testing this game,
[/EXCERPT:MacOSSetup]
[EXCERPT:LinuxSetup]
-We're currently in the process of writing this documentation. Please refer to our [New and Updated Resources](https://docs.unrealengine.com/latest/INT/Updates/index.html) page to see
-which documentation is being published at this time.
-
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5#AndroidLinux_5]
[/EXCERPT:LinuxSetup]
-->
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.JPN.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.JPN.udn
index 1e5f2321722a..ab05b39833ba 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.JPN.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
Title:5.ゲームのパッケージ化
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:ゲームをインストール用にパッケージ化する
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -155,9 +155,7 @@ Checkpoint:AndroidQS
[/EXCERPT:MacOSSetup]
[EXCERPT:LinuxSetup]
-本文書は現在作成中です。現在公開されている文書については、
-[新規および更新リソース](https://docs.unrealengine.com/latest/INT/Updates/index.html) を参照してください。
-
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5#AndroidLinux_5]
[/EXCERPT:LinuxSetup]
-->
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.KOR.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.KOR.udn
index 03164e475225..a105c0eacc60 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/5/AndroidQS_5.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
Title:5. 게임 패키징
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:설치를 위해 게임을 패키징합니다.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -155,9 +155,7 @@ Checkpoint:AndroidQS
[/EXCERPT:MacOSSetup]
[EXCERPT:LinuxSetup]
-이 문서는 현재 작업중입니다. 현재 공개된 문서를 확인하려면 [New and Updated Resources](https://docs.unrealengine.com/latest/INT/Updates/index.html)
-페이지를 참고하세요.
-
+[INCLUDE:Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5#AndroidLinux_5]
[/EXCERPT:LinuxSetup]
-->
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.INT.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.INT.udn
index b3a80b0bced4..86db58ece5f3 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.INT.udn
@@ -2,7 +2,7 @@ Availability:Public
Title:6. On your Own
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:Read more about Android development with Unreal Engine.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.JPN.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.JPN.udn
index ca552e4579ae..597546c2b9a7 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.JPN.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
Title:6.応用編
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:アンリアル エンジンによる Android 開発についての追加情報
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.KOR.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.KOR.udn
index 2acbfad4d9c7..b36ec2e33c51 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/6/AndroidQS_6.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
Title:6. 직접 해보기
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/GettingStarted
Description:언리얼 엔진으로 안드로이드 개발을 하는 데 있어 추가로 참고할 자료입니다.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.INT.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.INT.udn
index 180475f7572f..ab75d13f8671 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.INT.udn
@@ -2,7 +2,7 @@ Availability: Public
Title: Android Quick Start
Crumbs:%ROOT%, Platforms, Platforms/Android
Description:Setting up for development for the Android platform.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -48,9 +48,9 @@ Checkpoint:AndroidQS

-Unreal Engine 4 (UE4) uses a special version of the Android Software Development Kit (SDK), called **CodeWorks for Android 1R4**.
+Unreal Engine 4 (UE4) uses a special version of the Android Software Development Kit (SDK), called **CodeWorks for Android 1R6**.
This version of CodeWorks for Android is the easiest way to set up the SDK and Native Development Kit (NDK) needed to develop
-Android projects with UE4. Although we're currently using version 1R4, we intend to use subsequent releases of CodeWorks.
+Android projects with UE4. Although we're currently using version 1R6, we intend to use subsequent releases of CodeWorks.
If you have other versions of the Android SDK installed (or, older versions of CodeWorks for Android), we recommend that you
uninstall them and install CodeWorks for Android, using the CodeWorks for Android installer that's being distributed with UE4.
@@ -65,7 +65,7 @@ This guide also teaches you how to put a template game on your Android device wi
## Objectives
-* Install and set up the Android SDK.
+* Install and setup the Android SDK.
* Setting up your Android device for development.
* Creating a project that is targeted for Android mobile development.
* How to deploy a level to your Android device
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.JPN.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.JPN.udn
index f26e4296e5de..e97ddc978071 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.JPN.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3451711
Availability:Public
Title:Android クイックスタート
Crumbs:%ROOT%, Platforms, Platforms/Android
Description:Android プラットフォーム開発の設定
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -49,9 +49,9 @@ Checkpoint:AndroidQS

-アンリアル エンジン (UE4) は **CodeWorks for Android 1R4** という Android ソフトウェア開発キット (SDK) の特別バージョンを採用しています。
+アンリアル エンジン (UE4) は **CodeWorks for Android 1R6** という Android ソフトウェア開発キット (SDK) の
CodeWorks for Android の特別バージョンを使うと、
-UE4 での Android プロジェクト開発に必要な SDK および Native Development Kit (NDK) の設定が最も楽になります。現在使用しているバージョンは 1R4 ですが、CodeWorks の次のバージョンを使用する予定です。
+UE4 での Android プロジェクト開発に必要な SDK および Native Development Kit (NDK) の設定が最も楽になります。現在使用しているバージョンは 1R6 ですが、CodeWorks の次のバージョンを使用する予定です。
違うバージョンの Android SDK (あるいは、CodeWorks for Android の古いバージョン) をインストールしている場合は、
一旦それをアンインストールして、UE4 が配布している CodeWorks for Android インストーラーを使って CodeWorks for Android をインストールすることを推奨します。
@@ -62,7 +62,7 @@ UE4 に付いている CodeWorks for Android インストーラーを使うこ
## 目標
Android クイックスタートでは、UE4 で Android を開発するための PC もしくは Mac の基本的な設定を一通り説明します。
-さらに、アンリアル エディタの起動およびパッケージ化機能を使って、Android デバイスにテンプレート ゲームを入れる方法も説明します。
+さらに、アンリアル エディタの起動およびパッケージ化機能を使って、Android デバイスにテンプレート ゲームを取り込む方法も説明します。
## 目的
diff --git a/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.KOR.udn b/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.KOR.udn
index 038131486562..48c2a4bb09d2 100644
--- a/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Android/GettingStarted/AndroidQuickStart.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability: Public
Title: 안드로이드 퀵 스타트
Crumbs:%ROOT%, Platforms, Platforms/Android
Description:안드로이드 플랫폼용 개발 셋업하기 입니다.
-Version:4.12
+Version:4.16
Skilllevel:Intermediate
tags:Android
tags:Mobile
@@ -49,9 +49,9 @@ Checkpoint:AndroidQS

-언리얼 엔진 4 (UE4) 는 **CodeWorks for Android 1R4** 라는 특수 버전 안드로이드 소프트웨어 개발 키트(SDK)를 사용합니다.
+언리얼 엔진 4 (UE4) 는 **CodeWorks for Android 1R6** 라는 특수 버전 안드로이드 소프트웨어 개발 키트(SDK)를 사용합니다.
이 버전의 안드로이드용 CodeWorks 는 UE4 로 안드로이드 프로젝트를 개발하는 데 필요한 SDK 와 NDK 를 구성하기에
-가장 쉬운 방법입니다. 현재 1R4 버전을 사용하고는 있지만, 앞으로 나오는 CodeWorks 새 버전을 사용할 계획입니다.
+가장 쉬운 방법입니다. 현재 1R6 버전을 사용하고는 있지만, 앞으로 나오는 CodeWorks 새 버전을 사용할 계획입니다.
다른 안드로이드 SDK 버전( 또는 안드로이드용 CodeWorks 구버전)이 설치된 경우, 먼저 설치를 해제한 뒤
UE4 와 같이 배포되는 안드로이드용 CodeWorks 인스톨러를 사용해서 설치해 주시기 바랍니다.
diff --git a/Engine/Documentation/Source/Platforms/Android/InAppPurchases/In-AppPurchases.JPN.udn b/Engine/Documentation/Source/Platforms/Android/InAppPurchases/In-AppPurchases.JPN.udn
index a55a73fe8590..5183445ea34b 100644
--- a/Engine/Documentation/Source/Platforms/Android/InAppPurchases/In-AppPurchases.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/InAppPurchases/In-AppPurchases.JPN.udn
@@ -1,6 +1,5 @@
-INTSourceChangelist:3150518
-Title:Android でアプリ内課金を使用する
-Description:アプリ内課金を使って Android ゲームに有料コンテンツを追加する
+Title:Android でのアプリ内課金の実装方法
+Description:アプリ内課金を実装して Android ゲームに有料コンテンツを追加する
Crumbs:
Availability:Public
version:4.10
@@ -12,17 +11,17 @@ Related:Platforms/Mobile/InAppPurchases/
## コンフィギュレーション
-1. Google Play でアプリ内課金を設定するためのステップを説明します。
+1. Google Play でアプリ内課金 (In-App Purchase) を設定するためのステップを説明します。
[REGION:note]
- Google Play の id はすべて小文字でなければなりません。さらに、iOS と Android の ID を一致させておくとブループリントの設定がとても楽になります。
+ Google Play の id にはすべて小文字を使用します。また、iOS と Android の ID を同じにしておくと、ブループリントをとても楽に設定することができます。
[/REGION]

-1. 使用する ID およびアイテムが消費型かそうでないかをメモしておきましょう。
+1. 使用する ID およびアイテムが消費型か非消費型かをメモしておきます。
-1. ブループリント プロジェクトであれば設定の必要はありません。コード プロジェクトのためオンライン システムを使う設定が必要な場合は、プロジェクトの Build.cs ファイルに次のブロックを加えてください。
+1. ブループリント プロジェクトの場合は、そのままで大丈夫です。コード プロジェクト用にオンライン システムを使う設定にするには、プロジェクトの Build.cs ファイルに次のブロックを加えてください。
if (Target.Platform == UnrealTargetPlatform.Android)
{
@@ -48,7 +47,7 @@ Related:Platforms/Mobile/InAppPurchases/
## テスティング
-Android をテストするには、正しいテスティング プロファイルを設定するだけでなく、パッケージ化した APK を Google Play にアップロードする必要があります。カスタム仕様のキーストアも必要になります。
+Android をテストするためには、テスティング プロファイルを正しく設定し、かつパッケージ化した APK を Google Play にアップロードする必要があります。カスタム キーストアも必要になります。
## 役に立つリンク
diff --git a/Engine/Documentation/Source/Platforms/Android/LaunchScreens/LaunchScreens.INT.udn b/Engine/Documentation/Source/Platforms/Android/LaunchScreens/LaunchScreens.INT.udn
index 99ad43124e1a..dd646697493f 100644
--- a/Engine/Documentation/Source/Platforms/Android/LaunchScreens/LaunchScreens.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/LaunchScreens/LaunchScreens.INT.udn
@@ -27,15 +27,93 @@ To configure your project to use the Launch Images:
1. Inside your project from the **File** menu, select **Edit** then select **Project Settings**.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. In the **Project Settings**, on the left under **Platforms** select **Android** to display the project settings for Android apps.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Scroll down to the **Launch Images** section and make sure the **Show launch image** check box is enabled.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Click the **...** icon next to each image to open a browser where you can select your image from your computer.
@@ -43,8 +121,33 @@ To configure your project to use the Launch Images:
1. Once you have selected the images you want to use they will be added to the project and included during the startup splash screen.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[REGION:note]
Examples for portrait and landscape images may be found in the Engine/Build/Android/Java/res/drawable folder as PNG files.
diff --git a/Engine/Documentation/Source/Platforms/Android/OpenGLES31MobileRenderer/OpenGLES31MobileRenderer.INT.udn b/Engine/Documentation/Source/Platforms/Android/OpenGLES31MobileRenderer/OpenGLES31MobileRenderer.INT.udn
index 27de7f552d4c..b476109da64d 100644
--- a/Engine/Documentation/Source/Platforms/Android/OpenGLES31MobileRenderer/OpenGLES31MobileRenderer.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/OpenGLES31MobileRenderer/OpenGLES31MobileRenderer.INT.udn
@@ -2,7 +2,7 @@ Title: Android OpenGL ES 3.1 Mobile Renderer
Description:Setting up your UE4 Android project to work with the OpenGL ES 3.1 mobile render
Crumbs:%ROOT%, Platforms, Platforms/Android, Platforms/Android/OpenGLES31MobileRenderer/
Availability:Public
-version:4.12
+version:4.16
Parent:Platforms/Android
tags:Mobile
tags:Android
@@ -23,35 +23,17 @@ While Unreal Engine 4 (UE4) has long supported many OpenGL ES 3.0 and 3.1 featur
In order to preview what OpenGL ES 3.1 will look like in the UE4 Editor, you will need to first enable it by doing the following:
-1. From the **Main Toolbar**, go to **Edit** and then select the **Editor Preferences** option.
-
- 
-
-1. Under the **General** section, locate the **Experimental** category and then look for the **Rendering** section. Click on the checkbox next to **Enable Metal/Vulkan/High-end mobile Preview Rendering Level in editor** to enable the option to preview OpenGL ES 3.1.
+1. Go to the **Main Tool Bar**, click on the **Settings** option and go to **Preview Rendering Level** option and select the **High-End Mobile / Metal** and finally **High-End Mobile** option.
[REGION:lightbox]
- [(w:447 h:308)](Platforms\Android\VulkanMobileRenderer\VMP_03.png)
+ [(w:391)](OGL3_10.png)
[/REGION]
[REGION:caption]
Click for full image.
[/REGION]
- [region:note]
- For a more detailed description on how to enable Metal/Vulkan/High-End previewing in the UE4 Editor, check out the [Enabling Vulkan Preview Rendering in Editor](Platforms/Android/VulkanMobileRenderer/#enablingvulkanpreviewrenderingineditor) document.
- [/region]
-
-1. Then on the **Main Tool Bar** click on the **Settings** option and go to **Preview Rendering Level** option and select the **High-End Mobile / Metal** option.
-
- [REGION:lightbox]
- [(w:391)](Platforms\Android\VulkanMobileRenderer\VMP_Android_Settings_05.png)
- [/REGION]
-
- [REGION:caption]
- Click for full image.
- [/REGION]
-
-1. Now if you look at the lower right-hand corner of the UE4 Editor viewport, you should see the text **Feature Level: ES3_1** which means you are now previewing the level using OpenGL ES 3.1's feature set.
+1. Once the shaders have recompiled, if you look at the lower right-hand corner of the UE4 Editor viewport, you should see the text **Feature Level: ES3_1** which means you are now previewing the level using OpenGL ES 3.1's feature set.
[REGION:lightbox]
[(w:404)](OGL3_02.png)
diff --git a/Engine/Documentation/Source/Platforms/Android/ReducingAPKSize/ReducingAPKSizes.JPN.udn b/Engine/Documentation/Source/Platforms/Android/ReducingAPKSize/ReducingAPKSizes.JPN.udn
index b020f87e1de3..711ea8100983 100644
--- a/Engine/Documentation/Source/Platforms/Android/ReducingAPKSize/ReducingAPKSizes.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Android/ReducingAPKSize/ReducingAPKSizes.JPN.udn
@@ -1,28 +1,30 @@
-INTSourceChangelist:2945303
+INTSourceChangelist:3108692
Availability:Public
-Title:APK パッケージ サイズを減らす方法
+Title:APK パッケージ化サイズを小さくする方法
Crumbs:%ROOT%, Platforms, Platforms/Android
-Description:パッケージングした Android ゲームのサイズを減らす方法。
+Description:パッケージ化した Android ゲームのサイズを小さくする方法。
Skilllevel:Intermediate
-Version:4.8
+Version:4.12
Parent:Platforms/Android
+Related:Engine/Performance/ReducingPackageSize
tags:Mobile
tags:Android
type:overview
[TOC(start:2 end:3)]
-UE4 プロジェクトが どのタイプの Android デバイスをターゲットにしていても、アプリケーション パッケージまたは **APK** のサイズを Google Play store 向けに 50MB 以下に減らすことは難しいです。
-次のガイドでは、プロジェクトの最終版の APK パッケージのサイズを UE4 エディタに備わっているツール以外は使わずに、できる限り小さくするために役立つステップを説明します。
+Android デバイス向けの UE4 プロジェクトはすべて、アプリケーション パッケージ (**APK**) サイズを Google Play store の容量制限の 50MB 以下にすることが難しいです。
+本ページでは、UE4 エディタに備わっているツール以外は使わずに、製品版プロジェクトの APK サイズをできる限り小さくするために役立つステップを説明します。
## ETC1 テクスチャに関する留意点
-ETC1 Texture フォーマットを使って Android 向けにプロジェクトをパックすると、Alpha 情報を埋め込んでいるテクスチャを圧縮せずに、それらを完全に圧縮されていないテクスチャとして扱うことに気づく必要があります。
-プロジェクトのランタイム時のパフォーマンスがこの影響を大きく受けることはありませんが、プロジェクト APK のサイズを増やします。
-プロジェクトがアルファを使用しているテクスチャを要求している場合は、Alpha が埋め込まれている 1 つのテクスチャを使用するのではなく、Diffuse と Alpha の 2 つに分けた方が良いです。
-そうすると、プロジェクトがクックされパッケージ化された時に、必ずテクスチャは圧縮されます。
-## プラットフォームに依存しない技術
+ETC1 Texture フォーマットを使って Android 向けにプロジェクトをパッケージ化処理する場合、Alpha 情報を埋め込んでいるテクスチャは圧縮されません。完全に圧縮されていないテクスチャとして処理されることを理解する必要があります。
+プロジェクトのランタイム時パフォーマンスがこの影響を大きく受けることはありませんが、プロジェクト APK のサイズが大きくなります。
+プロジェクトが Alpha 使用のテクスチャを要求している場合は、
+Alpha が埋め込まれている 1 つのテクスチャを Diffuse と Alpha の 2 つのテキストに分けることを推奨します。そのようにすると、プロジェクトがクックおよびパッケージ化される時に、必ずテクスチャが圧縮されます。
-Android 専用の上記の方法の他にも、ターゲット プラットフォームに関係なくパッケージ化されたゲームのサイズを減らす方法はいろいろあります。
+## プラットフォーム タイプに関係なく使える方法
+
+Android に特化した上記の方法以外にも、ターゲット プラットフォームに関係なくパッケージ化されたゲーム サイズを小さくする方法は数多くあります。
[INCLUDE:Engine/Performance/ReducingPackageSize#main(offset:1)]
diff --git a/Engine/Documentation/Source/Platforms/Android/Reference/AndroidGettingStarted.INT.udn b/Engine/Documentation/Source/Platforms/Android/Reference/AndroidGettingStarted.INT.udn
index 52387d548141..e1943a15cecb 100644
--- a/Engine/Documentation/Source/Platforms/Android/Reference/AndroidGettingStarted.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Android/Reference/AndroidGettingStarted.INT.udn
@@ -2,7 +2,7 @@
Title: Android Development Reference
Crumbs:%ROOT%, Platforms, Platforms/Android
Description:How to install different Android SDKs, set environment variables, and work with texture formats.
-Version: 4.12
+Version: 4.16
SkillLevel: Intermediate
Parent:Platforms/Android
tags:Mobile
@@ -51,7 +51,7 @@ Here is what we currently require for Android game development in UE4:
There are several methods for getting the components. If you have already installed one of these, look in the corresponding section for additional requirements:
-### CodeWorks for Android 1R4
+### CodeWorks for Android 1R6
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
@@ -84,20 +84,22 @@ There are several methods for getting the components. If you have already instal
## Android テクスチャ フォーマット
-Android デバイスはすべて同じ構成をしているわけではありません。特に、レンダリングハードウェアは 4 種類あります。それぞれが異なるフォーマットの圧縮テクスチャをサポートしています。
+Android デバイスはすべて同じ構成をしているわけではありません。特に、レンダリング ハードウェアは 4 種類あります。それぞれが異なるフォーマットの圧縮テクスチャをサポートしています。
[EXCERPT:AndroidFormats]
| フォーマット | 説明 |
@@ -359,12 +363,12 @@ Android プラットフォーム向けにゲームをデプロイまたはパッ
最初の (**Android**) は、事実上すべてのフォーマットを取り込んで、これらをクックしてパッケージへまとめます。処理時間は多少長めで、作成されるパッケージ サイズも大きくなりますが、
ランタイム時に最適のフォーマットを選択すれば、使用メモリは必要最低限に確実に抑えられます。すべてのデバイスに機能します (**Android (ETC1)**のように)。
-[region:note]
+[REGION:note]
アンリアル エンジン 4.8 以降のバージョンで、**ES31** および **AEP** レンダリングを Tegra K1 デバイス上で使用できるようになりました。
現在 ES31 と AEP レンダリングをサポートしているデバイス数が限られているため、現段階ではパフォーマンスおよび互換性テストがほとんど完了していないことに留意してください。
これらのデバイスのどれかを使用する場合、プロジェクトの中でデバイスが期待する動きをするように、拡張パフォーマンスと互換テストを行うことを推奨します。
-[/region]
+[/REGION]
### フォーマットの選択
-ユーザーのみなさんは、おそらく使用デバイスに最適なフォーマットを選択されるでしょう。デバイスに搭載されている GPU のタイプがわかる場合、上記の表を参照してフォーマットを選択してください。タイプがわからない場合、**[Android]** または **[Android (ETC1)]** を選択します。ゲームの実行時にスクリーンを指 4 本で一度にタップすると、ダイアログが表示されます。これは、コンソールコマンド (stat fps などの) の入力に通常使用するダイアログ ボックスですが、ユーザーのデバイスがサポートしているフォーマットも表示します。リストが表示されたら、これを活用してデプロイおよびパッケージングに最も適したタイプを選択します。対象デバイスでサポートしていないフォーマットが選択された場合、読み込みが失敗します。
+ユーザーのみなさんは、おそらく使用デバイスに最適なフォーマットを選択されるでしょう。デバイスに搭載されている GPU のタイプがわかる場合、上記の表を参照してフォーマットを選択してください。タイプがわからない場合、**[Android]** または **[Android (ETC1)]** を選択します。ゲームの実行時にスクリーンを指 4 本で一度にタップすると、ダイアログが表示されます。このダイアログ ボックスは通常コンソールコマンド (stat fps などの) の入力に使用しますが、ユーザーのデバイスがサポートしているフォーマットも表示します。表示されたリストの中からデプロイおよびパッケージングにより適したタイプを選択します。対象デバイスでサポートしていないフォーマットが選択された場合、読み込みが失敗します。
diff --git a/Engine/Documentation/Source/Platforms/Android/Reference/AndroidGettingStarted.KOR.udn b/Engine/Documentation/Source/Platforms/Android/Reference/AndroidGettingStarted.KOR.udn
index eeb797c1e391..8272475802e5 100644
--- a/Engine/Documentation/Source/Platforms/Android/Reference/AndroidGettingStarted.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Android/Reference/AndroidGettingStarted.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3298293
+INTSourceChangelist:3477690
Availability:Public
Title: 안드로이드 개발 참고서
Crumbs:%ROOT%, Platforms, Platforms/Android
Description:다양한 안드로이드 SDK 설치, 환경 변수 설정, 텍스처 포맷 작업 방법 설명입니다.
-Version: 4.12
+Version: 4.16
SkillLevel: Intermediate
Parent:Platforms/Android
tags:Mobile
@@ -20,8 +20,8 @@ UE4 안드로이드 프로젝트 개발용 컴퓨터에 설치하고 구성해
## 안드로이드 SDK 사양
현재 UE4 에서 안드로이드 게임 개발을 하는 데 필요한 사양은 다음과 같습니다:
-| 컴포넌트 | 환경 변수 |
-| ---------- | --------------------- |
+ | 컴포넌트 | 환경 변수 |
+ | ---------- | --------------------- |
| [INCLUDE:#codecomponents] | [INCLUDE:#codeenvvar] |
[nav]
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/2/GearVRQuickStart_2.JPN.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/2/GearVRQuickStart_2.JPN.udn
index 017d83863b05..ac3563a0a9ab 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/2/GearVRQuickStart_2.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/2/GearVRQuickStart_2.JPN.udn
@@ -1,8 +1,9 @@
-Availability:Public
+INTSourceChangelist:3477690
+Availability:Public
Title:2.Gear VR プロジェクトの設定
Crumbs:%ROOT%, Platforms, Platforms/GearVR
Description:Gear VR ヘッドセットを使用する C++ ベースの UE4 プロジェクトの設定方法
-Version:4.9
+Version:4.16
Skilllevel:Intermediate
tags:VR
tags:GearVR
@@ -15,51 +16,63 @@ Checkpoint:GearVRQS
## ステップ
-1. プロジェクトの作成とコンパイルが終了したら、Visual Studio 2015 が (既にインストールされている場合は) エディタと一緒に自動的に開きます。
+1. プロジェクトの作成とコンパイルが終了したら、Visual Studio が (既にインストールされている場合は) エディタと一緒に自動的に開きます。

[region:note]
- 使用するアンリアル エンジンが 4.8 以降の場合、ブループリント ベースのプロジェクト Visual Studio 2015 は必要ないので開きません。
+ 使用するアンリアル エンジンが 4.8 以降の場合、ブループリント ベースのプロジェクト Visual Studio は必要ないので開きません。
[/region]
1. UE4 エディタをロードしたら、**メインのツールバー** から **[Windows]** タブを開いて **[Plugins]** メニューを選択します。
[OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- eo79kj2i2bc
- [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ eo79kj2i2bc
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-1. プラグイン メニューから **[Head Mounted Displays]** セクションへ移動して、**[Oculus]** オプションを **無効** に、**[Gear VR]** オプションを **有効** にします。エディタを再起動するために**[Restart Now (今すぐ再起動)]** ボタンをクリックして、変更を反映させます。
+1. プラグイン メニューから **[Head Mounted Displays]** セクションへ移動して、**[Oculus]** オプションを **無効** に、**[Gear VR]** オプションを **有効** にします。エディタを再起動するために **[Restart Now (今すぐ再起動)]** ボタンをクリックして、変更を反映させます。

-1. エディタが再起動したら **メイン ツールバー** から **[Edit (編集)]** を選択して、次に **[Project Settings (プロジェクト設定)]** を選択します。その後 **[APKPacking]** セクションから Android プラットフォームの **[Configure Now (今すぐ設定)]** ボタンをクリックします。
+1. エディタが再起動したら **メイン ツールバー** から **[Edit (編集)]** を選択して、次に **[Project Settings (プロジェクト設定)]** を選択します。その後 **[APKPacking]** セクションから Android プラットフォームの **[Configure Now (今すぐ設定)]** ボタンをクリックします。
[OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- If_vSzD5h3w
- [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ If_vSzD5h3w
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-1. 次に **[Minimum SDK Version]** を **9** から **19** に変更します。
+1. 次に **[Minimum SDK Version]** と **[Target SDK Version]** を **9** から **19** に変更します。

-1. **[Configure the Android Manifest for deployment to Gear VR (Gear VR にデプロイする Android Manifest の設定]** チェックボックスが表示されるまでスクロールダウンして、これを有効にします。
+1. **[Configure the Android Manifest for deployment to Gear VR]** チェックボックスが表示されるまでスクロールダウンして、これを有効にします。
[Region:note]
これを設定しないと Gear VR ヘッドセットでプロジェクトが実行しないので、とても重要な手順です。
@@ -69,9 +82,9 @@ Checkpoint:GearVRQS
1. 次に **[Android SDK]** セクションを選択して、必要な Android SDK ファイルの場所を開発用 PC に入力します。
必要なフォルダは Tegra ファイルをインストールした場所を参照してください。
- [Region:note]
- Android 1R4 用の CodeWorks がインストール済みであれば、ここで行う作業は特にありません。情報が足りなかったり、別の場所に関連づいている場合のみ修正してください。
+ [Region:note]
+ Android 1R6 用の CodeWorks がインストール済みであれば、ここで行う作業は特にありません。情報が足りなかったり、別の場所に関連づいている場合のみ修正してください。
[/region]

@@ -83,26 +96,23 @@ Checkpoint:GearVRQS
[/region]
[OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- 29oB5aowElQ
- [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 29oB5aowElQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-
[nav]
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/2/GearVRQuickStart_2.KOR.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/2/GearVRQuickStart_2.KOR.udn
index 1d03a31ed4d7..4e4004ed21ee 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/2/GearVRQuickStart_2.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/2/GearVRQuickStart_2.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3477690
Availability:Public
Title:2. 기어 VR 프로젝트 구성
Crumbs:%ROOT%, Platforms, Platforms/GearVR
Description:기어 VR 헤드셋과 사용할 C++ 기반 UE4 프로젝트 구성 방법입니다.
-Version: 4.9
+Version: 4.16
Skilllevel: Intermediate
tags:VR
tags:GearVR
@@ -16,26 +16,32 @@ Checkpoint:GearVRQS
## 단계
-1. 프로젝트 생성 및 컴파일이 완료되면, Visual Studio 2015 이 (설치된 경우) 에디터와 함께 자동으로 열립니다.
+1. 프로젝트 생성 및 컴파일이 완료되면, Visual Studio 가 (설치된 경우) 에디터와 함께 자동으로 열립니다.

[region:note]
- 언리얼 엔진 4.8 이상 버전에 블루프린트 기반 프로젝트를 사용하시는 경우, Visual Studio 2015 은 필요치 않아 열리지 않을 것입니다.
+ 언리얼 엔진 4.8 이상 버전에 블루프린트 기반 프로젝트를 사용하시는 경우, Visual Studio 는 필요치 않아 열리지 않을 것입니다.
[/region]
1. UE4 에디터가 로드되면, **메인 툴바** 에서 **창** 탭을 열고 **플러그인** 메뉴를 선택합니다.
-
+
[OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- eo79kj2i2bc
- [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ eo79kj2i2bc
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
1. **Plugins** 메뉴에서 **Head Mounted Displays** 섹션으로 가서 **Oculus** 옵션을 **disable**, **Gear VR** 옵션을 **enable** 합니다. 그런 다음 **지금 재시작** 버튼을 눌러 에디터를 재시작, 변경내용이 적용되도록 합니다.
@@ -45,18 +51,24 @@ Checkpoint:GearVRQS
1. 에디터가 재시작되면 **메인 툴바** 에서 **편집** - **프로젝트 세팅** 을 선택한 다음, **APKPacking** 섹션의 안드로이드 지원에 대한 **Configure Now** (지금 환경설정) 버튼을 클릭합니다.
[OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- If_vSzD5h3w
- [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ If_vSzD5h3w
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-1. 다음 **Minimum SDK Version** 을 **9** 에서 **19** 로 변경합니다.
+1. 다음 **Minimum SDK Version** 및 **Target SDK Version** 을 **9** 에서 **19** 로 변경합니다.

@@ -72,7 +84,7 @@ Checkpoint:GearVRQS
Tegra 파일을 설치한 위치에 필요한 폴더를 찾을 수 있습니다.
[Region:note]
- 이미 CodeWorks for Android 1R4 를 설치했다면 이 정보가 채워져 있을 것입니다. 여기서 뭔가 바꿔야 하는 이유는, 정보가 없거나 잘못된 위치로 되어있을 경우입니다.
+ 이미 CodeWorks for Android 1R6 를 설치했다면 이 정보가 채워져 있을 것입니다. 여기서 뭔가 바꿔야 하는 이유는, 정보가 없거나 잘못된 위치로 되어있을 경우입니다.
[/region]

@@ -84,26 +96,23 @@ Checkpoint:GearVRQS
[/region]
[OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- 29oB5aowElQ
- [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 29oB5aowElQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
[/OBJECT]
-
[nav]
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.INT.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.INT.udn
index 66d286a2e4f5..789cb2b23f61 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.INT.udn
@@ -2,7 +2,7 @@ Availability:Public
Title:3. Gear VR Project Packaging & Deployment
Crumbs:%ROOT%, Platforms/GearVR
Description:Instructions on how to deploy projects form UE4 to use with the Samsung Gear VR Headset.
-Version: 4.9
+Version: 4.16
Skilllevel: Intermediate
tags:VR
tags:GearVR
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.JPN.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.JPN.udn
index bd9d1785fd1b..7f2ec61f14c3 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.JPN.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3451711
Availability:Public
-Title:3.Gear VR プロジェクトのパッケージングとデプロイ
+Title:3.Gear VR プロジェクトのパッケージング化とデプロイ
Crumbs:%ROOT%, Platforms/GearVR
Description:UE4 プロジェクトを Samsung Gear VR ヘッドセットに対応するようにデプロイする方法
-Version:4.9
+Version:4.16
Skilllevel:Intermediate
tags:VR
tags:GearVR
@@ -21,7 +21,7 @@ Related:Platforms\GearVR\Debugging
1. 最初に Samsung Galaxy Note 4 スマートフォンと USB コードを接続して、このコードが開発に使用している PC の USB ポートに差し込まれていることを確認してください。
-1. 次に **Main Toolbar** へ移動して、**[File]** > **[Package Project]** > **[Android]** > **[Android ETC 2]** を選択してパッケージング処理を開始します。
+1. 次に **メイン ツールバー** から **[File]** > **[Package Project]** > **[Android]** > **[Android ETC 2]** を選択してパッケージング処理を開始します。

@@ -29,23 +29,23 @@ Related:Platforms\GearVR\Debugging

-1. プロジェクトのサイズ次第では、パッケージング処理は数分、もしくは数時間かかる場合があります。
+1. プロジェクト サイズによって、パッケージング処理は数分から数時間かかります。
処理が完了すると、ビルドを保存するために選択 / 作成したフォルダ内部に以下の画像のようなファイルが 3 つ作成されています。

-1. 次にビルドをパッケージ処理したフォルダ内にある **「.BAT」** ファイルを **マウスの左ボタン** で **ダブルクリック** して実行します。
- 「.BAT」ファイルを実行すると、スマートフォンへの現在のデプロイの進捗状況を示すコマンドラインウィンドウが表示されます。
- スマートフォンへのプロジェクトのデプロイが成功すると、コマンドラインウィンドウは自動的に閉じます。
+1. 次にビルドをパッケージ処理したフォルダ内にある **.BAT** ファイルを **マウスの左ボタン** で **ダブルクリック** して実行します。
+ .BAT ファイルを実行すると、スマートフォンへのデプロイの進捗状況を示すコマンドライン ウィンドウが表示されます。
+ スマートフォンへ正常にプロジェクトがデプロイされると、コマンドライン ウィンドウは自動的に閉じます。

-1. 「.BAT」ファイルを実行すると、デプロイの進捗状況および可能性のあるエラーを示すコマンドライン ウィンドウが表示されます。
+1. .BAT ファイルを実行すると、デプロイの進捗状況および発生する可能性のあるエラーがコマンドライン ウィンドウに表示されます。

[region:note]
- 「.BAT」ファイルの実行時に表示されるコマンドライン ウィンドウは、終了時に自動的に閉じます。コマンドライン ウィンドウを手動で閉じると、デプロイに問題が生じる要因となるため、ウィンドウを手動で閉じないでください。
+ .BAT ファイルの実行時に表示されるコマンドライン ウィンドウは、終了時に自動的に閉じます。コマンドライン ウィンドウを手動で閉じると、デプロイに問題が生じる要因となるため、ウィンドウを手動で閉じないでください。
[/region]
1. コマンドライン ウィンドウが閉じたら、新規に作成したアプリケーションをスマートフォンでチェックします。このアプリケーション名は、作成元の UE4 C++ プロジェクトに使用した名前と一致しなくてはいけません。
@@ -55,5 +55,5 @@ Related:Platforms\GearVR\Debugging
[nav]
-## 最終結果
+## 結果
完了すると、Samsung Galaxy スマートフォンと Gear VR HMD を使ってプロジェクトの起動と表示が可能になります。
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.KOR.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.KOR.udn
index 6b98a4b14862..32cb681a57e2 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/3/GearVRQuickStart_3.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3451711
Availability:Public
Title:3. 기어 VR 프로젝트 패키징 & 디플로이
Crumbs:%ROOT%, Platforms/GearVR
Description:삼성 기어 VR 헤드셋을 사용하는 UE4 프로젝트 디플로이 방법 안내입니다.
-Version: 4.9
+Version: 4.16
Skilllevel: Intermediate
tags:VR
tags:GearVR
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.INT.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.INT.udn
index bcd30c6afcb9..cae3f6afab76 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.INT.udn
@@ -3,7 +3,7 @@ Title:4. On Your Own!
Crumbs:%ROOT%, Platforms/GearVR
Description:Using the methods provided during this guide, polish up your level with additional content and read up on related topics.
Navigation:platform
-Version: 4.9
+Version: 4.16
Skilllevel: Intermediate
tags:VR
tags:GearVR
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.JPN.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.JPN.udn
index c9dc03f39b82..789684079000 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.JPN.udn
@@ -1,10 +1,10 @@
-INTSourceChangeList:3150518
+INTSourceChangelist:3451711
Availability:Public
Title:4.応用編
Crumbs:%ROOT%, Platforms/GearVR
Description:このガイドで説明した方法を使って、追加のコンテンツでレベルにさらに磨きをかけます。関連トピックスのドキュメントも紹介します。
Navigation:platform
-Version:4.9
+Version:4.16
Skilllevel:Intermediate
tags:VR
tags:GearVR
@@ -17,7 +17,7 @@ Checkpoint:GearVRQS
Android のスマートフォンに UE4 プロジェクトをデプロイし、Gear VR HMD を使って表示したら、以下の項目を追加してみましょう。
-* [Migrate ツール](Engine/Content/Browser/UserGuide/Migrate/) を使って、コンテンツをモバイル コンテンツ サンプルから使用するプロジェクトに移動することができます。
+* [Migrate ツール](Engine/Content/Browser/UserGuide/Migrate/) を使って、コンテンツをモバイル コンテンツ サンプルから使用するプロジェクトに移動します。
* Android スマートフォンへデプロイした時に、プロジェクトができるだけ速く実行するように [Default Device Profiles](Platforms/Mobile/Performance/TipsAndTricks) の設定を変更します。
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.KOR.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.KOR.udn
index 0a0af207e5e7..6083dc8076f4 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/4/GearVRQuickStart_4.KOR.udn
@@ -1,10 +1,10 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3451711
Availability:Public
Title:4. 직접 해보기!
Crumbs:%ROOT%, Platforms/GearVR
Description:여기서 안내해 드리는 방법을 통해 추가적인 콘텐츠로 레벨을 다듬어 보고 관련된 다른 자료도 확인할 수 있습니다.
Navigation:platform
-Version: 4.9
+Version: 4.16
Skilllevel: Intermediate
tags:VR
tags:GearVR
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.INT.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.INT.udn
index 83875eaa28b8..c6043bdf2d85 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.INT.udn
@@ -7,6 +7,7 @@ Platform:Gear VR
Skilllevel: Intermediate
Version:4.9
type:quick start
+type:landing
parent:Platforms/GearVR
tags:VR
tags:GearVR
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.JPN.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.JPN.udn
index 2763323f5df9..8e4c5e10b4bb 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3429260
Availability:Public
Title:Samsung Gear VR UE 4 のクイックスタート
Crumbs:%ROOT%, Platforms/GearVR
@@ -6,8 +6,9 @@ Description:Samsung Gear VR ヘッドセットと使えるようにプロジェ
Navigation:platform
Platform:Gear VR
Skilllevel:Intermediate
-version:4.9
+Version:4.9
type:quick start
+type:landing
parent:Platforms/GearVR
tags:VR
tags:GearVR
diff --git a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.KOR.udn b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.KOR.udn
index 54920de24f77..45f5a617ac97 100644
--- a/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GearVR/QuickStart/GearVRQuickStart.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3429260
Availability:Public
Title:삼성 기어 VR UE4 퀵스타트
Crumbs:%ROOT%, Platforms/GearVR
@@ -8,6 +8,7 @@ Platform:Gear VR
Skilllevel: Intermediate
Version:4.9
type:quick start
+type:landing
parent:Platforms/GearVR
tags:VR
tags:GearVR
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.INT.udn b/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.INT.udn
index 60faad472faa..d0aabea5760a 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.INT.udn
@@ -4,12 +4,13 @@ Crumbs:%ROOT%, Platforms/GoogleVR
Description:Which Google VR features are specific to Daydream devices.
Navigation:platform
Skilllevel: Intermediate
-Version: 4.12
+Version: 4.16
parent:Platforms/GoogleVR
type:overview
tags:VR
tags:Google VR
tags:Daydream
+topic-image:Platforms\GoogleVR\GoogleVR_Topic_Image.png
[TOC(start:2)]
@@ -23,40 +24,69 @@ While Google VR can work for almost any Android based device, there are certain
## Downloading Google VR UE4 Branch
To get all of the pre-built functionality Google Daydream VR offers you will need to download and compile a special version of UE4 that you will find linked below. This version of UE4 contains the needed code and assets that are required to display the Daydream Motion Controller in the manner Google wants it.
-* [Google VR Github Pull](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr)
+* [Google VR Github Pull](https://github.com/googlevr-unreal/UnrealEngine/releases)
Once you have downloaded this version of UE4, follow the directions for the [Downloading Unreal as a Zip from Github](GettingStarted/DownloadingUnrealEngine/DownloadZip) page to complete the rest of the setup process.
-## Android NDK 11c
-In order to access the full functionality of Daydream, you will need to download and install the Android NDK version 11c.
+## Android NDK 12b
+In order to access the full functionality of Daydream, you will need to download and install the Android NDK version 12b.
-* [NDK 11c Downlaod](https://developer.android.com/ndk/downloads/index.html)
+* [NDK 12b Downlaod](https://developer.android.com/ndk/downloads/older_releases.html)
-Once downloaded and installed you will need to point UE4 to the new NDK files by going to the **Android SDK** > **SDKConfig** section and changing the NDK path to the new NDK 11c install location and set the SDK API level to **matchndk** and the NDK API Level to **android-24**.
+Once downloaded and installed you will need to point UE4 to the new NDK files by going to the **Android SDK** > **SDKConfig** section and changing the NDK path to the new NDK 12b install location and set the SDK API level to **matchndk** and the NDK API Level to **android-24**.
-
+[REGION:lightbox]
+[(w:502)](GDaydream_New_NDK_00.png)
+[/REGION]
+
+[REGION:caption]
+Click for full image.
+[/REGION]
## Scanline Racing
**Scanline Racing** is a feature specific to Daydream devices that when enabled helps to reduce latency in your VR project. To enable Scanline Racing in your Google VR project for Daydream devices you will need to do the following.
-1. Open up your **Project Settings** and go to **Platforms** > **Android**.
+1. Open up your **Project Settings** and go to **Platforms** > **Android**. Under the **APKPackaging** section, set the following:
- 
+ * Minimum SDK Version: **24**
+ * Target SDK Version: **24**
-1. Under the **Build** section enable **Support arm64[aka arm64-v8a]** by clicking on the checkmark box next to its name and disable **Support arm7[aka armebi-v7a]**.
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Arm64_Support_00.png)
+ [/REGION]
- 
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+
+1. Under the **Build** section change the following:
+ * Support armv7(aka armeabi-v7a): **Disabled**
+ * Support arm64 (aka arm64-v8a): **Enabled**
+
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Build_Support.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
[region:note]
Enabling this will add significant time to your first cook as the arm64 libraries need to be compiled.
[/region]
1. Then under the **Advanced APKPackaging** section and enable the following options.
- * **Configure for deployment to Daydream**
- * **Configure GoogleVR Deployment Mode**
- * **Configure GoogleVR for low-latency rendering mode (scanline racing)**
+ * Configure GoogleVR Deployment Mode: **Daydream**
+ * Configure GoogleVR for sustained-performance mode (scanline racing): **Enabled**
+
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Scanline_Racing_Support_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
- 
Then next time you cook your UE4 project and deploy it to your Daydream device low latency rendering will be enabled.
@@ -69,7 +99,13 @@ For a more in-depth look at how to use the Google Daydream Controller Motion Con
1. First, open up your project's Plugins menu and under the Input section, enable the **Google VR Motion Controller** plugin.
- 
+ [REGION:lightbox]
+ [(w:692)](GDaydream_Plugins.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
[region:note]
Please note that to use the Plugin you will need to re-start your UE4 Editor. Failing to do so will result in you not being able to use the Google VR Motion Controller.
@@ -83,14 +119,14 @@ For a more in-depth look at how to use the Google Daydream Controller Motion Con
The Motion Controller component should use the same position and height of the VR Camera.
[/region]
-1. Now when you run your project your motion controllers should look similar to the following image.
+1. When you run your project your motion controllers should look similar to the following image.
[REGION:lightbox]
[(w:724)](unreal-controller-model.png)
[/REGION]
[region:note]
- If you are using the 4.14 binary build of UE4 the above content will be missing and you should instead use the standard Motion Controller component. All of this functionality is slated to be in the 4.15 release of UE4. If you need to this functionality now, you will have to download and compile the, [UE4.13 Google VR version](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr).
+ If you are using the 4.14 binary build of UE4 the above content will be missing and you should instead use the standard Motion Controller component. All of this functionality is included with the 4.15 and later releases of UE4. If you need to this functionality now, you will have to download and compile the, [UE4.13 Google VR version](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr).
[/region]
Now that you have a Google VR Motion Controller component on your Pawn, you can edit and adjust how the Motion Controller's function by searching for **Google VR** in the Blueprint Editor and using the nodes that you find.
@@ -99,32 +135,99 @@ Now that you have a Google VR Motion Controller component on your Pawn, you can
These Training Streams help to provide some additional resources on setting up your Motion Controllers and creating interactions in VR using Motion Controllers.
-[REGION:topics third]
-[OBJECT:TopicCompactVideo]
+
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- Setting Up Motion Controllers
+ Live Training - Setting Up VR Motion Controllers
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
6ALnsdQnkVQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 1:05:05
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/6ALnsdQnkVQ/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[OBJECT:TopicCompactVideo]
+
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- Creating Interactions in VR With Motion Controllers Part 1
+ 01 - Blueprint Creating Interactions in VR with Motion Controllers
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
eRNtgFo6iU0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 59:50
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/eRNtgFo6iU0/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[OBJECT:TopicCompactVideo]
+
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- Creating Interactions in VR With Motion Controllers Part 2
+ 02 - Blueprint Creating Interactions in VR with Motion Controllers
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
utOahIZgKgc
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 57:44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/utOahIZgKgc/maxresdefault.jpg
+ [/PARAMLITERAL]
+[/OBJECT]
+[OBJECT:VideoSeriesLink]
+ [PARAMLITERAL:title]
+ 01 - Blueprint Creating Interactions in VR with Motion Controllers
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ fcmRGkpWefY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 48:20
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/fcmRGkpWefY/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[/REGION]
+[region:blank]
+[/region]
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.JPN.udn b/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.JPN.udn
index 1998de044ddb..b00739beaef5 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.JPN.udn
@@ -1,65 +1,95 @@
-INTSourceChangelist:3275566
+INTSourceChangelist:3477690
Availability:Public
Title:Google VR と Daydream デバイス
Crumbs:%ROOT%, Platforms/GoogleVR
-Description:Daydream デバイス特有の Google VR 機能
+Description:Daydream デバイス固有の Google VR 機能
Navigation:platform
Skilllevel:Intermediate
-Version:4.12
+Version:4.16
parent:Platforms/GoogleVR
type:overview
tags:VR
tags:Google VR
tags:Daydream
+topic-image:Platforms\GoogleVR\GoogleVR_Topic_Image.png
[TOC(start:2)]
[region:note]
-Google では、Daydream の使用方法を詳しく説明しているマニュアルを提供しています。[Offical Google Daydream Unreal](https://developers.google.com/vr/unreal/) のヘルプサイトをご覧ください。
+Google では、Daydream の詳しい使用方法を解説したマニュアルを提供しています。[Offical Google Daydream Unreal](https://developers.google.com/vr/unreal/) のヘルプサイトをご覧ください。
[/region]
-Google VR はほとんどの Android ベースのデバイスで使用できますが、Daydream デバイスのみに有効な機能もいくつかあります。これらの機能とプロジェクトでの使用方法について、次のセクションで説明します。
+Google VR はほとんどの Android ベースのデバイスで使用できますが、Daydream デバイス固有の機能もいくつかあります。これらの機能およびプロジェクトでの使用方法について、次のセクションで説明します。
## Google VR UE4 Branch をダウンロードする
-Google Daydream VR が提供するすべてのビルド済み機能を取得するために、以下のリンクにある UE4 の特別バージョンをダウンロードおよびコンパイルする必要があります。このバージョンには、Google が好む方法で Daydream Motion Controller を表示するために必要なコードとアセットが含まれています。
+Google Daydream VR のビルド済み機能をすべて取得するためには、以下のリンクから UE4 の特別版をダウンロードしコンパイルする必要があります。この特別版には、Google 方式による Daydream Motion Controller の表示に必要なコードとアセットが含まれています。
-* [Google VR Github Pull](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr)
+* [Google VR Github Pull](https://github.com/googlevr-unreal/UnrealEngine/releases)
-このバージョンのダウンロードが完了したら、[Github からアンリアルをZipでダウンロードする方法](GettingStarted/DownloadingUnrealEngine/DownloadZip) の説明に従って、残りのセットアップを完了させます。
+ダウンロードが完了したら、[Github からアンリアルをZipでダウンロードする方法](GettingStarted/DownloadingUnrealEngine/DownloadZip) の説明に従って残りのセットアップを完了させます。
-## Android NDK 11c
-Daydream の機能にフルアクセスするためには、Android NDK version 11c のダウンロードおよびインストールが必要となります。
+## Android NDK 12b
+Daydream の機能へのフルアクセスには、Android NDK version 12b のダウンロードおよびインストールが必要となります。
-* [NDK 11c Downlaod](https://developer.android.com/ndk/downloads/index.html)
+* [NDK 12b Downlaod](https://developer.android.com/ndk/downloads/older_releases.html)
-ダウンロードおよびインストールが完了したら、**[Android SDK]** > **[SDKConfig]** セクションで NDK パスを NDK 11c のインストール先に変更し、SDK API level を **matchndk** に、NDK API Level を **android-24** にそれぞれ設定して、UE4 をNDK ファイルに指定する必要があります。
+ダウンロードおよびインストールが完了したら、**[Android SDK]** > **[SDKConfig]** セクションで NDK パスを NDK 12b のインストール先に変更して UE4 をNDK ファイルに指定し、SDK API level を **[matchndk]** に、NDK API Level を **[android-24]** にそれぞれ設定する必要があります。
-
+[REGION:lightbox]
+[(w:502)](GDaydream_New_NDK_00.png)
+[/REGION]
+
+[REGION:caption]
+クリックしてフルサイズで表示
+[/REGION]
## Scanline Racing
-**Scanline Racing** は、VR プロジェクトでのレイテンシーを減らすことができる Daydream 固有の機能です。Daydream デバイス向け Google VR プロジェクトで Scanline Racing を有効にするには、以下の操作を行います。
+**Scanline Racing** は、VR プロジェクトでのレイテンシーを低減できる Daydream 固有の機能です。Daydream デバイス向け Google VR プロジェクトで Scanline Racing を有効にするには、以下の操作を行います。
-1. **[Project Settings (プロジェクト設定)]** の **[Platforms]** > **[Android]** を選択します。
+1. **[Project Settings (プロジェクト設定)]** の **[Platforms]** で **[Android]** を選択します。**[APKPackaging]** セクションで、以下の設定を行います。
- 
+ * Minimum SDK Version:**24**
+ * Target SDK Version:**24**
-1. **[Build]** セクションの **[Support arm64[aka arm64-v8a]]** のチェックボックスにチェックを入れて有効にして、**Support arm7[aka armebi-v7a]** を無効にします。
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Arm64_Support_00.png)
+ [/REGION]
- 
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
+
+1. **[Build]** セクションで以下の設定を行います。
+ * Support armv7(aka armeabi-v7a):**Disabled**
+ * Support arm64 (aka arm64-v8a):**Enabled**
+
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Build_Support.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
[region:note]
- これを有効にすることで、arm64 ライブラリのコンパイルが必要な場合、最初のクックに大幅に時間が追加されます。
+ これを有効にしておくと、arm64 ライブラリのコンパイルが必要な時に、初回クック時間が大幅に追加されます。
[/region]
1. 次に、**[Advanced APKPackaging]** セクションの以下のオプションを有効にします。
- * **[Configure for deployment to Daydream]**
- * **[Configure GoogleVR Deployment Mode]**
- * **[Configure GoogleVR for low-latency rendering mode (scanline racing)]**
+ * [Configure GoogleVR Deployment Mode]:**Daydream**
+ * [Configure GoogleVR for sustained-performance mode]:**Enabled**
- 
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Scanline_Racing_Support_00.png)
+ [/REGION]
-そして UE プロジェクトをクックし、それを低レイテンシー レンダリング設定を有効にした Daydream デバイスにデプロイします。
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
+
+
+次回 UE プロジェクトをクックし、それを Daydream デバイスにデプロイする時に、低レイテンシー レンダリング設定が有効になります。
## モーション コントローラー
Daydream デバイス用モーション コントローラの操作は、HTC Vive や Oculus Rift のモーション コントローラーの操作とほぼ同じです。この機能を追加するには、以下の手順に従います。
@@ -70,7 +100,13 @@ UE4 で Google Daydream Controller のモーション コントローラーを
1. まず、プロジェクトの [Plugins] メニューを開き、[Input] セクションで **[Google VR Motion Controller]** を有効にします。
- 
+ [REGION:lightbox]
+ [(w:692)](GDaydream_Plugins.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
[region:note]
プラグインを使用するためには、UE4 エディタを再起動する必要があります。再起動しないと、Google VR モーション コントローラーを使用することができません。
@@ -91,41 +127,114 @@ UE4 で Google Daydream Controller のモーション コントローラーを
[/REGION]
[region:note]
- UE4 の 4.14 バイナリ ビルドを使用している場合、上のコンテンツはなくなるので、代わりに標準の Motion Controller コンポーネントを使用します。この機能のすべては、UE4 のリリース 4.15 に入る予定です。この機能がすぐに必要な場合、[UE4.13 Google VR version](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr) のダウンロードおよびコンパイルが必要になります。
+ UE4 の 4.14 バイナリ ビルドを使用している場合、上のコンテンツはなくなるので、代わりに標準の Motion Controller コンポーネントを使用します。この機能のすべては、UE4 バージョン 4.15 以降のリリースに含まれます。この機能がすぐに必要な場合、[UE4.13 Google VR version](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr) のダウンロードおよびコンパイルが必要になります。
[/region]
Google VR Motion Controller コンポーネントをポーンに設定したので、ブループリント エディタで **Google VR** を検索して見つけたノードを使用して、Motion Controller の機能の編集および調整をすることができます。
## トレーニング ストリーム
-これらのトレーニング ストリームでは、Motion Controller の設定、Motion Controller を使った VR でのインタラクション作成に関する追加リソースです。
+これらのトレーニング ストリームは、Motion Controller の設定、Motion Controller を使った VR でのインタラクション作成に関する追加リソースです。
-[REGION:topics third]
-[OBJECT:TopicCompactVideo]
+[PARAMLITERAL:width]
+320
+[/PARAMLITERAL]
+[PARAMLITERAL:height]
+170
+[/PARAMLITERAL]
+[PARAMLITERAL:units]
+px
+[/PARAMLITERAL]
+
+
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- モーション コントローラーの設定
+ ライブ トレーニング - モーション コントローラーの設定
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
6ALnsdQnkVQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 1:05:05
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/6ALnsdQnkVQ/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[OBJECT:TopicCompactVideo]
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- モーション コントローラーと VR のインタラクションの作成 (パート 1)
+ 01 - モーション コントローラーで VR でインタラクションを作成するブループリント
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
eRNtgFo6iU0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 59:50
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/eRNtgFo6iU0/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[OBJECT:TopicCompactVideo]
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- モーション コントローラーと VR のインタラクションの作成 (パート 2)
+ 02 - モーション コントローラーで VR でインタラクションを作成するブループリント
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
utOahIZgKgc
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 57:44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/utOahIZgKgc/maxresdefault.jpg
+ [/PARAMLITERAL]
+[/OBJECT]
+[OBJECT:VideoSeriesLink]
+ [PARAMLITERAL:title]
+ 01 - モーション コントローラーで VR でインタラクションを作成するブループリント
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ fcmRGkpWefY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 48:20
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/fcmRGkpWefY/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[/REGION]
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.KOR.udn b/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.KOR.udn
index 05dabf6ea58a..83cd7b7fd6ac 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/Daydream/Daydream.KOR.udn
@@ -1,16 +1,17 @@
-INTSourceChangelist:3275566
+INTSourceChangelist:3477690
Availability:Public
Title:구글 VR 과 데이드림 디바이스
Crumbs:%ROOT%, Platforms/GoogleVR
Description:데이드림 디바이스 전용 구글 VR 기능입니다.
Navigation:platform
Skilllevel: Intermediate
-Version: 4.12
+Version: 4.16
parent:Platforms/GoogleVR
type:overview
tags:VR
tags:Google VR
tags:Daydream
+topic-image:Platforms\GoogleVR\GoogleVR_Topic_Image.png
[TOC(start:2)]
@@ -24,40 +25,69 @@ Google VR (구글 VR)이 대부분의 안드로이드 기반 디바이스와 호
## Google VR UE4 브랜치 다운로드
Google Daydream VR 에서 미리 만들어 제공하는 기능을 전부 구하기 위해서는, 아래 링크에서 찾을 수 있는 UE4 특수 버전을 다운로드하고 컴파일해야 합니다. 이 버전의 UE4 에는 Daydream 모션 콘트롤러를 구글이 원하는 방식으로 표시하는 데 필요한 코드와 애셋이 들어있습니다.
-* [Google VR Github Pull](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr)
+* [Google VR Github Pull](https://github.com/googlevr-unreal/UnrealEngine/releases)
이 버전의 UE4 를 다운로드한 후, [](GettingStarted/DownloadingUnrealEngine/DownloadZip) 문서의 안내를 따라 나머지 구성 절차를 마무리합니다.
-## 안드로이드 NDK 11c
-Daydream 전체 기능에 접근하기 위해서는, 안드로이드 NDK 버전 11c 를 다운로드하여 설치해야 합니다.
+## 안드로이드 NDK 12b
+Daydream 전체 기능에 접근하기 위해서는, 안드로이드 NDK 버전 12b 를 다운로드하여 설치해야 합니다.
-* [NDK 11c 다운로드](https://developer.android.com/ndk/downloads/index.html)
+* [NDK 12b Downlaod](https://developer.android.com/ndk/downloads/older_releases.html)
-다운로드와 설치가 끝나면 UE4 가 새로운 NDK 파일을 사용하도록 해 줘야 하는데, **Android SDK** > **SDKConfig** 섹션에서 NDK 경로를 새로 설치한 NDK 11c 경로로 바꿔주고 SDK API 레벨을 **matchndk** 로, NDK API 레벨을 **android-24** 로 설정합니다.
+다운로드와 설치가 끝나면 UE4 가 새로운 NDK 파일을 사용하도록 해 줘야 하는데, **Android SDK** > **SDKConfig** 섹션에서 NDK 경로를 새로 설치한 NDK 12b 경로로 바꿔주고 SDK API 레벨을 **matchndk** 로, NDK API 레벨을 **android-24** 로 설정합니다.
-
+[REGION:lightbox]
+[(w:502)](GDaydream_New_NDK_00.png)
+[/REGION]
+
+[REGION:caption]
+클릭하면 이미지 원본을 확인합니다.
+[/REGION]
### 스캔라인 레이싱
Scanline Racing (스캔라인 레이싱)은 VR 프로젝트의 지연시간을 감소시켜 주는 데이드림 전용 기능입니다. 데이드림 디바이스용 구글 VR 프로젝트에서 스캔라인 레이싱 기능을 켜는 방법은 다음과 같습니다:
-1. **프로젝트 세팅** 을 열고 **플랫폼** > **안드로이드** 로 갑니다.
+1. **프로젝트 세팅** 을 열고 **플랫폼** > **안드로이드** 로 갑니다. **APKPackaging** 섹션 아래 다음과 같이 설정합니다:
- 
+ * Minimum SDK Version: **24**
+ * Target SDK Version: **24**
-1. **Build** (빌드) 섹션 아래 **Support arm64[aka arm64-v8a]** 이름 옆의 체크박스를 클릭하여 활성화시키고 **Support arm7[aka armebi-v7a]** 는 비활성화시킵니다.
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Arm64_Support_00.png)
+ [/REGION]
- 
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
+
+1. **Build** 섹션 아래 다음을 변경합니다:
+ * Support armv7(aka armeabi-v7a): **Disabled**
+ * Support arm64 (aka arm64-v8a): **Enabled**
+
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Build_Support.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
[region:note]
이 옵션을 활성화시키면 첫 쿠킹시 arm64 라이브러리가 컴파일되므로 시간이 크게 증가합니다.
[/region]
-1. 그런 다음 **Advanced APKPackaging** 섹션에서 다음 옵션을 켜줍니다.
- * **Configure for deployment to Daydream**
- * **Configure GoogleVR Deployment Mode**
- * **Configure GoogleVR for low-latency rendering mode (scanline racing)**
+1. 그리고 **Advanced APKPackaging** 섹션 아래 다음 옵션을 켜줍니다.
+ * Configure GoogleVR Deployment Mode: **Daydream**
+ * Configure GoogleVR for sustained-performance mode (scanline racing): **Enabled**
+
+ [REGION:lightbox]
+ [(w:502)](GDaydream_Scanline_Racing_Support_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
- 
다음 번 UE4 프로젝트를 쿠킹하고 데이드림 디바이스에 설치하면 지연시간이 낮은 렌더링이 가능해질 것입니다.
@@ -70,7 +100,13 @@ UE4 에서의 Google Daydream 모션 콘트롤러 사용법 관련 심화 내용
1. 먼저, 프로젝트의 플러그인 메뉴를 열고 Input 섹션에서 **Google VR Motion Controller** 플러그인을 켭니다.
- 
+ [REGION:lightbox]
+ [(w:692)](GDaydream_Plugins.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
[region:note]
참고로 플러그인을 사용하려면 UE4 에디터를 재시작해야 합니다. 그렇게 하지 않으면 Google VR 모션 콘트롤러를 사용할 수 없을 것입니다.
@@ -84,14 +120,14 @@ UE4 에서의 Google Daydream 모션 콘트롤러 사용법 관련 심화 내용
Motion Controller 컴포넌트는 VR 카메라와 같은 위치 및 높이를 사용할 것입니다.
[/region]
-1. 이제 프로젝트를 실행시키면 모션 콘트롤러가 다음 그림과 같아 보일 것입니다.
+1. 프로젝트를 실행시키면 모션 콘트롤러가 다음 그림과 같아 보일 것입니다.
[REGION:lightbox]
[(w:724)](unreal-controller-model.png)
[/REGION]
[region:note]
- UE4 4.14 바이너리 빌드를 사용중인 경우, 위 콘텐츠가 없어 표준 Motion Controller 컴포넌트를 대신 사용해야 할 것입니다. 이 기능 전부 UE4 4.15 버전에 들어갑니다. 지금 이 기능이 필요한 경우, [UE4.13 Google VR version](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr) 을 다운로드하여 컴파일해야 할 것입니다.
+ UE4 4.14 바이너리 빌드를 사용중인 경우, 위 콘텐츠가 없어 표준 Motion Controller 컴포넌트를 대신 사용해야 할 것입니다. 이 기능 전부 UE4 4.15 이후 버전에 포함되어 있습니다. 지금 이 기능이 필요한 경우, [UE4.13 Google VR version](https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr) 을 다운로드하여 컴파일해야 할 것입니다.
[/region]
폰에 Google VR Motion Controller 컴포넌트가 생겼으니, 이제 모션 콘트롤러의 작동 방식을 편집할 수 있습니다. 블루프린트 에디터에서 **Google VR** 을 검색하여 찾은 노드를 사용하면 됩니다.
@@ -100,32 +136,105 @@ UE4 에서의 Google Daydream 모션 콘트롤러 사용법 관련 심화 내용
아래 교육 자료는 모션 콘트롤러 구성 및 활용을 통한 VR 에서의 상호작용 생성에 관련된 것입니다.
-[REGION:topics third]
-[OBJECT:TopicCompactVideo]
+[PARAMLITERAL:width]
+320
+[/PARAMLITERAL]
+[PARAMLITERAL:height]
+170
+[/PARAMLITERAL]
+[PARAMLITERAL:units]
+px
+[/PARAMLITERAL]
+
+
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- 모션 콘트롤러 구성
+ 라이브 트레이닝 - VR 모션 컨트롤러 셋업
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
6ALnsdQnkVQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 1:05:05
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/6ALnsdQnkVQ/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[OBJECT:TopicCompactVideo]
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- 모션 콘트롤러를 활용한 VR 상호작용 제작 - 1 부
+ 01 - 모션 컨트롤러로 VR 에서 인터랙션 생성 블루프린트
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
eRNtgFo6iU0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 59:50
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/eRNtgFo6iU0/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[OBJECT:TopicCompactVideo]
+[OBJECT:VideoSeriesLink]
[PARAMLITERAL:title]
- 모션 콘트롤러를 활용한 VR 상호작용 제작 - 2 부
+ 02 - 모션 컨트롤러로 VR 에서 인터랙션 생성 블루프린트
[/PARAMLITERAL]
[PARAMLITERAL:videoid]
utOahIZgKgc
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 57:44
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/utOahIZgKgc/maxresdefault.jpg
+ [/PARAMLITERAL]
+[/OBJECT]
+[OBJECT:VideoSeriesLink]
+ [PARAMLITERAL:title]
+ 01 - Blueprint Creating Interactions in VR with Motion Controllers
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ fcmRGkpWefY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:playlist]
+ PLZlv_N0_O1gY7G589Z3I5-Dz7AdFSIWaG
+ [/PARAMLITERAL]
+ [PARAMLITERAL:duration]
+ 48:20
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAMLITERAL:linktype]
+ block
+ [/PARAMLITERAL]
+ [PARAMLITERAL:thumbnail]
+ https://i.ytimg.com/vi/fcmRGkpWefY/maxresdefault.jpg
[/PARAMLITERAL]
[/OBJECT]
-[/REGION]
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.INT.udn b/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.INT.udn
index c155ec3d3327..82ba815350a9 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.INT.udn
@@ -12,6 +12,9 @@ tags:Google VR
tags:Platform
prereq: Platforms/Android/GettingStarted/
social-image:googlevr_social.png
+topic-image:GoogleVR_Topic_Image.png
+
+
[region:note]
Google has a provided a very detailed document that goes over everything you need to know to get the most out of Daydream. You can find the documents by going to the [Offical Google Daydream Unreal](https://developers.google.com/vr/unreal/) help site.
@@ -21,13 +24,13 @@ Google has a provided a very detailed document that goes over everything you nee
The GoogleVR Quick Start will walk you through getting your PC and Android-based smartphone to work with UE4 and Google VR.
-[DIR(output:"listbutton" type:"quick start" parent:"Platforms/GoogleVR")]
+[DIR(output:"topic" type:"quick start" parent:"Platforms/GoogleVR")]
## Google VR Daydream
-Daydream is a part of Google VR that adds specific support for rendering optimizations and the use of Motion Controllers.
-
-[DIR(output:"listbutton" type:"overview" parent:"Platforms/GoogleVR")]
+Google Daydream allows you to enable certain rendering optimizations and use Motion Controllers when targeting Daydream devices through the Google VR SDK.
+[DIR(output:"topic" type:"overview" parent:"Platforms/GoogleVR")]
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.JPN.udn b/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.JPN.udn
index 7a95aafcca61..4d86a9cb332a 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.JPN.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3275566
-Title:Google VR 開発
+INTSourceChangelist:3432707
+Title:Google VR の開発
Crumbs:%ROOT%, Platforms
Description:
Availability:Public
@@ -13,6 +13,9 @@ tags:Google VR
tags:Platform
prereq:Platforms/Android/GettingStarted/
social-image:googlevr_social.png
+topic-image:GoogleVR_Topic_Image.png
+
+
[region:note]
Google では、Daydream の使用方法を詳しく説明しているマニュアルを提供しています。[Offical Google Daydream Unreal](https://developers.google.com/vr/unreal/) のヘルプサイトをご覧ください。
@@ -20,15 +23,15 @@ Google では、Daydream の使用方法を詳しく説明しているマニュ
## はじめよう
-PC および Android ベースのスマートフォンを使って UE4 と Google VR を使う方法を説明します。
+GoogleVR クイックスタートでは、PC および Android ベースのスマートフォンでの UE4 および Google VR の使用方法を説明します。
-[DIR(output:"listbutton" type:"quick start" parent:"Platforms/GoogleVR")]
+[DIR(output:"topic" type:"quick start" parent:"Platforms/GoogleVR")]
## Google VR Daydream
-Daydream は、レンダリングの最適化とモーション コントロールの使用に特別に対応した Google VR の一部です。
-
-[DIR(output:"listbutton" type:"overview" parent:"Platforms/GoogleVR")]
+Daydream はレンダリングの最適化とモーション コントロールの使用に対応するために Google VR に追加されました。
+[DIR(output:"topic" type:"overview" parent:"Platforms/GoogleVR")]
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.KOR.udn b/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.KOR.udn
index f6012ec3073f..48b7e8688df5 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/GoogleVR.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3275566
+INTSourceChangelist:3432707
Title:구글 VR 개발
Crumbs:%ROOT%, Platforms
Description:
@@ -13,6 +13,9 @@ tags:Google VR
tags:Platform
prereq: Platforms/Android/GettingStarted/
social-image:googlevr_social.png
+topic-image:GoogleVR_Topic_Image.png
+
+
[region:note]
Google 에서는 Daydream 을 최대한 활용하기 위해 알아야하는 것들이 총망라된 매우 자세한 문서를 제공하고 있습니다. [공식 Google Daydream Unreal](https://developers.google.com/vr/unreal/) 도움말 사이트에서 문서를 찾아보실 수 있습니다.
@@ -22,13 +25,13 @@ Google 에서는 Daydream 을 최대한 활용하기 위해 알아야하는 것
GoogleVR 퀵스타트는 PC 와 안드로이드 기반 스마트폰에서 UE4 와 Google VR (구글 VR) 이 작동하도록 하기 위한 준비작업을 안내해 드립니다.
-[DIR(output:"listbutton" type:"quick start" parent:"Platforms/GoogleVR")]
+[DIR(output:"topic" type:"quick start" parent:"Platforms/GoogleVR")]
## 구글 VR 데이드림
Daydream (데이드림)은 구글 VR 의 일부로, 몇 가지 렌더링 최적화 기능 및 모션 콘트롤러 사용을 지원합니다.
-[DIR(output:"listbutton" type:"overview" parent:"Platforms/GoogleVR")]
-
+[DIR(output:"topic" type:"overview" parent:"Platforms/GoogleVR")]
+
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.INT.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.INT.udn
index f421df8a5ac0..fe9f15330ff1 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.INT.udn
@@ -4,7 +4,7 @@ Crumbs:%ROOT%, Platforms/GoogleVR
Description:Creating a UE4 project that can be used with Google VR.
Navigation:platform
Skilllevel: Intermediate
-Version: 4.12
+Version: 4.16
Parent:Platforms/GoogleVR/QuickStart
order:1
type:multi-step
@@ -21,15 +21,33 @@ Google has a provided a very detailed document that goes over everything you nee
1. From the UE4 Launcher make sure that you have UE4 version **4.12** or later downloaded and installed then press the **Launch** button to open the **Unreal Project Browser**.
- 
+ [REGION:lightbox]
+ [(w:682)](GVRQS_Launcher_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
1. In the Unreal Project Browser, go to the **New Project** section and select the **Blueprint** base project option.
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
1. Due to the demanding rendering requirements of VR in general, it is best to start out any new UE4 VR project with the following settings to ensure that your project will run at the correct frame rate right from the start.
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_01.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
* **Blank Project**
* **Mobile / Tablet**
* **Scalable 3D / 2D**
@@ -37,13 +55,25 @@ Google has a provided a very detailed document that goes over everything you nee
1. Set the location where the project will be created and also give the project a name.
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_02.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
* For this example the project name will be **GVR_QS**.
1. Finally, press the **Create Project** button that is located in the lower right-hand corner to create the project.
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_03.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
In the next section of the Google VR Quick Start, we will go over all the needed project settings to ensure that your UE4 project will work with Google VR.
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.JPN.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.JPN.udn
index dae2f4c5cea2..2ee30294fec8 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.JPN.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3275566
+INTSourceChangelist:3451711
Availability:Public
-Title:1.Google VR プロジェクトを作成する
+Title:1.Google VR プロジェクトの作成方法
Crumbs:%ROOT%, Platforms/GoogleVR
Description:Google VR 向け UE4 プロジェクトの作成
Navigation:platform
Skilllevel:Intermediate
-Version:4.12
+Version:4.16
Parent:Platforms/GoogleVR/QuickStart
order:1
type:multi-step
@@ -15,22 +15,40 @@ tags:Google VR
[NAV]
[region:note]
-Google のマニュアルで、Daydream の使用方法が詳しく説明されています。[Offical Google Daydream Unreal](https://developers.google.com/vr/unreal/) のヘルプサイトをご覧ください。
+Google のマニュアルに Daydream の使用方法に関する詳細な説明があります。[Offical Google Daydream Unreal](https://developers.google.com/vr/unreal/) のヘルプサイトをご覧ください。
[/region]
- このセクションでは、Google VR 開発に最も適した設定で新規に UE4 プロジェクトを作成する方法を説明します。
+ このセクションでは、Google VR 開発に最も適した設定で UE4 プロジェクトを新規作成する方法を説明します。
-1. UE ランチャーから UE4 のバージョン **4.12** 以上がダウンロードおよびインストールされていることを確認して、**[Launch]** ボタンを押して **[Unreal Project Browser]** を開きます。
+1. UE ランチャーから UE4 のバージョン **4.12** 以降がダウンロードおよびインストールされていることを確認して、**[Launch]** ボタンを押して **[Unreal Project Browser]** を開きます。
- 
+ [REGION:lightbox]
+ [(w:682)](GVRQS_Launcher_00.png)
+ [/REGION]
-1. [Unreal Project Browser] の **[New Project]** セクションから **[Blueprint]**ベース プロジェクト オプションを選択します。
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
- 
+1. [Unreal Project Browser] の **[New Project]** セクションから **[Blueprint]** ベース プロジェクト オプションを選択します。
+
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
1. 一般的に VR のレンダリング要件は厳しいので、プロジェクトが最初から正しいフレームレートで動作するように、新規の UE4 プロジェクトには以下の設定をお勧めします。
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_01.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
* **Blank プロジェクト**
* **Mobile / Tablet**
* **Scalable 3D / 2D**
@@ -38,13 +56,25 @@ Google のマニュアルで、Daydream の使用方法が詳しく説明され
1. プロジェクトの作成先を設定し、プロジェクト名を付けます。
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_02.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
* この例ではプロジェクトに **「GVR_QS」** という名前を付けます。
1. 最後に、右下隅にある **[Create Project (プロジェクトを作成)]** ボタンを押してプロジェクトを作成します。
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_03.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
次のセクションでは、UE4 プロジェクトが Google VR で確実に動くようにプロジェクト設定を行います。
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.KOR.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.KOR.udn
index 105325d5abf0..93ef96290eab 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/1/GoogleVRQuickStart_1.KOR.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3275566
+INTSourceChangelist:3451711
Availability:Public
Title:1. 구글 VR 프로젝트 생성
Crumbs:%ROOT%, Platforms/GoogleVR
Description:구글 VR 작업이 가능한 UE4 프로젝트를 생성합니다.
Navigation:platform
Skilllevel: Intermediate
-Version: 4.12
+Version: 4.16
Parent:Platforms/GoogleVR/QuickStart
order:1
type:multi-step
@@ -22,15 +22,33 @@ Google 에서는 Daydream 을 최대한 활용하기 위해 알아야하는 것
1. UE4 런처에서 UE4 버전이 **4.12** 이상인지 확인, 아니면 내려받은 뒤 설치하고, **실행** 버튼을 눌러 **언리얼 프로젝트 브라우저** 를 엽니다.
- 
+ [REGION:lightbox]
+ [(w:682)](GVRQS_Launcher_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
1. 언리얼 프로젝트 브라우저에서, **새 프로젝트** 섹션으로 가 **블루프린트** 기반 프로젝트 옵션을 선택합니다.
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
1. 일반적으로 VR 의 렌더링 요구사양이 높기에, 처음부터 적당한 프레임 속도를 보장하기 위해서는 다음과 같은 세팅으로 UE4 VR 프로젝트를 생성하는 것이 좋습니다.
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_01.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
* **공백 프로젝트**
* **모바일 / 타블렛**
* **스케일가능 3D / 2D**
@@ -38,13 +56,25 @@ Google 에서는 Daydream 을 최대한 활용하기 위해 알아야하는 것
1. 프로젝트 생성 위치를 설정하고 프로젝트에 이름도 지어줍니다.
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_02.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
* 이 예제에서 프로젝트 이름은 **GVR_QS** 입니다.
1. 마지막으로 우하단 구석의 **프로젝트 생성** 버튼을 눌러 프로젝트를 생성합니다.
- 
+ [REGION:lightbox]
+ [(w:555)](GVRQS_New_Project_Options_03.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
구글 VR 퀵 스타트 다음 회에서는 UE4 프로젝트가 구글 VR 과 정상 작동하도록 하는 데 필요한 프로젝트 세팅을 전부 살펴보도록 하겠습니다.
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.INT.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.INT.udn
index 3d2210c18c84..59f785926c20 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.INT.udn
@@ -4,7 +4,7 @@ Crumbs:%ROOT%, Platforms/GoogleVR
Description:Setting up a UE4 project to work with Google VR.
Navigation:platform
Skilllevel: Intermediate
-Version: 4.12
+Version: 4.16
Parent:Platforms/GoogleVR/QuickStart
order:2
type:multi-step
@@ -25,7 +25,13 @@ Google has a provided a very detailed document that goes over everything you nee
1. Inside of the Plugins menu, go the **Virtual Reality** section and make sure that **Google VR** is enabled.
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Pligin_GVR_Enabled_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
[region:note]
The Google VR plugin should be enabled by default. If it is not enabled, it can be enabled by clicking on the checkmark box next to **Enabled**. When you do this will be prompted to restart the UE4 Editor so that the changes can take place. Failing to re-start the UE4 editor after enabling the Google VR plugin could result in the plugin not working correctly.
@@ -62,21 +68,32 @@ Google has a provided a very detailed document that goes over everything you nee
1. Under the **Input** section in the **Mobile** category, remove the **DefaultVirtualJoysticks** from the **Default Touch Interface** by clicking on the small white triangle next to the DefaultVirtualJoysticks and selecting the **Clear** option from the drop-down list.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- -Ylbi1TCKZs
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ -Ylbi1TCKZs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 50
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
-1. In the **Platforms** section under the **Android** section press the **Configure Now** button in the **APKPackaging** and **Google Play Services** sections to ensure that our project can package properly.
+1. In the **Platforms** section under the **Android** section press the **Configure Now** button in the **APKPackaging** and **Google Play Services** sections to ensure that our project can package correctly.
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Config_Now_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
1. In the **APKPackaging** section make sure you have the following options set:
@@ -84,29 +101,50 @@ Google has a provided a very detailed document that goes over everything you nee
* **Disable verify OBB on first start/update:** Checked
* **Enable FullScreen Immersive on KitKat and above devices:** Checked
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_SDK_Version_00.png)
+ [/REGION]
-1. Locate the **Build** section and uncheck the **Support armv7 [aka armeabi-v7a]** option and make sure that both **Support arm64[aka arm64-v8a]** and **Support OpenGL ES2** are checked.
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
- 
+1. Locate the **Build** section set the following:
+
+ * **Support armv7 (aka armeabi-v7a):** Disabled
+ * **Support arm64 (aka arm64-v8a):** Enabled
+ * **Support OpenGL ES2:** Enabled
+
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Build_arm64_Support_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
1. Next, in the **Advanced APKPackaging** section and enable the following options:
- * **Configure for deployment to Daydream:** Checked
* **Configure GoogleVR Deployment Mode:** Daydream & Cardboard
- * **Configure GoogleVR for sustained performance mode:** Checked
+ * **Configure GoogleVR for sustained-performance mode:** Checked
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_GoogleVR_Options_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
[region:note]
- The Configure GoogleVR Deployment Mode has several options that when selected will do that following.
+ The Configure GoogleVR Deployment Mode has several options that when selected will do the following:
* **Cardboard:** Configure GoogleVR to run in Cardboard-only mode.
* **Daydream:** Configure GoogleVR to run in Daydream-only mode. In this mode, the app won't be able to run on NonDaydream-ready phones.
* **Daydream & Cardboard:** Configure GoogleVR to run in Daydream mode on Daydream-ready phones and fallback to Cardboard mode on NonDaydream-ready phones.
[/region]
-1. In the **Android SDK** section under the **SDKConfig** section set both the **SDK API Level** and **NDK API Level** to **android-24** instead of their defaults to ensure that your project will be compiled against the most recent Android SDK.
+1. In the **Android SDK** section under the **SDKConfig** section set the **SDK API Level** to **matchndk**. Then set the **NDK API Level** to **android-24** to ensure that your project will be compiled against the most recent Android SDK.

@@ -118,6 +156,6 @@ Google has a provided a very detailed document that goes over everything you nee
[/region]
-In the next section of the Google VR Quick Start, we will go over what you have to do to package your UE4 project, so it will run on a Google VR device.
+In the next section of the Google VR Quick Start, we will go over what you have to do to package your UE4 project so that it will run on a Google VR device.
[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.JPN.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.JPN.udn
index f702b6ebdbac..337588e182d7 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.JPN.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3275566
+INTSourceChangelist:3477690
Availability:Public
-Title:2.Google VR プロジェクトを設定する
+Title:2.Google VR プロジェクトの設定
Crumbs:%ROOT%, Platforms/GoogleVR
-Description:Google VR で使う UE4 プロジェクトの設定方法
+Description:UE4 プロジェクトを Google VR 向けにセットアップする
Navigation:platform
Skilllevel:Intermediate
-Version:4.12
+Version:4.16
Parent:Platforms/GoogleVR/QuickStart
order:2
type:multi-step
@@ -15,21 +15,27 @@ tags:Google VR
[NAV]
[region:note]
-Google のマニュアルで、Daydream の使用方法が詳しく説明されています。[Offical Google Daydream Unreal](https://developers.google.com/vr/unreal/) のヘルプサイトをご覧ください。
+Google のマニュアルに Daydream の使用方法に関する詳細な説明があります。[Google Daydream Unreal 公式サイト](https://developers.google.com/vr/unreal/) のヘルプをご覧ください。
[/region]
- このセクションでは、UE4 プロジェクトを Google VR で使用するためのセットアップを行います。
+ このセクションでは、UE4 プロジェクトを Google VR 向けにセットアップします。
-1. UE4 エディタをロードしたら、**メインツールバー** から **[Edit (編集)]** タブを開いて、**Plugins** メニュー アイテムを選択します。
+1. UE4 エディタをロードしたら、**メイン ツールバー** から **[Edit (編集)]** タブを開き **[Plugins]** メニュー アイテムを選択します。

1. [Plugins] メニューから **[Virtual Reality]** セクションを開いて、**[Google VR]** が有効にされていることを確認します。
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Pligin_GVR_Enabled_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
[region:note]
- Google VR プラグインはデフォルトで有効にされています。有効になっていない場合は、**[Enabled (有効にする)]** の横のチェックボックスをクリックすれば有効になります。この変更を反映するために、UE4 エディタを再起動のプロンプトが表示されます。Google VR プラグインを有効にした場合、UE4 エディタを再起動しないと、プラグインが正常に動作しません。
+ Google VR プラグインはデフォルトで有効にされています。有効にするには、**[Enabled (有効にする)]** の横のチェックボックスをクリックします。この変更を反映するために、UE4 エディタを再起動のプロンプトが表示されます。Google VR プラグインを有効にした場合、UE4 エディタを再起動しないとプラグインが正常に動作しません。
[/region]
1. メインツールバーから **[File]** オプションを選択して **[Save (保存する)]** オプションをクリックして **[Save Level As (名前をつけて保存)]** ウィンドウを表示します。
@@ -44,7 +50,7 @@ Google のマニュアルで、Daydream の使用方法が詳しく説明され

-1. [Project Settings (プロジェクト設定)] メニューから **[Maps & Modes]** セクションの **[Default Maps]** セクションを開いて、**[Editor Startup Map]** と **[Game Default Map]** を EntryLevel map に変更して、プロジェクトが起動すると EntryLevel map が確実にロードされるようにします。
+1. [Project Settings (プロジェクト設定)] メニューから **[Maps & Modes]** セクションの **[Default Maps]** セクションを開いて、**[Editor Startup Map]** と **[Game Default Map]** を EntryLevel map に変更して、プロジェクトが起動すると必ず EntryLevel map がロードされるようにします。

@@ -53,31 +59,44 @@ Google のマニュアルで、Daydream の使用方法が詳しく説明され

[region:note]
- **[Pending Changes (変更を保留)]** セクションの下に **[Restart Editor (エディタを再起動)]** ボタンが表示されていたら押して、変更箇所が反映されるようにエディタを再起動します。再起動しないと、プロジェクトで Google VR が動きません。
+ 変更を反映するために **[Pending Changes (変更を保留)]** セクションの下に表示される **[Restart Editor (エディタを再起動)]** ボタンを必ず押してエディタを再起動してください。
+ 再起動しないと、プロジェクトで Google VR が動きません。

[/region]
-1. ステレオスコピック レンダリングを正常に行うためには **[Rendering (レンダリング)]** セクションの **[Mobile HDR]** が無効になっていなければならないので、それを確認します。
+1. ステレオスコピック レンダリングを正常に行うために **[Rendering (レンダリング)]** セクションの **[Mobile HDR]** が無効になっていることを確認します。

-1. **[Input (入力)]** セクションの **[Mobile]** カテゴリで、DefaultVirtualJoysticks の横の小さな白い三角をクリックし、トップダウン リストから **[Clear]** オプションを選択して、**Default Touch Interface** から **Default Touch Interface** を削除します。
+1. **[Input (入力)]** セクションの **[Mobile]** カテゴリで、DefaultVirtualJoysticks の横の小さな白い三角をクリックし、トップダウン リストから **[Clear]** オプションを選択して、**[Default Touch Interface]** から **[Default Touch Interface]** を削除します。
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- -Ylbi1TCKZs
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ -Ylbi1TCKZs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 50
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+ [/OBJECT]
-1. **[Platforms]** > **[Android]** セクションの **[APKPackaging]** と **[Google Play Services]** セクションの中にある **[Configure Now (今すぐ設定する)]** ボタンを押して、プロジェクトを正しくパッケージ化されるようにします。
+1. プロジェクトが正しくパッケージ化されるように、**[Platforms]** > **[Android]** セクションの **[APKPackaging]** と **[Google Play Services]** セクションの中にある **[Configure Now (今すぐ設定する)]** ボタンを押します。
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Config_Now_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
1. **[APKPackaging]** セクションのオプションを以下の設定にしてください。
@@ -85,29 +104,50 @@ Google のマニュアルで、Daydream の使用方法が詳しく説明され
* **[Disable verify OBB on first start/update]:** チェックを入れる
* **[Enable FullScreen Immersive on KitKat and above devices]:** チェックを入れる
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_SDK_Version_00.png)
+ [/REGION]
-1. **[Build]** セクションの **Support armv7 [aka armeabi-v7a]** オプションのチェックを外し、**[Support arm64[aka arm64-v8a]]** と **[Support OpenGL ES2]** に両方ともチェックを入れます。
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
- 
+1. **[Build]** セクションを以下のように設定します。
+
+ * **Support armv7 (aka armeabi-v7a):* ** Disabled
+ * **Support arm64 (aka arm64-v8a):** Enabled
+ * **Support OpenGL ES2:** Enabled
+
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Build_arm64_Support_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
1. **[Advanced APKPackaging]** セクションの以下のオプションを有効にします。
- * **[Configure for deployment to Daydream]:** チェックを入れる
* **[Configure GoogleVR Deployment Mode]:** Daydream & Cardboard
- * **[Configure GoogleVR for sustained performance mode]:** チェックを入れる
+ * **Configure GoogleVR for sustained-performance mode:** チェックを入れる
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_GoogleVR_Options_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
[region:note]
- [Configure GoogleVR Deployment Mode] にには以下のような機能をもつオプションがあります。
+ [Configure GoogleVR Deployment Mode] には以下の機能がオプションで使えます。
* **[Cardboard]:** GoogleVR を Cardboard-only モードで実行します。
* **[Daydream]:** GoogleVR を Daydream-only モードで実行します。このモードの場合、アプリケーションは Daydream 非対応のスマートフォンでは動作しません。
* **[Daydream & Cardboard]:** Daydream 対応のスマートフォンで GoogleVR を Daydream モードで実行し、Daydream 非対応のスマートフォンでは Cardboard モードにフォールバックします。
[/region]
-1. **[Android SDK]** セクションの **[SDKConfig]** セクションで、**[SDK API Level]** および **[NDK API Level]** をデフォルトではなく **[android-24]** にして、プロジェクトが最新の Android SDK に対して確実にコンパイルされるようにします。
+1. **[Android SDK]** セクションの **[SDKConfig]** セクションで、**[NDK API Level]** を **[matchndk]** に設定します。次に **[NDK API Level]** を **[android-24]** にして、プロジェクトが最新の Android SDK に対して確実にコンパイルされるようにします。

@@ -119,7 +159,6 @@ Google のマニュアルで、Daydream の使用方法が詳しく説明され
[/region]
-
次のセクションでは、UE4 プロジェクトをパッケージ化して、Google VR デバイスで動作するようにします。
[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.KOR.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.KOR.udn
index aa1097cd5840..e819c1685429 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/2/GoogleVRQuickStart_2.KOR.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3275566
+INTSourceChangelist:3477690
Availability:Public
Title:2. 구글 VR 프로젝트 구성
Crumbs:%ROOT%, Platforms/GoogleVR
Description:구글 VR 작업용 UE4 프로젝트 구성법입니다.
Navigation:platform
Skilllevel: Intermediate
-Version: 4.12
+Version: 4.16
Parent:Platforms/GoogleVR/QuickStart
order:2
type:multi-step
@@ -26,7 +26,13 @@ Google 에서는 Daydream 을 최대한 활용하기 위해 알아야하는 것
1. Plugins 메뉴에서 **Virtual Reality** (가상 현실) 섹션으로 가 **Google VR** (구글 VR)이 활성화되어 있는지 확인합니다.
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Pligin_GVR_Enabled_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
[region:note]
구글 VR 플러그인은 기본적으로 활성화되어 있을 것입니다. 그렇지 않은 경우, 그 옆의 체크박스를 클릭하면 **Enabled** (활성화)됩니다. 그러면 변경사항 적용을 위해 UE4 에디터를 재시작하라는 창이 뜹니다. 구글 VR 플러그인 활성화 후 UE4 에디터를 재시작하지 않으면 플러그인이 정상 작동하지 않을 수 있습니다.
@@ -63,21 +69,32 @@ Google 에서는 Daydream 을 최대한 활용하기 위해 알아야하는 것
1. **Input** (입력) 섹션 아래 **Mobile** 카테고리에서, **Default Touch Interface** (기본 터치 인터페이스)의 **DefaultVirtualJoysticks** 옆 작은 하양 삼각형을 클릭하면 뜨는 드롭다운 목록에서 **Clear** (비우기) 옵션을 눌러 제거합니다.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- -Ylbi1TCKZs
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ -Ylbi1TCKZs
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 50
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
1. **Android** (안드로이드) 섹션 아래 **Platforms** (플랫폼) 부분에서 **APKPackaging** (APK 패키징)과 **Google Play Services** (구글 플레이 서비스) 섹션의 **Configure Now** (지금 환경설정) 버튼을 눌러 프로젝트가 패키징을 제대로 할 수 있도록 합니다.
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Config_Now_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
1. **APKPackaging** 섹션에서 다음 옵션이 설정되었는지 확인합니다:
@@ -85,19 +102,40 @@ Google 에서는 Daydream 을 최대한 활용하기 위해 알아야하는 것
* **Disable verify OBB on first start/update:** (첫 시작/업데이트시 OBB 검증 끄기 - 체크
* **Enable FullScreen Immersive on KitKat and above devices:** (KitKat 이상 디바이스에서 전체화면 몰입 모드 켜기) - 체크
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_SDK_Version_00.png)
+ [/REGION]
-1. **Build** 섹션을 찾아 **Support armv7 [aka armeabi-v7a]** 옵션 체크를 해제하고 **Support arm64[aka arm64-v8a]** 와 **Support OpenGL ES2** 둘 다 체크되었는지 확인합니다.
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
- 
+1. **Build** 섹션을 찾아 다음과 같이 설정합니다:
+
+ * **Support armv7 (aka armeabi-v7a):** 꺼짐
+ * **Support arm64 (aka arm64-v8a):** 켜짐
+ * **Support OpenGL ES2:** 켜짐
+
+ [REGION:lightbox]
+ [(w:500)](GVRQS_Build_arm64_Support_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
1. 다음, **Advanced APKPackaging** 섹션에서 다음 옵션을 켜줍니다:
- * **Configure for deployment to Daydream:** (Daydream 으로 설치를 위한 환경설정) 체크
* **Configure GoogleVR Deployment Mode:** (GoogleVR 디플로이 모드 환경설정) Daydream & Cardboard
- * **Configure GoogleVR for sustained performance mode:** (GoogleVR 지속 퍼포먼스 모드 환경설정) 체크
+ * **Configure GoogleVR for sustained-performance mode:** (GoogleVR 지속 퍼포먼스 모드 환경설정) 체크
- 
+ [REGION:lightbox]
+ [(w:500)](GVRQS_GoogleVR_Options_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
[region:note]
Configure GoogleVR Deployment Mode 에는 여러가지 옵션이 있으며, 하는 일은 다음과 같습니다.
@@ -107,7 +145,7 @@ Google 에서는 Daydream 을 최대한 활용하기 위해 알아야하는 것
[/region]
-1. **Android SDK** (안드로이드 SDK) 섹션의 **SDKConfig** (SDK 환경설정) 섹션 아래 **SDK API Level** 과 **NDK API Level** 둘 다 기본값이 아닌 **android-24** 로 설정하여 프로젝트가 가장 최신의 안드로이드 SDK 로 컴파일되도록 합니다.
+1. **Android SDK** (안드로이드 SDK) 섹션의 **SDKConfig** (SDK 환경설정) 섹션 아래 **SDK API Level** 을 **matchndk** 로 설정합니다. 그리고 **NDK API Level** 을 **android-24** 로 설정하여 프로젝트가 가장 최신의 안드로이드 SDK 로 컴파일되도록 합니다.

diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.INT.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.INT.udn
index d11730c35e01..22e9880f360f 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.INT.udn
@@ -4,7 +4,7 @@ Crumbs:%ROOT%, Platforms/GoogleVR
Description:Packing and deploying a UE4 project that can be used with Google VR
Navigation:platform
Skilllevel: Intermediate
-Version: 4.12
+Version: 4.16
Parent:Platforms/GoogleVR/QuickStart
order:3
type:multi-step
@@ -13,50 +13,64 @@ tags:Google VR
[NAV]
-In this section of the Google VR Quick Start, we will go over what you have to do to package your UE4 project so it will run on a Google VR device.
+In this section of the Google VR Quick Start, we will go over what you have to do to package your UE4 project so that it will run on a Google VR device.
[region:note]
-Before going any further make sure that the Smartphone used for testing has been plugged into your development PC via a USB cable.
+Before going any further make sure that the Smartphone used for testing has been plugged into your development PC via a USB cable and make also make sure that ADB can see your phone as an authorized device. If you are unsure how to do or are having problems getting ADB to see your device, check out the following page for more information [Android How - To Set Up Your Android Device](https://docs.unrealengine.com/latest/INT/Platforms/Android/GettingStarted/2/).
[/region]
1. To start the packing process, go to the **Main Toolbar** and from the **File** menu go to **Package Project** > **Android** > **Android (ATC)**.
- 
+ 
1. Once Android(ATC) has been selected, you will be presented with a Windows dialogue box. From this dialogue press, the **Make New Folder** option and call the folder **Androids_Builds**. Once the folder has been created, press the **Okay** button to begin the packing process.
- 
+ 
1. While the project is being packed, a status window will be displayed in the lower right-hand corner of the UE4 Editor.
-
- [region:tip]
- For a more detailed look on what is going on during packing, click on the **Output Log** window.
- [/region]
+
+ [region:tip]
+ For a more detailed look on what is going on during packing, click on the **Output Log** window.
+ [/region]
- 
+ [REGION:lightbox]
+ [(w:645)](GVRQS_Package_Progress_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
1. Once the project has been packaged, open the Androids_Builds folder and double-click on the **Install_GVR_QS_Development-armv7-es2.bat** file to install the project to your Android Smartphone.
- [region:warning]
- In order for this to work, you will need to make sure that your Android Smartphone is plugged into your development PC via a USB cable. Failing to do this will result in the project not being installed on the device.
- [/region]
- 
+ [region:warning]
+ For this to work, you will need to make sure that your Android Smartphone is plugged into your development PC via a USB cable. Failing to do this will result in the project not being installed on the device.
+ [/region]
+ 
-1. Once the .BAT file has been run a command line window will be displayed showing you the progress of the install. When the install is complete the command line window will automatically close.
+1. Once the .BAT file has been run a command line window will be displayed showing you the progress of the install. When the install is complete, the command line window will automatically close.
- 
+ 
1. Unplug your Smartphone from your PC and then look for an app called **GVR_QS** tap on the GVR_QS icon to launch the project.
- 
+ 
1. When the GVR_QS project is viewed through a VR Headset, you should see something that looks similar to the following image.
- 
+ [REGION:lightbox]
+ [(w:720)](GVRQS_HMD_View_00.png)
+ [/REGION]
- [region:note]
- Make sure that your phone and UE4 are properly configured for the VR device you are using click on the **Gear** icon that is displayed while the app is running.
- 
- From this menu, you can scan the QR code that is on the side of your VR device and that will make sure that UE4 outputs an image that is compatible with your VR device.
- [/region]
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+
+ [region:note]
+ To make sure that your phone and UE4 are properly configured for the VR device you are using click on the **Gear** icon that is displayed while the app is running.
+
+ 
+
+ From the displayed menu, you can scan the QR code that is on the side of your VR device, and that will make sure UE4 outputs an image that is compatible with your VR device.
+ [/region]
[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.JPN.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.JPN.udn
index 641cba683e00..2bf81666f01a 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.JPN.udn
@@ -1,11 +1,11 @@
-INTSourceChangeList:3155346
+INTSourceChangelist:3477690
Availability:Public
-Title:3.Google VR プロジェクトをパックおよびデプロイする
+Title:3.Google VR プロジェクトのパッケージ化およびデプロイ方法
Crumbs:%ROOT%, Platforms/GoogleVR
Description:Google VR で使用できる UE4 プロジェクトのパックとデプロイ方法
Navigation:platform
Skilllevel:Intermediate
-Version:4.12
+Version:4.16
Parent:Platforms/GoogleVR/QuickStart
order:3
type:multi-step
@@ -20,29 +20,35 @@ tags:Google VR
次のステップに進む前に、使用する Android スマートフォンが USB で開発用 PC に接続されていることを確認してください。
[/region]
-1. パッキングを開始するには、**Main Toolbar** で **[File]** > **[Package Project]** > **[Android]** > **[Android (ATC)]** を選択します。
+1. パッケージ化を開始するには、**メイン ツールバー** で **[File]** > **[Package Project]** > **[Android]** > **[Android (ATC)]** を選択します。

-1. Android(ATC) を選択したら、Windows ダイアログ ボックスが表示されます。このダイアログの **[Make New Folder (新規フォルダを作成)]** オプションを押して、 **「Androids_Builds」** という名前にします。フォルダが作成されたら、**[OK]** ボタンを押してパッキング処理を開始します。
+1. Android(ATC) を選択したら、Windows ダイアログ ボックスが表示されます。このダイアログの **[Make New Folder (新規フォルダを作成)]** オプションを押して、 **「Androids_Builds」** という名前にします。フォルダが作成されたら、**[OK]** ボタンを押してパッケージ化処理を開始します。

-1. プロジェクトのパッキング処理中は、進捗バーが UE4 エディタの右下隅に表示されます。
+1. プロジェクトのパッケージ化処理中は、進捗バーが UE4 エディタの右下隅に表示されます。
[region:tip]
- パッキング処理中の詳細は、**[Output Log (出力ログ)]** ウィンドウに表示されます。
+ パッケージ化処理中の詳細は、**[Output Log (出力ログ)]** ウィンドウに表示されます。
[/region]
- 
+ [REGION:lightbox]
+ [(w:645)](GVRQS_Package_Progress_00.png)
+ [/REGION]
-1. プロジェクトがパックされたら、「Androids_Builds」フォルダを開いて **「Install_GVR_QS_Development-armv7-es2.bat」** ファイルをダブルクリックして、Android スマートフォンにプロジェクトをインストールしてください。
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
+
+1. プロジェクトがパッケージ化されたら、「Androids_Builds」フォルダを開いて **「Install_GVR_QS_Development-armv7-es2.bat」** ファイルをダブルクリックして、Android スマートフォンにプロジェクトをインストールしてください。
[region:warning]
このセクションでの作業では、Android スマートフォンが開発用マシンに USB で接続されている必要があります。接続されていないと、プロジェクトがデバイスにインストールされません。
[/region]

-1. 「.BAT」ファイルを実行すると、インストールの進捗状況を示すコマンドラインウィンドウが実行されます。インストールが完了すると、コマンドライン ウィンドウが自動的に閉じます。
+1. .BAT ファイルを実行すると、インストールの進捗状況を示すコマンドライン ウィンドウが実行されます。インストールが完了すると、コマンドライン ウィンドウが自動的に閉じます。

@@ -52,12 +58,20 @@ tags:Google VR
1. GVR_QS プロジェクトを VR ヘッドセットで見ると、以下のような画像になっているはずです。
- 
+ [REGION:lightbox]
+ [(w:720)](GVRQS_HMD_View_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
[region:note]
アプリケーションの実行中に **Gear** アイコンをクリックして、スマートフォンと UE4 が使用する VR デバイス用に適切に設定されていることを確認してください。
+

- このメニューから、VR デバイスの横にある QR コードをスキャンして、UE4 が VR デバイスと互換性のある画像を出力していることを確認することができます。
+
+ 表示されたメニューから、VR デバイスの横にある QR コードをスキャンして、UE4 が VR デバイスと互換性のある画像を出力していることを確認することができます。
[/region]
[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.KOR.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.KOR.udn
index ab12a038d943..be2dbab0807d 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/3/GoogleVRQuickStart_3.KOR.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3155346
+INTSourceChangelist:3477690
Availability:Public
Title:3. 구글 VR 프로젝트 패키징 & 개발
Crumbs:%ROOT%, Platforms/GoogleVR
Description:구글 VR 사용이 가능한 UE4 프로젝트 패키지 및 디플로이 방법 안내입니다.
Navigation:platform
Skilllevel: Intermediate
-Version: 4.12
+Version: 4.16
Parent:Platforms/GoogleVR/QuickStart
order:3
type:multi-step
@@ -34,7 +34,13 @@ tags:Google VR
패키징 도중 일어나는 작업에 대한 상세 내용은, **출력 로그** 창을 클릭하세요.
[/region]
- 
+ [REGION:lightbox]
+ [(w:645)](GVRQS_Package_Progress_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
1. 프로젝트 패키징이 완료되면, Androids_Builds 폴더에 들어가 **Install_GVR_QS_Development-armv7-es2.bat** 파일을 실행시켜 안드로이드 스마트폰에 프로젝트를 설치합니다.
[region:warning]
@@ -52,12 +58,20 @@ tags:Google VR
1. GVR_QS 프로젝트를 VR 헤드셋으로 보면, 다음 그림과 비슷한 것이 보일 것입니다.
- 
+ [REGION:lightbox]
+ [(w:720)](GVRQS_HMD_View_00.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 이미지 원본을 확인합니다.
+ [/REGION]
[region:note]
앱 실행중 표시되는 **기어** 아이콘을 클릭하여 폰과 UE4 가 제대로 환경설정 되었는지 확인하시기 바랍니다.
+

- 이 메뉴에서 VR 디바이스 측면의 QR 코드를 스캔하면 UE4 가 VR 디바이스와 호환되는 이미지를 출력하도록 해 줄 것입니다.
+
+ 표시되는 메뉴에서 VR 디바이스 측면의 QR 코드를 스캔하면 UE4 가 VR 디바이스와 호환되는 이미지를 출력하도록 해 줄 것입니다.
[/region]
[NAV]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.INT.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.INT.udn
index 2c136d39a53d..a71208acce8a 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.INT.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.INT.udn
@@ -6,8 +6,10 @@ Version: 4.12
SkillLevel: Intermediate
parent:Platforms/GoogleVR
type:quick start
+type:landing
tags:VR
tags:Google VR
+topic-image:Platforms\GoogleVR\GoogleVR_Cardboard_Topic_Image.png
The GoogleVR Quick Start will walk you through setting up your UE4 project to work with Google VR.
@@ -46,15 +48,6 @@ Google has a provided a very detailed document that goes over everything you nee
-
-
-
-
-
-
-
-
-
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.JPN.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.JPN.udn
index 1b64c28927a5..edfc5009d75f 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.JPN.udn
@@ -1,5 +1,5 @@
-TINTSourceChangelist:3275566
-itle:Google VR クイックスタート
+INTSourceChangelist:3432707
+Title:Google VR クイックスタート
Crumbs:%ROOT%, Platforms, Platforms/GoogleVR
Description:Google VR の設定および使用方法
Availability:Public
@@ -7,8 +7,10 @@ Version:4.12
SkillLevel:Intermediate
parent:Platforms/GoogleVR
type:quick start
+type:landing
tags:VR
tags:Google VR
+topic-image:Platforms\GoogleVR\GoogleVR_Cardboard_Topic_Image.png
このクイックスタートでは UE4 プロジェクトを Google VR で使用するための設定方法を説明します。
@@ -47,15 +49,6 @@ Google では、Daydream の使用方法を詳しく説明しているマニュ
-
-
-
-
-
-
-
-
-
diff --git a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.KOR.udn b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.KOR.udn
index e8b0fa984b85..92dfa19f63cf 100644
--- a/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/GoogleVR/QuickStart/GoogleVRQuickStart.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3275566
+INTSourceChangelist:3432707
Title:구글 VR 퀵 스타트
Crumbs:%ROOT%, Platforms, Platforms/GoogleVR
Description:구글 VR 구성 및 사용 방법 안내입니다.
@@ -7,8 +7,10 @@ Version: 4.12
SkillLevel: Intermediate
parent:Platforms/GoogleVR
type:quick start
+type:landing
tags:VR
tags:Google VR
+topic-image:Platforms\GoogleVR\GoogleVR_Cardboard_Topic_Image.png
Google VR (구글 VR) 퀵 스타트는 구글 VR 을 사용하는 UE4 프로젝트 구성 방법을 안내해 드립니다.
diff --git a/Engine/Documentation/Source/Platforms/HTML5/HTML5.INT.udn b/Engine/Documentation/Source/Platforms/HTML5/HTML5.INT.udn
index 785f904cf054..a53d628e4d0b 100644
--- a/Engine/Documentation/Source/Platforms/HTML5/HTML5.INT.udn
+++ b/Engine/Documentation/Source/Platforms/HTML5/HTML5.INT.udn
@@ -8,6 +8,8 @@ Version: 4.9
type:landing
parent:Platforms
tags:HTML5
+tags:Desktop
+Topic-image:HTML5Development_topic.png
HTML5 uses the emscripten tool chain from [Mozilla](https://www.mozilla.org/en-US/) to cross-compile C++ into Javascript.
diff --git a/Engine/Documentation/Source/Platforms/HTML5/HTML5.JPN.udn b/Engine/Documentation/Source/Platforms/HTML5/HTML5.JPN.udn
index 6fb396765472..07cd1cf0ae38 100644
--- a/Engine/Documentation/Source/Platforms/HTML5/HTML5.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/HTML5/HTML5.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3467293
Availability:Public
Title:HTML5 ゲームの開発
Crumbs:%ROOT%, Platforms
@@ -9,6 +9,8 @@ Version:4.9
type:landing
parent:Platforms
tags:HTML5
+tags:Desktop
+Topic-image:HTML5Development_topic.png
HTML5 は、[Mozilla](https://www.mozilla.org/en-US/) から Emscripten ツールチェーンを使用して、C++ を Javascript にクロスコンパイルします。
diff --git a/Engine/Documentation/Source/Platforms/HTML5/HTML5.KOR.udn b/Engine/Documentation/Source/Platforms/HTML5/HTML5.KOR.udn
index 498e34ebcbd3..2f14fbbfa0cd 100644
--- a/Engine/Documentation/Source/Platforms/HTML5/HTML5.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/HTML5/HTML5.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3467293
Availability: Public
Title: HTML5 게임 개발
Crumbs:%ROOT%, Platforms
@@ -9,6 +9,8 @@ Version: 4.9
type:landing
parent:Platforms
tags:HTML5
+tags:Desktop
+Topic-image:HTML5Development_topic.png
HTML5 는 [Mozilla](https://www.mozilla.org/en-US/) 의 emscripten 툴 체인을 사용하여 C++ 를 Javascript 로 크로스 컴파일합니다.
diff --git a/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.INT.udn b/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.INT.udn
index ca2f3aa7bfce..3059da8c9ef8 100644
--- a/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.INT.udn
@@ -1,6 +1,6 @@
Availability:Public
Title: Cross-Compiling for Linux (Legacy)
-Crumbs:
+Crumbs:%ROOT%
Description:For engine versions older than 4.14, this page shows users how to set up cross-compilation for the Linux Platform.
Version: 4.14
SkillLevel: Advanced
@@ -17,7 +17,7 @@ topic-image:LegacyRef_Topic.png
[TOC(start:2 end:3)]
-This reference is an archive for users who need to set up their cross-compilation toolchains in Unreal Engine 4 versions that were released prior to 4.14.
+This reference is an archive for users who need to set up their cross-compilation toolchains in Unreal Engine 4 (UE4) versions that were released prior to 4.14.
[REGION:note]
If you're developing your project with Unreal Engine, version 4.14 (or newer), you'll want to refer to our [](Platforms/Linux/GettingStarted) documentation.
@@ -28,20 +28,23 @@ If you're developing your project with Unreal Engine, version 4.14 (or newer), y
**Cross-compilation** makes it possible for game developers, working in a Windows-centric workflow, to target Linux. At this time, cross-compilation is only supported for Windows.
Mac users currently have to resort to [native compilation](https://wiki.unrealengine.com/Building_On_Linux). We support, test, and provide the libraries and toolchains for the Linux-x86_64 platform.
-[/EXCERPT:Why_XC]
+
## Getting the Toolchain
Please use the following table to download the appropriate toolchain:
-| Unreal Engine 4 (UE4) Version | Toolchain |
-| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
-| **<= 4.8** | -v4 [clang-3.5.0-based](http://cdn.unrealengine.com/qfe/v4_clang-3.5.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.9 and 4.10** | -v6 [clang-3.6.0-based](https://s3.amazonaws.com/unrealengine/qfe/v6_clang-3.6.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.11 thru 4.13** | -v7 [clang-3.7.0-based](https://s3.amazonaws.com/unrealengine/CrossToolchain_Linux/v7_clang-3.7.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.14** | -v8 [clang-3.9.0-based](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) |
+| Toolchain | UE4 Version |
+| ----------------------------------------------------------------------------------------------------------------------------------- | -------------- |
+| **-v4** [clang-3.5.0-based](http://cdn.unrealengine.com/qfe/v4_clang-3.5.0_ld-2.24_glibc-2.12.2.zip) | <= 4.8 |
+| **-v6** [clang-3.6.0-based](https://s3.amazonaws.com/unrealengine/qfe/v6_clang-3.6.0_ld-2.24_glibc-2.12.2.zip) | 4.9 and 4.10 |
+| **-v7** [clang-3.7.0-based](https://s3.amazonaws.com/unrealengine/CrossToolchain_Linux/v7_clang-3.7.0_ld-2.24_glibc-2.12.2.zip) | 4.11 thru 4.13 |
+| **-v8** [clang-3.9.0-based](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) | 4.14 and 4.15 |
+| **-v9** [clang-4.0.0-based](http://cdn.unrealengine.com/CrossToolchain_Linux/v9_clang-4.0.0-centos7.zip) | 4.16 |
-We also provide the libraries and toolchains that allow you to compile for Linux ARM as well (original Raspberry Pi and up). Although, this will require you to make a (minor) code
-change in [Unreal Build Tool](Programming/UnrealBuildSystem) (UBT).
+
+We also provide the libraries and toolchains that allow you to compile for [Linux ARM](https://s3.amazonaws.com/unrealengine/qfe/arm-unknown-linux-gnueabihf_v5_clang-3.5.0-ld-2.23.1-glibc-2.13.zip) as well (original Raspberry Pi and up).
+Although, this will require you to make a (minor) code change in [Unreal Build Tool](Programming/UnrealBuildSystem) (UBT).
+[/EXCERPT:Why_XC]
From this point on, we assume that you are targeting x86_64 Linux, though most of the following information will apply to compiling for ARM as well (except for the different toolchain).
Note that you can [build your own toolchain](https://wiki.unrealengine.com/Building_Linux_cross-toolchain) if you want different versions of the tools, or if you want to target a different architecture.
diff --git a/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.JPN.udn
index db0149844fb6..d562fe58fc53 100644
--- a/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3321713
+INTSourceChangelist:3469804
Availability:Public
Title:Linux (レガシー) のクロス コンパイル
-Crumbs:
+Crumbs:%ROOT%
Description:4.14 より前のバージョンのエンジン ユーザー向けに、Linux プラットフォーム用クロスコンパイルの設定方法を説明します。
Version:4.14
SkillLevel:Advanced
@@ -18,7 +18,7 @@ topic-image:LegacyRef_Topic.png
[TOC(start:2 end:3)]
-このリファレンスは、4.14 よりも古いアンリアル エンジン 4 のクロスコンパイル ツールの設定が必要なユーザー向けのアーカイブです。
+このリファレンスは、4.14 よりも古いアンリアル エンジン 4 (UE4) のクロスコンパイル ツールの設定が必要なユーザー向けのアーカイブです。
[REGION:note]
ご使用のアンリアル エンジンが 4.14 以降の場合は、[](Platforms/Linux/GettingStarted) を参照してください。
@@ -29,27 +29,30 @@ topic-image:LegacyRef_Topic.png
**クロスコンパイル** をすると、ゲーム デベロッパーは Linux をターゲットにしつつ、Windows を中心にしたワークフローで作業できるようになります。今回、クロスコンパイルは Windows のみのサポートとなりますので、
Mac ユーザーは現在 [native compilation](https://wiki.unrealengine.com/Building_On_Linux) を使用する必要があります。Linux-x86_64 プラットフォーム向けに、ライブラリおよびツールチェーンのサポート、テスト、提供をしています。
-[/EXCERPT:Why_XC]
+
## ツールチェーンの取得
以下の表を使って適切なツールチェーンをダウンロードしてください。
-| アンリアル エンジン 4 (UE4) バージョン | ツールチェーン |
-| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
-| **<= 4.8** | -v4 [clang-3.5.0-based](http://cdn.unrealengine.com/qfe/v4_clang-3.5.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.9 and 4.10** | -v6 [clang-3.6.0-based](https://s3.amazonaws.com/unrealengine/qfe/v6_clang-3.6.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.11 thru 4.13** | -v7 [clang-3.7.0-based](https://s3.amazonaws.com/unrealengine/CrossToolchain_Linux/v7_clang-3.7.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.14** | -v8 [clang-3.9.0-based](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) |
+| ツールチェーン | UE4 バージョン |
+| ----------------------------------------------------------------------------------------------------------------------------------- | -------------- |
+| **-v4** [clang-3.5.0-based](http://cdn.unrealengine.com/qfe/v4_clang-3.5.0_ld-2.24_glibc-2.12.2.zip) | <= 4.8 |
+| **-v6** [clang-3.6.0-based](https://s3.amazonaws.com/unrealengine/qfe/v6_clang-3.6.0_ld-2.24_glibc-2.12.2.zip) | 4.9 and 4.10 |
+| **-v7** [clang-3.7.0-based](https://s3.amazonaws.com/unrealengine/CrossToolchain_Linux/v7_clang-3.7.0_ld-2.24_glibc-2.12.2.zip) | 4.11 thru 4.13 |
+| **-v8** [clang-3.9.0-based](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) | 4.14 and 4.15 |
+| **-v9** [clang-4.0.0-based](http://cdn.unrealengine.com/CrossToolchain_Linux/v9_clang-4.0.0-centos7.zip) | 4.16 |
-ライブラリとツールチェーン (clang-3.5.0-arm) を提供していますので、Linux ARM (オリジナルの Rasberry Pi 以上) のコンパイルが可能です。ただし、[Unreal Build Tool](Programming/UnrealBuildSystem) (UBT) で
-少しだけコード変更が必要になります。
-以下の情報のほとんどは ARM のコンパイル (別のツールチェーンを除く) にも通用しますが、ここから先は x86_64 Linux をターゲットに開発を行うユーザーを想定しています。
-異なるバージョンのツールや別のアーキテクチャをターゲットとする場合は、[独自のツールチェーンをビルド](https://wiki.unrealengine.com/Building_Linux_cross-toolchain) することができます。
+Linux ARM (https://s3.amazonaws.com/unrealengine/qfe/arm-unknown-linux-gnueabihf_v5_clang-3.5.0-ld-2.23.1-glibc-2.13.zip) 並びに (original Raspberry Pi and up) のコンパイルが可能なライブラリとツールチェーンも提供しています。
+ただし、[Unreal Build Tool](Programming/UnrealBuildSystem) (UBT) で (マイナーな) コード変更が必要になります。
+[/EXCERPT:Why_XC]
+
+これより先は x86_64 Linux をターゲットに開発を行うユーザーを想定していますが、ほとんどの情報は ARM のコンパイル (別のツールチェーンを除く) にも適用できます。
+異なるバージョンのツールや別のアーキテクチャをターゲットとする場合は、[独自のツールチェーンのビルド](https://wiki.unrealengine.com/Building_Linux_cross-toolchain) が可能です。
## ツールチェーンの設定
-[Control Panel (コントロールパネル)]->[System (システム)]->[Advanced system settings (詳細システム設定)]->[Advanced (詳細)]->[Environment variables (環境変数)] の順に選んで、`LINUX_ROOT` という名前の環境変数を追加します。この値はツールチェーンの後に続くバックスラッシュなしの絶対パスです。
+[Control Panel (コントロールパネル)]->[System (システム)]->[Advanced system settings (詳細システム設定)]->[Advanced (詳細)]->[Environment variables (環境変数)] の順に選んで、`LINUX_ROOT` という名前の環境変数を追加します。この値はツールチェーンの絶対パスです (バックスラッシュはありません)。
[REGION:raw]

@@ -110,8 +113,8 @@ Windows 向け:
## Linux 向けのパッケージング
-エディタでパッケージ プロジェクトを開いて、[File]->[Package To]->[Linux] の順に選択する方法が最も簡単なパッケージの作成手段です (前の手順でクロスツールチェーンをインストール済みで、 Linux ターゲットモジュールが対象エディタ用にビルドされていることが前提です。リストに 「Linux」 が表示されない場合は、
-いずれかの手順が終了してない可能性があります。上記を参照してください)。サンプリングしばらくすると (対象プロジェクトに依存、サンプル プロジェクトはいくらか短時間)、
+最も簡単なパッケージ作成方法は、エディタでパッケージ プロジェクトを開いて、[File]->[Package To]->[Linux] の順に選択します
+(その前にクロスツールチェーンをインストールしておくこと、Linux ターゲットモジュールが対象エディタ用にビルドされていることが前提です。リストに 「Linux」 が表示されない場合は、いずれかの手順が終了してない可能性があります。上記を参照してください)。サンプリングしばらくすると (対象プロジェクトに依存、サンプル プロジェクトはいくらか短時間)、
パッケージを作成するディレクトリにゲームアセットとバイナリが表示されます。
パッケージ作成のプロセスに関する詳細は、**Show Output Log** リンクから参照してください。プロセスが「unable to find UnrealPak or ShaderCompileWorker (UnrealPak または ShaderCompileWorker が見つかりません)」のエラーメッセージで失敗した場合は、ホスト (Windows) プラットフォーム向けのパッケージのビルド方法を上記で参照してください。
diff --git a/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.KOR.udn
index 867044d56156..008189f4a1cc 100644
--- a/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/LinuxCrossCompileLegacy.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3321713
+INTSourceChangelist:3469804
Availability:Public
Title: 리눅스용 크로스 컴파일 (레거시)
-Crumbs:
+Crumbs:%ROOT%
Description:엔진 4.14 미만 버전에서 리눅스 플랫폼용 크로스 플랫폼 구성 방법을 알려드립니다.
Version: 4.14
SkillLevel: Advanced
@@ -18,7 +18,7 @@ topic-image:LegacyRef_Topic.png
[TOC(start:2 end:3)]
-4.14 이전 릴리즈된 언리얼 엔진 4 버전의 크로스 컴파일 툴체인 구성을 하는 사용자를 위한 참고서입니다.
+4.14 이전 릴리즈된 언리얼 엔진 4 (UE4) 버전의 크로스 컴파일 툴체인 구성을 하는 사용자를 위한 참고서입니다.
[REGION:note]
언리얼 엔진 4.14 (이상) 버전으로 프로젝트를 개발하시는 경우, [](Platforms/Linux/GettingStarted) 문서를 참고해 보시기 바랍니다.
@@ -29,20 +29,23 @@ topic-image:LegacyRef_Topic.png
**크로스 컴파일** 덕에 윈도우 중심으로 작업하는 게임 개발자들이 리눅스를 타겟으로 개발할 수 있습니다. 현재 크로스 컴파일은 윈도우에만 지원됩니다.
맥 사용자들은 [네이티브 컴파일](https://wiki.unrealengine.com/Building_On_Linux) 에 의존해야 합니다. Linux-x86_64 플랫폼용 라이브러이와 툴체인을 지원, 테스트, 제공해 드리고 있습니다.
-[/EXCERPT:Why_XC]
+
## 툴체인 구하기
다음 표를 통해 적합한 툴체인을 다운로드할 수 있습니다:
-| 언리얼 엔진 4 (UE4) 버전 | 툴체인 |
-| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
-| **<= 4.8** | -v4 [clang-3.5.0-based](http://cdn.unrealengine.com/qfe/v4_clang-3.5.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.9 and 4.10** | -v6 [clang-3.6.0-based](https://s3.amazonaws.com/unrealengine/qfe/v6_clang-3.6.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.11 thru 4.13** | -v7 [clang-3.7.0-based](https://s3.amazonaws.com/unrealengine/CrossToolchain_Linux/v7_clang-3.7.0_ld-2.24_glibc-2.12.2.zip) |
-| **4.14** | -v8 [clang-3.9.0-based](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) |
+| 툴체인 | UE4 버전 |
+| ----------------------------------------------------------------------------------------------------------------------------------- | -------------- |
+| **-v4** [clang-3.5.0-based](http://cdn.unrealengine.com/qfe/v4_clang-3.5.0_ld-2.24_glibc-2.12.2.zip) | <= 4.8 |
+| **-v6** [clang-3.6.0-based](https://s3.amazonaws.com/unrealengine/qfe/v6_clang-3.6.0_ld-2.24_glibc-2.12.2.zip) | 4.9 and 4.10 |
+| **-v7** [clang-3.7.0-based](https://s3.amazonaws.com/unrealengine/CrossToolchain_Linux/v7_clang-3.7.0_ld-2.24_glibc-2.12.2.zip) | 4.11 thru 4.13 |
+| **-v8** [clang-3.9.0-based](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) | 4.14 and 4.15 |
+| **-v9** [clang-4.0.0-based](http://cdn.unrealengine.com/CrossToolchain_Linux/v9_clang-4.0.0-centos7.zip) | 4.16 |
-Linux ARM (원본 Raspberry Pi 이상) 용 컴파일을 위한 라이브러이와 툴체인도 제공해 드리고 있습니다만, 이를 위해서는
-[언리얼 빌드 툴](Programming/UnrealBuildSystem) (UBT) 에서 약간의 코드 수정을 가해야 할 것입니다.
+
+[Linux ARM](https://s3.amazonaws.com/unrealengine/qfe/arm-unknown-linux-gnueabihf_v5_clang-3.5.0-ld-2.23.1-glibc-2.13.zip) (원본 Raspberry Pi 이상) 용 컴파일을 위한 라이브러이와 툴체인도 제공해 드리고 있습니다만,
+이를 위해서는 [언리얼 빌드 툴](Programming/UnrealBuildSystem) (UBT) 에서 약간의 코드 수정을 가해야 할 것입니다.
+[/EXCERPT:Why_XC]
아래 대부분은 (툴체인이 다르다는 것만 제외하면) ARM 컴파일에도 적용되지만, 여기서는 x86_64 리눅스를 타겟으로 삼는다 가정하겠습니다.
참고로 다른 버전의 툴이나 다른 아키텍처를 타겟으로 삼고자 하는 경우, [툴체인을 직접 빌드](https://wiki.unrealengine.com/Building_Linux_cross-toolchain) 할 수도 있습니다.
diff --git a/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.INT.udn b/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.INT.udn
index 239c275274d5..42a4f8dc64ac 100644
--- a/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.INT.udn
@@ -1,6 +1,6 @@
Availability:Public
Title: Cross-Compiling for Linux
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to set up a cross-compilation toolchain in Windows, targeting the Linux platform.
Version: 4.15
SkillLevel: Advanced
@@ -17,7 +17,7 @@ prereq:Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnUnrealWorkflow
-[TOC(start:2 end:4)]
+[TOC(start:2 end:3)]
(w:1200)
@@ -46,7 +46,7 @@ Internet connection, downloading the toolchain can take anywhere from a few minu
### Downloading the Toolchain
-1. Click the [link](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) to download our Clang 3.9.0 based toolchain.
+1. Please download the cross-toolchain appropriate for your engine version.
1. Now, create a new folder, naming it `Linux_CrossCompileToolChain`.
@@ -82,14 +82,14 @@ Internet connection, downloading the toolchain can take anywhere from a few minu
#### Supported Platforms
- Refer to the following table to see which platforms can be targeted with your version of UE4:
+ Refer to the following table to download the appropriate toolchain for your version of UE4:
- | **Architecture** | **Sub-Architecture** | **Vendor** | **System** | **Application Binary Interface (abi)** | UE 4.14 Support | UE 4.15 Support |
- | ------------------------------------------------------------------- | -------------------- | ---------- | ---------- | -------------------------------------- | --------------- | ---------------- |
- | **[AArch64](https://fedoraproject.org/wiki/Architectures/AArch64)** | N/A | Unknown | Linux | gnueabi | ✗ | ✓ |
- | **[ARM](https://developer.arm.com/)** | N/A | Unknown | Linux | gnueabihf | ✗ | ✓ |
- | **[i686](https://software.intel.com/en-us/)** | N/A | Unknown | Linux | gnu | ✗ | ✗ |
- | **[x86_64](http://developer.amd.com/)** | N/A | Unknown | Linux | gnu | ✓ | ✓ |
+ | **Architecture** | **Sub-Architecture** | **Vendor** | **System** | **Application Binary Interface (abi)** |
+ | ------------------------------------------------------------------- | -------------------- | ---------- | ---------- | -------------------------------------- |
+ | **[AArch64](https://fedoraproject.org/wiki/Architectures/AArch64)** | N/A | Unknown | Linux | gnueabi |
+ | **[ARM](https://developer.arm.com/)** | N/A | Unknown | Linux | gnueabihf |
+ | **[i686](https://software.intel.com/en-us/)** | N/A | Unknown | Linux | gnu |
+ | **[x86_64](http://developer.amd.com/)** | N/A | Unknown | Linux | gnu |
[REGION:note]
Please note that we haven't yet added Engine libraries for the i686 platform.
diff --git a/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.JPN.udn
index f8bff5e52567..48238f1b0798 100644
--- a/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3343972
+INTSourceChangelist:3470080
Availability:Public
Title:Linux のクロスコンパイル
-Crumbs:
+Crumbs:%ROOT%
Description:Linux プラットフォームをターゲットにして、Windows でクロスコンパイル ツールチェーンを設定してみよう。
Version:4.15
SkillLevel:Advanced
@@ -14,17 +14,18 @@ related:Engine/Basics/Projects/Packaging
related:Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy
related:Programming/Basics/ConfigurationFiles
topic-image:GettingStarted_Topic.png
+prereq:Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnUnrealWorkflow
-[TOC(start:2 end:4)]
+[TOC(start:2 end:3)]
(w:1200)
クロスコンパイル ツールチェーンの改善に伴い、
アンリアル エンジン 4 (UE4) デベロッパーは Windows 開発環境で多様なプラットフォームをターゲットにすることができるようになりました。このガイドは、クロスコンパイル ツールチェーンの使用可能なプラットフォームを紹介し、
-ツールチェーンのダウンロード ページ、そして最後にUE4 プロジェクトを Linux 用にクロスコンパイルする設定方法を説明します。アンリアル エンジン 4.15 でプロジェクトを開発するための
-ターゲット プラットフォーム間切り替え方法も学習できます。
+ツールチェーンのダウンロード ページ、そして最後にUE4 プロジェクトを Linux 用にクロスコンパイルする設定方法を説明します。アンリアル エンジン 4.15 でプロジェクトを開発する
+ターゲット プラットフォーム間の切り替え方法も学習できます。
[REGION:note]
バージョンが 4.13 より前のエンジンをご使用の場合は、[](Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy) を参照してください。
@@ -46,9 +47,9 @@ Linux 用の Visual Studio と使ってエンジンをビルドする必要も
### ツールチェーンのダウンロード
-1. [ここ](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) をクリックして Clang 3.9.0 ベースのツールチェーンをダウンロードします。
+1. エンジン バージョンに適したクロス ツールチェーンをダウンロードしてください。
-1. そして新規フォルダを作成し、そのフォルダに「Linux_CrossCompileToolChain」と名前を付けます。
+1. そして新規フォルダを作成し、そのフォルダに `Linux_CrossCompileToolChain` と名前を付けます。
[REGION:lightbox]
[(w:600)](LinuxXC_Step2.png)
@@ -82,14 +83,14 @@ Linux 用の Visual Studio と使ってエンジンをビルドする必要も
#### サポート対象プラットフォーム
- 以下の表を参照して、使用している UE4 がターゲットにできるプラットフォームを確認してください。
+ 以下の表を参照して、適切なツールチェーンをダウンロードしてください。
- | **アーキテクチャ** | **サブアーキテクチャ** | **メーカー** | **システム** | **Application Binary Interface (abi)** | UE 4.15 Support | UE.
- | ------------------------------------------------------------------- | -------------------- | ---------- | ---------- | -------------------------------------- | --------------- | ---------------- |
- | **[AArch64](https://fedoraproject.org/wiki/Architectures/AArch64)** | N/A | 不明 | Linux | gnueabi | ✗ | ✓ |
- | **[ARM](https://developer.arm.com/)** | N/A | 不明 | Linux | gnueabihf | ✗ | ✓ |
- | **[i686](https://software.intel.com/en-us/)** | N/A | 不明 | Linux | gnu | ✗ | ✗ |
- | **[x86_64](http://developer.amd.com/)** | N/A | 不明 | Linux | gnu | ✓ | ✓ |
+ | **アーキテクチャ** | **サブアーキテクチャ | **メーカー** | **システム** | **Application Binary Interface (abi)** |
+ | ------------------------------------------------------------------- | -------------------- | ---------- | ---------- | -------------------------------------- |
+ | **[AArch64](https://fedoraproject.org/wiki/Architectures/AArch64)** | N/A | 不明 | Linux | gnueabi |
+ | **[ARM](https://developer.arm.com/)** | N/A | 不明 | Linux | gnueabihf |
+ | **[i686](https://software.intel.com/en-us/)** | N/A | 不明 | Linux | gnu |
+ | **[x86_64](http://developer.amd.com/)** | N/A | 不明 | Linux | gnu |
[REGION:note]
i686 プラットフォーム用のエンジン ライブラリはまだ追加していません。
@@ -153,7 +154,7 @@ Linux 用の Visual Studio と使ってエンジンをビルドする必要も
[/REGION]
-1. **[New System Variable (新規システム変数)]** ダイアログ メニューが開いたら`LINUX_MULTIARCH_ROOT` 環境変数設定を **[New System Variable]** ダイアログのテキストボックスへコピーします。
+1. **[New System Variable (新規システム変数)]** ダイアログ メニューが開いたら `LINUX_MULTIARCH_ROOT` 環境変数設定を **[New System Variable]** ダイアログのテキストボックスへコピーします。
[REGION:lightbox]
[(w:600)](LinuxXC_Step11.png)
@@ -168,7 +169,7 @@ Linux 用の Visual Studio と使ってエンジンをビルドする必要も

[REGION:note]
- `LINUX_ROOT` 環境変数を設定してしまっていても、パッケージ化の間エンジンは `LINUX_ROOT` よりも `LINUX_MULTIARCH_ROOT` を優先するので、それを削除する必要はありません。
+ エンジンはパッケージ化の間は `LINUX_ROOT` よりも `LINUX_MULTIARCH_ROOT` を優先するので、`LINUX_ROOT` 環境変数を既に設定してしまっても削除する必要はありません。
[/REGION]
1. **[OK]** ボタンを押して **[System Properties]** メニューを終了します。
@@ -181,13 +182,13 @@ Linux 用の Visual Studio と使ってエンジンをビルドする必要も
### Linux ビルド コンフィギュレーションの設定
-Linux のパッケージ化が初めての場合は、以下の手順に従ってください。
+初めて Linux のパッケージ化を行う場合は以下の手順に従ってください。
-1. **Command Prompt** を開いて、`Setup.bat` を実行して、**Visual Studio** から UE4 をビルドするための前提条件の依存性の確認、更新、およびインストールを行います。
+1. **Command Prompt** を開いて `[UE4 ROOT]/Setup.bat` を実行し、**Visual Studio** から UE4 をビルドするための前提条件の依存性の確認、更新、およびインストールを行います。

-1. `GenerateProjectFiles.bat` を実行してプロジェクト ファイルを UE4 向けに設定します。
+1. `[UE4 ROOT]/GenerateProjectFiles.bat` を実行し、プロジェクト ファイルを UE4 向けに設定します。

@@ -237,13 +238,13 @@ Linux のパッケージ化が初めての場合は、以下の手順に従っ
[/REGION]
[/REGION]
-## 特定のプラットフォームをターゲットにする
+## 特定プラットフォームのターゲット化
[REGION:note]
-バージョン 4.14 のターゲットは e x86_64 プラットフォームのみです、次のセクションはバージョン 4.15 で作業するデベロッパー向けとなります。
+バージョン 4.14 のターゲットは e x86_64 プラットフォームのみなので、次のセクションはバージョン 4.15 で作業するデベロッパー向けとなります。
[/REGION]
-ターゲットとするプラットフォームを指定するには、プロジェクトの [Default Engine Configuration File](Programming/Basics/ConfigurationFiles) を編集する必要があります。そのファイルの保存場所 (`[Project Directory]\Config`) で
+ターゲット プラットフォームを指定するには、プロジェクトの [Default Engine Configuration File](Programming/Basics/ConfigurationFiles) を編集する必要があります。そのファイルの保存場所 (`[Project Directory]\Config`) で
`DefaultEngine.ini` を開いて次の行を追加します。
[/Script/LinuxTargetPlatform.LinuxTargetSettings]
@@ -257,7 +258,7 @@ Linux のパッケージ化が初めての場合は、以下の手順に従っ
## 結果
-これで終わりです!次Linux 用にプロジェクトをパッケージ化しながら、クロスコンパイル ツールチェーンが使用されていることが確認できるようになりました。
+これで終わりです!Linux 用プロジェクトのパッケージ化にクロスコンパイル ツールチェーンが使用されるようになりました。
[REGION:lightbox]
[(w:600)](LinuxXC_EndResult.png)
@@ -267,5 +268,5 @@ Linux のパッケージ化が初めての場合は、以下の手順に従っ
クリックしてフルサイズで表示
[/REGION]
- これで、Windows (ホスト) コンピューターから各種 Linux プラットフォーム用にプロジェクトを [コンパイル](Programming/Development/CompilingProjects)、[ビルド](Programming/Development/BuildConfigurations)、[パッケージ化](Engine/Basics/Projects/Packaging) することが可能になりました。
+ これで、Windows (ホスト) コンピューターからプロジェクトを各種 Linux プラットフォーム用に [コンパイル](Programming/Development/CompilingProjects)、[ビルド](Programming/Development/BuildConfigurations)、[パッケージ化](Engine/Basics/Projects/Packaging) することが可能になりました。
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.KOR.udn
index 2a287106f94d..bc978299122c 100644
--- a/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/GettingStarted/LinuxCrossGettingStarted.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3343972
+INTSourceChangelist:3470080
Availability:Public
Title: 리눅스용 크로스 컴파일
-Crumbs:
+Crumbs:%ROOT%
Description:윈도우에서 리눅스 플랫폼을 타겟으로 하는 크로스 컴파일 툴체인 셋업 방법을 알아봅니다.
Version: 4.15
SkillLevel: Advanced
@@ -14,10 +14,11 @@ related:Engine/Basics/Projects/Packaging
related:Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy
related:Programming/Basics/ConfigurationFiles
topic-image:GettingStarted_Topic.png
+prereq:Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnUnrealWorkflow
-[TOC(start:2 end:4)]
+[TOC(start:2 end:3)]
(w:1200)
@@ -46,7 +47,7 @@ Visual Studio for Linux 에서 엔진을 빌드하기도 해야 합니다. 다
### 툴체인 다운로드
-1. [이 링크](http://cdn.unrealengine.com/qfe/v8_clang-3.9.0-centos7.zip) 를 클릭하여 Clang 3.9.0 기반 툴체인을 다운로드합니다.
+1. 엔진 버전에 적합한 크로스 툴체인을 다운로드해 주세요.
1. 이제 폴더를 생성한 후, 이름을 `Linux_CrossCompileToolChain` 이라 합니다.
@@ -82,14 +83,14 @@ Visual Studio for Linux 에서 엔진을 빌드하기도 해야 합니다. 다
#### 지원 플랫폼
- 다음 표에서 UE4 버전별 타겟을 삼을 수 있는 플랫폼을 참고할 수 있습니다:
+ 다음 표에서 UE4 버전별 적합한 툴체인을 다운로드할 수 있습니다:
- | **아키텍처** | **하위 아키텍처** | **벤더** | **시스템** | **어플리케이션 바이너리 인터페이스 (abi)** | UE 4.14 지원 | UE. 4.15 지원 |
- | ------------------------------------------------------------------- | -------------------- | ---------- | ---------- | -------------------------------------- | --------------- | ---------------- |
- | **[AArch64](https://fedoraproject.org/wiki/Architectures/AArch64)** | 사용불가 | 알 수 없음 | 리눅스 | gnueabi | ✗ | ✓ |
- | **[ARM](https://developer.arm.com/)** | 사용불가 | 알 수 없음 | 리눅스 | gnueabihf | ✗ | ✓ |
- | **[i686](https://software.intel.com/en-us/)** | 사용불가 | 알 수 없음 | 리눅스 | gnu | ✗ | ✗ |
- | **[x86_64](http://developer.amd.com/)** | 사용불가 | 알 수 없음 | 리눅스 | gnu | ✓ | ✓ |
+ | **아키텍처** | **하위 아키텍처** | **벤더** | **시스템** | **어플리케이션 바이너리 인터페이스 (abi)** |
+ | ------------------------------------------------------------------- | -------------------- | ---------- | ---------- | -------------------------------------- |
+ | **[AArch64](https://fedoraproject.org/wiki/Architectures/AArch64)** | 사용불가 | 알 수 없음 | 리눅스 | gnueabi |
+ | **[ARM](https://developer.arm.com/)** | 사용불가 | 알 수 없음 | 리눅스 | gnueabihf |
+ | **[i686](https://software.intel.com/en-us/)** | 사용불가 | 알 수 없음 | 리눅스 | gnu |
+ | **[x86_64](http://developer.amd.com/)** | 사용불가 | 알 수 없음 | 리눅스 | gnu |
[REGION:note]
참고로 i686 플랫폼용 Engine 라이브러리는 아직 추가하지 않았습니다.
@@ -183,11 +184,11 @@ Visual Studio for Linux 에서 엔진을 빌드하기도 해야 합니다. 다
전에 리눅스용 프로젝트 패키징을 한 적이 없다면 다음 단계를 밟는 것이 좋습니다.
-1. **cmd** 창을 열고 `Setup.bat` 를 실행시키면 **Visual Studio** 에서 UE4 를 빌드하는 데 필요한 필수 종속성을 확인, 업데이트, 설치해 줍니다.
+1. **cmd** 창을 열고 `[UE4 ROOT]/Setup.bat` 를 실행시키면 **Visual Studio** 에서 UE4 를 빌드하는 데 필요한 필수 종속성을 확인, 업데이트, 설치해 줍니다.

-1. `GenerateProjectFiles.bat` 를 실행하여 UE4 프로젝트 파일을 셋업합니다.
+1. `[UE4 ROOT]/GenerateProjectFiles.bat` 를 실행하여 UE4 프로젝트 파일을 셋업합니다.

diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.INT.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.INT.udn
index 87c06043ba26..a4c2e8fa5432 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.INT.udn
@@ -1,6 +1,6 @@
-Availability: Docs
+Availability: Public
Title: 1 - Required Setup
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to install and set up the Android SDK for mobile game development with UE4 on Linux.
Version: 4.14
type:quick start
@@ -15,19 +15,24 @@ Contributor:yaakuro
[EXCERPT:AndroidLinux_1]
Unreal Engine 4 (UE4) uses a special version of the Android Software Development Kit (SDK), called CodeWorks for
-Android 1R5. This version of CodeWorks for Android is the easiest way to set up the SDK and Native Development Kit (NDK)
-needed to develop Android projects with UE4. If you have other versions of the Android SDK installed (or, older versions of CodeWorks for
+Android. CodeWorks for Android is the easiest way to set up the SDK and Native Development Kit (NDK)
+needed to develop Android projects with UE4. If you have older versions (prior to version 1R5) of the Android SDK installed (or, older versions of CodeWorks for
Android), we recommend that you uninstall them and install [CodeWorks for Android](https://developer.nvidia.com/codeworks-android), using
the CodeWorks for Android installer that's being distributed with UE4.
[REGION:note]
-Please note that we've bundled the CodeWorks for Android installer with UE4 to make sure that your Android SDK will be compatible with Unreal Engine.
+We've bundled the CodeWorks for Android installer with UE4 to make sure that your Android SDK will be compatible with Unreal Engine.
+It's important to note that, as of Unreal Engine, version 4.16, UE4 includes CodeWorks for Android 1R6u1.
[/REGION]
## Installing CodeWorks for Android
+For the purpose of showing you how to get started with Android on Linux, we will use CodeWorks for Android 1R5 while working with Unreal Engine, version 4.14.
+UE4 should be closed before installing CodeWorks for Android 1R5. Also, please make sure that you have Java Development Kit 8 (JDK 8) installed, with your `JAVA_HOME` environment variable set to the correct version of the Java Development Kit (JDK).
+To verify that `JAVA_HOME` is set properly, enter `echo $JAVA_HOME` into the terminal. If you don't see the correct JDK version, [download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html), and install it on your Linux computer, making sure to set the `JAVA_HOME` environment variable to the newly installed JDK.
+
[REGION:warning]
-UE4 should be closed before installing CodeWorks for Android 1R5. Also, please make sure that you have Java Development Kit 8 (JDK 8) installed.
+Before continuing, please note that Android Vulkan on Linux is not supported at this time.
[/REGION]
1. Getting started, open the Terminal and navigate to the `[UE4Root]` folder that contains the compiled engine (using the `cd` command, changing the shell working directory).
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.JPN.udn
index 0dd4606a2eed..6655113ac677 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3313485
-Availability:Docs
+INTSourceChangelist:3457813
+Availability:Public
Title:1 - 必要な設定
-Crumbs:
+Crumbs:%ROOT%
Description: Linux で UE4 を使ってモバイル ゲーム開発用 Android SDK のインストールおよび設定方法を説明します。
Version:4.14
type:quick start
@@ -10,31 +10,37 @@ order:1
tags:Linux
SkillLevel:Intermediate
Checkpoint:AndroidOnLinuxQS
+Contributor:yaakuro
[nav]
[EXCERPT:AndroidLinux_1]
-アンリアル エンジン (UE4) は CodeWorks for Android 1R5 という Android ソフトウェア開発キット (SDK) の
-特別バージョンを採用しています。CodeWorks for Android の特別バージョンを使うと、
-UE4 で Android プロジェクトを開発するために必要な SDK および Native Development Kit (NDK) の設定を一番簡単に行うことができます。違うバージョンの Android SDK (あるいは、CodeWorks for Android の古いバージョン) をインストールしている場合は、
-それをアンインストールして、UE4 が配布している CodeWorks for Android インストーラーを使って、
-CodeWorks for Android (https://developer.nvidia.com/codeworks-android) をインストールすることを推奨します。
+アンリアル エンジン (UE4) は CodeWorks for Android という Android ソフトウェア開発キット (SDK) の
+特別バージョンです。CodeWorks for Android を使うと、
+UE4 で Android プロジェクトを開発するために必要な SDK および Native Development Kit (NDK) の設定を一番簡単に行うことができます。Android SDK の古いバージョン (1R5 より前) をインストールしている場合 (または CodeWorks for Android の古いバージョン) は、
+それをアンインストールし、UE4 が配布している CodeWorks for Android インストーラーを使って、
+[CodeWorks for Android](https://developer.nvidia.com/codeworks-android) をインストールすることを推奨します。
[REGION:note]
-UE4 に込みこまれている CodeWorks for Android インストーラーを使えば、必ずアンリアル エンジンと互換性のある Android SDK がインストールされることに注目してください。
+CodeWorks for Android インストーラは UE4 とセットになっているので、アンリアル エンジンと互換性のある Android SDK が必ずインストールされます。
+アンリアル エンジン 4.16 では、CodeWorks for Android 1R6u1 が組み込まれていますので、十分に注意してください。
[/REGION]
## CodeWorks for Android のインストール手順
+Linux で Android を開始する手順を説明するために、アンリアル エンジン 4.14 で CodeWorks for Android 1R5 を使用します。
+CodeWorks for Android 1R5 をインストールする前に UE4 を終了してください。また、Java Development Kit 8 (JDK 8) が、Java Development Kit (JDK) の正しいバージョンに設定された `JAVA_HOME` 環境変数でインストールされていることも確認してください。
+`JAVA_HOME` の設定が正しいか確認するには、ターミナルに `echo $JAVA_HOME` と入力します。正しい JDK のバージョンが表示されない場合は、`JAVA_HOME` 環境変数を新しくインストールした JDK に設定されていることを確認しながら [download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html) から Linux コンピューターにインストールします。
+
[REGION:warning]
-CodeWorks for Android 1R5 をインストールする前に UE4 を終了してください。また、Java Development Kit 8 (JDK 8) がインストールされていることも確認してください。
+先へ進む前に、Android Vulkan は Linux ではまだサポートされていないことにご注意ください。
[/REGION]
1. はじめに、Terminal を開き、コンパイルされたエンジンが入っている `[UE4Root]` フォルダを開きます (`cd` コマンドを使ってシェル作業ディレクトリを変更します)。
(w:900)
-1. ターミナルに以下のコマンドを入力して、`[UE4Root]` フォルダの中から CodeWorks for Android 1R5 バイナリ ファイル (**CodeWorksforAndroid-1R5-linux-x64.run**) を開きます: `cd Engine/Extras/AndroidWorks/Linux`
+1. ターミナルにコマンド `cd Engine/Extras/AndroidWorks/Linux` を入力して、`[UE4Root]` フォルダの中から CodeWorks for Android 1R5 バイナリ ファイル (**CodeWorksforAndroid-1R5-linux-x64.run**) を開きます。
(w:900)
@@ -42,7 +48,7 @@ CodeWorks for Android 1R5 をインストールする前に UE4 を終了して
(w:900)
- **CodeWorksforAndroid-1R5-linux-x64.run** がまだ実行ができる状態ではないことがファイルの許可設定に表示されます。
+ **CodeWorksforAndroid-1R5-linux-x64.run** がまだ実行可能な状態でないことがファイルの許可設定に表示されます。
CodeWorks for android 1R5 binary を実行可能な状態にするには、'execute' が許可されるようにファイルのアクセス権を変更する必要があります。
1. `CodeWorksforAndroid-1R5-linux-x64.run` のファイル許可設定を変更するには、ターミナルに `chmod +x CodeWorksforAndroid-1R5-linux-x64.run` と入力して、通常の実行ファイルのように実行可能にします。
@@ -107,12 +113,12 @@ CodeWorks for Android 1R5 をインストールする前に UE4 を終了して
(w:900)
-1. 次のステップへ進むまえにコンピュータを必ず再起動してください。
+1. 次のステップへ進む前に、コンピュータを必ず再起動してください。
(w:900)
[REGION:tip]
- Ubuntu の GUI を使いたくなければ、ターミナルに `sudo reboot` と入力してコンユーターを再起動します。
+ Ubuntu の GUI を使わない場合は、ターミナルに `sudo reboot` と入力してからコンピューターを再起動します。
@@ -121,7 +127,7 @@ CodeWorks for Android 1R5 をインストールする前に UE4 を終了して
## 結果
-ここまでで、Linux で UE4 を使ったモバイル ゲーム開発の最初の準備となる Android SDK のインストールが完了しました。
+このステップで、Linux で UE4 を使ったモバイル ゲーム開発の最初の準備となる Android SDK のインストールが完了しました。
次のステップでは、Android デバイスに開発環境を設定する方法を説明します。
[nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.KOR.udn
index 1d7bbde8bfdd..59f3f311e8fd 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/1/AndroidOnLinux_1.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3351873
-Availability: Docs
+INTSourceChangelist:0
+Availability: Public
Title: 1 - Required Setup
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to install and set up the Android SDK for mobile game development with UE4 on Linux.
Version: 4.14
type:quick start
@@ -16,19 +16,24 @@ Contributor:yaakuro
[EXCERPT:AndroidLinux_1]
Unreal Engine 4 (UE4) uses a special version of the Android Software Development Kit (SDK), called CodeWorks for
-Android 1R5. This version of CodeWorks for Android is the easiest way to set up the SDK and Native Development Kit (NDK)
-needed to develop Android projects with UE4. If you have other versions of the Android SDK installed (or, older versions of CodeWorks for
+Android. CodeWorks for Android is the easiest way to set up the SDK and Native Development Kit (NDK)
+needed to develop Android projects with UE4. If you have older versions (prior to version 1R5) of the Android SDK installed (or, older versions of CodeWorks for
Android), we recommend that you uninstall them and install [CodeWorks for Android](https://developer.nvidia.com/codeworks-android), using
the CodeWorks for Android installer that's being distributed with UE4.
[REGION:note]
-Please note that we've bundled the CodeWorks for Android installer with UE4 to make sure that your Android SDK will be compatible with Unreal Engine.
+We've bundled the CodeWorks for Android installer with UE4 to make sure that your Android SDK will be compatible with Unreal Engine.
+It's important to note that, as of Unreal Engine, version 4.16, UE4 includes CodeWorks for Android 1R6u1.
[/REGION]
## Installing CodeWorks for Android
+For the purpose of showing you how to get started with Android on Linux, we will use CodeWorks for Android 1R5 while working with Unreal Engine, version 4.14.
+UE4 should be closed before installing CodeWorks for Android 1R5. Also, please make sure that you have Java Development Kit 8 (JDK 8) installed, with your `JAVA_HOME` environment variable set to the correct version of the Java Development Kit (JDK).
+To verify that `JAVA_HOME` is set properly, enter `echo $JAVA_HOME` into the terminal. If you don't see the correct JDK version, [download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html), and install it on your Linux computer, making sure to set the `JAVA_HOME` environment variable to the newly installed JDK.
+
[REGION:warning]
-UE4 should be closed before installing CodeWorks for Android 1R5. Also, please make sure that you have Java Development Kit 8 (JDK 8) installed.
+Before continuing, please note that Android Vulkan on Linux is not supported at this time.
[/REGION]
1. Getting started, open the Terminal and navigate to the `[UE4Root]` folder that contains the compiled engine (using the `cd` command, changing the shell working directory).
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.INT.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.INT.udn
index ca01379c676d..a99b63211ba5 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.INT.udn
@@ -1,6 +1,6 @@
-Availability: Docs
+Availability: Public
Title: 2 - Setting up your Android Device
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to enable an Android's development environment.
Version: 4.14
type:quick start
@@ -46,8 +46,9 @@ Make sure you have access to a USB cable prior to commencing the following steps
[/REGION]
[REGION:note]
- If you don't see this item, you'll need to enable **Developer Options** on your device. For instructions on how to enable Developer Options on Android devices,
- visit [Android's User Guide](https://developer.android.com/studio/run/device.html).
+ If you don't see this item, you'll need to enable **Developer Options** on your device. To enable **Developer Options**, open the **Settings** application, scroll to the bottom and select **About phone**.
+ After selecting **About phone** scroll to the bottom and tap **Build number** seven (7) times.
+ For additional instructions on how to enable Developer Options on Android devices, visit [Android's User Guide](https://developer.android.com/studio/debug/dev-options.html).
[/REGION]
## Enabling USB Debugging
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.JPN.udn
index ffde3aa2298c..5edbd71a17f8 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3313485
-Availability:Docs
+INTSourceChangelist:3457813
+Availability:Public
Title:2 - Android デバイスを設定する
-Crumbs:
+Crumbs:%ROOT%
Description:Android の開発環境を有効にする方法を説明します。
Version:4.14
type:quick start
@@ -10,10 +10,11 @@ order:2
tags:Linux
SkillLevel:Intermediate
Checkpoint:AndroidOnLinuxQS
+Contributor:yaakuro
[nav]
-Linux コンピューターに Android SDK をインストールが完了しました。
+Linux コンピューターへの Android SDK のインストールが完了しました。
Android デバイス向けモバイル ゲームの開発環境まであと少しです。ただし、Android デバイスでアンリアル エンジンによるゲームを実行するためには、
Android の開発環境を有効にする必要があります。
@@ -21,7 +22,7 @@ Android の開発環境を有効にする必要があります。
次のステップを開始する前に、USB ケーブルへアクセス可能なことを確認してください。
[/REGION]
-## Android の Developer Options
+## Android の Developer Options を有効にする方法
[EXCERPT:AndroidLinux_2]
1. Android デバイスを USB ケーブルで Linux コンピューターに接続します。
@@ -46,11 +47,12 @@ Android の開発環境を有効にする必要があります。
[/REGION]
[REGION:note]
- このメニューが表示されない場合は、デバイスの [Developer Options] を有効にしてください。Android デバイスの Developer Option を有効にする方法については、
- [Android ユーザーガイド](https://developer.android.com/studio/run/device.html) をご覧ください。
+ このメニューが表示されない場合は、デバイスの [Developer Options] を有効にしてください。**[Developer Options]** を有効にするには、**[Settings]** アプリケーションを開き、下までスクロールして **[About phone]** を選択します。
+ **[About phone]** を選択したら、一番下までスクロールし、**[Build number]** を 7 回タップします。
+ Android デバイスで Developer Option を有効にする方法については、[Android ユーザーガイド](https://developer.android.com/studio/debug/dev-options.html) をご覧ください。
[/REGION]
-## USB デバッグを有効にする
+## USB デバッグを有効にする方法
1. **[Developer Options]** メニューの **[USB debugging]** を有効にします。
@@ -62,7 +64,7 @@ Android の開発環境を有効にする必要があります。
クリックしてフルサイズで表示
[/REGION]
-1. ウィンドウが表示されたら、USB debugging を有効にする選択がされていることを確認します。表示された内容を確認したら **[OK]** ボタンをタップします。
+1. ウィンドウが表示されたら USB デバッグの有効化を確定します。表示された内容を確認したら **[OK]** ボタンをタップします。
[REGION:lightbox]
[(w:180)](LinuxAndroid_Step20.png)
@@ -72,10 +74,10 @@ Android の開発環境を有効にする必要があります。
クリックしてフルサイズで表示
[/REGION]
- これで USB debugging が有効になりました。
+ これで USB デバッグが有効になりました。

-1. Android デバイスを USB ケーブルから外して、数秒おいて、再度接続します。デバイスが Android 4.2.2 以上で実行されている場合、以下のダイアログが表示され、Linux コンピューターでデバッグを可能にする RSA キーを許可するか聞かれます。**OK** ボタンをタップする前に **[Always allow from this computer (このコンピューターを常に許可する)]** の横のチェックボックスが選択されていることを確認してください。
+1. Android デバイスを USB ケーブルから外して、数秒待ってから再度接続します。デバイスが Android 4.2.2 以上で実行されている場合、以下のダイアログが表示され、Linux コンピューターでデバッグを可能にする RSA キーを許可するか聞かれます。**OK** ボタンをタップする前に **[Always allow from this computer (このコンピューターを常に許可する)]** の横のチェックボックスが選択されていることを確認してください。
[REGION:lightbox]
[(w:180)](LinuxAndroid_Step21.png)
@@ -97,9 +99,9 @@ Linux コンピューターにつながっているデバイスの一覧が表
[REGION:note]
ターミナルに `adb devices` と入力してもデバイスが表示されない場合、Linux コンピューターに adb を設定する必要があるかもしれません。[Android Debug Bridge ユーザーガイド](https://developer.android.com/studio/command-line/adb.html) を参照してください。
adb の詳細、コンピューターにプログラムを設定する方法が説明されています。
- コンピューターに確かに adb をインストールおよび設定を行っている場合は、以下のトラブルシューティングを試してください。
+ コンピューターに adb を確実にインストールおよび設定している場合は、以下のトラブルシューティングをお試しください。
- * コンピューターから Android デバイスを一旦外して、再度接続する。
+ * コンピューターから一旦 Android デバイスを外して、再度接続する。
* **[Always allow from this computer (このコンピューターを常に許可する)]** の横のチェックボックスが選択されていることを確認してください。
* デバイスが許可されていないと表示される場合、Android デバイスに Linux コンピューターに USB debugging の権限を与える必要があるかもしれません。
* Media Transfer Protocol (MTP) を使ったメディア デバイスとして接続されている場合、正しく設定してもデバイスが表示されない場合があります。
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.KOR.udn
index cfbeb47a3c9e..06717443c00e 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/2/AndroidOnLinux_2.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3351873
-Availability: Docs
+INTSourceChangelist:0
+Availability: Public
Title: 2 - Setting up your Android Device
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to enable an Android's development environment.
Version: 4.14
type:quick start
@@ -47,8 +47,9 @@ Make sure you have access to a USB cable prior to commencing the following steps
[/REGION]
[REGION:note]
- If you don't see this item, you'll need to enable **Developer Options** on your device. For instructions on how to enable Developer Options on Android devices,
- visit [Android's User Guide](https://developer.android.com/studio/run/device.html).
+ If you don't see this item, you'll need to enable **Developer Options** on your device. To enable **Developer Options**, open the **Settings** application, scroll to the bottom and select **About phone**.
+ After selecting **About phone** scroll to the bottom and tap **Build number** seven (7) times.
+ For additional instructions on how to enable Developer Options on Android devices, visit [Android's User Guide](https://developer.android.com/studio/debug/dev-options.html).
[/REGION]
## Enabling USB Debugging
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.INT.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.INT.udn
index b12f9abb48fb..4090f3579764 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.INT.udn
@@ -1,6 +1,6 @@
-Availability: Docs
+Availability: Public
Title: 3 - Creating your Project
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to create an Android mobile game project in UE4.
Version: 4.14
type:quick start
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.JPN.udn
index 71e676b93de5..539fba9ef502 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3293293
-Availability:Docs
+INTSourceChangelist:3457813
+Availability:Public
Title:3 - プロジェクトを作成する
-Crumbs:
+Crumbs:%ROOT%
Description: UE4 で Android モバイル ゲーム プロジェクトの作成方法を説明します。
Version:4.14
type:quick start
@@ -10,10 +10,11 @@ order:3
tags:Linux
SkillLevel:Intermediate
Checkpoint:AndroidOnLinuxQS
+Contributor:yaakuro
[nav]
-ここまでのステップで、Android SDK のインストールto設定、Android の開発環境のセットアップ、そして Android Debug Bridge が Linux コンピューターに接続中のデバイス一覧を表示できるようになりました。
+ここまでのステップで、Android SDK のインストールおよび設定、Android の開発環境のセットアップが完了し、Android Debug Bridge が Linux コンピューターに接続中のデバイス一覧を表示できるようになりました。
UE4 でモバイル プロジェクトの新規作成ができる状態になりました。
## モバイル プロジェクトを作成する
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.KOR.udn
index 95484e644d7f..a0dd88ae4bdc 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/3/AndroidOnLinux_3.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3351873
-Availability: Docs
+INTSourceChangelist:0
+Availability: Public
Title: 3 - Creating your Project
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to create an Android mobile game project in UE4.
Version: 4.14
type:quick start
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.INT.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.INT.udn
index a8d851440af1..502d2d807671 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.INT.udn
@@ -1,6 +1,6 @@
-Availability: Docs
+Availability: Public
Title: 4 - Deploying your Level
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to deploy a level onto your Android device from UE4.
Version: 4.14
type:quick start
@@ -24,8 +24,9 @@ Prior to deploying your application, refer to this list, which was written to he
* Although it may seem like an obvious consideration, please make sure that the Android device is properly connected to your computer.
* If you already haven't done so, verify that Android Debug Bridge (adb) lists your connected device(s). To learn more about adb, enter `adb --help` into the terminal. You can also refer to the [Android Debug Bridge User Guide](https://developer.android.com/studio/command-line/adb.html) to learn more about adb and how to set up the program on your computer.
-* In order to properly build, cook, package, and deploy your game to Android, you'll need to have JDK 8 installed, with your `JAVA_HOME` environment variable set to the correct version of the JDK. To verify that `JAVA_HOME` is set properly, enter `echo $JAVA_HOME` into the terminal. If you don't see the correct JDK version, [download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html), and install it on your Linux computer, making sure to set the `JAVA_HOME` environment variable to the newly installed JDK.
-* Make sure that you're building for the appropriate ARM architecture, because if you don't, your project won't deploy properly. After verifying the instruction set that'll work on your device, you can select the appropriate ARM architecture support from inside the Editor by navigating to **Edit > Project Settings... > Android > Build**, and selecting either **Support arm7** or **Support arm64**. Currently, we don't provide **Vulkan** rendering support from UE4 on Linux.
+* In order to properly build, cook, package, and deploy your game to Android, you'll need to have JDK 8 installed, with your `JAVA_HOME` environment variable set to the correct version of the JDK. To verify that `JAVA_HOME` is set properly, enter `echo $JAVA_HOME` into the terminal. If you don't see the correct JDK version, [download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html), and install it on your Linux computer, making sure to set the `JAVA_HOME` environment variable to the newly installed JDK. You can set the `JAVA_HOME` environment variable in the [Android SDK Project Settings](https://developer.android.com/studio/command-line/variables.html).
+* Make sure that you're building for the appropriate ARM architecture, because if you don't, your project won't deploy properly. After verifying the instruction set that'll work on your device, you can select the appropriate ARM architecture support from inside the Editor by navigating to **Edit > Project Settings... > Android > Build**, and selecting either **Support arm7** or **Support arm64**.
+* Currently, we don't provide **Vulkan** rendering support from UE4 on Linux.
* Different Android devices uniquely support a variety of texture formats. If you don't know which texture formats are supported by your Android device, try setting your target texture to the Ericsson Texture Compression 1 (ETC 1) compression scheme, which should be supported by most Android devices. To learn more about supporting multiple textures, check out Android's documentation on [Creating Multiple APKs for Different GL Textures](https://developer.android.com/training/multiple-apks/texture.html).
#### Reviewing Available Texture Formats
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.JPN.udn
index 31647705fcd4..3caca1b57a52 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3298293
-Availability:Docs
+INTSourceChangelist:3457813
+Availability:Public
Title:4 - レベルをデプロイする
-Crumbs:
+Crumbs:%ROOT%
Description:UE4 から Android デバイスにレベルをデプロイする方法
Version:4.14
type:quick start
@@ -10,6 +10,7 @@ order:4
tags:Linux
SkillLevel:Intermediate
Checkpoint:AndroidOnLinuxQS
+Contributor:yaakuro
[nav]
@@ -18,25 +19,26 @@ Checkpoint:AndroidOnLinuxQS
細かい点にいろいろ注意する必要があります。**ThirdPersonExampleMap** レベルを Android デバイスにデプロイする前に、
最も一般的な配慮事項のいくつか説明します。
-## Linux でのデプロイ前の配慮事項
+## Linux でのデプロイ前の考慮事項
-ゲームのデバイスへのデプロイ中によく起こる可能性がある問題を避けるために書かれたこのリストを、アプリケーションをデプロイする前に今一度ご確認ください。
+これらはゲームのデバイスへのデプロイ中によく起こる可能性がある問題を避けるための考慮事項です。アプリケーションをデプロイする前に今一度ご確認ください。
-* 当たり前のように思うかもしれませんが、Android デバイスがコンピューターに正しく接続されているか確認してください。
-* そのようになっていない場合、Android Debug Bridge (adb) に接続するデバイスが入っているか確認してください。Adb の詳細は、ターミナルに `adb --help` と入力すれば表示されます。[Android Debug Bridge ユーザー ガイド](https://developer.android.com/studio/command-line/adb.html) でも adb およびコンピューターでのプログラム設定方法について説明しています。
-* ゲームを Android に正しくビルド、クック、パッケージ化、デプロイするためには、`JAVA_HOME` 環境変数を JDK の正しいバージョンに設定して、JDK 8 をインストールする必要があります。`JAVA_HOME` の設定が正しいか確認するには、ターミナルに `echo $JAVA_HOME` と入力します。正しい JDK のバージョンが表示されない場合は、[download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html) から Linux コンピューターにインストールし、`JAVA_HOME` 環境変数を新しくインストールした JDK に設定します。
-* 適切な ARM アーキテクチャにビルドしていることを確認してください。そうでないとプロジェクトが正しくデプロイできません。デバイスで使用できるインストラクション セットを確認したら、**[Edit] > [Project Settings...] > [Android] > [Build]** から **[Support arm7]** または **[Support arm64]** を選択すれば、適切な ARM アーキテクチャ サポートをエディタ内から選択することができます。現時点では、UE4 は Linux 上での **Vulkan** レンダリングはサポートしていません。
-* Android デバイスは、各種それぞれがテクスチャ形式をユニークにサポートしています。Android デバイスでサポートされているテクスチャ形式が分からない場合は、ほとんどの Android デバイスでサポートされている Ericsson Texture Compression 1 (ETC 1) 圧縮スキームにターゲット テクスチャを設定してみてください。複数のテクスチャに対するサポートについては、[Creating Multiple APKs for Different GL Textures](https://developer.android.com/training/multiple-apks/texture.html) の Android に関する文書を参照してください。
+* 当たり前ですが、Android デバイスがコンピューターに正しく接続されているか確認してください。
+* そうでない場合、Android Debug Bridge (adb) に接続するデバイスが入っているか確認してください。Adb の詳細は、ターミナルに `adb --help` と入力すると表示されます。[Android Debug Bridge ユーザー ガイド](https://developer.android.com/studio/command-line/adb.html) でも adb およびコンピューターでのプログラム設定方法について説明しています。
+* ゲームを Android に正しくビルド、クック、パッケージ化、デプロイするためには、`JAVA_HOME` 環境変数を JDK の正しいバージョンに設定して、JDK 8 をインストールする必要があります。`JAVA_HOME` の設定が正しいか確認するには、ターミナルに `echo $JAVA_HOME` と入力します。正しい JDK のバージョンが表示されない場合は、[download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html) から Linux コンピューターにインストールし、`JAVA_HOME` 環境変数を新しくインストールした JDK に設定します。[Android SDK プロジェクト設定](https://developer.android.com/studio/command-line/variables.html) で `JAVA_HOME` 環境変数を設定することができます。
+* 適切な ARM アーキテクチャにビルドしていることを確認してください。そうでないとプロジェクトが正しくデプロイできません。デバイスで使用できるインストラクション セットを確認したら、**[Edit] > [Project Settings...] > [Android] > [Build]** から **[Support arm7]** または **[Support arm64]** を選択すれば、適切な ARM アーキテクチャ サポートをエディタ内から選択することができます。
+* 現時点では、UE4 は Linux 上での **Vulkan** レンダリングはサポートしていません。
+* それぞれの Android デバイスが、多様なテクスチャ形式をユニークにサポートしています。Android デバイスでサポートされているテクスチャ形式が分からない場合は、Ericsson Texture Compression 1 (ETC 1) 圧縮スキームにターゲット テクスチャを設定してください。ほとんどの Android デバイスでサポートされているテクスチャです。複数のテクスチャに対するサポートについては、[Creating Multiple APKs for Different GL Textures](https://developer.android.com/training/multiple-apks/texture.html) の Android に関する文書を参照してください。
#### サポート対象のテクスチャ形式
-以下は Android デバイスでサポートされることが多いテクスチャ形式と概要です。
+以下は Android デバイスでサポートされることが多いテクスチャ形式の概要です。
[INCLUDE:Platforms/Android/Reference#androidformats]
## レベルをデプロイする
-Android デバイスにゲームをデプロイする際の最重要事項を確認したので、ゲームのデプロイを開始しましょう。
+Android デバイスにゲームをデプロイするための最重要事項を確認したので、ゲームのデプロイを開始しましょう。
1. まず、**ThirdPersonExampleMap** が開いていることを確認してください。
@@ -90,7 +92,7 @@ Android デバイスにゲームをデプロイする際の最重要事項を確

-## サポート対象のテクスチャ形式を決定する
+## サポート対象のテクスチャ形式を決定する方法
使用する Android デバイスでサポートされているテクスチャ形式が分からない場合は、次の手順を試してください。
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.KOR.udn
index c1d847e5103a..39248955e4ad 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/4/AndroidOnLinux_4.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3351873
-Availability: Docs
+INTSourceChangelist:0
+Availability: Public
Title: 4 - Deploying your Level
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to deploy a level onto your Android device from UE4.
Version: 4.14
type:quick start
@@ -25,8 +25,9 @@ Prior to deploying your application, refer to this list, which was written to he
* Although it may seem like an obvious consideration, please make sure that the Android device is properly connected to your computer.
* If you already haven't done so, verify that Android Debug Bridge (adb) lists your connected device(s). To learn more about adb, enter `adb --help` into the terminal. You can also refer to the [Android Debug Bridge User Guide](https://developer.android.com/studio/command-line/adb.html) to learn more about adb and how to set up the program on your computer.
-* In order to properly build, cook, package, and deploy your game to Android, you'll need to have JDK 8 installed, with your `JAVA_HOME` environment variable set to the correct version of the JDK. To verify that `JAVA_HOME` is set properly, enter `echo $JAVA_HOME` into the terminal. If you don't see the correct JDK version, [download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html), and install it on your Linux computer, making sure to set the `JAVA_HOME` environment variable to the newly installed JDK.
-* Make sure that you're building for the appropriate ARM architecture, because if you don't, your project won't deploy properly. After verifying the instruction set that'll work on your device, you can select the appropriate ARM architecture support from inside the Editor by navigating to **Edit > Project Settings... > Android > Build**, and selecting either **Support arm7** or **Support arm64**. Currently, we don't provide **Vulkan** rendering support from UE4 on Linux.
+* In order to properly build, cook, package, and deploy your game to Android, you'll need to have JDK 8 installed, with your `JAVA_HOME` environment variable set to the correct version of the JDK. To verify that `JAVA_HOME` is set properly, enter `echo $JAVA_HOME` into the terminal. If you don't see the correct JDK version, [download JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html), and install it on your Linux computer, making sure to set the `JAVA_HOME` environment variable to the newly installed JDK. You can set the `JAVA_HOME` environment variable in the [Android SDK Project Settings](https://developer.android.com/studio/command-line/variables.html).
+* Make sure that you're building for the appropriate ARM architecture, because if you don't, your project won't deploy properly. After verifying the instruction set that'll work on your device, you can select the appropriate ARM architecture support from inside the Editor by navigating to **Edit > Project Settings... > Android > Build**, and selecting either **Support arm7** or **Support arm64**.
+* Currently, we don't provide **Vulkan** rendering support from UE4 on Linux.
* Different Android devices uniquely support a variety of texture formats. If you don't know which texture formats are supported by your Android device, try setting your target texture to the Ericsson Texture Compression 1 (ETC 1) compression scheme, which should be supported by most Android devices. To learn more about supporting multiple textures, check out Android's documentation on [Creating Multiple APKs for Different GL Textures](https://developer.android.com/training/multiple-apks/texture.html).
#### Reviewing Available Texture Formats
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.INT.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.INT.udn
index 13c43d690028..b3043261da94 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.INT.udn
@@ -1,6 +1,6 @@
-Availability: Docs
+Availability: Public
Title: 5 - Packaging your Game
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to package your mobile game for distribution (release).
Version: 4.14
type:quick start
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.JPN.udn
index 333b162c87bf..678a77094304 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3298293
-Availability:Docs
+INTSourceChangelist:3457813
+Availability:Public
Title:5 - ゲームをパッケージ化する
-Crumbs:
+Crumbs:%ROOT%
Description:モバイル ゲームを配布 (リリース) 用にパッケージ化する方法を説明します。
Version:4.14
type:quick start
@@ -10,12 +10,13 @@ order:5
tags:Linux
SkillLevel:Intermediate
Checkpoint:AndroidOnLinuxQS
+Contributor:yaakuro
[nav]
-ここまでのチュートリアルでは、モバイル ゲーム プロジェクトを作成し Android デバイスにでデプロイしました。さらにゲームを配布可能にするには、プロジェクトをパッケージ化する必要があります。
-以下の手順では、Android プラットフォームにゲームをパッケージ化して配信可能にする方法を説明します。その前に、プロジェクトのパッケージ化は **Development** モードで行います。これをしっかり理解してください。まず最初に、テスト目的でゲームのパッケージ化を **Development** モードで行うことが
-グッドプラクティスです。ゲームの仕上がりに納得したら、エンジンにコンソール 小マント、統計、プロファイリング ツールを削除するように指示する **Shipping** モードプロジェクトをパッケージ化することができます。
+ここまでのチュートリアルでは、モバイル ゲーム プロジェクトを作成し Android デバイスにでデプロイしました。ゲームを配布可能にするには、さらにプロジェクトをパッケージ化する必要があります。
+以下の手順では、Android プラットフォームにゲームをパッケージ化して配信可能にする方法を説明します。プロジェクトのパッケージ化は **Development** モードで行うということを、しっかり理解しておいてください。最初は、テスト目的でゲームのパッケージ化を **Development** モードで行うことが
+グッドプラクティスです。ゲームの仕上がりに納得したら、エンジンがコンソール コマンド、統計、プロファイリング ツールを削除する **Shipping** モード プロジェクトをパッケージ化することができます。
[REGION:note]
UE4 で使用できる各種ビルド コンフィギュレーションの違いについては、 [](Programming/Development/BuildConfigurations) ページを参照してください。
@@ -23,7 +24,7 @@ UE4 で使用できる各種ビルド コンフィギュレーションの違い
##プロジェクトをパッケージ化する
[EXCERPT:AndroidLinux_5]
-1. **[File]** メニューをスクロールして **[Package Project]** を選択し、**[Android]** 上にカーソルを合わせて **[Android (ETC1)]** を選択します。
+1. **[File]** メニューを開き、下にスクロールして **[Package Project]** を選択したら **[Android]** 上にカーソルを合わせて **[Android (ETC1)]** を選択します。
[REGION:lightbox]
[(w:720)](LinuxAndroid_Step31.png)
@@ -33,7 +34,7 @@ UE4 で使用できる各種ビルド コンフィギュレーションの違い
クリックしてフルサイズで表示
[/REGION]
-1. **[Open Directory]** メニューが表示されたら、**[New Folder]** ボタンを使って `Android_Builds` という名前の新規フォルダを作成します。
+1. **[Open Directory]** メニューが表示されたら、**[New Folder]** ボタンを使って「`Android_Builds`」という名前の新規フォルダを作成します。
[REGION:lightbox]
[(w:720)](LinuxAndroid_Step32.png)
@@ -53,7 +54,7 @@ UE4 で使用できる各種ビルド コンフィギュレーションの違い
クリックしてフルサイズで表示
[/REGION]
-1. UE4 がプロジェクトをパッケージ化している間、進捗バーが右下隅に表示されます。
+1. UE4 によるプロジェクト パッケージ化の間、進捗バーが右下隅に表示されます。
[REGION:lightbox]
[(w:720)](LinuxAndroid_Step34.png)
@@ -63,7 +64,7 @@ UE4 で使用できる各種ビルド コンフィギュレーションの違い
クリックしてフルサイズで表示
[/REGION]
-1. 処理の最後に、パッケージ化が完了した旨を示すメッセージが表示されます。
+1. パッケージ化の最後に、処理の完了を示すメッセージが表示されます。
[REGION:lightbox]
[(w:720)](LinuxAndroid_Step35.png)
@@ -73,7 +74,7 @@ UE4 で使用できる各種ビルド コンフィギュレーションの違い
クリックしてフルサイズで表示
[/REGION]
-1. **[Android_Builds]** フォルダを開くと、**「Android_ETC1」** というフォルダがあります。
+1. **[Android_Builds]** フォルダの中に **「Android_ETC1」** というフォルダがあります。

@@ -99,7 +100,7 @@ UE4 で使用できる各種ビルド コンフィギュレーションの違い
[/REGION]
[REGION:note]
- このシェルスクリプトの実行がうまくいかない場合は、ターミナルに `adb devices` と入力して、デバイスがコンピューターに接続されているかを確認してください。
+ このシェルスクリプトの実行がうまくいかない場合は、ターミナルに `adb devices` と入力して、デバイスのコンピューターへの接続状態を確認してください。
[/REGION]
1. インストール中、シェル スクリプトは以下の出力をターミナルにフラッシュします。
@@ -118,7 +119,7 @@ UE4 で使用できる各種ビルド コンフィギュレーションの違い
[/EXCERPT:AndroidLinux_5]
## 結果
-インストール スクリプトにより Android デバイスへのゲームのインストールが完了し、プロジェクトがデバイスのアプリケーション ドロワーで見えるようになりました。
+インストール スクリプトにより Android デバイスへのゲームのインストールが完了し、プロジェクトがデバイスのアプリケーション ドロワーで表示されました。
[REGION:lightbox]
[(w:180)](LinuxAndroid_Step5EndResult.png)
@@ -128,14 +129,14 @@ UE4 で使用できる各種ビルド コンフィギュレーションの違い
クリックしてフルサイズで表示
[/REGION]
-これで終わりです!以下について学習しました。
+これで終わりです!このステップで学習した内容です。
-✓ Linux で UE4 を使ってモバイルゲーム開発用 Android SDK のインストールおよび設定方法。
-✓ Android の開発環境を有効にする方法を説明します。
-✓ UE4 で Android モバイル ゲーム プロジェクトの作成方法を説明します。
-✓ UE4 から Android デバイスにレベルをデプロイする方法
+✓ Linux で UE4 を使ってモバイルゲーム開発用 Android SDK のインストールおよび設定方法
+✓ Android の開発環境を有効にする方法
+✓ UE4 で Android モバイル ゲーム プロジェクトの作成方法
+✓ UE4 から Android デバイスへのレベルのデプロイ方法
✓ モバイル ゲームをリリース用にパッケージする方法
-次のページでは、今学んだ新しいスキルの応用方法について説明します。
+次のページでは、上記スキルの応用方法について説明します。
[nav]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.KOR.udn
index 1ecdeeb71685..ddefe75a6508 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/5/AndroidOnLinux_5.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3351873
-Availability: Docs
+INTSourceChangelist:0
+Availability: Public
Title: 5 - Packaging your Game
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to package your mobile game for distribution (release).
Version: 4.14
type:quick start
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.INT.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.INT.udn
index f96b7277004d..64c4f1d65926 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.INT.udn
@@ -1,6 +1,6 @@
-Availability: Docs
+Availability: Public
Title: 6 - On Your Own!
-Crumbs:
+Crumbs:%ROOT%
Description:Do some exercises on your own.
Version: 4.14
type:quick start
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.JPN.udn
index 6825029ab7be..95da7348d132 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3313485
-Availability:Docs
+INTSourceChangelist:3457813
+Availability:Public
Title:6 - 応用編
-Crumbs:
+Crumbs:%ROOT%
Description:実際に練習してみましょう。
Version:4.14
type:quick start
@@ -10,17 +10,18 @@ order:6
tags:Linux
SkillLevel:Intermediate
Checkpoint:AndroidOnLinuxQS
+Contributor:yaakuro
[nav]
モバイル ゲームの開発には、相当な注意力を要します。デバイス互換性、モバイルのパフォーマンス、スペース制限については特にそうです。
モバイル ゲームの開発中にベスト プラクティスを実施すると、モバイル ゲーム開発スキルを効率的にアップすることができます。
習得したベスト プラクティスを使ってモバイル コンテンツを作成したら、別のデプロイ メソッドでモバイル ゲームをプレビューおよびデプロイする方法を学びましょう。
-このページの最後には、習得したモバイル開発の新しいスキルを実践するための問題を追加しました。
+このページの最後にある実践問題で、習得したモバイル開発の新しいスキルの腕試しができます。
## ベスト プラクティス
-Andoird デバイス用のテンプレート モバイル UE4 プロジェクトの作成、パッケージ化、およびデプロイ方法を学習しました。次は、Linux でUE4 を使用したモバイル ゲームの作成に大きな影響を与えるデバイスの互換性、モバイル パフォーマンス、APK ベスト プラクティスについて考えてみましょう。
+ここまでのステップで、Andoird デバイス用のテンプレート モバイル UE4 プロジェクトの作成、パッケージ化、およびデプロイ方法を学習しました。次は、Linux でUE4 を使用したモバイル ゲームの作成に大きな影響を与えるデバイスの互換性、モバイル パフォーマンス、APK ベスト プラクティスについて考えてみましょう。
####Android デバイスの互換性
@@ -33,9 +34,9 @@ Andoird デバイス用のテンプレート モバイル UE4 プロジェクト
####APK パッケージ サイズの縮小
-ターゲットとするハードウェアまたはソフトウェア プラットフォームに制限があるために、モバイル ゲーム自体のサイズ制限が必要な場合があります。モバイル ゲーム サイズを縮小するには、モバイル アプリケーションのパッケージ化に Android OS が使用するカスタム仕様ファイル形式 **Android Application Package** (APK) のサイズの縮小が必要な場合があります。パッケージ済みゲームのサイズを縮小する方法については、[APK パッケージ サイズの縮小方法](Platforms/Android/ReducingAPKSize) を参照してください。
+ターゲット ハードウェア / ソフトウェア プラットフォームの制約のため、モバイル ゲーム サイズの制限が必要な場合があります。モバイル ゲーム サイズを縮小するために、モバイル アプリケーションのパッケージ化に Android OS が使用するカスタム仕様ファイル形式である **Android Application Package** (APK) のサイズ縮小が必要な場合があります。パッケージ済みゲームのサイズ縮小方法については、[APK パッケージ サイズの縮小方法](Platforms/Android/ReducingAPKSize) を参照してください。
-## モバイル コンテンツの作成
+## モバイル コンテンツを作成する
Linux で UE4 を使ってモバイル ゲームを開発する方法を学びました。実践として、デバイス使えるレンダリング機能を使ってゲーム コンテンツを作成すると良いと思います。以下のリファレンスを参照してください。
@@ -51,11 +52,11 @@ Linux で UE4 を使ってモバイル ゲームを開発する方法を学び
##ワイヤレス ネットワークでデプロイする
-モバイル ゲーム コンテンツを作成し、エディタでモバイル ゲームをプレビューするベスト プラクティスを学習しました。それではゲームを Android デバイスまたはワイヤレス ネットワークにデプロイしてみましょう。ワイヤレス ネットワークで Android デバイスに UE4 プロジェクトをデプロイする方法は、[Gear VR Debugging リファレンス ページ](Platforms/GearVR/Debugging) を参照してください。
+モバイル ゲーム コンテンツを作成し、エディタでモバイル ゲームをプレビューするベスト プラクティスを学習しました。それではゲームを Android デバイスまたはワイヤレス ネットワークにデプロイしてみましょう。ワイヤレス ネットワークで Android デバイスに UE4 プロジェクトをデプロイする方法については、[Gear VR Debugging リファレンス ページ](Platforms/GearVR/Debugging) を参照してください。
##実践問題
-モバイル ゲーム開発スキルをテストし続けるために、次のような練習問題をやってみましょう。
+モバイル ゲーム開発スキルを試したい方は、次の練習問題をやってみましょう。
* Third Person テンプレート以外を使って新規のモバイル プロジェクトを作成します。次に、そのプロジェクトを Android デバイスで実行してみます。
* 異なる Android テクスチャ形式を使ってプロジェクトをパッケージ化し、特定のデバイスで動く形式を文書化します。
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.KOR.udn
index 4d8034af0e1d..900185068171 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/6/AndroidOnLinux_6.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3351873
-Availability: Docs
+INTSourceChangelist:0
+Availability: Public
Title: 6 - On Your Own!
-Crumbs:
+Crumbs:%ROOT%
Description:Do some exercises on your own.
Version: 4.14
type:quick start
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.INT.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.INT.udn
index bc220d0005c5..15e9e4db268b 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.INT.udn
@@ -1,6 +1,6 @@
-Availability: Docs
+Availability: Public
Title: Android On Linux Quick Start
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to create, deploy, and package games to Android from Linux.
Platform:Linux
Version: 4.14
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.JPN.udn
index 3fa5add57256..33dff9aeb835 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangeList:3298293
-Availability:Docs
+INTSourceChangelist:3457813
+Availability:Public
Title:Linux 上で Android 向けゲームを開発するためのクイックスタート ガイド
-Crumbs:
+Crumbs:%ROOT%
Description:Linux 上で Android 向けゲームを開発する方法を学びます。
Platform:Linux
Version:4.14
@@ -14,13 +14,14 @@ prereq:GettingStarted/RecommendedSpecifications
prereq:Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnUnrealWorkflow
topic-image:androidLinuxQS_topic.png
Checkpoint:AndroidOnLinuxQS
+Contributor:yaakuro
[REGION:imagetable]
(w:900)
-_このチュートリアルでは、Linux で アンリアル エンジン 4 (UE4) を使用して、Android デバイス用ゲームの作成、デプロイ、パッケージ化を行います。_
+_このチュートリアルでは、Linux で アンリアル エンジン 4 (UE4) を使用して、Android デバイス向けゲームの作成、デプロイ、パッケージ化を行います。_
[/REGION]
-Linux から Android デバイス用ゲームの作成および配布を予定しているデベロッパーのためのページです。
+Linux から Android デバイス向けゲームの作成および配布を予定しているデベロッパーのためのページです。
## 目標
@@ -30,9 +31,9 @@ Linux から Android デバイス用ゲームの作成および配布を予定
このチュートリアルでは、以下の習得を目指します。
-* Linux で UE4 を使ってモバイル ゲーム開発用 Android SDK のインストールおよび設定方法。
-* Android の開発環境を有効にする方法。
-* UE4 で Android モバイル ゲームを作成する方法。
+* Linux で UE4 を使ってモバイルゲーム開発用 Android SDK のインストールおよび設定方法
+* Android の開発環境を有効にする方法
+* UE4 で Android モバイル ゲームを作成する方法
* UE4 から Android デバイスにレベルをデプロイする方法
* モバイル ゲームをリリース用にパッケージする方法
@@ -55,5 +56,5 @@ Linux から Android デバイス用ゲームの作成および配布を予定
[/REGION]
[REGION:quote]
-優秀なコミュニティからの支援のお陰で、ついに UE4 を使った Linux 開発に Android サポートを追加することができました。
+優秀なコミュニティからの支援のお陰で、ついに UE4 を使った Linux 開発で Android もサポートすることができました。
[/REGION]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.KOR.udn
index df274a8c222b..1a122892c236 100644
--- a/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux/AndroidOnLinux.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3351873
-Availability: Docs
+INTSourceChangelist:0
+Availability: Public
Title: Android On Linux Quick Start
-Crumbs:
+Crumbs:%ROOT%
Description:Learn how to create, deploy, and package games to Android from Linux.
Platform:Linux
Version: 4.14
diff --git a/Engine/Documentation/Source/Platforms/Linux/Linux.INT.udn b/Engine/Documentation/Source/Platforms/Linux/Linux.INT.udn
index bdab25110e19..1d03b303ff70 100644
--- a/Engine/Documentation/Source/Platforms/Linux/Linux.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/Linux.INT.udn
@@ -8,7 +8,9 @@ Version: 4.14
type:landing
parent:Platforms
tags:Linux
+tags:Desktop
related: GettingStarted/RecommendedSpecifications
+Topic-image:LinuxDevelopment_topic.png
Fueling the future of Linux game development is at your fingertips! Now, more than ever, you can harness the power of
Unreal Engine 4 (UE4) to create and share games with Linux users worldwide. If you're new to Linux game development,
@@ -18,6 +20,7 @@ you'll want to work your way through the Quick Start Guide before moving onto mo
%Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnUnrealWorkflow:topic%
%Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnIDE:topic%
+%Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux:topic%
## Advanced Topics
diff --git a/Engine/Documentation/Source/Platforms/Linux/Linux.JPN.udn b/Engine/Documentation/Source/Platforms/Linux/Linux.JPN.udn
index f044ca35ed6f..f44305d5ac4e 100644
--- a/Engine/Documentation/Source/Platforms/Linux/Linux.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/Linux.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3364378
+INTSourceChangelist:3467293
Availability:Public
Title:Linux ゲームの開発
Crumbs:
@@ -9,9 +9,11 @@ Version:4.14
type:landing
parent:Platforms
tags:Linux
+tags:Desktop
related:GettingStarted/RecommendedSpecifications
+Topic-image:LinuxDevelopment_topic.png
-Linux ゲーム開発の未来を開くのは、あなたの指先です!これまでにないほど、アンリアル エンジン 4 (UE4) を利用して、
+あなたの指先が Linux ゲーム開発の未来を開きます!これまでにないほど、アンリアル エンジン 4 (UE4) を利用して、
世界中の Linux ユーザーとゲームを作成し共有することができるようになりました。Linux でゲーム開発をしたことがない場合、高度なトピックスへ進む前に、
クイック スタート ガイドを一読しておくことをお勧めします。
@@ -19,6 +21,7 @@ Linux ゲーム開発の未来を開くのは、あなたの指先です!こ
%Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnUnrealWorkflow:topic%
%Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnIDE:topic%
+%Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux:topic%
## 高度なトピック
diff --git a/Engine/Documentation/Source/Platforms/Linux/Linux.KOR.udn b/Engine/Documentation/Source/Platforms/Linux/Linux.KOR.udn
index 438996161fc3..c4440c57c820 100644
--- a/Engine/Documentation/Source/Platforms/Linux/Linux.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Linux/Linux.KOR.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3336764
+INTSourceChangelist:3467293
Availability: Public
Title: 리눅스 게임 개발
-Crumbs:%ROOT%, Platforms
+Crumbs:
Description:리눅스 플랫폼용 게임 개발 관련 문서입니다.
Platform:Linux
Navigation:platform
@@ -9,7 +9,9 @@ Version: 4.14
type:landing
parent:Platforms
tags:Linux
+tags:Desktop
related: GettingStarted/RecommendedSpecifications
+Topic-image:LinuxDevelopment_topic.png
손가락만 움직여도 얻을 수 있는 리눅스 게임 개발의 원동력! 이제 전에 없던 수준으로 언리얼 엔진 4 (UE4) 를 활용하여
전 세계의 리눅스 사용자들과 함께 게임을 만들고 공유할 수 있습니다. 리눅스 게임 개발이 처음이신 경우,
@@ -17,11 +19,15 @@ related: GettingStarted/RecommendedSpecifications
## 시작하기
-%Platforms/Linux/GettingStarted:topic%
%Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnUnrealWorkflow:topic%
%Platforms/Linux/BeginnerLinuxDeveloper/SettingUpAnIDE:topic%
+%Platforms/Linux/IntermediateLinuxDeveloper/AndroidOnLinux:topic%
+
+## 고급 토픽
+
+%Platforms/Linux/GettingStarted:topic%
+%Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy:topic%
## 참고서
%Platforms/Linux/BeginnerLinuxDeveloper/SupportedGfxDrivers:topic%
-%Platforms/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy:topic%
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Achievements/Achievements.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/Achievements/Achievements.JPN.udn
index 0325ab3bac40..e431747a26d6 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Achievements/Achievements.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Achievements/Achievements.JPN.udn
@@ -1,5 +1,4 @@
-INTSourceChangelist:3150518
-Title:モバイル サービスのアチーブメントを使用する
+Title:モバイル サービスのアチーブメントの使用方法
Description:プレイヤーのエンゲージメントを高めるためにモバイルのアチーブメントを使用する
Crumbs:
Availability:Public
@@ -42,7 +41,7 @@ tags:mobile
[/OBJECT]
[/VAR]
-**アチーブメント** は、苦労してたどり着く目標、名誉のバッジ、あるいは単純に物語の区切りとして使ったり、プレイヤーのゲームへのエンゲージメントを保持できる便利な方法です。
+**アチーブメント** は、努力して達成する目標、バッジ、あるいは単純に物語の区切りとして使ったり、プレイヤーのゲームへのエンゲージメントの保持に便利な手段です。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -75,38 +74,38 @@ tags:mobile
**ブループリント内:**
-Unreal Match 3 のサンプル ゲームの **Global Game Instance** を例に取りましょう。デバイスのゲーム プラットフォーム (Game Center、Google Play) にログインした後、このポイントで **Cache Achievements** ノードを実行して (一番上の出力実行ピンから何も実行されないようにして) 実際に実行を止め、すべてのアチーブメントを返すサービス時間を与えます:
+Unreal Match 3 のサンプル ゲームの **Global Game Instance** を例に取りましょう。デバイスのゲーム プラットフォーム (Game Center、Google Play) にログイン後、このポイントで **Cache Achievements** ノードを実行して (一番上の出力実行ピンから何も実行されないようにして) 実際に実行を停止し、すべてのアチーブメントを返すサービス時間を与えます:

-## アチーブメントから値を読み取る
+## アチーブメントの値の読み取り
-**Get Cached Achievement Progress** は、提供されている **Player Controller** の所定の **Achievement ID** の進捗を返し、**Cache Achievements** ノードが実行済みで正常に返された場合のみ有効になります。
+**Get Cached Achievement Progress** は、指定された **Player Controller** に対して所定の **Achievement ID** の Progress を返し、**Cache Achievements** ノードが既に実行されて正常に返された場合のみ機能します。
-IOS Game Center の場合、この値は実際は整数として格納されるので、切り捨てのフロート値です。Google Play サービス用にフロート値を受け取ります。
+IOS Game Center の場合、この値は実際は整数として格納されるので、切り捨てのフロート値です。Google Play サービスに対してフロート値を受け取ります。
**ブループリント内:**
-Unreal Match 3 のサンプル ゲームの **Global Game Instance** を例に取りましょう。アチーブメントがキャッシュされたら、アチーブメント名および配列からもターゲット スコアをプルしてループを実行し、オフラインで見つかった値と簡単に比較します。そして、サービス値とローカル値で高い方を受け取ります。
+例として、Unreal Match 3 のサンプル ゲームの **Global Game Instance** ブループリントを見てみましょう。アチーブメントがキャッシュされたら、アチーブメント名および配列からもターゲット スコアをプルしてループを実行し、オフラインで見つかった値とすぐに比較します。そして、サービス値とローカル値で高い方を受け取ります。

## アチーブメントへ値を書き出す
-**Write Achievement Progress** は、**進捗** を所定のユーザーに提供されているアチーブメント (**Player Controller** と **User Tag**) へパーセント (0.0% - 100.0%) で書き出すためにプラットフォームのアチーブメント システムへメッセージを送ります。インクリメンタルなアチーブメントの場合は低めのパーセントを渡すのに対して、「単発の」アチーブメントの場合は常に **Progress** に `100.0` を渡します。
+**Write Achievement Progress** は、パーセント (0.0% - 100.0%) ベースの **Progress** を所定のユーザーに提供されているアチーブメント (**Player Controller** と **User Tag**) へ書き出すために、プラットフォームのアチーブメント システムへメッセージを送ります。インクリメンタルなアチーブメントの場合は低めのパーセントを渡すのに対して、「単発の」アチーブメントの場合は常に **Progress** に `100.0` を渡します。
iOS Game Center の場合、インクリメンタルなアチーブメントは 1-100 なので、この値は実際に整数で送られます。Google Play サービス用にフロート値を送ります。
-これは **潜在的な** ノードなので、実行出力ピンが多いことに注目してください。一番上は「通過」ですが、他の実行出力ピンと何ら変わりはありません。その下の 2 つのピン (**On Success** と **On Failure**) は、オンライン サービスが値を返す (または返すことに失敗する) と実行されます。実行が **Written Achievement Name** に正常を返すと、**Written Progress**, と **Written User Tag** は null 以外のノードと同等の値を返します。
+このノードは **潜在的な** ノードなので、実行出力ピンたくさん付いています。一番上は「通過」ピンですが、他の実行出力ピンと同じように機能します。その下の 2 つのピン (**On Success** と **On Failure**) は、オンライン サービスが値を返す (または返しに失敗する) と実行されます。実行が **Written Achievement Name** に正常を返すと、**Written Progress** と **Written User Tag** は null 以外のノードと同等の値を返します。
**ブループリント内:**
-Unreal Match 3 のサンプル ゲームの **Global Game Instance** を例に取りましょう。現在のアチーブメント値をその値を増やすために必要なメトリクスと比較するループがあります。進展すると **Write Achievement** イベントが呼び出されます。
+例として、Unreal Match 3 のサンプル ゲームの **Global Game Instance** ブループリントを見てみましょう。現在のアチーブメント値をその値を増やすために必要なメトリクスと比較するループがあります。進展すると **Write Achievement** イベントが呼び出されます。

[REGION:note]
-潜在的なノードは関数では使用できないので、これで行います。
+潜在的なノードは関数では使用できないので、このように行います。
[/REGION]
## プラットフォーム固有のアチーブメントを表示する
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Ads/Ads.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/Ads/Ads.JPN.udn
index ff71f6143c56..ed19bc04d371 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Ads/Ads.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Ads/Ads.JPN.udn
@@ -1,5 +1,5 @@
INTSourceChangelist:3150518
-Title:インゲーム広告を使用する
+Title:インゲーム広告の使用方法
Description: ゲームを収益化するためにインゲーム広告を使用する
Crumbs:
Availability:Public
diff --git a/Engine/Documentation/Source/Platforms/Mobile/InAppPurchases/In-AppPurchases.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/InAppPurchases/In-AppPurchases.JPN.udn
index 8603b9be8958..04ca04b00022 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/InAppPurchases/In-AppPurchases.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/InAppPurchases/In-AppPurchases.JPN.udn
@@ -1,6 +1,5 @@
-INTSourceChangelist:3150518
-Title:アプリ内課金を使用する
-Description:アプリ内課金を使ってゲームに追加の有料コンテンツを提供する
+Title:アプリ内課金の使用方法
+Description:アプリ内課金を使ってゲームで追加の有料コンテンツを提供する
Crumbs:
Availability:Public
parent:Platforms/Mobile
@@ -42,11 +41,11 @@ tags:mobile
[/OBJECT]
[/VAR]
-アプリ内課金により、プレイヤーに対してコンテンツと機能の追加提供が可能になります。無料ゲームを有料化したり、有料コンテンツをゲームに追加する方法として使用できます。
+アプリ内課金は、プレイヤーにコンテンツと機能を追加で提供することができます。無料ゲームを有料化したり、有料コンテンツをゲームに追加して使用します。
## コンフィギュレーション
-各プラットフォームに対するアプリ内課金の設定の詳細については、プラットフォーム専用ページをご覧ください。
+プラットフォームごとのアプリ内課金設定方法については、プラットフォーム専用ページをご覧ください。
[REGION:buttonlist]
* [](Platforms/Android/InAppPurchases)
@@ -55,25 +54,25 @@ tags:mobile
[EXCERPT:usage]
[EXCERPT:usage_android]
-## 購入情報を読み取る
+## 購入情報の読み取り

-**Read In-App Purchase Information** ブループリント ノード (または関連する C++ 関数コール) を使ってアプリ内購入情報を読み取ります。多くの他のオンライン サブシステム関数と同様、Player Controller を入力および製品の識別子の配列として受け取ります。Read は情報の配列の処理ができますが、以下の Make In-App Purchase は識別子をひとつしか受け取ることができません。関数は In App Purchase 構造体の配列を返し、配列の各エレメントは名前、詳細、価格、その他のデータに分類して UI に表示、もしくはゲームプレイ ロジックで使用することができます。
+**Read In-App Purchase Information** ブループリント ノード (または関連する C++ 関数コール) を使ってアプリ内購入情報を読み取ります。他の多くのオンライン サブシステム関数と同様、Player Controller を入力および製品の識別子の配列として受け取ります。Read は情報の配列の処理ができますが、以下の Make In-App Purchase は識別子をひとつしか受け取ることができません。関数は In App Purchase 構造体の配列を返し、配列の各エレメントは名前、詳細、価格、その他のデータに分類して UI に表示、もしくはゲームプレイ ロジックで使用することができます。
-## 購入を完了する
+## 購入の完了

**Make an In-App Purchase** ブループリント ノード (または関連する C++ 関数コール) を使ってアプリ内購入情報を読み取ります。Player Controller を入力および Product Request 構造体として受け取ります。Product Request は、iTunes Connect あるいは Google Play Developer コンソール (このケースでは match3theme_night) の製品の識別子です。
-**Make an In-App Purchase** ノードは潜在的なので、ゲームプレイのビヘイビアをどのようにしても、購入の成功あるいは失敗はこれらの 2 つの実行ピンを使うかどうかによります。これらはオンライン サービスから応答が戻ってきた後に実行されます。ノードは購入の完了ステータス (Success、Failed、Restored) および 詳細な In App Purchase 情報の構造体も返します。
+**Make an In-App Purchase** ノードは潜在的なので、使いたいゲームプレイのビヘイビアはすべて、購入が成功あるいは失敗したかどうかに依存し、これら 2 つの実行ピンを使います。これらはオンライン サービスから応答が戻ってきた後に実行されます。ノードは購入の完了ステータス (Success、Failed、Restored) および詳細な In App Purchase Information 構造体も返します。
この関数の非潜在的なバージョン (ブループリントはずっと表示します) があります。ここでの終了実行ピンはオンライン サービスからの応答を待たずに、通常は潜在的なバージョンを使用します。
[/EXCERPT:usage_android]
-## 購入を復元する
+## 購入の復元

diff --git a/Engine/Documentation/Source/Platforms/Mobile/Leaderboards/Leaderboards.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/Leaderboards/Leaderboards.JPN.udn
index ec3be07a1554..a1acd1534ab7 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Leaderboards/Leaderboards.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Leaderboards/Leaderboards.JPN.udn
@@ -1,5 +1,4 @@
-INTSourceChangelist:3150518
-Title:モバイル サービスのリーダーボードを使用する
+Title:モバイル サービスのリーダーボードの使用方法
Description:ゲームでリーダーボードを使用する
Crumbs:
Availability:Public
@@ -42,7 +41,7 @@ tags:mobile
[/OBJECT]
[/VAR]
-リーダーボードは、プラットフォーム別にプレイヤーの高得点をトラックし表示する機能です。これによりプレイヤーは権利を自慢することができ、コミュニティの確立がしやすくなります。
+リーダーボードは、プラットフォーム別にプレイヤーの高得点をトラックし表示する機能です。プレイヤーはリーダーボードを使用して権利の主張やコミュニティの確立がしやすくなります。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -66,31 +65,31 @@ tags:mobile
[/REGION]
[EXCERPT:Usage]
-## リーダーボードから読み取る
+## リーダーボードの読み取り
-**Read Leaderboard Integer** はプラットフォームのゲーム サービス (現在の iOS ゲームセンターあるいは Google Play サービス) から提供されている **Player Controller** の所定の **Stat Name** に保存されている値を要求します。
+**Read Leaderboard Integer** ノードは、プラットフォームのゲーム サービス (現在の iOS ゲームセンターあるいは Google Play サービス) が提供する **Player Controller** の所定の **Stat Name** に保存されている値を要求します。
-これは **潜在的な** ノードなので、実行出力ピンが多いことに注目してください。一番上は「通過」ですが、他の実行出力ピンと何ら変わりはありません。その下の 2 つのピン (**On Success** と **On Failure**) は、オンライン サービスが値を返す (または返すことに失敗する) と実行されます。正常に値を戻す (またはサービスが応答に失敗する) 前の **Leaderboard Value** は 0 です。
+Read Leaderboard Integer ノードは **潜在的な** ノードなので、実行出力ピンたくさん付いています。一番上は「通過」ピンですが、他の実行出力ピンと同じように機能します。その下の 2 つのピン (**On Success** と **On Failure**) は、オンライン サービスが値を返す (または返しに失敗する) と実行されます。正常に値を戻す (またはサービスが応答に失敗する) 前の **Leaderboard Value** は 0 です。
**ブループリント内:**
-Unreal Match 3 のサンプル ゲームの **Global Game Instance** を例に取りましょう。下のブループリントにあるノードは Stat Name (リーダーボード) "Match3HighScore" 上の Player Index 0 で Player Controller 用の **Read Leaderboard Integer** ノードといいます。
+例として、Unreal Match 3 のサンプル ゲームの **Global Game Instance** ブループリントを見てみましょう。Stat Name (リーダーボード) "Match3HighScore" 上で Player Index 0 の Player Controller に対して **Read Leaderboard Integer** ノードを呼び出しています。

## リーダーボードに書き込む
-**Write Leaderboard Integer** ノードは所定の整数 **Stat Value** を提供された **Player Controller** に対して **Stat Name** で指定したリーダーボードに送ります。
+**Write Leaderboard Integer** ノードは与えられた **Player Controller** に対して **Stat Name** で指定したリーダーボードに所定の整数 **Stat Value** を送ります。
**ブループリント内:**
-Unreal Match 3 のサンプル ゲームの **VictoryScreen** ブループリントを例に取りましょう。ゲームの勝敗画面の表示時に、Unreal Match 3 は高得点を抽出してロードできるか確認し、可能な場合は高得点をリーダーボードにサブミットします。この動作の前に、アプリケーション起動中に抽出した高得点以外にも高得点があるかを追加で確認することも可能です。ただし、iOS と Android のリーダーボード システムは現在保存されている値より高い値のみ受け取ります。
+例として、Unreal Match 3 のサンプル ゲームの **VictoryScreen** ブループリントを見てみましょう。ゲーム勝敗画面を表示する際、Unreal Match 3 は高得点の抽出およびロードが可能か確認し、可能な場合は高得点をリーダーボードにサブミットします。この動作の前に、アプリケーション起動中に抽出した高得点以外にも高得点があるかを追加で確認することも可能です。ただし、iOS と Android のリーダーボード システムは保存されている値より高い値のみ受け取ります。

## プラットフォーム固有のリーダーボードを表示する
-**Show Platform Specific Leaderboard Screen** がデバイス上の **Category Name** によって指定されたリーダーボードを表示します。
+**Show Platform Specific Leaderboard Screen** が **Category Name** によって指定されたリーダーボードをデバイスに表示します。
**ブループリント内:**
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Lighting/HowTo/CascadedShadow/CascadedShadow.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/Lighting/HowTo/CascadedShadow/CascadedShadow.JPN.udn
index 66bb633e7444..b5b3e3d5d13e 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Lighting/HowTo/CascadedShadow/CascadedShadow.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Lighting/HowTo/CascadedShadow/CascadedShadow.JPN.udn
@@ -1,8 +1,7 @@
-INTSourceChangeList:3108692
-Availability:Public
+Availability:Public
Title:カスケード シャドウの使用方法
Crumbs:%ROOT%, Platforms, Platforms/Mobile
-Description:モバイル ゲーム向けのカスケード シャドウ設定
+Description:モバイル ゲーム向けカスケード シャドウの設定方法
Platform:Mobile
Related:Platforms/Mobile/Performance
Related:Platforms/Mobile/Textures
@@ -19,7 +18,7 @@ tags:mobile
UE4 モバイル プロジェクトでこの機能を使用するには、以下の手順を行います。
-1. **[Project Settings (プロジェクト設定)]** で **[Engine]** > **[Rendering]** > **[Mobile]** セクションの順に選択し、**[Enable Combined Static and CSM Shadowing (静的シャドウインと CSM シャドウイングの結合を有効にする)]** にチェックが入っていることを確認しまうs。
+1. **[Project Settings (プロジェクト設定)]** で **[Engine]** > **[Rendering]** > **[Mobile]** セクションの順に選択し、**[Enable Combined Static and CSM Shadowing (静的シャドウインと CSM シャドウイングの結合を有効にする)]** にチェックが入っていることを確認します。
[region:lightbox]
[(w:562 h:310)](Platforms\Mobile\Lighting\CSM_Setup_00.png)
@@ -30,7 +29,7 @@ UE4 モバイル プロジェクトでこの機能を使用するには、以下
[/REGION]
-1. CSM はシーンに **指向性ライト** がある場合のみ使用できます。指向性ライトがない場合は、1 つ追加し、それを選択しておくようにしてください。次に **[Transform (トランスフォーム)]** セクションの **[Mobility (可動性)]** 設定を **[Stationary (固定)]** にしてください。
+1. CSM はシーンに **指向性ライト** がある場合のみ使用できます。指向性ライトがない場合は、1 つ追加し、それを選択してください。次に **[Transform (トランスフォーム)]** セクションの **[Mobility (可動性)]** 設定を **[Stationary (固定)]** にしてください。
[region:lightbox]
[(w:300 h:400)](Platforms\Mobile\Lighting\CSM_Setup_01.png)
@@ -68,7 +67,7 @@ UE4 モバイル プロジェクトでこの機能を使用するには、以下
[/REGION]
[region:note]
- 以下の動画で [Receive Combined Static and CSM Shadows from Stationary Lights] の機能をご覧いただけます。この動画では、[Receive Combined Static and CSM Shadows from Stationary Lights] がフロアの構成要素であるスタティックメッシュに対してオンにされていますが、階段の構成要素であるスタティックメッシュにはオンにされていません。プレイヤーがフロア上にいる時はシャドウがありますが、階段上ではシャドウのないことに注目してください。これは、フロアには [Receive Combined Static and CSM Shadows from Stationary Lights] がオンにされ、階段にはオンにされていないためです。
+ 以下の動画で [Receive Combined Static and CSM Shadows from Stationary Lights] の機能をご覧いただけます。この動画では、[Receive Combined Static and CSM Shadows from Stationary Lights] がフロアの構成要素であるスタティックメッシュに対してオンにされていますが、階段の構成要素であるスタティックメッシュにはオンにされていません。プレイヤーがフロア上にいる時はシャドウがありますが、階段に上がるとシャドウがないことに注目してください。これは、フロアは [Receive Combined Static and CSM Shadows from Stationary Lights] がオンにされていますが、階段はオンにされていないためです。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -98,7 +97,7 @@ UE4 モバイル プロジェクトでこの機能を使用するには、以下
[Mobile Preview (モバイル プレビュー)] ウィンドウが表示されない場合は、アンリアル エディタ ウィンドウの裏で起動していないか確認してください。
[/region]
-1. 正常に起動したら、静的シャドウのある場所にキャラクターを配置し、シャドウに出入りすると、キャラクターの動的シャドウは以下の画像のようにレベル内にベイクされたシャドウと滑らかにブレンドされます。
+1. 正常に起動したら、静的シャドウのある場所にキャラクターを配置します。シャドウに出入りすると、キャラクターの動的シャドウは以下の画像のようにレベル内にベイクされたシャドウと滑らかにブレンドされます。
[REGION:lightbox]
[(w:262 h:281)](Platforms\Mobile\Lighting\CSM_Final_Result.png)
@@ -109,5 +108,5 @@ UE4 モバイル プロジェクトでこの機能を使用するには、以下
[/REGION]
[region:note]
- 背景に置かれたスタティックメッシュのシャドウをキャラクターにキャストしたい場合は、スタティックメッシュの **[Mobility (可動性)]** 設定を ***[Static (静的)]** から **[Movable (可動)]** に変更します。
+ 背景に置いたスタティックメッシュのシャドウをキャラクターにキャストするには、スタティックメッシュの **[Mobility (可動性)]** を ***[Static (静的)]** から **[Movable (可動)]** に変更します。
[/region]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Lighting/MobileLighting.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/Lighting/MobileLighting.JPN.udn
index c2df37eb4edb..2eab4e999067 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Lighting/MobileLighting.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Lighting/MobileLighting.JPN.udn
@@ -1,5 +1,4 @@
-INTSourceChangelist:3184883
-Availability:Public
+Availability:Public
Title:モバイル プラットフォーム向けのライティング
Crumbs:%ROOT%, Platforms, Platforms/Mobile
Description:モバイル ゲーム向けのライティング設定
@@ -18,7 +17,7 @@ tags:mobile
[TOC(start:2 end:3)]
-UE4 のモバイル プラットフォームでライトを使う場合、UE4 プロジェクトが正しいフレームで、様々なモバイル デバイス上で使えるようにするために、決められた注意事項と制限事項を守る必要があります。次の文書では、これらの注意事項と制限事項について、およびそれらを避けたり回避する方法について説明します。
+UE4 のモバイル プラットフォームでライトを使う場合、UE4 プロジェクトが正しいフレームで、様々なモバイル デバイス上で動くようにするために、決められた注意事項と制限事項を守る必要があります。これらの注意事項と制限事項、および回避する方法について説明します。
## サポート対象の機能
@@ -27,7 +26,7 @@ UE4 のモバイル プラットフォームでライトを使う場合、UE4
* HDR のリニア ライティング
* 指向性ライトマップ (法線を考慮する)
* 太陽上の距離フィールド シャドウ + 解析的なスペキュラ
-* 画像ベースのスペキュラ ライティング - 視差修正をせずに最も近い [リフレクション キャプチャ](Engine/Rendering/LightingAndShadows/ReflectionEnvironment/) が各オブジェクトに適用されます。従って、オブジェクト間にシームがあります。
+* 画像ベースのスペキュラ ライティング - 視差修正をせずに最も近い [Reflection Capture](Engine/Rendering/LightingAndShadows/ReflectionEnvironment/) が各オブジェクトに適用されます。従って、オブジェクト間にシームがあります。
* 動的オブジェクトはライティングを正確に受け取りますが、シャドウはキャストしません。
## サポート対象のライト タイプ
@@ -42,13 +41,13 @@ UE4 のモバイル プラットフォームでライトを使う場合、UE4
| Static Spot Light | **Mobility = Static** によるスポットライト。|
## 反射
-反射は、モバイル プロジェクトに生命と信憑性を吹き込むために使用しますが、モバイル デバイスでの使用時に気をつけるべき注意がいくつかあります。対象のモバイル デバイスで確実に反射を使うために必要なことを以下にまとめました。
+反射を使用すると躍動感と写実性を出すことができますが、モバイル デバイスで反射を使用する際には注意すべき点がいくつかあります。対象のモバイル デバイスで反射がきちんと動くようにするために、以下の点を確認してください。
-* ポストプロセス ボリューム内にあるアンビエント キューブマップの **強度** を **0** に設定してすべて無効にする。
+* ポストプロセス ボリューム内のすべてのアンビエント キューブマップの **[Intensity (強度)]** を **[0]** に設定して無効にする。

-* 反射のためのライティングをキャプチャしたい場所に [**SphereReflectionCaptures**](Engine/Rendering/LightingAndShadows/ReflectionEnvironment/#球体の形状) アクタを置きます。
+* 反射用のライティングをキャプチャする場所に [**SphereReflectionCaptures**](Engine/Rendering/LightingAndShadows/ReflectionEnvironment/#球体の形状) アクタを置きます。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -61,7 +60,7 @@ UE4 のモバイル プラットフォームでライトを使う場合、UE4
* 反射をサポートするマテリアルを作成する場合は、以下のことに留意してください。
- * 反射を分割すると、外見を面白くすることができるので、法線マップに高周波および低周波細部が多く含まれるようにしてください。
+ * 法線マップに高周波および低周波細部が多くなるようにしてください。反射が分裂しやすくなり、面白い見た目の反射ができます。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -72,7 +71,7 @@ UE4 のモバイル プラットフォームでライトを使う場合、UE4
[/PARAM]
[/OBJECT]
- * 光沢のある反射、またはぼんやりした反射を様々な角度にすることができるので、ラフネスマップにいろいろな強度の白と黒を入れるようにしてください。
+ * ラフネスマップにいろいろな強度の白と黒を入れるようにしてください。反射に光沢を付けたり、多方向にぼんやり反射させることができます。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -94,20 +93,20 @@ UE4 のモバイル プラットフォームでライトを使う場合、UE4
[/PARAM]
[/OBJECT]
-それぞれの Static Mesh コンポーネントは,最も近い [**リフレクション キャプチャ**](Engine/Rendering/LightingAndShadows/ReflectionEnvironment/) に割り当てられます。つまり、オブジェクト間の反射にシームがあり、大きなメッシュはメッシュの中央に近いところにある好ましくない反射キャプチャを使用することもあります。
+Static Mesh コンポーネントは、それぞれに最も近い [**Reflection Capature**](Engine/Rendering/LightingAndShadows/ReflectionEnvironment/) に割り当てられます。つまり、オブジェクト間の反射にシームができたり、メッシュが大きいとたまたまメッシュの中央の近くにある Reflection Capture を使用することになります。
## 変調シャドウイング
-完全に動的シャドウにすると、モバイル プロジェクトに生命とリアリズムを追加しやすくなります。
-ただし、モバイル デバイスの中には、ハードウェアの制限と、レンダリングするために動的シャドウが必要とするリソース要件が高すぎるために、完全に動的シャドウにすることができないものもあります。この回避策として、負荷の低い **変調シャドウ (Modulated Shadows)** という名前の動的シャドウが新しく UE4 に導入されました。変調シャドウの設定方法については、[**変調シャドウ**](Platforms/Mobile/Lighting/HowTo/ModulatedShadows/) をご覧ください。
+完全に動的シャドウにすると、モバイル プロジェクトに躍動感と写実性を出しやすくなります。
+ただしモバイル デバイスの中には、ハードウェア制限およびレンダリングに必要な動的シャドウのリソース要件が高すぎるため、完全には動的シャドウにできないものもあります。回避策として、負荷の低い動的シャドウの **変調シャドウ (Modulated Shadows)** が新しく UE4 に導入されました。変調シャドウの設定方法については、[**変調シャドウ**](Platforms/Mobile/Lighting/HowTo/ModulatedShadows/) をご覧ください。
## 動的カスケード シャドウ マップ
-Stationary Directional Light (固定の指向性ライト) は、シーンの動的オブジェクトだけに Whole-scene Dynamic Cascade Shadow Maps (CSM) シャドウをキャストするために使用できます。CSM シャドウを使う利点の 1 つは、Stationary Directional Light (固定の指向性ライト) が、シーンの静的オブジェクトによってキャストされた事前計算シャドウと正しくブレンドする点です。CSM シャドウでは、変調シャドウでは確認できるダブル シャドウイングが表示されないので、複数のオブジェクトにシャドウをキャストする場合、処理が速くなります。カスケード シャドウの設定方法については、[**カスケード シャドウ**](Platforms\Mobile\Lighting\HowTo\CascadedShadow\) をご覧ください。
+Stationary Directional Light (固定の指向性ライト) は、シーンの動的オブジェクトだけに Whole-scene Dynamic Cascade Shadow Maps (CSM) シャドウをキャストする場合に使います。CSM シャドウを使う利点の 1 つは、Stationary Directional Light (固定の指向性ライト) がシーンの静的オブジェクトによってキャストされた事前計算シャドウと正しくブレンドされる点です。ダブル シャドウイングは変調シャドウでは確認できても CSM シャドウでは表示されないので、複数のオブジェクトにシャドウをキャストすると処理が速くなります。カスケード シャドウの設定方法については、[**カスケード シャドウ**](Platforms\Mobile\Lighting\HowTo\CascadedShadow\) をご覧ください。
## 変調シャドウイング VS 動的シャドウイング
-変調シャドウイングと動的シャドウイングは、外見も動作も非常に似ています。
-変調シャドウには動的シャドウにはない制約とハードリミットが多く、限られたハードウェア性能でモバイル デバイス上でのパフォーマンスを良くすることができます。
+変調シャドウイングと動的シャドウイングは、外見も動作もよく似ています。
+変調シャドウには動的シャドウにはない制約とハードリミットが多いので、ハードウェアの性能が制限され、モバイル デバイス上でのパフォーマンスを向上させることができるのです。
以下の画像で、動的シャドウと変調シャドウを見比べてみましょう。
[OBJECT:ComparisonSlider]
@@ -120,9 +119,9 @@ Stationary Directional Light (固定の指向性ライト) は、シーンの動
[/OBJECT]
-上の画像でキャストされている動的シャドウは、すべて共通していて、そっくりに見えます。
+以下は、UE4 プロジェクトで変調シャドウを使用する場合の代表的な機能と制約です。
-* **シャドウ カラーの変更:** 指向性ライトの **[Light]** セクションの **[Modulated Shadow Color]** オプションを調整することで、モジュレート化したシャドウがキャストしたシャドウの色を変えることができます。ゲームプレイの都合上、またはアート面の理由でシャドウの色を調節したい場合に便利です。
+* **シャドウ カラーの変更:** [Directional Light (指向性ライト)] > **[Light]** セクション > **[Modulated Shadow Color]** オプションを調整して、変調シャドウがキャストしたシャドウの色を変更できます。ゲームプレイまはたアートに合わせてシャドウの色を調節する場合に便利です。
[REGION:lightbox]
[(w:771 h:252)](Change_Mod_Shadow_Color.png)
@@ -132,7 +131,7 @@ Stationary Directional Light (固定の指向性ライト) は、シーンの動
クリックしてフルサイズで表示
[/REGION]
-* **シャドウのブレンド:** プロジェクトで分かると思いますが、変調シャドウは動的シャドウと同じく、他のシャドウとはブレンドしません。つまり、変調シャドウが他のシャドウの上に重なると、単独のシャドウがブレンドされているのではなく、両方のシャドウが見えるのです。
+* **シャドウのブレンド:** 動的シャドウとは違って、変調シャドウはベイク済みシャドウや動的シャドウなど、プロジェクトで表示される他のシャドウとはブレンドしません。つまり、変調シャドウが他のシャドウの上に重なると、ブレンドされている単独のシャドウではなく、両方のシャドウが表示されます。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -143,23 +142,23 @@ Stationary Directional Light (固定の指向性ライト) は、シーンの動
[/PARAM]
[/OBJECT]
-## 変調シャドウと動的シャドウの操作
+## 変調シャドウと動的シャドウでの作業方法
-変調シャドウと動的シャドウの操作時に、変調シャドウの外見とパフォーマンスを調整するためのコンソールと .INI 設定がいくつかあります。これらの設定および UE4 プロジェクトへの適用方法について、次のセクションで説明します。
+変調シャドウと動的シャドウには、変調シャドウの外見とパフォーマンスを調整するコンソールおよび .INI 設定がいくつかあります。これらの設定および UE4 プロジェクトへの適用方法について、次のセクションで説明します。
[region:note]
-変調シャドウが、既存のシャドウ技術とコードを共有するようにします。
-つまり、他のシャドウイング メソッドで使用できるシャドウ cvars と .INI 設定の多くは、変調シャドウおよび動的シャドウでも使用できます。
+変調シャドウはできるだけ既存のシャドウ技術とコードを共有するようにします。
+つまり、他のシャドウイング メソッドで使用できるシャドウ cvars と .INI 設定は、変調シャドウおよび動的シャドウでもほとんどが使用できます。
[/region]
-* **シャドウの品質:** 動的シャドウを初めて有効にしてモバイル デバイス上で表示すると、変調シャドウの鮮明度と品質が思っているより若干低い場合があります。これに対応するためには、アンリアル コンソールを開いて、backtick ` キーを使って、数字の後に **r.shadowquality** を打ち込むことでシャドウの品質を調整できます。数字が高いほど、変調シャドウは FPS の負荷に気をつけるようになります。次の画像では、r.shadowquality の値は **0**、**1**、**2**、**3**、**4**、**5** に設定して変調シャドウの品質上でこのエフェクトがどうなるかを表示しました。
+* **シャドウの品質:** 動的シャドウを有効にしてモバイル デバイス上で初めて表示すると、変調シャドウの鮮明さと品質が思っていたより悪くなることがあります。その場合は、アンリアル コンソールを開いて backtick (`) キーを使って数字の後に **r.shadowquality** と入力すると、シャドウの品質を調整できます。数字が高いほど、変調シャドウは FPS の負荷を考慮するようになります。次の画像は、r.shadowquality の値を **0**、**1**、**2**、**3**、**4**、**5** に設定した場合に変調シャドウの品質に与える影響を見ることができます。
[REGION:fullwidth]
[INCLUDE:Platforms\Mobile\Lighting\#SQ]
[/REGION]
-* **セルフシャドウイング:** 変調シャドウは動的オブジェクト上にキャラクターもしくはピックアップなどのセルフ シャドウイングを提供します。ただし、変調シャドウの性能をできるだけ高めるために、この機能はデフォルトでは無効にされています。
-プロジェクトがセルフシャドウイングにかかる余分な負荷に対応できれば、UE4 コンソールに **r.Shadow.EnableModulatedSelfShadow 1** を入力して有効にすることができます。
+* **セルフシャドウイング:** 変調シャドウでは、キャラクターもしくはピックアップなどの動的オブジェクト上にセルフ シャドウイングが可能です。ただし、変調シャドウのパフォーマンスを優先するためにデフォルトでは無効にされています。
+セルフシャドウイングによる余分な負荷に対応できるプロジェクトの場合は、UE4 コンソールに **r.Shadow.EnableModulatedSelfShadow 1** を入力して有効にしてください。
セルフシャドウイングを無効にするには、UE4 コンソールに **r.Shadow.EnableModulatedSelfShadow 0** を入力します。
[OBJECT:ComparisonSlider]
@@ -171,8 +170,8 @@ Stationary Directional Light (固定の指向性ライト) は、シーンの動
[/PARAM]
[/OBJECT]
-* **シャドウ深度:** **r.Shadow.CSMDepthBias** を使って、シャドウのレンダリングの開始位置をオフセットすることができます。
-以下の画像を見ると、r.Shadow.CSMDepthBias がデフォルト値 **0** のままで、その後 **10**、**100**、**500**、**1000** に値を設定すると、変調シャドウがどうなるのかが分かります。
+* **シャドウ深度:** シャドウのレンダリングの開始位置をオフセットするには、**r.Shadow.CSMDepthBias** コマンドを使います。
+以下の画像では、r.Shadow.CSMDepthBias をデフォルト値 **0** から **10**、**100**、**500**、**1000** に値を変更した場合の変調シャドウの変化が分かります。
[REGION:fullwidth]
[INCLUDE:Platforms\Mobile\Lighting\#SD]
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Mobile.INT.udn b/Engine/Documentation/Source/Platforms/Mobile/Mobile.INT.udn
index e062edf68fb0..0a8057ea100d 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Mobile.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Mobile.INT.udn
@@ -9,6 +9,7 @@ parent:Platforms
tags:Mobile
order:0
type:landing
+topic-image:MobileGameDevelopment_topic.png
[REGION:banner]

diff --git a/Engine/Documentation/Source/Platforms/Mobile/Mobile.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/Mobile.JPN.udn
index 01666a3eb76e..0f7cf0a924ec 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Mobile.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Mobile.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3467293
Availability:Public
Title: モバイル ゲームの開発
Crumbs:%ROOT%, Platforms
@@ -10,6 +10,7 @@ parent:Platforms
tags:Mobile
order:0
type:landing
+topic-image:MobileGameDevelopment_topic.png
[REGION:banner]

diff --git a/Engine/Documentation/Source/Platforms/Mobile/Mobile.KOR.udn b/Engine/Documentation/Source/Platforms/Mobile/Mobile.KOR.udn
index da43f3acfad4..6d4bb751caf5 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Mobile.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Mobile.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3467293
Availability:Public
Title:모바일 게임 개발
Crumbs:%ROOT%, Platforms
@@ -10,6 +10,7 @@ parent:Platforms
tags:Mobile
order:0
type:landing
+topic-image:MobileGameDevelopment_topic.png
[REGION:banner]

diff --git a/Engine/Documentation/Source/Platforms/Mobile/MobilePackagingWizard/MobilePackagingWizard.INT.udn b/Engine/Documentation/Source/Platforms/Mobile/MobilePackagingWizard/MobilePackagingWizard.INT.udn
index ebc59663fafb..8124e1acb784 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/MobilePackagingWizard/MobilePackagingWizard.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/MobilePackagingWizard/MobilePackagingWizard.INT.udn
@@ -24,12 +24,63 @@ To access the Mobile Packaging Wizard, you will need to do the following.
1. From the **Main Toolbar**, locate the **Window** option and click on it.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. From the Windows menu that is displayed, click on the **Project Launcher** option to display the Project Launcher.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
@@ -66,29 +117,161 @@ To access the Mobile Packaging Wizard, you will need to do the following.
Before the Mobile Packaging Wizard can be used, a new profile that is specific to your project's needs has to be created. In the following section, we will take a look at what needs to be done to create a custom launch profile for your UE4 mobile project.
1. Click on the small white triangle next to **Custom Launch Profiles**, selecting the **Minimal Android APK + DLC** option from the list.
-
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
(#bookmark1)
+
1. When the **Minimal Android APK + DLC** packaging window is displayed, click on the **Browse** button, and select a location for the packaged content to be placed.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Once you have selected a location for the packaged content to be placed, press the **Next** button to continue the packaging process.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
1. In the **Distributable APK** menu, set the **Build Configuration** to **Development** and then select the map you want to use, pressing the **Next** button when finished.
-
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[region:note]
Only the contents referenced by the map(s) you choose will be packaged into the application for upload to the Play Store. Typically, you should choose only a single map that contains a Level Blueprint to kick off the **BuildPatchServices** code with a **UMG** user interface to show the download progress (showing any applicable error conditions).
[/region]
1. In the **Downloadable Content** menu, select the Android texture formats your application will support with the maps that will need to be downloaded. When that has been completed, press the **Create Profile** button to create a new Custom Launch Profile.
-
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
## Building the Application
@@ -96,15 +279,67 @@ Now that all of the options for the Mobile Packing Wizard have been set up and s
1. If the Project Launcher is not already open, open it up and then look at the bottom of the Project Launcher in the **Custom Launch Profile** section. In this section, you should have two profiles that start with your project name and are followed by either **Android APK** or **Android DLC**.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[region:note]
When you first open up the Project Launcher, the Custom Launch Profiles section could have a few items in it by default. To remove these items, right-click on the item you want to remove, and then select the **Delete** option to remove it.
[/region]
1. Locate the **APK** Profile option and then click on the **Launch this Profile** button to begin the packaging process.
-
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[region:warning]
You must package your project's files before you build the DLC.
@@ -112,11 +347,63 @@ Now that all of the options for the Mobile Packing Wizard have been set up and s
1. Once the **Launch this Profile** button has been pressed, the Project Launcher will begin the packaging process. You can see the progress of the packaging process in the Project Launcher window.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
1. When the packaging has completed, click on the **Done** button to load the Project Launcher.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
## Building the DLC
@@ -124,17 +411,97 @@ Once your project has finished the cooking process for the initial download from
1. From the Project Launcher, go to the **Custom Launch Profiles** section and look for your project's **DLC** option. When the DLC option for your project has been located, click on the **Launch this Profile** button to begin the DLC packaging process.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. After pressing the **Launch this Profile** button, the Project Launcher will begin to build the DLC for your project. When the DLC has finished being built, click on the **Done** button to continue.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
## Packaging Results
Once everything has finished building, open up the folder that was specified in the [second step](#bookmark1) of the "Setting Up a Mobile Packaging Wizard Profile" section. You'll see the following two folders:
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]

+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
+
Inside of the folders, you will find the various pieces of your project that have been set up to be downloaded after the users have downloaded and installed the application on their mobile device.
@@ -148,20 +515,125 @@ Before the Mobile Packaging Wizard can be used, a new profile that is specific t
1. Click on the small white triangle next to **Custom Launch Profiles**, selecting the **Minimal IOS App + DLC** option from the list.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
(#bookmark1)
+
1. When the **Minimal IOS App + DLC** packaging window is displayed, click on the **Browse** button and select a location for the packaged content to be placed.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. Once you have selected a location for the packaged content to be placed, press the **Next** button to continue the packaging process.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. In the **Distributable Application** menu, set the **Build Configuration** to **Development** and then select the map you want to use, pressing the **Next** button when finished.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[region:note]
Only the contents referenced by the map(s) you choose will be packaged into the application for upload to the App Store. Typically, you should choose only a single map that contains a Level Blueprint to kick off the **BuildPatchServices** code with a **UMG** user interface to show the download progress (showing any applicable error conditions).
@@ -169,7 +641,33 @@ Before the Mobile Packaging Wizard can be used, a new profile that is specific t
1. In the **Downloadable Content** menu, select the maps that should be downloaded and then press the **Create Profile** button to create a new Custom Launch Profile.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
## Building the Application
@@ -177,7 +675,33 @@ Now that all of the options for the Mobile Packing Wizard have been set up and s
1. If the Project Launcher is not already open, open it up and then look at the bottom of the Project Launcher in the **Custom Launch Profile** section. In this section, you should have two profiles that start with your project name and are followed by either **IOS App** or **IOS DLC**.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[region:note]
When you first open up the Project Launcher, the Custom Launch Profiles section could have a few items in it by default. To remove these items, right-click on the item you want to remove, and then select the **Delete** option to remove it.
@@ -185,7 +709,33 @@ Now that all of the options for the Mobile Packing Wizard have been set up and s
1. Locate the **IOS App** Profile option and then click on the **Launch this Profile** button to begin the packaging process.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
[region:warning]
You must package your project's files before you build the DLC.
@@ -193,11 +743,63 @@ Now that all of the options for the Mobile Packing Wizard have been set up and s
1. Once the **Launch this Profile** button has been pressed, the Project Launcher will begin the packaging process. You can see the progress of the packaging process in the Project Launcher window.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. When the packaging has completed, click on the **Done** button to load the Project Launcher.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
## Building the DLC
@@ -205,17 +807,95 @@ Once your project has finished the cooking process for the initial download from
1. From the Project Launcher, go to the **Custom Launch Profiles** section and look for your project's **DLC** option. When the DLC option for your project has been located, click on the **Launch this Profile** button to begin the DLC packaging process.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. After pressing the **Launch this Profile** button, the Project Launcher will begin to build the DLC for your project. When the DLC has finished being built, click on the **Done** button to continue.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
## Packaging Results
Once everything has finished building, open up the folder that was specified in the [second step](#bookmark1) of the "Setting Up a Mobile Packaging Wizard Profile" section. You'll see the following two folders:
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]

+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Inside of the folders, you will find the various pieces of your project that have been set up to be downloaded after the users have downloaded and installed the application on their mobile device.
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.INT.udn b/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.INT.udn
index 96680c9ddeb2..4fbca1593dd1 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.INT.udn
@@ -150,9 +150,38 @@ Inside of this file, you can specify what will happen to the resolution of your
In the following image, you can see an example of the Mobile Content Scale Factor in action using the command listed above.
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
[REGION:lightbox]
[(w:358 h:505)](T_MCF_INI_File.png)
[/REGION]
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+[REGION:lightbox]
+[(w:358 h:505)](T_MCF_INI_File_Mac.png)
+[/REGION]
+[/PARAM]
+[/OBJECT]
[REGION:caption]
Click for full image.
[/REGION]
@@ -227,9 +256,38 @@ Please note that 1 for high and 2 for medium **IS** correct and not a typo!
**From Device Profiles**: You can also adjust the Material Quality by doing the following:
1. From the Main Toolbar go to **Windows** > **Developer Tools** and then click on **Device Profiles**.
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
[REGION:lightbox]
[(w:217 h:371)](MQS_Device_Profiles.png)
[/REGION]
+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ [REGION:lightbox]
+ [(w:217 h:371)](MQS_Device_Profiles_Mac.png)
+ [/REGION]
+ [/PARAM]
+ [/OBJECT]
[REGION:caption]
Click for full image.
[/REGION]
@@ -300,10 +358,37 @@ These two properties can be enabled to help reduce the rendering cost of that Ma
### Mobile Material Rendering Overrides
You can override the available rendering option a platform will use by adjusting the **ES2 Quality Settings**. You can find the ES2 Quality Setting for both Android and iOS by going to your **Project Settings** > **Platforms** and then selecting either **Android ES2 Quality** or **iOS ES2 Quality Settings**. To use the overrides, you must first click on the **Enable Quality Override** option and then select the option you want to override by clicking on it. Once all of the options you want have been selected, press the **Update preview shaders** button to re-compile all Materials to work with the options you have specified.
-
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
[REGION:lightbox]
[(w:613 h:330)](MQS_Rendering_Overrides.png)
[/REGION]
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+[REGION:lightbox]
+[(w:613 h:330)](MQS_Rendering_Overrides_Mac.png)
+[/REGION]
+[/PARAM]
+[/OBJECT]
[REGION:caption]
Click for full image.
[/REGION]
@@ -314,14 +399,67 @@ Inside of your **Project's Settings** menu under the **Mobile** section you will
### Accessing your Project Settings
To access your project settings you will first need to go to the **Main Toolbar** and then select **Edit** > **Project Settings**.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]

+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+
+[/PARAM]
+[/OBJECT]
Once the Project Settings menu is open, locate the **Engine** section and then click on the **Rendering** category and look for the **Mobile** heading.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
[REGION:lightbox]
[(w:430)](MRO_Rendering_Settings.png)
[/REGION]
+[/PARAM]
+[/OBJECT]
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+[REGION:lightbox]
+[(w:430)](MRO_Rendering_Settings_Mac.png)
+[/REGION]
+[/PARAM]
+[/OBJECT]
[REGION:caption]
Click for full image.
[/REGION]
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.JPN.udn
index c7be349c9faf..da213746ba9e 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.JPN.udn
@@ -1,5 +1,4 @@
-INTSourceChangelist:3184883
-Availability:Public
+Availability:Public
Title:モバイル デバイスのパフォーマンス ガイドライン
Crumbs:%ROOT%, Platforms, Platforms/Mobile
Description:モバイル ゲーム用コンテンツと機能の最適化
@@ -14,29 +13,29 @@ tags:mobile
-以下は、モバイル プラットフォーム上のパフォーマンスを最大に発揮させるための注意もしくは提案です。要求の高いものから簡単なものまで紹介します。
+以下は、モバイル プラットフォーム上のパフォーマンスを最大にするための注意事項もしくは推奨事項です。重要なものから順番にリストしました。
-* デバイスで実行する前にライティングがビルドされていることをご確認ください。
-* **ポストプロセス** 機能はほとんどが無効化されていることをご確認ください。実際、iPad4 で使用するポストプロセスはビネットを含めて **Temporal AA** と Film だけです。PC と モバイル間の設定は同じなので、 Bloom や DOF などの負荷の大きい機能群はデフォルトで無効になっています。デフォルト設定の **ポストプロセス** 機能を使うと、60+ms を軽く超えます。ハイエンド デバイスで Bloom、DOF、ライトシャフトが使用できるようにしたいです。`show postprocessing` は **ポストプロセス** の切り替えと負荷量の表示に使用できます。
-* **[Precomputed Visibility (事前計算されたビジビリティ)]**を、必ず正しく設定するようにしてください。そのためには、プレーヤーが歩行可能な場所の周りに **PrecomputedVisibilityVolumes** を配置し、ライティングをビルドする必要があります。ライティングのビルド時およびゲームの実行時には、同じ **パーシスタント** レベルを必ず使用するようにしてください (aka 自体はビルドを行いません)。デバイス上あるいはプレビューに `stat initviews` と入力すると動作を確認ができます。[Statically occluded primitives] が >0 になるようにしてください。`r.ShowPrecomputedVisibilityCells 1` を使用して、エディタでセルを視覚化します。
-* シェードは各ピクセル一回だけの場合がほとんどなので、マスクされた透過 **マテリアル** を慎重に画面のカバーしている小さい部分のみに使用します。ただし、マスクされた透過マテリアルの場合、すべてのレイヤーはシェードされなければなりません。オーバードローにより、フレームの GPU 時間の合計は簡単に 2 倍以上にできます。**モバイル プレビュア** の **シェーダー複雑度ビューモード** でホット スポットを調査します。
-* シーン全体の描画コールはどのビューに対しても <= 700 でなければなりません。ランドスケープを見渡すなど、オクルージョンが弱い領域の場合は非常に難しくなります。デバイスでは `stat openglrhi`、 PC の ES2 previewer では `stat d3d11rhi` で確認できます。
-* シーン全体のトライアングル数はどのビューに対しても <= 500 でなければなりません。iPad4 と iPad Air の両方で、ポリゴン数が 30fps となる必要があると判断されています。デバイスでは `stat openglrhi`、 PC の ES2 previewer では `stat d3d11rhi` で確認できます。
-* **マテリアル** に使用するテクスチャ ルックアップとインストラクションは出来る限り少なくすべきです。5 つのテクスチャ サンプリングを使用できますが、これら全部を使うとかなり負荷の高いマテリアルになります。差し当たり、PC インストラクション数を使って最適化し、ES2 プレビュア シェーダー複雑度を使って負荷合計を視覚化します。
-* マテリアルでは独立したテクスチャ フェッチのみを使用します。ピクセル シェーダー (BaseColor 、 Roughness など) の UV は、スケーリングを始めとするどんな方法でも操作されてはならないという意味です。その代わりに、この新たな **CustomizedUVs** 機能を使ってバーテックス シェーダーでスケーリングを行ってください。環境マッピングなどの特別な機能の中には、 UV での計算を必要とする、特別なケースもあります。
-* メモリ消費の少ない正方テクスチャを選択し、常に 2 のべき乗 (512 、1024、2048) のディメンションを使ってください。ES2 プレビュアの `listtextures` を使って、全てのテクスチャ メモリの行き先を確認します。
+* デバイスの実行前にライティングがビルドされていることを確認してください。
+* **ポストプロセス** 機能がほぼ無効にされているか確認してください。実際、iPad4 で使用するポストプロセスはビネットを含めて **Temporal AA** と Film だけです。PC と モバイルは同じ設定です。Bloom や DOF など負荷の大きい機能はデフォルトで無効になっています。**ポストプロセス** 機能をデフォルト設定にすると、軽く 60+ms を超えます。ハイエンド デバイスでの Bloom、DOF、ライトシャフトの使用を目指しています。`show postprocessing` は **ポストプロセス** の切り替えと負荷量の表示に使用できます。
+* **[Precomputed Visibility (事前計算されたビジビリティ)]** が正しく設定されているか確認してください。そのためには、プレーヤーが歩行可能な場所の周りに **PrecomputedVisibilityVolumes** を配置してライティングをビルドする必要があります。ライティングのビルド時およびゲームの実行時には、必ず同じ **パーシスタント** レベルを使用してください (aka 自体はビルドを行いません)。デバイス上あるいはプレビューに `stat initviews` と入力すると動作を確認ができます。[Statically occluded primitives] が >0 になるようにしてください。`r.ShowPrecomputedVisibilityCells 1` を使用して、エディタでセルを視覚化します。
+* マスクされた透過 **マテリアル** は画面をあまりカバーしていない場合に使用するようにします。ほとんどの場合、シェーディングはピクセルにつき 1 回しか行わないので、iOS デバイスは不透明なサーフェイスのシェーディングに最適です。ただし、マスクされた透過マテリアルの場合、すべてのレイヤーはシェードされなければなりません。オーバードローにより、フレーム GPU 時間の合計はあっという間に 2 倍以上に膨らみます。**モバイル プレビュア** の **[Shader Complexity Viewmode (シェーダー複雑度ビューモード)]** を使ってホット スポットを探します。
+* シーン全体の描画コールはどのビューに対しても <= 700 でなければなりません。ランドスケープを見渡す場合など、オクルージョンが弱い領域ではこれが非常に難しくなります。デバイスでは `stat openglrhi`、PC の ES2 previewer では `stat d3d11rhi` で確認できます。
+* シーン全体のトライアングル数はどのビューに対しても <= 500 でなければなりません。iPad4 および iPad Air では、ポリゴン数は 30fps が必要と判断されています。デバイスでは `stat openglrhi`、PC の ES2 previewer では `stat d3d11rhi` で確認できます。
+* **マテリアル** に使用するテクスチャ ルックアップとインストラクション数はなるべく少なくしてください。テクスチャ サンプリングは 5 つまで使用できますが、全部使用するとマテリアル負荷はかなり高くなります。差し当たり、PC インストラクション数を使って最適化し、ES2 プレビュア シェーダー複雑度を使って負荷合計を視覚化します。
+* マテリアルでは独立したテクスチャ フェッチのみを使用します。ピクセル シェーダー (BaseColor、Roughness など) の UV は、スケーリングを始めとするどんな方法でも操作されてはならないという意味です。その代わりに、この新たな **CustomizedUVs** 機能を使ってバーテックス シェーダーでスケーリングを行ってください。環境マッピングなどの特別な機能の中には、UV での計算が必要な特別なケースもあります。
+* メモリ消費の少ない正方テクスチャを選択し、常に 2 のべき乗 (512、1024、2048) のディメンションを使ってください。ES2 プレビュアの `listtextures` を使って、全てのテクスチャ メモリの行き先を確認します。
## パフォーマンス ティア
-アンリアル エンジン (UE4) はモバイル デバイス上で様々なライティング機能をサポートしています。これらの機能を使うとパフォーマンスに負荷がかかり、遅めのモバイル デバイス上でゲームのパフォーマンスが下がる原因となります。UE4 のほとんどのモバイル ライティング機能のミックスおよびマッチが可能な一方で、これらの機能を以下のティアに分類すると便利です。モバイル ゲームのビルド時には、要求されるゲームのグラフの品質、およびサポート対象のデバイスの種類をもとに、使う機能を決定してください。Epic でテスト済みのデバイスおよび最適と思われるティアに関する詳細は、 [iOS 開発](Platforms/iOS/DeviceCompatibility) のデバイス互換性と [Android 開発](Platforms/Android/DeviceCompatibility) を参照してください。
+アンリアル エンジン (UE4) はモバイル デバイス上で様々なライティング機能をサポートしています。この機能はパフォーマンスに負荷をかけるので、処理が遅いモバイル デバイス上ではゲームのパフォーマンスを下げる原因になります。UE4 のほとんどのモバイル ライティング機能は混ぜたり一致させることができます。以下のように分類すると便利です。モバイル ゲームのビルド時には、要求されるゲームのグラフの品質、およびサポート対象のデバイスの種類をもとに、使う機能を決定してください。エピックでテスト済みのデバイスおよび最適性については、[iOS 開発](Platforms/iOS/DeviceCompatibility) のデバイス互換性と [Android 開発](Platforms/Android/DeviceCompatibility) を参照してください。
###LDR (Low Dynamic Range)
-Low Dynamic Range (LDR) は、UE4 がサポートするパフォーマンスの中で最も高いライティングや **Post Processing** 機能を必要としないゲームにお勧めです。このモードを使用するには、[プロジェクト設定エディタ](Engine/UI/ProjectSettings) のレンダリング セクションで、プロジェクトの「Mobile HDR」を無効にしなければなりません。
+Low Dynamic Range (LDR) は、UE4 がサポートするライティングの中で最もパフォーマンスが高いです。ライティング機能や **Post Processing** 機能を必要としないゲームにお勧めです。このモードを使用するには、[プロジェクト設定エディタ](Engine/UI/ProjectSettings) のレンダリング セクションで、プロジェクトの「Mobile HDR」を無効にしなければなりません。
**長所**
-* モバイル デバイスで使用できる最速で最安のオーバーヘッド モードです。処理の遅いモバイル デバイスでゲームを効率よく実行することができます。
+* モバイル デバイスで使用できる最も速く、最も負荷の低いオーバーヘッド モードです。処理の遅いモバイル デバイスで、ゲームを効率よく実行することができます。
* カスタム仕様のシェーダーを定義するマテリアル エディタへのフルアクセスはそのままで、さらにライティングをフェードする簡単なシェーディングも実行します。
@@ -50,78 +49,78 @@ Low Dynamic Range (LDR) は、UE4 がサポートするパフォーマンスの
**推奨事項**
* すべての **マテリアル** のシェーディング モデルが、最大のパフォーマンスが出せる **[Unlit]** に設定されるようにしてください。
-* ライトをシーンに配置しないでください。さもなければ最大のパフォーマンスはライト次第になってしまいます。
-* **マテリアル** のバーテックス シェーダーのオペレーションを可能な限り多く実行するように配慮してください。そのためには、**カスタム仕様の UV** を有効にし、ノードを接続し、**Texture Coordinate** ノードを使ってピクセル シェーダーで読み取ります。
+* ライトをシーンに配置しないでください。最大パフォーマンスがライトに制限されてしまします。
+* **マテリアル** のバーテックス シェーダーでできるだけ多く演算を実行するように配慮してください。そのためには、**カスタム仕様の UV** を有効にし、ノードを接続し、**Texture Coordinate** ノードを使ってピクセル シェーダーで読み取ります。
### 基本的なライティング
-このティアでは、幅広いモバイル デバイスに対応するためにパフォーマンスを最大にする一方で、静的なライティングと完全にラフな **マテリアル** を使用して興味深いライティングでレベルを作成します。
+このレベルのライティングは、最大のパフォーマンスで幅広いモバイル デバイスに対応しつつ、静的なライティングと Fully Rough 設定の **マテリアル** を使用して凝ったライティングでレベルを作成します。
**長所**
* 静的なライティングとグローバル イルミネーションへアクセスできます。
-* トーン マッピングなどの **ポストプロセス** 機能の幾つかへアクセスできるFull HDR パイプラインです。
-* 透過は線形空間でブレンドされ、他の UE4 ゲームで普通に行うようにコンテンツが作成できるようになります。
+* トーン マッピングなどの **ポストプロセス** 機能のいくつかへアクセスできるFull HDR パイプラインです。
+* 透過が線形空間でブレンドされるので、他の UE4 ゲームと同じように普通にコンテンツ作成ができるようになります。
**制限事項**
-* 全ての **マテリアル** を **完全にラフ** にしているので、**マテリアル** には興味深いスペキュラ リフレクションは付きません。
-* ライトマップの方向性を無効にした場合も、法線マップにエフェクトはありません。
+* 全ての **マテリアル** を **[Fully Rough]** にしているので、**マテリアル** に特に珍しいスペキュラ リフレクションは付きません。
+* ライトマップの方向性を無効にした場合も、法線マップにエフェクトは付きません。
**推奨事項**
-* すべての **マテリアル** は、完全にラフなフラグ設定で作成してください。
-* パフォーマンスをあげるために、**マテリアル** のライトマップの方向性の無効化を考慮してください。
-* マップではスタティック ライトのみを使用してください。
-* ブルームとアンチエイリアシングを無効にしてください。フィルムとカラーコントロールの基本設定も忠実に行ってください。詳細は [モバイル プラットフォーム上でのポストプロセス エフェクト](Platforms/Mobile/PostProcessEffects) を参照してください。
+* すべての **マテリアル** はフラグを [Fully Rough] 設定で作成してください。
+* パフォーマンスをさらにあげるには、**マテリアル** のライトマップの方向性を無効にしてみてください。
+* マップでは static light (静的ライト) のみを使用してください。
+* ブルームとアンチエイリアシングを無効にしてください。さらに、フィルムとカラーコントロールは基本設定を遵守してください。詳細は [モバイル プラットフォーム上でのポストプロセス エフェクト](Platforms/Mobile/PostProcessEffects) を参照してください。
### Full HDR ライティング
-このティアでは、UE4 で使用できるほとんどの HDR ライティング機能に加えてポストプロセス機能も活用します。これらの機能は高品質のライティング機能であるがゆえに、使用するためにはかなりのパフォーマンスが要求されます。
+このレベルのライティングでは、UE4 で使用できるほとんどの HDR ライティング機能に加えてポストプロセス機能も利用できます。クオリティの高いライティング機能のため、パフォーマンス負荷がかなり高くなります。
**長所**
* 静的なライティングとグローバル イルミネーションへアクセスできます。
* ポストプロセス機能の幾つかへアクセスできるフルの HDR パイプラインです。
-* 透過は線形空間でブレンドされ、他の UE4 ゲームで普通に行うようにコンテンツが作成できるようになります。
-* 様々なラフネスをサポートしているので、サーフェス上で現実味のあるスペキュラ リフレクションが可能です。
-* ノーマルマップ化されたサーフェスを完全にサポートすることで、メッシュにポリゴンを多数追加しなくてもサーフェスの詳細を興味深くすることができます。
+* 透過が線形空間でブレンドされるので、他の UE4 ゲームと同じように普通にコンテンツ作成ができるようになります。
+* 様々なラフネスをサポートしているので、サーフェス上にリアルなスペキュラ リフレクションを作成できます。
+* ノーマルマップ化されたサーフェスをフルサポートするので、メッシュにポリゴンを追加しなくても興味深いサーフェス ディテールを作成することができます。
**推奨事項**
* ブルームを無効化すると、HDR ライティング パイプラインを大いに活用できます。
-* HDR ライティングと組み合わせた現実味のあるスペキュラ リフレクションは、スペキュラのエイリアシングの発生につながります。ノーマルマップをラフネス機能にうまく利用して、ノーマルマップの高周波成分情報が原因のスペキュラのエイリアシングを軽減してください。このアーティファクトの軽減に向けて、ポストプロセス ボリュームのアンチエイリアシングの有効化も検討すべきです。
-* **反射キャプチャ** の配置がベストな結果につながるかも検討してみてください。詳細については [距離フィールド AO のドキュメンテーション](Resources/Showcases/Reflections/#反射キャプチャの配置) をご覧ください!
-* シーンでは、パフォーマンスをベストに保つためにも、スタティック ライトとライトマップのみを使用してください。
+* HDR ライティングと組み合わせたリアルなスペキュラ リフレクションは、スペキュラのエイリアシングの原因となります。法線マップにラフネス機能を利用して、法線マップの高周波成分情報が原因のスペキュラのエイリアシングを軽減してください。このアーティファクトを軽減するためには、ポストプロセス ボリュームのアンチエイリアシングの有効化も検討すべきです。
+* **反射キャプチャ** の配置についても検討してみてください。詳細については [反射:反射キャプチャの配置](Resources/Showcases/Reflections/#反射キャプチャの配置) をご覧ください!
+* シーンでは、パフォーマンスをベストに保つためにも、Static Light (静的ライト) とライトマップのみを使用してください。
-### 太陽からのピクセル ライティングごとのフル HDR ライティング
+### 太陽からのピクセル単位のライティングを使った Full HDR Lighting
-この段階では、UE4 のモバイルで使用できる HDR ライティング機能の全てを利用します。「フル HDR ライティング」と長所も推奨事項も同じですが、単一の指向性ライトのレンダリングの質は格段にあがります。
+この段階では、UE4 のモバイルで使用できる HDR ライティング機能の全てを利用します。「Full HDR Lighting レベル」の長所も推奨事項も同じですが、単一の指向性ライトのレンダリングのクオリティは格段にあがります。
**長所**
-* 機能と長所は、フル HDR ライティングとすべて同じです。
-* 単一の指向性ライトに対してピクセルごとのディフューズとスペキュラ ライティング
-* 単一の指向性ライトに対して事前計算された高品質の距離フィールド シャドウ
+* 機能と長所は、Full HDR Lighting とすべて同じです。
+* 単一の指向性ライトに対してピクセル単位のディフューズとスペキュラ ライティング
+* 単一の指向性ライトに対して事前計算された高品質のディスタンス フィールド シャドウ
**推奨事項**
-* 推奨事項は、フル HDR ライティングとすべて同じです。
-* 単一の指向性ライトは固定に設定すべきですが、それ以外はシーンでは Static Light (静的ライト) のみを使用してください。
+* 推奨事項は、Full HDR Lighting とすべて同じです。
+* 単一の指向性ライトは Stationary (固定) に設定すべきですが、それ以外はシーンでは Static Light (静的ライト) のみを使用してください。
##シェーダー複雑度ビュー モード
-PC ES2 プレビュアのシェーダー複雑度ビューモードを使うと、マテリアルの負荷がなんとなく分かります。使用方法は、
-**PC ES2 プレビュア** のコンソール上で `viewmode shadercomplexity` と入力するだけです。SM5 シェーダー複雑度と同様に、
-緑はパフォーマンス良好、明るい赤はかなり高い負荷、白またはピンクは **非常に** 高い負荷を表します。モバイル ショーケースからのサンプルを
+PC ES2 プレビュアのシェーダー複雑度ビューモードを使うと、マテリアルのおおよその負荷が分かります。使用方法は、
+**PC ES2 プレビュア** のコンソールに `viewmode shadercomplexity` と入力するだけです。SM5 シェーダー複雑度と同様に、
+緑はパフォーマンス良好、赤は負荷が高め、白またはピンクは **非常に** 高い負荷を表します。モバイル ショーケースからのサンプルを
いくつか紹介します。
[REGION:imagetable]
@@ -132,10 +131,10 @@ PC ES2 プレビュアのシェーダー複雑度ビューモードを使うと
## モバイル コンテンツ スケール係数
-**Mobile Content Scale Factor** はプロジェクトの解像度をスケーリングして、プロジェクトを表示するるモバイル デバイスの画面解像度を最適にする手段です。
-プロジェクトの config フォルダの中に **DefaultDeviceProfiles.ini** という名前の .INI ファイルを新規作成すれば、複数のデバイス プロファイルの作成と格納が可能になります。
+**Mobile Content Scale Factor** はプロジェクトの解像度をスケーリングして、モバイル デバイスの画面解像度を最適にしてプロジェクトを表示する手段です。
+プロジェクトの config フォルダの中に **「DefaultDeviceProfiles.ini」** という名前の .INI ファイルを新規作成すれば、複数のデバイス プロファイルの作成および格納が可能になります。
このファイルの中に、以下のコマンドを入力してプロジェクトの解像度を指定します。
r.MobileContentScaleFactor =
@@ -161,7 +160,7 @@ PC ES2 プレビュアのシェーダー複雑度ビューモードを使うと
上の画像は UE4 Tappy Chicken プロジェクトです。各種モバイル デバイスで再生すると解像度の変化の様子を比較することができます。
ファイルの上部で iOS デバイス用の解像度のスケーリングを行い、下部では Android デバイスの解像度のスケーリングを行います。
**r.MobileContentScaleFactor** の後に付いている番号を確認してください。
-コマンドの後にある数字で、プロジェクトの解像度の拡大縮小を判断します。
+コマンドの後ろにある数字で、プロジェクトの解像度の拡大縮小を判断します。
### iOS 向けモバイル コンテンツ スケール係数
@@ -189,10 +188,10 @@ Android デバイス向けのモバイル コンテンツ スケール係数を
## Mobile Material Quality 設定
-ローエンドとハイエンドの両方のモバイル デバイスに対応したアンリアル エンジン 4 (UE4) プロジェクト用のコンテンツを作成する場合、一定の機能があるデバイス群では動くのに別のデバイス群では動かないという問題に直面します。さらにアートワークについても、あるデバイスでは正しく表現されるのに、別のデバイスでは全く異なって見えてしまう場合もあります。このような問題への対処方法はいろいろありますが、時間とリソースが著しい上に、エラーを起しやすい場合がほとんどです。その対策として UE4 には Material Quality Level システムが付いています。このシステムは、1 つのマテリアルに対して、デバイスごとに使用できる機能を完全に制御し、様々なデバイスで幅広く使えるように作成することができます。次のセクションでは、これらのシステムの UE4 プロジェクトでの使用方法を説明します。
+ローエンドとハイエンドの両方のモバイル デバイスに対応したアンリアル エンジン 4 (UE4) プロジェクト用のコンテンツを作成する場合、一定の機能があるデバイス群でしか動かなくなるという問題が発生します。さらにアートワークについても、あるデバイスでは正しく表現されるのに、別のデバイスでは全く異なって見えてしまう場合もあります。こうした問題への対処方法は沢山ありますが、莫大な時間とリソースが必要な上に、エラーが発生しやすい場合がほとんどです。その対策として UE4 には Material Quality Level システムが付いています。このシステムは、デバイスごとに使用できる機能を完全に制御することで、1 つのマテリアルを様々なデバイスで使えるようにビルドすることができます。次のセクションでは、これらのシステムの UE4 プロジェクトでの使用方法を説明します。
### Material Quality Level のプレビュー
-UE4 エディタでは、様々な Material Quality Level の結果を表示できます。
+UE4 エディタで、様々な Material Quality Level 設定の結果を表示することができます。
**メインツールバー** の **[Settings (設定)]** > **[Material Quality Level (マテリアル品質レベル)]** の中から、プレビューしたい品質レベルを選択します。
[REGION:lightbox]
@@ -211,7 +210,7 @@ Material Quality Level を Low、Medium、High に設定すると、それぞれ
### Material Quality Level の設定
UE4 で Material Quality Level を設定するには以下の手順に従います。
-**コンソールで設定する方法**:Backtick キーを押して UE4 コンソールを開き、次の数字のいずれかの前に `r.MaterialQualityLevel` を打ち込むと、エディタで使用するマテリアルの品質レベルを設定することができます。
+**コンソールで設定する方法**:Backtick キーを押して UE4 コンソールを開き、次のいずれかの数字の前に `r.MaterialQualityLevel` を打ち込むと、エディタで使用するマテリアルの品質レベルを設定することができます。

@@ -222,7 +221,7 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
|2|Medium|
[region:note]
-1 が高めで 2 は中間 **で合っています**。誤植ではありません!
+**1 が高く 2 が中間** です。誤植ではありません!
[/region]
** Device Profiles のデフォルト設定**:マテリアルの品質はこの方法でも調節できます。
@@ -235,11 +234,11 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
クリックしてフルサイズで表示
[/REGION]
-1. Device Profiles の **[Android_Low** profile] の最初の **[レンチマークの]** アイコンをクリックしてプロファイル オプションを開きます。
+1. [Device Profiles] の **[Android_Low]** プロファイルの左側にある **[レンチマークの]** アイコンをクリックしてプロファイル オプションを開きます。

-1. **[Console Variables (コンソール変数)]** セクションの **[Rendering (レンダリング)]** オプションの **[+ (プラス記号)]** アイコンをクリックし、入力ウィンドウが表示されたら **「R.MaterialQualityLevel」** と打ち込み、[Enter] キーを押してコマンドをリストに追加します。
+1. **[Console Variables (コンソール変数)]** セクションの **[Rendering (レンダリング)]** オプションの **[+ (プラス記号)]** アイコンをクリックします。入力ウィンドウが表示されたら **「R.MaterialQualityLevel」** と入力して [Enter] キーを押すと、コマンドがリストに追加されます。
[REGION:lightbox]
[(w:505 h:242)](MQS_Set_Con_Var.png)
@@ -248,7 +247,7 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
クリックしてフルサイズで表示
[/REGION]
-1. 新規エントリが追加されたら、デフォルト値を **1** から **0** に変更します。ローエンドな Android デバイス上でプロジェクトを表示する場合、最速のマテリアル設定が使われます。
+1. コマンドが追加されたら、デフォルト値を **1** から **0** に変更します。ローエンドな Android デバイス上でプロジェクトを表示する場合、最速のマテリアル設定が使われます。
[REGION:lightbox]
[(w:505 h:242)](MQS_Set_Quality_Level.png)
@@ -257,8 +256,8 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
クリックしてフルサイズで表示
[/REGION]
-### 異なる品質レベルのプレビュー
-**[Preview Rendering Level (レンダリング レベルをプレビュー)]** を調節して、異なるハードウェアでのプロジェクトの見え方を UE4 エディタからプレビューします。**メインツールバー** の **[Settings (設定)]** > **[Preview Rendering Level (レンダリング レベルのプレビュー)]** から使用したいプレビュー レベルを選択します。
+### 別の品質レベルのプレビュー
+**[Preview Rendering Level (レンダリング レベルをプレビュー)]** を調節して、別のハードウェアで実行した場合のプロジェクトの見え方を UE4 エディタでプレビューします。**メインツールバー** の **[Settings (設定)]** > **[Preview Rendering Level (レンダリング レベルのプレビュー)]** で使用するプレビュー レベルを選択します。
[REGION:lightbox]
@@ -268,12 +267,12 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
クリックしてフルサイズで表示
[/REGION]
-### Material Quality Level の切り替え
-**Quality Switch** マテリアル式は、1 つのマテリアルに対して異なる複雑度を定義することができます。例えば、ハイエンド デバイスでは正常で、ローエンドで複雑な演算やテクスチャ解読が実行不可能な場合、このノードによってハイエンド グラフィクスを表示するだけのパワーのないローエンド モバイル デバイスでの表示用の簡素化版を指定することができます。
+### Material Quality Level の切り替え方法
+**Quality Switch** マテリアル式は、1 つのマテリアルに対して異なる複雑度を定義することができます。例えば、ハイエンドで正常に実行できる複雑な演算やテクスチャ解読がローエンドでは実行できない場合、ローエンド モバイル デバイスにとっては重すぎるハイエンド用の表示をこのノードで簡素化に指定することができます。

-マテリアルで Quality Switch を行うには、まず Quality Switch ノードをマテリアル グラフに追加します。次に、品質レベルを変更した時に変わってもらいたい Main Material ノード上に入力があれば、そこに出力を接続します。以下の画像では、Quality Level が変更されるとマテリアルの複雑度が下がるよう、Starter Content に入っている M_Brick_Clay_Old Material を設定しました。
+マテリアルで Quality Switch を行うには、まず Quality Switch ノードをマテリアル グラフに追加します。次に、品質レベルの変更を反映させたい Main Material ノード上にある入力に出力を接続します。以下の画像では、Quality Level が変更されるとマテリアルの複雑度が下がるように、Starter Content に入っている M_Brick_Clay_Old Material を設定しました。
[REGION:lightbox]
[(w:789 h:412)](MQS_Material_Setup.png)
@@ -285,7 +284,7 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
### モバイル マテリアルのオプション
**Material** を開いて Main Material ノードをクリックし [Details (詳細)] パネルの **[Mobile]** セクションを開くと、以下の 2 つのプロパティがあります。
-* **Fully Rough**:数多くの命令と、テクスチャ サンプリング 1 つを保存してマテリアルを完全に粗くします。
+* **Fully Rough**:多くの命令とテクスチャ サンプリングを 1 つ保存してマテリアルを完全に粗くします。
* **Use Lightmap Directionality**:ライトマップ指向性とピクセルごとの法線を使用します。無効にすると、ライトマップからのライティングはフラットになりますが、負荷が小さくなります。
[REGION:lightbox]
@@ -295,11 +294,11 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
クリックしてフルサイズで表示
[/REGION]
-パワー低いモバイル デバイスで表示する時に、この 2 つのプロパティは、これらの機能で使うレンダリング パスを完全に削除することにより、マテリアルのレンダリング負荷を軽減します。ただし、これらのオプションはすべてのデバイスでこのマテリアルを有効か無効のいずれかにするので、いちかばちかのオプションです。
+この 2 つのプロパティは、パワーの低いモバイル デバイスでマテリアルを表示する場合に、これらの機能のレンダリング パスを完全に削除してマテリアルのレンダリング負荷を軽減します。ただし、これらのオプションを有効または無効にすると、すべてのデバイスに反映されます。
### モバイル マテリアルのレンダリングをオーバーライドするオプション
-**[ES2 Quality Settings]** の調節により、プラットフォームで使用できるレンダリング オプションのオーバーライドが可能nなります。Android も iOS も、ES2 Quality Setting は **[Project Settings (プロジェクト設定)]** > **[Platforms]** の **[Android ES2 Quality]** または **[iOS ES2 Quality Settings]** の中にあります。オーバーライドを使用するには、**[Enable Quality Override (品質オーバーライドを有効にする)]** オプションを開いて、オーバーライドしたいオプションをクリックして選択します。オプションをすべて選択したら、**[Update preview shaders (プレビュー シャドウを更新)]** ボタンを押してすべてのマテリアルを再コンパイルして、指定したオプションが使えるようにします。
+**[ES2 Quality Settings]** の調節により、プラットフォームで使用できるレンダリング オプションのオーバーライドが可能になります。Android も iOS も、ES2 Quality Setting は **[Project Settings (プロジェクト設定)]** > **[Platforms]** の **[Android ES2 Quality]** または **[iOS ES2 Quality Settings]** にあります。オーバーライドを使用するには、**[Enable Quality Override (品質オーバーライドを有効にする)]** オプションを開いて、オーバーライドしたいオプションをクリックして選択します。オプションをすべて選択したら、**[Update preview shaders (プレビュー シャドウを更新)]** ボタンを押してすべてのマテリアルを再コンパイルして、指定したオプションが使えるようにします。
[REGION:lightbox]
@@ -310,7 +309,7 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
[/REGION]
## モバイル レンダリング オプション
-**[Project's Settings (プロジェクトの設定)]** メニューの **[Mobile]** セクションに、モバイル プロジェクトでライティングの処理方法を制御するプロパティがたくさん含まれています。これらの設定およびプロジェクトでのエフェクトについて、次のセクションで説明します。
+**[Project's Settings (プロジェクトの設定)]** メニューの **[Mobile]** セクションに、モバイル プロジェクトでライティングの処理方法を調整するプロパティが数多く含まれています。これらの設定およびプロジェクトでのエフェクトについて、次のセクションで説明します。
### プロジェクト設定へのアクセス方法
**メインツールバー** から **[Edit (編集)]** > **[Project Settings (プロジェクト設定)]** を選びます。
@@ -334,8 +333,8 @@ UE4 で Material Quality Level を設定するには以下の手順に従いま
|プロパティ名| 説明|
|--------------------|-------|
-|Mobile HDR|true の場合、モバイルはフル HDR でレンダリングされます。処理が遅いデバイスではパフォーマンスを上げるために、ライティング機能を必要としないゲームではこの設定は無効にしてください。|
-|Max Dynamic Point Lights|モバイル デバイス上でサポートする動的なポイントライトの数です。動的なポイント ライトを必要としないゲームの場合は 0 に設定して、シェーダーの生成数が少なくなります。この設定を変更するには、エディタを再起動する必要があります。|
+|Mobile HDR|true の場合、モバイルはフル HDR でレンダリングされます。処理が遅いデバイスではパフォーマンスが下がるため、ライティング機能を必要としないゲームではこの設定を無効にしてください。|
+|Max Dynamic Point Lights|モバイル デバイス上でサポートする動的なポイントライトの数です。動的なポイント ライトを必要としないゲームの場合は 0 に設定して、シェーダーの生成数を減らします。この設定を変更するには、エディタを再起動する必要があります。|
|Use Shared Dynamic Point LIght Shaders|有効にすると、サーフェイスに当たる動的ポイントライトに好きなだけ (Max Dynamic Point Lights での指定数まで) 同じシェーダーが使われます。処理は遅くなりますが、シェーダーの生成数は少なくなります。この設定を変更するには、エディタを再起動する必要があります。|
|Enabled Combined Static and CSM Shadowing|Stationary Light (固定ライト) から静的シャドウと CSM シャドウの両方を受け取るプリミティブです。無効にすると、モバイル テクスチャ サンプリングが解除されます。|
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.KOR.udn b/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.KOR.udn
index bfc149cf018f..4fdbdd556e81 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Performance/MobilePerformance.KOR.udn
@@ -295,7 +295,7 @@ UE4 에서 머티리얼 퀄리티 레벨을 설정하는 방법은 다음과 같
클릭하면 이미지 원본을 확인합니다.
[/REGION]
-이 두 프로퍼티를 켜면 머티리얼을 저사양 디바이스에서 봤을 때 해당 기능의 렌더링 패쓰를 완전히 없애 렌더링 비용을 낮추는 데 도움이 됩니다. 하지만 이는 모든 디바이스에서 이 머티리얼을 켜느냐 마느냐 밖에 없는 양자택일 옵션입니다.
+이 두 프로퍼티를 켜면 머티리얼을 저사양 디바이스에서 봤을 때 해당 기능의 렌더링 패스를 완전히 없애 렌더링 비용을 낮추는 데 도움이 됩니다. 하지만 이는 모든 디바이스에서 이 머티리얼을 켜느냐 마느냐 밖에 없는 양자택일 옵션입니다.
### 모바일 머티리얼 렌더링 오버라이드
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Performance/TipsAndTricks/MobilePerfTipsAndTricks.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/Performance/TipsAndTricks/MobilePerfTipsAndTricks.JPN.udn
index 12d2f09d12df..b432651ab835 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Performance/TipsAndTricks/MobilePerfTipsAndTricks.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Performance/TipsAndTricks/MobilePerfTipsAndTricks.JPN.udn
@@ -1,9 +1,14 @@
-INTSourceChangelist:2806926
-Title:モバイル パフォーマンス ヒントとコツ
-Description:サポートされたモバイル デバイス上でのパフォーマンスが最適になるように、Unreal Match 3 ゲームに採用された最適化と技術
-Crumbs:
-Parent:Platforms/Mobile/Performance
+INTSourceChangelist:3108692
+Title:モバイル パフォーマンスのヒントとコツ
+Description:サポートされたモバイル デバイスで最適なパフォーマンスを提供する Unreal Match 3 ゲームの最適化と技術
+Crumbs:%ROOT%, Platforms, Platforms/Mobile
Availability:Public
+Version:4.9
+Platform:Mobile
+parent:Platforms/Mobile
+order:6
+type:overview
+tags:mobile
[VAR:Topic]
[OBJECT:Topic]
@@ -81,7 +86,7 @@ Unreal Match 3 の場合、基本のベース プロファイルには何も追
+CVars=sg.EffectsQuality=3
+CVars=fx.MaxCPUParticlesPerEmitter 1000
-iPhone 6 は iPhone 4 よりもパワフルなので、設定は 6 では増えて、4 では減りました。IiOS セクションの下の Android セクションでは、High device profile と Low device profile が同じであることが分かります。
+iPhone 6 は iPhone 4 よりもパワフルなので、設定の多くは 6 では増加し 4 では減少しました。IiOS セクションの下の Android セクションでは、High device profile と Low device profile が同じであることが分かります。
[Android_Low DeviceProfile]
+CVars=r.MobileContentScaleFactor=1.0
@@ -101,16 +106,16 @@ Unreal Match 3 に使われている設定とその機能の詳細をまとめ
| 設定名 | 説明 |
| ------------ | ----------- |
-| r.MobileContentScaleFactor | デバイス上でのコンテンツのスケールを制御します。0 に設定すると、デバイスのネイティブ解像度が使用されます。UI スケールに DPI スケール カーブを使う場合は、必ずこの設定を 0 にします。 |
-| r.ParticleLODBias | 表示するパーティクル LOD を制御します。0 は基本に使用、1 は最初の LOD、2 は 2 つ目の LOD というように使います。Unreal Match 3 では、最初の LOD だけをローエンド デバイス上でスポーンされたパーティクル量を半分にするために使います。
-| sg.EffectsQuality | ティックあたりのパーティクルのスポーン レートを制御します。0 から 3 の範囲で、デフォルト値は 3 です。この数字を下げると、パーティクルのティックあたりのスポーン量が減ります。この値を 1 にするとパーティクルは非常にまばらになるので、完全にローエンドのデバイスのみに使用することを推奨します。0 に設定するとパーティクルのスポーンが完全に停止します。 |
+| r.MobileContentScaleFactor | デバイス上でのコンテンツのスケールを制御します。0 に設定すると、そのデバイスのネイティブ解像度が使用されます。UI スケールに DPI スケール カーブを使う場合は、必ずこの設定を 0 にします。 |
+| r.ParticleLODBias | 表示するパーティクル LOD を制御します。0 は基本を使用、1 は最初の LOD、2 は 2 つ目の LOD というように使います。Unreal Match 3 では、最初の LOD だけを使用して、ローエンド デバイス上でスポーンされたパーティクル量を半分に減らします。 |
+| sg.EffectsQuality | ティックあたりのパーティクルのスポーン レートを調節します。範囲は 0 から 3 です。デフォルトは 3 に設定されています。値を下げると、ティックあたりのパーティクルのスポーン量が減ります。1 にするとパーティクルはかなりまばらになるので、非常にローエンドのデバイスのみに使用することを推奨します。0 に設定するとパーティクルのスポーンが完全に停止します。 |
| fx.MaxCPUParticlesPerEmitter | エミッタ当たりのエミットされる CPU パーティクル数です。 |
## LOD の様々な使用方法

-LOD は、プレイヤーのカメラから遠くのオブジェクトのレンダリング負荷を減らすのに役立つレンダリング ティックです。LOD は、低解像度のオブジェクトを格納することで動き、プレイヤーのカメラからの距離に応じてこれらのオブジェクト間を自動的に切り替えます。LOD が切り替わっているサンプルをこちらの動画でご覧いただけます。
+LOD は、プレイヤーのカメラから遠くにあるオブジェクトのレンダリング負荷を減らす場合に役立つレンダリング トリックです。LOD は、低解像度のオブジェクトを格納することで動き、プレイヤーのカメラからの距離に応じてこれらのオブジェクト間を自動的に切り替えます。以下の動画で動作中の LOD スイッチのサンプルをご覧いただけます。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:videoid]
@@ -124,7 +129,7 @@ LOD は、プレイヤーのカメラから遠くのオブジェクトのレン
[/PARAMLITERAL]
[/OBJECT]
-Unreal Match 3 はスタティックメッスの LOD は使いませんが、パーティクル エフェクトの LOD を使うとローエンド デバイスのレンダリング要求を減らしやすくなります。まず最初に、開始点にパーティクルを使って LOD を新規作成します。次に、新規作成された LOD 内で、スポーンされるパーティクル数が半分になります。インスタンスの中には、エフェクト内のモジュールがまるごと無効になるものもあります。この VFX LOD を実際に使ってる様子が以下の画像です。
+Unreal Match 3 はスタティックメッシュに LOD は使用しませんが、パーティクル エフェクトに LOD を使用するとローエンド デバイスでのレンダリング負荷を下げることができます。パーティクルを使って開始点として最初に LOD を新規作成しておくと、新規作成された LOD 内で、スポーンされるパーティクル数が半分になります。インスタンスによっては、エフェクト内のモジュールがすべて無効になる場合もあります。この VFX LOD を実際に使ってる様子が以下の画像です。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -143,7 +148,7 @@ Unreal Match 3 はスタティックメッスの LOD は使いませんが、パ
[/REGION]
-->
-上の画像は **P_Selected_Title** パーティクル エフェクトです。現在選択中の宝石がローエンド デバイス用に最適化してあります。画像の左側はハイエンド デバイス向けの **P_Selected_Title** パーティクル エフェクトの基本です。この画像をじっくり見ると、パーティクル エフェクトの中に小さな白い四角に気が付くと思います。今度は画像の右側を見てください。同じ **P_Selected_Title** エフェクトを使っていても、小さな白い四角は見えません。これは、Unreal Match 3 がローエンド モバイル デバイスでも問題なく動作できるように、それらがエフェクトの LOD から完全に取り除かれたためです。これは必要な操作ほんのまだ半分です。次のステップは、メイン パーティクル エフェクトを使うモバイル デバイスと、メイン パーティクル エフェクトに基づいて様々な LOD を使うモバイル デバイスを定義する必要があります。まず、テキスト エディタで DefaultDeviceProfiles.ini を開き、下の画像にあるように **Android_Low DeviceProfile** エントリを探します。
+上の画像は **P_Selected_Title** パーティクル エフェクトです。現在選択中の宝石がローエンド デバイス用に最適化してあります。画像の左側はハイエンド デバイス向けの **P_Selected_Title** パーティクル エフェクトの基本 (Base) です。この画像をじっくり見ると、パーティクル エフェクトの中に小さな白い四角に気が付くと思います。今度は画像の右側を見てください。同じ **P_Selected_Title** エフェクトを使っていても、小さな白い四角は見えません。これは、Unreal Match 3 がローエンド モバイル デバイスでも問題なく動作できるように、それらがエフェクトの LOD から完全に取り除かれたためです。まだ必要な操作の半分にすぎません。次に、メイン パーティクル エフェクトを使うモバイル デバイスと、メイン パーティクル エフェクトに基づいて様々な LOD を使うモバイル デバイスを定義する必要があります。まず、テキスト エディタで DefaultDeviceProfiles.ini を開き、下の画像にあるように **Android_Low DeviceProfile** エントリを探します。

@@ -151,7 +156,7 @@ Unreal Match 3 はスタティックメッスの LOD は使いませんが、パ
+CVars=r.ParticleLODBias=1
-[Android Device Profile] セクションの [Low Device] と [Mid Device] のエントリを見ると、この両方の種類はパーティクル エフェクト向けの LOD を使います。一方、[Highest Device] では LOD ではなく基本エフェクトが使われています。下の画像を見ると、パーティクル エフェクトをことなる LOD で表示するため、ローエンド、ミッドエンド、ハイエンドの Android デバイスをすべて一緒に使っていることがわかります。
+[Android Device Profile] セクションの [Low Device] と [Mid Device] のエントリを見ると、両方の種類にはパーティクル エフェクト向けの LOD が使われます。。一方、[Highest Device] では LOD ではなく基本エフェクトが使われています。下の画像を見ると、パーティクル エフェクトをことなる LOD で表示するため、ローエンド、ミッドエンド、ハイエンドの Android デバイスをすべて一緒に使っていることがわかります。

@@ -171,7 +176,7 @@ Unreal Match 3 はスタティックメッスの LOD は使いませんが、パ
## キャラクターのライティング
-Unreal Match 3 でキャラクター用に使われているマテリアルを見てみると、負荷の低い Unlit Shading Model ではなく Default Lit Shading Model をマテリアルに使用していることが分かります。夜のテーマを購入し有効にすると、トーチの灯りによりキャラクターに動的に陰影がつくようにするためです。Unlit になるようにマテリアルが変更されていると、動的シャドウのインタラクションは不可能になります。動的ライトはモバイル デバイスでは特に負荷が高いですが、Unreal Match 3 はリソースをほとんど要求しないので、動的な Point light を一つだけ作ったとしてもパフォーマンスはほとんど変わりません。
+Unreal Match 3 でキャラクター用に使われているマテリアルを見てみると、負荷の低い Unlit Shading Model ではなく Default Lit Shading Model をマテリアルに使用していることが分かります。夜のテーマが購入され有効にされた時に、トーチの灯りによりキャラクターに動的に陰影がつくようにするためです。Unlit になるようにマテリアルが変更されていると、動的シャドウのインタラクションは不可能になります。動的ライトはモバイル デバイスでは特に負荷が高いですが、Unreal Match 3 はリソースをほとんど要求しないので、動的なポイントライトを 1 つだけ付けたとしてもパフォーマンスはほとんど変わりません。
[OBJECT:ComparisonSlider]
[PARAM:before]
diff --git a/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.INT.udn b/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.INT.udn
index cba774819ca8..767756e4a958 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.INT.udn
@@ -16,9 +16,37 @@ reference-image:Mobile_PostProcessEffect.gif
Mobile Post Processing is implemented as a separate code path from PC/Console Post Processing. This is to reflect the slower dependent texture reads, missing hardware features, extra render target resolve costs, and slower performance in general.
To enable Post Processing for your mobile applications, please make sure that **Mobile HDR** is enabled in your **Project Settings** as most of the settings below require Mobile HDR to be enabled for the effect(s) to work.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
[region: lightbox]
[(w:400)](MobileHDR_Enabled.png)
[/region]
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+[region: lightbox]
+[(w:400)](MobileHDR_Enabled_Mac.png)
+[/region]
+[/PARAM]
+[/OBJECT]
[region:caption]
Click for full image.
@@ -59,17 +87,76 @@ Click for full image.
### Enabling Tonemapper Film via .INI Files
To enable or disable the Tonemapper project wide you will need to add **r.tonemapperfilm=1** to the **Rendering Settings** in your project's **DefaultEngine.ini**.
+
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
[REGION:lightbox]
[(w:422 h:199)](TM_Default_Engine_INI.png)
[/REGION]
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+[REGION:lightbox]
+[(w:422 h:199)](TM_Default_Engine_INI_Mac.png)
+[/REGION]
+[/PARAM]
+[/OBJECT]
[REGION:caption]
Click for full image.
[/REGION]
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
[REGION:lightbox]
[(w:422 h:199)](TM_INI_Location.png)
[/REGION]
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+[REGION:lightbox]
+[(w:422 h:199)](TM_INI_Location_Mac.png)
+[/REGION]
+[/PARAM]
+[/OBJECT]
+
[REGION:caption]
Click for full image.
@@ -241,9 +328,37 @@ You can now use the **Custom Depth** Post Process option with the Mobile renderi
As this features requires Post-Processing to work correctly, **Mobile HDR** must be enabled. To enable Mobile HDR go to **Project Settings** > **Engine** > **Rendering** > **Mobile** and make sure that **Mobile HDR** is checked.
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+windows
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
[region: lightbox]
[(w:400)](MobileHDR_Enabled.png)
[/region]
+[/PARAM]
+[/OBJECT]
+
+[OBJECT:ToggleButtonContent]
+[PARAMLITERAL:category]
+OS
+[/PARAMLITERAL]
+[PARAMLITERAL:id]
+mac
+[/PARAMLITERAL]
+[PARAMLITERAL:active]
+[/PARAMLITERAL]
+[PARAM:content]
+[region: lightbox]
+[(w:400)](MobileHDR_Enabled_Mac.png)
+[/region]
+[/PARAM]
+[/OBJECT]
[region:caption]
Click for full image.
diff --git a/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.JPN.udn b/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.JPN.udn
index 21ee622178b8..60c7d94061de 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.JPN.udn
@@ -1,6 +1,5 @@
-INTSourceChangelist:3345705
-Availability:Public
-Title:モバイル プラットフォームでポストプロセス エフェクトを使う
+Availability:Public
+Title:モバイル プラットフォームでのポストプロセス エフェクトの使用方法
Crumbs:
Description:モバイル ゲームでのポストプロセス エフェクトの使用方法
Platform:Mobile
@@ -14,8 +13,8 @@ reference-image:Mobile_PostProcessEffect.gif
[TOC(start:2)]
-モバイルのポストプロセスは、 PC / コンソールでのポストプロセスとは別のコードパスとして実施されます。その結果、依存するテクスチャの読み取り速度の低下、ハードウェア機能の不足、余分なレンダリング ターゲットの転換負荷、全般的なパフォーマンスの低下につながります。
-**[Project Settings (プロジェクト設定)]** で **[Mobile HDR]** を必ず有効にしてください。以下にあげるほとんどの設定ではエフェクトを使うためにこの設定を有効にする必要があります。
+モバイルのポストプロセスは、 PC / コンソールでのポストプロセスとは別のコードパスとして実行されます。その結果、依存テクスチャの読み取り速度の低下、ハードウェア機能不足、高いレンダリング負荷、そしてパフォーマンス全般の低下につながります。
+**[Project Settings (プロジェクト設定)]** で **[Mobile HDR]** を必ず有効にしてください。これから説明する設定では、この設定を有効にしないとエフェクトが機能しません。
[region: lightbox]
[(w:400)](MobileHDR_Enabled.png)
@@ -25,8 +24,8 @@ reference-image:Mobile_PostProcessEffect.gif
クリックしてフルサイズで表示
[/region]
-## モバイル デバイス用にトーンマッパを有効にする
-モバイル デバイスで Tonemapper Post Processing オプションを使うためには、**r.tonemapperfilm** の値をデフォルト値の **0** から **1** へ変更する必要があります。アンリアル エンジン (UE4) でトーンマッパの変更や有効無効の切り替えを行うには、以下の手順に従います。
+## モバイル デバイスのトーンマッパを有効にする
+モバイル デバイスで Tonemapper Post Processing オプションを使うためには、**r.tonemapperfilm** をデフォルト値の **0** から **1** へ変更する必要があります。アンリアル エンジン (UE4) でトーンマッパの変更や有効無効の切り替えを行うには、以下の手順に従います。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -42,11 +41,11 @@ reference-image:Mobile_PostProcessEffect.gif
トーンマッパを有効にするには、まず **Backtick key(`)** を押してコンソールを開いてから、トーンマッパを有効にする以下のコマンドを入力します。
* **r.tonemapperfilm 1**
-トーンマッパを無効にするには、コンソールを開いてトーンマッパを無効にする以下のコマンドを入力します。
+トーンマッパを無効にするには、コンソールを開いて、以下のコマンドを入力します。
* **r.tonemapperfilm 0**
[region:note]
-このメソッドでは、このセッションのみにトーンマッパを有効にします。常にトーンマッパを有効にしておきたい場合は、使用したいトーンマッパ設定を DefaultEngine.INI に追加する必要があります。
+このメソッドでは、このセッションのみにトーンマッパを有効にします。常にトーンマッパを有効にするには、使用するトーンマッパ設定を DefaultEngine.INI に追加する必要があります。
[/region]
[REGION:lightbox]
@@ -77,7 +76,7 @@ reference-image:Mobile_PostProcessEffect.gif
[/REGION]
### モバイル デバイス上でトーンマッパを有効にする
-モバイル デバイス上でトーンマッパを有効にするには、**4 本の指** で同時に画面をタップして **コンソール ウィンドウ** を立ち上げ、次に **r.tonemapperfilm 1** を入力してトーンマッパを有効にする、または **r.tonemapperfilm 0** を入力してトーンマッパを無効にします。
+モバイル デバイス上でトーンマッパを有効にするには、**4 本の指** で同時に画面をタップして **コンソール ウィンドウ** を立ち上げます。有効にするには **r.tonemapperfilm 1**、無効にするには **r.tonemapperfilm 0** を入力します。
[REGION:lightbox]
[(w:640 h:360)](TM_Phone_Console.png)
@@ -88,7 +87,7 @@ reference-image:Mobile_PostProcessEffect.gif
[/REGION]
## モバイルでサポートされているポストプロセス エフェクトと設定
-次のセクションでは、モバイル デバイスでサポートされているポストプロセス エフェクトと設定、およびトーンマッパを有効にする必要があるかどうかを説明します。
+次のセクションでは、モバイル デバイスでサポートされているポストプロセス エフェクトと設定方法、およびトーンマッパを有効にする必要性について説明します。
[REGION:lightbox]
[(w:275 h:355)](TM_PostProcess_Settings.png)
@@ -225,8 +224,8 @@ reference-image:Mobile_PostProcessEffect.gif
[/REGION]
モバイル アプリケーションにエフェクトを追加するには、カスタム ポストプロセス マテリアルの開発が必要です。その際、
-いくつか重要な点を考慮する必要があります。特に、モバイル アプリケーション向けのカスタム ポストプロセス マテリアルは、
-以下の **Blendable Locations** で PostProcessInput0 (Scene Color) からのみフェッチ可能です。これは重要ですので留意してください。
+いくつか重要な点を考慮する必要があります。その中でも特に重要なのは、モバイル アプリケーション向けのカスタム ポストプロセス マテリアルは、
+以下の **Blendable Locations** で PostProcessInput0 (Scene Color) からのみフェッチ可能という点です。
* **Before Tonemapping**
* **After Tonemapping**
@@ -240,7 +239,7 @@ Blendable Locations の詳細は、[](Engine/Rendering/PostProcessEffects/PostPr

-この機能が正しく動作するには **Mobile HDR** を有効にしておく必要があります。Mobile HDR を有効にするには、**[Project Settings]** > **[Engine]** > **[Rendering]** > **[Mobile]** で **[Mobile HDR]** にチェックが入っていることを確認してください。
+この機能が正しく動作するためには、**Mobile HDR** を有効にしておく必要があります。Mobile HDR は、**[Project Settings]** > **[Engine]** > **[Rendering]** > **[Mobile]** で **[Mobile HDR]** にチェックが入っていれば有効です。
[region: lightbox]
[(w:400)](MobileHDR_Enabled.png)
@@ -251,7 +250,7 @@ Blendable Locations の詳細は、[](Engine/Rendering/PostProcessEffects/PostPr
[/region]
[region:warning]
-ただし、この機能は **Mobile MSAA** が有効にされていると正しく動作しません。デバイス上でエフェクトを表示するには Mobile MSAA を無効にしてください。
+ただし、この機能は **Mobile MSAA** が有効な場合、正しく動作しません。デバイス上でエフェクトを表示するには Mobile MSAA を無効にしてください。
[/region]
## ポストプロセス パフォーマンス全般におけるヒント
diff --git a/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.KOR.udn b/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.KOR.udn
index f5f0abb1c0b9..5dd0039a9dc3 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/PostProcessEffects/MobilePostProcessEffects.KOR.udn
@@ -14,7 +14,7 @@ reference-image:Mobile_PostProcessEffect.gif
[TOC(start:2)]
-모바일 포스트 프로세싱은 PC/콘솔 포스트 프로세싱과는 별도의 코드 패쓰로 구현되어 있습니다. 속도가 느린 종속적 텍스처 읽기, 부족한 하드웨어 기능, 더 높은 렌더타겟 리졸브 비용, 전반적으로 느린 퍼포먼스를 반영하기 위해서입니다.
+모바일 포스트 프로세싱은 PC/콘솔 포스트 프로세싱과는 별도의 코드 패스로 구현되어 있습니다. 속도가 느린 종속적 텍스처 읽기, 부족한 하드웨어 기능, 더 높은 렌더타겟 리졸브 비용, 전반적으로 느린 퍼포먼스를 반영하기 위해서입니다.
모바일 어플리케이션에 포스트 프로세싱을 켜려면, **프로젝트 세팅** 의 **Mobile HDR** 을 켜야 합니다. 아래 대부분의 세팅은 Mobile HDR 을 켜야 작동하는 기능입니다.
[region: lightbox]
@@ -265,7 +265,7 @@ AA 메소드는 "None" (가장 빠름) 및 "TemporalAA" 를 지원하며, 여기
r.RenderTargetSwitchWorkaround
일부 모바일 플랫폼에서는 렌더 타겟 전환시의 퍼포먼스 하락을 피하기 위해 우회법이 필요할 것입니다.
- 일부 하드웨어에서만 켜는 방법인데, 블룸 퀄리티에도 약간 영향을 끼칩니다. 일반 코드 패쓰보다 느리게 실행되지만,
+ 일부 하드웨어에서만 켜는 방법인데, 블룸 퀄리티에도 약간 영향을 끼칩니다. 일반 코드 패스보다 느리게 실행되지만,
렌더 타겟 전환을 여러번 피할 수 있어서 더욱 빠릅니다 (기본값: 0_
모든 32 비트 iOS 디바이스에서 이것을 (1) 켜고자 했습니다 (DeviceProfiles 를 통해 구현).
[/REGION]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/Mobile/Textures/MobileTextures.INT.udn b/Engine/Documentation/Source/Platforms/Mobile/Textures/MobileTextures.INT.udn
index 742da1a419d9..7e008e13d8d3 100644
--- a/Engine/Documentation/Source/Platforms/Mobile/Textures/MobileTextures.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Mobile/Textures/MobileTextures.INT.udn
@@ -47,11 +47,63 @@ To set the Texture LOD settings per-device you will need to do the following.
1. From the main Tool Bar open the **Devices Profiles** manager by going to **Windows** > **Developer Tools** and then clicking on **Device Profiles**.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. After clicking on the **Device Profiles** option the following menu will be displayed.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
1. From this menu select the device you want to edit and then click on the three dots that are to the left of the device name to open that devices profile.
diff --git a/Engine/Documentation/Source/Platforms/OSVR/OSVR.JPN.udn b/Engine/Documentation/Source/Platforms/OSVR/OSVR.JPN.udn
index ae84bbbb5baf..6f4a5d79f8ee 100644
--- a/Engine/Documentation/Source/Platforms/OSVR/OSVR.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/OSVR/OSVR.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3429260
Title:OSVR の開発
Crumbs:%ROOT%, Platforms
Description:
@@ -14,7 +14,7 @@ social-image:googlevr_social.png
## はじめよう
-PC および Android ベースのスマートフォンを使って UE4 と OSV を使う方法を説明します。
+OSVR クイックスタートでは、UE4 および OSVR を使用するための PC 設定方法を説明します。
[DIR(output:"listbutton" type:"quick start" parent:"Platforms/OSVR")]
diff --git a/Engine/Documentation/Source/Platforms/OSVR/OSVR.KOR.udn b/Engine/Documentation/Source/Platforms/OSVR/OSVR.KOR.udn
index e0c6cb1b01d9..dbd0ecdb27bf 100644
--- a/Engine/Documentation/Source/Platforms/OSVR/OSVR.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/OSVR/OSVR.KOR.udn
@@ -1,5 +1,5 @@
-INTSourceChangelist:3150518
-Title:OSVR Development
+INTSourceChangelist:3429260
+Title:OSVR 개발
Crumbs:%ROOT%, Platforms
Description:
Availability:Docs
@@ -13,10 +13,10 @@ tags:OSVR
social-image:googlevr_social.png
-## Starting Out
-The OSVR Quick Start will walk you through getting your PC setup to work with UE4 and OSVR.
+## 시작하기
+OSVR 퀵 스타트는 UE4 로 OSVR 작업을 하기 위한 PC 구성을 안내해 드립니다.
-[DIR(output:"listbutton" type:"quickstart" parent:"Platforms/OSVR")]
+[DIR(output:"listbutton" type:"quick start" parent:"Platforms/OSVR")]
diff --git a/Engine/Documentation/Source/Platforms/Oculus/Oculus.INT.udn b/Engine/Documentation/Source/Platforms/Oculus/Oculus.INT.udn
index 0a9356ea004c..47d6d334ba99 100644
--- a/Engine/Documentation/Source/Platforms/Oculus/Oculus.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Oculus/Oculus.INT.udn
@@ -10,6 +10,7 @@ parent:Platforms/VR
tags:VR
tags:Oculus Rift
tags:Platform
+Topic-image:OculusRiftDevelopment_topic.png
## Starting Out
diff --git a/Engine/Documentation/Source/Platforms/Oculus/Oculus.KOR.udn b/Engine/Documentation/Source/Platforms/Oculus/Oculus.KOR.udn
index 6a0f8681c711..31aa9b44b89f 100644
--- a/Engine/Documentation/Source/Platforms/Oculus/Oculus.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Oculus/Oculus.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3235148
+INTSourceChangelist:3467293
Title:오큘러스 리프트 개발
Crumbs:%ROOT%, Platforms
Description:
@@ -11,6 +11,7 @@ parent:Platforms/VR
tags:VR
tags:Oculus Rift
tags:Platform
+Topic-image:OculusRiftDevelopment_topic.png
## 시작하기
diff --git a/Engine/Documentation/Source/Platforms/Oculus/QuickStart/OculusQuickStart.INT.udn b/Engine/Documentation/Source/Platforms/Oculus/QuickStart/OculusQuickStart.INT.udn
index 8dd708d7c709..c53aa51f048c 100644
--- a/Engine/Documentation/Source/Platforms/Oculus/QuickStart/OculusQuickStart.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Oculus/QuickStart/OculusQuickStart.INT.udn
@@ -6,6 +6,7 @@ Version: 4.11
SkillLevel: Intermediate
parent:Platforms/Oculus
type:quick start
+type:landing
tags:VR
tags:Oculus Rift
diff --git a/Engine/Documentation/Source/Platforms/Oculus/QuickStart/OculusQuickStart.KOR.udn b/Engine/Documentation/Source/Platforms/Oculus/QuickStart/OculusQuickStart.KOR.udn
index 4fd06c775d22..ba477db1e8b7 100644
--- a/Engine/Documentation/Source/Platforms/Oculus/QuickStart/OculusQuickStart.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Oculus/QuickStart/OculusQuickStart.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3429260
Title:오큘러스 리프트 퀵스타트
Crumbs:%ROOT%, Platforms, Platforms/Oculus
Description:오큘러스 리프트용 게임 셋업 및 실행 관련 안내입니다.
@@ -7,6 +7,7 @@ Version: 4.11
SkillLevel: Intermediate
parent:Platforms/Oculus
type:quick start
+type:landing
tags:VR
tags:Oculus Rift
diff --git a/Engine/Documentation/Source/Platforms/Platforms.INT.udn b/Engine/Documentation/Source/Platforms/Platforms.INT.udn
index 4bc39c8fb33e..28791bd07dda 100644
--- a/Engine/Documentation/Source/Platforms/Platforms.INT.udn
+++ b/Engine/Documentation/Source/Platforms/Platforms.INT.udn
@@ -7,49 +7,26 @@ version: 4.9
parent:%ROOT%
order:8
type:landing
+topic-icon:%ROOT%/platform_icon.png
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms:title%
-[/PARAM]
-[PARAM:description]
- %Platforms:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms]
-[/PARAM]
-[/VAR]
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
+## Mobile
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Mobile" org:"hierarchy")]
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-platforms
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
+## Virtual Reality
-## Platforms
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"VR" tags:"Platform" org:"hierarchy")]
-[DIR(end:"2" output:"listbutton" type:"landing" parent:"Platforms" org:"hierarchy")]
+## Desktop
+
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Desktop" org:"hierarchy")]
+
+[PUBLISH:licensee]
+## Console
+
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Console" org:"hierarchy")]
+[/PUBLISH:licensee]
## Platform Tools
diff --git a/Engine/Documentation/Source/Platforms/Platforms.JPN.udn b/Engine/Documentation/Source/Platforms/Platforms.JPN.udn
index 92fddebc3a9d..03b808821c90 100644
--- a/Engine/Documentation/Source/Platforms/Platforms.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/Platforms.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3151855
+INTSourceChangelist:3429257
Availability:Public
Title:プラットフォーム開発
Crumbs:%ROOT%
@@ -8,49 +8,26 @@ version:4.9
parent:%ROOT%
order:8
type:landing
+topic-icon:%ROOT%/platform_icon.png
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms:title%
-[/PARAM]
-[PARAM:description]
- %Platforms:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms]
-[/PARAM]
-[/VAR]
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
+## モバイル
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Mobile" org:"hierarchy")]
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-プラットフォーム
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
+## VR
-## プラットフォーム
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"VR" tags:"Platform" org:"hierarchy")]
-[DIR(end:"2" output:"listbutton" type:"landing" parent:"Platforms" org:"hierarchy")]
+## デスクトップ
+
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Desktop" org:"hierarchy")]
+
+[PUBLISH:licensee]
+## コンソール
+
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Console" org:"hierarchy")]
+[/PUBLISH:licensee]
## Platform ツール
diff --git a/Engine/Documentation/Source/Platforms/Platforms.KOR.udn b/Engine/Documentation/Source/Platforms/Platforms.KOR.udn
index c54823e3915f..42974a63030a 100644
--- a/Engine/Documentation/Source/Platforms/Platforms.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/Platforms.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3151855
+INTSourceChangelist:3429257
Availability:Public
Title:플랫폼 개발
Crumbs:%ROOT%
@@ -8,49 +8,26 @@ version: 4.9
parent:%ROOT%
order:8
type:landing
+topic-icon:%ROOT%/platform_icon.png
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms:title%
-[/PARAM]
-[PARAM:description]
- %Platforms:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms]
-[/PARAM]
-[/VAR]
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
+## 모바일
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Mobile" org:"hierarchy")]
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-platforms
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
+## 가상 현실
-## 플랫폼
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"VR" tags:"Platform" org:"hierarchy")]
-[DIR(end:"2" output:"listbutton" type:"landing" parent:"Platforms" org:"hierarchy")]
+## 데스크탑
+
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Desktop" org:"hierarchy")]
+
+[PUBLISH:licensee]
+## 콘솔
+
+[DIR(end:"2" output:"topic" type:"landing" parent:"Platforms" tags:"Console" org:"hierarchy")]
+[/PUBLISH:licensee]
## 플랫폼 툴
diff --git a/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.INT.udn b/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.INT.udn
index 9f4108e07938..e11ee51590d3 100644
--- a/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.INT.udn
+++ b/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.INT.udn
@@ -5,6 +5,7 @@ Availability:public
Navigation:platform
Platform:SteamVR
type:quick start
+type:landing
parent:Platforms/SteamVR
tags:VR
tags:SteamVR
diff --git a/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.JPN.udn b/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.JPN.udn
index e1280f8a9bc6..994cf5e408d2 100644
--- a/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.JPN.udn
@@ -1,11 +1,12 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3429260
Title:SteamVR クイック スタート
Crumbs:%ROOT%, Platforms
-Description:SteamVR を UE4 で使うために設定する操作手順
+Description:SteamVR を UE4 で使用するための設定方法
Availability:public
Navigation:platform
Platform:SteamVR
type:quick start
+type:landing
parent:Platforms/SteamVR
tags:VR
tags:SteamVR
@@ -13,7 +14,7 @@ tags:SteamVR

このガイドでは、アンリアル エンジン 4 で SteamVR が使えるようにする手順を説明します。
-最後まで完了すると、SteamVR が使用できるプロジェクトを新規に作成することができるようになります。
+最後まで完了すると、SteamVR が使用できるプロジェクトの新規作成が可能になります。
[OBJECT:TopicButtonList]
[PARAM:icon]
diff --git a/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.KOR.udn b/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.KOR.udn
index 260423f9d839..4a491144466c 100644
--- a/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/SteamVR/QuickStart/SteamVRQuickStart.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3429260
Title: SteamVR 퀵 스타트
Crumbs:%ROOT%, Platforms
Description: UE4 에서 SteamVR 을 사용하도록 하는 구성법 안내서입니다.
@@ -6,6 +6,7 @@ Availability:public
Navigation:platform
Platform:SteamVR
type:quick start
+type:landing
parent:Platforms/SteamVR
tags:VR
tags:SteamVR
diff --git a/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.INT.udn b/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.INT.udn
index da303d412c1f..27aadb3e2c51 100644
--- a/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.INT.udn
+++ b/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.INT.udn
@@ -9,6 +9,7 @@ parent:Platforms/VR
tags:VR
tags:SteamVR
tags:Platform
+Topic-image:SteamVRDevelopment_topic.png

diff --git a/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.JPN.udn b/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.JPN.udn
index e119c8359c0b..ffb3fc6cc90e 100644
--- a/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.JPN.udn
@@ -1,7 +1,7 @@
-INTSourceChangelist:3235148
+INTSourceChangelist:3467293
Title:SteamVR の開発
Crumbs:%ROOT%, Platforms
-Description:SteamVR 入門
+Description:SteamVR をはじめよう
Availability:Public
Navigation:platform
Platform:SteamVR
@@ -10,6 +10,7 @@ parent:Platforms/VR
tags:VR
tags:SteamVR
tags:Platform
+Topic-image:SteamVRDevelopment_topic.png

diff --git a/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.KOR.udn b/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.KOR.udn
index 953d5552aba6..8afc001ec40e 100644
--- a/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/SteamVR/SteamVR.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3235148
+INTSourceChangelist:3467293
Title: SteamVR 개발
Crumbs:%ROOT%, Platforms
Description:SteamVR 개발 시작을 위한 안내서입니다.
@@ -10,6 +10,7 @@ parent:Platforms/VR
tags:VR
tags:SteamVR
tags:Platform
+Topic-image:SteamVRDevelopment_topic.png

diff --git a/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.INT.udn b/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.INT.udn
index 919e07e9d0e9..1341a52b4b11 100644
--- a/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.INT.udn
+++ b/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.INT.udn
@@ -8,44 +8,6 @@ parent:Platforms/VR
type:overview
tags:VR
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms:title%
-[/PARAM]
-[PARAM:description]
- %Platforms:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms]
-[/PARAM]
-[/VAR]
-
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-platforms
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
[TOC(start:2)]
@@ -65,7 +27,6 @@ The following .INI settings were taken from the UE4 powered, VR demo, Showdown.
These . INIsettings, if used, should be added to your project's **Config\DefaultEngine.INI** file, under **SystemSettings**.
[SystemSettings]
- r.VolumeMultiplier=1.0
r.screenpercentage=130
r.SeparateTranslucency=0
r.HZBOcclusion=0
@@ -77,7 +38,6 @@ These . INIsettings, if used, should be added to your project's **Config\Default
r.SSR.Quality=1
r.DepthOfFieldQuality=0
r.SceneColorFormat=2
- r.SSSSS=0
r.TranslucencyVolumeBlur=0
r.TranslucencyLightingVolumeDim=4
r.MaxAnisotropy=8
@@ -86,7 +46,6 @@ These . INIsettings, if used, should be added to your project's **Config\Default
r.FastBlurThreshold=0
r.SSR.MaxRoughness=0.1
r.rhicmdbypass=0
- r.TiledReflectionEnvironmentMinimumCount=10
sg.EffectsQuality=2
sg.PostProcessQuality=0
@@ -306,7 +265,7 @@ To fix this, fake blob shadows were introduced that could dynamically adjust the
This helped give the illusion that a character was casting shadows when they came close to the ground (or other objects).
[region:lightbox]
- [](VR_Fake_Shadow_Material.png)
+ [(w:1000)](VR_Fake_Shadow_Material.png)
[/region]
[region:caption]
@@ -352,9 +311,8 @@ Set World to Meters Scale| Sets the World to Meters scale, which changes the sca
Due to the manner in which HMD's work, some art techniques that are staples of Video Game development, no longer have the impact that they once did.
Below, you will find a list of features that might not work as expected in VR, with possible workarounds to address this.
-|Know Issues| Workaround |
-|---| --- |
-| Screen Space Reflections (SSR)|While SSR will still work in VR the reflections that they produce could have issues matching up to what it is reflecting in the world. Instead of using SSR use [Reflection Probes](Resources/Showcases/Reflections#reflectionenvironment) as they are much cheaper and do suffer less from reflection alignment issues.|
+
+* **Screen Space Reflections(SSR):** While SSR will still work in VR the reflections that they produce could have issues matching up to what it is reflecting in the world. Instead of using SSR use [Reflection Probes](Resources/Showcases/Reflections#reflectionenvironment) as they are much cheaper and do suffer less from reflection alignment issues.
**Normal Mapping Issues**
@@ -365,7 +323,5 @@ However, that does not mean that you should not, or will not, need to use Normal
it just means that you need to more closely evaluate if the data you are trying to convey in the Normal map would be better off being made out of geometry.
Below, you will find some different techniques that can be used in place of Normal maps.
-|Shader Type | Description|
-|---|---|
-|[Parallax Mapping](http://en.wikipedia.org/wiki/Parallax_mapping)| Parallax mapping takes Normal mapping to the next level, by accounting for depth cues that Normal mapping does not. A Parallax mapping shader can better display depth information, making objects appear to have more detail than they do. This is due to the fact that no matter what angle you look at, a Parallax map will always correct itself to show you the correct depth information from your view point. The best use of a Parallax map would be for cobblestone pathways and fine detail on surfaces.
+* **[Parallax Mapping](http://en.wikipedia.org/wiki/Parallax_mapping):** Parallax mapping takes Normal mapping to the next level, by accounting for depth cues that Normal mapping does not. A Parallax mapping shader can better display depth information, making objects appear to have more detail than they do. This is due to the fact that no matter what angle you look at, a Parallax map will always correct itself to show you the correct depth information from your view point. The best use of a Parallax map would be for cobblestone pathways and fine detail on surfaces.
diff --git a/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.JPN.udn b/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.JPN.udn
index 6d9505c6309c..15daf389d6f9 100644
--- a/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3322543
+INTSourceChangelist:3429260
Availability:Public
Title:仮想現実 (VR) のベスト プラクティス
Crumbs:
@@ -9,64 +9,25 @@ parent:Platforms/VR
type:overview
tags:VR
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms:title%
-[/PARAM]
-[PARAM:description]
- %Platforms:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms]
-[/PARAM]
-[/VAR]
-
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-platforms
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
[TOC(start:2)]
-ユーザーが最高の VR 体験ができるように、仮想現実 (VR) 向けのコンテンツ開発では
-一部のワークフローを調整する必要があります。このガイドの目的は、VR プロジェクト用のコンテンツの開発にあたり、
-留意しておくべき主要事項のいくつかを分かりやすく説明することが目的です。
+ユーザーに最高の VR 体験を提供するには、仮想現実 (VR) 向けコンテンツ開発の
+ワークフローを部分的に調整する必要があります。このガイドの目的は、VR プロジェクト用コンテンツの開発にあたり、
+留意しておくべき主要項目を分かりやすく説明することです。
## VR プロジェクト設定
ベースがブループリントまたは C++ のいずれの場合も、VR 用プロジェクトを新規作成するには、**Scalable 3D または 2D** グラフィクスと **No Starter Content** を使って **[Mobile / Tablet]** オプションを使用したプロジェクトを作成するのがベストです。
-そうすると、VR プロジェクトが起動直後にフレームで確実に実行されます。
+この方法だと、VR プロジェクトが起動直後にフレームで確実に実行されます。

## VR .INI 設定
-以下の .INI 設定は、UE4 が搭載された VR デモの Showdown のものです。
-これらの .INI 設定を使用する場合は、プロジェクト **「Config\DefaultEngine.INI」** ファイルの **[SystemSettings]** に追加しなければなりません。
+以下は、UE4 が搭載された VR デモの Showdown の.INI 設定です。
+これらの .INI 設定を使用する場合は、プロジェクトの **「Config\DefaultEngine.INI」** ファイルの **[SystemSettings]** に追加しなければなりません。
[SystemSettings]
- r.VolumeMultiplier=1.0
r.screenpercentage=130
r.SeparateTranslucency=0
r.HZBOcclusion=0
@@ -78,7 +39,6 @@ platforms
r.SSR.Quality=1
r.DepthOfFieldQuality=0
r.SceneColorFormat=2
- r.SSSSS=0
r.TranslucencyVolumeBlur=0
r.TranslucencyLightingVolumeDim=4
r.MaxAnisotropy=8
@@ -87,21 +47,20 @@ platforms
r.FastBlurThreshold=0
r.SSR.MaxRoughness=0.1
r.rhicmdbypass=0
- r.TiledReflectionEnvironmentMinimumCount=10
sg.EffectsQuality=2
sg.PostProcessQuality=0
## VR Instanced Stereo
-UE 4.11 のリリースでは、VR のパフォーマンスに対する影響を緩和するために Instanced Stereo レンダリングが実装されました。
+UE 4.11 のリリースでは、パフォーマンスに対する VR の負荷を緩和するために Instanced Stereo レンダリングが実装されました。
この機能は、**[Edit (編集)] -> [Project Settings (プロジェクト設定)] -> [Rendering (レンダリング)] -> VR** の [Instanced Stereo] オプションにチェックを入れて有効にします。

**Instanced Stereo** レンダリングを有効にした後、エンジンを再起動し、シェーダーを再コンパイルする必要があります。
- ベース パスと Early-Z パス (両方ともシリアルおよび並列レンダリング パス) は、機能が有効にされると、スタティック メッシュ、スケルタル メッシュ、スプライト パーティクル、メッシュ パーティクルで機能します。
- 現在、**Instanced Stereo** は PC (DirectX) と PS4 で機能します。それ以外のプラットフォームのサポートは 4.11 初回リリースの後になります。
- 以下のビデオで、VR での Standard Stereo レンダリングと VR での Instanced Stereo レンダリングを紹介しています。
+ この機能を有効にすると、ベース パスと Early-Z パス (両方ともシリアルおよび並列レンダリング パス) がスタティック メッシュ、スケルタル メッシュ、スプライト パーティクル、メッシュ パーティクルで使用できます。
+ 現在、**Instanced Stereo** は PC (DirectX) と PS4 で使用できます。それ以外のプラットフォームのサポートは 4.11 初回リリースの後になります。
+ VR における Standard Stereo レンダリングおよび Instanced Stereo レンダリングを以下の動画で紹介しています。
[OBJECT:EmbeddedVideo]
[PARAMLITERAL:width]
@@ -117,37 +76,38 @@ UE 4.11 のリリースでは、VR のパフォーマンスに対する影響を
### モバイルで VR マルチビューをサポート
-(サポート対象の) モバイル デバイスのいくつかで、VR マルチウィンドウがサポートされました。モバイル マルチビューはデスクトップ PC で使用できる Instanced Stereo レンダリングと似ており、ステレオ レンダリング用に最適化したパスをモバイル デバイスの CPU 上に提供して機能します。この機能を有効にするには、以下の手順を行います。
+(サポート対象の) モバイル デバイスのいくつかで VR マルチウィンドウがサポートされました。モバイル マルチビューはデスクトップ PC で使用できる Instanced Stereo レンダリングと似ており、ステレオ レンダリング用に最適化したパスをモバイル デバイスの CPU 上に提供して機能します。この機能を有効にするには、以下の手順を行います。
[region:warning]
-この機能は実験的なので、最新のメール ベースの GPU でのみ動作します。整備が整い、オンラインでより多くのモバイルをサポートするようになると、この警告は出なくなります。
+この機能は実験的なので、最新のメール ベースの GPU でのみ動作します。機能が成熟し、オンラインでより多くのモバイルをサポートするようになると、この警告は出なくなります。
[/region]
-1. メイン ツールバー から **[Edit (編集)]** > **[Project Settings (プロジェクト設定)] を選んで、エディタのプロジェクト設定を開きます。
+1. メイン ツールバー から **[Edit (編集)]** > **[Project Settings (プロジェクト設定)]** を選んで、エディタのプロジェクト設定を開きます。
1. 次に、**[Engine]** > **[Rendering]** > **[VR]** を開き、**[Mobile Multi-View (実験的)]** オプションを探します。
-1. [Mobile Multi-View (実験的)] オプションは、名前の横のチェックボックスにチェックを入れると有効になるので、その後で再起動して変更を反映させます。
+1. [Mobile Multi-View (実験的)] オプションは、名前の横のチェックボックスにチェックを入れて有効にしたら、変更を反映させるために再起動します。

この機能を使うためには、Android のビルド設定を以下のようにする必要があります。
-* **[Android]** > **[Build]** セクションで **[Support OpenGL ES2]** が有効になっていることを 確認してください。
+* **[Android]** > **[Build]** セクションの **[Support OpenGL ES2]** が有効になっていることを確認してください。
* **[Mobile HDR]** と **[Instanced Stereo Rendering]** が無効になっているか確認してください。
* 現時点では、Mobile Multiview は最新のメール ベースの GPU でのみ動作します。
-* 互換性のある GPU を搭載せずに本機能でプロジェクトをパッケージ化した場合、ランタイムに無効になります。
+* 互換性のある GPU を搭載せずに本機能でプロジェクトをパッケージ化した場合、この機能はランタイムで無効になります。
## VR パフォーマンスのプロファイル
-VR には負荷が大きすぎるアセットを追跡するには、プロジェクトのライフタイムを通じて可能な限り、CPU と GPU 上でプロジェクトが何をしているのかをプロファイルする必要があります。
+VR への負荷が大きすぎるアセットを追跡するには、プロジェクトのライフタイム中ずっと CPU と GPU へのプロジェクトの負荷要因をプロファイルする必要があります。
+
+* **GPU Profiling** - プロジェクト実行中に **CTRL + SHIFT + , (カンマ キー)** を一緒に押すと、GPU プロファイラが有効になります。キーを押すと新規ウィンドウが開き、以下の画像のようになります。
-* **GPU Profiling** - プロジェクトの実行中に **CTRL + SHIFT + , (カンマ キー)** を一緒に押すと、GPU プロファイラを有効にすることができます。キーを押すと、新規ウィンドウが開いて以下の画像のようになります。

-* **CPU Profiler** - CPU 上のプロジェクトの動作分析は、GPU のプロファイルよりも若干複雑になります。この方法についての詳細については、[パフォーマンス プロファイラ](https://docs.unrealengine.com/latest/INT/Engine/Performance/Profiler/index.html) をご覧ください。
+* **CPU Profiler** - CPU 上のプロジェクトの負荷分析は、GPU のプロファイルよりも若干複雑になります。この方法についての詳細については、[パフォーマンス プロファイラ](https://docs.unrealengine.com/latest/INT/Engine/Performance/Profiler/index.html) をご覧ください。
-## VR 前方レンダリング
+## VR フォワード レンダリング
(w:840)
@@ -159,28 +119,28 @@ VR には負荷が大きすぎるアセットを追跡するには、プロジ
## VR ポストプロセス設定
-VR のレンダリング要件は厳しいので、デフォルトで有効設定にされているほとんどの高度なポスト プロセス機能は無効にしておかないと、
- プロジェクトのパフォーマンスに問題が生じる可能性があります。プロジェクトで無効にするには、以下の手順に従います。
+VR のレンダリング要件は厳しいので、デフォルトで有効設定にされている高度なポスト プロセス機能のほとんどを無効にしておかないと、
+ プロジェクトのパフォーマンスに問題が生じる可能性があります。無効にするには、以下の手順に従います。
1. Post Process(PP) ボリュームがレベルにない場合は、レベルに追加します。
1. PP ボリュームを選択し、**[Post Process Volume]** セクションで **[Unbound (境界なし)]** オプションを有効にして、PP ボリュームの設定がレベル全体に適用されるようにします。

- 1. **[Post Process Volume]** の **[Settings (設定)]** を展開して、各セクションをクリックしてプロパティを有効にして、デフォルト値に値を設定します。デフォルト値 (通常 1.0) を **0** にすれば、この機能は無効になります。
+ 1. **[Post Process Volume]** の **[Settings (設定)]** を展開し、各セクションをクリックしてプロパティを有効にしてデフォルト値を設定します。デフォルト値 (通常 1.0) を **0** にすれば、この機能は無効になります。

[region:note]
- この操作をする場合、セクションすべてを開いてプロパティを 0 にする必要はありません。その変わりに、レンズフレア、スクリーン スペース反射、テンポラル アンチエイリアシング、SSAO、ブルームなどの非常に重たい機能や、パフォーマンスに影響を与える機能を最初に無効にします。
+ ただし、この場合、すべてのセクションのプロパティを 0 にする必要はありません。まず最初に、レンズフレア、スクリーン スペース反射、テンポラル アンチエイリアシング、SSAO、ブルームなどの非常に負荷の高い機能、またはパフォーマンスに影響を与える機能を無効にします。
[/region]
## VR ワールドのスケーリング
VR プラットフォームで可能な限り最高のユーザー体験を提供するためには、
-ワールドのスケーリングは必ず正確に行うことが最も重要です。正確なスケーリングを怠ると、ユーザーに感覚的な様々な問題を感じさせ、
+ワールドのスケーリングを正確に行うことが最も重要です。正確なスケーリングを怠ると、ユーザーに様々な感覚的な違和感を与え、
シミュレーション酔いをさせてしまう可能性もあります。オブジェクトは、プレイヤーのカメラから **0.75 から 3.5 メートル (m)** の範囲が一番見やすくなります。
UE4 内では、**1 アンリアル ユニット (UU) は 1 センチ (cm) と等しくなっています**。つまり、アンリアル内にあるオブジェクトは、
-プレイヤーのカメラ (VR 使用時) から **75 UU から 350 UU** 離れた位置にある時が最も見やすいということです。
+プレイヤーのカメラ (VR 使用時) から **75 UU から 350 UU** が最も見やすい距離ということです。
| 距離 | アンリアル ユニット(UU) での距離 |
| --- | --- |
@@ -190,8 +150,8 @@ UE4 内では、**1 アンリアル ユニット (UU) は 1 センチ (cm) と
UE4 内の **[World Settings (ワールド設定)]** にある **World to Meters** 変数でワールドのスケールを調整することができます。
この数字を増減すると、周りのワールドとの関係でユーザーは自分が大きく、あるいは小さく感じます。
-仮にコンテンツが 1 アンリアル ユニット = 1 CM でビルドされている場合、**[World To Meters]** を **「10」** に設定するとワールドが非常に大きくなります。
-逆に **World To Meters** を **1000** に設定すると、ワールドは非常に小さくなります。
+仮にコンテンツが 1 アンリアル ユニット = 1 CM でビルドされている場合、**[World To Meters]** を **[10]** に設定するとワールドが非常に大きくなります。
+逆に **[World To Meters]** を **[1000]** に設定すると、ワールドは非常に小さくなります。

@@ -202,8 +162,8 @@ UE4 内の **[World Settings (ワールド設定)]** にある **World to Meters
以下のベストプラクティスを **遵守** してください。でないと、
ユーザーに非常に不快な VR 体験をさせてしまう可能性があります。
-* HMD のネイティブ フレームレートを常に上回るようにするために、フレームレート、そして欲を言えばバッファを少し維持しなければなりません。
-フレームレートが低くてもシミュレーション酔いの原因になってしまうため、出来る限りゲームを最適化してください。
+* HMD のネイティブ フレームレートを常に上回るようにするために、フレームレート、そして欲を言えばバッファの維持は必要です。
+低いフレームレートもシミュレーション酔いの別の要因になるため、出来る限りゲームを最適化してください。
以下の表は、各種 HMD の UE4 のサポートとこれらのデバイス上での実行に VR プロジェクトが必要とするターゲット フレーム レートです。
| HMD デバイス | ターゲット フレーム レート |
| --- | --- |
@@ -214,40 +174,40 @@ UE4 内の **[World Settings (ワールド設定)]** にある **World to Meters
| Gear VR | 60 FPS|
| PSVR | 最高 120 FPS まで変動|
-* 開発者は VR デバイスの使用に慣れすぎているため、テスト対象者には最も不適切です。シミュレーション酔いの発生を防ぐためにも、テスト対象者はできるだけ幅広いタイプから選んでゲームをチェックしてください。
+* 開発者は VR デバイスの使用に慣れているため、テスト対象者としては最も不適切です。シミュレーション酔いの発生を防ぐためにも、テスト対象者はできるだけ幅広いタイプから選んでゲームをチェックしてください。
* シネマティクス カメラ、あるいはプレイヤーがカメラ移動を制御できなくするカメラは、ユーザーが最悪の VR 体験をする元凶になりやすいため、使用は避けてください。
* 視野角 (FOV) を手動でオーバーライトしないでください。また、エンド ユーザーに編集目的で視野角を公開しないでください。値はヘッドセットとレンズの物理ジオメトリと一致していなければなりません。これはデバイスの SDK と内部コンフィギュレーションにより自動的に設定されます。不整合があれば、頭を回転させたときにワールドが歪んでいるように見えて、不快感や吐き気につながります。
* カメラ効果に "Walking Bob" を使用しないでください (ファーストパーソンゲームでよくあります)。人の動きを真似するためにカメラを上下すると、プレイヤーにシミュレーション酔いを起させて、VR 体験を台無しにしてしまいます。
-* イベントをプレイヤーに伝えようとするときにカメラを揺らさないでください。手榴弾がプレイヤーの横で爆発した時、VR 以外のゲームではカメラが揺れるのは自然に思いますが、VR ゲームの場合はすぐにシミュレーション酔いを起こします。
-* VR ゲーム用にワールドとレベルを設計している場合、通常よりも暗いライトとカラーを使用するようにしてください。VR ゲームで強く鮮やかなライティングを使用すると、シミュレーション酔いが速く起こってしまう可能性があります。通常よりも落ち着いた描画や暗いライトを使用することで、こうした状況を回避します。
+* イベントをプレイヤーに伝えようとする時に、カメラを揺らさないでください。手榴弾がプレイヤーの横で爆発した時、VR 以外のゲームではカメラが揺れるのは自然に思いますが、VR ゲームの場合はすぐにシミュレーション酔いを起こします。
+* VR ゲーム用にワールドとレベルを設計している場合、通常よりも暗いライトとカラーを使用するようにしてください。VR ゲームで強く鮮やかなライティングを使用すると、シミュレーション酔いが速く起こる可能性があります。通常よりも落ち着いた描画や暗いライトを使用することで、こうした状況を回避します。
* 階段は避けて代わりにエレベーターを使ってください。プレイヤーが素早く移動すると、特に階段の上り下りの場合、方向感覚を失いやすくなります。
* プレイヤーは、徐々にフルスピードにするのではなく、一気にフルスピードにします。さらに、移動速度への加速は常に一定でなくてはなりません。
* 被写界深度あるいはモーション ブラー ポストプロセスは使用しないでください。ユーザーが見ているものへの影響が大きく、さらに重要なのは、ユーザーにシミュレーション酔いをさせてしまうからです。
-これはシミュレーション酔いの根本的原因の徹底調査結果ではありませんが、VR ゲームのプレイ中にプレイヤーの具合が悪くなる原因についての良いヒントになるはずです。
+これらは、シミュレーション酔いの根本的原因の徹底調査結果ではありませんが、VR ゲームのプレイ中にプレイヤーの具合を悪くする原因のヒンとして役立つはずです。
## VR カメラの設定
-UE4 で VR カメラを設定する場合、VR 体験を立って行うか、座って行うかによって全く異なります。
-座って行う体験の場合、カメラの基点をキャラクターが立っている状態まで人為的に高くする必要があります。
-ただしこの場合、カメラの原点が 0 (グラウンド上) になるようにしてください。
+VR 体験を立って行う場合と座って行う場合では、UE4 での VR カメラ設定がまったく異なります。
+体験を座って行う場合、カメラの基点をキャラクターが立っている状態まで人為的に高くする必要があります。
+この場合、カメラの原点が 0 (グラウンド上) になるようにしてください。
そのためには、キャラクターのベースでカメラ コンポーネントをシーン コンポーネントにアタッチするか、
Eye Height (目の位置) をキャラクター上のコリジョン カプセルの (マイナスの) Cylinder Height (シリンダーの高さ) の半分に設定します。
## VR キャラクター設定
VR ヘッドセットを使用したキャラクターのセットアップは、標準のキャラクターのセットアップとは若干異なります。例えば、キャラクターの
-高さ、幅、速度、カメラ位置、これらはすべて VR キャラクターに合わせて若干の修正が必要となります。
+高さ、幅、速度、カメラ位置を VR キャラクターに合わせて若干修正する必要があります。
[REGION:tip]
VR ワールドからオブジェクトをビルドする場合、
- デジタル オブジェクトのスケールを現実世界のオブジェクトと同じにすることが重要です。現実世界にある時のサイズより大きくしたり小さくすると、
- 達成できるはずの没入感を台無しにしてしまうことがあります。
+ デジタル オブジェクトのスケールを現実世界のオブジェクトと同じにすることが重要です。スケールが現実世界より大きくても小さくても、
+ 目標としている没入感を台無しにしてしまうことがあります。
[/REGION]
**キャラクターの高さと幅**
-キャラクターの高さと幅は、可能な限り現実世界の寸法と同じにします。サイズは大きすぎても小さすぎても
-実現しようとしている没入感を台無しにしてしまう可能性があります。
+キャラクターの高さと幅は、現実世界のサイズと同じにします。スケールが現実世界より大きくても小さくても、
+目標としている没入感を台無しにしてしまうことがあります。
|プロパティ| UE4 デフォルト | 推奨 VR |
|---| --- | --- |
@@ -256,8 +216,8 @@ VR ヘッドセットを使用したキャラクターのセットアップは
**移動速度**
-VR の移動速度は設定の推奨が難しいです。
-なぜなら、達成しようとする体験のタイプによって異なるからです。例えば、Elemental VR デモでは、
+VR の移動速度は、目標とする体験のタイプによって異なるため、
+推奨することが難しいです。例えば、Elemental VR デモでは、
移動速度を通常の約 1/4 にしています。
|プロパティ| UE4 デフォルト | 推奨 VR |
@@ -266,11 +226,11 @@ Movement Speed:|60 m/s|24 m/s|
**カメラ位置**
-VR カメラは基本的な目の高さよりも若干低めに配置して、キャラクターの目の高さになるように補正する必要があります。
+VR カメラは、基本的な目の高さよりも若干低めに配置して、キャラクターの目の高さになるように補正する必要があります。
|プロパティ| UE4 デフォルト | 推奨 VR |
|---| --- | --- |
-Base Eye Height:|180 cm|160 cm|
+基本的な目の高さ:|180 cm|160 cm|
@@ -279,35 +239,35 @@ Base Eye Height:|180 cm|160 cm|
VR コンテンツを制作する場合には、ユーザーは複数の角度からコンテンツを見ていることを忘れないでください。今まで問題なく行ったことであっても、
VR の場合は以下のように回避すべきことがあります。
-* **Scale** - VR ワールドのオブジェクトをスケールする場合は、実寸をできるだけ真似るのが最善の方法です。
-現実世界よりもオブジェクトを大きくしたり、小さくしたりすると、混乱を招き、シミュレーション酔いにつながることがあります。
+* **Scale** - VR ワールドのオブジェクトをスケールする場合は、できるだけ実際のサイズを使うのが最善の方法です。
+オブジェクトのサイズが現実世界と異なると混乱を招き、シミュレーション酔いにつながることがあります。
-* **Missing Polygon Faces** - 標準的なゲームでは、ポリゴン面をプレイヤーには見えないオブジェクトから削除することができます (そうした方がよいです)。
-しかし、VR ゲームではプレイヤーは周囲を見渡す自由度が高くなっており、この方法ではプレイヤーは見えないはずのものが見えてしまう結果になる場合があります。
+* **Missing Polygon Faces** - 標準的なゲームでは、ポリゴン面をプレイヤーには見えないオブジェクトから削除することができます (推奨します)。
+しかし、VR ゲームではプレイヤーは周囲をかなり自由に見渡すことができるため、この方法だとプレイヤーは見えないはずのものが見えてしまう場合があります。
* ** Which Type of Lighting to use** - VR プロジェクトの作成には、レンダリング負荷が最も低い **Static lighting (静的ライト)** と **ライトマップ** を常に使います。
動的ライティングを使う必要がある場合は、動的ライト数を可能な限り少なくして、お互いに触れ合うことのないようにしてください。
-屋外のシーンがある場合は、指向性ライトを Stationary light (固定ライト) ではなく動的に設定して、Cascaded Shadow Maps(CSM); を有効にしておくと、最もシンプルな設定でシャドウを付けることができます。
+屋外のシーンがある場合は、指向性ライトを固定ではなく動的に設定して、[Cascaded Shadow Maps(CSM)] を有効にしておくと、最もシンプルな設定でシャドウを付けることができます。
* ** VR と VFX** - [SubUV テクスチャ](https://docs.unrealengine.com/latest/INT/Engine/Rendering/ParticleSystems/Reference/Modules/SubUV/index.html) による炎や煙のシミュレーションなどのトリックは、VR ではうまく反映されません。
ほとんどのケースにおいて、爆発や煙のトレイルなどの VFX のシミュレーションには 2D パーティクルではなくスタティック メッシュを使います。
近距離フィールド エフェクトあるいはカメラに近いエフェクトは VR できれいに出ますが、これはエフェクトがスタティック メッシュ パーティクルで作成されている場合に限ります。
-* **VR と Transparency** - 透過処理は一般的に、何も変更がないことを確認するために各フレームを再評価する必要があるため、3D グラフィクスでのレンダリング透過処理は非常に負荷が高くなります。
-この再評価のために、VR のレンダリング透過処理は負荷があまりに大きすぎて、本来の長所を潰してしまいます。
+* **VR と Transparency** - 一般的に透過処理は、何も変更がないことを確認するために各フレームを再評価する必要があるため、3D グラフィクスでのレンダリング透過処理は非常に負荷が高くなります。
+この再評価のために、VR のレンダリング透過処理は負荷があまりに大きすぎて、本来の良さが生かせなくなります。
ただし、**DitherTemporalAA** マテリアル関数を使えばこの問題を回避することができます。
このマテリアル関数は、マテリアルが透過処理を使っているかのように見せることができますし、セルフ ソートなど一般的な透過処理の回避も可能です。

-* **Fake everything you can (できる限り真似をする)** - 動的シャドウ、ライティングなど、負荷の大きいレンダリング オプションを再生成する小技を頭に入れておくと、VR で望みのパフォーマンスを達成しやすくなります。
-Showdown では、キャラクターに動的シャドウをキャストさせると各フレームの負荷が大きすぎることが判明したので割愛しました。
+* **Fake everything you can (できる限り真似をする)** - 動的シャドウ、ライティングなど、負荷の大きいレンダリング オプションを再生成する小技を頭に入れておくと、VR で希望するパフォーマンスが得やすくなります。
+Showdown では、キャラクターに動的シャドウをキャストすると各フレームの負荷が大きすぎることが判明したので割愛しました。
すると今度は、キャラクターが移動中に宙に浮いているように見えてしまいました。
そこで、偽の BLOB シャドウを導入して修正すると、位置と強度を大幅に調整することができました。
これにより、キャラクターがグラウンドや他のオブジェクトに近づくと、シャドウをキャストしているように簡単に見せることができるようになりました。
[region:lightbox]
- [](VR_Fake_Shadow_Material.png)
+ [(w:1000)](VR_Fake_Shadow_Material.png)
[/region]
[region:caption]
@@ -331,7 +291,7 @@ Get Positional Tracking Camera Parameters|HMD にポジション トラッキン
Get Screen Percentage|VR モードで使用する画面比率を返します。|
Get World to Meters Scale|ワールドをマスター スケールに戻すことで、プレイヤーが感じるワールドのスケールに一致させます。|
Has Valid Tracking Position| HMD がポジション トラッキングをサポートする場合、現在トラッキングされているかどうかを示します。|
-Is Head Mounted Display Enabled|ヘッドマウント ディスプレイを現在使用しているかどうかを返します。|
+Is Head Mounted Display Enabled|ヘッドマウント ディスプレイを使用中かどうかを返します。|
Is In Low Persistence Mode | HMD が、Low persistence モードの場合、_true_ を戻します。そうでない場合は、_false_ を戻します。|
Reset Orientation And Position| 現在のヨーが前方方向で、現在のポジションがゼロポイント (ポジション トラッキング用) であると想定して、ロール (進行軸回転) とピッチ (上下動) を 0 に設定します。|
Set Clipping Planes| 遠近のクリッピング平面 (NCP と FCP それぞれ) のステレオ レンダリングを設定します。'stereo ncp = fcp' コンソール コマンドと似ていますが、このコマンドで設定した NCP and FCP は .INI ファイルには保存されません。|
@@ -353,20 +313,17 @@ Set World to Meters Scale| ワールドをマスター スケールに設定す
HMD 機能が原因で、ビデオ ゲーム開発には必須だったアート技術にあった影響がなくなってしまいました。
以下は、VR では期待どおりに動かない機能、およびそれに対する回避策です。
-|既知の問題| 回避策 |
-|---| --- |
-| Screen Space Reflections(SSR) (スクリーン スペース反射)|SSR は VR で機能しますが、生成される反射をワールド内の反射と一致させる上で問題が発生する可能性があります。負荷がかなり小さく、反射アライメントの問題も減るため、SSR ではなく [反射プローブ](Resources/Showcases/Reflections#反射背景) を使います。|
+
+* **スクリーン スペース反射 (SSR):** SSR は VR で機能しますが、生成される反射をワールド内の反射と一致させる上で問題が発生する可能性があります。負荷がかなり小さく、反射アライメントの問題も減るため、SSR ではなく [反射プローブ](Resources/Showcases/Reflections#反射背景) を使います。
**法線マッピングの問題**
VR でオブジェクト上の法線マップを見ると、これまでのような効果がなくなっていることがわかります。
法線マップが両眼表示や運動視差を考慮していないためです。
-このため、法線マップは VR デバイスを通してみるとフラットに見えます。
+このため、法線マップは VR デバイスではフラットに見えます。
ただしこれは、法線マップを使用する必要がないという意味ではありません。
法線マップにしようとしているデータをジオメトリで作成すべきかどうかを、しっかり評価する必要があるという意味です。
以下は、法線マップの代わりに使用することができる技術です。
-|形状タイプ|説明|
-|---|---|
-|[視差マッピング](http://en.wikipedia.org/wiki/Parallax_mapping)| 視差マッピングは、法線マッピングでは考慮しないデプスキューを考慮することで法線マッピングを次のレベルに高めます。視差マッピング シェーダーは、オブジェクトを実際よりも詳細に表示して、深さ情報を詳しく表示できます。これは、どのアングルから見ても、その視点からの正確な深度情報を表示するように視差マップが常に補正しているからです。視差マップは、敷石道や表面の細部などの使用に最適です。
+* **[視差マッピング](http://en.wikipedia.org/wiki/Parallax_mapping):** 視差マッピングは、法線マッピングでは考慮しないデプスキューを考慮することで法線マッピングを次のレベルに高めます。視差マッピング シェーダーは、オブジェクトを実際よりも詳細に表示して、深さ情報を詳しく表示できます。これは、どのアングルから見ても、その視点からの正確な深度情報が表示されるように視差マップが常に補正しているからです。視差マップは、敷石道や表面の細部の表現に最適です。
diff --git a/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.KOR.udn b/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.KOR.udn
index 8779eb66aa4f..60798ed58676 100644
--- a/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/VR/ContentSetup/VRContent.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3322543
+INTSourceChangelist:3429260
Availability:Public
Title:가상 현실 실전 사례
Crumbs:
@@ -9,44 +9,6 @@ parent:Platforms/VR
type:overview
tags:VR
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms:title%
-[/PARAM]
-[PARAM:description]
- %Platforms:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms]
-[/PARAM]
-[/VAR]
-
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-platforms
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
[TOC(start:2)]
@@ -66,7 +28,6 @@ VR 프로젝트를 새로 만들 때, 프로젝트가 블루프린트 기반이
이러한 .INI 세팅을 사용하려는 경우, **Config\ DefaultEngine.INI** 파일의 **SystemSettings** 아래 추가해 줘야 합니다.
[SystemSettings]
- r.VolumeMultiplier=1.0
r.screenpercentage=130
r.SeparateTranslucency=0
r.HZBOcclusion=0
@@ -78,7 +39,6 @@ VR 프로젝트를 새로 만들 때, 프로젝트가 블루프린트 기반이
r.SSR.Quality=1
r.DepthOfFieldQuality=0
r.SceneColorFormat=2
- r.SSSSS=0
r.TranslucencyVolumeBlur=0
r.TranslucencyLightingVolumeDim=4
r.MaxAnisotropy=8
@@ -87,7 +47,6 @@ VR 프로젝트를 새로 만들 때, 프로젝트가 블루프린트 기반이
r.FastBlurThreshold=0
r.SSR.MaxRoughness=0.1
r.rhicmdbypass=0
- r.TiledReflectionEnvironmentMinimumCount=10
sg.EffectsQuality=2
sg.PostProcessQuality=0
@@ -99,7 +58,7 @@ UE 4.11 릴리즈에는 UE4 에서의 VR 퍼포먼스 저하를 개선시키는

인스턴스드 스테레오 렌더링을 켠 이후에는 엔진 재시작과 셰이더 리컴파일이 필요할 것입니다.
- 베이스 패스와 얼리-z 패스는 (직렬 및 병렬 렌더링 패쓰 양쪽에서) 이 기능이 켜진 스태틱 메시, 스켈레탈 메시, 스프라이트 파티클, 메시 파티클과 함께 작동합니다.
+ 베이스 패스와 얼리-z 패스(pass)는 (직렬 및 병렬 렌더링 패스 양쪽에서) 이 기능이 켜진 스태틱 메시, 스켈레탈 메시, 스프라이트 파티클, 메시 파티클과 함께 작동합니다.
인스턴스드 스테레오는 현재 PC (DirectX) 와 PS4 에서 작동하며, 다른 플랫폼은 초기 4.11 릴리즈 이후 지원될 것입니다.
VR 렌더링을 스탠다드 스테레오로 할 때와 인스턴스드 스테레오로 할 때를 보여주는 비디오입니다.
@@ -307,7 +266,7 @@ Showdown 에서 캐릭터가 다이내믹 섀도를 드리우게 했더니 매
이런 식으로 캐릭터가 바닥이나 다른 오브젝트 가까이 갈 때 그림자를 드리우는 것과 같은 효과를 내는 데 도움이 되었습니다.
[region:lightbox]
- [](VR_Fake_Shadow_Material.png)
+ [(w:1000)](VR_Fake_Shadow_Material.png)
[/region]
[region:caption]
@@ -353,9 +312,7 @@ Set World to Meters Scale| 월드대 미터 스케일 설정 - 월드대 미터
HMD 작동 방식으로 인하여 기존 비디오 게임 개발에 자주 쓰이던 아트 기법 몇 가지는 더이상 전과 같은 효과를 내지 못하게 되었습니다.
여기서는 VR 에서 예상대로 작동하지 않는 기능과, 그에 대한 우회법을 살펴봅니다.
-|알려진 문제점| 우회법 |
-|---| --- |
-| Screen Space Reflections(SSR)| 스크린 스페이스 리플렉션 - SSR 이 VR 에서 작동은 합니다만, 거기서 만들어지는 반사면이 월드의 실제 내용과 일치하지 않는 문제가 있을 수 있습니다. SSR 대신 [리플렉션 프로브](Resources/Showcases/Reflections) 를 사용하면, 비용도 절감되고 리플렉션 일치 문제도 덜합니다.|
+* **Screen Space Reflections(SSR):** 스크린 스페이스 리플렉션 - SSR 이 VR 에서 작동은 합니다만, 거기서 만들어지는 반사면이 월드의 실제 내용과 일치하지 않는 문제가 있을 수 있습니다. SSR 대신 [리플렉션 프로브](Resources/Showcases/Reflections) 를 사용하면, 비용도 절감되고 리플렉션 일치 문제도 덜합니다.
**노멀 매핑 문제**
@@ -366,7 +323,5 @@ VR 에서 오브젝트의 노멀 맵을 볼 때, 그 임팩트가 예전만 못
데이터를 면밀히 조사하여 노멀 맵으로 내고자 했던 효과를 그냥 지오메트리에 만들어 버리는 것이 낫지 않을지 판단을 해야 한다는 것입니다.
노멀 맵 대신 사용할 수 있는 기법 몇 가지는 다음과 같습니다.
-|셰이더 유형 | 설명 |
-|---|---|
-|[패럴랙스 매핑](http://en.wikipedia.org/wiki/Parallax_mapping)| 패럴랙스 매핑은 노멀 매핑이 고려하지 않는 뎁스 큐를 고려하여 한 단계 발전된 것입니다. 패럴랙스 매핑 셰이더는 오브젝트의 디테일을 원래보다 살려 주어 깊이 정보를 더욱 잘 표시해 줍니다. 그 이유는 어느 각도에서 보든, 패럴랙스 맵은 그 시점에서 올바른 깊이 정보를 표시하는 데 그 자체적으로는 항상 맞기 때문입니다. 패럴랙스 맵을 사용하기 가장 좋은 곳은, 자갈밭 길이나 디테일이 세밀한 표면입니다.
+* **[패럴랙스 매핑](http://en.wikipedia.org/wiki/Parallax_mapping):** 패럴랙스 매핑은 노멀 매핑이 고려하지 않는 뎁스 큐를 고려하여 한 단계 발전된 것입니다. 패럴랙스 매핑 셰이더는 오브젝트의 디테일을 원래보다 살려 주어 깊이 정보를 더욱 잘 표시해 줍니다. 그 이유는 어느 각도에서 보든, 패럴랙스 맵은 그 시점에서 올바른 깊이 정보를 표시하는 데 그 자체적으로는 항상 맞기 때문입니다. 패럴랙스 맵을 사용하기 가장 좋은 곳은, 자갈밭 길이나 디테일이 세밀한 표면입니다.
diff --git a/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.INT.udn b/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.INT.udn
index 1f53ed2b94fb..bb29f773e63c 100644
--- a/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.INT.udn
+++ b/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.INT.udn
@@ -1,7 +1,7 @@
Availability:Public
Title:Motion Controller Component Setup
Crumbs:%ROOT%, Platforms
-Description:Information over how to setup Motion Controllers for VR interaction.
+Description:Information on how to setup Motion Controllers for VR interaction.
Navigation:platform
Version:4.9
Skilllevel:Intermediate
@@ -11,7 +11,7 @@ type:overview
[TOC(start:2)]
You can add a Motion Controller as a component to your Pawn / Character, set which "Hand" it is supposed to represent.
-In the following document we will cover how you can set up your Virtual Reality project to make use of Motion Controllers.
+In the following document, we will cover how you can set up your Virtual Reality project to make use of Motion Controllers.
[region:tip]
Before going any further make sure that your VR Headset and Motion Controllers are plugged into your PC and required the drivers installed.
@@ -21,7 +21,7 @@ See the [VR Documents](Platforms/VR) for information on how to get various VR he
## Motion Controller Setup
Setting up a VR project to make use of Motion Controllers requires adding a Motion Controller Component to your Pawn and configuring it.
-In the this section we will cover how you can quickly get Motion Controllers working with your project.
+In this section, we will cover how you can quickly get Motion Controllers working with your project.
[region:note]
Please note this setup can be applied to any Pawn in any UE4 project.
@@ -29,60 +29,84 @@ Please note this setup can be applied to any Pawn in any UE4 project.
1. In the **Content Browser** open the **Player Pawn** Blueprint.
- 
+ [REGION:lightbox]
+ [(w:427)](Open_VR_Pawn.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
1. Once the Blueprint is opened, navigate to the **Viewport** tab and in the **Components** section click on the **Add Component** button to expose the components that can be added to this Blueprint.
- 
+ [REGION:lightbox]
+ [(w:418)](Find_Components.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
1. From the list that is shown search for the Motion Controller using the word **Motion** as the search term.
- When the Motion Controller component has been located, click on it to add it to the components list.
+ When the Motion Controller component has been located, click on it to add it to the components list.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- kcyHnfpmWbU
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kcyHnfpmWbU
+ [/PARAMLITERAL]
+ [/OBJECT]
1. Once the Motion Controller has been added, select it by clicking on it and then in the **Details** panel under the **Motion Controller** section make sure the **Hand** is set to **Left**.
- 
+ [REGION:lightbox]
+ [(w:418)](Setting_Up_Components.png)
+ [/REGION]
-1. To give the Motion Controller a visual representation in the world, select the **Motion Controller Component** in the **Components panel** and click the **Add Component** button to add a **Static Mesh Component**.
- Drag the Static Mesh Component on to the Motion Controller to parent it to the Motion Controller Component then,
- in the Details panel, assign a Static Mesh asset to the Static Mesh property of the new component.
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- x4vjDqnHQnk
- [/PARAMLITERAL]
- [/OBJECT]
+1. To give the Motion Controller a visual representation in the world, select the **Motion Controller Component** in the **Components panel** and click the **Add Component** button to add a **Static Mesh Component**.
+ Drag the Static Mesh Component on to the Motion Controller to parent it to the Motion Controller Component then,
+ in the Details panel, assign a Static Mesh asset to the Static Mesh property of the new component.
- [region:tip]
- If your project does not currently have any Static Mesh assets, import one of your own meshes or click the Marketplace button in the toolbar to visit the Marketplace and download some assets to use in your project.
- If the Static Mesh you selected is too big or too small you can scale to your likening using the Scale section of the Transform section in the Details panel.
- [/region]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ x4vjDqnHQnk
+ [/PARAMLITERAL]
+ [/OBJECT]
-1. Add another Motion Controller Component parented to the root and set it to be the **Right Hand**. Add a Static Mesh Component parented to the new Motion Controller Component and apply the right hand mesh to it..
+ [region:tip]
+ If your project does not currently have any Static Mesh assets, import one of your meshes or click the Marketplace button in the toolbar to visit the Marketplace and download some assets to use in your project.
+ If the Static Mesh you selected is too big or too small, you can scale to your likening using the Scale section of the Transform section in the Details panel.
+ [/region]
- 
+1. Add another Motion Controller Component parented to the root and set it to be the **Right Hand**. Add a Static Mesh Component parented to the new Motion Controller Component and applied the right-hand mesh to it.
- [region:note]
- In the image above, the the two cone shaped meshes have been moved apart to show that there are two of them.
- When setting up your project leave both Static Mesh Components at 0,0,0 so that they are located right on top of one another.
- [/region]
+ [REGION:lightbox]
+ [(w:418)](Finshed_MC_Setup.png)
+ [/REGION]
+
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+
+ [region:note]
+ In the image above, the two cone shaped meshes have been moved apart to show that there are two of them.
+ When setting up your project leave both Static Mesh Components at 0,0,0 so that they are located right on top of one another.
+ [/region]
## Working with Motion Controllers
@@ -94,7 +118,7 @@ If you search inside of the Blueprint Editor **Palette** using **MotionControlle

-When looking at the available Motion Controller input options there is a capital **L** or **R** next to the name of what that value is supposed to control.
+When looking at the available Motion Controller input options, there is a capital **L** or **R** next to the name of what that value is supposed to control.
This L or R means that this is for the **Left** or **Right** Motion Controller.

@@ -102,100 +126,117 @@ This L or R means that this is for the **Left** or **Right** Motion Controller.
## Using Motion Controllers
-In the following section we will set the Motion Controllers up so that when you press the trigger button on the **Right-Handed** Motion Controller a Blueprint containing a Static Mesh is spawned into the world, while pressing the trigger button on the **Left-Handed** Motion Controller will remove the mesh from the world.
+In the following section, we will set the Motion Controllers up so that when you press the trigger button on the **Right-Handed** Motion Controller, a Blueprint containing a Static Mesh is spawned into the world, while pressing the trigger button on the **Left-Handed** Motion Controller will remove the mesh from the world.
-1. In the Content Browser create a new Blueprint named **BP_Sphere** and open it up by double-clicking on it.
+1. In the Content Browser, create a new Blueprint named **BP_Sphere** and open it up by double-clicking on it.
1. Navigate to the **Viewport** tab and add a new **Static Mesh Component**.
- 
+ 
1. Move the Static Mesh Component on top of the **Default Screen Root** and set the Static Mesh used to the **ArcadeEditorSphere** and compile and save your Blueprint.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- PszzV_I0xso
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ PszzV_I0xso
+ [/PARAMLITERAL]
+ [/OBJECT]
- [region:note]
- If you can not find the **ArcadeEditorSphere** make sure that you have the **Engine Content** folder enabled by going to **View Options** and then clicking on the **Engine Content** folder to enable it showing up in the Content Browser.
- [/region]
+ [region:note]
+ If you can not find the **ArcadeEditorSphere** make sure that you have the **Engine Content** folder enabled by going to **View Options** and then clicking on the **Engine Content** folder to enable it showing up in the Content Browser.
+ [/region]
1. Close the BP_Sphere Blueprint and open up your **Pawn** Blueprint.
1. In the my Blueprint panel, navigate to the **Event Graph** tab and create a new **Actor** variable with the name **Objects** with its **Variable Type** to array.
-
- 
+
+ 
1. This Blueprint is going to allow us to add and remove a specified object from the world when the trigger button on the Motion Controllers is pressed. To do this, inside of the Event Graph add and connect the following Blueprint nodes together. When completed you should have something that looks like the following image.
- 
+ [REGION:lightbox]
+ [(w:459)](Add_Objects_Setup.png)
+ [/REGION]
- [region:note]
- The **Spawn Offset** was added to ensure that the objects could be seen while being placed in this example. The offset is not required and can be omitted by connecting the **Return Value** from the **GetActorTransform** node to the **Spawn Transform** input on the **SpawnActor** node.
- 
- [/region]
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+
+ [region:note]
+ The **Spawn Offset** was added to ensure that the objects could be seen while being placed in this example. The offset is not required and can be omitted by connecting the **Return Value** from the **GetActorTransform** node to the **Spawn Transform** input on the **SpawnActor** node.
+ [REGION:lightbox]
+ [(w:367)](Add_Objects_Setup_Alt.png)
+ [/REGION]
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+ [/region]
1. Select the **Spawn Actor** node and assign the ** BP_Sphere** Blueprint that was created in step one to the Class input.
- 
+ 
-1. This section of the BLueprint will allow us to remove the objects that were placed in the world. To add this functionality, add and connect the following Blueprint nodes together. When completed you should have something that looks like the following image.
+1. This section of the Blueprint will allow us to remove the objects that were placed in the world. To add this functionality, add and connect the following Blueprint nodes together. When completed you should have something that looks like the following image.
- 
+ [REGION:lightbox]
+ [(w:459)](Remove_Objects_Setup.png)
+ [/REGION]
- [region:note]
- The keyboard input keys were placed in the graph for quick testing. You do not have to include those inputs for this to work with Motion Controllers.
- [/region]
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+
+ [region:note]
+ The keyboard input keys were placed in the graph for quick testing. You do not have to include those inputs for this to work with Motion Controllers.
+ [/region]
1. **Compile** and **Save** the changes to your Pawn Blueprint and then press the **Play** button.
- Once the level has started, try adding objects to the world by pressing the **K** key on the keyboard or by pressing the Right trigger on the Right Handed Motion Controller.
- To remove objects from the world, press the **T** key on the keyboard or press the **Left** trigger on the Left Handed Motion Controller which you can see demonstrated in the video below.
+ Once the level has started, try adding objects to the world by pressing the **K** key on the keyboard or by pressing the Right Trigger on the Right Handed Motion Controller.
+ To remove objects from the world, press the **T** key on the keyboard or press the **Left** trigger on the Left Handed Motion Controller which you can see demonstrated in the video below.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- VXUowSUKT9I
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ VXUowSUKT9I
+ [/PARAMLITERAL]
+ [/OBJECT]
## Training Streams
[REGION:topics third]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- Setting Up Motion Controllers
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- 6ALnsdQnkVQ
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ Setting Up Motion Controllers
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 6ALnsdQnkVQ
+ [/PARAMLITERAL]
[/OBJECT]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- Creating Interactions in VR With Motion Controllers Part 1
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- eRNtgFo6iU0
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ Creating Interactions in VR With Motion Controllers Part 1
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ eRNtgFo6iU0
+ [/PARAMLITERAL]
[/OBJECT]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- Creating Interactions in VR With Motion Controllers Part 2
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- utOahIZgKgc
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ Creating Interactions in VR With Motion Controllers Part 2
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ utOahIZgKgc
+ [/PARAMLITERAL]
[/OBJECT]
[/REGION]
diff --git a/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.JPN.udn b/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.JPN.udn
index 7623e317f45e..596b2cbdd6ca 100644
--- a/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.JPN.udn
@@ -1,200 +1,243 @@
-INTSourceChangelist:2940199
+INTSourceChangelist:3456880
Availability:Public
-Title:Motion Controller Component の設定
+Title:モーション コントローラー コンポーネントの設定
Crumbs:%ROOT%, Platforms
Description:VR インタラクション用モーション コントローラーの設定方法
Navigation:platform
-Version:4.9
-SkillLevel:Intermediate
+version:4.9
+Skilllevel:Intermediate
parent:Platforms/VR
type:overview
[TOC(start:2)]
-アンリアル エンジン 4.9 のリリースで、アンリアル エンジンのモーション コントローラーとのインターフェースが大幅に変更されました。
-モーション コントローラーをコンポーネントとしてポーン / キャラクターに追加し、どちらの「手」にするかが設定可能になって、モーション コントローラーが使用できるようになりました。
+モーション コントローラーをコンポーネントとしてポーン / キャラクターに追加し、「右手 / 左手」の指定およびモーション コントローラーの使用が可能になりました。
このガイドでは、モーション コントローラーを使うための VR プロジェクトの設定方法について説明します。
[region:tip]
VR ヘッドセットとモーション コントローラーがパソコンに接続されていますか。必要なドライバーはインストール済みでしょうか。今一度ご確認ください。
-お済でない場合は [VR に関する情報](Platforms/VR) をご覧ください。UE4 で作業するために各種 VR ヘッドセットの取得方法が記載されています。
+各種 VR ヘッドセットを UE4 向けの設定する方法には、[VR](Platforms/VR) をご覧ください。
[/region]
## モーション コントローラーの設定
-モーション コントローラーを数ステップで簡単に完了できるように VR プロジェクトを設定します。
-次のセクションでは、モーション コントローラーでプロジェクトで簡単に使う方法を説明します。
+ VR プロジェクトでモーション コントローラー コンポーネントを使用する設定にするには、モーション コントローラー コンポーネントをポーンに追加し設定する必要があります。
+このセクションでは、モーション コントローラーでプロジェクトで簡単に使う方法を説明します。
-1. コンテンツ ブラウザから Player Pawn ブループリントを開きます。
+[region:note]
+この設定は、すべての UE4 プロジェクトに適用できます。
+[/region]
- 
+1. **コンテンツ ブラウザ** で **Player Pawn** ブループリントを開きます。
- [region:note]
- 次のステップは、VR プロジェクトに特化されておらず、すべてのプロジェクトのポーンに適用できます。
- [/region]
+ [REGION:lightbox]
+ [(w:427)](Open_VR_Pawn.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
1. ブループリントを開いたら、**[Viewport]** タブの **[Components]** セクションの **[Add Component (コンポーネントを追加)]** ボタンをクリックして、このブループリントに追加できるコンポーネントを表示します。
- 
+ [REGION:lightbox]
+ [(w:418)](Find_Components.png)
+ [/REGION]
+
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
1. **「Motion」** というワードを使って、表示された一覧の中でモーション コントローラーを検索します。
- Motion Controller コンポーネントが見つかったら、クリックしてコンポーネント リストに追加します。
+ Motion Controller コンポーネントが見つかったら、クリックしてコンポーネント リストに追加します。
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- kcyHnfpmWbU
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kcyHnfpmWbU
+ [/PARAMLITERAL]
+ [/OBJECT]
1. モーション コントローラーが追加されたらクリックして、**[Motion Controller]** セクションの **[Details (詳細)]** パネルの **[Hand]** が **[Left (左)]** に設定されていることを確認してください。
- 
+ [REGION:lightbox]
+ [(w:418)](Setting_Up_Components.png)
+ [/REGION]
-1. ゲームを起動すればモーション コントローラーが動作するようになっていますが、ビジュアルは一切レンダリングされていないのでデフォルトでは何も見えません。
- これを修正するには、**Static Mesh Component** を [Components] セクションに追加して [Static Mesh] セクションのStatic Mesh コンポーネントの [Details (詳細)] セクションでドロップダウン メニューから使用するスタティックメッシュを選択します。
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- x4vjDqnHQnk
- [/PARAMLITERAL]
- [/OBJECT]
+1. モーション コントローラーをワールドで視覚表示するには、**[Components] パネル** で **[Motion Controller Component]** を選択し、**[Add Component]** ボタンで **[Static Mesh Component]** を追加します。
+ そのスタティックメッシュ コンポーネントをモーション コントローラー上にドラッグして、モーション コントローラー コンポーネントの親とし、
+ [Details (詳細)] パネルで、スタティックメッシュ アセットを新規コンポーネントのスタティックメッシュ プロパティに割り当てます。
- [region:tip]
- コンテンツ ブラウザにスタティック メッシュが表示されない場合、スタティック メッシュをインポートするか、または **[Engine Content]** を有効にして、そこから選択する必要があります。
- 選択したスタティック メッシュが大きすぎたり小さすぎたりする場合、[Transform (トランスフォーム)] メニューの [Scale] セクションで自由に調整ができます。
- [/region]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ x4vjDqnHQnk
+ [/PARAMLITERAL]
+ [/OBJECT]
-1. 次は [Right Hand] を追加してこの手順を繰り返します。完了すると、Pawn ブループリントは次の画像のようになっています。
+ [region:tip]
+ 現在プロジェクトにスタティクメッシュ アセットがない場合は、メッシュを 1 つインポートするか、ツールバーの [Marketplace] ボタンをクリックしてマーケットプレイスへ移動し、プロジェクトで使うアセットをいくつかダウンロードしてください。
+ 選択したスタティック メッシュが大きすぎたり小さすぎたりする場合、[Details (詳細)] パネルの [Transform (トランスフォーム)] メニューの [Scale] セクションで好きな大きさに調整できます。
+ [/region]
- 
+1. ルートの親となる別の Motion Controller コンポーネントを追加し、**[Right Hand (右手)]** となるように設定します。新しい Motion Controller コンポーネントの親とし、右手メッシュを適用した Static Mesh コンポーネントを追加します。
- [region:note]
- 上の画像では、コーン形状の 2 つのメッシュが 2 つであることを示すために分かれて移動しました。
- プロジェクトを設定する際、お互いの右上に来るように両方のメッシュは 0,0,0 のままにしておきます。
- [/region]
+ [REGION:lightbox]
+ [(w:418)](Finshed_MC_Setup.png)
+ [/REGION]
-## モーション コントローラーの作業
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
-UE4 内でのモーション コントローラーの作業は、ゲームパッドやキーボードなどの入力デバイスの場合と似ています。
-**MotionController** を検索ワードにしてブループリント エディタの **Palette** を検索すると、Motion Controller で利用可能なすべてのボタンと制御が表示されます。
+ [region:note]
+ 上の画像では、2 つ存在することを表すために、コーン形状を 2 つに分けました。
+ プロジェクトを設定する際、お互いの右上に来るように両方のスタティックメッシュ コンポーネントは 0,0,0 のままにしておきます。
+ [/region]
+
+## モーション コントローラーを使った作業
+
+UE4 内でのモーション コントローラーを使った作業は、ゲームパッドやキーボードなどの入力デバイスの場合と似ています。
+
+[region:tip]
+ブループリント エディタの **Palette** で **MotionController** を検索すると、Motion Controller で利用可能なすべてのボタンと制御が表示されます。
+[/region]

-利用可能な Motion Controller 入力オプションを見てみると、大文字の **L** または **R** の隣に、その値が制御する対象の名前があります。
-L と R は、モーション コントローラーの **Left** または **Right** であることを意味しています。
+利用可能な Motion Controller 入力オプション、その横に大文字の **L** / **R**、一番右にはその値が制御する対象が表示されます。
+L / R は、モーション コントローラーの **Left** または **Right** です。

## モーション コントローラーの使用方法
-次のセクションでは、**Right-Handed** モーション コントローラーでトリガー ボタンが押された時にスタティック メッシュを含むブループリントがワールドにスポーンされるように、モーション コントローラーを設定していきます。
-次に **Left-Handed** Motion Controller のトリガー ボタンを押すと、ワールドにスポーンされたスタティック メッシュを含むブループリントがワールドから削除されます。
+次のセクションでは、**Right-Handed** モーション コントローラーでトリガー ボタンが押されるとスタティック メッシュを含むブループリントがワールドにスポーンされるように、モーション コントローラーを設定していきます。
-1. コンテンツ ブラウザ内にブループリントを新規作成し、**BP_Sphere** という名前を付けて、ダブルクリックして開きます。
+1. コンテンツ ブラウザに新規マテリアルを作成し、**「MAT_Floor」** と名前を付けてダブルクリックして開きます。
-1. BP_Sphere Blueprint が開いたら、**[Viewport]** タブを開いて **Static Mesh コンポーネント** を追加します。
+1. **[Viewport]** タブを開いて **スタティックメッシュ コンポーネント** を追加します。
- 
+ 
-1. Static Mesh コンポーネントを **Default Screen Root** の上に移動させ、**ArcadeEditorSphere** に使用する設定にして、ブループリントをコンパイルし保存します。
+1. スタティックメッシュ コンポーネントを **Default Screen Root** の上に移動させ、**ArcadeEditorSphere** に使用する設定にして、ブループリントをコンパイルし保存します。
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- PszzV_I0xso
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ PszzV_I0xso
+ [/PARAMLITERAL]
+ [/OBJECT]
- [region:note]
- **ArcadeEditorSphere** が表示されない場合は、**[View Options (表示オプション)]** で **「Engine Content」** フォルダを有効にし、**「Engine Content」** フォルダをクリックしてコンテンツ ブラウザで表示されるようにします。
- [/region]
+ [region:note]
+ **ArcadeEditorSphere** が表示されない場合は、**[View Options (表示オプション)]** で **「Engine Content」** フォルダを有効にし、**「Engine Content」** フォルダをクリックしてコンテンツ ブラウザで表示されるようにします。
+ [/region]
-1. BP_Sphere ブループリントを終了して **Pawn** ブループリントを開き、**[Event Graph]** タブをクリックします。
+1. BP_Sphere ブループリントを終了して **Pawn** ブループリントを開きます。
-1. **「Objects」** という名前で **Actor** 変数を新規作成し、**Variable Type** を配列に設定します。
+1. [My Blueprint] パネルの **[Event Graph]** タブを開き、**「Objects」** という名前の **Actor** 変数を新規作成し、**Variable Type** を配列に設定します。
+
+ 
- 
+1. モーション コントローラーのトリガー ボタンが押されると、このブループリントでワールドから指定オブジェクトの追加 / 削除が可能になります。そのためには、イベント グラフに次のブループリント ノードを追加して接続します。完了すると以下の画像のようになります。
-1. ワールドにオブジェクトを追加する機能を作成するには、イベント グラフに次のブループリント ノードを追加して接続します。完了すると以下の画像のようになります。
+ [REGION:lightbox]
+ [(w:459)](Add_Objects_Setup.png)
+ [/REGION]
- 
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
- [region:note]
- この例に配置されてたオブジェクトは必ず表示されるように、**Spawn Offset** が追加されました。この部分はなくても機能しますので、**GetActorTransform** ノードから **Return Value** を受け取り、**SpawnActor** ブループリント ノードの **Spawn Transform** 入力へつなぐことで省略可能です。
- 
- [/region]
+ [region:note]
+ この例に配置されるオブジェクトが必ず表示されるように、**Spawn Offset** が追加されました。この部分はなくても機能します。**GetActorTransform** ノードから **Return Value** を受け取り、**SpawnActor** ブループリント ノードの **Spawn Transform** 入力へつなぐことで省略可能です。
+ [REGION:lightbox]
+ [(w:367)](Add_Objects_Setup_Alt.png)
+ [/REGION]
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
+ [/region]
-1. Add オブジェクトの設定が完了したら、**Spawn Actor** ブループリント ノードを選んで、1 つ前のステップで作成した ** BP_Sphere** ブループリントを **[Class]** セクションから選択します。
+1. **Spawn Actor** ノードを選んで、1 つ前のステップで作成した ** BP_Sphere** ブループリントを Class 入力へ割り当てます。
- 
+ 
-1. ワールドにおかれたオブジェクトを削除する機能を作成するには、次のブループリント ノードを追加して接続します。完了すると以下の画像のようになります。
+1. ブループリントのこのセクションで、ワールドに配置されたオブジェクトの削除が可能になります。この機能を追加するには、以下のブループリント ノードを一緒に追加 / 接続します。完了すると以下の画像のようになります。
- 
+ [REGION:lightbox]
+ [(w:459)](Remove_Objects_Setup.png)
+ [/REGION]
- [region:note]
- 簡単にテストするためにキーボード入力キーをグラフ内に置きました。モーション コントローラーの作業には、この入力を加える必要はありません。
- [/region]
+ [REGION:caption]
+ クリックしてフルサイズで表示
+ [/REGION]
-1. Pawn ブループリントに変更を **コンパイル** して **保存** し、**[Play (再生)]** ボタンを押してレベルをプレビューします。
- レベルが始まったら、キーボードの **K** キーを押すか、Right Handed Motion Controller の Right trigger を押してオブジェクトをワールドに追加してみてください。
- ワールドからオブジェクトを取り除くには、キーボードの **T** キーを押すか、Left Handed Motion Controller の **Left** trigger を押します。以下のビデオで実演しています。
+ [region:note]
+ 簡単にテストするためにキーボード入力キーをグラフ内に置きました。モーション コントローラーでの作業には、この入力は必要はありません。
+ [/region]
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- VXUowSUKT9I
- [/PARAMLITERAL]
- [/OBJECT]
+1. Pawn ブループリントに変更を **コンパイル** して **保存** し、**[Play]** ボタンを押します。
+ レベルが始まったら、キーボードの **K** キーを押すか、右手のモーション コントローラーの [Right Trigger] を押してオブジェクトをワールドに追加してみてください。
+ ワールドからオブジェクトを取り除くには、キーボードの **T** キーを押すか、左手のモーション コントローラーの **Left** Trigger を押します。以下の動画で実際の操作を確認できます。
+
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ VXUowSUKT9I
+ [/PARAMLITERAL]
+ [/OBJECT]
## トレーニング ストリーム
[REGION:topics third]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- モーション コントローラーの設定
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- 6ALnsdQnkVQ
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ モーション コントローラーの設定
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 6ALnsdQnkVQ
+ [/PARAMLITERAL]
[/OBJECT]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- モーション コントローラーと VR のインタラクションの作成 (パート 1)
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- eRNtgFo6iU0
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ モーション コントローラーと VR のインタラクションの作成 (その 1)
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ eRNtgFo6iU0
+ [/PARAMLITERAL]
[/OBJECT]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- モーション コントローラーと VR のインタラクションの作成 (パート 2)
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- utOahIZgKgc
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ モーション コントローラーと VR のインタラクションの作成 (その 2)
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ utOahIZgKgc
+ [/PARAMLITERAL]
[/OBJECT]
[/REGION]
diff --git a/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.KOR.udn b/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.KOR.udn
index 425147fb2cad..0b2c7a6b2e4a 100644
--- a/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/VR/MotionController/MotionControllerComponent.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3456880
Availability:Public
Title:모션 콘트롤러 컴포넌트 셋업
Crumbs:%ROOT%, Platforms
@@ -30,60 +30,84 @@ VR 프로젝트가 모션 콘트롤러를 사용하도록 하려면, , 폰에
1. 콘텐츠 브라우저에서 Player Pawn 블루프린트를 엽니다.
- 
+ [REGION:lightbox]
+ [(w:427)](Open_VR_Pawn.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 원본 이미지를 확인합니다.
+ [/REGION]
1. 블루프린트가 열렸으면, **컴포넌트** 섹션의 **뷰포트** 탭으로 가 **컴포넌트 추가** 버튼을 눌러 이 블루프린트에 추가할 수 있는 컴포넌트를 펼칩니다.
- 
+ [REGION:lightbox]
+ [(w:418)](Find_Components.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 원본 이미지를 확인합니다.
+ [/REGION]
1. 표시되는 목록에서 **Motion** 을 검색어로 하여 Motion Controller 를 검색합니다.
- 모션 콘트롤러 컴포넌트를 찾았으면, 클릭하여 컴포넌트 목록에 추가합니다.
+ 모션 콘트롤러 컴포넌트를 찾았으면, 클릭하여 컴포넌트 목록에 추가합니다.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- kcyHnfpmWbU
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ kcyHnfpmWbU
+ [/PARAMLITERAL]
+ [/OBJECT]
1. 모션 콘트롤러가 추가되었으면, 클릭해서 선택한 다음 **디테일** 패널의 **Motion Controller** 섹션 아래 **Hand** 가 **Left** 로 설정되어 있는지 확인합니다.
- 
+ [REGION:lightbox]
+ [(w:418)](Setting_Up_Components.png)
+ [/REGION]
+
+ [REGION:caption]
+ 클릭하면 원본 이미지를 확인합니다.
+ [/REGION]
1. 모션 콘트롤러에 월드 내 시각적 표현을 부여하려면, **컴포넌트 패널** 의 **Motion Controller Component** 를 선택하고 **컴포넌트 추가** 버튼을 클릭한 뒤 **Static Mesh Component** 를 추가합니다.
- Static Mesh Component 를 끌어 Motion Controller 위에 놓아 부모로 설정하고,
- 새 컴포넌트의 디테일 패널에서 Static Mesh 프로퍼티에 스태틱 메시 애셋을 할당합니다.
+ Static Mesh Component 를 끌어 Motion Controller 위에 놓아 부모로 설정하고,
+ 새 컴포넌트의 디테일 패널에서 Static Mesh 프로퍼티에 스태틱 메시 애셋을 할당합니다.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- x4vjDqnHQnk
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ x4vjDqnHQnk
+ [/PARAMLITERAL]
+ [/OBJECT]
- [region:tip]
- 프로젝트에 현재 스태틱 메시 애셋이 없다면, 별도의 메시를 하나 임포트하거나, 툴바의 마켓플레이스 버튼을 클릭한 뒤 프로젝트에 사용할 애셋을 다운로드하세요.
- 또 선택한 스태틱 메시가 너무 크거나 작으면, 디테일 패널의 트랜스폼 섹션 내 스케일 부분을 사용해서 원하는 대로 조절하면 됩니다.
- [/region]
+ [region:tip]
+ 프로젝트에 현재 스태틱 메시 애셋이 없다면, 별도의 메시를 하나 임포트하거나, 툴바의 마켓플레이스 버튼을 클릭한 뒤 프로젝트에 사용할 애셋을 다운로드하세요.
+ 또 선택한 스태틱 메시가 너무 크거나 작으면, 디테일 패널의 트랜스폼 섹션 내 스케일 부분을 사용해서 원하는 대로 조절하면 됩니다.
+ [/region]
1. 루트를 부모로 하는 모션 콘트롤러 컴포넌트를 또하나 추가하고, **오른손** 으로 설정합니다. 새로운 모션 콘트롤러 컴포넌트를 부모로 하여 스태틱 메시 컴포넌트를 하나 추가한 뒤, 거기에 오른손 메시를 적용합니다.
- 
+ [REGION:lightbox]
+ [(w:418)](Finshed_MC_Setup.png)
+ [/REGION]
- [region:note]
- 위 그림에서 두 개의 원뿔 모양 메시가 서로 떨어져 있어 둘이라는 것을 보여줍니다.
- 프로젝트에서 이렇게 구성할 때 두 스태틱 메시 컴포넌트 모두 0,0,0 에 놔두어 서로 위에 겹치도록 합니다.
- [/region]
+ [REGION:caption]
+ 클릭하면 원본 이미지를 확인합니다.
+ [/REGION]
+
+ [region:note]
+ 위 그림에서 두 개의 원뿔 모양 메시가 서로 떨어져 있어 둘이라는 것을 보여줍니다.
+ 프로젝트에서 이렇게 구성할 때 두 스태틱 메시 컴포넌트 모두 0,0,0 에 놔두어 서로 위에 겹치도록 합니다.
+ [/region]
## 모션 콘트롤러 작업
@@ -109,94 +133,111 @@ VR 프로젝트가 모션 콘트롤러를 사용하도록 하려면, , 폰에
1. **뷰포트** 탭으로 이동하여 **스태틱 메시 컴포넌트** 를 새로 추가합니다.
- 
+ 
1. 스태틱 메시 컴포넌트를 **디폴트 스크린 루트** 위로 옮긴 다음 사용된 스태틱 메시를 **ArcadeEditorSphere** 로 설정하고 블루프린트를 컴파일 및 저장합니다.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- PszzV_I0xso
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ PszzV_I0xso
+ [/PARAMLITERAL]
+ [/OBJECT]
- [region:note]
- **ArcadeEditorSphere** 를 찾을 수 없다면 **뷰 옵션** 에서 **엔진 콘텐츠** 폴더 표시 옵션을 선택하여 콘텐츠 브라우저에 나타나도록 합니다.
- [/region]
+ [region:note]
+ **ArcadeEditorSphere** 를 찾을 수 없다면 **뷰 옵션** 에서 **엔진 콘텐츠** 폴더 표시 옵션을 선택하여 콘텐츠 브라우저에 나타나도록 합니다.
+ [/region]
1. BP_Sphere 블루프린트를 저장하고 **Pawn** 블루프린트를 엽니다.
1. 내 블루프린트 패널에서, **이벤트 그래프** 탭으로 가 새 **Actor** 변수를 만들어 이름을 **Objects** 라 하고 그 **변수 유형** 을 배열로 설정합니다.
-
- 
+
+ 
1. 이 블루프린트는 모션 콘트롤러의 트리거 버튼을 눌렀을 때 월드에서 특정 오브젝트를 추가하고 제거할 수 있도록 해 줄 것입니다. 그러기 위해, 이벤트 그래프 안에 다음과 같이 블루프린트 노드들을 추가하고 연결해 줍니다. 완료되면 다음 그림과 같은 모습일 것입니다.
- 
+ [REGION:lightbox]
+ [(w:459)](Add_Objects_Setup.png)
+ [/REGION]
- [region:note]
- **Spawn Offset** 을 추가한 것은 이 예제에서 오브젝트를 배치하면서 볼 수 있도록 하기 위해서입니다. 오프셋은 반드시 필요한 부분은 아니며, **GetActorTransform** 노드에서 **Return Value** 를 잡아다가 **SpawnActor** 블루프린트 노드의 **Spawn Transform** 입력에 연결해 주는 것으로 생략할 수 있습니다.
- 
- [/region]
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+
+ [region:note]
+ **Spawn Offset** 을 추가한 것은 이 예제에서 오브젝트를 배치하면서 볼 수 있도록 하기 위해서입니다. 오프셋은 반드시 필요한 부분은 아니며, **GetActorTransform** 노드에서 **Return Value** 를 잡아다가 **SpawnActor** 블루프린트 노드의 **Spawn Transform** 입력에 연결해 주는 것으로 생략할 수 있습니다.
+ [REGION:lightbox]
+ [(w:367)](Add_Objects_Setup_Alt.png)
+ [/REGION]
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+ [/region]
1. **Spawn Actor** 노드를 선택하고 1 단계에서 만들었던 **BP_Sphere** 블루프린트를 클래스 입력에 할당합니다.
- 
+ 
1. 이 블루프린트 부분은 월드에 배치된 오브젝트를 제거하는 기능을 합니다. 이 함수성을 추가하려면, 다음과 같이 노드들을 추가하고 연결해 줍니다. 완료되면 다음 그림과 같은 모습일 것입니다.
- 
+ [REGION:lightbox]
+ [(w:459)](Remove_Objects_Setup.png)
+ [/REGION]
- [region:note]
- 그래프에는 빠른 테스트를 위해 키 입력을 받는 노드를 배치했습니다. 모션 콘트롤러 작동을 위해 필수는 아닙니다.
- [/region]
+ [REGION:caption]
+ Click for full image.
+ [/REGION]
+
+ [region:note]
+ 그래프에는 빠른 테스트를 위해 키 입력을 받는 노드를 배치했습니다. 모션 콘트롤러 작동을 위해 필수는 아닙니다.
+ [/region]
1. 폰 블루프린트 변경사항을 **컴파일** 및 **저장** 하고 **플레이** 버튼을 누릅니다.
- 레벨이 시작되면 **K** 키나 오른손 모션 콘트롤러의 오른쪽 트리거를 누르는 것으로 월드에 오브젝트를 추가해 보세요.
- 월드에서 오브젝트를 제거하려면 **T** 키를 누르거나 왼손 모션 콘트롤러의 **왼쪽** 트리거를 누르면 됩니다. 예제는 아래 데모와 같습니다.
+ 레벨이 시작되면 **K** 키나 오른손 모션 콘트롤러의 오른쪽 트리거를 누르는 것으로 월드에 오브젝트를 추가해 보세요.
+ 월드에서 오브젝트를 제거하려면 **T** 키를 누르거나 왼손 모션 콘트롤러의 **왼쪽** 트리거를 누르면 됩니다. 예제는 아래 데모와 같습니다.
- [OBJECT:EmbeddedVideo]
- [PARAMLITERAL:width]
- 640
- [/PARAMLITERAL]
- [PARAMLITERAL:height]
- 360
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- VXUowSUKT9I
- [/PARAMLITERAL]
- [/OBJECT]
+ [OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:width]
+ 640
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 360
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ VXUowSUKT9I
+ [/PARAMLITERAL]
+ [/OBJECT]
## 교육 자료
[REGION:topics third]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- 모션 콘트롤러 구성
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- 6ALnsdQnkVQ
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ 모션 콘트롤러 구성
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ 6ALnsdQnkVQ
+ [/PARAMLITERAL]
[/OBJECT]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- 모션 콘트롤러로 VR 에서의 상호작용 만들기 1 부
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- eRNtgFo6iU0
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ 모션 콘트롤러로 VR 에서의 상호작용 만들기 1 부
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ eRNtgFo6iU0
+ [/PARAMLITERAL]
[/OBJECT]
[OBJECT:TopicCompactVideo]
- [PARAMLITERAL:title]
- 모션 콘트롤러로 VR 에서의 상호작용 만들기 2 부
- [/PARAMLITERAL]
- [PARAMLITERAL:videoid]
- utOahIZgKgc
- [/PARAMLITERAL]
+ [PARAMLITERAL:title]
+ 모션 콘트롤러로 VR 에서의 상호작용 만들기 2 부
+ [/PARAMLITERAL]
+ [PARAMLITERAL:videoid]
+ utOahIZgKgc
+ [/PARAMLITERAL]
[/OBJECT]
[/REGION]
diff --git a/Engine/Documentation/Source/Platforms/VR/SplashScreens/VRSplashScreens.JPN.udn b/Engine/Documentation/Source/Platforms/VR/SplashScreens/VRSplashScreens.JPN.udn
index 0637b010ea48..3b2db5e2d77f 100644
--- a/Engine/Documentation/Source/Platforms/VR/SplashScreens/VRSplashScreens.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/VR/SplashScreens/VRSplashScreens.JPN.udn
@@ -1,4 +1,4 @@
-INTChangeList:3244832
+INTSourceChangelist:3355812
Availability:Docs
Title:VR スプラッシュ スクリーン
Crumbs:%ROOT%, Platforms, Platforms/VR
@@ -15,16 +15,16 @@ Unreal Engine 4 (UE4) は、Oculus、Gear VR、SteamVR、PSVR Head Mounted Displ
## VR Splash Screen 対応のプラットフォーム
-VR Splash Screen は以下の VR プラットフォームでのみ使用できます。
+VR スプラッシュ スクリーンは以下の VR プラットフォームでのみ使用できます。
* **Oculus VR**
* **Gear VR**
* **Steam VR**
* **PSVR**
-## VR Splash Screen プロジェクトの設定
+## VR スプラッシュ スクリーン プロジェクトの設定
-VR splash screen を設定および使用する前に、まず **Game Mode** と **Pawn** ブループリントを新規作成してVR splash screen での作業をしやすくします。次のセクションでは、作成すべきブループリントとその設定方法について説明します。
+VR スプラッシュ スクリーンを設定および使用する前に、まず **Game Mode** と **Pawn** ブループリントを新規作成してVR スプラッシュ スクリーンでの作業をしやすくします。次のセクションでは、作成すべきブループリントとその設定方法について説明します。
1. コンテンツ ブラウザを右クリックして、**[Create Basic Asset (基本アセットの作成)]** リストで **[Blueprint Class]** オプションをクリックします。
diff --git a/Engine/Documentation/Source/Platforms/VR/VR.INT.udn b/Engine/Documentation/Source/Platforms/VR/VR.INT.udn
index 62a35ee4578f..569f58da1203 100644
--- a/Engine/Documentation/Source/Platforms/VR/VR.INT.udn
+++ b/Engine/Documentation/Source/Platforms/VR/VR.INT.udn
@@ -5,63 +5,21 @@ Description:Information over developing for virtual reality platforms.
Navigation:platform
Version: 4.9
Type:landing
+tags:VR
+tags:Platform
parent:Platforms
order:2
-
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms/VR:title%
-[/PARAM]
-[PARAM:description]
- %Platforms/VR:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms/VR]
-[/PARAM]
-[/VAR]
-
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-vr
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
-
-
-## Starting Out
-
-[DIR(output:"topic" type:"quick start" tags:"vr")]
+topic-icon:%ROOT%/platform_icon.png
+topic-image:VirtualRealityDevelopment_topic.png
## Virtual Reality Platforms
-[DIR(end:"1" output:"listbutton" type:"landing" tags:"platform" parent:"Platforms/VR")]
+[DIR(end:"1" output:"topic" type:"landing" tags:"platform" parent:"Platforms/VR")]
## Virtual Reality Topics
-[DIR(end:"1" output:"listbutton" parent:"Platforms/VR" tags:"!platform")]
+[DIR(end:"1" output:"topic" parent:"Platforms/VR" tags:"!platform")]
## Training Streams
-[REGION:topics third]
[DIR(output:"video" type:"video" tags:"Virtual Reality")]
-[/REGION]
diff --git a/Engine/Documentation/Source/Platforms/VR/VR.JPN.udn b/Engine/Documentation/Source/Platforms/VR/VR.JPN.udn
index 95a31797f0d0..3d5421d2aab7 100644
--- a/Engine/Documentation/Source/Platforms/VR/VR.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/VR/VR.JPN.udn
@@ -1,68 +1,26 @@
-INTSourceChangelist:3340158
+INTSourceChangelist:3467293
Availability:Public
-Title:VR を開発する
+Title:VR の開発
Crumbs:%ROOT%, Platforms
Description:VR 用プラットフォームの開発に関する情報
Navigation:platform
Version:4.9
Type:landing
+tags:VR
+tags:Platform
parent:Platforms
order:2
-
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms/VR:title%
-[/PARAM]
-[PARAM:description]
- %Platforms/VR:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms/VR]
-[/PARAM]
-[/VAR]
-
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-VR
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
-
-
-## はじめよう
-
-[DIR(output:"topic" type:"quick start" tags:"vr")]
+topic-icon:%ROOT%/platform_icon.png
+topic-image:VirtualRealityDevelopment_topic.png
## VR 用プラットフォーム
-[DIR(end:"1" output:"listbutton" type:"landing" tags:"platform" parent:"Platforms/VR")]
+[DIR(end:"1" output:"topic" type:"landing" tags:"platform" parent:"Platforms/VR")]
## VR に関するトピックス
-[DIR(end:"1" output:"listbutton" parent:"Platforms/VR" tags:"!platform")]
+[DIR(end:"1" output:"topic" parent:"Platforms/VR" tags:"!platform")]
## トレーニング ストリーム
-[REGION:topics third]
[DIR(output:"video" type:"video" tags:"Virtual Reality")]
-[/REGION]
diff --git a/Engine/Documentation/Source/Platforms/VR/VR.KOR.udn b/Engine/Documentation/Source/Platforms/VR/VR.KOR.udn
index 4b71cf319ef1..84a7c1c8556b 100644
--- a/Engine/Documentation/Source/Platforms/VR/VR.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/VR/VR.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3340158
+INTSourceChangelist:3467293
Availability:Public
Title:가상 현실 개발
Crumbs:%ROOT%, Platforms
@@ -6,63 +6,21 @@ Description:가상 현실 플랫폼용 개발에 관련된 정보입니다.
Navigation:platform
Version: 4.9
Type:landing
+tags:VR
+tags:Platform
parent:Platforms
order:2
-
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Platforms/VR:title%
-[/PARAM]
-[PARAM:description]
- %Platforms/VR:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Platforms/VR]
-[/PARAM]
-[/VAR]
-
-[VAR:Topic]
-[OBJECT:Topic]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
-%params%
-[/OBJECT]
-[/VAR]
-
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-vr
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
-
-
-## 시작하기
-
-[DIR(output:"topic" type:"quick start" tags:"vr")]
+topic-icon:%ROOT%/platform_icon.png
+topic-image:VirtualRealityDevelopment_topic.png
## 가상 현실 플랫폼
-[DIR(end:"1" output:"listbutton" type:"landing" tags:"platform" parent:"Platforms/VR")]
+[DIR(end:"1" output:"topic" type:"landing" tags:"platform" parent:"Platforms/VR")]
## 가상 현실 토픽
-[DIR(end:"1" output:"listbutton" parent:"Platforms/VR" tags:"!platform")]
+[DIR(end:"1" output:"topic" parent:"Platforms/VR" tags:"!platform")]
## 교육 자료
-[REGION:topics third]
[DIR(output:"video" type:"video" tags:"Virtual Reality")]
-[/REGION]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Platforms/iOS/InAppPurchases/In-AppPurchases.JPN.udn b/Engine/Documentation/Source/Platforms/iOS/InAppPurchases/In-AppPurchases.JPN.udn
index 496436ab80d1..3e8ae05263c5 100644
--- a/Engine/Documentation/Source/Platforms/iOS/InAppPurchases/In-AppPurchases.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/iOS/InAppPurchases/In-AppPurchases.JPN.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3081127
-Title:iOS でアプリ内課金を使用する
+INTSourceChangelist:3150518
+Title:iOS でのアプリ内課金の使用方法
Description:iOS ゲームのアプリ内課金を使ってゲームに追加の有料コンテンツを提供する
Crumbs:
Availability:Public
Parent:Platforms/iOS
order:1
-type:howto
+type:how-to
Related:
## コンフィギュレーション
@@ -13,14 +13,14 @@ Related:
1. iTunes Connect でアプリ内課金を設定するためのステップを説明します。
[REGION:note]
- Google Play の id はすべて小文字でなければなりません。さらに、iOS と Android の ID を一致させておくとブループリントの設定がとても楽になります。
+ Google Play の id にはすべて小文字を使用します。また、iOS と Android の ID を同じにしておくと、ブループリントをとても楽に設定することができます。
[/REGION]

-1. 使用する ID およびアイテムが消費型かそうでないかをメモしておきましょう。
+1. 使用する ID およびアイテムが消費型か非消費型かをメモしておきます。
-1. ブループリント プロジェクトであれば設定の必要はありません。コード プロジェクトのためオンライン システムを使う設定が必要な場合は、プロジェクトの Build.cs ファイルに次のブロックを加えてください。
+1. ブループリント プロジェクトの場合は、そのままで大丈夫です。コード プロジェクト用にオンライン システムを使う設定にするには、プロジェクトの Build.cs ファイルに次のブロックを加えてください。
if (Target.Platform == UnrealTargetPlatform.IOS)
{
diff --git a/Engine/Documentation/Source/Platforms/iOS/QuickStart/7/iOSQuickStart_7.INT.udn b/Engine/Documentation/Source/Platforms/iOS/QuickStart/7/iOSQuickStart_7.INT.udn
index 241e1c8fd9b0..5cbe5f838e98 100644
--- a/Engine/Documentation/Source/Platforms/iOS/QuickStart/7/iOSQuickStart_7.INT.udn
+++ b/Engine/Documentation/Source/Platforms/iOS/QuickStart/7/iOSQuickStart_7.INT.udn
@@ -36,7 +36,34 @@ SkillLevel: Intermediate
1. In the toolbar, click the arrow next to **Launch** to open the **Launch Options** menu and select the iOS device.
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ windows
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]

+ [/PARAM]
+ [/OBJECT]
+
+ [OBJECT:ToggleButtonContent]
+ [PARAMLITERAL:category]
+ OS
+ [/PARAMLITERAL]
+ [PARAMLITERAL:id]
+ mac
+ [/PARAMLITERAL]
+ [PARAMLITERAL:active]
+ [/PARAMLITERAL]
+ [PARAM:content]
+ 
+ [/PARAM]
+ [/OBJECT]
+
1. The current map is cooked and packaged and installed on your device.
diff --git a/Engine/Documentation/Source/Platforms/iOS/iOS.INT.udn b/Engine/Documentation/Source/Platforms/iOS/iOS.INT.udn
index e9981f067c90..2ed9bb663d8e 100644
--- a/Engine/Documentation/Source/Platforms/iOS/iOS.INT.udn
+++ b/Engine/Documentation/Source/Platforms/iOS/iOS.INT.udn
@@ -9,6 +9,7 @@ type:landing
parent:Platforms/Mobile
tags:Mobile
tags:iOS
+topic-image:iOSGameDevelopment_topic.png
[OBJECT:TopicButtonList]
[PARAM:icon]
diff --git a/Engine/Documentation/Source/Platforms/iOS/iOS.JPN.udn b/Engine/Documentation/Source/Platforms/iOS/iOS.JPN.udn
index a497bb5eee25..f01d50a4865a 100644
--- a/Engine/Documentation/Source/Platforms/iOS/iOS.JPN.udn
+++ b/Engine/Documentation/Source/Platforms/iOS/iOS.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3467293
Availability:Public
Title: iOS ゲームの開発
Crumbs:%ROOT%, Platforms
@@ -10,6 +10,7 @@ type:landing
parent:Platforms/Mobile
tags:Mobile
tags:iOS
+topic-image:iOSGameDevelopment_topic.png
[OBJECT:TopicButtonList]
[PARAM:icon]
diff --git a/Engine/Documentation/Source/Platforms/iOS/iOS.KOR.udn b/Engine/Documentation/Source/Platforms/iOS/iOS.KOR.udn
index f887dcf2bce9..3882a6b4a64d 100644
--- a/Engine/Documentation/Source/Platforms/iOS/iOS.KOR.udn
+++ b/Engine/Documentation/Source/Platforms/iOS/iOS.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3150518
+INTSourceChangelist:3467293
Availability: Public
Title: iOS 게임 개발
Crumbs:%ROOT%, Platforms
@@ -10,6 +10,7 @@ type:landing
parent:Platforms/Mobile
tags:Mobile
tags:iOS
+topic-image:iOSGameDevelopment_topic.png
[OBJECT:TopicButtonList]
[PARAM:icon]
diff --git a/Engine/Documentation/Source/Programming/Assets/AsyncLoading/AsyncLoading.KOR.udn b/Engine/Documentation/Source/Programming/Assets/AsyncLoading/AsyncLoading.KOR.udn
index 1ca4423f98e4..be12b387fa6f 100644
--- a/Engine/Documentation/Source/Programming/Assets/AsyncLoading/AsyncLoading.KOR.udn
+++ b/Engine/Documentation/Source/Programming/Assets/AsyncLoading/AsyncLoading.KOR.udn
@@ -7,7 +7,7 @@ Version: 4.9
[TOC(start:2)]
-UE4 에는 애셋 데이터 비동기 로딩을 훨씬 쉽게 할 수 있는 신규 시스템이 다수 도입, UE3 의 기존 시크프리 콘텐츠 패키지의 함수성 대다수를 대체하고 있습니다. 이 신규 시스템은 개발 도중이나 디바이스상에서 쿠킹된 데이터로 실행할 때나 동일하게 작동하므로, 필요에 따라 데이터를 로딩하기 위한 별도의 코드 패쓰를 유지할 필요가 없습니다. 필요에 따라 데이터를 로드 및 레퍼런싱에 사용되는 방법은 일반적으로 두 가지 있습니다.
+UE4 에는 애셋 데이터 비동기 로딩을 훨씬 쉽게 할 수 있는 신규 시스템이 다수 도입, UE3 의 기존 시크프리 콘텐츠 패키지의 함수성 대다수를 대체하고 있습니다. 이 신규 시스템은 개발 도중이나 디바이스상에서 쿠킹된 데이터로 실행할 때나 동일하게 작동하므로, 필요에 따라 데이터를 로딩하기 위한 별도의 코드 패스를 유지할 필요가 없습니다. 필요에 따라 데이터를 로드 및 레퍼런싱에 사용되는 방법은 일반적으로 두 가지 있습니다.
## FStringAssetReference 와 TAssetPtr
@@ -80,6 +80,6 @@ TAssetPtr 과 StringAssetReference 는 아티스트나 디자이너가 레퍼런
}
}
-이 예제에서 ItemList 는 `TArray< TAssetPtr >` 이며, 에디터에서 디자이너에 의해 수정된 것입니다. 코드는 그 리스트에 대해 반복하여 `StringReferences` 로 변환시킨 다음 로드를 위한 대기열에 등록시킵니다. 그 아이템 전부가 로드되(거나 없어서 실패하)면 전달된 델리게이트를 호출합니다. 그러면 그 델리게이트는 같은 아이템 리스트에 대해 반복하여 그 역참조를 구한 다음 플레이어에게 전해줍니다. `StreamableManager` 는 델리게이트가 호출될 때까지 로드하는 애셋에 대한 하드 레퍼런스를 유지시켜, 비동기 로드하려 했던 오브젝트의 델리게이트가 호출되기도 전에 가비지 콜렉팅되는 일이 없도록 합니다. 델리게이트가 호출된 이후에는 그 레퍼런스가 해제되므로, 계속해서 남아있도록 하려면 어딘가에 하드 레퍼런스를 해 줘야 합니다.
+이 예제에서 ItemList 는 `TArray< TAssetPtr >` 이며, 에디터에서 디자이너에 의해 수정된 것입니다. 코드는 그 리스트에 대해 반복하여 `StringReferences` 로 변환시킨 다음 로드를 위한 대기열에 등록시킵니다. 그 아이템 전부가 로드되(거나 없어서 실패하)면 전달된 델리게이트를 호출합니다. 그러면 그 델리게이트는 같은 아이템 리스트에 대해 반복하여 그 역참조를 구한 다음 플레이어에게 전해줍니다. `StreamableManager` 는 델리게이트가 호출될 때까지 로드하는 애셋에 대한 하드 레퍼런스를 유지시켜, 비동기 로드하려 했던 오브젝트의 델리게이트가 호출되기도 전에 가비지 컬렉팅되는 일이 없도록 합니다. 델리게이트가 호출된 이후에는 그 레퍼런스가 해제되므로, 계속해서 남아있도록 하려면 어딘가에 하드 레퍼런스를 해 줘야 합니다.
같은 메소드를 사용해서 `FAssetData` 를 비동기 로드할 수도 있는데, 그냥 `ToStringReference` 를 호출한 다음 배열에 추가시키고 델리게이트를 붙여 RequestAsyncLoad 를 호출해 주면 됩니다. 델리게이트는 원하는 무엇이든 될 수 있으므로, 원한다면 페이로드 정보와 함께 전달해 줄 수 있습니다. 위에 언급한 메소드를 조합하면 게임 내 어느 애셋에 대해서도 효율적인 로드가 가능한 시스템을 구축할 수 있을 것입니다. 메모리에 직접 접근하는 게임플레이 코드가 비동기 로드를 처리하도록 변환해 주는 작업에 시간이 조금 걸리겠지만, 그 이후에는 게임에서 발생하는 멈춤 현상이나 차지하는 메모리 양이 훨씬 줄어들 것입니다.
diff --git a/Engine/Documentation/Source/Programming/Assets/CustomImporters/CustomImporters.KOR.udn b/Engine/Documentation/Source/Programming/Assets/CustomImporters/CustomImporters.KOR.udn
index f2235665361b..2ab33a472ba0 100644
--- a/Engine/Documentation/Source/Programming/Assets/CustomImporters/CustomImporters.KOR.udn
+++ b/Engine/Documentation/Source/Programming/Assets/CustomImporters/CustomImporters.KOR.udn
@@ -142,7 +142,7 @@ UFactory-파생형은 대부분, 팩토리 클래스의 StaticConstructor() 오
// 지원되는 클래스가 없다고 선언하면
// Import Dialog 에서 'OK'가 선택되어 닫힐 때
- // 임포트 패쓰에서 ResolveSupportedClass() 호출
+ // 임포트 패스에서 ResolveSupportedClass() 호출
SupportedClass = NULL;
// 이 팩토리가 .ABC 파일에 관심있다고 등록
diff --git a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/BuildGraphScriptTasks.CHN.udn b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/BuildGraphScriptTasks.CHN.udn
index 205587c472c0..385deb3a6e7d 100644
--- a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/BuildGraphScriptTasks.CHN.udn
+++ b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/BuildGraphScriptTasks.CHN.udn
@@ -1,34 +1,14 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3358550
Availability:Docs
Title:BuildGraph 脚本任务
-Crumbs: %ROOT%, Programming, Programming/Development, Programming/Development/BuildGraph, Programming/Development/BuildGraph/ScriptAnatomy
+Crumbs:
Description:了解如何利用 BuildGraph 创建自定义任务。
version:4.13
parent:Programming/Development/BuildGraph
-type:Reference
-related:Programming/Development/BuildGraph/ScriptAnatomy
+type:overview
+tags:Programming
tags:BuildGraph
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Programming/Development/BuildGraph/ScriptAnatomy/Tasks:title%
- [/PARAM]
- [PARAM:description]
- %Programming/Development/BuildGraph/ScriptAnatomy/Tasks:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Programming/Development/BuildGraph/ScriptAnatomy/Tasks]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
[TOC(start:1 end:3)]
[EXCERPT:BuildGraphScriptTasks]
diff --git a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/BuildGraphScriptTasks.KOR.udn b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/BuildGraphScriptTasks.KOR.udn
index f0c7efaf5362..510994b0ea29 100644
--- a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/BuildGraphScriptTasks.KOR.udn
+++ b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/BuildGraphScriptTasks.KOR.udn
@@ -1,11 +1,11 @@
-INTSourceChangelist:3356804
-Availability: Public
+INTSourceChangelist:3358550
+Availability:Docs
Title: BuildGraph 스크립트 태스크
Crumbs:
Description: BuildGraph 로 커스텀 태스크를 쉽게 만드는 법을 배워봅니다.
version: 4.13
parent:Programming/Development/BuildGraph
-type:Reference
+type:overview
tags:Programming
tags:BuildGraph
diff --git a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.INT.udn b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.INT.udn
index 3c52dc7f1c6b..82f3fd734878 100644
--- a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.INT.udn
+++ b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.INT.udn
@@ -44,14 +44,16 @@ Spawns the editor to run a commandlet.
Compiles a target with UnrealBuildTool.
-| | | | |
-| ------------- | ------------------------- | -------- | --------------------------------------------------------------------------------- |
-| Target | String | Required | The target to compile |
-| Configuration | UnrealTargetConfiguration | Required | The configuration to compile |
-| Platform | UnrealTargetPlatform | Required | The platform to compile for |
-| Arguments | String | Optional | Additional arguments for UnrealBuildTool |
-| Tag | Tag List | Optional | Tag to be applied to build products of this task |
-| If | Condition | Optional | Whether to execute this task. It is ignored if this condition evaluates to false. |
+| | | | |
+| --------------------- | ------------------------- | -------- | --------------------------------------------------------------------------------- |
+| Target | String | Required | The target to compile |
+| Configuration | UnrealTargetConfiguration | Required | The configuration to compile |
+| Platform | UnrealTargetPlatform | Required | The platform to compile for |
+| Arguments | String | Optional | Additional arguments for UnrealBuildTool |
+| AllowXGE | Boolean | Optional | Whether to allow using XGE for compilation |
+| AllowParallelExecutor | Boolean | Optional | Whether to allow using the parallel executor for this compile |
+| Tag | Tag List | Optional | Tag to be applied to build products of this task |
+| If | Condition | Optional | Whether to execute this task. It is ignored if this condition evaluates to false. |
### Cook
diff --git a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.JPN.udn b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.JPN.udn
index ed3ace47b407..88b85526a99d 100644
--- a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.JPN.udn
+++ b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.JPN.udn
@@ -1,12 +1,24 @@
-INTSourceChangelist:3090650
+INTSourceChangelist:3372845
Availability:NoPublish
Title:BuildGraph の定義済みタスク
-Crumbs: %ROOT%, Programming, Programming/Development, Programming/Development/BuildGraph, Programming/Development/BuildGraph/ScriptAnatomy, Programming/Development/BuildGraph/ScriptAnatomy/Tasks
+Crumbs: %ROOT%, Programming, Programming/Development, Programming/Development/BuildGraph, Programming/Development/BuildGraph/BuildGraphScriptTasks
Description:これはプロシージャルに生成されるマークダウン ページです。
-version:4.13
-parent:Programming/Development/BuildGraph/ScriptAnatomy/Tasks
+version:4.16
+parent:Programming/Development/BuildGraph/BuildGraphScriptTasks
-### Command
+### AgeStore
+
+ファイル一式からシンボルを削除するタスクです。このタスクはマイクロソフトのデバッガ ツール SDK に同梱される AGESTORE ユーティリティから名付けられましたが、実際には別個の実装です。主な違いは、どのファイルを削除するかを判断する際に、最終アクセス時間ではなく、最後に修正された時間を使用する点です。
+
+| | | | |
+| -------- | -------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| Platform | UnrealTargetPlatform | Required | シンボルを処理する対象プラットフォーム |
+| StoreDir | String | Required | シンボル サーバー ディレクトリ |
+| Days | Int32 | Required | シンボルを維持する日数 |
+| Filter | String | Optional | シンボルを削除する前にディレクトリ ファイル名でマッチさせるサブストリングこれにより、複数のビルドが同じシンボル サーバーを共有している場合に、"age store" タスクが他のビルドからシンボルを削除するのを防ぎます。具体的なフィルタ値の使用は、プラットフォームのツールチェーンで定義されるシンボル サーバーの構造で決まります。
+| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
+
+### コマンド
与えられたコマンドを実行するために AutomationTool の子プロセスを呼び出します。
@@ -14,10 +26,10 @@ parent:Programming/Development/BuildGraph/ScriptAnatomy/Tasks
| ------------------------ | --------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Name | String | Required | 実行するコマンド名 |
| Arguments | String | Optional | コマンドに渡す引数 |
-| MergeTelemetryWithPrefix | String | Optional | non-null の場合、コマンドからテレメトリーにこの UAT インスタンスのテレメトリーに与えられたプリフィックスを付けてマージするように指示します。空 (non-null) の文字列になる場合があります。 |
+| MergeTelemetryWithPrefix | String | Optional | non-null の場合、コマンドからのテレメトリーにこの UAT インスタンスのテレメトリーに与えられたプリフィックスを付けてマージするように指示します。空 (non-null) の文字列になる場合があります。 |
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
-### コマンドレット
+### Commandlet
コマンドレットを実行するエディタをスポーンします。
@@ -29,7 +41,7 @@ parent:Programming/Development/BuildGraph/ScriptAnatomy/Tasks
| EditorExe | File Name | Optional | 使用するエディタの実行ファイル。現在のプラットフォームに対してデフォルトで development UE4Editor の実行ファイルになります。
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
-### コンパイル
+### Compile
UnrealBuildTool でターゲットをコンパイルします。
@@ -42,7 +54,7 @@ UnrealBuildTool でターゲットをコンパイルします。
| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
-### クック
+### Cook
特定のプラットフォームに対してマップの集まりをクックします。
@@ -53,35 +65,35 @@ UnrealBuildTool でターゲットをコンパイルします。
| Maps | String | Optional | クックするマップのリスト。 '+' 文字で区切られます。 |
| Versioned | Boolean | Optional | クッカーに渡す追加の引数 |
| Arguments | String | Optional | クッカーに渡す追加の引数 |
-| Tag | Tag List | Optional | このタスクのビルド生成物に適用されるタグ |
+| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
-### コピー
+### Copy
あるディレクトリから別のディレクトリにファイルをコピーします。
-| | | | |
-| ------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
-| Files | File Spec | Required | セミコロンで区切られるファイル明細のリスト (例、 *.cpp;Engine/.../*.bat) またはタグセットの名前です。相対パスは、 FromDir に基づきます。
-| FromDir | Directory Name | Required | コピー元のベース ディレクトリ |
-| ToDir | Directory Name | Required | コピー先のディレクトリ |
-| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
-| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
+| | | | |
+| ----- | --------- | -------- | --------------------------------------------------------------------------------- |
+| Files | File Spec | Optional | 入力ファイルのリストに適用されるフィルタです。オプションです。 |
+| From | File Spec | Required | コピー元のパターン (例、 Engine/*.txt) |
+| To | File Spec | Required | ディレクトリまたはコピー先 |
+| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
+| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
### CsCompile
C# のプロジェクト ファイルやその依存関係をコンパイルします。
-| | | | |
-| ------------- | --------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
-| Project | String | Required | コンパイルする C# のプロジェクト ファイル。セミコロンで区切ることで複数のプロジェクト ファイルを指定することができます。 |
-| Configuration | String | Optional | コンパイルするコンフィギュレーション |
-| Platform | String | Optional | コンパイルするプラットフォーム |
-| Arguments | String | Optional | コンパイラに渡す追加のオプション |
-| EnumerateOnly | Boolean | Optional | ビルドの生成物を列挙するだけで、実際にはプロジェクトをコンパイルしません。 |
-| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
-| TagReferences | Tag List | Optional | プロジェクトが持つ非 private の参照に適用されるタグ (すなわち、external だが、output dir にはコピーされないもの) |
-| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
+| | | | |
+| ------------- | --------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------- |
+| Project | String | Required | コンパイルする C# のプロジェクト ファイル。セミコロンで区切ることで複数のプロジェクト ファイルを指定することができます。 |
+| Configuration | String | Optional | コンパイルするコンフィギュレーション |
+| Platform | String | Optional | コンパイルするプラットフォーム |
+| Arguments | String | Optional | コンパイラに渡す追加のオプション |
+| EnumerateOnly | Boolean | Optional | ビルドの生成物を列挙するだけで、実際にはプロジェクトをコンパイルしません。 |
+| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
+| TagReferences | Tag List | Optional | プロジェクトが持つ非 private の参照に適用されるタグ (すなわち、external だが、output dir にはコピーされないもの) |
+| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
### Delete
@@ -89,7 +101,7 @@ C# のプロジェクト ファイルやその依存関係をコンパイルし
| | | | |
| ---------------------- | --------- | -------- | ---------------------------------------------------------------------------------------------------------- |
-| Files | File Spec | Required | セミコロンで区切られるファイルの明細のリスト (例、 *.cpp;Engine/.../*.bat) またはタグセットの名前です。 |
+| Files | File Spec | Required | セミコロンで区切られるファイル明細のリスト (例 *.cpp;Engine/.../*.bat) またはタグセットの名前です。 |
| DeleteEmptyDirectories | Boolean | Optional | ファイル削除後に空のディレクトリを削除するか否かです。デフォルトで true になります。 |
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
@@ -104,6 +116,18 @@ C# のプロジェクト ファイルやその依存関係をコンパイルし
| IncludeContents | Boolean | Optional | 指定すると、指定したファイルのコンテンツを出力します。 |
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
+### Move
+
+あるディレクトリから別のディレクトリにファイルを移動します。
+
+| | | | |
+| ----- | --------- | -------- | --------------------------------------------------------------------------------- |
+| Files | File Spec | Optional | 入力ファイルのリストに適用されるフィルタです。オプションです。 |
+| From | File Spec | Required | コピー元のパターン (例、 Engine/*.txt) |
+| To | File Spec | Required | ディレクトリまたはコピー先 |
+| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
+| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
+
### PakFile
任意のファイル一式から PAK ファイルを作成します。
@@ -118,8 +142,8 @@ C# のプロジェクト ファイルやその依存関係をコンパイルし
| Sign | String | Optional | pak ファイルの暗号キー |
| Compress | Boolean | Optional | ファイルを圧縮するか否か |
| Arguments | String | Optional | UnrealPak に渡す追加の引数 |
-| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
-| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
+| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
+| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
### Rename
@@ -144,6 +168,7 @@ C# のプロジェクト ファイルやその依存関係をコンパイルし
| Branch | String | Required | ブランチの文字列 |
| Build | String | Optional | ビルド バージョンの文字列 |
| Licensee | Boolean | Optional | IS_LICENSEE_VERSION フラグを true に設定するか否か。 |
+| Promoted | Boolean | Optional | ENGINE_IS_PROMOTED_BUILD フラグを true に設定するか否か。 |
| SkipWrite | Boolean | Optional | 設定されると、実際にはファイルに書き込まず、更新されるバージョン ファイルを戻します。ローカルのビルドに役立ちます。 |
| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
@@ -155,7 +180,7 @@ C# のプロジェクト ファイルやその依存関係をコンパイルし
| | | | |
| ----- | --------- | -------- | ---------------------------------------------------------------------------------------------------------- |
| Files | File Spec | Required | セミコロンで区切られるファイル明細のリスト (例 *.cpp;Engine/.../*.bat) またはタグセットの名前です。 |
-| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
+| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
### Spawn
@@ -194,7 +219,7 @@ C# のプロジェクト ファイルやその依存関係をコンパイルし
| Platform | UnrealTargetPlatform | Required | バイナリをストリップするプラットフォームのツールチェーン |
| BaseDir | Directory Name | Optional | ファイルを探すディレクトリ |
| Files | File Spec | Required | セミコロンで区切られるファイルの明細のリスト (例、 Engine/.../*.pdb) またはタグセットの名前です。 |
-| OutputDir | Directory Name | Required | ストリップされたファイルの出力ディレクトリ。デフォルトは入力パス (入力ファイルを上書き) |
+| OutputDir | Directory Name | Optional | ストリップされたファイルの出力ディレクトリ。デフォルトは入力パス (入力ファイルを上書き) |
| Tag | Tag List | Optional | タスクのビルド生成物に適用するタグ |
| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
@@ -202,19 +227,32 @@ C# のプロジェクト ファイルやその依存関係をコンパイルし
新規チェンジリストを作成し、ファイル一式を Perforce ストリームにサブミットします。
-| | | | |
-| ----------- | -------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Description | String | Required | サブミットされたチェンジリストの説明 |
-| Files | File Spec | Required | サブミットするファイル |
-| FileType | String | Optional | サブミットしたファイルに対する Perforce のファイルの種類 (例 binary+FS32) |
-| Workspace | String | Optional | ワークスペース名。指定するとファイルをサブミットする任意のストリームおよびルート ディレクトリを使って新しいワークスペースが作成されます。そうでなければ、現在のワークスペースが使用されます。 |
-| Stream | String | Optional | ワークスペースのストリームであり、デフォルトで現在のストリームになります。ワークスペースの属性も指定されない限り、無視されます。 |
-| RootDir | Directory Name | Optional | ストリームのルート ディレクトリ。指定しないと、デフォルトで現在のルート ディレクトリになります。 |
-| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
+| | | | |
+| --------------- | -------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Description | String | Required | サブミットされたチェンジリストの説明 |
+| Files | File Spec | Required | サブミットするファイル |
+| FileType | String | Optional | サブミットしたファイルに対する Perforce のファイルの種類 (例 binary+FS32) |
+| Workspace | String | Optional | ワークスペース名。指定するとファイルをサブミットする任意のストリームおよびルート ディレクトリを使って新しいワークスペースが作成されます。そうでなければ、現在のワークスペースが使用されます。 |
+| Stream | String | Optional | ワークスペースのストリームであり、デフォルトで現在のストリームになります。ワークスペースの属性も指定されない限り、無視されます。 |
+| RootDir | Directory Name | Optional | ストリームのルート ディレクトリ。指定しないと、デフォルトで現在のルート ディレクトリになります。 |
+| RevertUnchanged | Boolean | Optional | 変更されていないファイルをサブミット前にリバートするか否かです。 |
+| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
+
+### SymStore
+
+ファイル一式からシンボルを削除するタスクです。
+
+| | | | |
+| -------- | -------------------- | -------- | --------------------------------------------------------------------------------- |
+| Platform | UnrealTargetPlatform | Required | シンボル ファイルを処理するために必要なプラットフォームのチェーン |
+| Files | String | Required | 出力ファイルのリスト。このリストから PDB 抽出されます。 |
+| StoreDir | String | Required | 圧縮したシンボルの出力ディレクトリ。 |
+| Product | String | Required | シンボル ストアを記録するための製品名 |
+| If | Condition | Optional | このタスクを実行するか否かです。この条件式が、 false になると無視されます。 |
### Tag
-任意のファイル一式にタグを適用します。'Files' パラメーターで与えられるタグとファイルの明細を列挙することによってファイルのリストが見つかります。このリストから、'Filter' パラメーターにマッチしないファイルがあれば取り除かれ、'Except' パラメータでマッチする任意のファイルが続きます。
+任意のファイル一式にタグを適用します。'Files' パラメーターで与えられるタグとファイルの明細を列挙することによってファイルのリストが見つかります。このリストから、'Filter' パラメータにマッチしないファイルがあれば取り除かれ、'Except' パラメータでマッチする任意のファイルが続きます。
| | | | |
| ------- | -------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
@@ -232,7 +270,7 @@ C# のプロジェクト ファイルやその依存関係をコンパイルし
| | | | |
| ------------------------------ | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| Files | File Spec | Required | 読み出すレシート ファイル一式 (*.target)。セミコロンで区切られたワイルドカードおよびタグ名を含みます。 |
-| EngineDir | Directory Name | Optional | Engine フォルダへのパス。レシート ファイルで、$(EngineDir) プロパティを拡張するために使用します。デフォルトで現在のワークスペースの Engine ディレクトリになります。 |
+| EngineDir | Directory Name | Optional | Engine フォルダへのパス。レシート ファイルで、$(EngineDir) プロパティを拡張するために使用します。デフォルトで現在のワークスペースの Engine ディレクトリになります。 |
| ProjectDir | Directory Name | Optional | プロジェクト フォルダへのパス。レシート ファイルで $(ProjectDir) プロパティを展開するために使用されます。デフォルトで現在のワークスペースの Engine ディレクトリになります。 |
| BuildProducts | Boolean | Optional | レシートにリスト化されているビルド生成物にタグ付けするか否か。 |
| BuildProductType | String | Optional | どのタイプのビルド生成物にタグ付けするか (有効な値については、 TargetReceipt.cs - UnrealBuildTool.BuildProductType をご覧ください) |
diff --git a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.KOR.udn b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.KOR.udn
index 9f98043779ac..fbea11418dfa 100644
--- a/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.KOR.udn
+++ b/Engine/Documentation/Source/Programming/Development/BuildGraph/ScriptAnatomy/Tasks/PredefinedTasks/BuildGraphScriptPredefinedTasks.KOR.udn
@@ -1,10 +1,22 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3372845
Availability: NoPublish
Title: BuildGraph 미리정의된 태스크
-Crumbs: %ROOT%, Programming, Programming/Development, Programming/Development/BuildGraph, Programming/Development/BuildGraph/ScriptAnatomy, Programming/Development/BuildGraph/ScriptAnatomy/Tasks
+Crumbs: %ROOT%, Programming, Programming/Development, Programming/Development/BuildGraph, Programming/Development/BuildGraph/BuildGraphScriptTasks
Description: 절차적 생성되는 마크다운 페이지입니다.
-version: 4.13
-parent:Programming/Development/BuildGraph/ScriptAnatomy/Tasks
+version: 4.16
+parent:Programming/Development/BuildGraph/BuildGraphScriptTasks
+
+### AgeStore
+
+파일 세트에서 심볼을 벗겨내는 태스크입니다. 이 태스크 이름은 Microsoft 디버거 툴 SDK 인 AGESTORE 유틸리티에서 따온 것이지만, 실제로는 별도 구현입니다. 주요 차이점은 삭제할 파일을 결정하는 데 마지막 접근 시간이 아닌 마지막 변경 시간을 사용한다는 점입니다.
+
+| | | | |
+| -------- | -------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| Platform | UnrealTargetPlatform | 필수 | 심볼 에이징 대상 타겟 플랫폼입니다. |
+| StoreDir | String | 필수 | 심볼 서버 디렉토리입니다. |
+| Days | Int32 | 필수 | 심볼을 며칠이자 유지할지 입니다. |
+| Filter | String | 옵션 | 디렉토리 파일명에 이 하위 스트링이 일치하면 심볼을 지웁니다. 다수의 빌드가 같은 심볼 서버를 공유하는 상황에서 "age store" 태스크가 다른 빌드의 심볼을 지우지 못하도록 할 수 있습니다. 필터 값의 구체적인 용도는 플랫폼 툴 체인에 정의된 심볼 서버 구조체로 결정됩니다. |
+| If | Condition | 옵션 | 이 태스크 실행 여부입니다. 이 조건 평가 결과 false 이면 무시됩니다. |
### Command
@@ -62,18 +74,18 @@ parent:Programming/Development/BuildGraph/ScriptAnatomy/Tasks
| | | | |
| ------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
-| Files | File Spec | 필수 | 세미콜론으로 구분되는 지정 파일 목록 (예: *.cpp;Engine/.../*.bat), 또는 태그 세트 이름입니다. 상대 경로는 기준은 FromDir 입니다. |
-| FromDir | Directory Name | 필수 | 복사할 원본 디렉토리입니다. |
-| ToDir | Directory Name | 필수 | 복사할 대상 디렉토리입니다. |
-| Tag | Tag List | 옵션 | 이 태스크의 빌드 제품에 적용할 태그입니다.
+| Files | File Spec | 옵션 | 입력 파일 목록에 적용시킬 필터입니다. 옵션입니다. |
+| From | File Spec | 필수 | 복사해 올 패턴입니다. (예: Engine/*.txt) |
+| To | File Spec | 필수 | 복사 대상 디렉토리입니다. |
+| Tag | Tag List | 옵션 | 이 태스크의 빌드 제품에 적용할 태그입니다. |
| If | Condition | 옵션 | 이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다. |
### CsCompile
C# 프로젝트 파일과 그 종속성을 컴파일합니다.
-| | | | |
-| ------------- | --------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
+| | | | |
+| ------------- | --------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| Project | String | 필수 | 컴파일할 C# 프로젝트 파일입니다. 세미콜론으로 구분해서 프로젝트 파일을 둘 이상 지정할 수 있습니다. |
| Configuration | String | 옵션 | 컴파일할 환경설정입니다. |
| Platform | String | 옵션 | 컴파일할 플랫폼입니다. |
@@ -104,6 +116,18 @@ C# 프로젝트 파일과 그 종속성을 컴파일합니다.
| IncludeContents | Boolean | 옵션 | 지정하면 지정한 파일의 내용을 출력합니다. |
| If | Condition | 옵션 | 이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다. |
+### Move
+
+한 디렉토리에서 다른 디렉토리로 파일을 이동합니다.
+
+| | | | |
+| ----- | --------- | -------- | --------------------------------------------------------------------------------- |
+| Files | File Spec | 옵션 | 입력 파일 목록에 적용할 필터입니다. 옵션입니다. |
+| From | File Spec | 필수 | 복사해 올 패턴입니다. (예: Engine/*.txt) |
+| To | File Spec | 필수 | 복사 대상 디렉토리입니다. |
+| Tag | Tag List | 옵션 | 이 태스크의 빌드 제품에 적용할 태그입니다. |
+| If | Condition | 옵션 | 이 태스크 실행 여부입니다. 이 조건 평가 결과 false 인 경우 무시됩니다. |
+
### PakFile
지정한 파일 세트에서 PAK 파일을 생성합니다.
@@ -144,6 +168,7 @@ C# 프로젝트 파일과 그 종속성을 컴파일합니다.
| Branch | String | 필수 | 브랜치 문자열입니다. |
| Build | String | 옵션 | 빌드 버전 문자열입니다. |
| Licensee | Boolean | 옵션 | IS_LICENSEE_VERSION 플래그 true 설정 여부입니다. |
+| Promoted | Boolean | 옵션 | ENGINE_IS_PROMOTED_BUILD 플래그의 true 설정 여부입니다. |
| SkipWrite | Boolean | 옵션 | 설정하면 실제로 파일에 쓰지 않고, 업데이트할 버전 파일만 반환합니다. 로컬 빌드에 좋습니다. |
| Tag | Tag List | 옵션 | 이 태스크의 빌드 제품에 적용할 태그입니다.
| If | Condition | 옵션 | 이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다. |
@@ -194,7 +219,7 @@ C# 프로젝트 파일과 그 종속성을 컴파일합니다.
| Platform | UnrealTargetPlatform | 필수 | 바이너리를 벗겨낼 플랫폼 툴체인입니다. |
| BaseDir | Directory Name | 옵션 | 파일을 검색할 디렉토리입니다. |
| Files | File Spec | 필수 | 세미콜론으로 구분되는 파일 지정 목록 (예: Engine/.../*.pdb), 또는 태그 세트 이름입니다. |
-| OutputDir | Directory Name | 필수 | 벗겨낸 파일의 출력 디렉토리입니다. 기본값은 입력 경로입니다 (입력 파일을 덮어씁니다). |
+| OutputDir | Directory Name | 옵션 | 벗겨낸 파일의 출력 디렉토리입니다. 기본값은 입력 경로입니다 (입력 파일을 덮어씁니다). |
| Tag | Tag List | 옵션 | 이 태스크의 빌드 제품에 적용할 태그입니다.
| If | Condition | 옵션 | 이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다. |
@@ -210,8 +235,21 @@ C# 프로젝트 파일과 그 종속성을 컴파일합니다.
| Workspace | String | 옵션 | 워크스페이스 이름입니다. 지정하면 지정된 스트림과 파일을 제출한 루트 디렉토리를 사용하여 새로운 워크스페이스를 만듭니다. 지정하지 않으면, 현재 워크스페이스를 사용합니다. |
| Stream | String | 옵션 | 워크스페이스의 스트림입니다. 기본값은 현재 스트림입니다. Workspace 어트리뷰트 역시 지정되지 않는 한 무시됩니다. |
| RootDir | Directory Name | 옵션 | 스트림에 대한 루트 디렉토리입니다. 지정하지 않으면, 기본값은 현재 루트 디렉토리입니다. |
+| RevertUnchanged | Boolean | 옵션 | submit 시도 전 변경되지 않은 파일을 revert 시킬지 여부입니다. |
| If | Condition | 옵션 | 이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다. |
+### SymStore
+
+파일 세트에서 심볼을 벗겨내는 태스크입니다.
+
+| | | | |
+| -------- | -------------------- | -------- | --------------------------------------------------------------------------------- |
+| Platform | UnrealTargetPlatform | 필수 | 심보ㅓㄹ 파일 처리에 필요한 플랫폼 툴체인입니다. |
+| Files | String | 필수 | 출력 파일 목록입니다. PDB 는 이 목록에서 추출합니다. |
+| StoreDir | String | 필수 | 압축된 심볼에 대한 출력 디렉토리입니다. |
+| Product | String | 필수 | 심볼 스토어 레코드에 대한 제품 이름입니다. |
+| If | Condition | 옵션 | 이 태스크 실행 여부입니다. 이 조건 평가 결과 false 인 경우 무시됩니다. |
+
### Tag
지정된 파일 세트에 태그를 적용합니다. 파일 목록은 태그 열거(enumerate) 및 'Files' 파라미터로 지정한 파일로 찾습니다. 이 목록에서, 'Filter' 파라미터에 일치하지 않는 파일은 제거한 뒤 'Except' 파라미터에 일치하는 것이 이어집니다.
diff --git a/Engine/Documentation/Source/Programming/Development/CompilingProjects/CompilingProjects.INT.udn b/Engine/Documentation/Source/Programming/Development/CompilingProjects/CompilingProjects.INT.udn
index 35f2d096b2b1..6e822edf7737 100644
--- a/Engine/Documentation/Source/Programming/Development/CompilingProjects/CompilingProjects.INT.udn
+++ b/Engine/Documentation/Source/Programming/Development/CompilingProjects/CompilingProjects.INT.udn
@@ -2,7 +2,10 @@ Availability:Public
Title:Compiling Game Projects
Crumbs: %ROOT%, Programming, Programming/Development
Description:Compiling individual game projects using Visual Studio on Windows, or Xcode on Mac.
-Version: 4.9
+Version: 4.16
+Parent:Programming/Development
+Order:
+type:overview
[TOC (start:2 end:3)]
@@ -80,7 +83,7 @@ has instructions for generating project files for additional platforms.
### Building the Project
[REGION:note]
-Please make sure you are running Visual Studio 2013 Express, Community, or Professional for Windows Desktop installed before proceeding. If you are using Mac, make sure to have Xcode 6.1 or higher installed.
+Please make sure you are running Visual Studio 2015 or higher for Windows Desktop installed before proceeding. If you are using Mac, make sure to have Xcode 8 or higher installed.
[/REGION]
にある GenerateProjectFiles.bat ファイルを実行します。
[REGION:note]
- スクリプトはどのフォルダからも実行できます。(必要に応じてデスクトップ上にショートカットを作成してください)
+ スクリプトはどのフォルダからも実行できます。(必要に応じてデスクトップ上にショートカットを作成してください)
[/REGION]
* プロジェクト ジェネレータがモジュールとビルド対象のファイルを分析し、プロジェクトファイルを新規に生成します。ファイルの生成は最長で 15 秒間ほどかかります。
-VS 開発者のために、同ディレクトリに「UE4.sln」ファイルが生成されます。UE 4 を使用したゲームやプログラムのビルドおよび実行にこのソリューションファイルを使用します。(初回コンパイルは、Win64 プラットフォームを Development コンフィギュレーションに設定したビルドを推奨しています!)
+VS 開発者のために、同ディレクトリに「UE4.sln」ファイルが生成されます。UE 4 を使用したゲームやプログラムのビルドおよび実行にこのソリューションファイルを使用します。(初回コンパイルは、Win64 プラットフォームを Development コンフィギュレーションに設定したビルドを推奨しています)
[REGION:note]
- デフォルトで、コンソールだけでなくモバイルのプラットフォームもビルドおよびデバッグできるように、SDK が検出されたすべての利用可能なプラットフォームを対象にビルド可能なプロジェクトを生成します。実行している現在のプラットフォーム (Windows など) に対してのみプロジェクトを生成したい場合は、-CurrentPlatform 引数で GenerateProjectFiles.bat を実行します。プロジェクト ファイルは若干負荷が軽くなります。
+ デフォルトで、コンソールだけでなくモバイルのプラットフォームもビルドおよびデバッグできるように、SDK が検出されたすべての利用可能なプラットフォームを対象にビルド可能なプロジェクトを生成します。実行している現在のプラットフォーム (Windows など) に対してのみプロジェクトを生成したい場合は、-CurrentPlatform 引数で GenerateProjectFiles.bat を実行します。プロジェクト ファイルの負荷が若干低減されます。
[/REGION]
**重要**:ソースコントロール システムから新しいコードの変更を同期した後は必ず GenerateProjectFiles.bat ファイルを再実行してください。ファイルの実行を忘れると、コンパイル時やゲームの実行時に問題が発生する恐れがあります。
@@ -32,7 +44,7 @@ VS 用の [](Programming/Development/VisualStudioSetup/UnrealVS) にあるツー
この機能へショートカットキーを割り当てることもできます。VS で [Tools] -> [Options] -> [Environment] -> [Keyboard] を開きUnrealVS.RefreshProjects を検索します。
-この機能はソリューションが読み込まれた後に有効となります (プロジェクトを生成するコードブランチをツールで理解しなくてはいけないため)。`UE4.sln` ファイルがまだ生成されていない場合、最初に `GenerateProjectFiles.bat` スクリプトを直接実行してください。
+この機能はソリューションが読み込まれた後に有効となります(プロジェクトを生成するコードブランチをツールで理解しなくてはいけないため)。`UE4.sln` ファイルがまだ生成されていない場合、最初に `GenerateProjectFiles.bat` スクリプトを直接実行してください。
## コマンドライン オプション (上級編)
@@ -42,11 +54,10 @@ VS 用の [](Programming/Development/VisualStudioSetup/UnrealVS) にあるツー
| オプション | 説明 ||
----------------- | ------------ |
-CurrentPlatform | 検出されたすべての利用可能な対象プラットフォームではなく、現在のデスクトップ プラットフォーム (Windows または Mac) に対してのみビルド可能なプロジェクトを生成します。 |
--2012 | VS 2012 のネイティブなフォーマットでプロジェクトを生成します。デフォルトで、VS 2013 ファイルを生成します。 |
--2013 | VS 2013 のネイティブなフォーマットでプロジェクトを生成します。これはデフォルトです。|
-2015 | VS 2015 のネイティブなフォーマットでプロジェクトを生成します。このオプションが設定されると Visual C++ 2015 コンパイラを使用してコンパイルします。 |
+-2017 | VS 2017 のネイティブなフォーマットでプロジェクトを生成します。このオプションが設定されると Visual C++ 2017 コンパイラを使用してコンパイルします。 |
-ThirdParty | サードパーティ ライブラリからヘッダとその他のファイルをプロジェクトに追加します。PhysX、Steamworks、Bink などに対応する Visual Assist でシンボルやファイルを見る場合に便利です。ただし、プロジェクトファイルの読み込みに時間が長くかかります! |
-Game `GameName` | 指定したプロジェクト名に対するコードとコンテンツのみを含むプロジェクトの生成をプロジェクト ジェネレータに指示します。その他のプロジェクトは除外します。プロジェクト名も必ず指定してください。例えば、`GenerateProjectFiles.bat ShooterGame.uproject -Game` は ShooterGame のソースとターゲットのみを含むプロジェクトを生成します。単一のゲームプロジェクトと一緒にエンジン ソースコードとプログラムを含みたい場合、 `-Engine` パラメータを渡してください。|
+Game `GameName` | 指定したプロジェクト名に対するコードとコンテンツのみを含むプロジェクトの生成をプロジェクト ジェネレータに指示します。その他のプロジェクトは除外します。プロジェクト名も必ず指定してください。例えば、「GenerateProjectFiles.bat ShooterGame.uproject -Game 」はShooterGame のソースとターゲットのみを含むプロジェクトを生成します。単一のゲームプロジェクトと一緒にエンジンソースコードとプログラムを含みたい場合、「-Engine」パラメータを渡してください。|
Engine | `-Game` と併用した場合、エンジンコード、コンテンツ、そしてプログラムが生成ソリューションに一緒に含まれます。エンジン ソースコードを扱う作業がたくさんあるゲームプロジェクトの開発に便利なオプションです。 |
-NoIntelliSense | オートコンプリートとエラー squiggles で使用される IntelliSense データの生成をスキップします。
-AllLanguages | すべての言語のエンジン ドキュメンテーションが含まれます。デフォルトでは、プロジェクトには英語のファイルのみが含まれます。 |
@@ -55,55 +66,55 @@ Engine | `-Game` と併用した場合、エンジンコード、
-Platforms=`PlatformName`| ビルド可能なプロジェクトを生成するデフォルトのプラットフォーム セットをオーバーライドし、代わりに指定したプラットフォームに対してプロジェクトを生成します。'+' 記号で区切ることで複数のプラットフォームを指定できます。この操作によって、生成されたソリューション ファイルには指定したプラットフォーム名を含む接尾辞がついた名前も付けられます。 |
-## よくある質問 (FAQ)
+## よくある質問(FAQ)
-### プロジェクトファイルを更新していなくても、新しく追加されたソースファイルがコンパイルされるのはなぜですか?
+### プロジェクト ファイルを更新していなくても、新しく追加されたソースファイルがコンパイルされるのはなぜですか?
-UE 4 のビルドシステムでは、プロジェクトファイルが実際にコードをコンパイルする必要はありません。アンリアル ビルド ツールは、モジュールと対象のビルドファイルを使用してソースファイルを常に検索します。よって、新しいソースファイルが追加されてコンパイルが開始すると、プロジェクトファイルが再読み込みされていなくてもソースファイルがビルドに含まれます。覚えておいてください。
+UE 4 のビルド システムでは、プロジェクト ファイルが実際にコードをコンパイルする必要はありません。アンリアル ビルド ツールは、モジュールと対象のビルド ファイルを使用してソース ファイルを常に検索します。よって、新しいソースファイルが追加されてコンパイルが開始すると、プロジェクト ファイルが再読み込みされていなくてもソース ファイルがビルドに含まれます。覚えておいてください。
### 実際のプロジェクトはどこに保存されるのですか?
-VS プロジェクトの場合、生成ソリューションは UE4.sln として UE4 のルートディレクトリに保存されます。ただし、プロジェクト ファイルは「/UE4/Engine/Intermediate/ProjectFiles/」ディレクトリに保存されます。これらのファイルの削除やプロジェクトを再生成は好きな時に行えます。ただし、ファイルの削除時にコマンドライン引数などプロジェクト固有の設定が消去されます。
+VS プロジェクトの場合、生成ソリューションは UE4.sln として UE4 のルート ディレクトリに保存されます。ただし、プロジェクト ファイルは「/UE4/Engine/Intermediate/ProjectFiles/」ディレクトリに保存されます。これらのファイルは、削除やプロジェクト再生成を好きな時に行えます。ただし、ファイルの削除時にコマンドライン引数などプロジェクト固有の設定が消去されます。
### プロジェクトファイルを生成するメリットはなんですか?
-メリット、デメリットは確実に両方ありますが、UE4 でプロジェクトファイルを生成する決断に至った主な理由はいくつかあります。
+もちろんデメリットもありますが、プロジェクト ファイル生成に UE4 を選んだ主な理由は以下の通りです。
-* UE 4 はマルチプラットフォームに対応していますが、あるチームは常に特定のプラットフォームのみで開発を行っています。プロジェクトファイルを生成することにより、関連のないプラットフォーム固有のファイルやビルドコンフィギュレーションを省略することができます。
+* UE 4 はマルチプラットフォーム対応なので、あるチームを特定のプラットフォーム専用の開発に割り当てることができます。プロジェクト ファイルを生成すれば、プラットフォーム固のファイルや関係のないビルド コンフィギュレーションを省略することができます。
-*UE4 のプログラミング手法はたくさんのサブモジュールを使用しているので、プログラマーが新たにモジュールを追加する作業を可能な限り容易にすることはとても重要でした。
+* UE4 は幅広いサブモジュールを使用したプログラミング手法です。これは、プログラマーのモジュール新規追加作業をできるだけ簡素化する上でとても重要です。
-* プロジェクト ジェネレータは、正確性の高い定義を排出し、ユーザーが UE4 コードの作業中に Visual Studio IntelliSense が使用するパスを含みます。
+* プロジェクト ジェネレータは、正確性の高い定義を排出し、UE4 コード作業中に Visual Studio IntelliSense が使用するパスを含みます。
-* プロジェクトファイルの自動生成時に新プロジェクトの設定がより簡単になります。
+* プロジェクトファイルの自動生成時に新プロジェクトの設定が非常に簡単です。
-* 当社はマルチプラットフォームと開発環境のサポートを目指しています (例えば VS や Xcode など)。手作業で複数のプロジェクトファイルを維持することはエラーを誘発する上に、単調でつまらない作業です。
+* マルチプラットフォームと開発環境のサポートしています (例えば VS や Xcode など)。手書きコードで複数のプロジェクトファイルを維持しようとすると、エラーを誘発する上に単調でつまらないです。
-* よって、プログラマーが大々的にカスタマイズ可能なプロジェクトファイルを生成したいと考えました。プロジェクトファイルの生成は、将来的により重要となってくると考えています。
+* プログラマーが大々的にカスタマイズ可能なプロジェクトファイルを生成したいと考えました。プロジェクトファイルの生成は、将来的により重要となってくると考えています。
-* ソースファイルのディレクトリ構造は、プロジェクトファイル ソリューションの階層に自動的に反映されます。ソースファイルのブラウズが大変便利になりますが、手作業で作成するプロジェクトの維持はとても困難です。
+* ソースファイルのディレクトリ構造は、プロジェクト ファイル ソリューションの階層に自動反映されます。ソース ファイルのブラウズが大変便利になりますが、手書きコードで作成したプロジェクトの維持はとても困難です。
-* アンリアルエンジンのビルドコンフィギュレーションは非常に複雑で、手作業による維持は困難です。プロジェクトジェネレータは、透明性を持つビルドコンフィギュレーションを開発者に提供します。
+* アンリアル エンジンのビルド コンフィギュレーションは非常に複雑で、手書きコードによる維持は困難です。プロジェクト ジェネレータは、透明性を持つビルド コンフィギュレーションを開発者に提供します。
### プロジェクトには他にどんなファイルが含まれますか?
-C++ モジュールのソースコードと一緒に、生成されるプロジェクトにはその他のファイルが自動的に追加されます。これらのファイルの簡単な検索が目的です。以下は生成プロジェクトへ自動的に追加されるファイルをいくつか挙げた例です。
+C++ モジュールのソースコードと一緒に、生成されるプロジェクトにはその他のファイルが自動的に追加されます。これらのファイルの簡単な検索が目的です。以下は、生成プロジェクトへ自動追加されるファイルの例です。
-* シェーダーソースコード (*.usf ファイル)
+* シェーダー ソースコード (*.usf ファイル)
* エンジン ドキュメンテーション ファイル (*.udn ファイル)
* プログラム コンフィギュレーション ファイル (*.ini ファイル)
-* ローカライゼーションファイル (*.int ファイル)
+* ローカライゼーション ファイル (*.int ファイル)
* プログラム リソース ファイルとマニフェスト (*.rc、*.manifest)
-* 特定の外部 (非生成) プロジェクトファイル (例えば UnrealbuildTool や Clean)
+* 特定の外部 (非生成) プロジェクト ファイル (例えば UnrealbuildTool や Clean)
### ソース コントロールにプロジェクト ファイルがチェックインされないのはなぜですか?
-ソース コントロールのマージは、プロジェクト ファイルとのコンフリクトが生じ、面倒な作業であるうえ大変間違いが起こりやすい作業です。新しいシステムは、プロジェクトファイルを純粋な中間ファイルとして捉えるためこの作業を完全に回避することができます。加えて、異なるゲームプロジェクトに従事している各チームはそれぞれのソリューション ファイルが必要です。エピックで使用するプロジェクトファイルに修正を加えない限り、他のチームには実用性がないファイルとなる可能性が高くなります。
+ソース コントロールのマージは、プロジェクト ファイルとのコンフリクトが生じ、面倒な上、大変間違いが起こりやすい作業です。新しいシステムは、プロジェクトファイルを純粋な中間ファイルとして捉えるためこの作業を完全に回避することができます。加えて、異なるゲームプロジェクトに従事している各チームはそれぞれのソリューション ファイルが必要です。エピックで使用するプロジェクトファイルに修正を加えない限り、他のチームには実用性がないファイルとなる可能性が高くなります。
### `GenerateProjectFiles.bat` は実際に何を実行するのですか?
@@ -119,11 +130,11 @@ C++ モジュールのソースコードと一緒に、生成されるプロジ
* 法線ごとにコンパイルおよびデバッグ作業を行います。
-VS で使用しているプロジェクト ファイルの作業中に、ファイルがプロジェクト ジェネレータによって上書きされる恐れがあります。 このため通常の UE4 ソリューションファイルでデバッグ作業をする代わりに、VS へ UnrealBuildTool プロジェクトを直接読み込むと便利な場合もあります。
+VS で使用しているプロジェクト ファイルの作業中に、ファイルがプロジェクト ジェネレータによって上書きされる恐れがあります。このため通常の UE4 ソリューションファイルでデバッグ作業をする代わりに、VS へ UnrealBuildTool プロジェクトを直接読み込むと便利な場合もあります。
-### 複数のコンフィギュレーションの一斉ビルドはをどうやってできますか?
+### 複数のコンフィギュレーションの一括ビルドはどのようにしますか?
-Visual Studio の Batch Build 機能を使用します。この機能は [Build] メニューにあります。コンパイル作業を行う全てのコンフィギュレーションを選択してビルドをクリックします。将来的により簡単な作業を可能とするインターフェースの作成に取り組んでいます。
+Visual Studio の Batch Build 機能を使用します。この機能は [Build] メニューにあります。コンパイル作業を行うすべてのコンフィギュレーションを選択してビルドをクリックします。今後さらに作業が簡単になるようなインターフェースの作成に取り組んでいます。
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/ProjectFileGenerator/ProjectFileGenerator.KOR.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/ProjectFileGenerator/ProjectFileGenerator.KOR.udn
index 509d9e1d9501..fe300b0e948c 100644
--- a/Engine/Documentation/Source/Programming/UnrealBuildSystem/ProjectFileGenerator/ProjectFileGenerator.KOR.udn
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/ProjectFileGenerator/ProjectFileGenerator.KOR.udn
@@ -1,10 +1,11 @@
-INTSourceChangelist:3355414
+INTSourceChangelist:3426963
Availability:Public
Title:자동 프로젝트 파일 생성
-Crumbs:
+Crumbs:%ROOT%
Parent:Programming/UnrealBuildSystem
+Order:
Description:현재 워크스페이스에서 게임과 모듈에 쓸 프로젝트 파일을 자동으로 생성하는 프로세스입니다.
-Version: 4.9
+Version: 4.16
prereq:Programming/Development/BuildingUnrealEngine
topic-image:topic_prjFileGen.png
tags:Programming
@@ -53,9 +54,8 @@ Visual Studio 용 [](Programming/Development/VisualStudioSetup/UnrealVS) 에는
| 옵션 | 설명 ||
---- | ---- |
-CurrentPlatform | 감지된 타겟 플랫폼 전부가 아닌, 현재 데스크탑 플랫폼용 프로젝트만 생성합니다 (윈도우 또는 맥). |
--2012 | Visual Studio 2012 네이티브 포맷으로 프로젝트를 생성합니다. 기본적으로는 Visual Studio 2013 프로젝트 파일이 생성됩니다. |
--2013 | Visual Studio 2013 네이티브 포맷으로 프로젝트를 생성합니다. |
--2015 | Visual Studio 2015 네이티브 포맷으로 프로젝트를 생성합니다. 이 옵션 사용시 Visual C++ 2015 컴파일러가 사용됩니다. 기본값입니다. |
+-2015 | Visual Studio 2015 네이티브 포맷으로 프로젝트를 생성합니다. 이 옵션 사용시 Visual C++ 2015 컴파일러가 사용됩니다. |
+-2017 | VS 2017 원래 포맷으로 프로젝트를 생성합니다. 이 옵션을 설정하면 Visual C++ 2017 컴파일러를 사용합니다. |
-ThirdParty | 헤더와 써드 파티 라이브러리의 파일을 프로젝트에 추가합니다. PhysX, Steamworks, Bink 등에 대한 심볼과 파일을 Visual Assist 에서 확인하고자 할 때 좋을 수 있습니다. 그러나 프로젝트 파일 로드 시간이 길어질 수 있습니다! |
-Game `GameName` | 프로젝트 제너레이터에 다른 모든 프로젝트는 제외하고 지정된 프로젝트 이름에 대한 코드와 콘텐츠만 포함된 프로젝트를 생성하라 이릅니다. 프로젝트 이름도 반드시 지정하도록 하세요. 예를 들어 `GenerateProjectFiles.bat ShooterGame.uproject -Game` 이라 치면 ShooterGame 용 소스와 타겟만 들어있는 프로젝트가 생성됩니다. 하나의 게임 프로젝트와 함께 Engine 소스 코드와 프로그램을 포함시키려는 경우, `-Engine` 파라미터를 붙여도 됩니다. |
-Engine | `-Game` 과 함께 사용하면 Engine 코드, 콘텐츠, 프로그램도 생성되는 솔루션에 포함시키도록 합니다. 게임 프로젝트 작업을 하면서 엔진 소스 작업도 많이 할 것 같다 싶은 경우에 좋습니다. |
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.INT.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.INT.udn
index 7902af54c197..b1f1290f84f4 100644
--- a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.INT.udn
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.INT.udn
@@ -3,6 +3,10 @@ Title: Unreal Build System Target Files
Crumbs: %ROOT%, Programming, Programming\UnrealBuildSystem
Description:Reference for the target files used by Unreal Build System when building targets.
Version: 4.16
+Parent:Programming/UnrealBuildSystem
+Order:
+Type:reference
+Tags:Unreal Build System
[TOC (start:2 end:3)]
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.JPN.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.JPN.udn
index 2e260575a905..d191ae093e87 100644
--- a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.JPN.udn
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.JPN.udn
@@ -1,122 +1,43 @@
-INTSourceChangelist:2711147
+INTSourceChangelist:3392479
Availability:Public
Title:アンリアルビルド システムのターゲット ファイル
Crumbs: %ROOT%, Programming, Programming\UnrealBuildSystem
-Description:モジュールをビルドする際にアンリアル ビルド システムが使用するターゲット ファイルのリファレンス
-Version:4.9
+Description:ターゲットのビルド時にアンリアル ビルド システムが使用するターゲット ファイルのリファレンス
+Version:4.16
+Parent:Programming/UnrealBuildSystem
+Order:
+Type:reference
+Tags:Unreal Build System
[TOC (start:2 end:3)]
+### 概要
+UnrealBuildTool は、2 タイプのターゲットのビルドをサポートしています。
-アンリアル ビルド システムは、それぞれのアプリケーション UnrealBuildtool ビルドに対し **Target** ファイルを使用します。このビルドは、動的な Rules モジュールへコンパイルされます。これらのファイルは、かつては UnrealBuildTool へ直接コンパイルされた `UEBuild*.cs` ファイルを置き換えるものです。各ターゲットファイルは、UnrealBuildTool がゲームやプログラムのビルド方法の決定に使用するクラスを定義します。
+ * **Game** - クック済みデータの実行を要求するスタンドアロン ゲームです。
+ * **Client** - Game と同じですが、サーバー コードは含まれません。ネットワーク ゲームに役立ちます。
+ * **Client** - Game と同じですが、クライアント コードは含まれません。ネットワーク ゲームのデディケイテッド サーバーに役立ちます。
+ * **Editor** - アンリアル エディタを拡張するターゲットです。
+ * **Program** - アンリアル エンジンに加えてビルドされているスタンドアロン ユーティリティ プログラムです。
-現在の UnrealBuildTool は、 RulesModule.dll ファイルからビルドされるプロジェクトの適切なターゲットファイルを読み出します。
+ターゲットは、.target.cs 拡張子のついた C# ソース ファイルで宣言され、プロジェクトの *Source* ディレクトリに格納されます。それぞれの .target.cs ファイルは、TargetRules 基本クラスから派生したクラスを宣言し、コンストラクタからのビルド方法を調節するプロパティを設定します。ターゲットをビルドするように指示すると、UnrealBuildTool は target.cs ファイルをコンパイルし、その設定を定義するために中にクラスを構築します。
-2 タイプのターゲットファイルがあります。
+クラス名は、'Target' の前に宣言されたファイル名 と一致しなければなりません (MyProject.target.cs であれば、クラス 'MyProjectTarget' を定義します)。
-* **Game** - 共通の UE4 実行ファイルを利用するターゲットファイルです。
-* **Program** - スタンドアローン実行ファイルのターゲットです。ShaderCompileWorker、SlateViewer、UnrealHeaderTool はこのターゲットタイプです。
+以下が、代表的な target.cs ファイルの構造体です。
+ using UnrealBuildTool;
+ using System.Collections.Generic;
-## ターゲットファイルの命名と保存場所
-
-ターゲットファイルはプログラムのルート ディレクトリ、またはゲームの「Source」ディレクトリに格納する必要があり、[APPNAME].Target.cs の命名規則を使用しなくてはいけません。
-
-例として、\UE4\Engine\Source\Programs\ShaderCompileWorker の「ShaderCompileWorker プログラム」ディレクトリには「ShaderCompileWorker.Target.cs」ファイルが格納されます。
-
-同様に、ExampleGame の「Source」ディレクトリは UE4\ExampleGame|Source に位置し、「ExampleGame.Target.cs」ファイルを格納します。
-
-## ターゲットファイルのコンテンツ
-
-各ゲームやプログラムのターゲットファイルで定義されるクラスは、TargetRules (「RulesCompiler.cs」にあります) から派生します。
-
-クラス名は、ターゲットの前にツール名やゲーム名、その後にターゲットとなります。例えば、 ShaderCompileWorker ツールのターゲット ファイルで定義されるクラスは、「ShaderCompileWorkerTarget」と命名します。最後に必ず Target を入れてください。既存の *.Build.cs モジュールのルールクラスは全て同一クラスにコンパイルされるため、このクラスとの衝突を避けるために追加します。
-
-UnrealBuildTool は、Rules DLL からビルドターゲットの要求時に [APPNAME] を受け取り Target を付け足します。 上記の例に沿って UnrealBuildTool が ShaderCompileWorker Win64 Development を渡すと、 TargetRules クラス名として ShaderCompileWorkerTarget を要求します。
-
-### コンストラクタ
-
-コンストラクタはアプリケーション名と生成するターゲットタイプを設定します。以下は比較のための ExampleGameTarget のコンストラクタです。
-
- public ExampleGameTarget(TargetInfo Target)
- {
- Type = TargetType.Game;
- Name = "ExampleGame";
- }
-
-### バイナリ設定
-
-**TargetRules::SetupBinaries()** は UEBuildBinaryConfiguration インスタンスのリストの生成に使用します。このインスタンスは UnrealBuildTool が AppBinaries 配列を埋める際に使用します。
-
-### グローバル環境の設定
-
-**TargetRules::SetupGlobalEnvironment()** は、UnrealBuildTool のターゲットのさまざまなコンフィギュレーション設定に加え、グローバルな Compile および Link 環境の設定に使用します。
-
-[REGION:note]
-UEBuildGame クラスがデフォルトでこれらのニーズをカバーするため、現在のゲームには含まれません。ゲームによってこの設定を無効にする必要がある場合、問題なく対応が可能です。
-[/REGION]
-
-## ターゲットファイルの例
-
-以下は「ShaderCompileWorker.Target.cs」ファイルの完全実例です。
-
- // Copyright 1998-2017 Epic Games, Inc.All rights reserved.
-
- using UnrealBuildTool;
- using System.Collections.Generic;
-
- public class ShaderCompileWorkerTarget :TargetRules
- {
- public ShaderCompileWorkerTarget(TargetInfo Target)
- {
- Type = TargetType.Program;
- Name = "ShaderCompileWorker";
- }
-
- //
- // TargetRules interface.
- //
-
- public override void SetupBinaries(
- TargetInfo Target,
- ref List OutBuildBinaryConfigurations,
- ref List OutExtraModuleNames
- )
- {
- List LinkModules = new List() { "Core", "ShaderCore", "RenderCore", "RHI", "WindowsTools", "ShaderCompileWorker" };
- OutBuildBinaryConfigurations.Add(
- new UEBuildBinaryConfiguration( InType:UEBuildBinaryType.Executable,
- InModuleNames:LinkModules )
- );
- }
-
- public override void SetupGlobalEnvironment(
- TargetInfo Target,
- ref LinkEnvironmentConfiguration OutLinkEnvironmentConfiguration,
- ref CPPEnvironmentConfiguration OutCPPEnvironmentConfiguration
- )
- {
- // Turn off various third party features we don't need (必要のない各種第三者機能をオフにします)
- UEBuildConfiguration.bAllowSteamworks = false;
- UEBuildConfiguration.bAllowLive = false;
- UEBuildConfiguration.bCompilePerforce = false;
-
- // Currently we force Lean and Mean mode (現在、Lean モードと Mean モードを強制します)
- UEBuildConfiguration.bCompileLeanAndMeanUE = true;
-
- // Currently this app is not linking against the engine, so we'll compile out references from Core to the rest of the engine (現在、この app はエンジンにリンクしていません。従って、リファレンスを Core からエンジンの残りの部分にコンパイルしていきます)
- UEBuildConfiguration.bCompileAgainstEngine = false;
-
- // ShaderCompileWorker はコンソール アプリケーションです。Windows アプリケーションではありません (エントリーポイントは WinMain() ではなく main() に設定してください )
- OutLinkEnvironmentConfiguration.bIsBuildingConsoleApplication = true;
-
- // Disable logging, as the workers are spawned often and logging will just slow them down (ワーカーはたびたびスポーンされますが、ロギングが遅れの原因になるので、ロギングは無効にしてください)
- OutCPPEnvironmentConfiguration.Definitions.Add("ALLOW_LOG_FILE=0");
- OutCPPEnvironmentConfiguration.Definitions.Add("HACK_HEADER_GENERATOR=1");
- OutCPPEnvironmentConfiguration.Definitions.Add("HACK_SHADER_COMPILER_WORKER=1");
- }
- }
-
+ public class MyProjectTarget :TargetRules
+ {
+ public MyProjectTarget(TargetInfo Target) : base(Target)
+ {
+ Type = TargetType.Game;
+ // Other properties go here (その他のプロパティはここにくる)
+ }
+ }
+[INCLUDE:Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties]
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.KOR.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.KOR.udn
index 49ac6f3ae986..161ab070fd6e 100644
--- a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.KOR.udn
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFiles.KOR.udn
@@ -1,125 +1,43 @@
-INTSourceChangelist:3356804
+INTSourceChangelist:3392479
Availability:Public
Title: 언리얼 빌드 시스템 타겟 파일
-Crumbs:
-Description:모듈을 빌드할 때 언리얼 빌드 시스템에 사용되는 타겟 파일에 대한 참고서입니다.
-Version: 4.9
-parent:Programming/UnrealBuildSystem
-topic-image:topic_targets.png
-tags:Programming
-tags:Unreal Build System
-type:reference
+Crumbs: %ROOT%, Programming, Programming\UnrealBuildSystem
+Description:타겟 빌드 시 언리얼 빌드 시스템에 사용되는 타겟 파일 참고서입니다.
+Version: 4.16
+Parent:Programming/UnrealBuildSystem
+Order:
+Type:reference
+Tags:Unreal Build System
[TOC (start:2 end:3)]
-언리얼 빌드 시스템은, UnrealBuildTool 이 빌드하여 동적인 Rules 모듈에 컴파일되는 각 어플리케이션에 대해 **타겟** (Target) 파일을 사용합니다. 이 파일은 원래 UnrealBuildTool 에 직접 컴파일되었던 `UEBuild*.cs` 파일을 대신합니다. 각 타겟 파일이 정의하는 클래스를 UnrealBuildTool 이 사용하여, 게임이나 프로그램 빌드 방식을 결정합니다.
+### 개요
-UnrealBuildTool 은 이제 RulesModule.dll 을 통해 빌드중인 프로젝트에 대한 타겟을 제대로 구해옵니다.
+UnrealBuildTool 은 여러가지 타겟 유형 빌드를 지원합니다:
-타겟의 종류는 두 가지입니다:
+ * **Game** - 실행에 쿠킹 데이터를 요하는 독립형 게임입니다.
+ * **Client** - Game 과 같지만, 서버 코드를 포함하지 않습니다. 네트워크 게임에 유용합니다.
+ * **Server** - Game 과 같지만, 클라이언트 코드를 포함하지 않습니다. 네트워크 게임의 데디케이티드 서버에 좋습니다.
+ * **Editor** - 언리얼 에디터를 확장하는 타겟입니다.
+ * **Program** - 언리얼 엔진 기반 위에 빌드된 독립형 유틸리티 프로그램입니다.
-* **Game** - '공유' UE4 실행파일을 활용하는 타겟입니다.
-* **Program** - 독립형 실행파일 타겟입니다. ShaderCompileWorker, SlateViewer, UnrealHeaderTool 등이 이런 종류의 타겟입니다.
+타겟은 .target.cs 확장자로 된 C# 소스 파일로 선언되며, 프로젝트의 *Source* 디렉토리 안에 저장됩니다. 각 .target.cs 파일은 TargetRules 베이스 클래스에서 파생되는 클래스를 선언하며, 생성자에서 어떻게 빌드할지를 조절하는 프로퍼티를 설정합니다. 타겟 빌드 요청을 받으면, UnrealBuildTool 은 target.cs 파일을 컴파일하고 그 안에 세팅 결정을 위한 클래스를 생성합니다.
+클래스 이름은 'Target' 뒤에 나오는 그것이 선언된 파일 이름과 일치해야 합니다 (예를 들어 MyProject.target.cs 는 'MyProjectTarget' 클래스를 정의합니다).
-## 타겟 파일 작명규칙과 위치
+타겟 파일의 전형적인 구조체는 다음과 같습니다.
-타겟 파일은 반드시 프로그램의 루트 디렉토리나 게임의 `Source` 디렉토리에 있어야 하며, 작명규칙은 이렇습니다: `[APPNAME].Target.cs`
-
-예를 들어 ShaderCompileWorker 프로그램 디렉토리는 `\UE4\Engine\Source\Programs\ShaderCompileWorker` 이며, `ShaderCompileWorker.Target.cs` 파일이 들어 있습니다.
-
-비슷하게 ExampleGame `Source` 디렉토리는 `UE4\ExampleGame\Source` 이며, `ExampleGame.Target.cs` 파일이 들어 있습니다.
-
-## 타겟 파일 내용
-
-각 게임이나 프로그램에 대한 타겟 파일에 정의되는 클래스는 (`RulesCompiler.cs` 에서 찾을 수 있는) `TargetRules` 에서 파생됩니다.
-
-클래스의 이름은 툴이나 게임의 이름에 `target` 을 붙여 만듭니다. 예를 들어 ShaderCompileWorker 툴의 타겟 파일에 정의된 클래스는 `ShaderCompileWorkerTarget` 가 됩니다. 마지막의 `Target` 은 **필수** 입니다. 기존 `*.Build.cs` 모듈 룰 클래스도 모두 같은 DLL 속에 컴파일되므로, 이름이 충돌되지 않도록 하기 위해 추가되는 것입니다.
-
-UnrealBuildTool 은 Rules DLL 에서 빌드 타겟을 요청할 때, `[APPNAME]` 을 취한 다음 `Target` 을 덧붙입니다. 그래서 위와 같은 예제를 사용할 때, UnrealBuildTool 에 `ShaderCompileWorker Win64 Development` 가 전달되면, `ShaderCompileWorkerTarget` 을 관심있는 `TargetRules` 클래스 이름으로 요청합니다.
-
-### 생성자
-
-생성자(constructor)는 생성할 어플리케이션 이름과 타겟 종류를 설정합니다. 비교용 ExampleGameTarget 생성자입니다:
-
- public ExampleGameTarget(TargetInfo Target)
- {
- Type = TargetType.Game;
- Name = "ExampleGame";
- }
-
-### Setup Binaries
-
-`TargetRules::SetupBinaries()` 는 `UEBuildBinaryConfiguration` 인스턴스 목록을 생성하는 데 사용되는데, UnrealBuildTool 은 이것을 사용하여 (생성하고자 하는 대상인) AppBinaries 배열을 채웁니다.
-
-### Setup Global Environment
-
-`TargetRules::SetupGlobalEnvironment()` 는 타겟에 대한 UnrealBuildTool 의 여러가지 빌드 환경설정 세팅을 설정하는 데는 물론, 글로벌 Compile, Link 환경을 셋업하는 데도 사용됩니다.
-
-[REGION:note]
-**주:** 현재 게임에는 기본적으로 UEBuildGame 클래스가 그 작업을 처리해 주고 있기 때문에, 이 함수가 들어있지 않습니다. 그러나 게임에서 이 세팅을 덮어쓰고자 한다면, 얼마든지 그리 할 수 있습니다.
-[/REGION]
-
-## 예제 타겟 파일
-
-완성 예제로 ShaderCompileWorker.Target.cs 파일을 들어보겠습니다:
-
- // Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
-
- using UnrealBuildTool;
- using System.Collections.Generic;
-
- public class ShaderCompileWorkerTarget : TargetRules
- {
- public ShaderCompileWorkerTarget(TargetInfo Target)
- {
- Type = TargetType.Program;
- Name = "ShaderCompileWorker";
- }
-
- //
- // TargetRules interface.
- //
-
- public override void SetupBinaries(
- TargetInfo Target,
- ref List OutBuildBinaryConfigurations,
- ref List OutExtraModuleNames
- )
- {
- List LinkModules = new List() { "Core", "ShaderCore", "RenderCore", "RHI", "WindowsTools", "ShaderCompileWorker" };
- OutBuildBinaryConfigurations.Add(
- new UEBuildBinaryConfiguration( InType: UEBuildBinaryType.Executable,
- InModuleNames: LinkModules )
- );
- }
-
- public override void SetupGlobalEnvironment(
- TargetInfo Target,
- ref LinkEnvironmentConfiguration OutLinkEnvironmentConfiguration,
- ref CPPEnvironmentConfiguration OutCPPEnvironmentConfiguration
- )
- {
- // 필요치 않은 써드 파티 기능들을 끕니다.
- UEBuildConfiguration.bAllowSteamworks = false;
- UEBuildConfiguration.bAllowLive = false;
- UEBuildConfiguration.bCompilePerforce = false;
-
- // 현재 Lean and Mean 모드를 강제합니다.
- UEBuildConfiguration.bCompileLeanAndMeanUE = true;
-
- // 현재 이 앱은 엔진에 대해 링크되고 있지 않으니, Core 에서 엔진 나머지 부분으로의 참조를 컴파일하지 않습니다.
- UEBuildConfiguration.bCompileAgainstEngine = false;
-
- // ShaderCompileWorker 는 콘솔 어플리케이션이며, 윈도우 앱은 아닙니다 (도입점을 WinMain() 대신 main() 으로 설정합니다).
- OutLinkEnvironmentConfiguration.bIsBuildingConsoleApplication = true;
-
- // 워커가 자주 스폰되어 느려지는 요인이 될 로깅을 끕니다.
- OutCPPEnvironmentConfiguration.Definitions.Add("ALLOW_LOG_FILE=0");
- OutCPPEnvironmentConfiguration.Definitions.Add("HACK_HEADER_GENERATOR=1");
- OutCPPEnvironmentConfiguration.Definitions.Add("HACK_SHADER_COMPILER_WORKER=1");
- }
- }
+ using UnrealBuildTool;
+ using System.Collections.Generic;
+ public class MyProjectTarget : TargetRules
+ {
+ public MyProjectTarget(TargetInfo Target) : base(Target)
+ {
+ Type = TargetType.Game;
+ // Other properties go here
+ }
+ }
+[INCLUDE:Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties]
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.CHN.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.CHN.udn
new file mode 100644
index 000000000000..fd4e3ce466e0
--- /dev/null
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.CHN.udn
@@ -0,0 +1,240 @@
+INTSourceChangelist:0
+Availability: NoPublish
+Title: Build Configuration Properties Page
+Crumbs:
+Description: This is a procedurally generated markdown page.
+Version: 4.16
+
+### Read-Only Properties
+
+$ Name (String): The name of this target.
+
+$ Platform (UnrealTargetPlatform): Platform that this target is being built for.
+
+$ Configuration (UnrealTargetConfiguration): The configuration being built.
+
+$ Architecture (String): Architecture that the target is being built for (or an empty string for the default).
+
+$ ProjectFile (FileReference): Path to the project file for the project containing this target.
+
+
+### Read/Write Properties
+$ Type (TargetType): The type of target.
+
+$ bUsesSteam (Boolean): Whether the target uses Steam.
+
+$ bUsesCEF3 (Boolean): Whether the target uses CEF3.
+
+$ bUsesSlate (Boolean): Whether the project uses visual Slate UI (as opposed to the low level windowing/messaging, which is always available).
+
+$ bUseStaticCRT (Boolean): Forces linking against the static CRT. This is not fully supported across the engine due to the need for allocator implementations to be shared (for example), and TPS libraries to be consistent with each other, but can be used for utility programs.
+
+$ bDebugBuildsActuallyUseDebugCRT (Boolean): Enables the debug C++ runtime (CRT) for debug builds. By default we always use the release runtime, since the debug version isn't particularly useful when debugging Unreal Engine projects, and linking against the debug CRT libraries forces our third party library dependencies to also be compiled using the debug CRT (and often perform more slowly). Often it can be inconvenient to require a separate copy of the debug versions of third party static libraries simply so that you can debug your program's code.
+
+$ bOutputPubliclyDistributable (Boolean): Whether the output from this target can be publicly distributed, even if it has dependencies on modules that are in folders with special restrictions (eg. CarefullyRedist, NotForLicensees, NoRedist).
+
+$ UndecoratedConfiguration (UnrealTargetConfiguration): Specifies the configuration whose binaries do not require a "-Platform-Configuration" suffix.
+
+$ bBuildAllPlugins (Boolean): Build all the plugins that we can find, even if they're not enabled. This is particularly useful for content-only projects, where you're building the UE4Editor target but running it with a game that enables a plugin.
+
+$ AdditionalPlugins (List<String>): A list of additional plugins which need to be included in this target. This allows referencing non-optional plugin modules which cannot be disabled, and allows building against specific modules in program targets which do not fit the categories in ModuleHostType.
+
+$ PakSigningKeysFile (String): Path to the set of pak signing keys to embed in the executable.
+
+$ SolutionDirectory (String): Allows a Program Target to specify it's own solution folder path.
+
+$ bOutputToEngineBinaries (Boolean): Output the executable to the engine binaries folder.
+
+$ bShouldCompileAsDLL (Boolean): Whether this target should be compiled as a DLL. Requires LinkType to be set to TargetLinkType.Monolithic.
+
+$ ExeBinariesSubFolder (String): Subfolder to place executables in, relative to the default location.
+
+$ GeneratedCodeVersion (EGeneratedCodeVersion): Allow target module to override UHT code generation version.
+
+$ bCompilePhysX (Boolean): Whether to include PhysX support.
+
+$ bCompileAPEX (Boolean): Whether to include PhysX APEX support.
+
+$ bCompileNvCloth (Boolean): Whether to include NvCloth.
+
+$ bRuntimePhysicsCooking (Boolean): Whether to allow runtime cooking of physics.
+
+$ bCompileBox2D (Boolean): Whether to include Box2D support.
+
+$ bCompileICU (Boolean): Whether to include ICU unicode/i18n support in Core.
+
+$ bCompileCEF3 (Boolean): Whether to compile CEF3 support.
+
+$ bBuildEditor (Boolean): Whether to compile the editor or not. Only desktop platforms (Windows or Mac) will use this, other platforms force this to false.
+
+$ bBuildRequiresCookedData (Boolean): Whether to compile code related to building assets. Consoles generally cannot build assets. Desktop platforms generally can.
+
+$ bBuildWithEditorOnlyData (Boolean): Whether to compile WITH_EDITORONLY_DATA disabled. Only Windows will use this, other platforms force this to false.
+
+$ bBuildDeveloperTools (Boolean): Whether to compile the developer tools.
+
+$ bForceBuildTargetPlatforms (Boolean): Whether to force compiling the target platform modules, even if they wouldn't normally be built.
+
+$ bForceBuildShaderFormats (Boolean): Whether to force compiling shader format modules, even if they wouldn't normally be built.
+
+$ bCompileSimplygon (Boolean): Whether we should compile in support for Simplygon or not.
+
+$ bCompileSimplygonSSF (Boolean): Whether we should compile in support for Simplygon's SSF library or not.
+
+$ bCompileLeanAndMeanUE (Boolean): Whether to compile lean and mean version of UE.
+
+$ bCompileAgainstEngine (Boolean): Enabled for all builds that include the engine project. Disabled only when building standalone apps that only link with Core.
+
+$ bCompileAgainstCoreUObject (Boolean): Enabled for all builds that include the CoreUObject project. Disabled only when building standalone apps that only link with Core.
+
+$ bIncludeADO (Boolean): If true, include ADO database support in core.
+
+$ bCompileRecast (Boolean): Whether to compile Recast navmesh generation.
+
+$ bCompileSpeedTree (Boolean): Whether to compile SpeedTree support.
+
+$ bForceEnableExceptions (Boolean): Enable exceptions for all modules.
+
+$ bForceEnableRTTI (Boolean): Enable RTTI for all modules.
+
+$ bWithServerCode (Boolean): Compile server-only code.
+
+$ bCompileWithStatsWithoutEngine (Boolean): Whether to include stats support even without the engine.
+
+$ bCompileWithPluginSupport (Boolean): Whether to include plugin support.
+
+$ bWithPerfCounters (Boolean): Whether to include PerfCounters support.
+
+$ bUseLoggingInShipping (Boolean): Whether to turn on logging for test/shipping builds.
+
+$ bLoggingToMemoryEnabled (Boolean): Whether to turn on logging to memory for test/shipping builds.
+
+$ bUseLauncherChecks (Boolean): Whether to check that the process was launched through an external launcher.
+
+$ bUseChecksInShipping (Boolean): Whether to turn on checks (asserts) for test/shipping builds.
+
+$ bCompileFreeType (Boolean): True if we need FreeType support.
+
+$ bCompileForSize (Boolean): True if we want to favor optimizing size over speed.
+
+$ bForceCompileDevelopmentAutomationTests (Boolean): Whether to compile development automation tests.
+
+$ bForceCompilePerformanceAutomationTests (Boolean): Whether to compile performance automation tests.
+
+$ bEventDrivenLoader (Boolean): If true, event driven loader will be used in cooked builds. @todoio This needs to be replaced by a runtime solution after async loading refactor.
+
+$ bEnforceIWYU (Boolean): Enforce "include what you use" rules; warns if monolithic headers (Engine.h, UnrealEd.h, etc...) are used, and checks that source files include their matching header first.
+
+$ bHasExports (Boolean): Whether the final executable should export symbols.
+
+$ bPrecompile (Boolean): Make static libraries for all engine modules as intermediates for this target.
+
+$ bUsePrecompiled (Boolean): Use existing static libraries for all engine modules in this target.
+
+$ bEnableOSX109Support (Boolean): Whether we should compile with support for OS X 10.9 Mavericks. Used for some tools that we need to be compatible with this version of OS X.
+
+$ bIsBuildingConsoleApplication (Boolean): True if this is a console application that's being built.
+
+$ bDisableSymbolCache (Boolean): True if debug symbols that are cached for some platforms should not be created.
+
+$ bUseUnityBuild (Boolean): Whether to unify C++ code into larger files for faster compilation.
+
+$ bForceUnityBuild (Boolean): Whether to force C++ source files to be combined into larger files for faster compilation.
+
+$ bUseAdaptiveUnityBuild (Boolean): Use a heuristic to determine which files are currently being iterated on and exclude them from unity blobs, result in faster incremental compile times. The current implementation uses the read-only flag to distinguish the working set, assuming that files will be made writable by the source control system if they are being modified. This is true for Perforce, but not for Git.
+
+$ bAdaptiveUnityDisablesOptimizations (Boolean): Disable optimization for files that are in the adaptive non-unity working set.
+
+$ bAdaptiveUnityDisablesPCH (Boolean): Disables force-included PCHs for files that are in the adaptive non-unity working set.
+
+$ MinGameModuleSourceFilesForUnityBuild (Int32): The number of source files in a game module before unity build will be activated for that module. This allows small game modules to have faster iterative compile times for single files, at the expense of slower full rebuild times. This setting can be overridden by the bFasterWithoutUnity option in a module's Build.cs file.
+
+$ bShadowVariableErrors (Boolean): Forces shadow variable warnings to be treated as errors on platforms that support it.
+
+$ bUndefinedIdentifierErrors (Boolean): Forces the use of undefined identifiers in conditional expressions to be treated as errors.
+
+$ bUseFastMonoCalls (Boolean): New Monolithic Graphics drivers have optional "fast calls" replacing various D3d functions
+
+$ bUseFastSemanticsRenderContexts (Boolean): New Xbox driver supports a "fast semantics" context type. This switches it on for the immediate and deferred contexts Try disabling this if you see rendering issues and/or crashes inthe Xbox RHI.
+
+$ NumIncludedBytesPerUnityCPP (Int32): An approximate number of bytes of C++ code to target for inclusion in a single unified C++ file.
+
+$ bStressTestUnity (Boolean): Whether to stress test the C++ unity build robustness by including all C++ files files in a project from a single unified file.
+
+$ bForceDebugInfo (Boolean): Whether to force debug info to be generated.
+
+$ bDisableDebugInfo (Boolean): Whether to globally disable debug info generation; see DebugInfoHeuristics.cs for per-config and per-platform options.
+
+$ bDisableDebugInfoForGeneratedCode (Boolean): Whether to disable debug info generation for generated files. This improves link times for modules that have a lot of generated glue code.
+
+$ bOmitPCDebugInfoInDevelopment (Boolean): Whether to disable debug info on PC in development builds (for faster developer iteration, as link times are extremely fast with debug info disabled).
+
+$ bUsePDBFiles (Boolean): Whether PDB files should be used for Visual C++ builds.
+
+$ bUsePCHFiles (Boolean): Whether PCH files should be used.
+
+$ MinFilesUsingPrecompiledHeader (Int32): The minimum number of files that must use a pre-compiled header before it will be created and used.
+
+$ bForcePrecompiledHeaderForGameModules (Boolean): When enabled, a precompiled header is always generated for game modules, even if there are only a few source files in the module. This greatly improves compile times for iterative changes on a few files in the project, at the expense of slower full rebuild times for small game projects. This can be overridden by setting MinFilesUsingPrecompiledHeaderOverride in a module's Build.cs file.
+
+$ bUseIncrementalLinking (Boolean): Whether to use incremental linking or not. Incremental linking can yield faster iteration times when making small changes. Currently disabled by default because it tends to behave a bit buggy on some computers (PDB-related compile errors).
+
+$ bAllowLTCG (Boolean): Whether to allow the use of link time code generation (LTCG).
+
+$ bAllowASLRInShipping (Boolean): Whether to allow the use of ASLR (address space layout randomization) if supported. Only applies to shipping builds.
+
+$ bSupportEditAndContinue (Boolean): Whether to support edit and continue. Only works on Microsoft compilers in 32-bit compiles.
+
+$ bOmitFramePointers (Boolean): Whether to omit frame pointers or not. Disabling is useful for e.g. memory profiling on the PC.
+
+$ bStripSymbolsOnIOS (Boolean): Whether to strip iOS symbols or not (implied by bGeneratedSYMFile).
+
+$ bUseMallocProfiler (Boolean): If true, then enable memory profiling in the build (defines USE_MALLOC_PROFILER=1 and forces bOmitFramePointers=false).
+
+$ bUseSharedPCHs (Boolean): Enables "Shared PCHs", a feature which significantly speeds up compile times by attempting to share certain PCH files between modules that UBT detects is including those PCH's header files.
+
+$ bUseShippingPhysXLibraries (Boolean): True if Development and Release builds should use the release configuration of PhysX/APEX.
+
+$ bUseCheckedPhysXLibraries (Boolean): True if Development and Release builds should use the checked configuration of PhysX/APEX. if bUseShippingPhysXLibraries is true this is ignored.
+
+$ bCheckLicenseViolations (Boolean): Tells the UBT to check if module currently being built is violating EULA.
+
+$ bBreakBuildOnLicenseViolation (Boolean): Tells the UBT to break build if module currently being built is violating EULA.
+
+$ bUseFastPDBLinking (Boolean): Whether to use the :FASTLINK option when building with /DEBUG to create local PDBs on Windows. Fast, but currently seems to have problems finding symbols in the debugger.
+
+$ bCreateMapFile (Boolean): Outputs a map file as part of the build.
+
+$ bEnableCodeAnalysis (Boolean): Enables code analysis mode. Currently, this has specific requirements. It only works on Windows platform with the MSVC compiler. Also, it requires a version of the compiler that supports the /analyze option, such as Visual Studio 2013.
+
+$ BundleVersion (String): Bundle version for Mac apps.
+
+$ bDeployAfterCompile (Boolean): Whether to deploy the executable after compilation on platforms that require deployment.
+
+$ bCreateStubIPA (Boolean): If true, then a stub IPA will be generated when compiling is done (minimal files needed for a valid IPA).
+
+$ bCopyAppBundleBackToDevice (Boolean): If true, then a stub IPA will be generated when compiling is done (minimal files needed for a valid IPA).
+
+$ bAllowRemotelyCompiledPCHs (Boolean): When enabled, allows XGE to compile pre-compiled header files on remote machines. Otherwise, PCHs are always generated locally.
+
+$ bCheckSystemHeadersForModification (Boolean): Whether headers in system paths should be checked for modification when determining outdated actions.
+
+$ bDisableLinking (Boolean): Whether to disable linking for this target.
+
+$ bFormalBuild (Boolean): Indicates that this is a formal build, intended for distribution. This flag is automatically set to true when Build.version has a changelist set. The only behavior currently bound to this flag is to compile the default resource file separately for each binary so that the OriginalFilename field is set correctly. By default, we only compile the resource once to reduce build times.
+
+$ bFlushBuildDirOnRemoteMac (Boolean): Whether to clean Builds directory on a remote Mac before building.
+
+$ bPrintToolChainTimingInfo (Boolean): Whether to write detailed timing info from the compiler and linker.
+
+$ PCHOutputDirectory (String): The directory to put precompiled header files in. Experimental setting to allow using a path on a faster drive. Defaults to the standard output directory if not set.
+
+$ GlobalDefinitions (List<String>): Macros to define globally across the whole target.
+
+$ ExtraModuleNames (List<String>): List of additional modules to be compiled into the target.
+
+$ BuildEnvironment (TargetBuildEnvironment): Specifies the build environment for this target. See TargetBuildEnvironment for more infomation on the available options.
+
+$ OverrideExecutableFileExtension (String): Can be set to override the file extension of the executable file (normally .exe or .dll on Windows, for example)
+
+
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.INT.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.INT.udn
index e8ce0b77e3d5..a3d5b3faf807 100644
--- a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.INT.udn
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.INT.udn
@@ -42,6 +42,8 @@ $ PakSigningKeysFile (String): Path to the set of pak signing keys to embed in t
$ SolutionDirectory (String): Allows a Program Target to specify it's own solution folder path.
+$ bBuildInSolutionByDefault (Nullable<Boolean>): Whether the target should be included in the default solution build configuration
+
$ bOutputToEngineBinaries (Boolean): Output the executable to the engine binaries folder.
$ bShouldCompileAsDLL (Boolean): Whether this target should be compiled as a DLL. Requires LinkType to be set to TargetLinkType.Monolithic.
@@ -56,8 +58,6 @@ $ bCompileAPEX (Boolean): Whether to include PhysX APEX support.
$ bCompileNvCloth (Boolean): Whether to include NvCloth.
-$ bRuntimePhysicsCooking (Boolean): Whether to allow runtime cooking of physics.
-
$ bCompileBox2D (Boolean): Whether to include Box2D support.
$ bCompileICU (Boolean): Whether to include ICU unicode/i18n support in Core.
@@ -82,6 +82,8 @@ $ bCompileSimplygonSSF (Boolean): Whether we should compile in support for Simpl
$ bCompileLeanAndMeanUE (Boolean): Whether to compile lean and mean version of UE.
+$ bUseCacheFreedOSAllocs (Boolean): Whether to utilize cache freed OS allocs with MallocBinned
+
$ bCompileAgainstEngine (Boolean): Enabled for all builds that include the engine project. Disabled only when building standalone apps that only link with Core.
$ bCompileAgainstCoreUObject (Boolean): Enabled for all builds that include the CoreUObject project. Disabled only when building standalone apps that only link with Core.
@@ -204,8 +206,6 @@ $ bUseFastPDBLinking (Boolean): Whether to use the :FASTLINK option when buildin
$ bCreateMapFile (Boolean): Outputs a map file as part of the build.
-$ bEnableCodeAnalysis (Boolean): Enables code analysis mode. Currently, this has specific requirements. It only works on Windows platform with the MSVC compiler. Also, it requires a version of the compiler that supports the /analyze option, such as Visual Studio 2013.
-
$ BundleVersion (String): Bundle version for Mac apps.
$ bDeployAfterCompile (Boolean): Whether to deploy the executable after compilation on platforms that require deployment.
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.JPN.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.JPN.udn
new file mode 100644
index 000000000000..e5dd3edc88b8
--- /dev/null
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.JPN.udn
@@ -0,0 +1,244 @@
+INTSourceChangelist:3392479
+Availability:NoPublish
+Title:ビルド コンフィギュレーション プロパティのページ
+Crumbs:%ROOT%
+Description:プロシージャルに生成されるマークダウンの説明です。
+Version:4.16
+Parent:Programming/UnrealBuildSystem/TargetFiles
+Order:
+Type:reference
+Tags:Unreal Build System
+
+### 読み取り専用プロパティ
+
+$ Name (String):このターゲットの名前です。
+
+$ Platform (UnrealTargetPlatform):このターゲットのビルド先プラットフォームです。
+
+$ Configuration (UnrealTargetConfiguration):ビルド中のコンフィギュレーションです。
+
+$ Architecture (String):ターゲットがビルド先アーキテクチャ (もしくはデフォルト用の空のストリング) です。
+
+$ ProjectFile (FileReference):このターゲットを含むプロジェクトのプロジェクト ファイルへのパスです。
+
+
+### 読み取り / 書き込み用プロパティ
+$ Type (TargetType):ターゲットの型です。
+
+$ bUsesSteam (Boolean):ターゲットが Steam を使用するかどうかを指定します。
+
+$ bUsesCEF3 (Boolean):ターゲットが CEF3 を使用するかどうかを指定します。
+
+$ bUsesSlate (Boolean):プロジェクトで視覚的な Slate UI を使用するかどうかを指定します (常に使用できるローレベル ウィンドウイング / メッセージングとは対照的に)。
+
+$ bUseStaticCRT (Boolean):強制的に CRT に静的リンクします。アロケータ インプリメンテーションの共有を必要としたり、TPS ライブラリに整合性が必要なので、エンジン全体でサポートしているわけではありませんが、ユーティリティ プログラムで使用することができます。
+
+$ bDebugBuildsActuallyUseDebugCRT (Boolean):デバッグ ビルドのデバッグ C++ ランタイム (CRT) を有効にします。アンリアル エンジン プロジェクトをデバッグする場合、デバッグ版がそこまで便利なわけでもないので、デフォルトで常にリリース ランタイムを使用しています。また、Debug CRT ライブラリへリンク付けするとサードパーティ ライブラリ依存も Debug CRT を使って強制的にコンパイルされます (一般的にさらに遅くなります)。プログラム コードのデバッグのためだけにサードパーティ統計ライブラリのデバッグ バージョンを別に要求するのは面倒くさい場合が多いです。
+
+$ bOutputPubliclyDistributable (Boolean):モジュール上の依存関係が特別な制約をもつフォルダ (CarefullyRedist、NotForLicensees、NoRedist など) 内にある場合でも、このターゲットからの出力を公開配布できるかどうかを指定します。
+
+$ UndecoratedConfiguration (UnrealTargetConfiguration):コンフィギュレーションのバイナリが "-Platform-Configuration" サフィックスを要求しないように指定します。
+
+$ bBuildAllPlugins (Boolean):有効にされていなくても見つけることができるすべてのプラグインをビルドします。ビルドしている UE4Editor ターゲットをプラグインを有効にするゲームで実行するような、コンテンツ専用プロジェクトに特に便利です。
+
+$ AdditionalPlugins (List<String>):このターゲットにインクルードする必要のある追加プラグイン リストです。無効にすることができないオプショナルではないプラグイン モジュールの参照を可能にし、ModuleHostType の分類に当てはまらないプログラム ターゲットの特定モジュールに対してビルドを可能にします。
+
+$ PakSigningKeysFile (String):実行ファイルに埋め込むための PAK ログイン キーへのパスです。
+
+$ SolutionDirectory (String):プログラム ターゲットが独自のソリューション フォルダ パスを指定できるようにします。
+
+$ bOutputToEngineBinaries (Boolean):実行ファイルをエンジン バイナリ フォルダへ出力します。
+
+$ bShouldCompileAsDLL (Boolean):このターゲットを DLL としてコンパイルするかどうかを指定します。Requires LinkType を TargetLinkType.Monolithic に設定する必要があります。
+
+$ ExeBinariesSubFolder (String):デフォルト位置に対して、実行ファイルを格納するサブフォルダです。
+
+$ GeneratedCodeVersion (EGeneratedCodeVersion):ターゲット モジュールが UHT コード生成版をオーバーライドできるようにします。
+
+$ bCompilePhysX (Boolean):PhysX サポートをインクルードするかどうかを指定します。
+
+$ bCompileAPEX (Boolean):PhysX APEX サポートをインクルードするかどうかを指定します。
+
+$ bCompileNvCloth (Boolean):NvCloth をインクルードするかどうかを指定します。
+
+$ bRuntimePhysicsCooking (Boolean):物理のランタイム クッキングを可能にするかどうか指定します。
+
+$ bCompileBox2D (Boolean):Box2D サポートをインクルードするかどうか指定します。
+
+$ bCompileICU (Boolean):ICU unicode/i18n サポートをコアにインクルードするかどうか指定します。
+
+$ bCompileCEF3 (Boolean):CEF3 サポートをコンパイルするかどうか指定します。
+
+$ bBuildEditor (Boolean):エディタをコンパイルするかどうか指定します。プラットフォームがデスクトップ (Windows または Mac) の場合のみ使用します。それ以外のプラットフォームで使用すると false となります。
+
+$ bBuildRequiresCookedData (Boolean):ビルド アセットに関連したコードをコンパイルするかどうか設定します。コンソールは一般的にアセットのビルドはできません。通常、デスクトップ プラットフォームはできます。
+
+$ bBuildWithEditorOnlyData (Boolean):WITH_EDITORONLY_DATA を無効にコンパイルするかどうか指定します。Windows のみで使用します。それ以外のプラットフォームでは強制的に false になります。
+
+$ bBuildDeveloperTools (Boolean):コンパイル ツールをコンパイルするかどうか指定します。
+
+$ bForceBuildTargetPlatforms (Boolean):通常はビルドされない場合でも、ターゲット プラットフォーム モジュールを強制的にコンパイルするかどうか指定します。
+
+$ bForceBuildShaderFormats (Boolean):通常はビルドされない場合でも、シェーダー プラットフォーム モジュールを強制的にコンパイルするかどうか指定します。
+
+$ bCompileSimplygon (Boolean):Simplygon をサポートできるようにコンパイルするかどうか指定します。
+
+$ bCompileSimplygonSSF (Boolean):Simplygon の SSF ライブラリをサポートできるようにコンパイルするかどうか指定します。
+
+$ bCompileLeanAndMeanUE (Boolean):UE のLean と Mean バージョンをコンパイルするかどうか指定します。
+
+$ bCompileAgainstEngine (Boolean):エンジン プロジェクトを含むすべてのビルドに対して有効にされます。コアとのみ結合するスタンドアロン app のビルド時のみ無効になります。
+
+$ bCompileAgainstCoreUObject (Boolean):CoreUObject プロジェクトを含むすべてのビルドに対して有効にされます。コアとのみ結合するスタンドアロン app のビルド時のみ無効になります。
+
+$ bIncludeADO (Boolean):True の場合、ADO データベース サポートをコアに含みます。
+
+$ bCompileRecast (Boolean):Recast navmesh 生成をコンパイルするかどうか指定します。
+
+$ bCompileSpeedTree (Boolean):SpeedTree サポートをコンパイルするかどうか指定します。
+
+$ bForceEnableExceptions (Boolean):すべてのモジュールに対して例外を有効にします。
+
+$ bForceEnableRTTI (Boolean):すべてのモジュールに対して RTTI を有効にします。
+
+$ bWithServerCode (Boolean):サーバー専用コードをコンパイルします。
+
+$ bCompileWithStatsWithoutEngine (Boolean):エンジンなしても統計サポートを含むかどうかを設定します。
+
+$ bCompileWithPluginSupport (Boolean):プラグイン サポートをインクルードするかどうかを指定します。
+
+$ bWithPerfCounters (Boolean):PerfCounters サポートをインクルードするかどうか指定します。
+
+$ bUseLoggingInShipping (Boolean):テスト / シッピング ビルドのロギングをオンにするかどうかを指定します。
+
+$ bLoggingToMemoryEnabled (Boolean):テスト / シッピング ビルド用メモリのロギングをオンにするかどうかを指定します。
+
+$ bUseLauncherChecks (Boolean):処理が外部ランチャーで起動したことを確認するかどうか指定します。
+
+$ bUseChecksInShipping (Boolean):テスト / シッピング ビルドに対するチェック (アサート) をオンにするかどうか指定します。
+
+$ bCompileFreeType (Boolean):サポートが必要な場合は true に設定します。
+
+$ bCompileForSize (Boolean):速度よりも大きさの最適化を優先したい場合は true に設定します。
+
+$ bForceCompileDevelopmentAutomationTests (Boolean):開発自動化テストをコンパイルするかどうか設定します。
+
+$ bForceCompilePerformanceAutomationTests (Boolean):パフォーマンス自動化テストをコンパイルするかどうか設定します。
+
+$ bEventDrivenLoader (Boolean):True の場合、イベント ドリブン ローダーがクック済みビルドで使用されます。非同期読み込みがリファクタリングされた後、ランタイム ソリューションに置き換える必要があります。
+
+$ bEnforceIWYU (Boolean):PCHU"include what you use" ルールが強制され、モノリシック (Engine.h、UnrealEd.h など) の使用に対して警告が出され、ソースファイルがマッチするヘッダをが最初にインクルードされているかをチェックします。
+
+$ bHasExports (Boolean):最後の実行ファイルがシンボルをエクスポートするかどうかを指定します。
+
+$ bPrecompile (Boolean):すべてのエンジン モジュールに対して統計情報ライブラリをこのターゲットの中間として作成します。
+
+$ bUsePrecompiled (Boolean):このターゲットのすべてのエンジン モジュールに対して既存の統計情報ライブラリを使用します。
+
+$ bEnableOSX109Support (Boolean): OS X 10.9 Mavericks のサポートをコンパイルするかどうか指定します。OS X のこのバージョンと互換性が必要なツールに対して使用します。
+
+$ bIsBuildingConsoleApplication (Boolean):ビルド中のコンソール アプリケーションの場合は true に設定します。
+
+$ bDisableSymbolCache (Boolean):いくつかのプラットフォームにキャッシュされたデバッグ シンボルが作成されるべきでない場合は true を設定します。
+
+$ bUseUnityBuild (Boolean):コンパイルを速くするために C++ コードを大きいファイルにまとめるかどうかを指定します。
+
+$ bForceUnityBuild (Boolean):コンパイルを速くするために C++ コードを強制的に大きいファイルにまとめるかどうかを指定します。
+
+$ bUseAdaptiveUnityBuild (Boolean):ヒューリスティックを使って、イタレート中のファイルを判断してユニティ ボディから取り除き、徐々にコンパイル時間を速くします。現在のインプリメンテーションは、修正中の場合ファイルはソース コントロールで書き込み可能になると仮定して、作業中のファイルを区別するために読み取り専用フラグを使って実行しています。この方法は、Perforce には使えますが、Git には適しません。
+
+$ bAdaptiveUnityDisablesOptimizations (Boolean):適合するノンユニティ ワーキング セットの中のファイル最適化を無効にします。
+
+$ bAdaptiveUnityDisablesPCH (Boolean):適合するノンユニティ ワーキング セットの中のファイルに対して強制インクルード PCH を無効にします。
+
+$ MinGameModuleSourceFilesForUnityBuild (Int32):ユニティ ビルドがそのモジュールに対して有効になる前のゲーム モジュール内のソース ファイル数です。小さいゲーム モジュールでは 1 ファイルあたりの反復コンパイル時間が速くなります。この設定は、モジュールの Build.cs ファイルの bFasterWithoutUnity オプションでオーバーライドすることが可能です。
+
+$ bShadowVariableErrors (Boolean):シャドウ変数の警告をサポートしているプラットフォーム上では、強制的にエラーとして扱われます。
+
+$ bUndefinedIdentifierErrors (Boolean):条件的表現式で未定義の識別子をエラーとして強制的に使用します。
+
+$ bUseFastMonoCalls (Boolean):新しいモノリシック グラフィックス ドライバーに、各種 D3d 機能に代わる "fast calls" がオプションで付きました。
+
+$ bUseFastSemanticsRenderContexts (Boolean):新しい Xbox ドライバーは「速いセマンティクス」コンテキスト タイプをサポートします。これは、即時およびディファードコンテキストをオンに切り替えます。Xbox RHI でレンダリングに問題があったりクラッシュする場合は、これを無効にしてみてください。
+
+$ NumIncludedBytesPerUnityCPP (Int32):1 つの統合された C++ ファイルへのインクルードするための C++ コードのおおよそのバイト数です。
+
+$ bStressTestUnity (Boolean):1 つに統合されたファイルからすべての C++ ファイルをプロジェクトにインクルードすることで、C++ ユニティ ビルドの剛健性のテストを重視するかどうかを指定します。
+
+$ bForceDebugInfo (Boolean):強制的にデバッグ情報を生成するかどうか設定します。
+
+$ bDisableDebugInfo (Boolean):デバッグ情報の生成をグローバルに無効にするかどうかを設定します。コンフィギュレーション別、プラットフォーム別のオプションは DebugInfoHeuristics.cs をご覧ください。
+
+$ bDisableDebugInfoForGeneratedCode (Boolean):生成ファイルに対してデバッグ情報の生成を無効にするかどうか指定します。グルーコードが数多く生成されたモジュールへのリンク時間を改善します。
+
+$ bOmitPCDebugInfoInDevelopment (Boolean):開発ビルド イタレーションで PC 上のデバッグ情報を無効にするかどうか (デバッグ情報を無効にしてリンク時間を大幅に短縮し、デベロッパーのイタレーションを速めるため) を指定します。
+
+$ bUsePDBFiles (Boolean):PDB ファイルを Visual C++ ビルドに使用するかどうかを指定します。
+
+$ bUsePCHFiles (Boolean):PCH ファイルを使用するかどうかを指定します。
+
+$ MinFilesUsingPrecompiledHeader (Int32):作成および使用前にプリコンパイル済みヘッダーを使わなければならないファイルの必要最小数です。
+
+$ bForcePrecompiledHeaderForGameModules (Boolean):有効にすると、モジュールにソース ファイルが少ししかなくても、ゲーム モジュールに対して常にヘッダーが生成されます。これにより、プロジェクトの数ファイル上で繰り返し行う変更に対するコンパイル時間が改善されます。モジュールの Build.cs ファイルに MinFilesUsingPrecompiledHeaderOverride を指定すると、オーバーライドが可能になります。
+
+$ bUseIncrementalLinking (Boolean):インクリメンタルリンクの使用について指定します。インクリメンタルリンクは、小さな変更に対するイタレーション時間を短縮できます。コンピューターによってはバグのような症状 (PDB 関連のコンパイル エラー) が出るので、現時点では無効にされています。
+
+$ bAllowLTCG (Boolean):リンク時コード生成の使用の許可について指定します。
+
+$ bAllowASLRInShipping (Boolean):ASLR (アドレス空間配置のランダム化) がサポートされている場合、使用の許可について指定します。シッピング ビルドのみに適用します。
+
+$ bSupportEditAndContinue (Boolean):編集をサポートし継続するかどうかを指定します。32 ビット コンパイルの Microsoft コンパイラでのみ機能します。
+
+$ bOmitFramePointers (Boolean):フレーム ポインタの省略について指定します。無効にすると、PC のメモリ プロファイリングなど行う際に便利です。
+
+$ bStripSymbolsOnIOS (Boolean):iOS シンボルの削除について (bGeneratedSYMFile で暗示される) 指定します。
+
+$ bUseMallocProfiler (Boolean):True にすると、ビルドのメモリ プロファイリングが有効になります (USE_MALLOC_PROFILER=1 を定義し bOmitFramePointers=false を強制します)。
+
+$ bUseSharedPCHs (Boolean):UBT が探知するモジュール間で特定のファイルを共有しようとすることでコンパイル時間を大幅に短縮する機能 "Shared PCHs" を有効にすると、これらの PCH のヘッダ ファイルを含みます。
+
+$ bUseShippingPhysXLibraries (Boolean):開発ビルドとリリース ビルドが PhysX/APEX のリリース コンフィギュレーションを使う場合は true を指定します。
+
+$ bUseCheckedPhysXLibraries (Boolean):開発ビルドとリリース ビルドが PhysX/APEX のチェック済みコンフィギュレーションを使う場合は True にします。bUseShippingPhysXLibraries が true の場合は無視されます。
+
+$ bCheckLicenseViolations (Boolean):ビルド中のモジュールが EULA に違反しているかどうか確認するように UBT に伝えます。
+
+$ bBreakBuildOnLicenseViolation (Boolean):ビルド中のモジュールが EULA に違反している場合、ビルドの中断を UTB に伝えます。
+
+$ bUseFastPDBLinking (Boolean):/DEBUG でビルドしてローカルの PDB をウィンドウ上に作成する場合、:FASTLINK オプションを使用するかどうかを指定します。速くなりますが、デバッガーでのシンボルの検索にまだ問題があるようです。
+
+$ bCreateMapFile (Boolean):ビルドの一部としてマップ フィアルを出力します。
+
+$ bEnableCodeAnalysis (Boolean):コード分析モードを有効にします。現在、特別要件があります。機能するのは、MSVC コンパイラのある Windows プラットフォームのみです。また、Visual Studio 2013 など、分析オプションをサポートしているバージョンのコンパイラが必要です。
+
+$ BundleVersion (String):Mac app 用バンドル版です。
+
+$ bDeployAfterCompile (Boolean):デプロイを要求するプラットフォーム上でコンパイルした後に実行ファイルをデプロイするかどうか指定します。
+
+$ bCreateStubIPA (Boolean):True の場合、コンパイル処理が終わるとスタブ IPA が生成されます (有効な IPA に必要な最小限のファイル)。
+
+$ bCopyAppBundleBackToDevice (Boolean):True の場合、コンパイル処理が終わるとスタブ IPA が生成されます (有効な IPA に必要な最小限のファイル)。
+
+$ bAllowRemotelyCompiledPCHs (Boolean):有効の場合、XGE がリモート マシン上でプリコンパイル済みヘッダ ファイルをコンパイルすることができます。有効でない場合、PCH がつねんにローカルに生成されます。
+
+$ bCheckSystemHeadersForModification (Boolean):無効のアクションと判断した場合、システム パスのヘッダの修正確認を行うかどうか指定します。
+
+$ bDisableLinking (Boolean):このターゲットへのリンクを無効にするかどうか指定します。
+
+$ bFormalBuild (Boolean):配布目的の公式ビルドであることを示します。Build.version にチェンジリスト セットがある場合、このフラグは自動的に true に設定されます。このフラグに現在結合されている唯一のビヘイビアは、OriginalFilename が正しく設定されるようにデフォルト リソース ファイルをバイナリごとに別々にコンパイルします。デフォルトでは、ビルド時間を短縮するためにリソースのコンパイルは 1 度しか行いません。
+
+$ bFlushBuildDirOnRemoteMac (Boolean):ビルド前にリモート Mac で Builds ディレクトリの中のものをすべて削除するかどうかを指定します。
+
+$ bPrintToolChainTimingInfo (Boolean):コンパイラとリンカから詳細なタイミング情報を書き出すかどうかを指定します。
+
+$ PCHOutputDirectory (String):プリコンパイル済みヘッダ ファイルを入れるディレクトリです。より速いドライブでのパスを使うことができる実験段階の設定です。設定しない場合は標準の出力ディレクトリがデフォルトになります。
+
+$ GlobalDefinitions (List<String>):ターゲット全体をグローバルに定義するためのマクロです。
+
+$ ExtraModuleNames (List<String>):ターゲットにコンパイルされる追加モジュールのリストです。
+
+$ BuildEnvironment (TargetBuildEnvironment):このターゲットのビルド環境を設定します。使用可能なオプションの詳細は TargetBuildEnvironment をご覧ください。
+
+$ OverrideExecutableFileExtension (String):実行ファイルのファイル拡張子 (Windows では通常.exe もしくは .dll) のオーバーライド設定が可能です。
+
+
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.KOR.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.KOR.udn
new file mode 100644
index 000000000000..5adfe06c3730
--- /dev/null
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/TargetFiles/TargetFilesProperties/TargetFilesProperties.KOR.udn
@@ -0,0 +1,244 @@
+INTSourceChangelist:3392479
+Availability: NoPublish
+Title: 빌드 환경설정 페이지
+Crumbs:%ROOT%
+Description: 절차적 생성되는 마크다운 페이지입니다.
+Version: 4.16
+Parent:Programming/UnrealBuildSystem/TargetFiles
+Order:
+Type:reference
+Tags:Unreal Build System
+
+### 읽기 전용 프로퍼티
+
+$ Name (String): 이 타겟 이름입니다.
+
+$ Platform (UnrealTargetPlatform): 이 타겟의 빌드 대상 플랫폼입니다.
+
+$ Configuration (UnrealTargetConfiguration): 빌드 중인 구성입니다.
+
+$ Architecture (String): 타겟의 빌드 대상 아키텍처입니다 (공백 스트링이면 기본값입니다).
+
+$ ProjectFile (FileReference): 이 타겟이 들어있는 프로젝트에 대한 프로젝트 파일 경로입니다.
+
+
+### 읽기/쓰기 프로퍼티
+$ Type (TargetType): 타겟 유형입니다.
+
+$ bUsesSteam (Boolean): 타겟의 Steam 사용 여부입니다.
+
+$ bUsesCEF3 (Boolean): 타겟의 CEF3 사용 여부입니다.
+
+$ bUsesSlate (Boolean): 프로젝트의 비주얼 Slate UI 사용 여부입니다 (로우 레벨 윈도잉/메시징과는 달리, 항상 사용 가능합니다).
+
+$ bUseStaticCRT (Boolean): 정적 CRT 에 대해 강제 링크합니다. 전체 엔진에 걸쳐 완전히 지원되지는 않는데 (예로) 얼로케이터 구현을 공유해야 하기 때문입니다. 그리고 TPS 라이브러리가 서로 일관되어야 하지만, 유틸리티 프로그램용으로는 사용할 수 있습니다.
+
+$ bDebugBuildsActuallyUseDebugCRT (Boolean): 디버그 빌드에 디버그 C++ 런타임 (CRT) 기능을 켭니다. 기본적으로는 항상 릴리즈 런타임을 사용하는데, 디버그 버전은 언리얼 엔진 프로젝트 디버깅 시 그다지 유용하지 않기 때문이며, 디버그 CRT 라이브러리에 대한 링크는 써드 파티 라이브러리 디펜던시 역시 디버그 CRT 를 사용하여 강제 컴파일되도록 하기 (그래서 종종 퍼포먼스가 느려지기) 때문입니다. 단순히 프로그램 코드 디버깅을 하기 위해 써드 파티 스태틱 라이브러리의 디버그 버전 사본이 별도로 필요하다면 종종 불편할 수 있습니다.
+
+$ bOutputPubliclyDistributable (Boolean): 이 타겟에서의 출력에 (CarefullyRedist, NotForLicensees, NoRedist 등의) 특별 제한이 걸린 폴더에 있는 모듈의 종속성이 있다 할지라도 공개 배포 가능하도록 할지 여부입니다.
+
+$ UndecoratedConfiguration (UnrealTargetConfiguration): 바이너리에 "-Platform-Configuration" 접미사가 필요치 않은 구성을 지정합니다.
+
+$ bBuildAllPlugins (Boolean): 활성화되지 않았더라도 찾을 수 있는 모든 플러그인을 빌드합니다. UE4Editor 타겟을 빌드하면서 플러그인을 활성화시켜 실행시키는 콘텐츠 전용 프로젝트에 특히 유용합니다.
+
+$ AdditionalPlugins (List<String>): 이 타겟에 포함시켜야 하는 부가 플러그인 목록입니다. 비활성화시킬 수 없는 최적이 아닌 플러그인 모듈 레퍼런싱이 가능하며, ModuleHostType 범주에 맞지 않는 프로그램 타겟의 특정 모듈에 대해 빌드할 수 있습니다.
+
+$ PakSigningKeysFile (String): 실행파일에 삽입할 pak 사이닝 키 세트 경로입니다.
+
+$ SolutionDirectory (String): Program Target 이 자체 솔루션 폴더 경로를 지정할 수 있도록 합니다.
+
+$ bOutputToEngineBinaries (Boolean): 실행파일을 엔진 binaries 폴더에 출력합니다.
+
+$ bShouldCompileAsDLL (Boolean): 이 타겟을 DLL 로 컴파일할지 여부입니다. LinkType 을 TargetLinkType.Monolithic 으로 설정해야 합니다.
+
+$ ExeBinariesSubFolder (String): 실행파일을 넣을 하위 폴더로, 기본 위치 기준 상대 경로입니다.
+
+$ GeneratedCodeVersion (EGeneratedCodeVersion): 타겟 모듈이 UHT 코드 생성 버전을 덮어쓸 수 있도록 합니다.
+
+$ bCompilePhysX (Boolean): PhysX 지원 포함 여부입니다.
+
+$ bCompileAPEX (Boolean): PhysX APEX 지원 포함 여부입니다.
+
+$ bCompileNvCloth (Boolean): NvCloth 포함 여부입니다.
+
+$ bRuntimePhysicsCooking (Boolean): 피직스 런타임 쿠킹 허용 여부입니다.
+
+$ bCompileBox2D (Boolean): Box2D 지원 포함 여부입니다.
+
+$ bCompileICU (Boolean): Core 의 ICU 유니코드/i18n 지원 여부입니다.
+
+$ bCompileCEF3 (Boolean): CEF3 지원 컴파일 여부입니다.
+
+$ bBuildEditor (Boolean): 에디터 컴파일 여부입니다. 데스크탑 플랫폼만 (윈도우 또는 맥) 이를 사용하며, 다른 플랫폼에서는 강제 false 설정됩니다.
+
+$ bBuildRequiresCookedData (Boolean): 애셋 빌드 관련 코드 컴파일 여부입니다. 콘솔은 보통 애셋을 빌드할 수 없습니다. 데스크탑 플랫폼은 보통 할 수 있습니다.
+
+$ bBuildWithEditorOnlyData (Boolean): WITH_EDITORONLY_DATA 비활성화된 것의 컴파일 여부입니다. 윈도우에서만 이를 사용하며, 다른 플랫폼에서는 강제로 false 설정됩니다.
+
+$ bBuildDeveloperTools (Boolean): 개발자 툴 컴파일 여부입니다.
+
+$ bForceBuildTargetPlatforms (Boolean): 정상적으로는 빌드되지 않을 타겟 플랫폼 모듈의 강제 컴파일 여부입니다.
+
+$ bForceBuildShaderFormats (Boolean): 정상적으로는 빌드되지 않을 셰이더 포맷 모듈의 강제 컴파일 여부입니다.
+
+$ bCompileSimplygon (Boolean): 심플리곤 지원 컴파일 여부입니다.
+
+$ bCompileSimplygonSSF (Boolean): 심플리곤의 SSF 라이브러리 지원 컴파일 여부입니다.
+
+$ bCompileLeanAndMeanUE (Boolean): UE 의 lean and mean 버전 컴파일 여부입니다.
+
+$ bCompileAgainstEngine (Boolean): 엔진 프로젝트를 포함하는 모든 빌드에 대해 활성화됩니다. Core 하고만 링크되는 독립형 앱 빌드시에만 비활성화됩니다.
+
+$ bCompileAgainstCoreUObject (Boolean): CoreUObject 프로젝트를 포함하는 모든 빌드에 대해 활성화됩니다. Core 하고만 링크되는 독립형 앱 빌드시에만 비활성화됩니다.
+
+$ bIncludeADO (Boolean): true 면 코어의 ADO 데이터베이스 지원을 포함합니다.
+
+$ bCompileRecast (Boolean): Recast 내비메시 생성 컴파일 여부입니다.
+
+$ bCompileSpeedTree (Boolean): SpeedTree 지원 컴파일 여부입니다.
+
+$ bForceEnableExceptions (Boolean): 모든 모듈에 대한 예외를 활성화시킵니다.
+
+$ bForceEnableRTTI (Boolean): 모든 모듈에 대한 RTTI 를 활성화시킵니다.
+
+$ bWithServerCode (Boolean): 서버 전용 코드를 컴파일합니다.
+
+$ bCompileWithStatsWithoutEngine (Boolean): 엔진 없이도 통계 지원 포함 여부입니다.
+
+$ bCompileWithPluginSupport (Boolean): 플러그인 지원 포함 여부입니다.
+
+$ bWithPerfCounters (Boolean): PerfCounters 지원 포함 여부입니다.
+
+$ bUseLoggingInShipping (Boolean): test/shipping 빌드에 대한 로그 활성화 여부입니다.
+
+$ bLoggingToMemoryEnabled (Boolean): test/shipping 빌드에 대한 메모리에 로깅 활성화 여부입니다.
+
+$ bUseLauncherChecks (Boolean): 프로세스가 외부 런처를 통해 실행되었나 검사할지 여부입니다.
+
+$ bUseChecksInShipping (Boolean): test/shipping 빌드에 대해 체크 (또는 어서트) 활성화 여부입니다.
+
+$ bCompileFreeType (Boolean): FreeType 지원이 필요한 true 입니다.
+
+$ bCompileForSize (Boolean): 속도보다 크기 최적화가 좋은 경우 true 입니다.
+
+$ bForceCompileDevelopmentAutomationTests (Boolean): 개발 자동화 테스트 컴파일 여부입니다.
+
+$ bForceCompilePerformanceAutomationTests (Boolean): 퍼포먼스 자동화 테스트 컴파일 여부입니다.
+
+$ bEventDrivenLoader (Boolean): true 면 쿠킹된 빌드에 이벤트 주도 로더가 사용됩니다. @todoio 비동기 로딩 리팩터 이후 런타임 솔루션으로 대체시켜 줘야 합니다.
+
+$ bEnforceIWYU (Boolean): "include what you use" 규칙을 적용합니다. 모노리식 헤더(Engine.h, UnrealEd.h ...)가 사용되면 경고를 내며, 소스 파일이 일치하는 헤더를 먼저 포함하는지 검사합니다.
+
+$ bHasExports (Boolean): 최종 실행파일의 심볼 익스포트 여부입니다.
+
+$ bPrecompile (Boolean): 모든 엔진 모듈에 대한 스태틱 라이브러리를 이 타겟에 대한 중개 파일로 만듭니다.
+
+$ bUsePrecompiled (Boolean): 이 타겟의 모든 엔진 모듈에 대해 기존 스태틱 라이브러리를 사용합니다.
+
+$ bEnableOSX109Support (Boolean): OS X 10.9 Mavericks 에 대한 지원 포함 컴파일 여부입니다. 이 버전의 OS X 와 호환되어야 하는 툴에 사용됩니다.
+
+$ bIsBuildingConsoleApplication (Boolean): 이것이 빌드 대상 콘솔 어플리케이션인 경우 true 입니다.
+
+$ bDisableSymbolCache (Boolean): 생성되지 않아야 하는 플랫폼에 대해 디버그 심볼이 캐시된 경우 true 입니다.
+
+$ bUseUnityBuild (Boolean): 보다 빠른 컴파일을 위해 C++ 코드를 커다란 파일로 통합시킬지 여부입니다.
+
+$ bForceUnityBuild (Boolean): 보다 빠른 컴파일을 위해 C++ 소스 파일을 보다 큰 파일로 강제 합칠지 여부입니다.
+
+$ bUseAdaptiveUnityBuild (Boolean): 휴리스틱 기법을 사용하여 현재 반복처리 대상인 파일을 알아낸 뒤 유니티 블롭에서 제외시켜, 점증적 컴파일 시간을 빠르게 합니다. 현재 구현은 변경중인 파일은 소스 콘트롤 시스템이 쓰기가능으로 만든다 가정하고, 읽기전용 플래그로 작업 세트를 구분합니다. Perforce 에는 맞지만, Git 에는 아닙니다.
+
+$ bAdaptiveUnityDisablesOptimizations (Boolean): 적응형 논-유니티 작업 세트에 있는 파일에 대한 최적화를 비활성화시킵니다.
+
+$ bAdaptiveUnityDisablesPCH (Boolean): 적응형 논-유니티 작업 세트에 있는 파일에 대한 강제 포함 PCH 를 비활성화시킵니다.
+
+$ MinGameModuleSourceFilesForUnityBuild (Int32): 게임 모듈에 소스 파일 수가 이 이상 되면 해당 모듈에 대해 유니티 빌드가 가동됩니다. 작은 게임 모듈의 경우 풀 리빌드 시간이 느려지는 대신 단일 파일에 대한 반복처리형 컴파일 시간이 빨라집니다. 이 세팅은 모듈의 Build.cs 파일에서 bFasterWithoutUnity 옵션으로 덮어쓸 수 있습니다.
+
+$ bShadowVariableErrors (Boolean): 섀도우 변수 경고를 지원하는 플랫폼에서 오류로 강제 취급합니다.
+
+$ bUndefinedIdentifierErrors (Boolean): 조건절에서 미정의 식별자를 사용하는 것을 강제로 오류로 취급합니다.
+
+$ bUseFastMonoCalls (Boolean): 새로운 Monolithic Graphics 드라이버에 옵션 "fast calls" 가 다양한 D3d 함수를 대체하도록 합니다.
+
+$ bUseFastSemanticsRenderContexts (Boolean): 새로운 Xbox 드라이버가 "fast semantics" 컨텍스트 타입을 지원합니다. 이는 즉시 및 디퍼드 컨텍스트에 켜집니다. 렌더링 이슈가 있거나 Xbox RHI 에 크래시가 발생하는 경우 꺼 보세요.
+
+$ NumIncludedBytesPerUnityCPP (Int32): 단일 통합 C++ 파일에 포함용 타겟으로 삼을 C++ 코드 바이트 수 추정치입니다.
+
+$ bStressTestUnity (Boolean): 단일 통합 파일에서 프로젝트의 모든 C++ 파일을 포함시켜 C++ 유니티 빌드 안전성 스트레트 테스트를 할지 여부입니다.
+
+$ bForceDebugInfo (Boolean): 디버그 정보 강제 생성 여부입니다.
+
+$ bDisableDebugInfo (Boolean): 디버그 정보 생성을 글로벌로 비활성화시킬지 여부입니다. 구성별 및 플랫폼별 옵션은 DebugInfoHeuristics.cs 를 참고하세요.
+
+$ bDisableDebugInfoForGeneratedCode (Boolean): generated 파일에 대해 디버그 정보 생성 비활성화 여부입니다. generated glue 코드가 많이 있는 모듈의 링크 시간이 개선됩니다.
+
+$ bOmitPCDebugInfoInDevelopment (Boolean): 개발 빌드의 PC 에서 디버그 정보 비활성화 여부입니다 (개발자의 빠른 반복처리를 위한 옵션으로, 디버그 정보가 비활성화되어 있으면 링크 시간이 매우 빠르기 때문입니다).
+
+$ bUsePDBFiles (Boolean): Visual C++ 빌드에 PDB 파일을 사용 여부입니다.
+
+$ bUsePCHFiles (Boolean): PCH 파일 사용 여부입니다.
+
+$ MinFilesUsingPrecompiledHeader (Int32): 미리 컴파일된 헤더를 사용해야 하는 파일 수가 최소 이 이상 되어야 헤더를 생성 및 사용합니다.
+
+$ bForcePrecompiledHeaderForGameModules (Boolean): 활성화 시, 게임 모듈에 소스 파일이 조금밖에 없다 하더라도 미리 컴파일된 헤더를 항상 생성하도록 합니다. 프로젝트의 소수 파일에 대한 반복처리 변경 시 컴파일 시간이 크게 향상되는 대신, 작은 게임 프로젝트의 풀 리빌드 시간이 느려집니다. 모듈의 Build.cs 파일에 있는 MinFilesUsingPrecompiledHeaderOverride 세팅으로 덮어쓸 수 있습니다.
+
+$ bUseIncrementalLinking (Boolean): 점증적 링크 사용 여부입니다. 점증적 링크는 사소한 변경 시 반복처리 시간이 빨라질 수 있습니다. 현재 기본적으로 꺼져있는데, 일부 컴퓨터에서 버그성 동작을 보이는 경향이 있기 때문입니다 (PDB 관련 컴파일 오류).
+
+$ bAllowLTCG (Boolean): 링크 시간 코드 생성(LTCG) 사용 허용 여부입니다.
+
+$ bAllowASLRInShipping (Boolean): 주소 스페이스 레이아웃 랜덤화(ASLR) 지원 시 사용 허용 여부입니다. shipping 빌드에만 적용됩니다.
+
+$ bSupportEditAndContinue (Boolean): 편집 및 계속 지원 여부입니다. 32 비트 컴파일의 Microsoft 컴파일러에만 작동합니다.
+
+$ bOmitFramePointers (Boolean): 프레임 포인터 생략 여부입니다. 끄는 것이 PC 에서의 메모리 프로파일링 등에 유용합니다.
+
+$ bStripSymbolsOnIOS (Boolean): iOS 심볼을 벗겨낼지 여부입니다 (bGeneratedSYMFile 에 내포되어 있습니다).
+
+$ bUseMallocProfiler (Boolean): true 면 빌드에서 메모리 프로파일링이 활성화됩니다 (USE_MALLOC_PROFILER=1 정의 및 강제로 bOmitFramePointers=false 가 됩니다).
+
+$ bUseSharedPCHs (Boolean): "Shared PCHs" 기능을 활성화시킵니다. UBT 가 감지한 모듈끼리 특정 PCH 파일을 공유시켜 그 PCH 의 헤더 파일을 포함하도록 시도하여 컴파일 시간을 크게 향상시키는 기능입니다.
+
+$ bUseShippingPhysXLibraries (Boolean): Development 및 Release 빌드가 PhysX/APEX 의 release 구성을 사용해야 하는 경우 true 입니다.
+
+$ bUseCheckedPhysXLibraries (Boolean): Development 및 Release 빌드가 PhysX/APEX 의 checked 구성을 사용해야 하는 경우 true 입니다. bUseShippingPhysXLibraries 가 true 면 이 옵션은 무시됩니다.
+
+$ bCheckLicenseViolations (Boolean): UBT 가 현재 빌드중인 모듈이 EULA 를 침해하는지 여부를 검사하도록 합니다.
+
+$ bBreakBuildOnLicenseViolation (Boolean): UBT 더러 현재 빌드 중인 모듈이 EULA 를 침해하는지 여부를 검사하도록 합니다.
+
+$ bUseFastPDBLinking (Boolean): 윈도우에서 로컬 PDB 생성을 위해 /DEBUG 로 빌드 시 :FASTLINK 옵션 사용 여부입니다. 빠르지만, 현재 디버거에서 심볼을 찾는 데 문제가 있는 것 같습니다.
+
+$ bCreateMapFile (Boolean): 맵 파일을 빌드의 일부로 출력합니다.
+
+$ bEnableCodeAnalysis (Boolean): 코드 분석 모드를 켭니다. 현재, 여기에는 특별한 요건이 있습니다. 윈도우에서 MSVC 컴파일러에만 작동합니다. 또한 Visual Studio 2013 처럼 /analyze 옵션을 지원하는 컴파일러 버전이 필요합니다.
+
+$ BundleVersion (String): Mac 앱의 번들 버전입니다.
+
+$ bDeployAfterCompile (Boolean): 디플로이를 요하는 플랫폼에서 컴파일 이후 실행파일 디플로이 여부입니다.
+
+$ bCreateStubIPA (Boolean): true 면 컴파일 완료시 stub IPA 가 생성됩니다 (유효 IPA 를 위해서는 최소 파일이 필요합니다).
+
+$ bCopyAppBundleBackToDevice (Boolean): true 면 컴파일 완료시 stub IPA 가 생성됩니다 (유효 IPA 를 위해서는 최소 파일이 필요합니다).
+
+$ bAllowRemotelyCompiledPCHs (Boolean): 활성화 시, XGE 가 원격 머신에서 미리 컴파일된 헤더(PCH) 파일을 컴파일할 수 있도록 합니다. 아니면, PCH 는 항상 로컬에서 생성됩니다.
+
+$ bCheckSystemHeadersForModification (Boolean): 시기가 지난 액션을 결정할 때 시스템 경로에 있는 헤더에 대해 변경 검사를 할지 여부입니다.
+
+$ bDisableLinking (Boolean): 이 타겟에 대한 링크 비활성화 여부입니다.
+
+$ bFormalBuild (Boolean): 이 빌드는 공식 빌드이며, 배포용임을 나타냅니다. 이 플래그는 Build.version 에 changelist 가 설정된 경우 자동으로 true 설정됩니다. 현재 이 플래그에 묶인 유일한 작동방식은 OriginalFilename 칸이 올바르게 설정될 수 있도록 각 바이너리에 대해 별도로 기본 리소스 파일을 컴파일하는 것입니다. 기본적으로는 빌드 시간을 줄이기 위해 리소스는 한 번만 컴파일합니다.
+
+$ bFlushBuildDirOnRemoteMac (Boolean): 빌드 전 원격 Mac 의 Builds 디렉토리를 비울지 여부입니다.
+
+$ bPrintToolChainTimingInfo (Boolean): 컴파일러와 링커의 자세한 타이밍 정보를 쓸지 여부입니다.
+
+$ PCHOutputDirectory (String): 미리 컴파일된 헤더(PCH) 파일을 넣을 디렉토리입니다. 속도가 더 빠른 드라이브의 경로를 사용할 수 있도록 하기 위한 실험단계 세팅입니다. 설정되지 않으면 기본값은 표준 출력 디렉토리입니다.
+
+$ GlobalDefinitions (List<String>): 전체 타겟에 대한 글로벌 정의를 위한 매크로입니다.
+
+$ ExtraModuleNames (List<String>): 타겟에 컴파일시킬 부가 모듈 목록입니다.
+
+$ BuildEnvironment (TargetBuildEnvironment): 이 타겟에 대한 빌드 환경을 지정합니다. 사용 가능 옵션에 대한 상세 정보는 TargetBuildEnvironment 를 참고하세요.
+
+$ OverrideExecutableFileExtension (String): 설정하면 실행파일 확장자를 덮어쓸 수 있습니다 (예를 들어 윈도우에서는 보통 .exe 또는 .dll 입니다).
+
+
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/UnrealBuildSystem.JPN.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/UnrealBuildSystem.JPN.udn
index 3d025b3d17fb..e0d083e17679 100644
--- a/Engine/Documentation/Source/Programming/UnrealBuildSystem/UnrealBuildSystem.JPN.udn
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/UnrealBuildSystem.JPN.udn
@@ -1,87 +1,67 @@
-INTSourceChangelist:3336766
+INTSourceChangelist:3372845
Availability:Public
Title:アンリアル ビルド システムの設定
Crumbs:
Description:エンジンとゲーム プロジェクトをコンパイルするアンリアル・エンジンのカスタムビルドシステム
-version:4.9
+version:4.15
parent:Programming
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Programming/UnrealBuildSystem:title%
- [/PARAM]
- [PARAM:description]
- %Programming/UnrealBuildSystem:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Programming/UnrealBuildSystem]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+tags:Programming
+tags:Unreal Build System
+type:overview
+topic-image:Engine/build_topic.png
+
+[TOC (start:1 end:3)]
[REGION:fullwidth]

[/REGION]
-### UnrealBuildTool
-**UnrealBuildTool** (UBT) は、多数の可能なビルド コンフィギュレーションにおいて **アンリアル エンジン 4** (UE4) ソース コードのビルド プロセスを管理するカスタム ツールです。ユーザー設定可能な様々なビルド オプションについては、
-BuildConfiguration.cs で確認してください。
+**アンリアル ビルドシステム** とは、アンリアル エンジン 4 (UE4) のビルド プロセス自動化ツールのコレクションです。ハイレベルでは、UnrealBuildTool と UnrealHeaderTool はアンリアル ビルド システムをサポートします。
+このガイドは、UE4 のモジュラー アーキテクチャに関する簡単な考察も交えながら、UnrealBuildTool と UnrealHeaderTool の概要を説明します。ビルド ツールのこのコレクションを使用したい方のために、
+プロジェクト用にアンリアル ビルド システムを分かりやすくセットアップ / 設定できる操作ガイドが含まれています。終盤には、Include-What-You-Use (IWYU) 依存モデルと BuildGraph スクリプティング システムをさらに学習したい上級ユーザー向けのガイドがあります。
[REGION:note]
Mac OS X で UnrealBuildTool や UnrealAutomationTool をデバッグする場合は、以下を必ずインストールしてください。[MonoDevelop 4.2.2](http://monodevelop.com/Download) および [Mono 3.2.7](http://www.go-mono.com/mono-downloads/download.html)
[/REGION]
-### UnrealHeaderTool
-**UnrealHeaderTool** (UHT) は、UObject システムをサポートするカスタム パー寝具およびコード生成のツールです。コードのコンパイルは以下の 2 つのフェーズで行われます。
+## UnrealBuildTool
+
+UnrealBuildTool (UBT) は、様々なビルド コンフィギュレーションの UE4 ソース コードのビルド プロセスを管理するカスタム ツールです。ユーザー設定可能な様々なビルド オプションについては、
+`BuildConfiguration.cs` で確認してください。
+
+## UnrealHeaderTool
+
+**UnrealHeaderTool** (UHT) は、UObject システムをサポートするカスタムのパースおよびコード生成のツールです。コードのコンパイルは以下の 2 つのフェーズで行われます。
1. UHT が呼び出されると、Unreal 関連のクラスのメタデータの C++ ヘッダーをパースし、様々な UObject 関連の機能を実装するためのカスタム コードを生成します。
1. 結果をコンパイルするために通常の C++ コンパイラが呼び出されます。
コンパイル時に、いずれかのツールがエラーを排出するため、注意深く見るようにしてください。
-### Project Files
-ビルド プロセスは、Visual Studio の .sln や .vcproj などの開発環境のプロジェクト ファイルとは関係なく起こります。しかし、こうしたファイルは編集目的には役立ちます。
-そのため、プロジェクトのディレクトリ ツリーの内容に基づき、こうしたファイルを動的に生成するためのツールがあります。このツールは `[Root UE4]` ディレクトリにある [GenerateProjectFiles](Programming\UnrealBuildSystem\ProjectFileGenerator) バッチ ファイルで実行することができます。
- ディスクに追加またはディスクから削除したコード ファイルと、コード エディタとの同期を保つために、時々、このバッチファイルを実行するといろいろと便利です。
+## モジュール アーキテクチャ
-### モジュール アーキテクチャ
-UE4 は多くのモジュールに分かれています。各モジュールには、.build.cs ファイルがあり、モジュールの従属関係、追加のライブラリ、インクルード パスなどを定義するためのオプションなど、ビルド方法を制御します。
+UE4 は多くのモジュールに分かれています。各モジュールには、`.build.cs` ファイルがあり、モジュールの従属関係、追加のライブラリ、インクルード パスなどを定義するためのオプションなど、ビルド方法を制御します。デフォルトで、こうしたモジュールはダイナミック リンクライブラリ (DLL) にコンパイルされ、単一の実行可能ファイルによってロードされます。`BuildConfiguration.cs` ファイルでモノリシック (単一) 実行ファイルをビルドするように選択できます。
-デフォルトで、こうしたモジュールはダイナミック リンクライブラリ (DLL) にコンパイルされ、単一の実行可能ファイルによってロードされます。BuildConfiguration.cs ファイルでモノリシック (単一) 実行ファイルをビルドするように選択できます。
+## アンリアル ビルド システムの使用方法
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Essentials
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Programming/UnrealBuildSystem/ProjectFileGenerator "%Programming/UnrealBuildSystem/ProjectFileGenerator:description%")
- * [](Programming/Development/BuildingUnrealEngine "%Programming/Development/BuildingUnrealEngine:description%")
- [/PARAM]
-[/OBJECT]
+アンリアル ビルド システムを使用する前に、ビルド プロセスは、Visual Studio の `.sln` や `.vcproj` ファイルなどの開発環境のプロジェクト ファイルとは独立して実行されるということを理解することが重要です。しかし、こうしたファイルは編集目的には役立ちます。
+そのため、プロジェクトのディレクトリ ツリーの内容に基づき、こうしたファイルを動的に生成するためのツールがあります。このツールは `[Root UE4]` ディレクトリにある `GenerateProject.bat` ファイルで実行することができます。
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- セットアップとコンフィギュレーション
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Programming/UnrealBuildSystem/Configuration "%Programming/UnrealBuildSystem/Configuration:description%")
- * [](Programming/UnrealBuildSystem/TargetFiles "%Programming/UnrealBuildSystem/TargetFiles:description%")
- [/PARAM]
-[/OBJECT]
+[REGION:tip]
+`GenerateProject.bat` を時々実行すると、ディスクからファイルが追加 (または削除) され、コード エディタが常に最新の状態になります。
+[/REGION]
+### セットアップ
+
+%Programming/UnrealBuildSystem/ProjectFileGenerator:topic%
+%Programming/Development/BuildingUnrealEngine:topic%
+
+### コンフィギュレーション
+
+%Programming/UnrealBuildSystem/Configuration:topic%
+%Programming/UnrealBuildSystem/TargetFiles:topic%
+
+## 高度なトピック
+
+%Programming/UnrealBuildSystem/IWYUReferenceGuide:topic%
+%Programming/Development/BuildGraph:topic%
diff --git a/Engine/Documentation/Source/Programming/UnrealBuildSystem/UnrealBuildSystem.KOR.udn b/Engine/Documentation/Source/Programming/UnrealBuildSystem/UnrealBuildSystem.KOR.udn
index b536de2b0809..ad9ae8541a92 100644
--- a/Engine/Documentation/Source/Programming/UnrealBuildSystem/UnrealBuildSystem.KOR.udn
+++ b/Engine/Documentation/Source/Programming/UnrealBuildSystem/UnrealBuildSystem.KOR.udn
@@ -1,9 +1,9 @@
-INTSourceChangelist:3356804
+INTSourceChangelist:3372845
Availability:Public
Title: 언리얼 빌드 시스템
Crumbs:
Description:엔진 및 게임 프로젝트를 컴파일하는 데 사용되는 언리얼 엔진의 커스텀 빌드 시스템입니다.
-version:4.9
+version:4.15
parent:Programming
tags:Programming
tags:Unreal Build System
@@ -63,4 +63,5 @@ UE4 는 다수의 모듈로 나뉘어 있습니다. 각 모듈에는 .build.cs
## 고급 토픽
-%Programming/UnrealBuildSystem/IWYUReferenceGuide:topic%%Programming/Development/BuildGraph:topic%
+%Programming/UnrealBuildSystem/IWYUReferenceGuide:topic%
+%Programming/Development/BuildGraph:topic%
diff --git a/Engine/Documentation/Source/Resources/ContentExamples/NavMesh/1_2/1_2.KOR.udn b/Engine/Documentation/Source/Resources/ContentExamples/NavMesh/1_2/1_2.KOR.udn
index 89fa77f99a5c..6588b1a4f6b4 100644
--- a/Engine/Documentation/Source/Resources/ContentExamples/NavMesh/1_2/1_2.KOR.udn
+++ b/Engine/Documentation/Source/Resources/ContentExamples/NavMesh/1_2/1_2.KOR.udn
@@ -70,7 +70,7 @@ Version: 4.9

[/REGION]
-**NavLinkProxy** (내비 링크 프록시) 액터는 폰이 점프하거나 타고 내려갈 수 있는 턱(ledge)을 지정하는데 사용되는 것으로, **내비메시** 안에 단절된 부분을 건너기 위해 잠시 떠날 수 있도록 해 줍니다. 시작점과 끝점을 지정하면 패쓰 노드인 것처럼 간주됩니다. 이 예제에서 폰은 **NavLinkProxy** 의 시작점으로 이동한 뒤 경사로를 타고 끝점까지 이동, **내비메시** 상에 목적지를 향한 내비게이션을 계속합니다. 이 **NavLinkProxy** 는 단방향으로 구성되어 있어, 폰이 되돌아 갈 때는 **NavLinkProxy** 를 사용하기 보다는 경사로를 돌아 갑니다.
+**NavLinkProxy** (내비 링크 프록시) 액터는 폰이 점프하거나 타고 내려갈 수 있는 턱(ledge)을 지정하는데 사용되는 것으로, **내비메시** 안에 단절된 부분을 건너기 위해 잠시 떠날 수 있도록 해 줍니다. 시작점과 끝점을 지정하면 패스 노드인 것처럼 간주됩니다. 이 예제에서 폰은 **NavLinkProxy** 의 시작점으로 이동한 뒤 경사로를 타고 끝점까지 이동, **내비메시** 상에 목적지를 향한 내비게이션을 계속합니다. 이 **NavLinkProxy** 는 단방향으로 구성되어 있어, 폰이 되돌아 갈 때는 **NavLinkProxy** 를 사용하기 보다는 경사로를 돌아 갑니다.
[REGION:lightbox]
[(w:225)](NavMesh_1_2_001.png)
diff --git a/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.CHN.udn b/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.CHN.udn
new file mode 100644
index 000000000000..fb97b94eb198
--- /dev/null
+++ b/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.CHN.udn
@@ -0,0 +1,395 @@
+INTSourceChangelist:3403466
+Availability:Public
+Title:照片级角色
+Crumbs:%ROOT%, Resources
+Description:照片级角色半身像展示的总览。
+Related:Engine/Rendering/Materials
+Related:Engine/Rendering/Materials/PhysicallyBased
+Related:Engine/Rendering/Materials/LayeredMaterials
+Version:4.15
+topic-image:PhotorealHead.png
+social-image:PhotorealHead.png
+
+
+[TOC(start:2 end:3)]
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ K-VyoqRB5_g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+此展示旨在体现高精度角色着色器技术的使用。这些技术与 Epic 的 MOBA 游戏 Paragon 中角色使用的技术相似。打开项目,按下 Play In Editor 即可查看动画演示。
+
+如需了解用于制作此角色技术的更多信息,请观看此视频 [Unreal Engine Livestream - Tech & Techniques Behind Creating the Characters for Paragon](https://www.youtube.com/watch?v=toLJh5nnJA8)。
+
+## 皮肤着色
+
+角色的皮肤使用 UE4 的 [次表面配置着色模型](Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/)。
+
+
+(w:700 convert:false)
+
+使用了 [材质函数](Engine/Rendering/Materials/Functions/) 设置皮肤材质的基础。这作为一种可重复使用的制作方法创建 Paragon 的材质。根据此法,美术师可标准化特定类型表面的生成方法。对单个函数进行的基础修改将更新此函数使用之处的所有实例。
+
+### 皮肤着色器纹理
+
+用于角色皮肤上的纹理分辨率均为 4K,最初由演员面部扫描生成。之后纹理经 Epic 美术师清理并调整。此纹理设置共利用了五种纹理贴图:弥散、粗糙、反射、散射,以及法线。
+
+| 纹理 | 名称 | 描述 |
+|---------|------|-------------|
+|(w:200 convert:false)|**Diffuse**|弥散贴图为材质提供基色。在 4K 分辨率下,皮肤下的毛细血管均清晰可见。深色的皱纹则能突出法线贴图提供的纹理。(*UE4_Demo_Head_D*)|
+|(w:200 convert:false)|**Roughness**|粗糙贴图保存在弥散纹理的透明通道中。这个常用技术可将使用中的纹理量保持到最低。注意粗糙度在毛孔和皱纹中会有所增加。这会导致这些区域缺乏光亮度,突出弥散和法线贴图带来的深度感。此外还需注意头发纹理的粗糙度为 1.0,防止头皮带来杂散反射高光,并为头发带来更强的深度感。(*UE4_Demo_Head_D*)|
+|(w:200 convert:false)|**Specular**|反射贴图控制皮肤表面可见的反射高光量。需要注意的是默认反射值为 0.5。此贴图将提升皮肤拉伸更紧之处的反射度,并降低不需要反射之处的反射度(如毛孔中心和皱纹之中)。(*CH2_exp04_merged_spec_f_FC_FINAL*)|
+|(w:200 convert:false)|**Scatter**|散射贴图控制散射透过皮肤表面的光照量。暗处区域展示出的散射极少(如脸颊),而明亮区域则能感受到更大量的散射(如鼻子和耳朵)。散射颜色则由 [次表面配置文件资源](Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/) 进行管理 (*UE4_Demo_Head_BackScatter*)|
+|(w:200 convert:false)|**Normal**|法线贴图在常规材质设置中功能正常,扰乱像素法线为表面提供触觉纹理。其设置在此例中并无特殊之处。(*UE4_Demo_Head__normals*)|
+
+
+## 头发着色
+
+头发着色由 UE4 的头发着色器模型处理。此着色器是基于物理的着色模型,以 [Eugene d'Eon、Steve Marschner 和 Johannes Hanika] 的研究为基础。[Weta Digital](http://www.wetafx.co.nz/research) 现今正在使用此着色器。着色器通过各向异性反射近似出头发表面的光反射、穿过头发的折射,以及通过多条发缕的散射。
+
+将材质的 **Shading Model** 属性设为 **Hair** 即可使用 UE4 头发着色器。
+
+
+
+
+### 头发和反射
+
+在真实世界中,头发通常有多个镜面反射高光:一个代表光的颜色,另一个则是头发颜色和光颜色的混合。在此文档中,我们将它们称为主要和次要反射高光。头发着色器可近似出高度真实的相同效果。
+
+(w:700 convert:false)
+[REGION:caption]1.更亮的头发代表主要反射高光。2.更亮的红色头发代表次要反射高光。[/REGION]
+
+UE4 的头发着色器中使用的近似算法以类似真实世界的方式来创建这些效果。光线照到毛囊表面时不会反射开。头发为半透明,部分光线能够*穿过*它,并可能在其中四处反射,然后退出。头发着色器和头发进行交互时通过光线可能行进的三条通道进行近似,如下方的动态 GIF 图表所示:
+
+(w:700 convert:false)
+[REGION:caption]单个毛囊的相交部分显示头发着色器近似与光线交互的方式,体现光线所采用路径的三个主要类型。请参阅下表中此进程每个部分的描述。[/REGION]
+
+| 数字 | 描述|
+|--------|-------------|
+|0.|毛囊的延展方向(从根到梢)。|
+|1.|仅限反射的通道,光线会在头发表面形成反弹。这能产生主要反射高光。|
+|2.|传播-传播通道,光线通过此通道传入毛囊并从另外一侧退出。这是光线在大量头发中进行散射的方式。|
+|3.|传播-反射-传播通道,光线通过此通道进入毛囊,在表面的边界中反射开,然后退出。这能产生次要反射高光。|
+
+如上方图表所示,一缕发丝并非是完美的圆柱体或管道状。事实上,头发的形状更像是一系列堆叠起来的圆锥体。这意味着从头发表面反射开的光线散射与完美平滑头发所形成的散射有所不同。更进一步而言,每根头发均指向不同的方向,因此反射高光不会被统一,但将基于头发指向的方向进行独立放置。这通常被称作*各向异性*反射,UE4 头发着色器同样支持此特性。
+
+### 头发和透明
+
+头发着色器使用遮罩混合模式替代半透明。然而,遮罩半透明将生成一个二进制结果——表面为完全不透明或完全透明。噪点递色图案不断在表面上移动,需要突出实心的区域更为密集。递色被用作混合遮罩透明的一种方式,但只在 TemporalAA 启用时生效。
+
+[OBJECT:ComparisonSlider]
+[PARAM:before]
+(w:700 convert:false)
+[/PARAM]
+[PARAM:after]
+(w:700 convert:false)
+[/PARAM]
+[/OBJECT]
+
+[REGION:note]结合 TemporalAA 使用动态递色需要数帧来进行混合。头发处于动态时可能出现一些穿帮。这是该技术的正常负面效果。[/REGION]
+
+#### 边缘遮罩
+
+(w:700 convert:false)
+
+虽然并非是着色器本身的一部分,但仍然值得一提的是用于范例角色头发、以及 Epic 游戏*Paragon*中其他角色的材质使用名为“边缘遮罩(Edge Mask)”的技术在头发侧对摄像机时将其淡化。因为头发作为一系列的片进行渲染——参见下方 [头发和几何体](#hairgeometry),因此从一些特定的摄像机角度可能看到每个片的边缘,破坏头发效果。
+
+为减轻此问题,材质在表面垂直旋转离开摄像机时计算摄像机相对于顶点法线的矢量,它还将淡出至完全透明。然而此方法的另一个方面时执行此操作头发着色器可能显示更多头皮。这是拥有较厚头发角色的头皮上通常绘有头发纹理的原因。如下图所示。
+
+(w:700 convert:false)
+
+
+[REGION:tip]需要指出的是此效果与 Quality Switch 节点相关联,因此在低性能平台上它可能会容易被关闭,以换取一些着色器性能。如常,推荐在目标平台上进行测试。[/REGION]
+
+
+
+
+
+### 头发创建
+
+使用此展示中的技术创建头发需要理解 Epic 构建此角色头发的方式。
+
+(#hairgeometry)
+#### 头发几何体
+
+使用 UE4 头发着色器的头发几何体通常使用一系列非平面的片表面,这是诸多实时头发解决方案中的一个常见方法。它们能在您选择的 DCC 应用中进行制作。
+
+[REGION:note]头发几何体细节不存在一成不变的规则,但需要注意的是此角色使用大约 800 个发片,总共约 18000 个三角形。还需要注意头发材质在主材质节点的属性中被设为两面。[/REGION]
+
+(w:700 convert:false)
+
+
+#### 头发纹理
+
+在 UE4 头发着色器的此使用实例中,最终结果由五个主要纹理构成:*Diffuse*、*Alpha*、*Root*、*Depth* 和每缕独立的 *ID* 纹理。在 Epic,这些纹理通常使用 3ds Max 的头发系统生成,将模拟的头发结果投射到一块几何体上。然而,相似结果拥有多个可用选项。
+
+
+| 纹理 | 名称 | 描述 |
+|---------|------|-------------|
+|(w:200 convert:false)|**Diffuse**|弥散纹理提供头发中主要的弥散或*基础*颜色、有时最好不对此纹理进行着色,通过参数驱动其颜色,角色头发可能染上多种不同颜色时尤为如此。(*UE4_Demo_Hair_D*)|
+|(w:200 convert:false)|**Alpha**|Alpha 纹理为头发提供不透明区域,隐藏发缕主体外的几何体。(*UE4_Demo_Hair_A*)|
+|(w:200 convert:false)|**Root**|Root 纹理提供一个遮罩,用于变更从发根至发梢的颜色,可调亮或变暗头发。(*UE4_Demo_Hair_Roots*)|
+|(w:200 convert:false)|**Depth**|Depth 纹理由 Pixel Depth 偏移所用,使头发获得深入发卷的特征。它也可用作变更不同深度头发颜色或着色值的基础,如在头发朝头皮方向移动时减少整体反射。(*UE4_Demo_Hair_Depth*)|
+|(w:200 convert:false)|**Unique ID**| Unique ID 纹理为给定头发几何体提供一个独一的 0 到 1 之间(黑到白)的值。这用于在头发自身之中提供细微的变化。(*UE4_Demo_Hair_ID*)|
+
+
+
+### 头发着色器属性
+
+使用头发着色器时用户可看到主材质节点中有一些新属性可用:**Scatter**、**Tangent** 和 **Backlit**。
+
+
+
+[REGION:warning]在撰写此文档时(版本 4.13),Backlit 属性只作为着色器早期版本的一部分而存在。与其的连接不会由头发着色器内部使用,因此可无视属性。[/REGION]
+
+#### Scatter
+
+我们将头发着色器视作*近似*而非*模拟*的其中一个主要原因是事实上并未对每缕单独的发丝进行模拟,也未完美模拟精确的光照行为。在真实世界中,光线从头发毛囊反射开并进行传播时,它会经常遭遇*其他*发缕,可能连续多次重复相同进程。此时没有计算系统能够准确生成此类实时模拟的效果。
+
+然而,光线散射通过头发形体的方式仍然决定着头发的在游戏中真实感(是否与真实世界相似)。为进行控制,头发着色器提供了 Scatter 属性,替代主着色器节点上的 Metallic,值限定在 0.0 和 1.0 之间。Scatter 控制通过角色头发整个主体(将其视为单个表面)的光线量。
+
+关于 Scatter 重要的一点是,它会比浅色头发更亮,比深色头发更暗。这将遵循自然世界的物理规则,因为深色头发将吸收更多光线。在实际操作中,如果尝试创建一个金发角色,只修改弥散纹理或颜色不够,也需要增加 Scatter 数值。
+
+
+[OBJECT:ComparisonSlider]
+[PARAM:before]
+(w:700 convert:false)
+[/PARAM]
+[PARAM:after]
+(w:700 convert:false)
+[/PARAM]
+[/OBJECT]
+[REGION:caption]在此例中发根和发梢颜色被设为偏白的金色,Random Variation 设为 0.0。Scatter 则用于调整被近似通过头发的光线量。这能说明通过修改 Scatter 值能生成多少种色调的头发。[/REGION]
+
+#### Tangent
+
+Tangent 属性替代了头发着色器上的 Normal 属性。切线作为与每缕头发平行运行的矢量进行计算,指回到发根。Tangent 属性的作用是帮助形成适当的各向异性反射。在此解释一番,各向异性反射是光线从带微小槽的表面(如拉丝金属)反弹开时出现的效果。
+
+(w:700 convert:false)
+[REGION:caption]左侧球体为各向异性着色,右侧球体则不是。您可发现各向异性发射高光沿表面伸展。[/REGION]
+
+Tangent 属性主要用作为矢量,控制各向异性高光伸展的方向。
+
+(w:700 convert:false)
+[REGION:caption]此图中的黄线代表沿发缕的切线,指回发根。[/REGION]
+
+[REGION:tip]在范例角色的头发着色器中,此矢量被赋予 Z 轴中 0.3 和 -0.3 之间的一个随机偏移(使用 Unique ID 纹理)。这将生成一个矢量(其在圆弧中拥有一个随机方向),有助于提供各向异性反射高光中的变化(如在一束真实头发中拥有的效果)。[/REGION]
+
+切线可以两种方式进行映射:自动映射或流型图。自动法要求每个头发片的纹理按发根朝向发梢朝下进行朝向。只要头发较短且片不存在弯曲和过度扭曲,这种方法便适用。此法用于范例角色的头发。
+
+##### 相切流型图
+
+另一种方法需要创建流型图。如角色头发较长且弯曲,需拥有比实际几何体更加卷曲的效果,或头发的单个纹理部分朝向不同方向(并非上文所述的上至下)。流型图代表头发在切线空间中或沿表面移动的方向。Photoreal Character Bust 项目中有一个名为 *T_Hair_Flow* 的未使用流型图。下方是流型图和反射结果的对比。
+
+[OBJECT:ComparisonSlider]
+[PARAM:before]
+(w:600 convert:false)
+[/PARAM]
+[PARAM:after]
+(w:600 convert:false)
+[/PARAM]
+[/OBJECT]
+[REGION:caption]此处展示了流型图沿 Sparrow 头发表面进行的纹理设置。注意:流型图只用于部分头发片上,并非头发的整个主体上。注意:沿流型图的不同数值将细微地改变沿头发的反射。[/REGION]
+
+
+
+
+#### 使用头发着色器的像素深度偏差
+
+像素深度偏差(PDO)并非头发着色器的特有属性。通俗而言,PDO 使像素拥有凹陷效果(远离摄像机),沿表面形成一种虚拟的景深感。因为头发由简单的几何体片组成(如下文中 [头发和几何体](#hairgeometry) 所述),因此使用 PDO 能为头发整个形体带来一种切实的景深感。它还将打破头发几何体面与头皮相交的交叉点,如下图所示。
+
+[OBJECT:ComparisonSlider]
+[PARAM:before]
+(w:700 convert:false)
+[/PARAM]
+[PARAM:after]
+(w:700 convert:false)
+[/PARAM]
+[/OBJECT]
+
+
+
+
+## 眼睛着色
+
+(w:700 convert:false)
+
+眼睛通常被称作“灵魂的窗户”。观者对人的印象主要来自眼睛,其他方面难以匹及。UE4 中的眼睛着色器提供眼睛表面的真实渲染,对眼睛的每个生理部分进行艺术把控。
+
+[REGION:warning]UE4 中的眼睛着色器技术含量很高,开发过程使着色器代码、材质、几何体形体和几何体的 UV 布局之间存在 **极强的相依性**。如无着色器开发的丰富经验,**不** 建议使用此着色器从零开始构建眼睛。为达目的,我们强烈建议用户在创建真实人眼时提取此范例中的眼睛几何体,并使用眼睛材质 **as-is** 替换相应纹理。 [/REGION]
+
+[REGION:tip]Photoreal Character 项目中有一个名为 **PhotorealEyeGeo** 的静态网格体。这能通过 FBX 从项目导出到您选择的 DCC 应用中,以便在您自建的项目中使用。[/REGION]
+
+### 眼睛生理结构
+
+为完全理解眼睛的特性,最好对眼睛生物学进行一定的了解。此处可见的每个部分均在此眼睛设置中被表示,所有部分均可使用应用至范例角色眼睛的材质实例中的公开参数进行修改。
+
+以下进行快速讲解:
+
+(w:700 convert:false)
+|数字|名称|描述|
+|------|----|-----------|
+|1|巩膜|巩膜也称“眼白”。眼睛的这个区域通常十分湿润,拥有少量的触感纹理。|
+|2|角膜缘|角膜缘是虹膜和巩膜之间深色环状区域。某些眼睛的该部分会比其他眼睛更为突出,从侧面进行观察看时通常会淡化。
+|3|虹膜|虹膜是眼睛中心周围的色彩环状区域。一个人拥有“绿色”眼睛,指的是虹膜主要是绿色。在真实人眼中,虹膜是可延展和收缩的肌肉状纤维组织,使光线进入瞳孔,或减少进入瞳孔的光线。还需要注意的是在真实世界中,虹膜实际上是碟状或圆锥状,不会凸出眼睛的其他部分。|
+|4|瞳孔|瞳孔是眼睛中心的深色点。它是光线传入的洞,使视网膜的视杆细胞和视锥细胞能够接收到光线。
+|5|角膜|角膜是虹膜之上充满液体的透明圆顶物。|
+
+### 眼睛中的折射——过去与现在
+
+眼球充满液体,因此它将对穿过其中的光线产生折射。在真实世界中从多个角度查看眼睛时能发现折射。虹膜和瞳孔将因折射而扭曲,因为是通过角膜进行观察。在游戏和电影中解决此问题的传统方法是创建两个单独的眼睛表面:一个提供巩膜、虹膜和瞳孔;另一个表面在此之上,提供角膜和眼睛的整体湿润度。这能够产生折射,因为下层表面将通过湿润层进行观察。此方法应用在 Epic *男孩和他的风筝*技术 demo 中男孩的眼睛上。下方图表展示了两个表面。
+
+(w:700 convert:false)
+
+然而,使用全新的眼睛着色器可通过*单层表面*实现更为真实的效果。通过角膜表面的光线折射现在完全在着色器中进行处理,减少对下方几何体的需求。打开 *MI_EyeRefractive_Bust* 材质实例,调整 **Refraction On/Off** 属性即可对此进行试验。
+
+[OBJECT:ComparisonSlider]
+[PARAM:before]
+(w:700 convert:false)
+[/PARAM]
+[PARAM:after]
+(w:700 convert:false)
+[/PARAM]
+[/OBJECT]
+
+### 眼睛着色器参数
+
+眼睛着色器较为复杂,推荐使用默认,因此我们在此对材质内置的艺术效果参数进行解析。以下是可在 *MI_EyeRefractive_Bust* 材质实例常量中进行调整的眼睛着色器参数。还将在所有可能的位置纳入建议的参数范围。
+
+
+
+|名称|描述|建议值范围|
+|----|-----------|-------------------|
+|[REGION:tablesection]静态切换参数值[/REGION]|||
+|**UseEyeBulge**|此属性基于眼球几何体是否使用角膜凸起的物理模型调整着色器的反射属性。|n/a|
+|[REGION:tablesection]矢量参数值[/REGION]|||
+|**Sclera inner color**| 这是巩膜与虹膜相交时的颜色。|n/a|
+|**Sclera outer color**| 这是巩膜在眼睛外边缘的颜色。|n/a|
+|**SecondaryEnvBalance**| 此值控制眼睛表面上可见 [次要环境](#eyeshadersecondaryenvironment) 的量。|0.00 - 0.03|
+|**SecondaryEnvRotationAxis**| [次要环境](#eyeshadersecondaryenvironment) 是虚拟反射,因此它必须围绕眼睛手动旋转。此属性控制旋转的轴。| <0.0, 0.0, 1.0> (Z 轴)|
+|[REGION:tablesection]标量参数值[/REGION]|||
+|**Depth Scale**| 此值控制角膜下虹膜反射的深度。|1.0-1.4|
+|**Flatten Normal**| 此值控制眼睛法线贴图发生的扁平,注重于巩膜。|0.9 - 1.1|
+|**IoR**|角膜下液体的折射索引。控制发生的折射量。|1.336|
+|**Iris Concavity Power**| 与 *Iris Concavity Scale* 共用,控制光线通过角膜时在虹膜表面上计算出的光线焦散的形态和量。在通常只在实际照亮的场景中可见,难以在材质实例编辑器中显现。|0.2 - 0.3|
+|**Iris Concavity Scale**| 与 *Iris Concavity Power* 共用,控制光线通过角膜时在虹膜表面上计算出的光线焦散的形态和量。在通常只在实际照亮的场景中可见,难以在材质实例编辑器中显现。|0.07 - 0.15|
+|**Iris UV Radius**| 控制眼球上虹膜的整体大小。|0.14 - 0.15|
+|**Iris Brightness**| 控制虹膜的亮度。| *基于虹膜的颜色* |
+|**Iris Roughness**| 此值决定虹膜之上角膜的亮度。| 0.0 - 0.1 |
+|**Limbus Dark Scale**| 控制角膜缘深色环状区的大小。| 2.0 - 2.15 |
+|**Limbus Pow**| 控制角膜缘区域的整体暗度。过高的数值将使整个角膜缘区域变暗。| 15.0 - 22.0 |
+|**Limbus UV Width Color**| 控制角膜缘的范例采样大小,或用于显示角膜缘所分配的眼睛表面的量。这是一个十分精妙的设置,进行调整是应多加考虑。| 0.025 - 0.040 |
+|**Limbus UV Width Shading**| 控制光线对角膜缘着色影响的程度。十分精妙的设置,调整时需深思熟虑。| 0.040 - 0.050 |
+|**Normal UV Scale**| 控制眼睛表面上法线贴图纹理的大小。| 1.8 - 2.6 |
+|**Pupil Scale**| 控制瞳孔的大小。这是用于扩大眼睛的设置。| 0.5 - 1.0 |
+|**Refraction On/Off**| 在着色器的折射和非折射版本之间进行混合。| 1.0 |
+|**Scale By Center**| 从中心调整整个虹膜/瞳孔区域的大小。| 0.8 - 1.2 |
+|**Sclera Brightness**| 控制巩膜(或眼白)的明亮度。| 0.9 - 1.3 |
+|**Sclera Roughness**| 控制巩膜的材质粗糙度数值| 0.0 - 0.1 |
+|**Secondary Env Rotation**| 此项沿使用 SecondaryEnvRotationAxis 属性所定义的轴旋转 [次要环境立方体贴图](#eyeshadersecondaryenvironment)。| n/a |
+|**Shadow Hardness**| 控制巩膜内外颜色之间混合的锐度。使用 Shadow Radius 驱动巩膜表面的着色,近似出眼睑在眼球表面投射下表面散射阴影的效果。| 0.1 - 0.2 |
+|**Shadow Radius**| 控制巩膜内外颜色之间混的的大小。结合 Shadow Hardness 使用。| 0.5 - 0.85 |
+|**Specularity Iris**| 控制角膜上(虹膜和瞳孔)的反射等级。| 0.25 - 0.8 |
+|**Specularity Sclera**| 控制巩膜上的反射等级。| 0.25 - 0.8 |
+|**Veins**| 控制由 Sclera Color Map 提供的眼睛静脉的可见度。| *基于 Sclera Color Map 和所需的静脉量。*|
+|[REGION:tablesection]纹理参数值[/REGION]|||
+|**Iris Color**| 参见下方的 [眼睛纹理](#eyetextures)。| n/a |
+|**Normal Map**| 参见下方的 [眼睛纹理](#eyetextures)。| n/a |
+|**Sclera Color**| 参见下方的 [眼睛纹理](#eyetextures)。| n/a |
+|**Secondary Env**| 这是用作次要反射环境的立方体贴图。参见下方的 [眼睛着色器次要环境](#eyeshadersecondaryenvironment)。| n/a |
+
+
+(#eyeshadersecondaryenvironment)
+#### 眼睛着色器次要环境
+
+次要环境是眼睛着色器的一部分,为眼睛表面提供虚拟的反射贴图。可使用着色器中的 SecondaryEnv ParamCube 为其提供一个纹理,然后使用其他 SecondaryEnv 属性进行控制。在眼睛的高度特写中十分实用,可观察到特定的反射,如直接环境、另一个角色等。
+
+[OBJECT:ComparisonSlider]
+[PARAM:before]
+(w:700 convert:false)
+[/PARAM]
+[PARAM:after]
+(w:700 convert:false)
+[/PARAM]
+[/OBJECT]
+
+### 眼睛制作
+
+之前在此章节中我们已经提到眼睛着色器代码、材质设置和眼睛网格体几何体之间有极强的相依性。以下高级总览将说明眼睛设置为何如此特殊,这些内容有助于将几何体替换为用户自建的角色眼睛模型。
+
+自建眼睛时,我们 **强烈** 推荐此范例中的实际眼睛几何体和材质。此处提供的大多数信息均基于已使用范例中资源的假设。
+
+[REGION:tip]Photoreal Character 项目中有一个名为 **PhotorealEyeGeo** 的静态网格体。这能通过 FBX 从项目导出到您选择的 DCC 应用中,以便在您自建的项目中使用。[/REGION]
+
+#### 形态和 UV 布局
+
+和真实的人眼一样,眼睛网格体模型并非完美的球体。其前方拥有一个特殊的圆顶,代表角膜。因此眼睛的形状类似于鸡蛋。
+
+(w:400 convert:false)
+[REGION:caption]此图展示了 Maya 中眼睛几何体的侧面外观。您会发现前方的凸起角膜。[/REGION]
+
+眼睛的 UV 布局十分重要,因为每个眼睛纹理的比例正是基于它而生成。好消息是,和眼睛着色器完美匹配的 UV 布局相对简单:沿眼睛前方向轴的平面投射。包含背面并非十分重要(因为它们在眼睛后面),在范例角色上也是这样的情况。
+
+ UV 布局外观如下:
+
+(w:400 convert:false)
+[REGION:caption]注意 UV 布局在 0-1 空间上居中,投射直接进入角膜。 [/REGION]
+
+(#eyetextures)
+### 眼睛纹理
+
+为眼睛创建的诸多纹理将基于以上创建的 UV 布局,虹膜贴图除外。主要可编辑纹理列表中包含:
+
+| 纹理 | 名称 | 描述 |
+|---------|------|-------------|
+|(w:200 convert:false) |**Sclera Map**|巩膜贴图控制眼白的颜色,以及眼睛边缘展示的静脉和组织颜色。举例而言,如果需要角色的眼睛布满血丝,这便是需要进行修改的纹理。(*UE4_Demo_Eye_Sclera_Color*)|
+|(w:200 convert:false) |**Mid Plane Displacement Map**|中平面置换贴图用于锁定穿透眼睛中心的平面,并用作虹膜深度偏差的基础。(*EyeMidPlaneDisplacement_Example*)|
+|(w:200 convert:false) |**Normal Map**|法线贴图的作用与所有着色器中法线贴图的作用相同——提供触觉纹理变化。在范例角色的眼睛设置中,它沿眼睛的湿润表面生成小块。(*T_Eye_Wet_Normal*)|
+|(w:200 convert:false) |**Tangent Map**|切线贴图用于控制表面在切线空间中流动的方向。在范例角色的眼睛设置中,它用于突出角膜与巩膜相交方向的变化。(*EYE_NORMALS.EYE_NORMALS*)|
+|(w:200 convert:false)|**Iris Map**|虹膜纹理较为独特,它不匹配 UV 布局。相反,纹理将填充整个分辨率。UV 和透明遮罩用于控制整体的虹膜大小,以及瞳孔的大小。如自建虹膜贴图,需要使瞳孔大小接近所提供纹理的比例。(*UE4_Demo_Eye_Iris*)|
+
+[REGION:warning]注意:Tangent Map 输出 **不** 直接插入 Normal Map 输入。它连接到一个 **Tangent Output** 节点(必须单独创建),如主材质 **M_HairSheet_Master2** 所示。 [/REGION]
+
+
+
+
+### 眼睛环境遮挡
+
+范例角色眼睛设置的最后一部分是使用一层半透明辅助表面模拟眼睛周围的环境遮挡。在真实世界中,眼睛和其他组织(如眼睑或泪管)接触时将出现十分柔和的阴影。柔和的原因是眼睛自身为半透明,光线将散射通过眼睛。为对此进行真实模拟,我们已放置一个几何体片覆盖眼睛并提供近似的环境遮挡,创建出更加真实的眼睛效果。
+
+应用到这个片的材质名为 *MI_Eye_Occlusion_Bust*,可在范例角色模型的 Element 3 中找到。
+
+[REGION:note]如要为角色眼睛自建内容,则很可能需要自行构建这块几何体。注意:它需要填充睁开眼睑的区域,其 UV 应清楚地填充 3D 建模程序中 0 到 1 的 UV 空间。 [/REGION]
+
+(w:700 convert:false)
+[REGION:caption]此图片展示了 Maya 中环境遮挡片几何体,不带面部几何体。此片的边缘将完美填充睁开的眼睑。 [/REGION]
+
+
+[OBJECT:ComparisonSlider]
+[PARAM:before]
+(w:700 convert:false)
+[/PARAM]
+[PARAM:after]
+(w:700 convert:false)
+[/PARAM]
+[/OBJECT]
+
+
+
+## 特别鸣谢
+
+特此感谢 [Eugene d'Eon、Steve Marschner 和 Johannes Hanika](http://www.eugenedeon.com/project/importance-sampling-for-physically-based-hair-fiber-models/) 发布他们的作品 [*The importance of sampling for physically-based hair fiber models*](http://dl.acm.org/authorize?6967840)。UE4 头发着色器的部分工作正是基于他们的作品而成。
diff --git a/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.INT.udn b/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.INT.udn
similarity index 97%
rename from Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.INT.udn
rename to Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.INT.udn
index bd67b08079c5..8183ac5d1441 100644
--- a/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.INT.udn
+++ b/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.INT.udn
@@ -1,16 +1,34 @@
-Availability: Docs
-Title:Photoreal Character Bust
+Availability: Public
+Title:Photorealistic Character
Crumbs:%ROOT%, Resources
Description:An overview of the Photoreal Character Bust showcase.
Related: Engine/Rendering/Materials
Related: Engine/Rendering/Materials/PhysicallyBased
Related: Engine/Rendering/Materials/LayeredMaterials
-Version: 4.13
+Version: 4.15
+topic-image:PhotorealHead.png
+social-image:PhotorealHead.png
+
[TOC(start:2 end:3)]
-
-(w:700 convert:false)
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ K-VyoqRB5_g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
The purpose of this showcase is to demonstrate the use of high-quality character shader techniques, similarly to those used on characters from Epic's MOBA game Paragon. To view this showcase, simply open the project and press Play In Editor to see the cinematic pan-around.
@@ -239,10 +257,10 @@ Using our new Eye shader, however, an even more realistic effect can be achieved
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
@@ -272,7 +290,7 @@ Due to the complexity of the eye shader and our recommendation that you use it a
|**Iris Roughness**| This value drives how shininess of the cornea, the surface directly over the iris. | 0.0 - 0.1 |
|**Limbus Dark Scale**| Controls the size of the darkening ring of the limbus. | 2.0 - 2.15 |
|**Limbus Pow***| Controls the overall darkening of the limbus area. Overdriven values will darken the entire corneal area. | 15.0 - 22.0 |
-|**Limbus UV Width Color| Controls the sample size for the limbus, or how much of the eye surface will be alloted for showing the limbus. This is a fairly delicate setting and should be adjusted with care. | 0.025 - 0.040 |
+|**Limbus UV Width Color**| Controls the sample size for the limbus, or how much of the eye surface will be alloted for showing the limbus. This is a fairly delicate setting and should be adjusted with care. | 0.025 - 0.040 |
|**Limbus UV Width Shading**| Controls how much light will affect the shading of the limbus. Very delicate setting, adjust with care. | 0.040 - 0.050 |
|**Normal UV Scale**| Controls the scale of the normal map texture used across the surface of the eye. | 1.8 - 2.6 |
|**Pupil Scale**| Controls the size of the pupil. This is the setting you would use to dilate the eyes. | 0.5 - 1.0 |
@@ -300,10 +318,10 @@ The Secondary Environment is a part of the eye shader that provides a faked refl
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
diff --git a/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.JPN.udn b/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.JPN.udn
similarity index 91%
rename from Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.JPN.udn
rename to Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.JPN.udn
index 6f73e96c53ab..527233e8c8e0 100644
--- a/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.JPN.udn
+++ b/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.JPN.udn
@@ -1,34 +1,52 @@
-INTSourceChangelist:3240145
-Availability:Docs
-Title:フォトリアルなキャラクターの胸像
+INTSourceChangelist:3403466
+Availability:Public
+Title:フォトリアルなキャラクター
Crumbs:%ROOT%, Resources
Description:フォトリアルなキャラクターの胸像のショーケースの概要
Related:Engine/Rendering/Materials
Related:Engine/Rendering/Materials/PhysicallyBased
Related:Engine/Rendering/Materials/LayeredMaterials
-Version:4.13
+Version:4.15
+topic-image:PhotorealHead.png
+social-image:PhotorealHead.png
+
[TOC(start:2 end:3)]
-
-(w:700 convert:false)
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ K-VyoqRB5_g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
このショーケースの目的は、エピックの MOBA ゲーム、Paragon のキャラクターで使用されたのと同様の高品質なキャラクター シェーダー技術についてデモすることです。このショーケースを観るには、このプロジェクトを開いて [Play In Editor] を押して、シネマティックスのパン アラウンドを見ます。
このキャラクターを生成するために使った技術の詳しい情報は、[Unreal Engine Livestream - Tech & Techniques Behind Creating the Characters for Paragon](https://www.youtube.com/watch?v=toLJh5nnJA8) をご覧ください。
-## スキン シェーディング
+## スキンシェーディング
-キャラクターのスキンは、UE4 の [サブサーフェス プロファイルのシェーディング モデル](Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/) を使って作成されています。
+キャラクターの皮膚は、UE4 の [サブサーフェス プロファイルのシェーディング モデル](Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/) を使って作成されています。
(w:700 convert:false)
-スキン マテリアルのベースをセットアップするには、 [マテリアル関数](Engine/Rendering/Materials/Functions/) の使用に注意してください。これは、Paragon のマテリアルを作成する再利用可能なオーサリング アプローチとして行われます。このやり方を用いて、アーティストはひとつの関数に対する基本的な変更が、その関数を使用する全インスタンスを更新することを理解したうえで、一部のタイプのサーフェスを生成するアプローチを標準化することができます。
+皮膚のマテリアルのベースをセットアップするには、 [マテリアル関数](Engine/Rendering/Materials/Functions/) の使用に注意してください。これは、Paragon のマテリアルを作成する再利用可能なオーサリング アプローチとして行われます。このやり方を用いて、アーティストはひとつの関数に対する基本的な変更が、その関数を使用する全インスタンスを更新することを理解したうえで、一部のタイプのサーフェスを生成するアプローチを標準化することができます。
### スキン シェーダーのテクスチャ
-キャラクターのスキンで使われているテクスチャーは、すべて 4K の解像度であり、もともと人の顔をスキャンして作られています。テクスチャはエピックのアーティストがクリーンアップして微調整しています。このスキンのセットアップでは、ディフューズ、ラフネス、スペキュラリティ、散乱、法線の合計 5 種類の テクスチャ マップを利用しています。
+キャラクターの皮膚で使われているテクスチャーは、すべて 4K の解像度であり、もともと人の顔をスキャンして作られています。テクスチャはエピックのアーティストがクリーンアップして微調整しています。この皮膚のセットアップでは、ディフューズ、ラフネス、スペキュラリティ、散乱、法線の合計 5 種類の テクスチャ マップを利用しています。
| テクスチャ | 名前 | 説明 |
|---------|------|-------------|
@@ -71,7 +89,7 @@ UE4 のヘア シェーダーで使われる近似アルゴリズムは、現実
### 髪と透過処理
-ヘア シェーダーは、透過性の代わりにマスクしたブレンド モードを使用します。ただし、マスクした透過処理では二値の結果が得られます。サーフェスは完全に不透明か完全に透明になります。ノイズがあるディザ パターンは絶えずサーフェス上を移動し、一段とソリッドである必要があるエリアでは濃くなります。ディザはマスクした透過処理の手段として使用されますが、TemporalAA がアクティブな場合に限り機能します。
+ヘア シェーダーでは半透明の代わりにマスクしたブレンド モードを使用します。ただし、マスクした透過処理では二値の結果が得られます。サーフェスは完全に不透明か完全に透明になります。ノイズのディザ パターンが絶えずサーフェス上を移動し、よりソリッドになる必要がある箇所では密度が高くなります。ディザはマスクした透過処理をブレンドする方法として使われますが、TemporalAA がアクティブな場合に限り機能します。
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -82,7 +100,7 @@ UE4 のヘア シェーダーで使われる近似アルゴリズムは、現実
[/PARAM]
[/OBJECT]
-[REGION:note]アニメートされたディザを TemporalAA と合わせて使用すると、このブレンドをリゾルブするためにいくつかのフレームが必要です。これにより動作中に髪にアーティファクトが生じることがあります。この技術で予期される好ましくない影響です。[/REGION]
+[REGION:note]アニメートされたディザを TemporalAA と合わせて使用すると、このブレンドをリゾルブするためにいくつかのフレームが必要です。これにより動作中に髪にアーティファクトが生じることがありますが、これは、この技術で起こる予測範囲内の影響です。[/REGION]
#### エッジのマスキング
@@ -90,7 +108,7 @@ UE4 のヘア シェーダーで使われる近似アルゴリズムは、現実
シェーダーの一部ではありませんが、サンプル キャラクターの髪で使われているマテリアルおよび 『Paragon』 の他のキャラクターでは、いわゆる「エッジ マスク」を使ってカメラに対して真横になるにつれて髪をフェードさせます。髪は一連の平面としてレンダリングされるため、 (以下の [髪のジオメトリ](#髪のジオメトリ) を参照) 一定のカメラ アングルからは、各シートのエッジが見えて、ヘアのエフェクトが壊れます。
-この問題を緩和するために、マテリアルは頂点法線に対してカメラのベクターを計算し、サーフェスがカメラから垂直に遠ざかるにつれて、完全に透過にフェードしていくようにします。このアプローチの他の面としては、そうすることでヘア シェーダーが頭皮を多く見せる可能性があります。これは髪の量が多いキャラクターでは多くの場合、以下の画像のように頭皮にヘア テクスチャがペイントされている理由でもあります。
+この問題を軽減するために、マテリアルは頂点法線に対してカメラのベクターを計算し、サーフェスがカメラから垂直に遠ざかるにつれて、完全に透過にフェードしていくようにします。このアプローチの他の面としては、そうすることでヘア シェーダーが頭皮を多く見せる可能性があります。これは髪の量が多いキャラクターでは多くの場合、以下の画像のように頭皮にヘア テクスチャがペイントされている理由でもあります。
(w:700 convert:false)
@@ -101,7 +119,7 @@ UE4 のヘア シェーダーで使われる近似アルゴリズムは、現実
-### 髪のオーサリング
+###髪のオーサリング
このショーケースで示した技術を使って髪を作成するには、エピックがこのキャラクターの髪をどのように作成したかについて少々理解する必要があります。
@@ -116,7 +134,7 @@ UE4 のヘア シェーダーを使ったヘア ジオメトリは一般的に
#### ヘア テクスチャ
-UE4 のヘア シェーダーでこれを使用すると、最終結果は以下の 5 つの主要テクスチャによって操作されます。すなわち、*Diffuse*、 *Alpha*、 *Root*、*Depth*、および髪一本毎に固有の *ID* の 5 つです。エピックでは、こうしたテクスチャは通常、3ds Max のヘア システムを使って生成します。シミュレートした髪の結果をジオメトリの一部に投影します。ただし、似たような結果を得るために利用できるオプションが数多くあります。
+UE4 のヘア シェーダーでこれを使用すると、最終結果は以下の 5 つの主要テクスチャによって操作されます。すなわち、*Diffuse*、 *Alpha*、 *Root*、*Depth*、および髪一本毎に固有の *ID* の 5 つです。エピックでは、こうしたテクスチャは通常 3ds Max の Hair システムを使って生成しています。シミュレートしたヘアの結果をジオメトリのピースに投影しています。ただし、同じような結果を得るために利用できるオプションは他にもあります。
| テクスチャ | 名前 | 説明 |
@@ -222,7 +240,7 @@ Pixel Depth Offset (PDO、ピクセル深度オフセット) は、ヘア シェ
以下は概要です。
(w:700 convert:false)
-|Number|Name|Description|
+|番号|名称|説明|
|------|----|-----------|
|1|強膜|眼球の白目部分です。目のこの部分は一般的に湿っていて、若干立体的なテクスチャになっています。|
|2|縁|虹彩と強膜の間にある暗い色の輪です。目によって目立つ度合いが異なり、真横から見ると見えなくなる傾向があります。|
@@ -230,7 +248,7 @@ Pixel Depth Offset (PDO、ピクセル深度オフセット) は、ヘア シェ
|4|瞳孔| 瞳孔は、目中央部の暗い部分です。網膜の桿体細胞と錐体視細胞を通った光が通る穴です。|
|5|角膜|透明であり、液体で満たされたドーム状のもので、虹彩の表面上にあります。 |
-### 目の中の屈折 - 当時と現在
+### 目の中の屈折 - これまでと現在
眼球は液体で満たされているため、その中を通る光は屈折します。複数の角度から目を見ると、現実世界でもこれがわかります。角膜から見ると虹彩と瞳孔は反射によって歪みます。ゲームや映像でこれに対処する従来のアプローチは、2 つの別箇の目のサーフェスを作るというものです。ひとつは、強膜、虹彩、瞳孔になり、その上のもうひとつのサーフェスは角膜と全体的な目の水分になります。これにより、屈折が可能になります。下の方にあるサーフェスが水分がある層のシェルを通して見られるからです。こうしたアプローチは、エピックの「A Boy and His Kite」の技術デモで使用されました。以下の図では、2 つのサーフェスを表しています。
@@ -240,10 +258,10 @@ Pixel Depth Offset (PDO、ピクセル深度オフセット) は、ヘア シェ
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
@@ -301,10 +319,10 @@ Pixel Depth Offset (PDO、ピクセル深度オフセット) は、ヘア シェ
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
@@ -328,7 +346,7 @@ Pixel Depth Offset (PDO、ピクセル深度オフセット) は、ヘア シェ
UV レイアウトは以下のようになります。
(w:400 convert:false)
-[REGION:caption]UV レイアウトは 0-1 空間の中心にあり、プロジェクションは直接角膜の中を見ます。[/REGION]
+[REGION:caption]UV レイアウトは 0-1 空間の中心にあり、プロジェクションは直接角膜を見ます。[/REGION]
### 目のテクスチャ
@@ -343,7 +361,7 @@ Pixel Depth Offset (PDO、ピクセル深度オフセット) は、ヘア シェ
|(w:200 convert:false) |**Tangent Map**|タンジェント マップはタンジェント空間に流れこむサーフェスの方向を制御するために使用します。サンプル キャラクターの目のセットアップでは、角膜が強膜と接触する方向の変化を強調するために使用します。(*EYE_NORMALS.EYE_NORMALS*)|
|(w:200 convert:false)|**Iris Map**|虹彩のテクスチャは UV レイアウトと一致しないという点においてユニークなものです。代わりにこのテクスチャは解像度を全体的に満たします。UV とアルファ マスクは、全体的な虹彩のサイズ、および瞳孔のサイズを制御するために使用します。独自の虹彩マップを作成することが難しければ、与えられたテクスチャの比率に近くなるように瞳孔のサイズを適切に維持するようにしてください。(*UE4_Demo_Eye_Iris*)|
-[REGION:warning]Tangent Map の出力が Normal Map の入力に直接 **入力されないことに注意してください。**これは、**Tangent Output** ノードに接続されます。マスター マテリアル、**M_HairSheet_Master2** のように別個に作成しなければなりません。[/REGION]
+[REGION:warning]Tangent Map の出力が Normal Map の入力に直接 **入力されないことに注意してください。**これは、**Tangent Output** ノードに接続されます。マスター マテリアルの **M_HairSheet_Master2** のように別個に作成しなければなりません。[/REGION]

@@ -373,4 +391,4 @@ Pixel Depth Offset (PDO、ピクセル深度オフセット) は、ヘア シェ
## 謝辞
-[物理ベースの髪の繊維モデルのサンプリングの重要性](http://dl.acm.org/authorize?6967840) を公開してくださった [Eugene d'Eon 氏、 Steve Marschner 氏、 およびJohannes Hanika 氏](http://www.eugenedeon.com/project/importance-sampling-for-physically-based-hair-fiber-models/) の皆様に感謝いたします。 UE4 のヘア シェーダーの一部はこの内容に基づいたものです。
+[Importance of sampling for physically-based hair fiber models (物理ベースの髪の繊維モデルのサンプリングの重要性)](http://dl.acm.org/authorize?6967840) を公開してくださった [Eugene d'Eon 氏、 Steve Marschner 氏、 およびJohannes Hanika 氏](http://www.eugenedeon.com/project/importance-sampling-for-physically-based-hair-fiber-models/) の皆様に感謝いたします。 UE4 のヘア シェーダーの一部はこの内容に基づいたものです。
diff --git a/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.KOR.udn b/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.KOR.udn
similarity index 90%
rename from Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.KOR.udn
rename to Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.KOR.udn
index aca9dda67679..072a639b7eca 100644
--- a/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.KOR.udn
+++ b/Engine/Documentation/Source/Resources/Showcases/PhotorealisticCharacter/TwinblastBust.KOR.udn
@@ -1,17 +1,35 @@
-INTSourceChangelist:3240145
-Availability: Docs
-Title:실사 캐릭터 버스트
+INTSourceChangelist:3403466
+Availability: Public
+Title:실사 캐릭터
Crumbs:%ROOT%, Resources
-Description:Photoreal Character Bust, 실사 캐릭터 버스터 쇼케이스 개요입니다.
+Description:Photoreal Character, 실사 캐릭터 쇼케이스 개요입니다.
Related: Engine/Rendering/Materials
Related: Engine/Rendering/Materials/PhysicallyBased
Related: Engine/Rendering/Materials/LayeredMaterials
-Version: 4.13
+Version: 4.15
+topic-image:PhotorealHead.png
+social-image:PhotorealHead.png
+
[TOC(start:2 end:3)]
-
-(w:700 convert:false)
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ K-VyoqRB5_g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 100
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
이 쇼케이스의 목적은 에픽의 모바 게임 파라곤의 캐릭터에 사용된 것과 비슷한 하이 퀄리티 캐릭터 셰이더 기법을 선보이는 것입니다. 이 쇼케이스를 확인하려면, 프로젝트를 열고 에디터에서 플레이 버튼을 눌러 캐릭터 주위를 도는 시네마틱을 확인하면 됩니다.
@@ -55,30 +73,30 @@ UE4 헤어 셰이더 활용을 위해서는, **Shading Model** 프로퍼티를 *
(w:700 convert:false)
[REGION:caption]1. 연한 색 헤어는 일차 스페큘러 하이라이트를 나타냅니다. 2. 밝은 색 헤어는 이차 스페큘러 하이라이트를 나타냅니다.[/REGION]
-UE4 헤어 셰이더에 사용된 추정 알고리즘은 현실에서와 비슷한 방식으로 그러한 효과를 냅니다. 빛이 헤어 모낭 표면에 닿으면, 그냥 단순하게 튕겨나가지 않습니다. 헤어는 반투명이라, 일부는 *투과* 시켜, 그 안을 약간 튕겨다니다가 빠져나갑니다. 헤어 셰이더는 빛이 헤어에 닿으면서 벌어질 수 있는 세 가지 경로를 추정하여, 아래 애니메이션 GIF 도표와 같이 표현합니다:
+UE4 헤어 셰이더에 사용된 추정 알고리즘은 현실에서와 비슷한 방식으로 그러한 효과를 냅니다. 빛이 헤어 모낭 표면에 닿으면, 그냥 단순하게 튕겨나가지 않습니다. 헤어는 반투명이라, 일부는 *투과* 시켜, 그 안을 약간 튕겨다니다가 빠져나갑니다. 헤어 셰이더는 빛이 헤어에 닿으면서 벌어질 수 있는 세 가지 경로를 추정하여, 아래 애니메이션 GIF 와 같이 표현합니다:
(w:700 convert:false)
-[REGION:caption]하나의 헤어 모낭 크로스 섹션이 헤어 셰이더가 빛과의 상호작용을 추정해 내는 모습을 보여주면서, 라이트가 택할 세 가지 주요 유형을 선보입니다. 이 프로세스 각 부분에 대한 설명은 아래 표를 참고하십시오.[/REGION]
+[REGION:caption]하나의 헤어 모낭이 겹친 부분을 보면 헤어 셰이더가 빛과의 상호작용을 어떻게 추정해내는지, 세 가지 주요 빛 경로를 보여줍니다. 이 프로세스 각 부분에 대한 설명은 아래 표를 참고하십시오.[/REGION]
| 번호 | 설명 |
|--------|-------------|
|0. |헤어 모낭의 성장 (뿌리에서 끝) 방향입니다. |
|1. |리플렉션 전용 경로로, 헤어 표면에서 튕겨져 나오는 빛을 포함합니다. 일차 스페큘러 하이라이트를 만듭니다. |
-|2. |투과-투과 경로로, 빛이 헤어 모낭속으로 들어간 뒤 반대편으로 나옵니다. 이런 식으로 헤어 볼륨 안에서 빛이 퍼집니다.|
-|3. |투과-리플렉션-투과 경로로, 빛이 헤어 모낭에 들어오면, 표면 내부 바운드를 반사시킨 뒤 빠져나갑니다. 그러면 이차 스페큘러 라이트가 생성됩니다.|
+|2. |투과-투과 경로로, 빛이 헤어 모낭속으로 들어간 뒤 반대편으로 나옵니다. 이런 식으로 헤어 볼륨 안에서 빛이 퍼집니다. |
+|3. |투과-리플렉션-투과 경로로, 빛이 헤어 모낭에 들어와 표면 내부 경계에서 반사된 뒤 빠져나갑니다. 이를 통해 이차 스페큘러 라이트가 생성됩니다. |
-위 그림에서 보듯이, 헤어 한 가닥은 완벽한 원통형 또는 튜브형이 아닙니다. 헤어는 사실상 서로 겹쳐 놓은 원뿔쪽에 가까운 것으로 보입니다. 즉 헤어 표면을 튕겨져 나가는 빛은, 헤어가 완전 부드러울 떄화는 완전히 다른 방식으로 산란된다는 뜻입니다. 게다가, 각 머리칼은 일반적으로 다른 방향을 가리키고 있기 때문에, 스페큘러 하이라이트에는 통일성이 없으나 헤어가 가리키는 방향에 따라 독립적으로 배치할 수 있습니다. 이런 것을 흔히 *anisotropic* (어나이소트로픽, 비등방성) 스페큘러라 합니다. 이 역시도 UE4 헤어 셰이더에 지원되고 있습니다.
+위 그림에서 보듯이, 헤어 한 가닥은 완벽한 원통형 또는 튜브형이 아닙니다. 헤어는 사실상 서로 겹쳐 놓은 원뿔처럼 보입니다. 즉 헤어 표면을 튕겨져 나가는 빛은, 헤어가 완전 부드러울 때와는 완전히 다른 방식으로 산란된다는 뜻입니다. 게다가, 각 머리칼은 일반적으로 다른 방향을 가리키고 있기 때문에 스페큘러 하이라이트에는 통일성이 없지만, 헤어가 가리키는 방향에 따라 독립적으로 배치됩니다. 이런 것을 흔히 *anisotropic* (어나이소트로픽, 비등방성) 스페큘러라 합니다. 이 역시도 UE4 헤어 셰이더에 지원되고 있습니다.
### 헤어와 반투명
-헤어 셰이더는 반투명이 아닌 마스크드 블렌드 모드를 사용합니다. 하지만 마스크드 반투명은 이진 결과값을 냅니다 - 완전 불투명하거나 완전 투명한 표면만 가능한 것입니다. 노이즈가 낀 디더링 패턴을 지속적으로 표면에 걸쳐 이동시켜, 속이 꽉 찬 영역은 보다 빽빽하게 만듭니다. 마스크드 반투명을 블렌딩하는 방법으로는 디더링이 사용되나, 템포럴 AA 활성화 상태에서만 작동합니다.
+헤어 셰이더는 반투명이 아닌 Masked 블렌드 모드를 사용합니다. 하지만 Masked 반투명은 이진 결과값을 냅니다 - 완전 불투명하거나 완전 투명한 표면만 가능한 것입니다. 노이즈가 낀 디더링 패턴을 지속적으로 표면에 걸쳐 이동시켜, 속이 꽉 찬 영역은 보다 빽빽하게 만듭니다. 마스크드 반투명을 블렌딩하는 방법으로는 디더링이 사용되나, 템포럴 AA 활성화 상태에서만 작동합니다.
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
@@ -88,7 +106,7 @@ UE4 헤어 셰이더에 사용된 추정 알고리즘은 현실에서와 비슷
(w:700 convert:false)
-딱히 셰이더 자체의 일부는 아니지만, 에픽의 게임 *파라곤* 의 다른 캐릭터 뿐만 아니라 예제 캐릭터의 헤어에 사용된 머티리얼은 "Edge Mask" (에지 마스크)라는 기법을 사용하여 카메라 가장자리에 걸리는 헤어를 페이드 아웃시키고 있습니다. 헤어는 일련의 면으로 렌더링되기에 (아래 [헤어와 지오메트리](#헤어와지오메트리) 참고) 특정 카메라 각도에서는 각 시트의 에지가 보여 헤어의 느낌이 깨질 수 있습니다.
+딱히 셰이더 자체의 일부는 아니지만, 에픽의 게임 *파라곤* 의 다른 캐릭터 뿐만 아니라 예제 캐릭터의 헤어에 사용된 머티리얼은 "Edge Mask" (에지 마스크)라는 기법을 사용하여 카메라 가장자리에 걸리는 헤어를 페이드 아웃시키고 있습니다. 헤어는 일련의 면으로 렌더링되기에 (아래 [헤어 지오메트리](#헤어지오메트리) 참고) 특정 카메라 각도에서는 각 시트의 에지가 보여 헤어의 느낌이 깨질 수 있습니다.
이러한 문제 경감을 위해, 머티리얼은 카메라의 버텍스 노멀에 대한 벡터를 계산하여 표면이 카메라에서 수직 방향으로 멀어지도록 합니다. 완벽한 투명으로 페이드 아웃 시키기도 합니다. 그러나 이 접근법의 다른 측면이 있다면, 그렇게 하는 데 있어 헤어 셰이더에 두피가 더 많이 보일 수 있다는 점입니다. 그래서 두꺼운 헤어의 머리를 지닌 캐릭터 다수가 아래 그림처럼 두피에 헤어 텍스처가 칠해진 것처럼 보이는 이유입니다.
@@ -139,7 +157,7 @@ UE4 의 헤어 셰이더를 이용한 헤어 지오메트리는 보통 평면이
#### Scatter
-헤어 셰이더를 *시뮬레이션* 이 아닌 *추정* 이라 하는 주요 이유 중 하나는, 모든 헤어 가닥을 실제 시뮬레이션하는 것도 아니요, 완벽히 정확한 라이팅 동작을 시뮬레이션하는 것도 아니기 때문입니다. 현실에서 빛이 헤어 모낭에 반사 및 투과될 때, 종종 *다른* 헤어 가닥을 만나며 같은 프로세스를 연속해서 여러 번 반복해야 할 것입니다. 이 때 그러한 시뮬레이션 효과를 실시간으로 정확히 계산해 낼 수 있는 시스템은 없습니다.
+헤어 셰이더를 *시뮬레이션* 이 아닌 *추정* 이라 하는 주요 이유 중 하나는, 모든 헤어 가닥을 실제 시뮬레이션하는 것도 아니고, 완벽히 정확한 라이팅 동작을 시뮬레이션하는 것도 아니기 때문입니다. 현실에서 빛이 헤어 모낭에 반사 및 투과될 때, 종종 *다른* 헤어 가닥을 만나며 같은 프로세스를 연속해서 여러 번 반복해야 할 것입니다. 이 때 그러한 시뮬레이션 효과를 실시간으로 정확히 계산해 낼 수 있는 시스템은 없습니다.
그럼에도 빛이 헤어 본체를 통해 산란되는 방식은 그 헤어의 사실적 느낌에 여전히 매우 중요하며, 현실과 비슷한 느낌을 주는 게임이라면 두말할 것도 없습니다. 이에 대한 제어를 위해, 헤어 셰이더에는 Scatter (스캐터) 프로퍼티가 제공되는데, 주요 셰이더 노드의 메탈릭 값을 대체시켜 0.0 과 1.0 사이의 값으로 제한시키는 것입니다. 스캐터는 캐릭터의 헤어 전체 바디에 얼마만큼의 빛을 통과시킬지 제어합니다.
@@ -148,10 +166,10 @@ UE4 의 헤어 셰이더를 이용한 헤어 지오메트리는 보통 평면이
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
[REGION:caption]이 예제에서 Root (뿌리) 부분과 Tip (끝) 부분의 색은 연한 금색으로, Random Variation (무작위 다변화)는 0.0 으로 설정되었습니다. 거기에 스캐터를 사용하여 헤어에 얼마만큼의 빛을 통과시킬지 조절했습니다. 스캐터 값만 바꿔도 다양한 헤어 톤을 낼 수 있다는 것을 보여줍니다.[/REGION]
@@ -174,7 +192,7 @@ Tangent (탄젠트) 프로퍼티는 헤어 셰이더를 노멀 프로퍼티를
##### 탄젠트용 플로우 맵
-다른 방식은 플로우 맵을 만들어야 합니다. 캐릭터 헤어가 길고 굽어지면서 실제 지오메트리보다 꼬불꼬불해 보일 필요가 있을 때, 또는 헤어의 개별 텍스처 부분이 각기 다른 방향을 하고 있을 (위 설명대로 하향식이 아닐) 때 좋습니다. 플로우 맵은 헤어의 이동 방향을 탄젠트 스페이스로, 또는 표면을 따라서 나타냅니다. 실사 캐릭터 버스트 프로젝트 안에 보면 *T_Hair_Flow* 라는 미사용 플로우 맵을 찾을 수 있습니다. 아래는 그 플로우 맵과 스페큘러의 결과를 비교한 것입니다.
+다른 방식은 플로우 맵을 만들어야 합니다. 캐릭터 헤어가 길고 굽어지면서 실제 지오메트리보다 꼬불꼬불해 보일 필요가 있을 때, 또는 헤어의 개별 텍스처 부분이 각기 다른 방향을 하고 있을 (위 설명대로 하향식이 아닐) 때 좋습니다. 플로우 맵은 헤어의 이동 방향을 탄젠트 스페이스로, 또는 표면을 따라서 나타냅니다. 실사 캐릭터 프로젝트 안에 보면 *T_Hair_Flow* 라는 미사용 플로우 맵을 찾을 수 있습니다. 아래는 그 플로우 맵과 스페큘러의 결과를 비교한 것입니다.
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -191,7 +209,7 @@ Tangent (탄젠트) 프로퍼티는 헤어 셰이더를 노멀 프로퍼티를
#### 헤어 셰이더로 픽셀 뎁스 오프셋 사용
-Pixel Depth Offset (PDO, 픽셀 뎁스 오프셋)은 헤어 셰이더 고유 프로퍼티는 아닙니다. 일반적인 용어로, PDO 는 픽셀이 카메라에서 오목하게 떨어져 있는 것처럼 보이게 만들어, 표면에 인공적인 깊이감을 만들어 냅니다. 헤어는 단순한 지오메트리 시트로 이루어져 있기에, 아래 [헤어와 지오메트리](#헤어와지오메트리) 부분에 설명된 대로, PDO 를 사용하면 헤어 모양 전반적으로 확실한 깊이감을 줄 수 있습니다. 또 아래 그림에서처럼 헤어 지오메트리 면이 두피와 만나는 부분에 교차점을 분해시켜 주기도 합니다.
+Pixel Depth Offset (PDO, 픽셀 뎁스 오프셋)은 헤어 셰이더 고유 프로퍼티는 아닙니다. 일반적인 용어로, PDO 는 픽셀이 카메라에서 오목하게 떨어져 있는 것처럼 보이게 만들어, 표면에 인공적인 깊이감을 만들어 냅니다. 헤어는 단순한 지오메트리 시트로 이루어져 있기에, 아래 [헤어 지오메트리](#헤어지오메트리) 부분에 설명된 대로, PDO 를 사용하면 헤어 모양 전반적으로 확실한 깊이감을 줄 수 있습니다. 또 아래 그림에서처럼 헤어 지오메트리 면이 두피와 만나는 부분에 교차점을 분해시켜 주기도 합니다.
[OBJECT:ComparisonSlider]
[PARAM:before]
@@ -240,10 +258,10 @@ Pixel Depth Offset (PDO, 픽셀 뎁스 오프셋)은 헤어 셰이더 고유 프
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
@@ -301,10 +319,10 @@ Secondary Environment (이차 배경)은 눈 표면에 가짜 리플렉션 맵
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
@@ -362,10 +380,10 @@ Secondary Environment (이차 배경)은 눈 표면에 가짜 리플렉션 맵
[OBJECT:ComparisonSlider]
[PARAM:before]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[PARAM:after]
-(w:700 convert:false)
+(w:700 convert:false)
[/PARAM]
[/OBJECT]
diff --git a/Engine/Documentation/Source/Resources/Showcases/Showcases.INT.udn b/Engine/Documentation/Source/Resources/Showcases/Showcases.INT.udn
index 4508ca4e27fc..f41bf5c47ef7 100644
--- a/Engine/Documentation/Source/Resources/Showcases/Showcases.INT.udn
+++ b/Engine/Documentation/Source/Resources/Showcases/Showcases.INT.udn
@@ -50,6 +50,7 @@ The corresponding documentation is designed to provide some insight into how eac
[/EXCERPT:Showcases]
[REGION:topics third]
+%Resources/Showcases/PhotorealisticCharacter:topiccompact%
%Resources/Showcases/SequencerSubway:topiccompact%
%Resources/Showcases/Infiltrator:topiccompact%
%Resources/ContentExamples:TopicCompact%
diff --git a/Engine/Documentation/Source/Resources/Showcases/Showcases.JPN.udn b/Engine/Documentation/Source/Resources/Showcases/Showcases.JPN.udn
index 6f2914b87d7d..cd8341dc0f87 100644
--- a/Engine/Documentation/Source/Resources/Showcases/Showcases.JPN.udn
+++ b/Engine/Documentation/Source/Resources/Showcases/Showcases.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3275209
+INTSourceChangelist:3403470
Availability:Public
Title:エンジン機能のサンプル
Crumbs:%ROOT%, Resources
@@ -51,6 +51,7 @@ Version:4.9
[/EXCERPT:Showcases]
[REGION:topics third]
+%Resources/Showcases/PhotorealisticCharacter:topiccompact%
%Resources/Showcases/SequencerSubway:topiccompact%
%Resources/Showcases/Infiltrator:topiccompact%
%Resources/ContentExamples:TopicCompact%
diff --git a/Engine/Documentation/Source/Resources/Showcases/Showcases.KOR.udn b/Engine/Documentation/Source/Resources/Showcases/Showcases.KOR.udn
index 758c6d21cfde..131dd70270e2 100644
--- a/Engine/Documentation/Source/Resources/Showcases/Showcases.KOR.udn
+++ b/Engine/Documentation/Source/Resources/Showcases/Showcases.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3275209
+INTSourceChangelist:3403470
Availability: Public
Title:엔진 기능 예제
Crumbs:%ROOT%, Resources
@@ -51,6 +51,7 @@ Version: 4.9
[/EXCERPT:Showcases]
[REGION:topics third]
+%Resources/Showcases/PhotorealisticCharacter:topiccompact%
%Resources/Showcases/SequencerSubway:topiccompact%
%Resources/Showcases/Infiltrator:topiccompact%
%Resources/ContentExamples:TopicCompact%
diff --git a/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.CHN.udn b/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.CHN.udn
deleted file mode 100644
index 07354871fe30..000000000000
--- a/Engine/Documentation/Source/Resources/Showcases/TwinblastBust/TwinblastBust.CHN.udn
+++ /dev/null
@@ -1,293 +0,0 @@
-INTSourceChangelist:0
-Availability: Docs
-Title:Twinblast Bust
-Crumbs:%ROOT%, Resources
-Description:An overview of the Twinblast Bust showcase.
-Related: Engine/Rendering/Materials
-Related: Engine/Rendering/Materials/PhysicallyBased
-Related: Engine/Rendering/Materials/LayeredMaterials
-Version: 4.13
-
-[TOC(start:2 end:3)]
-
-The purpose of this showcase is to demonstrate the use of high-quality character shader techniques, as demonstrated on a character from Epic's MOBA game Paragon. To view this showcase, simply open the project and press Play In Editor to see the cinematic pan-around.
-
-For more information on the tech used to produce this character, please refer to this [Unreal Engine Livestream - Tech & Techniques Behind Creating the Characters for Paragon](https://www.youtube.com/watch?v=toLJh5nnJA8).
-
-## Skin Shading
-
-The character's skin is created primarily through the use of UE4's [Subsurface Profile shading model](Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/).
-
-(w:700 convert:false)
-
-Note the use of [Material Functions](Engine/Rendering/Materials/Functions/) to set up the base for the skin Material. This is done as a reusable authoring approach to creating Materials for Paragon. In this way, artists can standardize approaches to generating certain types of surfaces, knowing that a fundamental change to a single Function will update all instances where that Function is being used.
-
-### Skin Shader Textures
-
-The textures used on Twinblast's skin are all at 4K resolution and were originally produced from facial scans of the actor. The textures were then cleaned up and tweaked by artists at Epic. This skin setup utilizes five total texture maps: diffuse, roughness, specularity, scatter, and normal.
-
-| Texture | Name | Description |
-|---------|------|-------------|
-|(w:200 convert:false)|**Diffuse**|The diffuse map supplies the Base Color for the Material. At 4K, you can see the tiny capillaries just underneath the surface. Any darkening of wrinkles will accentuate the texture supplied by the normal map. (*TwinBlast_UE4_Demo_Head_D*)|
-|(w:200 convert:false)|**Roughness**|The roughness map is stored within the alpha channel of the diffuse texture. This is a common technique used to minimize the amount of textures in use. Note that the roughness increases wihtin pores and wrinkles. This causes those areas to appear less shiny, accentuating the look of depth provided by the diffuse and normal map. Also note that the hair texture on the head is pushed out to fully rough (1.0) this prevents any stray specular highlights from the scalp, which will give a much more significant sense of depth to the hair. (*TwinBlast_UE4_Demo_Head_D*)|
-|(w:200 convert:false)|**Specular**|The specular map scales the amount of specular highlight visible across the surface of the skin. It is important to note that the default value for specularity is 0.5. This map boosts specularity at areas where the skin may be stretched a bit tighter, and dampens it in areas where we don't want to see reflection, such as the center of pores and within wrinkles. (*CH2_exp04_merged_spec_f_FC_FINAL*)|
-|(w:200 convert:false)|**Scatter**|The scatter map controls how much light is going to be scattered through the surface of the skin. Areas that are dark will exhibit very little scatter, such as the cheeks, while lighter areas will have higher amounts of perceived scatter, such as the nose and ears. The color of the scatter is managed by the [Subsurface Profile asset.](Engine/Rendering/Materials/LightingModels/SubSurfaceProfile/) (*TwinBlast_UE4_Demo_Head_BackScatter*)|
-|(w:200 convert:false)|**Normal**|The normal map works as expected in typical material setups, supplying the tactile texture to the surface by perturbing pixel normals. There is nothing out of the ordinary in its setup for this example. (*TwinBlast_UE4_Demo_Head__normals*)|
-
-
-## Hair Shading
-
-Hair shading is handled by way of UE4's Hair shader model. This shader is physically based shading model based on research by [Eugene d'Eon, Steve Marschner and Johannes Hanika](http://www.eugenedeon.com/project/importance-sampling-for-physically-based-hair-fiber-models/) and currently used by [Weta Digital](http://www.wetafx.co.nz/research). The shader approximates light's reflection from the surface of the hair with anisotropic specularity, as well as its refraction through it and its scatter throughout multiple strands.
-
-To utilize the UE4 Hair shader, set the **Shading Model** property of your Material to **Hair**.
-
-
-
-
-### Hair and Specularity
-
-In the real world, hair tends to have multiple specular highlights: one representing the color of the light and another that is a mix of hair color and light color. For sake of this document, we will refer to these as primary and secondary specular highlights. The Hair shader approximates the same effects with highly realistic results.
-
-(w:700 convert:false)
-[REGION:caption]1. The lighter hair represents the primary specular highlight. 2. The brighter red hair represents the secondary specular highlight.[/REGION]
-
-The approximation algorithm used in UE4's hair shader creates these effects in a similar manner to how they are made in the real world. As light strikes the surface of a hair follicle, it does not simply bounce off. Hair is translucent, allowing some light to pass *through* it, to potentially bounce around inside it, then exit. The hair shader approximates this with three possible paths for light to travel as it interacts with hair, as shown in the animated GIF diagram below:
-
-(w:700 convert:false)
-[REGION:caption]Cross section of single hair follicle showing how the hair shader approximates interaction with light, demonstrating the three primary types of paths light will take. See the table below for descriptions of each part of the process.[/REGION]
-
-| Number | Description |
-|--------|-------------|
-|0. |The growth (root/tip) direction of the hair follicle. |
-|1. |Reflection only path, with light bouncing off the surface of the hair. This produces the primary specular highlight.|
-|2. |Transmission-transmission path, in which light passes into the hair follicle and back out the other side. This is how light scatters within a volume of hair.|
-|3. |Transmission-reflection-transmission path, in which light enters the hair follicle, reflects off the inside boundary of the surface, and then exits . This produces the secondary specular highlight.|
-
-As shown in the diagram above, a strand of hair is not a perfect cylinder or tube. In actuality hair appears more as a series of stacked cones. This means light bouncing off the surface of hair will be scattered differently than it would if hair were perfectly smooth. Further, because each strand of hair is generally pointing in a different direction, the specular highlight will not be unified, but will be independently placed based on the direction the hair is pointing. This is often referred to as *anisotropic* specularity, which is also supported by the UE4 hair shader.
-
-### Hair and Transparency
-
-The Hair Shader uses the Masked blend mode instead of translucency. However, Masked transparency results in a binary result - surfaces are either fully opaque or fully transparent. A noisy dither pattern is constantly moved across the surface, becoming more dense in areas that need to be more solid. Dither is used as a way to blend Masked transparency, but only works when TemporalAA is active.
-
-[OBJECT:ComparisonSlider]
-[PARAM:before]
-(w:700 convert:false)
-[/PARAM]
-[PARAM:after]
-(w:700 convert:false)
-[/PARAM]
-[/OBJECT]
-
-[REGION:note]Using an animated dither with TemporalAA requires several frames to resolve the blend. This can lead to some artifacting on hair while it is in motion. This is an expected side effect of the technique.[/REGION]
-
-#### Edge Masking
-
-(w:700 convert:false)
-
-Though not specifically part of the shader itself, it is worth noting that the Material used on Twinblast's hair - as well as the other characters of Paragon - uses what is called an "Edge Mask" to fade the hair away as it becomes edge-on to the camera. Since hair is rendered as a series of planes - see [Hair and Geometry](#hairgeometry) below - it is likely that from certain camera angles, one would see the edge of each sheet, breaking the hair effect.
-
-To help alleviate this problem, the Material calculates the camera's vector against the vertex normal such that as the surface turns perpendicularly away from the camera, it will also fade away to complete transparency. This is also why many characters with thick heads of hair will often have a hair texture painted on the scalp, as seen in the image below.
-
-(w:700 convert:false)
-
-[REGION:tip]It should also be pointed out that this effect is tied to a Quality Switch node, so that on lower-powered platforms it can easily be switched off to trade back some shader performance. As always, it's best to test on target platform.[/REGION]
-
-
-
-
-
-### Hair Authoring
-
-Creating hair using the techniques shown in this showcase requires a bit of understand of how Epic constructed this character's hair.
-
-#### Hair Geometry
-
-Hair geometry using UE4's hair shader is generally going to be constructed using a series of planar surfaces, which is a common approach in many game hair solutions. These can be authored in the DCC app of your choice.
-
-(w:700 convert:false)
-
-#### Hair Textures
-
-In this use of the UE4 Hair shader, the final result is driven by five primary textures: *Diffuse*, *Alpha*, *Root*, *Depth*, and a unique-per-strand *ID* texture. At Epic, these textures are typically generated using 3ds Max's Hair system, projecting the simulated hair results onto a piece of geometry. However, there are many available options for similar results.
-
-
-| Texture | Name | Description |
-|---------|------|-------------|
-|(w:200 convert:false)|**Diffuse**|The Diffuse texture is precisely what one might expect in that supplies the primary diffuse - or *base* - color of the hair itself. It is sometimes desirable to leave this texture uncolored and drive its color via parameters, especially in those cases where a character's hair may take on many different colors. (*TwinBlast_UE4_Demo_Hair_D*)|
-|(w:200 convert:false)|**Alpha**|The Alpha texture supplies the areas of opacity for the hair, hiding geometry outside the body of strands. (*TwinBlast_UE4_Demo_Hair_A*)|
-|(w:200 convert:false)|**Root**|The Root texture provides a mask which is used to change the color of the hair from the root to the tip, useful for lightening or darkening hair along its length. (*TwinBlast_UE4_Demo_Hair_Roots*)|
-|(w:200 convert:false)|**Depth**|The Depth texture is used by Pixel Depth offset to give the illusion of pushing the hair deeper into the hair volume. It can also be used as a basis to change color or shading values for hair at different depths, such as reducing overall specularity as hair falls further toward the scalp. (*TwinBlast_UE4_Demo_Hair_Depth*)|
-|(w:200 convert:false)|**Unique ID**| The Unique ID texture simply provides a unique 0 to 1 (black to white) value for each strand of hair on a given piece of hair geometry. This is used to provide subtle variation within the hair itself. (*TwinBlast_UE4_Demo_Hair_ID*)|
-
-
-
-### Hair Shader Properties
-
-When using the Hair Shader you will notice some new properties available on the main Material node: **Scatter**, **Tangent**, and **Backlit**.
-
-
-
-[REGION:warning]At the time of this writing (4.13), the Backlit property only exists as a part of an early version of the shader. Connections to it are not used internally by the Hair shader and the property can therefore be ignored.[/REGION]
-
-#### Scatter
-
-One of the primary reasons we refer to the Hair shader as an *approximation*, rather than a *simulation*, is that it is not actually simulating every individual strand of hair, nor is it simulating perfectly accurate lighting behavior. In the real world, as light bounces off of and transmits through follicles of hair, it will often encounter *other* strands of hair, repeating the same process potentially many times in succession. At this time there is no computing system capable of accurately producing the effects of such a simulation in realtime.
-
-Nevertheless, the way in which light scatters through a body of hair is still crucial to how realistic that hair appears to be, in a game just as much as in the real world. To control this, the Hair shader provides the Scatter property, which replaces Metallic on your primary shader node and is limited to values between 0.0 and 0.1. Scatter controls how much light can pass into and scatter through the hair *as a whole surface*, rather than per follicle. In simpler terms, this controls how much light passes through the entire body of your character's hair.
-
-An important point to note about Scatter is that it will tend to be higher for lighter colored hair and darker for darker hair. This follows the physcal rules of the natural world, as darker hair will tend to absorb more light. In practical terms, if you are trying to create a blonde character, you will find that changing the diffuse texture or color is not enough; you will also have to increase the Scatter value as well.
-
-
-[OBJECT:ComparisonSlider]
-[PARAM:before]
-(w:700 convert:false)
-[/PARAM]
-[PARAM:after]
-(w:700 convert:false)
-[/PARAM]
-[/OBJECT]
-[REGION:caption]In this example the Diffuse texture has not been modified from its default dark brown color. This illustrates how various tones of hair can be generated just by changing the Scatter value.[/REGION]
-
-#### Tangent
-
-The Tangent property replaces the Normal property on the Hair shader. Instead of a typical normal map, the hair shader calculates a tangent. The tangent is calculated as a vector that runs parallel to each strand of hair, pointed back toward the root. In Twinblast's hair shader, this vector is given a random offset in the Z-Axis between 0.3 and -0.3, using the Unique ID texture. This produces a vector which has a random direction within an arc, and aids in providing variation within the anisotropic specular highlights.
-
-(w:700 convert:false)
-[REGION:caption]In this image the yellow line represents the tangent along a strand of hair, pointing back toward the root.[/REGION]
-
-Tangents can be mapped in one of two ways: automatically or with the help of a flow map. The automatic method simply requires that that the textures for each sheet of hair be oriented such that the root is toward the top and the tips are toward the bottom. So long as your hair is short, and no sheets are bending around and twisting too much, this approach is adequate. This is the method used on Twinblast's hair.
-
-##### Flow Maps for Tangency
-
-The other method requires the creation of a flow map. This is useful if your character's hair is long and is bending and needs to appear to bend and curl more than the actual geometry does, or if the individual texture portions for the hair are oriented in different ways (not top-to-bottom as described above). The flow map will represent the direction the hair is moving in tangent space, or along the surface. Within the Twinblast Bust project, you can find an unused flow map named *T_SparrowHair_Flow*. Below is a comparison of that flowmap and the result of the specularity.
-
-[OBJECT:ComparisonSlider]
-[PARAM:before]
-(w:600 convert:false)
-[/PARAM]
-[PARAM:after]
-(w:600 convert:false)
-[/PARAM]
-[/OBJECT]
-[REGION:caption]Here you can see how the flow map is textured along the surface of Sparrow's hair. Note that the flowmap is only in use on some of the hair sheets, not the entire body of hair. Notice how different values along the flow map subtly shift the specularity along the hair.[/REGION]
-
-
-
-
-#### Using Pixel Depth Offset with the Hair Shader
-
-Pixel Depth Offset (PDO) is not a property unique to the Hair shader. In layman's terms, PDO causes pixels to look recessed away from the camera, creating an artificial sense of depth along the surface. Since hair is made up of simple sheets of geometry, as explained in [Hair and Geometry](#hairgeometry) below, the use of PDO can provide a tangible sense of depth to the hair shape as a whole. It also breaks up the intersection point where a plane of hair geometry contacts the scalp, as shown below.
-
-[OBJECT:ComparisonSlider]
-[PARAM:before]
-(w:700 convert:false)
-[/PARAM]
-[PARAM:after]
-(w:700 convert:false)
-[/PARAM]
-[/OBJECT]
-
-
-
-
-## Eye Shading
-
-(w:700 convert:false)
-
-Eyes are often referred to as "the windows to the soul." Few aspects of a character have as much influence on the viewer's perception of a character as a real person as that character's eyes. The Eye shader in UE4 is designed to bring realistic rendering of an eye surface, exposing artistic control over each of the biological parts of the eye itself.
-
-[REGION:warning]The Eye shader in UE4 is highly technical and has been developed such that there are **very strong dependencies** between the shader code, the Material, the shape of the geometry, and the geometry's UV layout. Building an eye from scratch using this shader is not recommended without extensive experience. To that end, we strongly recommend, for those creating realistic humanoid eyes, that you extract the eye geometry from this example and use the eye Material **as-is**, replacing the necessary textures to suit your purpose. [/REGION]
-
-### Eye Biology
-
-In order to fully understand the features of the eye it is best to know a little bit of eye biology. Each of the parts you see here are represented in this eye setup, and all can be modified in some way using the exposed parameters in the Material Instance applied to Twinblast's eyes (*MI_TwinBlast_EyeRefractive_Bust*).
-
-Here is a quick refresher:
-
-(w:700 convert:false)
-|Number|Name|Description|
-|------|----|-----------|
-|1|Sclera|The sclera is also known as the "white of the eye." This area of the eye is generally very wet and has a slight amount of tactile texture.|
-|2|Limbus|The limbus is the dark ring that is present between the iris and the sclera. It is more dominant in some eyes than others, and will tend to fade away when viewed from edge-on.|
-|3|Iris|The iris is the ring of color around the center of the eye. When one is said to have "green" eyes, it is because their iris is predominantly green. In a real eye, the iris is a ring of muscle-like fibers that expand and contract, allowing more light into - or closing light out of - the pupil. It is also worth noting that in the real world, the iris is actually more of a disc or cone shape, and does not bulge outward with the rest of the eye.|
-|4|Pupil|The pupil is the dark spot at the center of the eye. It is the hole through which light passes so it can be picked up by the rods and cones of the retina.|
-|5|Cornea|The cornea is the clear, fluid-filled dome that rests over the surface of the iris. |
-
-### Refraction within the Eye
-
-Because the eyeball is filled with fluid, it is given to refracting any light that passes through it. This can be seen in the real world when looking at an eye from multiple angles. The iris and pupil will be distorted by refraction as they are viewed through the cornea. Traditional approaches to solving this for games and film was to create two separate eye surfaces: one that supplied the sclera, iris, and pupil; and another surface on top that supplied the cornea and overall wetness of the eye. This allowed for refraction as the underlying surface was viewed through the wet layer shell. Such an approach was used in Epic's *A Boy and His Kite* tech demo on the boy's eyes. The diagram below shows a representation of the two surfaces.
-
-(w:700 convert:false)
-
-Using our new Eye shader, however, an even more realistic effect can be achieved with a *single surface*. The refraction of light through the surface of the cornea is now handled entirely within the shader, alleviating the need for underlying geometry. You can experiment with this yourself by opening the *MI_TwinBlast_EyeRefractive_Bust* Material Instance and adjusting the **Depth Scale** property.
-
-[OBJECT:ComparisonSlider]
-[PARAM:before]
-(w:700 convert:false)
-[/PARAM]
-[PARAM:after]
-(w:700 convert:false)
-[/PARAM]
-[/OBJECT]
-
-
-### Eye Authoring
-
-Earlier in this section we provided a warning that there are strong interdependencies between the code of the Eye shader, the setup of the material, and the geometry of the eye mesh. The following is a high-level overview of what makes the eye setup so particular, which will be useful if you should try replacing the geometry with your own eye mesh for your characters.
-
-When building your own eyes, we **strongly** recommend that you start using the eye geometry and Material provided in this example. As such, most of the information provided here will be based upon that assumption.
-
-#### Shape and UV Layout
-
-Much like the human eye of the real world, the eye mesh is not modeled to be perfectly spherical. Rather, it has a distinct dome at the front to represent the cornea. This gives the eye almost an egg shape.
-
-(w:400 convert:false)
-[REGION:caption]In this image you can see the geometry of the eye viewed from the side in Maya. Note the raised area of the cornea at the front.[/REGION]
-
-The UV layout for the eye is also critical, as it is from this that the proportions of each eye texture are produced. Fortunately, the UV layout that works best with the Eye shader is relatively basic: a planar projection along the front axis of the eye. Inclusion of backfaces is not extremely important (since they'll be behind the eye anyway), which can be seen on the Twinblast example.
-
- The UV layout will look like this:
-
-(w:400 convert:false)
-[REGION:caption]Notice that the UV layout is centered on the 0-1 space and that the projection looks directly into the cornea. [/REGION]
-
-
-### Eye Textures
-
-Many of the textures you'll create for your eyes will be based on the UV layout created above, with the exception of the iris map. The list of primary editable textures includes:
-
-| Texture | Name | Description |
-|---------|------|-------------|
-|(w:200 convert:false) |**Sclera Map**|The sclera map controls the colors of the eye whites, as well as the vein and tissue color that will be present at the edges of the eye. If you wanted your character to be able to have bloodshot eyes, for example, this is the texture you would modify. (*TwinBlast_UE4_Demo_Eye_Sclera_Color*)|
-|(w:200 convert:false) |**Mid Plane Displacement Map**|The mid plane displacement map is used to lock down a plane that cuts through the center of the eye, and is used as a basis for offsetting the depth of the iris. (*EyeMidPlaneDisplacement_Example*)|
-|(w:200 convert:false) |**Normal Map**|The normal map does the same job as normal maps in all shaders - it supplies tactile texture variation. In the case of the Twinblast eye setup, it provides tiny lumps and bumps along the wet surface of the eye. (*T_Eye_Wet_Normal*)|
-|(w:200 convert:false) |**Tangent Map**|The tangent map is used to control the direction the surface is flowing in tangent space. In the case of Twinblast's eye setup, this is used to accentuate the change in direction where the cornea meets the sclera. (*EYE_NORMALS.EYE_NORMALS*)|
-|(w:200 convert:false)|**Iris Map**|The iris texture is unique in that it does not match the UV layout. Instead, the texure fills the entirety of the resolution. UVs and alpha masks are employed to control the overall iris size, as well as the size of the pupil. If making your own iris maps, try to keep the pupil size reasonably close to the proportions in the supplied texture. (*TwinBlast_UE4_Demo_Eye_Iris*)|
-
-[REGION:warning]Note that the Tangent Map output is **not** fed directly into the Normal Map input. Rather, it is connected to a **Tangent Output** node, which must be created separately, as seen in the master material **M_HairSheet_Master2**. [/REGION]
-
-
-
-
-### Eye Ambient Occlusion
-
-The final part of the eye setup for Twinblast is the use of a translucent helper surface to to simulate ambient occlusion around the eye. In the real world - wherever your eye comes in contact with other tissues such as the eyelid or the tear duct - you will see very soft shadowing. The softness is due to the fact that the eye itself is translucent; light will scatter through it. To help simulate this realistically, we have placed a sheet of geometry that covers the eye and provides approximated ambient occlusion, creating a richer degree of realism across the eye.
-
-The Material applied to this sheet is named *MI_TwinBlast_Eye_Occlusion_Bust* and can be found in Element 3 of the Twinblast model.
-
-(w:700 convert:false)
-[REGION:caption]This image shows the ambient occlusion sheet geometry in Maya, without the geometry of the face. The border edge of the sheet will perfectly fill the opening of the eyelid. [/REGION]
-
-
-[OBJECT:ComparisonSlider]
-[PARAM:before]
-(w:700 convert:false)
-[/PARAM]
-[PARAM:after]
-(w:700 convert:false)
-[/PARAM]
-[/OBJECT]
-
-## Special Thanks
-
-Special thanks to [Eugene d'Eon, Steve Marschner and Johannes Hanika](http://www.eugenedeon.com/project/importance-sampling-for-physically-based-hair-fiber-models/) for releasing their work [*The importance of sampling for physically-based hair fiber models*](http://dl.acm.org/authorize?6967840), upon which some of the work of UE4's hair shader is based.
diff --git a/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.CHN.udn b/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.CHN.udn
new file mode 100644
index 000000000000..6e7b08054b57
--- /dev/null
+++ b/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.CHN.udn
@@ -0,0 +1,11 @@
+INTSourceChangelist:0
+Availability:NoPublish
+Title:HLOD System
+Crumbs:
+
+[EXCERPT:main]
+**Hierarchical Level of Detail** meshes (HLODs) have been developed as a way to increase performance and keep the quality bar high for projects using Unreal Engine 4.11 or later. HLODs can replace multiple **Static Mesh Actors** with single, combined **Static Mesh Actor** at long view distances. This helps reduce the number of **Actors** that need to be rendered for the scene, increasing performance by lowering the number of draw calls per frame.
+[VAR:ToolTipFullLink]
+Engine/HLOD
+[/VAR]
+[/EXCERPT:main]
diff --git a/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.INT.udn b/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.INT.udn
new file mode 100644
index 000000000000..e546b4ed4b47
--- /dev/null
+++ b/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.INT.udn
@@ -0,0 +1,10 @@
+Availability:NoPublish
+Title:HLOD System
+Crumbs:
+
+[EXCERPT:main]
+**Hierarchical Level of Detail** meshes (HLODs) have been developed as a way to increase performance and keep the quality bar high for projects using Unreal Engine 4.11 or later. HLODs can replace multiple **Static Mesh Actors** with single, combined **Static Mesh Actor** at long view distances. This helps reduce the number of **Actors** that need to be rendered for the scene, increasing performance by lowering the number of draw calls per frame.
+[VAR:ToolTipFullLink]
+Engine/HLOD
+[/VAR]
+[/EXCERPT:main]
diff --git a/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.JPN.udn b/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.JPN.udn
new file mode 100644
index 000000000000..37a5b79ddfcb
--- /dev/null
+++ b/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.JPN.udn
@@ -0,0 +1,11 @@
+INTSourceChangelist:3409833
+Availability:NoPublish
+Title:HLOD システム
+Crumbs:
+
+[EXCERPT:main]
+**Hierarchical Level of Detail (HLOD)** メッシュは、アンリアル エンジン 4.11 以降を使うプロジェクトのパフォーマンスを高め、クオリティを高く保つために開発されました。HLOD は、表示距離が遠い場合に複数の **Static Mesh アクタ** を、単一に結合された **Static Mesh アクタ** に置き換えることができます。HLOD を使うと、シーンに対してレンダリングする必要がある **アクタ** 数を減らし、1 フレームあたりのドローコール数を少なくしてパフォーマンスを高めることができます。
+[VAR:ToolTipFullLink]
+Engine/HLOD
+[/VAR]
+[/EXCERPT:main]
diff --git a/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.KOR.udn b/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.KOR.udn
new file mode 100644
index 000000000000..433d1062f0ec
--- /dev/null
+++ b/Engine/Documentation/Source/Shared/Editor/HLOD/HLOD.KOR.udn
@@ -0,0 +1,11 @@
+INTSourceChangelist:3409833
+Availability:NoPublish
+Title:HLOD System
+Crumbs:
+
+[EXCERPT:main]
+**Hierarchical Level of Detail** (계층형 레벨 오브 디테일, HLOD) 메시는 퍼포먼스를 향상시키면서도 퀄리티 기준을 높게 유지할 수 있도록 하기 위한 방편으로 개발된 것으로, 언리얼 엔진 4.11 이상에서 지원됩니다. HLOD 는 다수의 **스태틱 메시 액터** 를 원거리에서 봤을 때 하나의 **스태틱 메시 액터** 로 합치는 기법입니다. 이를 통해 씬에 렌더링해야 하는 **액터** 수를 줄여, 프레임 당 드로 콜 수를 낮춰 퍼포먼스를 향상시키는 데 도움이 됩니다.
+[VAR:ToolTipFullLink]
+Engine/HLOD
+[/VAR]
+[/EXCERPT:main]
diff --git a/Engine/Documentation/Source/Shared/Editor/MapErrors/MapErrors.KOR.udn b/Engine/Documentation/Source/Shared/Editor/MapErrors/MapErrors.KOR.udn
index 160dd62e7d84..d0a799f60937 100644
--- a/Engine/Documentation/Source/Shared/Editor/MapErrors/MapErrors.KOR.udn
+++ b/Engine/Documentation/Source/Shared/Editor/MapErrors/MapErrors.KOR.udn
@@ -272,7 +272,7 @@ NEEDS DESCRIPTION
(#RebuildPaths)
[EXCERPT:RebuildPaths]
-**패쓰를 리빌드해야 합니다.**
+**패스를 리빌드해야 합니다.**
[/EXCERPT:RebuildPaths]
diff --git a/Engine/Documentation/Source/Shared/Types/FBodyInstance/FBodyInstance.KOR.udn b/Engine/Documentation/Source/Shared/Types/FBodyInstance/FBodyInstance.KOR.udn
index 784953d33342..1656e0e43ffe 100644
--- a/Engine/Documentation/Source/Shared/Types/FBodyInstance/FBodyInstance.KOR.udn
+++ b/Engine/Documentation/Source/Shared/Types/FBodyInstance/FBodyInstance.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3372845
Availability:NoPublish
Title:FBodyInstance RTTs
Crumbs:
@@ -61,7 +61,10 @@ Engine/Physics/PhysicsBodies#physics

-현재로써는 질량 중심의 실제 위치를 확인할 수 있는 방법이 없지만, 조절하려는 바디의 선형 제동(Linear Damping)을 늘려주면 바디가 낙하할 때 질량 중심으로부터 흔들리는 것을 보고 알 수 있습니다. 레벨에 스켈레탈 메시를 배치하고 피직스를 켜 줘야 실제 느낌이 날 수 있습니다.
+Mass Properties (질량 프로퍼티) 표시 플래그는 이동가능 또는 시뮬레이션 바디에 대한 Center of Mass (질량 중심) 및 Inertia Frame (관성 좌표계)를 시각화합니다. 질량 중심은 보통 지오메트리에 삽입되어 있으므로 와이어프레임 렌더링 모드를 켜줘야 합니다.
+
+
+
[VAR:ToolTipFullLink]
Engine/Physics/PhysicsBodies#physics
[/VAR]
diff --git a/Engine/Documentation/Source/Support/Builds/Builds.INT.udn b/Engine/Documentation/Source/Support/Builds/Builds.INT.udn
index 50404d5b184f..5d0ceff76151 100644
--- a/Engine/Documentation/Source/Support/Builds/Builds.INT.udn
+++ b/Engine/Documentation/Source/Support/Builds/Builds.INT.udn
@@ -9,5 +9,5 @@ topic-icon:%ROOT%/outline_icon.png
topic-image:%ROOT%/placeholder_topic.png
-[DIR(output:"listbutton" order:"descend" parent:"Support/Builds" org:"hierarchy")]
+[DIR(output:"listbutton" order:"descend" parent:"Support/Builds" org:"hierarchy" end:"1")]
diff --git a/Engine/Documentation/Source/Support/Builds/Builds.JPN.udn b/Engine/Documentation/Source/Support/Builds/Builds.JPN.udn
index 2669e12438cd..b233e5058dc6 100644
--- a/Engine/Documentation/Source/Support/Builds/Builds.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/Builds.JPN.udn
@@ -1,138 +1,14 @@
-INTSourceChangelist:3151855
+INTSourceChangelist:3429265
Availability:Public
-Title:リリース ノート
+Title:リリースノート
Crumbs:%ROOT%
Description:アンリアル エンジン ビルドのリリースノート
parent:%ROOT%
order:9
type:landing
+topic-icon:%ROOT%/outline_icon.png
+topic-image:%ROOT%/placeholder_topic.png
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Support/Builds:title%
-[/PARAM]
-[PARAM:description]
- %Support/Builds:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Support/Builds]
-[/PARAM]
-[/VAR]
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Support/Builds:title%
- [/PARAM]
- [PARAM:description]
- %Support/Builds:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Support/Builds]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+[DIR(output:"listbutton" order:"descend" parent:"Support/Builds" org:"hierarchy" end:"1")]
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Support/Builds:title%
- [/PARAM]
- [PARAM:description]
- %Support/Builds:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Support/Builds]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-engine
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
-
-[PUBLISH:Rocket]
-[DIR(end:"1" output:"listbutton" order:"descend" parent:"Support/Builds" org:"hierarchy")]
-[/PUBLISH:Rocket]
-
-[PUBLISH:Licensee]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- [/PARAM]
- [PARAM:title]
- 2015
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/Builds/ReleaseNotes/2016/4_12)
- * [](Support/Builds/ReleaseNotes/2016/4_11)
- * [](Support/Builds/ReleaseNotes/2015/4_10)
- * [](Support/Builds/ReleaseNotes/2015/4_9)
- * [](Support/Builds/ReleaseNotes/2015/4_8)
- * [](Support/Builds/ReleaseNotes/2015/4_7)
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- [/PARAM]
- [PARAM:title]
- 2014
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/Builds/ReleaseNotes/2014/4_6)
- * [](Support/Builds/ReleaseNotes/2014/4_5)
- * [](Support/Builds/ReleaseNotes/2014/4_4)
- * [](Support/Builds/ReleaseNotes/2014/4_3)
- * [](Support/Builds/ReleaseNotes/2014/4_2)
- * [](Support/Builds/ReleaseNotes/2014/4_1)
- * [](Support/Builds/ReleaseNotes/2014/March)
- * [](Support/Builds/ReleaseNotes/2014/January)
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- [/PARAM]
- [PARAM:title]
- 2013
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/Builds/ReleaseNotes/2013/Dec)
- * [](Support/Builds/ReleaseNotes/2013/Oct)
- * [](Support/Builds/ReleaseNotes/2013/Sept)
- * [](Support/Builds/ReleaseNotes/2013/August)
- * [](Support/Builds/ReleaseNotes/2013/July)
- * [](Support/Builds/ReleaseNotes/2013/June)
- * [](Support/Builds/ReleaseNotes/2013/May)
- [/PARAM]
-[/OBJECT]
-[/PUBLISH:Licensee]
diff --git a/Engine/Documentation/Source/Support/Builds/Builds.KOR.udn b/Engine/Documentation/Source/Support/Builds/Builds.KOR.udn
index 159f1cc8bda9..8a41e71a46b8 100644
--- a/Engine/Documentation/Source/Support/Builds/Builds.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/Builds.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3151855
+INTSourceChangelist:3429265
Availability:Public
Title: 릴리즈 노트
Crumbs:%ROOT%
@@ -6,133 +6,9 @@ Description: 언리얼 엔진 빌드 릴리즈 노트입니다.
parent:%ROOT%
order:9
type:landing
+topic-icon:%ROOT%/outline_icon.png
+topic-image:%ROOT%/placeholder_topic.png
-[VAR:Params]
-[PARAM:image]
- 
-[/PARAM]
-[PARAM:icon]
- (convert:false)
-[/PARAM]
-[PARAM:title]
- %Support/Builds:title%
-[/PARAM]
-[PARAM:description]
- %Support/Builds:description%
-[/PARAM]
-[PARAM:path]
- [RELATIVE:Support/Builds]
-[/PARAM]
-[/VAR]
-[VAR:Topic]
-[OBJECT:Topic]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Support/Builds:title%
- [/PARAM]
- [PARAM:description]
- %Support/Builds:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Support/Builds]
- [/PARAM]
-[/OBJECT]
-[/VAR]
+[DIR(output:"listbutton" order:"descend" parent:"Support/Builds" org:"hierarchy" end:"1")]
-[VAR:TopicCompact]
-[OBJECT:TopicCompact]
- [PARAM:image]
- 
- [/PARAM]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- %Support/Builds:title%
- [/PARAM]
- [PARAM:description]
- %Support/Builds:description%
- [/PARAM]
- [PARAM:path]
- [RELATIVE:Support/Builds]
- [/PARAM]
-[/OBJECT]
-[/VAR]
-
-[VAR:Role]
-[OBJECT:Role]
-%params%
-[PARAMLITERAL:id]
-engine
-[/PARAMLITERAL]
-[/OBJECT]
-[/VAR]
-
-[PUBLISH:Rocket]
-[DIR(end:"1" output:"listbutton" order:"descend" parent:"Support/Builds" org:"hierarchy")]
-[/PUBLISH:Rocket]
-
-[PUBLISH:Licensee]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- [/PARAM]
- [PARAM:title]
- 2015
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/Builds/ReleaseNotes/2016/4_12)
- * [](Support/Builds/ReleaseNotes/2016/4_11)
- * [](Support/Builds/ReleaseNotes/2015/4_10)
- * [](Support/Builds/ReleaseNotes/2015/4_9)
- * [](Support/Builds/ReleaseNotes/2015/4_8)
- * [](Support/Builds/ReleaseNotes/2015/4_7)
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- [/PARAM]
- [PARAM:title]
- 2014
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/Builds/ReleaseNotes/2014/4_6)
- * [](Support/Builds/ReleaseNotes/2014/4_5)
- * [](Support/Builds/ReleaseNotes/2014/4_4)
- * [](Support/Builds/ReleaseNotes/2014/4_3)
- * [](Support/Builds/ReleaseNotes/2014/4_2)
- * [](Support/Builds/ReleaseNotes/2014/4_1)
- * [](Support/Builds/ReleaseNotes/2014/March)
- * [](Support/Builds/ReleaseNotes/2014/January)
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- [/PARAM]
- [PARAM:title]
- 2013
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/Builds/ReleaseNotes/2013/Dec)
- * [](Support/Builds/ReleaseNotes/2013/Oct)
- * [](Support/Builds/ReleaseNotes/2013/Sept)
- * [](Support/Builds/ReleaseNotes/2013/August)
- * [](Support/Builds/ReleaseNotes/2013/July)
- * [](Support/Builds/ReleaseNotes/2013/June)
- * [](Support/Builds/ReleaseNotes/2013/May)
- [/PARAM]
-[/OBJECT]
-[/PUBLISH:Licensee]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/August/ReleaseNotesAugust2013.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/August/ReleaseNotesAugust2013.JPN.udn
index 3c19795ed7d5..176344f0b983 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/August/ReleaseNotesAugust2013.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/August/ReleaseNotesAugust2013.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:2615072
+INTSourceChangelist:3367470
Title:2013 年 8 月リリースノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-6
[TOC(start:2 end:2)]
@@ -23,10 +24,10 @@ Template:ReleaseNotes.html
* 現時点のエンジン開発ロードマップ: [UE4 Roadmaps](https://udn.unrealengine.com/questions/topics/roadmap.html)
* 修正されたバグ: [UE4 Fixed Bugs August 2013](UE4_Fixed_2013_August.xlsx)
- * 既知の問題: [UE4 Outstanding Bugs August 2013](UE4_Bugs_2013_August.xlsx)
+ * 周知のバグ: [UE4 Outstanding Bugs August 2013](UE4_Bugs_2013_August.xlsx)
-## 主な新機能
+## 主要な新機能
####エディタ ツール
* **シミュレーション変更を永続的なものにする**
@@ -39,12 +40,12 @@ Template:ReleaseNotes.html
* プレイモードでも機能します。
* **ツールバーのカスタマイズが、EpicLabs Preference にあります**
- * ツールバーのカスタマイズは EpicLabs でオンにできます。
+ * **ツールバーのカスタマイズは EpicLabs でオンにできます。

* **Edit > Edit Toolbars** の順序で選択し、**Keyboard Shortcuts** ウィンドウからコマンドを互換性のあるツールバーにドラッグできます。
* **テクスチャ インポート中の法線マップ検知**
- * エンジンは、テクスチャ マップが法線マップであるかを判断するためにインポート時にテクスチャをヒューリスティックに調べるようになりました。
+ * エンジンは、テクスチャ マップが法線マップであるかを判断するためにインポート時にテクスチャを発見的 (ヒューリスティック) に調べるようになりました。

* LOD、圧縮、その他のデフォルトはインポート時に自動的に設定されます。

@@ -86,7 +87,7 @@ Template:ReleaseNotes.html
* リストの一番上にある _New Project_ アイテムを選択し、**New Project** ウィザードを開きます。
-####レンダリング
+#### レンダリング
* **マテリアルのパラメータ コレクション**
* マテリアルのパラメータ コレクションには大量のマテリアル パラメータを同時に操作する強力な新機能があります。
(w:420)
@@ -107,9 +108,9 @@ Template:ReleaseNotes.html
## 新機能の追加
####エディタ ツール
-* **シミュレーション変更を維持**
+* **シミュレーション変更を継続**
シミュレーション モードでアクタのプロパティを変更後、こうした変更を選択的に永続的なものにできるようになりました!
- * シミュレーション モードでアクタを右クリックしシミュレーション変更を維持、 Keep Simulation Changes (または 'K' キーを押します) を選択します。
+ * シミュレーション モードでアクタを右クリックしシミュレーション変更を継続、 Keep Simulation Changes (または 'K' キーを押します) を選択します。
* ヒューリスティック機能を追加して、インポート時に法線マップを特定し、適宜様々な設定を割り当てるようにしました。
* レベル エディタのツールバーに保存ボタンを追加しました。
* **ツールバーのカスタマイズ** -EpicLabs 機能
@@ -142,7 +143,7 @@ Template:ReleaseNotes.html
* ブループリント エディタの DestructibleComponent プロパティで被破壊メッシュを設定できるようになりました。
-#### ゲームプレイとフレームワーク
+####ゲームプレイとフレームワーク
* **カメラ システム**
* すべての参加者がプロパティ (パラメータ、ポストプロセスのオーバーライドなど) を設定できるように、どこでも同じ構造体を渡すカメラ情報フローを標準化しました。
* `ACameraActor` が `UCameraComponent` を使用するようにリファクタリングしました。
@@ -179,13 +180,13 @@ Template:ReleaseNotes.html
* 様々なウィンドウ サイズを設定するための UE3 コマンドライン パラメータを移植しました(ゲーム ウィンドウの解像度用に ResX/ResY、ゲームウィンドウの位置用に WinX/WinY、コンソール ウィンドウの位置に ConsoleX/ConsoleY)
-####レンダリング
+#### レンダリング
* テクスチャ サンプリングのリミットのトラックは実際にコンパイルした出力を見ることで正確に行われるようになりました。
* WorldPosition マテリアル式はポストプロセス マテリアルで使用できるようになりました。その結果は、ポストプロセスのパスのピクセルを通して見たワールド空間の位置になります。
* WorldPosition マテリアル式では、位置が絶対的なワールド位置であるか、またはカメラに相対的な位置であるかを選択できるようになりました。
* 頂点数が 65536 を超えるスタティック メッシュをインポートおよびレンダリングできるようになりました。
-* ブループリントの固定ライトの修正
- * メッシュまたはライトをブループリントで作成した場合に固定ライトがビルドされないといういくつかの未解決問題があります。
+* ブループリントの Stationary Light (固定ライト) の修正
+ * メッシュまたはライトをブループリントで作成した場合に Stationary Light (固定ライト) がビルドされないといういくつかの未解決問題があります。
####アニメーション / ペルソナ
@@ -225,292 +226,292 @@ Template:ReleaseNotes.html
##アップグレード ノート
-#### エディタとツール
-* uproject ファイルの `GenerateProjectFiles.bat` を削除しました (UE4 ルートの `GenerateProjectFiles.bat`はそのまま残り、生成されません)。
- * これは .uproject ファイルを右クリックして Generate Visual Studio Files を選択して行うようになりました。
- * ビルド フォルダを`.uproject` ファイルに関連付けるには `Engine/Build/BatchFiles/RegisterShellCommands.bat` を使用します。一回にひとつのビルドのみを関連付けます。
-* エディタ起動時に Perforce ダイアログが表示されなくなりました。ソースコントロールのワークフローが合理化されました。
- * ソース コントロールは、エディタの右上隅の色付きのインジケータ ボタンからログインできるようになりました。エディタ全体で様々なメニューにジャストインタイムでアクセスすることもできます。
+####Editor and Tools
+* Removed `GenerateProjectFiles.bat` for uproject files (the `GenerateProjectFiles.bat` in the UE4 root remains and is not generated).
+ * This is now done by right clicking on the .uproject file and selecting Generate Visual Studio Files.
+ * Use `Engine/Build/BatchFiles/RegisterShellCommands.bat` to associate a build folder with `.uproject` files.Only one build may be associated at a time.
+* Perforce dialog no longer pops up on Editor startup.Source control workflow streamlined.
+ * Source control login is now accessible by clicking the colored indicator button in the top-right hand corner of the Editor.It can also be accessed 'just-in-time' in various menus throughout the Editor.
####ブループリント
-*ACharacter はデフォルトの移動入力のバインディングがなくなりました。
- * Character ブループリントが古いデフォルトのネイティブ キーのバインディングを入力に使用するか否かを決める bool、`bAddDefaultMovementBindingsForBlueprint` があります。デフォルトは true です。そのため、カスタム バインディングが必要な場合は、コンテンツはそれを false に設定すべきです。コンテンツを移行する機会があった後には、おそらくこれを取り除きます。
- * 入力軸イベントも移動関数もブループリントにエクスポーズされました。SideScrollerTemplate と ThirdPersonTemplate は例として更新されました。
-* テンプレート デフォルト マップ : テクスチャ データを減らすために Atmospheric fog の高度の数を 32 から 2 に減らしました。
-* Atmospheric fog - ブループリントで作成した Atmospheric fog のコンポーネントを事前計算したデータで維持することが可能になりました。
-* ブループリントは無効な文字を含む名前変更はできません。これはブループリントの実行を阻むからです。
-* `SceneComponent::AttachTo` のアタッチタイプは、ブールから列挙型変数に変更されました。
- * `KeepRelativeOffset` - 現在の相対的な変形を維持します。
- * `KeepWorldPosition` - 現在のワールドの変形を維持します。
- * `SnapToTarget` - 現在の相対的な変形をリセットします。
-* `Actor::MakeMIDForMaterial` は非推奨になりました。CreateMID 関数がマテリアル ライブラリに追加されました。
-* CreateMID を使用する代わりに CreateMIDForElement または CreateMIDForElementFromMaterial を利用します。
-* マテリアル パラメータ コレクションのブループリント関数は、キズメットの関数ライブラリにあります。
+* ACharacter no longer has default movement input bindings.
+ * There is a bool `bAddDefaultMovementBindingsForBlueprint` that determines whether a Character Blueprint uses the old default native key bindings for input or not.Default is true, so content should set it to false if they want custom bindings.Well probably remove this after people have a chance to migrate content.
+ * Input axis events are exposed to Blueprints, and movement functions are exposed as well.SideScrollerTemplate and ThirdPersonTemplate have been updated as examples.
+* Template Default map : changed atmospheric fog altitude number from 32 to 2, to reduce texture data.
+* Atmospheric fog - allow Blueprint-created atmospheric fog components to maintain precomputed data
+* Blueprints cannot be renamed to include invalid characters as this was breaking the Blueprint execution.
+* `SceneComponent::AttachTo`'s attach type changed to enum from bool
+ * `KeepRelativeOffset` - Keep current relative transform
+ * `KeepWorldPosition` - Keep current world transform
+ * `SnapToTarget` - Reset current relative transform
+* `Actor::MakeMIDForMaterial` has been deprecated.CreateMID function is added in the Material Library.
+* Instead of using CreateMID, utilize CreateMIDForElement or CreateMIDForElementFromMaterial
+* Material parameter collection Blueprint functions are now in a kismet function library
[REGION:note]
- 注記事項:これは以前のマテリアル パラメータ コレクションのブループリント関数を break します。既存のノードを置き換えなければなりません。
+ Note: this breaks the previous material parameter collection Blueprint functions.Existing nodes will have to be replaced.
[/REGION]
-* シェーダー開発では、ConsoleVariables.ini で `r.ShaderDevelopmentMode` を有効にします。LogShaders はコンパイル エラーでリトライする方法ではなくなりました。
+* For shader development, enable `r.ShaderDevelopmentMode` in ConsoleVariables.ini.LogShaders is no longer the method to get retry on compile error.
-#### ゲームプレイとフレームワーク
-* あるクラスのすべてのソースをその独自のファイルに入れるためのソース コードの再編成
- * `Actor`、 `Controller`、 `GameReplicationInfo`、 `PlayerReplicationInfo`、 `WorldSettings`、 `Character`、 `Pawn` に影響を及ぼします。
- * `ActorReplication.cpp`、 `ActorEditor.cpp`、 `WorldSettings.cpp` を追加しました。
- * `Script.cpp` を削除しました。
-* PlayerController の入力コンポーネントはコンストラクタで作成されなくなりました。ポーンと同様に仮想関数の SetupInputComponent でもバインディングを行います。
-* `PlayerController.GetInputAnalogStickState` は、未加工のハードウェア値の代わりにゲーム値 (反転とデッドゾーンの適用後) を戻すようになりました。
-* `BIND_` マクロから ConsumeInput を取り除きました。マクロのバインド後にコードから `InputAction`/`InputAxis` を設定するには、以下のような方法で行うことができます。
+####ゲームプレイとフレームワーク
+* Reorganization of source code to put all source for a class in its own file(s)
+ * Affects `Actor`, `Controller`, `GameReplicationInfo`, `PlayerReplicationInfo`, `WorldSettings`, `Character`, `Pawn`
+ * Added `ActorReplication.cpp`, `ActorEditor.cpp`, `WorldSettings.cpp`
+ * Remove `Script.cpp`
+* PlayerController input component is no longer created in the constructor.Bindings should be done, similar to Pawn, in the virtual function SetupInputComponent.
+* `PlayerController.GetInputAnalogStickState` now returns game value (after invert and dead zones have been applied) instead of the raw hardware value.
+* ConsumeInput removed from `BIND_` macros.To set `InputAction`/`InputAxis` properties from code after binding the macro can do something similar to:
BIND_ACTION(InputComponent, "Fire", IE_Pressed, &AQAPlayerController::OnTriggerPressed);
InputComponent->ActionBindings.Last().bConsumeInput = false;
-* `MaxDrawDistanceScale` システム設定は新しい `r.ViewDistanceScale` コンソール変数に置き換えられました。
-* `LocalMap` は取り除かれ、DefaultMap を指定するために使用する唯一の設定は `Map` になりました。
-* BeginPlay をリファクタリング
- * `PreBeginPlay`/`BeginPlayComponent`/`PostBeginPlay` は、以下のように名前変更されました。`PreInitializeComponents`/`InitializeComponent`/`PostInitializeComponents`
- * ブループリントの `ReceiveBeginPlay` イベントは、プレイヤーのスポーン後に発行されるようになりました。
- * `LevelScriptActor.BeginGame` イベントは ReceiveBeginPlay に変換されました。
- * サブレベルでストリーミングし、その配置したアクタは ReceiveBeginPlay 呼び出しを受けます。
-* 多くのカメラ関連の関数のシグネチャは、緩やかな location/rotation/FOV の値の代わりに、フルビュー ステートを含む `FMinimalViewInfo` を取るように変更されました。
-* プロジェクトの最初のバッチ、エンジンとエディタの設定は、新しい Settings UI フレームワークを使用するようにリファクタリングされました。
+* `MaxDrawDistanceScale` system setting has been replaced by new `r.ViewDistanceScale` console variable.
+* `LocalMap` has been removed, `Map` is now the only setting used to specify the DefaultMap
+* BeginPlay refactor
+ * `PreBeginPlay`/`BeginPlayComponent`/`PostBeginPlay` renamed to `PreInitializeComponents`/`InitializeComponent`/`PostInitializeComponents`
+ * `ReceiveBeginPlay` event in Blueprints now fires after the player has been spawned.
+ * `LevelScriptActor.BeginGame` event converted to ReceiveBeginPlay
+ * Streamed in sublevels and their placed actors get ReceiveBeginPlay calls
+* The signatures of many camera related functions have changed to take a `FMinimalViewInfo`, containing a full view state, instead of loose location/rotation/FOV values.
+* The first batch of project, Engine and Editor settings have been refactored to use the new Settings UI framework
-####レンダリング
-* StaticSwitchParameter マテリアル式はいずれかの入力が接続されない場合にエラーを出力するようになりました。これにより、既存のマテリアルがコンパイルされなくなることがあります。
+#### レンダリング
+* StaticSwitchParameter material expressions now emit an error if either inputs are not connected.This may cause some existing materials to not compile.
-####アニメーションとペルソナ
-* `USkeletalMesh::Sockets` はプライベートになりました。ソケットのリストを取得するために、`GetActiveSocketList()` と `GetMeshOnlySocketList()` が追加されました。これはエディタのみのコードです。
-* `FKSphereElem`/`FKBoxElem`/`FKSphylElem` はリファクタリングされて、フルの FMatrix ではなく最小限の位置、方向の情報を格納するようになりました。こうしたクラスを使用しているコードは変更する必要があります。
+####Animation and Persona
+* `USkeletalMesh::Sockets` is now private. `GetActiveSocketList()` and `GetMeshOnlySocketList()` have been added to get the list of sockets.This is editor only code.
+* `FKSphereElem`/`FKBoxElem`/`FKSphylElem` have been refactored to store minimal position/orientation info, rather than a full FMatrix.Code using these classes will need to be changed.
#### サウンド
-* `ReverbVolumeToggleable` は `ReverbVolume` と結合されました。
+* `ReverbVolumeToggleable` combined with `ReverbVolume`
####オンライン
-* リファクタリングされたオンライン サブシステム、OnlineProfileInterface は OnlineIdentityInterface と結合されます。
- * 既存のOnlineProfileInterface 機能は削除できるように非推奨になりました。
-* Http モジュールは起動時にインターネット接続をチェックしなくなりました。
- * これは WinInet のブロッキング呼び出しであり、不要なものでした。いずれにせよ接続がなければ非同期要求は失敗するからです。
-* Http モジュールは実際に http 要求をすることを実際に無効にするフラグを持ち、代わりとして単に完了デリゲートを呼び出します。
- * `DefaultEngine.ini`で :
+* Refactored Online Subsystem OnlineProfileInterface to be combined with OnlineIdentityInterface
+ * Deprecated existing OnlineProfileInterface functionality so that it can be deleted
+* Http module no longer checks for internet connection at startup
+ * This was a blocking call for WinInet and not necessary since async request would fail anyway without a connection
+* Http module has a flag to disable actually making http requests and just calls completion delegates instead
+ * In `DefaultEngine.ini`:
[Http]
bEnableHttp=false
-* Http WinInet は、INTERNET_FLAG_RELOAD を介してキャッシュされたデータに依存する代わりに常にサーバーからダウンロードします。
+* Http WinInet implementation always downloads from server instead of relying on cached data via INTERNET_FLAG_RELOAD
####コア
-* `TPreallocatedArray` は削除しました。代わりに `TArray>` を使用してください。
-* エディタまたはブループリントで表示されていた非推奨プロパティはエラーになります。非表示にしてください。
-* `AActor` からのナビゲーション関連の関数のリファクタリングのファースト パス。すべてのナビゲーション関連のアクタは `INavRelevantActorInterface` を実装する必要があります。
-* `TAssetPtr` タイプはリビルドされており、アセット データの非同期ロードに使用できます。
- * `FStringAssetReference` はアセットの名前を含む構造体であり、ロードされていないデータを参照するために使用できます。
- * `TAssetPtr` は `TWeakObjectPointer` に類似していますが、現在ロードされていないデータの参照には使用できません。
- * 以前の `TAssetPtr` の使用は機能しません。シリアル化に `FStringAssetReference` を使用するようになったからです。つまり、クッキングとリダイレクトで適切に機能します。`TAssetPtr` によって使用される `FStringAssetReference` に `.GetUniqueID()` でアクセスすることができます。
- * `FStringAssetReferences` と `TAssetPtrs` をプロパティとして使用し、エディタ UI で 常にロードされないデータへの参照を作成します。変換できます。
- * `FStreamableManager` には、 `FStringAssetReferences` を非同期にロードするための関数があり、完了時にはコールバックします。これを使用することにより、メイン スレッドを停止させることなくアセット グループのロードをリクエストできます。
-* プラグインはプラグイン UI で切り替え、有効化、無効化できるようになりました。
- * ゲームでプラグインを使用している場合は、`+EnabledPlugins="YourPluginName"` を `DefaultGame.ini` の `[Plugins]` セクションに追加しなければなりません。
-* ティック グループの名前を AsyncWork の代わりにPre/During/PostPhysics に変更します。
- * `bTickBeforePhysics` フラグを削除します。
-* `IMPLEMENT_PRIMARY_GAME_MODULE` は生成された UELinkerFixup 関数の存在に依存しますが、この関数はすべてのモジュールで `IMPLEMENT_MODULE` が適切にセットアップされていることを必要とします。
-* アンリアルの列挙型変数を、`GetEnumString()` を使用する文字列に変換することは、コア (かつてはエンジン) から行えるようになりました。
+* `TPreallocatedArray` has been removed.You should instead use `TArray>`.
+* Editor-visible or Blueprint-visible deprecated properties are now an error.They should be made non-visible.
+* First pass of refactoring navigation-related functions out of `AActor`.Now all navigation relevant actors need to implement `INavRelevantActorInterface`
+* `TAssetPtr` type has been rebuilt, and can now be used for asynchronous loading of asset data
+ * A `FStringAssetReference` is a structure that contains the name of an asset, and can be used to refer to data that is not loaded.
+ * A `TAssetPtr` is similar to a `TWeakObjectPointer`, but it can be used to refer to data that is not currently loaded.
+ * Any previous uses of `TAssetPtr` will not work, as it now uses `FStringAssetReference` for serialization.This means that it works properly with cooking and redirects.You can access the `FStringAssetReference` used by a `TAssetPtr` with `.GetUniqueID()`.
+ * You can use `FStringAssetReferences` and `TAssetPtrs` as properties, and the editor UI will let you create references to data that is not always loaded.You can convert a
+ * `FStreamableManager` now has functions for asynchronously loading `FStringAssetReferences`, with callbacks on completion.You can use this to request loading groups of assets without stalling the main thread
+* Plugins may now be toggled enabled/disabled in the plugins UI.
+ * If your game uses a plugin, you must add `+EnabledPlugins="YourPluginName"` to the `[Plugins]` section of `DefaultGame.ini`
+* Rename tick groups to Pre/During/PostPhysics instead of AsyncWork
+ * Remove `bTickBeforePhysics` flag
+* `IMPLEMENT_PRIMARY_GAME_MODULE` now depends on the generated UELinkerFixup function existing, which in turn requires all modules to have `IMPLEMENT_MODULE` setup properly.
+* Converting Unreal Enums to strings using `GetEnumString()` can now be used from Core (was in Engine)
####プラットフォーム
-* UnrealBuildTool と IPhonePackager が使用する一部の環境変数名を変更/修正しました。Search `*.cs` for: `"ue`.
-* Dangerously Fast モードを追加しました。これは実行可能ファイルを再コンパイルし、プロビジョンのようなものはコピーしません。Rebuild/Clean はひとつの slow モードのコンパイルを実行します。
+* Changed/modified some environment variable names used by UnrealBuildTool and IPhonePackager.Search `*.cs` for: `"ue`.
+* Added Dangerously Fast mode, which will just recompile the executable, it won't copy provisions, or anything like that.A Rebuild/Clean will perform one slow mode compile.
## 継続事項と改善
####エディタ ツール
-* **マチネ**
- * スレート通知が表示され、ユーザーに対してマチネ トラックに静的ライトを追加できないことを伝えます。
- * Matinee Reduce キー メニューが正確に表示されるようになりました。
- * マチネのイベント名テキスト ボックス エントリのウィジェットに最長幅を与え、たくさんのテキストを貼り付けた場合にアサートしなくなりました。
- * Editing Crosshair (クロスヘア (照準) 編集) 操作でチェックボタンを使用し、メニューでオンオフのステートを表示します。
+* **Matinee**
+ * A Slate notification now appears to tell the user that they can't add a Static Light to a Matinee track
+ * The Matinee Reduce keys menu now displays correctly
+ * Gave the Matinee event name text box entry widget a maximum width so it doesn't assert when pasting lots of text
+ * Use a check button for the Editing Crosshair action to display on/off state in the menu
* **Play In Editor/Simulate In Editor**
- * PIE GameplayViewport が有効な場合、UDK リモート入力はそのビューポートに対してのみスケーリングされ、ルーティングされます。
- * Play-In-Editor (PIE) 設定は Settings UI で設定できるようになりました。
- * シミュレーション中にeject (制御解除) から possess (制御取得) に切り替えた場合に、アクタは選択解除されなくなりました。
-* **ビューポート**
- * 平面ワイヤーフレーム メッシュは正投影ビューで可視状態になります。
- * アンビエント オクルージョンをビジュアル化できるようになりました。これは、表示フラグ経由ではなく [Visualize Buffer ] メニューから行います。
- * レベル ビューポートのコンテンツ メニューにある **Attach To** オプションは検索欄のテキストを自動的にフォーカスします。
- * LevelStreamingVolume アクション、**Level Streaming Volume Previs** をビジュアル化するためのエディタのユーザー設定を追加しました。
-* **ワールド ブラウザ**
- * ランドスケープではないレベルに対してレベル境界によるスナップを追加しました (無効にするには、**Ctrl** を押します)。
- * **File > Open World...** コマンドをエディタのメインメニューからワールド ブラウザのメインメニューに移動しました。
- * OS 標準の 'Browse for folder' ダイアログの代わりにカスタムの 'Open world location' ダイアログを追加しました。
-* **シーンアウトライナー**
- * シーン アウトライナーを使って、アクタの名前変更を元に戻すことができるようになりました。
- * シーンアウトライナーを変更し、アウトライナーで表示されていない場合、選択したものだけを表示しスクロールできるするようにしました。
- * SIE/PIE 中にレベルがストリームイン / ストリームアウトする場合にシーンアウトライナーが更新するようになりました。
-* **ランドスケープ**
- * コピーとギズモの操作に元に戻す機能を追加しました。
- * レイヤーがない場合に [Gizmo Remove Layer] ボタンを無効にします。
- * ランドスケープ プロキシでレベルを直接ワールド ブラウザから作成する機能を追加しました。ランドスケープで事前に最低ひとつのロードされたレベルがあることを必要とします。
-* **フォリッジ**
- * マップのリビルド通知に接続し、壊れた/不要になったコンポーネントが PIE をクラッシュさせるのを回避することに反応してフォリッジ インスタンスを BSP コンポーネント全体で移行します。
- * リビルドするジオメトリがオリジナルのターゲット BSP を取り除く場合にターゲットとなっていないフォリッジ インスタンスを削除しないでください。
-* **メッセージ ログ**
- * メッセージ ログの API が合理化されました。メッセージ ログ出力がこれまでのエディタからだけではなく、すべてのモジュールから利用可能になりました。
- * 複数の重複メッセージ ログはエディタの起動時に表示されなくなりました。
- * メッセージ ログはレベル変更時、ライティングのビルドのマップ チェック実行時に誤ってポップアップされることはなくなりました。
-* **自動保存**
- * 自動保存は、プロジェクトを何もロードしない状態で実行すると無効になるようになりました。これはプロジェクトのロード前に新規プロジェクト画面にいる場合の自動保存を回避するためです。
- * 単にメニューだけでなく、スライダー / スピンボックス / メニューとインタラクションする場合に自動保存通知を開くことをサスペンドします。
-* **UI 全般における改善点**
- * 最近使用したレベルをサブメニューに移動しました。
- * 最近使用したプロジェクトは通常のメニュー アイテムを使用するように変更しました。
- * アイコンと可動性のインジケータはハイライトされたときにブラックに変わらなくなりました。
- * ScrollBox RMB のスクロールはリストビューと同じような挙動をします。
- * エスケープ キーを押して新規レベルのダイアログ ボックスを閉じることができるようになりました。
- * エスケープ キーを押してsave all (すべてを保存する) ダイアログ ボックスを閉じることができるようになりました。
- * エディタ起動時にフルフォーカスし、エディタ ウィンドウ内でクリックする必要なく、キーボードのショートカットが正確に機能するようになりました。
- * Settings Editor カテゴリで検索ボックス欄はデフォルトでフォーカスされるようになりました。
- * [Build and Submit] ウィンドウでパッケージをファイルに名前変更しました。
- * STextEntryPopup 引数に MaxWidth 引数を追加しましたが、デフォルトではバインドされていません。
- * ユーザーのデスクトップが右側のプライマリ モニターで設定されている場合、左側のモニターのサブメニューは右端から入ってくることはありません。
- * クックしたコンテンツの警告ダイアログには、実行の失敗理由がより詳細に説明されます。
- * **Build > Lighting Info > LightMap Resolution Adjustment** メニュー内のスタティックメッシュと BSP サーフェスのアイテムが正しいチェックボックス画像を使用し正しく表示されるようにします。
- * ブループリントのプロパティ タブにある [Collision Profile Reset to Default] ボタンの黒のボーダーを取り、他のものと同じように見えるようにしました。
- * インポート アセットのコンテキストメニューのための 16x アイコンを作成しました。
- * 新規アセットに対して複数のリクエストされたクラス アイコンの最初のWIP パス
- * プレースホルダー 16x アイコンを置き換えるために新規アイコンが作成されました。
- * 現在、16x アイコンであるすべてのメニュー アイテムについて新規 40px アイコンを作成しました。
- * 5 つのメイン エディタのツール アイコンの新規アイコンと、選択したステートに対して色を変更するアイコン作成しました。アイコンはコードの接続を必要とします。
- * デベロッパ ツール/モジュールのメニューアイテムに @ 16x の新しいビューメニュー アイコン。
- * すべてのウィンドウ メニュー アイテムに @ 16px の新規アイコンを作成しました。これは、メニュー タブでも使用します。
- * 欠落しているNavMeshModifier のプレースホルダー アイコンを 16x & 64x で作成しました。
- * 汎用コマンドと 512px ソース アイコン用に 40px アイコンを作成しました。
- * 複数のボリューム タイプについて 16px & 64px で新規アイコンを作成しました (コンテンツ/プレースメント ブラウザで使用)。
- * 様々な 128px プラグイン アイコンと 20px フォルダー アイコンに対してプラグイン ペインで使用するための新規アイコンを作成しました。
- * 最近使用したレベルと最近使用したプロジェクトの 16 px アイコンを新たに作成しました。
- * 多数のエディタ ウィンドウのタブとメニューにあるエントリにアイコンを追加しました。
- * プレースメント ブラウザにあるボリューム タイプのアイコンを追加しました。
- * プラグイン エディタでさらにアイコンのサポートを追加しました。
-* 中央化されたプロジェクトと Editor settings UIの実装を継続しました。
-* FGuidProperties の詳細ビューのカスタマイズを追加しました。
-* リビルド モデルは、モデルのレベルを利用できない場合 (一定条件下で起こります) にワールドのカレント レベルを使用するようにフォールバックするようになりました。
-* Copy component プロパティはインデックスのミスマッチを考慮するようになりました。
-* テンプレート マップは、正しい名前を表示するようになりました。
-* Swarm はレベルのビルド実行時にデフォルトで最小化で実行するようになりました。
-* 新規エントリが追加すると、ユーザーがスクロールしなければ出力ログは一番下にのみスナップします。
-* DefaultPath は Windows のファイル ダイアログではフルパスとして扱われます。これは、他のブランチとの混乱を回避します。
-* **Alt + drag** のアクタの複製のパフォーマンスを改善しました。これは、エクスポータを登録し、レベルのような大きな UObject のシリアル化のパフォーマンスを向上させることで実現しました。
-* ブラシとボリュームのクラスを適切にタグ付けし、自由に変換できるようにします。
-* Select All Additive Brushes などのブラシ グループを選択する場合、以前のアクタ選択を破棄します。
-* 被破壊メッシュエディタのユーザビリティの向上。
-* アセット レジストリで見つかった長いパッケージ名に変換できない有効なパッケージ文字だけを持つファイルはスキップされるようになりました。
-* ヒット プロキシにテンプレート HitProxyCast を追加しました。
-* アンカーを持つローカル ドキュメントの URL はブラウザで正しく開くようになりました。
+ * When a PIE GameplayViewport is active, UDK remote input will be scaled and routed only to that viewport
+ * Play-In-Editor (PIE) settings can now be configured in the Settings UI
+ * Actors are no longer unselected when switching from eject to possess while simulating
+* **Viewports**
+ * Planar wireframe meshes are now visible in orthographic views
+ * Visualize Ambient Occlusion is now available via the Visualize Buffer menu rather than via a showflag.
+ * **Attach To** option in level viewport content menus now automatically gives text focus to the search field
+ * Added an Editor user setting for the visualizing LevelStreamingVolume actions:**Level Streaming Volume Previs**
+* **World Browser**
+ * Added snapping by level bounds for non-landscape levels (Hold **Ctrl** to disable it)
+ * Moved **File > Open World...** command from the Editor main menu to the World Browser main menu
+ * Added custom 'Open world location' dialog instead of OS standard 'Browse for folder' dialog
+* **Scene Outliner**
+ * You can undo an Actor rename in the Scene Outliner
+ * Changed the Scene Outliner to only scroll the selection into view when it wasn't visible in the outliner
+ * SceneOutliner now updates when levels are streamed in/out during SIE/PIE
+* **Landscape**
+ * Added Undo for Copy and Gizmo operations
+ * Disable Gizmo Remove Layer button when there is no layer
+ * Added ability to create levels with landscape proxies directly from the world browser.User needs to have at least one loaded level with landscape beforehand
+* **Foliage**
+ * Hook up to notifications for map rebuilds and migrate foliage instances across BSP components in response to avoid broken/obsolete components crashing PIE
+ * Do not delete untargeted foliage instances if rebuilding geometry removes the original target BSP
+* **Message Log**
+ * Message log API has been streamlined.Message log output is now usable from all modules, not just Editor modules as before
+ * Multiple duplicate message logs now don't appear on Editor startup
+ * Message logs now don't pop up incorrectly when changing levels, running map check of building lighting
+* **Autosave**
+ * Now disabled when running without any project loaded.This is to prevent autosave while in the new project screen before loading any projects
+ * Suspend opening an autosave notification when interacting with sliders/spinbox/menus not just menus
+* **General UI Improvements**
+ * Moved the Recent Levels into a submenu
+ * Changed the Recent Projects to use regular menu items
+ * Icons and mobility indicator no longer turn black when highlighted
+ * ScrollBox RMB scrolling now behaves the same as ListView
+ * The user can now press the escape key to close the new level dialog box
+ * The user can now press the escape key to close the save all dialog box
+ * On launch the Editor now has full focus so keyboard shortcuts now work correctly without having to click inside the Editor window
+ * The search box field is now in focus by default in the Settings Editor categories
+ * Renamed Packages to Files in the Build and Submit window
+ * Added a MaxWidth to STextEntryPopup arguments - still unbounded by default
+ * When a user's desktop is configured with a right-hand primary monitor, submenus on the left-hand monitor now don't fly in from the far right
+ * Cooked content warning dialog explains why its failed to run in more detail
+ * Make the Static Meshes and BSP Surfaces items within the **Build > Lighting Info > LightMap Resolution Adjustment** menu use the right check box images so they display correctly
+ * Removed the black border on the Collision Profile Reset to Default button in the Blueprint property tab so it looks like the others
+ * Created 16x icon for import asset context menu
+ * Initial WIP pass of multiple requested class icons for new assets
+ * New icon created to replace placeholder 16x icon
+ * Created new 40px icons for all menu items currently with a 16x icon
+ * Created new icons for the 5 main editor tool icons, along with color change icons for the selected states.Icons require code hook-up
+ * New view menu icon for developer tools/modules menu item @ 16x
+ * Created new icons for all window menu items @ 16px, also to be used for menu tabs
+ * Created placeholder icons for missing NavMeshModifier at 16x & 64x
+ * Created 40px icon for generic command & 512px source icon
+ * Created new icons at 16px & 64px for multiple volume types (used in content/placement browsers)
+ * Created new icons for the various 128px plugin icons & 20px folder icons for use on the plugins pane
+ * Created new 16px icons recent levels & recent projects
+ * Added icons for a number of editor windows' tabs and their entries in the menu
+ * Added icons for volume types in placement browser
+ * Added additional icon support in plugins editor
+* Continued to implement centralized project and Editor settings UI
+* Added details view customization for FGuid properties
+* Rebuild model now falls back to using the worlds Current Level when the models Level isn't available (occurs under certain conditions)
+* Copy component properties now takes into account index mismatch
+* Template maps now show the correct names
+* Swarm now runs minimized by default when running level builds
+* OutputLog now only snaps to the bottom, when new entries are added, if the user hasn't scrolled away
+* DefaultPath is now treated as a full path in the Windows file dialog, which avoids confusion with other branches
+* Improve **Alt + drag** Actor duplication performance by registering exporters & improving performance of serializing large UObjects like levels
+* Properly tag Brush and Volume classes so that they can be freely converted
+* Discard previous actor selection when selecting brush groups, such as Select All Additive Brushes
+* Improving usability of destructible mesh editor
+* Any files discovered by the asset registry which cannot be converted to a long package name with only valid package characters will now be skipped
+* Added a template HitProxyCast for hit proxies.
+* Local documentation URLs that have anchors now open in browser correctly
####ブループリント
-* ブループリント エディタでは、変数、関数、グラフ、マクロ、およびデリゲートは、**My Blueprint** ウィンドウでインラインで名前変更されるようになりました。
-* フォーカスに影響を与えるべきではないポップアップと通知は影響を与えなくなりました。
-* ブループリント エディタのパレット ウィンドウからの欠落しているアクションが表示されるようになりました。
-* アクタからブループリントを作成する場合、成果物のブループリントではすべてのコンポーネントを不自然に回転させません。
-* コンテンツ ブラウザのブループリント サムネイルに小さな改善を数多く加えました。
-* ブループリント エディタのコンポーネント モード内の詳細タブでネイティブ コンポーネントのプロパティに加えた変更は、ブループリントに基づきアクタのインスタンスに正しく伝搬されるようになりました。
-* ブループリントのプレビュー シーンでアクタ / オブジェクトに対してスクリプトの例外 (例、ブレークポイント) はトリガーされなくなりました。さらにブループリントのプレビュー シーンは PIE/SIE セッションがアクティブな間はティックされなくなりました。そのため、スクリプトのデバッグ中にメッセージ ログが見えにくくなりません。
-* ブループリント グラフの変数ノードは、プロパティが存在しないか非推奨である場合にコンパイル後に警告を表示するようになりました。
-* ブループリント グラフで **Switch on Int** ノードのデフォルトの出力ピンを取り除いてもエディタを再度開いた後にブループリントがコンパイルに失敗することはなくなりました。
-* ブループリントの diff グラフ リストはスクロール可能になり、その他の点でも改善を加えました。
-* ブループリント エディタは、カスタム イベント ノードをコピー/貼り付け/元に戻す/貼り付ける場合にクラッシュしなくなりました。
+* In the Blueprint Editor, variables, functions, graphs, macros, and delegates are now renamed inline in the **My Blueprint** window
+* Pop-ups and notifications that should not affect focus should no longer.
+* Missing actions from the Palette window in the Blueprint Editor should now appear.
+* When creating a Blueprint from actor, the resulting Blueprint will not have all the components rotated strangely.
+* Many minor improvements to Blueprint thumbnails in the content browser.
+* Changes made to native component properties in the Details tab within Components mode of the Blueprint editor will now correctly propagate out to any Actor instances based on the Blueprint.
+* Script exceptions (e.g. breakpoints) are no longer triggered for actors/objects in the Blueprint preview scene.Additionally, the Blueprint preview scene is no longer ticked while a PIE/SIE session is active, so it does not pollute the message log during script debugging.
+* Variable nodes in a Blueprint graph will now display a warning after compilation if the property no longer exists or was deprecated.
+* Removing the Default output pin on a **Switch on Int** node in a Blueprint graph will no longer cause the Blueprint to fail to compile after re-opening the editor.
+* Blueprint Diff graph list now scrollable and other misc improvements.
+* Blueprint editor no longer crashes when copy/paste/undo/pasting custom event nodes
-#### ゲームプレイとフレームワーク
-* 階層のパスファインド
-* カスタムの navmesh 接続 (offmesh リンク) :セグメント間。
-* WorldSettings は`.ini` ファイルがマップで保存されているクラスとは別のクラスを示している場合は、新規クラスに移行されます。
-* bPrintToLog とフラグ付けされるブループリントの PrintString メッセージは、コンソールおよびログで表示されるようになりました。
-* 入力キー ノードはプロパティの詳細パネルから切り替えられるバウンド キーを持つことができるようになりました。
-* 様々なスケルタル コントロール関数に DLL エクスポートを追加しました。
-* 効力のなくなった UJsonObject クラスを削除しました。
-* 非推奨の USkeletalControl のパラレル階層を取り除きました。
-* ボックスのクエリ パラメータを Extents から HalfExtents に名前変更しました。ボックスの境界の代わりに半径を示すようにしました。
-* Interp プロパティの任意のネスティング (例、Component.Struct.Prop) およびマチネのトラック名のリダイレクション (INI マップの MatineeTrackRedirectsで) のサポートを追加しました。
-カメラのシェイク強度からの切り捨て (整数 FRotator のレガシー) を取り除きました。
+####ゲームプレイとフレームワーク
+* Hierarchical pathfinding
+* Custom navmesh connections (offmesh links): segment to segment
+* WorldSettings will be migrated to a new class if the `.ini` file dictates a different class than that which was saved in the map.
+* Blueprint PrintString messages flagged bPrintToLog now display in console as well as log.
+* Input Key nodes can now have the bound key switched from the property details panel.
+* Added DLL export to various skeletal control functions.
+* Removed dead UJsonObject class.
+* Got rid of deprecated USkeletalControl parallel hierarchy.
+* Renamed box query parameter from Extents to HalfExtents, indicating that it is the box radius instead of bounds.
+* Added support for arbitrary nesting of Interp properties (e.g., Component.Struct.Prop), and redirection of Matinee track names (in the INI map MatineeTrackRedirects).
+* Removed a truncation from camera shake strength (legacy of integer FRotator).
-####レンダリング
-* エディタで実行しない場合、ウィンドウのリサイズ時にすべてのシーンのレンダリング ターゲットは再割り当てされます。これにより、より低い解像度に変更する際にメモリを回復できます。
-* ParticleParameter の分布は GPU エミッタで様々なプロパティを選択できなくなりました。以前は、選択可能でしたが機能しませんでした。
-* Random および Random_Blend 補間の方法は GPU エミッタで選択できなくなりました。.以前は、選択可能でしたが機能しませんでした。
-* パーティクル エミッタのエディタ LOD 値はロード時に 0 に設定されます。
-* **Texture Streaming** - テクスチャをどのようにストリーミングするか (またはしないか) を決める単純なロジックで、動的テクスチャ (ブループリントを含む) に対して修正しました。
-* StaticSwitchParameter マテリアル式はいずれかの入力が接続されない場合にエラーを出力するようになりました。
-* velocity バッファに描画するマテリアルを細分化しました。
-* **SceneTexture** マテリアル式の出力マスク値を修正しました。
-* ユーザーが別個の透過処理と _BLEND_MODULATE_ を合わせて使用しようとするとマテリアル エディタに警告メッセージが表示されるようになりました。
-* メッシュに変更を加えたらスタティックメッシュ エディタが物理ジオメトリをリビルドするようにし、ビューから消えないようにします。
-* トライアングルがないスタティックメッシュのセクションは、マテリアルのスロットを使い切らないようになりました。既存のコンテンツはロード時に修正されます。
-* HQ ライトマップと距離フィールド シャドウの iOS からのストリッピングを追加しました。
-* ES2 ブルームがより幅広くなりました。
-* マテリアル エディタ内でインタラクションしながらマテリアル インスタンスのプロパティ変更のブロードキャストを遅らせます。これは、編集をはるかにスムーズに行うためのものです。
-* マテリアルのシェーダのコンパイルは、ディスクに保存するためのサムネイルの生成前に完了するようになりました。
+#### レンダリング
+* When not running with the editor, all scene render targets will be reallocated on resizing the window.This allows memory to be recovered when changing to a lower resolution
+* ParticleParameter distributions are now not selectable on GPU emitters for various properties.Previously they would have been selectable but would not have worked.
+* Random and Random_Blend interpolation methods are now not selectable for GPU emitters.Previously they would have been selectable but would not have worked.
+* Particle emitter's editor LOD value is set to 0 on load.
+* **Texture Streaming** - Simpler logic to decide how textures should be streamed (or not), fixes for dynamic textures (including Blueprints)
+* StaticSwitchParameter material expressions now emit an error if either inputs are not connected.
+* Tessellated materials draw to the velocity buffer.
+* Corrected the output mask value for **SceneTexture** material expression.
+* A warning message is now displayed in the Material Editor when the user attempts to use _BLEND_MODULATE_ with separate translucency
+* Ensure that the static mesh editor rebuilds the physics geometry after any change to the mesh so it doesn't disappear from view
+* Static mesh sections with no triangles no longer use up a material slot.Existing content will be fixed on load
+* Added stripping of HQ lightmaps and distance field shadows from iOS
+* Wider ES2 bloom
+* Defer broadcasting material instance property changes while still interacting with them in the material editor, so that editing is much smoother
+* Compilation of the shaders for a material are now completed before generating a thumbnail to save to disk
-####アニメーションとペルソナ
+####Animation and Persona
* **PHAT EDITOR**
- * PhAT: BodySetup からコリジョン設定を取り除きました。しかし、コリジョン反応の有効/無効は追加しました
- * 他のすべての設定は OwnerComponent から派生します。
- * 被破壊物に対してデフォルトのポーンのコリジョンを有効にしました。
- * PhAT のツールチップをユーザーにとってわかりやすいものにしました。
-* スケルタルメッシュの頂点はインポート中に再アレンジされ、よりキャッシュ フレンドリーになりました。
-*スケルトンにソケットを追加、スケルトンからソケットを削除するための元に戻す/リドゥ (取り消しの取り消し) を修正しました。
-* 軸のインジケータをペルソナ ビューポートに追加しました。
+ * Removed collision settings from PhAT:BodySetup, but added collision response Enabled/Disabled
+ * All other settings are derived from OwnerComponent
+ * Enabled default pawn collision against destructible
+ * Modified PhAT tooltip to be less confusing to the user.
+* Skeletal mesh vertices are rearranged during import to be more cache friendly.
+* Undo/Redo fixed for adding/deleting sockets from a skeleton.
+* Added the axis indicator to the Persona viewport.
#### サウンド
-* 子のサウンドクラスからサウンドクラス エディタを開くと、親を含む SoundClass 階層全体が表示されます。
+* Entire SoundClass hierarchy, including parents, will be displayed when opening the Sound Class editor via a child SoundClass.
####オンライン
-* オンライン プラットフォームの安定性と堅牢性の改善努力は進行中です。
- * その他
- * キー値のペアに対して bool の FVariantData をサポートします。
- * Identity インターフェースに CreateUniquePlayerId 関数を追加しました。
- * UpdateSession API はデフォルトでバックエンドで更新します。
- * セッション設定をビットフィールドの代わりに bool にしました。
- * クラウド
- * クラウドのヘッダーに追加の更新
- * 列挙リストにないローカルのキャッシュ ファイルを削除しました。
- * ユーザー ファイルの書き込み/削除後に列挙リストを更新します。
+* Ongoing efforts to improve the stability and robustness of the online platforms
+ * Misc
+ * Support for bool FVariantData for key value pairs
+ * Added CreateUniquePlayerId function to Identity interface
+ * UpdateSession API now defaults to updating backend
+ * Made session settings bool instead of bitfield
+ * Cloud
+ * Additional updates to cloud headers
+ * Delete local cache files not in the enumerated list
+ * Update enumerated list after write/delete user file
####コア
-* 外部 CPU プロファイラ サポート (AQTime, VTune, VSPerf) を再記述しました
- * コマンドライン オプションを使用して特定のプロファイラ、`-AQtime`, `-VSPerf` and `-VTune` を選択します。
- * 最初の有効なプロファイルはデフォルトで使用されます (通常は VSPerf)。プロファイラは検索パスでその DLL が見つかる場合のみ利用できます。
-* 多くのスレート コードが中に入っている大きな関数がある場合、BEGIN_/END_SLATE_FUNCTION_BUILD_OPTIMIZATION マクロ ペアにラップし、こうした関数を含むモジュールのデベロッパのビルド時間を改善することができます。
-* 最初のページで back がクリックされると、SWizard がデリゲートを供給するオプションを追加しました。
-* Base ini ファイルを調整し、保存した ini ファイルに追加データを保存するのを回避する支援をするようにしました。
-* config システムが直接 UObject 参照をロードできるため、TemplateMapInfo 構造体を単純化しました。
-* アセット タイプ クラスにいくつかのコメントを移動し、ツールチップ メタデータに表示されるようにしました。これは、**New Asset** メニューがクラスの説明を描画する場所です。
-* ビルド マシンは EditorGameAgnostic ini からロードしたり、EditorGameAgnostic ini に保存したりしなくなりました。また、ビルド マシンはプロジェクト ファイル自動ロードしなくなりました。
-* c++ クラス ウィザードでクラスの妥当性のロジックを更新し、ゲーム モジュールでクラスの拡張を可能にします。
-* パス ピッカーは Classes フォルダを表示しなくなりました。また、選択は常に単独であり、従ってパスの選択解除は認められていません。
-* visual studio を開くオプションをメインフレームのファイル メニューに追加しました。
-* デバッグビルドでハードウェアの調査は行われなくなりました。
-*ビデオ設定をベースとする合成ベンチマーク (ハードウェア調査の一環としてコンソール コマンド `SynthBenchmark`) を開始しました。
-* 詳細モードのシーン コンポーネントを追加し、r.DetailMode でもライトがカリングされるようにしました。
-* デカールのステート変更を最適化しました。
-* JsonReader はホワイトスペースの前後を無視するようになりました。
-* "Error" を含むローカリゼーション文字列がある場合、国際化で収集するログ出力を調整して、自動ビルドが失敗するのを防ぐ機能を追加しました。
-* 国際化マニフェストとアーカイブ ファイルをユニコードのエンコードを使用して強制的に書き込むようにしました。
-* エンジンとエディタのローカリゼーション ファイルを生成するための config ファイルを追加しました。
-* ChunkID info を `FAssetData`, `FPackageFileSummary`, および `FBackgroundAssetData` にインストールするストリーミングを追加しました。
- * 将来のビルドでは、これはストリーミングする `.pak` ファイルの作成と個々のアセットのインストール状態を判断するためのパッケージャによって使用されます。
+* Rewrote external CPU profiler support (AQTime, VTune, VSPerf)
+ * Use command-line options to select a specific profiler: `-AQtime`, `-VSPerf` and `-VTune`
+ * The first valid profiler is used by default (usually VSPerf.)Profilers are available only if their DLL is found in a search path.
+* If you have any large functions with a lot of Slate code in them, they can now be wrapped in a BEGIN_/END_SLATE_FUNCTION_BUILD_OPTIMIZATION macro pair to improve Developer build times for the modules containing these functions.
+* Added option to SWizard to supply a delegate for when back is clicked on the first page.
+* Adjusted Base ini files to help avoid saving additional data to saved ini files.
+* Simplified TemplateMapInfo struct since the config system can directly load a UObject reference.
+* Moved some comments around in asset type classes so that they will appear in tooltip metadata.This is where the **New Asset** menu draws its descriptions for classes.
+* Build machines no longer load from or save to the EditorGameAgnostic ini.Also, build machines no longer attempt to auto-load project files.
+* Updated class validity logic in the c++ class wizard to allow for the extending of classes in the game module.
+* Path pickers no longer show a Classes folder.Also, selection is always single, thus deselecting a path is not allowed.
+* An option to open visual studio was added to the File menu in the mainframe.
+* Hardware survey no longer done in debug builds
+* Started synthetic benchmark (console command `SynthBenchmark`, part of Hardware survey) to base video settings on it
+* Added detail mode SceneComponent so lights can be culled by r.DetailMode as well
+* Optimized decal state changes
+* JsonReader now ignores trailing and preceding whitespace
+* Added functionality that will adjust some of the internationalization gather log output to prevent automated builds from failing when localization strings containing "Error" are encountered
+* Forcing internationalization manifest and archive files to be written out using unicode encoding
+* Added config files for generating Engine and Editor localization files
+* Added streaming install ChunkID info to `FAssetData`, `FPackageFileSummary`, and `FBackgroundAssetData`.
+ * In future builds this will be used by the packager for creating streaming install `.pak` files and for determining the install state of individual assets.
####プラットフォーム
-* エンジンとエディタを Mac へ移植中です。
-* GScreenWidth/Height を削除し、デスクトップではないプラットフォームのデフォルトの解像度を 0x0 に設定し、現在の解像度をデバイスに照会するようにします。
+* Porting the engine and the editor to Mac
+* Removed GScreenWidth/Height, and set the default resolution for non-desktop platforms to 0x0, to make it query the device for current resolution
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/August/ReleaseNotesAugust2013.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/August/ReleaseNotesAugust2013.KOR.udn
index 3d7d6e73b9a7..00da782ecfc1 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/August/ReleaseNotesAugust2013.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/August/ReleaseNotesAugust2013.KOR.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Title: August 2013 Release Notes
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-6
[TOC(start:2 end:2)]
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Dec/ReleaseNotesDecember2013.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Dec/ReleaseNotesDecember2013.JPN.udn
index aab3d6f7f31e..91fbd746da0c 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Dec/ReleaseNotesDecember2013.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Dec/ReleaseNotesDecember2013.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:2615097
+INTSourceChangelist:3367470
Title:2013年12月リリースノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-3
[TOC(start:2 end:2)]
@@ -32,7 +33,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* 現時点のエンジン開発ロードマップ: [UE4 Roadmaps](https://udn.unrealengine.com/questions/topics/roadmap.html)
* 修正されたバグ: [UE4 Fixed Bugs December 2013](UE4_Fixed_2013_December.xlsx)
- * 既知の問題: [UE4 Known Issues December 2013](UE4_Bugs_2013_December.xlsx)
+ * 周知のバグ: [UE4 Known Issues December 2013](UE4_Bugs_2013_December.xlsx)
## 主要な新機能
@@ -73,13 +74,13 @@ QA_APPROVED_UE4_BUILD_MINIMUM

* フォルダ表示を有効にするというこは [Show Only Assets In Selected Folders] を有効にすることを意味します。ツリービューでルートを選択すると全てのコンテンツが表示されなくなることにご注意ください。
- * フォルダは以下のように表示されます。フォルダはコンテンツ ブラウザの全ビューモードで表示されます。
+ * フォルダは以下のように表示されます。They are displayed in all view modes of the Content Browser:

* フォルダは、Windows Explorer とほぼ同じ挙動をします。ドラッグ&ドロップ、名前の変更 (F2) 、削除オプションは全て機能します。
* [Asset View] へ新規フォルダを作成することもできます。
- * 新しく [Up] ボタンが追加されました (ナビゲーショントレールの左)。このボタンをクリックするとディレクトリへ移動します。 [Alt+Up] キー操作でも移動可能です。
+ * 新しく [Up] ボタンが追加されました ('breadcrumb trail' の左)。このボタンをクリックするとディレクトリへ移動します。 [Alt+Up] キー操作でも移動可能です。

@@ -132,18 +133,18 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* **インターフェースからの移行**
* ブループリントは、以前は関数の呼び出しや別のブループリントの変数へアクセスができなかったことへの対処法として、ブループリント インターフェースを使用していました。もうこの回避策を利用する必要はありません。今後はインターフェースを使用せずに、ブループリントの通信を直接利用した移行を選択されるでしょう。ユーザーのブループリントからインターフェースを削除する新しい機能が追加されました。関数はそのまま使用できます。
- * [Find in Blueprints](ブループリント エディタでは [Ctrl + F] キー)で、移行を簡単にするメッセージ関数の全ての用途を検索することができます。
+ * [Find in Blueprints] (ブループリント エディタでは [Ctrl + F] キー)で、移行を簡単にするメッセージ関数の全ての用途を検索することができます。
-####Animation
+####アニメーション
* **アニメーション リターゲット**
* このたび、アニメーション リターゲットのサポートが追加されました!
* アニメーション リターゲットとは?
- * アニメーション リターゲットとは、特定キャラクター用に作成したアニメーションを使用して、比率の異なるキャラクターでこれを再生する機能です。重要な点は、正しく機能させるために、共通のスケルトンを使用しなくてはいけないことです (同一ボーン名と階層)。パインド ポーズのみが異なります。
+ * アニメーション リターゲットとは、特定キャラクター用に作成したアニメーションを使用して、比率の異なるキャラクターでこれを再生する機能です。 重要な点は、正しく機能させるために、共通のスケルトンを使用しなくてはいけないことです (同一ボーン名と階層)。パインド ポーズのみが異なります。
* ペルソナ (Persona) の [Skeleton Tree] ウィンドウに設定が可能なボーン移動のリターゲットは 3 種類あります。
* **スケルトン:**ボーンの移動はターゲット スケルトンのバインド ポーズに由来します。
* **アニメーション**:ボーンの移動は、不変のアニメーション データに由来します。
- * **アニメーションスケーリング**:ボーンの移動はアニメーション データに由来しますが、スケルトンの比率でスケーリングされます。これはターゲット スケルトンのボーンの長さ (アニメーションが再生中のスケルトン) とソース スケルトン (アニメーションが作成されたスケルトン) 間の比率です。
+ * **アニメーションスケーリング**:ボーンの移動はアニメーション データに由来しますが、スケルトンの比率でスケーリングされます。これはターゲット スケルトンのボーンの長さ (アニメーションが再生中のスケルトン) とソース スケルトン (アニメーションが作成されたスケルトン) との間の比率です。

@@ -159,7 +160,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
## 新規追加
-#### Editor and Tools
+#### エディタとツール
* DragDropEvent.GetOperationAs() で、ドラッグ&ドロップ操作タイプを簡単にチェックする方法が追加されました。
* ツール ヒントのスコープおよびカスタム設定処理を有効にする OnVisualizeTooltip() イベントが追加されました。
* ブランチ間の頻繁な切り替えが発生した際に、レベルエディタへプロジェクト名を明示的に付与するための「ini」オプションがエディタのユーザー設定に追加されました。
@@ -168,19 +169,19 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* スナップ時に不均等なスケーリングを維持するオプションが追加されました。
* クックパスは、ゲームごとのエディタ環境設定に置かれました。
* コンテンツ ブラウザにフォルダが追加されました。
-* [Slate] ウィンドウに細い境界線が追加されました。
+* [Slate] ウィンドウの隣に細いウィンドウ境界を追加しました。
* シーン内のアクタをピックするために、インタラクティブなアクタに「スポイト」ピッカーが追加されました。
* ノード上の既存グラフ アイコンをクリックすると、グラフビューに単独に表示されます。
* 個々のキーを既存トラックへコピー / 切り取り、貼り付けする際に選択キーが考慮されます。
* フォルダの色を設定するための新規のオプションがコンテンツブラウザにあります。
-* ContentBrowserリストとカラムビューは色を表示するようになりました。
+* ContentBrowser リストとカラムビューは色を表示するようになりました。
* クラッシュ後のエディタの再起動時に、自動保存からの復元オプションが表示されます。
* マテリアル エディタのスレート グラフ バージョンの使用が可能になりました。
* コマンドラインに「-oldme」と入力して、旧エディタへアクセスするオプションがデフォルトで有効になっています。
* 表現式とコメントの位置が一時的に入れ替わります。
* Static Bool 表現式はプレビュー ウィンドウを表示しなくなりました。
* Material Input ノードを移動できるようになりました。
- * [ctrl+drag] キーでマテリアルの接続を移動できるようになりました。
+ * [ctrl+drag] キーでマテリアルの接続を移動できるようになりました。
* [Enter] キーを押すと検索結果を循環します。
* マテリアル表現式に代替の検索結果が追加されました。「lerp」と入力して線形補間の検索、[One Minus] には「1-x」、 [Square Root] は「sqrt」と入力します。
* ノードのタイトルバーから、パラメータ名のブループリント スタイルの編集を有効にします。
@@ -188,8 +189,8 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* SCC Provider プラグインをオーバーライドするために、コマンドラインへ「-SCCProvider=ProviderPluginName」を追加できるようになりました。
* 高度なグリッドスナップ設定が、 [EditorSettings->General->Preferences->Snap] へ追加されました。
* **UnrealDocTool**
- * ページのパブリッシュを回避するために、「NoPublish」オプションが追加されました。
- * 特定のUDNドキュメントパスに対し、正確で相対的なターゲットパスへレンダリングさせるために 「`[RELATIVE:path]`」タグが追加されました。
+ * Added NoPublish availability option to keep page from publishing.
+ * Added `[RELATIVE:path]` tag which is rendered into proper relative target path for given UDN document path.
#### Blueprints
@@ -200,32 +201,32 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* Enumeration (列挙型) をName (名前) またはString (文字列) へ変換することができます。
* Get number of entries in ノードが追加されました。
* Behavior Tree ブループリント ノードが音を立てるように、APawn へ BlueprintCallable PawnMakeNoise 関数が追加されました。
-* ブループリントで呼び出しが可能な関数を SceneComponent へ追加しました。Get Num Children Components()、 Get Child Component (インデックス)、 Get Children Components ([Include All Descendants] チェックボックスと一緒に)、そして Get Parent Components が追加されました。
+* ブループリントで呼び出しが可能な関数を SceneComponent へ追加しました。Get Num Children Components()、 Get Child Component (インデックス)、 Get Children Components ([Include All Descendants] チェックボックスと一緒に)、そして Get Parent Components が追加されました。
* ブループリント タブにカテゴリが追加されました。
* BlueprintNativeEvents にサポートが追加されました。コールチェーンにネイティブ実装される点を除いて、BlueprintImplementableEvents と似ています。インターフェースで使用すると、BPNE の機能は限定されることに留意してください。これについては今後のリリースノートで言及していきます。
#### ゲームプレイとフレームワーク
-* 結合が可能な Begin/End Cusor Over Events を HUD HitBox で利用できるようになりました。
+* 結合が可能な Begin/End Cusor Over Events を HUD HitBox で利用できるようになりました。
* ブループリントの Input イベントを、イベントノードのプロパティに指定できるようになりました。親クラスのイベントのバインディングをオーバーライドすべきかどうかを指定します。
* ブループリントの変数、関数、マクロは、参照を格納しているクラスが読み込まれていない間に名前変更がされた場合、参照メンバーの検索に使用される内部 GUID に格納出来るようになりました。GUID ベースのシステムを従来のコンテンツに作用させるには、アセットを再保存しなくてはいけません。
* マルチプレイヤー対応 PIE (Play in Editor):1 つのプロセスに複数のワールド
* UE4 の 1 つのインスタンス下でマルチプレイヤープレイを行うことができます (接続のために別のインスタンスを起動する代わりに)。
* [Play In Settings] の [Multiplayer] オプションで「Single Process」を選択して有効にします。
* Visual Studio 2013 (VC12)に対する仮サポートを追加しました。
- * WindowsCompiler.VisualStudio2013に WindowsPlatform.Compilerを設定しました(実験的です!
- * VS2013のネイティブプロジェクトを取得するために、「"-2013"」を「GenerateProjectFiles.bat」へ渡します(オプション)。
+ * WindowsCompiler.VisualStudio2013に WindowsPlatform.Compilerを設定しました(実験的です!)
+ * VS2013のネイティブプロジェクトを取得するために、「"-2013"」を「GenerateProjectFiles.bat」へ渡します(オプション)
* Visual Studio 2013のコンパイル時は、Windows SDK 8.1 を使用します。
* サードパーティによるビルドスクリプトはVS2013ライブラリのパスへ更新されます。
* 今でもWindows XPをターゲットにすることができますが、これは実験的な試みです(WindowsPlatform.SupportWindowsXP=true)。
- * 重要:現時点におけるUE4はVisual Studio 2012のみをサポートしています。コンパイルするにはVisual Studio 2012をインストールしなくてはいけません。2013バージョンは初期試験のためのテスト予備段階です。
- * 重要:サードパーティライブラリはまだVS2013へコンパイルされていないのでリンクできません。
-* UStructs から / へ Json オブジェクトを変換するユーティリティ、JsonUtilities モジュールが追加されました。
-* BodySetup とインスタンスあたりの基準両方で「歩行可能」と判断されるフロア法線をオーバーライド出来る機能が追加されました。有効な設定は以下の通りです。
+ * 重要:現時点におけるUE4はVisual Studio 2012のみをサポートしています。コンパイルするにはVisual Studio 2012をインストールしなくてはいけません。2013バージョンは初期試験のためのテスト予備段階です。
+ * 重要:サードパーティライブラリはまだVS2013へコンパイルされていないのでリンクできません。
+* UStructs から / へ Json オブジェクトを変換するユーティリティ、JsonUtilities モジュールが追加されました。
+* BodySetup とインスタンスあたりの基準両方で「歩行可能」と判断されるフロア法線をオーバーライド出来る機能が追加されました。Allowable settings are:
* Default (デフォルト) (動作に変化はありません)
* Increase walkability (歩行範囲の拡大) (通常よりも急斜面な法線を有効にします)
* Decrease walkability (歩行範囲の縮小) (通常よりも緩やかな法線を無効にします)
- * 注記:現時点の AI navmesh はこれらの設定を無視します。
+ * 注記:現時点の AI navmesh はこれらの設定を無視します。
* カスタム AI ナビゲーションリンクは、次のパスに作用します (ドア、はしごなど):USmartNavLinkComponent.
* ANavLinkProxy のカスタム AI ナビゲーション リンクにブループリント サポートを追加しました。
* 詳細なパス ファインディング デバッグを ANavigationTestingActor へ追加しました。
@@ -235,7 +236,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* ユーザーのシステムでリターゲットが使用されると、正確なリターゲットを処理するために、一部のアニメーションは正しい基本ポーズが必要となります (アニメートされたメッシュに基づきます)。
-#### Rendering
+#### レンダリング
* HZB オクルージョン カリングを追加しました。新規のシステム スケーリングは、以前の HW オクルージョン クエリーに基づいたシステムよりも高いオブジェクト数に適しています。現在はデフォルト設定で無効になっています。「r.HZBOcclusion 1」を有効に設定します。
* 拡張性のために GetRenderingDetailMode() 関数をブループリントに追加しました。
* コンポジットおよびポストプロセス グラフの「r.CompositionGraphDebug」へデバッグ エクスポートを追加しました (yWorks を使用)。グラフはファイルをスクリーンショット フォルダへエクスポートします。
@@ -243,7 +244,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* 困難なライティング状況でノイズとノイズ漏れを削減します。
* GI ソルバのアーティファクトを示すマップのソルバ品質を強化するために使用可能な、 IndirectLightingQuality ワールド設定を新規に追加しました。
* **カスタム仕様の UV**
- * 新しいマテリアル プロパティ、NumCustomizedUVs は、頂点シェーダーで実行されるマテリアル入力を公開します。
+ * 新しいマテリアル プロパティ、NumCustomizedUVs は、頂点シェーダーで実行されるマテリアル入力を公開します。
* Customized UV 入力は、演算を頂点シェーダーへ移動することによりマテリアルの最適化に使用します。
* 各拡張グループの CVar は、「ini」ファイルに格納されるようになりました (BaseScalability.ini)。
* DOF (Depth of field: 被写界深度) と別の透過処理を適用前にマテリアルを描画するために、ポストプロセ スマテリアルの切り込み点として BL_BeforeTranslucency を追加しました。
@@ -254,7 +255,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* [Rendering Detail] モードをパーティクルごとに指定できるようになりました。
* Axis Lock モジュールが GPU パーティクル エミッタでサポートされるようになりました。
* SetEmitterEnable 関数を使用して、 パーティクル サブエミッタをブループリントから有効または無効にできるようになりました。
-* r.UpsampleQuality コンソール変数を追加しました。
+* r.UpsampleQuality コンソール変数を追加しました。
* より小さなスクリーンからアップスケーリングする時の 4 つの品質値の範囲です。
* **Automatic Lightmass Importance ボリューム**
* LightmassImportanceVolumes が存在しない場合、ユーザーのシーンと結合する合成ボリュームが使用されます。
@@ -264,15 +265,15 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* MinimumImportanceVolumeExtentWithoutWarning の extent 値を 50m から 100m へ増加しました。
-#### Animation
+#### アニメーション
* [Ctrl-C/Ctrl-V] キー、またはスケルトン ツリーのコンテクスト メニュー アイテムから、ソケット用のコピーおよび貼り付け機能をペルソナに追加しました。複数のソケットを一度にコピーして、ボーンへ貼り付けることができます。
* フロアを上下に移動させる [Floor Height Offset] ボックスがペルソナの [Viewport] メニューに追加されました。メッシュごとに保存します。
-#### Core
+#### コア
* TAssetPtr -> UObject から負荷時に自動変換が追加されました。
* TMap と TArray には設置サポートに制限があるため、コピーせずにコンテナへ直接エレメントを構築することができます。
- * 単一引数コンストラクタと一緒にクラスを処理する際は、コピーのコンストラクタ呼出しを回避するために、「.Add」の代わりに「Map.Emplace」と「Array.Emplace」を使用します。
+ * 単一引数コンストラクタと一緒にクラスを処理する際は、コピーのコンストラクタ呼出しを回避するために、「.Add」の代わりに「Map.Emplace」と「Array.Emplace」を使用します。
* TMap 値は演算子を利用して読み出すことができます[]。
* ValueType& Val = Map[Key];
* 「std::map」とは異なり、これは const コンテナで使用が可能で、キーが存在しない場合は新しいエレメントを挿入しません。その代りアサートします。
@@ -281,7 +282,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* IndexOfByPredicate: 述語でエレメントの見出しを検索します。
* ContainsByPredicate: 述語と一致するエレメントがあるかテストします。
* デバッガビジュアライザは「GenerateProjectFiles.bat」で自動的にインストールされます。
-* UFUNCTION 指定子がデリゲートの UFunction へ渡されるように UDELEGATE が追加されました。
+* UFUNCTION 指定子がデリゲートの UFunction へ渡されるように UDELEGATE が追加されました。
* UDELEGATE がない古いタイプもまだサポートしています。
* 例:
* UDELEGATE()
@@ -291,27 +292,27 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* FVector::Dot2D の名前が変更されました。
* この関数の名前は、関数の動作を適切に表現していませんでした。
* FVector::CosineAngle2D を代わりに使用します。
-* 空の TArray へインデックスを付けると常にエラーとなります。
+* 空の TArray へインデックスを付けると常にエラーとなります
* &Array[0] の回避策が原因で一部のエラーは報告されていません。
* この種の使用法は、Array.GetTypedArray() と置き換えなくてはいけません。
-#### Platforms
+#### プラットフォーム
* ライブラリのバッチの再コンパイルを単純化するために BuildThirdPartyLibs UAT スクリプトが追加されました (全てのライブラリが有効にされたわけではありません。バッチファイルの設定方はスクリプトを参照してください)。
* 「.uplugin」ファイルへホワイトリストとブラックリストを追加しました (WindowsMoviePlayer.upluginから例を確認してください)。
* **Android**
* メインブランチの初期のAndroidサポートは、DXTと PVRTCデバイスをサポートします。
-* アンリアル プロジェクト ファイルに Mac OS X Services インテグレーションを追加しました。 「.uproject」ファイルの選択時に [Service Menu]、もしくは Finder のコンテクスト メニューからゲームまたは生成した Xcode プロジェクト ファイルを起動できるようになりました。
+* アンリアル プロジェクト ファイルに Mac OS X Services インテグレーションを追加しました。 「.uproject」ファイルの選択時に [Service Menu]、もしくは Finder のコンテクスト メニューからゲームまたは生成した Xcode プロジェクト ファイルを起動できるようになりました。
* UE4 の共有コンテナと文字列タイプに LLDB データフォーマッターを実装しました。ユーザーの「~/.lldbinit」へ「command script import UE4/Engine/Extras/LLDBDataFormatters/UE4DataFormatters.py」を追加します。
#### Networking
-* **ネットワークアクタリスト**
- * 単独のネットワークアクタリストで、向上したパフォーマンスのネットワークに関連したアクタを追跡するようになりました。
+* **ネットワーク アクタ リスト**
+ * 単独のネットワークアクタリストで、向上したパフォーマンスのネットワークに関連したアクタを追跡するようになりました。.
* **レプリケーションの最適化**
* パフォーマンスとセキュリティを考慮して、下層のプロパティ レプリケーション ロジックを徹底的に書き直しました。
* **接続全域に渡るワークシェアー**
- * 接続全域に渡って共有するレプリケーション ロジックの能力
-* Lifetime プロパティ
+ * 接続全域に渡って共有するレプリケーション ロジックの能力
+* **Lifetime プロパティ **
* パフォーマンス向上のためにプロパティを登録する新しい方法。
* **ライフタイム プロパティの条件**
* ライフタイムにレプリケートされたプロパティに二次的な条件を適用する能力。
@@ -319,113 +320,113 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* クライアントとサーバーの非同期状況を診断するためにプロパティ チェックサムをトグルする能力。
-#### Online
-* 別のサブシステムが利用不可、または意図的にオフにされている時は、OnlineSubsystemNULL がフォールバックです。
+#### オンライン
+* 別のサブシステムが利用不可、または意図的にオフにされている時は、OnlineSubsystemNULL がフォールバックです。
* ゲームコードはオンライン関数を継続的に呼出し、実際のオンラインコミュニケーションをせずにコールバックを取得します。
-* オンライン サブシステムに新規の OnlineMessage インターフェースを追加しました。
- * ユーザーのインボックスに列挙型のメッセージを有効にします。
+* オンライン サブシステムに新規の OnlineMessage インターフェースを追加しました。
+ * ユーザーのインボックスに列挙型のメッセージを有効にします
* ID でメッセージをダウンロードすることができます。
* あるユーザーから別のユーザーへメッセージを送信することができます。
* 個々のメッセージは削除できます。
- * 順応性のあるペイロードを有効にするために、メッセージペイロードはバリアント データ タイプへ文字列のキー値ペアとして符号化されています。
+ * 順応性のあるペイロードを有効にするために、メッセージペイロードはバリアント データ タイプへ文字列のキー値ペアとして符号化されています
* 現時点では Mcp OSS のみに実装しています。
-* オンライン サブシステムの OnlineUser インターフェースのリファクタリングです。
+* オンライン サブシステムの OnlineUser インターフェースのリファクタリングです。
* Mcp OSS 実装を追加しました。
* オンライ ンサブシステムの OnlineFriends インターフェースをリファクタリングしました。
* 従来の OSS 実装を更新しました。Steam PC、 PS4、 Facebook iOS/PC、 Gamecenter iOS、 Amazon PC
* Steam 実装は各読み込み時にフレンズリストをキャッシュするようになりました。
* 新規の Mcp OSS 実装を追加しました。
* 名前が付けられたフレンズリスト上で操作が可能です。
- * デフォルト設定のフレンズリストに招待を送信するために、ユーザー ID のリストを受け取る exec コマンドを追加しました。
-* Engine モジュールの依存を削除するために OnlineSubsystem をリファクタリングしました。
+ * デフォルト設定のフレンズリストに招待を送信するために、ユーザー ID のリストを受け取る exec コマンド "SENDINVITES" を追加しました。
+* Engine モジュールの依存を削除するために OnlineSubsystem をリファクタリングしました。
* エンジン依存は全て OnlineSubsystemUtils モジュールにあります。
* ソースファイルからMcpコンフィグをリファクタリングしました。
-## Upgrade Notes
+##アップグレード ノート
-#### Editor and Tools
-* [World Settings] に独自のタブができました ([Details] タブとは別です)。
-* **スレート**
- * スレートのサウンドは、 FName のよりはむしろ FSlateSound を使用するようになりました。スレートにサウンド名を格納するための Fname の使用は非推奨となりました。
- * FSlateSound::FromName_DEPRECATED を利用して一時的にコードを修正することができます。
- * 正規の修正は、スレートで再生するサウンドを保持するために Slate Widget Style を使用します。
- * SHyperlink のテンプレートが廃止されました。ユーザー データを渡すにはデリゲート ペイロードを使用します。
-* const らしさを強調するためにスレートの TAttributes の機能が向上しました。スレート TAttribute の内部に決して副作用をもたらさないでください。
-* SPropertyEditorNumeric、 SSpinBox、 SNumericEntryBox が一般となり、任意の数値型でパラメータ化することができます。
-* [Viewport Transform] ツールバーのアイコンと色を変更しました。
-* Texture2D から Slate Brush Asset を作成するために、コンテンツ ブラウザにコンテンツ メニュー アクションを追加しました。
-* プロパティ エディタに WYSIWYG SlateBrush プレビューが追加されました。
-* マウスの中クリックでコンテンツ ブラウザ フィルタの削除が可能になりました。
+#### エディタとツール
+* The World Settings now have their own tab (separate from Details tab).
+* **Slate**
+ * Sounds in Slate now use FSlateSound rather than FName; the use of FName to store sound names in Slate is deprecated.
+ * You can temporarily fix code using FSlateSound::FromName_DEPRECATED.
+ * The correct fix is to use a Slate Widget Style to hold any sounds you want Slate to play.
+ * SHyperlink is no longer templated.Simply use delegate payloads for passing user data.
+* Slate TAttributes now do a better job of enforcing const-ness.It is never OK to have a side-effect inside a Slate TAttribute.
+* SPropertyEditorNumeric, SSpinBox, SNumericEntryBox are generic now and can be parameterized by any numeric type.
+* Changed the icons and colors of the Viewport Transform toolbar.
+* Added a Content Browser content menu action to create a Slate Brush Asset from a Texture2D.
+* Added WYSIWYG SlateBrush preview to properties editor.
+* Content browser filters can now be removed by MMB-clicking on them.
* **UnrealDocTool**
- * 自動生成されるヘッダIDとブックマークの名前が小文字になって、「'_'」に代わって「'(' and ')'」を使用します。
-* **プラグイン**
- * プロジェクト プラグインのリストは、「Game.ini」ファイルから「Engine.ini」ファイルへ移動しました。
+ * Automatically generated header IDs and bookmark names are now lower case and with '(' and ')' replaced by '_'.
+* **Plugins**
+ * The list of project plug-ins was moved from Game.ini to Engine.ini
#### Blueprints
-* ブループリント マクロが、重複した変数名をチェックするようになりました。
-* 初めにコメントを非選択にせずに、広範囲にわたるブループリント ノードをコメント ボックスにアタッチできるようになりました。
-* [My Blueprint] から [Graph] へマクロをドラッグできるようになりました。
-* 新しいエレメントを追加する前に [MyBlueprint] 検索フィルタをリセットするコールが追加されました。新しいエレメントは一度作成されると表示されます。
-* Vector2D ブループリント グラフ アクションは、標準のベクタークラスから分離して Vector2D カテゴリへ移動しました。
-* カラーピッカーのアルファ セクションがブループリント グラフのカラーピン上で有効にされました。
-* セクション付近にコメントを作成する機能が、エディタのノード コンテクスト メニューに追加されました。
-* ソケットコンポーネント用の [Details] ビューは、正しくカテゴリを配置してブループリント エディタで常に表示されるように更新されました。
-* 変数をベースとしたノードに使用する変数を配置する機能が、ブループリント エディタのコンテキスト メニューに追加されました。
-* グラフの一般ノードカリングは、より正確性を増して、ノードの幅 / 高さを考慮するようになりました。
-* より大きく展開するためのクラスピッカー ダイアログが作成されて、デフォルトのクラス選択領域の折りたたみが可能になりました。
-* Blueprint 関数とイベントはより記述的な名前を使用し、フォーマット化されました。
-* タイトルが既に可視出来る場合、Blueprint ノードの名前を変更しても選択しているノードを中心に置きません。
+* Blueprint macros now check for duplicate variable names.
+* Encompassed blueprint nodes now attach to a comment box without having to first deselect the comment.
+* Macros can now be dragged from My Blueprint into a Graph.
+* Added a call to reset the MyBlueprint search filter before adding any new element, so the new element is visible once created.
+* The Vector2D blueprint graph actions were moved into the Vector2D category splitting it out from the standard vector class.
+* The Alpha section of the color picker has been enabled on blueprint graph color pins.
+* The ability to create a comment around selection has been added to the node context menu in the editors.
+* The Details view for the socket component was updated so the category is placed correctly and is always visible in the blueprint editor.
+* The ability to locate variable uses for any variable based node was added to the context menu in the blueprint editor.
+* The graphs general node culling was changed to be more accurate and take account of node widths/heights.
+* The class picker dialog has been made to expand to be larger and the default class selection area is now collapsable.
+* Blueprint functions and events now use more descriptive/better formatted names.
+* Blueprint node renaming now no longer centers the selected node if its title is already visible.
#### ゲームプレイとフレームワーク
-* USpringArmComponent の一部の挙動は、サブクラスでオーバーライドが簡単に出来るように複数の仮想メモリに分割されました。
-* フラッシュ時にファイル階層と比較しないために、 config の書き込みを有効にする新規のクラスフラグが追加されました。
-* DrawHUD 外部で使用した時の警告の代わりに、 HUD ドローコールから BlueprintProtected を削除しました。
-* FPostProcessSettings の多数のプロパティへ BlueprintType と BlueprintReadWrite が追加されました。
-* UPlayerInput::ExecBindings が DebugExecBindings へ名前変更されて、出荷ビルドからコンパイルされます。
-* UWorldFromContextGetter::GetWorldFromContextObject は、オブジェクトのクラスが渡された先が未対応、またはサポートしているオブジェクトが単に NULL の UWorld ポインタを返しているかを区別するために、 bool 型の参照変数を受け取ります。
-* AActor::CustomTimeDilation は全てのコンポーネントに渡される DeltaTime へ正しく適用されるようになりました。CustomTimeDilation を手動で適用しているコンポーネントは、これを 2 度適用するようになりました。
-* **UEngine 関数の変更**
- * GEngine->GetNetMode() の代わりに AActor::GetNetMode() もしくは UWorld::GetNetMode() を使用します
- * GEngine->GetNetDriver() の代わりに AActor::GetNetDriver() または UWorld::GetNetDriver() を使用します。
-* **他にも数多くの GEngine 関数が必須の UWorld を使用するようになりました。**
+* Split out some behavior of USpringArmComponent into multiple virtuals to make it easier to override in subclasses.
+* New class flag added to allow config writes to NOT compare against the file hierarchy when flushed.
+* Removed BlueprintProtected from HUD draw calls, in exchange for a warning when they are used outside of DrawHUD.
+* Added BlueprintType and BlueprintReadWrite to a number of properties on FPostProcessSettings.
+* UPlayerInput::ExecBindings have been renamed DebugExecBindings and will be compiled out of shipping builds.
+* UWorldFromContextGetter::GetWorldFromContextObject now takes a bool reference variable to distinguish between situations where the class of the Object passed in is unsupported and where the supported Object simply is returning a NULL UWorld pointer.
+* AActor::CustomTimeDilation is now properly applied to the DeltaTime passed to all Components.Any Component which was manually applying the CustomTimeDilation will now have it applied twice.
+* **Changes to UEngine functions**
+ * Use AActor::GetNetMode() or UWorld::GetNetMode() instead of GEngine->GetNetMode()
+ * Use AActor::GetNetDriver() or UWorld::GetNetDriver() instead of GEngine->GetNetDriver()
+* **Many other GEngine functions now take a required UWorld**
* GEngine->GetLocalPlayerIterator( GetWorld() );
* GEngine->GetGamePlayers( GetWorld() );
* GEngine->GetGamePlayers( GetWorld() );
* GEngine->GetGamePlayer( GetWorld(), PlayerIndex );
* GEngine->GetFirstGamePlayer( GetWorld() ) const;
-* Pathfollowing のデフォルトの動作が改善されました。最も重要なことに、デフォルト設定の「許容半径」は、現在も有効で以前使用されていた「0.0」の代わりに、 Agent の半径を使用するようになりました。
+* Pathfollowing's default behavior improvements.Most importantly default "acceptance radius" is now Agent's radius instead of previously used 0. 0 is still a valid value.
-#### Rendering
-* ライティングは全マップで再ビルドする必要があります。
-* 減少した LOD の拡張制限がより実用的になりました (一部のデフォルトは更新が必要かもしれません)。
+#### レンダリング
+* Lighting needs to be rebuilt for all maps.
+* Lowered LOD scalability restrictions to be more useful. (some defaults might need an update).
-#### Animation
-* 別の位相 ValidateAnimNodePostCompile を anim graph ノードに追加しました。このノードは、ノード (最終クラスに関係するノードのみ) が最終 CDO に対して何かしらの正当性を確認する際に、コンパイルの最後に呼ばれます。
-* transition pose evaluator ノードを配置するオプション表示をメニューから外して、誤ったグラフにうっかり配置された場合、削除が出来るようになりました (必要に応じて自動生成されます)。
-* トグル可能な anim ピンにオブジェクト参照のサポートが追加されました。
+#### アニメーション
+* Added another phase ValidateAnimNodePostCompile to anim graph nodes, which is called at the very end of compilation, in case nodes (only ones that contributed to the final class) want to validate something against the final CDO.
+* Prevented transition pose evaluator nodes from showing up as a placeable option in the menu and allowed them to be deleted if they were inadvertently placed in the wrong graph (they're autocreated where necessary).
+* Added support for object references on togglable anim pins.
-#### Core
-* ログ出力が UTC タグを使用するように変更されました。
- * ログ出力をパースする全てのツールは、この変更に注意してください。
- * 旧フォーマットは今もサポートされており、コマンドラインで「-logtimesincestart」を渡して使用します。
-* レプリケートしたパラメーターが変更しました。
- * 非 const 参照の TArrays は、結果のレプリケートが戻されていないことを示すために、 const 参照で渡されなくてはいけません。
- * FStrings は、値ではなく const 参照で渡されなくてはいけません。
-* UCLASS 宣言の「配置可能な」指定子は削除されました。
- * クラスはデフォルト設定で配置が可能になりました。
- * 派生クラスの配置を防ぐために、クラスへ「notplaceable」指定子を追加することができます。
- * 「abstract」のマークがついたクラスも配置不可ですが、その派生クラスの配置性には影響しません。
-* アーカイブ カスタム バージョンの明示的な登録が必要になりました。
- * 特定のクラスが Serialize 関数で Ar.CustomVer(Guid) を使用する場合、オブジェクトがカスタムバージョンに依存していることをアーカイブに伝達するために、 Ar.UsingCustomVersion(Guid) を最初に呼ばなくてはいけません。
- * Guid は、 FCustomVersionRegistration グローバル オブジェクトを通じて予め登録しなくてはいけません。
+#### コア
+* Log output has changed to using UTC tags.
+ * Any tools which parses log output needs to be aware of this change.
+ * The old format is still supported by passing -logtimesincestart at the command line.
+* Changes to replicated parameters.
+ * Non-const reference TArrays should be passed by const reference to indicate that the results are not replicated back.
+ * FStrings should be passed by const-reference, not value.
+* 'placeable' specifier on UCLASS declarations has been removed.
+ * Classes are now placeable by default.
+ * A class can have the 'notplaceable' specifier added it to stop it and its descendants being placeable.
+ * A class marked as 'abstract' is also non-placeable, but this doesn't affect the placeability of its descendants.
+* Explicit registration of archive custom versions is now needed.
+ * If a particular class wishes to use Ar.CustomVer(Guid) in its Serialize function, then it should make a Ar.UsingCustomVersion(Guid) call first to inform the archive that the object depends on that custom version.
+ * That Guid must have already been registered via an FCustomVersionRegistration global object.
+ For example:
- 例えば:
void MyObject::Serialize(FArchive& Ar)
{
@@ -437,356 +438,356 @@ QA_APPROVED_UE4_BUILD_MINIMUM
}
}
-* CustomVer 利用前に Ar.UsingCustomVersion が呼ばれない場合、アサートが生じます。
-* Num の増加時に、 TArray::SetNum はデフォルト設定のコンストラクタを使用するようになりました。
- * このコールを継続して使用するには、Types はデフォルト設定のコンストラクタを持たなければいけません。
- * 旧出力ゼロ化の動作は、新規の SetNumZeroed 関数で実行することができます。
-* FCrc::MemCrc、 FCrc::StrCrc と FCrc::StrCrcCaps は非推奨となりました。
- * 可能であれば FCrc::MemCrc32 を使用します。CRC32 アルゴリズムで一般的に得られる結果となります。
- * FCrc::MemCrc_DEPRECATED と FCrc::StrCrc_DEPRECATED は、ユーザーが前の結果に依存している場合に使用します。
- * FCrc::StrCrc32 は、今でも文字列に char タイプの独立した CRC を与えるため、必ずしも期待通りの結果ではありませんが、新規の文字列テーブルを使用します。
- * FCrc::StrCrcCaps(*Str) は FCrc::StrCrc_DEPRECATED(*Str.ToUpper()) に置き換えることができます。
-* AVolume は抽象クラスで作成されています。
- * マップ内部の既存ボリューム インスタンスは、ロード時に確実に失敗します。
- * インスタンスのクラスを変更するために、エディタの Convert 機能を利用して、非抽象クラス (例えばBlockingVolume) に変換しなくてはいけません
-* IncrediBuildの使用時は、XGEの64-ビットバージョンが利用可能であると予想されます(今も32ビットバージョンを使用しているユーザーはCL # 1892517を取り消してください)
-* LTCG は、出荷と Windows ターゲット テストでデフォルトで有効になりました。
- * 無効にするには、ビルド コマンド ラインへ「-noLTCG」を渡すか、「BuildConfiguration.bAllowLTCG=false」を設定します。
-* UObject C++ ヘッダは、「Classes」サブ ディレクトリに必要なくなりました!
- * Classes ディレクトリは必要なくなりましたが、上位互換性となります。
- * 「Classes」外部の UObject ヘッダが「*Classes.h」で生成されたグループ ヘッダに含まれることは決してありません。
- * このヘッダは常にユーザー自身で格納してください!(「*Classes.h」ファイルの非推奨化を進めています)
- *「Classes」または「Public」フォルダの UObject ヘッダは、プライベートな UObject クラスに依存できません。
- * モジュールの「*.generated.inl」ファイルを格納する前に、手動で UObject ヘッダを格納する必要がなくなりました。
- * 「Generated.inl」ファイルは、このファイルに依存している UObject ヘッダを自動的に含むようになりました。
- * プライベートのモジュール ソース ファイルは、「Private」フォルダ配下に配置する必要がなくなりました。
- * 「Public」フォルダ配下に位置しない限り、全てのソースは Private であると仮定されるようになりました。
- * つまり、ゲームソースを全て単一フォルダに格納することが可能です。
-* 「ObjectVersion.cpp」と「Version.h」ファイルは、他のビルド製品とPerforceへチェックインされなくなりました。「build.properties」ファイルのみが最新のエンジンバージョンで更新されます。
- * つまり、ローカルビルドの「GEngineVersion」は常に0に設定されます。機能することを確認しました。0設定で保存されたエンジンバージョンのパッケージは、エンジンに問題なく読み込まれ(この時ローディングコードから警告が出ます)、その他全てと互換性があると仮定されます(パッケージは最新のパッケージバージョンで保存されることに留意してください。ロード時にこのパッケージと比較してチェックされます)。
-* checkAtCompileTime と STRUCT_OFFSET が更新されました。
- * checkAtCompileTime は全てのプラットフォームに対して static_assert を使用します。
- * Clang により良い診断メッセージを提供し、より安定感のある標準サポートを活用します。
- * STRUCT_OFFSET は全てのプラットフォームに対して offsetof を使用します。
- * 可能な限り標準のサポートを使用します。
- * -Wno-invalid-offsetof は全ての GCC/Clang プラットフォームに与えられます。
- * non-POD タイプのエンジン全域で offsetof の使用と、実質的にこの動作に依存するためです。
+* A missing call to Ar.UsingCustomVersion before using CustomVer will cause an assert.
+* TArray::SetNum now uses the default constructor when Num is increasing.
+ * Types must have default constructors to continue to use this call.
+ * The old zeroing behavior can be achieved via the new SetNumZeroed function.
+* FCrc::MemCrc, FCrc::StrCrc and FCrc::StrCrcCaps have been deprecated.
+ * FCrc::MemCrc32 should be used if possible, as this give the results that would normally be expected from a CRC32 algorithm.
+ * FCrc::MemCrc_DEPRECATED and FCrc::StrCrc_DEPRECATED should be used if you are dependent on the old results.
+ * FCrc::StrCrc32 still gives a char-type-independent CRC for a string, and so doesn't necessarily give expected results, but it uses the new string tables.
+ * FCrc::StrCrcCaps(*Str) can be replaced with FCrc::StrCrc_DEPRECATED(*Str.ToUpper()).
+* AVolume has been made abstract.
+ * Existing Volume instances within maps will cause ensure-failures at load time.
+ * They should be converted to a non-abstract type (e.g. BlockingVolume) using the editor's Convert feature to change an instance's class.
+* When using IncrediBuild, the 64-bit version of XGE is expected to be available (back out CL # 1892517 if you are still using 32-bit)
+* LTCG is now enabled for shipping/test Windows targets by default.
+ * Pass "-noLTCG" to build command-line to disable it, or set BuildConfiguration.bAllowLTCG=false
+* UObject C++ headers no longer need to be in a "Classes" subdirectory!
+ * Classes directory is no longer needed, but we are backwards compatible.
+ * UObject headers outside of "Classes" are never included in *Classes.h generated group headers.
+ * Instead, you should always include these headers yourself!(We are starting to deprecate *Classes.h files)
+ * UObject headers in "Classes" or "Public" folders cannot depend on private UObject classes.
+ * You no longer need to include UObject headers manually before including a module's *.generated.inl file.
+ * Generated.inl files now auto-include their dependent UObject headers.
+ * Private module source files no longer need to be placed under a "Private" folder.
+ * Now, all source is assumed Private unless it's under a "Public" folder somewhere!
+ * This means you can have all of your game source in a single folder if you want.
+* ObjectVersion.cpp and Version.h will no longer be checked into P4 with other build products.Only build.properties will be updated with the latest engine version.
+ * This means that GEngineVersion in local builds will always be set to 0.I made sure this is going to work.Packages saved with 0 engine version can be loaded just fine by the engine (although with a warning from the loading code) and are assumed to be compatible with everything (note that we still save packages with the latest package version which we check against when loading).
+* Updates to checkAtCompileTime and STRUCT_OFFSET
+ * checkAtCompileTime uses static_assert on all platforms.
+ * Provides better diagnostic messages on clang and leverages standard support, which is more likely to be stable.
+ * STRUCT_OFFSET uses offsetof on all platforms.
+ * We should be using standard support when at all possible.
+ * -Wno-invalid-offsetof thrown on all gcc/clang platforms.
+ * Because we use offsetof on non-POD types all over the engine, and essentially rely on it working.
-#### Platforms
+#### プラットフォーム
* **iOS**
- * IPP協調設計機能(中間pemsの紛失)の修復をして、pemsが紛失した時のためにより詳細なメッセージを追加しました。
- * エンジン/ビルド/IOS/リソースから全てを取り込むためにアイコンディスカバリー機能を変更しました。ゲームは、必要時にいつでもオーバーライドが可能になりました。
- * iPhone5のアスペクト比が有効になりました!
- * 予想されるアイコン全てをエンジン/ビルド/IOS/リソースへ追加して、一致させるためにEngine/Build/IOS/UE4Game-Info.plistを更新しました。既存の名前は全て変更されました!
- * ゲームに「.plist」ファイルが無い場合、Engine/Build/IOS/UE4Game-Info.plistへフォールバックして、実行可能な名前をBundle識別子へ置きます。
-* Steam SDK はバージョン 1.26 へ更新しました。
-* クッカの PackagesToAlwaysCook デリゲートを FCookModificationDelegate と置き換えました (GameDelegates.h 参照)。
-* 「-onethread」を「-nothreading」へ名前変更しました (-singlethread はそのままです)。
+ * Repaired IPP codesigning capabilities (missing intermediate pems) and added a more informative error message in case the pems go missing again.
+ * Changed icon discovery to grab everything from Engine/Build/IOS/Resources, and the game can override whatever it needs.
+ * Enabled IPhone5 aspect ratio!
+ * Added all possible icons to Engine/Build/IOS/Resources and updated Engine/Build/IOS/UE4Game-Info.plist to match - ALL EXISTING WERE RENAMED!
+ * If a game doesn't have a .plist file, it will fall back to Engine/Build/IOS/UE4Game-Info.plist, putting the executable name into the Bundle identifier.
+* Steam SDK updated to v1.26
+* Replaced the cooker's PackagesToAlwaysCook delegate with FCookModificationDelegate (see GameDelegates.h).
+* Renamed -onethread to -nothreading (-singlethread remains the same).
## 今後の追加事項と継続事項
-#### Editor and Tools
-* サイクルごとの秒統計が「ue4stats」ファイルで正しく記録されるようになりました。別のマシーンでプロファイルを開いても、同じ番号が表示されるようになりました。
-* uprojectsは非エディタビルドで正しく読み込まれるようになりました。
-* Linuxでクラッシュする前にログがフラッシュされるようになりました。
-* アセット ディスカバリー時間が多少早くなりました。
-* 一部のビルド環境で問題の要因となっていた、深層部のパスの例外的に長い名前のプレースホルダ―クラスを削除しました。
-* アセット レジストリに上位クラス名のクエリー サポートを追加しました。いずれかの親クラスがロードされたか否かを示すリストが作成されました。
-* PREFETCH と PREFETCH_CONSOLE マクロを新規の platform 関数と置き換えました。FPlatformMisc::Prefetch.
-* Visual Studio のデバッグ ビジュアライザーが、モノシリック ビルドで FNames と機能するようになりました。
-* RecastのBuildThirdPartyLibはLinuxのビルドも可能になりました。
-* リダイレクタがロードされていないマップに修正中に参照された場合、エラーメッセージを表示して、参照しているマップを報告します。コード パッケージも同様です。
-* 非同期リキャスト navmesh ビルドは、ターゲットごとに基づいて有効または無効にすることができます。
-* クックのためにUATを使用時に、複数のクライアント/サーバーターゲットを指定できるようになりました。
-* アクタの Tick 関数は、破壊直後に登録削除されるようになりました。破壊されたアクタは RF_PendingKill を持っているため、いずれにせよティックしません。
-* 非従来型のP4クライアントルートを構成しました。
-* サーバーの自動入力と Perfoce ログインのユーザーネームを復活させました。
-* チュートリアルシステムにウィジェットのオーバーレイ表示を新規に追加しました。
-* 新しいアセットとフォルダがクラス フォルダに作成できないようにしました。
-* 空のプレビューメッシュパスがAutomationTest警告を出さないようにしました。
-* 無効のワークスペースが指定された時に、ソースコントロール ログインは正しく拒否されるようになりました。
-* 主要ウィンドウの z オーダーが通知に影響を受けないようにしました。
-* 他者によってチェックアウトされたアセットは、「Submit to Source Control」で正しく処理されるようになりました。
-* [depot->p4 workspace] から手動マッピングへの依存をなくしました (history & diff で問題を修正) 。
-* 可能な場合、移行ファイルはソース コントロールへ追加されるようになりました。
-* コンテンツ ブラウザの使用時に、ソース コントロールがファイル ステータスをスパムしないようにしました。
-* サブミットするファイルを正確にチェックするバックグラウンド タスクを追加しました。
-* ソース コントロール ログイン ダイアログをより利用しやすい表示にしました。
-* 内蔵パッケージに対して、コンテンツ ブラウザが SCC ステートの要求をしないようにしました。
-* スクロール時にサブミット ダイアログがサイズ変更をしないようにしました。
-* アクタ プロパティの「Use Selected」はサブメニューへ移動しました。
-* いつでも Perforce 操作の停止を有効にします。
-* **ワールド ブラウザ**
- * ワールド基点の移動は、物理アクタの移動にPhysX3.3関数を使用するようになりました。
- * ストリーミング レベルに LOD サポートを追加しました。
- * レベルタイルに[Details] パネルを追加しました。[Details] パネルが同様の機能性を提供するため、ストリーミング レベルのビューは削除されました。
- * ワールド フォルダを再スキャンしてワールド ブラウザのキャッシュされたデータを更新する「Refresh」コマンド (F5) を追加しました。
- * タイルのソート順序を定義するレベルタイルプロパティへZOrderを追加しました。
-* クラスのドラッグ時にコンテンツブラウザの「Move」、「Copy」メニューを表示しません。
-* ロード中のスクリーンメッセージにフリッカーが発生しなくなりました。
-* ワールド/ローカル座標ボタンにツールヒントが表示されるようになりました。
-* 再入力をチェックして円形がポーズにリンクしているかチェックします。
-* AddEvent が正確なアクタ ラベルを表示するようになりました。
-* ヘッダから FColorTheme 実装を移動させて、前回のチェックインのマージが原因で発生した不良タブを一掃しました。
-* 追加のデータはスタティックメッシュエディタでアイコン表示されるようになりました。
-* さまざまな細かい改善と微調整がテクスチャエディタのユーザビリティに追加されました。
-* 誤ったエディタモードが原因で発生するエラーは、その理由と表示方法を指定できるようになりました。
-* ベース マテリアルへリセットされた時に、 OnResetToDefaultClicked デリゲートが発行されるようになりました。
-* コマンドラインで「 -interactivetutorials」と一緒に起動されない限り、InteractiveTutorialsはnullです。
-* マップのライティングの再ビルドが必要な場合、マップはダーティとマークされなくなりました。
-* タブ表示する子がない時は、タブ表示を防ぎます。
-* スパムによるスタティックメッシュのスポーン時に、クラッシュを回避します。
-* 新規のコード プロジェクトの作成時にエディタが閉じなくなりました。
-* 平行して挿入するタブが見つからない場合、 InsertDocumentTab がタブをスポーンするようになりました。
-* エディタからソリューションを開くときに、確実に絶対パスを使用します。
-* 焦点を失った時に提案ボックスが非表示になります。
-* エミッターのカラー ピッカーはモーダルではなくなりました。
-* Color Theme がドロップダウン リストに適切なテキストを表示するようになりました。
-* 不具合のあるタブや ID がエディタをクラッシュすることはなくなりました。
-* ソース コントロール「エラー」が原因で「Convert メッシュ」がエラー フラグを表示することはなくなりました。
-* MessageLog はユーザーが表示した最初の入力、もしくは最後のログへデフォルト設定されます。
-* [Enter] キーを押した時点で Asset Picker で何も選択されていない場合、自動選択と単独または最初のアセットののアクティベート機能が追加されました。
-* フォルダパスがプラットフォームに対して有効にフォーマットされていることを確認するため、 [New Project] ウィザードが追加されました。
-* マテリアル選択:素早く入力するとフィルタリングが壊れてしまうため、bShouldNotifyNextAssetSyncフラグを削除しました。
-* [Choose Files to Save] クリック時の Asset Saving 通知がエラーによく似ていたので、Notification(通知) に変更しテキストが明確になるよう修正しました。
-* [Favorites] からレベルの削除は困難でした。お気に入りリストへの入力はレベル リストが開かれた時のみ追加/削除ができました。この必須条件を取り除いて Open/Removing オプションをサブメニューへ移動しました。また、一貫性にかけた内部のエントリ名のバグを修正しました。
-* Normal Map Texturesの自動再インポートは、DXT5n法線マップのDefer Compressionとcompatibilityモードの併用が原因で破損していました。圧縮されていないディファード法線マップに対しXGXR8が追加されました。
-* ウィンドウ管理:新規タブの作成時、またはウィンドウ配下の別のタブを選択して更新します。常に「"map - Unreal Editor"」のネーミングスキームを維持するマスター/ルートウィンドウでない限り、タブラベルのタイトルを変更します。
-* オートセーブ進捗ウィジェットに [Cancel] ボタンをオプションで追加しました。
-* コンテンツ ブラウザ:Shared または Private コレクションを有効にするテストが評価されるのは、コレクション コンテクスト メニュー (右クリック) の作成のみなので、 Shared または Private コレクションを作成することができます。
-* 複数回適用された平行移動、回転、スケーリングはデルタを使用しているため、アタッチされているグループ化されたアクタは正確に平行移動しませんでした。親アクタがグループ アクタで修正されないようにチェックを追加しました。
-* Factory からアクタを追加するために、レベル エディタ コンテキスト メニューを更新しました。アクタは Factory で bShowInEditorQuickMenu フラグを使用します。
-* クロス プロジェクトから移行したレベルのワールド設定が原因のクラッシュを、現行プロジェクトに新たなワールド設定を作成して回避しました。
-* レベル ブラウザのサブレベルの可視性の変更により、サブレベルの「umap」ファイルがダーティになりました。エディタ内部のレベルの可視性の変更のみを行っている場合、ダーティ フラグをリセットします。
-* 参照オブジェクトからコンテンツブラウザへコレクションを作成すると、指定パスにあるNullフォルダが要因となり、"u_pattern_syntax_error"の権限を持つコレクションが作成されていました。このパスの構成を訂正しました。
-* ヘッダのサブカテゴリの一部をより記述的にしました。
-* [Details] パネルに、可視のメニュー項目として「Expand All Categories」と 「Collapse All Categories」があります。
-* [F1] キーはアセット エディタ上でコンテキスト感受性の動作をするようになりました。
-* シーンアウトライナーのソートが可能になりました。
-* **スレート**
- * SComboBox と SComboButton は Slate ウィジェットスタイルを使用し、 FEditorStyle 依存ではなくなりました。
- * 必要に応じてタブをフラッシュできるようになりました。
-* PIE または SIE セッションが一時停止、再開、または停止された時にデリゲートの利用が可能になりました (既存の再生と停止に追加)。
-* 新規のアセットのネーミング時に無効なキャラクターに対して警告が表示されます。
-* 最後の自動保存から変更があった時のみに自動保存が実行されます。
-* アセット SCC とダーティステートを表示するためにコンテンツ ブラウザ カラムビューが更新されました。
-* 非モーダル カラー ピッカーが改善されました。
- * 元に戻す / やり直す操作が完全にサポートされました。
- * カラー プロパティの変更はオブジェクト上でインタラクティブにプレビューできます。
-* コアなスレートウィジェット全てから FEditorStyle を削除しました。
- * 進行中の作業ですが、いくつかのウィジェットクラスは作業が完了しています。
-* 以下の領域にエディタの使用状況を追跡する新規のエンジン分析が追加されました:
- * PIE(Play-in-editor)の使用量
- * ブループリントの作成(親クラス、タイプ、作成手法)
- * タブとウィンドウの使用の結合
- * レベルへポーンを直接追加
- * ブループリントコンテキストメニューの使用量
- * BSP(バイナリ空間分割)ブラシの使用量
-* SoundCue エディタの Result ノードを Output へ名前変更
-* SoundWave をダブルクリックしてプロパティを表示
-* カーブ エディタが前回選択したキーの位置を、新たに選択したキーに適用させないようにしました。
-* Sound Classes と Sound Mixes の潜在的に危険な組み合わせが作成された時に警告が表示されます。
-* 従来の接続の入力へ追加された Sound ノードが自動的に接続するようになりました。
-* ライブ更新が有効な時は、 Material Editor ノードはリアルタイムで更新されます。
-* スレート マテリアル エディタのパフォーマンスが向上しました。
-* Material Editor ノードが以前よりも圧縮されました。
-* マテリアル エディタへのドラッグ&ドロップ操作を取り消せるようになりました。
-* Material Result ノードは正確な入力を表示するようになりました。
-* Material ノードと Comment 位置の変更により、ユーザーは変更の適用を促されるようになりました。
-* 変更時に動的パラメータ名が更新されるようになりました。
-* Material Input ノードのグレーアウト表示されたピンのテキストもグレーアウト表示されるようになりました。
-* サウンドの再インポート時にカスタム設定が保持されます。
-* イタレーションするアクタの検索に TActorIterator は GetObjectsOfClass を使用します。
-* Allow Translucent Selection がデフォルトで使用できるようになりました (ユーザビリティ フィードバックに基づいて)。
-* デフォルトの template マップは (エディタで [File -> New] の選択時に利用可能) 以前よりも簡略化されました。
-* 国際管理化のために終了ロジックを追加しました。システムからメモリリークの誤検出がなくなりました。
-* 国際管理化システムは、常にゲームデータのロードをしなくなりました。
-* 非 Windows プラットフォームは、ローカライズされたフォーマット形式の文字列で、グレイヴ・アクセント (`) と アポストロフィ (' ) を適切にサポートします。
-* アセット機能から収集したローカリゼーションデータにより、コリジョンのレポートが改善しました。
-* Settings UI のナビゲーションメニューが改善しました。
+#### エディタとツール
+* The seconds per cycle stat is now properly being recorded in ue4stats files.Opening a profile on different machines now shows the same numbers.
+* uprojects are now properly loaded in non-editor builds.
+* The log is now flushed before a crash in Linux.
+* Asset discovery time should be slightly faster.
+* Removed a placeholder class with an exceptionally long name in a deep path which was causing build problems in some build environments.
+* Added support to query for ancestor class names in the asset registry.The list is formed whether or not any of the parent classes are loaded.
+* Replaced the PREFETCH and PREFETCH_CONSOLE macros with a new platform function:FPlatformMisc::Prefetch.
+* The visual studio debugging visualizer now works with FNames in monolithic builds.
+* BuildThirdPartyLib for Recast will now also build linux.
+* If a redirector is referenced by an unloaded map while it is being fixed up, the error message will now report which map is referencing it.Same for code packages.
+* Async recast navmesh building can now be enabled or disabled on a per-target basis.
+* You can now specify multiple client/server targets when using UAT to cook.
+* An actor's tick functions are now unregistered immediately upon destroy.Destroyed actors do not tick anyway because they have RF_PendingKill.
+* Accounted for unconventional P4 client roots (this prevented diffing & history from working)
+* Re-instated auto-population of server & username for Perforce login.
+* Added new widget overlay to tutorial system.
+* Prevented new assets & folders from being created in the Classes folder.
+* Prevented empty preview mesh paths from causing an AutomationTest warning.
+* Source control login now correctly denied when specifying an invalid workspace.
+* Prevented main window z-order from being affected by notifications.
+* Assets checked out by others are now correctly handled by "Submit to Source Control".
+* Stopped relying on manual mapping from depot->p4 workspace. (fixes issues with history & diff)
+* Migrating files now adds them to source control if possible.
+* Prevented source control from spamming file status when using content browser.
+* Added background task to properly check for files to submit.
+* Made the source control login dialog more friendly.
+* Prevented content browser from trying to request SCC state for built-in packages.
+* Prevented submit dialog from resizing when scrolling.
+* 'Use Selected' now moved to sub-menu for Actor properties.
+* Allowed cancellation of Perforce operations at any time.
+* **World Browser**
+ * World origin shifting now uses PhysX3.3 builtin function to shift physics actors.
+ * Added LOD support for a streaming levels.
+ * Added details panel for level tiles.Streaming levels view was removed, since details panel provides similar functionality.
+ * Added 'Refresh' command (F5) which rescans world folder and updates World Browser cached data.
+ * Added ZOrder to a level tile properties which defines tile sorting order.
+* Don't display content browser move/copy menu when dragging a class.
+* Loading screen message no longer flickers.
+* Tooltip for world/local coordinate button now appears.
+* Check if circular linked poses by checking against reentry.
+* AddEvent now displays the correct actor label.
+* Moved FColorTheme implemenation out of header, and cleaned up bad tabs caused by merge from previous checkin.
+* Additional Data now has icon in static mesh editor.
+* Various minor improvements and tweaks to the texture editor useability.
+* Errors that occur due to incorrect editor modes can now specify why and how they are displayed.
+* OnResetToDefaultClicked delegate now fires when resetting to base material.
+* InteractiveTutorials is null, unless also launching with -interactivetutorials on the commandline.
+* Map is no longer marked as dirty if it needs its lighting rebuilt.
+* Guard against tabbing when there's no child to tab to.
+* Prevent crash when spam spawning static meshesh.
+* Editor no longer closes when creating a new code project.
+* InsertDocumentTab now spawns a tab if it can't find the one to insert alongside.
+* Make sure we're using absolute paths when opening a solution from the editor.
+* Suggestion box now disappears on focus loss.
+* Emitter color picker is no longer modal.
+* Color Theme now displays appropriate text when in dropdown.
+* Bad tab/malformed ids no longer crash the editor.
+* 'Convert meshes' no longer flags error due source control "error."
+* MessageLog now either defaults to the first entry, or the last log the user viewed.
+* Added automatic selection and activation of sole or first asset if none is currently selected on pressing Enter to Asset Picker.
+* Added check to New Project wizard to make sure that the folder path is validly formatted for the platform.
+* Material Selection:Filtering broko when typing quickly so removed the bShouldNotifyNextAssetSync flag which seemed to exist only to cause it to automatically select an asset if it was still loading others.
+* The Asset Saving notification when clicking "Choose Files to Save" looked too much like an error, changed to Notification, and modified the text for clarity.
+* It was difficult to remove a level from Favorites.Entries in the favorite list could only be added/removed when the level list was open, removed that requirement and moved open/removing to a sub-menu, also fixed inconsistent internal entry naming bug.
+* Normal Map Textures automatically reimported were corrupted due to combined use of Defer Compression & compatibility mode DXT5n normal maps, added swizzled XGXR8 mode for uncompressed deferred normal maps.
+* Window Management:On creating a new tab, or otherwise updating it by selecting another tab under a window, change the title to that tabs label unless it's the master/root window which always retains the "map - Unreal Editor" naming scheme.
+* Add an optional Cancel button to the auto-saving progress widget.
+* Content Browser:Could create a Shared or Private collection because the test enabling shared or private collections was only being evaluated after the collections context menu (right-click) was being created.
+* Attached grouped actors did not translate properly becuase they were having deltas for translation, rotation & scaling applied multiple times.Added a check to prevent parented actors being modified by the group actor.
+* Updated the level editor context menu to add actors from factories which use the bShowInEditorQuickMenu flag on the factory.
+* Prevented a crash caused by cross-project migrated levels world settings not existing in the new project, by creating new world settings for it in the current project.
+* Changing the visibility of sub-levels from the level browser dirtied the sub-level umap files.Reset the dirty flag if all we're doing is changing the visibility of the level within the Editor.
+* Creating a collection from referenced objects in the content browser produced a collection entitled "u_pattern_syntax_error" due to a Null folder in the specified path so corrected the path construction.
+* Changed some of the heading sub-categories to be more descriptive.
+* Details panel now contains Expand All Categories / Collapse All Categories visibility menu options.
+* F1 now behaves context-sensitively on asset editors.
+* The scene outliner is now sortable.
+* **Slate**
+ * SComboBox and SComboButton now use a Slate Widget Style and are no longer dependent on FEditorStyle.
+ * Tabs can now flash when they want attention.
+* Delegates are now available for when a PIE or SIE session is paused, resumed, or stepped (in addition to the existing ones for start and stop).
+* You are now warned of invalid characters when naming a new asset.
+* The auto-save now only runs when things have changed since the last auto-save.
+* The Content Browser column view has been updated to display asset SCC and dirty states.
+* Improvements to non-modal color pickers.
+ * Undo/redo fully supported.
+ * Changes to color properties are previewed interactively on the object.
+* Removing FEditorStyle from all core slate widgets.
+ * This is still in progress but several widget classes have been completed.
+* New engine analytics to track editor usage in the following areas:
+ * Play-in-editor usage.
+ * Blueprint creation (parent class, type, creation method).
+ * Docking tab and window usage.
+ * Pawns added directly to levels.
+ * Blueprint context menu usage.
+ * BSP brush usage.
+* SoundCue Editor's 'Result' Node renamed to 'Output'.
+* Double clicking SoundWave will now display its properties.
+* Prevented Curve Editor from applying previously selected key's position to newly selected key.
+* Warning shown when creating potentially dangerous combinations of Sound Classes and Sound Mixes.
+* Sound Nodes added to the input of an existing connection will now auto connect.
+* Material Editor nodes now update in realtime when live update is enabled.
+* Performance of Slate Material Editor improved.
+* Material Editor nodes are now more compact.
+* Dragging and dropping into Material Editor can now be undone.
+* Material Result node now shows correct inputs.
+* Changes to Material Node and Comment positions now prompt the user to apply changes.
+* Dynamic Parameter names now update when changed.
+* Greyed out pins now have greyed out text on Material Input node.
+* Custom settings are retained when reimporting sounds.
+* TActorIterator now uses GetObjectsOfClass to find actors to iterate over.
+* "Allow Translucent Selection" now defaults to on (based on usability feedback).
+* Default "template" maps (available when using File -> New in editor) have been further simplified.
+* Added termination logic for internationalization.No longer see a false (meaningless) positive for memory leaks from the system.
+* Internationalization system no longer always loads game data.
+* Non-Windows platforms now handle graves and apostrophes (` and ') properly in localized formatting pattern strings.
+* Localization data gathering from assets features improved reporting of collisions.
+* Improved navigation menu in the Settings UI.
* **Play-In-Editor**
- * マルチプレイヤー PIE でスクリーン空間をより効率良く使用するために、ウィンドウ レイアウト アルゴリズムが改善されました。
+ * Improved window layout algorithm to use screen real estate more efficiently in multiplayer-PIE.
#### Blueprints
-* [My Blueprint] パネルでアイテムにマウスをかざした時、また Get ノードにマウスをかざすと変数のツールヒントが表示されます。
-* 入力配列ピンをドラッグ時に、Make Array ノードの追加がユーザーに提示されます。
-* 検索ワードにスペースを挿入することで [Find in Blueprint] 機能の検索問題が解消されました。
-* [MyBlueprint] ウィンドウで親グラフをダブルクリックしても、ウィンドウを折りたたんだり展開しません。
-* ブループリント グラフのナビゲーション方法を調整しました。
- * グラフパネルで関数またはマクロ グラフをダブルクリックすると、現在のタブを再利用する代わりに新規のタブが開きます (もしくは既に開いているインスタンスにフォーカスします)。
- * [Find Results] ウィンドウをダブルクリックすると、現在のタブを再利用する代わりに新規のタブが開きます (もしくは既に開いているインスタンスにフォーカスします)。
- * グラフパネルで折りたたみグラフをダブルクリックすると現在のタブが再利用されます。
-* ネイティブ バージョンのいくつかの Make/Break Struct ノードを非表示にします。
-* 親と子のブループリント間のタイムライン名、メンバ変数名、関数グラフ名が重複しないようにする対策を増やしました。
-* スケルタル メッシュからスケルトン、またテクスチャからマテリアルを作成すると、デフォルトで新規のアセットに固有名が与えられます。
-* 選択したアクタからブループリントを作成すると、ダイアログに名前を入力するオプションが与えられます。
-* 全てのコンポーネント クラスにツールヒントが追加されました。
-* ブループリント パレットに MakeとBreak の構造体ノードが追加されました。
-* 必要箇所でコメントが検索できるようにブループリントの検索機能が改善されました。
-* より望ましい結果を提供するために、ブループリント パレット / コンテキストを自動選択するコードを修正しました。
-* ブループリント コンテキスト メニューのキーボード処理を改善しました。
-* 検索ワードにスペースを挿入することで [Find in Blueprint] 機能の検索問題が解消されました。
-* ブループリント コンテキスト メニューに [open in new tab] を追加しました。
+* Variable tooltips will appear when mousing over the item in the My Blueprint panel and when mousing over "Get" nodes.
+* When dragging off an input array pin, user will be offered to add a "Make Array" node.
+* Find in Blueprint will no longer have issues searching due to spaces in the search term vs the results.
+* Double clicking on a parent graph in the MyBlueprint window will not collapse it or expand it.
+* Adjusted how the navigating Blueprint graphs.
+ * Double clicking on a function or macro graph in the graph panel will open a new tab (or focus on an already opened instance) instead of reusing the current tab.
+ * Double clicking in the Find Results window will open the graph in a new tab (or focus on an already opened instance) instead of reusing the current tab.
+ * Double clicking on a collapsed graph in the graph panel will reuse the current tab.
+* Hid a few Make/Break Struct nodes that had native versions.
+* Put in more protection to prevent duplicate timeline, member variable, and function graph names between parent and child Blueprints.
+* Creating skeletons from skeletal meshes and materials from textures will give the new asset a default unique name.
+* When creating a Blueprint from selected actors, the dialog gives the option of inputing a name.
+* Added tooltips to all component classes.
+* Added Make/Break for struct nodes to blueprint palette.
+* Improved blueprint search so comments are searched where possible.
+* Revised code that autoselects in blueprint palette/context menu to provide more desirable results.
+* Improved keyboard handling of blueprint context menu.
+* Find in Blueprint will no longer have issues searching due to spaces in the search term vs the results.
+* Add 'open in new tab' to My Blueprint context menu.
#### ゲームプレイとフレームワーク
-* ゲームフレームワーク エンジン クラスのコメントをクリーンアップしました。
-* ゲームフレームワーク エンジン クラスから廃止されたプロパティとメソッドが削除されました。
-* 廃止された UWorld プロパティの RealTimeToUnPause が削除されました。
-* 廃止された PlayerController プロパティの MaxResponseTime が削除されました。
-* 廃止された PlayerController メソッドの ConditionalPause() が削除されました。
-* PlayerState から廃止されたネットワーク統計関連の数多くのプロパティを削除しました。
-* HUD と HudSettings クラスから未使用の HUDCanvasScale プロパティを削除しました。
-* UEngineMessage から未使用の FailedSpawnMessage プロパティを削除しました。
-* GameMode から StreamingPauseIcon プロパティを削除しました。クライアントがこのプロパティの使用を試みるとクラッシュします。
-* GameModeとPlayerState から未使用の GameMessageClass プロパティを削除しました。
-* **入力システムの改善**
- * 入力デリゲートは、単一フレーム内部でキーが押された / リリースされた順序での実行が保証されるようになりました。
- * 単一フレーム内部で押下、リリース、そして再度押下された場合、入力デリゲートを単一フレーム内で複数回ディスパッチすることができます。
- * ペアの入力アクション (押下とリリースが結合したアクション) は、ダウンステートを管理するようになりました。複数キーがアクションと結合する場合、最初に押されたキーがアクションをキャプチャー、非キャプチャキーによって押下もしくはリリースされたイベントは、キャプチャされているキーがリリースされるまで無視されます。A と B がアクションにマッピングされている例は、押下デリゲートおよびリリース デリゲートの結合の両方の場合に存在します。
- * 例 1:
- * A が押下されてアクションをキャプチャして、押下デリゲートがディスパッチされます。
- * B が押下されて、押下デリゲートがディスパッチされないように A がキャプチャされます。
- * B がリリースされて、リリース デリゲートがディスパッチされないように B をキャプチャしません。
- * A がリリースされて、リリース デリゲートがディスパッチされるように A がキャプチャされます。
- * 例 2:
- * A が押下されてアクションをキャプチャして、押下デリゲートがディスパッチされます。
- * B が押下されて、押下デリゲートがディスパッチされないように A がキャプチャされます。
- * A がリリースされて、リリースされたデリゲートがディスパッチされるように A がキャプチャされます。
- * A が再度押下されて、 A がキャプチャして押下デリゲートがディスパッチがされるようにキャプチャはありません。
- * 前回のリリース デリゲートがディスパッチされたように、 A がリリースされます。
- * B がリリースされて、リリース デリゲートがディスパッチされないように B をキャプチャしません。
-* [Load Stream Level] と [Unload Stream Level] は、レベルブループリントのみに限らず、任意のブループリントから呼び出すことができます。
-* レベルのストリーミングに配置されたポーンのコントローラーはパーシスタント レベルではなく、ストリーミング レベルでスポーンされるようになりました。
-* BeginPlay 中の操作を可能にするため、HUD は BeginPlay の前に初期化されるようになりました。
-* **Oculus Riftの統合**
- * Oculus Rift のサポートに対して、いくつかの改善とバグ修正がされました。ステレオ スコピック ビューで以前レンダリングができなかった特定のポストプロセスとスクリーン空間エフェクトに対する修正が含まれています。
-* 全ての新規のゲーム テンプレート プロジェクトのソース ファイル レイアウトを簡略化しました。
-* コードベースの「SampleGames」ディレクトリテストとして、Platformergameを「Samples」へ移動しました。
- * メインディレクトリから「Samples」配下の「Games」サブディレクトリへ、全てのコードベースのゲーム例の移動に取り組んでいきます。「Games」は現在の「SampleGames」フォルダを名前変更したフォルダです。(例:現時点では //depot/UE4/PlatformerGame/ ? //depot/UE4/Samples/SampleGames/PlatformerGame/ ) (最終的なフォルダ位置は恐らく次のようになります。//depot/UE4/Samples/Games/PlatformerGame/)
-* RPC Client/Server 関数から値を返すと、コンパイルエラーとして検知されるようになりました。
-* **コンポーネント移動の最適化**
- * 度重なる MoveComponent の呼び出しは、 FScopedMovementUpdate() オブジェクト内に MoveComponent コールをカプセル化するため、移動シーケンスがコミットされるまで大部分の動作を保留にします。
- * スコープ内の移動は、移動がコミットされるまで (スコープが文脈を離れた時に発生) UpdateBounds()、OnUpdateTransform()、 UpdatePhysicsVolume()、 UpdateChildTransforms() などの更新を回避します。
- * 大量のスコープの更新がサポートされています。最終スコープが終了まで移動はコミットされません。
- * 現在の移動スコープは元の状態に戻すことができます。つまり、スコープ開始時に位置は元の位置へ修復されます。
-* **CharacterMovementComponent の最適化**
- * UCharacterMovementComponent で実行される移動に対してスコープ内の移動更新を有効にしました。キャラクター移動のパフォーマンスがほとんどのケースで 2 倍から 3 倍に向上しました。
- * 傾斜に沿った移動にもはや StepUp() を使用しませんが、その代りにサーフェスと平行に移動します。所要スイープの数が削減されました。実用的な場面において、傾斜は階段に推奨されるコンテンツ ソリューションです。
-* **CharacterMovementComponent の改善**
- * StepUp() の機能性により一貫性が増しました。
- * フロアチェックの観点から、シミュレートした移動が実際の移動とさらに一致するようになりました。
- * シミュレートした移動は、歩行可能な傾斜を垂直なバリアとして処理せずに、スムーズにスライドするようになりました。
- * ベロシティは即座に最高速度にクランプせずに、全移動モード (外力から) で最高ベロシティを上回るようになりました。ベロシティが最高速度を上回った時点で、摩擦とブレーキが適用されます。
- * 非水平面上の地上移動をあたかも水平面上のような移動を維持するベロシティ、またはサーフェスに対して平行移動を維持するベロシティをコントロールするパラメータを追加しました。
-* BP blend ノードを使用時にテキストが正しくトリム (装飾) されるようになりました。
-* デフォルト設定のボーン アタッチメント座標空間をワールドからローカルへ変更しました。
-* アタッチされていないパーティクルのスポーンをサポートするためにパーティクル anim notify UAsset を修正しました。
-* PHat のウィジェットは編集後に消滅することはなくなりました。
-* アタッチポイントの編集時に、通知がドロップダウン リストをサポートするようになりました。
-* ペルソナで保存すると、修正されたアセットのみが保存されるようになりました。
-* Kismet InitとUpdateAnim イベントにツール ヒントが設定されました。
-* 通知によるカスタム通知の削除を有効にするため、メニュー エントリを新たに追加しました。
-* Behavior Trees コアとツールは以前として WIP に位置します。
-* アニメーション システムの改善
- * 物理アニメーション:BlueprintCallable Physics Weight 関数 SetPhysicsWeight/AccumulatePhysicsWeight を追加しました。
- * BlendSpace ノードは、ピン経由で Position と Looping の設定を有効にします。
- * IK ノードは、エフェクタとジョイント位置を表示します。
-* 物理:ラグドール処理を改善するためにデフォルト設定が微調整されました。
-* 最適化:物理 / ティックを無効にすることによりデディケイテッド サーバーの最適化しました。
+* Comment clean up for game framework engine classes.
+* Removed obsolete properties and methods from game framework engine classes.
+* Removed obsolete UWorld property RealTimeToUnPause.
+* Removed obsolete PlayerController property MaxResponseTime.
+* Removed obsolete PlayerController method ConditionalPause().
+* Removed a bunch of obsolete networking stats related properties from PlayerState.
+* Removed unused HUDCanvasScale property from HUD and HudSettings classes.
+* Removed unused FailedSpawnMessage property from UEngineMessage.
+* Removed StreamingPauseIcon property from GameMode.Wrong place for it- client will crash if it tries to use it.
+* Removed unused GameMessageClass properties from GameMode and PlayerState.
+* **Input system improvements**
+ * Input delegates are now guaranteed to execute in the order the keys were pressed/released when occurring within a single frame.
+ * An input delegate can now be dispatched multiple times in a single frame if it is pressed and release and re-pressed within a single frame.
+ * Paired input actions (these are actions for which both a pressed and released are bound) now manage a down state such that if multiple keys are bound to that action the first one pressed captures it and any press or release events by non-capturing keys will be ignored until the capturing key is released.So a few examples where A and B are mapped to an action that has both a pressed and released delegate bound.
+ * Example 1:
+ * A is pressed and captures the action, pressed delegate IS dispatched.
+ * B is pressed, A has capture so the pressed delegate IS NOT dispatched.
+ * B is released, B did not have capture so the released delegate IS NOT dispatched.
+ * A is released, A did have capture so the released delegate IS dispatched.
+ * Example 2:
+ * A is pressed and captures the action, pressed delegate IS dispatched.
+ * B is pressed, A has capture so the pressed delegate IS NOT dispatched.
+ * A is released, A has capture so the released delegate IS dispatched.
+ * A is pressed again, there is no capture so A captures and the pressed delegate IS dispatched.
+ * A is released, as previously released delegate IS dispatched
+ * B is released, B did not have capture so the released delegate IS NOT dispatched.
+* Load Stream Level and Unload Stream Level can be called from any blueprint, not just level blueprint.
+* The Controller for a Pawn placed in a streamed in level will now be spawned in the streamed level, not the persistent level.
+* HUD is now initialized before BeginPlay so as to be available for manipulation during BeginPlay.
+* **Oculus Rift Integration**
+ * There have been several improvements and bug fixes to Oculus Rift support, including fixes to certain post process and screen-space effects that previously did not render when in stereoscopic view.
+* All new game template projects now have a simplified source file layout.
+* Moving Platformergame into Samples as a code-based SampleGames directory test.
+ * We'll make an effort to move all code-based example games from the main directory down into a new Games subdirectory under Samples.Games will be the current SampleGames folder renamed. (e.g. CURRENTLY //depot/UE4/PlatformerGame/ ? //depot/UE4/Samples/SampleGames/PlatformerGame/ ) (The final location being something like //depot/UE4/Samples/Games/PlatformerGame/)
+* Trying to return a value from a RPC Client/Server function is now detected as a compile error.
+* **Component movement optimizations**
+ * Repeated calls to MoveComponent can defer most of the work until the sequence of moves is committed, by encapsulating the MoveComponent calls within a FScopedMovementUpdate() object.
+ * Moves within this scope will avoid updates such as UpdateBounds(), OnUpdateTransform(), UpdatePhysicsVolume(), UpdateChildTransforms() etc, until the move is committed (which happens when the Scope goes out of context).
+ * A stack of scoped updates is supported, and the move is not committed until the final scope is finished.
+ * The current scope of moves can be reverted, which will restore the position to the initial position at the start of that scope.
+* **CharacterMovementComponent optimizations**
+ * Scoped movement updates are enabled for movement performed by UCharacterMovementComponent, for a 2x to 3x performance increase in character movement in most cases.
+ * Movement along ramps no longer uses the StepUp() function, but moves parallel to the surface instead, reducing the number of sweeps required.Ramps are the preferred content solution for stairs where practical.
+* **CharacterMovementComponent improvements**
+ * StepUp() functionality is now more consistent
+ * Simulated movement is more in line with actual movement in terms of floor checks.
+ * Simulated movement now slides smoothly up walkable ramps instead of treating them as vertical barriers.
+ * Allow velocity to exceed max velocity in all movement modes (from external forces), rather than clamping immediately to the max velocity.Friction and braking are now applied when velocity exceeds the max.
+ * Added param to control whether ground movement on non-horizontal surfaces maintains the velocity as if it was horizontal, or whether velocity is maintained parallel to the surface.
+* Text is now correctly trimmed when using BP blend nodes.
+* Changed default bone attachment coord space to local from world.
+* Modified the particle anim notify UAsset to support non-attached particle spawning.
+* Widget in PHat no longer disappears after editing.
+* Notifies now support a dropdown list when editing the attach point.
+* Saving in Persona now only attempts to save modified assets.
+* Kismet Init and UpdateAnim events now have tool tips.
+* Added a new menu entry to manage notifies to allow deletion of custom notifies.
+* Behavior Trees core and tools are still WIP.
+* Animation System Improvement
+ * Physics Animation:Added BlueprintCallable Physics Weight functions SetPhysicsWeight/AccumulatePhysicsWeight
+ * BlendSpace Node allows to set Position/Looping via Pin.
+ * IK node displays effector/joint location.
+* Physics:Default setting has been tweaked to improve ragdoll.
+* Optimization:Dedicated server optimization by disabling physics/tick.
-#### Rendering
-* HardwareSurvey へ GPUIndex を追加しました (高速設定のため信頼下限で簡単実行)。
-* スペキュラを切り離すために、アルファシーンカラーのアルファ チャンネルを利用して実験的なスクリーン空間のサブサーフェススキャッタリングを採用しました。大部分のレンダリング パスには最少限のコストが発生しますが、32 ビット フォーマットの仕様時は、実験的なスクリーン空間のサブサーフェス スキャッタリングを有効にしません。
-* cvar が拡張オプションとして使用できる場合、ECVF_Scalability がドキュメントに追加されました。
-* r.TonemapperQuality スケーラビリティを追加しました (高スペックのためにノイズをカラー量子化に対抗させるため)
-* RT と GT で使用時に、パフォーマンスの向上とスレッドセーフのために型付のコンソール変数を追加しました。
-* テキストをレンダリングするアクタに、簡単選択のためにアンカー スプライトが追加されました。
-* [Exposure] メニュー オプションを整理しました。ポストプロセスの露出コントロールは、「Auto Exposure」配下に名前変更および再グループ化されました。
-* エディタは、中間ではなく精度の高いモードで起動するようになりました。
-* 「r.SceneRenderTargetResizeMethod」を追加しました。
- * シーンのレンダー ターゲットのメモリー使用法をコントロールします。
-* デフォルト テクスチャが選択されたテクスチャを含めた material expression ノードを作成しています。
-* UIBlur レンダリングを最適化しました。
- * リクエストされたセクションのみをレンダリングします (全スクリーンの代わりに)。
-* 迅速なアクセスのために、大部分の CVars を新規の特定タイプのフォーマットへ移動しました。
+#### レンダリング
+* Added GPUIndex to HardwareSurvey (quick run with lower confidence for faster startup).
+* Experimental screen space subsurface scattering using alpha scene color alpha channel to separate out specular, very minor cost for most passes and if using a 32bit format we don't have it enabled.
+* Added ECVF_Scalability to document if a cvar can be used as scalability option.
+* Added scalability r.TonemapperQuality (noise to fight color quantization only for higher specs).
+* Added typed console variable for better performance and thread safety when using in RT and GT.
+* Text render actors now have an anchor sprite for easy selection.
+* Exposure menu options have been tidied up.Post process exposure controls have been renamed and regrouped under "Auto Exposure".
+* The editor now starts up in high detail mode, not medium.
+* Added r.SceneRenderTargetResizeMethod
+ * Controls memory usage technique for scene render targets.
+* Creating material expression nodes which include textures now have the default texture selected.
+* Optimized UIBlur rendering.
+ * Renders only the sections requested (instead of whole screen).
+* Moved most CVars to a new type specific format, affording much faster access.
-#### Animation
-* ユーザーがスケルトンの代わりにアセットをメッシュソケットへドロップしメッシュへアタッチするとペルソナがこれを検知します。
-* 全ての Skeletal Control と Blend Pose Blueprint ノードに記述的なツールヒントが追加されました。
-* PhAT でシミュレーション中、[Ctrl-右マウス] 操作でオブジェクトとのインタラクションが可能なことを示すがオンスクリーンメッセージで表示されます。
-* 未使用なコードは、skeleton compression 関数から削除されました。
+#### アニメーション
+* Persona now detects if you drop an asset onto a mesh socket and attaches to the mesh, rather than the skeleton.
+* Descriptive tooltips added for all Skeletal Control and Blend Pose Blueprint nodes.
+* When simulating in PhAT, an onscreen message now tells the user they can use Ctrl-RightMouse to interact with objects.
+* Unused code removed from skeleton compression functions.
-#### Core
-* エンジン バージョンに基づくように、バイナリ ファイルのバージョン付スキームを修正しました。
-* #プラグマ領域などに接触した際に拒絶しないように、 UnrealHeader ツールは、認識しない全ての# プラグマを無視するようになりました。
-* HeaderGroups は徐々に機能から削除される方向に進んでいます。 headergroups の継続的な使用は中止しなくてはいけません。
-* **ビルドシステム**
- * bPrintPerformanceInfo 診断変数を UnrealBuildTool へ新たに追加しました。
-* ULevel へ AssetUserData サポートを追加しました (カスタムペイロードと一緒にレベルを拡張するプラグインを有効にしました)。
-* C++ コードの Hot Reload の信頼性がより高まりました。
+#### コア
+* Modified the binary file versioning scheme so that it is based on the engine version.
+* UnrealHeaderTool now ignores all unrecognized #pragmas, so it won't baulk when encountering things like #pragma region.
+* HeaderGroups are slowly being removed in a move towards removing the feature; the on-going use of headergroups should stop.
+* **Build System**
+ * Added new 'bPrintPerformanceInfo' diagnostic variable to UnrealBuildTool.
+* Added AssetUserData support to ULevel (allows plugins to extend Levels with their custom payloads).
+* "Hot Reload" of C++ code has been improved to be more reliable.
-#### Platforms
-* Linuxサポートを改善しました(正しいコールバックを取得するためDWARFがパースするようになりました。プラットフォームの抽象レイヤーはプロセス管理をカバーするように拡張されました。HTTPモジュールの追加機能)
-* 全 [Editor] ウィンドウが、Mac OS X の [Dock] メニューにリストされるようにしました。
-* Mac OS X Mavericks の Space でディスプレイごとのマルチモニタ モードでセカンダリ モニタ上にエディタ ウィンドウを配置した時に、エディタ ウィンドウが消滅しないようにしました。
-* スナップとハイパーアクセラレーションを削減するために、一部の [Editor] モードでマウスドラッグ処理を改善しました。
-* Mac OS X 上でダブルクリック操作で Unreal プロジェクトを開くサポートを追加しました。
-* Subversion の Xcode のコピーを利用して、 Mac OS X に対応する Subversion のサポートを有効にしました。
-* マチネにムービーファイルを作成するために Mac OS X サポートを実装しました。
-* 別の実装のようなサウンドとなるように、Mac OS X の CoreAudio reverb を微調整しました。
-* Direct3D バージョンに従って、スレートにスタンドアローンの OpenGL レンダラーを導入しました。
-* シミュレーターに対する早期サポート、次の QA ビルドによりこれらの切り替えが簡単になります。
+#### プラットフォーム
+* Improved Linux support (DWARF is now parsed to get proper callstacks, platform abstraction layer extended to cover process management, HTTP module enhancements).
+* Made sure all Editor windows are listed in the Dock menu on Mac OS X.
+* Stopped Editor windows disappearing when placed on a secondary monitor in Mac OS X Mavericks new Space per-display multi-monitor mode.
+* Improvements to mouse drag handling in some Editor modes to reduce snapping & hyper-acceleration.
+* Added support for opening Unreal Projects by double-clicking them on Mac OS X.
+* Enabled Subversion support for Mac OS X, using Xcode's copy of Subversion.
+* Implemented Mac OS X support for creating movie files in Matinee.
+* Tweaked CoreAudio reverb on Mac OS X to sound more like the other implementations.
+* Brought the standalone OpenGL renderer for Slate into line with the Direct3D version.
+* Early support for simulator, next QA build after this will make it easy to switch between both.
#### Networking
-* セキュリティの改善
-* Lifetime プロパティ
-* レプリケーション パフォーマンス
+* Security improvements
+* Lifetime properties
+* Replication performance
-#### Online
-* オンラインのビーコンコードの安定性が向上しました。
-* もはや必要がなくなってもビーコンアクタは破壊されませんでした。
-* ビーコン コミュニケーションが潜在的に無限のアクタをスポーンする弱点を修正しました。
-* オンラインのセッション API の安全性が向上しました。
-* 「ending/ended」ステートと差別化するために、セッション API に「Destroying」ステートが追加されました。
-* 一般的なオンライン非同期タスクをクリーンアップしました (templatized functions / code reuse)。
-* オンライン インターフェースの全シェアードポインタがスレッドセーフになりました。
-* LAN による Steam への接続が正しく機能するようになりました。
-* 既存の設定キーを所有する冗長したオンライン検索キーを削除しました。
-* FOnlineKeyValuePairs データにネットワーク バイ トオーダー シリアライズ サポートを追加しました。
+#### オンライン
+* Stability improvements to the online beacons code.
+* Beacon actors weren't destroyed when no longer needed.
+* Fixed potential exploit where beacon communication could spawn infinite actors.
+* Stability improvements to the online sessions API.
+* Sessions API now includes a "Destroying" state to differentiate itself from ending/ended states.
+* General online async task cleanup (templatized functions / code reuse).
+* All online interface shared pointers are now thread safe.
+* Steam with LAN should now work properly.
+* Removed redundant online search keys that have existing online setting keys.
+* Added network byte order serialization support for FOnlineKeyValuePairs data.
* Mcp OSS
- * mcp アカウントマッピングテストを追加しました。
- * "QUERYMAPPINGS " 経由の exec
- * Mcp コンフィグを組み込みソースファイルへリファクタリングしました。
- * 開発に「defaultengine.ini」ファイルの ini 値をまだ使用することも出来ます。
- * ゲームはコールバックデリゲートを使用してコンフィギュレーションをオーバーライドすることができます。
+ * Added mcp account mapping tests.
+ * Exec via "QUERYMAPPINGS "
+ * Refactored Mcp configs into embedded source files.
+ * Can also still use ini values in defaultengine.ini for development.
+ * Games can override configurations using a callback delegate.
* Http
-* 要求された completion デリゲートがトリガーされた後に http request ポインタが破壊される問題を修正しました。
- * teh completion デリゲートから同リクエストを繰り返し再利用出来ないことによる、http リクエストのチェーンの破損がありました。
+* Fixed http request pointer being destroyed after request completion delegate was triggered.
+ * This had broken "chaining" of http requests by not being able to re-use the same request over and over from teh completion delegate.
## 既知の問題
-* パフォーマンスキャプチャテストに表示される警告
-* インポートした「.APB」被破壊性メッシュをフラクチャ (破砕) すると、期待以上の数のフラクチャが発生します。
-* FOLIAGE (フォリッジ):可視化出来るブラシはありません。
-* ウィジェットでスケーリングすると 0 で停止してこの値に留まります。
-* ELEMENTAL(エレメンタル):断崖のマテリアルが黒で表示されます。
+* Warnings on Performance Capture test.
+* Fracturing an imported .APB destructible mesh causes more than expected number of fractures.
+* FOLIAGE:No visible brush.
+* Scaling with the widget stops and sticks at zero.
+* ELEMENTAL:Materials on cliff are showing up as black.
* Error Failed import:EdGraph /Engine/EditorBlueprintResources/StandardMacros.StandardMacros:Do N
-* PLATFORMERGAME:プレイヤーがゲームの途中に差し掛かると、 2 番目のエレベーターがジャンプします。
-* QAGAME:CRASH:「TraceTest.umap」を開きます。
-* SHOOTERGAME:Bot AIが原因で、敵はある期間中に武器を発砲することなく逃げ回ったり静止することができます。
-* SHOOTERGAME:ENSURE:botsと共にマッチを開始します。
-* XboxOne:全てのTextRenderActorsにアーティファクトが生じています。
-* ROCKET:Mac:Xcode:「Game.app」ファイルを起動することができません。
-* ROCKET:Mac:CONTENT EXAMPLES:Blueprint_HUD上のマップの外側にスポーンします。
+* PLATFORMERGAME:2nd elevator jumps when player is halfway through it.
+* QAGAME:CRASH:Opening TraceTest.umap
+* SHOOTERGAME:Bot AI is causing enemies to run around without firing or stand still for periods of time.
+* SHOOTERGAME:ENSURE:Starting a match with bots.
+* XboxOne:All TextRenderActors are artifacting.
+* ROCKET:Mac:Xcode:Unable to launch Game.app
+* ROCKET:Mac:CONTENT EXAMPLES:Spawn outside map on Blueprint_HUD.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Dec/ReleaseNotesDecember2013.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Dec/ReleaseNotesDecember2013.KOR.udn
index 48027e475978..5aa9b9885fd7 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Dec/ReleaseNotesDecember2013.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Dec/ReleaseNotesDecember2013.KOR.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Title: December 2013 Release Notes
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-3
과거 빌드에 대한 번역문은 제공하지 않습니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/July/ReleaseNotesJuly2013.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/July/ReleaseNotesJuly2013.JPN.udn
index 1dc680582883..575f4b3f6dc2 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/July/ReleaseNotesJuly2013.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/July/ReleaseNotesJuly2013.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:2615122
+INTSourceChangelist:3367470
Title:2013 年 7 月リリースノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-7
[TOC(start:2 end:2)]
@@ -16,7 +17,7 @@ Template:ReleaseNotes.html
| **ラベル** | QA_APPROVED_UE4_BUILD_2013_07 |
| **チェンジリスト #** | 1735924 |
| **VISUAL STUDIO VERSION** | Microsoft Visual Studio 2010 version 10.0.40219.1 SP1 Rel |
-| **DIRECTX** | 2010年6月 |
+| **DIRECTX** | June 2010 |
[/REGION]
## 重要情報
@@ -27,7 +28,7 @@ Template:ReleaseNotes.html
* 周知のバグ: [UE4 Outstanding Bugs July 2013](UE4_Bugs_2013_July.xlsx)
-## 主な新機能
+## 主要な新機能
####エディタ ツール
* **プラグイン エディタ**
@@ -59,7 +60,7 @@ Template:ReleaseNotes.html
####ブループリント
* ブループリントが何も値を返さない関数を呼び出した場合、呼び出しが無効のターゲットであれば 'Access None' ログが生成されなくなりました。
-* ブループリントのデバッグ処理が改善されました (実行シーケンスがデバッグ可能になり、非純粋関数のブレークポイントで再発したバグが修正されました)。
+* ブループリントのデバッグ処理が改善されました (実行シーケンスがデバッグ可能になり、 非純粋関数のブレークポイントで再発したバグが修正されました)。
* ブループリントの親の変更をすると、ブループリントから新たに警告が出されるようになりました。
* Level ブループリントまたはアクタのブループリントからの参照状態を表示してユーザーが対処できるように、アクタの削除時のチェックを追加しました。
* グラフの種類を区別してレンダリングを簡素化するために、ブループリント エディタにアイコンが追加されました。
@@ -142,7 +143,7 @@ Template:ReleaseNotes.html
* デフォルトの FFastVRAMAllocator クラスを追加しました (デフォルト状態では何もしません)。
-####レンダリング
+#### レンダリング
* プリミティブのユニフォーム バッファに、ローカル空間領域が含まれるようになりました。
* マテリアル システムがローカル空間領域へアクセスできるように、 **ObjectLocalBounds** エンジン マテリアル関数を追加しました。
* **Alpha** の新しい Texture 圧縮タイプを追加しました。(単一チャンネルです。ガンマ補正ではありません。)
@@ -158,7 +159,7 @@ Template:ReleaseNotes.html
####アニメーション / ペルソナ
-* Animation ブループリント、 モンタージュ、 ブレンドスペース、AnimOffset アセットを、コンテンツ ブラウザのコンテクストメニューを使って、スケルタルメッシュから直接作成できるようになりました。
+* Animation ブループリント、 モンタージュ、 ブレンドスペース、AnimOffset アセットを、コンテンツ ブラウザのコンテキストメニューを使って、スケルタルメッシュから直接作成できるようになりました。
* AnimGraph で Export to Animation 機能がサポートされるようになりました。
* 現在の anim graph をアニメーションへエクスポートできます (下体 / 上体の分割またはスプリングの場合に便利です)。
* スタティック メッシュ エディタでソケットを複製することができます。
@@ -171,287 +172,287 @@ Template:ReleaseNotes.html
##アップグレード ノート
####ブループリント
-* ブループリントの継承 (ブループリントのブループリント) が正式に有効になりました!ブループリントの新規作成時にクラスブラウザで親クラスを選択するか、コンテンツ ブラウザでブループリントをクリックするか、[Create child of this blueprint...] を選択することで、ブループリントのブループリントを作成することができるようになりました。
-* ブループリントが TWeakObjectPtrs を適切にサポートするようになり、それらをパラメータとして使っている UFUNCTIONS を安全に実行できるようになりました。
-* リファレンス変数でブループリントを設定できるようにしました。値を内部的に手書きのコードで操作する必要のあるパラメータをリファレンスでパスする関数に便利です。
-* Creating ブループリントのアセットツリーにスクロールバーを追加しました。
-* VimBlueprint を AnimBlueprint に、 VimInstance を AnimInstance に名前変更しました。変数名 / コメントをアップデートして、"Vim" という単語の削除を反映しました。
+* Blueprint inheritance (blueprints of blueprints) has been officially enabled!You will now be able to create a blueprint of a blueprint, either by selecting the parent class in the class browser when creating a new blueprint, or by right clicking on a blueprint in the Content Browser, and selecting "Create child of this blueprint..."
+* Blueprints now properly support TWeakObjectPtrs, and UFUNCTIONS that use them as parameters are now safe for execution
+* Blueprints can now set by-reference variables.This is useful for functions that pass parameters by reference that need to manually manipulate the value of those parameters internally
+* Scrollbar added to the asset tree for Creating Blueprints
+* Renamed VimBlueprint to AnimBlueprint and VimInstance to AnimInstance.Updated variable names/comments to reflect removal of word "Vim"
#### サウンド
-* 新しい Sound クラス エディタを作成しました - すべての SoundClass の親が必ず 1 つになるように、すべての SoundClass を取り込んで再度保存することをお勧めします。
- * 複数の親を持つ SoundClass が取り込まれると、強制的に親を 1 つにする前に、ログの警告が生成されます。
- * 親はアルファベット順に処理されて希望と違ってしまう場合があるので、この警告を使って SoundClass の親が希望通りになっていることを確認します。
- * 新しいエディタは SoundClass の位置を保存しません。エディタが開かれるたびに、自動的に調整されます。
-* SoundCue アクタに Find in Content Browser オプションを付けました。
+* Created new Sound Class editor - it's advised that all SoundClasses are loaded and re-saved to ensure that all SoundClasses will only have a single parent
+ * Log Warnings are generated for any loaded SoundClasses that have multiple parents, before they are forced to have a single parent
+ * Use these warnings to make sure that SoundClasses have the desired parent, as they will just be processed in alphabetical order and may not be what you expect
+ * The new editor does not save the positioning of SoundClasses, they are arranged automatically every time one is opened in the editor
+* SoundCue actor now has Find in Content Browser option
####コア
-* FString をリファクタリングしました。
-* FString が TArray から継承されなくなりました。
-* `InStr` を `Find()` に変更し、 `Contains()` を追加しました ( **注記:パラメータとそのデフォルトを変更しました!** )
-* Split 関数のパラメータを変更しました。
-* EndsWith、StartsWith、Replace、ReplaceInline、MatchesWildcard が ESearchCase を bool の代わりに第二引数として受け取るようになりました。
-* 文字列関数のデフォルト ビヘイビアを、大文字小文字の区別を無視するように変更しました。
-* FFilename 関数をすべて FPaths に移動し、静的にしました。文字列で直接機能するようになりました。
-* FFilename タイプを削除しました。
-* パラメータを 5 つまでオーバーロードして FPaths::Combine() を追加しました。
-* パス結合演算子の `*` と `*=` を `/` と `/=` にそれぞれ変更しました。
-* FPaths を CoreMisc.h/.cpp から Paths.h/.cpp へ移動しました。
-* USTRUCT は UFUNCTION を含むことができなくなりました。
-* `TPreallocatedArray` を削除しました。代わりに `TArray >` を使用してください。
-* `FQuat::operator-` は、実装が非直感的なため、削除しました。ライセンシーは既存の全てのリファレンスを、同等の `FQuat::Inverse()` に変更する必要があります。
-* TemplateMapMetadata アセット タイプを非推奨にしました。
- * テンプレート マップは DefaultEngine.ini (例は BaseEngine.ini を参照) の `[/Script/UnrealEd.UnrealEdEngine]` セクションで設定するようになりました。
- * ゲームに TemplateMapMetadata アセットがある場合、 コンテンツ ブラウザでテキスト フィルタを使って検索し削除します。
-* CurveEdPresetCurve アセット タイプを非推奨にしました。
- * ゲームにこのアセットのインスタンスがある場合、コンテンツ ブラウザでテキスト フィルタを使って検索し削除します。
-* プラグインは取り込む前に有効にしておく必要があります。DefaultGame.ini ファイルの `[Plugins]` セクションの EnabledPlugins リストに追加すると、プラグインが有効になります。
-* TContainerTraits を TTypeTraits に変更しました。
- * 理由は、 TTypeTraits はコンテナ エレメントの trait を表現し、コンテナの trait を表現する TContainerTraits という新しい trait があるからです。
- * TContainerTraits を指定するタイプがあれば、 TTypeTraits を指定するように変更しなければなりません。
- * **NeedsConstructor** trait は **NeedsMoveConstructor** と区別するために、 **NeedsCopyConstructor** に変更しました。
+* FString has been refactored
+* FString does not inherit from TArray any more
+* `InStr` has been replaced by `Find()` and `Contains()` has been added ( **NOTE:Parameters and their defaults have changed!!!** )
+* Parameters of Split function changed
+* EndsWith, StartsWith, Replace, ReplaceInline and MatchesWildcard take a ESearchCase as second argument instead of a bool now
+* Changed the default behavior of string functions to ignore case
+* Moved all FFilename functions to FPaths and made them static.They work directly on strings now
+* Removed FFilename type
+* Added FPaths::Combine() with overloads for up to 5 parameters
+* Replaced path concatenation operator `*` and `*=` with `/` and `/=`
+* Moved FPaths from CoreMisc.h/.cpp to Paths.h/.cpp
+* USTRUCTs are no longer allowed to contain UFUNCTIONs
+* `TPreallocatedArray` has been removed as dangerous. `TArray >` should be used instead
+* `FQuat::operator-` has been removed as its implementation was unintuitive.Licensees will need to change all existing references to `FQuat::Inverse()` which is equivalent
+* Deprecated the TemplateMapMetadata asset type
+ * Template maps are now configured in the `[/Script/UnrealEd.UnrealEdEngine]` section of DefaultEngine.ini (see BaseEngine.ini for an example)
+ * If your game has any TemplateMapMetadata assets, use the text filter in the content browser to find and remove them
+* Deprecated CurveEdPresetCurve asset type
+ * If any instances of this asset are in your game, use the text filter in the content browser to find and remove them
+* Plugins now must be enabled before they are loaded.To enable a plugin, add it to the EnabledPlugins list in the `[Plugins]` section of your DefaultGame.ini file
+* TContainerTraits has been renamed to TTypeTraits
+ * This is because there is a new TContainerTraits traits class which represents the traits of containers, whereas TTypeTraits represents the traits of container elements
+ * If you have any TContainerTraits specializations of your own types, you should change these to specialize TTypeTraits instead
+ * The **NeedsConstructor** trait is now called **NeedsCopyConstructor** to distinguish it from **NeedsMoveConstructor**
####エディタ ツール
* **エディタ**
- * CalcCamera のシグネチャ、その他内部カメラ手法の幾つかを変更しました (緩い変数ではなく FMinimalViewInfo struct の使用への切り替え、など)。
- * ビットフィールドの GET_MEMBER_NAME_CHECKED へのサポートを追加しました。
- * 拡張性の改善点
- * カスタム ノード ファクトリに加えて、カスタム ピン ファクトリも登録できるようになりました。
- * UWorld ライフサイクル デリゲートを追加しました。
- * バーチャルの APlayerController::GetAudioListenerPosition を追加しました。
- * 初めて追加された時に、Matinee カーブ トラックが正しく表示されるようになりました。
- * [Check Out Assets (アセットをチェックアウトする)] ウィンドウが表示されると、[Check Out Selected (選択項目をチェックアウト)] ボタンがフォーカスされ、[Enter] を押すとそのオプションが選択されます。
- * Matinee keyframe Set Time のアンドゥ / リドゥが可能になりました。
- * [Level Editor (レベル エディタ)] ウィジェットで、オブジェクトの負のスケーリングができるようになりました。
- * [Level Editor (レベル エディタ)] ウィジェットでオブジェクトをスケールあるいは回転する際に、カーソルが最初の位置にリストアされるようになりました。
- * Streaming Volumes のメニュー オプションを、[Levels] メニューの [Levels] セクションのサブメニューに移動しました。
- * パッケージ保存エラー時に出るエラー メッセージを改善しました。
- * マチネ グループでアクタを選択すると、シーン アウトライナーのアクタが選択されるようになりました。
- * そのタイプのプロパティをもたないアクタにマチネ トラックを追加しようとすると、エラー メッセージが表示されるようになりました。
- * シーン アウトライナー上に Actors Component Mobility 変数の 2 つ目のアイコンが表示されます。
+ * The signature of CalcCamera and some other internal camera methods has changed (switching over to use the FMinimalViewInfo struct instead of loose variables, etc...)
+ * Added support to GET_MEMBER_NAME_CHECKED for bitfields
+ * Extensibility improvements:
+ * Made it possible to register a custom pin factory in addition to a custom node factory
+ * Added UWorld lifecycle delegates
+ * Added a virtual APlayerController::GetAudioListenerPosition
+ * Matinee curve track now displays correctly when first added
+ * When the Check Out Assets windows appears, the Check Out Selected button is now is focus and pressing enter will select that option
+ * Undo/Redo for Matinee keyframe Set Time
+ * Level Editor widget now allows negative scaling of an object
+ * Cursor is restored to its initial position when scaling or rotating an object with the Level Editor widget
+ * Streaming Volumes menu options moved to a sub-menu within the Levels section of the Levels menu
+ * Improved error message when a package fails to save
+ * Selecting the Actor in the Matinee group now selects the actor in the Scene Outliner
+ * An error message is now displayed when attempting to add a Matinee track for an actor that has no properties of that type
+ * Scene Outliner now displays a second icon for the Actors Component Mobility variable
* **ランドスケープ**
- * Retopologize tool + XYOffset が有効になりました。
- * PhysX データを LandscapeMeshCollision コンポーネントに追加しました。
+ * Enabled Retopologize tool + XYOffset
+ * Added cooked PhysX data to LandscapeMeshCollision component
####ゲームプレイとフレームワーク
-* **短い名前のパッケージのサポートが ini ファイルから削除されました。セクション名も該当します。**
- * つまり、 `[Engine.GameEngine]` などのクラス セクション名は `[/Script/Engine.GameEngine]` に変更する必要があります。
-* AEnvironmentVolume を削除しました。
-* コンポーネントごとではなくバインディングごとに入力を消費するかどうかを、入力バインディングで指定できるようになりました。ConsumeNone/Bound/All を持つコンポーネントの代わりに、それぞれのバインディングがその入力を消費し、後続のコンポーネントが入力を受け取らないようにブロックすることを示す boolean bBlocksInput をコンポーネントが持つかどうかを指定するbConsumesInput boolean を持つようになりました。
-* FGameWidgetWorldContext を FGameWorldContext に名前変更しました。
-* 各種 MovementComponents の名前を命名規則と一致するように変更しました。
+* **Support for short package names has been removed from ini files, this includes section names**
+ * This means that class sections like `[Engine.GameEngine]` will now have to be renamed to `[/Script/Engine.GameEngine]`
+* AEnvironmentVolume has been removed
+* Input bindings now specify whether the input should been consumed per binding instead of per component.Instead of the component having ConsumeNone/Bound/All each binding now has a bConsumesInput boolean specifying if it consumes that input and the component has a boolean bBlocksInput indicating that it blocks subsequent components from receiving input (equivalent to ConsumeAll previously)
+* FGameWidgetWorldContext renamed to FGameWorldContext
+* Renamed various MovementComponents to match naming conventions:
* Character
* Rotating
* Projectile
* Vehicle
* Shooter
-* (UNavigationSystem から派生した) カスタムナビゲーション システムクラスを定義するゲーム専用オプションを実装しました。
+* Introduced an option for game-specific code to define custom navigation system class (derived from UNavigationSystem)
* **Collision Profile Refactor**
- * ECC_WorldTrace はなくなりましたので、固定ジオメトリを探す場合は ECC_Static を使ってください (Movement チャンネルは ECC_Static なので、Mobility は Movable ではありません)。
- * グローバル デフォルトは、コードと INI ファイルで定義されます。グローバル デフォルトは、すべてがブロックされるわけではなくなりました。
- * デフォルト応答が含まれるように、デフォルト チャンネルの記法の定義を変更しました (グローバル デフォルト)。
-
+ * ECC_WorldTrace is gone, use ECC_Static if you're looking for stationary geometry (Movement channel is ECC_Static and Mobility is not Movable)
+ * Global default is defined via code and INI file.Global default isn't all block anymore
+ * Changed syntax of default channel define to include default response (global default)
+CustomTraceChannel=(Channel=GameTraceChannel1, Name=Interact, Response=Ignore)
- * プロファイル定義から DefaultResponse を削除しましたた。ただし、グローバル デフォルトから開始します。
- * CollisionResponse データ構造を変更して、グローバル デフォルトから修正されたチャンネルのみ利用できるようにしました (これは CDO 値ではなく、グローバル デフォルトであることに注意してください)。
- * まだまだ変更はあります!
-* **UPhysicalMaterialProperty を非推奨にしました**。PhysicalMaterial に DEFAULT.INI で変更できる一般的な列挙型変数値が含まれるようになりました。
- * プロジェクトごとにカスタムできる EPhysicalSurface 列挙型変数をエンジンに追加しました。
- * UPhysicalMaterialProperty とそれぞれの子クラスを非推奨にしました。
- * `DefaultEngine.INI` の例です。
+
+ * Removed DefaultResponse from Profile definition but it starts from global default.
+ * CollisionResponse data structure has changed to allow only modified channels from global default (note this isn't CDO value but global default)
+ * More changes are coming!
+* **Deprecated UPhysicalMaterialProperty**.PhysicalMaterial now contains general enum value you can modify in DEFAULT.INI
+ * Engine now has EPhysicalSurface enum that can be customized by each project
+ * Deprecated UPhysicalMaterialProperty and every child classes
+ * Example in the `DefaultEngine.INI`:
[PhysicalMaterial.SurfaceTypes]
SurfaceType1=Asphalt
SurfaceType2=Dirt
SurfaceType3=Water
-* MeleeRange 変数がAPawn から削除されました。ローカルのポーンで使用には、ゲームの派生クラスに入れておく必要があります。
-* **SkeletalMeshComponent の PhsyicsWeight を削除しました**。`bBlendPhysics` を使うか、または BodyInstance ごとに `PhysicsWeight` を定義します。
+* MeleeRange variable has been removed from APawn.If you're using it in your local pawns, you need to put it in the derived class for your game
+* **Removed PhsyicsWeight in SkeletalMeshComponent**.Use `bBlendPhysics` or define `PhysicsWeight` for each BodyInstance
-####オンライン
-* Stream を参照する OnlineSubsystemLive のスペルミスを修正しました。
-* プラットフォーム レイヤーに HTTP が追加されました。
- * プラットフォームごとにそれぞれの http リクエスト / レスポンスが追加されました。
- * 未実装のプラットフォームは GenericPlatformHttp を使用していることにご注意ください。
+####Online
+* Typo fixed in OnlineSubsystemLive which referenced Steam
+* Brought HTTP into the platform layer:
+ * Each platform now has its own http request/response
+ * Note some platforms are not yet implemented and use GenericPlatformHttp
-####レンダリング
-* (レンダリング スレッド コマンドの順序で) レンダリング スレッドにプロパゲートしたステートを取得するために、新しいコンソール変数フラグ ECVF_RenderThreadSafe を作成しました。これは他のスレッドに対しては機能しません。
-* 複数のポストプロセス ボリュームを組み合わせる場合、アンビエント キューブは追加ではなく線形補間を行うようになります。
-* 今後のイタレーションに対する加算ライティング条件を削除しました。
+#### レンダリング
+* Made new console variable flag ECVF_RenderThreadSafe to get the state propagated to the render thread (in order with other render thread commands), does not work for other threads
+* Ambient cubes will now lerp instead of add when combining more than one post process volumes
+* Removed additive lighting terms for future iteration
####プラットフォーム
-* TargetType ではなく TargetRules オブジェクトを受け取るように PrepTargetForDeployment 関数を変更しました。
-* D3D11Drv を D3D11RHI に変更しました。
-* 全ての D3D11 RHI を 1 つのモジュールにまとめました。
- * WinRTRHI を削除しました。
+* Changed PrepTargetForDeployment function to take the TargetRules object rather than just the TargetType
+* Renamed D3D11Drv to D3D11RHI
+* Merged all D3D11 RHIs into a single module
+ * Deleted WinRTRHI
-####アニメーションとペルソナ
-* Static Mesh Editor Socket プロパティ変更に対して、アンドゥ / リドゥ操作ができるようになりました。
-* Static Mesh Editor Socket 削除に対して、元に戻す / やり直し操作ができるようになりました。
+####Animation and Persona
+* Undo/Redo for Static Mesh Editor Socket property changes
+* Undo/Redo for Static Mesh Editor Socket deletion
## 継続事項と改善
-#### 分析
-* エンジン分析の改善点
- * エラー レポートを改善しました。
- * 再マップされたキーバインディングをトラックします。
- * OS 言語と GPU ドライバーのバージョンをトラックします。
- * 新規作成されたブループリントをトラックします。
- * 主要なサブ エディタ ツールの動作時間をトラックします。
+####Analytics
+* Engine analytics improvements:
+ * Improved error reporting
+ * Tracking which keybindings are remapped
+ * Tracking OS language and GPU driver version
+ * Tracking new blueprint class creation
+ * Tracking "up time" of major sub-editor tools
####ブループリント
-* ブループリントのルート コンポーネントは、適用された変形を保てなくなりました。
-* ブループリント インターフェースの編集時に、新規関数を純粋関数としてマークできなくなりました。
-* [DELETE] キーを使って選択アイテムをブループリント エディタの [My Blueprint] タブから削除できるようになりました。
-* アンドゥ / リドゥ操作を続けて早く実行しても、ワークスペースをスパムしなくなりました。
-* UObject サブクラス ピンを引き出すと、IsValid ノードが正しく表示されるようになりました。
-* 派生した変数のカテゴリは変更できなくなりました。
-* ルート コンポーネントが選択されると、変形ウィジェットがブループリント コンポーネント エディタで非表示になりました。
-* 浮動小数点値表示で、連続するゼロが少なくなりました。
-* 変数の Find Instances から返された結果を見直して、関連のある結果のみが表示されるようにしました。
-* ウィンドウ メニューからアクセスすると、ブループリントの親変更メニューにタイトルが追加されるようにしました。
-* 引き出したピンを変数に昇格させるオプションを追加しました。
+* The root component in a blueprint can no longer have a transform applied to it
+* New functions can no longer be marked pure when editing Blueprint interfaces
+* The DELETE key can now be used to remove selected items from the My Blueprint tab in the Blueprint editor
+* Performing undo/redo actions in rapid succession no longer spams the workspace with notification pop-ups
+* IsValid node will correctly appear when dragging off a UObject subclass pin
+* Can no longer modify categories of variables which are inherited
+* Transform widget is now hidden in the Blueprint component editor when the root component is selected
+* Floating point values now show less trailing zeros
+* Revised results returned from Find Instances for variables so only relevant results are shown
+* Added title to the blueprint re-parent menu when accessed via the window menu
+* Added an option for promote to variable for dragged pins
#### サウンド
-* Enveloper ノードにモジュレーション設定を追加しました。
-* コンテンツ ブラウザで右クリックしても、サウンドがポーズしなくなりました。
+* Enveloper node now has modulation settings
+* Sound is no longer paused when right clicking in the content browser
####コア
-* コマンドライン `AllowStdOutLogVerbosity` を追加しました。`* -Cmd.exe` を実行すると、ログレベルが詳細モード以下のログをすべて stdout に出力します。
-* Plugin Descriptor に新規の変更があります。
- * プラグイン記述子に入力フィールドを多数追加しました。(文書はまもなく更新されます!)
- * プラグインに Resources サブフォルダ (Icon128.png サムネイル) を追加しました。
-* Simplygon が VS 2012 ビルドにコンパイルされます。
-* モジュールを `FModuleManager::LoadModule` 経由でロードする前に、DLL のバージョンの互換性がテストされるようになりました。
- * FindModules で発見されたモジュールは、リストへの追加前に現在のエンジンのバージョンとの互換性を確認するようにしました。
-* パスにスペースがある場合、VSAccessor がソリューション ファイル パスを開けるようになりました。
-* [New Project] ダイアログで c++ プロジェクトを作成後、エディタではなく visual studio が開くようになりました。実際に c++ プロジェクトを確実にビルドできるように、強めのテスティングを追加しました。
-* プロジェクトが自動ロードに失敗すると、エディタが正常にロードされるまで自動ロードが無効になるようにしました。
-* 新規プロジェクト ダイアログは、最初のページがテンプレート、2 ページ目が名前と位置を選択するウィザードになりました。
-* コンテンツ ブラウザ フィルタは、フィルタがアセットの表示を妨げる場合のみ、アセットとの同期時にリセットされます。
-* プロジェクトのデフォルト位置が、My Documents の直下ではなく、My Documents の中のフォルダになりました。
-* ファイルがテキスト形式でパーフォースに追加されないように、フェイルセーフ コードを追加しました。
-* サービスが利用できない場合、SCC コレクションと作用するためにコレクション エラー処理を追加しました。
-* コンテナの最適化全般
+* Added command line `AllowStdOutLogVerbosity`.This will print every log with a verbosity >= Log to stdout if you run the `* -Cmd.exe`
+* New Plugin Descriptor changes
+ * Many new fields were added to plugin descriptors.(Documentation update coming soon!)
+ * Plugins can now have a Resources sub-folder (for Icon128.png thumbnail)
+* Simplygon now compiles into VS 2012 builds
+* DLL Version compatibility is now tested before any module is loaded via `FModuleManager::LoadModule`
+ * Modules that are discovered in FindModules are now checked for compatibility with the current engine version before they are added to the list
+* The VSAccessor can now open solution file paths where there is a space in the path
+* After creating a c++ project with the "New Project" dialog, visual studio will open instead of the editor.Also added some stronger testing to make sure you can actually build a c++ project
+* When a project fails to auto-load, auto loading is now disabled until the editor is successfully loaded again
+* The new project dialog is now a wizard where the first page is selecting a template and the second page is the name and location
+* Content Browser filters reset when syncing to an asset only if the filters would prevent that asset from being displayed
+* The default location for a project is now in a folder inside of My Documents instead of directly in My Documents
+* Added some failsafe code to prevent UAsset files from being added to perforce in text format
+* Added collection error handling for working with SCC collections when the server is not available
+* General container optimizations
####エディタ ツール
* **スレートと UI**
- * スレート スタイル システムを改良中です。
+ * Working on improving the Slate style system
* **エディタ**
- * Play in Editor セッションと Simulate セッションの起動パフォーマンスを改善しました。
- * フレームレートが許容範囲内の場合を除き、ほとんどのメニューとツールチップ アニメーションをスキップするようにしました。
- * PIE/SIE モードの時は、シーン アウトライナーのボーダーとパディングを取り除きました。
- * カラーピッカーのスポイトツール マウスポインタは、アクティブになるとピッカー ウィンドウ外に表示されるようになりました。
- * [PromptForCheckoutAndSave] ウィンドウは、ユーザーにチェックされていないパッケージを記憶します。
- * エントリにアイコンが付くように、Consolidate ウィンドウを適切なラジオボタン スタイルに合わせました。
- * ラジオボタンのアイコンとスタイルをアップデートしました。
- * 変更の計算とテクスチャへのペイントにかかる時間を短縮して、メッシュペイントのパフォーマンスを改善しました。
- * **Select Actors Using This Asset** を使う場合、アセットがアクタの親ではなく実際のオーナーに対して確実にトラックされるようにしました。
- * ポップアップ メニューがアクティブの間、自動保存通知と機能はサスペンドとなります。
- * 列挙型変数名をリストの終わりに一致させずにエントリをソートすることで、Property Matrix のフォールト トレランスを強化しました。
- * Property Matrix テーブルのソートを変更して、列挙型変数名をバイト数値ではなくアルファベットで比較できるようにしました。
- * 1-3 の間でバラバラだったカメラ速度を均一にして、小さめのジャンプは 4->3 、大きめは 2->3 としました。
- * 名前変更の際に選択を維持できるようにシーン アウトライナーを変更し、強調表示の問題を解決するために完全にフォーカスに従うように名前編集ボックスを変更しました。
- * アクタの追加後など、ビュー全体をリフレッシュする場合、最後の選択までスクロールするようにシーン アウトライナーを変更しました。
- * Select Actors が選択肢に追加されるのではなく置換されることを記述するためにツールチップを変更しました。
- * FBX インポート オプションで、インポート時にアセットを保存し再度使用できるようになりました。この機能は、スタティックメッシュ、スケルタルメッシュ、アニメーション シーケンスが対象です。
- * コンテンツ ブラウザの [New] メニューの大きさが、画面の高さの半分以上にならないようにしました。
- * アクタを変換しても、アクタのラベルが変更されなくなりました。
- * マップ ファイル エラーの内容を原因に関連した説明にしました。
- * エクスポート ダイアログをユーザーに提示する場合、FBX が最初のオプションとしてリストされるようになりました (適用可能な場合)。
- * 複数のアセット プロパティをマージして表示する場合、RowName が強制的に修正されなくなりました。
- * カテゴリが選択されると、変数 Category ComboBox が自動的に閉じます。
- * シーン アウトライナーが開くと、(レベル内で) 選択されたアクタが (リストで) 選択されるようになりました。
- * 終了ダイアログ抑制フラグが、依存しない config に保存されるようになりました。
- * アセット命名エラー メッセージがより正確になりました。
- * ユーザーの検索条件とアクションがより正確に一致するように、GenerateFilteredItems を修正しました。
- * Create Destructible Mesh が故障の可能性を防ぐようになりました。
- * 保存内容に応じてマップまたはアセットを参照するように、パッケージ保存エラーを修正しました。
- * タイトルバーの下の部分で、移動を選択できるようになりました。
- * Editors Windows リストがアルファベット順になりました。
- * 無効なインデックス チェックをさらに防ぎました。
- * 'exists in package' となっている箇所を 'exists in file' に変更しました。
- * エディタの URL がデータドリブンになりました。
- * 選択したアクタを移動するコードは、選択されたアクタがあることを想定しなくなりました。
- * アクタが NULL かどうかをリスト追加前に GetAttachedActors がチェックするようになりました。
+ * Improved performance of starting up Play in Editor and Simulate sessions
+ * Most menu and tool-tip animations are now skipped except when framerate is acceptable
+ * Removed Scene Outliners border padding when in PIE/SIE mode
+ * Color picker's eye-dropper mouse pointer is now shown outside the picker window when active
+ * PromptForCheckoutAndSave window remembers which packages were unchecked by the user
+ * Point the Consolidate window at the proper radio button style so entries get icons
+ * Updated the radio button icons & styles
+ * Improved mesh painting performance by reducing time spent calculating the changes and painting into the texture
+ * When using **Select Actors Using This Asset** made sure assets are tracked to their actual owner, not the parent of the Actor
+ * Suspend the autosave notification & feature while a popup menu is active
+ * Made Property Matrix more fault tolerant by sorting entries without a matching enum name to the end of the list
+ * Changed the sort in the Property Matrix table to compare enum names alphabetically rather than by byte values
+ * Evened out difference between camera speeds 1-3 to provide a smaller jump 4->3 and larger between 2->3
+ * Changed the Scene Outliner to maintain selection when renaming & changed the name edit box changed to fully surrender focus to stop highlighting glitches
+ * Changed the Scene Outliner to scroll to last selection when fully refreshing the view e.g. after adding an actor
+ * Changed the tooltip to state Select Actors will replace the selection not append to it
+ * FBX import options are now saved with the asset and reused when importing.This applies to static meshes, skeletal meshes, and animation sequences
+ * The Content Browser "New" menu can no longer be larger than half the screen height
+ * Converting actors will no longer re-label the actor
+ * Map file errors are now a lot more descriptive as to the reason for failure
+ * FBX is now listed as the first option (if applicable) when presenting the export dialog to the user
+ * RowName no longer gets forcefully modified if multiple assets properties are shown merged
+ * Variables Category ComboBox is automatically closed when a category is selected
+ * Scene Outliner now selects (in the list) those actors who are selected (in the level) when opened
+ * Quit dialog surpressed flag is now saved to the agnostic config
+ * Asset naming error messages are now more accurate
+ * Modified GenerateFilteredItems to be more accurate with regard to matching the users search term with an action
+ * Create Destructible Mesh now guards against the the possibility of failure
+ * Modified save package errors so that they refer to either a map or asset depending on what was saved
+ * Lower area of the title bar is now selectable for movement
+ * Editors Windows list is now listed alphabetically
+ * Additional guards against invalid index checks
+ * Replaced occurrences of 'exists in package' with 'exists in file'
+ * Editor URLs are now data driven
+ * Move selected actors code no longer assumes that there are any selected actors
+ * GetAttachedActors now checks to see if an actor was NULL before adding it to the list
-* **ワールド ブラウザ**
- * レベル間の親 -> 子の関係を追加しました。
- * ワールドのレベル位置が親レベルと相対的な位置に保存されます。
- * リストとフォルダのビューが、レベル階層ビューに変更されました。
- * 距離に基いたレベル ストリーミングを追加しました。
- * ストリーミング距離をワールド レイヤーごとに指定できるようになりました。
- * 指定されたワールド位置から見えるかもしれないストリーミング レベルのプレビュー (強調表示) を追加しました (**Alt + MousePosition**)。
- * ポストロード時ではなく、レベルがワールドに追加された時にレベル位置が発生するようになりました。
- * レベルがワールドの基点からある程度距離があると、強制ロードはされずに非表示 (shelved) となります。ワールド基点にある程度近い場合、自動的に表示 (unshelved) されます。
- * レベルに AlwaysLoadedLevel タグを追加しました。タグが追加されたレベルは、ユーザーがエディタでワールドを開くと自動的にロードされます。
- * 親->子の関係を使って、デモコンテンツ ワールドを再構成しました。
- * 編集不可能なレベルを持つタイルは、無効ステート (グレーアウト) で表示されます。
- * 階層ビューでのドラッグ&ドロップ操作でストリーミング レベルを追加 / 削除する機能を追加しました。
- * ゲーム内でワールド合成を開く機能を追加しました (`/Game/Maps/MyWorldRoot?worldcomposition`)。
- * ワールド合成を、エディタにロードするデフォルト マップとして指定する機能を追加しました。
- * 矢印キーでレベルを移動する機能を追加しました。
- * ワールド基点の移動が SIE でも機能するようになりました。
- * エディタの環境設定の WorldBrowser を有効 / 無効した後、エディタを再起動しなくても変更が反映されるようになりました。
+* **World Browser**
+ * Added parent->child relationships between levels
+ * Level position in the world stored relative to the parent level
+ * List and folders view was replaced with levels hierarchy view
+ * Added distance based level streaming
+ * Streaming distance can be specified for each world layer
+ * Added preview(highlight) of potentially visible streaming levels from a specified world position (**Alt + MousePosition**)
+ * Levels positioning now happen at point when level is added to the world instead of post loading stage
+ * Levels which are far enough from the world origin get hidden(shelved) instead of forcibly unloaded and automatically shown (unshelved) when close enough to the world origin
+ * Added AlwaysLoadedLevel tag for levels.Tagged levels are automatically loaded when user opens a world in the editor
+ * Recomposed demolet world using parent->child relationships
+ * Tiles with non-editable levels will be shown in disabled state (grey out)
+ * Added ability to add/remove streaming levels by drag and drop operations in hierarchy view
+ * Added ability to open a world composition in the game (`/Game/Maps/MyWorldRoot?worldcomposition`)
+ * Added ability to specify a world composition as a default map to load in the editor
+ * Added ability to move levels by arrow keys
+ * World origin shifting now works in SIE too
+ * Enabling/disabling WorldBrowser in editor preferences does not require editor restart to take effect
-* **レベル ストリーミング**
- * `UWorld::UpdateLevelStreaming` が、永続的なワールドおよび表示される全てのストリームインレベルで、ストリーミング オブジェクトが更新されるようになりました。
- * 同じレベルを参照するストリーミング オブジェクトを複数持つことができるようになりました。
- * すべてのストリーミング オブジェクトのコマンドが / 非表示となっている場合のみ、レベルはアンロード / 非表示にされます。
+* **Level Streaming**
+ * `UWorld::UpdateLevelStreaming` now updates streaming objects in the persistent world and in all visible streamed-in levels.
+ * Now it is possible to have several streaming objects referring the same level
+ * Level gets unloaded/hidden only if all referring streaming objects command to unload/hide it
* **ランドスケープ**
- * コンパイルを終了するマテリアルのコールバックを追加しました。ランドスケープ エディタ モードとランドスケープ レイヤー サムネイル コードでシェーダー マップ ポインタをテストする代わりにこれを使用します。
- * Landscape NavMesh 生成を最適化しました。
- * 新規ランドスケープ グリッドとグラウンド フロア パネルと Z-fighting しないように、Perspective ビューポートのエディタ グリッドへオフセットを追加しました。
+ * Added callback for a material finishing compiling and use it instead of testing the shader map pointer in the landscape editor mode and landscape layer thumbnails code
+ * Optimized Landscape NavMesh generation
+ * Added an offset to the editor grid in the perspective viewport to prevent it Z-fighting with the New Landscape grid and ground floor planes
* **プロファイラ**
####ゲームプレイとフレームワーク
* **物理**
- * PhAT コンテクスト メニューを整頓しました - 単一のボディに対して追加されたオプションを解除し削除しました。
- * ワールド オプションを **bShouldSimulatePhysics** に追加しました- このオプションは有効化 / 無効化することができます。
- * シミュレーション許容制限を公開しました。
- * エディタ レベル ビューポートにデフォルトで StaticMeshComponent 、SkeletalMeshComponent 、BrushComponent に対するコリジョンが付きました。
- * デフォルトで "Query Only" コリジョンを有効にします。
+ * PhAT context menu for bodies tidied up - unfix and delete options added for single bodies
+ * Added World option to **bShouldSimulatePhysics** - you can enable/disable using this option
+ * Exposed simulation tolerance values
+ * Editor level viewport has collision on by default for StaticMeshComponent, SkeletalMeshComponent, BrushComponent
+ * By default it enables "Query Only" collision
-* **最適化**
- * コンポーネント アタッチの最適化:**UseAttachParentBound**
+* **Optimization**
+ * Component Attach optimization:**UseAttachParentBound**
-* 配列は、ロードされた順番通りに config へ保存されるようになりました。
-* スプライト コンポーネントを ALight アクタから ULightComponent へ移動しました。
+* Arrays now saved to the config in the same order that they were loaded
+* Moved sprite components from ALight actors into ULightComponent
-####オンライン
-* GameCenter OnlineSubsystem のスタブ モジュールを追加しました。
-* Facebook OnlineSubsystem のスタブ モジュールを追加しました。
+####Online
+* Added the stub module for GameCenter OnlineSubsystem
+* Added the stub module for Facebook OnlineSubsystem
-####レンダリング
-* GPU スプライトがエミッタの基点と回転を構成するようになりました。
-* テクスチャ プレビュー ツールは、正しいアスペクト比でアンラップされたキューブ テクスチャを表示します。
-* ライトマップ オーバーラップに対する Lightmass の耐性を強化しました。エラーの報告を行うのは、許容値の 1% を超えなければなりません。
-* フォグは正投影カメラでのビューではレンダリングされません。
-* テクスチャ プレビュー ツールは HDR テクスチャをクランプしなくなりました。露出制御で HDR の詳細が明らかになりました。
-* DX11 の RHIReadSurfaceFloatData のメモリ要件を 8x だけ減らしました。
-* 指向性ライトの幾つかのプロパティ名を変更して、より明確にしました。
-* 動的と静的の間のフェードを調整するために、カスケード シャドウ マップの設定をエクスポーズ / 名称変更しました。
-* MSAA テクスチャの **VisualizeTexture** サポートを追加しました。
-* ゲームにおけるポーズが MotionBlur を適切にポーズします (MotionBlur 品質の操作に便利です)。
-* SystemSettings のうち、以下をコンソール変数としてエクスポーズしました。
+#### レンダリング
+* GPU sprites now account for emitter origin and rotation
+* Texture preview tool displays unwrapped cube textures with correct aspect ratio
+* Made Lightmass more tolerant of lightmap overlaps.A tolerance of 1% must be exceeded before it reports an error
+* Fog is not rendered in views with an orthographic camera
+* Texture preview tool no longer clamps HDR textures.Exposure control now reveals HDR detail
+* Reduced memory requirements of DX11's RHIReadSurfaceFloatData by a factor of 8x
+* Renamed some properties in directional light to be more clear
+* Exposed/renamed settings for cascade shadow maps to tweak fading between dynamic and static
+* Added **VisualizeTexture** support for MSAA textures
+* Pause in game is now pausing MotionBlur properly (useful for working on MotionBlur quality)
+* Some SystemSettings have now been exposed as console variables:
* `r.UseVSync`
* `r.MaxAnisotropy`
* `r.MaxShadowResolution`
@@ -459,35 +460,35 @@ Template:ReleaseNotes.html
* `r.SkeletalMeshLODBias`
* `r.TranslucencyLightingVolumeDim`
* `r.DetailMode`
-* `r.UseTextureStreaming`(注記: `r.TextureStreaming` に変更されました) も導入され、ランタイム時におけるテクスチャ ストリーミングの切り替えが可能になりました。
-* ライトマップ ミップマップ生成を改善しました。
-* **bFlipGreenChannel** が、再インポートまたはオーバーライト中に、設定はそのままでテキスト上に保存されるようになりました。
-* Material Expressions Clamp での **ClampMin and ClampMax** の使用を交換しました。
- * **注記:** 'Clamp' ノードが CL 1672610 (03/06/2013) と 1706681 (25/06/2013) の間に変更されたマテリアルはすべて確認が必要です。ClampMin 値と ClampMax 値は初期のチェンジリストでは交換されていますが、前から存在していたアセットは最近までこれに対して注意されていませんでした。
+* `r.UseTextureStreaming`(Note: got renamed to `r.TextureStreaming`) has also been introduced and texture streaming is now toggleable at runtime
+* Improved lightmap mipmap generation
+* **bFlipGreenChannel** is now preserved on textures during re-import or overwrite while keeping settings
+* **Swapped ClampMin and ClampMax** usage in Material Expressions Clamp
+ * **Note:** Any Materials whose 'Clamp' node was modified between CL 1672610 (03/06/2013) and 1706681 (25/06/2013) will need verifying as the ClampMin and ClampMax values were swapped in the earlier changelist, but pre-existing assets weren't guarded against this until the latter
####プラットフォーム
-* クックされたプラットフォームは、バイナリが GameAgnosticExe でない場合、 (個別) プロジェクトベースで実行することができません。
- * 理由は、ゲームがデフォルト クラス (QAGameInfo など) をオーバーライドする可能性があり、アセットを参照しているこれらのクラスがプロジェクト ファイルで使用できなくなってしまうからです。
+* Cooked platforms cannot run project-based (other than themselves) if the binaries is not a GameAgnosticExe
+ * This is due to the game potential overriding default classes (ie QAGameInfo) and those classes referencing assets not available to the project file
* Freetype2 update (2.4.12)
-* サポートされていないプラットフォームにターゲットをビルドしようとする場合、UBT はビルド処理中に次のようなメッセージを付けて例外をスローします: does not support the platform
-* DynamicRHI の作成を整理しました (コードをプラットフォーム専用ファイルに分けました)。
-* SM_PCD3D_SM5 の単なる確認に変わるように、 RHISupportsTessellation(EShaderPlatform) 関数を追加しました。
-* エンジンとエディタを Mac にポートしました。
+* When you attempt to build a target for an unsupported platform, UBT will throw a build exception w/ a message like this: does not support the platform
+* Cleaned up creation of DynamicRHI (split code into platform-specific files)
+* Added RHISupportsTessellation(EShaderPlatform) function to replace just checking if SM_PCD3D_SM5
+* Porting the engine and the editor to Mac
-####アニメーションとペルソナ
-* メッシュの再インポート後も、LoD 設定ウィンドウが正しく機能するようになりました。
-* 現在選択している LoD が削除されると、Persona mesh LoD 設定が "Auto" に変更されるようになりました。
-* ペルソナのフロアがメッシュの原点位置ではなくて、バウンディング ボックスの一番下に置かれるようになったので、メッシュと交わることがなくなります。
-* 現在選択されているボーンを、ペルソナ ビューポートで「選択中のアイテム」の色でレンダリングします。
-* ペルソナ ビューポートの空のスペースをクリックすると、ソケット / ボーンの選択が解除されます。
-* アニメーション タイムライン スライダをスクラブ再生すると、マウスのクリックを放した時ではなく、リアルタイムでアニメーションがアップデートされます。
-* FBX がコンテンツ ブラウザ (これまでどおりペルソナも) の AnimSequences 用のエクスポート オプションになりました。
-* 削除キーでペルソナ スケルトン ツリーで選択されたアセットとアタッチされたアセット削除することができるようになりました。
-* スケルトン ソケットがシーン アウトライナーにアタッチできるようになりました。
-* **Set Mesh Root Translation** オプションがペルソナ ビューポートから取り除かれました。
-* PhAT の **Delete All Bodies** で、アンドゥ / リドゥ操作に必要なアクションが 1 つだけになりました。
-* ペルソナの **Import LoD** が正しく機能するようになりました。
-* 現在のアクションがいつスケルトンとなり保存 (デフォルトのメッシュの変更) が必要になるかを、ペルソナがペルソナがユーザーに知らせるようになりました。
-* ペルソナがエラーの有無をエラーログに表示するようになります。
+####Animation and Persona
+* LoD settings window now functions correctly after re-importing the mesh
+* Persona mesh LoD setting now changes to "Auto" if the currently selected LoD is deleted
+* The floor in Persona is now placed at the bottom of the bounding box of the mesh, rather than at the origin, so it no longer intersects the mesh
+* Currently selected bone renders in the "selected item" color in the Persona viewport
+* Click in empty space in the Persona viewport will deselect any sockets/bones
+* Scrubbing the animation timeline slider will now update animations in real time, rather than when the mouse click is released
+* FBX is now an export option for AnimSequences in the Content Browser (as well as in Persona as previously)
+* Delete key can now be used to delete selected sockets and attached assets in the Persona skeleton tree
+* Skeleton sockets can now be attached to in the Scene Outliner
+* **Set Mesh Root Translation** option removed from Persona viewport
+* **Delete All Bodies** in PhAT now only requires a single action to undo/redo
+* **Import LoD** in Persona now functions correctly
+* Persona now informs the user when the current action will result in the Skeleton needing to be saved (changing the default mesh)
+* Persona will display the error log if there are errors
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/July/ReleaseNotesJuly2013.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/July/ReleaseNotesJuly2013.KOR.udn
index 92128f550b4d..9da9d4bc66d6 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/July/ReleaseNotesJuly2013.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/July/ReleaseNotesJuly2013.KOR.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Title: 2013년 7월 릴리즈 노트
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-7
[TOC(start:2 end:2)]
@@ -136,7 +137,7 @@ Template:ReleaseNotes.html
####플랫폼
* 대부분의 플랫폼에 APEX Clothing 이 지원됩니다.
* Generic PlatformProperties 에 새 함수가 추가되었습니다:
- * **SupportsFastVRAMMemory** - 플랫폼이 FastVRAM 패쓰를 지원하면 True, 아니면 False (디폴트)를 반환합니다.
+ * **SupportsFastVRAMMemory** - 플랫폼이 FastVRAM 패스를 지원하면 True, 아니면 False (디폴트)를 반환합니다.
* TexCreate 와 BUF 힌트 플래그를 새로 추가했습니다: `*_FastVRAM`
* 가능하다면 RHI 가 텍스처나 버텍스/콘스턴트 버퍼에 FastVRAM 을 사용하도록 합니다.
* 기본 FFastVRAMAllocator 클래스를 추가했습니다 (기본적으로 아무것도 하지 않습니다).
@@ -153,7 +154,7 @@ Template:ReleaseNotes.html
* z 거리 기반입니다 (전에는 방사형(radial) 이었습니다).
* 캐스케이드 이행이 부드럽습니다.
* 섀도 바이어스 개선과 아울러 다이내믹 섀도 퀄리티가 약간 향상됩니다.
-* 포워드 셰이딩 (ES2) 패쓰가 이제 HDR, 노출, 블룸을 지원합니다.
+* 포워드 셰이딩 (ES2) 패스가 이제 HDR, 노출, 블룸을 지원합니다.
* MinRoughness 라이트 파라미터를 추가했습니다 (fill light 에 매우 유용합니다).
@@ -343,7 +344,7 @@ Template:ReleaseNotes.html
* 콘텐츠 브라우저에서 애셋 동기화시 필터로 인해 해당 애셋이 표시되지 않게 될 때만 필터가 리셋됩니다.
* 이제 프로젝트의 기본 위치는 "내 문서" 그 자체가 아니라 그 하위 폴더가 됩니다.
* UAsset 파일이 퍼포스에 텍스트 포맷으로 추가되는 것을 방지하기 위한 약간의 실패방지 코드를 추가했습니다.
-* 서버 다운일 때 SCC 콜렉션 작업 처리를 위한 콜렉션 오류를 추가했습니다.
+* 서버 다운일 때 SCC 컬렉션 작업 처리를 위한 컬렉션 오류를 추가했습니다.
* 일반적인 컨테이너 최적화가 있었습니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/June/ReleaseNotesJune2013.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/June/ReleaseNotesJune2013.JPN.udn
index 3dfcfa4d0bca..c1800809d715 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/June/ReleaseNotesJune2013.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/June/ReleaseNotesJune2013.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:2615137
-Title:2013年6月リリースノート
+INTSourceChangelist:3367470
+Title:2013 年 6 月リリースノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-8
[TOC(start:2 end:2)]
@@ -13,8 +14,8 @@ Template:ReleaseNotes.html
[REGION:simpletable]
| アイテム | 情報 |
| ---- | ---- |
-| **Label** | QA_APPROVED_UE4_BUILD_2013_06 |
-| **Changelist #** | 1687979 |
+| **ラベル** | QA_APPROVED_UE4_BUILD_2013_06 |
+| **チェンジリスト#** | 1687979 |
| **VISUAL STUDIO VERSION** | Microsoft Visual Studio 2010 version 10.0.40219.1 SP1 Rel |
| **DIRECTX** | 2010年6月 |
[/REGION]
@@ -25,7 +26,7 @@ Template:ReleaseNotes.html
* UE4 パラレル レンダリング ロードマップ: [Parallel Rendering Plans for UE4](https://udn.unrealengine.com/questions/168240/parallel-rendering-plans-for-ue4.html)
-##主な新機能
+## 主要な新機能
####ブループリント
* **新たなユーザー定義の列挙型アセット**
@@ -55,7 +56,7 @@ Template:ReleaseNotes.html
* ピッカーにより、矢印とメニュー下部にあるオプションを使った [コンテンツ ブラウザ] メニューへのアクセスが可能になります。

* 「Browse」がアクセスしやすいようにメイン ウィジェットにレプリケートされます。
- * コンボボタンの矢印をクリックすると、シーン アウトライナーを表示して、アクタ プロパティの特殊化も対応します。メニューの「表示」で、問題となっているアクタ上でビューポイントをフォーカスします。
+ * コンボボタンの矢印をクリックすると、シーン アウトライナーを表示して、アクタ プロパティの特殊化も対応します。メニューの「表示」で、問題となっているアクタ上でビューポイントをフォーカスします。
* **FBX 再インポートの改善**
* スタティックメッシュ、スケルタルメッシュ、アニメーション シーケンス用に UAssetImportData の派生クラスを作成する FBX コードをリファクタリングしました!
@@ -63,7 +64,7 @@ Template:ReleaseNotes.html
* FBX からアセットをインポートする場合、作成時の設定インポート オプションがインポート時に保存され、再インポートされるたび再利用されます。
* これらのオプションは、[Asset Import Data] と呼ばれるプロパティのアセットのプロパティで編集可能です。
-#### ゲームプレイとフレームワーク
+####ゲームプレイとフレームワーク
* **C++ クラス ウィザード**
* ポーン、キャラクター、PlayerController、その他のゲーム機能を自分のゲームに新規導入する親クラスを追加する機能です。
(w:640)
@@ -93,7 +94,7 @@ Template:ReleaseNotes.html
* UENUM のみを含むヘッダーのコンパイルエラーを解消しました。
* 空の文字列の場合、FFileHelper::SaveStringToFile でゼロバイトファイルを書けるようにしました。
* DEFINE_LOG_CATEGORY_STATIC をヘッダーで使用しないことになりました。
- * 逆に、DECLARE_LOG_CATEGORY_EXTERN をヘッダーで指定し、対応する DEFINE_LOG_CATEGORY は関連する.cpp ファイルに置きます。
+ * 逆に、DECLARE_LOG_CATEGORY_EXTERN をヘッダで指定し、対応する DEFINE_LOG_CATEGORY は関連する.cpp ファイルに置きます。
* DepotName アクセスを CrashDebugHelper に追加しました。
* ユーザーにデポ名を指定させ、どのブランチからもミニダンプのデバグが出来ようにしました。
* 同期を行わないユーザーがプロジェクト生成中になくしてしまったドキュメントフォルダーに対し適切な処理を行うようにしました。
@@ -122,16 +123,16 @@ Template:ReleaseNotes.html
* タブを閉じると、閉じたタブの左側のタブにフォーカスが移ります。
-#### ゲームプレイとフレームワーク
+####ゲームプレイとフレームワーク
* 既存のプロジェクトへのソースコードファイル追加ウィザードが追加されました。
* [File (ファイル)] から [Add Code to Project... (プロジェクトへコードを追加)] で呼び出します。
* 生成されたコードの著作権行を ini ファイルで設定できるようにしました。
* 新たに反転システムを PlayerInput に追加しました。
* InvertAxis を呼び出して、定義した Axis に対する全ての入力の反転 (古い InvertMouse を InvertAxis Lookup に置き換える) を可能にしました。
* 特定の Axis キーを InvertAxisKey で反転することも可能です (joystick ではなく mouse lookup だけを反転させたい場合は InvertAxisKey MouseY を使用できます)。
-* 新たにポーンを追加しました。SpectatorPawn.PlayerController のスペクテーターステートは SpectatorPawn を使用します。
+* 新たに SpectatorPawn ポーンを追加しました。PlayerController のスペクテーターステートは SpectatorPawn を使用します。
* DebugCameraController、LogVisualizer、他いくつかのゲームのコントローラーを修正し、新たなスペクテータモデルを使用できるようにしました。
-* 剛健なレプリケーションをコンポーネントに追加しました。StaticMeshReplicatedComponent と SkeletalMeshReplicatedComponent
+* 以下の剛健なレプリケーションをコンポーネントに追加しました:StaticMeshReplicatedComponent と SkeletalMeshReplicatedComponent
* フィルタリングを早めるリキャスト オフメッシュ接続に定義済みフラグをオプションで焼き付ける機能を追加しました。
* RecastNavMesh で距離をパスする際にポリゴンを検索する方法を追加しました。
* RecastNavMesh へのクエリに使用する指定フィルタを実装しました。
@@ -151,7 +152,7 @@ Template:ReleaseNotes.html
* (SlateViewer などの) プログラムへのサポートを IOS に対して追加 / 改善しました。
-#### レンダリング
+####レンダリング
* dx11 の柔軟性のある深度ステンシルの読み取りおよび書き込みアクセス (ローレベルレンダリング機能) をマージしました 。
* Speedtree を統合しました。
* キューブマップ シーンキャプチャ アクタを追加しました。
@@ -178,208 +179,208 @@ Template:ReleaseNotes.html
####アニメーション / ペルソナ
* **ペルソナ:**
* ユーザーがアニメーションの付加的な基本ポーズを見ることができるようにペルソナのビューポートの [Show (表示)] メニューに [Additive Base (加算ベース)] オプションを追加しました。
- * モーフ ターゲットをコンテクストメニューから削除しました。
+ * モーフ ターゲットの削除はコンテクストメニューで処理するようになりました。
-##更新ノート
+##アップグレード ノート
####ブループリント
-* self からワールド コンテクストを提供できないブループリントクラスに UCLASS メタデータ内で ShowHiddenSelfPins としてフラグを付けられるようにしました。
- * これにより、ブループリントのクラスがフラグの付いているクラスから派生しているブループリントグラフに配置されたノード上で WorldContextObject ピンが表示されます。
- * 現在そのようなフラグが付いている唯一のエンジンクラスは AnimNotify で、AnimNotify ブループリントはコンポーネントを WorldContextObject 入力に接続する必要があります。
-* ブループリントの SkeletonGeneratedClasses を暫定としました。
- * ユーザーは何もアクションをとる必要はありませんが、ブループリントシステムを修正した場合、スケルトンクラスに何もリファレンスを保存しないようにしてください。
- * シリアル化された全てのリファレンスを GeneratedClass へポイントしてください。保存中に消えてしまいます。
+* Blueprint classes that do cannot provide a world context from self can now be flagged in UCLASS metadata as "ShowHiddenSelfPins".
+ * This will show the WorldContextObject pin on nodes placed in the Blueprint graph where the class of the Blueprint is derived from the flagged class.
+ * Currently AnimNotify is the only Engine class flagged as such and any AnimNotify Blueprints will need to connect Component to the WorldContextObject input.
+* Blueprint SkeletonGeneratedClasses are now transient.
+ * While this does not require any action on the user's part, if you have modified the blueprint system, make sure you do not save any references to the skeleton class.
+ * All serialized references should now point to the GeneratedClass, or they will be lost during save.
#### サウンド
-* 名前が SoundMix に変更された SoundModes に Base SoundMix を 1 つ設定し、複数の SoundMix モディファイアーをプッシュするオプションを付けました。
- * コンテクストブラウザで SoundMixes として表示するためには、SoundModes は完全にロードされる前に全て再保存する必要があります。
+* SoundModes renamed to SoundMix, now have the option to set a single Base SoundMix and push multiple SoundMix modifiers.
+ * All SoundModes will need re-saving so that they will show up as SoundMixes in the Content Browser before they are fully loaded.
####コア
-* 保存した configs がソースファイル階層からのまとまった入力に一致する入力を含まないように UE4 のコンフィギュレーション システムを更新しました。
-* 新たにプロジェクトファイルが作成されると、既存の Visual Studio のコマンドラインは保存されません。
- * UE4 がこのバージョンの場合はプロジェクトを再生成する前にコマンドラインを必ず保存してください。
- * 理由は、生成された .vcxproj ファイルの保存先フォルダが変更されたためです。
-* メタデータ指定子の meta(...) 記法には対応しなくなりました。meta=(...) は限定して使用してください。
-* プロパティの最後についてるコメント (例: "float Property; // My float property") はツールチップ メタデータ用には取得されず、UPROPERTY 宣言の前のコメントに変更されます。
-* 複数のメタデータキーが異なる値を持つことでエラーが発生するようになりました。変更前は、後ろの値が前の値をオーバーライトしていました。
-* マップ保存時のファイル名の確認を強化しました。
+* Updated the config system in UE4 so that saved configs generated do not contain entries for those which match the coalesced entry from the source files hierarchy.
+* Existing Visual Studio command-lines will not be preserved when generating new project files.
+ * Remember to save them off before regenerating projects for this version of UE4.
+ * This is because the folder that generated .vcxproj files are saved to has changed.
+* The meta(...) syntax for metadata specifiers are no longer supported. meta=(...) should be used exclusively.
+* Comments on the end of a property (e.g. "float Property; // My float property") are no longer scraped for tooltip metadata and should be changed to be a comment before the UPROPERTY declaration.
+* Multiple metadata keys with different values now causes an error.Before this change, successive values would overwrite previous ones.
+* Improved the filename checking when saving a map.
####エディタ ツール
-* UInterfaces が剛健になり、ネイティブ関数に加えてブループリントが実装可能なイベントも安全に対応するようにしました。
- * 結果、ブループリントに純粋に実装されている UInterface (ブループリント プロパティの「インターフェース」セクション経由など) は BlueprintImplementableEvents のみを含むことが可能になりました。
- * ブループリントにアクセス可能で、ネイティブクラスにも追加されている UInterface (class UMyClass : public UObject, public IMyInterface など) は、 BlueprintImplementable イベントと BlueprintCallable 関数を両方持つことができます。
- * ヘッダージェネレータにより、これらの基準に違反してインターフェースは絶対に作成できないようになっています。
+* UInterfaces are now more robust, and safely allow for both blueprint implementable events, as well as native functions.
+ * As a result, UInterfaces that are implemented in purely in blueprints (i.e. through the blueprint property's "Interfaces" section), can now only contain BlueprintImplementableEvents.
+ * UInterfaces that are blueprint accessible, but added in a native class (e.g. class UMyClass : public UObject, public IMyInterface), can have both BlueprintImplementable events and BlueprintCallable functions.
+ * The header generator will ensure that you can't create an interface that violates these criteria.
* **ランドスケープ:**
- * クラックがおきにくい PN-AEN および Flat テッセレーションを有効にしました。
- * 怠惰なオブジェクト ポイントを使用して LandscapeComponent と CollisionComponent の相互参照を追加しました。
- * Landscape EdMode でランドスケープ Gizmo が削除されないようにしました。
+ * Enabled PN-AEN and Flat crack-free tessellation.
+ * Added LandscapeComponent vs CollisionComponent cross reference using lazy object pointer.
+ * Prevented Gizmo deletion in Landscape EdMode.
-#### ゲームプレイとフレームワーク
-* BugIt 実装を PlayerController から CheatManager へ移しました。
-* InvertMouse と InvertTurn exec 関数と同様、bInvertMouse と bInvertTurn も PlayerController から削除されました (新規 invert システムの詳細は新機能をご覧ください)。
-* bIsControllerConnected が PlayerController から削除されました。
-* bCheck パラメータが SetActorLocation から削除されました。目的地でオーバーラップのチェックをしたい場合は、代わりに Teleport を使ってください。
-* SpawnActor 関数が変更されたため、SpawnActor の呼び出しをリファクタリングする必要があります。
-* GamePlayers へアクセスするなら、代わりに GetWorld 関数経由で LocalPlayer にアクセスする方が望ましいです。
-* **物理:**
- * 物理コンストレイント システムを大幅にリファクタリングしました。
- * ConstraintSetup の全ての設定を ConstriantInstance へ移しました。
- * コンストレイント設定クラスを削除しました。
- * RB_ で始まるクラスのほとんどが Physics になりました。
- * 多くのクラスを cpp ファイル (PhysicsHandleComponent、 PhysicsThruster, PhysicsContraintTemplate, PhysicsConstraintComponent, PhysicsConstraintActor, RadialForceComponent) に移動しました。
- * PhysicsHandleComponent をリファクタリングし、組み込みスムージングを付けました。
- * StallZ を削除しました。
-* DestructibleComponents が DestructibleActor 以外のダメージに対応するようになりました。
+####ゲームプレイとフレームワーク
+* BugIt implementation has moved from PlayerController to CheatManager.
+* bInvertMouse and bInvertTurn as well as InvertMouse and InvertTurn exec functions have been removed from PlayerController (See New Feature for details on new invert system).
+* bIsControllerConnected removed from PlayerController.
+* Removed bCheck param from SetActorLocation.Use Teleport instead if you care about checking for overlaps at the destination when not sweeping.
+* SpawnActor calls will need to be refactored because of change to the SpawnActor function.
+* Anything accessing GamePlayers should instead either access a LocalPlayer via a GetWorld function.
+* **Physics:**
+ * Big refactor of physics constraint system;
+ * Moved all settings out of ConstraintSetup into ConstriantInstance.
+ * Removed constraint setup classes.
+ * Many classes that started with RB_.. are now Physics..
+ * Moved a lot of classes into their own cpp files (PhysicsHandleComponent, PhysicsThruster, PhysicsContraintTemplate, PhysicsConstraintComponent, PhysicsConstraintActor, RadialForceComponent)
+ * PhysicsHandleComponent has been refactored, has built-in smoothing.
+ * Removed StallZ.
+* DestructibleComponents now respond to damage outside a DestructibleActor.
####オンライン
-* FVector ネット量子化のサポートが拡張されました: [Vector Network Quantization](https://udn.unrealengine.com/questions/166428/vector-network-quantization.html)
-* シンプルなストリーミング ファイルサーバー コードを 1 つにマージしました。ストリーミングサーバーがシンプルなネットワークサーバーを拡張するようにクライアント側のコードを更新しました。
+* Extended support for FVector net quantization: [Vector Network Quantization](https://udn.unrealengine.com/questions/166428/vector-network-quantization.html)
+* Merged the simple and streaming file server code into one.Updated the clientside code so that a streaming server extends the simple network server.
-#### レンダリング
-* **ポストプロセスエフェクト:**
- * Atmospheric fog : fog のレイヤーが複数の場合の状態に対応します。
-* 他の問題のために元の状態に戻したマルチラインの TextRenderActor は今後修正します。
-* SeparateTransluceny を全てのプロジェクトでデフォルで有効にしました。それにより、より一貫性がとれ、デザイナーにより制御を与え、若干遅いですがシーンカラーの精度を低くすることが可能です。マテリアル設定で機能が無効になっていない限り、透光性はフィールドの深度に影響されなくなりました。
+####レンダリング
+* **Post Process Effects:**
+ * Atmospheric fog : handled situations when more than one fog layer exists.
+* Reverted multiline TextRenderActor because of remaining issues - will be fixed later.
+* Enabled SeparateTransluceny by default for all projects.More consistent, gives more control to the designer, slightly slower but allows scenecolor to be lower precision, translucency is no longer affected by Depth of Field unless feature is disabled in material setting.
* **ライティング&シャドウ:**
- * ライトマス EnvironmentColor が領域上部のみになりました。
+ * Lightmass EnvironmentColor is now upper hemisphere only.
####プラットフォーム
-* UnrealBuildTool は、コードをコンパイルする Mac 名を IPhonePackager に渡すようにしたので、 IPP 環境変数を設定したり IPP コードを変更する必要がなくなりました (不可能になりました)。
-* モバイル プロビジョン ファイル を /Library ではなく ~/Library に移動したので、 Mac 上での不自然な許可が必要なくなりました。
+* UnrealBuildTool now passes the name of the Mac that compiled the code to IPhonePackager, so you don't have to (and can't) set an IPP environment variable or change IPP code.
+* Changed mobile provision files to go to ~/Library, not /Library, so no weird permissions are needed on Mac.
## 今後の追加事項と継続的な努力
####ブループリント
-* 一番最後に表示されているプリミティブ コンポーネントをブループリントから削除すると、通常のサムネイルへ戻るようにしました。
-* 新規作成されたブループリントはグラフモードではなくコンポーネントモードで開くようにしました。
-* ブループリント用語、中でも Math Library の検索を強化しました。
-* Blueprint エディタの [Hide Unused Pins (使用していないピンを表示しない)] 切り替えオプションを 3 つにわけ、ツールバーからメニューバー ([View (表示)] オプション) へ移動しました。
-* FortPathFollowingComponent を BlueprintType にしました。
- * ブループリントのエクスポーズされた関数が PathFollowingComponent に追加されました。GetPathActionType() と GetPathDestination() です。
- * 上記の関数で、問題になっているパスは完全か、部分的か、またパスのエンドポイントを決めることができます。
-* ブループリント エディタ:* キャメルケースをきれいなバリアントに自動処理し、ユーザーによるアセット検索のマッチ率をあげました。
-* KISMET SCRIPTING ERROR を LEVEL BLUEPRINT ERROR に名前変更しました。
-* EPET_Kismet を EPET_Blueprint という名前に変更しました。
-* タイムラインが正常に追加され「タイムラインが見つかりません」というエラーを解消しました。
-* クラスビューア経由で作成されたブループリントがパッケージを再びダーティとしてマークするようにしました。
-* ステートマシンノード上でノード別コメントへの対応を追加しました。
+* Removing the last visible primitive component from a blueprint now reverts the blueprint back to a generic thumbnail.
+* Newly-created Blueprints now open in Components mode instead of Graph mode.
+* Made searching for Blueprint terms more robust... especially for functions in the math library.
+* Split the Hide Unused Pins toggle option in the Blueprint editor into three options and moved it out of the toolbar and into the menubar (under the View option).
+* Made FortPathFollowingComponent a BlueprintType.
+ * Added blueprint exposed functions to PathFollowingComponent:GetPathActionType() and GetPathDestination().
+ * The new functions allow the user to determine whether the path in question is full, partial, etc. and where the end-point of the path is.
+* Blueprint Editor:Increased likelihood of finding a match for users Asset search by automatically handling camel case to sanitized variants.
+* Relabeled KISMET SCRIPTING ERROR to LEVEL BLUEPRINT ERROR.
+* Renamed EPET_Kismet to EPET_Blueprint.
+* Timeline missing error now clears once the timeline has been successfully added.
+* Blueprints created via the class viewer now mark their packages as dirty again.
+* Added support for per-node comments on state machine nodes.
#### サウンド
-* ブラシで押し出された領域のリバーブボリュームが正しく動作するようにしました。
-* SoundCue コンテクストメニューの Sound ノードは SoundNode のプレフィックスではなくなりました。
-* ClampMin と ClampMax メタタグを適切な値の書式で使用できるようにしました。
+* Reverb volumes with extruded brush areas will now work correctly.
+* Sound nodes in the SoundCue context menu are no longer prefixed with SoundNode.
+* ClampMin and ClampMax meta tags are now used in the appropriate numerical format.
####コア
-* MinimalAPI および RequiredAPI クラスフラグがコンパイルされた クラスへコピーされ、ランタイム時のクエリが可能になりました。
-* ビルドシステム開発と CIS テストの支援に使用される新しい「AutomationTool」プログラム上で作業を継続します。
-* AActor::bNoDelete はコードベースから完全に削除されました。
-* 適切なツールに加えて UE4 向けに新たな設定の Device profile の作業が進行中です。
-* (再コンパイル、プロジェクトファイルの生成などの操作のために) エディタ内へ呼び出される前に、アンリアル ビルドツールがビルドされるようにしました。
+* MinimalAPI and RequiredAPI class flags are now copied to compiled-in classes so they can be queried at runtime.
+* Working continues on new "AutomationTool" program that will be used to assist build system development and CIS testing.
+* AActor::bNoDelete has been fully removed from the code base.
+* WIP of the new system settings "Device Profile" system for UE4 along with appropriate tools.
+* Unreal Build Tool is now built before it is invoked in the editor (For operations like recompile, generating project files, etc).
####エディタ ツール
* **ランドスケープ:**
- * ランドスケープ スプラインの取り消し / やり直しが選択できるようになり、スプライン エディタ外のランドスケープ スプラインの選択状態を修正しました。
- * PIE/Simulate 内でのランドスケープエディタを無効にしました。
- * エディタでのインタラクティビティをあげるため、ランドスケープツールのレンダリングパフォーマンスを改善しました。
+ * Made landscape spline selection undo/redo-able, and fixed selection state of landscape splines outside the spline editor.
+ * Disabled landscape editor in PIE/Simulate.
+ * Landscape tool rendering performance improvements to improve interactivity in the editor
* **スレート & UI:**
- * FSlateApplication::GotoLineInSource が追加されました。フォーマットは FullFilePath|Line:Column です。
- * 新たなプロジェクトダイアログではサムネイルサイズが小さくなり、説明文のラップが調整されました。
- * 40x および 256x のアイコンを調整し、クラスを更新しました。PNG の更新のみ、ビルドを破壊しないチェックイン。
- * BlueprintEditor 関数用に 16px のアイコンを新たに作成しました。エディタ内で更にコード合わせが必要になります。
- * 複数のクラスタイプに対して 256 ピクセルのアイコンを作成しました。コード合わせ、ビルドを破壊しないチェックインが必要です。
- * BSPモード用に 40 ピクセル (20 ピクセルをコードスケールと想定) の初期アイコンを作成しました。
- * 追加コードを対応してこれらを合わせる必要があります。ビルドを破壊しないチェックインチェックイン - チェンジリストは PNG アセットのみ。
- * プレースメントモード用の仮アイコンを作成しました。追加コードを対応してこれらを合わせる必要があります。
- * ビルドを破壊しないチェックイン - チェンジリストは PNG アセットのみ。
- * AtmosphericFog、SphereReflectionCapture、BoxReflectionCapture、DestructibleActor、Note、Pawn、Character、DefaultPawn のアクタクラスの全てに 16px のアイコンを作成しました。
- * PNG アセットのみです。ビルドを破壊しないチェックイン (コード合わせが必要)
-* ソース コントロールが無効の場合、SCC ステートがコンテンツ ブラウザに表示されなくなりました。
-* **ワールド ブラウザ:**
- * ワールドブラウザのズームレベルが増えました。
- * ワールドブラウザの中でレベル選択が表示 ([Home] ボタン) されるようにしました。
-* エディタのメインメニューの配置が改善されました。
-* 実際のアセットを編集している場合は、アセットメニューのみがメニューバーに追加されます。
-* ワールド設定がツールヒントと一緒に表示されるように、ワールド属性を更新しました。
-* ローカルコレクションの作成失敗のポップアップエラーは、コレクションビューではなくコレクションリストを親に持つようにしました。
-* シーン アウトライナーが PIE アクタの選択と変更に対応するようになりました。
-* エディタ ビューポートのグリッドサイズの増減調整をキーバインドできるようにしました。
-* ログリストがコンソールウインドウに保存されるようになりました。
-* プロジェクトが自動ロードに失敗すると、エディタが正常にロードされるまで自動ロードが無効になりました。
-* uプロジェクトファイルに対して生成されたソリューションファイルのファイル名は、格納されているフォルダではなく .uproject file に因んだ名前が付けられます。
+ * Added FSlateApplication::GotoLineInSource.The format is FullFilePath|Line:Column.
+ * Decreased the thumbnail size in the new project dialog and adjusted description wrapping.
+ * Updated classes 40x & 256x icons, cropping & tweaks.PNG updates only, non-destructive check-in.
+ * Created new icons for BlueprintEditor functions @ 16px.Require further code hook-up to be used in editor.
+ * Created icons for multiple class types at 256px - require code hook-up, non-destructive check-in.
+ * Initial icon for BSP modes created @ 40px (assume 20px version will be code scale) .
+ * Requires additional code support to hook these up.Non-destructive checking - Change List is PNG assets only.
+ * First pass icons for placement mode created.Requires additional code support to hook these up.
+ * Non-destructive checking - Change List is PNG assets only.
+ * 16px icons for all the AtmosphericFog, SphereReflectionCapture, BoxReflectionCapture, DestructibleActor, Note, Pawn, Character, DefaultPawn actor classes.
+ * PNG assets only.Non-destructive check-in (requires code hook-up).
+* SCC state is no longer displayed in the content browser if source control is disabled.
+* **World Browser:**
+ * More zoom levels in World browser.
+ * Fit levels selection to view (Home button) in World browser.
+* Editor main menu arrangement has been improved!
+* Only add the Asset menu to the menubar, if were editing an actual asset.
+* Updated World Props button to say World Settings, along with its tooltip
+* Error message popup for local collection creation failure is now parented to the collection view, rather than the collection list.
+* Scene Outliner now supports selection and modification of PIE actors.
+* Editor viewport grid size increment and decrement controls are now key-bindable.
+* 'log list' in the console window is now sorted.
+* When a project fails to auto-load, auto loading is now disabled until the editor is successfully loaded again.
+* Solution files generated for uproject files are named after the .uproject file instead of the folder containing it.
-#### ゲームプレイとフレームワーク
-* マップトークンなしに generatedistillfilesets をコマンドライン上で操作すると、全てのマップファイルの使用を想定します。
-* コンパイラがインストールされていない/利用できない状態で c++ テンプレートが選択されると、新規プロジェクト ダイアログがエラーを出すようにしました。
-* 入力イベント/ 軸を PlayerControllers に結合することができます。
-* ShapeComponent プロパティ (SphereRadius、CapsuleRadius など) を保護しました。Set/Get 方法でアクセスします。
- * ShapeComponent GetScaled* と GetUnscaled* アクセサを追加しました。通常、ほとんどの場所はスケーリングされた値を読みます。
- * スケールされていないバージョンの ShapeComponents を使用したことで発生したバグの多くを修正しました。キャラクターの動作がスケール化されたカプセルに対して正しく機能します。
-* FMatrix と FTransform の GetAxis を GetScaledAxis へ変更しました。
-* USkeleton 上の AnimationNotifies をループするコードが若干最適化されました。
-* 明確な代替コンテクストがない GWorld リファレンス数を大幅に減らすために、多くの関数をリファクタリングし、更にいくつかの GWorld リファレンスを削除しました。
- * 現在 GWorld を返すクラスの多くに GetWorld が追加されました (GWorld リファレンスを削除しやすくなります)。
-* SpawnActor と関連するテンプレートが改定されました。
- * これらのほぼ全てのパラメータは SpawnActor 関数 / テンプレートへ渡される構造体にあります。 * GamePlayers をプライベートにしてアクセサを追加しました。
- * ワールド経由でローカルプレーヤーを取得するためにプレーヤー配列を使用してきたインスタンスを大幅に置き換えました。
-* **物理:**
- * ソルバー イタレーション カウントを増やして物理シミュレーションを改善しました。
- * リファクタリング:* bCreatePhysicsState フラグを削除しました。
- * コリジョンがオンの場合、物理ステートのみ作成されます。
- * クエリ用にコリジョンのない物理ステートを作成する必要のある場合は、bAlwaysCreatePhysicsState を true にセットします。
-* キャラクターの動作を改善しました。
- * 共通の SlideAlongSurface() あるいは SlideAlongVerticalSurface() 関数を使うため、表面に沿ったスライド用の重複コードを数多くリファクタリングしました。
- * 滑らかなカプセル法線を使うためのスライディング コードを変更しました。
- * ジオメトリのコーナーに沿ったスライドが大幅に改善されました。
- * キャラクターの浮遊ではなく、実際の床をベースにして MaxStepHeight を実行します。
- * StepUp を使ってカプセルの滑らかな部分の高めの表面へあがり、上った時に衝撃点の高さを確認することができます。
- * 前の動作を反映するために恐らくゲームはデフォルト値を増やそうとするでしょう。
- * 設定コードで歩行不可能な表面にキャラクターを配置しないようにしました。低いオブジェクト上を移動する動作について、歩行不可能な法線で今後改善していきます。
- * これらの表面に当たることで間違ったフロア法線がレポートされないように、フロアスウィープテストが隣接する垂直なサーフェスを避けるにようにしました。ComputeFloorHeight() を参照してください。
- * ペネトレーションの開始を処理する MoveComponent に SafeMoveUpdatedComponent() を追加しました。
- * 動作の妨げを探知すると、ペネトレーションはそこから出ようと試み、元の動きを再試行します。
+####ゲームプレイとフレームワーク
+* Running generatedistillfilesets with no map tokens on the command line now assumes you want to use all map files.
+* The new project dialog now produces an error if you do not have a compiler installed/available and you have a c++ template selected.
+* Input events/axis can be bound in PlayerControllers.
+* ShapeComponent properties (SphereRadius, CapsuleRadius, etc) are now protected.Use Set/Get methods to access.
+ * ShapeComponent GetScaled* and GetUnscaled* accessors added.In general most places should read the scaled values.
+ * Many bugs related to using unscaled versions of ShapeComponents were fixed as a result.Character movement now works correctly for scaled capsules.
+* Changed GetAxis to GetScaledAxis on FMatrix and FTransform.
+* Small Optimization to code looping over AnimationNotifies on USkeleton.
+* Removed several more GWorld references including the refactoring of a number of functions to significantly reduce the number of GWorld references where no obvious alternative context was available.
+ * Also added a GetWorld to a number of classes that currently returns GWorld (this will make it simpler to remove the GWorld references in due course).
+* Revised SpawnActor and the associated templates.
+ * Most all of the parameters for these are now in a struct that can be passed to the SpawnActor function/template Made GamePlayers private and added accessors.
+ * Replaced many instances that previously used the players array to get a local player via a world.
+* **Physics:**
+ * Improved physics simulation by increasing solver iteration count.
+ * Refactoring:Removed bCreatePhysicsState flag;
+ * It only creates physics state if collision is on.
+ * If you need to create physics state without collision for query, please set bAlwaysCreatePhysicsState to true.
+* Character movement improvements
+ * Refactored lots of duplicate code for sliding along surfaces to use common SlideAlongSurface() or SlideAlongVerticalSurface() functions.
+ * Changed sliding code to use smooth capsule normal, not the normal of the surface upon which we impact.
+ * Most notably improves sliding along corners of geometry.
+ * We actually enforce MaxStepHeight now, based on the actual floor, not the floating base of the character.
+ * StepUp also used to allow steps up higher surfaces on the smoothed portion of the capsule, and we now check the height of the impact point when stepping up.
+ * Games will probably want to increase the default value to reflect the previous behavior.
+ * StepUp code avoids placing the character on unwalkable (bad floor normal) surfaces.In the future we'll improve behavior when moving over low objects with unwalkable normals.
+ * Floor sweep tests now avoid adjacent vertical surfaces to prevent false floor normals reported from hits with those surfaces.See ComputeFloorHeight().
+ * Added SafeMoveUpdatedComponent() to MoveComponent that handles starting in penetration.
+ * If penetration is detected that blocks the move, it tries to move out and retry the original move.
####オンライン
-* 専用サーバーのサポートを更新しました。
- * Steam のスタンドアロンの専用サーバー API をサポートするため様々なコードを修正しました。
- * サウンドとオーディオデバイスが専用サーバーに対して確実にオフにしました。
-* Windows プラットフォーム ハードウェア サーベイに対して改善しました。
- * 第一回目のサーベイを実施しました。以後、月次で実施します。
- * 持続的なエディタ パフォーマンス (プログラミング / スレート フレームレート) の測定およびエディタへの 1 回ごとの記録を開始しました。
- * CPU、OS、RAM stats を改善しました。
- * エンジンがゲーム特有にカスタマイズされている場合、ハードウェアサーベイ機能を公開しました。
+* Dedicated server support updates
+ * Fixed various code to support Steam's standalone dedicated server APIs
+ * Made sure sound and audio devices are off for dedicated servers.
+* Improvements to Windows platform hardware survey.
+ * Survey is performed on first run and once per month thereafter.
+ * Sustained editor performance (Programming/Slate framerate) is measured and recorded every time to editor is started.
+ * Improved CPU, operating system and RAM stats.
+ * Exposed hardware survey features if the engine for game-specific customization.
-#### レンダリング
-* **マテリアルとテクスチャ:**
- * Visualizetexture で深度バッファをマップすることで、より多くの色の読み取りが可能になりました。
- * キューブテクスチャがテクスチャ エディタの中で正しく中央に位置するようにしました。
+####レンダリング
+* **Materials and Textures:**
+ * Visualizetexture now maps depth buffer to a more readable color range.
+ * Cube textures are now correctly centered in the texture editor.
* **ライティング&シャドウ:**
- * 複数のシャドー cvar 名を変更しました。
- * シャドー レンダリング調査や色付きシャドーのカスケード用に r.Shadows.FreezeCamera を追加しました。
-* **ポストプロセス エフェクト:**
- * ポストプロセス機能が期待どおりに動くかテストする r.exposureoffset を追加しました。
- * TemporalAA テストマテリアルを RenderTestMap に追加しました (高周波ディザリングを TemporalAA と使用すると可能になるレンダリング トリックもある) 。
- * PostProcessVolumes などにおける露出のマニュアル設定を DX10 で出来るようにしました。
-* バンディング関連の問題を解消するためにランダムディザを HDR エクスポートに追加しました。
+ * Renamed multiple shadow cvars.
+ * Added r.Shadows.FreezeCamera for shadow rendering investigations, colored shadow cascades.
+* **Post Process Effects:**
+ * Added r.exposureoffset to test if postprocessing features works as expected.
+ * Added TemporalAA test materials to RenderTestMap (high frequency dithering using with TemporalAA enables some rendering tricks).
+ * Manual setting of exposure in PostProcessVolumes etc now works in DX10.
+* Added random dither to HDR export to eliminate some banding issues.
####プラットフォーム
-* エンジンとエディタを Mac へポートする作業を継続します。
-* 要望があれば、UnrealBuildTool で アプリケーション バンドルを PC にコピーできるようにしました (ビルドマシンが Mac 実行ファイルでチェックするには非常に便利) 。
+* Continued work on porting the engine and the editor to Mac.
+* UnrealBuildTool can now copy the app bundle back to the PC if requested (only really useful for build machines checking in Mac executables).
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/June/ReleaseNotesJune2013.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/June/ReleaseNotesJune2013.KOR.udn
index cb0647649194..4968101e52eb 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/June/ReleaseNotesJune2013.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/June/ReleaseNotesJune2013.KOR.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Title: 2013년 7월 릴리즈 노트
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-8
[TOC(start:2 end:2)]
@@ -157,12 +158,12 @@ Template:ReleaseNotes.html
* 큐브 맵 씬 캡처 Cube Map Scene Capture 액터를 추가했습니다.
* 큐브 렌더 타겟용 HDR 익스포트 기능이 추가되었습니다.
* **머티리얼 & 텍스처:**
- * MaterialParameterCollection 머티리얼 파라미터 콜렉션:
- * 파라미터 콜렉션과 그 기본값을 정의하는 애셋입니다.
+ * MaterialParameterCollection 머티리얼 파라미터 컬렉션:
+ * 파라미터 컬렉션과 그 기본값을 정의하는 애셋입니다.
* 머티리얼에서는 CollectionParameter 노드로 이 파리미터들을 레퍼런싱할 수 있습니다.
* 그 후 블루프린트에서는 실행시간에 효율적으로 이 파라미터에 대한 값을 설정할 수 있으며, 그러면 모든 머티리얼에 새 값이 들어갑니다.
* 전역 머티리얼 파라미터, 또는 레벨별 파라미터, 아니면 그냥 에디터에서 대량의 머티리얼 변화를 편하게 미리보는 용도로 사용할 수 있습니다.
- * 콜렉션에서 파라미터를 제거하면 다수의 블루프린트와 머티리얼이 한꺼번에 깨질 수 있으니 주의해야 합니다.
+ * 컬렉션에서 파라미터를 제거하면 다수의 블루프린트와 머티리얼이 한꺼번에 깨질 수 있으니 주의해야 합니다.
* **라이팅 & 섀도잉:**
* 라이트매스 솔버 퀄리티가 개선되었습니다.
* 스무딩된 노멀이 트라이앵글 노멀과 그리 잘 일치되지 않는 지오메트리의 라이팅이 매우 얼룩지고 빌드시간도 오래 걸리던 것이 해결되었습니다.
@@ -314,7 +315,7 @@ Template:ReleaseNotes.html
* 에디터 메인 메뉴 배치가 개선되었습니다!
* 실제 애셋을 편집중이었다면, 메뉴바에 애셋 메뉴만 추가됩니다.
* World Props (월드 프로퍼티) 버튼을 World Settings (월드 세팅) 으로, 툴팁과 함께 업데이트했습니다.
-* 로컬 콜렉션 생성 실패에 대한 오류 메시지 창이 콜렉션 리스트에 붙기 보다는 콜렉션 뷰에 붙습니다.
+* 로컬 컬렉션 생성 실패에 대한 오류 메시지 창이 컬렉션 리스트에 붙기 보다는 컬렉션 뷰에 붙습니다.
* 이제 씬 아웃라이너에 PIE 액터의 선택과 수정이 지원됩니다.
* 에디터 뷰포트 그리드 크기 증감 기능에 키를 지정할 수 있게 되었습니다.
* 콘솔 창의 'log list' 가 정렬됩니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/May/ReleaseNotesMay2013.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/May/ReleaseNotesMay2013.JPN.udn
index da493136a7c4..c5039f3824fa 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/May/ReleaseNotesMay2013.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/May/ReleaseNotesMay2013.JPN.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:1995731
-Title:2013年5月リリースノート
+INTSourceChangelist:3367470
+Title:2013 年 5 月リリースノート
Availability:Licensee
Crumbs:%ROOT%, Support/Builds
Description:
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-9
[TOC(start:2 end:2)]
@@ -13,8 +14,8 @@ Template:ReleaseNotes.html
[REGION:simpletable]
| アイテム | 情報 |
| ---- | ---- |
-| **Label** | QA_APPROVED_UE4_BUILD_2013_05 |
-| **Changelist #** | 1652795 |
+| **ラベル** | QA_APPROVED_UE4_BUILD_2013_05 |
+| **チェンジリスト#** | 1652795 |
| **VISUAL STUDIO VERSION** | Microsoft Visual Studio 2010 version 10.0.40219.1 SP1 Rel |
| **DIRECTX** | 2010年6月 |
[/REGION]
@@ -26,7 +27,7 @@ Template:ReleaseNotes.html
* UE4 ビルドターゲットの変更: [UE4 Target Changes](https://udn.unrealengine.com/questions/166994/ue4-target-changes.html)
-##主な新機能
+## 主要な新機能
#### エディタ システム
@@ -39,18 +40,18 @@ Template:ReleaseNotes.html
* ユーザーは適用を除外し、何も選択せずに **CreatePhysicsAsset** を非設定にすることができます。
 
-* **コリジョン システムインターフェースの改善**
- * インターフェースが改善されたコリジョンプロファイルシステムが追加されました。
+* **コリジョン システム インターフェースの改善**
+ * インターフェースが改善されたコリジョン プロファイル システムが追加されました。
* 現在の設定には、NavigationTestingActor、 BlockingVolume、 Character、 InterpActor、 StaticMeshComonent、そして SkeletalMeshActor が含まれます。利用可能なプロファイル リストは「BaseEngine.ini」ファイルにあります。
- * カスタム編集 UI (以下のスクリーンショット)に新規のチャンネル マッピング機能が追加されました。
+ * カスタム編集 UI (以下のスクリーンショット) に新規のチャンネル マッピング機能が追加されました。
* カスタム エンジンおよびゲーム チャンネルは、「BaseEngine.ini」ファイルで名前を変更することができます。
-* **カラーピッカー**
+* **カラー ピッカー**
* カラーピッカーにスポイトツールが追加されました。オンスクリーンのどこからでもすばやく色をピックアップすることができます。
 
* **レベル ブラウザでのソース制御**
* ユーザーはレベル ブラウザからソース制御機能へアクセスが可能になりました。
- 
+ 
* ソース制御アプリケーションと UE4 エディタ間を頻繁に切り替えが必要なユーザーにとって、ワークフローの統合及び迅速化の大いなる可能性があります。
@@ -58,15 +59,15 @@ Template:ReleaseNotes.html
* **入力バインディングの変更**
* 入力コンポーネントはもはや明示的にブループリントへ追加しません。代わりに、入力サブメニューからバインディングをアクタブループリントへ追加することができます。
- * アクションやキーイベントを作成したり、軸の値に対してゲッターを配置することができます。* キーイベントは、 [詳細] パネルでControl、 Alt、 そして Shift キーの組み合わせで指定します。
+ * アクションやキーイベントを作成したり、軸の値に対してゲッターを配置することができます。キーイベントは、[詳細] パネルでControl、Alt、Shift キーの組み合わせを指定します。
 
* アクションと軸は、「Base/DefaultInput.ini」ファイルで定義され、各アクションは複数のキーとマッピングすることができます。
* アクタはもはや制御されません。ポーンとして所有されるか、アクタで入力を有効にします。
- * レベルブループリントのバインディングは常にアクティブです。ポーンのバインディングは所有されると常にアクティブになります。アクタのバインディングは、Enable/Disable入力値を呼ぶことによってアクティブまたは非アクティブになります。この時入力スタックは以下の順序になっています。
+ アクタ * Bindings in the Level Blueprint are always active, bindings in a Pawn are active whenever it is Possessed, and bindings in an Actor are activated/deactivated by calling Enable/Disable Input, with input stacks being ordered as follows:
1. 有効な入力を持つアクタ
- 1. レベルブループリント
+ 1. Level ブループリント
1. 所有するポーン
@@ -82,8 +83,8 @@ Template:ReleaseNotes.html
#### レンダリング
* ** ポストプロセス マテリアル**
- * カスタムのポストプロセス エフェクトがマテリアルエディタで作成できるようになりました!
- * 複数のエフェクトをポストプロセス ボリュームに追加することができます。
+ * ソケットがスケルトンへデフォルト設定で追加されました。カスタマイズも可能です!
+ * メッシュのみのソケットもスケルトンに昇格できるようになりました。
* 同一のベースマテリアルが使用されるとポストプロセス ボリュームはマテリアル パラメータをブレンドします。
* ポストプロセス マテリアルはカスタムのレンダリング パスからデプスに、例えば画面上のオブジェクトからマスクを取るためにアクセスできます。
 
@@ -95,88 +96,88 @@ Template:ReleaseNotes.html
* **サウンドキュー エディタ**
* エディタでサウンド キューをプレビューする場合、ブループリントでインパルスが表示されるのと同様にキューを通してパスが表示されます。これはキューが、単純、複雑、またはそれ以外でも役立ちます。
- (w:640)
+ (w:640)
* **減衰の形状**
- * それぞれが独自の形状プロパティを持つ、球(デフォルト)、ボックス、カプセル、またはコーン形状から選択が可能になりました。
+ * それぞれが独自の形状プロパティを持つ、球 (デフォルト)、ボックス、カプセル、またはコーン形状から選択が可能になりました。
(w:425)
* 各減衰ボリュームは独自のディメンションとフォールオフの距離を持つようになりました。
-####Unreal フロントエンド
+#### Unreal Frontend
* **アンリアルコンソールのショートカット**
* Unreal Console/FrontEnd は頻繁に使用するコマンドをショートカット ブラウザに保存できるようになりました。これにより、簡単に参照と使用ができるようになります。
- (w:800)
+ (w:800)
## 新規追加
#### エディタとツール
-* **スレートとUI**
+* **スレートと UI**
* 全てのメニューは垂直ラッピングをサポートしています。
* 大きなメニューのサイズは、作業領域の高さに収まるように制限されています。
* 必要に応じてメニューに垂直スクロールバーが表示されます。
- * 以下の特定のコンテクストメニュー(x17)に拡張性のあるフックが追加されました:コンテンツブラウザ、レイヤー、レベルエディタ、マテリアルエディタ、マテリアルインスタンスエディタ、レベルブループリント
+ * 以下の特定のコンテクストメニュー (x17) に拡張性のあるフックが追加されました:コンテンツブラウザ、レイヤー、レベルエディタ、マテリアルエディタ、マテリアルインスタンスエディタ、レベルブループリント
* コンテンツ ブラウザは「ノマド タブ」で、最高 4 つまで開くことができます。ノマドタブをドックエリアやタブにドッキングできます。
* Quick Browserと主要タブのコンテンツブラウザは、それぞれがコンテンツ ブラウザ 1 とコンテンツ ブラウザ 2 に置き換えられました。
* コンテンツ ブラウザ 3 とコンテンツ ブラウザ 4 が追加されました。
-* MakeEditWidget メタデータ(ベクターウィジット編集)は、アクタクラスの構造体/配列データメンバー内で定義されたベクターと作業が可能になりました。
-* [New Project] ダイアログは、ロケットビルド以外でも使用が可能になりました。引数なしにUE4Editor.exe(またはこれをダブルクリック)を起動すると、このダイアログが表示されます。
+* MakeEditWidget メタデータ (ベクター ウィジェット編集) は、アクタクラスの構造体/配列データメンバー内で定義されたベクターと作業が可能になりました。
+* [New Project] ダイアログは、ロケットビルド以外でも使用が可能になりました。引数なしにUE4Editor.exe (またはダブルクリック) を起動すると、このダイアログが表示されます。
* エディタの File->New Project オプションからもこのダイアログへアクセスできます。
- * 現時点ではコードテンプレートでプロジェクトを作成することはできません。将来のリリースバージョンで再度試してみてください。
-* [Content Migration] が追加されました。この機能でアセットおよびアセット全ての依存関連物を別のゲームへコピーすることができます。
- * レベルブラウザでレベルを右クリックして、コンテンツブラウザのフォルダまたはコンテンツブラウザの個々のアセットから Migrate を選択します。
-* リダイレクタを右クリックする機能が追加され、手動修正が可能になりました。注意事項一連の警告を伴います。
+ * 現時点ではコードテンプレートでプロジェクトを作成することはできません。今後のリリースで再度試してみてください。
+* [Content Migration] が追加されました。この機能でアセットおよびアセット全ての依存関連物を別のゲームへコピーすることができます。
+ * レベルブラウザでレベルを右クリックして、コンテンツブラウザのフォルダまたはコンテンツブラウザの個々のアセットから [Migrate] を選択します。
+* リダイレクタを右クリックする機能が追加され、手動修正が可能になりました。一連の警告を伴います。
* ロードされていないマップによって参照されるリダイレクタは修正されませんが、それに対する参照は修正されます。
* コードに参照されるリダイレクタは完全には修正されません。
* ヘッドリビジョンまたは別のユーザーにチェックアウトされていないリダイレクタは完全には修正されません。
* 参照がヘッドリビジョンに存在しないリダイレクタ、参照が別のユーザーにチェックアウトされたリダイレクタ、そして参照のチェックアウトを拒否されたリダイレクタは完全には修正されません。
-* **大きなワールドのサポート**
- * ワールドブラウザ機能(開発中)が追加されました。
- * **Edit > Preferences > EpicLabs > WorldBrowser** を選択して有効にします。
- * ワールドは **File > Open World** コマンドから開きます。このコマンドは全てのサブレベルが格納されているフォルダを開きます。
+**大規模ワールドのサポート**
+ * ワールドブラウザ機能 (開発中) が追加されました。
+ * 有効にする手順は **[Edit] > [Preferences] > [EpicLabs] > [WorldBrowser]** です。
+ * ワールドは **File > Open World** コマンドで開きます。このコマンドは全てのサブレベルが格納されているフォルダを開きます。
* ワールド ブラウザはサブレベルを視覚的にワールドへ配置し、サブレベル間のストリーミング動作を管理します。
* ゲームでワールドを実行するにはこのコマンド パターンを使用します: `MyGame /Game/MyWorld/MyWorldPersistentMap?addmaps=Map01`
- * ゲームプレイ中に読み込まれたワールドは、新しいオリジン(通常はゼロ基点)へ移動します。現時点では自動機能しませんが、将来的には自動で機能する予定です。`SetWorldOrigin`コンソールコマンドでテストが出来ます。
+ * ゲームプレイ中に読み込まれたワールドは、新しいオリジン (通常はゼロ基点) へ移動します。現時点では自動機能しませんが、将来的には自動で機能する予定です。`SetWorldOrigin`コンソールコマンドでテストが出来ます。
* **ランドスケープ**
* ランドスケープ スプラインメッシュに対して Z のみが有効であった代わりに、「前方」軸が選択できるようになりました。
* スプライン編集モード時にランドスケープ スプラインメッシュをクリックすると、スプライン セグメントが選択されるようになりました。
* ランドスケープは FBX 形式でエクスポートが可能になりました。
- * ランドスケープは LOD の縮小版としてエクスポートが可能になりました。ランドスケープアクタのプロパティに設定されます。
- * ランドスケープのハイトマップとレイヤーに "reimport(再インポート)" 機能が追加されました。レイヤーのために元々インポートされたファイル、またはレイヤが直前にエクスポートされたファイルから再インポートします。
+ * ランドスケープは LOD の縮小版としてエクスポートが可能になりました。ランドスケープ アクタのプロパティに設定されます。
+ * ランドスケープのハイトマップとレイヤーに "reimport (再インポート)" 機能が追加されました。レイヤーのために元々インポートされたファイル、またはレイヤが直前にエクスポートされたファイルから再インポートします。
* 新しい"Interactive" プロパティの変更タイプは、ランドスケープ スプライン プロパティをインタラクティブに編集時に、コリジョンデータの再ビルドを遅延させるこで遅延を修正するために使用します。
* ランドスケープ スプラインは緻密なコリジョンを生成できるようになりました。例えば弾痕跡をブロックすることが可能になりました。
- * ランドスケープエディタが開いていて編集するランドスケープが無い場合、デフォルト設定で [New Landscape] パネルを拡張することができます。
+ * ランドスケープ エディタが開いていて編集するランドスケープが無い場合、デフォルト設定で [New Landscape] パネルを拡張することができます。
* ランドスケープのツールとブラシのボタンおよび設定にツールヒントが追加されました。
-* **レベルエディタのビューポートメニューの改良**
- * ビューポートのビューメニューが以下の 2 つのメニューへ分割されました。
- * カメラタイプとビューモードです。
+* **レベル エディタのビューポート メニューの改良**
+ * ビューポートのビュー メニューが以下の 2 つのメニューへ分割されました。
+ * カメラ タイプとビュー モードです。
* さまざまなメニューのラベルとアイテムの配列が整理されました。
* レベル ビューポート メニューのボタンラベルへアイコンが追加されました!
- * カメラタイプとビューモードのタイプの両方が表示されます。
+ * カメラ タイプとビューモードのタイプの両方が表示されます。
* ツールバーメニューのアイテムウィジットは、オプションのラベルアイコンをサポートするようになりました。
* モジュール UI に [Reload(再読み込み)] ボタンが追加されました。
* レベルエディタに [Recompile Level Editor] オプションが追加されました。
-* エディタのモーダル ウィンドウは、ユーザーが別のウィンドウをクリックするとフラッシュします(現時点では Windows のみです)。
- * アクティブなモーダルウィンドウ(Programming/Slate ウィンドウのみです。OSネイティブなウィンドウではありません)は、別のスレートウィンドウがアクティブになるとフラッシュします。
- * Windows タスクバーからモーダルウィンドウを削除しました。
+* エディタのモーダル ウィンドウは、ユーザーが別のウィンドウをクリックするとフラッシュします (現時点では Windows のみです)。
+ * アクティブなモーダル ウィンドウ (Programming / Slate ウィンドウのみです。OS ネイティブなウィンドウではありません) は、別のスレートウィンドウがアクティブになるとフラッシュします。
+ * Windows タスクバーからモーダル ウィンドウを削除しました。
* モーダル ウィンドウが表示されている時、バックグラウンド ウィンドウは完全に無効化されます。
-* クラスコメントがエディタのツールヒントとして表示されるようになりました。
+* クラス コメントがエディタのツールヒントとして表示されるようになりました。
* **プロファイラ**
- * 新イベントグラフ ウィジットが追加されました(初回イタレーション)。
+ * 新イベントグラフ ウィジットが追加されました (初回イタレーション)。
* ユーザーがデータグラフをクリックするたびに、新イベントグラフは新規のタブからドキュメントを開きます。
* 以下のビューモードのサポートが追加されました:
* 階層
* フラットで包括的
* フラットで排他的
- * ホットパスに基本的な「"expand hot path"(ホットパスの展開)」とカラーコーディングが実装されました。
- * イベントグラフにコンテクストメニューが追加されました(完全には実装されていません)。
- * 統計の集計が追加されました(初回イタレーション)。
- * データグラフのサマリーは、現統計値と一緒に統計集計情報を表示します。
-* **スタティックメッシュエディタ**
+ * ホットパスに基本的な「"expand hot path" (ホットパスの展開)」とカラーコーディングが実装されました。
+ * イベントグラフにコンテクストメニューが追加されました (完全には実装されていません)。
+ * 統計の集計が追加されました (初回イタレーション)。
+ * データグラフのサマリーは、現スタッツ値と一緒に統計集計情報を表示します。
+* **スタティックメッシュ エディタ**
* ソケットはスタティックメッシュ エディタで名前を変更することができます。
* スタティックメッシュ エディタで [Delete] キーを押すと、選択したソケットを削除するようになりました。
@@ -192,7 +193,7 @@ Template:ReleaseNotes.html
* ブループリント エディタに、ソース制御が保持するブループリントの前バージョンに対する diff 機能を有効にする [diff] ボタンが追加されました。
* [My Blueprints] タブから選択したプロパティは [詳細] パネルで直接デフォルト値を編集できるサポート機能が追加されました(実験的)。
* ブループリントエディタ デバッグツールバーに [PIE] ボタンが追加されました。
-* 無限ループを持つブループリントが例外を発生させるようになりました。アクティブな場合、ログを取りブループリント デバッガをブレーク(停止)します。
+* 無限ループを持つブループリントが例外を発生させるようになりました。アクティブな場合、ログを取りブループリント デバッガをブレーク (停止) します。
* 新規に作成したブループリントがグラフモードの代わりにコンポーネントモードで開くようになりました。
* ブループリントのモーダル カラーピッカーがトップレベルウィンドウに表示されないように SColorBlock を親に持つようになりました。
* エディタでは、一時停止したシミュレーションを 1 フレーム毎に進めることができるようになりました。
@@ -200,7 +201,7 @@ Template:ReleaseNotes.html
#### 分析
-* イベント率が設定制限を超えると SwrveAnalytics が警告を出すようになりました。
+* イベント率が設定制限を超えると SwrveAnalytics が警告を出すようになりました。
* Swrve は一分間あたり 60 のイベントを定義しますが、これは総計の測定です。一分間あたり 70 のイベントを超える場合、イベントの制限をお勧めします。
* 統計は、UE_BUILD_SHIPPING build setting または-RELEASEANALYTICS cmdline の場合に、Release アカウントを選択するようになりました。
@@ -216,11 +217,11 @@ Template:ReleaseNotes.html
* navmesh ビルド時にスタティックジオメトリにナビゲーションリンクの先をスナップする汎用メカニズムが実装されました。
* 最大ナビゲーションクエリー検索ノードを「ini」ファイル経由で設定可能にしました(RecastNavMesh::DefaultMaxSearchNodes)。
* 構造体に Protected と Private が反映されたメンバー変数が含まれるようになりました。
-* 全てのティック関数をログへ書き込むためにダンプする「dumpticks」コンソールコマンドが新規で追加されました。
- * 有効または無効にしたTick関数のみをダンプする、「enabled」と「disabled」パラメータをそれぞれオプションで使用できます。
-* HUD の統計の階層ツリーの表示をトグルする「stats tree threadname (optional statname)'」コンソールコマンドを追加しました。
- * 'stats treeup (optional number of lines)' コンソールコマンドでツリーの上層へ移動します。
- * 'stats treedown (optional number of lines)' コンソールコマンドでツリーの下層へ移動します。
+* 全てのティック関数をログへ書き込むためにダンプする 'dumpticks' コンソール コマンドが新規で追加されました。
+ * 有効または無効にしたTick関数のみをダンプする、 'enabled' と 'disabled' パラメータをそれぞれオプションで使用できます。
+* HUD の統計の階層ツリーの表示をトグルする 'stats tree threadname (optional statname)' コンソール コマンドを追加しました。
+ * 'stats treeup (任意の行数)' コンソール コマンドでツリーの上層へ移動します。
+ * 'stats treedown (任意の行数)' コンソール コマンドでツリーの下層へ移動します。
* IsRunningGame() と IsRunningServer() 関数は、実行ファイルが「MyGame.exe」、 「MyGameServer.exe」、またはゲームで実行しているエディタもしくはサーバーモードであるかをチェックします。
* 一過性の出力を My Documents 内のユーザー保存場所に書き込むためのファーストパス サポート「-SaveToUserDir」で有効にします。
* アクタから複数のGetNetOwnerタイプ関数を削除し、GetNetConnection関数に置き換えました。
@@ -229,30 +230,30 @@ Template:ReleaseNotes.html
* NULL on CLIENT -> Non Owner.
* NOT NULL ON SERVER -> replication connection to client.
* NOT NULL ON CLIENT -> replication owner.
- * さまざまなコード領域でレプリケーション オーナーチェックを簡素化することを期待します。
+ * さまざまなコード領域でレプリケーション オーナーチェックを簡素化することを期待します。
* プレイヤー コントローラなしのアクタが GetNetConnection をオーバーロードし、 RPC/レプリケーションを使用することができます。
* コンソールオートコンプリート
- * コンソール オートコンプリート検索のためにゲームごとにマップパスの設定が可能です。
+ * コンソール オートコンプリート検索のためにゲームごとにマップパスの設定が可能です。
* オート コンプリートのマップ名に対して現在のユーザーのデベロッパ フォルダを検索します。
#### コア
* **プラグイン**
- * 最初のUE4プラグインサポート!(作業中ですが利用可能です)。
+ * 最初の UE4 プラグインサポート!(作業中ですが利用可能です)
* 「.uplugin」ファイルを作成してモジュールを読み込むことができます。これらのプラグインファイルは「 JSon」形式です。
- * UBTとUE4は自動で`.uplugin` ファイルを検知します。
- * プラグインモジュールとC++コードは自動的に生成されたプロジェクトファイルへ追加されます。
+ * UBT と UE4 は自動で`.uplugin` ファイルを検知します。
+ * プラグイン モジュールと C++コード は自動的に生成されたプロジェク トファイルへ追加されます。
* エンジンプラグインは検知されて「/Engine/Plugins」ディレクトリから読み込まれます。
* プラグインにはコンテンツ サブフォルダがあります。これらのファイルは自動検知されます。
* プロジェクト指定プラグインがサポートされました!「/Plugins 」ディレクトリを作成できます。
* モノリシックビルドは現時点でプロジェクトの全てのプラグインをコンパイルします。
* プラグインは複数のモジュールをサポートします。それぞれのモジュールは、Editor、Runtime、または Development のいずれかに分類されます。
- * 複数のプラグインのローディング フェーズがサポートされます(PreEngineInit, PreGameInit, Default)。
- * プラグインファイルは基本的なバージョンチェックをサポートします(エンジンおよびファイルのバージョン)。
-* 不良な '-' ケース (通常、電子メールからコマンドラインを張り付ける場合) は、ユーザーに警告し、終了するようにします。
+ * 複数のプラグインのローディング フェーズがサポートされます (PreEngineInit, PreGameInit, Default)。
+ * プラグインファイルは基本的なバージョンチェックをサポートします (エンジンおよびファイルのバージョン)。
+* 不正な '-' ケース (通常、電子メールからコマンドラインを張り付ける場合) は、ユーザーに警告し、終了するようにします。
* PhysX3Common* を Engine/Binaries/Win<32/64> フォルダから適切な Engine/Binaries/ThirdParty/PhysX フォルダに移動しました。
-* Automation Window, Controller, および Worker のモジュールが再ロード可能な DLL になりました。
+* Automation Window、Controller および Worker のモジュールが再ロード可能な DLL になりました。
* モジュール固有のバージョン番号がアーカイブにシリアル化する場合に使用できるようになりました。
* FCustomVersionRegistration 型のグローバル変数をモジュールに配置し、ロード時にモジュール番号を登録できるようになりました。
* サブオブジェクト リダイレクタを使用してサブオブジェクトを削除できるようになりました。これを行うためには、subobj リダイレクタを .ini ファイルに追加し、NewSubobjName を空の文字列に設定します。
@@ -265,11 +266,11 @@ Template:ReleaseNotes.html
* IOSTargetPlatform などのプラットフォーム固有の dll は、Binaries/Win<32/64> フォルダのサブディレクトリにあります。
* モジュール ルールでは、DLL のビルド時に使用する BinariesSubFolder を指定することができます。
* 新しい WindowsServer プラットフォームのクッキングを変更しました。
- * WindowsServer は SM4 および SM5 シェーダーと全てのテクスチャフォーマット処理を無視します。
+ * WindowsServer は SM4 および SM5 シェーダーと全てのテクスチャフォーマット処理を無視します。
* render thread コマンドのために **ENQUEUE*** マクロを無効にしました。UE_SERVER=1 実行時は常に NOOP になります。
* デディケイテッド サーバーの最初の作業があります (NULLRHI、レンダリング スレッドを強制しないなど)。
* デディケイテッド サーバーへの自動ログイン(コマンドラインの -login/-pass はオンライン サービスにログインしようとし、RegisterServer() を呼び出します)。
-* 大きな IOS アップデート (Audio, Slate, UnrealConsole サポート)
+* 大きな IOS アップデート (Audio、Slate、UnrealConsole サポート)
* DLL 検索パスを安全に修正するために PushDllDirectoty/PopDllDirectory が追加されました。
* ロード前に有効なプラットフォーム DLL をチェックするサポートを追加しました (Win64 サポートの DLL を例えば、PS4 にチェックインすると、PS4 SDK をインストールしていなければクラッシュにつながるため PS4 はロードされません)。
@@ -290,422 +291,422 @@ Template:ReleaseNotes.html
* シーケンスのプレイヤーとブレンド空間を同期グループのメンバーとし宣言できます。グループ リーダーが他のすべてのメンバーの時間進行と通知生成を制御します。
* 各グループ メンバーには役割があります。最も高いブレンド ウェイト合計 (デフォルト) を持つ場合にリーダー、常にリーダー、決してリーダーにならないメンバーがあります。
* Export FBX 機能をペルソナ ビューポート メニューからアセット ブラウザに移動し、複数のアニメーションを一回でエクスポートする機能を追加しました。
-* モーフ ターゲットの削除はコンテクストメニューで処理するようになりました。
+* モーフ ターゲットの削除はコンテクスト メニューで処理するようになりました。
#### レンダリング
-* **パーティクル システム**
+* パーティクル システム
* グローバル ベクターフィールドのタイトネスは、グローバルベクターフィールドのカスケード モジュールからオーバーライドできます。
* ParticleSizeマテリアルノードが利用可能になりました。このノードはワールド空間にあるパーティクルの XY サイズを返します。
* **マテリアル**
- * TextureObject 式は作成時に選択したテクスチャを自動で割り当てます。
- * TextureObject 式に [Use Current Texture] メニューオプションが加わりました。
- * TextureObjects と TextureSamples は新規のメニューオプションで交換できるようになりました。
- * WorldPosition material 式に、ワールド位置にシェーダーオフセットを含むか否かを決定する新設定が追加されました。シェーダー オフセットにはWorld Position Offset といくつかのテッセレーション(細分化処理)が含まれます。
-* **ポストプロセス エフェクト**
+ * TextureObject式は作成時に選択したテクスチャを自動で割り当てます。
+ * TextureObject 式に [Use Current Texture] メニュ ーオプションが加わりました。
+ * TextureObjects と TextureSamples は新規のメニュー オプションで交換できるようになりました。
+ * WorldPosition material 式に、ワールド位置にシェーダー オフセットを含むか否かを決定する新設定が追加されました。シェーダー オフセットには World Position Offset といくつかのテッセレーション (細分化処理) が含まれます。
+* **ポストプロセス エフェクト:**
* 既存のモーション ブラーを以下のような新規のモーション ブラー アルゴリズムで置き換えましたが [](http://graphics.cs.williams.edu/papers/MotionBlurI3D12/McGuire12Blur.pdf) まだ半分の解像度であり、小規模な改善を予定しています。
* ポスト プロセス後のカスタム デプス パスのレンダリング、プリミティブ コンポーネントのチェックボックスの最初のイタレーションは、可視状態にする (シルエットのレンダリングで役立ちます) ために処理を速くする必要性があり、エディタ チェックボックスのメッシュ / プリミティブ コンポーネントまたはゲーム コードで有効にすることができます。
* マテリアルのポスト プロセスの最初のイタレーションが利用できます (PostProcessVolume で全画面パスでレンダリングするマテリアルを指定できます。Postprocess0 または GBuffer のプロパティを入力するにはSceneTexture マテリアル式を使用します)。TemporalAA については改善が必要で複数のパスとその他の変更をサポートします。
* Temporal AA がデフォルトのアンチエイリアス ソリューションになりました。これは FXAA よりも滑らかで高品質な画像を生成します。
-* **ShadowSharpen** プロパティをライトに追加しました。
+* **ShadowSharpen** プロパティをライトに追加しました。
* r.CompositionGraphDebug による合成グラフ デバッグ ダンプを追加しました。
-* 解像度や乗数値を使用する場合に HighResShot コマンドが機能するようになりました。使用例:HighResShot 1920x1080
+* 解像度や乗数値を使用する場合に HighResShot コマンドが機能するようになりました。使用例:HighResShot 1920x1080.
#### オーディオ
-* SoundNodeBranch が追加されました。名前付けしたブール パラメータを AudioComponent で使用してサウンドキューのビヘイビアを変更することができます。
+* SoundNodeBranch が追加されました。名前付けしたブール パラメータを AudioComponent で使用してサウンド キューのビヘイビアを変更することができます。
* SoundModes は SoundMix へ名前が変更されました。
* Base SoundMix を 1 つ設定し、複数の SoundMix モディファイアーをプッシュするオプションを付けました。
-* 単一の CurrentMode とそのフェード量、およびiBaseSoundMode の考え方は、アクティブな SoundMixes のリストとそれらの現在の状態で置き換えられました。
- * 'STAT SOUNDMIXES' コマンドはどの SoundMixess が現在アクティブであるか (ListSoundModes を効果的に置き換えます) 、そのフェードイン レベル、およびどのモードが EQ を制御しているかを示すようになりました。
+* 単一の CurrentMode とそのフェード量、および iBaseSoundMode の考え方は、アクティブな SoundMixes のリストとそれらの現在の状態で置き換えられました。
+ * 'STAT SOUNDMIXES' コマンドはどの SoundMixess が現在アクティブであるか (ListSoundModes を効果的に置き換えます)、そのフェードイン レベル、およびどのモードが EQ を制御しているかを示すようになりました。
* Audio Effect マネージャは EQ の変更を適用する前にサウンド モードのプライオリティをチェックするようになりました。
* EQ の制御は EQ Priority プロパティによってさらに指定可能であり、すべてのサウンド モードが無効になった場合に EQ エフェクトをクリアする新しい関数があります。
-* 新しい Reverb Effect アセットタイプ経由で Reverb 設定を公開します。
+* Reverb 設定を新規 Reverb Effect アセット タイプ経由で公開しました。
-## アップグレードノート
+## アップグレード ノート
#### エディタとツール
* Game, Editor, GameUncooked および Server は、Target.cs ファイル'Type' プロパティで使用する独自のターゲット タイプを持ちます。
- * TargetType.Game: UEBuildGame ターゲットをビルドします。
- * TargetType.Editor: UEBuildEditor ターゲットをビルドします。
- * TargetType.Server: UEBuildServer ターゲット (デディケイテッド サーバー) をビルドします。
- * TargetType.GameUncooked:デフォルトでゲームを実行する (`-game` 引数で) UEBuildEditor ターゲットをビルドします。
- * 詳細とアップグレード情報については [ターゲット変更](https://udn.unrealengine.com/questions/166994/ue4-target-changes.html) をご覧ください。
-* UE4Editor.exe として Example は機能しなくなりました。代わりに UE4Editor.exe QAGame を使用しなければなりません。
-* TFieldIterator コンストラクタのパラメータは、読みやすさを改善するためにブールから列挙型変数に変更されました。既存の TFieldIterator の使用ではアップデートが必要になります。
- すべてのコンポーネントが有効化または無効化できるようになりました。
- * bIsActive が SceneComponent から ActorComponent に移動しました。
- * 非アクティブなコンポーネントがティックを無効にします。
- * ティックを必要とする既存の ActorComponents は適切な時に有効化するか、コンストラクタで bAutoActivate = true を指定する必要があります。
-* Send PhysicsTransform は仮想ではなくなりました。代わりに OnUpdateTransform を使用します。
-* 入力バインディング システムがリストラクチャリングされました。
-* Steam SDK は 1.23a にアップグレードされました。
-* 名前付けしたネット ドライバーを、定義とアクティブなドライバー リストにリファクタリングしました。
- * DefaultEngine.ini の NamedNetDrivers パラメータは、NetDriverDefinitions という名前になりました。
- * GetNetMode は、サーバー/クライアント/スタンドアロンを決めるためのネット ドライバーのステートを見るようになりました。
- * NetMode 変数はまだありますが、非推奨になりました。
-* メッセージング システムが、厳密に型指定されたメッセージ (UStructs)を使用するようにアップグレードされました。
-* GENERATED_UCLASS_BODY() 宣言後のセミコロンがサポートされなくなりました。
-*リファクタリングされたアクタ ファクトリがコンテンツをロードする必要なくコンテンツからアクタを作成できるか否かを決定できるようになりました。
-* これは将来機能がオンラインになったときに、適切にインタラクションするようにどのアクタを作成できないか、どのアクタがこうしたコンテンツの再保存を必要とするかコンテンツをフィルタリングする機能の準備です。
-* すべての 'unofficial' (非公認) (つまり、perforce または ArtistSync からは得られない) 人々が利用するショートカット、バッチ ファイルなどは更新する必要があります。
- * Win32 ビルドを monolithic/requirescookeddata に強制的にするコードを取り除きました。
- * **注記**:Win32 エディタのビルドは、コンパイラのアラインされたパラメータ問題が原因でまだ機能しません (これは VS2010 と VS2012 の両方で起こります)。
- * **注記**:ゲームの'Uncooked' バージョンをビルドすると、すべての古いコマンドラインはまだ機能します。ただし、コマンドレットの実行は例外です。これらは、いずれの exe でも"-run=" が機能することを必要とします。
-* 以前の global canvas 関数 (EG. ) を呼び出しているコードは、コンテキストをパラメータとして渡すのではなくキャンバス コンテキストから同じ関数を呼び出さなくてはならなくなりました。
-* GIsGame は FApp::IsGame() に置き換えられました。
+ * TargetType.Game: Builds a UEBuildGame target.
+ * TargetType.Editor: Builds a UEBuildEditor target.
+ * TargetType.Server: Builds a UEBuildServer target (dedicated server).
+ * TargetType.GameUncooked:Builds a UEBuildEditor target that defaults to running the game (via the `-game` argument).
+ * See [Target Changes](https://udn.unrealengine.com/questions/166994/ue4-target-changes.html) for complete details and upgrade info
+* As the UE4Editor.exe Example will no longer work, you must use UE4Editor.exe QAGame instead.
+* TFieldIterator constructor params have been changed from boolean to enum types in order to improve readability.Existing uses of TFieldIterator will require updating.
+ * All components can now be activated or deactivated.
+ * bIsActive moved from SceneComponent to ActorComponent.
+ * Inactive components will disable their tick.
+ * Existing ActorComponents that require a tick will either need to Activate at the appropriate time or specify bAutoActivate = true in the constructor.
+* Send PhysicsTransform is no longer virtual.OnUpdateTransform should be used instead.
+* Input bindings system restructured.
+* Steam SDK upgraded to 1.23a.
+* Refactored named net drivers into definitions and active driver list.
+ * NamedNetDrivers parameter in DefaultEngine.ini is now named NetDriverDefinitions.
+ * GetNetMode now looks at state of net driver for determining server/client/standalone.
+ * NetMode variable is still around but is deprecated.
+* The Messaging system has been upgraded to use strongly typed messages (UStructs).
+* Semi-colons on the end of GENERATED_UCLASS_BODY() declarations are no longer supported.
+* Refactored actor factories to be able to determine if they can create an actor from a piece of content without requiring the content be loaded.
+* This in preparation for features involving filtering content out which actors can't be created from and will require that such content be resaved when the feature comes online in the future for them to be interact properly.
+* All 'unofficial' (ie you don't get it from perforce or the ArtistSync) shortcuts, bat files, etc. that people utilize will need to be updated.
+ * Removed code that was forcing Win32 builds to be monolithic/requirescookeddata.
+ * **NOTE:** Win32 editor builds still wont work due to the aligned parameter issue in the compiler (this happens in both VS2010 and VS2012).
+ * **NOTE:** If you build the 'Uncooked' version of your game, all old commandlines will still work... with the exception of running commandlets.These require "-run=" to work in either exe now.
+* Any code that was calling the previously global canvas functions (EG. ) must now call the same functions from the canvas context rather than passing the context as a parameter.
+* GIsGame has been replaced with FApp::IsGame().
#### ブループリント
-* ブループリントは LifeSpan に配慮するようになりました。LifeSpan がゼロ以外になったらブループリントはティックするように設定され、失効後に自己を破壊します。これはシーン内でティックされるアクタ数が増えるかもしれないことに注意してください。
-* カテゴリの非表示は、ブループリント エディタにおける変数を考慮するようになりました。
- * 意味がない数多くのプロパティからのブループリントへのアクセスを削除しました。
- * 多数のクラスの意味がないカテゴリ (主にコンポーネント) を非表示にしました。例えば、矢印コンポーネントの物理があります。
-* HUD の Canvas プロパティを保護しました。
- * DisplayDebug が HUD ではなくキャンバスを取るようにシグネチャの変更が必要でした。
-* ブループリント関数 Actor.DestroyComponent は非推奨になりました。代わりに ActorComponent.DestroyComponent を使用します。
-* Actor クラスの多くの 'BlueprintCallable' 関数は非推奨になりました。これは既存のレベル ブループリントで警告を発生する場合があります。
- * Actor, Emitter, Light の AmbientSound, DecalActor, DynamicSMActor, RadialForceActor の物理関数に影響を及ぼします。
- * ExposeFunctionCategories メタデータを使用してコンポーネント関数を含むアクタでコンポーネント関数を簡単に呼び出すことができるようになりました。
-* アクタのリファレンスをドラッグすると、エクスポーズしたコンポーネント関数が得られ、'call function on member' ノード ('get' 呼び出しと 'call' 呼び出しを組み合わせます) を配置します。
-アクタをコンポーネント関数に接続しようとすると、アクタに正しい型のコンポーネントが含まれていれば、'Get' ノードを挿入しようとします。
-* アクタから、NativeConstructionScript, IsRootComponentSimulatingPhysics, CheckHitInfo, GetActorMetrics, SetActorAndComponentsTickEnabled を取り除きました。
-* ポーンからAlwaysRelevantDistanceSquared, SetViewRotation, TickSimulated, SetMaxLandingVelocity, HurtByDamageType を取り除きました。
-* PC から PreRender , GetPartyMapName, GetPartyGameTypeName を取り除きました。
-* URB_BodySetup を UBodySetup に名前変更しました。
-* 物理ボリュームから WillHurt, ModifyPlayer, NotifyPawnBecameViewTarget を取り除きました。
-* FEdGraphSchemaAction_K2NewNode::InstantSpawn が SpawnNodeFromTemplate に名前変更されました。
-* グラフ スキーマ メニュー / パレットのビルドのために作成されたカスタムのブループリント ノード テンプレートは、ブループリントにトレースバックできる outer で作成されなければなりません。そこから派生したカスタムのスキーマがあれば例えば UEdGraphSchema_K2 の変更をご覧ください。
-* WorldInfo をWorldSettings に名前変更しました。
- * BaseEngine.ini でリダイレクタを get するようにしてください。
-* AActor::VerifyNoUnreachableReferences を削除しました。
-* AActor::TickSpecial の名前が ::Tick に変更されました。
-* AActor::TickAuthoritative と TickSimulated が削除されました。
+* Blueprints now respect LifeSpan.If LifeSpan is non-zero, blueprints will now be set to tick, and destroy themselves after they expire.Please be aware that this may increase the number of ticked actors in your scenes.
+* Category hiding is now respected for variables in Blueprint editor.
+ * Removed blueprint access from a number of properties where it did not make sense.
+ * Hide nonsensical categories for lots of classes (mainly components) e.g. physics on an arrow component.
+* Made Canvas property of HUD protected.
+ * Required changing signature of DisplayDebug take a canvas and not a HUD.
+* Blueprint function Actor.DestroyComponent has been deprecated.ActorComponent.DestroyComponent should be used instead.
+* Many 'BlueprintCallable' functions on Actor classes are now deprecated.This may result in warnings in existing level blueprints.
+ * Affects AmbientSound, DecalActor, DynamicSMActor, RadialForceActor, physics functions on Actor, Emitter, Light.
+ * Can now call the Component functions more easily on Actors that contain one, using the ExposeFunctionCategories metadata.
+* If you drag off an Actor reference, it will offer exposed Component functions, and will place a 'call function on member' node (which combines 'get' and 'call' nodes).
+* If you try and connect an Actor to a component function, it will try and insert a 'Get' node if that Actor contains a Component of the correct type.
+* Removed NativeConstructionScript, IsRootComponentSimulatingPhysics, CheckHitInfo, GetActorMetrics, SetActorAndComponentsTickEnabled from Actor.
+* Removed AlwaysRelevantDistanceSquared, SetViewRotation, TickSimulated, SetMaxLandingVelocity, HurtByDamageType from Pawn.
+* Removed PreRender , GetPartyMapName, GetPartyGameTypeName from PC.
+* Renamed URB_BodySetup to UBodySetup.
+* Removed WillHurt, ModifyPlayer, NotifyPawnBecameViewTarget from PhysicsVolume.
+* FEdGraphSchemaAction_K2NewNode::InstantSpawn has been renamed to SpawnNodeFromTemplate.
+* Any custom blueprint node templates created for graph schema menu / palette building must now be created with an outer that can trace back to the blueprint.See the changes made in UEdGraphSchema_K2 for examples if you have a custom schema derived from it.
+* Renamed WorldInfo to WorldSettings.
+ * Make sure to get redirector in BaseEngine.ini.
+* AActor::VerifyNoUnreachableReferences has been removed.
+* AActor::TickSpecial has been renamed ::Tick.
+* AActor::TickAuthoritative and TickSimulated have been removed.
#### ゲームプレイとフレームワーク
-* PhysicsActor と PhysicalMaterial はサウンド / エフェクトを直接サポートしなくなりました。
- * 各フレームですべての物理コリジョンを与えられるゲーム固有の PhysicsCollisionHandler を作成し、コリジョンで行いたいことを行うことができます。
-* アクタから仮想の NotifyHitActor/NotifyHitByActor を削除しました。
- * ブロックしているコリジョンに対して ReceiveHit をオーバーライドするようになりました。
-* アクタから仮想の NotifyActorTouch, NotifyActorUnTouch, NotifyComponentTouch, NotifyComponentUnTouch を削除しました。
- * PrimtiveComponent で ReceiveActorBeginOverlap とReceiveActorEndOverlap をオーバーライドするか、またはデリゲートをオーバーラップするようになりました。
-* **物理:コリジョン:**
- * CollisionProfileSystem の取り消しの取り消し- 新規セットを BaseEngine.ini でチェックします。
- * チャンネルの名前変更:Pawn->PawnMovement, Vehicle->VehicleMovement, RigidBody->PhysicsBody.
- * チャンネルの削除:Mover(->Default), RigidBodyInteractable(->PhysicsBody), Cloth, DeadPawn.
- * エンジンから取り除かれたチャンネル:TraceWeapon, Projectile, Pickup (QAGame の DefaultEngineをチェック).
- * 以前はなかったものにインスタンス化後にコリジョン プロファイルを設定すると、コリジョン プロファイルをオーバーライドできます。
+* PhysicsActor and PhysicalMaterial now no longer have direct support for sounds/effects.
+ * Now you create a game-specific PhysicsCollisionHandler, which is given all physics collisions each frame, and can do what it wants with them.
+* Removed virtuals NotifyHitActor/NotifyHitByActor from Actor.
+ * Now override ReceiveHit now for a blocking collision.
+* Removed virtuals NotifyActorTouch, NotifyActorUnTouch, NotifyComponentTouch, NotifyComponentUnTouch from Actor.
+ * Now override ReceiveActorBeginOverlap and ReceiveActorEndOverlap, or overlap delegates on PrimtiveComponent.
+* **Physics:Collision:**
+ * CollisionProfileSystem redone - check BaseEngine.ini for new sets.
+ * Channels Renamed :Pawn->PawnMovement, Vehicle->VehicleMovement, RigidBody->PhysicsBody.
+ * Channels Removed :Mover(->Default), RigidBodyInteractable(->PhysicsBody), Cloth, DeadPawn.
+ * Channels moved out of engine:TraceWeapon, Projectile, Pickup (check QAGame's DefaultEngine).
+ * Setting a collision profile after instantiated for the one that didn't have before can override collision settings.
#### レンダリング
-* ポストプロセス設定に AA Method を追加しました。
-* ポストプロセス設定から MotionBlurPerObjectDistance を取り除きました。
+* Added AA Method to post process settings.
+* Removed MotionBlurPerObjectDistance from post process settings.
* **Atmospheric fog:**
- * Altitude レイヤー制御プロパティを追加しました。
- * Z 位置にのみ影響を及ぼす Altitude スケール変更を追加しました。
- * r.Atmosphere (0 または 1) のコンソール コマンドを追加しました。これにより、atmospheric fog + reload/remove 関連のリソースを有効 / 無効にします。
- * フォグとは別に大気の表示フラグを追加しました。
- * ビューの均一なバッファ変数をサイズを減らすために半分の解像度になるようにしました。
- * スカイボックスを持たないレベルに対するフォグのレンダリングのアーティファクトを取り除きました。
-* ライトシャフト (光線):LightShaft CVar r.LightShaftDownSampleFactor (ライトシャフト (光線) のダウンサンプリングのスケーリング) を追加しました。
-* ランドスケープ:スムーズ ツールを改善し、スムーズ フィルタ サイズ調整を追加しました。
-* 事前統合された GF を用いた新しい IBL シェーディング モデルの概算。この新しいソリューションはより正確ですが、既存マテリアルの外観を変えることがあります。
+ * Added Altitude layer control property.
+ * Added Altitude scale change which only affects Z location.
+ * Added r.Atmosphere (0 or 1) console command, which enable/disable atmospheric fog + reload/remove related resources.
+ * Added show flag for atmosphere, separate from fog.
+ * Reduced view uniform buffer variables to be half-resolution to reduce size.
+ * Removed artifacts for fog rendering for levels that doesn't have a skybox.
+* LightShaft :Added LightShaft CVar r.LightShaftDownSampleFactor (Scale lightshaft downsampling).
+* Landscape :Improved smooth tool, added smooth filter size adjustment.
+* New IBL shading model approximation using preintegrated GF.The new solution is more accurate but can change the look of existing materials.
#### オーディオ
-* SoundNode::Parse API は、グラフがツリーではない場合にサウンドキューで正確にパスを追跡するように変更されました。
- * たどられた各ノードは GetNodeWaveInstanceHash を用いてハッシュを適用します。
- * これは自動的に SoundNode::ParseNodes で処理されます。しかし、ChildNodes でParseNodes を呼び出すノードはこれを直接適用しなければなりません (例、USoundNodeMixer::ParseNodes を参照)。
+* SoundNode::Parse API changed to correctly track the path through SoundCue when the graph isn't a tree.
+ * Each visited node applies itself to a hash using GetNodeWaveInstanceHash.
+ * This is handled in SoundNode::ParseNodes automatically, however, any node that calls ParseNodes on its ChildNodes directly must apply this (see USoundNodeMixer::ParseNodes for example).
-## 将来的な追加事項と継続事項
+## 今後の追加事項と継続事項
#### ブループリント
-* ブループリント エディタのコンポーネント モードでコンポーネントを追加後にコンポーネントを編集するためにブループリントをコンパイルする必要がなくなりました。
-* ブループリント グラフで 入口/出口/折り畳まれたノードをクリック後に、詳細タブから入出力を追加できるようになりました。
-* ブループリント設定をグローバル ユーザー設定に移動しました。これで、代わりに [Preferences Editor] タブからアクセスできるようになりました。ブループリント エディタから設定メニューも取り除きました。
-* ブループリント グローバル設定を詳細パネルに移動しました。このパネルには、ブループリント エディタの新しい [Blueprint Props] ツールバー ボタンからアクセスできます。
- * ブループリント エディタのツールバーから Reparent (親変更) 機能を詳細パネルに移動しました (ツールバー エディタには存在しなくなりました)。
-* ブループリント エディタの詳細パネルでコンポーネントのプロパティに加えた変更は、編集されているブループリントに基づきアクタのインスタンスを正しく更新するようになりました。
-* サブアイテムがひとつしかなければ、Break Links のサブメニューはブループリント グラフに表示されなくなり、サブアイテムそのものだけが表示されます。
-* ブループリント エディタでアクタ以外からアクタベースのブループリントに親変更すると、コンポーネントのトグル ボタンが有効になります。
-* ブループリント エディタのコンポーネント モードでコンポーネントを移動後ブループリントがダーティになります。
-* ブループリントのプレビュー ビューポートには、アンビエント キューブマップを備えたポストプロセス ボリュームが含まれます。
-* コンポーネントの編集モードはブループリント エディタの非アクタ ベースのブループリントに対してアクティベートできなくなりました。
-* マクロ ブループリントの編集時にコンポーネント モードはブループリント エディタでアクティベートできなくなりました。
-* ブループリントの安定性はリファクタリングと非推奨コードを改善しました。
-* GetPlayerCharacter() ブループリント関数を UGameplayStatics に追加しました。GetPlayerPawn() と同様ですが、キャラクターとキャラクターの動きにアクセスする必要がある人に対して、APawn の代わりに ACharacter を戻します。
-* 入力インデックス値が対応するオプション数よりも大きいことが原因で (例、グラフで使用後に、列挙型にコードで追加された値がある場合)、Select Node にコンパイル エラーがある場合、特定の問題を追跡するためにはるかに多くの情報を備えたメッセージを出力するようになりました。エラーが発生したブループリントのフルパスと選択ノードのインデックスタイプ名 (すなわち、bool, int, または特定の列挙型変数名) をリスト表示するようになりました
-* 非推奨のブループリント関数は、UFUNCTION メタ セクションにある DeprecationMessage を使用して役立つメッセージを供給することができます。
-* ブループリント エディタの広範な UI とワークフローを改善しました。
-* ブループリント マクロの詳細ビューの入出力の削除ボタンが更新されました。
-* ブループリント変数のレプリケーション ステートの新しいイラストが追加されました。
-* 詳細ビューで Create (作成) と Harvest Blueprint (ブループリントのデータを得る) の ボタンを整理しました。
-* [Find in Blueprints] ダイアログで何も結果がない場合にメッセージが表示されるようになりました。
-* ブルーは、名前でフェッチされる場合に存在しているかについてチェックされるようになりました。
-* ブループリント エディタ終了時に、まずブループリント エディタ ウィンドウが閉じるようになりました。
-* ブループリント エディタの hide pin に新しいアイコンが追加され、既存のプレースホルダー アイコンの hide_unusedpins.png に取って代わり、非破壊のアートのみが更新します。
-* 様々なブループリント コンパイル ステートに対して新しいクリアなアイコンが必要です。既存のプレースホルダー アイコンを新規承認されたバージョンで置き換えました。アート変更のみ - 非破壊です。
-* Create Blueprint from Actor and Harvest Blueprint のアイコンを作成しました。非破壊更新です。
-* 'Find in current Blueprint', 'Blueprint Options' & 'Diff against previous revision' の新しいアイコンを作成しました。サイズは 40px & 512px です。PNG アセットのみです。ビルドを破壊しないチェックイン (コード合わせが必要)
-* 外部 (サードパーティ) モジュールは、インクルード パス、PublicInclude パスを追加しました。
-* サードパーティまたはシステム ファイルのインクルード パスはフォワードスラッシュとバックスラッシュをチェックしません。
-* ブループリントへのインターフェース、FortInteractInterface の再追加 (削除後の) はエラーを発生しなくなりました。
-* ブループリント関数はキーワード検索できるようになりました。
-* LoadStreamlevel および UnloadStreamLevel のブループリントのアクションは、指定された名前の部分一致を行い、その文字列で終わるストリーミング レベルを見つけようとします。フルパスは不要です。
-* コンテンツ ブラウザでアクタに対して find を使用する場合にブループリントは他のアセット タイプよりも好ましいものになりました。
-* ブループリントのコンパイル自動生成変数名には、明示的にするためにノード GUID (グローバル一意識別子) が含まれるようになりました。
-* [詳細] パネルのブループリント作成のワークフローを改善しました。
-* ブループリント エディタの UI を改良中。
- * ブループリント エクスプローラと変数のタブは完全に非推奨であり、[MyBlueprint] タブで置き換えられました。
- * ブループリントの検索がリファクタリングされました。
- * ブループリントインターフェイス UI がリファクタリングされました。
- * グラフ アクション メニューでコンテキストに応じた選択肢を切り替える機能を追加しました。
-* ショートカット (F2) をサポートするノードのタイトルを編集するキーボード ショートカットを追加しました。
-* エンジンを修正することなくノード タイトルの名前変更のサポートを追加しました。
-* グラフ スキーマでノード テンプレートが作成される方法について様々な改善を加えました。
-* コメント ボックスに様々な改善を加えました (インプレース編集、ズームアウトまたはオーバーラップ時のヒット テストの向上)。
-* コンパイルしたダーティなアイコンの色の彩度を高め、色を変更した既存のアイコンを再コンパイルする必要があります。アート変更のみ - 非破壊です。
-* 変数追加、関数、マクロ、およびイベント グラフの新しいアイコンを作成しました。利用可能なサイズは 16px, 40px, および 512px です。新規アートアセット - 非破壊のチェックインです。
-* MovementComp_Projectile::StopMovement をブループリントにエクスポーズしました。
-* CallFunction のフィルタリングはフレンドリーネームに基づくようになり、該当する場合は簡潔な名前も使用します。
+* It is no longer necessary to compile a Blueprint in order to edit components after adding them in Components mode in the Blueprint editor.
+* Clicking on entry/exit/collapsed nodes in a Blueprint graph now allows you to add inputs and outputs from the Details tab.
+* Moved Blueprint settings into global user settings; they are now accessible through the Preferences Editor tab instead.Also removed the Settings menu from the Blueprint editor.
+* Moved Blueprint Global Settings into the Details panel accessible via a new Blueprint Props toolbar button in the Blueprint Editor.
+ * Also relocated the Reparent feature from the Blueprint Editor toolbar into the Details panel (it is no longer present in the editor toolbar).
+* Changing component properties in the Details panel of the Blueprint editor now properly updates any Actor instances based on the Blueprint being edited.
+* The Break Links submenu no longer appears in a Blueprint graph if there is only one subitem; only the subitem itself is shown.
+* The Components toggle button is now enabled when reparenting from a non-Actor to an Actor-based Blueprint in the Blueprint editor.
+* The Blueprint is now dirtied after moving its components around in Components mode of the Blueprint editor.
+* The Blueprint preview viewport now includes a postprocess volume with an ambient cube map.
+* Component editing mode can no longer be activated for non Actor-based Blueprints in the Blueprint editor.
+* Components mode can no longer be activated in the Blueprint editor when editing macro Blueprints.
+* Blueprint stability work to improve refactoring and deprecating code.
+* Added GetPlayerCharacter() blueprint function to UGameplayStatics; it's just like GetPlayerPawn(), but returns an ACharacter instead of an APawn for those who need access to character and character movement.
+* When a Select Node has a compilation error due to receiving an input index value higher than the number of options it supports (such as when an enum has values added to it in code after being used in a graph), it now outputs a message with much more information to track down the particular problem.It now lists the full path of the blueprint in which the error occurred and the name of the select node's index type (i.e. bool, int, or the specific name of the enum).
+* Deprecated blueprint functions can supply a helpful message using DeprecationMessage in the UFUNCTION meta section.
+* Extensive UI and workflow polish for the Blueprint Editor.
+* The delete button has been updated for Blueprint Macros details view inputs and outputs.
+* New button artwork for the Replication State of Blueprint variables.
+* Tidied up the Create and Harvest Blueprint buttons in the Details view.
+* Message now shown when there are no results in the Find in Blueprints dialog.
+* Blueprint functions are now checked that they exist when fetched by name.
+* Blueprint editor windows now close first when exiting the editor.
+* New icon for hide pins in blueprint editor, replaced existing placeholder icon hide_unusedpins.png - non-destructive art only update.
+* New clearer icons required for the various Blueprint compile states.Replaced existing placeholder icon with new approved versions.Art change only - non-destructive.
+* Created icon for Create Blueprint from Actor and Harvest Blueprint (replaced existing placeholder icons) - non-destructive update.
+* Created new icons for 'Find in current Blueprint', 'Blueprint Options' & 'Diff against previous revision', sizes available - 40px & 512px.PNG assets only.Non-destructive check-in (requires code hook-up).
+* External (ThirdParty) modules now add their include paths the PublicInclude paths.
+* ThirdParty or system file include paths are not checked for forward vs back slashes.
+* Re-adding interface FortInteractInterface to the blueprint (after removing) no longer results in an error.
+* Blueprint functions can now be searched for by keywords
+* LoadStreamlevel and UnloadStreamLevel blueprint actions will now do a partial match on the name provided and try to find a streaming level that ends with that string, not requiring full path.
+* Blueprints are now preferred over other asset types when using find in content browser on an actor.
+* Blueprint Compiling:Autogenerated variable names now include node GUIDs for disambiguation
+* Improved workflow of Create Blueprint in the details panel.
+* Ongoing UI polish to the blueprint editor.
+ * Blueprint Explorer and Variables tabs have been fully deprecated and replaced with the MyBlueprint tab.
+ * Blueprint Searching refactored.
+ * Blueprint Interface UI refactored
+ * Added in ability to toggle context sensitivity in the graph action menu.
+* Added a keyboard shortcut to edit the node title of any nodes that support it (F2)
+* Made it possible to add node title renaming support to any node without engine modifications
+* Various improvements to how node templates are created in graph schemas
+* Various improvements to comment boxes (in-place editing, better hit testing when zoomed out or overlapping, etc...)
+* Needs to be recompiled icon updated existing icons with more colour saturation & a change of color for Compiled - Dirty icon.Art change only - non-destructive.
+* Created new icons for Add Variable, Function, Macro, and Event Graph.Sizes available at 16px, 40px, and 512px.New art assets - none destructive check-in.
+* Exposed MovementComp_Projectile::StopMovement to Blueprints.
+* Filter for CallFunction is now based on friendly name and, if applicable, will also use compact name
-#### フレームワーク
+#### Framework
-* ACharacter::BaseChange() and JumpOff(): の改善点:
- * ACharacter::BaseChange() は、ワールド ジオメトリであってもキャラクターがそれに基づいた「実際の」アクタをチェックし、CanBeBaseForCharacter() であるかを確認するようになりました。他の目的でワールド ジオメトリである特定タイプのアクタ (およびWorldInfo をベースとして戻すもの) は、キャラクターに対して正確に JumpOff() するように指示することができるようになりました。
- * MovementComp_Character::JumpOff() は movement ベースを引数としてとり、派生クラスがそれらが立っている実際のアクタに基づきハンドリング (ジャンプ方向を選択など) をオーバーライドできるようにしました。
- * 新規関数、UMovementComp_Character::GetBestDirectionOffActor(...) を記述しました。これは、キャラクターの速度、ベースとなるアクタの寸法などに基づきジャンプの選択をオーバーライドすることができます。
- * コードでのマジック ナンバー(0.5 z 値) を JumpOffJumpZFactor としてエクスポーズしました。このパラメータを使用して、キャラクターのベースにはなりえないものからジャンプする場合にジャンプの高さを微調整できます。
-* **コリジョン**
- * デフォルトのポーンがラグドールになるまで物理オブジェクトとインタラクションしないようにしました。
- * チャンネルを ECC_Touch から ECC_Overlap に名前変更しました。
-* Physx メモリ使用量が GetResourceSize によってレポートされます。
-* エンジン バージョンに加えてゲーム バージョンもブランチ名、ビルド設定、およびコマンド引数を戻します。これをクリップボードにもコピーし、TTP で簡単に貼り付けできるようにします。
-* 実行関数のロード / アンロード / リロードでは、モジュールのクリーンアップのプレ / ポストのコールバックを利用しました。
-* GWorlds の全体的削減。
-* 実行関数はリファクタリングし、コマンド機能はコマンド毎の関数に移動しまし。
-* UMovementComponent::SetPlayerDefaults() を削除しました。エンジンでは不要であり、リセットしたいものはゲーム固有のものです。
-* プレイヤー コントローラが停止状態であれば Modifier キーが処理されるようになりました。つまり、ゲーム停止中は GPU プロファイラにアクセス可能であるか、シェーダーが再コンパイル可能であることを意味します。
-* FTransform の Get/SetOrigin は Get/SetLocation に名前変更されました。
-* ライフスパンの実装を改訂しました。
-* グローバルでキャンバス コンテキストに渡されていた一部のキャンバス関数はキャンバス クラスに移動しました。
-* エディタ固有のアクタのラベル付け関数をアクタ クラスから移動しました。
+* Improvements to ACharacter::BaseChange() and JumpOff():
+ * ACharacter::BaseChange() now checks the ACTUAL actor the character is based on even if it is World Geometry to see if it CanBeBaseForCharacter().Specific types of actors that are WorldGeometry for other purposes (and so would return the WorldInfo as the base) can now correctly direct characters to JumpOff().
+ * MovementComp_Character::JumpOff() now takes the movement base as an argument so that derived classes can override handling (such as choosing the direction to jump) based on the actual actor they're standing on.
+ * Wrote a new function UMovementComp_Character::GetBestDirectionOffActor(...) which can be overridden to choose to jump based on character velocity, base actor dimensions, etc.
+ * Exposed a magic number in code (0.5 z value) as JumpOffJumpZFactor.This parameter can be used to tweak the height of a jump when jumping off something that can't be a base for a character.
+* **Collision**
+ * Disabled default pawn to interact with physics object until they turned to ragdoll
+ * Renamed channels from ECC_Touch to ECC_Overlap
+* Physx memory footprint is now reported by GetResourceSize.
+* GameVer in addition to Engine Version, will also return Branch Name, Build Configuration and Command Arguments.Will also copy this to the clipboard for easy pasting in TTP.
+* load/unload/reload exec functions now utilized pre/post callbacks for module cleanup.
+* General reduction of GWorlds.
+* Exec functions refactored and command functionality moved into per-command functions.
+* Removed UMovementComponent::SetPlayerDefaults().Not needed in engine, plus what you might want to reset to is game specific.
+* Modifier keys are now processed when the player controller is in a paused state.This means that the GPU profiler can be accessed or shaders can be recompiled while the game is paused.
+* Get/SetOrigin renamed to Get/SetLocation on FTransform
+* Revised lifespan implementation
+* Some canvas functions that were global and were passed a canvas context have been moved into canvas class.
+* Moved editor specific actor labeling functions out of actor class.
-#### エンジンとコア
+#### Engine and Core
-* UnrealBuildTool の起動時間は大幅に改善されました。
-* 「プラグイン」サポートは現在部分的に実装されています。将来のリリースでこれをさらに堅牢にすべく開発に取り組んでいます。
- * テスト目的で 2 つのプラグイン例を追加しました。
-* `bAllowManagedCode` と `WITH_MANAGED_CODE` は完全に削除しました。
-* `LoadANSITextFileToStrings` は空の行を保持します。
-* `FCoreDelegates::LevelAddedToWorld`, `FCoreDelegates::LevelRemovedFromWorld` はゲーム内およびエディタで呼び出されます
-* `GetCategory` と `GetCategoryFName` を UProperty から移動しました。これらは、`FObjectEditorUtils` ネームスペースのユーティリティ関数になりました。
-* 分析を最初に実行するときに、エンジンはハードウェアの統計情報を収集するようになりました (現時点では、Windows のみ)。
-* Live Preview、 Stats Profiler、 および Memory Profiler のすべてのアイコンが再作成されました。ビルドを破壊しないチェック - チェンジリストは PNG アセットのみ。
-* 不良コマンドライン'-' ケースは見つけられ、アプリケーション終了前にユーザーに通知します。
-* メッセージング: メッセージの非シリアル化/シリアル化および移植について改善作業中です。
-* UObjectnative ネイティブの基本クラスは、'F' で始まる必要はなくなりました。
-* リモートのデバッグ セットアップ
- * Engine.ini は以下の設定になります。
+* UnrealBuildTool startup times have been greatly improved.
+* "Plugin" support is now partially implemented.We're still working on making this more robust for a future release.
+ * Two example plugins were added for testing purposes.
+* Fully eliminated `bAllowManagedCode` and `WITH_MANAGED_CODE`
+* `LoadANSITextFileToStrings` now preserves empty lines.
+* `FCoreDelegates::LevelAddedToWorld`, `FCoreDelegates::LevelRemovedFromWorld` now called in game and editor
+* Moved `GetCategory` and `GetCategoryFName` out of UProperty - these are now utility functions in the `FObjectEditorUtils` namespace
+* Engine now gathers hardware stats on first run for analysis (currently Windows only).
+* All icons recreated for Live Preview, Stats Profiler, & Memory Profiler. replaced existing placeholder icons.Non-destructive checking - Change List is PNG assets only.
+* The bad command line '-' case is now caught and informs the user before exiting the app.
+* Messaging: ongoing improvements for message de-/serialization and transport
+* UObject native base classes no longer have to start with 'F'.
+* Remote debugging setup
+ * Engine.ini has the following settings:
[Engine.ErrorHandling]
bPromptForRemoteDebugging=false
bPromptForRemoteDebugOnEnsure=false
- * いずれかが true に設定されると、クラッシュ発生時にリモートで問題をデバッグできるようにプログラマに依頼するように促されます。
- * 2 つめが true であれば、ensure でもプロンプトされます
- * これらは、`-PROMPTREMOTEDEBUG` と`-PROMPTREMOVEDEBUGENSURE` を持つコマンドラインでも設定することができます。
+ * If either is set to true, then the user will be prompted to get a programmer when a crash occurs so they can remotely debug the issue.
+ * If the latter is true, the prompt will also occur on ensures.
+ * They can also be set via the command line with `-PROMPTREMOTEDEBUG` and `-PROMPTREMOVEDEBUGENSURE` respectively.
#### プラットフォーム
-* エンジンとエディタを Mac へ移植中です。
+* Porting the engine and the editor to Mac
* **Unreal Frontend**
- * ランチャーは、新しいアンリアル プロジェクト ファイルを使用するようにアップグレード中です。現在は機能していません。
- * デバイス マネージャのツールバー アイコン、電源の on/off/reset の新しいアイコンを作成しました。コード合わせを必要とします。
- * スクリーンショットはリクエスト元であるフロントエンドのアプリケーションに直接送られるようになりました。
- * デバイス マネージャの新規レイアウト - **Power On**, **Power Off**, および **Reboot** をコーディングしました。
-* DependencyCache.bin ファイルはプラットフォーム毎に存在するようになりました。
-* モジュール ルールでは、DLL のビルド時に使用する `BinariesSubFolder` を指定することができます。例:
- `BinariesSubFolder=IOS` の場合、その結果の Win64 ビルドの DLL は、 `Engine/Binaries/Win64/IOS` に入れられます。
+ * The Launcher is being upgraded to use the new Unreal Project files; currently defunct
+ * Toolbar icons for Device Manager, created new icons for power on/off/reset.Require code hook-up.
+ * Screen shots are now sent to directly to the FrontEnd app that requested them
+ * Coded new layout for the Device Manager - **Power On**, **Power Off**, and **Reboot**.
+* DependencyCache.bin files now exist per-platform.
+* Module rules can now specify a `BinariesSubFolder` that is used when building DLLs.For example:
+ If `BinariesSubFolder=IOS`, the resulting DLL for Win64 builds would be placed in `Engine/Binaries/Win64/IOS`
-* Game または Server がデスクトップ プラットフォームをターゲットとする場合、特に指定しなければ Sandbox ディレクトリが推定されます。
-* `PhysX3Common` を `Engine/Binaries/ThirdParty` フォルダに移動しました。エンジンの一部として読み込む必要がなくなったからです。
+* If Game or Server target for Desktop platforms, the Sandbox directory will be inferred if not specified.
+* Moved `PhysX3Common` to the `Engine/Binaries/ThirdParty` folder as it is no longer required to load as part of Engine
-#### オンライン
+#### Online
-* Steam ロビーがいっぱいであると判断した場合に、Steam ロビーはジョイン機能を自動設定します。
+* Steam lobbies auto set join-ability when it is determined the lobby is full
#### オーディオ
-* スペースバーを押してエディタ内の現在のサウンド キューを再生、停止できるようになりました。
-* 右のサラウンド スピーカは 6 チャンネル ogg ファイルを使用しても音が弱まらなくなりました。
-* 関連するサウンド ノードが取り除かれるとグラフ ノードが削除されるようになりました。
-* マルチチャンネル サウンドを再インポートすることができます。
-サウンドキュー エディタで接続の切断を元に戻すことができるようになりました。
-* SoundModes は、サウンド再生中に SoundClasses からアクティベートできるようになりました。
-* サウンドウェーブ アセットはサムネイルで波形を表示するようになりました。
-* VOIP データ送信を積極的に使用。
- * 最高 1k までのすべての音声データをまとめて一回で直ちに送信。
- * 複数フレームでデータをバッファリングしなくなりました。
+* Can now play and stop the current Sound Cue in the Editor by hitting the spacebar.
+* Surround right speaker is no longer muffled when using 6 channel ogg files.
+* Graph Nodes will now be deleted if associated Sound Node is removed.
+* Now able to re-import multichannel sounds.
+* Can now undo the breaking of connections in Sound Cue Editor.
+* SoundModes can now be activated via SoundClasses when sounds are playing.
+* SoundWave assets now display a wave form in their thumbnail.
+* More greedy VOIP data transmission
+ * send all voice data up to 1k in one bunch immediately
+ * no longer buffering data at all over multiple frames
#### エディタとツール
-* **スレート**
- * スレート UI の MultiLineEditableText 機能を開発中。
- * SColorBlock が無効になったスタイリングを使用しないように変更しました。
- * 空の MultiBoxs がそのウィジェットを作るときに余分な場所をとらないようにしました。
-* **ユーザーインターフェース (UI)**
- * エディタは開くときに、前のウィンドウの後ろでポップアップしなくなりました。
- * AutonomousTabPanel を NomadTab に名前変更しました。関連する関数名、コメント、および変数を修正しました。
- * タブが既にスポーンされていれば、レイアウトの復元時にノマドタブ スポーナーはタブをスポーンしなくなりました。
- * ノマドタブを主なタブエリアにドッキングできます。ノマドタブはフローと時または主なタブエリアにドックされるときに主要タブのようにスタイリングされます。
- TabSpawnerEntries にはメニュー配置をオプトアウトする機能があります。
- * レガシー タブ タイプのサポートを追加しました。これにより、レガシータブ名をスポーン時の自動変更 ID に登録することができます。
- * エンジン全体で AddHeader のすべての使用と AddMenuSeparator のほとんどの使用を取り除きました。
- * メインのエディタ メニュー (視覚的、配置など) に多くの改善を施しました。
- * 詳細ビューでプロパティ マトリクス ボタンを更新しました。
- * 新しいイラストで Vertex Density モード メニューを更新しました。
- * イマーシブ モードのリストア ボタンを更新しました。
- * フォーリッジ モードの保存 / 読み込みの設定のアイコンのイラストを更新しました。
- * ツールバーとメニューバーのボタンがクリップされた場合、クリックするとクリップしたアイテムを含むコンテキスト メニューを生成する拡張ボタンが表示されます。
- * 元に戻す/リドゥ (取り消しの取り消し) メニュー オプションが再度アイコンを持つようになりました。
- * WorkflowTab は Windows メニューのアセット エディタ カテゴリにリスト表示されます。
- * アルファ値が低い新しい ' x' (削除ボタン) を作成しました。ビルドを破壊しないチェックイン - アート アセットのみ。
- * プロパティ マトリクス ボタンと関連するウィンドウ/メニュー アイテムに対して新しい 16px アイコンを作成しました。コード合わせを必要とします。
- * イマーシブ ボタン アイコンからのリストア - 新しい 16px アイコンを作成しました。コード合わせを必要とします。ビルドを破壊しないチェックイン - アート アセットのみ。
- * エディタのレプリケーション アイコンに新しいアイコンを追加し、ステート変更に対してコード合わせをします。ビルドを破壊しないチェックイン - アート アセットのみ。
- * ビューポートに以下のアイコンを新たに作成しました。Vertex Density. 新たにコード合わせが必要です。アート アセットの置換のみであり、非破壊更新です。
- * フォーリッジ モードにアイコンを新たに作成しました。アート アセットの置換のみであり、非破壊更新です。
- 以下のすべてのアクタ クラスに対して新しい 16px アイコンを作成しました。ArrowComponent, AtmosphericFogComponent, BoxComponent, CapsuleComponent, DestructibleMeshActor/Component, InstancedStaticMeshComponent, MaterialSpriteComponent, RadialBlurComponent, SceneCapture(Component), SceneCapture2D(Component), SceneComponent, SphereComponent, SpriteComponent, TextRenderActor/Component.PNG アセットのみです。ビルドを破壊しないチェックイン (コード合わせが必要)
- * すべてのメイン エディタのツールバー アイコンを再作成および更新しました (別の TTP で代替再生オプションの追加アイコンがカバーされています)。ビルドを破壊しないチェックイン - 変更リストは 512px でより高い解像度のアセットのみを追加します。
- * レベル ブラウザ メニューに対して 新規 16px アイコンを作成しました。新しい PNG ファイル、非破壊チェック - コード合わせが必要。
- * 削除した actors. size のアイコンを新たに作成しました。16px. - 非破壊更新です。
-* データとカーブのテーブル アセットに対して、_explore to directory_ と _launch in external editor_ サポートを追加しました。
-* navmesh 生成のパフォーマンスを向上させました。
-* **シーン アウトライナー**
- * SIE モード時に黄色のボーダーが表示されます。
- * 新規レベルが追加または削除されるとコンテンツが正確にリフレッシュされます。
- * シーン アウトライナーでは、検索結果にネスティングされたアクタが正確に表示されるようになりました。
-* レイヤーの実装をリファクタリングし、コードパスを簡素化し、統合しました。
-* **プロジェクトのワークフロー**
- * 新規プロジェクトのダイアログのビジュアルを改善。
- * プロジェクトの切替時にエディタ起動時に使用したコマンドライン引数が維持されるようになりました。
- * プロジェクトの切替時に終了ダイアログが表示されなくなりました。
- * '^' 文字は、visual studio と混乱を招くため、プロジェクト ファイルのパスでは認められなくなりました。
-* **コンテンツ ブラウザ**
- * 最初のアセット検索後に従属関係について再スキャンされたパッケージが適切に更新されるようになりました。
- * コンテンツ ブラウザで explore が選択されている場合、フォルダはオンデマンドで作成されるようになりました。
- * 名前変更プロセスの早い段階でのより良いアセット名のチェック機能を追加し、フレンドリーな新しいネーム コード パスの入力をトリガーできるようにします。
-* GetLabels を FSourceControl に追加し、指定されたパターン文字列に合致するソース コントロールにあるすべてのラベルを戻します。
-* CrashReporter: ウェブサイトはすべてのブラウザについてほとんど行われており、何もかも意図したとおりに機能しています。まだやり残している主なものはドキュメント作成です。
+* **Slate**
+ * Working on MultiLineEditableText feature for SlateUI
+ * Changed SColorBlock to not use disabled styling
+ * Empty MultiBoxs no longer take up additional room when constructing their widget.
+* **User Interface**
+ * The editor no longer pops up behind previous windows when opening.
+ * Renamed AutonomousTabPanel to NomadTab.Fixed up associated function names, comments, and variables.
+ * Nomad tab spawners no longer spawn their tab when restoring layout if the tab has already been spawned.
+ * Nomad tabs can now be docked in major tab wells.Nomad tabs are now styled like Major tabs when floating or docked in major tabwells.
+ * TabSpawnerEntries now have the ability to opt-out of menu placement.
+ * Added support for legacy tab types, which allows legacy tab names to be registered to auto-change IDs at spawn time.
+ * Removed all uses of AddHeader and most uses of AddMenuSeparator throughout the engine.
+ * Lots of polish to main editor menus (visuals, arrangement, etc.)
+ * Updated the Property Matrix button in the Details view.
+ * Updated the Vertex Density mode menu item with new artwork.
+ * Updated the immersive mode's Restore button.
+ * Updated icon artwork for Foliage Mode save/load settings.
+ * An expansion button is displayed when toolbar and menu bar buttons get clipped which, when clicked, generates a context menu containing the clipped items
+ * Undo/Redo menu options have icons again.
+ * WorkflowTabs now appear listed under the Asset Editor category of the Windows menu.
+ * Created new ' x' (delete button) with less alpha.Non-destructive check-in - art asset only
+ * Created new 16px icon for Property Matrix button & related windows/menu items.Requires code hook-up.
+ * Restore from Immersive button icon - created new 16px icon, requires code hook-up.Non-destructive check-in, art asset only.
+ * New icon for Replication icon for editor, to be hooked up in code for state changes.Non-destructive check-in, art asset only.
+ * Created new icon for Viewport:Vertex Density. requires additional code hook-up.Art asset replacement only, non-destructive update.
+ * Created new icons for the Foliage Mode.Art asset replacement only, non-destructive update.
+ * created new 16px icons for all the following actor classes, ArrowComponent, AtmosphericFogComponent, BoxComponent, CapsuleComponent, DestructibleMeshActor/Component, InstancedStaticMeshComponent, MaterialSpriteComponent, RadialBlurComponent, SceneCapture(Component), SceneCapture2D(Component), SceneComponent, SphereComponent, SpriteComponent, TextRenderActor/Component.PNG assets only.Non-destructive check-in (requires code hook-up).
+ * All main Editor toolbar icons recreated & updated (additional icons for alternative play options are covered in another TTP).Non-destructive check-in - Change List is only adding higher resolution assets at 512px.
+ * Created new 16px icons for the Level Browser menu.New PNG files, none destructive checking - requires code hook-up.
+ * Created new icon for deleted actors. size:16px. - non-destructive update.
+* Added _explore to directory_ and _launch in external editor_ support for data and curve table assets.
+* Improvements to navmesh generation performance
+* **Scene Outliner**
+ * Now has a yellow border when in SIE mode
+ * Correctly refreshes content when new level added or removed
+ * Scene Outliner now displays nested actors correctly in the search results.
+* Refactored Layers implementation to simplify and consolidate code paths
+* **Project Workflow**
+ * Visual improvements for the new project dialog.
+ * Switching projects now preserves the command line arguments used to launch the editor.
+ * Quit dialog no longer appears when switching projects.
+ * '^' characters are no longer allowed in project file paths since it confuses visual studio.
+* **Content Browser**
+ * Packages that get re-scanned for dependencies after the initial asset search will now properly update.
+ * Folders are now created on demand if explore is chosen in the Content Browser.
+ * Added better asset name checking early in the rename process in the Content Browser so we can trigger the friendly enter a new name code path.
+* Added GetLabels to FSourceControl, which returns all labels in source control matching the supplied pattern string
+* CrashReporter: web site is mostly done for all browsers, everything is working as intended.Major item left is documentation.
* **ランドスケープ**
- * ランドスケープ アクタを読み込むことなくランドスケープ プロキシを編集する機能を追加しました。
- * ランドスケープ プロキシは独自の元となる場所を持ちますが、必ずしもランドスケープ アクタの位置と同じ場所ではありません。
- * ランドスケープ スプラインは静的コンポーネントとみなされるようになりました。
- * ランドスケープの静的ライトは高さマップを変更するときに無効化されるようになりました。
- * ランドスケープ スプラインのエンド制御点を削除するための ** Are you sure?** ボタンにあるキャンセル ボタンは実際には削除を再度キャンセルします。
- * ランドスケープ エディタはすべてのビューポートをリアルタイムにします。アクティブな perspective (透視図法) ビューポートだけでなく、加えられた変更を簡単に見れるようにします。
- * 新規作成のレイヤー情報オブジェクトがコンテンツ ブラウザに表示され、保存/ 終了時に保存されます。
- * "new layer info" パス テキスト ボックスをフォルダ ピッカーにしました。
-* **マチネ**
- * マチネのドロップダウン メニューは、ポッピングを防ぐために正確なサイズでスポーンされるようになりました。
- * マチネのダイアログ テキストの表現を変えて、タブ位置に言及しないようにしました (タブ位置は移動することがあるため)。
- * アクタのレベルがレベル ブラウザで削除された場合に、マチネが閉じるようになりました。
- * カメラ アクタのメッシュを更新し、新しいカメラ アイコンと一貫性がある新しいメッシュを作成し、マテリアルとテクスチャを追加しました。
- * 補間関連のユーティリティ コードをリファクタリングしました。FMatineeUtils ネームスペースに入っています。
- * マチネ トラックの最初のサウンドにサブタイトルが表示されるようになりました。
-* **レベル エディタ**
- * レベル エディタ タブは、切り捨てられたレベル名を再度表示するようになりました。
- * 起動時にエディタがどのマップを読み込むかを指定するための新規 config 設定 (DefaultMapName) を追加しました。
- * これは SimpleMapName パイプラインとは異なりますが、コマンドラインでマップ名が指定された場合に似た挙動をします。
- * ロックしたアクタを別のビューポートに移動した場合にビューポートはカメラ位置を更新するようになりました。
- * 番号付けされたアクタを複製すると、新規アクタに次の論理番号をラベル付します。
- * アクタの複製時に 0 の前の部分で自動ネーミングが維持されます。
- * アタッチメント
- * 親とその子をドラッグすると、アクタの変形は積み重ねられません。
- * アクタをコピーし貼り付けすると、親子付の階層が維持されるようになりました。
- * 複数のアクタを同じく選択中の別のアクタにアタッチすると、エラーが発生するようになりました。
- * 親がその子孫の子として割り当てられることを防ぎます。
- * キーボードのショートカットは所有/制御解除 (eject ) ボタンのツールチップに表示されるようになりました。
-* BrushEdit が有効な場合に BuildingWall の切替えが可能になりました。
-* LOD (Level of Detail) グループのポップアップの表現を変更してわかりやすくしました。
-* アセット移行ダイアログからパッケージの使用を削除しました。
-* 被破壊メッシュを作成すると、コンテンツ ブラウザで編集しアセットと同期するためにも開きます。
-* エディタが閉じると PlayOn インスタンスは消去されます。
-* スタティックメッシュ エディタで固有の UV を生成することで生じるエラーは通知として表示されるようになりました。
-* ソケット マネージャのウィジェットはレベル エディタ ツールバーからの切替時に正確に更新されるようになりました。
-* ドラッグしたアセットはより正確にヒット プロキシ アクタにスナップされるようになりました。
-* MIC (マテリアル インスタンス定数) パラメータのオーバーライド フラグを切り替えるとマテリアルが更新されるようになりました。
-* スクリーンショットのキャプチャ テストとブラウザの更新を自動化しました。
-* 警告メッセージに関数名コンテキスト情報を追加しました。それがどこからきたかを追跡するためのものです。 Warning: B oneIndex for Bone (b_MF_Hand) is not found in the Skeleton (M_Avg_Base_AnimSkeleton)
-* デバッグ作業シアンとマゼンタのデフォルトの FColors を追加しました。DrawDebugCircle を追加しました。
-* マテリアル スロットを持つスタティック メッシュでLOD (Level of Detail) によって参照されていないものは読み込み時に NULL になります。関係のないインデックスも調整されるようになりました。
-* ReferenceViewer はノマド タブになりました。
-* 初期テクスチャを持つマテリアルを作成すると、テクスチャを基本色に適切に接続します。
-* **イベント ビューア:**
- * 時間毎にイベントをよりよくソーティングするようにイベント ビューアを更新しました。
- * 階層の各イベントに対してより多くの情報が提供されるようになりました。
-* スタティックメッシュ エディタソケットを表示/非表示にするとスタティックメッシュ エディタのビューポートがリフレッシュされます。
-* アクタを変換するワークフローが改善されました。
-* ツールヒントと一緒にワールド設定が表示されるように、[World Properties] ボタンを更新しました。
-ブループリントユーティリティ (Blutility) はEpic Labs の環境設定 (preference) になりました。
-* ストリーミング レベルのエディタのみのオフセットが実装されました。さらに新しいオプションのコラムをレベル ブラウザに追加し、各ストリーミング レベルに対してエディタのみのオフセットの設定をできるようにしました。
-* 新しいプレースメント ブラウザのモード / ツールセットを作成しました。これは、新規ユーザーとレベル デザイナのワークフローを支援します。
-* ユーザーが書き込みを許可されていないフォルダにあるパッケージを修正するときに警告ダイアログを追加しました。
-* アセットを移行し、パッケージがディスク上にない場合、それについてプロンプトが表示されます。
+ * Added ability to edit landscape proxies without loading LandscapeActor
+ * Landscape proxies now can have own origins not necessarily at the same location as landscape actor position
+ * Landscape splines are now considered to be static components
+ * Landscape static lighting is now invalidated when altering the heightmap
+ * Cancel button on the** Are you sure?** button for deleting end control points of a landscape spline actually cancels the delete again.
+ * Landscape editor now forces all viewports to real-time, not just the active perspective viewport, making it easier to see changes being made
+ * Newly created layer info objects now show up in the content browser and want to be saved when saving / quitting.
+ * Replaced the "new layer info" path text box with a folder picker.
+* **Matinee**
+ * Matinee drop down menu now spawns at the correct size to avoid popping.
+ * Reworded matinee dialog text to not mention tab position (as it can be moved).
+ * Matinee now closes when that actors level is remove via the level browser.
+ * Camera actor mesh updated, created new mesh consistent with new camera icons, added material & texture.
+ * Refactored interp-related utilities code - it is now in the FMatineeUtils namespace
+ * Subtitles now shown for first sound in a matinee track.
+* **Level Editor**
+ * Level editor tab again shows truncated level name.
+ * Added a new config setting (DefaultMapName) for specifying what map the editor should load on startup
+ * This differs from the SimpleMapName pipeline and, instead, resembles the behavior of when the map name is specified via the command line
+ * Viewports now update their camera position if their locked actor is moved in another viewport.
+ * Duplicating numbered actors, labels the new actor with the next logical number.
+ * Auto-naming now preserved preceding 0s when duplicating actors.
+ * Attachments
+ * Actor Transformations no longer stack up if dragging a parent and its child.
+ * Copy and Pasting actors will now maintain the parenting hierarchy.
+ * Attaching multiple actors to another actor which is also selected now produces and error.
+ * Prevent parents becoming assigned as the children of their descendants.
+ * Keyboard shortcut now appears in the possess/eject button tooltips.
+* BuildingWall toggling now possible when BrushEdit is active.
+* Reworded LOD group popup to be clearer.
+* Removed usage of package from asset migration dialog.
+* Creating Destructible Mesh now also opens for edit and syncs to asset in Content Browser.
+* PlayOn instances are killed when the editor closes.
+* Any error generated by generating unique UVs in the static mesh editor is now displayed as a notification.
+* Socket Manager widget now updates correctly when toggled from the level editor toolbar.
+* Dragged assets now snap more accurately to the hit proxy actor.
+* Toggling the override flag on a MIC param now updates the material.
+* Automated Screen Shot capture test and browser update
+* Added function name context info to warning message.To help tracking down where it comes from. Warning:BoneIndex for Bone (b_MF_Hand) is not found in the Skeleton (M_Avg_Base_AnimSkeleton)
+* Debugging:Added Cyan and Magenta default FColors.Added DrawDebugCircle.
+* Static Meshes with Material slots that are not referenced by any LOD are now NULLed on load.Extraneous indices are now trimmed as well.
+* The ReferenceViewer is now a Nomad Tab.
+* Creating a material with an initial texture now properly hooks up the texture to the base color.
+* **Event Viewer:**
+ * Updated Event Viewer to better sort the events by time.
+ * More information provided for each event in the hierarchy.
+* Static Mesh Editor:Showing/hiding sockets now refreshes the Static Mesh Editors viewport.
+* Workflow for converting actors has been improved.
+* The World Properties button has been updated to say World Settings, along with its tooltip.
+* Blutility is now an Epic Labs preference.
+* An Editor-only offset for streaming levels has been implemented, and a new optional column added to the Level Browser that allows setting of an Editor-only offset for each streaming level.
+* Creating a new placement browser mode/toolset which will aid new users and level designers in their workflow
+* Added a warning dialog for when the user modifies a package that is in a folder that they do not have permission to write to.
+* When you are migrating assets and a package does not exist on disk, the user is prompted about it.
#### レンダリング
-* スプラインメッシュが作成するシェーダーの置換数を 1 頂点ファクトリ (パラメータ化) に減らし、最適化しました。
-* スプラインで変形したスタティックメッシュは LOD をサポートするようになりました。
-* スプラインで変形したスタティックメッシュは静的ライトでライティングできるようになりました。
-* マテリアル エディタのクリーン アップはマテリアルが変更されるとマテリアルのみをダーティにします。
-* カスケード カラーピッカーはカスケード ビューポートの子として登録されます。
-* カスケード レイアウトは正確にロードされるようになりました。
-* 現在、LOD (Level of Detail) ドロップダウンは 0 から開始し、プロパティ配列と合致します。
-* カスケードで Lowest/Highest LOD ボタンの機能を取り替えます。
-* 固定境界の設定時のカスケードの不要な確認ダイアログを削除しました。
-* ConditionalProcessCommandBindings はキー / マウスボタンの保持 / 繰り返し状態を渡し、true の場合にコマンドを無視します。
-* シミュレーション時の再親子付けのオプションが無効になりました。
-* 自動保存通知は、時間の代わりに %d で表示しなくなりました。
-* カスケード エミッター カテゴリは、表示する有効な子が存在する場合に限り表示されるようになりました。
-* スケルタル メッシュ エディタは、現在のスケルタルメッシュを開くときに、前回のスケルタルメッシュの階層を表示しなくなりました。
-* サブサーフェス スキャタリングの色のバンディングの改善。
-* 破砕された被破壊性オブジェクトはデカールを受けなくなりました。
-* IES ライト プロファイルにライトが割り当てられると、IES 輝度を使用するか否かを選択したかについて計算されたテクスチャ乗数を使用します。
-* パーティクルエミッタは、カスケードで機能が有効になっている場合にローカルの z 軸を正確にカメラに向けるようになりました。
-* アクタのスケーリングが GPU パーティクル システムで考慮されるようになりました。
-* モーション ブラーを維持するポーズを追加しましたが、まだ作業が必要です。
-* OpenGL 4.3 による SM5 レンダリング機能を実験的にサポートしています。
-* マテリアルのサムネイル シーンでスタティック メッシュのチェック、、GetViewMatrixParameters をなくしました。ビュー マトリクスを判断することは技術的に不要だからです。
-* さらに Gbuffer 視覚化モードを追加しました。
-* 透過モードを混ぜあわせたもの (法線、分離) を持つ様々なマテリアルを使用する複数のパーツを持つスタティックメッシュのプリミティブが正確にレンダリングされるようになりました。
-* エディタ内のシーンからカリングボリュームが削除されると、この変更を反映するためにすべてのスタティックメッシュのプリミティブでは描画距離が更新されます。
-* atmospheric fog コンポーネントの "Visible In Game" フラグが考慮されるようになりました。
+* Reduced the number of shader permutations created by the spline mesh shader to one (parameterized) vertex factory, and optimized.
+* Spline-deformed static meshes now support LODs.
+* Spline-deformed static meshes can now be lit by static lighting
+* Material Editor clean up now only dirties the material if its changed.
+* Cascade color picker now registered as a child of the cascade viewport.
+* Cascade layout now loads correctly.
+* Current LOD dropdown now starts at 0, to conform with properties array.
+* Swap Lowest/Highest LOD button functionality in Cascade.
+* removed unnecessary confirmation dialog in Cascade when setting fixed bounds.
+* ConditionalProcessCommandBindings now passed held/repeat state of key/mouse button, and ignores any commands if its true.
+* Reparent option is now disabled when simulating.
+* Autosave notification no longer says %d instead of the time.
+* Cascade emitter categories now only appear if there are valid children to display.
+* SkeletalMesh Editor no longer displays the hierarchy of the last skeletal mesh when opening the current one.
+* Improvements to banding on subsurface scattering colors.
+* Destructible objects which have been fractured will now no longer receive decals
+* When a light has been assigned an IES light profile, it will use the calculated texture multiplier whether you choose to use the IES brightness or not.
+* Particle emitters now correctly orient the local z-axis towards the camera when this feature is enabled from Cascade
+* Actor scaling is taken now into account for GPU particle systems.
+* Added pause keeping Motion Blur, still needs some work
+* There is now experimental support for SM5 rendering features via OpenGL 4.3.
+* Removed check for static mesh in the material thumbnail scenes GetViewMatrixParameters as it is not technically required to determine the view matrix.
+* Added more Gbuffer visualize modes
+* Static mesh primitives with multiple parts using different materials which had mixtures of translucency modes (normal and separate) will now render correctly
+* When a culling volume is deleted from the scene in the editor, all static mesh primitives will have their draw distances updated to reflect this change.
+* "Visible In Game" flag on the atmospheric fog component is now respected
#### アニメーション
-* ペルソナ ビューポートの表示メニューの "Preview Mesh" アイテムを "Mesh" に変更しました。
-* アニメーション ノードでピンでエクスポーズ可能なプロパティのレイアウトを改善しました。
-* UAnimMontage::GetSectionTimeLeftFromPos() を追加しました。
-* 方位角 (Azimuth) と高度 (Elevation) の演算コードを修正し、リファクタリングしました。
-* GetClosestCollidingBoneLocation を SkinnedMeshComponent から SkeletalMeshComponent に移動し、実際に衝突している剛体に対してチェックするようにしました。衝突していないものを戻し、トレースに失敗することがあります。
+* Changed "Preview Mesh" item on Persona viewport show menu to "Mesh"
+* Improved layout of pin-exposable properties on animation nodes
+* Added UAnimMontage::GetSectionTimeLeftFromPos().
+* Fixed and refactored Azimuth and Elevation math code.
+* Moved GetClosestCollidingBoneLocation from SkinnedMeshComponent to SkeletalMeshComponent, and made it actually check against colliding rigidbodies!It could return a non colliding one, and traces would fail.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/May/ReleaseNotesMay2013.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/May/ReleaseNotesMay2013.KOR.udn
index 371449f261dc..1333389331f0 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/May/ReleaseNotesMay2013.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/May/ReleaseNotesMay2013.KOR.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Availability:Licensee
Title: 2013년 5월 릴리즈 노트
Crumbs:%ROOT%, Support/Builds
Description:
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-9
[TOC(start:2 end:2)]
@@ -172,7 +173,7 @@ Template:ReleaseNotes.html
* 계층형
* 포함 시간(합산)에 따른 목록형
* 제외 시간(합산)에 따른 목록형
- * 기본적인 "핫 패쓰 펼침", 핫 패쓰에 대한 컬러 코딩 기능을 구현했습니다.
+ * 기본적인 "핫 패스 펼침", 핫 패스에 대한 컬러 코딩 기능을 구현했습니다.
* 이벤트 그래프에 대한 맥락 메뉴를 추가했습니다 (완벽 구현되지는 않았습니다).
* 통계 종합 기능을 추가했습니다 (첫 반복처리 작업).
* 데이터 그래프 요약에 종합된 통계 정보와 함께 현재 통계 값이 표시됩니다.
@@ -611,7 +612,7 @@ Template:ReleaseNotes.html
* **콘텐츠 브라우저**
* 첫 애셋 검색 이후 의존성을 재탐색한 패키지도 이제 제대로 업데이트됩니다.
* 콘텐츠 브라우저에 explore 가 선택된 경우 요청에 따라 폴더가 생성됩니다.
- * 콘텐츠 브라우저 이름변경 프로세스 초기에 더 나은 애셋 이름 검사를 추가, 편하게 새로운 이름 코드 패쓰 입력이 가능합니다.
+ * 콘텐츠 브라우저 이름변경 프로세스 초기에 더 나은 애셋 이름 검사를 추가, 편하게 새로운 이름 코드 패스 입력이 가능합니다.
* FSourceControl 에 GetLabels 를 추가, 소스 콘트롤에서 제공된 패턴 문자열에 일치하는 모든 라벨을 반환합니다.
* CrashReporter: 웹사이트가 모든 브라우저에 맞게 거의 완성되었으며, 모두 정상 작동하고 있습니다. 남은 주요 작업은 문서화 작업입니다.
* **랜드스케이프**
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Oct/ReleaseNotesOctober2013.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Oct/ReleaseNotesOctober2013.JPN.udn
index 73a2900e8570..916a1580a0a3 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Oct/ReleaseNotesOctober2013.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Oct/ReleaseNotesOctober2013.JPN.udn
@@ -1,8 +1,10 @@
-INTSourceChangelist:2688164
+INTSourceChangelist:3367470
Title:2013年10月リリースノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
+Parent:Support/Builds
+Order:-4
[TOC(start:2 end:2)]
@@ -22,22 +24,22 @@ Availability:Licensee
* 現時点のエンジン開発ロードマップ: [UE4 Roadmaps](https://udn.unrealengine.com/questions/topics/roadmap.html)
* 修正されたバグ: [UE4 Fixed Bugs October 2013](UE4_Fixed_2013_October.xlsx)
- * 既知の問題: [UE4 Outstanding Bugs October 2013](UE4_Bugs_2013_October.xlsx)
+ * 周知のバグ: [UE4 Outstanding Bugs October 2013](UE4_Bugs_2013_October.xlsx)
-##主な新機能
+## 主要な新機能
-####エディタとツール
+#### エディタとツール
* **新しいランドスケープ エディタ**
* **ランドスケープ エディタ** の UI は現在、いろいろな改善を反映させて全体を再ビルドしています。

* 用途に合わせてツールを 3 つのモードに分類しました。
- * **Manage** モードには、 **新規ランドスケープ** 、 **コンポーネント** 、 **スプライン** ツールが含まれています。
+ * **Manage** モードには、**新規ランドスケープ**、**コンポーネント** 、**スプライン** ツールが含まれています。
* **Sculpt** モードには、リージョンの選択およびコピーペーストに加えて全てのスカルプト (高さマップ) ツールが含まれています。
* **Paint** モードにはペイント (ウェイト マップ) が含まれています。
- * ウィンドウ フィリング ツール セレクタを廃止し、シンプルなドロップダウン セレクタにしたため、UI がぐっとコンパクトになりました。
+ * ウィンドウ フィリング ツール セレクタを廃止し、シンプルなドロップダウン セレクタにしたため、UI がとてもコンパクトになりました。
* ランドスケープ エディタを詳細パネルに基づくようにしました。その結果、エディタの残りの部分と整合が取れ、設定名と設定値の間の調整スプリッタなどの新機能が追加されます。
* スカルプト処理は、 _ペイント_ ではなく **スカルプト** と呼ばれるツールで行うようになりました。
@@ -64,7 +66,7 @@ Availability:Licensee

* レイアウトを選択して、現在のタブ内のビューポートの配置を変更します。現在アクティブになっているレイアウトがオレンジ色で表示されます。
- * レイアウトは、 **レベルビューポート** の **[Keyboard Shortcuts]** (キーボード ショートカット) ウィンドウのコマンドとしても利用できます。
+ * レイアウトは、 **レベル ビューポート** の **[Keyboard Shortcuts]** (キーボード ショートカット) ウィンドウのコマンドとしても利用できます。
* キーボードでレイアウトを切り替える場合、キーボード入力フォーカスによりビューポートのタブがコマンドで切り替えられます。ビューポートがフォーカスを持たない場合、特に何も起こりません。
* **新しい環境設定:Show Frame Rate and Memory (フレームレートとメモリの表示)**
@@ -110,7 +112,7 @@ Availability:Licensee
グラフ内で変数取得または編集設定のいずれかを選択します。

- または、 **マイブループリント** リストで変数を選択します。
+ または、**マイブループリント** リストで変数を選択します。

@@ -121,7 +123,7 @@ Availability:Licensee

- * この機能は以前まで、 **ForEachLoop** ノードと **ForEachLoopWithBreak** ノードを **StandardMacros** ライブラリに追加するために使用していました。
+ * この機能は以前まで、**ForEachLoop** ノードと **ForEachLoopWithBreak** ノードを **StandardMacros** ライブラリに追加するために使用していました。
[REGION:caption]
**変換前**
@@ -167,25 +169,24 @@ Availability:Licensee
* **UE4 の Oculus Rift サポート**
* UE4 が Oculus Rift をサポートするようになりました!
* Rift にプラグインし、ゲームを起動するだけで、 Oculus Rift を利用できます!
-
- Rift は自動検出されるので、レンズの歪みを有効にしておくと、ゲームがステレオスコピックでレンダリングされて表示されます。
+ Rift は自動検出されるので、レンズの歪みを有効にしておくと、ゲームがステレオスコピックでレンダリングされて表示されます。

* 有効の場合、プレイヤー カメラの回転が Rift の方向にロックされます。この設定は **ロックした** ままにすることをお勧めします。
* **ElementalVR** サンプル プロジェクトは、現在メインの、唯一テスト済みの VR 体験です。このプロジェクトを GDC で披露し、 60 FPS に達しました。ユーザーの皆様、是非 VR を体験してみてください!
- * 最高の体験についてのメモ:
+ * 最高の体験のための注釈:
* 60 FPS でデモを動かすカードの場合、 **vsync を有効** にすることをお勧めします。HD キットを使用する場合は、スクリーンの向きにより明らかにティアリングが発生するため、特に推奨します!
- * **フレーム バッファ処理の無効化** このオプションは nVidia のコントロール パネルにあります。1 に設定してデバイスの遅延を減らします。
+ * **フレーム バッファ処理の無効化**このオプションは nVidia のコントロール パネルにあります。1 に設定してデバイスの遅延を減らします。

* 紹介しておきたい進行中の案件は以下の通りです。
* **全画面自動探知**:現在、Rift が主要モニタになっていない場合、ウィンドウを手動で Rift に移動してコンソールで全画面に切り替える必要があります (「fullscreen] と入力) 。
* **レンダリング機能は、ステレオスコピック レンダリングと互換性がない場合もあります**。今のところ、 Environmental Reflections はステレオスコピック レンダリングと互換性がありませんし、他にもレンダリングに失敗する機能があるかもしれません!右目が黒い四角で表示されたら、恐らくそれは互換性のない機能なのかもしれません。
- * **遅延の改善** 今のところ、Rift の現在方向に対してカメラ位置を向けるために、まずゲームスレッド上で 1 回、そしてレンダリングの直前に 1 回と、計 2 回更新を行っていますが、まだ最適化の余地があります。Rift プラグインがレンダースレッド上での最終的な更新用に使用するインターフェースも問題なく使えます。明らかな遅延を減らせるのであればゲームに Rift は要らない場合、ゲームは同じインタフェースで 入力の読み取りと調整を別に行える可能性があります。
+ * **遅延の改善**今のところ、Rift の現在方向に対してカメラ位置を向けるために、まずゲームスレッド上で 1 回、そしてレンダリングの直前に 1 回と、計 2 回更新を行っていますが、まだ最適化の余地があります。Rift プラグインがレンダースレッド上での最終的な更新用に使用するインターフェースも問題なく使えます。明らかな遅延を減らせるのであればゲームに Rift は要らない場合、ゲームは同じインタフェースで 入力の読み取りと調整を別に行える可能性があります。
-* **PC とコンソール用スクリーン空間のライト シャフト**
+* **PC とコンソール用スクリーン スペースのライト シャフト**
* ライト シャフトには、 **フォグ オクルージョン手法** と **加算 / ブルーム手法** の 2 種類があります。それぞれにコストがかかるので、希望する方法を 1 つ使用するのが良いでしょう。
* **オクルージョン**
* オクルージョン手法は画面上のオブジェクトの深度からマスクの作成、ライトから離れてマスクへブラーの適用、またフォグや大気のマスクがけに使用します。
@@ -199,10 +200,10 @@ Availability:Licensee

-* **Mobile Rendering:Distance Field Shadows (ディスタンス フィールド シャドウ)**
+* **モバイル レンダリング:Distance Field Shadows (ディスタンス フィールド シャドウ)**
* 太陽の光はディスタンス フィールド シャドウを使い、ピクセル単位で計算されるようになりました。
- 
+ 
* **Lightmass (ライトマス) の品質改善**
* ビルド時間を大幅に増やさずに品質を高める方法として適応サンプリングを使用することにしました。
@@ -214,10 +215,10 @@ Availability:Licensee
|改善前|改善後|
[/REGION]
-####アニメーション
+#### アニメーション
* **AnimNotifyState Notification**
- * 継続するなど、時間の範囲を定義する以外は、 AnimNotifyEvents と似ています。AnimNotifyClass ブループリントで NotifyBegin、NotityTick、NotifyEnd をトリガします。
+ * 継続するなど、時間の範囲を定義する以外は、 AnimNotifyEvents と似ています。また AnimNotifyClass ブループリントにおいて、 NotifyBegin 、 NotityTick 、 NotifyEnd をトリガします。

@@ -226,7 +227,7 @@ Availability:Licensee
(convert:false)
-## 追加項目
+## 新規追加
#### エディタとツール
* **[Open Project (プロジェクトを開く)]** で **プロジェクト ブラウザ** を使用するようになりました。
@@ -239,7 +240,7 @@ Availability:Licensee
* エディタ UI HUD にフレーム レートとメモリ表示を切り替える環境設定を新しく加えました。
* **[Editor Preference (エディタの環境設定)] > [Developer Tools (デベロッパーツール)] > [Show Frame Rate and Memory (フレームレートとメモリを表示)]** (デフォルトはオン)。
* **ビューポートのレイアウト**
- * 4 ペイン 2x2 レイアウトの他に 2 、 3 、 4 つのビューポート ペインが新しく登場しました。
+ * 4 ペイン 2x2 レイアウトの他に 2、3、4 つのビューポート ペインが新しく登場しました。
* レベル ビューポートは、それぞれのビューポートのメインメニューにアクセスし、様々なレイアウトに対応させました。
* レイアウトを選択して、現在のタブ内のビューポートの配置を変更します。
* レイアウトは、 **レベルビューポート** の [Keyboard Shortcuts (キーボードショートカット)] ウィンドウのコマンドとしても入力できます。
@@ -247,13 +248,13 @@ Availability:Licensee
* NVTriStrip は、コンソール変数 r.TriangleOrderOptimization を 0 に設定すれば使用できます。
* 新規の LOD のインポートや既存の LOD をスタティック メッシュに置き直す機能を追加しました。
* **プロファイラ**
- * イベント グラフを改善しました (Average と Maximum イベント グラフの選択オプションが追加されました)。
+ * イベント グラフを改善しました (Average と Maximum イベント グラフの選択オプションが追加されました)。
* エクスプローラーからプロファイラへ ue4stats ファイルをドロップ&ドロップする機能を追加しました。
* プロファイラのパフォーマンスが改善されました (キャプチャされた総計ファイルのロード時間の高速化に関するものがほとんどです)。
#### ブループリント
-* **[My Blueprint**]** パネルあるいは選択対象の Get/Set ノードで変数が選択された場合に、 **[Details]** パネルの変数デフォルトを編集する機能を追加しました。
+* **[My Blueprint]** パネルあるいは選択対象の Get/Set ノードで変数が選択された場合に、**[Details]** パネルの変数デフォルトを編集する機能を追加しました。
* ライト用の IES プロファイル テクスチャがブループリントに設定できるようにしました。
* **ブループリント エディタ** の中に **Components** モードで作成した変数を割り当てられるようにしました。
* **ブループリント エディタ** の **Graph** モードに **Components** モードで作成した変数の割り当てを可能にしました。
@@ -272,8 +273,8 @@ Availability:Licensee
* このビルドにはサポート対象のプラットフォームの Oculus Rift ハードウェアに対する予備サポートが含まれています。エンジン立ち上げ時にデバイスをプラグインすると、ステレオスコピック レンダリング、 HMD 、歪み、読み取りセンサー データが有効になります。この機能は開発中のため、適切なモニターを探知する機能などはまだ動作しています。
* r.MaterialQualityLevel がランタイム時に変更できるようにまりました (マテリアル式 **QualitySwitch** を使用するとアートの見栄えの調整が簡単になります)。
* ガウス ブラー処理のポストプロセス パスの最適化を追加し、大きめのブルームのみにデフォルト使用する r.FastBlurThreshold で調節可能にしました。
-* 内側および外側の半径、フォールオフ指数、最小ダメージに対する引数で、ApplyRadialDamageWithFalloff() 関数を GameplayStatics に追加しました。
-* Subversion へのサポートを追加しました。
+* 内側および外側の半径、フォールオフ指数、最小ダメージに対する引数で、`ApplyRadialDamageWithFalloff()` 関数を `GameplayStatics` に追加しました。
+* サブバージョンへのサポートを追加しました。
* ソース コントロールがプラグインで管理されるようになりました。
* Combo ボックス (およびそのコンテンツ) のキーボード制御を可能にしました。
* カメラ コンポーネントの最大比が 10 から 100 になりました。
@@ -281,10 +282,10 @@ Availability:Licensee
* これにより、プリミティブがメインとなるシーンで描画されなくなりますが、他のパス (カスタム 深度パス) では描画されます。
* テクスチャ キューブ アセットへエクスポートする HDR を追加しました。
* 方向ベクターを返す FRotator::Vector() と混乱しないように、 FQuat::Vector() を FQuat::GetRotationAxis() に変更しました。
-* **AnimNotifyState** を追加しました。AnimNotifyState は AnimNotifyEvents とは異なり、継続するなど、時間の範囲を定義します。また AnimNotifyClass ブループリントにおいて、 NotifyBegin 、 NotityTick 、 NotifyEnd をトリガします。
+* **AnimNotifyState** を追加しました。AnimNotifyState は AnimNotifyEvents とは異なり、継続するなど、時間の範囲を定義します。また AnimNotifyClass ブループリントにおいて、NotifyBegin、NotityTick、NotifyEnd をトリガします。
* エディタでの AnimNotify 描画を改善しました。アクティブな通知がハイライトされます。
* AnimMontage が現在のスケルトン上で再生できない場合のログ警告を改善しました。
-* FText の数字 / パーセント / 通貨の形式を改善し、場所と記号を制御ができるにしました。
+* `FText` の数字 / パーセント / 通貨の形式を改善し、場所と記号の制御が可能になりました。
* **PhAT** - 選択中のスタティック メッシュから頂点を選択中のボディにコピーします。
@@ -295,9 +296,9 @@ Availability:Licensee
* 新しい調整用 GI ソルバを使用して品質を大幅に改善しました。
* **WorldSettings** の **IndirectLightingQuality** で改善が必要なレベルでソルバ品質を選択的にあげることができます。
* オブジェク同士トが交わる部分の暗いテクセル アーティファクトを減らしました。
-* **移動オブジェクトの数が多い個所を中心にレンダリング スレッドを最適化**
- * 1400 の移動オブジェクトのあるテストシーンの RT (リプレイ タイム) の合計は40% 削減されました。
-* **スクリーン空間のライトシャフト**
+* **移動オブジェクト数が多い個所を中心にしたレンダリング スレッドの最適化**
+ * 移動オブジェクトが 1400 あるテストシーンの RT (リプレイ タイム) の合計は40% 削減されました。
+* **スクリーン スペースのライトシャフト**
* 安定性を維持するために Temporal AA を使用します。
* 異なる 2 つの機能があります。フォグ オクルージョン手法は現実的で、ブルーム / 加算手法は制御しやすいです。
* **モバイル**
@@ -306,7 +307,7 @@ Availability:Licensee
#### プラットフォーム
-* PC がコンソールと同じキャッシュ化されたテクスチャ ストリーミング(優先されるキャッシュのヒューリスティックによるテクスチャ プール) を使用するようにしました。デフォルトのプールサイズは VRAM の 50% ですが、好きな時に変更できます。
+* PC がコンソールと同じキャッシュ化されたテクスチャ ストリーミング(優先されるキャッシュのヒューリスティックによるテクスチャ プール) を使用するようにしました。デフォルトのプールサイズは VRAM の `50%` ですが、好きな時に変更できます。
* Deployment to Linux へのデプロイ (転送) は **Unreal Automation Tool** (UAT) でサポートされています。
* **IOS**
* IPhone5S (64-bit ファットバイナリ) へのサポートと IOS7 の修正を追加しました。
@@ -317,282 +318,282 @@ Availability:Licensee
* Facebook IOS SDK をサードパーティ ソースに追加しました。
-## 更新ノート
+## アップグレード ノート
#### エディタとツール
-* **ランドスケープ**
- * テクスチャ サンプリングを保存するために、高さマップ法線がウェイトマップにマージしました。
-* ストリーミング レベル用の **Edit properties** コマンドで、 AWorldSettings プロパティではなく ULevelStreaming オブジェクトのプロパティを表示するようにしました。
-* **コンテンツブラウザ** のアセットを**[Delete]** キーで削除できるようにしました。
-* アセット ビューに表示するアイテムがない場合、 **コンテンツブラウザ** が _「Nothing to show; check your filter」_ というメッセージを表示するようにしました。
-* コラム ビューの中では **コンテンツブラウザ** サムネイル スケーリングを無効にしました。
-* テクスチャ インポートの通知が OK または [Revert] ボタンのクリック直後に消えるようにしました。
-* 単一の **Active Bookmark** カテゴリへのブックマーク メニュー入力を移動しました。
-* 無効化されたプロパティに対するコードをプロパティは作成しません ( _マテリアル_ が不透明な場合のオパシティ プロパティなど)。
- * 今までは、コード作成用に無効化されたプロパティに適用する式を持ってシェーダーにこっそり使うことができましたが、今後は適用できませんので修正する必要があります。
-* アクタ アニメーションの詳細パネルのビルドを変更し、プロパティ表示がデリゲートでの制御を可能にしました。これにより、アニメーションをアクタにドラッグするとパネルのステートが不整合のままになるという問題が修正されました。
-* **Create Dynamic Material** _Blueprint_ ノードのツールチップが修正されました。
-* **Play In Editor** 中にリアルタイムな **Enable**/**Disable** ができるようにビューポート作成の動作を変更しました。
-* _Preview Only_ であることを示すペルソナの **スケルトンツリー** にアセット表示用のテキストとツールチップを追加しました。
-* オリジナル機能の出力を削除したので、エラーが表示されなくなりました。
-* Viewport Visualize Buffer メニュー オプションをローカライズしました。
-* Import FBX オプション ウィンドウのヘッダーメニューをローカライズしました。
-* Viewport Show メニュー オプションをローカライズしました。
-* スプラッシュ スクリーンのバージョンと読み込み情報をローカライズしました。
-* サウンドキュー エディタのメニュー オプションをローカライズしました。
-* ブループリント編集のデフォルトをローカライズしました。
-* エディタ設定のキーバインドのオーバーライドに対する通知をローカライズしました。
-* PhAT Editor Animation ツールバー テキストをローカライズしました。
-* ビューポートをローカライズしました。プレビュー:最近使用したのセクション ヘッダー
-* Matinee Group コンテキスト メニューの [Rename Group (グループ名を変更)] をローカライズしました。
-* Forsyth のトライアングル順序最適化アルゴリズム (サードパーティ ライブラリとして) をメッシュ インポート パイプラインに統合しました。
+* **Landscape**
+ * Merged heightmap normal to weightmap, to save texture sampler.
+* **Edit properties** command for a streaming level now shows ULevelStreaming object properties instead of AWorldSettings properties.
+* Can now delete assets in the **Content Browser** using the **Delete** key.
+* **Content Browser** now displays message _"Nothing to show; check your filter"_ message when the asset view has no items to show.
+* **Content Browser** thumbnail scaling now disabled when in columns view.
+* Texture import notification now fades off immediately after clicking OK or Revert buttons.
+* Moved the bookmark menu entries into a single **Active Bookmark** category.
+* Materials no longer generate code for properties that have been disabled (i.e. opacity properties when the _Material_ is opaque).
+ * Previously it would have been possible to have expressions attached to disabled properties which would generate code that could be sneakily used in some way by the shader.This will no longer work and will need fixed up.
+* Changed actor animation detail panel building to allow property visibility to be control with delegates.This fixes an issue where dragging an animation onto an actor caused the panel to be left in an inconsistent state.
+* Corrected tooltip for **Create Dynamic Material** _Blueprint_ node.
+* Changed behavior of viewport creation so that **Enable**/**Disable** of realtime during **Play In Editor** is honored.
+* Added extra text and tool tip to asset display to the **Skeleton Tree** in Persona signifying that it is _Preview Only_
+* Deleting the original function output no longer causes an error to be displayed.
+* Localized the Viewport Visualize Buffer menu options.
+* Localized the Import FBX options window header and menu.
+* Localized the Viewport Show menu options.
+* Localized the Splash screen version and loading information.
+* Localized the SoundCue editor menu options.
+* Localized Blueprint Editing Defaults.
+* Localized Editor Settings Keybinding override notification.
+* Localized PhAT Editor Animation toolbar text.
+* Localized Viewport:Preview:Recent section header.
+* Localized the Matinee Group context menu Rename Group.
+* Integrated Forsyth triangle order optimization algorithm (as third party library) into mesh import pipeline.
#### ブループリント
-* _CharacterMovementComponent_ の **Acceleration** プロパティが保護され、GetCurrentAcceleration() のみを使用して _ブループリント_ でアクセスできるようにしました。
- * **Acceleration** を修正して移動するブループリントは、代わりに **InputVector** 使用できるように変換されるはずです。
-* ソースファイル数、モジュール数、 Object クラス数、 Blueprint クラス数、 Asset Package 数、マップの数、クラス タイプごとのオブジェクトのインスタンス数に関するプロジェクト リソース 統計を追う分析を追加しました。
-* **ブループリント エディタ** に、 **[Details]** パネルと **[Component]** コンテキスト メニューから _コンポーネント_ に対するイベントを追加する機能を追加しました。
-* _ブループリント_ にある全てのスーパー コール リファレンスは、コードとユーザーが目にする名前の両方とも _Super_ から _Parent_ に変更しました。
-* ただ四角にレ点を入れるのではなくマップ チェック関数としてすぐに見分けをつくように [マップ チェック] アイコンを置き直しました。
-* プロジェクトの使用を記録する分析を追加しました。
-* プループリント_ コンテキスト メニュー表示で抜けた _foo_ 関数を呼び出すアイコンを追加しました。
-* ブループリント配列の **RemoveItem** 関数で全てのインスタンスを除外して、 TArray の動作との一致を可能にしました。
+* **Acceleration** property of _CharacterMovementComponent_ has been made protected, and is accessible in _Blueprints_ only by `GetCurrentAcceleration()`.
+ * Blueprints that were moving by modifying **Acceleration** should be converted to use the **InputVector** instead.
+* Added analytics to track project resource statistics for number of source files, modules, Object Classes, Blueprint Classes, Asset Packages, Maps and the instance counts of objects per class type.
+* Added functionality in the **Blueprint Editor** to add events for _Components_ from the **Details** panel and the **Components** context menu.
+* Changed all super call reference in the _Blueprints_ to be _Parent_ instead of _Super_ in both code and user facing naming.
+* Replaced the map check icon so it is more readily distinguishable as the map check function rather than just a tick box.
+* Added analytic that records project usage.
+* Added missing icon display in the _Blueprint_ context menu for the call function on _foo_ entries.
+* Blueprint array **RemoveItem** function now removes all instances, to match TArray behavior.
#### ゲームプレイとフレームワーク
-* UGameEngine::UserSettings を GameUserSettings に変更し アンリアル エンジン へ移動しました。
-* UEditorEngine::UserSettings を EditorUserSettings に変更しました。
-* スポーンされ読み込まれたアクタと順序が一致するように PreInitializeComponents を PostActorConstruction に移動しました。
-* AActor::Spawned を AActor::PostActorCreated に変更しました。
-* OnConstruction の前にスポーンされたアクタの PostLoad に類似するように AActor::PostActorCreated を移動しました。
-* UWorld の GameMode ポインタがプライベートになりました。GetAuthGameMode() アクセサを使用します。
-* **名前が変更された Vehicle クラス**:
+* `UGameEngine::UserSettings` renamed GameUserSettings and moved to UEngine.
+* `UEditorEngine::UserSettings` renamed EditorUserSettings.
+* Move `PreInitializeComponents` to be in `PostActorConstruction` so that order is consistent for spawned and loaded actors.
+* Rename `AActor::Spawned` to `AActor::PostActorCreated`.
+* Move `AActor::PostActorCreated` to occur before `OnConstruction` to be analogous to `PostLoad` for spawned actors.
+* The `GameMode` pointer in UWorld is now private.Use GetAuthGameMode() accessors.
+* **Vehicle classes renamed**:
[REGION:simpletable]
- | 変更前 | 変更後 |
+ | Old | New |
| --- | --- |
| Vehicle | WheeledVehicle |
| VehicleMovementComponent | WheeledVehicleMovementComponent |
| VehicleMovementComponent4W | WheeledVehicleMovementComponent4W |
[/REGION]
-* _NoDrive_ ビークル モデルのサポートは除外されました。
-* Y-up の座標をもつ APEX Clothing アセット上で自動的に **Y-up** から **Z-up** へ変更します。
-* エスケープするためには、メッセージ フォーマット パターン文字列で ' の代わりに \` を使用することになりました。
- * メッセージ フォーマット パターン文字列で { or } を使う場合、個別に \`s - の間を { and } でラップする、あるいは 2 つを一緒にラップします。
- * \` の後に { or } をエスケープせずに印刷するには \` を重ねて (\`\`) 使用します。
-* 高解像度のスクリーンショット パスの実行中、モーション ブラーを無効にしました。
-* LoadPackageAsync は関数ポインタの変わりにデリゲートを受け取れるようになりました。
+* _NoDrive_ vehicle model support removed.
+* Change up-axis from **Y-up** to **Z-up** automatically on the APEX Clothing asset which has Y-up axis.
+* Message formatting pattern strings now use \` instead of ' to escape.
+ * If a message formatting pattern string uses { or }, wrap the { and } between \`s - individually or collectively both work.
+ * Use double \` (\`\`) to print a \` without escaping a { or } after it.
+* Disabled motion blur while performing high res screenshot pass.
+* `LoadPackageAsync` now accepts a delegate instead of pointer to a function.
#### コア
-* Arithmatic と名づけられた各種タイプを Numeric に変更しました。
-* ブランチがアーカイブでそれぞれのエントリを定義できるように追加されたカスタム仕様のバージョン スキームを、列挙型変数から UID ベースに変更しました。
- * これまで列挙型変数はカスタム仕様のバージョンの特定のために使われてきました。ObjectVersion.h の EUnrealEngineObjectCustomTag に置かれていました。
- * 今後、カスタム仕様のバージョンは GUID で特定されます。
- * 列挙型変数ベースのカスタム仕様のバージョンが含まれる既存のパッケージは、 GUID の 00000000-00000000-00000000- との広報互換性があるので、これらのパッケージにはこの値の GUID を使用することが望まれます。
- * FCustomVersionRegistration 変数は、カスタム仕様のバージョンの用途を記述している列挙型変数および文字列ではなく GUID で定義されるべきです。
+* Various types named "Arithmatic" were renamed to "Numeric"
+* The custom versioning scheme which was added to allow branches to define their own entries in archives has been changed from being enum-based to GUID-based.
+ * Previously, enums were used to identify a custom version.These were placed in `EUnrealEngineObjectCustomTag` in `ObjectVersion.h`.
+ * Now a custom version is identified by a GUID.
+ * Existing packages containing enum-based custom versions are backward compatible with a GUID of `00000000-00000000-00000000-`, so a GUID of this value should be used to load these packages.
+ * Any `FCustomVersionRegistration` variables should be defined with a GUID instead of an enum and a string which describes what the custom version is for, so this:
FCustomVersionRegistration GMyModule((EUnrealEngineObjectCustomTag::Type)0x12345678, MyLatestVersion);
- は、以下のようになります:
+ would become:
FCustomVersionRegistration GMyModule(FGuid(0, 0, 0, 0x12345678), MyLatestVersion, TEXT("My module"));
-* FMaterialVertexParameters の中で計算された TangentToWorld はスケーリングを除外し、ピクセル シェーダーに渡された TangentToWorld と一致します。
-* UnrealBuildTool (モジュラー ビルド内のエンジン) は、ルート内で 「*.uprojectdirs」ファイルを使い「uproject」ファイルに対して表示するフォルダを 1 レベル深い場所で検索します。
- * この機能は bUseUProjectDirs を false に設定すれば、 UnrealBuildTool で無効にできます。
+* The computed `TangentToWorld` in `FMaterialVertexParameters` now removes scaling and matches `TangentToWorld` passed to the pixel shader.
+* UnrealBuildTool (and the Engine in modular builds) will now use `*.uprojectdirs` files in the root to indicate the folders it should search 1 level deep for `uproject` files.
+ * This feature can be disabled in UnrealBuildTool by simply setting `bUseUProjectDirs` to false.
#### プラットフォーム
-* クックされていない UE4 とゲームバイナリを取り除きました。
- * UE4Editor.exe を実行、またはコマンドレットを実行すれば、クックされていないゲームをいつでもテストできます。
- * 生成されたプロジェクト ファイルの中に、 Uncooked オプションは存在しなくなりました。その代わりにエディタを使用します。
- * エディタのコマンドラインに -game オプションを渡してゲームを実行します。
- * **Play in Standalone** プロセスを使用してエディタからゲームを実行することもできます。
+* Eliminated Uncooked UE4 and game binaries.
+ * You now always run `UE4Editor.exe` to test uncooked games, or to execute commandlets.
+ * The Uncooked option no longer exists in generated project files.Use the Editor instead.
+ * Pass the `-game` option on the command-line of the editor to run the game instead.
+ * Or, you can run the game from the editor using **Play in Standalone** Process.
[REGION:note]
- Uncooked ターゲットは既存プロジェクトが削除するはずです。GameUncooked が有効な TargetType ではなくなりました。差し当たり、 UnrealBuildTool はこれらのファイルを自動でスキップします。
+ Existing projects should delete their Uncooked target.GameUncooked is no longer a valid TargetType.For now, UnrealBuildTool will automatically SKIP these files.
[/REGION]
-* 数ある「*.mm」ファイルを「*.cpp」に更新しました。
+* Updated a number of `*.mm` files to `*.cpp`
-#### ネットワーク
-* 専用サーバー用のデフォルト マップ / ゲーム情報の ini オプションを追加しました。
-* 少なめのコマンドライン パラメータで専用サーバーを起動させることが可能です。
-* StartupMap コンセプトは DefaultMap と機能的に同じなので削除しました。
+#### Networking
+* Added default map / game info ini options for dedicated servers.
+* Allows dedicated servers to launch with less commandline parameters.
+* Removed StartupMap concept as DefaultMap is functionally the same.
-####オンライン
-* IsEnabled() 機能はすべてのオンライン サブシステムで一貫しています。
-* 新規ログ オプションとして LogOnlineGame と LogBeacon を追加しました。
-* IsRunningServer から IsRunningDedicatedServer に変更して分かりやすくしました。
-* JoinFriendSession から FindFriendSession に変更して用途を明確にしました。
- * FindFriendSession は友達の場所の検索結果のみを返します。
- * その結果を使って後に JoinSession を呼び出し、フローを完成させなければなりません。
-* IOS 向けに Facebook Identity を追加しました。
-* IOS 向けに Facebook Friends Access を追加しました。OnlineSubsystem Sharing インターフェースを使って権限申請を行います。
-* OSS ユーザーに関するデータをホストする OnlineSubsystem::GetUserInterfac の初回導入を追加しました。
-* OnlineSubsystem Facebook を更新したので IOS と Windows のビルドを並べることができます。
-* サービス キーと権限に関する MCP コンフィギュレーションを config ファイルではなく NoRedist ソース ファイルへ移動しました。
- * 開発便宜上、これらの値の取得には DefaultEngine.ini メソッドを維持しています。
- * ゲームはコールバック デリゲートを使ってコンフィギュレーションをオーバーライドすることができます。
+#### Online
+* Consistent `IsEnabled()` functions across all online subsystems.
+* Added `LogOnlineGame` and `LogBeacon` as new possible log options.
+* Renamed `IsRunningServer` to `IsRunningDedicatedServer` for clarity.
+* Renamed `JoinFriendSession` to `FindFriendSession` to be more clear about its purpose.
+ * `FindFriendSession` only returns a single search result for where the friend is.
+ * `JoinSession` must still be called afterward with the result to complete the flow.
+* Added a Facebook Identity for IOS
+* Added Facebook Friends access for IOS.Uses the OnlineSubsystem Sharing interface to request permissions.
+* Added the initial implementation of `OnlineSubsystem::GetUserInterface` which hosts data about an OSS user.
+* Updated the OnlineSubsystem Facebook so that IOS and windows builds could live side by side.
+* Moved MCP configuration of service keys and permissions to NoRedist source files instead of config files
+ * Still maintained the `DefaultEngine.ini` method of getting these values for development convenience
+ * Games can override configurations using a callback delegate
* Http
- * wininet の http モジュールに対してのタイムアウトが公開されました。
+ * Exposed http module timeouts for wininet:
* HttpConnectionTimeout=60
* HttpReceiveTimeout=30
* HttpSendTimeout=30
- * リクエストはタイムアウトを待たず早めに失敗します。
+ * Request will fail faster instead of waiting for the timeout
-## 今後の追加および継続事項
+## 今後の追加事項と継続項目
#### エディタとツール
-* **ワールド ブラウザ**
- * ブランクのパーシスタント レベルをランタイム パッケージからディスク上の実際のパッケージに変更しました。**Open World** コマンドはフォルダではなくマップ ファイルを要求します。
- * **右クリック** するとカーソルを合わせたタイルが正しく選ばれます。
-* アクティブになっているビューポートに表示されるビューモード名がメニューリストの表示と同じになりました。
-* ロック時、レベルを現在のレベルにするためにメニュー オプションを無効にします。
-* データのみの場合と通常の _ブループリント_ には同じアイコンを使用し、両者の区別を付けるため色だけ別にします。
-* シーン テクスチャ ノードにビューポート サイズに対する UV をクランプするオプションが付きました。
-* アセットを新規作成されたコレクションにドラッグしてもエディタがクラッシュしないようになりました。
-* 開始時と同じフレームでゲームを終了した場合のクラッシュを防ぎます。
-* _Matinee_ アクションに対して欠けていたツールチップを追加しました。
-* _Matinee_ の新規作成時に **コンテンツブラウザ** アセットが選択されてもエディタはクラッシュしなくなりました。
-* **Placement Browser** - コレクション ビューでは、無効なパラメータによるエントリ作成の試みは行われなくなります。
-* **コンテンツブラウザ** はテキストではなくアイコンを使用してコレクション タイプを表示するようにしました。
-* **Matinee** のドロップダウンに **Matinee を追加** のオプションを付けました。
-* ソース コントロールが切断されている時、右クリックしたりコレクションの新規作成をしても警告が出ないようにしました。
-* Zoom と _ブループリント_ の見出しをローカライズしました (可能な範囲で)。
-* **ブループリント** / **ペルソナ** モードの見出しをローカライズの表示にしました。
-ドロップダウンの **[浮動トラックを追加]** をローカライズの表示にしました。
-* BSP Pan をローカライズの表示にしました。
-* _Matinee Actor_ の [詳細] セクションを **Transform** の下に表示しました。
-* **Ctrl + W** で複製する場合は、もう 1 回だけ取り消しをする必要があります。
-* _SoundCue_ と _SoundWave_ はダブルクリックしても再生されなくなりましたので、 **サウンドキュー エディタ** を開いてください。
-* **Hidden In Game** としてマークされた _DecalActors_ はエディタに正しく描画します。
-* ガウス曲線の DOF エフェクトを最適化します。**Near Blur Size** がコンソール変数 `r.DepthOfField.NearBlurSizeThreshold` によって定義された閾値より小さければ、近いブラー エフェクトが無効化され、その代わりに負荷の小さいシェーダーが使用されます。
-* バッファのビジュアル化システムを へ平行投影ビューモードで正しく動作しています。
-* Alt + ドラッグでビュー回転をしても、 _ランドスケープ_ がリサイズしようとしなくなりました。
-* ラインの複雑さを緩和し DrawDashedLine() を最適化して、エディタ内での _ランドスケープ_ スプラインのレンダリングを最適化しました。
-* UI 全般における改善点:
- * 40x PNG のみで [ViewMode] のアイコンを新規に追加しました。
- * ローカル、共有、プライベート用に追加した新規アイコンは接続する必要があります。
- * [Profiler] アイコンを新規作成し、ビルドに追加、接続しました。
- * [Colorblind Solution] アイコンを更新しました。自動的に動作するはずなので、ビルドを破壊せずにPNG へ置き換える状態にはなっていません。
- * 現在の「コンテンツブラウザ」フォルダのアイコンが光るように調整します。デフォルト アイコンを前のバージョンの外見に戻す色調を弱めるためのコードが必要です。
- * 翻訳ツールバー オプションの既存アイコンを修正し、新規にアイコンを作成しました。PNG アセットが置き換えられたので、新規翻訳アイコンにコード合わせが必要です。
- * メインの [Add Event Caller blueprint] ボタン (40x サイズ) およびコンテクスト メニュー (16x サイズ) の両方のアイコンを新規作成しました。
- * Import FBX Chunks @ 40x のアイコンを新規作成しました。エディタでのコード合わせが必要です。変更は PNG アセットのみ。
- * 16x と 40x の両方の解像度で、「カメラ位置でのスタンドアローン ゲーム」と「再生開始のスタンドアローン ゲーム」用にそれぞれアイコンを新規作成しました。PNG アセットのみで、コード合わせが必要です。
- * [Enum]、[Bluprint Delegate](16 と 24x)、接続中まはた切断中の [Delegate Pins] のアイコンを新規作成しました。PNG アセットのみで、既存の PNG ファイルを置き換えます。
-* 新しいエンジンの分析法であるエディタ トラックのソース管理プロバイダーが変ります。
-* ビューポート ツールバー ボタンが通常のツールバー ボタンのように動作し、クリックすると開いているメニューが閉じます。
-* EpicSurvey プラグイン用のブランチサポートが追加されました。
-* 新しいサーベイの利用可能時にEpicSurvey 通知方法がトースト表示されるように変更し、通知アイコンに対して定義可能な時間遅延と継続時間を追加しました。
-* エディタが **Save All** を使う際に選択を解除したパッケージは、アプリケーションの寿命の限り、その状態を記憶します。
-* ビューポートでのズーム時に使用するマウスホイールのスクロール速度を分けるために新規エディタ設定を追加しました。
-* **コンテンツブラウザ** の検索ボックスには合致する検索結果が全て含まれるようになり、ユーザーは特定のアイテムではなくフォルダ全体を検索できます。
-* PhAT で物理ボディーを開くと対応するボーンを持たない物理ボディを自動削除するオプションを追加しました。
-* エディタのファイル メニューからコンテンツのクックおよびプロジェクトのパッケージが機能するようになりました。ただし、プラグインには若干課題が残っています。
-* プロジェクトの新規作成時、 Open Project ツールが非表示になるようにしました。
-* _コンテクスト ブラウザ_ 中のテキスト「Nothing to show; check your filter」を中央寄せにしました。
-* _Cube Texture_ サムネイルが 2:1 のアスペクト比で描画されるようになりました。
-* プロジェクト ファイル ジェネレータを改善しました。
- * 生成プロジェクトに .uproject ファイル、.uplugin ファイル、プラグイン ファイルが含まれるようにしました。
-* 起動時のマウス制御を Play In Window モードで可能にしました。
-* ユーザーがエディタに明示的にマウス制御を返した場合、インゲーム コンソールを使用してもビューポートの制御が失われないように、マウス制御にのみ従うようにPIE ビューポートは変更します。
-* 右のシフトが下方位置で動かなくなってしまわないように、曖昧だった左右のシフトを正確に排除しました。
-* タスクのプログレス ダイアログ ポップアップによりキーボードフォーカスが奪われないようにすることで、コンテンツ ブラウザのアクションにあるアクションの無限再帰 (呼び出し) を防ぎます。
-* Matinee の [Editing Crosshair (クロスヘア照準を編集)] メニュー オプションに永久チェックボックスが表示されるようにしました。
+* **World Browser**
+ * Changed blank persistent level from a runtime package to an actual package on a disk.**Open World** command now requires a map file instead of folder.
+ * **Right-click** now properly selects hovered tiles.
+* View mode names displayed in active viewport are now the same as the menu listing.
+* Disabled the menu option to make a level the current level when it is locked.
+* The same icon is now used for "data only" and regular _Blueprints_, only the color differs to distinguish between them.
+* The scene texture node now has an optional clamp of it's UV to the viewport size.
+* Editor no longer crashes when dragging asset into newly created collection.
+* Prevent crash if user exits game the same frame it begin it.
+* Added missing tooltips to _Matinee_ actions.
+* Editor no longer crashes if **Content Browser** asset is selected when creating a new _Matinee_.
+* **Placement Browser** - Collections view no longer tries to create an entry with invalid parameters.
+* **Content Browser** now uses icons instead of text to denote collection type.
+* **Matinee** dropdown now has an option for **Add Matinee**.
+* No longer a warning when right-clicking or creating a new collection when source control is disconnected.
+* Zoom and _Blueprint_ headings are now localized (where possible).
+* **Blueprint Editor**/**Persona** mode headings now appear localized.
+* Dropdown **Add Float Track** now appears localized.
+* BSP Pan now appears localized.
+* _Matinee Actor_ details section now appears below **Transform**.
+* Duplicate, via **Ctrl + W**, only requires 1 undo step again.
+* _SoundCue_ and _SoundWave_ no longer play when double clicked, instead opens **SoundCue Editor**.
+* _DecalActors_ marked as **Hidden In Game** will now draw properly in the editor.
+* Optimizations for Gaussian DOF effect.If **Near Blur Size** is less than the threshold defined by the console variable `r.DepthOfField.NearBlurSizeThreshold`, the near blur effect will be disabled and cheaper shaders used instead.
+* Buffer visualization system now works correctly in orthographic view modes.
+* New _Landscape_ doesn't try to resize during alt-drag view rotation any more.
+* Optimized _Landscape_ spline rendering in editor by reducing complexity of the lines and optimizing `DrawDashedLine()`.
+* General UI Improvements:
+ * Added new additional ViewMode icons at 40x pixels PNG only.
+ * Created new Icons added for Local, Shared & Private - will require hookup.
+ * Created new Profiler Icons and Added to the build - Wired up.
+ * Updated Icon - Colorblind Solution Should automatically work Red - No Go sign - non-destructive PNG replace.
+ * Adjust existing Content Browsers folder icons to lighten them. requires code to tint default icons back to look of previous versions.
+ * Revised existing icons & created new icons for translation toolbar options.PNG assets replaced, new translation icons require code hook-up.
+ * Created new icons for both the main Add Event Caller blueprint button (40x size) and the context menu (16x size).
+ * Created a new icon for Import FBX Chunks @ 40x.Requires code to hook-up in edior.Change is PNG asset only.
+ * Created new icons for 'Standalone Game at Camera Location' & 'Standalone Game at Player Start', at both 16x & 40x resolutions.PNG assets only, require code to hook-up.
+ * Created new icons for Enum, Bluprint Delegate (16 & 24x), and Delegate Pins connected & disconnected.PNG assets only, replaces existing PNG files.
+* New engine analytics - Editor tracks source control provider changes.
+* Viewport toolbar buttons now act like regular toolbar buttons and close any open menus when clicked.
+* Added branching support for the EpicSurvey plugin.
+* Changed EpicSurvey notification mechanics to display a toast when a new survey is available, and added definable time delays and duration for the notification icon.
+* Deselecting package when using **Save All** in the Editor now remembers you ignored it for the lifetime of the application.
+* Added a new editor setting to separate the middle-mouse scroll speed when using it to zoom in the viewport.
+* The **Content Browser**'s search box now includes all the contents of successful search results, allowing a user to search for an entire folder rather than specific items.
+* Added option to automatically delete physics bodies with no corresponding bone when opening physics bodies in PhAT.
+* Content Cooking & Project Packaging from the Editor's File menu now works; there are still some issues with plug-ins
+* 'Open Project' tools are now hidden when creating new project.
+* Centered "Nothing to show; check your filter" text in _Content Browser_.
+* _Cube Texture_ thumbnails are now draw with 2:1 aspect ratio.
+* Project file generator improvements.
+ * Generated projects now include .uproject files, .uplugin files and plugin resource files.
+* Allow the Play In Window mode to take mouse control on start up.
+* Change PIE viewports to only surrender mouse control when the user explicitly returns it to the editor, so that using an in-game console won't cause the viewport to lose control.
+* Correctly disambiguate right & left shift so that right-shift doesn't get stuck in the down position.
+* Prevent infinite recursion in some Content Browser actions by preventing the task pop-up progress dialog from stealing keyboard focus.
+* In Matinee give the "Editing Crosshair" menu option a permanently visible tick-box.
#### ブループリント
-* **MakeArray** ノードは、非純粋関数呼び出しノードだけではなく、全てのノードの前に置けるようにしました。
-* ブループリントのスポーンパラメータに FName が使えるようになりました
-* **ブループリント エディタ** の **Components** モードに追加する新規コンポーネントを選択した後、検索フィルタ ボックスをクリアするようにしました。
-* **ブループリント エディタ** の **Graph** モードで変数を選択すると、[詳細] タブから検索バーとプロパティ グリッドを削除しました。
-* 子の _Blueprint_ Component 変数名が親の _ブループリント_ の _コンポーネント_ 変数名と衝突することがなくなりました。
-* **BeginPlay** およびその _ブループリント_ 版である **ReceiveBeginPlay** は、最初に再現されたプロパティがクライアント側で受け取られた _後で_ 動的にスポーンされたアクタに対して呼び出されるようにしました。
-* 選択中のアクタを _ブループリント_ の変換する際は、 _ブループリント_ に対してアタッチされている全てのアクタではなく、選択中のアクタのみを選択します。
-* ドラッグ中の変数をコンテクスト メニューにプロモートして、 _ブループリント_ ペインにある新規変数の名前を自動的に編集するようにしました。
+* **MakeArray** nodes can now be placed in front of any node, not just impure function calls.
+* Added support for `FName` _Blueprint_ spawn parameters.
+* The search filter box is now cleared after making a selection to add a new component in **Components** mode within the **Blueprint Editor**.
+* Removed the search bar and property grid button from the Details tab when variables are selected in **Graph** mode within the **Blueprint Editor**.
+* Child _Blueprint_ Component variable names can no longer collide with _Component_ variable names in the parent _Blueprint_.
+* **BeginPlay**, and the _Blueprint_ version **ReceiveBeginPlay** should now be called _after_ the initial replicated properties are received on clients, for dynamically spawned actors.
+* Converting selected actors to _Blueprint_ will only use the selected actors and not all attached actors for the _Blueprint_.
+* Promote to variable in drag context menu new automatically edits the now variables' name in the _Blueprint_ pane.
#### ゲームプレイとフレームワーク
-* 任意のクラスと派生クラスのオブジェクトの繰り返しのみなので、 TObjectIterator はかなり速くなりました。
- * 派生クラスは除外して指定されたクラスのオブジェクトを明示的に繰り返すことだけも可能になりました。TObjectIterator のコンストラクターをご覧ください。
-* ローカライズされた単語数レポート生成コマンドレットを修正して、 Windows 形式の新規改行文字を正しく処理できるようになりました。
-* さらに効率的にするためのマイナーな最適化をいくつかのハードウェアで実施しました。
-* スケーラビリティを SynthBenchmark に追加し (必要に応じて速くできますが精度は下がります)、品質を判断するために debugoutput を追加しました。
-* Enable / DisableInput を Pawn 、 PlayerController 、 LevelScriptActor から呼び出すようにしました。
-* **コリジョン**
- * CollisionProfile の ObjectTypeName によりコード定義されたチャネル ではなく チャネルの DisplayName を許可します ( ECC_GameTraceChannel1 など) 。
- * UI に関する改善点:トレース型とオブジェクト型に分けて、 Collision Profile を Collision Preset に変更しました。
- * Get Hit Result Under Cursor もトレース型とオブジェクト型に対応します。
- * コリジョン プロファイルに対するツールチップ サポートを追加しました。HelpMessage の使用
-* アクタ名を NAME_SIZE の長さに制限することにしました。
-* 完全なオーディオ アセットをあらかじめロードすることで、オンザフライでロードされないようにしました。
-* レベル エディタベースのメインフレームが表示されるまでは、メッセージ ログが表示されないようにしました。
-* debug draw delegates 配列へ同時アクセスしてもクラッシュしなくなりました。
-* 自動検索選択機能を改善しました。
-* GetTextSize が const になったので、 GetTextSize 経由の起動時に実行する必要はありません。
-* キーがかけている FText プロパティアセットのロード時の警告を追加しました。
+* `TObjectIterator` is now much faster as it only iterates over objects of the given class and derived classes.
+ * You can now also only iterate over objects explicitly of the specified class, excluding derived classes.See `TObjectIterator`'s constructor.
+* Modified localization word count report generation commandlet so that it can properly handle windows format new line characters.
+* Minor optimization to get more efficient clears on some hardware.
+* Added scalability to `SynthBenchmark` (run it faster but less precise when needed), added debugoutput to judge quality better.
+* `Enable`/`DisableInput` can now be called on Pawn, PlayerController, and LevelScriptActor.
+* **Collision**
+ * CollisionProfile `ObjectTypeName` allows `DisplayName` of the channel, not code defined channel (i.e. `ECC_GameTraceChannel1`).
+ * UI improvement:Split trace type vs object type, Renamed Collision Profile to be Collision Preset.
+ * Get Hit Result Under Cursor also supports trace type and object type.
+ * Added tool tip support for collision profile.Use HelpMessage.
+* Actor names are now limited to `NAME_SIZE` in length.
+* Preloaded compilation audio assets to prevent them loading on the fly.
+* Prevented message log from showing until a level editor-based mainframe is displayed.
+* Prevented crash because of concurrent access to debug draw delegates array.
+* Auto find selection improved.
+* `GetTextSize` now const - so it no longer needs execution running through it.
+* Warning added when loading assets with FText properties that lack a key.
* **Unreal Front Launcher**
- * この機能は開発中です。ランチャーをこの QA ビルドで再有効化し、 Unreal Automation Tool を利用してゲームをビルド、クック、起動します。全機能が実装されているわけではありませんが、 iOS iPad のビルドとパッケージ化だけではなく、ほぼ全ての Windows 設定でテストしています。
-* **専用サーバーの最適化**
- * これらの環境で NeedsLoadForClient/Server == false でアクタをスポーンすることはできません。
- * bAllowTickOnDedicatedServer を FTickFunction に追加します。
- * ParticleSystemComponents は DS にチェックをいれず、 PSC.ActivateSystem をするようにしました。
- * bAllowReceiveTickEventOnDedicatedServer を AActor に追加し、希望に応じて全てのブループリントに DS にチェックを入れることができないようにしま。す。
-* ビークルに関して改善しました
+ * This is a WIP feature.The launcher has been re-enabled in this QA build and utilizes Unreal Automation Tool to build, cook, and launch games.Not all of the features have been implemented, but it has been tested with most Windows configurations as well as building and packaging iOS ipas.
+* **Dedicated server optimizations**
+ * Disallow spawning Actors with `NeedsLoadForClient/Server == false` in those contexts.
+ * Add `bAllowTickOnDedicatedServer` to `FTickFunction`.
+ * ParticleSystemComponents no longer register ticks on DS, and skip `PSC.ActivateSystem`.
+ * Add `bAllowReceiveTickEventOnDedicatedServer` to `AActor`, to disable all Blueprint ticking on DS if desired.
+* Vehicle improvements
#### レンダリング
-* シャドウ キャスティングは (以前は LoD ごとでしたが) _スケルタル メッシュ_ のマテリアルごとになりました。
-* 法線から合成ラフネステクスチャ機能に改善しました。スペキュラ エイリアシングに役立つ機能です。
+* Shadow casting is now per-material for _Skeletal Meshes_ (was previously per LoD).
+* Improved normal to roughness composite texture feature.This helps with specular aliasing.
* **モバイル**
- * キューブマップ用の HDR エンコードを改善しました。
+ * Improved HDR encoding for cubemaps.
-#### オーディオ
-* SoundWaves から SoundCues を作成すれば、固有で有効な名前を持つ SoundCue が作成されます。
+#### Audio
+* Creating SoundCues from SoundWaves will create the SoundCue with a unique and valid name.
-#### コア
-* Slate モジュールの反映が EditorStyle には依存しなくなりました。
- * SlateStyle を EditorStyle に変更しました。
- *統計値にあまり頼らず、スタイル システムの大幅なリファクタリングを行います。コンテンツを経由してウィジェットのスタイリングを操作するために使用する新規アセット タイプの Slate Widget Style を導入しました。
- * 古いボタンおよびチェックボックス スタイル アセットのファクトリを削除すれば、新規にファクトリを作成なくてすみます (まもなく廃止となります)。
-* 表示テキスト変数の定義時に、新しい SLATE_TEXT_ARGUMENT もしくは SLATE_TEXT_ATTRIBUTE マクロを使用するためにコア スレート ウィジェットを更新します。これにより、ユーザーは FStrings または FText for values のいずれかをパスすることができます。スレート ウィジェットを何回かのステップを踏んで対応する完全なる FText へ変換してみようと思います。最初のステップでは、現在渡されてい る FText 用の .ToString() を削除することができます。次に ANSI* と TCHAR* へのサポートを削除して、 FText を使うために十分な数だけ場所が切り替わったら、マクロロジックを反転して Ftext を TStrings にではなく、 FStings を FText に変換できます。この時点で、 FText を内部で使用するためにコア ウィジェットを変換し、 FString のサポートを段階的に削除し、最終的には完全に削除できます。
- * コア スレート ウィジェット テクスト フィールドの ANSI* および TCHAR* に対するサポートを削除します。
-* UnrealAutomationTool と UnrealBuildTool のビルド用基礎構造に対する改善と修正がいろいろあります。
-* コードベースではないプロジェクトへのコード追加に合わせて uproject ファイルが更新されるようになりました。
-グリッド パネルに行も列もないということが起こらないように注意します。
-* TabManager からアンロード済みオブジェクトに対するリファレンスをなくしました。
-* プロパティ内の上付き文字は強制的に下付き文字になりました。
-* 使用が未承認の FindText をクリーンアップします。
-* テキスト エレメントにはダブル スペースの改行はもう含まれません。
-* ツールバーをクリックすると、ローカライズされたツールバーが展開します。
-* マテリアル エディタ式カテゴリをローカライズしました。
-* 反射 の命名規則の整合を強化しました。
-* バッファの視覚化の命名規則の整合を強化しました。
-* サウンドのスプライトの切り替えをしてもライトのスプライトは切り替わらなくなりました。
-* UDoubleProperty に Double 型の UObject プロパティを追加しました。
-* バイトサイズを人間が読み取れる文字列に合わせるため FText::AsMemory() を追加しました。
-* UHT がエラーを起こさずに空のヘッダファイルを処理できるようにしました。
+#### Core
+* Refactoring the Slate module to no longer be dependent on `EditorStyle`.
+ * Renamed `SlateStyle` to `EditorStyle`
+ * Large refactor of the style system to be less dependent on statics.Introduced a new asset type, Slate Widget Style, that can be used to drive a widgets styling through content.
+ * Removing the factories for the old button and checkbox style assets so people stop creating new ones (will be DEPRECATED soon)
+* Updated core slate widgets to use a new `SLATE_TEXT_ARGUMENT` or `SLATE_TEXT_ATTRIBUTE` macro when defining their display text variables.This allows users to pass either FStrings or FText for values.This is an attempt to do a multi-step conversion of the slate widgets over to supporting entirely FText.First well be able to remove many .ToString() for FText which are currently being passed.Then we can remove support for ANSI* and TCHAR*, then once a sufficient number of places are switched to using FText we can invert the macro logic to convert FStrings into FText, instead of FText into FStrings, at which point we can convert the core widgets to use FText internally and finally phase out FString support entirely.
+ * Removed Support for `ANSI*` and `TCHAR*` in core Slate widget text fields.
+* Various improvements and fixes to UnrealAutomationTool & UnrealBuildTool build infrastructure.
+* Adding code to a non-code project now updates the uproject file accordingly.
+* Guard against grid panel with no rows or columns.
+* TabManager no longer holds references to objects that have been unloaded.
+* Uppercase article words in properties are now forced to lowercase.
+* Cleanup unapproved usage of FindText.
+* Text elements no longer have double spaced newlines.
+* Toolbar Click to Expand Toolbar now appears localized.
+* Material Editor expression categories are now localized.
+* Improved consistency with Reflections naming convention.
+* Improved consistency with Buffer Visualization naming convention.
+* Toggling Sounds sprites no longer toggles light sprites.
+* Added UDoubleProperty for UObject properties of type double.
+* Added `FText::AsMemory()` to format byte sizes to human readable strings.
+* UHT can now process empty header files without producing errors.
#### プラットフォーム
-* Static Library Support を Android ツールチェーンに追加しました。
+* Added static lib support to the Android toolchain.
* **Mac**
- * エンジンとエディタを Mac へポート中です。
- * Mac OS X の Intel HD 4000 カードへのソフトウェア フォールバックを避けるために、スケルタルメッシュ ボーン マトリクスには大型のユニフォーム バッファではなく頂点バッファおよび頂点テクスチャ フェッチ(Vertex Texture Fetch) を使用します。
- * バッファは常に存在し、結合し、 (FVector4) 以上のサイズで、プラットフォーム間の正しい挙動を確保しています。
- * OpenGL ES2 でレンダリングする場合では、またユニフォーム バッファが使用されます。
- * Mac OS X 上では、高精度のマウス操作の間、カーソル位置を常に手動で更新しエディタ ツールが機能していることを確認します。
- * Mac OS X 用 Forsyth Xcode プロジェクトとライブラリを追加しました。
+ * Porting the engine and the editor to Mac.
+ * Use a vertex buffer and Vertex Texture Fetch rather than a large uniform buffer for skeletal mesh bone matrices to avoid a software fallback on Intel HD 4000 cards under Mac OS X.
+ * The buffer always exists and is bound and is at least size of(FVector4) to ensure correct cross-platform behaviour.
+ * The OpenGL ES2 renderer still uses uniform buffers.
+ * On Mac OS X, always manually update the mouse cursor position during high-precision mouse operations to ensure that editor tools work.
+ * Added Forsyth Xcode project & libraries for Mac OS X.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Oct/ReleaseNotesOctober2013.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Oct/ReleaseNotesOctober2013.KOR.udn
index 62a5333457ab..8e2b6236aff9 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Oct/ReleaseNotesOctober2013.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Oct/ReleaseNotesOctober2013.KOR.udn
@@ -1,8 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Title: October 2013 Release Notes
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
+Parent:Support/Builds
+Order:-4
[TOC(start:2 end:2)]
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Sept/ReleaseNotesSeptember2013.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Sept/ReleaseNotesSeptember2013.JPN.udn
index fc4c04e5c321..dff305e5cca7 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Sept/ReleaseNotesSeptember2013.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Sept/ReleaseNotesSeptember2013.JPN.udn
@@ -1,8 +1,10 @@
-INTSourceChangelist:2618148
+INTSourceChangelist:3367470
Title:2013年9月リリースノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
+Parent:Support/Builds
+Order:-5
[TOC(start:2 end:2)]
@@ -12,8 +14,8 @@ Availability:Licensee
[REGION:simpletable]
| アイテム | 情報 |
| ---- | ---- |
-| **Label** | QA_APPROVED_UE4_BUILD_2013_09 |
-| **Changelist #** | 1844454 |
+| **ラベル** | QA_APPROVED_UE4_BUILD_2013_09 |
+| **チェンジリスト #** | 1844454 |
| **VISUAL STUDIO VERSION** | Microsoft Visual Studio 2012 バージョン 11.0.60610.01 Update 3 |
| **DIRECTX** | 2010年6月 |
[/REGION]
@@ -50,7 +52,7 @@ Availability:Licensee
* ストップ マーカーをダブルクリックすると、ストップするためのカラーピッカー (またはオパシティ用のスライダー) が開きます。
* 左クリックしてストップ マーカーをドラッグすると、タイムラインに沿ってストップ マーカーが移動します。
- 注記:ストップ マーカーを右クリックしても、この機能を使うことができます。
+ 注記:ストップ マーカーを右クリックしても、この機能を使うことができます。
* ユーザーはカーブを手動で編集し、グラディエント エディタを非表示することもまだできます。
* **ブループリントのサーバーおよびクライアント RPC のサポート**
@@ -86,7 +88,7 @@ Availability:Licensee

-* **Add Component ドロップダウンの改善**
+* **'Add Component' ドロップダウンの改善**
* 検索ボックス、 _ワンクリック_ での追加、アイコン、カテゴリを追加しました。

@@ -110,17 +112,17 @@ Availability:Licensee
中には非常に負荷の高い関数もあるので、使用する際にはパフォーマンスに十分気をつけてください。
[/REGION]
-* **アクタ外の Latent 関数**
+* **アクタ以外での Latent 関数の使用**
* Latent 関数 (Delay など) はどんな _ブループリント_ においても使用することができます!

* **インターフェース編集モード**
- * 必要なものだけ含まれるようにインターフェースを編集する特別なモードがあります。**Interface** モードといいます。
+ * 必要なものだけ含まれるようにインターフェースを編集する特別な **Interface** モードというモードがあります。

-* **作成したコンポーネントはどこにでもアタッチ**
+* **作成したコンポーネントをアタッチする**
* 作成した _コンポーネント_ をドラッグ&ドロップして、ネイディブ シーンのコンポーネント階層のどこにでもアタッチすることができるようになりました。
* さらに、子 _ブループリント_ に作成した _コンポーネント_ も、親 _ブループリント_ から継承した SceneComponent 階層のどこにでもアタッチすることができます。
@@ -133,12 +135,12 @@ Availability:Licensee

* 追加した _SceneComponent_ は新規 _コンポーネント_ に対してスワップアウトされて、新規ルートになります。
-* **ノード用のショートカット**
- * キーを押したまま、ノードクリックすれば、ノードを素早く配置できます!
+* **ノードのショートカット**
+ * キーを押したまま、ノードをクリックすれば、ノードを素早く配置できます!

- * 現在あるショートカットは以下の通りです。`UserSettings.ini` ファイルに更に追加可能です。 _ブループリント_ の **Keybindings** インターフェースが機能するようになりました!
+ * 現在使用できるショートカットは以下の通りです。`UserSettings.ini` ファイルに更に追加可能です。 _ブループリント_ の **Keybindings** インターフェースが機能するようになりました!
| ノード | 目的 |
| --- | --- |
@@ -170,7 +172,7 @@ Availability:Licensee
* サポートされているアセットに対して、アセットメニューから再インポート オプションが利用できるようになりました。
* コンテンツを保存するウィンドウで、Diff オプションがアセットに使用できるようになりました。
* 空のマップには、デフォルトの光源とプレイヤーの開始地点が含まれています。
-* レベルをを削除すると、その状況に応じた警告メッセージが出され、抑制可能になりました。
+* レベルをを削除すると、その状況に応じて異なる警告メッセージが出され、抑制可能になりました。
* アクタの選択が **Play In Editor**/**Simulate In Editor** セッションで実施され、終了するとエディタへ戻るようになりました。
* アセット エディタ プラグイン拡張ポイントが全て状況に応じて変化し、編集中のアセットがどれかを意識するようになりました。
* **被破壊メッシュエディタ**:FBX ファイルを深度 1 被破壊性チャンクとしてインポートします。
@@ -184,7 +186,7 @@ Availability:Licensee
#### ブループリント
* `ExpandEnumAsExecs` メタデータへのサポートを追加しました。これにより、関数列挙型変数パラメータを複数の実行入力として公開できるようになります。
* **GetAllActorsOfClass**、**GetActorArrayAverageLocation**、**GetActorArrayBounds**、**MoveActorToActor** を `GameplayStatics` に追加しました。
-* コンポーネントの位置 / 回転を徐々に補間するために **MoveComponentTo** lLatent (潜行) 関数を追加しました。
+* コンポーネントの位置 / 回転を徐々に補間するために **MoveComponentTo** latent (潜行) 関数を追加しました。
* _ブループリント_ で `FText` のサポートを追加しました。
* **GetVectorArrayAverage** 、 **GetMinElement** 、 **GetMaxElement** を `MathLibrary` に追加しました。
* **RotateVector** 関数と **UnrotateVector** 関数をローテーターに追加しました。
@@ -204,7 +206,7 @@ Availability:Licensee
* 完了した移動リクエスト ID を結果と一緒に送信するために, `AIController` の "move finished" マルチキャスト デリゲートを拡張しました。
* `StaticMesh` が `AssetUserData` オブジェクトをサポートするようになり、エンジンを修正せずにプロジェクト固有のデータを格納できるようになりました。
* `FTransform` プロパティ上の 3D ウィジェットに対するサポートを追加しました。
- * スクリーン空間で青いウィジェットダイヤモンドを固定のサイズにしました。
+ * スクリーン スペースで青いウィジェット ダイヤモンドを固定のサイズにしました。
* シンプルにゲームを保存できるシステムを追加しました。ワールドのステート全体のキャプチャ用には作成されていません。 _ブループリント_ で利用可能です。
* スクリーンショットがビデオのように通知を表示するようになりました。
* Map Check がサマリを印刷するようになったので、ユーザーは完了したことが分かります。
@@ -238,13 +240,13 @@ Availability:Licensee
* 所有するアクタとその設定 / 破棄を決定するネットコード群をリファクタリングしました。
-#### レンダリング
+#### Rendering
* Visualizetexture/vis がさらに多くのアイテムをフィルタし、ソート処理が遅くなりました ("vis ?")。
* 複数の拡張性コンソール変数を追加しました。
* DX11 と OpenGL RHI 用の Timer クエリを実装しました。
-* 最も基本的な関数 (r.SSSSS 1) だけですが、スクリーン空間サブサーフェス スキャタリングを追加しました。
+* 最も基本的な関数 (r.SSSSS 1) だけですが、スクリーン スペース サブサーフェス スキャタリングを追加しました。
* GPUBenchmark が SynthBenchmark (既知の問題: 非常に遅い GPU 上だと対有無アウトする) の一部になりました。
-* スクリーン空間のライトシャフト
+* スクリーン スペースのライトシャフト
* ライトシャフトには、フォグ / 大気のみ影響を与えるオクルージョンと物理ベースではないブルームの 2 種類があります。
* **VisualizeOutOfBoundsPixels** 表示フラグを追加し、ストリップされたパターン内の領域外にあるピクセルに色をつけます。
* リフレクション環境キューブマップが DerivedDataCache にキャッシュされるので、取り込む度に再キャプチャする必要はありません。
@@ -268,7 +270,7 @@ Availability:Licensee
#### オーディオ
-* ステートマシーン グラフとサウンドキューにコメントボックスを追加しました。
+* ステートマシーン グラフとサウンド キューにコメント ボックスを追加しました。
* Enveloper Sound ノードにより、ビジュアル カーブの編集と Curve Float アセットの使用が可能になりました。
@@ -304,410 +306,410 @@ Availability:Licensee
* Game Center の友達のサポートを追加しました。
* Game Center のリーダーボードのサポートを追加しました。
* Game Center の ID / プロフィールのサポートを追加しました。
-* マイクロトランザクション用のプラットフォームを提供するために、 Online Subsystems に Store インターフェースを追加しました。
+* マイクロトランザクション用のプラットフォームを提供するために、Online Subsystems に Store インターフェースを追加しました。
* App 購入サポートに IOS を追加しました。
* 検索結果を与える接続をするために `GetResolvedConnectString` を追加しました。
* `CreatePlayerUniqueId` を変更して、安全のために size パラメータが含まれました。
-## 更新ノート
+## アップグレード ノート
#### エディタとツール
-* **Play In Editor** ビューポートはプレイ中のエディタからすぐにではなく、最初のクリックでフォーカスするようになりました。
- * 新規リファレンス ページが **[Editor Settings] > [Play In] > [Play in Editor]** に追加されました。
- * マウス コントロールをすぐにオンにするには **Game Gets Mouse Control** を有効にします。
-* デバイス上で起動するための基本的な機能を実装しなおしているので、 **[Launch On]** ボタンは現在非表示になっています。
-* ブランチ別にミューテックスに名前をつけて、複数のブランチを同時に実行できるようにしました。
-* **スレート**
- * **Slate** コンテキスト ウィンドウの終了順序を変更して、メニュー スタック型ではないウィンドウが破棄される前に入力フォーカスのハンドオーバーを行うようになりました。
- * `InArgs._Style` が有効な場合、`SInlineEditableTextBlock` を変更して `InArgs._Style` から `SEditableTextBox` フォントをオーバーライドして、できるだけ Styles が一貫性を保てるようになりました。
- * ロックされたレベルへアクタを追加する際のユーザー通知を **Slate** UI 通知に変換しました。
-* **スタティック メッシュ エディタ** でのソケット作成にアンドゥ / リドゥを使用できるようになりました。
-* **マチネ** でトラック名とグループ名の変更にアンドゥ / リドゥを使用できるようになりました。
-* `LocalizeUnrealEd` コールを `LOCTEXT`/`NSLOCTEXT` に変更し、`UE_LOG` などのローカリゼーション手法が使われている様々なコールをリファクタリングしました。
-* **[Grid]** メニュー オプションを **[Advanced (詳細)]** からメインの **[Show (表示)]** メニューに移動しました。
-* LOD (Level of Detail) ポップアップの [OK] メッセージを通知に変更しました。
-* Copy/paste of collision in **スタティック メッシュ エディタ** でコピー / ペーストしたコリジョンが、ビューポートに正しく反映されるようになりました。
-* レベルを追加すると、最後に追加したフォルダが記憶されるようになりました。
-* Hide UI トグルをビューポートから [View (表示)] ツールバーへ移動しました。
-* **[Select all with same Archetype (同じ Archetype をすべて選択)]** メニュー オプションを削除しました。
-* **レベル エディタ** ビューポートのアクタをダブルクリックすると、カメラはその選択対象をフォーカスします。
-* アクタ名がブランクだとエラー通知が表示されます。
-* アンドゥ / リドゥ機能が **マテリアル インスタンス エディタ** に追加されました。
-* [**PhAT** Body Physics Type] メニュー オプションがラジオボタンに変更されました。
-* `SWindow` は、ウィンドウ サイズではなく希望するクライアントの領域サイズを構造パラメータとして受け取るようになりました。
+* **Play In Editor** viewports will no longer immediately take focus from the editor on Play, but on first click.
+ * A new preference section has been added to **Editor Settings > Play In > Play in Editor**.
+ * To turn on immediate mouse control enable **Game Gets Mouse Control**.
+* The **Launch On** button is currently hidden while we re-implement the underlying functionality to launch on devices
+* Changed mutex to be named per-branch to allow several branches to run simultaneously
+* **Slate**
+ * Modified the **Slate** context window dismissal order so non menu stack windows do the input focus handover before being destroyed.
+ * Modified `SInlineEditableTextBlock` to override the `SEditableTextBox` font with the font from the `InArgs._Style` provided the `InArgs._Style` is valid, so the Styles remain consistent where possible.
+ * Converted the user notification for adding an actor to a locked level to a **Slate** UI notification.
+* Undo/redo now works for creation of sockets in the **Static Mesh Editor**.
+* Undo/redo now works for Track and group renames in **Matinee**.
+* Replaced the `LocalizeUnrealEd` calls with `LOCTEXT`/`NSLOCTEXT` and refactored a lot of other calls that used localization methods such as `UE_LOG`.
+* Moved the **Grid** menu option from **Advanced** and into the main **Show** menu.
+* Changed the level of detail (LOD) popup ok messages to notifications instead.
+* Copy/paste of collision in **Static Mesh Editor** now updates the viewport correctly.
+* Adding a level now remembers what folder you added from last.
+* Moved the Hide UI toggle from the viewport to the View toolbar.
+* Removed the **Select all with same Archetype** menu option.
+* Double clicking an actor in the **Level Editor** viewport now focuses the camera on that selection.
+* Giving an actor a blank name now displays a error notification.
+* Added Undo/redo functionality to the **Material Instance Editor**.
+* Changed the **PhAT** Body Physics Type menu options to radio buttons.
+* `SWindow` now takes the desired client area size instead of window size as its construction parameter
-#### ブループリント
-* ヘルス値をポーンから削除し、デス (機能停止) をエンジンから削除しました。
- * ゲームがヘルス値変数を独自の Pawn クラスへコピーする必要があります。
- * ヘルス値とデスを使う全てのサンプル ゲーム (QAGame, ShooterGame ) は、それぞれのヘルス値 / デスを実装するように更新されました。
- * 関連するイベントが削除されました (OnDeath、 OnPlayDying)。ゲームがこれらを単純にコピーする場合もあります。
-* ブループリント用に C++ で作成されたキャラクター移動入力バインディングを削除しました。
- * 今までは、キャラクター上のブール変数 bAddDefaultMovementBindingsForBlueprint によりこれらはデフォルトで有効になっていました。
- * ブループリントは、それぞれ独自のバインディングを追加しなければならなくなりました (ThirdPersonTemplate_BP プロジェクトでサンプルをご覧ください)。
-* OnNodeCommentTextCommitted で大文字小文字を区別するように文字列比較を変更したので、ノード コメントのテキストの編集や修正に大文字と小文字を使用できます。
-* ブループリント エディタの Variable Get/Set グラフ ノードに変数を表示する機能を追加しました。
-* ブループリント エディタのコンテンツを移動せずにコメントを移動できるように、モディファイアのキーステート (L/R Shift) を追加しました。
-* Filemenu Addtofavourites UI のツールチップ テキストを「Add to favourite files」ではなく「add to favourites levels」に修正しました。
-* メッセージ ログ エントリ アイコンと一致するようにメッセージ ログ フィルタのボタンを変更しました。
-* ShapeComponent :シェイプ タイプを元にする場合、不均等のスケーリングをサポートします。
-* DrawDebug 関数がサポートする時間のオプションが増えました (DrawOneFrame 、DrawDuration、DrawPersistent)
+#### Blueprints
+* Health has been removed from Pawn, and Death has been removed from the engine.
+ * Games will need to migrate the Health variable to their own Pawn classes if desired.
+ * All sample games using health and death (eg QAGame, ShooterGame) have been updated to implement health/death on their own.
+ * Some related events have been removed (OnDeath, OnPlayDying).Games may simply migrate those as well if desired.
+* Character movement input bindings that were created in C++ for Blueprint classes have been removed.
+ * These were previously enabled by default by a bool bAddDefaultMovementBindingsForBlueprint on Characters.
+ * Blueprints will now need to add their own bindings (see the ThirdPersonTemplate_BP project for a simple example).
+* Modified the string comparison to be case aware in OnNodeCommentTextCommitted so you can edit and correct node comment's text case.
+* Added the ability to view variables for Variable Get/Set graph nodes in the Blueprint editor.
+* Added a modifier key state (L/R Shift) to allow you move comments without moving the contents in the Blueprint editor.
+* Modified the Filemenu Addtofavourites UI tooltip text to "add to favourites levels" instead of "Add to favourite files"
+* Changed the message log filter button icons to match the message log entry icons.
+* ShapeComponent :Support non-uniform scale when it can based on shape type.
+* DrawDebug functions supports more options for time(DrawOneFrame, DrawDuration, DrawPersistent)
-#### ゲームプレイとフレームワーク
-* シンプルな MoveToLocation 関数と MoveToActor 関数が意味のある値を返すように更新しました。
-* DynamicBlockingVolume DynamicPhysicsVolume と DynamicTriggerVolume を削除しました。
-* デザイナが見やすいように、幾つかのランタイム時の警告を 'Message Log' に移動しました。
-* HUD に ReceiveHitBoxRelease を追加し、 ReceiveHitBoxClick から InEventType を削除しました。
-* 機能探知のターゲット プラットフォーム を単純化しました。`ITargetPlatform::SupportsFeature()` を参照してください。
-* 設定 API が若干変更されました。必要な編王については既存の使用方法を参照してください。
-* ネットワーク上でのメッセージを有効にするためには、追って通知があるまで `-Messaging` コマンドライン スイッチが必要になります。
-* `AActor::Owner` が private 変数になりました。access/set には Get/SetOwner を使います。
-* ゲームパッド キーのクリーンアップ
- * `EKeys` 列挙型変数で定義されているゲームパッド キーはく XboxTypeS_ ではなく Gamepad_ と呼ばれるようになりました。
- * XBox 特有のキーである `A`、 `B`、 `X`、 `Y`、 `Start`、 `Back` が一般的な名前に変わって、それぞれ `FaceButton_Bottom`、 `FaceButton_Right`、 `FaceButton_Left`、 `FaceButton_Top`、 `Special_Right`、 `Special_Left` となりました。
- * Epic Labs 機能により、ゲームパッドのコンソール固有のラベルがドロップダウンと _ブループリント_ ラベルで表示されます。
- * ゲームパッド サムスティック用のバーチャルな上下左右のイベントが結合されました。
-* `FObjectFinder` はクラス コンストラクタ外では使用できなくなりました。他のコードでの使用を試みると、アサートされる結果になります。
-* **物理**
- * コリジョン トレース タイプを [オブジェクト タイプ] と [トレース タイプ] に分けました。オブジェクト タイプは、これまでの `MovementChannel` ( Object Type という名前に変更されました) として使用できるようになりました。
- * カスタム仕様のチャンネルの場合
- * そのタイプをオブジェクトの Object Type として使用できるのであれば、それをオブジェクト タイプとして示さなければなりません。
- * そのタイプがコードでトレースに使用される場合、次の例のように Trace Type として示します。
+#### Gameplay and Framework
+* Updated simple MoveToLocation and MoveToActor functions to return meaningful values
+* Remove DynamicBlockingVolume DynamicPhysicsVolume and DynamicTriggerVolume
+* Several runtime warnings now go to the 'Message Log' to make them more visible to designers
+* On HUD, add ReceiveHitBoxRelease and remove InEventType from ReceiveHitBoxClick
+* The target platform API for feature detection has been simplified; see `ITargetPlatform::SupportsFeature()`
+* The settings API slightly changed; see existing usages for the required changes
+* To enable messaging over the network, the `-Messaging` command line switch is required until further notice
+* `AActor::Owner` is now a private variable.Use Get/SetOwner to access/set.
+* Gamepad key cleanup
+ * Gamepad keys defined in `EKeys` enum no longer are called XboxTypeS_ and are instead Gamepad_
+ * XBox specific keys `A`, `B`, `X`, `Y`, `Start`, and `Back` renamed to generic `FaceButton_Bottom`, `FaceButton_Right`, `FaceButton_Left`, `FaceButton_Top`, `Special_Right`, `Special_Left`
+ * Epic Labs feature to show console specific labels for gamepads in dropdowns and _Blueprint_ labels.
+ * Virtual up/down/left/right events for gamepad thumbsticks now hooked up
+* `FObjectFinder` can no longer be used outside of class constructors.Any attempt to use it in other code will result in an assert.
+* **Physics**
+ * Collision trace type has been separated to [object type] vs [trace type].Object types can be used as previously `MovementChannel` (now renamed to Object Type)
+ * For your custom channels
+ * If that type can be used as Object Type for objects, you should mark that as object types
+ * If that type is used for trace in code, mark as Trace Type as below example:.
- +DefaultChannelResponses=(Channel=ECC_GameTraceChannel1, Name=Weapon, bTraceType=true)
+ +DefaultChannelResponses=(Channel=ECC_GameTraceChannel1, Name=Weapon, bTraceType=true)
- * この変更により、"Trace for objects" API がサポートされるようになりました。これにより、"所定のオブジェクト タイプ" をもつオブジェクトの検索ができるようになります。
- * オブジェクトが移動したり衝突すると、オブジェクト タイプに対する応答が使用されます。
+ * With this change, now we support "Trace for objects" APIs.This will let you find any objects with "given object types".
+ * The response against object type is used when the object moves or collide
-#### レンダリング
-* Material Property **RefractionBias** が **RefractionDepthBias** という名前になりました。
+####Rendering
+* Material Property **RefractionBias** is now called **RefractionDepthBias**.
-#### アニメーション
-* _SingleAnimSkeletalComponent_ が削除されました。_SkeletalMeshComponent_ を使って AnimationMode と同じ事ができるようになりました。
-* _SkeletalPhysicsActor_ が削除されました。_SkeletalActor_ で同じ事ができるようになりました。
-* SlaveComponent が **マチネ** と **AnimTrack** でサポートされました。
+#### Animation
+* _SingleAnimSkeletalComponent_ is removed.Now you can use _SkeletalMeshComponent_ to do the same thing using AnimationMode.
+* _SkeletalPhysicsActor_ is removed.Now you can use _SkeletalActor_ to do the same
+* SlaveComponent is supported in **Matinee** **AnimTrack**
-#### コア
-* プロパティへ書き込みたくない場合に保存した config ファイル (`.ini`) に保存できるように`SaveConfig` 機能を更新しました。
-* 初期化されていないオブジェクトを挿入するための `TArray` の int32 コンストラクタは、使い方を間違えやすいので削除しました。
- * 代わりに、以下の明示的な形を使用します。
+#### Core
+* Updated the `SaveConfig` functionality so if we do not want to write to a property to a saved config file (`.ini`)
+* `TArray`'s int32 constructor to insert uninitialized objects has been removed as it was too easy to use incorrectly.
+ * The following explicit form should be used instead:
TArray Vals;
Vals.AddUninitialized(Num);
-* Globalization の名前をより正確に *Internationalization へ変更しました。
- * これらのクラスへのすべてのリファレンスとコンフィギュレーション セクションを更新しました。
-* `FText` メッセージのフォーマット機能は、コメント化されたパラメータをサポートしなくなりました。IE: `"{0?PlayerScore}"`
- * その代わりに、指定されたパラメータを使用します。IE: `"{PlayerScore}"`
-* `EAxis` 列挙型変数が `EAxisList::Type` という名前に変更されました。この変更を反映させるには、クライアント コードを変更する必要があります。
-* `FMatrix`/`FTransform` 軸関数は軸の特定に整数ではなくEAxisList::Type を使用するようになりました。全ての使用を変更する必要があります。
-* Visual Studio 2012 がデフォルトで使用できるようになりました (2010 のサポートも継続します)。
- * すべてのゲームとプログラムで Visual C++ 11 コンパイラが使用されるようになりました。
- * UE4 ソリューションとプロジェクト ファイルは、デフォルトで 2012 ネイティブのフォーマットで生成されるようになりました。
- * 必要であれば、 Visual Studio 2010 も引き続き使用できます (今のところ!)。
- * `UEBuildWindows.cs` に `WindowsPlatform.Compiler = WindowsCompiler.VisualStudio2010` を設定します。
- * `-2012` を `GenerateProjectFiles.bat` に渡します。
- * VS 2012 の変更に対して、サードパーティの *.Build.cs ファイルを更新する必要がある場合があります。
- * `bUseVisualCPlusPlus11` が UnrealBuildTool の `WindowsPlatform.Compiler` に変更されました。
-* Visual Studio プロジェクト レイアウトが新しくなりました。
- * 1 つのゲームに対しプロジェクトが 1 つだけになりました。
- * Build & Run プロジェクトを取り除きました。Fake ターゲット プロジェクトを取り除きました。
- * [Solution Configuration] ドロップダウンを使って _ターゲットのタイプ_ を選択できるようになりました。
- * クックされたゲームあるいはプログラムのビルドと実行には、Debug or Development (サフィックスなし) を使います。
- * プロジェクト ファイル生成と、通常 UBT ビルドの実行が速くなりました!
- * デフォルトにすべてのプラットフォームは含まれず、Win64 か Mac のいずれかのみ取得します。
- * 他のプラットフォームをビルドする必要がある場合は、新規の`GenerateProjectFiles_AllPlatforms.bat` ファイルを使います。
- * ソリューションは上位 4 つのフォルダになりました。
- * コードはすべて、ゲームのプロジェクトの下にディスク上と同じように整理されて置かれるようになりました。
- * その他の注記
- * シッピングとテスト コンフィギュレーションがデフォルトで削除されました。これらを取得するためには `-ShippingConfigs` を渡します。
- * Rocket ターゲットは、デフォルトでプロジェクト ファイルに含まれなくなりました。これらを取得するためには、 `-RocketTargets` を渡します。
- * Non-English UDN ファイルがプロジェクト ファイルから削除されました。これらを取得するためには、'-AllLanguages' を渡します。
- * Visual Studio を終了するたびに、 `UE4.sln` の上書きを求められなくなりました。
- * 必要に応じて、 `-NoIntelliSense` での IntelliSense 生成をスキップできるようになりました。
- * WinRT は UBT に対して _デスクトップ プラットフォーム_ とみなされなくなりました。
- * エディタの Shipping config と Test config は UE4 ではサポートされていないので、UI から削除しました。
-* 削除されたアクタ上の SceneComponents にアタッチされている SceneComponents のみをデタッチするように DestroyActor を変更しました。
-* コード ブロック、スパン、クオートの変数とメタデータ参照を無視したままにするように、マークダウン プロセスを変更しました。
-* PUBLISH タグの処理に使用する regex を改善して、タグの後の同じ行に空白文字を入れられるようになりました。
-* ゲームタイプのリファクタリング
- * ゲーム関連の幾つかの基本クラスを名前変更しました。
- * GameInfo は GameMode になりました。
- * GameReplicationInfo は GameState になりました。
- * PlayerReplicationInfo は PlayerState になりました。
- * ReplicationInfo 基本クラスは削除されました。
- * リダイレクタが導入され、これらのクラスを使用するとすべてシームレスで更新されるようになります。
-* CRU で発生すべきでない (実際は発生している) エラーに対し、例外チェックを追加しました。
-* 不明瞭なクラッシュを見つけやすいように、ドメイン例外ハンドラを追加しました。
-* **UE4Redist が UE4PrereqSetup に置き換えられました**
- * Windows プラットフォームでの UE4 実行の必須条件をインストールすrために、新しい `UE4PrereqSetup.msi` プログラムを使用するようになりました。 `UE4Redist.exe` は使用しなくなり、P4 から削除されました。
- * UE4PrereqSetup は現在 Perforce の `//depot/UE4/Engine/Extras/Redist/en-us/UE4PrereqSetup.msi` にあります。
- * UE4PrereqSetup をインストールする必要は全くありません。他のプログラムと同様、削除したい場合はコントロール パネルを使ってください。
+* Globalization has been more accurately renamed as *Internationalization.
+ * Update all references to these classes and configuration sections.
+* `FText` message formatting no longer supports commented parameters.IE: `"{0?PlayerScore}"`
+ * Use named parameters instead.IE: `"{PlayerScore}"`
+* The `EAxis` enum has been renamed to `EAxisList::Type`.Client code will need to be changed to reflect this.
+* `FMatrix`/`FTransform` axis functions now use EAxisList::Type rather than an integer to specify the axis.All usage will need to be changed.
+* Visual Studio 2012 is now used by default (2010 is still supported)
+ * All games and programs now use the Visual C++ 11 compiler.
+ * UE4 solution and project files are now generated in 2012-native format by default.
+ * If you need to continue using Visual Studio 2010, you still can (for now!):
+ * Set `WindowsPlatform.Compiler = WindowsCompiler.VisualStudio2010` in `UEBuildWindows.cs`
+ * Pass `-2012` to `GenerateProjectFiles.bat`
+ * You may need to update your third-party *.Build.cs files for VS 2012 changes
+ * `bUseVisualCPlusPlus11` has been changed to `WindowsPlatform.Compiler` in UnrealBuildTool
+* New Visual Studio project layout
+ * There is now only one project file for each game
+ * Build & Run projects are eliminated; Fake target projects are eliminated
+ * You now choose your _target type_ using the Solution Configuration dropdown
+ * To build and run the Cooked Game or Program, just use Debug or Development (no suffix)
+ * Project file generation and regular UBT builds run faster!
+ * We no longer include all platforms by default.Instead, you only get either Win64 or Mac.
+ * If you need to build other platforms, there is a new `GenerateProjectFiles_AllPlatforms.bat` file for that.
+ * Solution has flattened down to just four top-levels folders.
+ * All code is now under your game's project file, organized the same way it is on the disk.
+ * Other notes
+ * Shipping and Test configurations are omitted by default.Pass `-ShippingConfigs` to get those.
+ * Rocket targets aren't included in the project files by default.Pass `-RocketTargets` to get those.
+ * Non-English UDN files are now omitted from project files.Pass '-AllLanguages' to get those.
+ * Visual Studio no longer prompts you to overwrite `UE4.sln` every time you exit
+ * You can now skip IntelliSense generation with `-NoIntelliSense` if you want.
+ * WinRT is no longer considered a _desktop platform_ to UBT
+ * We removed Shipping and Test configs for Editor from the UI, because they aren't supported in UE4
+* Changed DestroyActor to only detach SceneComponents attached to SceneComponents on the deleted actor.
+* Changed markdown process to leave variable and metadata refs in code blocks, spans and quotes ignored.
+* Improved regex used to handle PUBLISH tags to allow whitespace on the same line after tags
+* Game type refactor
+ * Several game-related base classes were renamed
+ * GameInfo is now GameMode
+ * GameReplicationInfo is now GameState
+ * PlayerReplicationInfo is now PlayerState
+ * ReplicationInfo base class was removed.
+ * Redirectors are in place and all uses of these classes should update seamlessly.
+* Added exception check to error that should not occur (but does) in CRU
+* Added domain exception handler to help track down obscure crash
+* **UE4Redist has been replaced with UE4PrereqSetup**
+ * To install prerequisites for running UE4 on Windows platform, we'll now use the new `UE4PrereqSetup.msi` program. `UE4Redist.exe` should no longer be used and has been deleted from P4.
+ * In Perforce, UE4PrereqSetup is currently located in `//depot/UE4/Engine/Extras/Redist/en-us/UE4PrereqSetup.msi`
+ * You should never really need to uninstall it, but if you need to just use the Control Panel to remove it like any other program.
-#### オンライン
-* Online Stats を更新して、統計情報の Leaderboard (成績表) の一部を独自のクラスへ抽出しました。
+#### Online
+* Updated the Online Stats so that the stats part of leaderboards write we extracted to its own class
* **Base OnlineSubSystem**
- * OnlineSubSystem ログのプレフィックスを追加しました。
- * アイデンティティ インターフェイスへのプロファイル インターフェースをリファクタリングしました。
+ * Added prefix for OnlineSubSystem logs
+ * Refactored profile interface into identity interface
* **Facebook OnlineSubSystem**
- * PC 用に Facebook を初めて実装しました。
- * ブラウザ ウィンドウ経由でアクセス トークン取得のログインができるようになりました。
- * 有効な場合、トークンを使って基本/自分の情報をリクエストできます。
- * Facebook PC OnlineSubSystem 友達追加機能の実装しました。
+ * Initial Facebook implementation for PC
+ * Allows login via browser window for retrieving access token
+ * Requests basic /me info using token if valid
+ * Added friends implementation for Facebook PC OnlineSubSystem
* **MCP OnlineSubSystem**
- * アカウント マッピング要求以外のすべてのものに、同じユーザー認証方法を使用します。
- * サーバー権限をクライアントとサーバーの設定に分類しました。
- * すべてのホスト (リッスン / デディケイテッド サーバー) が、 Mcp リクエストを行う代わりに認証方法の代わりににサービス権限を強制的に使用するようにしました。
- * 同じ認証方法で同時に行ったログインを検出するために使用する起動 API を追加しました。
- * 外部のアカウント情報をユーザーに問い合わせるために必要な OnlineSubSystem MCP 機能を追加しました。
- * Epic のアカウントから名前を表示するために使用することができます。
- * 自動ログインをすると、ID と認証チケットが与えられた、キャッシュされたユーザー アカウントが作成されます。
- * Epic のアカウント情報を取得するための `QUERYACCOUNT` が追加されました。
- * `ACCOUNTCREATION` exe を `CREATEACCOUNT` に変更しました。
- * ダウンロードした mcp ファイルのディスクへのキャッシュ処理を無効にするconfig オプションを追加しました。
- * mcp config セクションをコマンドライン `-MCPCONFIG= ` でオーバーライドしました。
+ * Use the same consistent user auth method as everything else for account mapping requests
+ * Split service permissions into a set for client vs server
+ * Forced all hosts (listen / dedicated server) to use service permissions instead of user auth method for making Mcp requests
+ * Added new activation API to be used for detecting simultaneous login with the same credentials
+ * Added OnlineSubSystem MCP functionality needed to query external account info for a user
+ * Can be used to get display name from epic account
+ * Autologin creates a cached user account given an id & auth ticket
+ * Added `QUERYACCOUNT` for retrieving epic account info
+ * Renamed `ACCOUNTCREATION` exec to `CREATEACCOUNT`
+ * Added config option for disabling caching of downloaded mcp files (user,title) to disk
+ * Override mcp config section via command line override `-MCPCONFIG= `
* **Http**
* WinInet
- * 既に送信途中にあるリクエストを完了させるための WinInet の `CancelRequest` を実装しました。
- * リクエストをキャンセルしても、全ての completion デリゲートを呼び出します。
- * 利用できる場合は、キープアライブ機能を使って、接続を開いた状態のままにします。
+ * Implemented `CancelRequest` for WinInet to finish a request that is already in flight
+ * Cancelling a request still calls all completion delegates
+ * Keep connection open using keep-alive functionality if available
-## 今後の追加事項と継続事項
+## Future Additions and Ongoing Efforts
-#### エディタとツール
-* エディタからゲームへの切り替え時にうっかり相互作用してしまわないように、 **Play In Editor** ビューポートのウィンドウ内をクリックしても、1 回目はゲームへ継承しません。
-* BSP サーフェス reslove にダブルバッファリングが使われるようになりました。
-* タブが付けられたアセットエディタを使うために **Curve Editor** を更新しました。
-* 他のアプリの全面にポップアップ表示されないように、通知をリバートしました。
-* ユーザーが使いやすいように、ロードのエラーメッセージのログ出力を改善しました。
-* マップチェックは、ライトがビルドされるたびにログをポップアップ表示するのではなく、通知を追加しました。
-* Pr**Play In Editor**/**Simulate In Editor**モードでアクタを選択する際にクラッシュしないようにしました。
-* プロジェクトがソール管理下にない場合、共有のコレクションは作成することができません。
-* NULL ポストプロセス カメラ コンポーネント上でクラッシュが起こらないようにしました。
-* 使用が許可されていないキャラクターを更新して、プロジェクトのパス名の制限が緩くなるようにしました。
-* アクタのドラッグ / ドロップが、ドラッグではなくドロップでのみ選択されるようになりました。
-* 追加されたパッケージがコンテキスト メニューのパス・ビュー・コンテキスト・メニューにより、ソース コントロールに追加される前に保存されるようになりました。
- * これにより、Perforce でのファイルの破壊を防ぐことができます。
-* ストライプの背景を削除するために **Level Browser** カラーピッカーを親にしました。
-* ドラッグ&ドロップで BSP に適用しているマテリアルがビューポートのフォーカスを正しくリストアするようになりました。
-* ウィジェット モードの切り替え時には、必ず HitProxy がリフレッシュされるようにしました。
-* マテリアル エディタのアンドゥ / リドゥ操作は 2 回実行しません。
-* **Map Check** がライトのリビルドが必要だということを間違って報告をしないようにしました。
-* シャットダウン時にディレクトリ ウォッチャーのクラッシュが起こらないようにしました。
-* 読みやすさ / ユーザビリティを改善しやすいように、メッセージログを少し変更しました。
-* ビデオ キャプチャの動作が止まらなくなったことを確認しました。
-* サポート対象のすべてのツールバー/メニューバーに対して拡張デリゲートを追加しました。
-* 選択を変更すると、、正しい親がプロジェクト ウィザードに表示されるようになりました。
-* シャットダウンが既に実行されていると、タブの終了が承認されます。
-* null ノードが見つけやすいように、ensure 条件を追加しました。
-* 無効化された **Context Sensitive** を含むノードからドラッグすると、すべての可能なアクションが表示されます。
-* 情報が複製でないことを表すために、 **Map Check** ドロップダウンがその代わりにワールドの名前を表示するようになりました。
-* **Save Layout** がユーザー設定をディスクに書き込むようになりました。
-* **Matinee** コンボボックスのスペース使用が減りました。
-* **レベル エディタ** の **ツールバー** がビューポート上で表示されるようになりました。
-* デフォルトのライトは、少しだけ視界が遮られているだけで、オリジナルに近くなりました。
-* コンテキスト メニューにおけるデタッチの扱い方を修正しました。
-* プロパティ スライダーの使用中に通知のスパムが起こらないようになりました。
-* 記録をアンドゥして動画を実行してもクラッシュしないようになりました。
-* **Buffer Visualization** コマンドがなければ、エディタが継続できるようになりました。
-* 相当する _SkeletalMesh_ の再インポート時に、 _PhysicalAssets_ の `DefaultSkeletalMesh` メンバがリストアされます。
-* レベルにアセットをドラッグすると、非表示のアクタが考慮されるようになりました。
-* **Matinee** ビューポートが `Tick` が呼び出されるように `IsVisible()` を使用するようになりました。
-* レベルを削除する時は null グループ ポインタを防ぎます。
-* **[New Level]** ダイアログのスクロール バーがサムネイルにオーバーラップしなくなりました。
-* `Source` フォルダがないと、 **Generate Visual Studio Files** を早めに出してユーザーに警告します。
-* **Crash Reporter** が UE4 のクラッシュに対するチェンジリストとコールスタックを正しく報告するようになりました。
-* デフォルトのマップ設定名を変更し、正しく保存するようになりました。
-* Template マップがエディタに自動的にロードされるようになり、不注意による上書きを防ぐための起動時の保存が必要なくなりました。
-* ドロップダウン メニューが大きすぎてアンカー ウィジェットの上あるいは下に入りきらない場合、正しく表示されるようになりました。
-* ウィンドウ モードで **Alt + Enter** を押すと、フルスクリーン モードからリストアする場合にウィンドウが移動したり、リサイズされなくなりました。
-* **[Message Log (メッセージ ログ)]** タブが **[Output Log (出力ログ)]** タブのようなノマドタブになりました。
-* **[Editor Settings (エディタ設定)]** の **[Source Control (ソース コントロール)]** ダイアログが、すぐにソース コントロール接続に反映されるようになりました。
-* **レベル エディタ** における _アクタ_ の複製を最適化しました。
-* 正投影ビューで BSP ブラシを編集する時に **Alt + マウスボタンのホイール** による回転軸の移動が正しく行えるようになりました。
-* _Spotlight_ を配置すると、正しいデフォルト回転が付くようになりました (既に置かれている _Spotlights_ には影響しません)。
-* **テクスチャ エディタ** でカラーチャンネルを 1 つ選択すると、チャンネルの色による調整ではなく、グレースケールで表示されるようになりました。
-* **被破壊メッシュエディタ**:
- * ビューポートでチャンクを選択し、選択されたチャンクのプロパティが編集できるようになりました。 - 簡単な解説 1
- * ビューモード **Buffer Visualization** と **[Refresh (リフレッシュ)]** ボタンのアイコンを更新しました。
-* エディタのほとんどのダイアログの見かけを標準化しました。
-* **Vertex Paint** ツールにおける LOD でメッシュのワークフローを改善しました。
-* エディタで **Simulate** を実行すると、裏側で **Play In Editor** 、次に **Eject** が実行されるようになりました。これにより、シミュレートされたワールド内のすべてのアクタ上への `ReceiveBeginPlay` の呼び出しが可能になりました。
-* **スタティック メッシュ エディタ** での _ソケット_ 名の変更がインラインで行われるようになりました。
-* **その他の UI の更新**
- * MapCheck アイコンを16px と 40px で作成しました。コード合わせを必要とします。
- * 接続中および未接続のアニメーション ピン用にティント可能なアイコンとアニメーション結果ノード用に 1p28x アイコン (ティント可能) を作成しました。PNG アセットのみで、コード合わせが必要です。
- * 現在の **[Clear All (すべてクリア)]** 配列ボタン アイコンを変更するためのゴミ箱を作成しました。現在の PNG もこれに変更されます。
- * **[Destructible Mesh Editor]** リフレッシュ ボタン用に 40px アイコンを作成しました。
- * カメラメッシュからバックビュー LCD を取り除いて、ソースアセットを追加しました。
- * 今回実際にカスケードに使用するアンドゥ アイコンとリドゥ アイコンを交換しました。単純な png の交換であり、破壊的なものではありません。
- * [Save All Levels (すべてのレベルを保存)] アイコン用の 16px と 40px アイコン サイズを修正しました - チェンジリストは PNG アセットの更新のみになりました。
- * _AimOffset1D_ と _BlendSpace1D_ 用にアイコンを追加しました (両方ともコード合わせが必要です)。PNG の更新のみです。
- * アイコンを _f_ 関数の記号に切り替えました。既存の PNG アセットのみを上書きします。
+#### Editor and Tools
+* **Play In Editor** viewports don't propagate the first click in the window to the game, preventing accidental interaction when switching to the game from the editor.
+* BSP surface resolve now uses W-buffering
+* Updated **Curve Editor** to use a tabbed asset editor
+* Reverted notifications so they don't pop in front of other apps.
+* Improved load error message log output to be more useful to users
+* Map check now adds a notification, rather than always popping up the log when building lighting
+* Prevented crash when selecting actors in **Play In Editor**/**Simulate In Editor** modes
+* Shared collections cannot be created if the project is not under source control.
+* Prevented crash on NULL post process camera component.
+* Updated disallowed characters to allow less-restrictive path names for projects
+* Drag/drop Actors are only selected on drop, rather than on drag.
+* Newly added packages are now saved before being added to source control via the path view context menu.
+ * This prevents files being corrupted in Perforce
+* Parented **Level Browser** color picker to remove striped background.
+* Drag-drop applying materials to BSP now correctly restores viewport focus
+* Ensured HitProxy is refreshed when switching widget modes
+* Material editor undo/redo does not undo/redo twice
+* Prevented **Map Check** from incorrectly reporting that lighting needs rebuilding
+* Prevented directory watcher crash on shutdown
+* Small changes to the message log to help improve readability/usability.
+* Ensures no longer stop video capture from working.
+* Extender delegates added to all toolbars/menubars that support it.
+* Correct parent now appears in project wizard when alternating selections.
+* Approve tabs for closure when shutdown is already in effect.
+* Additional ensure conditions added to help track down null node.
+* Dragging from a node with **Context Sensitive** disabled now shows all possible actions.
+* **Map Check** dropdown now displays the name of the world instead, to indicate that its not duplicate information.
+* **Save Layout** now writes the users settings to disc.
+* **Matinee** comboboxes now take up less space.
+* **Level Editor** **Toolbar** now appears above the viewport.
+* Default light is now closer to origin, just slightly out of view.
+* Modified how detach is handled in the context menu.
+* Prevent notification spam while using property sliders.
+* Crash no longer occurs when running movie after undoing recording.
+* Allow editor to continue if a **Buffer Visualization** command is missing.
+* Restore `DefaultSkeletalMesh` member of _PhysicalAssets_ when re-importing corresponding _SkeletalMesh_.
+* Hidden actors are now respected when dragging assets into the level.
+* **Matinee** viewport now specifies an `IsVisible()` function so that it will have its `Tick` called.
+* Guard against null group pointer when removing levels.
+* **New Level** dialog, scrollbar no longer overlaps thumbnails.
+* **Generate Visual Studio Files** will now early out and warn the user if the `Source` folder is missing.
+* **Crash Reporter** now correctly reports changelists and callstacks for UE4 crashes
+* Default map settings were renamed and now save correctly
+* Template maps that are auto-loaded on editor startup can no longer be saved to prevent accidental overwriting
+* Drop-down menus are now displaying correctly if they're too large to fit either above or below the anchor widget
+* Hitting **Alt + Enter** when in windowed mode no longer resizes the window, nor moves it, when restoring the window from fullscreen windowed mode.
+* The **Message Log** tab is now a nomad tab, similar to the **Output Log** tab.
+* The **Source Control** dialog in the **Editor Settings** are now reflected in the source control connection immediately.
+* Optimized _Actor_ duplication in the **Level Editor**.
+* Moving the pivot point with **Alt + Middle Mouse Button** when editing BSP brushes in orthographic view now works correctly.
+* Placing a _Spotlight_ now has the correct default rotation (does not affect _Spotlights_ already placed).
+* Selecting one color channel in the **Texture Editor** is now displayed as grayscale instead of modulated by the color of the channel.
+* **Destructible Mesh Editor**:
+ * Chunks can be selected in viewport and the properties of the selected chunks can be edited. - Succinct description 1
+ * Updated icons for the view mode **Buffer Visualization** and the **Refresh** button.
+* The majority of the editors dialogs have had their looks standardized.
+* Improved workflow for meshes with levels of detail (LODs) in the **Vertex Paint** tool.
+* Running **Simulate** in the editor now invisibly executes a **Play In Editor** and then **Eject**.This allows `ReceiveBeginPlay` to have been called on all actors in the simulated world.
+* Renaming _Sockets_ in the **Static Mesh Editor** is now done inline.
+* **Miscellaneous UI Updates**
+ * Created new MapCheck icon at 16px and 40px.Requires code hook-up
+ * Created new tintable icons for the connected and disconnected animation pins and 1p28x icon (again tintable) for the animation result node.PNG assets only, require code hook-ups.
+ * Created new trash can icon to replace current **Clear All** array button icon - replaces existing PNG.
+ * Created a new 40px icon for **Destructible Mesh Editor** refresh button.
+ * Removed back view LCD from camera mesh, and added source assets.
+ * Replaced undo and redo icons actually used for Cascade this time!Not destructive - simple png replace.
+ * Revised 16px and 40px icon sizes for Save All Levels icon - Change List is PNG assets update only.
+ * Additional icons for _AimOffset1D_ and _BlendSpace1D_ (both require code hook-up).PNG updates only.
+ * Swapped out icon to a _f_ function symbol.Overwrites existing PNG asset only.
-#### ブループリント
-* **ブループリント エディタ** 内の _コンポーネント_ の名前変更がインラインで行われるようになりました。
-* _Level ブループリント_ のタイトル バーに現在のマップが反映されるように変更しました。
-* **Promote to Variable** によってユーザーは [MyBlueprint] ウィンドウでインラインで名前設定ができるようになりました。
-* ピン選択ウィジェットの Exec ピンが配列として切り替えできなくなりました。
-* _User Defined Enums_ の UI をつくりかえて、詳細なカスタマイズが使えるようにしました。
-* ピンタイプの参照および配列への切り替えが、ポップアップ メニュー外で行えるようになりました。
-* 折りたたまれたグラフは、グラフ ノードで名前変更ができます。
-* **ブループリント エディタ** の **[Component]** タブ ビューポートがパーティクルをティックするようになりました。
-* **タイムライン エディタ** の使いやすさを改善するために、右クリックのコンテキスト メニューを追加しました。
-* ルート コンポーネント ノードが **ブループリント エディタ** の **Components** モードで選択されると、変形ギズモがプレビュー ウィンドウは表示されなくなりました。
-* **ブループリント エディタ** の **Components** モードで、 _ブループリント_ プレビュー アクタへより効率よくアクセスできるようにしました。
-* Multifonts を削除しました。
-* _ブループリント_ を開いた時のデバッグ インスタンスの選択を改善しました。アセット メニューから _ブループリント_ を編集すると、デバッグするインスタンスがある場合はそれを検出します。さらに、後続の _ブループリント_ インスタンスを編集する時に、デバッグ インスタンスが正しく更新されるようになります。
-* **FloatToString** キスメット関数が余分なゼロを取り除くようになりました。
-* 関数の呼び出しにより、アンドゥ / リドゥが正しく行われるようになりました。
-* **Ctrl + K** は、_ブループリント_ 内のアクタ リファレンスの検出にも使用することができます。
-* **ブループリント エディタ** のコンポーネント モードの UI を改善しました。
- * さらに簡単に使えるようにしました。
- * クラス アイコンによるユーザーへのフィードバックを改善し、レイアウトにゆとりをもたせませました。
- * 検索ボックスでコンポーネントがすぐに検出できます。
- * コンポーネントが _カテゴリ_ へ分類されました。
-* 複数のアクタを選択した時の、 _Level ブループリント_ 内のコンテキスト メニュー オプションを改善しました。
-* 数字の検索時における false positives を防ぐために _ブループリント_ の検索結果を改善しました (検索条件から必要のないノード インデックスを削除して)。
-* _リッチ ツールチップ_ 形式のドキュメント (徐々に追加されていく) を自動検索するために、現在あるすべてのタイプのグラフ ノードを接続しました。
-* アクタだけではなく、潜在ビヘイビアを、どの _ブループリント_ でも可能にするために、潜在アクション マネージャを一般化しました (そうでない場合はティックしないアクタ上でも機能します)。潜在アクションは関数ライブラリで宣言することもできます。
-* Touch enter/leave event とデリゲートをアクタとプリミティブ コンポーネントに追加しました
-* _State Machine_ entry ノードが conduit (現在ランタイム時にサポートされていません) に接続されないようにしました。
-* ソースの _ブループリント_ にコンパイル エラーある場合、 _AnimBlueprint_ インスタンスが初期化を完了しないようにしました
-* _ブループリント_ グラフ配列 から NULL リファレンスを取り除くクリーンアップ コードを追加しました(_State Machines_ の削除後に保存していて、ロード時にクラッシュを引き起こしてしまう、かなり古い Animation アセットを修正しました)。
-* 互換性のないスキーマのグラフ内では変数ノードをドロップできないようにしました。
-* ノードまたはピン上にカーソルを当てていない場合でも、カーソルを当てているグラフを照会するグラフのドラッグ&ドロップ操作機能を追加しました。
+#### Blueprints
+* Renaming _Components_ in the **Blueprint Editor** is now done inline.
+* Synthetic names in the title bar of _Level Blueprints_ have been changed to reflect the current map.
+* **Promote to Variable** will now have the user set the name inline in the MyBlueprint window.
+* Exec pins in the pin selector widget are no longer toggleable as arrays.
+* Redesigned the UI for _User Defined Enums_ to use details customization.
+* Toggling pin types to be references and arrays can now be done outside of the pop-up menu.
+* Collapsed graphs can be renamed inside the graph node.
+* The **Component** tab viewport in the **Blueprint Editor** now ticks particles.
+* Added a right-click context menu to the **Timeline Editor** for improved usage.
+* The transform gizmo is no longer visible in the preview viewport when a root component node is selected in **Components** mode within the **Blueprint editor**.
+* Made access to the _Blueprint_ preview actor more efficient in **Components** mode of the **Blueprint Editor**.
+* Multifonts have been removed.
+* Improved debug instance selection when opening _Blueprints_.Editing a _Blueprint_ from the asset menu will find an instance to debug if there is one.Additionally the debug instance should now update correctly when editing subsequent _Blueprint_ instances.
+* **FloatToString** kismet function now trims excess zeros.
+* Function connections should now undo/redo correctly.
+* **Ctrl + K** can once again be used to find an actor's reference in _Blueprints_.
+* Improved UI in **Blueprint Editor**'s component mode
+ * Simpler to use
+ * Improved user feedback with class icons and a less tightly packed layout
+ * Search box to quickly find components
+ * Components are now grouped into _categories_
+* Improved context menu options in _Level Blueprint_ when selecting multiple actors
+* Improved Find in _Blueprint_ search results to prevent false positives when searching for numbers (removing the junk node index from search criteria)
+* Wired up all current types of graph nodes to automatically look for _rich tooltip_ style documentation (which will be added over time)
+* Generalized the latent action manager to allow latent behavior in any type of _Blueprint_, not just actors (it also works on actors that don't otherwise tick).Latent actions can also be declared in function libraries.
+* Added touch enter/leave events and delegates to actors and primitive components
+* Prevented _State Machine_ entry nodes from being wired up to a conduit (which is not currently supported by the runtime)
+* Prevented _AnimBlueprint_ instances from finishing initializing if their source _Blueprint_ had compile errors
+* Added cleanup code to remove NULL references from _Blueprint_ graph arrays (fixing very old Animation assets that were saved after deleting _State Machines_, which currently crash on load)
+* Made it impossible to drop variable nodes in graphs with an incompatible schema
+* Added the ability for graph drag-drop operations to query the hovered graph even when not over a node or pin
-#### ゲームプレイとフレームワーク
-* ビヘイビアツリー システムは WIP のままです。
-* スクリーンのロードは進行中です。
-* **ワールド ブラウザ**
- * ワールド合成を使ってクライアントとしてホストに加わるためのサポートを追加しました。
- * ワールド合成に入っているレベルに対して `ALevelBounds` アクタを追加しました。これによりレベル バウンディング ボックスが定義されますレベルアクタの変更時に自動的に更新、または修正されたバウンドと使用することができます。
- * プログレス バーをレベル タイルに追加しました。
- * **Play In Editor**/**Simulate In Editor** モードにシミュレーション ユーを追加しました。
- * `WORLD_MAX` より大きいバウンドを持つレベルは、レベル バウンドがワールド バウンドと交差する場合に表示されます。
- * 下側にステータス バーを追加しました (マウス位置、マーキーの長方形のサイズ、 ワールドのサイズ)。
-* 現在の _SkeletalMesh_ をデフォルトとして維持するために _スケルトン_ を保存する必要がある旨の通知は、常時ではなく、変更があった場合にのみ表示されるようになりました。
-* ゲーム ビューポートが、別々の _Player Controller_ を制御する複数のゲーム コントローラーから入力を受け取ることができるようになりました。
-* コンポーネント アセット ブローカーを拡張可能にしました。
-* `AActor::bFindCameraComponentWhenViewTarget` を追加して、アクタがビューターゲットの時に使用可能な _Camera コンポーネント_ の使用をやめることができるようにしました。
-* 引き続き **Unreal Automation Tool** の開発中です。
- * **UnrealBuildTool** と **UnrealAutomationTool** ロギング システムを統合しました。
- * プログラムのビルドに対するサポートを追加しました。
- * プラットフォーム抽出レイヤーを追加して、 `AutomationScripts.dll` を複数の (プラットフォーム) DLL に分割しました。
-* **物理**
- * プレイヤー / 物理のインタラクションプレイヤーは物理オブジェクトの移動中にプッシュすることができます。
- * プレイヤーは、ブロックしている物理シミュレートされたオブジェクトを押しのけて、オーバーラップしている物理シミュレートされたオブジェクト上にわずかな力を生成することができます。
- * プレイヤーがオブジェクトに適用する力は _CharacterMovementComponent_ で設定することができます (Category=Player Physics を参照)。
+#### Gameplay and Framework
+* Behavior Trees system is still a WIP
+* Loading Screens in progress.
+* **World Browser**
+ * Added support for joining as a client to a host with world composition
+ * Added `ALevelBounds` actor for levels participating in world composition, which defines level bounding box.Can be updated automatically on level actors changes or used with just fixed bounds
+ * Added loading bar to level tiles
+ * Added simulation view while in **Play In Editor**/**Simulate in Editor**
+ * Levels which have bounds bigger than `WORLD_MAX` still will be visible in case level bounds intersects world bounds
+ * Added bottom status bar (mouse location, marquee rectangle size, world size)
+* Notification that _Skeleton_ needs to be saved to keep current _SkeletalMesh_ as default now only appears when there is a change, rather than always.
+* A game viewport can now receive input from multiple game controllers each controlling a separate _Player Controller_.
+* Made the component asset broker extendable
+* Added `AActor::bFindCameraComponentWhenViewTarget` to allow actors to opt out of using a _Camera Component_ where available when they are a view target
+* Ongoing development of **Unreal Automation Tool**
+ * Unified **UnrealBuildTool** and **UnrealAutomationTool** logging systems
+ * Added support for building programs
+ * Added platform abstraction layer and split `AutomationScripts.dll` into multiple (platform) DLLs.
+* **Physics**
+ * Player/Physics interaction:Player can push around physics objects while moving
+ * Player can push away blocking physics-simulated objects and will generate a slight force on overlapping physics-simulated objects.
+ * The force the player applies to the objects can be setup in the _CharacterMovementComponent_. (see Category=Player Physics)
-#### レンダリング
-* **DOFOverrideTexture** 機能を取り除きました。代わりに、UI エレメントの裏側のコンテンツをぼかすことができる **BlurUI** 機能が付きました。
-* 統合が遅い場合 NVIDIA のパフォーマンス GPU が高くなるように NVIDIA 固有の注釈を追加しました。
-* シャドウ手法は、新手法が既にデフォルトになっている場合が多いので、旧手法は削除しました。
-* バウンディング ボックスの _+1_ を削除しました (かつて物理に必要でしたが、もう必要なくなりました)。バウンディング ボックスを拡張して使うと、シェーディングに問題が生じました。
-* lit(ライティング有り) でないビューの大気エフェクトを無効にしました。
-* エディタ内の **ランドスケープ** スプラインの Z-fighting を減らし、正しいワールドの Z 軸によるスプライン曲線をレンダリングしました。
-* **Lightmass** のバックフェイシング トライアングルによって、写真がブロックされることがなくなりました。
-* **Lightmass** における指向性ライトの重要度の評価を改善しました。
-* OpenGL ES2 レンダラーにガンマ空間の出力を追加しました。
-* OpenGL ES2 に対する EnvBRDF の分析近似値を追加しました。
-* レンダリング スレッドから直接コンポーネント プロパティへアクセスするレース コンディションを作成しずらくするために、`UPrimitiveComponent` ポインタをレンダラー構造体から削除しました。
-* **カスケード** でエミッタを操作する時の LOD に関する警告がより明確になりました。
+#### Rendering
+* Removed **DOFOverrideTexture** feature - we will have a **BlurUI** feature instead - that allows to blur content behind UI elements
+* Added NVIDIA specific annotation to favor NVIDIA high performance GPU over slower integrated
+* Removed old shadow method since the new one was already the default for quite some time.
+* Removed _+1_ on the bounding boxes (was once needed for physics, but that's not longer the case).It was causing issues on shading where it was using the enlarged bounding box.
+* Disabled atmosphere for non-lit views
+* Reduced **Landscape** Spline Z-fighting in the editor and made the spline lines render with the correct world-Z coordinate
+* Photons are no longer blocked by back facing triangles in **Lightmass**.
+* Improved Directional Light's importance estimation in **Lightmass**.
+* Added gamma space output to OpenGL ES2 renderer.
+* Added EnvBRDF analytic approximation for OpenGL ES2.
+* Removed `UPrimitiveComponent` pointers from renderer structures to make it harder to create race conditions accessing component properties directly from the rendering thread
+* Warnings regarding level of detail (LOD) when manipulating emitters in **Cascade** are now more explicit.
-#### アニメーション / ペルソナ
-* **コンテンツ ブラウザ** で使用するために _[1D Blend Space]_ アイコンをエディタに追加しました。
-* **ペルソナ** でソケットを複製すると、アタッチされたアセットも複製されるようになりました。
-* **ペルソナ** 内にアタッチされたメッシュをキャッシュして、モードが変更しても残るようにしました。
-* _MID_ と _MIC_ のインスタンス名を、ユーザー (_MaterialInstanceDynamic_ と _MaterialInstanceConstant_) に相応しくなるように変更しました。
-* アニメーション シーケンスのスケルタルメッシュへの追加をアンドゥできるようになりました
-* bones/sockets/wind に対する **ペルソナ** の回転 / 平行移動ウィジェットが正しく表示および動作するようになりました。
-* **ペルソナ** の **Skeleton Tree** タブでアイテムを選択する時に、ビューの一番上へ強制的にスクロールされてしまうことがなくなりました。
-* **Skeleton Tree** でソケットを **Alt を押しながらドラッグ** すると、そこにドロップしたボーン上にはオリジナルではなくコピーが置かれます。
-* ワールド / ローカル空間のアイコンが **ペルソナ** で黒の四角としてレンダリングしなくなりました。
-* **Copy Bone Names To Clipboard** 機能は、ボーン名にアンダースコアと数を付けなくなりました。
-* **Persona** での _ソケット_ 名の変更がインラインで行われるようになりました。
-* **ペルソナ** のデフォルトのレイアウトを変更して、**[Compiler Results (コンパイラの結果)]** タブと **[Find in Blueprints (ブループリントを検索)]** タブのホームを作りました。
-* **レベル エディタ** のソケット サポートへのスナップを一般化して、 _Skeletal Meshes_ と _Skeletons_ だけではなくて、ソケットを含むすべての _SceneComponent_ 上で機能するようにしました。
+#### Animation/Persona
+* Added new _1D Blend Space_ icons to the editor for use in **Content Browser**
+* Duplicating sockets in **Persona** now duplicate attached assets too
+* Cached attached meshes in **Persona** so that they survive mode changes
+* Renamed instances of _MID_ and _MIC_ to something more appropriate for users (_MaterialInstanceDynamic_ and _MaterialInstanceConstant_).
+* You can now undo adding an Animation Sequence to a Skeletal Mesh.
+* **Persona** rotation/translation widget for bones/sockets/wind now looks and behaves correctly.
+* Selecting an item in the **Skeleton Tree** tab in **Persona** no longer forces it to scroll to the top of the view.
+* **Alt + Dragging** sockets in the **Skeleton Tree** will place the copy on the bone you drop it onto, rather than the original bone.
+* World/Local space icons no longer render as black squares in **Persona**.
+* **Copy Bone Names To Clipboard** feature no longer appends an underscore and number to the bone name.
+* Renaming _Sockets_ in **Persona** is now done inline.
+* Changed default **Persona** layout to have a home for the **Compiler Results** tab and **Find in Blueprints** tab (collapsed, at the bottom of the layout)
+* Generalized snap to socket support in the **Level Editor** to work on any _SceneComponent_ that contains sockets, instead of just _Skeletal Meshes_ and _Skeletons_
[REGION:note]
- 現在は、本物のソケットのみを使うビヘイビアを維持しており、ボーンのスナップは行われません。
+ Currently preserving the behavior of only using true sockets - no bone snapping.
[/REGION]
-#### オーディオ
-* ビューポートで右クリックすると、 _Ambient Sound_ が **Add Actor...** リストに表示されるようになりました。
+#### Audio
+* _Ambient Sound_ now shown in the **Add Actor...** list, when right-clicking in a viewport.
-#### コア
-* テンプレート化されたネイティブの基本クラスが `UCLASS` 定義で使用できるようになりました。以下が例です。
+#### Core
+* Templated native base classes can now be used in `UCLASS` definitions, e.g.:
UCLASS()
class UMyClass : public UObject, public MyNativeClass
{
};
-* 関数オブジェクトあるいは lambdas と合わせて使用するために、`TArray` に `FindByPredicate()` メンバー関数が含まれるようになりました。
+* `TArray` now has a `FindByPredicate()` member function for use with function objects or lambdas:
void Func(const TArray& Ints)
{
- // Try to find an odd number (偶数を検索)
+ // Try to find an odd number
const int* Result = Ints.FindByPredicate([](int N) { return (N % 2) != 0; });
}
-* 列挙型変数のスペーサーがエディタのダイアログで非表示になりました。
-* `TAssetPtr` が `nullptr_t` で機能するようになりました。
-* **Lightmass** が再度モジュラー アプリケーションとしてビルドされました (**Swarm** は **Core** と DLL ベースでのビルド時に作成する **SwarmInterface** DLLに依存します)。
-* Root セットにはない有効なパッケージへのリセット ローダーのみクック中に呼び出します。
-* 異なるワードラップ ビヘイビアを、1 つの整合した再利用可能なアルゴリズムに統一しました。
-* `GIsUnattended` を `FApp::IsUnattended` に置き換えました。無人サーバー上での実行が可能なコードがある場合は、適宜更新する必要があります。
-* すべてのポインタに対して、より適切なハッシング関数を使用するようにしました。64-bit の実行ファイルのポインタの下位 4 ビットはいずれにせよゼロになるので、無視されるように関数を若干調整しました。
-* `GetObjectsOfClass()` と `GetDerivedClasses()` を `ObjectHash.h` に追加しました。
- * これらの関数は、 _ブループリント_ でのロード時間のパフォーマンス問題を解決のために使用されるようになりました。
-* プラグイン名を変更するために、`PluginNameRedirects` を追加しました。
-* フォント エディタに再インポート ボタンを追加しました。
-* **Asset Registry** の API を変更して、`UClass` ポインタではなく `FName` クラス名を受け取るようにしました。
-* `RequiredAPI` をもつクラスのみが `SNewClassDialog` に含めることが可能になりました。 (多少の例外はあり)。
-* Perforce のログ、警告、エラーがログ ファイルの中で区別されました。
-* エンジンとエディタを Mac OS にポートします。
-* Windows XP のコンパイル機能と Visual Studio 2012 へのリンクを追加しました。
- * `WindowsPlatform.SupportWindowsXP` フラグを追加しました (今のところデフォルトはオフ)。
- * Visual Studio 2012 Update の 1 以上をインストールする必要があります。
- * [](http://blogs.msdn.com/b/vcblog/archive/2012/10/08/10357555.aspx ) に従って操作してください。
-* UnSetup と UEDocsURLHandler プログラムを削除しました (使用することがないため)。
-* モジュールとプラグインをロードする際に発生するエラー処理を改善しました。
- * ゲーム プラグインを有効にしたので、ロードに失敗するとエラーが報告されるようになりました。
-* **GeneratePackagingManifest()** を `ITargetPlatform` に追加しました。
- * **アセット レジストリ** の **ChunkIDs** を含んだパッケージ情報を生成しました。主に、チャンク ベースのインストール用の `.pak` ファイル リストの生成が目的です。
-* アセットの可用性と優先順位づけに関する関数を `IAssetRegistry` に追加しました。
- * これらは基本的に、 `FAssetDatas` に保存された ChunkID を使ったプラットフォーム チャンク インストール コードへの呼び出しを単純化したものです。
-**統計情報**
- * メモリ使用が改善されました。
- * `STAT NONE` が新しい統計システムで正しく機能するようになりました。
- * ブループリントから統計キャプチャの開始と停止ができます。
+* Enum spacers are now hidden from editor dialogues.
+* `TAssetPtr` now works with `nullptr_t`.
+* **Lightmass** built as a modular application again (**Swarm** depends on the **Core** and **SwarmInterface** DLLs it creates when building DLL-based)
+* Only call reset loaders on valid packages that are not in the root set during cooking.
+* Disparate word wrapping behaviors have been reconciled into one consistent, reusable algorithm.
+* `GIsUnattended` has been replaced with `FApp::IsUnattended`.If you have any code that can be run on an unattended server, you will need to update it accordingly.
+* We are now using a better hashing function for all pointers.The function was slightly adjusted to ignore the lower 4 bits of the pointer in 64-bit executables as they will be zero anyway.
+* Added `GetObjectsOfClass()` and `GetDerivedClasses()` to `ObjectHash.h`.
+ * These functions are now used to address a load time perf issue with _Blueprints_
+* Added `PluginNameRedirects` to handle renamed plugins.
+* Added a re-import button to the font editor.
+* The **Asset Registry**'s API was changed to accept `FName` class names instead of `UClass` pointers
+* Now only classes with `RequiredAPI` are allowed in the `SNewClassDialog` (with a few exceptions).
+* Perforce Logs, Warnings, and Errors are now differentiated in the log file.
+* Porting the engine and the editor to Mac OS
+* Added Windows XP compiling and linking for Visual Studio 2012
+ * New `WindowsPlatform.SupportWindowsXP` flag (defaults to off for now)
+ * Requires Visual Studio 2012 Update 1 or higher to be installed!
+ * Implemented according to: [](http://blogs.msdn.com/b/vcblog/archive/2012/10/08/10357555.aspx )
+* Deleted UnSetup and UEDocsURLHandler programs (no longer used)
+* Improved error handling for module and plugin loading
+ * Enabled game plugins to now report errors when they fail to load
+* Added **GeneratePackagingManifest()** to `ITargetPlatform`.
+ * Generates packaging info given the **ChunkIDs** in the **Asset Registry**.Primarily intended for generating `.pak` file lists for chunk based installs.
+* Added asset availability and prioritization functions to `IAssetRegistry`.
+ * These are basically simplified calls into the platform chunk install code, using the ChunkID stored on `FAssetDatas`.
+* **Stats**
+ * Better memory utilization.
+ * `STAT NONE` will now work properly with the new stats system.
+ * Stat captures may be initiated and stopped from Blueprints.
* **UnrealFrontend (UFE)**
- * UnrealAutomationTool を使っているランチャーが初めて実装されました。
- * UFE を非モノリシックに切り替えました。
-* UnrealAutomationTool (UAT) がプリコンパイルされたフォールバックから機能できるようになったので、Visual Studio や MSBuild のないマシンからも実行できるようになしました。
-*「XGE」を使用する時に明確に含まれていなくても、 UnrealAutomationTool が UnrealHeaderTool を作成するようにしてください。
-* FMonitoredProcess により、エディタまたはエンジンで監視できる外部プロセスの作成が可能になりました。
-* Unreal Build Tool ホットリロードを必要なモジュールとソースの処理だけになり、時間が短縮されました。
-* 内部例外を継承するために Unreal Build Tool の BuildException のすべての使用を変更しました。
+ * Initial implementation of the launcher utilizing UnrealAutomationTool.
+ * Switched UFE to be non-monolithic.
+* Improve UnrealAutomationTool (UAT) to be able to work from a precompiled fallback so UAT can be run from a machine without Visual Studio or MSBuild
+* Make sure UnrealAutomationTool builds UnrealHeaderTool even if it is not explicitly included when using XGE
+* FMonitoredProcess allows for the creation of external processes that can be monitored by the Editor or Engine
+* Reduced time for Unreal Build Tool hot-reload compiles by only processing required modules and sources.
+* Changed all uses of BuildException in Unreal Build Tool that are thrown in response to a caught exception to propagate the inner exception.
-#### オンライン
+#### Online
-* Steam/Null の Achievement インターフェース。
+* Achievement interface for Steam/Null.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Sept/ReleaseNotesSeptember2013.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Sept/ReleaseNotesSeptember2013.KOR.udn
index 8c3aeee14908..920ce05fb1e4 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Sept/ReleaseNotesSeptember2013.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2013/Sept/ReleaseNotesSeptember2013.KOR.udn
@@ -1,8 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Title: September 2013 Release Notes
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
+Parent:Support/Builds
+Order:-5
[TOC(start:2 end:2)]
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_1/ReleaseNotes_4_1.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_1/ReleaseNotes_4_1.JPN.udn
index 945e3a89281c..77d97b50edcc 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_1/ReleaseNotes_4_1.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_1/ReleaseNotes_4_1.JPN.udn
@@ -1,10 +1,12 @@
-INTSourceChangelist:2735872
-Title:アンリアル エンジン 4.1 リリースノート
+INTSourceChangelist:3367477
+Title:アンリアル エンジン 4.1 リリース ノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Public
-version: 4.1
+version:4.1
+parent:Support/Builds
order:1
+
[TOC(start:2 end:2)]
[PUBLISH:Licensee]
@@ -30,7 +32,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
-->
[/PUBLISH:Licensee]
-## 主な新機能
+## 主要な新機能
#### プラットフォーム
@@ -64,7 +66,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
[/PUBLISH:Rocket]
-#####新たなコンテンツ サンプル レベル Math Hall
+#####新たなコンテンツ サンプルのレベル Math Hall
* Math Hall では、基本的なベクター演算と各種数学関数のコンセプトについて説明しています。
@@ -88,14 +90,14 @@ QA_APPROVED_UE4_BUILD_MINIMUM
##### 新たな内蔵型エディタ チュートリアル
-* エディタ内にチュートリアルが新たに内蔵されました。チュートリアルは、次のような機能を初めて使用する場合に自動的に表示されます。
+* エディタ内にチュートリアルが新たに内蔵されましたチュートリアルは、次のような機能を初めて使用する場合に自動的に表示されます。
[REGION:raw]

[/REGION]
* **カスケード パーティクル エディタ チュートリアル** ではパーティクル システムとエフェクトを作成する際に使用される基本的なインターフェイスとコンセプトを紹介しています。
-* **マテリアル エディタ チュートリアル** では、マテリアル作成の基本が学べます。
+* **マテリアル エディタ チュートリアル ** では、マテリアル作成の基本が学べます。
* **スタティック メッシュ エディタ チュートリアル** では、スタティック メッシュをセットアップするためのインターフェイスとツールについて解説しています。
* **ペルソナ アニメーション エディタ チュートリアル** では、さまざまなアセットのタイプとモードための各種 UI 要素とコンセプトについて説明しています。
@@ -117,7 +119,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM

-#####Asset Deletion Assistant (アセット削除アシスタント)
+##### Asset Deletion Assistant (アセット削除アシスタント)
* この機能を使用すると、インタラクティブに参照を調べ、修正できるようになるため、簡単にアセットを削除できます。
@@ -127,13 +129,13 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* 参照されているアセットをクリックすると、そのアセットに進み、手動で修正できるようになります。
* 参照を置き換えることができます。(正式には、Consolidate <統合> と呼ばれます。)
* 強制削除機能が備わっています。また、キャンセルしてユーザー自身で参照を扱うことができます。
-* 複数同時に削除可能です。
+* 複数同時に削除可能です
* アセットが他のアセットから参照されていても、それらの他アセットも削除されているならば、問題が生じることはありません。
* 参照のナビゲーション
* 参照されているアセットをダブルクリックするとエディタが開きます。
-* 開いているマップでアセットが参照されている場合、そのマップのアセットをダブルクリックすると、開いているマップの中でそのアセットがあるところまでナビゲートしてくれます。
+*開いているマップでアセットが参照されている場合、そのマップのアセットをダブルクリックすると、開いているマップの中でそのアセットがあるところまでナビゲートしてくれます。
-#####ディレクトリをドラッグアンドドロップしてインポート
+##### ディレクトリをドラッグアンドドロップしてインポート
* テクスチャやメッシュ、アニメーションが入っている複数のフォルダを選択して、直接コンテンツブラウザの中にドラッグすると、フォルダの中のものすべてがインポートされるようになりました。
@@ -147,14 +149,14 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* Window メニューから Undo History (元に戻す履歴) ウィンドウを開くことができます。(Window > Undo History)。
-##### New:ビューポート操作のリマップ
+##### 新規:ビューポート操作のリマップ
* ビューポートのための WASD 操作をユーザーがリマップできるようになりました。
-* これらの設定は、Editor Preferences (エディタの設定) > Keyboards Settings (キーボードの設定) > Viewport Navigation (ビューポート ナビゲーション) に置かれています。
+* これらの設定は、 **[Editor Preferences (エディタの環境設定)] > [Keyboards Settings] > [Viewport Navigation]** に置かれています。

-##### New:デバッグ ヒストグラムによる視覚化
+##### 新規:デバッグ ヒストグラムによる視覚化
* ワールド内で浮動小数点値のヒストグラム (グラフ) を描画できるようになりました。
@@ -165,26 +167,26 @@ QA_APPROVED_UE4_BUILD_MINIMUM

-* 注記:この機能はデバッグのために作られています。デバッグ描画を通常のゲームプレイに利用することは推奨されません。
+* 注記:この機能はデバッグのために作られています。デバッグ描画を通常のゲームプレイに利用することは推奨されません。
-##### Translation Editor (翻訳エディタ) (プレビュー版)
+#####翻訳エディタ (プレビュー版)
* Translation Editor (翻訳エディタ) を使うことによって、ゲームコードやアセット内の文字列のために翻訳したものを簡単に編集できるようになります。

-* 注記:このツールは、まだ作成作業が進行している早期版です。Experimental (実験) セクションの Editor Preferences (エディタの設定) で有効化できます。
+* 注記:このツールは、まだ作成作業が進行している早期版です。Experimental (実験) セクションの Editor Preferences (エディタの設定) で有効化できます。
### ブループリント
-#####グラフ内の接続にジャンプ
+##### グラフ内の接続にジャンプ
* ピンを右クリックし、接続にジャンプできるようになりました。

-#####クラスの動的キャスティング
+##### クラスの動的キャスティング
* ブループリント内で互換性のある型のオブジェクト同士を安全に変換できるようになりました。
@@ -194,7 +196,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* ブループリント エディタのウィンドウ間でコンポーネントのノードをドラッグアンドドロップできるようになりました。
* 上記操作によって、元のコンポーネントから属性を継承する新たなコンポーネントの変数が新たなブループリントに作成されることになります (ただし、名前の衝突を避けるため、変数名は継承されません)。
-* コンポーネントの付属/分離操作について元に戻す/やり直しが可能になりました。
+* コンポーネントの付属 / 分離操作について元に戻す / やり直しが可能になりました。
* この機能は、Make New Scene Root (新規シーン ルートの作成) の操作にも適用されます。
@@ -203,579 +205,579 @@ QA_APPROVED_UE4_BUILD_MINIMUM
#### プロジェクトのアップグレード
[PUBLISH:Licensee]
-プロジェクトが UE4 ディレクトリの外部にある場合、新規ビルドでプロジェクトを機能させるためには、いくつかのステップが必要になる場合があります。
+プロジェクトが UE4 以外に存在する場合、新しいビルドでプロジェクトを動かすことが必要になる場合があります。
[/PUBLISH:Licensee]
[PUBLISH:Rocket]
4.0 によるプロジェクトを 4.1 で動かすためには、操作が必要になる場合があります。
[/PUBLISH:Rocket]
-- ブループリントのみのプロジェクトをアップグレードする場合
+- ブループリントのみのプロジェクトをアップグレードする場合
* 通常どおりに新たなエディタに既存のプロジェクトをロードできます。
- * 注記:ブループリントの API の中にはバージョン間で変更されたものもあるため、コンテンツで警告を受ける場合があります。詳しくは **API の変更** のセクションをご覧ください。
+ * 注記:ブループリントの API の中にはバージョン間で変更されたものもあるため、コンテンツで警告を受ける場合があります。詳しくは **API Changes** のセクションをご覧ください。
-- C++ コードによるプロジェクトをアップグレードする場合
+- C++ コードによるプロジェクトをアップグレードする場合
* C++ プロジェクトを新たなバージョンのアンリアル・エンジンのために再コンパイルする必要があります。
* ゲームのフォルダから .uproject ファイルを見つけ、右クリックします (Mac の場合は、Command + クリックでも可能です)。
- * **Switch Unreal Engine Version (アンリアル・エンジンのバージョンを切り替える) を選択 -> 4.1** (Mac では、Services メニュー内にあります)。
+ * **Switch Unreal Engine Version -> 4.1** を選択します (Mac では、Services メニュー内にあります)
* 右クリックして新たな C++ プロジェクト ファイルを作成し、通常通りゲームを再コンパイルします。
- * 注記:注記: C++ の API の中にはバージョン間で変更されたものもあるため、コンパイル エラーが生じる場合があります。詳しくは **API Changes (API の変更 ) ** のセクションをご覧ください。
+ * 注記:注記: C++ の API の中にはバージョン間で変更されたものもあるため、コンパイル エラーが生じる場合があります。詳しくは **API Changes** のセクションをご覧ください。
-ご不便をおかけして申し訳ございません。将来のバージョンのために、現在アップグレード プロセスを簡略化する作業を行っております。
+- ご不便をおかけして申し訳ございません。今後のバージョンのために、現在アップグレード プロセスを簡略化する作業を行っております。
#### 既知の問題
- Xbox One SDK がインストールされている場合、名前にアンダースコアがあるプロジェクトを Visual Studio で作成すると失敗する。
- 親ディレクトリのどれかにスペースが含まれているプロジェクトは、 Xbox One と Playstation 4 が完全に対応しきれていない。
-- Steamworks が Mac でサポートされていない。現在作業が進行中です!
+- Steamworks is not yet supported on Mac - we're working on it!
- ShooterGame が、専用サーバーとしてコンパイルされるために、GitHub からソースを必要とする。
-- First Person (ファーストパーソン) テンプレートから作成されたプロジェクトが、PlayStation 4 でクラッシュする場合がある。
+- First Person (ファーストパーソン) テンプレートから作成されたプロジェクトが、PlayStation 4 でクラッシュする場合がある
- Launch On ボタンを使用して Mac にデプロイすると、Elemental デモがクラッシュする。
--Game Center にサインインしている場合、Tappy Chicken が起動時に iOS でクラッシュする。
+- Game Center にサインインしている場合、Tappy Chicken が起動時に iOS でクラッシュする。
#### 謝辞
-今回のリリースのコードに貢献していただいた素晴らしいデベロッパーの方々全員に感謝を申し上げます!
+今回のリリースのコードに貢献していただいた素晴らしいデベロッパーの方々全員に感謝を申し上げます!ありがとうございました!
* **Allar (Michael Allar)**
- * D3D11RHI をサポートするための共有テクスチャ リソースを追加。 [Added Shared Texture resource support for D3D11RHI](https://github.com/EpicGames/UnrealEngine/pull/6)
+ * [D3D11RHI をサポートするための共有テクスチャ リソースを追加](https://github.com/EpicGames/UnrealEngine/pull/6)
* **AndrewScheidecker (Andrew Scheidecker)**
- * Actor->Acor K2 のリダイレクトのタイポを修正。 [Fix Actor->Acor K2 redirect typo](https://github.com/EpicGames/UnrealEngine/pull/28)
+ * [Actor->Acor K2 のリダイレクトのタイポを修正](https://github.com/EpicGames/UnrealEngine/pull/28)
* **cdietschrun**
- * Actions taking a object (オブジェクトを取るアクション) のメッセージの修正。 [Fix "Actions taking a object" message](https://github.com/EpicGames/UnrealEngine/pull/12)
+ * [Actions taking a object (オブジェクトを取るアクション) のメッセージの修正](https://github.com/EpicGames/UnrealEngine/pull/12)
* **clide**
- - Mac の GL を修正。 [Mac GL Fix](https://github.com/EpicGames/UnrealEngine/pull/5)
+ - [Mac の GL を修正](https://github.com/EpicGames/UnrealEngine/pull/5)
* **dkjer (Donald Kjer)**
- * ケースセンシティブなファイルシステムの修正。 [Fixes for case-sensitive filesystems](https://github.com/EpicGames/UnrealEngine/pull/11)
+ * [ケースセンシティブなファイルシステムの修正](https://github.com/EpicGames/UnrealEngine/pull/11)
* **DiCoJamesTan (James Tan)**
- * ChildActorComponent に関する添付バグを修正。 [Fix attachment bug with ChildActorComponent ](https://github.com/EpicGames/UnrealEngine/pull/20)
+ * [ChildActorComponent に関する添付バグを修正](https://github.com/EpicGames/UnrealEngine/pull/20)
* **fxtentacle (Hajo Nils Krabbenh.ft)**
- * Mac における Azimuth & Elevation の計算を修正。 [Fix Azimuth & Elevation calculation on Mac](https://github.com/EpicGames/UnrealEngine/pull/9)
+ * [Mac における Azimuth & Elevation の計算を修正](https://github.com/EpicGames/UnrealEngine/pull/9)
* **Kamayuq**
- * Mac の UnrealBuildTool を修正。 [Mac UnrealBuildTool Fix](https://github.com/EpicGames/UnrealEngine/pull/3)
+ * [Mac の UnrealBuildTool を修正](https://github.com/EpicGames/UnrealEngine/pull/3)
* **Kyle Rocha (kylawl)**
- * 平面の交線の関数を KismetMathLibrary に追加。 [Add plane interct function to KismetMathLibrary](https://github.com/EpicGames/UnrealEngine/pull/14)
+ * [平面の交線の関数を KismetMathLibrary に追加](https://github.com/EpicGames/UnrealEngine/pull/14)
* **PostalDude (Frederic Lauzon)**
- * モジュール リンカの出力ファイルの無効なパスを修正。 [Fix invalid module linker output file path](https://github.com/EpicGames/UnrealEngine/pull/7)
+ * [モジュール リンカの出力ファイルの無効なパスを修正](https://github.com/EpicGames/UnrealEngine/pull/7)
* **sbc100 (Sam Cleeg)**
- * UnrealBuildTool におけるビルドの警告を修正。 [Fix build warnings in UnrealBuildTool](https://github.com/EpicGames/UnrealEngine/pull/16)
- * Linux におけるコンパイルの警告を修正。 [Fix linux compile warnings](https://github.com/EpicGames/UnrealEngine/pull/19)
+ * [UnrealBuildTool におけるビルドの警告を修正](https://github.com/EpicGames/UnrealEngine/pull/16)
+ * [Linux におけるコンパイルの警告を修正](https://github.com/EpicGames/UnrealEngine/pull/19)
* **wshearn (Wesley Hearn)**
- * HTML5 による出荷クライアントのビルドを修正。 [Fix HTML5 Shipping Client build](https://github.com/EpicGames/UnrealEngine/pull/15)
+ * [HTML5 による出荷クライアントのビルドを修正](https://github.com/EpicGames/UnrealEngine/pull/15)
-## リリースノート
+## リリース ノート 「訳注: 以下は、非常に技術的な部分が含まれるため、翻訳を省略します。」
-#### マーケットプレイスのコンテンツ
+#### Marketplace Content
-* **ShooterGame**:Xbox One と PlayStation 4 へのデプロイをサポートするようになりました。
+* **ShooterGame**:Now supports Xbox One and PlayStation 4 deployment.

-* **Memory Game (記憶ゲーム)**: カード合わせの記憶ゲームが、まるごとブループリントで作成されました。モバイル デバイスに最適化されています!
+* **Memory Game**:A card-matching memory game created entirely in Blueprints.Optimized for mobile devices!

-* **Effects Cave (エフェクトの洞窟)**:本物の洞窟探検もこれほど面白くはないでしょう!Effects Cave を探検すると、美しいものに出会います。それらは、ワールドを豊かにするために作ることができるものです。GPU によるパーティクル、動的にリットされるスパーク、かすかにたなびく煙などなど、ビジュアル エフェクト エディタのカスケードを使用すると、無数のディテールを積み上げることができるようになるのです。
+* **Effects Cave**:Spelunking has never been this fun!See the pretty things you can make to add richness to your world by exploring the Effects Cave.Using the Cascade visual effects editor you can layer on countless details including GPU-powered particles, dynamically lit sparks, wispy puffs of smoke and more.

-* **リアルなレンダリング**:UE4 の物理ベースのマテリアル システムや、改善されたグローバル イルミネーション システムのライトマス、さらにフォトメトリック ライティングを使用することによって、リアルな環境を簡単に構築したり、建築のビジュアライゼーションを模倣することができるようになります。Oculus Rift に対応!
+* **Realistic Rendering**:Easily build true-to-life environments or emulate architectural visualizations using UE4's physically-based material system, the improved Lightmass global illumination system and photometric lighting.Supports Oculus Rift!

-* **ブループリント オフィス**:レベルのデザイン ツールや、自動制御セキュリティ システム、高度な AI の振る舞いなど、ブループリントの多様な使用事例を示しています。各使用事例には、簡潔なゲーム内説明が含まれています。
+* **Blueprint Office**:Shows a wide variety of use cases for Blueprints ranging from level design tools to intelligent security systems to sophisticated AI behavior.Each example includes a brief in-game explanation.

-#### 学習リソース
+#### Learning Resources
-* **動画チュートリアル**
- * New: [Multiplayer Networking Video Tutorials](https://www.youtube.com/playlist?list=PLZlv_N0_O1gYwhBTjNLSFPRiBpwe5sTwc) (マルチプレイヤー ネットワーキング動画チュートリアル) (6 巻) Billy Bramer 著
- * New: [Blueprint Video Tutorials](https://www.youtube.com/playlist?list=PLZlv_N0_O1gaG5BW72It4chjhypxIO9ZB) (ブループリント 動画チュートリアル) (新作 7 巻) James Golding および Mike Beach 著
- * New: [Third Person Blueprint Game Setup Tutorial](https://www.youtube.com/watch?v=GWbd0Wowwnk&list=PLZlv_N0_O1gZS5HylO_368myr-Kg2ZLwb&index=2) (サードパーソン ブループリント ゲーム セットアップ チュートリアル) (15 巻) Zak Parrish 著
-* **文書によるチュートリアル**
- * New:Particle System Tutorials: (パーティクル システム チュートリアル)VFX [Lesson 1](https://wiki.unrealengine.com/Visual_Effects:_Lesson_01:_Material_Particle_Color), [Lesson 2](https://wiki.unrealengine.com/Visual_Effects:_Lesson_02:_Using_Depth_Fade) Tim Elek 著
- * New: [Matinee Tutorial](https://wiki.unrealengine.com/Matinee_Basics:_Creating_Your_First_Matinee_Sequence) (マチネ チュートリアル) Greg Mitchell 著
-* **ドキュメンテーション**
- * **アンリアル エディタのマニュアル**
+* **Video Tutorials**
+ * New: [Multiplayer Networking Video Tutorials](https://www.youtube.com/playlist?list=PLZlv_N0_O1gYwhBTjNLSFPRiBpwe5sTwc) (6 videos) by Billy Bramer.
+ * New: [Blueprint Video Tutorials](https://www.youtube.com/playlist?list=PLZlv_N0_O1gaG5BW72It4chjhypxIO9ZB) (7 new videos) by James Golding and Mike Beach.
+ * New: [Third Person Blueprint Game Setup Tutorial](https://www.youtube.com/watch?v=GWbd0Wowwnk&list=PLZlv_N0_O1gZS5HylO_368myr-Kg2ZLwb&index=2) (15 videos) by Zak Parrish.
+* **Written Tutorials**
+ * New:Particle System Tutorials:VFX [Lesson 1](https://wiki.unrealengine.com/Visual_Effects:_Lesson_01:_Material_Particle_Color), [Lesson 2](https://wiki.unrealengine.com/Visual_Effects:_Lesson_02:_Using_Depth_Fade) by Tim Elek.
+ * New: [Matinee Tutorial](https://wiki.unrealengine.com/Matinee_Basics:_Creating_Your_First_Matinee_Sequence) by Greg Mitchell.
+* **Documentation**
+ * **Unreal Editor Manual**
* New:[Blueprint Cheat Sheet](Engine/Blueprints/UserGuide/CheatSheet)
* New:[Light Propagation Volumes](Engine/Rendering/LightingAndShadows/LightPropagationVolumes)
- * New:[Preview Shadows](Engine/Rendering/LightingAndShadows/Shadows#シャドウのプレビュー)
+ * New:[Preview Shadows](Engine/Rendering/LightingAndShadows/Shadows#previewshadows)
* New:[Pivot Painter](Engine/Content/Tools/PivotPainter)
- * New:[Mac Viewport Controls クイック リファレンス](Engine/UI/LevelEditor/Viewports/ViewportControls)
- * **プログラミングのガイド**
- * New:コードブロックのハイライト
- * ランディングページの再編成を更新。
- * データ駆動型ゲームプレイを更新。
- * アクタのスポーン情報を修正。
- * コンポーネントの配列の参照を修正。
+ * New:[Mac Viewport Controls Quick Reference](Engine/UI/LevelEditor/Viewports/ViewportControls)
+ * **Programming Guide**
+ * New:Code Block Highlighting
+ * Updated Landing Page Reorganization
+ * Updated Data Driven Gameplay
+ * Fixed Actor Spawning Info
+ * Fixed Components Array References
[PUBLISH:Rocket]
-#### EULA (エンドユーザーライセンス契約書)
+#### End User License Agreement (EULA)
-* ライセンシーは、Example Code (Samples フォルダと Templates フォルダにあるコード) を公に配布することが許可されるようになりました。これはソース コードを公に配布することを禁止する規則の例外です。
-* ライセンシーのロイヤルティの義務に関して以下の例外を追加しました。:
-* ライセンシーは暦四半期の一期につき各製品の粗利益として得られる 3,000 ドルまでの金額に対してロイヤルティを支払う必要はありません。
-* 暦四半期の一期につき製品の利益が 3,000 ドル未満の場合は、ライセンシーは当該製品の収益を報告する必要はありません。
-* 「製品」に授与された賞に起因する賞金にはロイヤルティは課されません。
-* ライセンシーは最長 30 行までの「ソースコード」の断片を、そのコードの断片の内容について議論する目的のために一般に公開されたフォーラムで投稿することが認められます。
+* Licensees are now permitted to publicly distribute Example Code (code residing in the Samples and Templates folders).This is an exception to the rule prohibiting distribution of Source Code publicly.
+* Added the following exceptions to licensees' royalty obligation:
+* Licensees are not required to pay royalties on the first $3,000 in gross revenue per Product per quarter.
+* If Product revenue is less than $3,000 in a quarter, licensee is not required to report revenue for that Product.
+* Financial winnings from awards are exempt from royalties.
+* Licensees are now permitted to post Source Code snippets up to 30 lines in length on public forums for discussion purposes.
[/PUBLISH:Rocket]
[PUBLISH:Rocket]
-#### アンリアル エンジンのランチャー
+#### Unreal Engine Launcher
-* New:複数のバージョンのアンリアル・エンジンを並存させてインストール。
-* ランチャーの新たなバージョン セレクターのドロップダウンリストを使って、インストールして実行したいバージョンを選択してください!
-* New:メインの UI 上に新たにできた [Uninstall] ボタンを使って、ランチャーからエンジンのバージョンをアンイストールできるようになりました。
-* New:ランチャーのマーケットプレイスのページにダウンロード サイズが表示されるようになりました。
-* New:マーケットプレイスでさまざまなバージョンのアイテムがサポートされるようになりました。
-* New:EULA (エンドユーザーライセンス契約書) が、ランチャーから表示して承認できるようになりました。
-* New:プロジェクト ファイルを、ランチャーからインストールされたエンジン バージョンと関連付けることができるようになりました。
-* New:アンリアル インストーラーとランチャーが、日本語と韓国語のためにローカライズされました。
-* ランチャーについては、ログイン スクリーンで言語を選択できます。
-* エンジンのダウンロード中に、マーケットプレイスのアイテムをキューに入れられない不具合を修正しました。
-* Windows 7 SP1 がインストールされていない場合にインストーラーが警告を出さない不具合を修正しました。
-* アンリアル・エンジンのショートカットをデスクトップから削除できない場合がある不具合を修正しました。
-* Syncing your account (アカウントを同期中です) でまれに止まってしまう不具合を修正しました。
-* 自動ダウンロードのキャンセルを修正して、再開しないようにしました。
-* 自動アップデートが空のファイルを無視する不具合を修正しました。
-* UI サイズ情報が、小数位をともなって表示されない不具合を修正しました。
-* インストールが失敗した際に、前回成功したファイル以降から再開されるのではなく、最初からやり直されるという不具合を修正しました。
-* データファイルのダウンロードに失敗したことによって、まれにインストールが終了しなくなる不具合を修正しました。
-* Mac 用ランチャーが終了時にクラッシュする不具合を修正しました。
-* ダウンロード サイズのインジケーターを修正して、圧縮されていないサイズではなく圧縮されたダウンロード サイズが表示されるようにしました。
-* 進捗パーセンテージの情報に関する UI の問題を修正しました。
+* New:Install multiple versions of Unreal Engine side-by-side.
+* Use the Launcher's new Version Selector drop-down to choose which version you want to install and run!
+* New:You can now uninstall the engine versions right through the launcher using a new 'Uninstall' button on the main UI.
+* New:Launcher Marketplace pages now show download size.
+* New:The Marketplace now supports different versions of items.
+* New:The EULA is now shown and accepted through the launcher.
+* New:Project files can be associated with engine versions installed through the launcher.
+* New:The Unreal Installer and Launcher are now localized for Korean and Japanese.
+* For the launcher you can select a language in on the login screen.
+* Fixed not being able to queue Marketplace items while the Engine is downloading.
+* Fixed installer not warning users if they did not have Windows 7 SP1 installed.
+* Fixed an issue preventing Unreal Engine shortcuts from being removed from the desktop on uninstall in some cases.
+* Fixed rare issue with being stuck on "Syncing your account".
+* Fixed cancelled automatic downloads so they will not resume.
+* Fixed self-update ignoring empty files.
+* Fixed UI size information not displaying with decimal places.
+* Fixed an issue causing a failed installation to start all over again rather than resuming from previously successful files.
+* Fixed a rare issue where a failed data file download could cause the install to never finish.
+* Fixed Mac Launcher crash on close.
+* Fixed download size indicator to support showing the compressed download size rather than uncompressed size.
+* Fixed some UI issues with progress percentage information.
[/PUBLISH:Rocket]
#### エディタとツール
-* **一般エディタ**
- * New:3D ビューポートのグリッドを改善しました!
- * より見やすくするためにグリッド ドットを除去しました。グリッドも、グリッド スナップ設定に従って、スケーリングされるようになりました。
- * 細い線について、パースペクティブ グリッドの正確性を改善しました。
- * orthographic grid (正投影法のグリッド) に、10 の主要グリッド線、レベル間のソフトなフェード遷移、および色付き軸線が備わりました。
- * New:**Preview Meshes** (メッシュのプレビュー) の設定項目を追加することによって、バックスラッシュ キーを押下したままにすると、ビューポートで表示されるメッシュをカスタマイズできるようにしました。
- * New:プロジェクトのアイコンを Window/Project Settings (ウィンドウ/プロジェクトの設定) から割り当てることができるようにしました。
- * New:プロジェクトのスタートアップ ムービーを Window/Project Settings (ウィンドウ/プロジェクトの設定) から割り当てることができるようにしました。
- * New:* C のキーを押すと、マテリアル エディタおよびサウンド キューにコメントを作成できるようにしました。
- * New:マウス中ボタンによるパンの動きを反転させるオプションを追加しました。Editor Preferences (エディタの設定) -> Viewports (ビューポート) の **Invert Middle Mouse Pan** (マウス中ボタンによるパンの動きを反転) オプションから選択できます。
- * New:* プレースメント ブラウザに検索機能を追加しました。
- * New:* **Ctrl** キーを押したままにすると、頂点ペインティングによってアクタが選択解除/再選択されないようになりました。
- * New: **Ctrl + バックスラッシュ** 、および **Ctrl + Delete** を、編集可能テキストボックスに追加しました。
- * New:**Enable Sound** (サウンドを有効にする) オプションを Play-In-Editor (プレイ イン エディタ) に追加しました。
- * New:保存されるものに応じて、Save Map (マップを保存) または Save Asset (アセットを保存) が Save (保存) ウィンドウに表示されるようになりました。
- * New:* 個々のサブカーブをスケーリングできる機能を、カーブ エディタに追加しました。
- * New:デフォルトでコンテンツが自動保存されるようになりました。また、保存されるパッケージの数が表示されるようになりました。
- * New:詳細を見るために **F4** キーを押すと、他の Details (詳細) パネルがすべてロックされている場合に、新たな Details (詳細) パネルが開かれるようになりました。
- * New:* コンテンツ ブラウザのコンテクスト メニューにある Browse (参照) ボタンが、ロードされていないオブジェクトに有効となりました。
- * New:Reset Layout (レイアウトをリセット) 機能が、Editor Preferences (エディタの設定) から Window (ウィンドウ) メニューに移動しました。
- * New:Editor Preferences (エディタの設定) の **Region & Language** (地域と言語) において、コードに入っている場合に (英語で) プロパティ名を表示するための設定が可能になりました。
- * New:Editor Preferences (エディタの設定) で選択の色をカスタマイズできるようになりました。
- * New:レベル エディタのビューポート上で遠くのビュー プレーンをオーバーライドできるようになりました。
- * New:Save Content (コンテンツを保存) ダイアログでコラムがソート可能になりました。
- * New:3D マーキー選択が、元のキーバインディング (Ctrl + Alt + 左クリック ドラッグ) をともなって、再度追加されました。
- * New:* エディタ内の読み込みエラーを診断するためのメッセージ ログのリンクを追加しました。
- * New:アクティブなカメラのセーフ フレームがある場合、High Resolution Screenshot UI (ハイ リゾリューションのスクリーン ショット UI) によって、キャプチャ領域をそのセーフ フレームに設定できるようになりました。
- * New:プラグイン エディタでプラグインを有効化または無効化した後でエディタを再起動してもらうためのプロンプトを追加しました。
- * New:テクスチャ エディタ内のズーム スライダーが、 **Fit to Viewport** (ビューポートに合わせる) の設定に対して適切に作用するように改善しました。
- * エディタ内におけるデカールのスケーリング性能を改善しました。
- * エディタ内における Asset Discovery (アセットの発見) の時間を改善しました。
- * 遠くにある Arrow Component (矢印コンポーネント) の可読性を改善しました。
- * **Code View (コード ビュー)** 機能をアップデートして、プラグインで機能するようにしました。
- * Code View (コード ビュー) プラグインを有効化して、この機能を再開させてください。(Window (ウィンドウ) メニュー -> Plugins (プラグイン) -> Editor (エディタ) -> Code View (コード ビュー))
- * Editor Preferences (エディタの設定) 内の **Region & Language** (地域と言語) の使いやすさを改善しました。設定の変更が、分かりやすく、使いやすくなっているはずです。
- * High Resolution Screenshot (ハイ リゾリューション スクリーンショット) 機能を修正しました。
- * スクリーンショット キャプチャは、ハイ リゾリューション スクリーンショットのアクションが選択されたビューポートに限定されるようになりました。
- * Editor Preferences (エディタの設定) が、あらゆる利用可能な言語と地域を表示しない不具合を修正しました。
- * **Select Actors using this Asset** (このアセットを使用するアクタを選択) が、他のストリーミング サブレベルでアクタを選択しない不具合を修正しました。
- * マウステストが原平面から拡張しないことに起因する、正投影法のビューポートにおける選択の問題を修正しました。
- * 複数のレベルからクリップボードにアクタをコピーした後、アクタが選択されたままになっていない不具合を修正しました。
- * グローバルなショートカット キーが、ある場合に、フローティング ウィンドウで機能しなくなる不具合を修正しました。
- * カメラが選択されていない状態でカメラがマチネでロックされると、セーフフレームとアスペクト比のバーが表示されない不具合を修正しました。
- * ビューポートの設定が、エディタの設定ファイルにではなく、レイアウトの設定ファイルに保存される不具合を修正しました。
- * 通知が、適切なモニター作業領域に置かれない不具合を修正しました。
- * 出力ログからテキストをコピーすると、正しい順番で行がコピーされない不具合を修正しました。
- * 出力ログの自動スクロールを修正しました。
- * レベル ブラウザにおけるレベル ロックの変更を元に戻すまたはやり直しできなくなる不具合を修正しました。
- * スプラッシュ スクリーンでプロジェクト名を表示することによって、非直感的なプロジェクトの切り替えを修正しました。
- * サーベイの通知が、閉じるためにキャンセルした後でもすぐに消えない不具合を修正しました。
- * アクタが入っているレイヤーがビューポートで非表示になっている場合に、アクタが選択されている不具合を修正しました。
- * チュートリアル ウィンドウが音を鳴らさないように修正しました。
- * 仮想ジョイスティックにともなう白い四角のアーティファクトを、 **StartupDelay** 関数を追加することによって修正しました。
- * **FindObject** が呼び出された場合に保存の時に起きるクラッシュを修正しました。
- * ビューポート内におけるカーブ ハンドルの動きを修正して、反転しないようにしました。
- * アセットがブラシのエッジ/頂点にドロップする不具合を修正し、正しい場所に置かれるようにしました。
- * ランチャーからインストールされた場合に、SVN のバイナリがエディタに含まれない不具合を修正しました。
- * ツールチップが、メインメニューの Window (ウィンドウ) のオプションに表示されない不具合を修正しました。
- * フレームレートの設定値が、ゼロより小さく設定できる不具合を修正しました。
- * ScaleMeshes コンソール コマンドによる StaticMesh のスケーリングで、変更を加える前に既存の BuildScale が考慮されていない不具合を修正しました。
- * ブループリント チュートリアルを見た後でホームボタンがチュートリアル ウィンドウに表示されない不具合を修正しました。
- * 使用されていないスプラッシュ スクリーンを削除しました。
+* **General Editor**
+ * New:Improved the 3D viewport grid!
+ * Removed the grid dots for a cleaner view.The grid is now also scaled according to the grid snap settings.
+ * Perspective grid precision improved with thinner lines.
+ * Orthographic grid now has power of 10 major gridlines, soft fading transitions between levels, and colored axis lines.
+ * New:Added a **Preview Meshes** preference that allows customization of meshes displayed in viewports when holding the **Backslash** key.
+ * New:Icons for your project can now be assigned via Window/Project Settings.
+ * New:Startup Movies for your project can now be assigned via Window/Project Settings.
+ * New:Pressing the C key now creates comments in the Material and SoundCue editors.
+ * New:Added an option to invert middle mouse pan movement.**Invert Middle Mouse Pan** option in the Editor Preferences -> Viewports.
+ * New:Added search support in the Placement Browser.
+ * New:Holding **Ctrl** now prevents Vertex Painting from de/re-selecting Actors.
+ * New:Added support for **Ctrl + Backspace** and **Ctrl + Delete** to editable text boxes.
+ * New:Added **Enable Sound** option to Play-In-Editor settings.
+ * New:Save window now displays "Save Map" or "Save Asset" depending on what's being saved.
+ * New:Added ability to scale individual sub-curves to the curve editor.
+ * New:Content is now autosaved by default, and the notification shows you the number of packages that will be saved.
+ * New:Pressing **F4** to view details will now potentially spawn a new Details panel if all the currently open ones are locked.
+ * New:Browse button in the Content Browser context menu now works on unloaded objects.
+ * New:The Reset Layout feature has been moved to the Window menu from Editor Preferences.
+ * New:Property names can be set to display as they are in code (English) on the **Region & Language** editor preferences.
+ * New:You can now customize the selection colors in the Editor Preferences.
+ * New:You can now override the far view plane on a level editor viewport.
+ * New:Columns are now sortable in Save Content dialog.
+ * New:3D marquee select has been re-added with the same original keybinding (**Ctrl + Alt + Left Click Drag**).
+ * New:Added a message log link to diagnose load errors in-editor.
+ * New:If there is an active camera safe frame, the High Resolution Screenshot UI allows you to set the capture region to that safe region.
+ * New:Added prompt to restart the editor after you've enabled or disabled a plugin in the Plugins Editor.
+ * New:Improved how the zoom slider in the Texture Editor interacts with the **Fit to Viewport** setting.
+ * Improved decal scaling performance in the editor.
+ * Improved Asset Discovery time in the editor.
+ * Improved Arrow Component readability at a distance.
+ * Updated **Code View** functionality to now exist in a plugin.
+ * Please enable the **Code View** plugin to reactivate this functionality (**Window Menu -> Plugins -> Editor -> Code View**).
+ * Fixed **Region & Language** editor preferences to be more user friendly.Changing them should be less confusing or awkward.
+ * Fixed High Resolution Screenshot facility.
+ * Screenshot capture is now limited to the viewport from which the High Res Screenshot action was selected.
+ * Fixed Editor Preferences not listing all available languages and regions.
+ * Fixed **Select Actors using this Asset** not selecting Actors in other streaming sub-levels.
+ * Fixed selection problems in orthographic viewports due to mouse tests not extending from beyond the origin plane.
+ * Fixed Actors not remaining selected after copying Actors from multiple levels into the clipboard.
+ * Fixed global shortcut keys not functioning in floating windows in some cases
+ * Fixed safe frames and aspect ratio bars not displaying when locking a camera in Matinee when no camera is selected.
+ * Fixed viewport settings not being saved into the layout preferences file instead of the editor preferences files.
+ * Fixed notifications not being anchored to their appropriate monitor work area.
+ * Fixed copying text from the Output Log not copying lines in the correct order.
+ * Fixed Output Log auto scrolling.
+ * Fixed level locking changes in the level browser not being able to be undone or redone.
+ * Fixed unintuitive project switching by displaying the name of the project in the splash screen.
+ * Fixed survey notification not fading away instantly after clicking Cancel to close it.
+ * Fixed Actors being selected when the viewport is hiding the layer they are in.
+ * Fixed Tutorial window to no longer play sounds.
+ * Fixed the white square artifact with the Virtual Joystick by adding a **StartupDelay** function.
+ * Fixed crash on save when **FindObject** is called.
+ * Fixed curve handle movement in Viewports to no longer be inverted.
+ * Fixed dropping assets onto Brush edges/verts, it now leaves them at the correct location.
+ * Fixed SVN binaries not being included with the editor when installed from the launcher.
+ * Fixed tooltips not appearing in the Window options on the main menu.
+ * Fixed Frame rate settings being allowed to go below zero.
+ * Fixed StaticMesh scaling via "ScaleMeshes" console command not taking into account the existing BuildScale into consideration before making any changes.
+ * Fixed home button not appearing in the tutorial window appears after viewing Blueprint tutorials.
+ * Removed unused splash screens.
* **FBX**
- * New:**Import All** (すべてをインポート) ボタンを FBX インポート ダイアログに追加しました。このボタンを使用すると、一度の指示で、同じ FBX の設定値をともなった選択済みファイルがすべてインポートされます。
- * FBX のインポート オプション ウィンドウを整理しました。
-
+ * New:Added an **Import All** button to the FBX import dialog.This will import all selected files with the same FBX settings without being asked more than once
+ * Changed FBX Import Options Window for clarity:

- * スケルタル メッシュのインポート設定値の下にある **Import Meshes in Bone Hierarchy** のデフォルト設定値を変更し、デフォルトで有効となるようにしました。これによって、ボーン階層内の非スキンメッシュが、ボーンとしてではなく、実際のメッシュとしてインポートされることになります。
- * マテリアルとテクスチャが互いに同じ名前をもつ場合や、メッシュと同一の名前をもつ場合のインポートについて修正しました。この修正によってクラッシュが起きなくなり、名前が衝突した場合はそれぞれにユニークな名前が生成されます。
- * FBX からインポートされたマテリアルでオーバーラップするノードを修正しました。
-* **コンテンツ ブラウザ**
- * New:フォルダ上で右クリックして **Rename** (名前変更) を選択することによって、フォルダの名前を変更できるようになりました。
- * New:次のようなコンテンツ ブラウザの表示オプションを新たに追加しました。
- * **Show Only Assets in Selected Folders** (選択されたフォルダのアセットのみを表示) は、検索またはフィルタリング時に、現在選択されているフォルダに入っているアセットのみを表示します。
- * **Real-Time Thumbnails** (リアルタイム サムネイル) が有効になっている場合、アセットがロードされると、マテリアルのアニメーションが表示されます。
- * New:Diff ツールを使用している場合、 **ビヘイビア ツリー** のアセットへの変更が、インタラクティブに表示できるようになりました。
- * **Developer Folder** のオプションが無効化されている場合に、Developer フォルダが、コンテンツ ブラウザのブレッドクラムのトレールに表示される不具合を修正しました。
- * サムネイルのテクスチャのストリーミングを改善して、サムネイルのテクスチャがぼやけたグラフィックでしばしば描画される不具合を修正しました。
- * ウィンドウが開かれた時に、コンテンツ ブラウザの検索窓に直ちに入力できない不具合を修正しました。
- *move/copy (移動/コピー) を修正することによって、フォルダ グループの move/copy 1 回につき 1 度だけアセットの読み込みを求めるようにしました。
-* **マチネ**
- * New:マチネが、(BMP および AVI 形式の他に) PNG および JPEG 形式へのレンダリングに対応するようになりました。
- * New:カメラがマチネでロックされ、かつカメラ以外が選択されている場合に、セーフフレームとアスペクト比のバーが表示されない不具合を修正しました。
- * New:マチネが開いている状態で、ビューポートからアクタを削除しようとすると、通知されるようになりました。
- * カーブ エディタのビューポートの無効化を最適化しました。これによって、マチネのパフォーマンスが向上しました。
- * マチネの元に戻す/やり直しの機能が、カスケードなど他エディタと整合しない問題を修正しました。
- * ズーム モード時に、グラフのラベルおよびボタンとインタラクトできない不具合を修正しました。
- * **Slomo** のトラックが、再生速度を 10% 未満まで落とせない不具合を修正しました。
-* **ペルソナ:アニメーション エディタ**
- * New:ペルソナで複数のボーンを同時に選択、編集できるようになりました。
- * New:ペルソナに備わっているアセット ブラウザから直接アセットを保存できるようになりました。
- * New:アニメーション通知を選択して Delete キーを押すと、アニメーション通知を削除できるようになりました。
- * New:アセットを参照しているブループリントのノードから直接アセットを開くことができるようになりました。
- * New:* スケルトンから使用されていないボーンをユーザーが削除できるようにする機能をペルソナに追加しました。
- * New:* ペルソナのアセット ブラウザに、最近開いたファイルの履歴を、進む/戻るボタンの方式で表示できる機能を追加しました。
- * New:* ペルソナのアセット ブラウザにフィルタを追加しました。
- * スケルトンにおいて、デフォルトのプレビュー メッシュの設定を変更することによって、NULL メッシュの処理が開始されないようにしました。
- * ボーンへの変更を元に戻す/やり直しできない不具合を修正しました。
- * セッション間で保持されないペルソナの設定項目が存在する不具合を修正しました。
- * ペルソナのモード ウィジェットが、ダーティーな状態を表示しない不具合を修正しました。
- * ペルソナのスケルトン ツリーのコンテクスト メニューがクラッシュする問題を修正しました。
- * ペルソナでスライダーが動かされた時にプレビューのビューポートが描画されない不具合を修正しました。
-* **ソース コントロール**
- * New:P4 プラグインは、P4HOST マスカレード、パスワード ログイン、およびデポをストリーミングする接続をサポートするようになりました。
- * New:P4 はプロジェクトにマッピングしないワークスペースに接続できなくなりました (SVN の作業中のコピーに対しても同様)。
- * New:チェックインに成功したときのトースト ポップアップを追加しました。
- Perforce のソース コントロールのプラグインが、Unicode のワークスペース名とユーザー名をサポートしていない不具合を修正しました。
-* **マテリアル エディタ**
- * New:**左 + 右のマウスボタン** を押したままドラッグすることで、ズームインとズームアウトができるようになりました。
- * New:マテリアル属性は Feature Level と Quality スイッチに接続できるようになりました。
- * New:マテリアル エディタでピンを引き出す場合に、コンテキストに応じた機能を追加しました。
- * New:Material Details にあるライティング固有のオプションは Unlit モードがアクティブな場合、グレイアウトされるようになりました。
- * New:マテリアルの統計が独自のタブに表示されるように変更しました。
- * New:マテリアル エディタに New Mobile Stats Icon (新しいモバイル統計アイコン) を追加しました。
- * New:マテリアル式ノードに対するタイトルの色付けを追加しました。
- * New:精度を上げるために、Panner マテリアル式に時間の小数部分を使用するオプションを追加しました。
- * 欠落していたデフォルトのマテリアル値を公開し、不要な入力に対するツールチップを追加しました。
- * マテリアルのアセット名がマテリアル エディタのタイトル タブに表示されないという問題を修正しました。
- * マテリアル関数から、任意のマテリアルまたはマテリアルを使用する関数に変更が伝搬されることを修正しました。
-* **ジオメトリの編集**
- * New:ジオメトリ ブラシは、中心となるパラメータが変更されてもマテリアル情報を維持しようとします。
- * ポリゴン数が同じままの変更は、完全にサポートされています。
- * ポリゴン数が異なる変更は、メッシュ全体で単一のマテリアルのみサポートされています。
- * ジオメトリ ブラシをドラッグし、シーン アウトライナーにドロップする操作が適切に機能しないという不具合を修正しました。
- * 様々なジオメトリ編集モードのコントロールをスクロールできないという不具合を修正しました。
- * ジオメトリ編集モードがアクティブな状態で、3D シーンでレガシーのビルダ ブラシが見えるという問題を修正しました。
- * ブラシを作成するように Lathe ツールを修正しました。
- * 機能しないため、Volumetric と Sheet のブラシ形状を削除しました。
-* **ランドスケープとフォーリッジ (葉)**
- * New:ランドスケープ スプラインは、スプラインのメッシュ用に、**Max Draw Distance** (最大描画距離) 設定を持つようになりました。
- * New:ビューポートに新しいランドスケープ LOD (Level of Detail) プレビュー設定を追加しました。
- * New:コリジョン設定用の新しいコントロールをフォーリッジ ツールに追加しました。
- * New:Change Component Size ツールに **Resample** (再サンプリング) オプションを追加しました。
- * New:ランドスケープ スプラインのスプライトが大きくなりすぎないように、スプラインの幅に自動的にスケーリングします。
- * New:コンポーネントの選択が何もアクティブになっていない場合に、ランドスケープの **move-to-level** (レベルへ移動) ツールが、カーソルの下にあるコンポーネントで機能するようにしました。
- * ランドスケープのビジュアライザ メニューを更新しました。
-* **メッシュのペイントツール**
- * New:ペイント ブラシの半径がエディタの preferences (環境設定) で保存されるようになりました。
- * デフォルトのペイント ブラシの半径を 128 に更新しました。
-* **データ テーブル エディタ**
- * New:読みやすくするために、偶数行と奇数行は異なる背景色になりました。
- * New:データ テーブル エディタで検索機能が実装されました。
-* **シーンアウトライナー**
- * New:シーン アウトライナーの右クリックのコンテキスト メニューでアクタやフォルダを管理するためのオプションが増えました。
- * シーン アウトライナーにあるフォルダでの元に戻す / やり直すの機能を修正しました。
-* **ワールド ブラウザ**
- * New:World Browser -map=PersistentMapName?worldcomposition によって作成されたワールドに対するクッキングを処理するためのオプションを追加しました。
- * New:タイルの距離のストリーミングのロード/アンロードの要求間の時間閾値を追加しました。以下のコンフィギュレーション ファイルで変更できます。**TilesStreamingTimeThreshold.**
- * New:レベルのタイルに対する位置スナッピングを追加しました。 **Ctrl + 左クリック** してドラッグします。
- * レベルのタイルのワールド ブラウザの非同期読み込みを、ブロッキング ロードと置き換え、"long operation" メッセージを追加しました。
- * **Always Loaded** レベル タイプを削除しました。
-* **デバイス プロファイル エディタ**
- * New:デバイス プロファイル エディタは、以下から常に利用できるようになりました。Window Menu -> Device Profile Editor
- * デバイス プロファイル エディタの UI を主要な用途を反映するレイアウトになるように更新しました。
- * CVar の追加、削除、ペアレンティングがプロファイルではるかに明確になるように更新されました。
-* **翻訳エディタ**
- * New:翻訳エディタは、ローカリゼーション ファイルがどのプロジェクト/言語が翻訳可能であるかを決定するためにエンジン、エディタ、現在読み込まれているプロジェクトのディレクトリを検索するようになりました。
- * New:データをファイルに書き込む、ユーザーが保存を忘れたことによる、またはエディタのクラッシュによるデータ損失を防ぐために、プロパティの変更によってトリガーされるイベントを翻訳データ オブジェクトに追加しました。
- * 再度ソース コントロールから同期する代わりに、可能な場合、古いマニフェストのローカルでキャッシュされているバージョンを読み出すように修正しました。
-#### ブループリント
+ * Changed the default setting of **Import Meshes in Bone Hierarchy**, under the Skeletal Mesh import settings, to be enabled by default.This will result in any non-skinned meshes in the bone hierarchy being imported as actual meshes and not as bones.
+ * Fixed importing with Materials and Textures that are the same name as each other or a mesh.This will no longer cause a crash, instead unique names will be generated for each conflict.
+ * Fixed overlapping nodes on Materials imported from FBX.
+* **Content Browser**
+ * New:You can now rename folders by right clicking on them and selecting **Rename**.
+ * New:Added new Content Browser view options:
+ * **Show Only Assets in Selected Folders** will only show assets in the currently selected folder when searching or filtering.
+ * With **Real-Time Thumbnails** enabled, any loaded asset will show material animation.
+ * New:Changes to **Behavior Tree** assets can now be displayed interactively while using the Diff Tool.
+ * Fixed the Developer Folder appearing in the Content Browsers breadcrumb trail if the **Developer Folder** option is disabled.
+ * Fixed Textures in thumbnails often drawing with blurry graphics by improving streaming for thumbnail Textures.
+ * Fixed not being able to type immediately into Content Browser search when window is summoned.
+ * Fixed move/copy to only prompt for asset load once per folder group move/copy.
+* **Matinee**
+ * New:Matinee now supports rendering to PNG and JPEG formats (along with BMP and AVI).
+ * New:Safe frames and aspect ratio bars can now be displayed when locking a camera and in Matinee when a non-camera is selected.
+ * New:Notification now occurs when attempting to delete an Actor from the Viewport while Matinee is open.
+ * Optimized invalidation of curve editor viewport, which improves Matinee's performance.
+ * Fixed inconsistencies with how Undo/Redo works in Matinee compared to other editors such as Cascade.
+ * Fixed not being able to interact with graph labels and buttons while in Zoom Mode.
+ * Fixed **Slomo** tracks not being able to slow the play rate down below 10%.
+* **Persona:Animation Editor**
+ * New:You can now select and edit multiple bones at the same time in Persona.
+ * New:You can now save assets straight from Persona's built-in Asset Browser.
+ * New:Animation Notifies can now be deleted by selecting them and pressing the Delete key.
+ * New:You can now open assets directly from Blueprint nodes that reference them.
+ * New:Added function to Persona to allow the user to remove unused bones from a skeleton.
+ * New:Added recently opened file history in the form of Forward and Back browser buttons in the Asset Browser in Persona.
+ * New:Added filters to Asset Browser in Persona.
+ * Changed the setting of the default preview mesh on skeletons to make sure they never start will a NULL mesh.
+ * Fixed not being able to undo and redo changes to bones.
+ * Fixed some Persona settings not being remembered between sessions.
+ * Fixed Persona mode widgets not indicating dirty state.
+ * Fixed a crash in Persona's skeleton tree context menu.
+ * Fixed the preview viewports not drawing when dragging a slider in Persona.
+* **Source Control**
+ * New:P4 plugin now supports P4HOST masquerading, password login and connection to stream depots.
+ * New:P4 can no longer connect to workspaces that do not map to your project (and similarly for SVN working copies)
+ * New:Added toast popup when successfully checking in.
+ * Fixed Perforce source control plugin not supporting Unicode workspace names and user names.
+* **Material Editor**
+ * New:You can now zoom in and out by holding **Left + Right Mouse Buttons** and dragging.
+ * New:Material Attributes can now be connected to Feature Level and Quality switches.
+ * New:Added context sensitivity when dragging off pins in the Material Editor.
+ * New:Lighting-specific options in the Material Details are now grayed out when Unlit mode is active.
+ * New:Changed Material statistics to be displayed in their own tab.
+ * New:Added New Mobile Stats Icon for Material Editor.
+ * New:Added title coloring for Material Expression nodes.
+ * New:Added option to Panner Material Expression to use fractional component of the time calculation to improve accuracy.
+ * Exposed default material values that were missing and added tooltips to non-required inputs.
+ * Fixed Material asset name not being displayed in the Material Editor Title tab.
+ * Fixed propagating changes from material functions to any materials or functions using them.
+* **Geometry Editing**
+ * New:Geometry brushes will now attempt to keep the material information even when their core parameters are altered.
+ * Changes where the number of polygons remain the same are completely supported.
+ * Changes where the number of polygons differ only support a single material across the whole mesh.
+ * Fixed dragging and dropping Geometry Brushes into the Scene Outliner not working correctly.
+ * Fixed not being able to scroll through the various Geometry Editing mode controls.
+ * Fixed legacy builder brush visible in the 3D scene while Geometry Editing mode is active.
+ * Fixed the Lathe tool to create a brush.
+ * Removed Volumetric and Sheet brush shapes as they were non-functional.
+* **Landscape and Foliage**
+ * New:Landscape splines now have a **Max Draw Distance** setting for meshes on the spline.
+ * New:Added new Landscape LOD preview settings to viewports.
+ * New:New controls for collision settings were added to Foliage tool.
+ * New:Added **Resample** option for Change Component Size tool.
+ * New:The Landscape Spline sprite automatically scales with the width of the spline to prevent them from getting too big.
+ * New:The Landscape **move-to-level** tool will now operate on the component under the cursor when there is no component selection active.
+ * Updated the order of the Landscape Visualizers menu.
+* **Mesh Paint Tool**
+ * New:Paint brush radius is now saved with your editor preferences.
+ * Updated the default paint brush radius to 128.
+* **Data Table Editor**
+ * New:To aid in readability, even and odd rows now have different background colors.
+ * New:Search has been implemented in the Data Table Editor.
+* **Scene Outliner**
+ * New:More options for managing Actors and folders in the Scene Outliner right click context menu.
+ * Fixed Undo/redo with folders in the Scene Outliner.
+* **World Browser**
+ * New:Added option to handle cooking for worlds created by World Browser -map=PersistentMapName?worldcomposition.
+ * New:Added time threshold between tile distance streaming load/unload requests.Can be changed in configuration files:**TilesStreamingTimeThreshold**.
+ * New:Added position snapping for level tiles, use **Ctrl+Left Click** Drag.
+ * Replaced World Browser async loading of level tiles with a blocking load and added "long operation" message.
+ * Removed the **Always Loaded** level type.
+* **Device Profile Editor**
+ * New:Device Profile Editor is now always available through the Window Menu -> Device Profile Editor
+ * Updated the device profile editor UI with a layout which reflects its primary usage.
+ * Updated CVar addtion, removal, and parenting to be a lot more evident for a profile.
+* **Translation Editor**
+ * New:Translation Editor now searches the Engine, Editor, and the currently loaded project's directories for localization files to determine which projects/languages can be translated.
+ * New:Added event triggered by a property change to the translation data object to write the data to file, to prevent data loss due to user forgetting to save, or the editor crashing.
+ * Fixed Translation Editor to read local cached versions of old manifests when possible instead of syncing them from Source Control again.
-* New:ブループリント エディタ内のコンポーネント モードでコンポーネントのアタッチ / デタッチの操作に対する元に戻す / やり直しの機能を追加しました。
-* New:ブループリント グラフでグラフ ノードの再配置に対して元に戻す / やり直しの機能を追加しました。
-* New:ブループリント エディタ内のコンポーネント モードでコンポーネントの複製に対して適切な元に戻す / やり直しの機能を追加しました。
-* New:コンポーネント モードで 2 つの異なるブループリント エディタのウィンドウ間でのコンポーネントのドラッグ機能を追加しました。
-* New:ブループリント エディタ内のコンポーネント モードで複数のコンポーネントを選択した状態でのドラッグ & ドロップ機能を追加しました。
-* New:ユーザーが名前変更可能なノードを名前変更する機能を持つブループリント エディタの詳細ビューにグラフ ノード セクションを追加しました。
-* New:あるインターフェイスから別のインターフェイスにキャストするための機能をブループリントのキャスト ノードに追加しました。
-* New:**Float * (LinearColor)** ブループリント ノードを使用して、浮動小数値によって LinearColors を乗算処理できるようになりました。
-* New:文字列を簡単に分割するために新しい **ParseIntoArray** 関数を追加しました。
-* New:変数 Get/Set ノードは、充実したツールチップを表示できるようになりました。ツールチップを表示するには、ノード上にマウスを合わせ、Ctrl+Alt を押したままにします。
-* New:**Alt + 右クリック** は、ブループリント グラフをズームする代替方法として使用できるようになりました。
-* New:Debug Object ドロップダウンに、メニュー拡張性のあるフックを追加しました。
-* New:ノードが選択されている場合、[詳細] パネルからグラフ ノードの名前変更ができるようになりました。
-* New:ブループリント インターフェイスを検索するためのサポートを追加しました。
-* New:Blueprint Interface の関数を名前変更すると、実装しているBlueprints にある関数も適切に名前変更されるようになりました。
-* New:ブループリント内からモンタージュの **PlayRate** を設定するための機能を追加しました。
-* New:**OnProjectileBounce** に Impact Velocity パラメータを追加し、ブループリントでバウンス べロシティ ベクターのオーバーライドができるようにしました。
-* New:スライダーの UI 範囲 ("slider UI range") に合わせるために、ブループリントの数値の変数に値 (クランプ) 範囲 ("value (clamp) range") の公開を追加しました。
-* ブループリントから特定の呼び出しサイトでの複数の保留中の潜在的なアクションを可能にする更新を行いました。
-* ブループリント エディタのコンボボタン メニューのスケーリングを修正しました。
-* Blueprint Components モードのビューポートにおける **リアルタイム** レンダリングを修正しました。ブループリント エディタ内でコンポーネント モードが非アクティブな場合、リアルタイム レンダリングは無効になります。
-パーティクル システム ヘルパーを含むブループリント アクタ上で作業するための **Toggle Particle System Helpers** オプションを修正しました。
-* 絶対的および相対的な変形設定の間で切り替える際に、ブループリントが修正されたことを示すフラグが適切に付けられるようになりました。
-* グラフ上でノードを移動後に元に戻す / やり直しができないという問題を修正しました。
-* コンポーネント モードでコンポーネントを平行移動している間のグリッド スナップを修正しました。
-* スプライト コンポーネント ビジュアライザが、エディタでシミュレーション (Simulate in Editor) またはエディタでプレイ (Play in Editor) を行っている間にブループリント エディタのプレビューでデフォルトの「アクタ」アイコンに切り替わるという問題を修正しました。
-* Blueprint Interface 関数の名前変更を修正し、実装している Blueprints で適切に名前変更されるようになりました。
+#### Blueprints
-#### レンダリング
+* New:Added undo/redo support for component attach/detach operations in Components mode within the Blueprint editor.
+* New:Added undo/redo support for repositioning graph nodes in a Blueprint graph.
+* New:Added proper undo/redo support for duplicating components in Components mode within the Blueprint editor.
+* New:Added support for dragging components between 2 different Blueprint editor windows in Components mode.
+* New:Added support for drag-and-drop with multiple components selected in Components mode within the Blueprint editor.
+* New:Added a graph node section in the details view of the Blueprint editor that provides the ability to rename nodes that the user can rename.
+* New:Added ability for Blueprint cast nodes to cast from one interface to another.
+* New:You can now multiply LinearColors by floats using a **Float * (LinearColor)** Blueprint node.
+* New:Added a new **ParseIntoArray** function for easily splitting up strings.
+* New:Variable Get/Set nodes can now display Rich Tooltips.To view them, mouse over a node and hold Ctrl+Alt.
+* New:**Alt + Right Click** can now be used as an alternative to zoom Blueprint graphs.
+* New:Added menu extensibility hooks for additional items in the Debug Object drop down.
+* New:Graph nodes can now be renamed via the details panel when a node is selected
+* New:Added support for searching Blueprint Interfaces.
+* New:Renaming Blueprint Interface's functions now properly renames the functions in implementing Blueprints.
+* New:Added the Ability to set the **PlayRate** of a Montage from within Blueprint.
+* New:Added Impact Velocity parameter to **OnProjectileBounce**, to allow blueprints to override bounce velocity vector.
+* New:Added "value (clamp) range" exposure to numeric variables in Blueprints to go along with "slider UI range."
+* Updates allowing multiple pending latent actions at a particular call site from a Blueprint.
+* Fixed Combo button menu scaling in the Blueprint Editor.
+* Fixed **Realtime** rendering in the Blueprint Components mode Viewport.It is now disabled when Components mode is deactivated within the Blueprint editor.
+* Fixed the **Toggle Particle System Helpers** option to work on Blueprint Actors that contain Particle System Helpers.
+* Fixed Blueprints to be properly flagged as being modified when toggling between absolute and relative transform settings.
+* Fixed not being able to undo/redo after moving nodes around on the graph.
+* Fixed Grid Snap while translating components in Components Mode.
+* Fixed Sprite Component visualizers switching to the default "Actor" icon in the Blueprint editor preview during Play in Editor or Simulate in Editor.
+* Fixed renaming Blueprint Interface functions, they will now properly rename in implementing Blueprints.
-* **一般**
- * New:DBuffer デカール エフェクト (マテリアルのデカール反応) の一部を無効にする機能を追加しました。
- * カラー、法線、ラフネスをマスクすることができます。
- * これにより、テクスチャ サンプリング ユニットを解放し、パフォーマンスを向上させ、制御を強化します。
- * New:グラフィックス アダプタ (r.GraphicsAdapter) を選択、またはこれをシステムに自動的に行わせる機能を追加しました。
- * デフォルトでは一体型ではないグラフィックカードが優先されます (現在、アダプタ名で "Intel" をチェックしています)。
- * スカイライトの改善点:
- * New:可動オブジェクトが、静的シャドウキャスターからスカイ シャドウイングを受け取ります。
- * TLM_Surface マテリアルがスカイの反射を適切にレンダリングするように修正しました。
- * 光沢のあるスクリーン空間の反射を改善し、ノイズを減らすようにしました。
- * レンダー ターゲットを D3D11 RHI でより低いミップ レベルで設定する場合に、ビューポートのディメンションが不正確に計算されうるという状況を修正しました。
- * D3D テクスチャ オブジェクトの不適切なキャストが行われうるという問題を修正しました。
+#### Rendering
+
+* **General**
+ * New:Added ability to disable parts of the DBuffer decals effect (Material Decal Response).
+ * You can mask color, normal, roughness.
+ * This can free up texture sampler units, improve performance, and gives more control.
+ * New:Added feature to choose graphics adapter (r.GraphicsAdapter) or let the system do this automatically
+ * By default, this favors non-integrated graphics card (at the moment we check for "Intel" in the adapter name).
+ * Improvements to Sky Lights:
+ * New:Movable objects receive sky shadowing from static shadow casters.
+ * Fixed TLM_Surface materials to render sky reflections properly.
+ * Improved glossy screen space reflections to reduce noise.
+ * Fixed situation that could cause incorrect viewport dimensions to be calculated when setting render target to lower mip levels with the D3D11 RHI.
+ * Fixed some possible incorrect casting of D3D texture objects.
* **Android**
- * New:反射キャプチャ データは、現在マップ パッケージに格納されています。
- * これにより、ES2 に対するクッキングは、常に再保存されているマップに対して有効な反射を持つようになります。
- * モーション ブラー、UIBlur、およびスクリーン空間の環境オクルージョンを最適化しました。
- * ゲームスレッド、レンダリング スレッド、イベント スレッドに対して affinity マスクを設定することで CPU のパフォーマンスを向上させました。
- * バージョン 53.0 以降のドライバを持つ Adreno 330- ベースのデバイス上でDisjointTimerQueries をオンにすることで GPU の処理を向上させました。
- * デバイス上で **STAT UNIT** の GPU フレームタイム測定を有効にするために、CVar の **r.DisjointTimerQueries** を更新しました。
+ * New:Reflection capture data is now stored in the map package.
+ * This allows cooking for ES2 to always have valid reflections for maps that have been resaved.
+ * Optimized motion blur, UIBlur, and screenspace ambient occlusion.
+ * Improved CPU performance by setting affinity mask for the gamethread, renderthread and eventthread.
+ * Improved GPU performance by turning on DisjointTimerQueries on Adreno 330-based devices with a driver later than version 53.0.
+ * Updated the CVar **r.DisjointTimerQueries** to enable GPU frametime measurement in **STAT UNIT** on device.
-#### ゲームプレイとフレームワーク
+#### Gameplay and Framework
-* New:Project Settings (プロジェクト設定) の [Input] セクションで、マウスがタッチビヘイビアをシミュレーションする旨を示すことができます。
-* つまり、PC でプレイされる簡単なタッチゲームに対してイベントを 1 セットだけマッピングすればよいことになります。
-* New:プロジェクト設定に Audio Settings セクションを追加しました。ここで、Default Sound Class と Default Base Sound Mix を指定できます。
-* New:プロジェクト設定の Maps & Modes セクションに分割スクリーン オプションを追加しました。
-* New:ビジビリティ テストを用いて、いくつかの重要でないパスポイントをスキップし、コンポーネントのパスを簡素化しました。デフォルトでは無効になっています。
-* New:ランドスケープのコリジョン データのクッキングを追加しました。クッキングされたランドスケープは、クッキングされたデータのバイナリ ストリームからコリジョン オブジェクトを作成し、これにより、レベルのストリーミング パフォーマンスを高めます。
-* New:Text Render Actor は、静的頂点とインデックス バッファを生成し、キャッシュするようになりました。
-* モーフ ターゲットがモーフィングした法線を計算する方法を改善しました。
-* 互換性がないためにモジュールの読み込みに失敗した場合のフィードバックの欠如を修正しました。エラーメッセージが表示されるようになりました。
-* クッキング中にエディタのみのスプライトが読み込まれることを修正しました。
-* 移動コンポーネントがアナログ入力を正確に処理するように修正しました。
-* マテリアル インデックスと LOD マッピング インデックスのクラッシュの問題を修正しました。
-* 非同期パッケージの読み込みでは、プリロードする前にポストロードできなくなるように修正しました。
-* デバイス プロファイル例の選択プラグインのUE4 を起動する要件を修正しました。
-* いつも読み込まれている (Always Loaded ) レベルが、デフォルトで「可視状態 (Should be Visible)」としてフラグ付けされるように修正しました。
+* New:In the Input section of the Project Settings you can now indicate that the mouse should simulate touch behavior.
+* This means only one set of events needs to be mapped for simple touch games being played on PC.
+* New:Added Audio Settings section of Project Settings in which the Default Sound Class and Default Base Sound Mix can be specified.
+* New:Splitscreen options added to Maps & Modes section of Project Settings.
+* New:Added path simplification to path following component using visibility tests, to skip some irrelevant path points.It is disabled by default.
+* New:Added landscape collision data cooking.Cooked landscapes will now create collision objects from a binary stream of cooked data, which improves level streaming performance.
+* New:Text Render Actors now generate and cache static vertex and index buffers.
+* Improved the way Morph Targets calculated their morphed normal.
+* Fixed the lack of feedback if a module fails to load due to a lack of compatibility.An error message will now be displayed.
+* Fixed editor-only sprites being loaded while cooking.
+* Fixed movement components to correctly handle analog input.
+* Fixed a crash in material indices and LOD mapping indices.
+* Fixed Async package loading no longer allows objects to be post-loaded before they are pre-loaded.
+* Fixed the example device profile selection plugin requirement to launch UE4.
+* Fixed Always Loaded levels to be flagged as **Should be Visible** by default.
-#### ネットワーキング
+#### Networking
-* **一般**
- * New:Character Movement Componen モードがレプリケートされるようになりました。
- * New:**Launch Character** は、ローカル外で制御されるキャラクターに対してクライアント側でシミュレートできるようになりました。
- * New:**Only Relevant to Owner** の設定が、ブループリントで利用できるようになりました。
- * リモートのネットワークのクライアントとシミュレートされたプロキシに対する移動するプラットフォーム上のキャラクタの動きを改善しました。
+* **General**
+ * New:Character Movement Component movement mode is now replicated.
+ * New:**Launch Character** can now be simulated client side for non-locally controlled characters.
+ * New:The setting **Only Relevant to Owner** is now available to Blueprints.
+ * Improved character movement on moving platforms for remote network clients and for simulated proxies.
* **PlayStation 4**
- * ソケットのサブシステムが、UDPP2P ソケットをサポートしています。
+ * Socket subsystem support for UDPP2P sockets.
-#### アニメーション
+#### Animation
-* New:参照ポーズ スケーリングのサポートが追加されました。
-分岐点をオーバーラップしないように **AnimMontages** を修正しました。
+* New:Added support for reference pose scale.
+* Fixed **AnimMontages** to no longer allow branch points to overlap.
-#### 物理
+#### Physics
-* New:PhysX は 3.3.1 に、APEX は 1.3.1 にアップグレードされました。
-* 物理データを再クックする必要があるケースがあるかもしれません。
-* このアップグレードでは、いくつかの物理関連のバグを修正します。詳しい情報については、NVIDIA のリリースノートをご覧ください。
-* New:BodyInstance の最高角速度が、コードとブループリントで公開されました。
-* New:ポーンは被破壊メッシュと衝突するようになりました。大きなチャンクと小さなチャンクとでは、ポーンと異なるインタラクションを行うように設定できます。
-* New:ラグドールと物理アセットで破壊可能ジョイントを利用できるようになりました。
-* New:ラグドールと物理アセットでクロス (布地) をサポートします。
-* ボディ質量を暗黙的に使用するように、柔体 (soft) の物理コンストレイントを更新しました。
-* Async 物理シーンがデフォルトで無効になるように更新しました。
-* この機能は幾分高度であり、多くのメモリを使用します。そのため、デフォルトではオフになっており、以下の順序に従い、変更できます。 **Edit Menu -> Project Settings -> Physics -> Simulation ** category
-* Async シーンが無効になっていれば、アクタで Enable Async フラグがあってもすべてのアクタは通常のシーンに配置されます。
-* デフォルトで、プレイヤーのポーンが Async シーンでインタラクションしないようになりました。
-* オーバーラップ イベント関連のバグを修正しました。オーバーラップ フラグに関する現在の挙動が、間違った挙動に依存する古いコンテンツでは動かない可能性があります。
-* 2 つのオブジェクト間のコリジョンは、Ignore、Overlap、または Blocking に設定することができます。
-* 2 つのオブジェクトがオーバーラップし、その **両方** で **Generate Overlap Events** フラグが true に設定されているとオーバーラップ イベントが発生します。
-* コードのバグによって、オーバーラップしているオブジェクトのひとつでフラグが false に設定されていても、ある状況でオーバーラップがトリガーされるようになっています。
-* つまり、以前発行していたオーバーラップ イベントは、フラグ付けが不適切なために停止する可能性があります。
-* コリジョンがオーバーラップとしてマーク付けされている場合に限り、Overlap イベントが発行するように修正しました。
-* コリジョンが Blocking としてマークされても、場合によっては Overlap イベントが発行するというバグがありました。
-* Hit Events は、**Simulation Generates Hit Events** を有効にすることによって、両方のオブジェクトをオプトインする必要性があるように修正しました。
+* New:PhysX and APEX have been upgraded to 3.3.1 and 1.3.1.
+* In some cases it may be necessary to recook physics data.
+* This upgrade fixes some physics related bugs.See NVIDIA release notes for more info.
+* New:Maximum angular velocity of a BodyInstance has been exposed in code and blueprints.
+* New:Pawns will now collide with destructible mesh.Large and small chunks can be set to get different interaction with pawn.
+* New:Breakable joints are now available for ragdolls and physics assets.
+* New:Support for cloth on ragdolls and physics assets.
+* Updated soft physics constraints to use body mass implicitly.
+* Updated the Async physics scene to be disabled by default.
+* This feature is somewhat advanced and uses more memory.As such, it has been turned off by default and can be changed in the **Edit Menu -> Project Settings -> Physics -> Simulation** category.
+* If Async scene is disabled, all Actors are placed in the regular scene regardless of the **Enable Async** flag on the Actor.
+* Updated the player Pawn to no longer interact with the Async scene by default.
+* Fixed overlap event related bugs.Correct behavior related to overlap flags may break old content relying on bad behavior.
+* A collision between two objects can be set to Ignore, Overlap, or Blocking.
+* An overlap event will occur if two objects Overlap and **both** have the **Generate Overlap Events** flag set to true.
+* A bug in the code made it so that in certain situations an overlap would trigger even if one of the overlapping objects had the flag set to false.
+* This means overlap events that were previously firing could now stop due to improper flagging.
+* Fixed Overlap events to only fire when collision is marked as overlap.
+* There was a bug where in some cases an overlap event would fire even if a collision was marked as Blocking.
+* Fixed Hit Events now require both objects to opt in by enabling **Simulation Generates Hit Events**.
-#### オーディオ
+#### Audio
-* New:PIE 設定に **Enable Sound** オプションを追加しました。
-* New:**Add Input** ボタンを適切な Sound Nodes に追加しました。
-* 作成 / 修正後に DialogueWaves をただちに再生できるように改善しました。
-* [Preselect at Level Load] 設定が使用されている場合、PIE での Random Sound ノードの選択を制限しました。
+* New:Added **Enable Sound** option to PIE settings.
+* New:Added **Add Input** button to appropriate Sound Nodes.
+* Improved DialogueWaves so they can be played immediately after creation/modification.
+* Limited the Random Sound node choices in Play in Editor if **Preselect at Level Load** setting is used.
-#### コア
+#### Core
-* New:UnrealBuildTool は、XML コンフィギュレーション ファイルを使用して設定できるようになりました!
-* このツールは、以下の 2 箇所で BuildConfiguration.xml ファイルを探します(Engine/Saved/UnrealBuildTool と My Documnets/Unreal Engine/UnrealBuildTool)。1 つめは、ブランチ / エンジンの構成に対して、2 つめはパーソナル設定に対して使用します。環境変数設定は、こうした値が設定されるとオーバーライドされることがわかるでしょう。
-* この記法は、以下に掲載されています。\Engine\Programs\UnrealBuildTool\BuildConfiguration.xml
-* New:クロス コンパイルする Linux クライアントに対するサポートが追加されました。
-* New:すべてのプラットフォームのメモリとアロケータ メモリの統計を、統計システムで利用できるようになりました。
-* New:統計システムにスレッドとスレッド グループのメタデータを追加しました。
-* New:統計ファイルの保存形式を改善しました (まだ完全には利用されていません) 。
-* New:[Windows] シェルの統合では、エンジンの複数バージョンを並べることをサポートしています。
-* エンジンのインストールを追加する、またはシェル拡張やファイルの関連付けのセットアップを初めて行うには、各 Engine\Binaries\Win64 ディレクトリから UnrealVersionSelector を実行します。
-* 各 .uproject ファイルは、別のエンジンのインストールで開くように設定することができます。
-* New:-UTF8Output コマンドライン引数は、エンジンを使用する任意のプログラムに渡して stdout を UTF-8 モードに強制することができます。
-* 記録している Unicode 文字列にクエスチョンマークがある場合に、これを使用します。
-* Visual Studio アクセサ (特に Express に対する) を改善しました。
-* Visual studio 2010 だけが存在しない場合に、Visual Studio のバージョンが何もインストールされていないという問題について InstallVisualizers.bat を修正しました 。
-* Win32 設定でエディタをビルドしようとすると UnrealBuildTool で早期にエラーを発生するように修正しました。
-* 国際管理化ライブラリのサイズを修正しました。
-* 国際管理化は、静的ライブラリからではなく、バイナリファイルからのデータを読み込むようになりました。
+* New:UnrealBuildTool can now be configured using an XML configuration file!
+* It looks for the BuildConfiguration.xml file in two possible locations (Engine/Saved/UnrealBuildTool and My Documnets/Unreal Engine/UnrealBuildTool).The first one should be used for branch/engine configurations, while the second one is for personal settings.Notice that environmental variables settings will be overridden by those values if set.
+* The syntax is described in \Engine\Programs\UnrealBuildTool\BuildConfiguration.xml.
+* New:Added support for cross-compiling Linux client.
+* New:All platform memory and allocator memory statistics are now available through the stats system.
+* New:Added metadata for threads and thread group for the stats system.
+* New:Improved save format of the stats files (not fully utilized yet).
+* New:[Windows] Shell integration now supports multiple engine versions side by side.
+* To add an engine installation, or to set up shell extensions and file associations for the first time, run UnrealVersionSelector from each Engine\Binaries\Win64 directory.
+* Each .uproject file can be configured to open with a different engine installation.
+* New:The -UTF8Output command line argument can be passed to any program using the engine to force stdout into UTF-8 mode.
+* Use this if you are getting question marks in your Unicode strings being logged.
+* Improvements to the Visual Studio accessor (particularly for Express).
+* Fixed InstallVisualizers.bat complaining about no version of Visual Studio installed, when only Visual studio 2010 is missing.
+* Fixed UnrealBuildTool to raise an error early about attempting to build the Editor in a Win32 configuration.
+* Fixed the size of the internationalization libraries.
+* Internationalization now loads its data from a binary file rather than from a static library.
#### プラットフォーム
* Android
-* アンドロイドのデバイス検知を改善しました。スレッド化され全般的に効率が高まっています。
-* 接続されたアンドロイド デバイスがサポートしていないテクスチャ フォーマットが Launch に表示される問題を解決しました。接続されたアンドロイド デバイスがサポートしているテクスチャ フォーマットがだけを Launch に表示されるようになりました。
+* Improved Android device detection.It is now threaded and more efficient in general.
+* Fixed **Launch** showing texture formats not supported by the connected Android devices.It will now only display texture formats that are supported by the connected Android devices.
* Mac
-* New:Mac でパッケージ化すると、独立したアプリケーション バンドルが作成されます。
-* New:現在、Mac UE4 は Epic のクラッシュ レポータを使用しています。
-* New:エンジンに同梱されているものの代わりに Mac にインストールされている Mono を使用する機能を追加しました。
-* New:Mac OS X に同梱されている dSYM デバッグ記号を生成するためのUBT のサポートを追加しました。
-* New:Mac プラットフォーム用のテキスト入力方法システムを実装しました。
- * これは、 Mac OS X 上のネイティブの Cocoa InputMethod サービスを使用し、異なる入力方法をサポートします。
-* Xcode プロジェクトを簡素化し、Xcode でのコードのインデックス付けを改善しました。
+* New:Packaging on Mac now creates a self-contained app bundle.
+* New:Mac UE4 now uses our crash reporter.
+* New:Added ability to use Mono installed on Mac instead of the one bundled with the engine.
+* New:Added support to UBT for generating dSYM debugging symbol bundles on Mac OS X.
+* New:Implemented text input method system for Mac platform.
+ * This uses the native Cocoa InputMethod services on Mac OS X to support the different input methods.
+* Simplified Xcode project and improved code indexing in Xcode.
* iOS
-* New:Retina ディスプレイの iPad mini に対してデバイスの列挙型変数を追加しました。
-* New:Game Center 成績表をアプリ内で表示する実験的サポートを追加しました。(EXPERIMENTAL_ShowGameCenterLeaderboard)。
-* New:Windows のワークフローのビルド経由で iOS ビルドをシッピングするために **-compress=best** コマンドラインを追加しました。
-* iAd サポートのために様々な改善とバグ修正を行いました。
-* iOS ゲームセンターでのスレッディング問題を修正しました。
+* New:Added a device enumeration for iPad mini with retina display.
+* New:Added experimental support for showing the Game Center leaderboard in-app (EXPERIMENTAL_ShowGameCenterLeaderboard)
+* New:Added **-compress=best** command line for Shipping iOS via Windows workflow builds
+* Various improvements and bug fixes to iAd support.
+* Fixed some threading issues with IOS gamecenter.
* PlayStation 4
-* New:**PlayGo** のサポートを追加しました。
-* New:Achievements (プレイヤーの統計) を実装しました。
-* New:シェーダのスクラッチ メモリのサポートが追加されました。
- ConsoleVariables.ini ファイルで **r.ShaderScratchBuffers=1** を有効にします。
-* New:HZB オクルージョンのカリングが、PS4 でサポートされます。
-* レンダー ターゲット / シェーダーの不一致をランタイムに検知する機能を追加しました。
-* レンダー ターゲットの出力形式を、シェーダ ファイルにあるSLOT 定義を使用するのではなく、**ModifyCompilationEnvironment** を通して設定するように更新しました。
-Xbox One
-* New:Xbox One に 10:10:10 の最終Color 出力を追加しました。これにより、トーンマッパの量子化ノイズを取り除くことが可能になり、処理速度が一段と速くなります。
-* New:スクリーンの safe area (安全領域) が実装されました。
-* New:Achievements (プレイヤーの統計) を実装しました。
-* すべてのピクセル シェーダーの最適化を有効にしました。
-* より完成度が高い機能になるように、XAudio2 実装を改善しました。
-* 様々な GPU のハングアップを修正しました。
+* New:Added **PlayGo** Support.
+* New:Implemented Achievements.
+* New:Added support for shader scratch memory.
+ * Enable with **r.ShaderScratchBuffers=1** in the ConsoleVariables.ini file.
+* New:HZB occlusion culling now supported on PS4.
+* Added detection of render target/shader mismatches at runtime.
+* Updated render target output formats to be set through **ModifyCompilationEnvironment** rather than using the SLOT defines in the shader files.
+* Xbox One
+* New:Added 10:10:10 final color output on Xbox One.This allows us to remove quantization noise in tonemapper, which is faster.
+* New:Screen safe area is now implemented.
+* New:Implemented Achievements.
+* Enabled optimizations for all pixel shaders.
+* Improved XAudio2 implementation to be more feature complete.
+* Fixed various GPU hangs.
-#### UnrealVS (Visual Studio の拡張)
+#### UnrealVS (Visual Studio Extension)
-* New:コマンドライン ボックスは、UE4.sln にある 'Game' プロジェクトに対してゲーム プロジェクト ファイルを自動的に追加するようになりました。
-* New:Visual Studio のカスタマイズ機能は、UnrealVS のツールバー コマンドをサポートするようになりました。
-* New:[UnrealVS Quick Build] メニューでは、IDE で config を変更せずに、どのコンフィギュレーションのビルドでも簡単にアクセスすることができるようになりました。
-* New:デバッグを支援するためにロギングを追加しました。
-* ゲーム専用のエディタ ビルド (例、MyGame "Debug Editor|Win64") に対するコード プロジェクトでは、UnrealVS でコマンドラインに追加するプロジェクトが不要になるように変更しました。
-* 上記の例で、エディタをデバッグするための UnrealVS コマンドライン引数はこれまで、"MyGame.uproject" でした。
-* 上記の例の UnrealVS コマンドライン引数は現在単に " " であり、プロジェクトが実行されると、UnrealVS は自動的にプロジェクト名を追加します。
-* プロジェクト名はまだエディタ実行ファイルに渡されますが、現在 UnrealVS はプロジェクト名を自動的に追加し、それを表示しません。
-* 既存のコマンドラインは、これまでどおり機能しますが、表示は異なります。
-* プロジェクト名を入力しないと、UnrealVS は表示されているコマンドラインからそれを除き、警告ダイアログをポップアップします。
-* Windows 以外のプラットフォームで実行可能プロジェクトを正確に認識するように Startup Project セレクタと Batch Build を修正しました。
+* New:Command Line box now automatically adds the game project file for 'Game' projects in UE4.sln.
+* New:Visual Studio's Customize feature now supports UnrealVS' tool bar commands.
+* New:UnrealVS Quick Build menu now allows easy access to building in any configuration without changing the config in the IDE.
+* New:Added logging to help debugging.
+* Changed code projects for game-specific editor builds (e.g. MyGame "Debug Editor|Win64") no longer need the project added to the command line in UnrealVS.
+* Previously the UnrealVS command line args to debug the editor for the example above would have been "MyGame.uproject "
+* The command line in UnrealVS for the example above is now just "", UnrealVS adds the project name automatically when the project is run.
+* The project name is still passed to the editor executable but UnrealVS now adds it automatically and does not display it.
+* Existing command lines will work as before but will display differently.
+* If no project name is supplied, UnrealVS should strip it from the displayed command line and popup a warning dialog.
+* Fixed Startup Project selector and Batch Build to correctly recognize executable projects on non-Windows platforms.
-## API の変更
+## API Changes
-#### ゲームプレイとフレームワーク
+#### Gameplay and Framework
-* bForceRescan パラメータを IAssetRegistry::ScanPathsSynchronous に追加しました。True ならば、パスのスキャンではスキャン済みのパスを無視しません。
-* IAssetRegistry に GetDerivedClasses を追加しました。これは、単に既存の GetSubClasses に対するラッパー関数です。
-* GameViewportClient で DrawTransition の青色の画面上のメッセージを無効にするフラグを追加しました。
-* ブループリントで GetOverlapInfos を使用するための機能を追加しました。
-* IOnlineExternalUI::ShowLoginUI に対するパラメータとして OnClosed デリゲートを追加しました。
-* GameViewportClient で DrawTransition の青色の画面上のメッセージを無効にするフラグを追加しました。
-* 複数のパスから ObjectLibrary を読み込むためのサポート、およびメモリに ObjectLibrary を簡単に作成するためのコンストラクタを追加しました。
-* UObject::CreateLibrary を呼び出す場合、ObjectLibrary でのブループリントのサポートを改善しました。bHasBlueprintClasses が true の場合、設定されていると、タイプをチェックしてくれます。
-* ワールドではなくプレイヤーにバインドするため、FGameWorldContext から FLocalPlayerContex に名前変更しました。
-* World Context 参照を戻す GetWorldContextFrom 関数を、GetWorldContextFrom*Checked に名前変更しました。
-* GetWorldContextFrom は、ポインタを戻し、供給された入力に対してWorldContext が存在しなければ NULL を戻します。
-AHUD から FSimpleReticle を取り除きました。必要に応じてこれをサブクラスに追加することができます。
-* AGameMode から、使用されていないライフサイクル イベント、OnEngineHasLoaded を削除しました。
-* 不要になったため、SGameWidget クラスを削除しました。
-* GameEngine から PendingLevelPlayerControllerClassName を削除し、LocalPlayer にある PendingLevelPlayerControllerClass と置き換えました。
-* これにより、他の PlayerController の参照と同様に機能するようになり、マップを結合するたびに混乱を招く警告が出ないようにします。
-* 使用するカメラ コンポーネントを見つけようとする場合、コンポーネントを有効にするか否かを考慮するように、AActor::CalcCamera を変更しました (アクティベーションを管理することにより、複数のカメラ コンポーネント間での選択を可能にしました) 。
-* SKismetLinear 表現式は関数として表示されるという点でより許容度が高くなりました (現在、1 つの出力を持つ任意の pure K2Node を何とかしようと試みています)。
-* ADebugCameraController と ADebugCameraHUD は拡張可能になり、エンジン モジュール外部からアクセスすることができます。
+* Added bForceRescan parameter to IAssetRegistry::ScanPathsSynchronous.If true, path scanning not ignore paths that have already been scanned.
+* Added GetDerivedClasses to IAssetRegistry.This is just a wrapper function for the pre-existing GetSubClasses.
+* Added a flag to disable blue onscreen messages in DrawTransition in GameViewportClient.
+* Added ability for Blueprints to use GetOverlapInfos.
+* Added OnClosed delegate as a parameter to IOnlineExternalUI::ShowLoginUI.
+* Added a flag to disable blue onscreen messages in DrawTransition in GameViewportClient.
+* Added support for loading an ObjectLibrary from multiple paths, and a constructor for easily creating an ObjectLibrary in memory.
+* Improved the support for Blueprints in an ObjectLibrary when calling UObject::CreateLibrary.If the bHasBlueprintClasses is true, it will check the type for you.
+* Renamed FGameWorldContext to FLocalPlayerContext, as it binds to a player and not a world.
+* Renamed GetWorldContextFrom functions returning a World Context reference to GetWorldContextFrom*Checked.
+* GetWorldContextFrom now returns a pointer and returns NULL if no WorldContext exists for the supplied input.
+Removed FSimpleReticle from AHUD. You can add this to your subclass if desired.
+* Removed unused lifecycle event OnEngineHasLoaded from AGameMode.
+* Removed SGameWidget class as it is no longer necessary
+* Removed PendingLevelPlayerControllerClassName from GameEngine and replaced it with PendingLevelPlayerControllerClass in LocalPlayer.
+* This makes it work like the other PlayerController references, and avoids a confusing warning on every map join
+* Changed AActor::CalcCamera to consider whether a component is activated when trying to find the camera component to use (allowing selection between multiple camera components by managing activation).
+* Made SKismetLinearExpression more permissive in what it will show as a function (now tries to do something with any pure K2Node with one output).
+* ADebugCameraController and ADebugCameraHUD can now be extended and accessed outside of the Engine module.
#### エディタとツール
-* スレートのドラッグ & ドロップ操作では、継承と互換性がある RTTI を使用するようになりました。これにより、DragDrop::IsTypeMatch が適切に機能するようになり、継承の階層のあらゆるレベルに静的キャストができるようになります。
-* GetTypeId in FDragDropOperation 派生の以前のインスタンスを、DRAG_DROP_OPERATOR_TYPE に置換してください。
-* FSlateApplication::GetDragDropReflector() は、現在使用されなくなり、削除されました。
-* 使用されていない Linked Obj Editor フレームワークを削除しました。
+* Slate drag drop operations now use RTTI that is compatible with inheritance.This allows DragDrop::IsTypeMatch to work properly allowing for static casting to any level of the inheritance hierarchy.
+* Please replace previous instances of GetTypeId in FDragDropOperation derivatives with DRAG_DROP_OPERATOR_TYPE.
+* FSlateApplication::GetDragDropReflector() is now obsolete and has been removed.
+* Removed unused Linked Obj Editor framework
#### プラットフォーム
* Mac
-* Mac OS X のサポートされる最低限のバージョンは現在、10.9.2 です。
- * 10.9.2 より前の OS X はサポートしなくなりました。以前のバージョンでは修正されない GL ドライバのバグと機能不足によるものです。
-* Mac のビルドは、現在 OS X 10.9 SDK を使用しており、コードとコンパイルの設定は、Xcode 5.1 と互換性があるように更新されています。
-* config ファイルは、~/Library/Preferences に移動し、ログは~/Library/Logs に、Saved フォルダからの他のすべてのファイルは、現在、~/Library/Application Support/Epic にあります。
+* The minimum supported Mac OS X version is now 10.9.2.
+ * We no longer support OS X versions prior to 10.9.2 due to OpenGL driver bugs & feature deficiencies that won't be fixed in earlier versions.
+* Mac build is now using OS X 10.9 SDK, code and compile settings were updated to be compatible with Xcode 5.1.
+* Config files on were moved to ~/Library/Preferences, logs to ~/Library/Logs, all other files from Saved folders are now in ~/Library/Application Support/Epic.
* PlayStation 4
-* TitleID、パッケージの PassCode やその他のデータの仕様は、 Build/PS4/PackagingDataPS4.txt 配下のプロジェクト ディレクトリのテキスト ファイルにあります。これは、UBT にある古いメタデータ システムを置き換えるものです。 例は、ShooterGame とベースの Engine/BuildPS4 ディレクトリにあります。
-Xbox One
-* March 2014 XDK に対してビルドするためにコードを更新しました。
-* 非推奨の関数 (D3DAllocateGraphicsMemory など) を削除 / 置換しました。
+* Specification of TitleID, package PassCode, and other data should now be in a text file in your project directory under Build/PS4/PackagingDataPS4.txt.This replaces the old metadata system in UBT. Examples can be found in ShooterGame, and the base Engine/BuildPS4 directories.
+* Xbox One
+* Code updated to build against March 2014 XDK.
+* Deprecated functions (D3DAllocateGraphicsMemory, etc) have been removed/replaced.
-#### コア
+#### Core
-* FPlatformString::Stricmp は、std::stricmp に合わせるために小文字に変換されました。
-* 文字列がアンダーラインだけ、またはASCII の小文字と大文字の範囲の間でのみ異なる場合、若干異なるソート順になる場合があります。
-* 不正な文字列変換中に警告が発行されるようになりました (例、ASCII で表すことができない Unicode 文字)。
-* コード内でこれが頻繁に起こると出力ログに余分なデバッグ テキストが存在するかもしれません。
-* TArray::Append and TArray::Insert は、オーバーロードされ、一度に複数エレメントを挿入できるようにします。
-* 現在、TSet は operator () の代わりに operator [] を通してアクセスされます。
-* C++11 の ranged-for 構文を使用したい場合に TobjectIterator を使用するのと同じように TObjectRange を使用できるようになりました。
-* 例: for (UClass* Cls :TObjectRange())
-* 使用されていないプロパティ フラグ、CPF_AlwaysInit を削除しました。
-* 使用されていない構造体フラグ、STRUCT_Transient を削除しました。
-* GConfig->SetVector4 および GConfig->GetVector4 を使用して、FVector4 を config ファイルに保存および読み込むためのサポートを追加しました。
-* 以下の言語以外のカルチャー (ロケール) を使用しているライセンシーは、ロケール データを含むために ICU データをリビルドする必要があります。
-* German – de, English – en, Spanish – es, French – fr, Hindi – hi, Italian – it, Japanese – ja, Korean – ko, Polish – pl, Portuguese – pt, Russian – ru, Swedish – sv, Chinese – zh
-* DrawDebugHelpers、浮動小数点値のヒストグラム表示するためのサポートを追加しました。サンプルを記録するために FDebugFloatHistory を使用し、ゲームで描画するために DrawDebugFloatHistory を使用します。ブループリントでも利用できます。
+* FPlatformString::Stricmp now converts to lower case to match std::stricmp.
+* This may result in slightly different sorting orders if your strings only differ by underscores or any other character between the ASCII lower and upper case ranges.
+* Warnings are now issued during bad string conversions (e.g. Unicode characters which can't be represented as ASCII).
+* You may notice extra debug text in the output log if this happens often in your code
+* TArray::Append and TArray::Insert are now overloaded to allow the insertion of multiple elements at once.
+* TSet is now accessed through operator [] instead of operator ().
+* You can use now TObjectRange in the same way you use TobjectIterator for when you want to use C++11's ranged-for syntax.
+* Example: for (UClass* Cls :TObjectRange())
+* Removed unused property flag CPF_AlwaysInit.
+* Removed unused struct flag STRUCT_Transient.
+* Added support for saving and loading FVector4 to config files using GConfig->SetVector4 and GConfig->GetVector4.
+* Licensees using cultures (locales) other than the following languages will need to rebuild ICU's data to include that locale data:
+* German - de, English - en, Spanish - es, French - fr, Hindi - hi, Italian - it, Japanese - ja, Korean - ko, Polish - pl, Portuguese - pt, Russian - ru, Swedish - sv, Chinese - zh
+* DrawDebugHelpers: added support for displaying a Histogram of float values.Use FDebugFloatHistory to record samples, and DrawDebugFloatHistory to draw in game.Also available in blueprints.
-#### ネットワーキング
+#### Networking
-* FFastArraySerializerItem 上の PreReplicatedRemove、PostReplicatedAdd、PostReplicatedChange の関数を修正し、所有している配列シリアライザも表すパラメータも持つようにしました。
-* bOnlyRelevantToOwner 設定をブループリントに公開しました。
+* Modified PreReplicatedRemove, PostReplicatedAdd, and PostReplicatedChange functions on FFastArraySerializerItem to also have a parameter representing the owning array serializer.
+* Exposed bOnlyRelevantToOwner setting to blueprints.
-#### アニメーション
+#### Animation
-* New:AnimInstance は、ブレンドスペースに対する **CalculateDirection** 関数を持つようになりました。
+* New:AnimInstance now has a **CalculateDirection** function for BlendSpaces.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_1/ReleaseNotes_4_1.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_1/ReleaseNotes_4_1.KOR.udn
index 1502793df7b5..4ea36e3bd809 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_1/ReleaseNotes_4_1.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_1/ReleaseNotes_4_1.KOR.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367477
Title: 언리얼 엔진 4.1 릴리즈 노트
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Public
version: 4.1
+parent:Support/Builds
order:1
[TOC(start:2 end:2)]
@@ -313,7 +314,7 @@ We'd like to thank all of the amazing developers who contributed code in this re
* **Unreal Editor Manual**
* New: [Blueprint Cheat Sheet](Engine/Blueprints/UserGuide/CheatSheet)
* New: [Light Propagation Volumes](Engine/Rendering/LightingAndShadows/LightPropagationVolumes)
- * New: [Preview Shadows](Engine/Rendering/LightingAndShadows/Shadows#previewshadows)
+ * New: [Preview Shadows](Engine/Rendering/LightingAndShadows/Shadows)
* New: [Pivot Painter](Engine/Content/Tools/PivotPainter)
* New: [Mac Viewport Controls Quick Reference](Engine/UI/LevelEditor/Viewports/ViewportControls)
* **Programming Guide**
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_2/ReleaseNotes_4_2.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_2/ReleaseNotes_4_2.KOR.udn
index faa88d865f21..4597548dcd7a 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_2/ReleaseNotes_4_2.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_2/ReleaseNotes_4_2.KOR.udn
@@ -321,7 +321,7 @@ GitHub 에서 작업중인 개발자들의 경우, 프로젝트를 윈도우 XP
* 신규: 액터를 붙일 때, 액터 선택기를 사용하여 어느 액터를 어디에 붙일 지 선택할 수 있습니다.
* 신규: 에디터에서 지오메트리 그리기시 "게임 뷰" 검사 기능을 추가했습니다.
* 신규: 이제 **Alt + [ 또는 ]** 키로 트랜스폼 기즈모 크기를 조절할 수 있습니다
-* 신규: 이제 콜렉션이 로컬 유저 세팅에 따른 맞춤형 색상을 저장 및 표시합니다.
+* 신규: 이제 컬렉션이 로컬 유저 세팅에 따른 맞춤형 색상을 저장 및 표시합니다.
* 신규: 캐릭터 컴포넌트에 **Flat Bottomed** (하단 평면) 콜리전 옵션이 추가되었습니다.
* 신규: 마켓플레이스에서 다운로드한 콘텐츠를 제거할 수 있는 옵션이 생겼습니다.
* 신규: 콘텐츠 브라우저에서 드래그 앤 드롭으로 다수의 액터를 생성하는 작업이 한 번의 트랜잭션으로 되돌리기 가능합니다.
@@ -521,7 +521,7 @@ GitHub 에서 작업중인 개발자들의 경우, 프로젝트를 윈도우 XP
* 새로운 셰이더로 시작시 발생하던 크래시를 고쳤습니다. 리소스 초기화에 RHIClear 가 사용되고 있었습니다.
* 분할화면 리플렉션 인바이언먼트 렌더링을 고쳤습니다.
* 리플렉션 인바이언먼트가 껴졌을 때의 렌더링을 고쳤습니다.
-* SM4 패쓰에 SSR 이 적용되던 것을 고쳤습니다.
+* SM4 패스에 SSR 이 적용되던 것을 고쳤습니다.
* 레이어드 리플렉션 캡처 관련 블렌딩 버그를 고쳤습니다.
* LPV 가 꺼진 경우, LPV 가 비활성화되는 최적화가 전처럼 작동하도록 하는 최적화를 고쳤습니다 (섀도 맵 렌더링이 빨라집니다).
* 캐릭터의 미리계산된 GI 적용시 사용되는 모든 라이트 프로브가 절반 밝기로 되던 버그를 고쳤습니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_3/ReleaseNotes_4_3.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_3/ReleaseNotes_4_3.KOR.udn
index 51f785a102ff..13228c16842b 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_3/ReleaseNotes_4_3.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_3/ReleaseNotes_4_3.KOR.udn
@@ -195,7 +195,7 @@ Single Rotation Axis, 단일 회전축이라는 모드도 지원하는데, 수
### 신규: Oculus Rift 업그레이드
* 최신 내용을 포함해서 Oculus SDK (0.3.3-pre.1 SDK) 로 업그레이드했습니다!
* 풀 모션 트래킹 포함 Oculus Rift DK2 가 바로 지원됩니다.
-* 새로운 직접 렌더링 패쓰와 타임 워프로, 디바이스의 반응 지연시간을 획기적으로 줄여줍니다.
+* 새로운 직접 렌더링 패스와 타임 워프로, 디바이스의 반응 지연시간을 획기적으로 줄여줍니다.
* Oculus Rift DK2 의 성능 시연을 위해 제작된 "Couch Knights" 샘플을 확인해 보세요.

@@ -407,7 +407,7 @@ Get Data Table Row 는 개별 컴포넌트 변수들로 나눌 수 있는 Row
* 느린 태스크 진행상황 대화창으로 인해 발생하는 크래시를 고쳤습니다.
* 블루프린트 메시 컴포넌트의 스태틱 라이팅을 고쳤습니다.
* 빌드 스케일을 높일 때 **ConvexElems ** 위치가 업데이트되도록 **RescaleSimpleCollision ** 을 고쳤습니다 (기존에는 버텍스만 스케일 조절했습니다).
-* 에디터의 '패쓰 빌드' 옵션을 수정했습니다.
+* 에디터의 '패스 빌드' 옵션을 수정했습니다.
* 컴파일러 에러 수정 및 자잘한 최적화가 있었습니다.
* 콘텐츠 브라우저 소스 콘트롤 상태 델리게이트가 공유 포인터 시맨틱을 사용하도록 수정했습니다.
* 비헤이비어 트리 버전비교가 거꾸로 나오던 것을 고쳤습니다.
@@ -494,7 +494,7 @@ Get Data Table Row 는 개별 컴포넌트 변수들로 나눌 수 있는 Row
* ShowLayer 명령 추가 - 레이어의 메시 표시여부를 토글시킵니다.
* 스태틱 / 스테이셔너리 스카이라이트에 1회 반사되는 디퓨즈 GI 를 라이트매스로 계산합니다.
* 반투명 머티리얼이 스테이셔너리 라이트의 그림자를 받습니다.
-* 모바일 렌더링 패쓰에 MSAA 가 지원됩니다.
+* 모바일 렌더링 패스에 MSAA 가 지원됩니다.
* 클리어 코트 셰이딩 모델을 추가했습니다.
* 반투명 관련 굴절 순서를 변경했습니다 (독립 반투명이 아닌 것이 이제 굴절되어 모양이 바뀔 수 있습니다).
* LensFlareIntensity 프로퍼티의 기본 세팅을 0 (꺼짐)으로 변경하여 퍼포먼스를 향상시키고 기본 모양새를 깔끔하게 만들었습니다. 1 로 설정하면 예전 방식을 살립니다.
@@ -688,7 +688,7 @@ Get Data Table Row 는 개별 컴포넌트 변수들로 나눌 수 있는 Row
* 완전 미지원 및 문서화되지 않은 프로토타입이라 사용에 극심한 주의가 요구되며, 제작 단계에서는 사용하지 마십시오.
* (언리얼 콜리전 채널/필터링을 포함한) 콜리전 감지 및 반응, 시뮬레이션, 레이 캐스트가 구현되었습니다.
* 논-제로 익스텐트 쿼리, 스윕 테스트, 오버랩 테스트는 아직 구현되지 않았습니다.
-* 다양한 콜리전 루틴을 정리하여 가급적 공용 패쓰를 통합시키고, 가능한 경우 PhysX 종속성을 감소/통합시켰습니다.
+* 다양한 콜리전 루틴을 정리하여 가급적 공용 패스를 통합시키고, 가능한 경우 PhysX 종속성을 감소/통합시켰습니다.
* UStaticMeshComponent 뿐만이 아닌 어떠한 종류의 컴포넌트에 대해서도 연관된 애셋을 제공하도록 FBodyInstance 에 대한 디버그 텍스트를 일반화시켰습니다.
* 다양한 내부 스윕/오버랩/쿼리 헬퍼 메소드 (Geom*) 가 이제 PhysX 전용이 아닌 언리얼 유형을 받습니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_6/ReleaseNotes_4_6.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_6/ReleaseNotes_4_6.KOR.udn
index 98096230b921..27a1ad2e61a1 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_6/ReleaseNotes_4_6.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/4_6/ReleaseNotes_4_6.KOR.udn
@@ -120,7 +120,7 @@ Alex Silkin (alexSilkin), alwei, Allegorithmic, Artem V. Navrotskiy (bozaro), Ce
* 터레인, 하이 퀄리티 캐릭터 머티리얼, 고급 포워드 셰이딩 머티리얼과 같은 레이어 머티리얼의 품질 향상에 정말 중요한 부분입니다.
-* DirectX 11 및 콘솔은 한 번에 128 개의 텍스처를 지원하지만, (윈도우나 맥의) OpenGL 렌더링 패쓰는 머티리얼당 텍스처가 여전히 13 개 까지로 제한됩니다. 이 제한을 넘는 경우 셰이더가 GL 컴파일에 실패합니다.
+* DirectX 11 및 콘솔은 한 번에 128 개의 텍스처를 지원하지만, (윈도우나 맥의) OpenGL 렌더링 패스는 머티리얼당 텍스처가 여전히 13 개 까지로 제한됩니다. 이 제한을 넘는 경우 셰이더가 GL 컴파일에 실패합니다.
###### 스칼라 및 벡터 파라미터 기본값 실시간 미리보기
@@ -319,7 +319,7 @@ Alex Silkin (alexSilkin), alwei, Allegorithmic, Artem V. Navrotskiy (bozaro), Ce
**슬레이트에서의 폰트**
* C++ 기반 슬레이트 스타일 세트의 기존 폰트 코드도 정상 작동하나, 스타일 세트가 컴포짓 폰트의 이점을 활용하도록 업데이트해 보는 것도 좋습니다.
* C++ 슬레이트 코드에서 컴포짓 폰트를 처리할 때는 폰트 애셋보다는 FStandaloneCompositeFont 를 사용할 것을 추천합니다.
-* 슬레이트 스타일 세트에 포함된 폰트 오브젝트가 가비지 콜렉터에 보이지 않기 때문입니다. 폰트 애셋을 직접 사용하면 FGCObject 같은 것을 사용해서 외부 레퍼런스를 직접 관리해야 합니다.
+* 슬레이트 스타일 세트에 포함된 폰트 오브젝트가 가비지 컬렉터에 보이지 않기 때문입니다. 폰트 애셋을 직접 사용하면 FGCObject 같은 것을 사용해서 외부 레퍼런스를 직접 관리해야 합니다.
**캔버스에서의 폰트**
* 캔버스는 양쪽 폰트 애셋 캐시 유형을 모두 지원하나, 저희 툴 일부에 대한 현지화 지원을 개선시키기 위해서입니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/January/ReleaseNotesJanuary2014.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/January/ReleaseNotesJanuary2014.JPN.udn
index 2c77e77b0b8e..1eedc3825ae3 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/January/ReleaseNotesJanuary2014.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/January/ReleaseNotesJanuary2014.JPN.udn
@@ -1,8 +1,10 @@
-Title:2014 年 1 月リリースノート
+INTSourceChangelist:3367470
+Title:2014 年 1 月リリースノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-2
[TOC(start:2 end:2)]
@@ -12,7 +14,7 @@ Template:ReleaseNotes.html
[REGION:simpletable]
| アイテム | 情報 |
| ---- | ---- |
-| **Labels** | [INCLUDE:#labels] |
+| **ラベル** | [INCLUDE:#labels] |
| **Built from Changelist #** | (//depot/UE4-QA/Promotable-CL-1986836) |
| **Branched from Changelist #** | (//depot/UE4/Promoted-CL-1973917) |
| **Visual Studio Version** | Microsoft Visual Studio 2012 Version 11.0.60610.01 Update 3 |
@@ -30,20 +32,20 @@ QA_APPROVED_UE4_BUILD_MINIMUM
## 重要情報
* 現時点のエンジン開発ロードマップ: [UE4 Roadmaps](https://udn.unrealengine.com/questions/topics/roadmap.html)
- * 修正されたバグ: [UE4 Fixed Bugs January 2013](UE4_Fixed_2014_January.xlsx)
- * 周知の問題: [UE4 Known Issues January 2013](UE4_Bugs_2014_January.xlsx)
+ * 修正されたバグ: [UE4 Fixed Bugs January 2014](UE4_Fixed_2014_January.xlsx)
+ * 周知のバグ: [UE4 Known Issues January 2014](UE4_Bugs_2014_January.xlsx)
-##主な新機能
+## 主要な新機能
####ブループリント
-* **Format Text Node**
+* **Format Text ノード**
* 新しい Format Text ノードがブループリントに追加されました。

- * 「Format」テキストはリテラルあるいはピン接続が可能です。リテラルを使用すると、フォーマット用の引数が自動生成されます。
+ * 「Format」テキストはリテラルあるいはピン接続が可能です。リテラルとして使用すると、フォーマットのために引数が自動生成されます。

@@ -51,7 +53,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM

- * 「Format」ピンは接続された場合、変数のため解読は不可能です。この場合、ピンを自分で追加し、可能性のある引数に因んだ名前を付けます。このように、Format Text ノーの使用設定は、複数の可能性に対して行うことができます。引数が Format の引数に一致すると、与えられた情報を利用します。
+ * 「Format」ピンは接続された場合、変数のため解読は不可能です。この場合、ピンを自分で追加し、可能性のある引数に因んだ名前を付けます。このように、Format Text ノードの使用設定は、複数の可能性に対して行うことができます。引数が Format の引数に一致すると、与えられた情報を利用します。

@@ -97,19 +99,19 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* **シーン アウトライナーにおけるアクタの可視性**
* 各アクタの脇に表示される目のアイコンを使って、シーン アウトライナーからアクタの可視性の切り替えが簡単にできるようになりました。
+

-
* **レベル ビューポート**
- * レベル ビューポートで、例えばカメラを選択すると、カメラから見えるものを現在のビューポートの [Picture-in-Picture] ボックスでプレビューすることができます。カメラの選択を解除すると、プレビューがなくなります。
+ * レベル ビューポートで、例えばカメラを選択すると、カメラから見えるものを現在のビューポートの [Picture-in-Picture] ボックスでプレビューすることができます。カメラの選択を解除すると、プレビューされなくなります。
- * レベル ビューポートの Actor Previews にこれらに対するボタンを追加したので、別のオブジェクトを選択しても表示されたままになります。
+ * レベル ビューポートの [Actor Previews] にこれらのボタンを追加したので、別のオブジェクトを選択しても表示されたままになります。

* 見ての通り、これは加算なので、ピンしたプレビューに加えて、選択した他のプレビュー アクタも見ることができます。
- * この機能の便利な使い方としては、カメラ視点のプレビュー中に、 Matinee や複数のビューポートを使用せずにカメラショットによるアクタの移動があるでしょう。
+ * 例えば、カメラ視点のプレビュー中に、マチネや複数のビューポートを使用せずにカメラショットによるアクタの移動にこの機能を使うと便利です。

@@ -132,8 +134,8 @@ QA_APPROVED_UE4_BUILD_MINIMUM
使用するキューブマップを手書きのコードによって指定することもできます。

- * これまでは、Lightmass の環境色を通過するスカイ ディフーズに異なる定数を与えながら、スカイを反射させる Ambient Cubemap を選択しなければなりませんでした。
+ * これまでは、Lightmass の環境色を通過するスカイ ディフーズに異なる定数カラーを与えながら、スカイを反射させる Ambient Cubemap を選択しなければなりませんでした。
* Sky Light は完全に環境色に変わり、やがては Ambient Cubemap に変わります。
@@ -141,7 +143,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
**ベークされたシャドウイング**
- * 現在サポートされている Sky Light は Stationary Mobility のあるバージョンのみです。つまり、 Lightmass からベークされたシャドウイングがあります。
+ * 現在サポートされている Sky Light は、Stationary Mobility のあるバージョン、つまり Lightmass からベークされたシャドウイングのみです。
* レベル内に Sky Light を置いたら、ベークされたシャドウイングを取得するために再度ライティングをリビルドする必要があります。
@@ -165,14 +167,14 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* プロジェクトでその機能を使用したい場合は、同じ変更をプロジェクト設定で行うことができます。
-## 新機能の追加
+## 新規追加
#### エディタとツール
-* 1 つのフィルタを分離し有効にするために、新しいアセットブラウザ フィルタ コンテクストメニューを入力します。
+* 1 つのフィルタを分離し有効にするために、新しいアセットブラウザ フィルタ コンキテクスト メニューを入力します。
* アクティブなフィルタのリストの中の 1 つのフィルタ上にコンテクスト メニューを表示させて、[enable this only: ``] を選択することでアクティベートします。
-* LODs タイトルを折りたたんでも、LOD Distance が表示されるようになりました。
+* LOD のタイトルを折りたたんでも、LOD Distance が表示されるようになりました。
* プロパティ マトリックス ビューでサポートするアセットに対し [Asset picker] ボタンが表示されるようになりました。
-* 選択されたグループ化されたアクタ上を Ctrl +クリックすれば、グループ全体の選択が解除されるようになりました。
+* 選択されたグループ化されたアクタ上を Ctrl +クリックすると、グループ全体の選択が解除されるようになりました。
* フィルタ メニューの一番下にフィルタリセット用のボタンが追加されました。
* サブメニュー入力上でボックスとアクションが切り替えられるようになり、サブメニューを使用するための CB フィルタ メニューが修正されました。
* Dirty maps/assets が名前の横のドックタブにアスタリスクを表示するようになりました。
@@ -182,7 +184,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* サウンド ノードのパレットがサウンドキュー エディタに追加されました。
* マテリアル エディタ 表現式と関数リストが 1 つのパレットにまとめられました。
* サウンドキュー エディタの Sound ノードをダブルクリックするとそのノードが再生されます。
-* マテリアル関数がマテリアル エディタの右クリック コンテクスト メニューに追加されました。
+* マテリアル関数がマテリアル エディタの右クリック コンテキスト メニューに追加されました。
* Material ノードの Particle Direction、Particle Speed、Particle Position、Particle Relative Time がメッシュ パーティクルで機能するようになりました。
* UTF-8 のサポートが Perforce プラグインに追加されたので、ユニコード サーバーが使用可能になりました。
* インスタンス化されたスタティック メッシュ コンポーネントが [Blueprint Components] ビューで編集可能になりました。
@@ -225,7 +227,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* スカイライト コンポーネントは距離ジオメトリを自動的にキャプチャし、それをライティングとしてシーンに適用します。
* Lightmass はベント法線アンビエント オクルージョンをベークし、それにより指向性シャドウイングが生じます。
* この機能は新しく、まだ完全には機能していません。例えば、透過アイテムにはキャラクター シャドウが全く適用されません。
-* Particle light モジュールを透過アイテムに影響するように選択することができます。
+* Particle light モジュールを透過アイテムに影響するようにオプトインすることができます。
* 全ての間接ライティングにマテリアル アンビエント オクルージョン出力が適用され、ボリュメトリック パーティクルに有益です。
* **事前計算されたビジビリティの改善点**
* より完全に可能性のある再生エリアをカバーする新しいセル配置ヒューリスティックが追加されました。ただしビルド時間は増えました。
@@ -281,7 +283,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* マニフェストが JSON フォーマットになり、人間にとって読解が、またコンピュータにとってはパースがしやすくなりました。
* 診断を変更しやすいように、ホット リロードのコンフリクトは生成されたヘッダ ファイルの横に書き込まれます(.generated.h.conflict ファイルとして)。
* UnrealHeaderTool が UTF-8 BOMs のファイルをサポートするようになりました。
-* Play-In-Editor(PIE) 用に複製されると、プロパティがシリアル化のみされるように、NonPIETransient プロパティ指定子が追加されました。
+* Play-In-Editor(PIE) 用に複製されると、プロパティがシリアル化のみされるように、NonPIETransient プロパティ指定子が追加されました。
* 追加のパッケージ ファイル位置を指定できるように -pakdir=dir コマンドライン パラメータが追加されました。
* ゼロ エンジン バージョンのサポート - エンジンは 0 エンジン バージョン (ローカル ビルド) パッケージのロードが可能になりました。
* NULL (None) アクティブ クラス リダイレクトのサポート
@@ -315,237 +317,237 @@ QA_APPROVED_UE4_BUILD_MINIMUM
## アップグレード ノート
#### エディタとツール
-* Landscape ES2 :ランドスケープ UV が 2 から 3 に増え、LocalVertexFactory と同じになりました。
-* Collision プロパティが正確に複製されるようになりました。
-* サブレベルはレベルに追加される時、ダーティとマークされなくなりました。
-* WorldSettings ラベルが非表示になりました。
-* [Collections] ボタンをクリックするとソース コントロール ステートが更新されるようになりました。
-* ブループリントをデバッグする際、新規の PIE ウィンドウがグレーアウトしなくなりました。
-* [FBX Import] オプションが記憶されるようになりました。
-* 幾つかのマテリアルで不足しているツールチップを追加しました。
-* コリジョン チャネルがビルドされると コリジョン プロファイルがアップデートされます。
-* アンロードされたマップに属するアセットはメニュー アセット ピッカーにより排除されるようになりました。
-* Collections は再度保存するようになりました。
-* 「Press Escape」メッセージは自動保存の場合にのみ表示されます。
-* LocalizeError の使用を廃止しました。
-* カラーテーマのアルファ値が使用中のカラーピッカーのタイプに応じて正確に表示されるようになりました。
-* DestructibleMesh プロパティが折りたたまれなくなりました。
-* non-code などソリューションが欠けている場合、Debug はパッケージ オプションから削除します。
-* 復元された名前とツールチップをアセット エディタに保存します。
-* Cascade Module の警告がダイアログから通知に変更されました。
-* UFortUIFeedbackBank プロパティへの修正が期待通りに機能しています。
-* プロパティ マトリックス欄の幅がオブジェクト選択の間で維持されるようになりました。
-* アセットと同期すると、ContentBrowser アセット ビューがキーボード フォーカスを受け取るようになりました。
-* ContentBrowser ビューモードのレイアウトが永続的になりました。
-* 同期したアセットにロックされたコンテンツ ブラウザが開かないようにしました。
-* ローカルおよびワールド座標システムで不足している小さなアイコンが追加されました。
-* 作成中に名前の変更によりフォーカスを失っても、コレクションが削除されなくなりました。
-* コンテンツ ブラウザ カウンタの「アセット」を「アイテム」へ名前変更しました。
-* ユーザーがコンパイラを持っていない場合、[add code to project] オプションは無効化されます。
-* [invalid collision] ダイアログを通知に置き換えました。
-* スプライト カテゴリのローカリゼーションの処理方法をリファクタリングします。
-* コレクションをデフォルトで展開表示できるようになり、リサイズが可能になりました。
-* 保存メッセージを Matinee に言い換えました。
-* 不足していた小さな [Phat] アイコンを追加しました。
-* タブ上にアセットをドラッグすると、その後すぐにアクティブになるようになりました。
-* キーボードのショートカットで作成された Copy/Pasting ノードがクラッシュしなくなりました。
-* 環境設定のエクスポート時にレイアウトも保存されるようになりました。
-* PIE の自動再コンパイル ブループリントのオプションが [Editor Preferences] から制御可能になりました。
- * カスタム仕様の *.ini files referencing Kismet.AutoRecompileOnPIE は全て関連する EditorUserSettings ini の /Script/UnrealEd.LevelEditorPlayInSettings.AutoRecompileBlueprints を使用するように変更してください。
-* ALevelGridVolume アクタが削除されました。
-* GetOverlappingActors は呼び出されてもアクタを返さなくなりました。
-* ブループリント関数の位置に対し Position と Translation が変更されました。これにより影響を受ける C++ 関数があります。
- * UPrimitiveComponent::AddImpulseAtPosition() はUPrimitiveComponent::AddImpulseAtLocation() となります。
- * UPrimitiveComponent::AddForceAtPosition() は UPrimitiveComponent::AddForceAtLocation() となります。
- * UMovementComponent::ConstrainPositionToPlane() はUMovementComponent::ConstrainLocationToPlane() となります。
+* Landscape ES2 :Landscape UV increase from 2 to 3 to be same as LocalVertexFactory.
+* Collision properties are now duplicated correctly.
+* Sub-levels no longer get marked as dirty when added to the level.
+* WorldSettings label is now hidden.
+* Collections button now updates it's source control state when clicked.
+* New PIE windows no longer get greyed out when debugging blueprints.
+* FBX Import options are now remembered.
+* Added missing tooltip for some material properties.
+* Update the Collision Profile when the Collision Channels are built.
+* Menu asset picker now excludes assets which belong to unloaded maps.
+* Collections now save again.
+* "Press Escape" message now only appears when autosaving.
+* Removed LocalizeError usage.
+* Alpha value of color themes now appears correctly depending on the color picker type being used.
+* DestructibleMesh property is no longer collapsed.
+* Remove 'Debug' as an packaging option if solution is missing i.e. non-code.
+* "Save" name and tooltip restored in asset editors.
+* Changed Cascade Module warning from a dialog to a notification.
+* Modifications to UFortUIFeedbackBank properties now work as expected.
+* Property matrix column widths are now preserved between object selections.
+* ContentBrowser asset view now recieves keyboard focus when syncing to assets.
+* ContentBrowser view modes now have a persistent layout.
+* Prevent opening locked content browsers to sync assets.
+* Added missing small icon for local and world coordinate system.
+* Collections are no longer removed, when creating, if the rename loses focus.
+* Renamed 'asset' to 'item' in the content browser counter.
+* Disable the 'add code to project' option when the user has no compiler.
+* Replaced 'invalid collision' dialog with notification.
+* Refactor how the sprite category localization is handled.
+* Collections now appear expanded by default, and can be resized.
+* Save message reworded to say Matinee.
+* Adding missing small Phat icons.
+* When dragging an asset over a tab, it'll now become active after a short period.
+* Copy/Pasting nodes created with keyboard shortcuts no longer crashes.
+* Layout is now also saved when exporting preferences.
+* The option to auto recompile blueprints on PIE is now controllable from Editor Preferences.
+ * Any custom *.ini files referencing Kismet.AutoRecompileOnPIE should be changed to use /Script/UnrealEd.LevelEditorPlayInSettings.AutoRecompileBlueprints in the relevant EditorUserSettings ini instead.
+* ALevelGridVolume actor was removed.
+* GetOverlappingActors no longer returns the actor the call is made on.
+* Changed Position & Translation to Location in Blueprint functions; impacts several C++ functions:
+ * UPrimitiveComponent::AddImpulseAtPosition() becomes UPrimitiveComponent::AddImpulseAtLocation()
+ * UPrimitiveComponent::AddForceAtPosition() becomes UPrimitiveComponent::AddForceAtLocation()
+ * UMovementComponent::ConstrainPositionToPlane() becomes UMovementComponent::ConstrainLocationToPlane()
#### レンダリング
-* テキストレンダリングでアクタを垂直のアライメントに平行移動させる際の計算エラーが修正されました。この操作により、正しくない位置に置かれてしまうテキストが発生する恐れがあります。その場合は手作業での修正が必要になります。
-* **エンジンの拡張機能**
- * GetRenderingDetailMode が Kismet へ追加されました。
- * GPUIndex が HardwareSurvey へ追加されました。
- * エンジン拡張機能に磨きがかかりました。
- * cvar が拡張オプションとして使用できる場合、ECVF_Scalability がドキュメントに追加されました。
- * ブループリントの GetRenderingMaterialQualityLevel を追加し、ヘルプを追加し、別のヘルプをクランプしました。
- * r.CompileShadersForDevelopment を追加して、設定が 0 の時は早めの出荷用ビルドが出来るようになりいました (未完成の機能のため、手動でアクティベートする必要があります)。
- * MaterialQualityLevel を拡張性設定に追加しました。JonL の提案は 0/1/1/1 ですが、コンテンツによっては 0/0/1/1 の場合もあります。
- * Fortnite に対し非常に低いスペックのレンダリング負荷に調整し、UI Blur バックグラウンドが無効化されました。
- * r.earlyzpass はモードが 2 の時 (画面上でマスクされているか小さい場合) 、移動しない全てのオブジェクトをレンダリングするようになりました。
- * PF_R8G8 UNORM テクスチャ フォーマットが追加されました。
-* **ポストプロセス**
- * 自動露光の最低速度をクランプして、人間がこのパラメータで自動露光を無効化してしまわないようにしました。
- * FastBloomThreshold は目立っていたので再度有効化しました。
- * Toe Factor を削除しました。トーンマッパではどのみち使用しませんし、古いトーンマッパはもう存在しません。
- * グラフをより見やすくするために、グラフへのデバッグ エクスポートが追加されました (yWorks を使用) r.CompositionGraphDebug は好くリーションショット フォルダにファイルをエクスポートします。
- * ビデオ オプションのネイティブなフルスクリーンを再度有効化しました。
- * スペキュラを切り離すために、アルファシーンカラーのアルファ チャンネルを利用して実験的な機能としてスクリーン空間のサブサーフェス スキャッタリングを採用しました。大部分のレンダリング パスには最少限のコストが発生しますが、32 ビット フォーマットの仕様時は、実験的なスクリーン空間のサブサーフェス スキャッタリングを有効にしません。当社はスクリーン空間のサブサーフェス スキャッタリングを有効化して使用する予定であり、それが高品質には必要です。スペキュラのあるサブサーフェス マテリアルについては r.SSSSS 150 をご覧ください。
- * (メインとレンダリング スレッド) cvar の読み込み時、パフォーマンスをあげるためにコンソール変数の vars をタイプしました。
- * インターフェースが DrawDenormalizedQuad() に改善され、名前が DrawRectangle() となり、デフォルトで従来型のクワッドを使用して、トライアングルとなることが可能になりました。
- * vis SceneDepth@0 を使用して EarlyZPass コンテンツの可視化が可能になりました。
+* An error in the calculation of text render actor vertical alignment transforms has been fixed.This may potentially result in some text being incorrectly position, which will need manually correcting.
+* **Engine Scalability**
+ * Added GetRenderingDetailMode to Kismet.
+ * Added GPUIndex to HardwareSurvey.
+ * More polish on engine scalability feature.
+ * Added ECVF_Scalability to document if a cvar can be used as scalability option.
+ * Added Blueprint GetRenderingMaterialQualityLevel, added help and clamped another one.
+ * Added r.CompileShadersForDevelopment to allow for faster shipping build when set to 0 (needs to be manually activated, unfinished feature).
+ * Added MaterialQualityLevel to scaleability settings - JonL suggested 0/1/1/1, could have been 0/0/1/1 - depending on content.
+ * Optimized very low spec rendering cost for Fortnite, disables UI Blur background.
+ * r.earlyzpass now renders all non moving objects if in mode 2 (masked or small on screen).
+ * Added PF_R8G8 UNORM texture format.
+* **Post Processing**
+ * Clamped minimal speed for eye adaptation to not have people disabling eyeadaptation through this parameter.
+ * Reenabled FastBloomThreshold as this was more noticable there.
+ * Removed toe factor - isn't used in new tonemapper anyway - old tonemapper doesn't exist any more.
+ * Added debug export to the graph for much nicer readble graphs (using yWorks) r.CompositionGraphDebug exports the files to the screenshots folder.
+ * Reenabled native fullscreen for video options.
+ * Experimental feature work: made screenspace subsurface scattering using alpha scene color alpha channel to separate out specular, very minor cost for most passes and if using a 32bit format we don't have the enabled.We intend to use enable ScreenSpace subsurface scattering and that is needed for high quality, see r.SSSSS 150 on subsurface material with a specular.
+ * Typed console variables vars for better performance when reading cvars (main and render thread).
+ * Improved interface to DrawDenormalizedQuad(), now renamed to DrawRectangle(), by default using classic quad, can be a triangle.
+ * Allow visualization of EarlyZPass content using "vis SceneDepth@0"
#### ブループリント
-* ネストされたブループリント コンポーネントは、親の可動性の方が大きい場合、可動性を変更させる場合があります。
- * 親よりも可動性が低いサブ コンポーネントにフラグが付かないようになりました。
-* ブループリントのゲーム コンポーネントは、エディタのみのコンポーネント下にすでにネストされている場合は、ネストされません (あるいはルートの場合はスワップされます)。
- * ゲーム コンポーネントがエディタのみのコンポーネント化にネストしないようになりました。
+* Nested blueprint components may have their mobility altered if their parent is more mobile than they are.
+ * We no longer allow sub-components to be flagged with less mobility than their parent.
+* Blueprint game-components will be unnested (or swapped, if the root) if they were previously nested under an editor-only component.
+ * We no longer allow game-components to be nested under editor-only ones.
#### ゲームプレイとフレームワーク
-* ナビゲーション システムの API を const FNavigationQueryFilter* から TSharedPtr`` を使用するように切り替えました。
-* ネイティブ コードで作成された InputComponent 結合が動的結合ではなく UObject 結合を使用するようになりました。
- * BIND_AXIS と BIND_ACTION は変換の便宜上残されています。いずれ削除されますので使用しないでください。
- * その代わりに InputComponent 上の BindAxis と BindAction 関数を使用すべきです。BindKey と BindTouch も追加されました。
-* MinCompressedDurationGame/Editor が削除されました。置き換えに関する詳細は、新機能の SoundGroups をご覧ください。
+* Switched navigation system's API from using const FNavigationQueryFilter* to TSharedPtr``
+* InputComponent bindings made in native code now use UObject binding instead of dynamic binding.
+ * BIND_AXIS and BIND_ACTION should no longer be used and, while they remain currently for ease of conversion, they will be removed in the future.
+ * Instead BindAxis and BindAction functions on InputComponent should be used.BindKey and BindTouch have also been added.
+* MinCompressedDurationGame/Editor has been removed.See new feature SoundGroups for details on replacement.
#### コア
-* ブループリントに格納されているクラスは notplaceable ベースを継承する場合、notplaceable へ変換されるようになりました。
- * 以前であればアサートしました。
-* TIndirectArray は TArray を継承しなくなりました。
- * TIndirectArray から TArray へキャストするコードは失敗します。
- * エクスポーズされていない TArray 関数を使うコードは変更が必要です。例えば GetData() は GetTypedArray() となります。
-* MAX_PATH のオーバーフローを削減するために同じパス名は短縮するようにしました。
- * これにより、ファイルが特定の場所にあることを期待するナビゲーションやバッチ ファイルが影響を受けます。
- * 特に、Intermediate/BuildData/Include は Intermediate/Build/Inc となりました。
-* TWeakObjectPtr は、UObject から派生するタイプでインスタンス化される静的アサートになりました。
- * コンパイラはタイプがもう UObject ではないと想定するので、TWeakObjectPtrs がどこで作成されようとフルクラス定義が求められます。
-* begin() と end() がコンテナ メソッドではなくなりました。
- * これらの関数は純粋に ranged-for サポートに追加されました。ユーザー コード向けではありません。Ranged-for は代替システムとして使用しても機能します。
- * UE コンテナ上で .begin() や .end() を使用するコードは ranged-for スタイルや古い CreateIterator スタイルのイタレーションを使用するように変換してください。
-* UnrealHeaderTool は、パースできないデフォルト引数を認識するとエラーを出すようになりました。
- * 例えば、以下のようなコードは NULL を使うように修正が必要です。
+* Classes saved in blueprints are now converted to notplaceable if they inherit a notplaceable base.
+ * Previously it would assert.
+* TIndirectArray no longer inherits TArray.
+ * Any code which does TIndirectArray->TArray casts will now fail.
+ * Code which uses non-exposed TArray functions will need changing, e.g. GetData() should now be GetTypedArray().
+* Some pathnames have been shortened to try and reduce MAX_PATH overflows.
+ * This may affect navigation or batch files which expect files to be in particular places.
+ * Notably, Intermediate/BuildData/Include is now Intermediate/Build/Inc.
+* TWeakObjectPtr now static asserts that it is being instantiated with a UObject-derived type.
+ * This will require that a full class definition wherever TWeakObjectPtrs are constructed, as the compiler won't just assume that your type is a UObject any more.
+* begin() and end() are no longer container methods.
+ * These functions were added purely for ranged-for support; they were not intended to be used in user code.Ranged-for will still work as it uses an alternative system.
+ * Any code using .begin() or .end() on UE containers should be converted to use ranged-for or the older CreateIterator-style of iteration.
+* UnrealHeaderTool will now throw an error when it encounters a default argument that it can't parse.
+ * Code like this, for example, will need to be modified to use NULL:
* `UFUNCTION(BlueprintCallable, Category="SomeCategory")`
* `void Func(UObject* Obj = nullptr)`
* `{`
* `}`
-* ゲーム ターゲットとして時々使用されてきた bCompileMonolithicBinary グローバル変数が削除されました。
- * その代わり、プログラムの TargetRules ファイル (MyGame.Target.cs) の ShouldCompileMonolithic() をオーバーライドします。
- * 必要であれば、コマンドライン引数を使ってオーバーライドすることもできます (-modular、 -monolithic、MONOLITHIC_BUILD=1)。
-* Unreal Build ツールから Fast Iteration Mode が削除されました (不完全な機能)。
-* デフォルトの最小 Windows API (WINVER) が 0x600 にバンプされました (Windows Vista 以降)。
- * Windows XP をターゲットにしたい場合は、 UEBuildWindows.SupportWindowsXP=_true_ に設定します。
- * Windows XP をターゲットにする場合、弊社では WINVER 0x502 (XP SP3) を使用します。
- * Windows XP サポートはまだ進行中ですが、今後のビルドにおいてサポートを付けることを確約します。
+* Eliminated bCompileMonolithicBinary global variable which was sometimes used by game targets
+ * Instead, override ShouldCompileMonolithic() in your program's TargetRules file (MyGame.Target.cs).
+ * You can still use command-line arguments to override this if needed (-modular, -monolithic, or MONOLITHIC_BUILD=1).
+* Removed "Fast Iteration Mode" from Unreal Build Tool (incomplete feature).
+* Default minimum Windows API (WINVER) was bumped to 0x600 (Windows Vista or higher).
+ * If you want to target Windows XP, set UEBuildWindows.SupportWindowsXP=_true_.
+ * When targeting Windows XP, we use WINVER 0x502 (XP SP3).
+ * Windows XP support is a work-in-progress, but we are committed to supporting it in a future build.
#### プラットフォーム
-* 全てのデバイス プロファイルをエディタに戻しています。
-* Removed the DeviceProfiles.ini を削除し、その他のエンジン コンフィグ ファイルと同じコンフィグ階層を使うように変換しました。Base->Default->Saved
-* コンフィグ オプションを使用すると指定してしまうところに Texture Content Streaming が CVar を使えるように更新されました。
-* このプロパティを戻しています。
-* Device Profile の重複しているプロパティを削除しました。
-* デバイス プロファイル設定を CVars が早く初期されるに更新し、Device Profile Blueprints を削除しました。この結果、選択ロジックを実行するデバイス プロファイル プラグインが作成されました。
-* デフォルトへの保存が更新されたので、正しい記述を使用して配列が書き込まれるようになります。
-* インポート後に保存するように設定エディタを更新しました。
+* Putting all device profiles back in the editor.
+* Removed the DeviceProfiles.ini and converted this to use the same config hierarchy as other engine config files.Base->Default->Saved
+* Updated the Texture Content Streaming to use allow usage of CVar where we would otherwise have specified that we use a config option.
+* Putting back this property.
+* Removed Device Profile redundant properties.
+* Updated the device profile setup to allow CVars to be initialized eary and removed Device Profile Blueprints, This has resulted in the creation of device profile plugins which run selection logic.
+* Updated save to defaults, so that array writes are using correct syntax.
+* Updated the settings editor to save after importing.
* **iOS**
- * バーチャル ジョイスティックがタッチスクリーン デバイスに変更されました。アサートが使われるようになりました。ジョイスティックを無効にしたい場合は、 Engine.ini の「[MobileSlateUI]」セクションの InitialTouchInterface ini 設定をオーバーライドします。
- * デバイス検出と UFE/UAT からの展開 / 起動を可能にするために、Unreal Launch Daemon が Messaging で機能するように修正されました。
+ * Virtual joysticks have changed for touchscreen devices.They now use an asset.If you want to disable the joysticks, override the InitialTouchInterface ini setting in the [MobileSlateUI] section of Engine.ini
+ * Unreal Launch Daemon has been fixed to work with Messaging to allow for device discovery and deploying/launching from UFE/UAT.
* **Unreal Frontend**
- * Unreal Frontend (UFE) でプラグインを使用できるようになりました。
- * static ips が可能なようにメッセージングを更新します。
- * PC 以外のサブネット上でデバイスまたはセッションを確認するには、以下の操作を行います (これらのステップは PS4 を確認するためにも必要となります)。
- * Engine/Programs/UnrealFrontend/Saved/Config/Windows/Engine.ini を生成するために UFE を再度実行します。
- * Engine.ini を編集し [/Script/UdpMessaging.UdpMessagingSettings] に追加します。
+ * Unreal Frontend (UFE) can now utilize plugins.
+ * Update to messaging to allow for static ips.
+ * To see a device or session on a subnet different than the PC, do the following (these steps are also needed to see the PS4):
+ * Run UFE once to generate the Engine/Programs/UnrealFrontend/Saved/Config/Windows/Engine.ini
+ * Edit Engine.ini and add to the [/Script/UdpMessaging.UdpMessagingSettings]
* StaticEndpoints=:6666
- * デバイスを 1 つ以上を追加するには、複数回ラインを追加します。
- * iOS の場合は、Unreal Launch Daemon をデバイスにプッシュして実行し、静的 IP アドレスを上記の通り追加するとデバイスが見えるようになります。
- * PS4 の場合は、上記の IP アドレスを追加するとキット上でセッションを確認できます。
- * XB1 でテストされていませんが、機能するはずです。
- * ランチャー ログのコピー / 保存機能が追加されました。
- * UFE に Quick Launch が追加されました。
- * Quick Launch は選択したデバイス上のプロジェクトを即時展開、起動します。
- * -development は UFE コマンドライン上で指定されると、Quick Launch が起動前にプロジェクトもビルドします。
+ * To add more than one device, add the line multiple times.
+ * In the case of iOS, push Unreal Launch Daemon to the device and run it, add the static ip address as above, and it will now see the device.
+ * In the case of PS4, just add the ip address as above and it will see sessions on the kit.
+ * This hasn't been tested with XB1, but it should work.
+ * Added ability to copy and save the launcher log.
+ * Addition of Quick Launch to UFE.
+ * Quick Launch will start a cook on the fly server, deploy, and launch the project on the selected device.
+ * If -development is specified on the UFE command-line, Quick Launch will also build the project before launch.
#### ネットワーキング
-* Lifetime プロパティがサポートされたパスのみになり、これにより恐らくコード変更が必要になります。
-* GetReplicationList は GetLifetimeReplicatedProps に変更されました。
- * GetLifetimeReplicatedProps の呼び出しは 1 度のみとなりました。
-* DOREPLIFETIME が non conditional プロパティを登録することになります。
-* DOREPLIFETIME が conditional プロパティを登録することになります。
-* 可能な条件:
- * COND_None - 条件なく、変更があればいつでも送信できるプロパティです。
- * COND_InitialOnly - 最初の bunch でのみ送信を試みるプロパティです。
- * COND_OwnerOnly - アクタのオーナーのみに送信するプロパティです。
- * COND_SkipOwner - オーナー以外の全ての接続に送信するプロパティです。
- * COND_SimulatedOnly - アクタをシミュレートするために送信されるプロパティです。
- * COND_AutonomousOnly - 自立したアクタに送信されるプロパティです。
- * COND_SimulatedOrPhysics - シミュレートされた OR bRepPhysics アクタに送信されるプロパティです。
- * COND_InitialOrOwner - 最初のパケット上、またはアクタ オーナーに送信されるプロパティです。
- * COND_Custom - 特定の条件は持ちませんが、 DOREPLIFETIME_ACTIVE_OVERRIDE によりオンオフを切り替える機能が必要とされるプロパティです。
+* Lifetime properties are the only supported path now, this will most likely require code changes.
+* GetReplicationList has been replaced by GetLifetimeReplicatedProps.
+ * GetLifetimeReplicatedProps is only called once now.
+* DOREPLIFETIME to register non conditional properties.
+* DOREPLIFETIME_CONDITION to register properties with conditions.
+* Possible conditions:
+ * COND_None - This property has no condition, and will send anytime it changes.
+ * COND_InitialOnly - This property will only attempt to send on the initial bunch.
+ * COND_OwnerOnly - This property will only send to the actor's owner.
+ * COND_SkipOwner - This property send to every connection EXCEPT the owner.
+ * COND_SimulatedOnly - This property will only send to simulated actors.
+ * COND_AutonomousOnly - This property will only send to autonomous actors.
+ * COND_SimulatedOrPhysics - This property will send to simulated OR bRepPhysics actors.
+ * COND_InitialOrOwner - This property will send on the initial packet, or to the actors owner.
+ * COND_Custom - This property has no particular condition, but wants the ability to toggle on/off via DOREPLIFETIME_ACTIVE_OVERRIDE.
-## 今後の追加事項と継続事項
+## 今後の追加事項と継続項目
#### エディタとツール
-* Matinee のカーブ制御点を移動するために CTRL を押下する必要がなくなりました。
-* 進行中のビルドをキャンセルできるように「Compiling C++ Code」通知上に [cancel] ボタンができました。
-* [code-view details] ペインから存在しないコード ファイルを開こうとするとエラー通知が発行されるようになりました。
-* アセット エディタのタブ上に該当するアイコンが付きました。
-* [Add Code To Project] ウィザードの基本クラスのリスト上にアクタが含まれるようになりました。
-* アルファの付いた UI Textures がチェックボードで、アルファ ブレンドを有効にしてサムネイルをレンダリングするようになりました。
-* [Defaults] ボタンの Import/Export/Reset が Editor Preferences / Key Bindings で正しく動作するようになりました。
-* エンジン分析がさらに追加されました。
- * ブループリント エディタにおけるユーザーの無効な接続の試みがトラックされるようになりました。
-* UnrealBuildTool:読み取り専用ファイルによる失敗に対し、サイレント障害ではなく明確にエラーメッセージが出されるようになりました。
-* Play-In-Editor(PIE) の終了時に Matinee が閉じるようになりました。
- * Play-In-Editor(PIE) の起動時には既にこれを行っています。
- * Play-In-Editor(PIE) の終了/ 開始時、間違ったワールドでアクタをうっかり編集してしまわないようにしました。
-* レベル ブラウザ機能がワールド ブラウザにマージされました。レベル ブラウザはやがて削除されます。
-* ゲームのスタートアップ時にロードされ表示可能なフラグを設定するための ULevelStreamingKismet の機能が追加されました (InitiallyLoaded、InitiallyVisible)。
-* **ワールド ブラウザ**
- * レイヤーごとのフィルタリングが追加されました。
- * レイヤー ストリーミング距離設定がオプションになりました。
- * ストリーミング レベルはブループリント グラフ間でドラッグ&ドロップが可能です ( GetStreamingLevel ノードを作成します)。
- * ワールド基点を変更する bIgnoreOriginShifting を無視するオプションがアクタごとに追加されました。
-* [Material Editor Properties] パネルの名前を「Details」に変更しました。
-* 実行時に渡されたアクタを確認するのではなく Actor イテレータの TSubclassof を使用します。
-* Static bool Material Expressions が右クリック メニューのプレビュー オプションに追加されないようにしました。
-* ブループリント スタイル エディタにおいて shift-click 接続で取り消しができるようになりました。
-* マテリアル エディタでカーソルを乗せたりピンを付けると接続がハイライトされるようになりました。
-* Material Comments に色を追加し、最終入力の位置が保存できるようになりました。
-* BeginPlay 中に作成されたアクタは BeginPlay を呼び出すようになりました。
-* ユーザーが入力量に影響を及ぼすことができる他の表現式と一緒に、Texture 表現式の MIP Value Pin が表示されるようになりました。
-* マテリアル エディタ統計情報バー の下の部分をクリックできるようになりました。
-* Play-In-Editor(PIE) 通知がマテリアル、サウンドキュー、サウンドクラス エディタで表示されないようにしました。
-* マテリアルのピンを正確に [ctrl+drag] できるようになりました。
-* マテリアル ノードとピンに対するツールチップが追加されました。
-* [Material Editor Context] メニューにスクロールバーが付きました。
-* 右クリックの接続でやり直し / 元に戻す作業が正確にできるようになりました。
-* パレットから配置されたマテリアル関数が正常に機能するようになりました。
-* 同じ名前のマテリアル パラメータが設定を共有するようになりました。
-* ピンの位置をキャッシュしてノード接続時のジッターを抑えました。
-* Material ノード プレビューが折りたたまれた後も確実に同期するようにしました。
-* マテリアル エディタの検索結果に新規追加されたノードが含まれます。
-* マテリアル関数の呼び出しをペーストしても入力が正確に表示されるようになりました。
-* Lighting Model がマテリアル ドメインに対して正しくないというエラーが起こらないようにしました。
-* MarkPackageDirty パフォーマンスが改善されました。
-* Transition Map オプションがドロップダウン ピッカーを使用するようになりました。
-* タスクのキャンセル時に Perforce モジュールがクラッシュしないようにしました。
-* C++ クラスがクラス ビューアから作成できるようになりました。
-* ソース コントロールへのサブミット時の余計なプロンプトを削除しました。
-* パッケージ化されたサンプル ゲームには正しいアイコンが付けられています。
-* IDE インストールの警告文の文法ミスを修正しました。
-* 表示フォルダのオプションが [View Options] メニューに入りました。
-* スレッドセーフでないメッセージへのログ アクセスを削除しました。
-* バックエンド フィルタが適用されると、フォルダはコンテンツ ブラウザには表示されません。つまり、フィルタを使用するとビューが「平坦化」されます。
-* インポート前後の接続デリゲートが追加されました。
-* PhAT のオプション ツールチップが更新されました。
-* ソース コントロールが無効でも、削除する場合はファイルが書き込み可能になりました。
-* ブループリント インターフェースからのイベントの外見が新しくなりました。
-* レベル エディタ&マップの再ロード時にクラッシュしないようにしました。
-* ライティングの再ビルド時に、ストリーミング レベルのアクタ / レイヤ / BSP が確実に正しく隠れるようにしました。
-* Property Matrix でキーと入力が正しく機能するようになりました。
-* 親イベント / 関数コール上でダブルクリックすると、親ブループリントが開くようになりました。
-* Component ノードを追加すると、コピー / ペースト時にコンポーネントのデフォルトがコピーされるようになりました。
-* Matinee の追加時に表示されるコンボボックス ウィンドウがキーボードで操作可能になりました。
-* ブループリントの Math Library にさらに検索キーワードが追加されました。
-* FTransform にプロキシ構造体のカスタマイズが新規に追加されました。全ての FTransform プロパティが回転に対するローテーター プロキシを使用して編集可能になり、詳細ビューのアクタ変形のようになりました。
-* 詳細ビューでのアクタ変形のように、レベルの変換が編集可能になりました。
-* IsValidIndex が TBitArray に追加されました。
-* 国際化データ構造を修正したので、任意のメタデータを使用して入力の格納と検索が可能になりました。
-* WIX 製の第三者ライブラリが最新の v3.8 リリースに更新されました。
-* スプライン メッシュにマイナスのスケールを適用しても裏返しにならなくなりました。「前方」軸上でマイナスのスケールを適用するとスプライン メッシュの表から裏へ反転するようになりました。
-* ランドスケープのアルファ / パターンブラシによるテクスチャ マスク セレクタが改善されました。
-* ウィジェット自体が無効になっていても、ウィジェットのツールチップが表示されるようになりました。
-* **スレート**
-* SComboBox と SComboButton が FEditorStyle に依存せずに Slate Widget Style を使用するようになりました。
+* It is no longer necessary to hold CTRL to move curve control points in matinee.
+* There is now a "cancel" button on the "Compiling C++ Code" notification to allow cancellation of the current build.
+* Attempting to open non-existent code files from the code-view details pane now emits an error notification
+* Asset editors now have relevant icons on their tabs.
+* The Add Code To Project wizard now includes Actor on the list of basic classes.
+* UI Textures with alpha now render thumbnails with a checkerboard, and with alpha blending enabled.
+* Import/Export/Reset to Defaults buttons now work correctly in Editor Preferences / Key Bindings.
+* Added more engine analytics.
+ * Tracking when user attempts invalid connections in Blueprint Editor.
+* UnrealBuildTool:Failure due to read-only project files when generating project files is now a clear error message not a silent failure.
+* Matinee now closes when Play-In-Editor(PIE) ends.
+ * It already does this when Play-In-Editor(PIE) starts.
+ * Closing stops accidental editing of actors in the wrong world when Play-In-Editor(PIE) starts/ends.
+* Levels Browser functionality was merged into World Browser.Levels Browser will be removed eventually.
+* Added ability for ULevelStreamingKismet to set loaded and visible flags at game startup (InitiallyLoaded, InitiallyVisible).
+* **World Browser**
+ * Added better filtering by layers.
+ * Layer streaming distance setting is optional now.
+ * Streaming levels can be drag'droped from onto blueprint graph (creates GetStreamingLevel node).
+ * Added per actor option to ignore world origin shifting bIgnoreOriginShifting.
+* Changed Material Editor Properties panel name to "Details."
+* Use TSubclassof for Actor iterators instead of checking Actor is passed in at runtime.
+* Prevented Static bool Material Expressions from adding preview option to right click menu.
+* Allowed shift-click connections in blueprint style editors to be undone.
+* Connections are now highlighted when hovering or marking a pin in the Material Editor.
+* Added colour to Material Comments and allowed position of final input to be saved.
+* Actors created during BeginPlay now get BeginPlay called on them.
+* MIP Value Pin of Texture expressions now shown, along with any other expressions where users can affect the amount of inputs.
+* Can now click on areas underneath the Material Editor stats bar.
+* Prevent Play-In-Editor(PIE) notification from displaying in Material, SoundCue and SoundClass editors.
+* Can now Ctrl+drag material pins correctly.
+* Added tool tips for material nodes and pins.
+* Material Editor Context menu now has a scroll bar.
+* Right-click connections now undo/redo correctly.
+* Material Functions placed from the palette will now work correctly.
+* Material Parameters with the same name now share settings.
+* Reduced node connection jitter by caching position of pins.
+* Made sure Material node previews are synced up after being collapsed.
+* Material Editor search results include newly added nodes.
+* Pasted material function calls now display correct inputs.
+* Prevented error when Lighting Model is not correct for Material Domain.
+* Improved MarkPackageDirty performance.
+* Transition Map option now uses dropdown picker.
+* Prevented crash in Perforce module when cancelling tasks.
+* C++ classes can now be created from the Class Viewer.
+* Removed extra prompt when submitting to source control.
+* Example games now have correct icon when packaged.
+* Corrected grammar in warning about IDE installation.
+* Option to display folders is now in the View Options menu.
+* Removed non-thread safe message log access.
+* When backend filters are applied folders are not displayed in the Content Browser.This means the view is 'flattened' when using any filtering.
+* Added pre & post-import hook delegates.
+* Updated options tooltips in PhAT.
+* Files can now be made writable when deleting while source control is disabled.
+* Events from Blueprint interfaces now have different appearance.
+* Prevented crash when reloading level editor & maps.
+* Made sure that actors/layers/BSPs in streaming levels are properly unhidden when rebuilding lighting.
+* Arrow keys & enter now function correctly in Property Matrix.
+* Double clicking on a parent event/function call now opens the parent Blueprint.
+* Add Component nodes now copy their component defaults when copy & pasted.
+* Popup combo window when adding keys to Matinee is now controllable via keyboard.
+* Added more search keywords to Blueprint math library.
+* Added new proxy struct customization for FTransform.All FTransform properties are now editable using rotator proxy for their rotation & appear like the actor transform in the details view.
+* Level transform is now editable like Actor transform in the details view.
+* Added IsValidIndex to TBitArray.
+* Modified internationalization data structures so they can store and lookup entries using arbitrary metadata.
+* Updating WIX third party library to final v3.8 release.
+* Spline meshes no longer turn inside out when scaled negatively, and negative scale on the "forward" axis now flips the spline mesh front-to-back.
+* Improved landscape alpha/pattern brush texture mask selector.
+* Tooltips are now displayed for widgets even if the widget itself is disabled.
+* **Slate**
+* The following widgets now use a Slate Widget Style and are no longer dependent on FEditorStyle:
* SProgressBar
* SScrollBar
* SExpandableArea
@@ -556,7 +558,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* SSplitter
* STableRow
* SDockTab
-* 以下のウィジェットで FEditorStyle は内部では使われなくなりました。
+* The following widgets are no longer using FEditorStyle internally:
* SExpandableButton
* SNotificationList
* SHeader
@@ -564,184 +566,184 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* SBreadcrumbTrail
* SNumericEntryBox
* SColorPicker
-* **マテリアル エディタ**
- マテリアル エディタの [preview toolbar] ボタンはメインのツールバーではなくビューポートのツールバー上に表示されるようになりました。
-* **プラットフォーム ゲーム**
- * Slate Widget Style アセットを使用するように変換され、 FEditorStyle に全く依存しなくなりました。
-* AnimInstance イベントの「Kismet」が「Blueprint」に置き換えられました。
- * PhAT の Simulate コマンドが Bound キーを正確に使うようになりました。
- * PhAT の Copy properties コマンドがビューポート以外でも機能するようになりました。
- * Animation ブループリントから派生したブループリントを作成する機能を削除しました。
-* ランドスケープのペイント中にグラウンドが変化すると、フォーリッジの方向が Max Angle 設定に限定されます。
-* UE4Editor*-cmd で開始するプロセスを Windows の Ctrl とクリックで対応し、デストラクタがクラッシュしないように Ctrl とダブルクリックによる強制終了を有効にしました。
-* ユーザーが使いやすいアセット名をもっと含んで、使用されないアセットを削除し、オーディオの使用に整合性を持たせるなど、ストラテジー ゲームの幾つかの特性を整理しました。
-* StrategyGame カメラが改定され、 StrategyCameraComponent クラスの中へ置かれました。
-* レース開始前の自爆の中止、ビューポートでの再生時の一時停止など、ビークル サンプルの幾つかの特性を整理しました。
-* ブラックジャック サンプル ゲームのインターフェースを整理しました。これにより、ブループリント間通信が使用されるようになり、ブループリントがアーカイブに使用していた古いインターフェースは削除されました。
-* オブジェクト上の blackjack フォントを整理しました。クリップ値などです。
-* シューティングゲームの FORCEDINLINE を幾つか整理しました。
+* **Material Editor**
+ * The preview toolbar buttons in the material editor are now shown on a viewport toolbar, rather than being on the main toolbar.
+* **PlatformerGame**
+ * Converted over to use Slate Widget Style assets, and now has no dependency on FEditorStyle.
+* Replaced 'Kismet' with 'Blueprint' on AnimInstance events
+ * Simulate command in PhAT now uses bound key correctly
+ * Copy properties command in PhAT now works outside of the viewport
+ * Removed ability to create derived blueprints from animation blueprints
+* Foliage orientation is now limited to Max Angle setting when the ground changes during landscape painting
+* Enable windows control-c handling for processes started with UE4Editor*-cmd, force termination on double ctrl-c to prevent destructors crashing
+* Cleaned up several aspects of Strategy game including more user friendly asset names, removing unused assets, made audio usage consistent etc.
+* StrategyGame camera has been revised and put into its own StrategyCameraComponent class.
+* Cleaned up several aspects of vehicle sample including stopping self destruct before race begins, allowed pause when playing in viewport etc.
+* Cleaned up blackjack sample game interface - it now uses inter blueprint communication and the old interface bleuprint used to achieve this has been removed.
+* Cleaned up blackjack fonts on objects.Chip value etc.
+* Cleaned up some FORCEDINLINE in shootergame.
#### レンダリング
-* デフォルトのポストプロセス マテリアルで透過的に古いパスが見えるようにしました。これにより、ポストプロセス マテリアルのコンパイル中、単一のテクスチャで画面全体が透明になることがなくなりました。
-* 新規のパラメータをマテリアル パラメータ コレクションに追加すると、一意の適切な名前が生成されるようになりました。
-* スタティック メッシュ LOD 距離設定からのクランプ処理を削除しました。
-* 反射面に対する反射キャプチャの精度があがりました。非常に大雑把な面スペキュラです。
-* ES2 の指向性ライトマップ マテリアル フラグの使用を追加しました。
-* 非常に大雑把ではありますが、ES2 のマテリアルにフラグが追加されました。
-* スペキュラ マテリアル出力が ES2 で機能するようになりました。
-* **その他のパーティクル レンダリング**
- * 自動生成による境界がかなり狭くなったので、カスケードの [set fixed bounds] を修正します。
- * 透過処理されたボリュメトリック シャドウを投射すると、パーティクルがライトの方へ向くようになりました。
+* Default post process material now has a transparent hole in it, letting you see through to the previous pass.This stops the whole screen being obscured by a single texture when post process material are being compiled.
+* When adding a new parameter to a material parameter collection, it now generates a proper unique name.
+* Removed clamping from static mesh LOD distance setting.
+* Improved accuracy of reflection capture for reflective surfaces.Fully rough dims specular.
+* Added use directional lightmap material flag for ES2.
+* Added fully rough flag to materials for ES2.
+* Specular material output now works on ES2.
+* **Misc Particle Rendering**
+ * Automatically generated bounds are much tighter, fixes 'set fixed bounds' in Cascade.
+ * Particles now face toward the light when casting translucent volumetric shadows.
#### ブループリント
-* ブループリントのノード探知能力が改善されました。
- * 様々なノード タイプに対して検索キーワードが幾つか追加されました。
-* ブループリント ノードに関するドキュメント類が改善されました。
- * 目的と機能を分かりやすくまとめるため、幾つかのブループリント ノードに詳細な (「大きい」) ツールチップが追加されました。
-* ブループリントの level actor reference ノードのデザインが新しくなりました。
-* ブループリントの compact array function ノードのデザインが新しくなりました。
-* 全てのブループリントを展開して全てのコメントがインクルードされます。
-* 利用するキーボードをコンポーネント エディタで適切に「複製」したり「削除」できるようになりました。
-* [My Blueprint] ウィンドウでの削除にキーバインドを使用するようになりました。
-* ブループリントのデバッグにおいて F5 でもステップ実行ができるようになりました。
-* ステートマシンの名前変更がグラフ内で可能になりました。
+* Improved blueprint node discoverability.
+ * Added several search keywords to a variety of node types.
+* Improved Blueprint node documentation.
+ * Added verbose ("big") tooltips to several blueprint nodes to better document their purpose and functionality.
+* Redesigned level actor reference nodes in Blueprints.
+* Redesigned compact array function nodes in Blueprints.
+* Expanding searching all Blueprints to include all comments.
+* Components editor will now properly "duplicate" and "delete" utilize keybindings.
+* Deleting in the My Blueprint window now utilizes keybindings.
+* F5 will now "Step" in Blueprint debug.
+* State machines can be renamed in the graph.
#### ゲームプレイとフレームワーク
-* 物理コンストレイントを終了するためのデリゲートが追加されました。
-* Joint drive 関数がブループリントにエクスポーズされました。
-* コンテンツ ブラウザでの管理できるようにマップをアセットとして取り扱う準備作業。
- * UWorld オブジェクトは、その他の全てのアセットと同様に、それらを含むパッケージに因んだ名前が付くようになりました。
- * 「TheWorld」という名前のオブジェクトをパッケージ内で検索するコードに置き換えるための静的関数 UWorld::GetWorldFromPackage が追加されました。
-* コンテンツ ブラウザ内のフィルタは、それが特別なフィルタのあるタイプでない限り、選択したアセットタイプのサブクラスを表示するようになりました。
- * 例えば、ブループリントは AnimBlueprints は表示されませんが、 DataAsset 派生した DataAssets は全て表示されます。
-* メインのティック ループの一定のオーバーヘッドを削減するため、デディケイテッド サーバーのパフォーマンスに関してマイナーな改善が数多く行われました。
-* パフォーマンスに影響する可能性のある UE_BUILD_TEST 内のものを多数無効にしました。
-* メモリのレポート機能がエンジン全体で改善されました。
-* Windows binned allocator の効率が約 5% 向上したので、提供されるメモリ デバッグ情報も質が改善されました。
-* メモリを保存するために、ウィンドウ上のワーカースレッドのスタック サイズが削減されました。
-* 最大カリング距離がエディタ ビューポートでデフォルトで無視されるようになりました。G でゲーム レンダリング モードに入ると最大カリング距離が順守されます。
-* フォーカスへの優先度が AIController に追加されました。移動、ゲームプレイなどに対し異なるフォーカスを付けることができます。
-* navmesh 上でのランダム位置の検索が Detour の半径で正確に制約されるようになりました。
-* フォーカスへの優先度が AIController に追加されました。移動、ゲームプレイなどに対し異なるフォーカスを付けることができます。
-* navmesh 上でのランダム位置の検索が Detour の半径で正確に制約されるようになりました。
-* navmesh 生成時において、 衝突障害物としてボックス、カプセル、球体プリミティブのサポートが追加されました。
-* サウンドが再生される順序 (逆再生とは反対) でパースされるようになりました。そのため、複数のサウンドが同時再生されると、グループ管理などのノードは正確に評価します。
-* 追加のコマンドライン パラメータをスタンドアロン再生セッションに対して [Editor] -> [Play In settings] から指定できるようになりました。
-* アセットの一括エクスポートがコンテンツ ブラウザからできるようになりました。
-* 「public include」フォルダに間違えて置かれていた幾つかの C++ ファイルが移動されました。
-* 間違えて宣言した SpriteInfo の対処がしやすくなりました。
-* アニメーションを適用せずにボーンを変形できるようにペルソナが変更されました。
-* 管理に必要なコードの量を減らすために、ペルソナのプレビュー シーンをアニメーション ビューポートからペルソナ自体に移動しました。
-* 手動ではなく FTransform 計算をするように、ルート モーション コードをリファクタリングしました。
- * ルート モーション中は PhysicsRotation が無効になります。DesiredRotation はルート モーション回転で問題が発生する可能性があります。
-* FRotator::Equals はノーマライズされたローテータに対してテストを行います。
-* **コリジョン**
- * Collision モードの可視化が追加されました。
+* Added delegates for breaking physics constraints.
+* Exposed joint drive functions to Blueprints.
+* Preparation work for treating maps as assets so they can be managed in the content browser.
+ * UWorld objects are now named after the package that contains them, just like all other assets.
+ * Added static function UWorld::GetWorldFromPackage to replace code that was searching for an object named "TheWorld" in a package.
+* Filters in the content browser now show you subclasses of the asset type you select unless there is a more specific filter for that type.
+ * For example, Blueprint will not show you AnimBlueprints, but DataAsset will show you all derived DataAssets.
+* Many minor dedicated server perf improvements to reduce constant overhead of the main tick loop.
+* Disabled many things in UE_BUILD_TEST that may affect performance.
+* Memory reporting has been improved across the engine.
+* The windows binned allocator is now around 5% more efficient and gives better memory debugging information.
+* Reduced the stack size of worker threads on windows to save memory.
+* Max Cull distance is now ignored in the editor viewports by default.Entering game render mode with G will respect max cull distance.
+* Added priorities to focus in AIController.We can have different focus for movement, gameplay, etc.
+* Find random location on navmesh is exactly constrained by radius in Detour now
+* Added priorities to focus in AIController.We can have different focus for movement, gameplay, etc.
+* Find random location on navmesh is exactly constrained by radius in Detour now.
+* Added support for box, sphyl and sphere primitives as colliding obstacles in navmesh generation.
+* Sounds are now parsed in the order they were played (as oppose to reverse order) so that when multiple sounds are played at the same time nodes such as the group control evaluate correctly.
+* Additional command line parameters can now be specified for a standalone play session via the Editor -> Play In settings.
+* Bulk Exporting of assets can now be done from the content browser.
+* Some C++ files which were incorrectly placed in public include folders have been moved.
+* Better handling of misdeclared SpriteInfo.
+* Changed Persona so that it is possible to transform bones without an animation applied.
+* Moved Persona's preview scene out of the animation viewport into Persona itself to reduce the amount of code needed to manage it.
+* Refactored root motion code to use FTransform math instead of doing it manually.
+ * Disable PhysicsRotation while doing root motion.DesiredRotation would fight root motion rotation.
+* FRotator::Equals tests against normalized rotators.
+* **COLLISION**
+ * Added collision mode visualization.
#### コア
-* スタートアップ コードで使用できるように、乱数生成器はエンジン初期化において早めにシードが与えられるようになりました。
-* FUTF8ToTCHAR::Length と FTCHARToUTF8::Length は、「十分足りる」長さではなくて、正確な長さを返すようになりました。
-* クラッシュというようよりは不足ファイルの処理を要求されると、UnrealHeaderTool がエラーを報告します。
-* TArray::RangeCheck が最適化されました。
-* TArray::Append はムーブの必要性を認識しムーブするようになりました (move-aware)。
-* Visual Studio 2010 のサポートを完全に廃止しました (2010 サポートが必要な場合は Nov 2012 QA build をご利用ください)。
-* 大きな改善点は、UnrealBuildTool の依存図式を可視化したことです (-graph オプション)。
- * 出力ファイルが /UE4/Engine/Intermediate/.gephi に保存されるようになりました。
- * 5 種類のグラフが含まれるようになりました (UBT の GraphVisualizationType を参照)。
- * C++ のヘッダーの関係を可視化します。
- * ソールファイル ノードのサイズが改善されました。
- * 項目全般において改善とバグ修正を行いました。
-* Visual Studio 2013 が UnrealVS 拡張機能のサポート対象になりました(注:UE4 はまだ 2013 との互換性はありません)。
-* UE4 ソースコードにより Visual Studio における IntelliSense の動作が改善されました。
-* 各種 UE4 のコンパイル時間が改善されました (継続中)。
-* エディタ:エディタから起動した場合、 ES2 で Faketouches モードを強制するようにしました。
-* Windows プラットフォーム上の Clang コンパイラに対する実験的なサポートの追加が始まりました。
-* モジュール ソース コードの検索中に中間フォルダが見つかると、UnrealBuildTool が警告を出します。
-* Async のロード処理が改善されました (パフォーマンスと修正)。
-* MCPP の VS2013 build が追加されました。
-* nvtesslib の VS2013 build が追加されました。
-* nvtexturetools の VS2013 build が追加されました。
-* Vorbis と Ogg の VS2013 build が追加されました。
-* nvtristrip の VS2013 build が追加されました。
-* ForsythTriOptimizer の VS2013 build が追加されました。
-* HACD の VS2013 build が追加されました。
-* ICU の VS2013 build が追加されました。
-* Box2D の VS2013 build が追加されました。
-* hlslcc の VS2013 build が追加されました。
-* libPNG と zlib の VS2013 build が追加されました。
-* IntelTBB の VS2013 build が追加されました。
-* FreeType2 の VS2013 build が追加されました。
-* Recast の VS2013 build が追加されました。
+* The random number generator is now seeded earlier in engine initialization to allow its use in startup code.
+* FUTF8ToTCHAR::Length and FTCHARToUTF8::Length now return precise lengths, rather than 'big enough' lengths.
+* UnrealHeaderTool reports an error when it is asked to process a missing file, rather than crashing.
+* TArray::RangeCheck optimization.
+* TArray::Append is now move-aware.
+* Fully removed Visual Studio 2010 support (use the Nov 2012 QA build if you need 2010 support).
+* Major improvements to UnrealBuildTool's dependency graph visualization ("-graph" option).
+ * Output files are now saved in /UE4/Engine/Intermediate/.gephi
+ * Now includes five different graph types (see GraphVisualizationType in UBT).
+ * Supports C++ header relationship visualization.
+ * Better sizing of source file nodes.
+ * General improvements and bug fixes.
+* UnrealVS extension now supports Visual Studio 2013 (NOTE:UE4 does not compile with 2013 yet though).
+* IntelliSense now works better with UE4 source code in Visual Studio.
+* Various UE4 compile time improvements. (ongoing)
+* Editor:We now force "faketouches" mode in ES2 preview when launched from editor.
+* Began adding experimental support for Clang compiler on Windows platform.
+* UnrealBuildTool will now emit warnings if Intermediate folders are encountered while looking for module source code.
+* Async loading improvements (performance + fixes).
+* Added a VS2013 build of MCPP.
+* Added a VS2013 build of nvtesslib.
+* Added a VS2013 build of nvtexturetools.
+* Added a VS2013 build of Vorbis and Ogg.
+* Added a VS2013 build of nvtristrip.
+* Added a VS2013 build of ForsythTriOptimizer.
+* Added a VS2013 build of HACD.
+* Added a VS2013 build of ICU.
+* Added a VS2013 build of Box2D.
+* Added a VS2013 build of hlslcc.
+* Added a VS2013 build of libPNG and zlib.
+* Added a VS2013 build of IntelTBB.
+* Added a VS2013 build of FreeType2.
+* Added a VS2013 build of Recast.
#### ネットワーキング
-* 初回パスが FText へのほとんどのネットワーク エラー メッセージをカバーします。
-* NetDriver::InitListen への参照により FURL パラメータを作成したので、実際のポート割り当てを戻すことができます。
+* First pass converting most network error messages to FText.
+* Made FURL parameter by reference into NetDriver::InitListen so that actual port assignment can be passed back out.
#### プラットフォーム
-* アーキテクチャのコンセプトが UBT に追加されました。IOS ("-simulator") と HTML5 ("-win32") での使用を開始しました。このように、異なる CPU アーキテクチャのためのプラットフォームは複数必要ありません。
-* DirectShow の VS2013 build が追加されました。
-* VS2013 のビルドに必要な wincrypt include が追加されました。
-* スタティック メッシュ エディタに「Generate Unique UVs 機能は Windows 以外のプラットフォームにはまだ実装されていない」旨のダイアログ警告が表示されるようになりました。
+* Added the concept of Architecture to UBT.Beginning to be used in IOS ("-simulator") and HTML5 ("-win32").This way, we don't need multiple platforms for a different CPU architecture.
+* Added a VS2013 build of DirectShow.
+* Added a wincrypt include which is necessary for VS2013 builds.
+* Made the StaticMesh editor show a dialog warning users that the "Generate Unique UVs" feature isn't implemented on non-Windows platforms.
* **Mac**
- * Mavericks の新しいデフォルト マルチモニター モードでの動作中、メイン エディタ ウィンドウによりオーバーラップされたウィンドウがマウスクリックを横取りしないようにしました。
- * Mac OS X Mavericks の新しいマルチモニター モードで複数の画面間を移動する時、ウィンドウが終了や移動したり非表示には絶対にならないようにしました。
- * デバッグ & テクスチャ ローディング機能向けに Mac OS X に提供された新しい OpenGL バージョンにより追加された拡張機能を使用します。
- * Mission Control キーボード ショートカットがエディタを混乱させたりキーボード入力を壊さないようにしました。
- * Mavericks の新しいマルチモニター モードのデフォルト状態でウィンドウが非表示にならないように、Mac OS X にリコンフィギュレーション表示を手動で行います。
- * Mac OS X にデフォルト マージツールの p4merge.app を作成しました。
- * デフォルトのアプリケーションを使ってエディタ サービスの Launch Game を開くようにしました (Finder のダブルクリックと同じプロジェクトです)。
- * 2 つ以上の UE4 インスタンスが動作中、Mac OS X のAMD カード上で青が点滅しないようにしました。
- * Mac OS X に幾つかサンプルをロードする際のクラッシュを避けるため、Nvidia ドライバーのバグに対処しました。
+ * Stopped windows overlapped by the main editor window from stealing mouse clicks when running under Mavericks' new default multi-monitor mode.
+ * Made sure that windows close, move & don't disappear when moved across screens under Mac OS X Mavericks' new default multi-monitor mode.
+ * Use the extensions added by newer OpenGL versions provided on Mac OS X for debug & texture loading features when available.
+ * Prevented Mission Control keyboard shortcuts from confusing the editor & breaking keyboard input.
+ * Manually handle display reconfiguration on Mac OS X so that windows don't disappear under Mavericks' new default multi-monitor mode.
+ * Made the default merge tool p4merge.app on Mac OS X.
+ * Make the editor services 'Launch Game' use the default application to open (the project the same as double-clicking in Finder).
+ * Prevent blue flickering on AMD cards under Mac OS X when more than one UE4 instance is running.
+ * Worked around an NVIDIA driver bug to avoid crashes loading some samples on Mac OS X.
* **Moblie**
- * iOS にテクスチャ ストリーミングのサポートが追加されました。
- * OpenGL TexStorage2D の処理がクリーンアップされ、iOS へのテクスチャ格納のサポートが追加されました。
- * OS のメモリ不足警告に対応するため、コールバック関数が追加され iOS 上に実装されました。
- * per-process stat を返す task_info() api を使うために iOS にアロケートされたメモリ情報を変更しました。
- * iOS のバーチャル ジョイスティックが改善されました。
+ * Added support for texture streaming on iOS.
+ * Cleaned up OpenGL TexStorage2D handling and added support for texture storage on iOS.
+ * Added callback function to handle OS low memory warning, implemented on iOS.
+ * Changed iOS allocated memory stat to use the task_info() api which returns the per-process stat.
+ * Improvements to virtual joystick on iOS.
-#### オンライン
-* OSSNull の GenerateRandomUserId が常に Guids を使うように変更されました。
- * **ストリーム**
- * アクセスしやすいようにログ内の App Id printout をストリームとして取り扱います。
- * 実際の Steam API calls の呼び出し前に Steam Dlls がロードされることを確認し、存在しない場合は fail モジュールとなります。
+#### Online
+* Changed GenerateRandomUserId for OSSNull to always use Guids.
+ * **Steam**
+ * Steam App Id printout in logs for easier access.
+ * Check for Steam Dlls to be loaded before calling actual Steam API calls, fail module if not present.
* **Misc**
- * オンライン ティック関数および async タスク マネージャに統計情報を幾つか追加しました。
+ * Added some stats to online tick functions and async task manager.
-## 周知の問題
+## 既知の問題
* **INFILTRATOR**
- * 光源が以前より暗くなりました。
- * 起動時、エディタが反応しません。
+ * Lighting is darker than previously.
+ * Editor unresponsive when launched
* **CONTENT EXAMPLES**
- * Scalability インターフェースエクストラ メッシュ
- * NavMesh:ゲームで壊れたポーン
- * Input_Examples:制御のうち動かないものがあります。
+ * Mouse_Interface:Extra mesh.
+ * NavMesh:Pawns broken in game.
+ * Input_Examples:Some controls are not working
* **EDITOR**
- * キーボード ショートカット:モディファイア キーの変更により結合のコミットが早まります。
- * ウィークリーテストにおいてサブ エディタのパフォーマンスが落ちました。
+ * Keyboard Shortcuts:Changing modifier keys commits binding prematurely.
+ * Sub-editor performance has dropped during weekly tests.
* **ELEMENTAL**
- * CRASH:テクスチャ座標の数字が無効です。
+ * CRASH:Invalid number of texture coordinates.
* **PLATFORMERGAME**
- * SaveGameBP に解決できないコンパイラ エラーが存在しています。
+ * SaveGameBP unresolved compiler error.
* **SHOWCASES**
- * PostProcessMatinee:ライティング エラーを再ビルドします
+ * PostProcessMatinee:Rebuilt lighting error.
* **WORLDBROWSER**
- * Play-In-Editor では、プレイヤーは移動できません。
+ * Player can not move when Play-In-Editor.
* **SHOOTERGAME**
- * CRASH:Highrise 上にライティングをビルドした後です。
+ * CRASH:After building lighting on Highrise.
* **Unreal Frontend**
- * 高度なタブでは PS4 設定を使用せず、むしろ XboxOne のビルドおよび段階わけを試みます。
- * サンプル プロジェクトを Unreal Frontend から起動するとエラーになります。
+ * Advance tab won't use the PS4 settings rather it will attempt to build and stage the XboxOne.
+ * Samples projects will fail to launch from the Unreal Frontend.
* **MAC**
- * RENDERING:ビューポートのグラフが破損しました。
+ * RENDERING:Graphics corruption in viewport.
* **PS4**
- * 起動時にクラッシュ (PS4File.cpp:アサーションに失敗しました:OpenParams != nullptr)
+ * Crashes on launch (PS4File.cpp:Assertion failed:OpenParams != nullptr)
* **RENDERING**
- * OPENGL:ES2:CRASH:既存のゲーム
+ * OPENGL:ES2:CRASH:Exiting game
* **VEHICLE**
- * Low FPS のローエンド ビデオカードのユーザーはコースを完了できなくなります。
+ * Users on low-end video cards with Low FPS are unable to complete the course.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/January/ReleaseNotesJanuary2014.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/January/ReleaseNotesJanuary2014.KOR.udn
index b209d96f5f33..4187a034d589 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/January/ReleaseNotesJanuary2014.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/January/ReleaseNotesJanuary2014.KOR.udn
@@ -1,9 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Title: January 2014 Release Notes
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
-Template:ReleaseNotes.html
+Parent:Support/Builds
+Order:-2
[TOC(start:2 end:2)]
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/March/ReleaseNotesMarch2014.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/March/ReleaseNotesMarch2014.JPN.udn
index d9c21c241c84..99f013ce32a1 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/March/ReleaseNotesMarch2014.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/March/ReleaseNotesMarch2014.JPN.udn
@@ -1,8 +1,10 @@
-INTSourceChangelist:2591123
+INTSourceChangelist:3367470
Title:2014 年 3 月リリースノート
Crumbs:%ROOT%, Support/Builds
Description:
Availability:Licensee
+Parent:Support/Builds
+Order:-1
[TOC(start:2 end:2)]
@@ -12,10 +14,10 @@ Availability:Licensee
[REGION:simpletable]
| アイテム | 情報 |
| ---- | ---- |
-| **Labels** | [INCLUDE:#labels] |
+| **ラベル** | [INCLUDE:#labels] |
| **Built from Changelist #** | (//depot/UE4-QA/Promotable-CL-) |
| **Branched from Changelist #** | (//depot/UE4/Promoted-CL-) |
-| **Visual Studio バージョン** | |
+| **Visual Studio Version** | |
| **DirectX** | June 2010 |
[/REGION]
@@ -34,11 +36,11 @@ QA_APPROVED_UE4_BUILD_MINIMUM
これにより、March QA ビルドが遅れる結果となり、**UE4-Releases/4.0/** のコンテンツは現時点で有効なコンソールに含まれていません。現在 **//depot/UE4-QA-Unstable/** ( *which was branched from Releases* ) に保存されているコンソールを、認証から安全に作業ができるブランチへ戻す作業をしています。 **//depot/UE4-QA/** へすぐにブランチしますが、コンソール ゲームを行う場合は、April QA ビルドで最低 1 つコンソールの認証ビルド、May QA では両方のビルドが含まれるようにします。
* 現時点のエンジン開発ロードマップ: [UE4 Roadmaps](https://udn.unrealengine.com/questions/topics/roadmap.html)
-* 修正されたバグ: [UE4 Fixed Bugs March 2014]
-* 周知の問題: [UE4 Known Issues March 2014]
+* 修正されたバグ: [UE4 Fixed Bugs March 2014]
+* 周知のバグ: [UE4 Known Issues March 2014]
-## 主な新機能
+## 主要な新機能
#### ブループリント
@@ -52,7 +54,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM

- _実行は Gate マクログラフ内部の Enter 出力に適用されたシーケンス ノード上でブレークします。マクロ内部の Branch ノード上にブレークポイントを設定し、[Resume(再開)] をクリックすると_
+ _実行は Gate マクログラフ内部の Enter 出力に適用されたシーケンス ノード上でブレークします。マクロ内部の Branch ノード上にブレークポイントを設定し、[Resume (再開)] をクリックすると_

@@ -152,11 +154,11 @@ QA_APPROVED_UE4_BUILD_MINIMUM
1 アンリアル単位 = 1 センチ (cm)
- * 新しいスナップサイズです:
+ * 新しいスナップサイズです。

- * 環境設定の Viewports->Grid Snapping で、ゲームに対するスナップ設定をべき乗に戻すことができます:
+ * 環境設定の Viewports->Grid Snapping で、ゲームに対するスナップ設定をべき乗に戻すことができます。

@@ -198,7 +200,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* プレースメント ブラウザが全く新しいデザインで生まれ変わりました!
- 新しいプレースメント ブラウザでは、ライト、トリガー、ボリューム、全てのクラスへの迅速なアクセスだけでなく、最近配置したアセットの非常に長いリストにもアクセスできます。
+ 新しいプレースメント ブラウザでは、ライト、トリガー、ボリューム、全てのクラスへの迅速なアクセスだけでなく、最近配置したアセットの非常に長いリストにもアクセスできます。
* Editor モードがすべて [Tools] タブの中に統合されました。
@@ -210,14 +212,14 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* **[Details] パネルのヘッダがスリムになり、 C++ ファイルを開けるようになりました**
- * 2 本だったヘッダー行がシンプルな 1 行に圧縮されました。アイコン ツールチップがクラス名を表示するようになりました (Scene Outliner など)。
+ * 2 行だった詳細ヘッダーがシンプルに 1 行に圧縮されました。アイコン ツールチップがクラス名を表示するようになりました (Scene Outliner など)。
* C++ コードのあるアクタの場合は、ヘッダファイルのハイパーリンクをクリックればコードを開くことができます (VS または Xcode をインストールしている場合のみ表示されます)。

+ * これまではアクタ クラス名にブループリント エディタへ飛ぶハイパーリンクが付いていました。それが今度は別のボタンとなりました。
- これまではアクタ クラス名にブループリント エディタへ飛ぶハイパーリンクが付いていました。それが今度は別のボタンとなりました。

* ビューポートの右クリック メニューに C++ ファイルへのアクセスも追加しました (コンパイラをインストールしている場合に限ります)。
@@ -238,11 +240,11 @@ QA_APPROVED_UE4_BUILD_MINIMUM
#### レンダリング
-* **光沢のあるスクリーン空間の反射**
+* **光沢のある Screen Space Reflections**
- * マテリアルのラフネスをサポートするスクリーン空間の反射が追加され、デフォルトで有効になりました!
+ * マテリアルのラフネスをサポートする Screen Space Reflections (スクリーン スペース反射) が追加され、デフォルトで有効になりました!
+ Screen Space Reflections を使用したくない場合は、ポストプロセス設定でこの機能を弱める / 無効にすることができます。
- スクリーン空間の反射を使用したくない場合は、ポストプロセス設定でこの機能を弱める / 無効にすることができます。
マイナーな調整が必要なマテリアルもありますが、それらは他の反射に対しても正しい表示はされません。
Image Based Lighting と 法線 (解析的) 光源を一致させました。
@@ -268,9 +270,9 @@ QA_APPROVED_UE4_BUILD_MINIMUM
#### アニメーション
-* **一様でないスケール アニメーション**
+* **不均等なスケール アニメーション**
- * 一様でないスケール アニメーションがサポートされるようになりました。オプションは必要ありません。アニメーションをインポートすると、スケールが存在する場合、それもインポートされます。
+ * 不均等なスケール アニメーションがサポートされるようになりました。オプションは必要ありません。アニメーションをインポートすると、スケールが存在する場合、それもインポートされます。
全てのアニメーションに対してスケールを保存するわけではありませんので、メモリの心配もありません。1 ではないスケールをもつアニメーションのみを保存します。
@@ -283,11 +285,11 @@ QA_APPROVED_UE4_BUILD_MINIMUM
[](Keridan_Facial_Compound.wmv)
-## 新機能の追加
+## 新規追加
#### エディタとツール
* 新しいサウンド ノードがサウンドキュー エディタで選択済みのノードへ自動接続されるようになりました。
-* Placement Browser が全く新しいデザインになって戻ってきました!コンテンツ ブラウザの [Clasees] ビューが取り除かれました。
+* Placement Browser が全く新しいデザインになって戻ってきました!コンテンツ ブラウザの [Classes] ビューが取り除かれました。
* JPEG インポートがエディタでサポートされるようになりました。基本の 8bit RGB と Gray JPEG 形式に対応します。
* コンテンツ ブラウザのスレート ブラシにカスタム仕様のサムネイル レンダラーを追加しました。
* [C] キーでマテリアルとサウンドキュー エディタ用にコメントを作成するようになりました。
@@ -298,9 +300,9 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* **ランドスケープ**
* ランドスケープ平坦化ツールに、高さに合わせて平坦化するオプションが追加されました。
* ランドスケープ エディタに傾斜ツールが追加されました。
-* カメラ アニメーションの作成と編集が Matinee で可能になりました。
+* カメラ アニメーションの作成と編集がマチネで可能になりました。
* ソース コントロール設定がグローバルとプロジェクト別で切り替え可能になりました。
-* アクタを複数の Matinee で同時に制御できるようになりました。
+* アクタを複数のマチネで同時に制御できるようになりました。
* 使用時にユニコードがサポートされるようになりました。また、正しく機能しなかった同期が修正されました。
* ブループリントの関数コールをダブルクリックすると、それぞれのブループリントが開くようになりました。
* エディタを再起動すると、[Asset] タブがリストアされるようになりました。
@@ -318,7 +320,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* FEditorStyle はスレート コアには存在しなくなりました。
* FEditorStyle は Slate モジュールではなく EditorStyle に存在するようになりました。
* FEditorStyle を使用する場合、「EditorStyle」を .Build.cs ファイルにリンクしているモジュール リストに追加する必要があります。
- * ゲームスタイルに FEditorStyle の使用はお勧めしません。 推奨されるゲームスタイルの設定方法については、ShooterGame または StrategyGame サンプルの例をご覧ください。
+ * ゲームスタイルに FEditorStyle の使用はお勧めしません。推奨されるゲームスタイルの設定方法については、ShooterGame または StrategyGame サンプルの例をご覧ください。
* SRichTextBlock がスレートに追加されました。SRichTextBlock には、複数のタイプのフォント、サイズ、カラー、ウィジェットを混ぜることができ、テキスト ドキュメント内で全てが画像化されます。
* ペルソナの通知ステートに、リミットハンドルをドラッグで編集される継続時間が付きました。
* マテリアル エレメントのスケルタル メッシュへの追加および削除が可能になり、 LOD マテリアルが定義できるようになりました。
@@ -328,10 +330,10 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* マウスボタンが押されていれば、 WASD が常に可能になりました。
* Perspective (透視図法) ビューポート マーキー選択は、マーキー ボックス内部に可視ピクセルを持つオブジェクトのみを考慮するようになりました。
* [Detail] パネルのプロパティに copy/paste が追加されました。
-* プロジェクトとワールド設定の GameMode の作成 / 選択 / 編集用に新しい UI が追加されました。
+* Project Settings と World Settings の GameMode の作成 / 選択 / 編集用に新しい UI が追加されました。
* **物理アセット ツール**
* PhAT は複数選択が可能です。
- * PhAT に、ボディのあるボーンを表示のみする新しい階層フィルタができました。
+ * PhAT に、ボディのあるボーンのみを表示する新しい階層フィルタができました。
* PhAT に Selected Simulation と呼ばれる新しいシミュレーション モードができました。
#### ブループリント
@@ -358,14 +360,14 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* GetActorUp/Right/ForwardVector が追加されました。
#### レンダリング
-* ボリューム ライティング サンプルと事前計算済みのビジビリティ セルの表示フラグが可視化されました。
+* ボリューム ライティング サンプルと事前計算されたビジビリティ セルの表示フラグが可視化されました。
* プレビュー シャドウ インジケータ テキストはプレビューに使用されたシーン シャドウをまるどとレンダリングします。
* Visualize カテゴリの表示フラグで無効にすることができます。
* ビルドされていない指向性ライトの Preview CSM はゲームと整合させるため、 PIE には適用されなくなりました。
* ES2 のシェーダーで、 詳細情報およびエラーがマテリアルおよび MIC エディタ内で表示できるようになりました。
-* スクリーン空間の反射に対してラフネスがサポートされるようになりました。
+* スクリーン スペースの反射に対してラフネスがサポートされるようになりました。
* WIP LightPropagationVolumes (Microsoft/Lionhead から統合) が追加されました。
-* Matinee をセットアップせずにレンダリング パスに対して異なるビューポートの状況をテストするために r.ViewportTest が追加されました (ゲームのみで機能)。
+* マチネをセットアップせずにレンダリング パスに対して異なるビューポートの状況をテストするために r.ViewportTest が追加されました (ゲームのみで機能)。
* HLSL 「View.GeneralPurposeTweak」にアクセス可能なcvar 「r.GeneralPurposeTweak」がシェーダー開発用に追加されました。
* ステートが簡単に管理できるように (デバイス プロファイルのオーバーライドなど) Scalability settings cvars が作成されました。
* 全ての 2D テクスチャの LOD バイアスをオーバーライドするための r.MipMapLODBias コンソール変数が追加されました。
@@ -378,7 +380,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* navmesh 生成用の領域が新しく分割されました。ChunkyMonotone
* タイルを長方形のチャンクに分割し (デフォルト:2X2)単調分割を実行します。
* デフォルト モードに比べて明らかに速いです (watershed による)。
- * チャンクを分割することで長くて細いポリゴンが作成されるのを防ぎますが、生成されるポリゴン数が他のメソッドに比べて若干多くなります。
+ * チャンクを分割すると細長いポリゴンの作成を防ぐことができますが、生成されるポリゴン数が他のメソッドに比べて若干多くなります。
* [Partitioning method selection] が RecastNavMesh の Generation カテゴリの [Advanced display] へ移動しました。
* 動的な障害物 (デフォルトで歩行可能なものに類似) 用にデフォルトのナビゲーション エリアが追加されました。これはゲーム専用の設定でオーバーライドすることができます。
* EQS デバッグ描画ツールが GameplayDebuggingComponent の表示に追加されました。
@@ -391,7 +393,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* アニメーション ノード選択時に構造体をカスタマイズするサポートが、ペルソナの詳細パネルに追加されました。
* スケルトンのプレビュー メッシュとペルソナの現在のプレビュー メッシュを別々に設定する機能が追加されました。
* プロパティのデフォルトとは別にプレビュー インスタンス上のプロパティをユーザーが編集できる新しいパネルがペルソナに追加されました。
-* コンテクスト オプション メニューが Animation Blueprint ノードに追加され、ユーザーは関連するアセットを開けるようになりました。
+* コンテキスト オプション メニューが Animation Blueprint ノードに追加され、ユーザーは関連するアセットを開けるようになりました。
* dirty marker がペルソナの Mode Widget に追加されました。
* Save context menu オプションがペルソナのアセット ブラウザに追加されました。
* インゲームのボーン描画を showdebug コマンドで切り替えられるようになりました。
@@ -409,7 +411,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* Shootergame にテキストチャットが追加されました。
* クラス ビューアのネイティブ クラスをダブルクリックすると IDE 内でヘッダ ファイルが開きます。
* エディタ ヘルプ メニューに API ドキュメントに対するショートカットが付きました。
-* 直近のプロジェクトを自動で読み込むためのオプションがプロジェクト ブラウザに追加されました。
+* 直近プロジェクトの自動読み込みオプションがプロジェクト ブラウザに追加されました。
* コリジョン:コリジョン チャンネル設定が Project Setting/Collision で可能になりました。
* PhysicalSurface :Physical Surface の設定が Project Setting/Physics で可能になりました。
* 自動化テストのコンフィギュレーション:各種自動化テスト アセットを Editor Setting/Automation に追加することができるようになりました。
@@ -421,7 +423,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* マテリアルごとのグループ化できるアクタ マージ ユーティリティが追加されました (Experimental->Actor Merging の中にあります)。
* デディケイテッド サーバーは、サーバー自体の ini ファイル (DedicatedServer*.ini) を同じディレクトリ内に Default*.ini として格納できるようになりました。
* UBT:TargetInfo クラスに Type プロパティと IsCooked プロパティが追加されました。これにより、クックされたターゲットのバイナリをビルドする場合、モジュールに条件付のビルド規則を設定することができます。
-* アセット レジストリ データとゲームコールバックに基いた、複数のパッケージファイルのビルド作成用の機能が追加されました (ゲーム ダウンロードのチャンキングに便利)。
+* アセット レジストリ データとゲームコールバックに基いた、複数の pak ファイルのビルド作成用の機能が追加されました (ゲーム ダウンロードのチャンキングに便利)。
* nullptr と 0 が BlueprintCallableFunctions ポインタのデフォルト引数として受け取られるようになりました。
* Interface UFunctions はフィールド イタレーションで検索できます。
* 新規の TFieldRange クラスは TFieldIterator と同じように使用されますが、使用対象は for (`UFunction* Func :TFieldRange(Class)`).
@@ -449,7 +451,7 @@ QA_APPROVED_UE4_BUILD_MINIMUM
* 最適化:SkeletalMeshes 向けの CachedLocalBounds 最適化が全てに対して有効にされました。
* **アニメーションは再保存が必要です**
* GUID が Skeleton アセットに追加されたので、 アニメーションがバージョンをトラックできるようになりました。全てのアニメーションを再保存することを推奨します。再保存しない場合、アニメーションはゲームのロード時に圧縮されます。
-* 一様でないスケール アニメーションのサポーはスケーリングの適用時のみ使用できます (1,1,1 ではない場合など)
+* 不均等なスケール アニメーションのサポーはスケーリングの適用時のみ使用できます (1,1,1 ではない場合など)
* スケールのインポートがうまくいかない場合は、[Preserve Local Transform] を有効にします。
* 湾曲 / 共有はサポート外となります。情報は削除され、ソースデータとは異なる結果が作成されることにご注意ください。
@@ -457,387 +459,387 @@ QA_APPROVED_UE4_BUILD_MINIMUM
## アップグレード ノート
#### エディタとツール
-* コンテクスト メニューに Actors Delta Transform が選択されました。
-* シーンアウトライナーにキャッシュされていない静的ライトのビルド情報が表示されます。
-* 表示されるアクタをダンプするためのコンソール コマンド (DumpVisibleActors) が追加されました。
-* Atmospheric fog:Precompute 変数に対してブループリントのアクセスが追加されました (エディタのみ有効です)。
-* 10 進法のスナップグリッドがデフォルトで有効になり、スナップサイズが 10 cm になりました。以前のビヘイビアにリバートするためには、ビューポート設定でべき乗のスナップグリッドを有効にする必要があります。
-* エンジン コンテンツがコンテンツ ブラウザでデフォルトで無効にされました。コンテンツ ブラウザでのビュー設定でこれを再度有効にすることができます。
-* VirtualJoystick:UTouchInterface から値を継承します。
- * ジョイスティックのリセンタリングを防ぐ bPreventRecenter が追加されました。
- * 画面の外への移動を防ぎ、ThumbPosition が画面内になるようにクランプします。
- * 起動遅延が追加されました。
- * ジョイスティックごとに速度制御する InputScale が追加されました。
-* もう少し使いやすくするために ProjectileMovementComponent Velocity のデフォルトが (1,0,0) に設定されました。
-* GameModeForPIE を削除しました。
-* 含まれているウィジェットの親階層が有効化どうかを判断する SEnableBox が作成されました。
-* チェックアウト / 追加などを内部処理する外部画像参照ウィジェットができました。
-* アセット タイプ アクションがツールチップの別セクションにアセットのユーザーの説明を表示する機能を追加しました。
-* ストリーミング レベルのあるマップの新規プロセスでの起動と再生を修正するためにレベル ストリーミングをリファクタリングします。
-* ズーム レベルの鮮明度を維持し、カードカラーで原線を表示するように、グラフ パネル グリッドのレンダリング メソッドが変更されました。
+* Selected Actors Delta Transform for context menu.
+* Show Uncached static Lighting build info in SceneOutliner.
+* Added Console Command to dump visible actors ("DumpVisibleActors").
+* Atmospheric fog:Added Blueprint access for Precompute variables (only valid for editor).
+* Decimal snap grid is now enabled by default and the snap size is now 10 cm.You will need to enable the power of two snap grid in the viewport settings to revert to the old behavior.
+* Engine content has been disabled by default in the content browser.You can enable this again in the content browsers view settings.
+* VirtualJoystick:Inherits values from UTouchInterface.
+ * Added bPreventRecenter, which prevents Joystick re-centering.
+ * Prevent moving outside of screen, clamp ThumbPosition to be inside screen.
+ * Added Activation Delay.
+ * Added InputScale to control each Joystick's speed.
+* Default ProjectileMovementComponent Velocity to (1,0,0) to make it a bit simpler to use.
+* Remove GameModeForPIE.
+* Created SEnableBox, which lies to the contained widget about whether the parent hierarchy is enabled or not.
+* Created an external image reference widget, which internally handles checkout/add/etc...
+* Added the ability for asset type actions to provide a user description of the asset, showing up in a separate section of the tooltip.
+* Level streaming refactoring to fix Launch and Play in new process for maps with streaming levels.
+* Changed graph panel grid rendering method to keep sharpness at all zoom levels and show origin lines in a third color.
#### レンダリング
-* SSAO がさらに繊細になるようにデフォルトが変更されました。
-* Light プロパティをクリーンアップしました。大きな変更点:点 / スポットライトがデフォルトで逆2乗フォールオフを使うようになりました。Brightness が ライトのタイプごとに新しいデフォルトの Intensity に変更されました。Radius は AttenuationRadius に名前変更されました。
-* 今後のシェーダー最適化に備えて、パラメータを設定する前にシェーダーをグローバルステートにバインドすることが必要になりました。現在バインドされていないパラメータをシェーダーに設定しようとすると作成され確保されます。
-* SystemSettings からほぼ全ての設定が外され、同等のコンソール変数に置き換えられました。これには、GSystemResolution.ResX と GSystemResolution.ResY 経由でコードからのアクセスが可能になったシステム解像度 (GSystemSettings.ResX/ResY) が含まれます。新規コンソール変数 (r.setres) も以前の "setres" コマンドに置き換えるために追加されました。
-* クリッピング平面付近のデフォルトが 10cm に設定されました。そのため、ゲームでかなり長い表示距離を使用すると Z ファイティングが発生する場合があります。詳細は r.SetNearClipPlane を参照してください。
-* PostprocessAmbient が純粋に加算になり、環境感謝やその他のもの (SSAO 以外) にオクルードされなくなりました。遥か遠くのスカイボックス テクスチャではなく、もっと面白いアンビエント (コンテンツは再調整する必要があるかも知れません) を作成するためのものになりました。
-* TextRender デフォルト マテリアルが不透明に変更されました (TemporalAA クオリティの改善により、このオプションが可能になりました)。
-* ScreenPercentage を使うと、コンソールのメモリ使用量が少なります。複数のフレーム上で劇的に変更したい場合には、このメソッドは向いていません。必要であれば、cvars 設定を使って、プラットフォーム / ゲーム プロパティにすることができます。
-* 表示フラグのユーザビリティの変更: ゲームおよびおエディタの表示フラグ ステートを適切に切り替えられるようになりました (2 つのステートを保存および切り替えます)。
-* エディタで TemporalAA がデフォルトになりました (エディタ プリミティブによる点滅が若干予想されます)。
-* ScalabilitySetting パーシステンスをゲームとエディタに分けました (別々の ini ファイル)。そのため、設定の早めのロード (ゲームがまだない状態でも) が可能で、サブシステムの再初期化を防ぎます。
+* Changed SSAO defaults to be more subtle.
+* Light properties cleanup.Major changes: point / spot lights use inverse squared falloff by default, Brightness changed to Intensity with new defaults per light type, Radius renamed to AttenuationRadius.
+* To prepare for future shader optimisations, it is now a requirement to bind shaders to the global state BEFORE setting any parameters.Trying to set parameters on a shader which isn't currently bound will produce and ensure.
+* Almost all settings have been removed from SystemSettings, and replaced with equivalent console variables.This includes system resolution (GSystemSettings.ResX/ResY) which are now accessible from code via GSystemResolution.ResX and GSystemResolution.ResY.A new console variable (r.setres) has also been added to replace the old "setres" command.
+* The default near clipping plane has been set to 10cm.This may cause z-fighting if your game uses very long view distances.See r.SetNearClipPlane.
+* Made PostprocessAmbient purely additive, not occluded by environment reflections or other things (other than SSAO), now it's meant to make an more interesting ambient (content might need to retweaked) not a infinitly far away skybox texture.
+* Changed TextRender default material to be opaque (TemporalAA quality improvements now make this the better option).
+* Consoles now use less memory when using ScreenPercentage.In case the game wants to dynamically change it over multiple frames this is not the right method.If needed we can use the cvars settings and make it a platform/game property.
+* Usability change of showflags: game and editor showflag state now allows proper toggle (2 states are stored and toggled).
+* Allow TemporalAA in editor by default (minor flickering with editor primitives is expected).
+* Split ScalabilitySetting persistence into game and editor (different ini files).This allows early loading of the settings (even game isn't there yet) and avoid reinit of subsystems.
#### ゲームプレイとフレームワーク
-* Oculus integration が更新され、レイテンシーが改善され、ポジション トラッキング デバイスがサポートされました。注記:この機能を利用するには、ポジション トラッキングの LibOVR SDK を Oculus から購入しなければなりません。
-* コンポーネント配列が取り除かれました。
- * コンポーネント配列が取り除かれ、配列に新規コンポーネントを追加する必要はなくなりました。作成したコンポーネントを登録した場合は、 bAutoRegister を false に設定します。コンポーネント配列へは AActor::GetComponents 関数でアクセスします。コンポーネントがアクタとは無関係に作成された場合を除き、そのコンポーネントはアクタの直接外側にならなければなりません。通常、アクタ以外のサブオブジェクトであるコンポーネントを持つことはできません。
-* 入力バインディングの変更
- * キー バインディングが列挙型変数ではなく名前で行えるようになりました。新しい struct FKey により名前がカプセル化され、ヘルパー関数が数多く提供されます。ヘルパー関数の使用は IsGamePadKey などへを推奨しますが、EKeys::IsGamepadKey 関数も移行しやすいと定義されます。
- * EKeys 列挙型変数が削除されました。EKeys::Type または EKey を使用した部分は、通常 FKey に変更する必要があります。
- * EKeys を使った列挙型変数の入力 (例えば EKeys::MouseX) は全てEKeys struct の static const メンバへ変換されているのでキー名を使用してもまだ機能しますが、struct なので Key の値をつけることはできなくなりました。
- * 入力設定の多くは Engine.PlayerInput から Engine.InputSettings へ移されました。最も重要な注釈:AxisConfig、ActionMappings、AxisMappings です。
-* WorldFromContextGetter が削除されました。その代わり、UObjects はすべて GetWorld() というバーチャル関数を実行できるようになりました。
-* APlayerCamera が APlayerCameraManager に名前変更されました。
-* AxisMappings MoveForward、MoveRight、MoveUp、Lookup、Turn、 ActionMapping PushToTalk が BaseInput.ini から削除されました。特定のゲームで必要な場合は DefaultInput.ini に追加しなければなりません。
-* SoundNodeGroupControl が距離を考慮しなくなりました。その代わり、バケットごとの最大サウンド数が次のバケットに行く前に再生されることを確実します。
-* SoundNode NotifyFinished の接続が再構築されました。複数のノードがウェーブ インスタンスの完了通知を要求できるようになりました。
-* UMETA がその他のマークアップ マクロと整合性が取れました。特にデリミターとしてパイプではなくコンマを使うようになりました。
-* Visual Studio 2013 がデフォルトで使用できるようになりました。
- * デベロッパー (and users of packaged builds) は Visual C++ 2013 Redistribution をインストールする必要があります。
- * 必要に応じて Visual Studio 2012 も使用できます (詳細は以下および CL # 1989640 をご覧ください)。
- * 特定のプラットフォームにはデバッグ用アドインが付いており、新しい IDE とは機能しません。
- * これらのプラットフォームが検出され、プロジェクト ファイル フォーマットが自動的に 2012 にされます。
- * GenerateProjectFiles コマンド ライン上に '-2012' あるいは '-2013' を渡せば、いつでもビヘイビアをオーバーライドできます。
- * その他の特別なユースケース:
- * すべてに VS 2012 を使いたい場合は (VS 2013 をまだお持ちでないため)、UEBuildWindows.cs. で WindowsPlatform.Compiler をローカルで変更してください。
- * VS 2012 IDE はそのまま使い続けて VS 2013 にコンパイルする場合は、必ず VS 2013 がインストールされていることを確認して '-2012' を GenerateProjectFiles に渡してください。
- * VS 2013 IDE を使ってVS 2012 でコンパイルする場合、 WindowsPlatform.Compiler を 2012 に設定しますが、'-2013' を GenerateProjectFiles に送ります。
-* Windows Desktop Visual Studio 2013 Express for Windows Desktop が完全にサポートされるようになりました!
-* DirectX SDK の前提条件がソースも含まれています!
- エンジンをビルドするために DirectX SDK を PC にインストールする必要はなくなりました。
-* Visual Studio と Xcode プロジェクト ファイルの変更
- * プロジェクト ファイルが全てのプラットフォームに対してデフォルトで生成されるようになり、 「AllPlatforms" .bat」ファイルは削除されました。
- * -CurrentPlatform を渡せば、以前のビヘイビアにもどすことができます。
- * プロジェクト ファイル:シッピング コンフィギュレーションがデフォルトで含まれるようになりました。
- * シッピング コンフィギュレーションを省くためには "-NoShippingConfigs" を渡します (プロジェクト ファイルをさらに小さく / 速くなります)。
-* デバッグ ビルドがデフォルトでは CRT デバッグ (またはサードパーティ デバッグ ライブラリ) を使わなくなりました。
- * 新しい UnrealBuildTool オプションである bDebugBuildsActuallyUseDebugCRT (BuildConfiguration.cs) が追加されました。
- * bDebugBuildsActuallyUseDebugCRT:CRT デバッグとサードパーティ デバッグ ライブラリへ依存してデバッグ ビルドをコンパイルする場合に当てはあります。そうでない場合は、実際にリリース CRT に対してコンパイルしますが、最適化はオフのままなので、デバッグは簡単です。
- * この設定を有効にすると、デバッグでのコンパイル時にサードパーティの stats ライブラリの実際の Debug バージョンが必要になります。
-* Shipping PhysX バイナリとライブラリが削除されました。
- * デフォルトですべてのコンフィギュレーションの PROFILE バージョンとリンクするようになりました。
-* デフォルトのストリーム ファイルをバイナリから削除しました (steam_appid.txt) 。
- * プロジェクト用の一意の Steamworks ID でゲーム プロジェクト用に steam_appid.txt を作成してください。
-* Shipping ビルドの場合でも、デフォルトで Link-Time-Code-Generation (LTCG) が無効になりました。
-* (重要) DebugGame ビルド コンフィギュレーションが開発コンフィギュレーションとエンジン バイナリを共有するようになりました。
- * DebugGame により、ゲーム モジュールが UE_BUILD_DEVELOPMENT でコンパイルされますが、最適化は無効化されます。
- * -debug をコマンドライン上にパスして、エディタに DebugGame ゲーム モジュールをロードするように命令します。
- * Intermediate\ProjectFiles からユーザー コンフィギュレーション ファイルを削除して、UBT が正しいコマンドラインをプロジェクト設定に自動記入するようにしました。
-* インストールされたビルドの Config 設定は、マイドキュメントではなくユーザーの AppData フォルダに格納されるようになりました。
-* テンプレート プロジェクトに再び .uproject 拡張子が付きました。
-* エンジンのバージョンにチェンジリスト番号に加えて Major.Minor.Hotfix コンポーネントが追加されました (FEngineVersion)。このバージョンは帯域外ホットフィックスを可能にするためにパッケージ内に保存されます。
- * エンジンがモジュールをロードするには、PCLaunch.rc から正しいバージョンの文字列でモジュールを再コンパイルする必要があります。
-* config ファイルでプラグイン リストを有効化すると、モノリシック (単一) ビルドでプラグインをコンパイルするための決定がフィルタされるようになります。
-* LevelEditor: 機能がまだ完全に実装されていないので、"Mobile Preview" メニューは非表示にされています。
-* LevelEditor: "-PlatformTools" コマンドライン スイッチが削除されました。それに依存していた残りの機能は Editor Preferences の [Experimental] セクションから利用できます。
-* 設定: エディタ ユーザー設定のほとんどが新規クラスへ移動され、Settings UI の別のセクションとしてエクスポーズされました。 ローカル設定を再度適用する必要があるかもしれません。
-* メッセージング:UDP メッセージ送信がデフォルトでロードされるプラグイン (UdpMessaging) になりましたが、Shipping ビルドとスタンドアローン型ゲームでアクティベートするための "-messaging" コマンドライン スイッチはまだ必要です。このプロトタイプ実装がプロダクション品質に対して書き換えられています。
+* Oculus integration has been updated with improvements to latency, and support for positional tracking devices.Note:LibOVR SDK for positional tracking must be procured from Oculus in order to use the functionality
+* Components Array removal
+ * The components array has been removed, it is no longer necessary to add newly created components to any array.If you do not wish a created component to be registered set bAutoRegister to false.Access to the components array is via the AActor::GetComponents function.Unless a component is created independently of an Actor, the component must have a direct outer of the Actor.In general, you cannot have components that are subobjects of a non-actor.
+* Input binding changes
+ * Key bindings are now done by name instead of enum.A new struct FKey encapsulates the name and provides a number of helper functions.It is encouraged to use these helper functions for things such as IsGamePadKey, however, the EKeys::IsGamepadKey functions are still defined to make migration easier.
+ * EKeys enum has been eliminated.Places that used EKeys::Type or EKey will generally need to be changed to FKey
+ * All EKeys enum entries (e.g. EKeys::MouseX) have been translated in to static const members of an EKeys struct so most usages of key names will still work, however, because it is a struct you can no longer switch on a Key's value.
+ * Many Input settings have been moved out of Engine.PlayerInput and in to Engine.InputSettings.Of most significant note:AxisConfig, ActionMappings, and AxisMappings.
+* WorldFromContextGetter has been removed.All UObjects can now implement a virtual GetWorld() function instead.
+* APlayerCamera has been renamed APlayerCameraManager.
+* AxisMappings MoveForward, MoveRight, MoveUp, Lookup, and Turn and ActionMapping PushToTalk have been removed from BaseInput.ini.They must be supplied in the DefaultInput.ini for your specific game if required.
+* SoundNodeGroupControl no longer considers distance.Instead it simply ensures that the maximum number of sounds for each 'bucket' is playing before falling to the next 'bucket'.
+* SoundNode NotifyFinished hooks have been restructured.It is now possible for multiple nodes to request notification of the wave instance completing.
+* UMETA is now consistent with other markup macros, in particular it uses comma instead of pipe as delimeter.
+* Visual Studio 2013 is now used by default
+ * Remember that your developers (and users of packaged builds) will need the Visual C++ 2013 redist installed.
+ * You can still use Visual Studio 2012 if you need to (see below for more info, and CL # 1989640).
+ * Certain platforms have debugging add-ins that do not work with the new IDE yet.
+ * We detect these platforms and force the project file format to 2012 automatically.
+ * You can always override behavior by passing '-2012' or '-2013' on the GenerateProjectFiles command line.
+ * Other special use cases:
+ * If you want to use VS 2012 for everything (because you don't have VS 2013 yet), locally modify WindowsPlatform.Compiler in UEBuildWindows.cs.
+ * If you want to keep using VS 2012 IDE but compile with VS 2013, make sure you have VS 2013 installed and pass '-2012' to GenerateProjectFiles.
+ * If you want to use the VS 2013 IDE but compile with VS 2012, you can set WindowsPlatform.Compiler to 2012, but pass '-2013' to GenerateProjectFiles.
+* Visual Studio 2013 Express for Windows Desktop is now fully supported!
+* DirectX SDK prerequisites are now included along with the source!
+ You no longer need to have the DirectX SDK installed on your PC to build the engine.
+* Visual Studio and Xcode project file changes
+ * Project files now generate for all platforms by default; Removed "AllPlatforms" .bat file.
+ * You can pass "-CurrentPlatform" to get the old behavior if you want.
+ * Project files:'Shipping' configuration is now included by default.
+ * You can pass "-NoShippingConfigs" to omit Shipping config (smaller/faster project files).
+* Debug builds no longer use the Debug CRT (or Debug third party libraries) by default
+ * Added new UnrealBuildTool option: bDebugBuildsActuallyUseDebugCRT (BuildConfiguration.cs)
+ * bDebugBuildsActuallyUseDebugCRT:This is true if we should compile Debug builds using Debug CRT libs and Debug third party dependencies.Otherwise, we'll actually compile against the Release CRT but leave optimizations turned off, so that it is still easy to debug.
+ * If you enable this setting, actual Debug versions of third party static libraries will be needed when compiling in Debug.
+* Removed 'Shipping' PhysX binaries and libraries
+ * We now link with PROFILE versions in all configurations by default.
+* Removed default Steam file from binaries (steam_appid.txt)
+ * You should create your own steam_appid.txt for your game project with a unique Steamworks ID for your project.
+* Disable Link-Time-Code-Generation (LTCG) by default, even in Shipping builds
+* (IMPORTANT) The DebugGame build configuration now shares engine binaries with the Development configuration.
+ * DebugGame causes game modules to be compiled with UE_BUILD_DEVELOPMENT, but optimization disabled.
+ * Pass -debug on the command line to tell the editor to load DebugGame game modules.
+ * Delete user configuration files from Intermediate\ProjectFiles to have UBT automatically fill in the correct command line in your project settings.
+* Config settings for installed builds are now stored in the user's AppData folder, rather than My Documents.
+* Template projects now have a .uproject extension again.
+* The engine version now has a Major.Minor.Hotfix component as well as changelist number (FEngineVersion).This version is saved into packages to allow for out of band hotfixes.
+ * Modules will need to be recompiled with the correct version strings from PCLaunch.rc for the engine to load them.
+* Decision to compile plugins in monolithic builds is filtered by the enabled plugin list in config files.
+* LevelEditor: the "Mobile Preview" menu has been hidden, because the functionality isn't fully implemented yet
+* LevelEditor: the "-PlatformTools" command line switch has been removed; the remaining features that depended on it are now accessible in the 'Experimental' section of the Editor Preferences
+* Settings: many Editor User Settings have been moved into new classes and exposed as separate sections in the Settings UI; your local settings changes may have to be reapplied
+* Messaging:UDP message transport is now a plug-in (UdpMessaging) that is loaded by default, but still requires "-messaging" command line switch to activate in Shipping builds and standalone games; we are planning to get rid of the switch after this prototype implementation has been rewritten for production quality; no ETA yet
#### アニメーション
-* anim sequence プロパティと blendspace プロパティがグラフのピンとしてエクスポーズされました。
-* 既存の Anim ブループリント (デフォルトとイベント グラフはオーバーライドが可能ですが、アニメーション グラフは不可能です) から継承するためのサポートが追加されました。
-* 利用可能なスペースが改善され、レベル エディタと同様に振舞うように、ペルソナのビューポートのツールバーとウィジェットがリファクタリングされました。
-* Anim ブループリントのデバッグ中の各種バグが修正されました。
-* ボーン名に対するスケルトン ツリー ピッカーを表示する FBoneReference 構造体のカスタマイズが追加されました。
-* Animation Player ノード上のアセット ピッカーにフィルタリング ロジックが追加されたので、(スケルトンに基いて) 互換性のあるアセットのみが表示されます。
+* Allowed anim sequence and blendspace properties to be exposed as a pin in the graph.
+* Added support for inheriting from an existing Anim Blueprint (allowing overriding the defaults and event graph, but not the anim graph).
+* Refactored the Persona viewport toolbar and widgets, improving real estate usage and behaving similar to the level editor.
+* Various bug fixes for Anim Blueprint debugging.
+* Added a customization for FBoneReference structures, showing a skeleton tree picker for the bone name.
+* Added filtering logic to asset pickers on anim player nodes so that only compatible assets (based on skeleton) are shown.
#### コア
-* プラットフォームごとに中間ファイルが生成されるようになりました。
- * 生成されたファイルに対して何らかの処理を行うツールがあれば、それらは新しい場所へ変更する必要があります。
-* C++ の const_cast とは別物で紛らわしい ConstCast が削除されました。
- * `ConstCast` は `Cast` で置き換えてください。
-* ガーベッジの収集にシリアル化を使用しないため誤解されやすいので、UObjectSerializer は UGCObjectReferencer に、 FSerializableObject は FGCObject に名前が変更されました。
-* ライセンシーからのアクションを必要とするコードのリファクタリングを行いました:
- * GIsUCC は IsRunningCommandlet() (ほぼ) に名前が変更されました。
- * USpriteComponent は UBillboardComponent に名前が変更されました。
- * UMaterialSpriteComponent は UMaterialBillboardComponent に名前が変更されました。
+* Intermediate generated files are now per-platform.
+ * If you have tools which do any kind of processing on generated files, then these will need to be updated to the new locations.
+* ConstCast has been removed, because it's confusingly unlike C++'s const_cast.
+ * `ConstCast` should be replaced with `Cast`.
+* Renamed UObjectSerializer to UGCObjectReferencer and FSerializableObject to FGCObject as they do not use serialization to collect garbage anymore and may be misleading.
+* Code refactoring that requires action from licensees:
+ * Renamed GIsUCC to IsRunningCommandlet() (mostly)
+ * Renamed USpriteComponent to UBillboardComponent
+ * Renamed UMaterialSpriteComponent to UMaterialBillboardComponent
#### プラットフォーム
-* **モバイル**
- * タッチ入力インターフェース プロパティがエクスポーズされ Setting UI で編集可能になりました。
- * Android 向けのプラットフォーム固有のコンフィギュレーション ファイルのコピーが [Setting] パネル経由で追加されました。
- * [Project Settings] でのアイコン、起動画面、デバイスの方向の編集機能が追加されました。
- * クックされたゲーム用の様々なパッケージ サイズの最適化を行いました。
+* **Moblie**
+ * Exposed touch input interface properties to be editable in the Settings UI.
+ * Added copying of platform-specific configuration files for Android and iOS via the Settings panel.
+ * Added editing for icons, launch screens, and device orientation in Project Settings.
+ * Various packaging size optimizations for cooked games.
* **Android**
- * Package と Launch でエディタから直接 Android のサポートが有効にされました (別名 One Click Deploy) 。
- * Android をパッケージすると、 .apk の隣に .obb ファイルが作成され、 .bat がインストールされます。
- * Packaging in Distribution には SigningConfig.xml が適切に設定されなければなりません (サンプルは Engine/Build/Android/Java をご覧ください)。
- * java ファイルの .so が変更された場合のみ、.apk が生成されるようになりました。
+ * Enabled Android support directly from the editor with Package and Launch (aka One Click Deploy).
+ * Packaging Android will create a .obb file next to the .apk, with a .bat to install it.
+ * Packaging in Distribution needs SigningConfig.xml to be setup properly (see sample in Engine/Build/Android/Java).
+ * .apk generation now only happens if .so of java files have changed.
* **Mac**
- * Mac エディタは機能しますが、 ビルド済みのバイナリは本リリースには含まれません。
- * 今のところ、Mac でエディタを動かすためには、バイナリのコンパイルが必要になります。
- * 本件については次回の QA ビルドで解決します。
- * Unreal Frontend は Mac 上で機能します。
+ * Mac editor works but pre-built binaries are not included with this release.
+ * For now, you must compile the binaries in order to run the editor on Mac.
+ * This will be resolved for the next QA build.
+ * Unreal Frontend works on Mac.
**iOS**
- * iOS ビルドおよびパッケージングは Mac 上で行えます。
- * GameCenter OSS に対して様々な修正や改善が行われました。
- * 実験的な iAD サポートが iOS に追加されました。
- * iOS6で出てしまうアイコンの gloass effect が修正されました。
- * Shipping iOS ビルド向けに常にシンボル ストリップするようにしました。
- * PC iOS デプロイメント ワークフローに対し様々な改善が行われました (エディタからコードを署名し、環境変数 uebp_CodeSignWhenStaging=1 を設定しますが、 PC にインストールしたプロビジョニング ファイルに対し有効な認証が必要となります)。
- * UE3 からの iPhonePackager の各種変更点 (ファット バイナリ、スタブに事前割り当てされたサイズを超えるコード署名の修正など) がマージされました。
+ * iOS build and packaging works on Mac.
+ * Various fixes and improvements to GameCenter OSS.
+ * Added experimental iAD support for iOS.
+ * Fixed icon glossy effect showing up on iOS6 incorrectly.
+ * Forced symbol stripping to always be on for Shipping iOS builds.
+ * Various improvements to the PC iOS deployment workflow (to code sign from the editor, set environment variable uebp_CodeSignWhenStaging=1, but you will have to have a valid certificate for your provision installed on the PC).
+ * Merged various iPhonePackager changes from UE3 (fat binary support, fix for code signing extending beyond the preallocated size in the stub, etc...).
+ #### Networking
-#### ネットワーキング
-* 新しい bool 型変数の bReplicates が追加されました。アクタをリプリケートするために、ブループリントと C++ コンストラクタ に設定してください。手書きで RemoteRole=ROLE_SimulatedProxy を設定する必要がなくなりました。
+* A new bool has been added, bReplicates.This should be set in blueprints and C++ constructors to make an actor replicate.Setting RemoteRole=ROLE_SimulatedProxy manually is no longer necessary.
-## 今後の追加事項と継続事項
+## 今後の追加事項と継続項目
#### エディタとツール
-* エフェクトのない Material プロパティが正しくグレーアウトされました。
-* 新規マテリアル エディタ内で一番互換性のない接続がされないようにしました。
-* イタレーション中にスポーンされたアクタがそのイタレーションに正しく含まれることを確実にしました。
-* SoundNode 入力の削除が元にもどせることを確実にしました。
-* 入力マッピングの表示が改善されました。
-* Static Switch パラメータが Material Attribute 入力を出力するようになりました。
-* 入力プロジェクト設定に充実したツールチップが追加されました。
-* アセットのドラッグ&ドロップ時にはカーソル インジケータが、アクタ上へのテキストのドロップ時には警告が追加されました。
-* アクタの移動をロックすれば、プロパティ マトリクスにおいて変形の編集ができないようになりました。
-* カラーピッカーの再生成時にテーマがリセットされます。
-* 新規プロジェクトの作成時に表示されるメッセージに IDE 名が追加されました。
-* コンテンツ ブラウザ スプリッタのサイズがセッション間で維持されるようになりました。
-* アセットの正しい名称を Matinee が表示するようになりました。
-* SETRES コンソール コマンドがスタンドアローン ゲームの PIE で (およびコマンドライン上で ResX/ResY が指定された場合) 動くようになりました。
-* アセット名を変更する場合、 `*\<>?` 文字が入力できないようになりました。
-* 「コンテンツ ブラウザで検索」が直前にクリックしたコンテンツ ブラウザを使用するようになりました。
-* [Play From Here] オプションがシーンアウトライナーから利用できるようになりました。
-* RF_Transactional でシリアル化されている場合、アセットに RF_MarkPendingKill を追加できないようになりました。
- * オブジェクトを間違ってアンドゥ バッファへ挿入できないようにしました。
-* Key struct カスタマイズのサイズ設定がより合理的になりました。
-* 新しく作成されたエディタはデフォルトが Subversion のソースコントロールではなくなりました。
-* 現在の BP エディタ モードのブループリント チュートリアル フロー&オートランの適切なチュートリアルが再調整されました。
-* CTRL+Backspace と CTRL+Delete (delete-to-word-boundary) ホットキーがテキストボックスで機能するようになりました。
-* CTRL を押下したままマウスをキーの上に置かなくても、ユーザーは選択したキーをカーブエディタで移動できるようになりました。
-* BSP ブラシがエディタの可視性設定を順守するようになりました。
-* リプリケートされる設定のブループリント変数ノードにアイコンが追加されました。
-* シーンアウトライナーのフッターに選択されたアクタ数が表示されるようになりました。
-* [Escape Now] を押すとすべてのポップアップ ウィンドウが閉じ、 ドラッグ - スピン操作とアクタ ビューポート ドラッグ操作が取り消されます。
-* ファイルパスを再インポートすると、関連したパッケージに相対して格納されるようになりました。
-* 正投影ビューポート上のスケールにビジュアル キューが追加されました。
-* [Reset] ボタンで [Details] パネル上でのアクタ変形を終了できるようになりました。
-* Mesh Paint モードでバケツを選択対象の周りに表示させることができなくなりました。
-* サーベイをキャンセルするとすぐに消えてなくなるようになりました。
-* [Matinee track] メニューのオプションがトラック名と一致するようになりました。
-* InterpTrack クラスに不足していた meta タグが追加されました。
-* プロジェクト ブラウザの説明にプロジェクト作成が含まれなくなりました。
-* 共有の interp データを使用しても Matinee がクラッシュしなくなりました。
-* 新しいエディタ版からプロジェクトを開くと、見事に失敗します。
-* オブジェクト名に「`」を含むことができなくなりました。
-* サウンド キューの「Stop」がストップのシンボルのようになりました。
-* [Show Folder] オプションはコンテンツ ブラウザ以外では無効にされました。
-* スタティック メッシュ エディタの LOD メッセージが LOD Index を正しく表示するようになりました。
-* シーン アウトライナーのソートの矢印がはっきり表示されるようになりました。
-* デフォルトのキーバインディングがユーザー設定に正しく表示されるようになりました。
-* アセットがロードされるとフィルタがアセットとして優先されるように、コンテンツ ブラウザのアセットが更新されました。
-* 正投影ビューポートがビューモードを正しく表示するようになりました。
-* 言語 / 地域を変更するとユーザーに再起動を促すようになりました。
-* スケルタル メッシュ アクタのクラス ピッカーがスケルトンによる選択プールを正しく制限するようになりました。
-* Anim graph ノードの [Details] パネルが子も一緒に正確にプロパティを表示するようになりました。
-* FBX window のツールチップが改善されました。
-* ペルソナでモーフターゲットの取り消しができるようになりました。
-* スケルタル メッシュの情報がペルソナ ビューポートにデフォルトで表示される設定になりました。
-* ペルソナでの通知がエディタの削除コマンドに反応するようになりました。
-* Blendspace シーケンス アセットはペルソナのサンプルから直接開けるようになりました。
-* FBX エクスポート ファイルの位置選択が改善されました。
-* Blendspace ノードの削除と取り消しが正常に機能するようになりました。
-* アニメーション グラフのステートマシンはコピーされた時に名前を維持するようになりました。
-* 充実したツールチップが多くの Animation graph ノードに追加されました。
-* 再生タイムラインは重複したフレーム番号を表示しなくなりました。
-* ブループリント エディタとペルソナのカラーピッカーが改善されはっきり見えるようになりました。
-* 頂点アニメーションはフィルタ機能がなくなりました。
-* PhAT でのフライト制御は 変形モード選択とのコンフリクトを発生しなくなりました。
-* 基本ポーズがリターゲット ソースと呼ばれるようになりました。
-* UnrealVS は VS2012 Pro と VS2013 Pro 向けにビルドされるようになりました。Engine/Extras でそれぞれ専用のフォルダで別々にビルドされます。
-* アンリアル エディタ プラグインのベータ版フラグはアンプラグ ファイルでプラグイン デベロッパーが設定することができます。
- * ベータ版のプラグインはプラグイン マネージャで有効にされると警告が表示されます。
- * ベータ版の情報はプラグイン マネージャでバージョン番号と一緒に表示されます。
+* Material Properties are now correctly greyed out when they have no effect.
+* Prevented most incompatible connections in the new Material Editor.
+* Made sure actors spawned during iteration are correctly included in the iteration.
+* Made sure deletion of SoundNode inputs can be undone correctly.
+* Improved display of Input mappings.
+* Static Switch Parameters now output any Material Attribute inputs.
+* Added rich tooltips for the Input Project Settings.
+* Added cursor indicator when drag-dropping assets & a warning when dropping textures on actors.
+* Locking actor movement now prevents editing of transform in Property Matrix.
+* Reset themes menu when color picker is re-created.
+* Added IDE name to message displayed when new project is created.
+* Content Browser splitter sizes are now preserved between sessions.
+* Matinee now displays correct name for asset.
+* SETRES console command now works in PIE in standalone game (and when specifying ResX/ResY on the command line).
+* Asset rename now prevents `*\<>?` characters from being entered.
+* "Find In Content Browser" now uses the last content browser that was clicked.
+* "Play From Here" option is now not available from Scene Outliner.
+* Prevented assets from getting RF_MarkPendingKill added when they have been serialized with RF_Transactional.
+ * Prevents some objects being wrongly inserted into the undo buffer.
+* Key struct customization is now sized more reasonably.
+* A newly-created editor no longer defaults to Subversion source control.
+* Rearranged Blueprint tutorial flow & auto-run appropriate tutorial for current BP editor mode.
+* CTRL+Backspace and CTRL+Delete (delete-to-word-boundary) hotkeys now work in text boxes
+* Users can now move selected keys in the curve editor without having the mouse over a key by holding CTRL.
+* BSP brushes now respect editor visibility settings
+* Added an icon to blueprint variable nodes that are set to be replicated.
+* Scene outliner now displays the number of selected actors in its footer.
+* Pressing escape now closes any popup windows, cancels drag-spinning and actor viewport dragging operations.
+* Reimport file paths are now stored relative to their associated packages, where this makes sense.
+* Added visual cue for scale on orthographic viewports.
+* Reset buttons now exist for actor transforms on the details panel.
+* Mesh Paint mode no longer forces backets to be displayed around the selection.
+* Cancelling survey now fades away instantly.
+* Matinee track menu options now match their track names.
+* Added missing meta tags for InterpTrack classes.
+* Project browser description no longer mentions creating a project.
+* Matinee no longer crashes when using shared interp data.
+* Opening projects from newer editor versions now fails gracefully.
+* Object names can no longer contain the letter `.
+* Sound Cue 'Stop' now looks like a stop symbol.
+* Show Folder options is now disabled except for the Content Browser.
+* Static Mesh Editor LOD Message now correctly displays the LOD Index.
+* Scene outliner sorting arrow is now more visible.
+* Default keybinding now appears correctly in Preferences.
+* Content Browser assets update to respect filters as assets are loaded.
+* Ortho viewport now display the correct viewmode.
+* Changing language/region now prompts user to restart.
+* Class picker in skeletal mesh actors now correctly restricts selection pool by skeleton.
+* Anim graph node details panel now correctly shows properties with children.
+* Improvements to FBX window tooltips.
+* Morph target deletion in Persona can now be undone.
+* Skeletal mesh stats set to default appear in Persona viewport.
+* Notifies in Persona now respond to editor delete command.
+* Blendspace sequence assets can be opened directly from the samples in Persona.
+* Improvements to FBX export file location selection.
+* Deleting and undoing blendspace nodes now works correctly.
+* State machines in animation graphs preserve their name when copied.
+* Rich tooltips added to many animation graph nodes.
+* Playback timeline no longer shows duplicate frame numbers.
+* Colour pickers in the blueprint editor and Persona improved to be more visible.
+* Vertex anims no longer filterable.
+* Flight controls in PhAT no longer conflict with transform mode selection.
+* Base pose now called Retarget Source.
+* UnrealVS is now built for VS2012 Pro and VS2013 Pro, with separate builds in their own folders in Engine/Extras.
+* Beta version flag in Unreal Editor plugins can be set by plugin developers in the uplugin file.
+ * Beta plugins display a warning when enabled in the plugin manager.
+ * Beta version info is displayed with the version number in the plugin manager.
* **ランドスケープ**
- * カメラを動かしている間、ランドスケープ ブラシは非表示になりました。
- * デフォルトのランドスケープのスケールが 100、100、100 に変更されました。
-* シューティング ゲームのスポーン ポイントを調整してボットがもっと広まるようにしました。
-* シューティング ゲームのボットのビヘイビアが修正され、発砲できるようになりました。
-* シューティング ゲームのスコアボードに修正をいろいろ加えました。
-* ビークル ゲームでブースト ピックアップが再スポーンされるように変更されました。
-* ビークル ゲームの hovership におけるゲーム インターフェースの使い方がリファクタリングされました。
-* スレート:スレート コア内部のウィジェットが FEditorStyle に依存しなくなりました。
-* ShooterGame、StrategyGame、VehicleGame:Slate Widget Style アセットを使用するように変換され、 FEditorStyle に全く依存しなくなりました。
-* インポート:FBX ログメッセージが Log ウィンドウに送られるようになりました。
-* TextureEditor: テクスチャ エディタのツールバーからテクスチャを再インポートできるようになりました。
-* エディタの翻訳 (作業進行中):
- * 取り消し / やり直しがサポートされます。
- * 実際にデータが変更された時のみファイルへ保存されます。
- * 列の挿入/削除/複製ができないようになりました (array UProperty 上に EditFixedSize タグが必要でした)。
- * 履歴がロードできない、またはソース コントロールが無効だとエラーが表示されます (トースト機能 + メッセージログですが、メッセージログは表示されません)。
- * 現在のマニフェストやアーカイブがロードできないとエラーが表示されます (トースト機能 + メッセージログで、メッセージログが表示されます)。
- * ファイルのチェックアウト / 保存に失敗するとエラーメッセージ、成功すると通知が表示されます。
- * 保存のたびにパーフォース上のアーカイブをチェックアウトするのではなく、私達がチェックアウトしていることを覚えておいてください。
- * [Find in Content Browser] とメニューアイテムが削除されました。
- * タブの名前を「TranslationDataObject_1」から「Language Name - Project Name - Translation Editor」に修正しました。
+ * Landscape brush is now hidden while moving the camera.
+ * Default landscape scale has been changed to 100,100,100.
+* Adjusted shootergame spawn points to spread bots out more.
+* Revised shootergame bot behaviour to allow them to fire up/down.
+* Made various revisions to scoreboard in shootergame.
+* Revised boost pickups in vehicle game to make them respawn.
+* Refactored game interface usage in vehicle game, hovership.
+* Slate:Widgets inside the Slate core no longer depend on FEditorStyle.
+* ShooterGame, StrategyGame, and VehicleGame:Converted over to use Slate Widget Style assets, and now has no dependency on FEditorStyle.
+* IMPORT:FBX Log messages now goes to Log window.
+* TextureEditor: textures can now be reimported from the Texture Editor's toolbar.
+* Translation Editor (Work in progress):
+ * Undo/Redo support
+ * Only save to file when data has actually changed
+ * Prevent insertion/deletion/duplication of rows (needed EditFixedSize tag on array UProperty).
+ * Show error if history can't be loaded, or source control disabled (toast + message log, but don't display message log).
+ * Show error if can't load current manifest or archive (toast + message log, show message log).
+ * Show error if check-out/save file failed, or notification if it succeeded.
+ * Don't try to check out the archive on the perforce server every time we save, but instead remember that we checked it out.
+ * Remove "Find in Content Browser" button and menu item.
+ * Correct tab title from "TranslationDataObject_1" to "Language Name - Project Name - Translation Editor."
#### レンダリング
-* 反射環境とスカイ スペキュラ上の最小ミップが削除され、ラフなマテリアルが完全にディフューズされないようになりました。
-* 反射環境が機能レベル SM4 に対応しました。
-* LightAsIfStatic が可動スタティック メッシュ上で再び使用できるようになりました。
-* スカイライトがコンストラクション スクリプトにおいて正しく再キャプチャするようになりました。
-* 選択された BSP サーフェスが、エディタの中の他のオブジェクトのビジュアル化と一致してビジュアル化されるようになりました。
-* 実験的な機能だった TemporalUpsample が削除されました (既存フレームから中割りフレームの再構築)。
-* 実験的な機能だった r.MSAA.DeferredMode が削除されました (メモリ インテンシブ AA ソリューション)。
-* BlurGBuffer 機能が削除されました (TemporalAA add NormalRoughnessToAlpha はほとんど必要なかったため、使用することもほとんどありませんでした)。この機能はStereoRendering では動きませんでした。
-* EngineShowflags 定義コードがリファクタリングされました。
- * フラグが特定のビルド コンフィギュレーションに固定されている場合、コンパイラの最適化が可能になります。
-* **最適化**
- * プリミティブがオブジェクト シャドウごとにキャストする必要がある場合のみ、可動指向性ライトに対するプリミティブ / ライトのインタラクションが作成されます。
- * シングルスレッド処理のレンダリング パフォーマンスに対して、マイナーな改善がいろいろなされました。
- * グローバルな動的頂点とインデックス バッファからの割り当ては、小さめのバッファのプールを使って強化されました。
- * モバイル向けシェーダーが多数最適化されました。
- * 描画リストが描画ポリシー内で手前から奥に向かってソートできるようになりました。これにより、 非表示のサーフェスを削除しなくてもモバイルデバイス上でのパフォーマンスが大幅に改善されます。
+* Removed min mip on reflection environment and sky specular - was preventing rough materials from going all the way diffuse.
+* Reflection environment support for Feature Level SM4.
+* LightAsIfStatic is now usable on movable static meshes again.
+* Sky lights now recapture properly in construction scripts.
+* Visualization of selected BSP surfaces now matches that of other objects in the editor.
+* Removed experimental TemporalUpsample feature (reconstructing inbetween frames from existing frames).
+* Removed experimental feature r.MSAA.DeferredMode (memory intensive AA solution).
+* Removed BlurGBuffer feature (rarely used, since TemporalAA add NormalRoughnessToAlpha barely needed), feature didn't work with StereoRendering.
+* Refactored EngineShowflags definition code.
+ * Allows compiler optimizations when flags are fixed for certain build configurations.
+* **Optimization**
+ * Primitive/light interactions for movable directional lights are only created if the primitive needs to cast a per-object shadow.
+ * Numerous small improvements to single threaded rendering performance.
+ * Allocations from the global dynamic vertex and index buffers are now backed using a pool of smaller buffers.
+ * Numerous mobile shader optimizations.
+ * Draw lists can now be sorted front-to-back within a drawing policy, greatly increases performance on mobile devices without hidden surface removal.
* **Android**
- * Android デバイス上でモザイク フォールバックを使用すると、 画面解像度が 1024 にクランプされます。精度に限界のある GlFragCoord では、これが必要となります。
- * Kindle Fire HDX と Galaxy S4 が FP16 レンダー ターゲットを使用するようになりました。
+ * Clamp screen resolution to 1024 when using the mosaic fallback on Android devices.This is necessary due to limited precision in glFragCoord.
+ * Kindle Fire HDX and Galaxy S4 now use FP16 render targets.
#### ブループリント
-* ブループリント パレット / コンテクスト メニュー内のブループリント ノードの分類が改善されました。
- * ノード分類を整理するための初回パスを作成しました (ノードはより見つけやすくしつつカテゴリ数を減らす目的)。完全ではありませんが、イタレートし続けているので徐々に良くなっています。
-* ブループリント コンポーネント 変数が Default カテゴリに割り当てられるようになりました。
-* 配列のエレメントをオブジェクト インスタンスへシリアル化する前に内部タイプ情報が完全にロードされていることを配列プロパティが確認するようになりました。
-* ブループリント アセットの取り込み中、無駄なアサートが取り除かれました。
-* ブループリントの [Variable Details] パネルに Transient および Save Game フラグが追加されました。
-* BlueprintType が継承されないように、NotBlueprintType のサポートが UClass headers に追加されました。
+* Better categorizing of blueprint nodes in the blueprint palette/context menu.
+ * We've made an initial pass to clean up the node categorization (aiming to slim down the number of categories, while making nodes more discoverable)� while it's not perfect, we continue to iterate on it, bettering it as we go.
+* Blueprint component variables are now assigned to the "Default" category.
+* Array properties will now ensure that internal type information has been fully loaded prior to serializing elements of the array into an object instance.
+* Removed an unnecessary assertion during Blueprint asset loading.
+* Added "Transient" and "Save Game" flag to variable details panel in Blueprints.
+* "NotBlueprintType" support added to UClass headers to stop inheritence of "BlueprintType."
#### ゲームプレイとフレームワーク
-* DeferStartupPrecache と PrecacheStartupSounds が FAudioDevice に追加されました。これにより、設定の読み込みが可能になるまで、ゲームは起動サウンドのキャッシュを遅らせます。実行時に AudioDevice の MaxChannels を修正するために SetMaxChannels が追加されました。
-* Engine.ini においてサブストリング列挙型変数のリダイレクトを実行する機能が追加されました。例:
+* Add DeferStartupPrecache and PrecacheStartupSounds to FAudioDevice, which lets a game delay the caching of startup sounds until after settings can be read.Add SetMaxChannels to modify MaxChannels of AudioDevice at runtime
+* Add ability to do substring enum redirects in Engine.ini.Example:
+EnumRedirects=(EnumName="ENewEnum",OldEnumSubstring="EOldEnum::",NewEnumSubstring="ENewEnum::")
-* 使用しないコマンドレットを多数削除しました。
-* UWorlds が RF_Public と RF_Standalone になりました。UWorlds をアセットのように処理し、コンテンツ ブラウザ内で管理するための準備です。
-* ライトマップが [World settings details] パネル経由で表示可能になりました。
-* レプリケーション システムの安定性が若干改善されました。
-* Navmesh の安定性が若干改善されました。
-* ブループリントの CDO はロード時に再生成された後、 PostLoad を呼び出させるようになりました。
-* オーディオ ハードウェアが見つからない、または初期化に失敗すると、オーディオ デバイスが削除されるようになりました。さらに、オーディオ デバイスはコマンドレット内では初期化されなくなりました。
-* ブループリントの再コンパイルのパフォーマンスが若干改善されました。
-*クロスの安定性が若干改善されました。
-* ペルソナの Anim ノードのツールチップが追加されました。
-* ペルソナ ビューポートの [Show] メニューを整理しました。
-* GetSocketLocalTransfrom と GetSocketWorldTransform をマージしました。
-* オブジェクトの置き換え時にエディタが手動でオブジェクト参照をリフレッシュできるイベントが追加されました。
-* [Create Anim Blueprint] ウィンドウに磨きをかけました (デザインの変更)。
-* [Assign skeleton] ウィンドウに磨きをかけました (スケルトン選択を変更して、プレーンなリストボックスではなくアセット ピッカーを使用するようにしました)。
-* "Retarget Anim Blueprints" に磨きをかけました (何が起こっているのかをユーザーにさらに伝えやすくするための通知が追加されました)。
-* ブループリント ツリーが変更され、オブジェクト名ではなく表示名が使用されるようになりました。
-* 小さいゲーム モジュール用のシングル ソース ファイル上での反復コンパイル時間が短縮されました。
- * ゲーム モジュールが常にプリコンパイルされたヘッダを使用するようになりました (イタレーションの高速化)。
- * これまでは、モジュール数が 8 ユニット ソース ファイルを超えるゲームのみで使用されてきました。
- * このための新規設定:BuildConfiguration.bForcePrecompiledHeaderForGameModules.
- * 小さなゲーム モジュールではユニティ ビルドは使用しなくなりました (イタレーションの高速化)。
- * ソース ファイルが 32 未満のゲーム モジュールは強制的にユニティ モード以外になります。
- * このための新規設定:BuildConfiguration.MinGameModuleSourceFilesForUnityBuild.
-* プログラム モジュールのデフォルトでは、共有の PCHs は使用されなくなりました (PCHUsageMode を使ったオーバーライドが可能)。
-* CodeView が実験的なエディタ設定に変更されました。デフォルトでは無効です。
- * クラス名上でダブルクリックすると CodeView が C++ コードへジャンプするようになりました。
-* UnrealBuildTool:ユーザーの CPU コア以上のプロセスをスポーンしないでください (ローカル プログラムのみ)。
- * これによりシステム リソースが自由に使えるようになりますが、ビルド時間が短縮できる場合もあります。その他の場合、ビルド時間は実際改善されます。
-* ほとんどのエディタ ウィンドウ アニメーションはデフォルトで無効になっています ([Editor Look and Feel] セクションで切り替えできます)。
-* エディタの [New Project] と [Open Project] ダイアログが大幅に改善されました。
-* スカイボックスを修正し、合成された Lightmass importance volumes が含まれるようになりました。
- * Automatic importance volume 用の境界を計算する場合、軸に対して 10000 を超えるメッシュは無視されるようになりました。
-* コンテンツブラウザ:テクスチャがサムネイル プレビュー シーンにストリームしないように修正されました。
-* Visual Studio がない場合のエラーヘルプが改善されました。
-* DeviceManager: 各種アップグレードにより新機能が追加されユーザービリティが向上しました。デバイス検出が見直されました。
-* DeviceManager: Windows デバイス向けにデバイス シャットダウンが実装されました。 ローカル PC の再起動 / シャットダウン時にユーザーに警告を出します。
-* SessionFrontend: ユーザビリティがいろいろ改善されました。
-* SessionFrontend: [Game Launcher] タブは Session Frontend から削除され、Window メニューからアクセス可能な主要タブとなりました。
-* Messaging: メッセージ エンドポイントをゲーム以外のスレッドから安全に破棄するために FMessageEndpoint::SafeRelease() が追加されました。使用サンプルのコードベースを検索します。
-* MessagingDebugger: 各種アップグレードにより新機能が追加されユーザービリティが向上しました。
-* MessagingDebugger: 現在、Messaging Debugger UI はスタンドアローン UFE からアクセスできなくなっています。次回のリリースで修正されます。
-* PlayInEditor: PIE 設定の前定義されたスクリーン解像度が INI で設定可能になりました。
-* PlayInEditor: レベル エディタの "Launch on Device" 機能が整理され安定しました。
-* PlayInEditor: モバイル エミュレータを使ってスタンドアローン プロセスでゲームを起動する [Mobile Preview] オプションが追加されました。
-* ColorPicker: 各種ユーザビリティが改善され、直近のステートが記憶されるようになりました。
-* Slate: SSlider ウィジェットの性能 (垂直方向のスライダ、ノブの字下げなど) が改善されました。
-* General: 選択した C++11 機能を使用するためのコード変換を継続しました (NULL -> nullptr、auto in for-loops など)。
-* 出力ログで選択された行が読めるようになりました。
+* Deleted many unused commandlets.
+* UWorlds are now RF_Public and RF_Standalone.This is in preparation of treating them like assets and managing them in the content browser.
+* Lightmaps are now viewable via the world settings details panel.
+* Minor stability improvements to the replication system
+* Minor navmesh stability improvements.
+* CDOs for blueprints now get PostLoad called on them after they are regenerated at load time.
+* If audio hardware is not found or fails to initialize, the audio device is now deleted.Also, audio devices are no longer initialized in commandlets.
+* Minor performance improvements for recompiling Blueprints.
+* Minor cloth stability improvements.
+* Added tooltips for anim nodes in Persona.
+* Rearranged Show menu in Personas viewport.
+* Merged GetSocketLocalTransfrom with GetSocketWorldTransform.
+* Added an event to allow editors to manually refresh object references when objects are replaced.
+* Polished "Create Anim Blueprint" window (redesign).
+* Polished "Assign skeleton" window (changed skeleton selection to use asset pickers instead of plain list box).
+* Polished "Retarget Anim Blueprints" (Added notifications to better inform user of what is happening).
+* Changed blueprint tree display to use display names instead of object names.
+* Better iterative compile times on single source files for small game modules.
+ * Game modules now always get a precompiled header (faster iteration).
+ * Previously, only game modules with more than 8 unity source files would get one.
+ * New setting for this:BuildConfiguration.bForcePrecompiledHeaderForGameModules.
+ * Small game modules no longer use unity build (faster iteration).
+ * Now, game modules with less than 32 source files force non-unity mode.
+ * New setting for this:BuildConfiguration.MinGameModuleSourceFilesForUnityBuild.
+* Program modules no longer use shared PCHs by default (can be overridden using PCHUsageMode).
+* Changed CodeView to be an experimental editor setting; disabled by default.
+ * Added double-clicking on Class names to CodeView to jump to C++ code.
+* UnrealBuildTool:Don't spawn more processes than the user has CPU cores (local executor only).
+ * This frees up system resources but can reduce build times in some cases; In other cases it can actually improve build times.
+* Disabled most editor window animations by default (can be toggled under "Editor Look and Feel" section).
+* Editor's 'New Project' and 'Open Project' dialogs have been significantly improved.
+* Fixed skyboxes included in synthesized Lightmass importance volumes.
+ * Meshes larger than 10,000m along any axis are now ignored when calculating bounds for automatic importance volume.
+* Content Browser:Fixed textures not streaming for thumbnail preview scenes.
+* Improved error help when Visual Studio appears to be missing.
+* DeviceManager: various burst upgrades to add new features and improve usability; device discovery has been overhauled.
+* DeviceManager: implemented device shutdown for Windows devices; warning users if rebooting/shutting down local PC.
+* SessionFrontend: various usability improvements.
+* SessionFrontend: the Game Launcher tab has been removed from the Session Frontend and is now its own major tab accessible from the Window menu.
+* Messaging: added FMessageEndpoint::SafeRelease() for safely destroying message endpoints from non-Game threads; search code base for usage examples.
+* MessagingDebugger: various burst upgrades to add new features and improve usability
+* MessagingDebugger: the Messaging Debugger UI is currently inaccessible from standalone UFE; this will be fixed next release.
+* PlayInEditor: the pre-defined screen resolutions for PIE settings are now configurable in the INI.
+* PlayInEditor: the "Launch on Device" feature in the Level Editor has been cleaned up and stabilized.
+* PlayInEditor: added "Mobile Preview" option that will launch the game in a standalone process with mobile emulation.
+* ColorPicker: various usability improvements and now remembers its last state.
+* Slate: improved capabilities of SSlider widget (vertical sliders, indented knobs etc.)
+* General: continued conversion of code to use selected C++11 features (NULL -> nullptr, auto in for-loops etc.)
+* Selected lines in Output Log are now readable.
#### コア
-* Added LOD レベルの生成が World Browser に追加され、Simplygon が必要になりました。
-* TCircularQueue の実装が完了しました。
-* Opus ボイス コーデックがアップグレードして v1.1 になりました。
-* エンジン外部の深いインストールパスとプロジェクトパスの処理に対し一層努力しています。
-* Const-correctness が修正されました。
-* TArray と TIndirectArray のビヘイビアをさらに統一するための新機能と修正が追加されました。
-* UnrealHeaderTool からのエラー ハンドリングとエラー メッセージが改善されました。
-* UnrealHeaderTool パースのいくつか修正されました。
-* ビルドが高速化しました。
-* StringCast がヌル ポインタを処理するようになりました。
-* TMap/TSet/TMultiMap イタレーションが修正されました。
-* リダイレクト初期化コードが、.ini ファイルから無くなっている CoreUObject.Metadata セクションを処理するようになりました。
-* UnrealHeaderTool で生成したインクルードがノーマライズされました。
-* ツールチップのパースが改善されて、====== や ------ のみの行などの余分な '境界' が除外されました。
-* ツールチップは、これまでなかったプロパティ タイプに対してパースされます。
+* Added LOD levels generation to World Browser, requires Simplygon.
+* Finished implementation of TCircularQueue
+* Upgraded Opus voice codec to v1.1
+* More efforts to handle deep install paths and project paths outside of the engine.
+* Const-correctness fixes.
+* New functions and fixes to further unify the behavior of TArray and TIndirectArray.
+* Improvements to error handling and error messages from UnrealHeaderTool.
+* Some UnrealHeaderTool parsing fixes.
+* Build speed improvements.
+* StringCast now handles null pointers.
+* TMap/TSet/TMultiMap iteration fixes.
+* Redirect initialization code now handles the CoreUObject.Metadata section being missing from the .ini file.
+* UnrealHeaderTool generated includes are now normalized.
+* Improved tooltip parsing to eliminate superfluous 'borders', e.g. lines containing all ======, ------ etc.
+* Tooltips are now parsed for more property types which were previously being missed.
-#### ネットワーキング
-* 古い / 破損した ping コードは取り除かれました。
-* サーバー認証の ping コードが新しく追加されました。
- * クライアントの ping を計算するのに低レベルのネット ドライバーの ACK を使用し、値で不正行為をする能力を減らすバリデーションが追加されました。
- * 新しい ping コードで作業しやすくするために、高レベルのプレイヤー ステート コードで ping のスムージングを調整しました。
+#### Networking
+* Removed old/broken ping code
+* Added new server-authoritative ping code
+ * Uses low level net driver acks, to calculate client ping, and adds validation to reduce ability to tamper with values
+ * Adjusted ping smoothing in high-level player state code, to work better with new ping code
#### プラットフォーム
* **Mac**
- * OS X でのプロジェクト作業にコードが追加されました。
- * ファイルを検知する場合、Finder で親フォルダを開きそのファイルを選択するか、フォルダに対してそれらを開きます。
- * リンカのサイレント障害が原因でMac 上でクラッシュする C++ タイプ のいくつかを明確にしました。
- * Mac OS X 出力ログを新規のエントリまでスクロールするようにしました。
- * Mac OS X でズームされたウィンドウの状態をキャッシュします。 エディタを起動すると isZoomed 用の objc_msgsend がプロファイラの一番上にきます!
- * Mac 上でウィンドウ タブがデタッチしやすくなりました。
- * Mac OS X 上でのエディタ起動時にウィンドウが表示されるようになりました。
- * Mac OS X 上で最小化されたウィンドウがマウス イベントを横取りしないようにしました。
- * OS X 上でウィンドウを再形成しようしてもクラッシュしなくなりました。
- * OS X 上でプロンプト ウィンドウを閉じた後でもクラッシュしなくなりました。
- * MacApplication がない場合でも、出力ログ ウィンドウが OS X 上でコンテンツを開き表示することが確認されました。
- * サブ エディタを使用しても、レベル ビューポート グラフィックが OS X から消えてしまわなくなりました。
- * 一時的なスクリーン空間の反射のレンダリング時に破損が起きないようにしました。
- * GLSL で異なる NAN/INF の条件に対応するために、Mac OS X 上で NAN の抑制を有効化しなければなりません。
- * パーティクルのレンダリング時に、テクスチャ バッファのクラッシュを避けるために、低いシェーダー モデルに対してもバインドされます。
- * glMapBuffer と CPU & GL の同期を避けて新しい拡張子が使えない場合、PBO unpack の後に PBO pack を使用してテクスチャ ミップをコピーします。
- * エディタにマウスをかざすと遅くなる原因の 1 つが解決されました。
- * OpenGL に対して非常に遅い glReadPixels パスを取る RHIReadSurfaceData を呼び出すかわりに、バイト バッファへヒット プロキシ データをキャッシュするようにしました。
- * それらをサポートしているすべての GL 上でシームレスなキューブマップが有効になりました。
- * Mac OS X 上で SSR を使用する時のビューポート エッジの歪みを解消しました。
- * CPU のリードバックテクスチャのロックの高速化、Mac OS X 上で一般的なテクスチャのリードバックおよび HZB パフォーマンスに対応対処しました。
+ * Make adding code to projects work on OS X.
+ * When exploring to a file, open the parent folder in Finder and select that file, or for folders just open them.
+ * Disambiguate some C++ types that were causing crashes on Mac due to silent linker failure.
+ * Make Mac OS X output log scroll to new entries.
+ * Cache the window's zoomed state on Mac OS X - the objc_msgsend for isZoomed is sitting top of the profiler when running the editor!
+ * Make it easier to detach window tabs on the Mac.
+ * Make windows appear on editor restart on Mac OS X.
+ * Stop minimized windows stealing mouse events on Mac OS X.
+ * Stop crashing when trying to reshape windows on OS X.
+ * Stop crashing after closing prompt windows on OS X.
+ * Make sure that the output log window opens & displays content on OS X even when there's no MacApplication.
+ * Stop the level viewport graphics from fading on OS X when using sub-editors.
+ * Avoid corruption when rendering temporal screen space reflections
+ * Must enable NAN suppression on Mac OS X to handle differing NAN/INF conditions in GLSL.
+ * When rendering particles ensure a texture buffer is bound even for lower shader models to avoid a crash.
+ * Use a PBO pack, followed by a PBO unpack to copy texture mips when newer extensions aren't available to avoid synchronising the CPU & GL with glMapBuffer.
+ * Eliminate one cause of slowdown when mousing over the editor.
+ * Cache the hit proxy data into a byte buffer rather than calling RHIReadSurfaceData which takes a very slow glReadPixels path for OpenGL..
+ * Enable seamless cube maps on all GL's that support them.
+ * Eliminate distortions at viewport edge when using SSR on Mac OS X.
+ * Speed-up locking CPU readback textures and general texture readback on Mac OS X + address HZB performance.
* **Android**
- * Android の場合、バックバッファの形式は、R5G6B5 よりも R8G8B8 の方が好ましくなりました。
- * Android がマルチスレッドになりました (起動時に適切な CPU コア数をチェックします)。
- * ハイエンドな Qualcomm Adreno GPU に OpenGL ES 3.0 シェーダーが使用されています。
- * GPU のフレーム時間が `STAT UNIT` で測定可能になりました。ドライバーに問題のあるデバイスもあるためデフォルトでは無効になっていますが、 CVar `r.DisjointTimerQueries` を 1 に設定すれば有効になります。
- * Android のコントローラーとキーボードが初めてサポートされました。
- * Android の一時停止 / 再開のビヘイビアが整理されました。
- * Android のビルドはユーザーが生成したスタンドアローン型のツールチェーンに依存しなくなりました。UBT は NDK ツールチェーンを直接呼び出します。
- * NSight 1.5 以降がインストールされていると、Android デバッグ スタブ プロジェクトは作成されなくなりました。
+ * Android now prefers R8G8B8 backbuffer format instead of R5G6B5.
+ * Android is now multithreaded (using proper CPU core count check at startup).
+ * Now using OpenGL ES 3.0 shaders for high-end Qualcomm Adreno GPUs.
+ * GPU frametime can now be measured in `STAT UNIT`.It's disabled by default due to driver issues on some devices, but can be enabled by setting the CVar `r.DisjointTimerQueries` to 1.
+ * Initial Android controller and keyboard support is in.
+ * Android pause/resume behavior has been cleaned up.
+ * Android builds no longer rely on a user generated standalone toolchain.UBT calls directly into the NDK toolchains.
+ * Android debug stub projects are no longer generated if NSight 1.5 or later is installed.
#### アニメーション
-* **アニメーション**
- * スケルトン:様々な印を汚れの問題として修正したので、正当な原因以外ではスケルトンは汚れないはずです。
- * 新規のアニメーション通知がアニメーションに追加された場合、スケルトンを保存する必要がなくなりました。
- * ModifyBone SkeletalControl 名を明確にするために TransformBone に変更しました。
+* **Animation issues**
+ * Skeleton:Fixed various marking as dirty issues, so you shouldn't see skeleton getting dirty anymore without a proper cause.
+ * You also don't have to save skeleton anymore when new anim notify is added to the animation.
+ * ModifyBone SkeletalControl name changed to TransformBone for clarify.
-## 周知の問題
+## 既知の問題
-* Mac エディタは機能しますが、 ビルド済みのバイナリは本リリースには含まれません。今のところ、Mac でエディタを動かすためには、バイナリのコンパイルが必要になります。
+* Mac editor works but pre-built binaries are not included with this release.For now, you must compile the binaries in order to run the editor on Mac.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/March/ReleaseNotesMarch2014.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/March/ReleaseNotesMarch2014.KOR.udn
index 3523fa49b798..720cf3ea2fec 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/March/ReleaseNotesMarch2014.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2014/March/ReleaseNotesMarch2014.KOR.udn
@@ -1,8 +1,10 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3367470
Title: March 2014 Release Notes
Crumbs:%ROOT%, Support/Builds
Description: ### DO NOT TRANSLATE ###
Availability:Licensee
+Parent:Support/Builds
+Order:-1
[TOC(start:2 end:2)]
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2015/4_8/ReleaseNotes_4_8.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2015/4_8/ReleaseNotes_4_8.KOR.udn
index bb3583f43dfb..fa9bf30724bd 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2015/4_8/ReleaseNotes_4_8.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2015/4_8/ReleaseNotes_4_8.KOR.udn
@@ -289,7 +289,7 @@ Shooter Game 에서 이 기능을 확인해 보세요.
* 와이어에 커서를 올려 강조하거나 관련된 핀의 툴팁을 확인합니다.
-* 더블클릭으로 재경유 노드를 삽입합니다 (블루프린트 그래프 전용)
+* 더블클릭으로 경유지 노드를 삽입합니다 (블루프린트 그래프 전용)
### 프로시저럴 메시 컴포넌트 (실험단계)
@@ -549,11 +549,11 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* UObject 생성은 이제 스레드 안전성이 확보되어 워커 스레드에서 수행 가능합니다. 여기에는 모든 UObject 파생 클래스 생성자 역시 스레드 안전성이 확보되어야 합니다.
-* StaticFindObject, FindObject, FindObjectFast 함수 역시도 이제 스레드 안전성이 확보되었습니다. 워커 스레드에 사용되고 반환값이 스택에서만 레퍼런싱된 경우, 해당 오브젝트가 어떤 것에도 레퍼런싱되지 않은 것으로 가비지 콜렉터가 간주할 수 있다는 점을 염두에 두시기 바랍니다.
+* StaticFindObject, FindObject, FindObjectFast 함수 역시도 이제 스레드 안전성이 확보되었습니다. 워커 스레드에 사용되고 반환값이 스택에서만 레퍼런싱된 경우, 해당 오브젝트가 어떤 것에도 레퍼런싱되지 않은 것으로 가비지 컬렉터가 간주할 수 있다는 점을 염두에 두시기 바랍니다.
* 현재 영역이 워커 스레드에서 실행중인 동안에는 GC 실행을 막는다는 점만 빼면 FScopeLock 와 비슷한 기반으로 작동하는 FGCScopeGuard 헬퍼 구조체를 도입했습니다.
-* 워커 스레드가 FGCScopeGuard 영역 안에서 코드를 실행하는 경우 가비지 콜렉션을 생략시키는 TryCollectGarbage 함수를 도입했습니다. TryCollectGarbage 는 이제 레벨 틱 코드에 기본으로 사용됩니다.
+* 워커 스레드가 FGCScopeGuard 영역 안에서 코드를 실행하는 경우 가비지 컬렉션을 생략시키는 TryCollectGarbage 함수를 도입했습니다. TryCollectGarbage 는 이제 레벨 틱 코드에 기본으로 사용됩니다.
* 비동기 로드율은 `stat levels` 를 통해 접근 가능하며, 이제 PostLoad 를 계산에 넣습니다.
@@ -1055,7 +1055,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 새로운 increment (증가), decrement (감소), negate (부정) 매크로를 새로 추가했습니다.
-* 역방향 이동하는 재경유 노드용 방향 전환이 지원됩니다. '상투' 효과를 피할 수 있습니다.
+* 역방향 이동하는 경유지 노드용 방향 전환이 지원됩니다. '상투' 효과를 피할 수 있습니다.

@@ -1067,7 +1067,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 변수 드래그 앤 드롭으로 카테고리를 변경했던 것도 되돌리기 가능합니다.
-* 재경유 노드 코멘트 핀 기능 구현을 변경, 사용자에게 커서를 올렸을 때 현재 디스플레이에 대한 대안을 제공합니다.
+* 경유지 노드 코멘트 핀 기능 구현을 변경, 사용자에게 커서를 올렸을 때 현재 디스플레이에 대한 대안을 제공합니다.
* 두 날짜 시간 빼기를 블루프린트에 노출시켰습니다.
@@ -1215,7 +1215,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* Current Max Draw Distance 는 블루프린트에서 읽을 수만 있지, 쓸 수는 없습니다.
-* 블루프린트에서 스폰된 데칼과 이미터가 더이상 의도치 않게 가비지 콜렉팅되지 않습니다.
+* 블루프린트에서 스폰된 데칼과 이미터가 더이상 의도치 않게 가비지 컬렉팅되지 않습니다.
* 블루프린트에 기본 배치된 이벤트에 코멘트 풍선이 정상 표시됩니다.
@@ -1395,7 +1395,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 블루프린트에 새 변수나 이벤트 디스패처 추가시의 작명 규칙 문제를 고쳤습니다. 이제 블루프린트의 다른 항목같은 포맷이 될 것입니다: New[Type]_[Number].
-* 블루프린트 생성 컴포넌트에 대한 되돌리기/다시하기 버퍼에 의해서만 레퍼런싱된 오브젝트가 가비지 콜렉팅되는 것을 고쳤습니다.
+* 블루프린트 생성 컴포넌트에 대한 되돌리기/다시하기 버퍼에 의해서만 레퍼런싱된 오브젝트가 가비지 컬렉팅되는 것을 고쳤습니다.
* 블루프린트 컴파일을 막을 수 있던 컴포넌트 변수와 컴포넌트 노드 사이의 이름 충돌 가능성을 고쳤습니다.
@@ -1493,7 +1493,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 접힌 그래프 내 함수 로컬 변수 대체가 작동합니다.
-* 재경유 노드는 이제 애니메이션 컴파일 이후 애니메이션 그래프에서 정상 작동합니다.
+* 경유지 노드는 이제 애니메이션 컴파일 이후 애니메이션 그래프에서 정상 작동합니다.
* 키바인딩을 통한 그래프 내 모든 노드 선택시 더이상 그래프 목록 내 공백 노드로 인한 어서트가 발생하지 않습니다.
@@ -1517,11 +1517,11 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 메뉴의 내용을 잘라버리기 보다는, 줌 레벨에 맞춰 팝업 메뉴의 스케일을 조절합니다.
-* 재경유 노드와 다른 노드에서 코멘트 풍선 작동방식이 다르던 것을 고쳤습니다.
+* 경유지 노드와 다른 노드에서 코멘트 풍선 작동방식이 다르던 것을 고쳤습니다.
- * 이제 재경유 노드 코멘트도 다른 코멘트와 마찬가지로 핀 및 표시/숨길 수 있습니다.
+ * 이제 경유지 노드 코멘트도 다른 코멘트와 마찬가지로 핀 및 표시/숨길 수 있습니다.
-* 숨겨진 재경유 노드 위에 커서를 올리면 코멘트가 표시됩니다.
+* 숨겨진 경유지 노드 위에 커서를 올리면 코멘트가 표시됩니다.
* 에디터에서 새줄 모디파이어 키 코멘트 풍선이 있는 노드가 비슷한 예제에 일치하지 않는 문제가 해결됩니다.
@@ -1581,7 +1581,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 커브가 타임라인에 소유된 것처럼 외부 커브를 포함한 타임라인이 커브를 깊이 복사(deep copy)하려 하는 문제를 고쳤습니다. 외부 커브는 이제 레퍼런스를 원래대로 놔둔 채 건너뜁니다. 추가적으로 소유된 커브의 깊은 복사는 이제 블루프린트 리인스턴싱 도중 과다하게 깊이 복사되지 않습니다.
-* 블루프린트 그래프 액션 관련 특정 상황에서 레벨 전환시 가비지 콜렉션이 실패하게 만드는 문제를 고쳤습니다.
+* 블루프린트 그래프 액션 관련 특정 상황에서 레벨 전환시 가비지 컬렉션이 실패하게 만드는 문제를 고쳤습니다.
* 머티리얼 표현식에서 코멘트 풍선 관련 다음과 같은 문제를 고쳤습니다.
@@ -1629,7 +1629,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 엔진이 환경 변수 읽기에 실패했을 때의 경고 로그 메시지를 추가했습니다.
-* 월드 사이의 전환이 일어날 때 레퍼런스가 남아 기존 맵의 가비지 콜렉션을 막는 현상을 피하기 위해 월드에 들어있는 모든 오브젝트는 가비지 콜렉션 마킹됩니다.
+* 월드 사이의 전환이 일어날 때 레퍼런스가 남아 기존 맵의 가비지 컬렉션을 막는 현상을 피하기 위해 월드에 들어있는 모든 오브젝트는 가비지 컬렉션 마킹됩니다.
* 이를 통해 Seamless Travel 전환과 Load Map 전환이 일치됩니다.
@@ -1723,7 +1723,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 소유 액터 없이 자손 액터 컴포넌트를 사용했을 때의 크래시를 고쳤습니다.
-* PIE 에서 심리스 레벨 트랜지션을 할 때 가비지 콜렉션이 기존 월드를 비우는 데 실패해서 발생하던 크래시를 고쳤습니다.
+* PIE 에서 심리스 레벨 트랜지션을 할 때 가비지 컬렉션이 기존 월드를 비우는 데 실패해서 발생하던 크래시를 고쳤습니다.
* 액터가 클라이언트에서 Begin Play 를 두 번 호출하게 만들 수 있었던 문제를 고쳤습니다.
@@ -1771,7 +1771,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 머신에 네트워크 어댑터가 둘 이상 있을 때 언리얼 스웜이 IP 주소를 자체적으로 해석하도록 수정했습니다.
-* 가비지 콜렉션 퍼포먼스를 향상시켰습니다.
+* 가비지 컬렉션 퍼포먼스를 향상시켰습니다.
* 컨스트럭션 스크립트 도중의 동적인 데이터 변경이 (실행시간에 다른 방식으로는 변경 불가능한) 무버블 이외의 컴포넌트를 타겟으로 할 수 있도록 메소드를 개선시켰습니다.
@@ -1911,7 +1911,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 다수의 iOS 프로젝트 세팅에 활성화됩니다 (Enable Game Center 등).
-* 가비지 콜렉터 호출 전 스트리밍 플러싱을 활성화시킬 수 있는 ini 옵션을 추가했습니다.
+* 가비지 컬렉터 호출 전 스트리밍 플러싱을 활성화시킬 수 있는 ini 옵션을 추가했습니다.
* 엔진 ini 의 [Core.System] 섹션 아래 FlushStreamingOnGC 값을 통해 활성화시킬 수 있습니다.
@@ -2161,7 +2161,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 지오메트리 모드에서 에지를 돌리려 할 때 연관된 폴리곤이 일치하는 경우의 크래시를 고쳤습니다.
-* 가비지 콜렉터가 찾은 오브젝트가 스트리밍 코드에 의해서만 레퍼런싱되어 유발된 스트리밍 도중 가비지 콜렉터가 발동될 때의 크래시를 고쳤습니다.
+* 가비지 컬렉터가 찾은 오브젝트가 스트리밍 코드에 의해서만 레퍼런싱되어 유발된 스트리밍 도중 가비지 컬렉터가 발동될 때의 크래시를 고쳤습니다.
* 깨진 애셋 로드시의 크래시를 고쳤습니다. 대신 경고창이 뜹니다.
@@ -2339,7 +2339,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 공간화 활성 상태의 스테레오 사운드 플레이시의 경고를 고쳤습니다.
-* 가비지 콜렉터에서 퍼지 종료 도중 영구 오브젝트 풀에 상주하는 오브젝트에서 퍼지가 소멸자를 호출하지 않던 버그를 잡았습니다.
+* 가비지 컬렉터에서 퍼지 종료 도중 영구 오브젝트 풀에 상주하는 오브젝트에서 퍼지가 소멸자를 호출하지 않던 버그를 잡았습니다.
* 에디터 비행 제어가 조합키(Ctrl, Alt, Shift, Cmd)가 눌리지 않은 상태에서만 효과를 발휘하도록 변경했습니다. [조합키]+PgUp 를 다른 동작에 바인딩하는 작업이 가능하도록 하기 위해서입니다.
@@ -2449,7 +2449,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 이제 새 클래스를 추가한 이후 콘텐츠 브라우저 뷰를 동기화시키고, 새 블루프린트 클래스 추가시 블루프린트 에디터를 열기도 합니다.
-* 콘텐츠 브라우저의 "콜렉션 표시"가 이제 기존 에디터 세션의 상태를 기억합니다.
+* 콘텐츠 브라우저의 "컬렉션 표시"가 이제 기존 에디터 세션의 상태를 기억합니다.
* 콘텐츠 브라우저의 "폴더에서 표시" 및 "탐색기에서 표시" 맥락 메뉴 옵션이 자주 사용되는 관계로 서브메뉴에서 이동시켰습니다.
@@ -3571,9 +3571,9 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 실행시간에 컨스트레인트 프로젝션을 켜고 끄는 기능을 추가했습니다.
-* 많은 양의 피직스 바디 생성 속도를 높이기 위해 피직스 바디 초기화에 디퍼드 패쓰를 추가했습니다.
+* 많은 양의 피직스 바디 생성 속도를 높이기 위해 피직스 바디 초기화에 디퍼드 패스를 추가했습니다.
-* 인스턴스드 스태틱 메시 컴포넌트에 맞게 더 빠른 스태틱 이니셜라이제이션 패쓰를 추가했습니다.
+* 인스턴스드 스태틱 메시 컴포넌트에 맞게 더 빠른 스태틱 이니셜라이제이션 패스를 추가했습니다.
* 폴리지 통계 함수 라이브러리에 메소드를 추가했습니다.
@@ -4226,7 +4226,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 신형 Morpheus HMD Server 가 지원됩니다. Morpheus PC 프리뷰가 다시 작동합니다.
-* 렌더 스레드가 단일 CPU 코어에 잠기게 만드는 버그를 잡았습니다. 가비지 콜렉션을 버벅이게 만드는 여러가지 문제가 해결됩니다.
+* 렌더 스레드가 단일 CPU 코어에 잠기게 만드는 버그를 잡았습니다. 가비지 컬렉션을 버벅이게 만드는 여러가지 문제가 해결됩니다.
* 텍스처 스트리밍 예산 산정의 버그를 잡았습니다. 이제 텍스처 풀 크기가 제대로 산정됩니다.
@@ -4660,7 +4660,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* LPV 포함 SubsurfaceProfile 셰이더 모델을 사용하는 것을 수정했습니다.
-* ViewProjectionMatrix 가 특정 렌더링 패쓰에 대해 설정되지 않아 UMG 렌더링 관련 문제를 유발하던 것을 고쳤습니다.
+* ViewProjectionMatrix 가 특정 렌더링 패스에 대해 설정되지 않아 UMG 렌더링 관련 문제를 유발하던 것을 고쳤습니다.
* 스크린 샷 퍼포먼스를 향상시켰습니다.
@@ -4672,7 +4672,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 스카이라이트는 전에 캡처된 적이 없는 경우 활성화시에만 캡처됩니다.
-* 스카이라이트 색이나 강도 변경시 렌더링 스테이트를 재생성하지 않는 빠른 (완전 정적인 드로 리스트 재생성) 패쓰를 추가했습니다.
+* 스카이라이트 색이나 강도 변경시 렌더링 스테이트를 재생성하지 않는 빠른 (완전 정적인 드로 리스트 재생성) 패스를 추가했습니다.
* 게임 콘솔에서도 에디터에서처럼 자동완성 항목이 소팅됩니다.
@@ -4800,7 +4800,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 라이트매스에서 시작 에이전트에 사용된 코어 수에 묶여있던 다중 CPU 코어 수 제한을 수정했습니다.
-* 다이내믹 라이팅 패쓰에 대한 머티리얼 AO 를 수정했습니다.
+* 다이내믹 라이팅 패스에 대한 머티리얼 AO 를 수정했습니다.
* bLightAsIfStatic 이 켜진 프리미티브가 아직 빌드하지 않은 라이트 영향 반경에 들어간 경우 라이팅이 빌드되지 않던 것을 고쳤습니다.
@@ -4846,7 +4846,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 머티리얼 에디터에서 빌보드에 사용되는 ViewToWorld 트랜스폼에 영향을 끼칩니다.
-* 머티리얼 인스턴스 가비지 콜렉션 도중에 잠재된 크래시를 고쳤습니다.
+* 머티리얼 인스턴스 가비지 컬렉션 도중에 잠재된 크래시를 고쳤습니다.
* 머티리얼 인스턴스 에디터에서 부모 머티리얼 리셋으로 인해 발행하는 크래시 버그를 잡았습니다.
@@ -4926,7 +4926,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 검색창에 커스터마이징 향상을 위한 변경을 가했습니다.
-* 슬레이트 리소스의 불필요한 가비지 콜렉션을 수정했습니다.
+* 슬레이트 리소스의 불필요한 가비지 컬렉션을 수정했습니다.
* 위젯 소멸시 발생할 수 있었던 크래시를 고쳤습니다.
@@ -5208,7 +5208,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 위젯 선택이 바뀌려 할 때 선택된 오브젝트를 클리어합니다. 이로써 위젯 이주 세트의 변화 전, 색 선택기의 스포이드 기능에서 오는 최종 변화가 확실히 마무리될 수 있도록 합니다.
-* 애니메이션이 없는, 그리고 보이는 타임라인/애니메이션이 없는 UMG 위젯 컴파일시 발생하는 크래시를 고쳤습니다. 오브젝트가 가비지 콜렉팅되도록 합니다. 이제 GC 방지를 위해 오브젝트 레퍼런스를 보고합니다.
+* 애니메이션이 없는, 그리고 보이는 타임라인/애니메이션이 없는 UMG 위젯 컴파일시 발생하는 크래시를 고쳤습니다. 오브젝트가 가비지 컬렉팅되도록 합니다. 이제 GC 방지를 위해 오브젝트 레퍼런스를 보고합니다.
* 트로버는 이제 25 조각으로 제한됩니다.
@@ -5216,7 +5216,7 @@ World Position Offset 으로 애니메이팅되는 나무에서의 픽셀별 속
* 피벗 포인트가 컴포넌트 상의 위젯 히트 테스트를 제대로 하지 못하던 것을 고쳤습니다.
-* 뷰포트나 플레이어 화면에 추가된 UserWidgets 는 이제 전체 레벨 전환이 일어나면 자동 제거 또는 킬 대기 상태로 마킹합니다. 이로써 오래된 월드가 레퍼런싱되어 많은 가비지 콜렉션 크래시 및 골칫꺼리를 안기던 문제가 다수 해결됩니다.
+* 뷰포트나 플레이어 화면에 추가된 UserWidgets 는 이제 전체 레벨 전환이 일어나면 자동 제거 또는 킬 대기 상태로 마킹합니다. 이로써 오래된 월드가 레퍼런싱되어 많은 가비지 컬렉션 크래시 및 골칫꺼리를 안기던 문제가 다수 해결됩니다.
* 디자이너에 "Wrap With" 를 사용하면 이제 다중 선택된 위젯이 동기간인 경우 제대로 묶어주며, 그 외의 경우 선택된 동기를 가능한 그룹별로 모두 묶어줍니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.INT.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.INT.udn
index 004c3956b279..695d81efc84c 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.INT.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.INT.udn
@@ -5646,85 +5646,83 @@ Stats are automatically broken into the threads they execute on and can appear i
* Here is an example of how one would build a custom native AnimInstance class using the new proxy, granting Blueprint access to its innards and avoiding copies of shared data between the proxy and the instance:
-USTRUCT()
+ USTRUCT()
-struct FExampleAnimInstanceProxy : public FAnimInstanceProxy
+ struct FExampleAnimInstanceProxy : public FAnimInstanceProxy
-{
+ {
- GENERATED_BODY()
+ GENERATED_BODY()
- FExampleAnimInstanceProxy()
+ FExampleAnimInstanceProxy()
- : FAnimInstanceProxy()
+ : FAnimInstanceProxy()
- {}
+ {}
- FExampleAnimInstanceProxy(UAnimInstance* Instance);
+ FExampleAnimInstanceProxy(UAnimInstance* Instance);
- virtual void Update(float DeltaSeconds) override
+ virtual void Update(float DeltaSeconds) override
- {
+ {
- // Update internal variables
+ // Update internal variables
- MovementAngle += 1.0f * DeltaSeconds;
+ MovementAngle += 1.0f * DeltaSeconds;
- HorizontalSpeed = FMath::Max(0.0f, HorizontalSpeed - DeltaSeconds);
+ HorizontalSpeed = FMath::Max(0.0f, HorizontalSpeed - DeltaSeconds);
- }
+ }
-public:
+ public:
- UPROPERTY(Transient, BlueprintReadWrite, EditAnywhere, Category = "Example")
+ UPROPERTY(Transient, BlueprintReadWrite, EditAnywhere, Category = "Example")
- float MovementAngle;
+ float MovementAngle;
- UPROPERTY(Transient, BlueprintReadWrite, EditAnywhere, Category = "Example")
+ UPROPERTY(Transient, BlueprintReadWrite, EditAnywhere, Category = "Example")
- float HorizontalSpeed;
+ float HorizontalSpeed;
-};
+ };
-UCLASS(Transient, Blueprintable)
+ UCLASS(Transient, Blueprintable)
-class UExampleAnimInstance : public UAnimInstance
+ class UExampleAnimInstance : public UAnimInstance
-{
+ {
- GENERATED_UCLASS_BODY()
+ GENERATED_UCLASS_BODY()
-
+ private:
-private:
+ // The AllowPrivateAccess meta flag will allow this to be exposed to Blueprint,
- // The AllowPrivateAccess meta flag will allow this to be exposed to Blueprint,
+ // but only to graphs internal to this class.
- // but only to graphs internal to this class.
+ UPROPERTY(Transient, BlueprintReadOnly, Category = "Example", meta = (AllowPrivateAccess = "true"))
- UPROPERTY(Transient, BlueprintReadOnly, Category = "Example", meta = (AllowPrivateAccess = "true"))
+ FExampleAnimInstanceProxy Proxy;
- FExampleAnimInstanceProxy Proxy;
+ virtual FAnimInstanceProxy* CreateAnimInstanceProxy() override
- virtual FAnimInstanceProxy* CreateAnimInstanceProxy() override
+ {
- {
+ // override this to just return the proxy on this instance
- // override this to just return the proxy on this instance
+ return &Proxy;
- return &Proxy;
+ }
- }
+ virtual void DestroyAnimInstanceProxy(FAnimInstanceProxy* InProxy) override
- virtual void DestroyAnimInstanceProxy(FAnimInstanceProxy* InProxy) override
+ {
- {
+ }
- }
+ friend struct FExampleAnimInstanceProxy;
- friend struct FExampleAnimInstanceProxy;
-
-};
+ };
* The following functions and variables of the **UAnimInstance** class are **now deprecated**:
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.JPN.udn
index 6075c337a524..5a27a7fa1c3c 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.JPN.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:2952959
+INTSourceChangelist:3403469
Availability:Public
Title:アンリアル エンジン 4.11 リリースノート
Crumbs:%ROOT%, Engine
@@ -25,17 +25,17 @@ Paragon はチームにとって、ユニークな挑戦の連続でした。Par
細かい最適化をエンジン全体で数多く実施したので Paragon のパフォーマンスを大幅に改善しました。UE4 で作成されたすべてのゲームの改善にもつながるでしょう。これらの最適化の多くが 4.11 で実現され、今後のリリースで更に最適化されます。最適化作業の成果を幾つかを紹介します。
-**Parallelization (並列化):** PC やコンソール上での高いフレームレートの実現には今やマルチコア スケーリングが極めて重要となるので、**スレッド アーキテクチャ**をいくつかの方法で改善しました。タスク作成の負荷を減らして、優先度の高いタスクへのサポートを追加し、同期ポイントを多数取り除きました。
+**Parallelization (並列化):** PC やコンソール上での高いフレームレートの実現には今やマルチコア スケーリングが極めて重要となるので、**スレッド アーキテクチャ** をいくつかの方法で改善しました。タスク作成の負荷を減らして、優先度の高いタスクへのサポートを追加し、同期ポイントを多数取り除きました。
**レンダリング パフォーマンス:** GPU でオーバーヘッドを増やさずに最大の並列処理を実現するために、レンダラが GPU に生成された作業者タスクとコマンド バッファのサイズのバランスを保持できるようになりました。レンダラの同期ポイントも取り除いたので、利用可能なコアが使いやすくなりました。
-**クロス シミュレーション:** 劇的に速くなり、マルチスレッディングが使いやすくなりました。アセットごとに APEX ソルバをワーカースレッドから直接呼び出せるようになりました。そのため、スケジューリングが簡単になり、同期ポイントとオーバーヘッドが多数取り除かれました。クロスは、アニメーション後 (ブレンドが必要ない場合) あるいはスケルタル メッシュ コンポーネントのアップデート後にアップデートされるようになりました。
+**クロス シミュレーション** が格段に速くなり、マルチスレッディングが使いやすくなりました。アセットごとに APEX ソルバをワーカースレッドから直接呼び出せるようになりました。そのため、スケジューリングが簡単になり、同期ポイントとオーバーヘッドが多数取り除かれました。クロスは、アニメーション後 (ブレンドが必要ない場合) あるいはスケルタル メッシュ コンポーネントのアップデート後にアップデートされるようになりました。
**ガーベジ コレクションの高速化:** ガーベジ コレクション "クラスタ" がサポートされて、エンジンがオブジェクト群をひとつのユニットとして処理できるようになったので、考慮すべきオブジェクト数が大幅に減りました。今のところ、マテリアルとパーティクル システムのサブオブジェクトのみクラスタ化されます。さらに、マーク フェーズおよび破壊フェーズがさらにキャッシュ コヒーレントになり、処理時間は 9 分の 1 に短縮、到達可能性分析中のメモリ チェーンも少なくなりました。
**マルチスレッド アニメーション:** アニメーション グラフのアップデートがワーカースレッド上で実行できるようになったので、アニメートされたキャラクター数をコアの数でスケールすることが可能になりました。アップグレード ノートを確認してください。多くのアニメーション関連の API を非推奨とし、ワーカースレッド上で実行できるアニメーション グラフを制限しました。
-**アニメーション変数へのインスタント アクセス:** アニメーション グラフ アップデートに変数アクセスのためのファスト パスが追加されました。ブループリント コードを実行せずに、内部でパラメータを簡単にコピーできるようになりました。メンバ変数、無効の Boolean メンバ変数、ネスティングされた構造体のメンバをコンパイラで、最適化できるようになりました。
+**アニメーション変数へのインスタント アクセス:** アニメーション グラフ アップデートに変数アクセスのためのファスト パスが追加されました。This allows us to simply copy parameters internally rather than executing Blueprint code.メンバ変数、無効の Boolean メンバ変数、ネスティングされた構造体のメンバをコンパイラで、最適化できるようになりました。
**加算アニメーションのベイク処理:** **ベイクした加算アニメーション**をオンにするオプションが付きました。**加算アニメーションの速さ** が **3 倍** になります。加算アニメーションのデルタ ポーズの計算に関わる作業はランタイムではなくクックタイムで処理されます。加算デルタ作成の計算作業のみならず、ランタイム時に必要がなくなったベース アニメーション解凍のメモリ アクセスと割り当ても保存されます。この機能によりクック時間が増加するので、cvar "a.UseBakedAdditiveAnimations" を 1 に設定して有効にする必要があります。今後のバージョンでは、この負荷が発生しないようにして、最適化された状態が永久に保たれるようにエンジンのアニメーション クック処理を改善します。
@@ -45,7 +45,7 @@ Paragon はチームにとって、ユニークな挑戦の連続でした。Par

-2 つのスペキュラ ローブ、トランスミッションとスキャタリングをモデル化します。この機能を使うには、マテリアル エディタのシェーディング モデル リストから**[Hair]**を選択します。
+2 つのスペキュラ ローブ、トランスミッションとスキャタリングをモデル化します。この機能を使うには、マテリアル エディタのシェーディング モデル リストから **[Hair]** を選択します。
## 新規:リアルなアイシェーディング
@@ -65,7 +65,7 @@ Paragon はチームにとって、ユニークな挑戦の連続でした。Par
## 新規:リアルなクロスシェーディング
-**クロスを作るためのシェーディング モデル****が追加されました。不明瞭なレイヤーをシミュレートし、これまでよりもリアルなクロスの生成が可能になりました。この機能は、マテリアル エディタで [Cloth shading model] を選択します。
+**クロスを作るためのシェーディング モデル**** が追加されました。不明瞭なレイヤーをシミュレートし、これまでよりもリアルなクロスの生成が可能になりました。この機能は、マテリアル エディタで [Cloth shading model] を選択します。

@@ -87,11 +87,11 @@ Paragon はチームにとって、ユニークな挑戦の連続でした。Par
このカプセル シャドウの実装は非常に効率的です。深度を意識したアップサンプルを使って半分の解像度でシャドウイングを計算し、スクリーン タイル カリングを使ってシャドウイング作業を必要な場所のみに制限します。
-GPU 負荷は、カプセル数およびキャストされたシャドウが影響するピクセル数に比例します。
+GPU 負荷は、カプセル数およびキャストされたシャドウの影響を受けるピクセル数に比例します。
カプセル シャドウを有効にする方法
-1. カプセルのみを使って、物理アセットを新規作成します。球体でもできますが、柔軟性が欠けます。カプセルはジョイントでわずかにオーバーラップします。足のカプセルは、キャラクターが地上にいるように見せる調整のために、もっとも重要です。腕は、地面を覆ったり這ったりする以外は、あまり必要ありません。
+1. カプセルのみを使って、物理アセットを新規作成します。球体でもできますが、柔軟性が欠けます。カプセルはジョイントでわずかにオーバーラップします。足のカプセルは、キャラクターが接地して見えるように調整する上でもっとも重要です。腕は、地面を覆ったり這ったりする以外は、あまり必要ありません。
2. 物理アセットをスケルタル メッシュ アセットの Shadow Physics アセットに割り当てます。
@@ -123,7 +123,7 @@ Dithered Opacity Mask を使って、不透明なマテリアルを使った **
(convert:false)
-注記:この機能は有効化してもパフォーマンス負荷は低いので、マテリアル上で有効にしておかなければなりません。
+注記:** この機能は有効化してもパフォーマンス負荷は低いので、マテリアル上で有効にしておかなければなりません。

@@ -195,7 +195,7 @@ Anim Dynamics の主要機能の概要です。
* Anim Dynamics は、APEX クロス オブジェクトに影響を与えるのと同じ風を起こすアクタと使用できます。ノードごとの切り替えが可能で、スケーリングすることで風の完璧に反応させることができます。
-* **補正サブステップ機能**
+* **Adaptive sub-stepping**
* シミュレーションは、物理プロジェクト設定にもとづいた法線ティック設定による実行、あるいは適応設定による実行が可能です。
@@ -213,7 +213,7 @@ Anim Dynamics の主要機能の概要です。
* Planar limits
- Planar exclusion methods (平面制限のある球体コリジョン)
+ * Planar exclusion methods (平面制限のある球体コリジョン)
## 新規:ゲームプレイからのアニメーションのライブ録画
@@ -237,7 +237,7 @@ Anim Dynamics の主要機能の概要です。

-## 新規:プラットフォームと SDK のアップデート
+## 新規:Platform SDK のアップデート
通常のアップデートと合わせて、各種 VR プラットフォームの起動ウィンドウでのタイトル シッピングに備えて最新の SDK を使うためにすべての主要な VR プラットフォームもアップデートしました。今回のアップデートは安定性と仕上げに重点を置きました。UE4 4.11 で作成したタイトルは VR 出荷ができる状態のはずです!
@@ -263,7 +263,7 @@ Anim Dynamics の主要機能の概要です。
* Linux Clang 3.7.0
-* Apple tvOS 9.0 support (GitHub only)
+* Apple tvOS 9.0 サポート (GitHub のみ)
## 新規:Improved DirectX 12
@@ -287,7 +287,7 @@ Microsoft が実験的に **Xbox One** の **DirectX 12** にサポートを追
体験版なので、この機能を有効にするtレンダリングあるいは安定性に問題が発生する可能性があります。
-## 新規:Metal Rendering on Mac OS X
+## 新規:Mac OS X 上でのメタル レンダリング
メタルは Mac OS X El Capitan 上でデフォルトのグラフィック API になりました!
@@ -295,7 +295,7 @@ Microsoft が実験的に **Xbox One** の **DirectX 12** にサポートを追

[/REGION]
-エピックは Apple、AMD、Nvidia、Intel と密接に連携して Mac のメタルを統合し、4.11 では OpenGL を OS X El Capitan 用主要グラフィックス API に置き換えました。4.11 では、Metal と OpenGL 全体に同じレンダリング機能がデフォルトで提供されています。Metal は、ストリームライン、プリコンパイルされたシェーダー付きで小さいオーバーヘッドの API、効率のよいマルチスレッド サポートで GPU の処理パワーを最大にします。今後も引き続き、Mac Metal のサポートを拡張させます。エンジンの将来のバージョンでこの新しい API 機能を活用する方法を模索します。
+エピックは Apple、AMD、NVIDIA、Intel と密接に連携して Mac のメタルを統合し、4.11 では OpenGL を OS X El Capitan 用主要グラフィックス API に置き換えました。4.11 では、Metal と OpenGL 全体に同じレンダリング機能がデフォルトで提供されています。Metal は、ストリームライン、プリコンパイルされたシェーダー付きで小さいオーバーヘッドの API、効率のよいマルチスレッド サポートで GPU の処理パワーを最大にします。今後も引き続き、Mac Metal のサポートを拡張させます。エンジンの将来のバージョンでこの新しい API 機能を活用する方法を模索します。
Shader Model 5 機能で実験的にメタルもサポートしました。"-metalsm5" コマンドライン スイッチを使って試してみてください。
@@ -311,13 +311,13 @@ Shader Model 5 機能で実験的にメタルもサポートしました。"-met
(w:640 convert:false)
-ポータルは Lightmass に入射光を探す場所を伝えるたけで、ポータル自体が実際に光を放出しているわけではありません。最終的なライティングに重要な小さな隙間を覆う場合にポータルはもってこいです。Lightmass は入射光に向かう光線の焦点を合わせることができるので、質の高いライトとシャドウを生成することができます。(下図**左**: ポータルなし。**右**: ポータルあり。)
+ポータルは Lightmass に入射光を探す場所を伝えるたけで、ポータル自体が実際に光を放出しているわけではありません。最終的なライティングに重要な小さな隙間を覆う場合にポータルはもってこいです。Lightmass は入射光に向かう光線の焦点を合わせることができるので、質の高いライトとシャドウを生成することができます。(下図 **左**: ポータルなし。**右**: ポータルあり。)
(w:640 convert:false)
Lightmass のクオリティはその他の点でも改善されました。
-* ポイン ライト/スポットライト/ 指向性ライトで光が漏れるアーティファクトとを修正しました。
+* ポイン ライト / スポットライト / 指向性ライトで光が漏れるアーティファクトとを修正しました。
* スカイライトの直接ライティングが改善されました。
@@ -381,7 +381,7 @@ LOD のボーンを無効にするには、**スケルトンツリー** の右

-### Performance results
+### パフォーマンス結果

@@ -401,9 +401,9 @@ LOD のボーンを無効にするには、**スケルトンツリー** の右
* [Volumetric PerVertex NonDirectional] 設定は非常に速く、Unlit マテリアルとほぼ同じ速度です。
-* Per-vertex lighting モードをできる限り使用することを推奨します。ライティングは各トライアングルを補間するので、非常に大きなパーティクルやトライアングルは例外です。
+* Per-vertex lighting モードをできる限り使用することを推奨します。ライティングはトライアングルごとに補間されるので、パーティクルまたはトライアングルが非常に大きい場合は例外です
-## 新規:ライティング チャネル
+## 新規:ライティング チャンネル
ライティング チャネルは、**オブジェクトのライティング チャネルがオーバーラップした時に**、動的ライトがオブジェクトのみに影響を与えることを可能にします。**ライティング チャネルが 3 つまで** サポートされます。
@@ -499,7 +499,7 @@ Sound Concurrency オブジェクトは、Sound Attenuation Setting オブジェ
後方互換性の場合も、古いビヘイビアを好む場合も、Concurrency stetting オブジェクトをアセット上のローカルデータでオーバーライドする選択ができます。この場合、サウンド アセットは独自の並列処理グループとなり、アセット インスタンスで制限された並列処理の古いビヘイビアが実行されます。4.11 に変換された古いプロジェクトは、サウンド アセットをオーバーライドする設定に自動的になります。
-## 新規:Marker-Based Animation Syncing
+## 新規:マーカーベースのアニメーション同期

@@ -543,7 +543,7 @@ Sound Concurrency オブジェクトは、Sound Attenuation Setting オブジェ
プロキシ メッシュ生成が簡素化されて、最近統合された Simplygon SDK の目玉であるメッシュ生成プロセスが [HLOD Outliner] パネルからも行えるようになります。
-その他の改善点
+その他の改善点:
* スプライン メッシュが HLOD システムでサポートされます。
@@ -571,11 +571,11 @@ Sound Concurrency オブジェクトは、Sound Attenuation Setting オブジェ
## 新規:ブループリントの詳細検索
-ブループリントの検索ツールがアップデートされ、(精度のよい検索結果につながる) 詳細な検索機能が追加されました。
+The Blueprint search tool has been updated to support more advanced search functionality (to get more targeted results).

-ノード、ピン、グラフ、関数、マクロ、変数、プロパティ、コンポーネントなど特別なエレメントを検索対象にすることができます。詳細はこちら [https://docs.unrealengine.com/latest/INT/Engine/Blueprints/Search/index.html](https://docs.unrealengine.com/latest/INT/Engine/Blueprints/Search/index.html) をご覧ください。
+* ノード、ピン、グラフ、関数、マクロ、変数、プロパティ、コンポーネントなど特別なエレメントを検索対象にすることができます。詳細はこちら [https://docs.unrealengine.com/latest/INT/Engine/Blueprints/Search/index.html](https://docs.unrealengine.com/latest/INT/Engine/Blueprints/Search/index.html) をご覧ください。
* (syntax:Tag=Value を使用した) Tag/Value matching に加えて、And (&&) と Or (||) ロジック演算がサポートされます。
@@ -595,7 +595,7 @@ Sound Concurrency オブジェクトは、Sound Attenuation Setting オブジェ
## 新規:シーケンサーの進捗状況 (実験的)
-シーケンサーは、新しいノンリニア シネマティクス アニメーション システムです。シーケンサーはまだまだ開発段階ですので、制作作業で使うことはお勧めできませんが、試しに使ってフィードバックして頂けると大変うれしいです!今後の UE4 リリースで、シーケンサーに関する情報をもっと提供できると思います。
+シーケンサーは、新しいノンリニア シネマティクス アニメーション システムです。シーケンサーは、新しいノンリニア シネマティクス アニメーション システムです。シーケンサーはまだまだ開発段階ですので、制作作業で使うことはお勧めできませんが、試しに使ってフィードバックして頂けると大変うれしいです!今後の UE4 リリースで、シーケンサーに関する情報をもっと提供できると思います。
4.11 でのシーケンサーの注目すべき新機能:
@@ -613,7 +613,7 @@ Sound Concurrency オブジェクトは、Sound Attenuation Setting オブジェ
シーケンサーを起動するには、[Plugins] パネルを開いて、[Level Sequence Editor] プラグインを有効にしてからエディタを再起動します。
-# Release Notes 「訳注: 以下は、非常に技術的な部分が含まれるため、翻訳を省略します。」
+# リリース ノート 「訳注: 以下は、非常に技術的な部分が含まれるため、翻訳を省略します。」
### AI
@@ -3359,7 +3359,7 @@ Stats are automatically broken into the threads they execute on and can appear i
* New:Added an experimental option to enable OpenCL acceleration for the convex decomposition tool on Mac which defaults to off.
- * This avoids an OpenCL crash on Nvidia's OpenCL drivers but still allows users of AMD & Intel GPUs to enable it if they wish.
+ * This avoids an OpenCL crash on the NVIDIA OpenCL drivers but still allows users of AMD & Intel GPUs to enable it if they wish.
* Bugfix:Change the ShaderCache to report when resource references are invalid and prevent it from caching states that use invalid references to avoid errors on subsequent runs.
@@ -5389,7 +5389,7 @@ Stats are automatically broken into the threads they execute on and can appear i
* Added implementation of FPlatformProcess::UserTempDir()
-* Bind the index buffer as vertex attribute 0 when performing an attribute-less draw call to work around incorrect gl_VertexID values on Nvidia drivers rather than using different index buffers.
+* Bind the index buffer as vertex attribute 0 when performing an attribute-less draw call to work around incorrect gl_VertexID values on NVIDIA drivers rather than using different index buffers.
* Detect when UE4 Mac is running under apitrace and fallback to using NSView rather than CoreAnimation to display so that tracing OpenGL works.
@@ -5647,85 +5647,83 @@ Stats are automatically broken into the threads they execute on and can appear i
* Here is an example of how one would build a custom native AnimInstance class using the new proxy, granting Blueprint access to its innards and avoiding copies of shared data between the proxy and the instance:
-USTRUCT()
+ USTRUCT()
-struct FExampleAnimInstanceProxy : public FAnimInstanceProxy
+ struct FExampleAnimInstanceProxy : public FAnimInstanceProxy
-{
+ {
- GENERATED_BODY()
+ GENERATED_BODY()
- FExampleAnimInstanceProxy()
+ FExampleAnimInstanceProxy()
- :FAnimInstanceProxy()
+ :FAnimInstanceProxy()
- {}
+ {}
- FExampleAnimInstanceProxy(UAnimInstance* Instance);
+ FExampleAnimInstanceProxy(UAnimInstance* Instance);
- virtual void Update(float DeltaSeconds) override
+ virtual void Update(float DeltaSeconds) override
- {
+ {
- // Update internal variables
+ // Update internal variables
- MovementAngle += 1.0f * DeltaSeconds;
+ MovementAngle += 1.0f * DeltaSeconds;
- HorizontalSpeed = FMath::Max(0.0f, HorizontalSpeed - DeltaSeconds);
+ HorizontalSpeed = FMath::Max(0.0f, HorizontalSpeed - DeltaSeconds);
- }
+ }
-public:
+ public:
- UPROPERTY(Transient, BlueprintReadWrite, EditAnywhere, Category = "Example")
+ UPROPERTY(Transient, BlueprintReadWrite, EditAnywhere, Category = "Example")
- float MovementAngle;
+ float MovementAngle;
- UPROPERTY(Transient, BlueprintReadWrite, EditAnywhere, Category = "Example")
+ UPROPERTY(Transient, BlueprintReadWrite, EditAnywhere, Category = "Example")
- float HorizontalSpeed;
+ float HorizontalSpeed;
-};
+ };
-UCLASS(Transient, Blueprintable)
+ UCLASS(Transient, Blueprintable)
-class UExampleAnimInstance : public UAnimInstance
+ class UExampleAnimInstance : public UAnimInstance
-{
+ {
- GENERATED_UCLASS_BODY()
+ GENERATED_UCLASS_BODY()
- private:
+ private:
+ // The AllowPrivateAccess meta flag will allow this to be exposed to Blueprint,
+ // but only to graphs internal to this class.
- // The AllowPrivateAccess meta flag will allow this to be exposed to Blueprint,
+ UPROPERTY(Transient, BlueprintReadOnly, Category = "Example", meta = (AllowPrivateAccess = "true"))
- // but only to graphs internal to this class.
+ FExampleAnimInstanceProxy Proxy;
- UPROPERTY(Transient, BlueprintReadOnly, Category = "Example", meta = (AllowPrivateAccess = "true"))
+ virtual FAnimInstanceProxy* CreateAnimInstanceProxy() override
- FExampleAnimInstanceProxy Proxy;
+ {
- virtual FAnimInstanceProxy* CreateAnimInstanceProxy() override
+ // override this to just return the proxy on this instance
- {
+ return &Proxy;
- // override this to just return the proxy on this instance
+ }
- return &Proxy;
+ virtual void DestroyAnimInstanceProxy(FAnimInstanceProxy* InProxy) override
- }
+ {
- virtual void DestroyAnimInstanceProxy(FAnimInstanceProxy* InProxy) override
+ }
- {
+ friend struct FExampleAnimInstanceProxy;
- }
-
- friend struct FExampleAnimInstanceProxy;
-
-};
+ };
* The following functions and variables of the **UAnimInstance** class are **now deprecated**:
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.KOR.udn
index 9b186d688ce6..7d1169e71eb1 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_11/ReleaseNotes_4_11.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3403469
Availability:Public
Title:언리얼 엔진 4.11 릴리즈 노트
Crumbs:%ROOT%, Engine
@@ -29,9 +29,9 @@ Anton Olkhovik (Sektor), Alessandro Osima (AlessandroOsima), Alexandru Pană (al
**렌더링 퍼포먼스**. 이제 렌더러의 GPU 용 명령 버퍼 생성 및 워커 태스크 크기 밸런싱 능력을 개선시켜 GPU 부하 추가 없이 최대한의 병렬 처리 성능을 낼 수 있습니다. 렌더러의 동기화 지점을 제거하여 가능한 모든 코어를 더욱 잘 활용할 수 있도록도 했습니다.
-**클로쓰 시뮬레이션** 이 대폭 빨라져 멀티 스레딩을 더욱 잘 활용합니다. 이제 워커 스레드에서 각 애셋에 대한 APEX 솔버를 직접 호출합니다. 이로써 스케쥴 성능이 훨씬 개선되고 다수의 동기화 지점과 부하가 제거됩니다. 클로딩은 이제 (블렌딩이 필요치 않은 경우) 애니메이션 이후 업데이트되고, 그렇지 않은 경우 스켈레탈 메시 컴포넌트 업데이트 이후에 일어납니다.
+**클로스 시뮬레이션** 이 대폭 빨라져 멀티 스레딩을 더욱 잘 활용합니다. 이제 워커 스레드에서 각 애셋에 대한 APEX 솔버를 직접 호출합니다. 이로써 스케쥴 성능이 훨씬 개선되고 다수의 동기화 지점과 부하가 제거됩니다. 클로딩은 이제 (블렌딩이 필요치 않은 경우) 애니메이션 이후 업데이트되고, 그렇지 않은 경우 스켈레탈 메시 컴포넌트 업데이트 이후에 일어납니다.
-**가비지 콜렉션** 속도가 빨라졌습니다. 이제 가비지 콜렉션 "클러스터"를 지원, 엔진이 오브젝트 그룹을 하나의 단위로 취급하도록 하여, 고려할 오브젝트 갯수를 현저히 줄이는 것이 가능해졌습니다. 현재 머티리얼과 파티클 시스템에 대해서만 클러스터가 지원됩니다. 추가적으로 마킹 & 소멸 단계가 캐시와의 일관성이 높아져, 시간적인 면에서는 1/9 로 감소되고, 도달가능성 분석 단계 도중에서도 메모리 교란(churn) 정도가 줄었습니다.
+**가비지 컬렉션** 속도가 빨라졌습니다. 이제 가비지 컬렉션 "클러스터"를 지원, 엔진이 오브젝트 그룹을 하나의 단위로 취급하도록 하여, 고려할 오브젝트 갯수를 현저히 줄이는 것이 가능해졌습니다. 현재 머티리얼과 파티클 시스템에 대해서만 클러스터가 지원됩니다. 추가적으로 마킹 & 소멸 단계가 캐시와의 일관성이 높아져, 시간적인 면에서는 1/9 로 감소되고, 도달가능성 분석 단계 도중에서도 메모리 교란(churn) 정도가 줄었습니다.
**멀티 스레드 애니메이션**. 애니메이션 그래프 업데이트가 이제 워커 스레드에서 실행되어 다수의 애니메이션 캐릭터를 복수 코어에 배분시킬 수 있게 되었습니다. 애니메이션 관련 API 다수가 폐기되고, 애니메이션 그래프의 워커 스레드 실행상 제약이 있으니 업그레이드 노트를 참고하시기 바랍니다.
@@ -63,9 +63,9 @@ Anton Olkhovik (Sektor), Alessandro Osima (AlessandroOsima), Alexandru Pană (al
업데이트된 셰이딩 모델은 반해상도로 실행되며 차지하는 GPU 메모리도 적습니다. 산란은 해상도와 무관하게 이루어지며, 오브젝트 가장자리의 색 변이도 더이상 없습니다. 텍스처와 라이팅 디테일 보존 관련해서도, 디퓨즈와 스페큘러 라이팅 양쪽을 하나의 픽셀에 꾸려넣기 보다 체크무늬 패턴에 독립적으로 저장시키는 방식으로 개선되었습니다.
-## 신규: 실사 클로쓰 셰이딩
+## 신규: 실사 클로스 셰이딩
-**클로쓰용 물리 기반 셰이딩 모델** 을 추가했습니다. 흐릿한 층 시뮬레이션으로 전에 없던 수준의 사실적인 클로쓰 결과물을 내게 되었습니다. 머티리얼 에디터에서 클로쓰 셰이딩 모델을 선택하면 사용할 수 있습니다.
+**클로스용 물리 기반 셰이딩 모델** 을 추가했습니다. 흐릿한 층 시뮬레이션으로 전에 없던 수준의 사실적인 클로스 결과물을 내게 되었습니다. 머티리얼 에디터에서 클로스 셰이딩 모델을 선택하면 사용할 수 있습니다.

@@ -193,7 +193,7 @@ Instanced Stereo Rendering (인스턴스드 스테레오 렌더링)은 엔진의
* **바람**
- * 애님 다이내믹스는 APEX 클로쓰 오브젝트에 영향을 끼치는 것과 동일한 바람 소스 액터와 함께 사용할 수 있습니다. 이는 노드별로 껐다 켰다 토글 가능하며, 스케일 조절을 통해 완벽한 바람의 느낌을 낼 수 있습니다.
+ * 애님 다이내믹스는 APEX 클로스 오브젝트에 영향을 끼치는 것과 동일한 바람 소스 액터와 함께 사용할 수 있습니다. 이는 노드별로 껐다 켰다 토글 가능하며, 스케일 조절을 통해 완벽한 바람의 느낌을 낼 수 있습니다.
* **적응형 서브스테핑**
@@ -1865,7 +1865,7 @@ Sequencer (시퀀서), 비선형 시네마틱 애니메이션 시스템이 새
* Bugfix: Duplicating, in a Property Tree, an array of instanced objects will correctly deep copy the objects instead of a shallow (referenced) copy.
-* Bugfix: FBX exporter has two fixes:
+* Bugfix: FBX exporter has two 픽스:
* Fixed the export order to make sure the hierarchy is exported correctly.
@@ -2715,7 +2715,7 @@ Sequencer (시퀀서), 비선형 시네마틱 애니메이션 시스템이 새
* Bugfix: Networking: Processing UDP receive buffer only if bytes received.
-* Bugfix: Ping calculation fixes:
+* Bugfix: Ping calculation 픽스:
* Fix bug where extra acks were contributing to ping.
@@ -5695,8 +5695,6 @@ class UExampleAnimInstance : public UAnimInstance
GENERATED_UCLASS_BODY()
-
-
private:
// The AllowPrivateAccess meta flag will allow this to be exposed to Blueprint,
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_12/ReleaseNotes_4_12.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_12/ReleaseNotes_4_12.KOR.udn
index ee2ab9d3f978..65fbd59652ea 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_12/ReleaseNotes_4_12.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_12/ReleaseNotes_4_12.KOR.udn
@@ -298,7 +298,7 @@ UMG 웹 브라우저 위젯이 이제 iOS 에 지원됩니다!
풀 씬 임포트로 이제 Max / Maya / Blender 에서 이미 만든 환경을 가져와 전체 씬을 에디터의 레벨에 임포트할 수 있습니다.
-(w:201 h:477 convert:false) (w:572 h:470 convert:false)
+(w:201 h:477 convert:false) (w:572 h:470 convert:false)
환경에 새로운 씬 FBX 애셋이 생성되어, 다시 임포트하여 환경 반복처리 작업도 할 수 있습니다. 4.11 에서 사용할 수 있었던 초기 버전은 스태틱 메시가 들어있는 씬만 지원합니다. 4.12 버전에서는 스켈레탈 메시가 포함된 씬도 임포트할 수 있어 완성도가 높아졌습니다.
@@ -614,7 +614,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 애님 블루프린트 노출 값 처리기가 더이상 TRASHCLASS 로의 함수 레퍼런스를 담지 않습니다.
-* 애님 인스턴스 프록시가 리졸브되었을 때의 가비지 콜렉션과 되돌리기/다시하기 관련 버그를 잡았습니다.
+* 애님 인스턴스 프록시가 리졸브되었을 때의 가비지 컬렉션과 되돌리기/다시하기 관련 버그를 잡았습니다.
* fast path 일 때 구조체에서 본별 레이어드 블렌드를 접근했을 때 값이 제대로 복사되지 않던 것을 고쳤습니다.
@@ -652,7 +652,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 마커 싱크 애니메이션 틱 도중 Prev Marker not found in GetMarkerIndicesForPosition 어서트가 더이상 발동되지 않던 것을 고쳤습니다.
-* 애니메이션 오브젝트가 더이상 게임에서 부적절하게 가비지 콜렉팅되지 않습니다. 또한 커브 녹화의 최적화를 통해 녹화 마무리 시를 제외하고 키를 추가하지 않도록 했습니다.
+* 애니메이션 오브젝트가 더이상 게임에서 부적절하게 가비지 컬렉팅되지 않습니다. 또한 커브 녹화의 최적화를 통해 녹화 마무리 시를 제외하고 키를 추가하지 않도록 했습니다.
* 캐시 본이 스테이트 머신에서 필요할 때 제대로 호출됩니다.
@@ -1160,7 +1160,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 슬레이트 스로틀 조절이 더이상 뷰포트 크기조절 정상 작동을 방해하지 않습니다.
-* 레퍼런스 뷰어의 Make collection from referenced assets (레퍼런싱된 애셋에서 콜렉션 만들기) 기능을 수정했습니다.
+* 레퍼런스 뷰어의 Make collection from referenced assets (레퍼런싱된 애셋에서 컬렉션 만들기) 기능을 수정했습니다.
* 클래스 선택기 필터의 작동방식이 다른 모든 에디터내 필터와 일치합니다.
@@ -1292,7 +1292,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 포즈 이밸류에이터 커스터마이제이션이 이제 올바른 시간에 처리됩니다. 프로퍼티를 디테일 패널에서 제거해도 다시 추가되어 항목이 중복되던 문제가 해결됩니다.
-* 페르소나에서 자세한 메시 통계 표시 설정을 했을 때 보고된 트라이앵글 수가 더이상 클로쓰 섹션 수를 복제하지 않습니다.
+* 페르소나에서 자세한 메시 통계 표시 설정을 했을 때 보고된 트라이앵글 수가 더이상 클로스 섹션 수를 복제하지 않습니다.
* 페르소나에서 이밸류에이터 변환 이후 선택된 그래프 노드를 접근할 때의 크래시를 고쳤습니다.
@@ -1334,7 +1334,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 쿠킹된 패키지에 저장되던 클래스 플래그인 StaticMesh NavCollision 와 UParticleRequiredModule 임포트로 유발되는 결정론적 쿠킹 문제를 수정했습니다 (로드 순서에 따라 달라졌었습니다).
-* 더이상 가비지 콜렉션이 콘텐츠를 변경된 것으로 마킹하지 않습니다.
+* 더이상 가비지 컬렉션이 콘텐츠를 변경된 것으로 마킹하지 않습니다.
* Fixup Redirects, Cook-on-the-fly Server 커맨드렛에 미세조정 작업이 있었습니다.
@@ -1432,7 +1432,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 자손 액터 컴포넌트 사본이 에디터 레벨에서 고아가 될 수 있었던 문제를 고쳤습니다.
-* 자손 액터 컴포넌트가 킬 대기 상태로 마킹되어 있다가 가비지 콜렉션이 실행될 때까지도 깨끗하게 소멸되지 않았을 때의 크래시를 고쳤습니다.
+* 자손 액터 컴포넌트가 킬 대기 상태로 마킹되어 있다가 가비지 컬렉션이 실행될 때까지도 깨끗하게 소멸되지 않았을 때의 크래시를 고쳤습니다.
* Sound Quality 노드가 들어있는 사운드 큐를 네이티브 생생자에서 레퍼런싱해도 더이상 크래시가 나지 않습니다.
@@ -1476,7 +1476,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 콘솔이 닫히면 이제 뷰포트의 입력 상태를 (포커스와 캡처 둘 다) 제대로 복원합니다.
-* 가비지 콜렉션 도중 서브 컴포넌트에서 Destroy Component 를 호출할 때의 크래시를 고쳤습니다.
+* 가비지 컬렉션 도중 서브 컴포넌트에서 Destroy Component 를 호출할 때의 크래시를 고쳤습니다.
* Engine.ini 에 지정된 Game Singleton 클래스가 유효하지 않아도 더이상 크래시가 나지 않습니다.
@@ -1760,7 +1760,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 애님 다이내믹스에 시뮬레이션 스페이스 및 외부 포스가 지원됩니다.
-* 기존 및 앞으로의 클로쓰 청크에 청크당 인플루언스가 4 개 이상 되지 않는지 확인하는 검증을 추가했습니다. 기존 청크는 오류는 아니지만 로그 경고는 납니다.
+* 기존 및 앞으로의 클로스 청크에 청크당 인플루언스가 4 개 이상 되지 않는지 확인하는 검증을 추가했습니다. 기존 청크는 오류는 아니지만 로그 경고는 납니다.
* 접촉 오프셋 값을 프로젝트 피직스 세팅에 노출시킵니다. 이 값이 기존의 환경 변수 값을 덮어씁니다.
@@ -1772,7 +1772,7 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* 컴포넌트의 모빌리티가 스태틱으로 변경되면, 그 부모에 더이상 시뮬레이션 오브젝트 마킹이 남아있지 않습니다.
-* LOD 변경시 클로쓰가 부드럽게 작동합니다.
+* LOD 변경시 클로스가 부드럽게 작동합니다.
* 블루프린트의 커스텀 콜리전 변경시 이제 재시작할 필요 없이 배치된 인스턴스가 업데이트됩니다.
@@ -1792,9 +1792,9 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* BP 호출가능 함수 중 스켈레탈 메시 컴포넌트 트랜스폼에 영향을 끼치는 것이 이제 물리 시뮬레이션 중에도 작동합니다.
-* 클로쓰 솔버 빈도가 더이상 1 아래로 떨어지지 않습니다.
+* 클로스 솔버 빈도가 더이상 1 아래로 떨어지지 않습니다.
-* 클로쓰 업데이트가 스켈레탈 메시 컴포넌트 업데이트 모드를 사용하여 렌더 상태가 아닌 업데이트를 결정합니다.tatus.
+* 클로스 업데이트가 스켈레탈 메시 컴포넌트 업데이트 모드를 사용하여 렌더 상태가 아닌 업데이트를 결정합니다.tatus.
* (에디터와 게임에서의) 콜리전 그리기가 숨겨진 스태틱 메시 인스턴스에도 정상 작동합니다.
@@ -1802,15 +1802,15 @@ Async compute (비동기 계산) 기능이 Xbox One 에 지원됩니다. 이를
* LOD 모델 정리가 되지 않아 발생하던 디스트럭터블 메시 리임포트 크래시를 고쳤습니다.
-* 페르소나에서 메시에 클로딩 애셋이 둘 이상일 때 클로쓰 할당을 해제해도 더이상 크래시가 나지 않습니다.
+* 페르소나에서 메시에 클로딩 애셋이 둘 이상일 때 클로스 할당을 해제해도 더이상 크래시가 나지 않습니다.
* 모든 청크가 비활성 상태일 때 디스트럭터블 컴포넌트의 공백 바운드로 유발되던 ensure 를 수정했습니다.
* Consider All Bodies 가 켜진 메시에 대해 바운드가 틀리던 문제를 고쳤습니다.
-* 클로쓰의 메모리 누수(렌더 생성시 클로쓰 청크 당 1.43 KB)와 다른 모든 버텍스 팩토리의 불안전 메모리 관리를 제거했습니다.
+* 클로스의 메모리 누수(렌더 생성시 클로스 청크 당 1.43 KB)와 다른 모든 버텍스 팩토리의 불안전 메모리 관리를 제거했습니다.
-* LOD 본 관련해서, 특정 LOD 에 웨이팅되지 않은 본을 사용하는 클로쓰 청크 할당시의 필수 사항을 고쳤습니다.
+* LOD 본 관련해서, 특정 LOD 에 웨이팅되지 않은 본을 사용하는 클로스 청크 할당시의 필수 사항을 고쳤습니다.
* 자체 교차 집계가 이제 자체 콜리전 비트맵을 소거시켜, broadphase 크래시가 예방됩니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.CHN.udn
index 7a3d10384ef4..39333df47c57 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.CHN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.CHN.udn
@@ -3,6 +3,8 @@ Availability:Public
Title:虚幻引擎 4.14 版本信息
Description:虚幻引擎 4.14 版本信息说明
Crumbs:%ROOT%, Engine
+Parent:Support/Builds
+Order:14
reference-image:image_6.gif
reference-image:image_7.gif
reference-image:image_9.gif
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.JPN.udn
index f050861a4bf6..9e911b7c50e9 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.JPN.udn
@@ -1,8 +1,10 @@
-INTSourceChangelist:3223841
+INTSourceChangelist:3304581
Availability:Public
Title:アンリアル エンジン 4.14 リリース ノート
Description:Unreal Engine 4.14 リリース ノート
Crumbs:%ROOT%, Engine
+Parent:Support/Builds
+Order:14
reference-image:image_6.gif
reference-image:image_7.gif
reference-image:image_9.gif
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.KOR.udn
index 1156f2670f81..5a7bb153b10e 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/2016/4_14/ReleaseNotes_4_14.KOR.udn
@@ -528,7 +528,7 @@ Child Actor (자손 액터) 컴포넌트를 추가한 이후에는, 소유중인
## 신기능: 모바일에서 커스텀 뎁스 지원
-모바일 렌더링 패쓰에서 커스텀 뎁스가 지원됩니다. 커스텀 포스트 프로세스 머티리얼은 이제 씬 뎁스, 커스텀 뎁스는 물론 씬 컬러에서도 샘플링 가능합니다.
+모바일 렌더링 패스에서 커스텀 뎁스가 지원됩니다. 커스텀 포스트 프로세스 머티리얼은 이제 씬 뎁스, 커스텀 뎁스는 물론 씬 컬러에서도 샘플링 가능합니다.
[REGION:raw]
(w:804 h:394 convert:false)
@@ -552,7 +552,7 @@ Child Actor (자손 액터) 컴포넌트를 추가한 이후에는, 소유중인
* 씬 캡처는 이제 안드로이드 6 이전 갤럭시 S6 등 부동소수점 타겟을 지원하지 않는 디바이스에서도 정상 작동합니다.
-## 클로쓰 스키닝 개선
+## 클로스 스키닝 개선
엔진 내에서 클로딩에 쓰이는 별도의 메시 대 메시 스키닝 데이터를 계산하는 기능을 추가, 이제 .apx 나 .apb 파일로 익스포트된 렌더 데이터를 사용하는 대신 UE4 가 이미 갖고 있는 렌더 데이터를 사용합니다. APEX 익스포트된 애셋에서 시뮬레이션 메시를 구한 다음, 그 메시에 렌더 데이터 스킨을 다시 입힙니다. 즉 최종 데이터가 원래 임포트한 데이터만큼 괜찮아 보인다는 뜻입니다.
@@ -778,7 +778,7 @@ CPU 에 종속된 어떤 경우는, GPU 시간이 CPU 병목 (버블) 현상에
## 신기능: 모바일용 VR 멀티뷰 지원
-이제 모바일 디바이스에서 (지원되는 경우) 모바일 멀티뷰 패쓰를 사용할 수 있습니다! 모바일 멀티뷰는 데스크탑의 인스턴스드 스테레오와 비슷하며, CPU 의 스테레오 렌더링에 대한 최적화된 패쓰를 제공해 줍니다.
+이제 모바일 디바이스에서 (지원되는 경우) 모바일 멀티뷰 패스를 사용할 수 있습니다! 모바일 멀티뷰는 데스크탑의 인스턴스드 스테레오와 비슷하며, CPU 의 스테레오 렌더링에 대한 최적화된 패스를 제공해 줍니다.
이 기능을 사용하려면, 프로젝트 세팅의 VR 섹션 아래에서 활성화시켜 줍니다. 이 기능의 정상 작동을 위해서는 안드로이드 빌드 세팅을 OpenGL ES2 로 설정하고, 모바일 HDR 과 인스턴스드 스테레오는 꺼야 합니다. 현재 이 기능은 최신 Mali 기반 디바이스와 호환됩니다. 이 기능을 켠 채로 패키징을 해도 호환 CPU 가 없는 경우, 실행시간에 꺼집니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..140be66cd3c0
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.CHN.udn
@@ -0,0 +1,72 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.0 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds
+Order:0
+
+## 4.0.0 Release
+
+Released: 03/19/2014
+
+Announcement:
+
+[https://www.unrealengine.com/blog/welcome-to-unreal-engine-4](https://www.unrealengine.com/blog/welcome-to-unreal-engine-4)
+
+## 4.0.1 Hotfix
+
+Released: 03/19/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.0.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.0.1-release)
+
+Fixes:
+
+* Fixed critical launch issues
+
+## 4.0.2 Hotfix
+
+Released: 04/01/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.0.2-release](https://github.com/EpicGames/UnrealEngine/tree/4.0.2-release)
+
+Fixes:
+
+* [Windows] Fixed DirectX 11 crash when launching on older GPUs
+
+* [Windows] Fixed being unable to compile Android projects when launching from the editor
+
+* [Windows] Fixed crash on startup for some AMD CPUs
+
+* [Windows] Fixed broken shell extensions when running RegisterShellCommands.bat in GitHub builds using "Run as Administrator"
+
+* [Windows] Added support files required for Subversion support (preview release)
+
+* [Windows] Fixed issue where engine could fail to compile with multiple versions of Visual Studio installed
+
+* [Mac] Fixed crash on startup caused by certain USB peripherals plugged in
+
+* [Mac] Fixed logs being cut off after crash
+
+* [Mac] Fixed crash on startup caused by non-standard maximum number of open files
+
+* [Mac] Noticeably improved performance on non-Intel GPUs
+
+* [Mac] Fixed crash on startup running ShooterGame as a standalone game
+
+## QFE for the 4.0.2 Hotfix
+
+If you are using the latest hotfix for this engine version and experience the issue described below, download and run this ‘quick fix’ to resolve the issue.
+
+* Fixes Launcher failing to launch after install on Mac; and unable to read info about mouse. ([report](https://answers.unrealengine.com/questions/30577/unreal-engine-install-launcher-fails-osx.html))
+
+Download 1: [http://cdn.unrealengine.com/qfe/QFE-FromCL-2034640-Shelve-2048959.zip](http://cdn.unrealengine.com/qfe/QFE-FromCL-2034640-Shelve-2048959.zip)
+
+Download 2: [http://cdn.unrealengine.com/qfe/UnrealEngine_QFE_2039063.dmg](http://cdn.unrealengine.com/qfe/UnrealEngine_QFE_2039063.dmg)
+
+Notes: When you get them, install Unreal Engine app from UnrealEngine_QFE_2039063.dmg to your /Applications folder, then open Terminal app and type:
+
+* open /Applications/Unreal\ Engine.app --args -noselfupdate
+
+-noselfupdate argument is important because without it the app would update to official version that doesn't work for you. After you download the engine using Unreal Engine app, unzip QFE-FromCL-2034640-Shelve-2048959.zip and run the patch installer it contains. After that you should be able to use the editor etc. You can start the editor by launching it directly: /Users/Shared/UnrealEngine/4.0/Engine/Binaries/MacUE4Editor.app.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.JPN.udn
index dccd9d74ccb0..c05d03c156ea 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.0 Update Notes
+Title: アンリアル エンジン 4.0 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..7cfd7f53192d
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_0/Updates/UnrealEngine4_0UpdateNotes.KOR.udn
@@ -0,0 +1,72 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.0 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds
+Order:0
+
+## 4.0.0 릴리즈
+
+릴리즈 날짜: 2014/03/19
+
+Announcement:
+
+[https://www.unrealengine.com/blog/welcome-to-unreal-engine-4](https://www.unrealengine.com/blog/welcome-to-unreal-engine-4)
+
+## 4.0.1 핫픽스
+
+릴리즈 날짜: 2014/03/19
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.0.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.0.1-release)
+
+픽스:
+
+* 치명적인 실행 관련 이슈를 수정했습니다.
+
+## 4.0.2 핫픽스
+
+릴리즈 날짜: 2014/04/01
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.0.2-release](https://github.com/EpicGames/UnrealEngine/tree/4.0.2-release)
+
+픽스:
+
+* [윈도우] 구형 GPU 에서 실행할 때의 DirectX 11 크래시를 고쳤습니다.
+
+* [윈도우] 에디터에서 실행할 때 안드로이드 프로젝트를 컴파일할 수 없던 것을 고쳤습니다.
+
+* [윈도우] 일부 AMD CPU 에서 시작시 발생하는 크래시를 고쳤습니다.
+
+* [윈도우] GitHub 빌드에서 "관리자 권한으로 실행"을 사용하여 RegisterShellCommands.bat 를 실행할 때 깨지던 셸 익스텐션을 수정했습니다.
+
+* [윈도우] Subversion 지원에 필요한 서포트 파일을 추가했습니다 (프리뷰 릴리즈).
+
+* [윈도우] Visual Studio 가 여러 버전 설치된 상태에서 엔진 컴파일에 실패할 수 있던 이슈를 고쳤습니다.
+
+* [맥] 특정 USB 주변장치가 연결된 상태에서 시작시 유발되는 크래시를 고쳤습니다.
+
+* [맥] 크래시 이후 로그가 잘리던 것을 고쳤습니다.
+
+* [맥] 열린 파일 최대 갯수가 비표준일 경우 시작 시 발생하는 크래시를 고쳤습니다.
+
+* [맥] Intel GPU 가 아닌 경우의 퍼포먼스가 크게 향상되었습니다.
+
+* [맥] ShooterGame 을 독립형 게임으로 실행할 때의 크래시를 고쳤습니다.
+
+## 4.0.2 핫픽스 QFE
+
+이번 엔진 버전의 최신 핫픽스를 사용하다가 아래 이슈를 겪으시는 경우, 이 '퀵 픽스'를 다운로드하여 실행하면 이슈 해결이 가능합니다.
+
+* 맥에 런처를 설치한 후 실행되지 않고, 마우스 관련 정보를 읽어들이지 못하는 데 대한 픽스입니다. ([리포트](https://answers.unrealengine.com/questions/30577/unreal-engine-install-launcher-fails-osx.html))
+
+다운로드 1: [http://cdn.unrealengine.com/qfe/QFE-FromCL-2034640-Shelve-2048959.zip](http://cdn.unrealengine.com/qfe/QFE-FromCL-2034640-Shelve-2048959.zip)
+
+다운로드 2: [http://cdn.unrealengine.com/qfe/UnrealEngine_QFE_2039063.dmg](http://cdn.unrealengine.com/qfe/UnrealEngine_QFE_2039063.dmg)
+
+주: 받은 후 Unreal Engine 앱을 UnrealEngine_QFE_2039063.dmg 에서 /Applications 폴더로 설치한 뒤, Terminal 앱을 열고 다음과 같이 입력합니다:
+
+* open /Applications/Unreal\ Engine.app --args -noselfupdate
+
+-noselfupdate 인수가 중요한데, 없으면 앱에서는 정상 작동되지 않는 공식 버전으로 업데이트되기 때문입니다. Unreal Engine 앱을 사용하여 엔진을 다운로드한 후, QFE-FromCL-2034640-Shelve-2048959.zip 압축을 풀고 거기 들어있는 패치 인스톨러를 실행합니다. 그 후에는 에디터 등을 사용할 수 있을 것입니다. 에디터는 다음 위치에서 바로 실행시킬 수도 있습니다: /Users/Shared/UnrealEngine/4.0/Engine/Binaries/MacUE4Editor.app.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..a3196f1c6bbb
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.CHN.udn
@@ -0,0 +1,56 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.1 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_1
+Order:0
+
+## 4.1.0 Release
+
+Released: 04/22/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.1.0-release](https://github.com/EpicGames/UnrealEngine/tree/4.1.0-release)
+
+Release Notes:
+
+[https://docs.unrealengine.com/latest/INT/Support/Builds/ReleaseNotes/2014/4_1/index.html](https://docs.unrealengine.com/latest/INT/Support/Builds/ReleaseNotes/2014/4_1/index.html)
+
+## 4.1.1 Hotfix
+
+Released: 05/12/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.1.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.1.1-release)
+
+Fixes:
+
+* Fixed shader material instances not being saved to DDC, causing many shaders to be rebuilt when loading the editor.
+
+* Fixed crash on iOS/Android reading blueprint assets with certain unaligned opcodes.
+
+* Fixed handling of volume buttons on Android.
+
+* Fixed sporadic crash caused by race condition in the XboxOne texture compressor.
+
+* Fixed engine compiling more shaders than necessary in the material editor.
+
+* Fixed severe performance regression for some GPU combos on Windows, where the engine would fall back to the software renderer.
+
+* Fixed crash when pressing the news feed refresh button multiple times.
+
+* Updated .gitignore to include SDL2
+
+* Addressed an analytics error
+
+## 4.1.2 Hotfix
+
+Released: 06/25/2014
+
+Github: *N/A*
+
+Fixes:
+
+* Fix crash when loading certain blueprints
+
+* Fix corrupted map in StrategyGame causing a crash on 4.1.2 launch
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.JPN.udn
index 10c6491567a1..95b8698210df 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.1 Update Notes
+Title: アンリアル エンジン 4.1 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2014/4_1
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..05175307913d
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_1/Updates/UnrealEngine4_1UpdateNotes.KOR.udn
@@ -0,0 +1,56 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.1 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_1
+Order:0
+
+## 4.1.0 릴리즈
+
+릴리즈 날짜: 2014/04/22
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.1.0-release](https://github.com/EpicGames/UnrealEngine/tree/4.1.0-release)
+
+Release Notes:
+
+[https://docs.unrealengine.com/latest/INT/Support/Builds/ReleaseNotes/2014/4_1/index.html](https://docs.unrealengine.com/latest/INT/Support/Builds/ReleaseNotes/2014/4_1/index.html)
+
+## 4.1.1 핫픽스
+
+릴리즈 날짜: 2014/05/12
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.1.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.1.1-release)
+
+픽스:
+
+* DDC 에 셰이더 머티리얼 인스턴스가 저장되지 않아, 에디터를 로드할 때 다수의 셰이더를 다시 빌드하게 만들던 것을 고쳤습니다.
+
+* 일정한 미정렬 opcode 포함 블루프린트를 읽을 때의 iOS/Android 크래시를 고쳤습니다.
+
+* 안드로이드의 볼륨 버튼 처리를 수정했습니다.
+
+* XboxOne 텍스처 압축기에서 경쟁 조건으로 간헐적 발생하는 크래시를 고쳤습니다.
+
+* 머티리얼 에디터에서 엔진이 필요한 것보다 많은 셰이더를 컴파일하던 것을 고쳤습니다.
+
+* 윈도우에서 일부 GPU 콤보 관련 심각한 퍼포먼스 퇴보로 인해 엔진이 소프트웨어 렌더러로 예비 전환하게 만들던 것을 고쳤습니다.
+
+* 뉴스 피드 새로고침 버튼을 여러 번 누를 때 발생하던 크래시를 고쳤습니다.
+
+* .gitignore 가 SDL2 를 포함하도록 업데이트했습니다.
+
+* 애널리틱스 오류를 처리했습니다.
+
+## 4.1.2 핫픽스
+
+릴리즈 날짜: 2014/06/25
+
+Github: *N/A*
+
+픽스:
+
+* 특정 블루프린트를 로드할 때 발생하는 크래시를 고쳤습니다.
+
+* StrategyGame 의 깨진 맵이 4.1.2 실행 시 크래시를 유발하던 것을 고쳤습니다.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..c7dcc15cbf32
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.CHN.udn
@@ -0,0 +1,178 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.10 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2015/4_10
+Order:0
+
+## 4.10.0 Release
+
+Released: 11/11/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2015/4_10)
+
+## 4.10.1 Hotfix
+
+Released: 12/08/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.1-release)
+
+Fixes:
+
+* UE-23364 Make sure that Perforce integration works with SSL connections when compiled with VS2015
+
+* UE-21181 [CrashReport] Object from PIE level still referenced. (via FWorldContext in UEngine::AddReferencedObjects?)
+
+* UE-23371 [CrashReport] UE4Editor_GraphEditor!FNodeFactory::CreateNodeWidget() nodefactory.cpp:91
+
+* UE-23372 [CrashReport] Indexing Blueprints for FiB data causes: KERNELBASE!
+
+* UE-23230 iOS min supported version > 6.1 = Crashing Leaderboard Writes
+
+* UE-23366 [CrashReport] UE4Editor_Engine!USceneComponent::OnComponentDestroyed() [scenecomponent.cpp:676]
+
+* UE-23250 PS4Tracker Crash
+
+* UE-23394 Intermittent crash in CacheOptimizeIndexBuffer on Editor startup on Linux
+
+* UE-23302 GitHub 1751 : Fix for USceneComponent::AttachTo() crash
+
+* UE-20336 Hovering over tooltip for Post Process Settings causes CPU Color Scheme Change & Win10 hard-freeze
+
+* UE-23877 Lots of people running into an Ensure in PathFollowingComponent
+
+* UE-23232 Metal + iOS projects = Black Screen on iPhone 6s
+
+* UE-23288 Bug: No text being displayed on iPhone 4s
+
+* UE-23289 Bug: Crash and to home screen on iPhone 4s
+
+* UE-23382 Compile for Size Causes Animations to Play Incompletely on iOS
+
+* UE-23290 Bug: No Force Feedback
+
+* UE-23664 Unable to push to SteamVR in 4.10 while Oculus 0.8 service is running
+
+* UE-23150 Refraction does not render correctly on Mosaic devices
+
+* UE-23611 Android streaming audio repeats at start if start time is 0.0
+
+* UE-23694 Rework streaming audio fix for hotfix
+
+* UE-22968 UnrealFrontend Quick Launch to Android Fails While Deploying
+
+* UE-23655 GitHub 1776 : Fix compile error for Android x86 and x64
+
+* UE-21858 Visible dithered quantization to remove banding in New Temporal AA Quality
+
+* UE-23149 Async linetraces can re-call the results delegate repeatedly
+
+* UE-23362 Gnm: submitDone () is not called for X seconds
+
+* UE-23415 USB Keyboard not working in shipping builds
+
+* UE-23426 Changes to World.h and WorldCollision.h need to be removed
+
+* UE-23662 HRTF Spatialization Broken
+
+* UE-23812 Packaged games should not send hardware survey telemetry event
+
+* UE-23688 Modulated shadow blending incorrect with encoded HDR.
+
+* UE-23762 Setting Runtime Generation to Static Resets Upon Closing and Re-opening Editor
+
+* UE-23048 UAIPerceptionStimuliSourceComponent never registers with required senses
+
+* UE-22866 [4.10 P2] UI is offcenter for dropdown menus and tooltips in editor
+
+* UE-23064 Target build folder does not clear when repackaging
+
+* UE-23132 Wildcard Array in Macro Causes Error Message to Appear
+
+* UE-23233 Upgrading Project to a New Engine Version Causes Errors When Attempting to Open Tutorial Blueprints
+
+* UE-21717 Self Shadow Only causes rendering artifacts
+
+* UE-22949 Unable to open UE4Editor on Linux - Bad hlslcc header found
+
+* UE-23746 4.10 is gathering editor-only BP text for game loc gathers
+
+* UE-22157 Android In App Purchase can return false even though the transaction is successfully completed.
+
+* UE-23190 Android/Google Play In-App Purchase Blueprint node only works if you fire the node twice
+
+* UE-23365 GitHub 1763 : Update README.md / VS2013 -> VS2015
+
+* UE-23151 UE4 4.10 needs a Localization Update
+
+## 4.10.2 Hotfix
+
+Released: 01/11/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.10.2-release](https://github.com/EpicGames/UnrealEngine/tree/4.10.2-release)
+
+Fixes:
+
+* UE-23845 Crash when using "Set Key Time" on an animation key in UMG
+
+* UE-24685 Matinee movie recording is broken in 4.10
+
+* UE-22573 A REINST error occurs in widgets that reference one another
+
+* UE-24115 Cannot launch the editor in DebugGame Editor configuration from Xcode
+
+* UE-24563 Editor should launch launcher silently
+
+## 4.10.3 Hotfix
+
+Released: 02/17/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.10.3-release](https://github.com/EpicGames/UnrealEngine/tree/4.10.3-release)
+
+Fixes:
+
+* OPP-4947 Installation Error code R-1638 / Unable to upgrade to 4.10.1 through launcher if 4.11 has been installed
+
+* UE-13030 Crash related to loading sub-level - UEngine::LoadMap()
+
+* UE-22075 Crash on compile when nodes use same name - FPersistentFrameCollectorArchive::operator<<()
+
+* UE-22696 Crash on importing specific Skeletal FBX exported with FBX2016
+
+* UE-22921 Parenting multiple actors under border crashes editor
+
+* UE-23373 Crash occurs opening some animations - TSharedMapView::Find()
+
+* UE-23785 Crash in UE4Editor_Core!FSlowTask::GetCurrentMessage()
+
+* UE-24169 Crash in PlayerInput.cpp - UPlayerInput::ProcessInputStack()
+
+* UE-24443 Potential Crash When Migrating Assets - FGenericPlatformString::LogBogusChars()
+
+* UE-26315 Crash in UE4Editor_Engine!UActorComponent::BeginPlay()
+
+* UE-26872 Loc gathering can crash in 4.10
+
+* UE-23231 Can't Upload iOS build signed on PC
+
+* UE-24972 VR headtracking locked on game start for some templates
+
+* UE-26158 bIsActorBeingDestroyed incorrectly Commented out
+
+* UE-26657 Regression on sprite import improvements from 4.9
+
+* UE-26903 Loc dashboard doesn't export native translations when exporting a single culture
+
+## 4.10.4 Hotfix
+
+Released: 02/22/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.4-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.4-release)
+
+Fixes:
+
+* UE-27124 Switching levels via blueprints crashes editor
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.JPN.udn
index 92e8f4d8c9f2..6e5810c788e3 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.10 Update Notes
+Title: アンリアル エンジン 4.10 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2015/4_10
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..1e63933a8be5
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_10/Updates/UnrealEngine4_10UpdateNotes.KOR.udn
@@ -0,0 +1,177 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.10 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2015/4_10
+Order:0
+
+## 4.10.0 릴리즈
+
+릴리즈 날짜: 2015/11/11
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2015/4_10)
+
+## 4.10.1 핫픽스
+
+릴리즈 날짜: 2015/12/08
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.1-release)
+
+픽스:
+
+* UE-23364 VS2015 로 컴파일 시 SSL 접속 포함 Perforce 통합이 작동되는지 확인
+
+* UE-21181 [CrashReport] PIE 레벨에서의 오브젝트가 여전히 레퍼런싱됨 (아마 UEngine::AddReferencedObjects 의 FWorldContext 를 통해서?)
+
+* UE-23371 [CrashReport] UE4Editor_GraphEditor!FNodeFactory::CreateNodeWidget() nodefactory.cpp:91
+
+* UE-23372 [CrashReport] FiB 데이터에 대한 블루프린트 인덱스가 다음 유발: KERNELBASE!
+
+* UE-23230 iOS 최소 지원 버전 > 6.1 = 리더보드 쓰기 시 크래시
+
+* UE-23366 [CrashReport] UE4Editor_Engine!USceneComponent::OnComponentDestroyed() [scenecomponent.cpp:676]
+
+* UE-23250 PS4Tracker 크래시
+
+* UE-23394 리눅스에서 에디터 시작 시 CacheOptimizeIndexBuffer 의 간헐적 크래시
+
+* UE-23302 GitHub 1751 : USceneComponent::AttachTo() 크래시 픽스
+
+* UE-20336 Post Process Settings 툴팁에 커서를 올리면 CPU Color Scheme Change & Win10 하드 프리즈
+
+* UE-23877 많은 사람이 PathFollowingComponent 에서 Ensure 발생
+
+* UE-23232 Metal + iOS 프로젝트 = iPhone 6s 에서 검은 화면
+
+* UE-23288 버그: iPhone 4s 에 텍스트 표시 안됨
+
+* UE-23289 버그: iPhone 4s 에서 크래시 후 홈 화면으로
+
+* UE-23382 Compile for Size 로 인해 애니메이션이 iOS 에서 불완전 재생
+
+* UE-23290 버그: 포스 피드백 없음
+
+* UE-23664 Oculus 0.8 서비스 실행 도중 4.10 에서 SteamVR 에 푸시 불가
+
+* UE-23150 Mosaic 디바이스에서 굴절이 제대로 렌더링되지 않음
+
+* UE-23611 안드로이드 스트리밍 오디오가 시작 시간이 0.0 인 것처럼 시작 부분에서 반복
+
+* UE-23694 핫픽스용 스트리밍 오디오 픽스 재작업
+
+* UE-22968 UnrealFrontend 에서 디플로이 도중 Quick Launch to Android 실패
+
+* UE-23655 GitHub 1776 : Android x86 및 x64 용 컴파일 오류 픽스
+
+* UE-21858 새로운 템포럴 AA 퀄리티의 띠 현상 제거를 위해 보이는 디더링 양자화
+
+* UE-23149 비동기 라인 트레이스가 반복해서 결과 델리게이트 다시 호출 가능
+
+* UE-23362 Gnm: submitDone () 이 X 초간 호출되지 않음
+
+* UE-23415 USB 키보드가 shipping 빌드에서 작동되지 않음
+
+* UE-23426 World.h 변경 및 WorldCollision.h 제거 필요
+
+* UE-23662 HRTF 공간화 깨짐
+
+* UE-23812 패키지 게임에서 하드웨어 설문 원격 측정 이벤트 전송하지 않도록.
+
+* UE-23688 모듈레이트 섀도우가 인코딩된 HDR 에 잘못 블렌딩
+
+* UE-23762 에디터를 닫고 다시 열면 런타임 생성을 스태틱 리셋으로 설정
+
+* UE-23048 UAIPerceptionStimuliSourceComponent 가 필요한 센스를 포함해서 등록되지 않음
+
+* UE-22866 [4.10 P2] 에디터의 드롭다운 메뉴와 툴팁에 UI 가 중앙에서 벗어나 있음
+
+* UE-23064 타겟 빌드 폴더가 리패키징 시 클리어 되지 않음
+
+* UE-23132 매크로의 와일드카드 배열로 오류 메시지 표시 유발
+
+* UE-23233 프로젝트를 새로운 엔진 버전으로 업그레이드하면 튜토리얼 블루프린트를 열려고 할 때 오류 유발
+
+* UE-21717 Self Shadow Only 가 렌더링 부작용 유발
+
+* UE-22949 리눅스에서 UE4Editor 열 수 없음 - 잘못된 hlslcc 헤더 찾음
+
+* UE-23746 4.10 에서 에디터 전용 블루프린트 텍스트를 게임 현지화 텍스트로 수집
+
+* UE-22157 거래가 성공적으로 끝났는데도 Android In App Purchase 에서 false 반환 가능
+
+* UE-23190 Android/Google Play In-App Purchase Blueprint 노드를 두 번 발동시켜야지만 작동
+
+* UE-23365 GitHub 1763 : Update README.md / VS2013 -> VS2015
+
+* UE-23151 UE4 4.10 현지화 업데이트 필요
+
+## 4.10.2 핫픽스
+
+릴리즈 날짜: 2016/01/11
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.10.2-release](https://github.com/EpicGames/UnrealEngine/tree/4.10.2-release)
+
+픽스:
+
+* UE-23845 UMG 에서 애니메이션 키에 "Set Key Time" 사용 시의 크래시
+
+* UE-24685 마티네 무비 레코딩이 4.10 에서 깨짐
+
+* UE-22573 서로를 레퍼런싱하는 노드에서 REINST 오류 발생
+
+* UE-24115 Xcode 에서 DebugGame Editor 구성으로 에디터 실행 불가
+
+* UE-24563 에디터가 런처를 조용히 실행해야
+
+## 4.10.3 핫픽스
+
+릴리즈 날짜: 2016/02/17
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.10.3-release](https://github.com/EpicGames/UnrealEngine/tree/4.10.3-release)
+
+픽스:
+
+* OPP-4947 설치 오류 코드 R-1638 / 4.11 이 설치된 경우 런처를 통해 4.10.1 로 업그레이드 불가능
+
+* UE-13030 서브 레벨 로드 관련 크래시 - UEngine::LoadMap()
+
+* UE-22075 노드가 같은 이름을 사용할 때 컴파일 시 크래시 - FPersistentFrameCollectorArchive::operator<<()
+
+* UE-22696 FBX2016 으로 익스포트한 특정 스켈레탈 FBX 임포트 시 크래시
+
+* UE-22921 보더 아리 다수의 액터를 부모로 삼을 때 에디터 크래시
+
+* UE-23373 일부 애니메이션을 열 때 크래시 - TSharedMapView::Find()
+
+* UE-23785 UE4Editor_Core!FSlowTask::GetCurrentMessage() 크래시
+
+* UE-24169 PlayerInput.cpp - UPlayerInput::ProcessInputStack() 크래시
+
+* UE-24443 애셋 이주 시 잠재적 크래시 - FGenericPlatformString::LogBogusChars()
+
+* UE-26315 UE4Editor_Engine!UActorComponent::BeginPlay() 크래시
+
+* UE-26872 4.10 에서 현지화 수집 시 크래시 가능
+
+* UE-23231 PC 에서 사이닝한 iOS 빌드 업로드 불가
+
+* UE-24972 일부 템플릿의 경우 게임 시작 시 헤드 트래킹 고정
+
+* UE-26158 bIsActorBeingDestroyed 를 코멘트로 잘못 빼냄
+
+* UE-26657 스프라이트 임포트 시 퇴보가 4.9 에서 개선되었습니다.
+
+* UE-26903 단일 컬처 익스포트 시 현지화 대시보드가 내장된 이동을 익스포트하지 않음
+
+## 4.10.4 핫픽스
+
+릴리즈 날짜: 2016/02/22
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.4-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.10.4-release)
+
+픽스:
+
+* UE-27124 블루프린트를 통해 레벨 전환 시 에디터 크래시
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..22866e047e7b
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.CHN.udn
@@ -0,0 +1,154 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.11 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2016/4_11
+Order:0
+
+## 4.11.0 Release
+
+Released: 03/31/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.11.0-release](https://github.com/EpicGames/UnrealEngine/tree/4.11.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2016/4_11)
+
+## 4.11.1 Hotfix
+
+Released: 04/07/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.11.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.11.1-release)
+
+Fixes:
+
+* UEBP-140 Oculus Integration 1.3 SDK, automation features, adapter support
+
+* UE-28961 UnrealLightMass fails to compile with VS2015 Update 2
+
+* UE-29031 Unable to connect to SSL Perforce Server
+
+* UE-28933 GarbageCollection crash using IWCE
+
+* UE-28992 [CrashReport] Crash When Enabling Capsule Direct Shadows on a Skeletal Mesh
+
+* UE-29005 [CrashReport] UE4Editor_CoreUObject!FGCCollector::HandleObjectReferences() [garbagecollection.cpp:586]
+
+* UE-29012 Crash attempting to open blueprints with make nodes of missing structures made prior to 4.11
+
+* UE-28954 PSVR Using Old Tracking Data
+
+* UE-29080 GearVR - project unexpectedly closes on launch
+
+* UE-29108 GearVR vrplatlib.jar staging logic is backward
+
+## 4.11.2 Hotfix
+
+Released: 04/18/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.11.2-release](https://github.com/EpicGames/UnrealEngine/tree/4.11.2-release)
+
+Fixes:
+
+* UE-28811 Get mouse X/ Get mouse Y returns zero after the user clicks the screen and mouse is shown
+
+* UE-29148 Using "Show Mouse Cursor" breaks mouse axis movement
+
+* UE-28378 Mouse is not captured when switching between clients when running PIE
+
+* UE-29007 Construction script in parent blueprint cannot call function in child blueprint
+
+* UE-29207 UMG Widgets aren't cleaned up when a player is removed
+
+* UE-29208 Third Person C++ Template Doesn't use C++ Character
+
+* UE-29300 CDO Constructor Error when opening C++ Third Person project
+
+* UE-29136 Ensure starting PIE after editing character blueprint of a code based side scrollers
+
+* UE-29046 Crash on exit PIE after editing character blueprint of a code based side scrollers
+
+* UE-29209 Ensure 'Attaching instanced component to template component' in PIE in TP code project after reparenting character BP
+
+* UE-29100 Disable spawanbles in 4.11 because they can cause scene corruption and won't be compatible with 4.12
+
+* UE-28791 Crash smoothing landscape with foliage
+
+* UE-28926 Editor crashes while sculpting landscape heavily covered in foliage
+
+* UE-28999 UE 4.11 Project Containing vegetation_pack causes Engine to Crash
+
+* UE-24725 Vehicle templates have jerky movement when turning due to SpringArmComponent
+
+* UE-28753 SpringArm causes physics to fail for a character standing on the physics object
+
+* UE-28991 Cannot manipulate morph targets unique to Slave Component through Master Component
+
+* UE-29003 Manipulating Morph Target on Master Component distorts Slave Components
+
+* UE-28789 Root motion has significant error when used in character movement
+
+* UE-25343 Crash in SetRootBodyIndex ( ParentIndex is 0 but SpaceBases.Num() == 0)
+
+* UE-29116 Animation CopyRecords need to calculate size at runtime
+
+* UE-29422 Crash in FollowKnots when compiling Anim Blueprint
+
+* UE-29326 [CrashReport] UE4Editor_Engine!FBlendedCurve::InitFrom() [animcurvetypes.cpp:590]
+
+* UE-28011 Media Player assets do not play in packaged games or in standalone
+
+* UE-29091 Sound Cues with Attenuation 'Override' Nodes break when Upgrading project to 4.11
+
+* UE-29403 .wav files with max concurrency count data outside proper range will crash editor when played
+
+* UE-29548 Crash in VoiceModuleWindows.cpp
+
+* UE-29397 Sounds not Playing for 2nd Player Client when running in Local Multiplayer Splitscreen Mode
+
+* UE-27646 Editor Crashes When Using Set Replicates in the Construction Script
+
+* UE-25234 Bloom offset in right eye when rendering in stereoscopic
+
+* UE-29513 Custom lighting channels ignored when object culled in stereoscopic
+
+* UE-28609 R.ScreenPercentage and HMD SP commands do not work on Morpheus
+
+* UE-29505 Wrong colors on Nexus 6 Devices
+
+* UE-28805 HDR and Bloom not working on Mali Galaxy S7 (SM-G930F)
+
+* UE-29420 [Metal][iOS] Memory spike caused by FMetalSurface in 4.11
+
+* UE-29421 [Metal][iOS] Crash in FMetalDynamicRHI::RHIReadSurfaceFloatData since 4.11
+
+* UE-29006 [CrashReport] UE4Editor-MetalRHI.dylib!FMetalCommandEncoder::RestoreRenderCommandEncoding()
+
+* UE-29194 PS4 leaks memory in Shipping builds submission timestamp array
+
+* UE-29390 Html 5 Launch Fails on Windows
+
+* UE-29392 HTML5 broken load/save
+
+* UE-28874 New Third Party Plugin does not compile on Mac and Linux and prevents project from opening
+
+* UE-29158 4.11 regression: Stationary skylights no longer get bounce lighting after a lighting build
+
+* UE-29255 IndirectLightingIntensity on skylights is broken - can cause level lighting to unexpectedly change after getting the new build
+
+* UE-29297 Building Grass Map toast stays up forever
+
+* UE-29332 [CrashReport] Crash When Switching from Lit to Light Complexity Mode
+
+* UE-29322 [CrashReport] UE4Editor_CoreUObject!StaticFindObjectFastInternalThreadSafe() [uobjecthash.cpp:423]
+
+* UE-29407 Editor process quits during start up in debug with debugger attached
+
+## QFE for the 4.11.2 Hotfix
+
+If you are using the latest hotfix for this engine version and experience the issue described below, download and run this ‘quick fix’ to resolve the issue.
+
+* Fixes compile issue when attempting to use Visual Studio 2015 Update 3
+
+[Windows Download](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-3044413.exe](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-3044413.exe)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.JPN.udn
index b40468dc33cb..0b43debf0ce8 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.11 Update Notes
+Title: アンリアル エンジン 4.11 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2016/4_11
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..70c9c9354b8b
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_11/Updates/UnrealEngine4_11UpdateNotes.KOR.udn
@@ -0,0 +1,153 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.11 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2016/4_11
+Order:0
+
+## 4.11.0 릴리즈
+
+릴리즈 날짜: 2016/03/31
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.11.0-release](https://github.com/EpicGames/UnrealEngine/tree/4.11.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2016/4_11)
+
+## 4.11.1 핫픽스
+
+릴리즈 날짜: 2016/04/07
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.11.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.11.1-release)
+
+픽스:
+
+* UEBP-140 오큘러스 통합: 1.3 SDK, 자동화 기능, 어댑터 지원
+
+* UE-28961 UnrealLightMass 가 VS2015 Update 2 에서 컴파일 실패
+
+* UE-29031 SSL Perforce Server 접속 불가
+
+* UE-28933 IWCE 사용 GarbageCollection 크래시
+
+* UE-28992 [CrashReport] 스켈레탈 메시에 캡슐 다이렉트 섀도 켜면 크래시
+
+* UE-29005 [CrashReport] UE4Editor_CoreUObject!FGCCollector::HandleObjectReferences() [garbagecollection.cpp:586]
+
+* UE-29012 4.11 이전에 만든 구조체가 없는 make 노드 포함 블루프린트를 열려고 할 때의 크래시
+
+* UE-28954 PSVR 에서 오래된 트래킹 데이터 사용
+
+* UE-29080 GearVR - 프로젝트 실행 시 예상치 못하게 닫힘
+
+* UE-29108 GearVR vrplatlib.jar 스테이징 로직이 반대
+
+## 4.11.2 핫픽스
+
+릴리즈 날짜: 2016/04/18
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.11.2-release](https://github.com/EpicGames/UnrealEngine/tree/4.11.2-release)
+
+픽스:
+
+* UE-28811 사용자가 화면을 클릭하고 마우스가 표시된 이후 Get mouse X/ Get mouse Y 가 0 반환
+
+* UE-29148 "Show Mouse Cursor" 사용 시 마우스 축 이동 깨짐
+
+* UE-28378 PIE 실행 중 클라이언트 전환 시 마우스 캡처 안됨
+
+* UE-29007 부모 블루프린트의 컨스트럭션 스크립트가 자손 블루프린트의 함수 호출 불가
+
+* UE-29207 플레이어 제거 시 위젯 클린 업이 되지 않음
+
+* UE-29208 삼인칭 C++ 템플릿이 C++ 캐릭터를 사용하지 않음
+
+* UE-29300 C++ 삼인칭 프로젝트 열 때 CDO 생성자 오류
+
+* UE-29136 코드 기반 횡스크롤의 캐릭터 블루프린트 편집 후 PIE 시작 시 ensure 발생
+
+* UE-29046 코드 기반 횡스크롤의 캐릭터 블루프린트 편집 후 PIE 종료 시 크래시
+
+* UE-29209 삼인칭 코드 프로젝트에서 캐릭터 블푸 부모 변경 후 PIE 에서 'Attaching instanced component to template component' ensure 발생
+
+* UE-29100 4.11 에서 스포너블 비활성화. 씬이 깨지게 만들 수가 있으며, 4.12 와 호환되지 않음.
+
+* UE-28791 폴리지 포함 랜드스케이프 스무딩 시 크래시
+
+* UE-28926 폴리지를 많이 칠한 랜드스케이프 조각 도중 에디터 크래시
+
+* UE-28999 UE 4.11 프로젝트에 vegetation_pack 포함된 것이 엔진 크래시 유발
+
+* UE-24725 비히클 템플릿에서 회전 시 SpringArmComponent 때문에 덜컥거림
+
+* UE-28753 SpringArm 때문에 피직스 오브젝트에 서있는 캐릭터의 피직스 실패 유발
+
+* UE-28991 마스터 컴포넌트를 통해 슬레이브 컴포넌트에 고유한 모프 타겟 조작 불가
+
+* UE-29003 마스터 컴포넌트의 모프 타겟 조작 시 슬레이브 컴포넌트 왜곡
+
+* UE-28789 캐릭터 무브먼트에서 사용 시 루트 모션에 심각한 오류
+
+* UE-25343 SetRootBodyIndex 의 크래시 ( ParentIndex 는 0 이나 SpaceBases.Num() == 0)
+
+* UE-29116 CopyRecords 애니메이션이 실행시간에 크기 계산 필요
+
+* UE-29422 애님 블루프린트 컴파일 시 FollowKnots 크래시
+
+* UE-29326 [CrashReport] UE4Editor_Engine!FBlendedCurve::InitFrom() [animcurvetypes.cpp:590]
+
+* UE-28011 미디어 플레이어 애셋이 패키지 게임 또는 독립형에서 플레이되지 않음
+
+* UE-29091 Attenuation 'Override' 노드가 있는 사운드 큐가 4.11 로 프로젝트 업그레이드시 깨짐
+
+* UE-29403 최대 동시재생 수 데이터가 적정 범위를 벗어난 .wav 파일 재생 시 에디터 크래시
+
+* UE-29548 VoiceModuleWindows.cpp 크래시
+
+* UE-29397 로컬 멀티플레이어 분할화면 모드에서 실행할 때 두 번째 플레이어 클라이언트에 사운드가 재생되지 않음
+
+* UE-27646 컨스트럭션 스크립트에서 Set Replicates 사용 시 에디터 크래시
+
+* UE-25234 스테레오 렌더링 시 오른쪽 눈의 블룸 오프셋
+
+* UE-29513 스테레오에서 오브젝트 컬링 시 커스텀 라이팅 채널 무시
+
+* UE-28609 R.ScreenPercentage 및 HMD SP 명령이 Morpheus 에서 작동 않음
+
+* UE-29505 Nexus 6 디바이스에서 컬러 틀림
+
+* UE-28805 HDR 및 Bloom 이 Mali Galaxy S7 (SM-G930F) 에서 작동 않음
+
+* UE-29420 [Metal][iOS] 4.11 에서 FMetalSurface 로 인해 메모리 스파이크
+
+* UE-29421 [Metal][iOS] 4.11 이후 FMetalDynamicRHI::RHIReadSurfaceFloatData 에 크래시
+
+* UE-29006 [CrashReport] UE4Editor-MetalRHI.dylib!FMetalCommandEncoder::RestoreRenderCommandEncoding()
+
+* UE-29194 Shipping 빌드 서미션 타임스탬프 배열에 PS4 메모리 누수
+
+* UE-29390 윈도우에서 Html 5 실행 실패
+
+* UE-29392 HTML5 에서 로드/저장 깨짐
+
+* UE-28874 새로운 써드 파티 플러그인이 맥과 리눅스에서 컴파일되지 않아 프로젝트가 열리지 않음
+
+* UE-29158 4.11 퇴보: 스테이셔너리 스카이라이트가 더이상 라이팅 빌드 이후 반사광을 받지 않음
+
+* UE-29255 스카이라이트의 IndirectLightingIntensity 깨짐 - 새 빌드 구한 후 레벨 라이팅이 예상치 못하게 변할 수 있음
+
+* UE-29297 그래스 맵 토스트 빌드 시 영원히 남아있음
+
+* UE-29332 [CrashReport] 라이팅포함 에서 라이트 복잡도 모드로 전환 시 크래시
+
+* UE-29322 [CrashReport] UE4Editor_CoreUObject!StaticFindObjectFastInternalThreadSafe() [uobjecthash.cpp:423]
+
+* UE-29407 디버거 포함 디버그 모드 시작 도중 에디터 프로세스 종료
+
+## 4.11.2 용 QFE 핫픽스
+
+이 엔진 버전의 최신 핫픽스를 사용하다가 아래 문제를 겪으시는 경우, 이 'quick fix' 를 다운로드하여 실행시키면 해결 가능합니다.
+
+* Visual Studio 2015 Update 3 사용 시도 시 컴파일 문제를 해결합니다.
+
+[윈도우 다운로드](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-3044413.exe](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-3044413.exe)
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..6ec32bfc9b70
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.CHN.udn
@@ -0,0 +1,216 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.12 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2016/4_12
+Order:0
+
+## 4.12.0 Release
+
+Released: 06/01/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.12.0-release](https://github.com/EpicGames/UnrealEngine/tree/4.12.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2016/4_12)
+
+## 4.12.1 Hotfix
+
+Released: 06/07/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.1-release)
+
+Fixes:
+
+* UE-31570 Crash in StaticDuplicateObject while compiling or editing variables in blueprint widgets
+
+* UE-31550 Using Integer Bitmask crashes editor
+
+* UE-23371 [CrashReport]UE4Editor_GraphEditor!FNodeFactory::CreateNodeWidget() nodefactory.cpp:91
+
+* UE-26761 Crash When Compiling Child Blueprint Containing a Custom Event with the Same Name as its Parent's Event
+
+* UE-31443 Crash occurs clicking "Select All" in Foliage Tool in QA-Sequencer map
+
+* UE-31183 [CrashReport] UE4Editor_Engine!FAnimNode_StateMachine::Evaluate() [animnode_statemachine.cpp:745]
+
+* UE-31574 RemoveNaNTracks causes anim DDC data to be regenerated every load on old animations
+
+* UE-31445 [CrashReport] UE4Editor_DetailCustomizations!FBodyInstanceCustomization::GetDefaultCollisionProvider() [bodyinstancecustomization.cpp:35]
+
+* UE-31255 Shipping Builds packaged for WinXP 32 bit crash when opening on Win7
+
+* UE-31492 Can no longer generate a dsym on Mac
+
+* UE-25561 Read IAP information node causes hang if connection is disconnected
+
+* UE-31539 GPU crash on PS4 due to GS mode not getting disabled when using parallel contexts
+
+* UE-31247 Emissive for Static Lighting discarded upon Re-opening Level or Restarting Project
+
+* UE-28817 [CrashReport] UE4Editor_Engine!FStaticLODModel::Serialize() [skeletalmesh.cpp:1261]
+
+* UE-15903 [CrashReport] Lighting build triggers array out of bounds crash
+
+* UE-31620 Roughness Calculation is incorrect in 4.12
+
+* UE-26288 Crash on unchecking Generate Lightmap UVs and Applying with Mesh already assigned and painted as Foliage
+
+* UE-31182 [CrashReport] UE4Editor_Engine!FMaterial::GetShader() [materialshared.cpp:1564]
+
+* UE-18906 [CrashReport] Crash in !UE4Editor_D3D11RHI!FD3D11DynamicRHI::Shutdown()
+
+* UE-30985 Reflective surfaces rendering incorrectly in -featureleveles2 -opengl
+
+* UE-31431 Crash in Sequencer play rate track when setting negative play rate
+
+* UE-31647 Crash changing the color of a fade track section
+
+* UE-31648 Sequencer audio doesn't play after rendering a movie in editor.
+
+## 4.12.2 Hotfix
+
+Released: 06/09/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.2-release)
+
+Fixes:
+
+* UE-31740 Crash While Compiling Blueprint in FBlueprintEditorUtils::RefreshExternalBlueprintDependencyNodes()
+
+* UE-31655 BP EQS generators crash on adding vectors.
+
+* UE-31723 Attempting to build MinidumpDiagnostics with Visual Studio 2015 Update 2 results in failure
+
+* UE-31612 Physics enabled Child Actor components that spawn with with a delay, always spawns at world origin
+
+* UE-31680 [CrashReport] DestroyChildActor->Rename->StaticFindObject()
+
+* UE-31682 [CrashReport] UE4Editor_CoreUObject!UObjectBaseUtility::GetOutermost() [uobjectbaseutility.cpp:118]
+
+* UE-31736 SteamController BackRight is not setup correctly
+
+* UE-29543 Adjusting Light Source Radius/Length creates undesirable effect
+
+* UE-31589 Capture reflections on translucent materials are broken
+
+* UE-31715 Static Meshes Disappear with Media Player Asset Applied as Material in Standalone or Packaged Game
+
+* UE-31687 Vive: Positional Latency with a Possessed Pawn's Camera Component
+
+## 4.12.3 Hotfix
+
+Released: 06/16/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.3-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.3-release)
+
+Fixes:
+
+* UE-31735 Get Class Defaults node disconnects output pins when project upgraded from 4.11 to 4.12
+
+* UE-31743 Components derived from scene component reset vector location upon closing and re-opening editor
+
+* UE-31812 CrashReporter Client has no options to close without sending
+
+* UE-31789 GitHub 2484 : Git Plugin: fix the Submit To Source Control menu broken by new "migrate" support in 4.12 (and master)
+
+* UE-31702 Assertion opening blueprint with HISMC created in 4.11
+
+* UE-30934 GitHub 2406 : Git plugin: Fix for Git diff not working in UE 4.12 (and master)
+
+* UE-31265 GitHub 2432 : BUGFIX: ProceduralMeshComponent crashes game
+
+* UE-31578 [CrashReport] UE4Editor_Renderer!InjectTranslucentLightArray() [translucentlighting.cpp:1578]
+
+* UE-31851 Reflections have an extra vector offset than in 4.11
+
+* UE-31787 Vive: Positional Latency w/ Rotation
+
+## 4.12.4 Hotfix
+
+Released: 06/28/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.4-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.4-release)
+
+Fixes:
+
+* UE-32179 Properties of blueprint based behavior tree decorators are reset on game start
+
+* UE-32178 Vehicles set to "obstacle only" in RVO are moving on their own
+
+* UE-32356 Editor crashes when opening several marketplace assets - Assertion failed: !HasAnyFlags
+
+* UE-32414 Using TickInterval for a tick used as a prerequisite will crash
+
+* UE-31897 PhysicsVolume weak pointer returns null only in packaged project
+
+* UE-31938 Crash report window does not open on GitHub source builds
+
+* UE-29086 Crash When Typing a Node Comment and Hovering Over the Alignment Option
+
+* UE-30963 UCS continuously runs while a blueprint's thumbnail in content browser is focused
+
+* UE-32381 Crash updating thumbnail after compiling blueprint
+
+* UE-32283 Animations imported with Skeletal Mesh are not marked as dirty and don't get saved
+
+* UE-30878 [CrashReport] UE4Editor_Foliage!FFoliageInstanceBaseCache::AddInstanceBaseId() [foliageinstancebase.cpp:101]
+
+* UE-31956 Instance changes no longer propagating to ChildActor after updating from 4.11.2
+
+* UE-32219 [CrashReporter] Crash in UEngine::UpdateTimeAndHandleMaxTickRate()
+
+* UE-32276 AActor::OnRep_AttachmentReplication regression on detach
+
+* UE-32124 Crash when Deleting Concatenator Node while Playing Sound Cue
+
+* UE-28604 [CrashReport] UE4Editor_Engine!FSharedPoolPolicyData::GetPoolBucketIndex() [gpuskinvertexfactory.cpp:75]
+
+* UE-31445 [CrashReport] UE4Editor_DetailCustomizations!FBodyInstanceCustomization::GetDefaultCollisionProvider() [bodyinstancecustomization.cpp:35]
+
+* UE-32244 Grabbing a Destructible Mesh Child blueprint with a Phsyics Handle crashes the editor
+
+* UE-31766 [CrashReport] UE4Editor_Engine!AActor::InvalidateLightingCacheDetailed() [actor.cpp:4111]
+
+* UE-32060 Editing Landscape Collision Mip Level Crashes Editor
+
+* UE-32132 Safe zone visualization and debugging is broken on Windows
+
+* UE-31441 A3D doesn't work on PS4
+
+* UE-31450 [CrashReport] UE4Editor_UnrealEd!FLightmassExporter::WriteSceneSettings() [lightmass.cpp:1818]
+
+* UE-31765 [CrashReport] UE4Editor_Renderer!FMeshMaterialShader::SetMesh() [shaderbaseclasses.cpp:457]
+
+* UE-31454 Using VR Preview and Shader Complexity viewmode will cause a crash
+
+* UE-29332 [CrashReport] Crash When Switching from Lit to Light Complexity Mode
+
+* UE-32036 GitHub 2504 : [Editor Hang new in 4.12 fix in FinalPostProcessSettings] Essential project-killing hang fix ? Rama
+
+* UE-32415 Editing Landscape Collision Mip Level Crashes Editor
+
+* UE-29146 CameraVectorWS Input Data as Post Process Blendable not Rendering Correctly
+
+* UE-31549 r.ScreenPercentage.Editor does not function
+
+* UE-32507 Third party plugin authors cannot stage PRX files on PS4
+
+* UE-31914 Remove embedded vertex buffers from GoogleVRHMDViewerPreviews.cpp that are killing compile times and binary sizes
+
+## 4.12.5 Hotfix
+
+Released: 07/07/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.5-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.5-release)
+
+Fixes:
+
+* UE-32588 VS2015 Update 3 prevents the editor from compiling code
+
+* UE-32621 [CrashReport] UE4Editor_Renderer!FGlobalShader::SetParameters() [globalshader.h:134]
+
+* UE-32715 Crash when selecting "show" > "uncompressed animation" in Persona
+
+* UE-32772 Hitting ensure in AACtor::BeginPlay in an actor with ChildActorComponents
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.JPN.udn
index 3f109ac59ed9..95b76155fab0 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.12 Update Notes
+Title: アンリアル エンジン 4.12 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2016/4_12
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..1631504c0084
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_12/Updates/UnrealEngine4_12UpdateNotes.KOR.udn
@@ -0,0 +1,215 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.12 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2016/4_12
+Order:0
+
+## 4.12.0 릴리즈
+
+릴리즈 날짜: 2016/06/01
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.12.0-release](https://github.com/EpicGames/UnrealEngine/tree/4.12.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2016/4_12)
+
+## 4.12.1 핫픽스
+
+릴리즈 날짜: 2016/06/07
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.1-release)
+
+픽스:
+
+* UE-31570 블루프린트 위젯 컴파일 또는 변수 편집 도중의 StaticDuplicateObject 크래시를 고쳤습니다.
+
+* UE-31550 인티저 비트마스크 사용 시 에디터 크래시를 고쳤습니다.
+
+* UE-23371 [CrashReport]UE4Editor_GraphEditor!FNodeFactory::CreateNodeWidget() nodefactory.cpp:91
+
+* UE-26761 부모 이벤트와 같은 이름의 커스텀 이벤트가 있는 자손 블루프린트 컴파일 시 크래시를 고쳤습니다.
+
+* UE-31443 QA-Sequencer 맵에서 폴리지 툴로 "모두 선택" 클릭 시 크래시를 고쳤습니다.
+
+* UE-31183 [CrashReport] UE4Editor_Engine!FAnimNode_StateMachine::Evaluate() [animnode_statemachine.cpp:745]
+
+* UE-31574 RemoveNaNTracks 가 오래된 애니메이션을 로드할 때마다 애님 DDC 데이터를 재생성하게 만들던 것을 고쳤습니다.
+
+* UE-31445 [CrashReport] UE4Editor_DetailCustomizations!FBodyInstanceCustomization::GetDefaultCollisionProvider() [bodyinstancecustomization.cpp:35]
+
+* UE-31255 Win7 에서 WinXP 32 용으로 패키징된 Shipping 빌드를 열 때의 크래시를 고쳤습니다.
+
+* UE-31492 Mac 에서 더이상 dsym 생성이 불가능하던 것을 고쳤습니다.
+
+* UE-25561 접속이 끊겼을 때 Read IAP information 노드가 멈추던 것을 고쳤습니다.
+
+* UE-31539 패럴렐 컨텍스트 사용 시 GS 모드가 꺼지지 않아서 발생하는 PS4 크래시를 고쳤습니다.
+
+* UE-31247 레벨을 다시 열 때나 프로젝트 재시작 시 스태틱 라이팅의 이미시브가 버려지던 것을 고쳤습니다.
+
+* UE-28817 [CrashReport] UE4Editor_Engine!FStaticLODModel::Serialize() [skeletalmesh.cpp:1261]
+
+* UE-15903 [CrashReport] Lighting build triggers array out of bounds crash
+
+* UE-31620 4.12 에서 러프니스 계산이 잘못되던 것을 고쳤습니다.
+
+* UE-26288 Generate Lightmap UVs 체크를 해제하고 Applying with Mesh 를 이미 할당한 상태에서 폴리지로 페인트할 때의 크래시를 고쳤습니다.
+
+* UE-31182 [CrashReport] UE4Editor_Engine!FMaterial::GetShader() [materialshared.cpp:1564]
+
+* UE-18906 [CrashReport] Crash in !UE4Editor_D3D11RHI!FD3D11DynamicRHI::Shutdown()
+
+* UE-30985 -featureleveles2 -opengl 상태에서 반사 표면이 잘못 렌더링되던 것을 고쳤습니다.
+
+* UE-31431 시퀀서 플레이 레이트 트랙에서 음수 설정 시 크래시를 고쳤습니다.
+
+* UE-31647 페이드 트랙 섹션 컬러 변경 시의 크래시를 고쳤습니다.
+
+* UE-31648 시퀀서 오디오가 에디터에서 무비 렌더링 이후 재생되지 않는 것을 고쳤습니다.
+
+## 4.12.2 핫픽스
+
+릴리즈 날짜: 2016/06/09
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.2-release)
+
+픽스:
+
+* UE-31740 FBlueprintEditorUtils::RefreshExternalBlueprintDependencyNodes() 에서 블루프린트 컴파일 도중의 크래시를 고쳤습니다.
+
+* UE-31655 BP EQS 생성기에서 벡터 추가 시의 크래시를 고쳤습니다.
+
+* UE-31723 Visual Studio 2015 Update 2 로 MinidumpDiagnostics 빌드 시도 시 실패하던 것을 고쳤습니다.
+
+* UE-31612 딜레이를 가지고 피직스가 켜진 자손 액터 컴포넌트를 스폰하면 항상 월드 원점에 스폰되던 것을 고쳤습니다.
+
+* UE-31680 [CrashReport] DestroyChildActor->Rename->StaticFindObject()
+
+* UE-31682 [CrashReport] UE4Editor_CoreUObject!UObjectBaseUtility::GetOutermost() [uobjectbaseutility.cpp:118]
+
+* UE-31736 SteamController BackRight 가 제대로 셋업되지 않는 것을 고쳤습니다.
+
+* UE-29543 Light Source Radius/Length 변경 시 바람직하지 않은 이펙트가 나오던 것을 고쳤습니다.
+
+* UE-31589 반투명 머티리얼에 리플렉션 캡처가 깨지던 것을 고쳤습니다.
+
+* UE-31715 스탠드얼론 또는 패키지 게임에서 머티리얼로 적용된 미디어 플레이어 애셋이 있는 스태틱 메시가 사라지던 것을 고쳤습니다.
+
+* UE-31687 Vive: 빙의된 폰의 Camera Component 관련 위치
+
+## 4.12.3 핫픽스
+
+릴리즈 날짜: 2016/06/16
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.3-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.3-release)
+
+픽스:
+
+* UE-31735 프로젝트를 4.11 에서 4.12 로 업그레이드할 때 Get Class Defaults 노드가 출력핀 연결이 끊어지던 것을 고쳤습니다.
+
+* UE-31743 씬 컴포넌트에서 파생된 컴포넌트가 에디터를 닫았다 다시 열면 벡터 위치가 리셋되던 것을 고쳤습니다.
+
+* UE-31812 CrashReporter 클라이언트에 전송 없이 닫는 옵션이 없던 것을 고쳤습니다.
+
+* UE-31789 GitHub 2484 : Git Plugin: 4.12 (및 마스터)에 새로 지원된 "migrate" (이주) 기능때문에 깨진 Submit To Source Control 메뉴를 고쳤습니다.
+
+* UE-31702 4.11 에서 만든 HISMC 포함 블루프린트를 열 때의 어서트를 고쳤습니다.
+
+* UE-30934 GitHub 2406 : Git plugin: UE 4.12 (및 마스터)에서 Git diff 가 작동하지 않던 것을 고쳤습니다.
+
+* UE-31265 GitHub 2432 : BUGFIX: ProceduralMeshComponent 로 게임 크래시가 나던 것을 고쳤습니다.
+
+* UE-31578 [CrashReport] UE4Editor_Renderer!InjectTranslucentLightArray() [translucentlighting.cpp:1578]
+
+* UE-31851 리플렉션이 4.11 보다 많읂 벡터 오프셋이 많이 붙던 것을 고쳤습니다.
+
+* UE-31787 Vive: 회전 포함 위치 레이턴시
+
+## 4.12.4 핫픽스
+
+릴리즈 날짜: 2016/06/28
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.4-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.4-release)
+
+픽스:
+
+* UE-32179 블루프린트 기반 비헤이비어 트리 데코레이터의 프로퍼티가 게임 시작 시 리셋되던 것을 고쳤습니다.
+
+* UE-32178 RVO 에서 "obstacle only" 로 설정된 비히클히 스스로 움직이던 것을 고쳤습니다.
+
+* UE-32356 다수의 마켓플레이스 애셋을 열 때의 크래시를 고쳤습니다: 어서트 실패: !HasAnyFlags
+
+* UE-32414 틱의 TickInterval 을 사전 요구사항으로 사용할 때의 크래시를 고쳤습니다.
+
+* UE-31897 PhysicsVolume 약 포인터가 패키지 게임에서 항상 null 만 반환하던 것을 고쳤습니다.
+
+* UE-31938 GitHub 소스 빌드에서 크래시 리포트 창이 열리지 않던 것을 고쳤습니다.
+
+* UE-29086 노드 코멘트를 입력하고 Alignment 옵션에 커서를 올릴 때 발생하는 크래시를 고쳤습니다.
+
+* UE-30963 콘텐츠 브라우저에서 블루프린트의 썸네일에 포커스가 잡힌 상태에서 UCS 가 계속 실행되던 것을 고쳤습니다.
+
+* UE-32381 블루프린트 컴파일 후 썸네일 업데이트 시의 크래시를 고쳤습니다.
+
+* UE-32283 스켈레탈 메시와 함께 임포트한 애니메이션이 더티 마킹되지 않아 저장되지 않던 것을 고쳤습니다.
+
+* UE-30878 [CrashReport] UE4Editor_Foliage!FFoliageInstanceBaseCache::AddInstanceBaseId() [foliageinstancebase.cpp:101]
+
+* UE-31956 인스턴스 변화가 4.11.2 업데이트 이후 자손 액터에 전파되지 않던 것을 고쳤습니다.
+
+* UE-32219 [CrashReporter] Crash in UEngine::UpdateTimeAndHandleMaxTickRate()
+
+* UE-32276 디태치 시의 AActor::OnRep_AttachmentReplication 퇴보를 고쳤습니다.
+
+* UE-32124 사운드 큐 재생 도중 Concatenator 노드를 삭제할 때의 크래시를 고쳤습니다.
+
+* UE-28604 [CrashReport] UE4Editor_Engine!FSharedPoolPolicyData::GetPoolBucketIndex() [gpuskinvertexfactory.cpp:75]
+
+* UE-31445 [CrashReport] UE4Editor_DetailCustomizations!FBodyInstanceCustomization::GetDefaultCollisionProvider() [bodyinstancecustomization.cpp:35]
+
+* UE-32244 Phsyics Handle 이 있는 디스트럭터블 메시 자손 블루프린트를 잡을 때의 에디터 크래시를 고쳤습니다.
+
+* UE-31766 [CrashReport] UE4Editor_Engine!AActor::InvalidateLightingCacheDetailed() [actor.cpp:4111]
+
+* UE-32060 랜드스케이프 콜리전 밉 레벨 편집 시의 에디터 크래시를 고쳤습니다.
+
+* UE-32132 세이프 존 시각화 및 디버깅이 윈도우에서 깨지던 것을 고쳤습니다.
+
+* UE-31441 A3D 가 PS4 에서 작동하지 않던 것을 고쳤습니다.
+
+* UE-31450 [CrashReport] UE4Editor_UnrealEd!FLightmassExporter::WriteSceneSettings() [lightmass.cpp:1818]
+
+* UE-31765 [CrashReport] UE4Editor_Renderer!FMeshMaterialShader::SetMesh() [shaderbaseclasses.cpp:457]
+
+* UE-31454 VR 프리뷰 및 셰이더 복잡도 뷰모드를 사용하면 크래시가 나던 것을 고쳤습니다.
+
+* UE-29332 [CrashReport] 라이팅포함에서 라이트 복잡도 모드로 전환 시의 크래시를 고쳤습니다.
+
+* UE-32036 GitHub 2504 : [Editor Hang new in 4.12 fix in FinalPostProcessSettings] Essential 프로젝트가 죽는 행잉 픽스 ? Rama
+
+* UE-32415 랜드스케이프 콜리전 밉 레벨 편집 시 에디터 크래시를 고쳤습니다.
+
+* UE-29146 CameraVectorWS Input Data 가 Post Process Blendable 로 된 경우 제대로 렌더링되지 않던 것을 고쳤습니다.
+
+* UE-31549 r.ScreenPercentage.Editor 가 작동하지 않던 것을 고쳤습니다.
+
+* UE-32507 써드 파티 플러그인 제작자가 PS4 에 PRX 파일을 스테이지에 올릴 수 없던 것을 고쳤습니다.
+
+* UE-31914 GoogleVRHMDViewerPreviews.cpp 에서 임베드된 버텍스 버퍼가 컴파일 시간과 바이너리 크기를 죽이던 것을 제거했습니다.
+
+## 4.12.5 핫픽스
+
+릴리즈 날짜: 2016/07/07
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.5-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.12.5-release)
+
+픽스:
+
+* UE-32588 VS2015 업데이트 3 로 에디터 코드 컴파일이 안되던 것을 고쳤습니다.
+
+* UE-32621 [CrashReport] UE4Editor_Renderer!FGlobalShader::SetParameters() [globalshader.h:134]
+
+* UE-32715 페르소나에서 표시 > 미압축 애니메이션 선택 시의 크래시를 고쳤습니다.
+
+* UE-32772 ChildActorComponents 가 있는 액터에서 AACtor::BeginPlay 에서 ensure 가 발생하던 것을 고쳤습니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..a552bd588dfe
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.CHN.udn
@@ -0,0 +1,184 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.13 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2016/4_13
+Order:0
+
+## 4.13.0 Release
+
+Released: 09/01/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2016/4_13)
+
+## 4.13.1 Hotfix
+
+Released: 09/29/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.1-release)
+
+Fixes:
+
+* UE-35735 Crash Occurs While Running EQS Using Add Generated Vector Node
+
+* UE-35852 AI Move To Location zeros velocity each call, causing the AI Pawn to freeze if told to move again before reaching destination
+
+* UE-35585 Migration from 4.12.5 to 4.13 can result in Blueprint functions losing input/ouput variables
+
+* UE-35609 Delay nodes used in a macro cause subsequent macro calls during the delay to never complete
+
+* UE-35728 Some files in the Git repo have inconsistent line endings on Linux
+
+* UE-36107 Cannot create installed build on Linux
+
+* UE-35236 Launcher installed build is missing the Documentation/Extras folder
+
+* UE-36214 Crash in TMap struct deserializer
+
+* UE-35884 Crash when pressing enter after a shape has closed when using the Geometry editor
+
+* UE-35822 CRASH: Occurring in UTEditor when attempting to re-order BSP brushes
+
+* UE-35048 [CrashReport] UE4Editor_PropertyEditor!FDetailCategoryImpl::GetParentLayoutImpl() [detailcategorybuilderimpl.h:168]
+
+* UE-35482 Selecting a brush surface that is flush with other brush surfaces selects all of them after Building Geometry
+
+* UE-35627 Lightmap Coordinate Index is not automatically set to 1 on import any longer with lightmap UV
+
+* UE-35608 FBX & OBJ Files no longer Import with their UVs Depending on Software Used
+
+* UE-36383 Crash moving a spline point after making it the root component of a blueprint
+
+* UE-35658 Editor crash when a spline component is added to a blueprint and compiled
+
+* UE-36096 Inifinite loop in tick task manager with tick when paused and interval
+
+* UE-35254 Editor crashes when importing alembic asset
+
+* UE-36121 Crash when importing new mesh and regenerating skeleton for additive animation
+
+* UE-35546 Pose flickering when changing lods and using Layered Blend per Bone
+
+* UE-35353 Crash when spawning destructible objects in 2 player PIE
+
+* UE-35639 HLOD generated proxy doesn't create or assign target lightmap coordinate index any longer
+
+* UE-35494 Invisible landscape components when using tessellation
+
+* UE-35873 LODBias causes landscape component to stop rendering if set >0 and Forced LOD set to -1
+
+* UE-35301 Crash saving hidden landscape streaming level with offset
+
+* UE-35850 Crash in landscape editor with early Z pass
+
+* UE-35709 [CrashReport] UE4Editor_Landscape!FLandscapeEditDataInterface::SetAlphaData() [landscapeeditinterface.cpp:2617]
+
+* UE-36321 Editor Crashes After Deleting Actor with Media Texture
+
+* UE-36289 WmfMedia: Memory leak while playing videos
+
+* UE-35477 File Media Source assets created via drag & drop have absolute instead of relative path
+
+* UE-35504 PS4 Media player has potentially dangerous memory management
+
+* UE-35696 PS4Media: CPU/GPU may crash due to race condition in destructor
+
+* UE-35598 Devices reporting OpenGL ES 3.2 such as Galaxy Note 7 detect as ES2-only
+
+* UE-35179 Need to fall back to GLES if Vulkan API version is too old
+
+* UE-34782 GPU particles no longer work on iOS or TVOS Metal devices
+
+* UE-33379 Cannot select Android RHI and feature level from device profile
+
+* UE-35258 ES2 Fallback Fails on Nougat Devices that do not support Vulkan
+
+* UE-35261 Android sessions do not appear in Session Frontend
+
+* UE-32340 HTML5 packaging fails with Github couldn't verify LLVM version
+
+* UE-32086 Bloom blur produces multi-colored artifacts at the bottom of the screen on Xbox.
+
+* UE-35492 PS4 deployment does not deploy all the required files.
+
+* UE-35743 Packaging for Android while using Online Framework and Online Subsystem Steam Plugins cause failure
+
+* UE-35185 Opening a widget blueprint on Linux causes editor to crash
+
+* UE-35738 IPv6 implementation is not working on IOS
+
+* UE-30959 Remove all HITCHHUNTER warnings in next release (4.13)
+
+* UE-36342 Texture issues with movie player active on Android
+
+* UE-35363 Huge game window when launching onto Safari 9.1.2
+
+* UE-35558 Writing to a file on Android doesn't update the tracked file length
+
+* UE-35907 Slate Remote Enable Remove Server option in Project Settings -> Plugins causes editor to freeze and a memory leak
+
+* UE-36099 Dots on screen on PS4
+
+* UE-35794 PS4 can hang on GPU when using lit translucent surface materials
+
+* UE-26375 Crash when editing draw size for a widget component
+
+* UE-17227 [CrashReport] UE4Editor_Engine!DoReadTaskResults() [shadercompiler.cpp:147]
+
+* UE-35240 Protostar crashes on launch on Mac
+
+* UE-28708 GitHub 2188 : Fixed a crash exiting VR Preview on Windows GL4.
+
+* UE-35320 Stop>Set Sequence>Play causes spawnables to be duplicated
+
+* UE-35508 Master sequence dialog button is hidden
+
+* UE-35588 Incorrect translation from matinee move sub tracks to sequencer
+
+* UE-35285 Sequencer stop node does not return camera to player
+
+* UE-35571 Sequence recording in standalone crashes
+
+* UE-35107 Matinee to Level Sequence converter doesn't bind properties
+
+* UE-22581 Black artifacts/semi-circles on sides of morpheus when moving left to right
+
+* UE-36076 PS4Tracker's motion sensor data needs to use a valid sizeOfThis
+
+* UE-35520 sceKernelWaitEqueue timeout in MorpheusHMD.cpp fix for 4.13.1
+
+* UE-34986 Need to merge Oculus Online Subsystem Plugin update to expose Android support
+
+* UE-34786 Editor primitives render incorrectly in stereoscopic with instanced stereo
+
+* UE-35881 PSVR hmdSetupDialog cancel asserts on app startup
+
+* UE-36307 PSVR Motion Sensors Need 120hz Update
+
+* UE-33763 GearVR applications show black screen on Adreno devices
+
+* UE-36078 Integrate fixes for GoogleVR SDK 1.0
+
+* UE-35528 PSVR UE4 stuttering issue
+
+* UE-35344 Crash when playing a HapticFeedbackEffect_Soundwave
+
+* UE-35964 Crash playing a HapticFeedbackEffect_Soundwave with no sound assigned
+
+## 4.13.2 Hotfix
+
+Released: 10/26/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.2-release)
+
+Fixes:
+
+* UE-37704 Crash opening packaged project on iOS
+
+* UE-37249 MallocPoisonProxy can result in a memory stomp for aligned allocations in Debug and Development
+
+* UE-36573 Need to update to libpng for Android; current one triggers security alert on Google Play
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.JPN.udn
index 7a0ef9a4ac00..7074d9fdf752 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.13 Update Notes
+Title: アンリアル エンジン 4.13 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2016/4_13
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..9337b250dc40
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_13/Updates/UnrealEngine4_13UpdateNotes.KOR.udn
@@ -0,0 +1,183 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.13 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2016/4_13
+Order:0
+
+## 4.13.0 릴리즈
+
+릴리즈일: 2016/09/01
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2016/4_13)
+
+## 4.13.1 핫픽스
+
+릴리즈일: 2016/09/29
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.1-release)
+
+픽스:
+
+* UE-35735 Add Generated Vector 노드를 사용하여 EQS 실행 도중의 크래시를 고쳤습니다.
+
+* UE-35852 AI Move To Location 호출 시마다 속도가 0 으로 설정되어, 목적지에 도달하기 전 다시 움직이라 하는 경우 AI Pawn 이 얼어붙던 것을 고쳤습니다.
+
+* UE-35585 4.12.5 에서 4.13 으로 이주 시 블루프린트 함수가 입력/출력 변수를 잃을 수 있던 것을 고쳤습니다.
+
+* UE-35609 매크로에 사용된 Delay 노드가 딜레이 도중 다시 매크로를 호출하면 완료되지 않던 것을 고쳤습니다.
+
+* UE-35728 Git 리포지터리의 몇몇 파일이 리눅스에서 줄바꿈이 일관되지 않던 것을 고쳤습니다.
+
+* UE-36107 리눅스에서 설치 빌드를 생성할 수 없던 것을 고쳤습니다.
+
+* UE-35236 런처 설치 빌드에 Documentation/Extras 폴더가 없던 것을 고쳤습니다.
+
+* UE-36214 TMap 구조체 deserializer 의 크래시를 고쳤습니다.
+
+* UE-35884 지오메트리 에디터 사용 시 셰이프가 닫힌 후 Enter 를 누를 때의 크래시를 고쳤습니다.
+
+* UE-35822 BSP 브러시 순서 변경 시도 시 UTEditor 에 발생하던 크래시를 고쳤습니다.
+
+* UE-35048 [CrashReport] UE4Editor_PropertyEditor!FDetailCategoryImpl::GetParentLayoutImpl() [detailcategorybuilderimpl.h:168]
+
+* UE-35482 지오메트리 빌드 이후 다른 브러시 표면과 플러시 상태인 브러시 표면을 선택하면 전부 선택되던 것을 고쳤습니다.
+
+* UE-35627 라이트맵 UV 로 임포트 시 Lightmap Coordinate Index 가 자동으로 1 로 설정되지 않던 것을 고쳤습니다.
+
+* UE-35608 사용된 소프트웨어에 따라 FBX & OBJ 파일이 더이상 UV 포함 임포트되지 않던 것을 고쳤습니다.
+
+* UE-36383 스플라인 포인트를 블루프린트의 루트 컴포넌트로 만든 후 움직일 때의 크래시를 고쳤습니다.
+
+* UE-35658 블루프린트에 스플라인 컴포넌트를 추가하고 컴파일할 때의 에디터 크래시를 고쳤습니다.
+
+* UE-36096 일시정지 및 인터벌이 있는 상태에서 틱을 할 때 틱 태스크 매니저의 무한 루프를 고쳤습니다.
+
+* UE-35254 얼렘빅 애셋 임포트 시의 크래시를 고쳤습니다.
+
+* UE-36121 애디티브 애니메이션에 메시를 새로 임포트하고 스켈레톤을 재생성할 때의 크래시를 고쳤습니다.
+
+* UE-35546 LOD 변경 및 Layered Blend per Bone 사용 시의 포즈 깜빡임을 고쳤습니다.
+
+* UE-35353 2 플레이어 PIE 에서 디스트럭터블 오브젝트 스폰 시의 크래시를 고쳤습니다.
+
+* UE-35639 HLOD 생성 프록시가 더이상 타겟 라이트맵 좌표 인텍스를 생성 또는 할당하지 않던 것을 고쳤습니다.
+
+* UE-35494 테셀레이션 사용시 랜드스케이프 컴포넌트가 안보이던 것을 고쳤습니다.
+
+* UE-35873 LODBias 가 0 초과 설정되고 Forced LOD 는 -1 로 설정된 경우 랜드스케이프 컴포넌트 렌더링이 멈추던 것을 고쳤습니다.
+
+* UE-35301 오프셋이 있는 숨겨진 랜드스케이프 스트리밍 레벨 저장 시의 크래시를 고쳤습니다.
+
+* UE-35850 Early Z 패스 관련 랜드스케이프 에디터의 크래시를 고쳤습니다.
+
+* UE-35709 [CrashReport] UE4Editor_Landscape!FLandscapeEditDataInterface::SetAlphaData() [landscapeeditinterface.cpp:2617]
+
+* UE-36321 미디어 텍스처가 있는 액터 삭제 이후의 에디터 크래시를 고쳤습니다.
+
+* UE-36289 WmfMedia: 비디오 플레이 도중 메모리 누수를 고쳤습니다.
+
+* UE-35477 드래그 & 드롭을 통해 생성된 File Media Source 애셋이 상대 경로가 아닌 절대 경로를 갖던 것을 고쳤습니다.
+
+* UE-35504 PS4 미디어 플레이어의 메모리 관리가 위험해질 수 있었던 문제를 고쳤습니다.
+
+* UE-35696 PS4Media: 소멸자의 경쟁 조건으로 인해 CPU/GPU 크래시가 날 수 있던 것을 고쳤습니다.
+
+* UE-35598 Galaxy Note 7 처럼 OpenGL ES 3.2 지원 디바이스가 ES2 전용으로 감지되던 것을 고쳤습니다.
+
+* UE-35179 Vulkan API 버전이 너무 오래된 경우 GLES 로 예비 전환되도록 변경되었습니다.
+
+* UE-34782 GPU 파티클이 iOS 또는 TVOS Metal 디바이스에서 더이상 작동하지 않던 것을 고쳤습니다.
+
+* UE-33379 디바이스 프로파일에서 Android RHI 및 피처 레벨을 선택할 수 없던 것을 고쳤습니다.
+
+* UE-35258 Vulkan 을 지원하지 않는 Nougat 디바이스에서 ES2 예비 전환이 실패하던 것을 고쳤습니다.
+
+* UE-35261 세션 프론트엔드에 안드로이드 세션이 나타나지 않던 것을 고쳤습니다.
+
+* UE-32340 GitHub 에서 LLVM 버전을 검증할 수 없어서 HTML5 패키징이 실패하던 것을 고쳤습니다.
+
+* UE-32086 블룸 블러가 Xbox 화면 하단에 여러 색 부작용을 내던 것을 고쳤습니다.
+
+* UE-35492 PS4 디플로이가 모든 필수 파일을 디플로이하지 않던 것을 고쳤습니다.
+
+* UE-35743 Online Framework 및 Online Subsystem Steam 플러그인 사용 도중 안드로이드용 패키징을 할 때 실패하던 것을 고쳤습니다.
+
+* UE-35185 리눅스에서 위젯 블루프린트를 열면 에디터 크래시가 나던 것을 고쳤습니다.
+
+* UE-35738 IPv6 구현이 iOS 에서 작동하지 않던 것을 고쳤습니다.
+
+* UE-30959 다음 (4.13) 릴리즈에서 모든 HITCHHUNTER 경고가 제거됩니다.
+
+* UE-36342 안드로이드에서 무비 플레이어 활성화 관련 텍스처 문제를 고쳤습니다.
+
+* UE-35363 Safari 9.1.2 에서 실행 시 게임 창이 거대해지던 것을 고쳤습니다.
+
+* UE-35558 안드로이드에 파일을 쓰는 것이 트래킹된 파일 길이를 업데이트하지 않는 것을 고쳤습니다.
+
+* UE-35907 프로젝트 세팅 -> 플러그인에서 Slate Remote Enable Remove Server 옵션을 켜면 에디터가 멈추고 메모리 누수가 발생하던 것을 고쳤습니다.
+
+* UE-36099 PS4 화면에 점이 찍히던 것을 고쳤습니다.
+
+* UE-35794 PS4 에서 라이팅된 반투명 표면 머티리얼 사용 시 GPU 에서 멈출 수 있었던 것을 고쳤습니다.
+
+* UE-26375 위젯 컴포넌트의 드로 사이즈 편집시의 크래시를 고쳤습니다.
+
+* UE-17227 [CrashReport] UE4Editor_Engine!DoReadTaskResults() [shadercompiler.cpp:147]
+
+* UE-35240 Mac 에서 Protostar 를 실행시킬 때의 크래시를 고쳤습니다.
+
+* UE-28708 GitHub 2188 : 윈도우 GL4 에서 VR 프리뷰 종료시의 크래시를 고쳤습니다.
+
+* UE-35320 Stop>Set Sequence>Play 하면 스포너블이 복제되던 것을 고쳤습니다.
+
+* UE-35508 마스터 시퀀스 다이얼로그 버튼이 숨겨진 것을 고쳤습니다.
+
+* UE-35588 마티네 무브 서브 트랙에서 시퀀서로 잘못된 트랜슬레이션을 고쳤습니다.
+
+* UE-35285 시퀀서 스톱 노드가 카메라를 플레이어에게 돌려주지 않던 것을 고쳤습니다.
+
+* UE-35571 독립형 게임에서 시퀀스 녹화 크래시가 나던 것을 고쳤습니다.
+
+* UE-35107 Matinee to Level Sequence 컨버터가 프로퍼티를 바인딩하지 않던 것을 고쳤습니다.
+
+* UE-22581 왼쪽에서 오른쪽으로 움직일 때 모피우스 측면에 검정 부작용/반원같은 것이 보이던 것을 고쳤습니다.
+
+* UE-36076 PS4Tracker 의 모션 센서 데이터가 유효한 sizeOfThis 를 사용해야 하던 것을 고쳤습니다.
+
+* UE-35520 MorpheusHMD.cpp 의 sceKernelWaitEqueue 타임아웃을 4.13.1 에서 고쳤습니다.
+
+* UE-34986 Oculus Online Subsystem Plugin 업데이트를 안드로이드 지원을 노출시키도록 병합시켰습니다.
+
+* UE-34786 에디터 프리미티브가 인스턴스드 스테레오에서 스테레오로 잘못 렌더링되던 것을 고쳤습니다.
+
+* UE-35881 앱 시동 시 PSVR hmdSetupDialog 가 어서트를 취소하던 것을 고쳤습니다.
+
+* UE-36307 PSVR 모션 센서가 120hz 업데이트되었습니다.
+
+* UE-33763 GearVR 어플리케이션이 Adreno 디바이스에서 검정 화면으로 보이던 것을 고쳤습니다.
+
+* UE-36078 GoogleVR SDK 1.0 에 대한 픽스를 통합시켰습니다.
+
+* UE-35528 PSVR UE4 버벅임 문제를 고쳤습니다.
+
+* UE-35344 HapticFeedbackEffect_Soundwave 재생시의 크래시를 고쳤습니다.
+
+* UE-35964 사운드가 할당되지 않은 HapticFeedbackEffect_Soundwave 재생시의 크래시를 고쳤습니다.
+
+## 4.13.2 핫픽스
+
+릴리즈일: 2016/10/26
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.13.2-release)
+
+픽스:
+
+* UE-37704 iOS 에서 패키지 프로젝트를 열 때의 크래시를 고쳤습니다.
+
+* UE-37249 MallocPoisonProxy 가 Debug 및 Development 에서 정렬 할당 시 메모리 스톰프가 발생할 수 있던 것을 고쳤습니다.
+
+* UE-36573 안드로이드용 libpng 가 현재 구글 플레이에서 보안 경고가 뜨던 것을 고쳤습니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..bb67a750de4e
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.CHN.udn
@@ -0,0 +1,174 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.14 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2016/4_14
+Order:0
+
+## 4.14.0 Release
+
+Released: 11/15/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2016/4_14)
+
+## 4.14.1 Hotfix
+
+Released: 12/08/2016
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.1-release)
+
+Fixes:
+
+* UE-35609 Delay nodes used in a macro cause subsequent macro calls during the delay to never complete
+
+* UE-38690 Regression - Nested scene component subobjects are no longer being registered when the owning scene component is added to an existing Actor instance as an instanced component.
+
+* UE-38835 Rename "Visual Studio '15'" to "Visual Studio 2017"
+
+* UE-39298 UE4 and UnrealLightmass fail to build Module.SwarmInterface.cpp due to an error trying to open include file 'metahost.h' in SwarmInterface.cpp
+
+* UE-39284 Running GenerateProjectFiles.bat -2017 completes with warnings
+
+* UE-38898 UE4 is not compatible with Visual Studio 2017 RC
+
+* UE-38604 PS4 Platform Staging copies debug files (not allowed)
+
+* UE-38992 [CrashReport] UE4Editor_Core!FString::Mid() [unrealstring.h:1154]
+
+* UE-37249 MallocPoisonProxy can result in a memory stomp for aligned allocations in Debug and Development
+
+* UE-38991 [CrashReport] UE4Editor_Engine!FUObjectAnnotationSparse::AddAnnotation() [uobjectannotation.h:76]
+
+* UE-38752 Cannot Delete Folder Containing Sub Folders from Content Browser
+
+* UE-38721 Mouse cursor position is locked to center of screen when bShowMouseCursor is false
+
+* UE-38599 User Defined Struct Editor Hides Long Variable Lists
+
+* UE-38706 Dropdowns display incorrectly in non 1:1 zoom in BP on Mac and PC
+
+* UE-38806 Potential fatal assert when using a custom MID with a TextRenderComponent
+
+* UE-39059 No scrollbar in Structure UI
+
+* UE-39198 Limited range of motion when controlling the camera view with the mouse
+
+* UE-11796 Deleting folders in the Content Browser will not delete them permanently from Project Folder
+
+* UE-38925 Reimport for a single FBX with multiple meshes will add all mesh pieces instead of the single mesh.
+
+* UE-38935 Crash with FBX Import as Skeletal Mesh
+
+* UE-38749 Pressing enter does not appear to activate OnClicked events in UMG When a button is focused
+
+* UE-37698 Widgets can no longer take focus after clicking somewhere other than the widget itself
+
+* UE-36766 Crash attempting to open an asset from Aim Offset graph in Persona
+
+* UE-38811 Camera attached to a Spring Arm jitters when put at a +90 or -90 degree angle on the Y axis.
+
+* UE-38906 Crash when streaming in a level with a child actor
+
+* UE-38518 Animation Blueprint: Default values cannot be changed after compiling if node is currently selected
+
+* UE-39197 Delay node of 0.0 causes crash
+
+* UE-39137 Crash when Dragging Skeletal Mesh with Apex Clothing into Level
+
+* UE-38998 [CrashReport] UE4Editor_Engine!UMaterialInterface::GetBaseMaterial() [materialinterface.cpp:268]
+
+* UE-38716 Physics are popping in Vehicle Advanced Template
+
+* UE-38989 [CrashReport] PhysX3PROFILE_x64!physx::PxcDiscreteNarrowPhase() [pxcnpbatch.cpp:293]
+
+* UE-38694 Landscape Grasstype warning causes log spam when landscape is streamed in or out
+
+* UE-39278 Assertion failed: !LandscapeActor || LandscapeActor == Landscape
+
+* UE-38900 Paper2d Plugin Content Missing from Content Browser
+
+* UE-39120 ETC2 Android devices are no longer supported in the Google Play Store as of 4.14
+
+* UE-37101 Xbox One: Issues updating texture subregions
+
+* UE-35738 IPv6 implementation is not working on IOS
+
+* UE-39420 QAGame crashes when launched onto Android
+
+* UE-38709 Using Deferred Decal Material With Dbuffer Decal Enabled Crashes Editor
+
+* UE-38223 Crash In Material Editor When Previewing A Node
+
+* UE-39051 Engine crash when Scene Capture Component 2D is added to viewport with forward rendering
+
+* UE-39123 Mac Editor crashes when opening Realistic Rendering sample - FMetalRHICommandContext::RHISetShaderUniformBuffer
+
+* UE-38609 DFAO runs out of memory on xb1 (DX11 RHI) due to an RHI bug
+
+* UE-38699 Material Expression comparison keys incorrect, produces duplicate code
+
+* UE-38325 Tangent Update Feature Not Working
+
+* UE-38768 Contact Shadow artifacts with ray lengths despite length
+
+* UE-34264 Procedural Mesh Component Crashes on XB1
+
+* UE-39132 Crash when adding actors to the level
+
+* UE-38353 Crash while deleteing a UMG Animation Track referencing a deleted UMG asset with duplicated BSPs in-scene
+
+* UE-39067 Oculus Touch controllers jitter when the gamethread runs quickly
+
+* UE-39113 Post process material needs a full RT clear with hmd mask.
+
+* UE-39122 Crash when Simulating in Editor after Painting Foliage
+
+* UEVR-381 Interleaved Compositor: Execute init views before late update
+
+* UEVR-379 Interleaved Compositor: Implementing Post-Present handoff
+
+* UE-38670 New IsA() code can be thread-unsafe during saving
+
+## 4.14.2 Hotfix
+
+Released: 01/04/2017
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.2-release)
+
+Fixes:
+
+* UE-39970 Stat FPS and other text rendering as blocks on android.
+
+* UE-39560 [CrashReport] UE4Editor_Engine!ACullDistanceVolume::CanBeAffectedByVolumes() [culldistancevolume.cpp:62]
+
+* UE-39557 [CrashReport] UE4Editor_Persona!FDelaunayTriangleGenerator::FlipTriangles() [sanimationblendspace.cpp:375]
+
+* UE-39341 Compiling a blueprint with SetCollisionResponseToChannel Causes Crash
+
+* UE-38818 [CrashReport] UE4Editor_D3D11RHI!TerminateOnDeviceRemoved() [d3d11util.cpp:176]
+
+* UE-38772 [CrashReport] UE4Editor-Core.dylib!FThreadStats::FThreadStats()
+
+* UE-38750 Imported Materials Are Not Assigned To Correct Element Index Based Off Mat ID (3dsMax)
+
+* UE-38710 Vehicle physics are resolving erratically and causing random jitter/flips in the Advanced Vehicle Template
+
+## 4.14.3 Hotfix
+
+Released: 01/17/2017
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.3-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.3-release)
+
+Fixes:
+
+* UE-40229 Editor Crashes when importing some FBXs with multiple Material IDs in 4.14.2
+
+* UE-40294 Put fix for UE-39713 into 4.14.3 (Memory leak in GPURealloc)
+
+* UE-40243 Calling FAudioDevice::StopAllSounds from UEngine::CommitMapChange asserts
+
+* UE-40156 PhysX issue causing lag, high ping, and failures
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.JPN.udn
index 6ffae98f8c6c..e3f726c1d410 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.14 Update Notes
+Title: アンリアル エンジン 4.14 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2016/4_14
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..0089f28d7209
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_14/Updates/UnrealEngine4_14UpdateNotes.KOR.udn
@@ -0,0 +1,173 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.14 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2016/4_14
+Order:0
+
+## 4.14.0 릴리즈
+
+릴리즈일: 2016/11/15
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2016/4_14)
+
+## 4.14.1 Hotfix
+
+릴리즈일: 2016/12/08
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.1-release)
+
+픽스:
+
+* UE-35609 매크로에 딜레이 노드를 사용하면 딜레이 도중 잇따른 매크로 호출이 끝나지 않던 문제를 고쳤습니다.
+
+* UE-38690 퇴보 - 소유 씬 컴포넌트를 기존 액터 인스턴스에 인스턴스드 컴포넌트로 추가할 때 중첩된 씬 컴포넌트 서브오브젝트가 더이상 등록되지 않던 것을 고쳤습니다.
+
+* UE-38835 "Visual Studio '15'" 이름을 "Visual Studio 2017" 로 변경했습니다.
+
+* UE-39298 UE4 와 UnrealLightmass 가 SwarmInterface.cpp 의 'metahost.h' 인클루드 파일을 열려고 할 때 발생하는 오류로 Module.SwarmInterface.cpp 빌드 실패 문제를 고쳤습니다.
+
+* UE-39284 GenerateProjectFiles.bat -2017 실행 완료 시 경고가 나던 것을 고쳤습니다.
+
+* UE-38898 UE4 가 Visual Studio 2017 RC 와 호환되지 않습니다.
+
+* UE-38604 PS4 Platform Staging 이 (허용되지 않는) 디버그 파일을 복사하던 문제를 고쳤습니다.
+
+* UE-38992 [CrashReport] UE4Editor_Core!FString::Mid() [unrealstring.h:1154]
+
+* UE-37249 MallocPoisonProxy 가 Debug 와 Development 에서 정렬 할당 시 생길 수 있었던 메모리 스톰프 문제를 고쳤습니다.
+
+* UE-38991 [CrashReport] UE4Editor_Engine!FUObjectAnnotationSparse::AddAnnotation() [uobjectannotation.h:76]
+
+* UE-38752 콘텐츠 브라우저에서 하위 폴더가 있는 폴더를 삭제할 수 없던 문제를 고쳤습니다.
+
+* UE-38721 bShowMouseCursor 가 false 인 경우 마우스 커서 위치가 화면 중앙에 고정되던 것을 고쳤습니다.
+
+* UE-38599 사용자 정의 구조체 에디터가 긴 변수 리스트를 숨기던 것을 고쳤습니다.
+
+* UE-38706 Mac 과 PC 에서 블루프린트 1:1 줌 인 상태가 아닐 때 드롭다운이 잘못 표시되던 것을 고쳤습니다.
+
+* UE-38806 TextRenderComponent 가 있는 커스텀 MID 사용 시 치명적인 어서트가 날 수 있던 것을 고쳤습니다.
+
+* UE-39059 구조체 UI 에 스크롤바가 없던 것을 고쳤습니다.
+
+* UE-39198 마우스로 카메라 뷰를 제어할 때 모션 범위가 제한되던 것을 고쳤습니다.
+
+* UE-11796 콘텐츠 브라우저에서 폴더를 지우면 프로젝트 폴더에서 영구히 삭제되지 않던 것을 고쳤습니다.
+
+* UE-38925 메시가 여럿인 단일 FBX 를 리임포트하면 단일 메시가 아닌 모든 메시 조각이 추가되던 것을 고쳤습니다.
+
+* UE-38935 FBX 를 스켈레탈 메시로 임포트할 때의 크래시를 고쳤습니다.
+
+* UE-38749 버튼에 포커스가 있을 때 Enter 를 치면 UMG 에서 OnClicked 이벤트가 가동되지 않는 것처럼 보이는 것을 고쳤습니다.
+
+* UE-37698 위젯 자체가 아닌 다른 곳에 클릭한 이후 위젯이 더이상 포커스를 받지 못하던 것을 고쳤습니다.
+
+* UE-36766 페르소나의 에임 오프셋 그래프에서 애셋을 열려 할 때의 크래시를 고쳤습니다.
+
+* UE-38811 스프링 암에 붙은 카메라가 Y 축에 +90 또는 -90 도를 넣을 때 떨리던 것을 고쳤습니다.
+
+* UE-38906 자손 액터가 있는 레벨을 스트림 인 할 때의 크래시를 고쳤습니다.
+
+* UE-38518 애니메이션 블루프린트: 노드가 현재 선택된 경우 컴파일 이후 기본값을 변경할 수 없던 것을 고쳤습니다.
+
+* UE-39197 Delay 노드 값이 0.0 이면 크래시가 나던 것을 고쳤습니다.
+
+* UE-39137 Apex Clothing 이 있는 스켈레탈 메시를 레벨에 끌어놓을 때의 크래시를 고쳤습니다.
+
+* UE-38998 [CrashReport] UE4Editor_Engine!UMaterialInterface::GetBaseMaterial() [materialinterface.cpp:268]
+
+* UE-38716 Vehicle Advanced Template 에 피직스 팝핑 현상을 고쳤습니다.
+
+* UE-38989 [CrashReport] PhysX3PROFILE_x64!physx::PxcDiscreteNarrowPhase() [pxcnpbatch.cpp:293]
+
+* UE-38694 랜드스케이프 스트림 인 또는 아웃 시 랜드스케이프 그래스타입 경고가 로그 스팸나던 것을 고쳤습니다.
+
+* UE-39278 어서트 실패: !LandscapeActor || LandscapeActor == Landscape
+
+* UE-38900 Paper2d 플러그인 콘텐츠가 콘텐츠 브라우저에 없던 것을 고쳤습니다.
+
+* UE-39120 ETC2 안드로이드 디바이스가 4.14 이후 더이상 Google Play Store 에 지원되지 않던 것을 고쳤습니다.
+
+* UE-37101 Xbox One: 텍스처 서브리전 업데이트 관련 문제를 고쳤습니다.
+
+* UE-35738 IPv6 구현이 iOS 에서 작동하지 않던 것을 고쳤습니다.
+
+* UE-39420 QAGame 을 안드로이드에서 실행할 때 발생하던 크래시를 고쳤습니다.
+
+* UE-38709 Dbuffer Decal 활성화된 디퍼드 데칼 머티리얼이 에디터 크래시를 내던 것을 고쳤습니다.
+
+* UE-38223 노드 미리보기 시 머티리얼 에디터의 크래시를 고쳤습니다.
+
+* UE-39051 포워드 렌더링에서 씬 캡처 컴포넌트 2D 를 뷰포트에 추가했을 때 발생하던 엔진 크래시를 고쳤습니다.
+
+* UE-39123 Realistic Rendering 샘플을 열 때 Mac 에디터 크래시를 고쳤습니다 - FMetalRHICommandContext::RHISetShaderUniformBuffer
+
+* UE-38609 RHI 버그로 인한 xb1 (DX11 RHI) 에서의 DFAO 메모리 부족 현상을 고쳤습니다.
+
+* UE-38699 머티리얼 표현식 비교 키가 잘못되어, 중복 코드를 만들어내던 것을 고쳤습니다.
+
+* UE-38325 탄젠트 업데이트 기능이 작동하지 않던 것을 고쳤습니다.
+
+* UE-38768 광선 길이 관련 컨택트 섀도 부작용을 고쳤습니다.
+
+* UE-34264 XB1 에서의 프로시저럴 메시 컴포넌트 크래시를 고쳤습니다.
+
+* UE-39132 레벨에 액터를 추가할 때의 크래시를 고쳤습니다.
+
+* UE-38353 씬 내 복제된 BSP 포함 UMG 애셋을 삭제한 것을 레퍼런싱하는 UMG 애니메이션 트랙 삭제 도중의 크래시를 고쳤습니다.
+
+* UE-39067 오큘러스 터치 컨트롤러가 게임스레드를 빠르게 실행될 때 떨리던 것을 고쳤습니다.
+
+* UE-39113 포스트 프로세스 머티리얼이 HMD 마스크로 풀 RT 클리어가 필요하던 것을 고쳤습니다.
+
+* UE-39122 폴리지 페인트 이후 에디터에서 시뮬레이트할 때의 크래시를 고쳤습니다.
+
+* UEVR-381 Interleaved Compositor: 마지막 업데이트 전 init views 실행 문제를 고쳤습니다.
+
+* UEVR-379 Interleaved Compositor: Post-Present 핸드오프 구현 문제를 고쳤습니다.
+
+* UE-38670 새로운 IsA() 코드가 저장 도중 스레드 안전하지 못할 수 있던 문제를 고쳤습니다.
+
+## 4.14.2 핫픽스
+
+릴리즈일: 2017/01/04
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.2-release)
+
+픽스:
+
+* UE-39970 Stat FPS 및 기타 텍스트가 안드로이드에서 블록으로 렌더링되던 문제를 고쳤습니다.
+
+* UE-39560 [CrashReport] UE4Editor_Engine!ACullDistanceVolume::CanBeAffectedByVolumes() [culldistancevolume.cpp:62]
+
+* UE-39557 [CrashReport] UE4Editor_Persona!FDelaunayTriangleGenerator::FlipTriangles() [sanimationblendspace.cpp:375]
+
+* UE-39341 SetCollisionResponseToChannel 설정된 블루프린트를 컴파일하면 크래시가 나던 문제를 고쳤습니다.
+
+* UE-38818 [CrashReport] UE4Editor_D3D11RHI!TerminateOnDeviceRemoved() [d3d11util.cpp:176]
+
+* UE-38772 [CrashReport] UE4Editor-Core.dylib!FThreadStats::FThreadStats()
+
+* UE-38750 임포트된 머티리얼이 (3dsMax) Mat ID 기반 올바른 엘리먼트 인덱스에 할당되지 않던 문제를 고쳤습니다.
+
+* UE-38710 Advanced Vehicle Template 에서 비히클 피직스 리졸브 방식이 잘못되어 무작위 떨림/뒤집힘 현상이 발생하던 것을 고쳤습니다.
+
+## 4.14.3 핫픽스
+
+릴리즈일: 2017/01/17
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.3-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.14.3-release)
+
+픽스:
+
+* UE-40229 4.14.2 에서 Material ID 가 여럿인 FBX 임포트 시의 에디터 크래시를 고쳤습니다.
+
+* UE-40294 UE-39713 (GPURealloc 메모리 누수) 픽스를 4.14.3 에 올렸습니다.
+
+* UE-40243 UEngine::CommitMapChange 에서 FAudioDevice::StopAllSounds 호출 시 어서트가 발생하던 것을 고쳤습니다.
+
+* UE-40156 PhysX 이슈로 랙, 높은 핑, 실패가 발생하던 것을 고쳤습니다.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.CHN.udn
index 313d713a7696..0f009231f9bb 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.CHN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.CHN.udn
@@ -1,7 +1,7 @@
INTSourceChangelist:3303749
Availability:Public
-Title:虚幻引擎 4.15 发行说明
-Description:虚幻引擎 4.15 的发行说明
+Title:虚幻引擎 4.15 版本信息
+Description:虚幻引擎 4.15 的版本信息
Crumbs:%ROOT%, Engine
Parent:Support/Builds
Order:15
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.INT.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.INT.udn
index f7c5fad9c389..33016da5a36b 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.INT.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.INT.udn
@@ -375,7 +375,7 @@ A **Previous Frame Switch** node has been added to support complex vertex animat
YbjqiNZr4K4
[/PARAMLITERAL]
[PARAMLITERAL:width]
- 720
+ 720
[/PARAMLITERAL]
[PARAMLITERAL:height]
408
@@ -384,7 +384,7 @@ A **Previous Frame Switch** node has been added to support complex vertex animat
simple
[/PARAMLITERAL]
[/OBJECT]
-
+th
Material vertex animations that are only a function of time already work without modification but cannot account for other variables, such as material parameters, that affect the animation. The previous frame switch enables artists to solve this problem manually when they can track how these parameters change, for instance in a blueprint.
Note that using this feature requires Accurate velocities from Vertex Deformation to be enabled.
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.KOR.udn
index ec02341156b4..58e3618d6f27 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.KOR.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/ReleaseNotes_4_15.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3303749
+INTSourceChangelist:3403469
Availability:Public
Title: 언리얼 엔진 4.15 릴리즈 노트
Description: Release Notes for Unreal Engine 4.15
@@ -2785,3 +2785,4 @@ Platform-specific release notes for PS4, XBoxOne, and Switch are available in th
**Google Daydream**
* Daydream apps require android-24. This is not installed by default, but can be manually installed with NVPACK\Chooser.exe.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..487f5a88915b
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.CHN.udn
@@ -0,0 +1,118 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.15 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/4_15
+Order:0
+
+## 4.15.0 Release
+
+Released: 02/15/2017
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.15.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.15.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/4_15)
+
+## 4.15.1 Hotfix
+
+Released: 03/20/2017
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.15.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.15.1-release)
+
+Fixes:
+
+* UE-42385 Crash adding an AnimComposite to itself
+
+* UE-41929 Crash on reimport animation when there is an additive animation track and fbx frame number is different
+
+* UE-41921 Crash Re-Importing animation with Additive Layer Tracks after adding a bone to the hierarchy
+
+* UE-41817 Crash when manipulating Bone Space IK before setting EffectorSpaceBoneName
+
+* UE-40025 Inconsistant Line Trace behavior
+
+* UE-42756 UnrealVS not installing correctly for VS2017
+
+* UE-42321 Unable to launch project from Visual Studio using installed engine build
+
+* UE-42411 Resource files are not recompiled when Version.h changes
+
+* UE-42205 Hot reload reported as failed in Visual Studio for projects opened in the Editor after having hot reloads performed successfully previously
+
+* UE-42507 check(PIEInstanceID != -1) fails when executing SeamlessTravel
+
+* UE-42480 SetVectorParameterValueOnMaterials In Construction Script Not Working in Packaged Game
+
+* UE-42459 BP nativization doesn't work with localized text
+
+* UE-42166 Crash when pressing Ctrl-Z after creating a blueprint function
+
+* UE-41893 Child blueprints cannot override functions if their parent was nativized
+
+* UE-41168 Crash opening blueprint when a node class has been removed (e.g., anim blueprint with Ragdoll node with Immediate Mode plugin disabled)
+
+* UE-42209 Incorrect error message when child actor mobility doesn't match
+
+* UE-42253 Enum Element Names Reset on Project Upgrade
+
+* UE-42375 No input received from Raw Input device when packaged for 32bit
+
+* UE-39884 Foliage LODs do not appear to use the base LODs lightmap any longer
+
+* UE-42390 Ad banner is displayed incorrectly on Android 7.0 devices
+
+* UE-42361 Slate UI asset colors washed out on iOS
+
+* UE-42191 Scene Captures not working on Android
+
+* UE-42036 Exposure Is More Extreme In High-End Mobile Preview Modes
+
+* UE-42368 Find Sessions Consistently Returning Results Length of 0
+
+* UE-42452 No textures listed when selecting material
+
+* UE-42789 Rebuilding lighting not saving rebuilt light data
+
+* UE-42196 Static meshes with auto-generated LODs can no longer share lightmaps between LODs
+
+* UE-42179 Crash in FStreamingTextureLevelContext::GetBuildDataIndexRef
+
+* UE-42165 [CrashReport] UE4Editor_Renderer!FReflectionEnvironmentSceneData::ResizeCubemapArrayGPU() [reflectionenvironment.cpp:215]
+
+* UE-42102 Cooked build size increase due to MIC problem
+
+* UE-41950 GitHub 3252 : Added MobileMaterialInterface to UsedMaterials
+
+* UE-29491 Eye Adaption is incorrect at any size other than Fullscreen in PIE
+
+* UE-42554 Regression: Visibility property is not seen in the animation track in UMG
+
+* UE-42210 Crash when using Ctrl+Z to undo a single digit change in the size of a widget
+
+* UE-41829 Crash scrubbing through sequencer when playing montage from old assets
+
+* UE-42665 Update default super search engine to Bing
+
+* UE-42428 Enabling "Show Only Modified Properties" causes details panel menu to disappear
+
+* UE-42312 Crash when saving a Data Table that is referencing itself in a Data Table Row Handle
+
+* UE-35606 Crash when Importing .OBJ using the File > Import into Level Option
+
+* UE-42669 "Package localization ID mismatch during cook!" log spam
+
+* UE-41797 Update to Korean localization
+
+* UE-42106 Edge case where cursor can become hidden in gameplay
+
+* UE-42631 Stereo off while prox sensor uncovered causes low framerate
+
+* UE-42576 Oculus crash on "stereo on" when the proximity sensor is not triggered.
+
+* UE-42101 [daydream] Black screen with FirstPersonTemplate and 4.15P4
+
+* UE-41604 Integrate fix for improper failure case for allocation of RenderTargets in Oculus
+
+* UE-41568 Need to enable GearVR on Win64 platforms
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.JPN.udn
index 22a7d3d4043a..305b5f9d66b4 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.15 Update Notes
+Title: アンリアル エンジン 4.15 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/4_15
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..63532c04cddf
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_15/Updates/UnrealEngine4_15UpdateNotes.KOR.udn
@@ -0,0 +1,118 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.15 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/4_15
+Order:0
+
+## 4.15.0 릴리즈
+
+릴리즈 날짜: 2017/02/15
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.15.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.15.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/4_15)
+
+## 4.15.1 핫픽스
+
+릴리즈 날짜: 2017/03/20
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.15.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.15.1-release)
+
+픽스:
+
+* UE-42385 AnimComposite 을 자신에게 추가할 때 나던 크래시를 고쳤습니다.
+
+* UE-41929 애니메이션 리임포트 시 애디티브 애니메이션 트랙이 있는데 fbx 프레임 번호가 다를 때 나던 크래시를 고쳤습니다.
+
+* UE-41921 계층구조에 본을 추가한 뒤 애디티브 레이어 트랙이 있는 애니메이션을 리임포트할 때의 크래시를 고쳤습니다.
+
+* UE-41817 EffectorSpaceBoneName 설정 전 Bone Space IK 를 조작할 때의 크래시를 고쳤습니다.
+
+* UE-40025 Line Trace 작동방식이 일관되지 않던 것을 고쳤습니다.
+
+* UE-42756 UnrealVS 가 VS2017 에 제대로 설치되지 않던 것을 고쳤습니다.
+
+* UE-42321 설치된 엔진 빌드를 사용하여 Visual Studio 에서 프로젝를 실행할 수 없던 것을 고쳤습니다.
+
+* UE-42411 Version.h 변경 시 리소스 파일이 리컴파일되지 않던 것을 고쳤습니다.
+
+* UE-42205 기존에 핫 리로드가 성공적으로 수행된 이후 에디터에 열린 프로젝트에 대해 Visual Studio 에서 핫 리로드가 실패한 것으로 보고되던 것을 고쳤습니다.
+
+* UE-42507 SeamlessTravel 실행 시 check(PIEInstanceID != -1) 가 실패하던 문제를 고쳤습니다.
+
+* UE-42480 패키지 게임에서 컨스트럭션 스크립트의 SetVectorParameterValueOnMaterials 가 작동하지 않던 것을 고쳤습니다.
+
+* UE-42459 BP 네이티브화가 현지화 텍스트에 작동하지 않던 것을 고쳤습니다.
+
+* UE-42166 블루프린트 함수 생성 이후 Ctrl+Z 를 누를 때의 크래시를 고쳤습니다.
+
+* UE-41893 부모 블루프린트가 네이티브화된 경우 자손 블루프린트가 함수를 덮어쓸 수 없던 문제를 고쳤습니다.
+
+* UE-41168 노드 클래스가 제거되었을 때 블루프린트(예: Immediate Mode 플러그인이 비활성화된 Ragdoll 노드가 있는 애님 블루프린트)를 열면 발생하던 크래시를 고쳤습니다.
+
+* UE-42209 자손 액터 모빌리티가 일치하지 않을 때의 잘못된 오류 메시지를 고쳤습니다.
+
+* UE-42253 프로젝트 업그레이드 시 Enum 엘리먼트 이름이 리셋되던 것을 고쳤습니다.
+
+* UE-42375 32 비트 패키지 시 Raw Input 디바이스에서 입력을 받지 못하던 것을 고쳤습니다.
+
+* UE-39884 폴리지 LOD 가 베이스 LOD 라이트맵을 더이상 사용하지 않는 것처럼 보이던 것을 고쳤습니다.
+
+* UE-42390 안드로이드 7.0 디바이스에서 광고 배너가 잘못 표시되던 것을 고쳤습니다.
+
+* UE-42361 iOS 에서 Slate UI 애셋 컬러가 탈색되어 보이던 것을 고쳤습니다.
+
+* UE-42191 씬 캡처가 안드로이드에서 작동하지 않던 것을 고쳤습니다.
+
+* UE-42036 고사양 모바일 프리뷰 모드에서 노출이 더욱 극단적으로 나오던 것을 고쳤습니다.
+
+* UE-42368 Find Sessions 가 계속해서 길이를 0 으로 반환하던 것을 고쳤습니다.
+
+* UE-42452 머티리얼 선택 시 텍스처가 나열되지 않던 것을 고쳤습니다.
+
+* UE-42789 라이트 리빌드 시 리빌드된 라이트 데이터를 저장하지 않던 것을 고쳤습니다.
+
+* UE-42196 자동 생성 LOD 가 있는 스태틱 메시가 더이상 LOD 끼리 라이트맵을 공유하지 않던 것을 고쳤습니다.
+
+* UE-42179 FStreamingTextureLevelContext::GetBuildDataIndexRef 의 크래시를 고쳤습니다.
+
+* UE-42165 [CrashReport] UE4Editor_Renderer!FReflectionEnvironmentSceneData::ResizeCubemapArrayGPU() [reflectionenvironment.cpp:215]
+
+* UE-42102 MIC 문제로 인해 쿠킹 빌드 크기가 늘어나던 것을 고쳤습니다.
+
+* UE-41950 GitHub 3252 : UsedMaterials 에 MobileMaterialInterface 추가
+
+* UE-29491 PIE 중 전체화면 이외의 크기에서 눈 순응이 제대로 나오지 않던 것을 고쳤습니다.
+
+* UE-42554 퇴보: Visibility 프로퍼티가 UMG 의 애니메이션 트랙에 보이지 않던 것을 고쳤습니다.
+
+* UE-42210 위젯의 크기를 한 자리수 변경한 것을 Ctrl+Z 로 되돌릴 때의 크래시를 고쳤습니다.
+
+* UE-41829 오래된 애셋에서 몽타주 재생 시 시퀀서를 통해 스크러빙할 때의 크래시를 고쳤습니다.
+
+* UE-42665 기본 수퍼 서치 엔진을 Bing 으로 업데이트했습니다.
+
+* UE-42428 "Show Only Modified Properties" 옵션을 켜면 디테일 메뉴가 사라지던 것을 고쳤습니다.
+
+* UE-42312 Data Table Row Handle 에서 자신을 레퍼런싱하는 Data Table 저장 시의 크래시를 고쳤습니다.
+
+* UE-35606 파일 > 레벨로 임포트 옵션으로 .OBJ 임포트 시의 크래시를 고쳤습니다.
+
+* UE-42669 "Package localization ID mismatch during cook!" 로그 스팸을 고쳤습니다.
+
+* UE-41797 한국어 현지화를 업데이트했습니다.
+
+* UE-42106 게임플레이 시 커서가 사라질 수 있었던 희귀한 경우를 고쳤습니다.
+
+* UE-42631 접근 센서가 커버되지 않은 상황에서 스테레오를 끄면 프레임이 낮아지던 것을 고쳤습니다.
+
+* UE-42576 접근 센서가 발동되지 않았을 때 스테레오를 켜면 Oculus 크래시가 나던 것을 고쳤습니다.
+
+* UE-42101 [daydream] FirstPersonTemplate 와 4.15P4 에서의 검정 화면을 고쳤습니다.
+
+* UE-41604 Oculus 에서 렌더 타겟 할당에 대한 잘못된 실패 케이스 픽스를 통합시켰습니다.
+
+* UE-41568 Win64 플랫폼에서 GearVR 활성화를 시켜줘야 하던 것을 고쳤습니다.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.CHN.udn
new file mode 100644
index 000000000000..ba3a73122eea
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.CHN.udn
@@ -0,0 +1,3908 @@
+INTSourceChangelist:3457153
+Availability:Public
+Title: 虚幻引擎 4.16 发布!
+Description: 虚幻引擎 4.16 发行说明
+Crumbs:%ROOT%, Engine
+Parent:Support/Builds
+Order:16
+reference-image: image_18.gif
+reference-image: image_28.gif
+reference-image: image_31.gif
+reference-image: image_35.gif
+
+
+
+## 新增内容
+
+虚幻引擎 4.16 包含一些令人激动的 **新增渲染和动画功能**,针对 **移动和游戏机平台进行了大量的性能改进,还包含无数产品周期质量增强功能**,便于用户更轻松地制作令人印象深刻的环境和交互体验,并能够在更多平台上流畅地运行。
+
+利用出色的新增 **体积雾 (Volumetric Fog)** 功能可以增强环境氛围,此功能能够自动渲染真实的烟雾效果,并且在场景中的任何位置都能保持一致的照明,即使是在大规模场景中表现也毫不逊色。
+
+利用新增的动态 **轻量级刚体** 和 **底层布料仿真** 工具,让角色活灵活现!使用动画修改器、样条曲线解算器、更新后的姿势驱动程序以及对动画系统的许多其他改进,更好地控制动作流。
+
+垃圾回收现在的速度也提高为 **原来的两倍**!UI 渲染性能和 UMG 小部件创建速度也明显提高,用户现在可以创建更加引人注目的界面。**VR 模式**、动画、Sequencer 和其他工具的界面和工作流也已经更新,使得开发流程获得前所未有的简化和流畅体验。
+
+4.16 完全支持 **任天堂 Switch**,已经可以用于进行相关制作!Epic Games 与任天堂联手发布完整的任天堂 Switch UE4 源代码,面向获得批准的开发人员免费开放。要了解更多入门信息,请[点击此处阅读更多内容](http://www.unrealengine.com/en_US/blog/launch-your-game-on-the-nintendo-switch-with-unreal-engine-4-16)。
+
+**DirectX 12 现在是 Xbox One 的默认渲染器**,在本引擎中提供了对平台支持的性能和功能增强。此外,您现在还可以使用 WebAssembly 和 WebGL 2 开发 HTML5 游戏,这种全新的途径在 UE4 中会继续完善。
+
+对于移动开发,现在支持安卓虚拟键盘,并且为蓝图和代码提供了运行时权限。此外,我们还在减少移动应用的可执行文件大小方面取得了重大进步!
+
+除了 Epic 交付的数百项更新之外,本版本还包括由 GitHub 上非常了不起的虚幻引擎开发人员社区提交的 **160 项改进**!感谢以下每一位贡献者对虚幻引擎 4.16 的贡献:
+
+0lento、Akihiro Kayama (kayama-shift)、Alice Robinson (Valkrysa)、Altrue、Andreas Rønning (Sunjammer)、Andrew Gaubatz (e-agaubatz)、Angus Jones (crumblycake)、Artem V. Navrotskiy (bozaro)、Black Phoenix (PhoenixBlack)、Cedric Neukirchen (eXifreXi)、Cengiz Terzibas (yaakuro)、Chris Varnz (chrisvarns)、Christopher P. Yarger (cpyarger)、Damian Nowakowski (zompi2)、DarkSlot、DeanoC、Derek van Vliet (derekvanvliet)、devbm、dodgyville、drelidan7、Gabriel Lima (Gabriel-Lima-O)、Gyeonghwan (conquests)、Hao Wang (haowang1013)、Ilya (ill)、Jackblue (JohnsonJackblue)、James Horsley (mmdanggg2)、Jeff Rous (JeffRous)、Jon Watte (jwatte)、Jørgen P. Tjernø (jorgenpt)、jostster、Kalle Hämäläinen (kallehamalainen)、katze7514、Kevin Kuegler (FrostByteGER)、KrisRedbeard、looterz、Manmohan Bishnoi (manmohanbishnoi)、Marat Radchenko (slonopotamus)、Markyroson、Martin Treacy-Schwartz (the1schwartz)、Matt Edmonds (cleaver404)、Matthew Casey (mdcasey)、Matthias (haimat)、Matthias Hölzl (hoelzl)、Matthias Huerbe (MatzeOGH)、Michael Schoell (MichaelSchoell)、Michał‚ Siejak (Nadrin)、Milan Šťastný (aknarts)、Moritz Wundke (moritz-wundke)、Mustafa TOP (MSTF)、Narendra Umate (ardneran)、Nathan Stocks (CleanCut)、NaturalMotionTechnology、Nick Verenik (nverenik)、Paul Murray (awesomeness872)、pfontain、Phil Christensen (Rastaban)、PrimalJohnScott、projectgheist、Rafael Ortis (rafortis)、Rajko Stojadinovic (rajkosto)、Rama (EverNewJoy)、rhughesgeomerics、Ricardo Rodrigues (RicardoEPRodrigues)、Robert Hagglund (hagglund)、Robert Segal (robertfsegal)、Ryan Pavlik (rpav)、sangpan、Sanjay Nambiar (sanjay-nambiar)、Satheesh (ryanjon2040)、Sean Campbell (scampVR)、Sebastian Axinte (ENiGMA9)、Sébastien Rombauts (SRombauts)、SiebenCorgie、Stefan Zimecki (stefanzimecki)、StefanoProsperi、Stephen Johnson (megasjay)、TaeYoung Cho (valval88)、Timothee Besset (TTimo)、Timothy Hagberg (thagberg)、Tom Kneiphof (tomix1024)、Tom Ward (tomwardio)、TRS-justing、unwitherer、Vladimir (VladimirPobedinskiy)、Vladimir Alyamkin (ufna)、wyhily2010、Yaroslav Shmelev (SoulSharer)、yeonseok-yi
+
+## 主要特性
+
+### 新增特性:体积雾
+
+使用新增的体积雾功能在环境中创建不可思议的氛围!由于支持多种不同的密度,因此可以模拟尘土或烟雾流动于光束之间的效果,任何数量的光束都会影响体积雾。
+
+(w:929 h:529 convert:false)
+
+(w:928 h:510 convert:false)
+
+(w:928 h:510 convert:false)
+
+体积雾支持以下类型的光照:
+
+* 单向光,通过级联阴影贴图实现阴影,或者通过光函数实现静态阴影。
+
+* 任意数量的点和点光源,并伴有动态或静态阴影(如果启用了“投射体积阴影”)
+
+* 单一天空光,利用启用的“距离场环境光遮蔽”实现阴影
+
+* 粒子光照(如果“体积散射强度”大于0)
+
+您可以使用对粒子系统应用的材质,通过新增的“体积范围”设置来控制体积雾。具有体积材质的单一粒子会导致向体积雾添加一个球体的密度。这完全是 3D 效果,毫不吹嘘。多个球形雾状粒子结合材质干扰可以将雾的效果限制在特定范围。
+
+有关设置体积雾的信息,请参阅[本文档](Engine/Rendering/LightingAndShadows/VolumetricFog)。
+
+### 新增特性:基于图像的 (FFT) 高光卷积
+
+使用新增的基于图像的 (FFT) 卷积功能创建真实的高光后处理效果!虚幻引擎 4.16 交付了 FFT Bloom,让美工能够利用自定义的高光内核形状,完全自主掌控强度以达到自己想象的结果。
+
+(w:928 h:485 convert:false)
+
+通过结合使用原始图像的数学卷积和内核图像,这种高光技术可以产生连续反应,例如星爆效果、扩散发光区域。这种基于图像的卷积之所以能产生额外的真实感,是因为它能够使用视觉上很有趣的非对称内核图像。它通常看起来像是有射线条纹的星爆效果,但可以包含睫毛轮廓、散景或者其他失真效果。
+
+**注:** 基于图像的卷积 Bloom 是为了在电影艺术或高端硬件中使用而设计的,而预置(标准)Bloom 应该用于大多数游戏应用。
+
+### 新增特性:距离场照明优化
+
+在最新一代游戏机和中等规格的 PC 上,**距离场环境光遮蔽** 和 **光线跟踪距离场阴影** 现在速度已经 **提高了 30-50%**!这两个功能使您能够在场景中的动态网格上实现更加真实的环境照明和区域阴影。
+
+(w:929 h:513 convert:false)
+
+此外,静态网格 **距离场生成速度也提高为原来的 2.5 倍**,这得得益于 Intel 的 Embree 光线跟踪库的加速。启用了八位网格距离场和压缩网格距离场项目设置时,内存用量也明显降低。
+
+### 新增特性:轻量级刚体仿真
+
+利用新增的 **轻量级刚体角色仿真** 创建大量逼真角色!您现在可以使用新增的高性能 **即时模式** PhysX API 在动画蓝图中模拟物理资产。使用这种仿真的角色也可以与世界中的静态几何体产生碰撞。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ VaxxVsv0Fak
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 新增特性:底层布料仿真
+
+使用新增的底层 NVIDIA NvCloth 布料解析器能够更好地控制布料仿真!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 5BqodzWZIUA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+我们已经将 APEX 布料解析器替换为 NVIDIA 提供的更底层的解决方案 NvCloth。这个新的解析器与之前的 APEX 解决方案的核心解析器类似,只是稍微做了一点行为更改,借助它能够更方便地访问用于惯性设置的仿真数据和额外公开的参数。
+
+### 新增特性:在任天堂 Switch 上发布游戏!
+
+注册的开发人员现在可以构建和发布适用于任天堂 Switch 的游戏了!虚幻引擎 4 提供了可随时投入制作的任天堂 Switch 支持,已通过认证,支持多玩家联网游戏,并允许访问多个渲染管道,例如延迟、移动向前和集群向前,使用户几乎能够交付适合任天堂 Switch 的任何类型的游戏。
+
+[REGION:raw]
+(w:925 h:641 convert:false)
+[/REGION]
+
+### 新增特性:VR 模式 UI 和交互更新
+
+虚幻编辑器中的 VR 模式已彻底改造,现在提供更直观的工作流和编辑体验!
+
+(w:722 h:646 convert:false)
+
+一方面,新型的非对称控制器设置增添了一个改进的新型辐射式菜单,另一方面增添了精度提高的交互激光器,让用户能够快速轻松地处理关卡中的对象。
+
+所有 VR 模式操作,包括所有主要的编辑器功能和 UI 面板,现在都可以从更新后的辐射式菜单进行访问。传送系统也进行了更新,现在可以瞬间移动到某个位置,将大小恢复为默认规模,以玩家的视角进行查看。有关更多信息,请参阅 [https://docs.unrealengine.com/latest/INT/Engine/Editor/VR/GDC2017/](https://docs.unrealengine.com/latest/INT/Engine/Editor/VR/GDC2017/)
+
+### 新增特性:在 VR 中编辑序列
+
+Sequencer 过场动画编辑器现在可以在 VR 中使用了!用户现在可以创建新的序列,在关卡中四处移动对象,并且在这个过程中自动为转换创建序列键。通过拉动时间轴和设置这些键,可以创建过场动画序列和回放,这一切都是可以在 VR 中操作。还可以从 Sequencer UI 或辐射式菜单打开现有的关卡序列并进行回放。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ X4Zw9U20Gw4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* 新增特性!可调整的键使您能够真实地调整世界中的轨迹!
+
+* 辐射式菜单中的“拉动时间轴”选项可以前后播放序列的速度获取控制棒或触控板输入。再次按扳机可以退出拉动时间轴模式。
+
+### 新增特性:VR 模式下的物理仿真
+
+现在可以使用运动控制器与物体交互,**在 VR 模式下模拟物理 Actor**!放置 Actor 装置来模拟物理效果,让物理仿真自己运行以获得真实的散落效果,或者使用运动控制器让 Actor 四处闲逛。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bG2Qf897CBI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 新增特性:VR 模式下的智能咬合
+
+智能咬合使用物体的边界来与场景中的其他 Actor 对齐,使用户能够准确地将它们连接在一起,而无需一直想着网格来构建模块化资产。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ lvqxM1kjubE
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+此功能当前仅在 VR 模式下可用,但我们会在将来的版本中添加对桌面编辑的支持。
+
+### 新增特性:Xbox One 渲染器 DirectX 12
+
+**DirectX 12 现在是 Xbox One 的默认渲染器!** 我们在 DirectX 12 中进行了一系列稳定性和性能改进。这样就可以将其作为默认的 RHI,为针对 Xbox One 开发的游戏带来 **CPU 和 GPU 性能改进**。
+
+(w:556 h:356 convert:false)
+
+#### 切换回到 D3D11
+
+需要切换回到 D3D11 的游戏将需要做如下设置:
+
+1. 修改游戏 defaultengine.ini 中的 bBuildForD3D12
+
+2. 针对 Xbox One 重新构建游戏
+
+3. 重新烘焙内容
+
+**注:** 在将来的版本中将弃用 D3D11 RHI。
+
+### 新增特性:对 WebAssembly 和 WebGL 2 的 HTML5 支持
+
+虚幻引擎 4 现在支持 HTML5 全新的 WebAssembly 标准(也称为 WASM),这是最快最有效的编译和运行网络 C++ 的方法!我们目前使用的是 Mozilla 最新的 Emscripten 工具链 (v1.37.9)。这是一种新技术,并非在所有浏览器中都受到支持,因此将其视为抢先体验功能,需要 GitHub 访问权。
+
+[REGION:raw]
+(w:929 h:630 convert:false)
+[/REGION]
+
+WASM 是一种适用网络应用的新型 JavaScript 代码转二进制格式,能够减小应用下载大小,缩短启动时间,降低内存消耗,提供明显的性能提升。有关 WASM 和浏览器支持的更多详细信息,请前往 [http://webassembly.org/](http://webassembly.org/)
+
+UE 4.16 还添加了对 WebGL 2.0 的支持,该支持基于 OpenGL ES 3.0,提供了更杰出的渲染性能,提高了视觉保真度,并支持更多渲染功能,包括:
+
+* UE4 高端移动特性级别的大多数功能
+
+* 粒子和植物叶子的实例化几何绘图
+
+* 支持多个渲染目标 (MRT)
+
+* 纹理特性,例如,3D 或体积纹理、2D 数组纹理,不再存在非二次幂纹理限制
+
+WASM 和 WebGL 2.0 受 Firefox 52 和 Chrome 57 或更高版本支持(推荐使用 64 位)。请注意,Windows 系统 Chrome 58 中似乎存在一个 bug,有时会导致内存不足错误。我们正在与 Google 通力协作来解决这一问题。请参阅 [UE-44727](https://issues.unrealengine.com/issue/UE-44727) 以了解有关该问题的最新状态。
+
+您可以在 HTML5 项目设置的 Emscripten 部分中启用 WASM 和 WebGL 2.0。如果需要最广的浏览器支持,请继续使用 ASM.js 和 WebGL 1。*在即将发布的引擎中将放弃对 ASM.js 和 WebGL 1 的支持,之后会将其删除(确切时间取决于其他浏览器支持)。*
+
+请观看在线演示:[试着用 HTML5 制作禅意花园](https://hacks.mozilla.org/2017/03/firefox-52-introducing-web-assembly-css-grid-and-the-grid-inspector/),用自己的 Firefox 或 Chrome 浏览器(上述所列的受支持版本)抢先体验这些好处。
+
+### 新增特性:垃圾回收速度翻倍
+
+垃圾回收性能已经明显改善,现在 **速度是原来的两倍!** 具体的改进包括:
+
+* 可访问性分析多线程已重新设计,现在能够降低任务管理的开销。
+
+* 垃圾回收集群现在支持蓝图生成的类和所选 Actor 类型。
+
+* Uobject 非散列代码已经优化,缩短了销毁 Actor 所用的时间。
+
+### 新增特性:运动身体与仿真本体
+
+现在用户能够使用运动身体与仿真本体。现在可以使用完全由动画数据驱动的子骨骼,例如角色的手,而这些骨骼的本体也可以由物理仿真数据驱动。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ qiiOU_fhex0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+这样就可以实现很酷的效果,例如,当有滚落的石头朝着玩家身体冲过来的时候,玩家做出攀岩响应。
+
+### 新增特性:平台 SDK 升级
+
+在每一个版本中,我们都会更新引擎以支持平台伙伴的最新 SDK 版本。
+
+[REGION:raw]
+(w:929 h:522 convert:false)
+[/REGION]
+
+* **Visual Studio:** 要点:在本版本中,Windows 上不再支持 Visual Studio 2013。请升级到 Visual Studio 2015 或 Visual Studio 2017。
+
+* **任天堂 Switch:** 支持任天堂 SDK 1.3.1
+
+* **Xbox One:** 根据 2016 年 10 月 QFE3 XDK 构建
+
+* **PlayStation 4:** 已升级到 PSR SDK 4.508.001 SDK
+
+* **安卓:** 已更新 CodeWorks for Android 1R6u1
+
+* **GoogleVR:** 已将插件更新到 V1.3
+
+* **GoogleVR:** SDK 已更新到 1.40.0
+
+* **GoogleVR:** 默认模式更改为 Daydream 和 Cardboard
+
+* **Vulkan:** 将可分发文件和语言处理更新到 SDK 1.0.39.1
+
+### 新增特性:Sequencer 镜头轨道增强
+
+Sequencer 中的镜头轨道在过场动画和影片创建方面进行了一些改进!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ GqfJxD1DY8I
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* **基于镜头的等级偏差:** 在默认情况下,关卡序列层次结构中较低级别的轨道具有优先权。这让电影制作人能够构建一个自己惯用的管道,镜头调整将覆盖镜头所在序列中的轨道。
+
+* **针对所有轨道公开“完成时”属性:** 这让用户能够指定在序列完成时,轨道是应该将值恢复为制作动画之前的状态,还是保持不变。在电影制作环境中,通常需要镜头中的动画值恢复为制作动画之前的状态,这样就不会渗入到下一个镜头。在过场动画中,可能需要值一致保持下去,这样就可以从 Sequencer 动画状态直接进入到游戏中。
+
+* **预卷/后卷:** 预卷和后卷现在是所有轨道的笼统概念。某些轨道具有特定的行为,例如,镜头切换轨道会在预卷评估期间通知流系统下一个将要出现的镜头切换位置。
+
+### 新增特性:Sequencer 中的材质参数集合动画
+
+用户现在可以在 Sequencer 中对材质参数集合制作动画,这样就可以全面的把控动画标量和矢量参数,从而在任意数量的材质中引用这些参数。无需再针对每个材质实例对各个参数值制作动画来共享动画。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ u_Cpqz7mFuM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 新增特性:改进了 UI 渲染性能
+
+使用失效面板的游戏现在可以选择仅缓存小部件元素,而不是渲染数据,这样就能够体会到大幅改进的纹理批处理的好处,并且能够显著减少绘图调用。结果是在移动设备上显著提高性能!
+
+[REGION:asyncgif]
+(w:456)
+[/REGION]
+
+
+在《战争机器》英雄选择 UI(上图)上,每个应用的逻辑元素都可以缓存,但也可以进行批处理。游戏机变量 Slate.CacheRenderData=0 可以启用这种模式,现在在移动设备上这是默认模式。
+
+### 新增特性:改进了动画姿势驱动程序
+
+我们对姿势驱动程序功能进行了许多改进,使用户能够以程序方式,比较一组骨骼和另一组参考“目标”的姿势,驱动混合形状或骨骼。这在某些部位尤其有用,比如在肩膀位置,可能需要根据上臂和肩膀的姿势来激活校正变形目标。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ sjtbvyDdW9w
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* 现在可以选择多个骨骼作为“输入”来读取姿势
+
+* 现在可以选取应由节点修改的骨骼
+
+* 可以指定“自定义曲线”来表示应如何激活每个目标
+
+* 可以选择直接驱动曲线(变形、材质),而不需要姿势资产
+
+* UI 已改进为允许创建/编辑目标姿势,用于显示目标激活的条形等等
+
+* 现在可以单击视口中的目标位置以将其选中
+
+### 新增特性:材质扁平化的不透明和不透明蒙版
+
+我们添加了对使用 Actor 合并工具或分层 LOD 系统时 **烘焙掉不透明(蒙版)值** 的支持。产生的(实例化)材质使用配置好的混合模式,确保它采用正确的渲染路径。以下是烘焙掉蒙版材质的示例:
+
+(w:904 h:740 convert:false)
+
+### 新增特性:改进了网格绘图工具
+
+网格绘图系统进行了大幅改造,改进了易用性,现在更加清晰明朗,允许在编辑器的其他部分复用此功能。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ UezYKhase9g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+此外,绘图工具现在也可以在骨骼网格上使用!请注意,绘图*并不*以实例为基础(与静态网格形成对比),而是直接应用于骨骼网格资产。
+
+### 新增特性:样条曲线解算器
+
+动画蓝图中新增了一个样条曲线节点,用于控制角色样条或骨骼链!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ chqOk4QdPR0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+### 新增特性:在网格表面上检测材质
+
+我们为组件添加了一个新功能“从面部索引获取材质”,使用户能够在执行(复杂的)线路跟踪之后检索应用到组件的材质。该功能支持用于静态网格、程序网格组件和 BSP。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ SvsSnkwB1TQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 新增特性:“观看”动画节点改进
+
+“观看”节点的 **观看位置** 属性可以相对于骨骼或骨臼使用。之前在指定骨骼或骨臼时,这个值是被忽略的。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 3C7Q6JJxmtY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+“观看”控制的可视化也进行了改进。例如,您可以看到夹角、目标位置、插值等等。
+
+### 新增特性:动画导出改进
+
+我们添加了对创建和导出动画的支持,这些动画可以包含根据指定给骨骼网格的后处理图形生成的额外动画数据,例如,用于物理仿真的动画动态效果。
+
+要包含此类额外数据,请从 **创建动画** 或 **导出动画** 菜单中选择 **预览网格**。
+
+(w:697 h:256 convert:false)
+
+### 新增特性:虚幻音频引擎(抢先体验预览)
+
+GDC 宣布的全新虚幻音频引擎已在 PC、Mac、iOS、安卓和 Switch 上推出了抢先体验版本。它包含跨平台混音器,完全向后兼容现有的音频引擎功能套件,包括新的多平台 EQ 和混响大师级效果。此外,新的虚幻音频引擎还引入了一些新功能,例如,次混音图、次混音效果、源效应、实时合成以及更优秀的音频插件支持。
+
+在 4.16 中默认不会启用新增的虚幻音频引擎,因为我们还在继续开发针对游戏机平台、Linux 和 HTML5 的实现后端,以及稳定性和性能改进,尤其是在移动平台上。
+
+要启用混音器,请使用命令行参数“-audiomixer”。
+
+注:如果在启动编辑器时没有启用混音器,那么大部分新的虚幻音频引擎功能都是隐藏的。
+
+#### 新增特性:合成插件(抢先体验)
+
+新的合成插件包含两个以新的虚幻音频引擎“SynthComponent”类编写的新实时合成器,用于实现功能全面的精简合成器以及实时成粒器。这些新的合成器不仅对过程音乐和声音设计十分有用,而且也充分展示了第三方插件制造商和声效设计师如何实现自己的合成效果。
+
+合成插件还包含大量的新 DSP 源效应和次混音效果,可以与新的虚幻音频引擎配合使用:
+
+* **源效应:** 立体声延迟、Bit Crusher、动态处理器、包络跟随器、EQ 过滤器、虚拟模拟过滤器(Ladder/State 变量)、波形速形器、合唱、相位器
+
+* **次混音效果:** 混响、EQ、动态处理器
+
+### 新增特性:Steam 音频(抢先体验)
+
+Epic 和 Valve 联手发布了第一个完全集成的 Steam 音频 SDK 实现,利用了新虚幻音频引擎的新功能。
+
+(w:600 h:160 convert:false)
+
+Steam 音频基本上是集成了新虚幻音频引擎的空间化、遮蔽和混响系统,为 UE4 VR 带来了全新的基于物理的音频体验。这是 Steam 音频的抢先体验版本,其中包含计划在 4.17 发布的重要更新、更多示例项目和工作流改进。Epic 和 Valve 期待各种反馈、疑问、想法或改进意见。
+
+请访问 [https://valvesoftware.github.io/steam-audio/](https://valvesoftware.github.io/steam-audio/) 以了解有关 Steam 音频的更多信息、文档和支持帮助。
+
+### 新增特性:改进了颜色分级工具
+
+颜色分级用户界面已经改进,现在使用起来更加简单!
+
+(w:529 h:257 convert:false)
+
+* 添加了新的 HSV 模式。
+
+* 现在可以使用 Ctrl+拖动滑块,根据滑块的类型动态更改其最小值/最大值。
+
+* 添加了新的重置按钮,用于重置整个颜色分级类别。(即,全局、阴影、中间色调、高亮色)
+
+### 新增特性:改进了动画混合空间编辑器
+
+混合空间编辑器现在允许用户使用网格内部的 **显示动画名称** 按钮来显示每个样本的动画名称。用户现在可以将动画拖放到现有样本的上面以将其替换。
+
+[REGION:asyncgif]
+(w:905)
+[/REGION]
+
+### 新增特性:本地化字符串表
+
+UE4 现在支持本地化字符串表!
+
+(w:601 h:218 convert:false)
+
+字符串表提供了一种将本地化文本集中到一个(或多个)已知位置的方法,然后以一种稳定的方法,在其他资产或代码中引用字符串表中的条目,从而轻松地复用本地化文本。字符串表可以使用 C++ 定义,通过 CSV 文件加载,也可以创建为资产。
+
+### 新增特性:动画修改器(抢先体验预览)
+
+动画修改器使用户能够对给定动画序列或骨骼应用一系列动作,例如精确定位右脚踩到地面时的帧,将动画同步标记添加到 ball_r 骨骼位于其最低点(接触到地面)时的帧。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ YC_UJuO9AI8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+动画蓝图功能库中提供了一组用于访问特定动画数据的一组新功能。访问和应用动画修改器可以通过骨骼编辑器和动画编辑器中的一个新选项卡来执行。动画修改器可以添加到骨骼或动画序列。对于动画序列,动画修改器仅应用到序列本身。当应用于骨骼时,它应用于基于该骨骼的所有动画序列。
+
+### 新增特性:安卓虚拟键盘(抢先体验预览)
+
+安装现在支持使用操作系统的虚拟键盘来取代弹出的对话框输入框!
+
+[REGION:asyncgif]
+(w:256)
+[/REGION]
+
+
+要启用虚拟键盘,可选中 **项目设置 > 平台 > 安卓 > APK 打包** 下的复选框。该选项启用对虚拟键盘的基本支持,但输入元素是否可见,而不会被虚拟键盘遮挡,则使用提供的 OnVirtualKeyboardShown 和 OnVirtualKeyboardHidden 事件处理程序由应用程序自行保证。
+
+**注:** 如果用户使用的语言要求使用 IME,那么可能需要使用 Android.NewKeyboard 控制台变量禁用虚拟键盘。
+
+### 支持安卓运行时权限
+
+虚幻引擎 4 现在支持安卓 23 及更高版本要求的运行时权限,以访问需要 Google 归类为危险的权限的功能。这包括访问联系人、照片、电话状态、外部存储、照相机和定位服务。请参阅以下网页以了解详细信息:[https://developer.android.com/guide/topics/permissions/requesting.html](https://developer.android.com/guide/topics/permissions/requesting.html).
+
+如果目标系统是安卓 23,那么安卓运行时权限插件现在能够在运行时通过原生代码进行检查,或者如果已经授予了权限,可以使用 **检查安卓权限** 蓝图节点进行检查。如果尚未授予权限,应用可能会使用 **请求安卓权限** 蓝图节点向用户申请该权限,然后使用绑定到 **授予权限时的动态委托** 的事件获取结果。这样就可以在游戏要求使用需要权限的功能之前授予权限,从而改善用户体验。如果目标系统是安卓 23 之前的版本,可以照常在 Android Manifest 中指定权限来授予权限。
+
+(w:718 h:346 convert:false)
+
+**注:** 4.16 要求安装安卓 SDK 23 或更高版本。如果还没有安装该级别的 SDK,可以在 Engine/Extras/AndroidWorks 目录中找到 CodeWorksforAndroid-1R6u1 安装程序。此外,在“项目设置”下的 Android SDK,请将安卓 SDK API 级别从 matchndk 更改为 latest。这样可以确保 UE4 使用在安卓 SDK 平台目录中找到的最新安装的 SDK。无需更改 NDK API 级别,android-19 是允许在 Lollipop(安卓 5.0)之前的安卓版本上安装 APK 的正确级别,如果设置为更高的级别会导致应用要求使用安卓 5.0+。
+
+### 用于减小包大小的着色器代码库
+
+现在可以使用 **共享材质着色器代码** 项目设置为所有着色器代码启用共享存储位置,这样就会为产生相同着色器代码的材质或材质实例存储单一副本。
+
+某些平台(例如 iOS、TVOS 和 MacOS 上的 Metal)支持更高效的特定于平台的着色器库。启用 **共享材质原生库** 项目设置,可以利用这种原生库格式,从而进一步减小包大小。
+
+### 新增特性:从 FBX 导入关节囊碰撞
+
+现在可以从 FBX 文件导入关节囊简单碰撞,方法就像导入箱子、球体和凸面简单碰撞一样。现在可以在关节囊多边形网格上使用“UCP”前缀,导入时会将其删除,替换为对应的关节囊碰撞形状。
+
+### 新增特性:共享与本地资产查看器配置文件的选项独立开来
+
+虚幻编辑器现在支持在共享或本地级别存储资产查看器配置文件,使团队能够轻松地使用一组共享配置文件作为统一场景来评估美工资产。在本地级别存储配置文件能够确保用户仍可以使用一组自己想要在本地使用、但团队不需要的自定义配置文件。共享配置文件存储在 *DefaultEditor.ini* 中,要求用户检出或者将其设置为可写入才能使用。
+
+### 新增特性:改进了动画预览场景
+
+我们对动画工具的预览场景进行了若干改进:
+
+* 预览场景设置已经移到了现有设置选项卡,而不是位于视口的隐藏菜单中。该设置选项卡现在默认为显示状态。
+
+* 主工具栏中添加了快速切换预览网格的快捷方式。适用于所有动画编辑器。
+
+* 在添加预览场景时,无需再为了预览额外网格而创建“预览场景集合”资产。现在如果对网格设置感到满意,可以选择将其保存到资产。
+
+### 新增特性:向动画查看器添加了默认摄像机选项
+
+现在可以保存骨骼网格的“默认摄像机”位置。这适用于打开网格的情况,也可以通过按 Shift+F 来直接进行保存。
+
+### 新增特性:播放蒙太奇蓝图节点
+
+**播放蒙太奇** 是一个新增的异步节点,可以在任何蓝图逻辑中用于播放动画蒙太奇。它方便用户访问某些回调事件,让用户能够在蒙太奇混出、中断等情况下触发其他节点
+
+(w:376 h:272 convert:false)
+
+* 当蒙太奇完成播放并完全混出时,调用 OnCompleted。
+
+* 当由于自动或手动停止导致蒙太奇开始混出时,调用 OnBlendOut。
+
+* 当由于被另一个蒙太奇播放而中断导致蒙太奇开始混出时,调用 OnInterrupted。
+
+* 当使用蒙太奇资产中的“播放蒙太奇通知”或“播放蒙太奇通知窗口”动画通知时,调用 OnNotifyBegin 和 OnNotifyEnd。这些动画通知可以携带额外的“通知名称”以区分来自同一蒙太奇的不同回调。
+
+### 新增特性:为重定位姿势添加了选项
+
+现在可以从姿势资产导入要在设置重定位基本姿势时使用的姿势。原来用于修改和保存当前姿势(使用当前姿势)和将骨骼转换重置为参考姿势(重置)的选项仍然可用。
+
+**注:** 您可以在动画编辑器中创建姿势资产,并以指定的名称在姿势资产中插入任何姿势。
+
+### 新增特性:静态网格编辑器中的静态视图选项
+
+静态网格编辑器工具中现在提供了一些独立的选项,用于查看静态网格的简单和复杂碰撞。
+
+### 新增特性:LOD 中的烘焙姿势
+
+虚幻引擎 4 现在支持使用一个新的缩减设置“烘焙姿势”在 LOD 级别中烘焙姿势。这可以设置为单帧动画序列,以应用到所产生的 LOD 网格。事实证明,在删除骨骼并仍想保留姿势时特别有用。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0fcNitNu9FE
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ 简单
+ [/PARAMLITERAL]
+[/OBJECT]
+
+**注:** 该功能要求使用 Simplygon
+
+### 新增特性:Sequencer 用户界面改进
+
+音频轨道缩略图现在可以通过内部(平滑)RMS 曲线呈现峰值样本。音频轨道现在也可以纵向调节大小!
+
+[REGION:asyncgif]
+(w:929)
+[/REGION]
+
+
+其他 Sequencer UI 改进:
+
+* Sequencer 控制的 Actor 现在输出到关卡中时能够正确地做好标记。
+
+* 现在可以为事件轨道指定额外的事件接收方(即 Actor 蓝图)。
+
+* 绑定改进。现在可以在蓝图中为关卡序列拖拽/放置/设置绑定。例如,可以在蓝图中衍生对象,并将其指定到现有轨道。
+
+### 新增特性:移动 VR 渲染改进
+
+现在对三星 Gear VR 支持直接多视图,当使用移动多视图时,删除了额外的渲染目标和全屏复制,改进了总体性能,降低了内存用量。
+
+在 Gear VR 上启用了多视图后,可以使用平面远场,确保以最佳效果呈现场景的立体渲染部分。
+
+Google Daydream 支持标准移动多视图,将来版本中将提供直接支持。
+
+### 新增特性:PlayStation VR 的社交屏幕(抢先体验预览)
+
+PSVR 社交屏幕预览提供了对社交屏幕独立模式的支持,即显示器和 HMD 显示屏是不相同的。
+
+该预览支持 30fps 的社交屏幕输出,还支持切换几种不同的输出模式。实现了以下样本模式:
+
+* SystemMirror(这是始终存在的默认镜像模式)。
+
+* SeparateTest(仅在社交屏幕上进行黑白切换)。
+
+* SeparateTexture(显示蓝图指定的纹理,例如,场景捕获组件写入的渲染目标)。
+
+* SeparateMirror(显示完整的 VR 渲染缓冲)
+
+将来的工作包括优化、针对这些功能的多平台接口、可能支持 60fps 模式(这要求系统对话框解决与某些系统功能的冲突)。
+
+新的 PSVR 项目设置 bEnableSocialScreenSeparateMode 必须设置为 true 才能使用此功能。当此设置为 true 时,会为社交屏幕分配额外的屏幕缓冲。搜索“SocialScreen”可以找到用于控制此功能的蓝图功能。
+
+### 新增特性:安卓可执行文件大小降低
+
+我们对编译器和链接器设置进行了一系列优化,减小了安卓二进制可执行文件的大小。选中 **以隐藏符号可见性进行构建** 选项后,在生成安卓可执行文件时,链接器会更加积极地从虚幻引擎中删除不使用的代码。这样也会从符号表中分离出功能符号,从而进一步减小可执行文件的大小。预计最终 APK 会减小大约 7MB。
+
+**注:** 该选项会从设备上的二进制文件中删除一些符号,因此 logcat 输出中会显示一些没有任何符号的本机冲突调用堆栈。为了帮助排除故障,构建系统也会将含有除错符号的未分割二进制文件复制到输出目录,同时生成一个批处理文件以将这些符号添加到调用堆栈。
+
+### 新增特性:顶点插值器材质表达式节点
+
+在材质图形中添加了顶点插值器节点,现在用户可以更好地控制顶点和像素画之间的插值。添加这些节点是为了改进工作流,因此插值器限制并没有变化,着色器也未进行更改。
+
+用于将工作转移到顶点着色器的现有工作流利用自定义 UV 输出。这样可能有点麻烦,而且还要手动打包数据。以下材质示例将预先经过皮肤处理的网格数据打包,然后再解包以在某种效果中使用:
+
+(w:766 h:665 convert:false)
+
+新的插值器节点会自动处理打包,因此能够简化并插入图形:
+
+(w:776 h:357 convert:false)
+
+之前通过自定义 UV 打包的工作现在会链接到 VS(顶点着色器)引脚,然后从 PS(像素着色器)引脚检索。
+
+材质统计输出已更新为显示最新的插值器用量,包括目前已打包和可用的最大值。请注意以上示例中指令的计数方式,而且插值器用量保持不变。统计显示 TexCoord[0] 节点保留了 2 个标量,其余 6 个由预先经过皮肤处理的数据保留,因此在 2 个矢量中总共打包了 8 个标量。
+
+该功能与自定义 UV 兼容,并且会将结果打包在一起。
+
+### 新增特性:资产管理框架(抢先体验预览)
+
+资产管理器是一个新增的全局对象,用于在编辑器中或在运行时发现、加载和审计地图以及特定于游戏的资产类型。它提供了一个框架,便于用户创建类似任务、武器或英雄之类的内容,并按需装入。现在仍在开发中,这些功能还没有准备就绪,不适用于只使用蓝图开发的游戏或者经验不足的开发人员,预计将于 4.17 正式推出。项目设置中的资产管理器选项卡可以用于建立游戏的规则:
+
+在运行时,可以查询资产管理器扫描的主资产类型,然后再进行加载,之后就可以根据需要异步加载。此外,在打包和发布游戏时,资产管理器设置也可以用于建立烘焙和分块规则。AnswerHub 上提供了有关此功能的仍在编写的文档:[https://answers.unrealengine.com/questions/595580/what-is-the-asset-manager.html](https://answers.unrealengine.com/questions/595580/what-is-the-asset-manager.html)
+
+### 新增特性:资产审计窗口(抢先体验预览)
+
+资产审计窗口是基于资产管理框架构建的,可以一次性审计大量资产的磁盘大小、内存用量和一般资产属性。这是内容浏览器的专用版本,可以从 **窗口 > 开发人员工具** 菜单进行访问,也可以通过内容浏览器或参考查看器中的右键单击菜单访问。打开窗口后,可以使用各个按钮添加资产,在烘焙资产注册表之外装入的平台数据可以使用平台下拉菜单进行加载。以下是从 PS4 上的射击游戏样本中截取的审计纹理示例:
+
+(w:929 h:289 convert:false)
+
+### VR:VR 的统一游戏机命令
+
+我们整合并统一了各个 VR 平台的游戏机命令,创建了一个共享层供开发人员使用,而不必单独维护每一种平台。
+
+这样有以下好处:
+
+* 启动新平台更加简单。
+
+* 各个 HMD 的参数含义更加一致。
+
+* 当前 HMD 实现的冗余减少。
+
+* 所有 VR 相关的游戏机命令使用通用的前缀“vr.”。在命令名中清晰地标记了特定于供应商的扩展名。
+
+* 更新后的游戏机命令支持补全和内联用法帮助文本。
+
+在过渡期间,仍能够识别旧版游戏机命令,但使用时会发出不推荐使用的警告。
+
+### 自定义硬件指针
+
+现在 Windows、Mac 和 Linux 上支持平台原生自定义硬件指针!您可以设置硬件指针以在项目的用户界面设置中使用。
+
+系统允许用户为指针提供多种格式。例如,您可以在设置中指定使用“Slate/FancyPointer”作为默认指针。在游戏内容文件夹的 Slate 目录中,会有 FancyPointer.png + .cur + tiff,用于包含某些平台的多分辨率解析功能。Mac 上将装入 tiff,Windows 上使用 cur/ani 文件,如果没有找到我们支持的特定于某一平台的格式,将查找 png。
+
+### 快速创建小部件
+
+UMG 小部件创建速度现在提高为三倍!在烘焙时,小部件编译器现在会生成小部件模板/原型,与所生成的蓝图类存储在同一个包中,并在小部件创建期间使用。
+
+**技术细节**
+
+在编译期间,我们生成了一个几乎完全初始化的小部件树,包含所有子用户小部件及其树,连接了所有成员变量,初始化了指定槽,设置任何动画等等。这个几乎完全构造的小部件可以进行实例化以用作原型,但不一定要使用对应的慢速 StaticDuplicateObject 路径。
+
+这种方法存在一些限制,如果用户忘记在子对象属性上设置“已实例化”,小部件的部分编译步骤现在会检验实例化是否成功,实例化之后是否存在 GLEO 引用。幸运的是,这种情况应该少之又少,因为所有的 UVisuals(小部件和槽)现在都是 DefaultToInstanced,这样就解决了一些不可避免的要求有已实例化标志的情况。尤其是在原生代码中使用 BindWidget 的很多情况。
+
+译者: 版本更新 changelist 详单并不翻译。欢迎跳转 [论坛中文版面](https://forums.unrealengine.com/forumdisplay.php?16-China) 讨论。
+
+## Release Notes
+
+### AI
+
+* New: Added a profiler for Environment Query System (EQS) that can be accessed through the tabs of the EQS Editor.
+
+ * It collects data automatically during game sessions as long as UES_EQS_DEBUGGER define is set. This includes options for average and max execution time of each step (including breakdown of composite generators), number of items processed by each step, and average frequency of running, which can be useful to identify how often fail safes are actually running.
+
+ * It collects tick load data when USE_EQS_TICKLOADDATA define is set. Each query can store up to 16384 records in cyclic buffer (~4.5 minutes at 60 FPS) showing percentage of EQS tick spent on processing it. This is displayed on the graph in EQS editor tab.
+
+ * A console command has been added, "DumpEnvQueryStats", that saves current EQS profiler data to a file (project's Logs folder, .ue4eqs extension), which can be later loaded and inspected in the EQS Editor.
+
+* Bugfix: Fixed an issue with Blackboard Key Selector's "Init Selector" that resulted in it picking the first value from the Blackboard rather than the appropriately typed one.
+
+* Bugfix: Gameplay Task Resource's Auto Resource ID initialization is no longer cleared during Hot Reload.
+
+* The "Get AI Controller" is now a pure Blueprint Function.
+
+* Exposed Brain Component's "Is Running" and “Is Paused†functions to Blueprint.
+
+* Clamped AI Sight's peripheral vision angle as well as changed the UI to not allow values outside of the 0-180 range.
+
+* Disabled collision on Nav Modifier Volumes. Previously they had an 'Overlap All' response and generated overlap events. They are only supposed to be used for preventing navmesh generation, but overlap events could affect gameplay and are also bad for performance.
+
+* Made "Skip Agent Height Check When Picking Nav Data" option ignore height when picking nav data for agents. It now picks solely based on the radius when this is enabled.
+
+#### Behavior Tree
+
+* Bugfix: Added safeguards to prevent crashes resulted from Blackboard keys being names being longer than 1024 characters.
+
+* Bugfix: Fixed an issue in dynamic Behavior Tree injection that was causing unexpected behavior when the main BT had more BT injection points.
+
+* Bugfix: Fixed an issue in Blackboard key instantiation that resulted in the instanced key never being used and BB operations always referring to the original BB entry.
+
+### Debugging Tools
+
+* The Gameplay Debugger's input detection has been adjusted so that Tap and Hold work correctly in fixed timestep mode.
+
+### Navigation
+
+* Added a flag to Recast Navmesh, "Allow Nav Link As Path End", that is used to control whether path corridors can end on a navigation link or not. This may happen with partial paths and not usually desired behavior. Navigation links at the end are not allowed by default.
+
+* The Blueprint functions "Project Point To Navigation", “Get Random Reachable Point In Radiusâ€, and “Get Random Point In Navigable Radius†all return booleans determining if the projection/generation was successful, as well as the vector value that describes the requested point.
+
+* Bugfix: Fixed a memory leak in navmesh generators.
+
+* Bugfix: Fixed an issue that resulted in losing user settings in Static Mesh's navigation export (Nav Collision object) after changing any property of the Static Mesh.
+
+* Bugfix: Hand-placed AI pawns now get their Path Following Component's "My Nav Data†variable set properly.
+
+* Bugfix: Fixed an issue with missing update of navigation area after duplicate or undo operations on Nav Link Proxy and Nav Link Component.
+
+* Bugfix: Corrected the handling of path following requests by Floating Pawn Movement.
+
+* Bugfix: Fixed an issue with parameters of geometry trace handling drop-down navigation links. All components blocking on ECC_WorldStatic channel will now report a valid hit.
+
+* BugFix: HLOD's navigation collision exporting no longer causes unnecessary log output about NavCollision instances in cooked builds.
+
+#### Animation
+
+* New: You can now rename Virtual Bones.
+
+* New: You can now change Virtual Bones so that you can have a Virtual Bone that is a child of another Virtual Bone.
+
+* New: Added "Get Body Target Transform" to the Physical Animation component, which will return the goal transform that a particular body is trying to get to.
+
+* New: Control rig Sequences can now be exported to Anim Sequences.
+
+* New: Preview Scene settings have been exposed in the existing settings tab rather than in a hidden menu of the viewport.
+
+* New: Support for "Curve Source" nodes to find source components on other Actors. It now searches for the property name rather than the component name.
+
+* New: Added "Set Preview Mesh" to the toolbar for all animation related Editors.
+
+* New: Updated Alembic Third-party libraries to the latest versions.
+
+* New: Added functionality to try and match in-engine Material asset names to FaceSet names found inside of an Alembic cache to automatically assign the correct Materials.
+
+* New: The Alembic Importer now supports Vertex Color data.
+
+* New: Added functionality to inform about changes to source data when reimporting your animation data from FBX. It now checks for the following:
+
+ * Whether or not the sequence length has changed.
+
+ * Whether or not previously-imported curves exist in the source data.
+
+* Bugfix: Fixed a crash when trying to implement a function in a child Anim Blueprint.
+
+* Bugfix: Fixed a crash when debugging a null Animation Sequence.
+
+* Bugfix: Trying to access a skinned vertex position on a mesh when using Master Pose component no longer crashes.
+
+* Bugfix: Attempting to bind to Skeletal Mesh with Anim Blueprint already set no longer crashes.
+
+* Bugfix: Fixed a crash and effector selection issue for two-bone IK.
+
+* Bugfix: Right-clicking the empty space in the asset shortcut drop-down no longer crashes.
+
+* Bugfix: Removed an ensure (warning) by reverting to default unit vectors if zero-sized lookat/lookup vectors are specified for a "Look At" node.
+
+* Bugfix: Removed a crash when clearing an animation of a 1D blendspace sample.
+
+* Bugfix: Crash fix to import code for Alembic Caches with the HDF5 backend.
+
+* Bugfix: Fixed an issue when adjusting curves in the Anim Curves tab using a slider when they are not currently selected.
+
+* Bugfix: Fixed an issue with Update Rate Optimization update rate being too high. Now we use int, so if you have a high update rate it still can go until it wraps around.
+
+* Bugfix: Child Anim Blueprints can now be retargeted.
+
+* Bugfix: Fixed flipping transforms when mirrored.
+
+* Bugfix: Post Process instances are now appropriately updated, even when the main Anim Instance is not using parallel update.
+
+* Bugfix: Fixed an issue where running the Editor in a different culture could break pins on nodes that have optional arrays of pins (ie. Animation Graph nodes like Blend By Layer).
+
+* Bugfix: Fixed an issue with Anim Class being set by name, causing duplicate-named Anim Blueprints to be incorrectly resolved.
+
+* Bugfix: Fixed an issue where "r.SkeletalMeshLODBias" was affecting meshes in the Animation Editor viewports.
+
+* Bugfix: Fixed an issue with Animation Preview Scene keyboard binding (I and O hotkeys now hide and show scene elements regardless of tab opened state).
+
+* Bugfix: Skinned Mesh LOD now updates in the editor under various physics-related circumstances.
+
+* Bugfix: Fixed an issue with foot placement IK doing line traces on worker threads.
+
+* Bugfix: Fixed an issue with Anim Blueprints that contain State Machines having blank palettes.
+
+* Bugfix: Renaming curves in animations now saves properly.
+
+* Bugfix: Fixed an issue with two-bone IK flickering around full extension when stretch is enabled.
+
+* Bugfix: Animation now works as expected for dynamically-bound wheeled-vehicle anim instances.
+
+* Bugfix: Fixed an issue where you could not undo changes from Alembic Import settings.
+
+* Bugfix: Fixed timing issues occurring while playing back Alembic caches.
+
+* Bugfix: Fixed an issue with incorrect behavior occurring when placing more than three samples in a straight line for a 2D blendspace.
+
+* Bugfix: Dropping a new Animation asset on an existing Sequence Player node can now be undone.
+
+* Bugfix: Breaking transition node connections within Animation State Machines can now be undone.
+
+* Bugfix: Fixed an issue to ensure that changes to animation sync markers are propagated to currently open blendspace assets.
+
+* Bugfix: Skeletal Mesh components tick properly when paused if "Tick Event When Paused" is enabled.
+
+* Bugfix: Fixed Skeletal Mesh Merge duplicating Skeletal sockets.
+
+* Enabled snapping for translation in the Animation viewports.
+
+* Removed force inline from Virtual Compression functions.
+
+* Removed the AnimGraph module from the Graph Editor as a dependency.
+
+* Bone Reference now has improved performance by caching compact post bone index.
+
+* Graph files have been moved to Animation Blueprint Editor.
+
+* We have stopped saving raw curve data into animations on cook in order to save memory and disk space.
+
+* Ticks now appear properly on Anim Sequence scrub bar.
+
+* Persona now depends publicly on Skeletal Editor.
+
+* Montages are now correctly initialized when created. They can be used straight away without first opening them in the Montage Editor.
+
+* We now propagate thread safety flags to child Animation Blueprints.
+
+* The Anim Notify Blueprints now start with a "received notify" event node.
+
+* Made single-node animation instances request clothing simulation resets when their animation is changed. This is because the new animation could be very different from the outgoing animation, and this might cause pops.
+
+* Refactored "Evaluate Bone Transforms" to prevent usage of Skeletal Mesh component.
+
+ * Deprecated "Evaluate Bone Transforms" in favor of new “'EvaluateSkeletalControl_AnyThreadâ€.
+
+ * Deprecated Skeletal Mesh component argument to "Convert CS Transform To Bone Space" and “​Convert Bone Space Transform To CSâ€. Now they just take a transform.
+
+* When selecting bones that are non-required, we now do not render gizmos or text labels.
+
+* Skeletal selection does not lag behind choice made in the viewport (i.e. when showing bone weights).
+
+* Added accessor and modifier functions for "Start Time Offset" value in Geometry Cache components.
+
+##### Animation Assets
+
+* New: You can now choose a preview slot in the Montage Editor.
+
+* Bugfix: Fixed a crash when reimporting animations with additive transform tracks.
+
+* Bugfix: Fixed an issue with additive Pose Asset preview being applied twice.
+
+* Bugfix: Compressed animation data is now included in Memory Stats for Animation Sequences.
+
+* Bugfix: Fixed an issue where blendspace interpolation settings would not have a direct effect and required reopening the blendspace asset.
+
+##### Animation Blueprint
+
+* New: Added "Spline IK" node.
+
+* New: Added a property to Blendspace Player nodes that enables users to choose whether the play time is reset when the blendspace changes.
+
+* New: Animation Blueprints can now specify a Preview Mesh.
+
+* New: Added the "Look At" node so you can use “Look at Location†on a socket or joint, and improved the Visualizer.
+
+* Bugfix: Fixed a crash when "Pose Asset" contains a bone that is not in the mesh.
+
+* Bugfix: Fixed an assertion that could occur when selecting certain items in the Animation Blueprint editor.
+
+* Bugfix: Fixed a crash when diffing State Machine Transition graphs.
+
+* Bugfix: Fixed an issue with "Pose Handler" using mesh bone index and not compact bone index for setting up “Bone Blend Weights†array.
+
+* Bugfix: Fixed an issue with incorrect errors on compiling Aim Offset nodes with exposed blendspace pins.
+
+* Bugfix. Fixed an issue with additive nodes breaking the current pose when they have no additive animation attached.
+
+* Bugfix: Fixed issues pertaining to extra references to Animation Blueprints on Skeletal Mesh components.
+
+* Layered Bone Blend node has been optimized so that it will cache mask weights in compile time.
+
+##### Import/Export
+
+* Bugfix: Fixed a crash when reimporting a Skeletal Mesh that has Virtual Bones.
+
+##### Skeletal Mesh
+
+* Bugfix: Fixed a crash when using re-import button in the Skeletal Mesh Editor.
+
+* Bugfix: Fixed a crash related to Skeletal Mesh resources not being initialised before component is registered.
+
+* Bugfix: Fixed a serialization mismatch in Skeletal Mesh source buffers.
+
+* When importing a Skeletal Mesh, "Activate Bone Indices" now always includes parents even if it's not skinned.
+
+#### Tools
+
+* Bugfix: Fixed a crash in Persona when rotating a bone due to single bone controllers not being initialized correctly.
+
+* Bugfix: Fixed an ensure when deselecting bones in Anim Blueprint editor.
+
+* Bugfix: Fixed an issue where mesh-customized sockets were not showing up by default in 'Active' socket filter mode.
+
+* Bugfix: Fixed issues related to bone removal in Skeletal Mesh LODs.
+
+ * Issue where the "Apply" button would not show after adding bone names.
+
+ * Issue where previously removed bones would not be restored.
+
+ * Ensure that the Skeletal Tree is updated when bones are removed or restored.
+
+* Double-clicking animation assets in Content Browser will now try to re-use existing Animation Editor windows, rather than opening a new one every time.
+
+* Animation picker on Skeletal Mesh component is now disabled rather than hidden when no Skeletal Mesh is assigned.
+
+* The Soundwave-internal curve tables have been moved to the 'Advanced' rollout.
+
+#### Audio
+
+* New: Vorbis-encoded audio files can now be streamed.
+
+* New: Audio streaming is now supported on Android, iOS, and XBox One.
+
+* Bugfix: Fixed a shutdown crash when there is a pending async audio occlusion trace.
+
+* Bugfix: Fixed a crash when opening a Media Sound Wave.
+
+* Bugfix: 'Sound Player' nodes will more efficiently load the referenced sound asset unless a 'Sound Quality' node is being used to select which 'Sound Player' nodes to consider, in which case, the current asset reference evaluation will continue to be used.
+
+* Bugfix: We only queue subtitles once per-wave instances playback.
+
+#### Automation
+
+* New: Added support for -DeveloperReportOutputPath and -DeveloperReportUrl commands to permit local runs of the Automation Tool to generate reports on the report server and launch the browser to view them.
+
+* 'ResavePackages' commandlet now supports lighting in separate packages when using it to rebuild lighting.
+
+* Option to disable taking screenshots has been disabled. Screenshot comparison is an integral part of the testing so disabling them is no longer allowed.
+
+* The system now waits for the asset registry to finish loading assets before running tests.
+
+#### Blueprints
+
+* New: Added the 'Remove Gameplay Tag' function to the gameplay tag function library.
+
+* New: Blueprints containing a String and Text variables can now be marked as multi-line, which enables values to contain newlines when pressing Shift + Enter while editing them.
+
+* New: Blueprint Variables can now be marked as 'Read-Only' in Blueprint Editor, which prevents them from being set in Blueprints. This behaves the same as using 'BlueprintReadOnly' instead of 'BlueprintReadWrite' on a C++ UPROPERTY() declaration.
+
+* New: 'Get Default Locale' has been exposed to Blueprints.
+
+* Macro instances that contain latent actions will now show an overlay clock icon like other latent nodes, which makes them easier to spot and understand that they impact execution flow
+
+ (w:720 h:180 convert:false)
+
+* New: Improved comments in Blueprints.
+
+ * Comment node text now wraps while the comment is being edited.
+
+ * Reduced cases where the title of a comment node would clip at the end.
+
+ * Editing the comment for a regular node using the right click menu will now show changes immediately, rather than waiting until the node was moused over again.
+
+* New: Added the Save and Find in Content Browser buttons to the Level Script Blueprint editor (they will save/show the map package that contains the Level Script).
+
+* New: Added the ability to search for delegate nodes using the function name that they are bound to.
+
+* New: 'Array Get' node.
+
+ * Can toggle between returning a reference or copy.
+
+ * Using a reference solves a longstanding issue with arrays of structs not being able to easily make changes to the items in the array.
+
+* New: 'Get Class Defaults' node has been extended to include output pin exceptions for Set & Map variable defaults. Like array types, the returned value is now a copy of the default value rather than a reference to it. This is done in order to avoid an accidental mutation of the Blueprint class default object.
+
+* New: Function inputs are now exposed as variable "Get" nodes via the right-click context menu in a Blueprint function graph context.
+
+ * To use: In a Blueprint Function graph, right-click to access the context menu. Any input parameters will be listed as additional "Get" actions.
+
+ * In this way, input parameters can be accessed like local variables from anywhere in the function graph; in other words, it's no longer necessary to drag wires all the way back to the Function Entry node in order to access these values.
+
+* New: We now support "value-based" Bitfield enum type associations in the editor for a UPROPERTY marked as 'Bitmask' with a 'BitmaskEnum' association.
+
+ * Prior to this release, Bitfield properties did not work with associated enum types in which the enum values were explicitly set to a bitmask value (e.g. 0x80). That is, the value was assumed to always be set to the index of the bit that the flag should set in the editor ("index-based" mode).
+
+ * To switch the associate to the new "value-based" mode, include an additional metadata key in the UENUM() declaration. Example: UENUM(Meta = (Bitmask, *UseEnumValuesAsMaskValuesInEditor="true"*)).
+
+* New: Added a whitelist mechanism for handling native noexport types that can support direct field access in nativized Blueprint code.
+
+* Bugfix: Fixed a crash in Blueprint Editor when adding an input parameter to a Custom Event node after deleting a Function Graph containing a Create Event node.
+
+* Bugfix: Fixed a crash when creating a new Blueprint class from one or more selected Actors in which the root component is not Blueprint-spawnable.
+
+* Bugfix: Fixed a crash on load in nativized EDL-enabled builds with non-nativized child Blueprint class assets.
+
+* Bugfix: Fixed a runtime Blueprint VM crash upon removing an element from set after consecutive add/remove iterations.
+
+* Bugfix: Fixed a crash that could occur when splitting a struct pin on a collapsed graph node.
+
+* Bugfix: Fixed a crash when trying to use non-supported types as Blueprint map keys.
+
+* Bugfix: Fixed a crash that could occur when changing a Map's value type string to vector. Map variables are properly cleared when value type is changed to an incompatible type.
+
+* Bugfix: Fixed a crash when compiling a Blueprint that contains a split pin in a collapsed graph.
+
+* Bugfix: Fixed a crash loading Blueprints that contain a Blueprint node that no longer exists in code.
+
+* Bugfix: Fixed a crash when using the Straighten Connection shortcut key (and some other related issues with actions done after the Context Menu is closed).
+
+* Bugfix: Fixed a crash when opening a Blueprint with a parent class that no longer exists.
+
+* Bugfix: Fixed a crash with the merge tool when the source control provide is SVN and there are gaps in the revision history. (This may still not work correctly, but it won't crash. The full fix will be covered with UE-43603)
+
+* Bugfix: Fixed a crash when attempting to name component with a very long name.
+
+* Bugfix: Fixed a crash that could happen when running Cook On The Fly server with nested struct assets.
+
+* Bugfix: Fixed a crash that would happen when a level in Blueprint was auto-saved.
+
+* Bugfix: Fixed an assertion that could occur when compiling a Blueprint with certain nodes (Select, Math Expressions, etc.)
+
+* Bugfix: Fixed a crash that could occur when reparenting a component Blueprint.
+
+* Bugfix: Fixed a crash that could happen when setting maps and sets of strings and certain structs.
+
+* Bugfix: Fixed a crash that would occur when passing a self node through a CustomEvent ref parameter.
+
+* Bugfix: Fixed a crash that could occur when adding a new Blueprint function and immediately undoing.
+
+* Bugfix: Fixed a crash that could occur after renaming the category of an implemented interface function inherited from a native C++ parent class in the 'My Blueprint' panel.
+
+* Bugfix: Fixed a crash that could occur when editing a local curve variable's default value in a Blueprint graph.
+
+* Bugfix: Fixed an ensure misfire in PIE exit when using Play as Listen Server Mode.
+
+* Bugfix: Fixed an infinite loop case in the Math Expression node.
+
+* Bugfix: Fixed an issue where misaligned memory access of noexport struct properties leading to incorrectly initialized values in a nativized cooked build.
+
+* Bugfix: Fixed an issue with broken collision shapes at runtime when cooking with the optimized Blueprint component instancing data feature turned on.
+
+* Bugfix: Fixed an issue with a Bitmask Enum type validation failure when serializing a Make Bitmask Literal node
+
+* Bugfix: Fixed an issue with log spam when compiling a Blueprint function with a local TSet or TMap variable.
+
+* Bugfix: Fixed an issue with broken pin wires after expanding a duplicated collapsed graph node.
+
+* Bugfix: Fixed an issue with invalid custom Enum type selection on member fields in the User-Defined Structure editor after a reload.
+
+* Bugfix: Improved context menu "whole world" algorithm to proper take into consideration localisation when searching for terms.
+
+* Bugfix: Fixed an issue where renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded.
+
+* Bugfix: Fixed an issue with broken graph node pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself.
+
+* Bugfix: Fixed an inability to save after choosing a Level Script Blueprint class as the default value for a class input pin in a non-Level Script Blueprint class function graph.
+
+* Bugfix: Fixed an issue where Blueprints containing a 'Key Get Display Name' node will no longer be marked dirty when opening the Blueprint.
+
+* Bugfix: Fixed an issue where the user defined variable tooltip was not showing up when hovering over Get/Set nodes for local variables.
+
+* Bugfix: Fixed an issue with old versions of Blueprints being diffed accidentally showing up in Find-in-Blueprints search results.
+
+* Bugfix: Fixed some issue in Blueprint Diffing where properties of nodes edited in a Details panel would not show up as differences (this impacted Animation Graph nodes most heavily).
+
+* Bugfix: Fixed an issue in Blueprint nativization that could cause bad interface function calls to be generated.
+
+* Bugfix: Fixed an issue that could cause stale Blueprint instances in a hidden sub-level to spam a runtime error.
+
+* Bugfix: Fixed an issue that could cause a Blueprint 'mismatch' error when using 'Set' and 'Map' node.
+
+* Bugfix: Fixed an issue that could cause struct asset defaults to be wiped on editor reload.
+
+* Bugfix: Fixed an issue that could cause a packaging error when running with Blueprint nativization and no Blueprints were nativized.
+
+* Bugfix: Fixed an issue that removed the ability to set Blueprint object variables as 'config' variables, as you cannot set a object reference from a config.
+
+* Bugfix: Fixed an issue with reroute nodes so that a new output connection will propagate that type through to the node's inputs.
+
+* Bugfix: Fixed an issue so that 'Get Data Table Row' nodes are now compatible with DataTable variables.
+
+* Bugfix: Fixed an issue that could cause material parameter setting in a Blueprint construction script to fail.
+
+* Bugfix: Fixed an issue that could cause overlap events to fire multiple times in PIE.
+
+* Bugfix: Fixed an issue that would generate the nativized Blueprint plugin even if no Blueprint files were nativized.
+
+* Bugfix: Fixed an issue that would cause certain components to be orphaned and hidden from the component hierarchy.
+
+* Bugfix: Fixed an issue that could cause a level Blueprint's bound delegate nodes to not trigger.
+
+* Bugfix: Fixed an issue in Blueprint nativization that would cause cyclical logic (loops, etc.) to not iterate past the first iteration.
+
+* Bugfix: Fixed an issue in Blueprint nativization that could cause Blueprint subclasses to ignore their overridden model and default to their parent's.
+
+* Bugfix: Fixed an issue where non-nativized Blueprints were getting dropped from the cooked asset registry file when running with Blueprint nativization.
+
+* Bugfix: Fixed an issue where there would be a nativized Blueprint asset build error when there are no native code dependencies.
+
+* Bugfix: Fixed an issue with incorrect Blueprint graph pin value display names for user-defined enum types.
+
+* Bugfix: Fixed the variable 'config' setting tooltip to report the correct config file for the user to use.
+
+* Bugfix: Fixed an issue that could cause Blueprint variables set from a config to have their values improperly overwritten.
+
+* Bugfix: Fixed several issues with Switch Blueprint nodes not keeping their node and property UI in sync.
+
+* Bugfix: Fixed several issues where changing pawn/hud/state class from the Level editor toolbar would not work properly until the project was reloaded.
+
+* Bugfix: Fixed a stale class reference in interface properties that reference a Blueprint defined interface that has been recompiled.
+
+* Bugfix: Fixed an issue where 'Get Values' and 'Get Keys' nodes were not providing correct results for Map variables that have had values removed.
+
+* Bugfix: Fixed an issue where Blueprint functions that have all their return nodes pruned (ie. are not connected to anything) now have the correct output pins at call sites.
+
+* Bugfix: Fixed an issue where 'Movie Scene Sequence' and related code was not working when Blueprints were nativized.
+
+* Bugfix: Fixed an issue in nativized packaged builds that would cause default values to be lost.
+
+* Bugfix: Fixed 'Enum As Byte' related warnings in nativized packaged builds. 'Enum As Byte' is no longer used when nativizing Blueprints.
+
+* Bugfix: Fixed issues with Blueprint nativization where it didn't correctly include headers necessary for owners of subobjects, and instances where all modules needed by the generated code weren't being founds. This fixes one cause of "Cannot open include file" errors when packaging with Blueprint Nativization enabled.
+
+* Nodes in the blueprint editor again use their custom cursor (grab hand when hovering over a node and crosshairs when hovering over pins).
+
+* 'Logarithm' node added to the Blueprint Math library.
+
+* 'Set' pins on 'Intersection', 'Union' and 'Difference' nodes now infer their values uniformly.
+
+* Out of date Class Default Objects are no longer duplicated when compiling a Blueprint, reducing blueprints compilation time
+
+* Successive calls to Set Intersect, Union or Difference now provide correct results, previously the Set was not cleared before calculating the new result
+
+* 'Trace By Profile' collision functions have been exposed to Blueprints.
+
+* Nativize code is now more precise about dependencies, reducing the resulting executable size and compiler load.
+
+* Blueprints that override an inheritable component are no longer 'data only'. Blueprints with overridden components but no extra functions now load without losing data.
+
+* Blueprints that extend types that implement 'Needs Load For Server' or 'Needs Load For Client' now honor those functions, meaning they will not be cooked for targets that their type wants to be excluded from.
+
+* Delegates in nativized packaged builds correctly prevent double registration.
+
+* Blueprints used as a child actor class will no longer be marked dirty when compiling the class that references them.
+
+* When duplicating a Blueprint component, that component will now be a sibling of the duplicated node, not a child of it unless it is the root node being duplicated.
+
+* Duplicated root nodes will have their scale set to (1,1,1) to avoid applying the scale multiplier twice.
+
+* Blueprintable Components are no longer considered experimental, they have been enabled by default for several versions.
+
+* The ticking behavior of latent actions in components has been changed to match how they behave in actors. When the component ticks, the latent actions will now be processed at the same time, rather than happening later in the frame when latent actions for non-ticking actors and components are processed. This does change behavior, so there is a console variable (t.TickComponentLatentActionsWithTheComponent) that can be used to revert to the older behavior until affected component Blueprints that depended on the old ordering behavior can be fixed up. The cvar should be treated as deprecated; it will be removed in a future release.
+
+* Updated Blueprint nativization so that it generates source files compatible with 'include what you use' (IWYU).
+
+* Moved nativized Blueprint plugin generation to the project's 'Intermediate\Plugins' folder.
+
+* Removed make/break nodes from the Blueprint menu for structs that aren't marked as a 'BlueprintType'.
+
+* Updated marquee selection in graph editors. Ctrl dragging now inverts nodes' selection state, instead of only deselecting them (holding alt is now for pure deselection).
+
+* The Actor Details view will now refresh property mappings for the current Actor instances selection after a bytecode-only recompile of its Blueprint class as a dependency during reinstancing.
+
+* Child Blueprint class assets are now marked as dirty if its parent Blueprint class incurs a structural change. This alerts the user that updates to the Child Blueprint would need to be saved on exit.
+
+* We now emit C++ ctor initialization code for nested default subobjects when nativizing a Blueprint class at cook time.
+
+* Instanced Static Mesh transform edits are now reflected in the Blueprint editor's preview scene.
+
+* The editor will now raise an error at cook time after an attempt to nativize a Blueprint class that also implements a native C++ interface with a pure virtual function declaration that is not also marked up with UFUNCTION. This is because we cannot nativize a Blueprint class that does not also have an implementation of a pure virtual function inherited from the interface.
+
+* C++ interfaces with one or more pure virtual function declarations not also tagged with UFUNCTION are now excluded from the list of available "Implementable" interfaces in the Blueprint class editor.
+
+* Non-nativized child Blueprint classes will now properly override a nativized parent Blueprint class's component defaults at runtime in a nativized cooked build.
+
+* We will now implicitly nativize any child Blueprint class that overrides one or more BlueprintCallable functions inherited from a parent Blueprint class that is also nativized.
+
+* The Blueprint diff tool now reports when a component changes its type between revisions
+
+* Blueprints are now only dirtied if edited properties are from objects in the Blueprint's package.
+
+#### Core
+
+* New: Support added for "double" and 'fname' stat types in UFE stat export to CSV.
+
+* New: Pak files can now have their index encrypted with AES, preventing them from being opened by unrealpak.
+
+ * An AES key must be provided in the project Encryption.ini, and then index encryption can be enabled in the project packaging settings in the editor.
+
+ [REGION:note]
+ When either pak index encryption or signing are enabled in the Project Settings, pak ini encryption must also be enabled in order to avoid a potential security issue. All of these settings can be found in the Packaging section of the Project Settings dialog in the editor.
+ [/REGION]
+
+* New: Added "Get Component For Axis" and “Set Component For Axis†to FVector and FRotator.
+
+* New: Added support for -iterate for content plugins that require path remapping during cook/packaging.
+
+* New: Added a "CookedOnly" plugin type, for plugins meant only to be loaded in cooked games (in support of Blueprint nativization).
+
+* New: Added a Json Object Converter to add support for saving and loading TMap and TSet UProperties.
+
+* New: Absolute paths are now allowed in -UserDir= argument.
+
+* New: Added ability for games to use command line parameters for map overriding in shipping builds if their target.cs file defines UE_ALLOW_MAP_OVERRIDE_IN_SHIPPING macro to 1.
+
+* New: Added support for instanced elements in TMap and TSet properties being copied during "Copy Properties For Unrelated Objects."
+
+ * This fixes an issue where instanced fields could lose data during recompilation of a Blueprint.
+
+* New: Added a new method Platform Misc "Get OS Version" that returns a string representing the raw OS version info.
+
+* New: All HTTP implementations now use a consistent User-Agent string (specified via the overridable function Generic Platform Http "Get Default User Agent" method).
+
+ * Added a Platform and OSVersion string to the default value (platform=FPlatformMisc::IniPlatformName() and osver=FPlatformMisc::GetOSVersion()).
+
+* Bugfix: Fixed a crash with startup in the runtime asset manager when the on-disc cache already contains more data than the system is configured to use.
+
+* Bugfix: Fixed a crash in 'Chunk Cache Worker' function constructor.
+
+* Bugfix: Fixed a crash when launching "Play In Editor" session caused by missing audio data if its DDC data was not present and the audio was streamed in.
+
+* Bugfix: Fixed a crash when UObject can be added to GC cluster only if all of its Outers can also be added to it.
+
+* Bugfix: Fixed an assert with LocalExportIndex.IsNull. Now the Event Driven Loader code will properly disambiguate imports with the same name and the same outer name.
+
+* Bugfix: Fixed a crash when Hot Reloading caused by reinstancing UEngine objects.
+
+* Bugfix: Fixed an occasional crash during Hot Reload CDO reinstancing that was caused by a redundant insertion into TMap invalidating an existing reference into that TMap.
+
+* Bugfix: Fixed a crash when importing a Blueprint which contains a non-empty TMap with an enum class key.
+
+* Bugfix: Fixed a crash when Hot Reloading a project which contains a user-defined struct.
+
+* when hot reloading a project which contains a user-defined struct.
+
+* Bugfix: Fixed a crash when deserializing a TMap property item with instanced elements, where the CDO contains default element values for that property.
+
+* Bugfix: Fixed the use of many printf non-literal formatting strings, as these are potential security issues.
+
+* Bugfix: Fixed an issue with incorrect error code being returned from UnrealHeaderTool when -WarningsAsErrors and -Verbose are specified code.
+
+* Bugfix: Fixed an issue with the error code returned by UnrealHeaderTool when an error occurs during preparsing of headers.
+
+* Bugfix: Fixed a persistent stat metadata warning generated during PIE..
+
+* Bugfix: Fixed an issue with FMonitoredProcess to prevent infinite loop in -nothreading mode.
+
+* Bugfix: Fixed an issue for runtime asset cache not invalidating files with an outdated version number.
+
+* Bugfix: Fixed stats warnings because each new slate loading screen thread has the same stat name, but is potentially assigned to a different thread.
+
+* Bugfix: Fixed an issue with CSV parser missing empty cells at the end of the string.
+
+* Bugfix: Fixed an issue with external plugin cooking and deployment by remapping plugin directories upon cook & deployment Tested directory structures:
+
+ * D:\SomePluginDir
+
+ * D:\UE4\AnotherPluginDir
+
+ * D:\UE4\Engine\Plugins
+
+ * D:\UE4\MyProject\Plugins
+
+* Bugfix: Fixed a memory leak in MallocBinned which affects the mobile platforms (Android, iOS).
+
+* Bugfix: Fixed a typo in comments for LODColoration in BaseEngine.ini.
+
+* Bugfix: Fixed the Log message in "Exclusive Load Package Time Tracker."
+
+* Bugfix: Fixed an issue where "log.timestamp" command would not work because it was incorrectly handled by "log" console command.
+
+* Bugfix: Fixed an issue where the logging system could hang when running out of disk space while flushing log and fixed unexpected concurrency assert when flushing the log buffer to disk.
+
+* Bugfix: Fixed a deadlock when flushing log file while it's already being flushed by a flush timer on the async log writer thread.
+
+* Bugfix: Fixed a memory leak when running with -nullrhi on the commandline in cooked games caused by shader resources not being destroyed.
+
+* Bugfix: Fixed an issue to make sure the engine is properly cleaned up on UnrealHeaderTool early exit to prevent UnrealHeaderTool hangs.
+
+* Bugfix: Fixed an issue to make sure that streamed-in SoundWaves get added to Garbage Collection clusters.
+
+* Removed dependency preloading system from sync and async loading paths. It has been superseded by the new event driven loading system.
+
+* Removed remaining references to AES_KEY, instead using the encryption key delegates to access the key where needed.
+
+* Refactored encryption and signing key access in unrealpak to make it easier to use.
+
+* Make content projects generate a stub executable when encryption or signing keys are specified so that keys can be embedded correctly.
+
+* Separate pak cache granularity from pak signing chunk size in the EDL loader.
+
+* Increase "Serial Size" and “Serial Offset†in FObjectExport to 64bits, to handle larger file sizes.
+
+* Added some validation of the class index in exportmap entries.
+
+* Added missing support for compiling plugins external to Engine/Plugins & Game/Plugins.
+
+* Disabled the 'HeartBeat' function on platforms that don't actually want to use the HeartbeatThread.
+
+* 'None' is now going to be properly considered by the engine as an invalid filename.
+
+* The editor will now collect garbage after a map is loaded to make sure any stale components or other objects that are no longer needed are destroyed. This is to make sure that these components are not resurrected by another editor operations like duplication.
+
+* Made sure the async log writer flushes the log archive even if there's no serialization requests to prevent situations where some of the recent requests haven't been flushed to disk
+
+* Reduced the code size for the generated Static Register Natives functions.
+
+* Disabled the garbage collector when recompiling child Blueprints, as is already done for the parent Blueprint.
+
+* Simplified Unreal Header Tool's code generation logic.
+
+* Implemented Lex "To Sanitized String" for double.
+
+* The function Local Player Context "Is Valid" now also checks that the player controller has a player set.
+
+#### Editor and Tools
+
+* New: UnrealGameSync now includes a workspace-specific file filter, separately to the global file filter.
+
+* New: UnrealGameSync now supports pop-up notification for build failures on content changes.
+
+ * To mark a badge as applicable to users submitting content changes, add +ContentBadges=Name to the [Notifications] section of the project specific configuration file at /Build/UnrealGameSync.ini.
+
+* New: UnrealGameSync now allows a project to specify filters for the streams that should be displayed for fast-switching to.
+
+ * The "Quick Select Stream List" setting in the “Options†section of the Project Settings references a depot path containing a list of strings used to filter the stream list. An option is shown to switch back to showing all available streams, if desired.
+
+* New: Added support for in memory packages. Helps distinguish between packages which can and can't be cooked.
+
+* New: Added a Blueprint function to convert a Render Texture to Texture2d. This is only available for use in the Editor.
+
+* New: Custom Depth can now be enabled for Foliage.
+
+* New: You can now color-code all of the windows in the editor in order to visually distinguish them when working across multiple branches or projects
+
+ * You can adjust the 'Editor Window Background Color' for a subtle effect, as the default background is already a pretty dark grey:
+
+ (w:929 h:416 convert:false)
+
+ * Or you can edit the tint in the two brushes (which sets the texture to a white default one) to get a very brazen effect:
+
+ (w:929 h:416 convert:false)
+
+* New: Added Data Table export/import support for TMap and TSet.
+
+* New: Updated the Windows platform to use the newer Vista+ style browser dialogs, rather than the older XP style dialogs.
+
+* New: You can now empty the text value within an FText property or pin.
+
+* New: Added support for .ini-driven classes to use a specific platform's config hierarchy, so that the editor on a desktop platform can read .ini settings from other platforms .ini files.
+
+ * This will allow for NDA'd platforms to keep their ini settings in protected files, but still be editable by the editor.
+
+ * Moved project settings for console platforms over
+
+ * See UObject::GetConfigOverridePlatform()
+
+* New: Scene importing now allows for plugins to expose new scene import factory types.
+
+* New: Overhauled "Call In Editor" support and promoted it so it can be used on functions in any class, not just Blueprints derived from AActor:
+
+ * "Call In Editor" can now be used on native UFUNCTION() declarations (e.g., UFUNCTION(Category=CoolCommands, CallInEditor)).
+
+ * Blueprint declared functions can also be marked as CallInEditor (in addition to custom events), which allows you to set the category and tooltip for the buttons.
+
+ * Now shows each function as a separate button, placed in the category associated with the function.
+
+ * Removed the duplicate copies of properties placed in the Blutility section.
+
+ * Prevented operating on functions that have parameters or return values, which could crash before.
+
+ * Added a scoped transaction around "Call In Editor" execution so changes made can be undone.
+
+ * The button strip entry is now searchable by function name or tooltip.
+
+* New: Added a new Details view option: "Show Hidden Properties while Playing"
+
+ * Enabling this allows you to see every property on selected objects that belong to a simulating world, even non-visible and non-editable properties.
+
+ * This feature is very useful for inspection and debugging, because you can see all of the internals of your Actors and Objects.
+
+ * Be careful when changing values for properties that are not really intended to be changed at runtime. You could introduce instability or even corrupt data.
+
+ * Note that this setting is saved for your entire project.
+
+* New: Sequencer additions and updates:
+
+ * Tracks can now be prioritized based on their subscene hierarchical bias value. Higher bias values take precedence.
+
+ * Fixed particle system restore state so that it gets the proper initial active state of the particle.
+
+ * Added a generic past menu for Master (root) tracks.
+
+ * Changed the time snapping interval in the toolbar UI so that it no longer additionally updates the Sequencer setting. The setting is only used to initialize the time snapping interval of the Level Sequence.
+
+ * Added translate keys with Ctrl and Left-Right arrows.
+
+ * Added Level Sequence Actor button in the Details panel to open Sequencer.
+
+ * Duplicate shot now puts the duplicate on the next available row, keeping the start/end times the same.
+
+* New: You can now isolate/select all sections using a specific Material slot.
+
+* New: The FBX importer updates:
+
+ * Now imports collision models under the FBX LOD Group.
+
+ * Now applies the transform from FBX options only one time for the whole import.
+
+ * When importing an FBX file from Blender, the importer now removes the root node name "armature."
+
+ * No longer removes the socket created in UE4 Editor when using reimport. If affects only imported socket.
+
+* New: Added some LOD Setting options to the FBX Import Options window. Users can now specify the following Static Mesh LOD Settings Options:
+
+ * Auto Compute LOD Distance
+
+ * Minimum LOD Number
+
+ * LOD number
+
+* New: The FBX Importer now fills two more Material Inputs (Texture only) from the FBX Material:
+
+ * Specular Factor imported as "Roughness"
+
+ * Shininess imported as "Metallic"
+
+* New: The FBX exporter can now export with the Front X-Axis. The new option is under the Editor Preferences settings.
+
+* New: TMaps now support editing structs as keys from within the Details panel.
+
+* New: The Data Table Row Editor now contains a Reset to Default control.
+
+* New: Properties added to the header of a Details panel group (ie. via IDetailGroup::HeaderProperty()) now have copy/paste actions exposed in the Context Menu.
+
+* New: Added the possibility in Slate to reset property group to their default value.
+
+* New: Added the possibility to perform the following actions in Save/Load Level dialog:
+
+ * Rename
+
+ * Delete
+
+ * Create a New Folder
+
+ * Show in Explorer
+
+ * Show the Size Map tool
+
+* Bugfix: Fixed a crash when selecting components from an Actor's component tree and then undoing
+
+* Bugfix: Fixed a crash when attempting to open multiple cooked assets at once in the editor.
+
+* Bugfix: Fixed a crash when pressing PIE button several times before PIE session begins.
+
+* Bugfix: Fixed a crash that could occur during seamless travel while playing in a Play-in-Editor session with the "Use single process" option unchecked.
+
+* Bugfix: Fixed a crash while using the "Delete" button inside of the HLOD outliner while having a Proxy mesh opened in the Static Mesh Editor.
+
+* Bugfix: Fixed a crash when using import into level with .obj file.
+
+* Bugfix: Fixed a crash when dragging a re-import scene and there is new asset created.
+
+* Bugfix: Fixed a crash when creating too many LODs when importing a Static Mesh.
+
+* Bugfix: Fixed a crash with High Resolution Screenshot Tool that could happen when the Screen Percentage is set to a value other than 100%.
+
+* Bugfix: Fixed an issue with Device Output Log showing partial lines sometimes.
+
+* Bugfix: Fixed an issue where array properties would revert to the default values when duplicating an Actor.
+
+* Bugfix: Fixed an issue with Details panels becoming unusable if "Show Only Modified Properties" is enabled and there are no modified properties.
+
+* Bugfix: Fixed an issue so that thumbnails for Material assets now respect the "used particle system sprites flag" and show a quad instead of a sphere by default.
+
+* Bugfix: Fixed an issue for outdated error message instructions for how to fix being unable to launch on an iOS device.
+
+* Bugfix: Fixed an issue with "Save Current As" option not saving the current level and only saving the Persistent Level and then reloading everything thus causing work to be lost if editing a sub-level.
+
+* Bugfix: Fixed an issue with Material Instances being marked dirty when opening.
+
+* Bugfix: Fixed an issue with TAssetSubClassOf properties being reset on undo.
+
+* Bugfix: Fixed an issue that could cause the wrong Blueprint instance to be duplicated, or copy/pasted.
+
+* Bugfix: Fixed an issue with the Focus action in the Static Mesh Editor viewport.
+
+* Bugfix: Fixed an issue with Color Customization so that curve color names are "R", "G", "B", "A" instead of None.
+
+* Bugfix: Fixed an issue with user's setting for Texture Mip LOD size being incorrectly clamped.
+
+* Bugfix: Fixed an issue where lighting rig rotations were not set / saved correctly for Preview Scene Profiles.
+
+* Bugfix: Fixed an issue where auto-exposure values from the Preview Scene Profiles were not correctly applied
+
+* Bugfix: Fixed an issue where HLOD's "Override Screen Size" would not propagate on a LOD Actor directly.
+
+* Bugfix: Fixed an issue where the Material Slot assignment wasn't correctly restored on reimport.
+
+* Bugfix: Fixed an issue to prevent importing more LODs than the maximum allows for.
+
+* Bugfix: Fixed an issue with the FBX importer's "Front X-Axis conversion". We remove the scale of the camera and adjust the orientation of both the camera and light.
+
+* Bugfix: Fixed an issue with Auto Reimport "Directory to Monitor" feature.
+
+* Bugfix: Fixed some issues with the Import commandlet:
+
+ * Fixed possible crash when importing FBX files.
+
+ * Now makes sure that the imported assets are saved when there is no source control.
+
+* Bugfix: Fixed an issue with Static Mesh conversion from UE4 4.14 to earlier versions.
+
+* Bugfix: Fixed an issue with the Merge Actors Tool that was sometimes assigning wrong Material IDs to mesh sections.
+
+* Bugfix: Fixed an issue where the Number of Players and Dedicated Server settings for PIE would not persist correctly after Editor shutdown.
+
+* Bugfix: Fixed issues related to Auto Reimport:
+
+ * Fixed a crash when attempting to import to mount points that do not exist.
+
+ * Now allow for new assets to be created from monitored directories.
+
+ * Settings now use a path picker when specifying the "Map Directory To" field.
+
+* Bugfix: Fixed an issue so that Property Editor Inline Class Filter now shows unloaded Blueprint Classes properly in the Editor.
+
+* Bugfix: Fixed an issue with Undo/Redo transactions of Color Grading.
+
+* Iterative cooking .ini setting checking improvements have been made. More to come in a future release.
+
+* Dependency checking performance improvements for iterative cook. More to come in a future release.
+
+* Panning in orbit mode now takes in account camera speed setting.
+
+* Pivot Painter 2 is a general purpose vertex animation toolset that comes with specialized subset of material functions to automate foliage animation. The script and material function set are more flexible, easier to use and provide an improved workflow over the first release. Additionally, a content example map ships with the editor to demonstrate how Pivot Painter's output can be referenced in the editor.
+
+* Added a disclaimer popup for the first time a user enters VR Mode
+
+* All asset properties in Details panels now have thumbnails on by default.
+
+* Disabled editor sounds that play when you PIE, simulate or possess the player by default. There is now a setting in the editor preferences to control this.
+
+* The output log should now have the same text color as other panels in the editor.
+
+* Removed hard coded list of thumbnails, preventing objects with valid thumbnails from showing up. Thumbnails are now shown by default. Use meta=(DisplayThumbnail=false) on a property to hide thumbnails.
+
+* Import data and thumbnail data are now transactional. You can now undo and redo their edits.
+
+* Reread in the target RHIs array every time the list of shader types is needed, instead of caching, because the user could change the settings in the editor, then click cook.
+
+* The Paint Fill tool has changed the way it works in Texture Weight Painting mode, it now fills the mesh with the currently selected texture weight index.
+
+* Limited the ability of setting up the Hierarchical Level of Detail (HLOD) system in levels which are contained as streaming levels in other assets.
+
+* The FBX importer now builds the Static Mesh only once when there is many LODs.
+
+* The section Material slot assignment is now correctly restored on reimport.
+
+* When swapping the Static Mesh referenced by a Static Mesh component, we now just clean up the Material Override that exceed the Static Mesh Material array size, instead of clearing all overrides.
+
+* When using the Full Scene Importer the "Scene Import" data asset can now specify a different source file for reimport.
+
+* Data pin style preferences are now saved on Editor shutdown.
+
+* The "Fixup Redirects" commandlet now ensures that files that are marked for delete are correctly submitted to source control.
+
+* The "Resave Packages" commandlet will now submit files that are marked for delete.
+
+* Blocking volumes will actually be added to the level when placed via the "Place Actor" command instead of generating warnings.
+
+* Values that are directly entered for float properties with a specified Delta value will no longer snap to the nearest delta when losing focus.
+
+* Actor components can now be scaled to negative values using the transform gizmo.
+
+* Map properties now fully support customized property types used as keys.
+
+* When deleting an Actor, we now display the name of the referencers.
+
+* Using the Convert Actor feature now won't change the Actor level.
+
+* Primitive Statistics window will now properly update itself when adding new Levels.
+
+* Optimized the lightmap UVs generation to speed up the Static Meshes import flow when packing the UVs into higher resolutions.
+
+##### Content Browser
+
+* New: Added "Resave All" functionality to Content Browser folders.
+
+* New: Added a way to view/copy a list of references (including those that aren't loaded) to the Reference Viewer.
+
+* New: Importing CSV files will now show the name of the CSV file in the import dialog.
+
+* New: Added the ability to auto resize column in "Column View" by double clicking column splitters
+
+* Bugfix: Fixed an issue where folders wouldn't be removed from the Content Browser when deleting them.
+
+* Bugfix: Fixed an issue with the Reference Viewer where it only ever used the default thumbnail.
+
+* Bugfix: Fixed some issues for gathering cached asset dependency data.
+
+ * We no longer load dependency data that doesn't have the correct package name.
+
+ * We no longer populate the dependency results when "Gather Depends on Data" is set to false.
+
+* Bugfix: Fixed an issue that prevented textures from updating correctly if a source texture with the same name as a texture asset is imported from a location that differs from the asset's original source image.
+
+* Bugfix: Fixed an issue where the Force Feedback "Play" and “Stop†icons weren't rendered correctly and would only be displayed when hovering over the asset or when the asset is currently playing.
+
+* Bugfix: The Content Browser file path will now update correctly if it is pointing to a path that is deleted through the Sources Panel.
+
+* Bugfix: Duplicating an asset will correctly name it if there is another one of the same name.
+
+* Moving a newly-created asset before saving it will no longer save an empty package in the asset's original location.
+
+* When reimporting multiple assets, the "Yes to All" and "No to All" dialog options will prevent future reimport dialogs from appearing for the same asset type in the same operation.
+
+* Improve visual of "Column View" in Content Browser.
+
+##### Cooker
+
+* Bugfix: Fixed an issue with the rebuild lighting commandlet not checking out files correctly.
+
+* Bugfix: Fixed an issue where running the same DLC profile created by the Mobile Patching Wizard would increase HTTP chunk size.
+
+* Bugfix: Fixed an issue with the cooker always cooking "All Maps" even when a single map was specified on commandline.
+
+##### Foliage
+
+* New: Added the Show Flag "Foliage Occlusion Bounds" in the Advanced menu to see the bounds generated by the occlusion tree.
+
+* New: When moving a foliage asset to a new Level, you will now be prompted to save the Foliage Type as an asset if it's a local asset.
+
+* New: Improved the Foliage painting algorithm to properly support Random Pitch/Yaw when the setting "Collision with World" is enabled.
+
+* Bugfix: Fixed a crash that occurred when moving the mouse over certain content while in Foliage mode.
+
+* Bugfix: Fixed an issue that cause foliage thumbnails to incorrectly be duplicated if many of them are onscreen at once.
+
+* Bugfix: Fixed an issue where removing a Foliage Type wouldn't properly refresh the Details panel.
+
+* Bugfix: Fixed an issue where the foliage location would shift when using undo/redo transactions.
+
+* Optimized the occurrence of rebuilding the occlusion tree when performing actions in the editor.
+
+##### Landscape
+
+* New: We now automatically fill Landscape with the first created Landscape's Layer Info object.
+
+* New: Added sorting to Landscape Target Layer tabs. You can now sort by Material definition (which is the default one), alphabetical, or custom a using drag-and-drop operation.
+
+* New: Added a visibility toggle to only show the used Target Layers by the loaded components.
+
+* Bugfix: Fixed a crash when changing multipole Landscape Blend Layer nodes from Weight blend to Height blend.
+
+* Bugfix: Fixed an issue with user Landscape shortcuts not working in the Level Viewport.
+
+* Bugfix: Fixed an issue when performing an Undo action would delete the newly created Landscape and return back to the new Landscape window.
+
+* Bugfix: Fixed an issue where Landscape holes (visibility mask) was causing NavMesh problems at the borders of the Landscape component.
+
+* We have improved when a Level will be marked as dirty when manipulating a Landscape Spline.
+
+* The Landscape tools Material synchronisation has been updated between game thread and render thread.
+
+* When adding a new Component, if a Landscape info object exists it will determine which one is used based on its neighbors.
+
+##### Material Editor
+
+* Bugfix: Material Custom nodes that contain "tab" characters will now correctly display tab characters after copy/paste.
+
+##### Matinee
+
+* Bugfix: Fixed an issue with how tooltips display when using a Material Function in your Material.
+
+##### PhAT
+
+* Bugfix: Fixed "Multiple Values" being displayed in Body Setup properties when single bone has multiple bodies
+
+##### Sequencer
+
+* New: Added the ability to specify additional Event Receivers for Level Sequence Actors.
+
+* New: Event tracks can now be defined to trigger events at the start of evaluation, after objects are spawned, or at the end of evaluation.
+
+* New: Added the ability to retrieve bound objects from Blueprint.
+
+* New: There have been improvements to the Binding overrides.
+
+ * Added the ability to override spawnable bindings.
+
+ * Added the ability to override bindings in sub Sequences.
+
+ * Deprecated "Get Sequence Bindings" node in favor of "Get Sequence Binding", which is more robust, and provides a better UI/UX for selecting single bindings
+
+ * Added Drag/Drop support for Binding overrides.
+
+* New: Added the ability to specify Event Receivers on Event Tracks.
+
+ * These are defined by right-clicking on the Event Track in the Sequencer tree, and adding Event Receivers.
+
+ * Such objects must be defined within the Sequence hierarchy (as well as parents, children, grandchildren etc).
+
+* New: Added a reworked, more generic property path handling system in the Sequencer object change listener.
+
+* New: Unlocked the Cine Camera Post Process Depth of Field to use options other than CircleDoF.
+
+* New: "Pre Roll" and “Post Roll†are now exposed at the section level for all sections.
+
+* New: Enabled "Use Custom Start Frame" and “Use Custom End Frame†when rendering a single shot from the menu.
+
+* New: You can now set the fade color in the Track display.
+
+* New: Audio row heights are now also resizable by dragging on the bottom end of the track lane in the track area view.
+
+* New: Sequencer now re-evaluates when starting PIE or Simulate. This can be disabled with "Bind Sequencer to PIE" and “Bind Sequencer to Simulate†in the Play-in-Editor Advanced settings.
+
+* New: Split "Snap to the Dragged Key" option into two options, "Snap to the Pressed Key", and "Snap to the Dragged Key".
+
+* New: Added a loop selection range. If there is no selection range, loop mode is restricted to loop or no loop.
+
+* New: Added hotkeys to set the selection range to the next and previous shot (page up, page down). Also, added hotkey to set the playback range to all the shots (end).
+
+* New: You can now set sequencer audio components bIsUISound to false so that they don't continue playing when the game is paused.
+
+* New: Added an option to instance sub sequences when creating a Master Sequence.
+
+* New: Notify streaming system prior to Camera cuts by default. To enable, users will need to enable the Pre Roll section of the Camera cuts for the streaming system to activate prior to cutting to cameras.
+
+* Bugfix: Fixed a crash when selecting keyframes in the viewport.
+
+* Bugfix: Fixed a crash with Sequencer Recorder when clearing properties to record.
+
+* Bugfix: Fixed an issue where tick prerequisites were not being set up for Actors streamed in from a streaming Level.
+
+* Bugfix: Fixed an issue where Sequencer was animating objects from the wrong world.
+
+* Bugfix: Fixed an issue with event parameter structs being able to be garbage collected, resulting in NULL structs potentially being written out.
+
+* Bugfix: Fixed an issue with animation looping in Sequencer.
+
+* Bugfix: Fixed an issue with Sequencer Recorder to fix duplicate components getting recorded.
+
+* Bugfix: Fixed an issue with FBX import with camera and light animation key imports.
+
+* Bugfix: Fixed an issue with autokey not setting a keyframe for Slate color with the specified color.
+
+* Bugfix: Fixed an issue for filtering to include Child nodes.
+
+* Bugfix: Fixed an issue where the Sub Track node deletion so that all sub tracks aren't deleted, only the row being requested.
+
+* Bugfix: Fixed an issue to invalidate expired objects when Blueprints are compiled. This fixes Actor references to now handle sections that need to have their GUIDs updated (ie. attach tracks).
+
+* Bugfix: Fixed an issue so that when finishing a scrub, playback status is now correctly set to stopped rather than set to a stepping state.
+
+* Bugfix: Fixed a missing command binding alt-r to record selected objects into sequencer.
+
+* Bugfix: Fixed an issue to Filter hidden functions, which fixes a bug where the field of view property for a cinematic camera appears to be animatable,. It should be hidden just like it is in the property editor.
+
+* Added a warning when Sequencer tries to write to properties that have changed type.
+
+* Sequencer templates are now always regenerated on load
+
+* Level Sequence frame snapshots now take account of fixed-frame interval offsets, and overlapping shot sections on the same row.
+
+* We now convert Linear Color to Color for fade to get the correct fade color in viewport.
+
+* Audio waveforms now show peak samples with smoothed RMS in the center.
+
+* Set max tick rate when in game if force fixed interval playback is enabled.
+
+* Cache player fade state so that restore state will return the values to the pre animated state.
+
+##### Source Control
+
+* Bugfix: Fixed an issue with Git plugin to update the status on directories hotfix.
+
+* With the Git plugin, use use asynchronous "MarkForAdd" and "CheckIn" operations for the initial commit.
+
+* Allow binary files in Git stored via git-fat, git-lfs, etc to be diffed.
+
+##### Static Mesh Editor
+
+* Bugfix: The camera position now stays in place after reimporting from inside the Static Mesh Editor.
+
+##### Traps
+
+* Subversion binaries have been updated to 1.9.5. They should no longer crash when used.
+
+##### VR-Editor
+
+* New: Improved functionality for the VR Mode:
+
+ * Improved the look and feel of the rotation gizmo handles while in VR Mode.
+
+ * Improved interaction for painting terrain, foliage, and mesh painting.
+
+ * Improved gizmo handle animations.
+
+* New: VR Mode is now bound with the Editor Sound settings.
+
+* New: VR Mode motion controllers now have collision when in simulate.
+
+* Bugfix: Fixed VR Mode selection now to respect a component's "Is Selectable" state.
+
+* Bugfix: Fixed an issue with not being able to open a project in the Project Browser with VR Mode auto-entry enabled and the HMD active.
+
+##### Windows
+
+* New: Custom Depth can now be enabled for Landscapes
+
+* Bugfix: Fixed an issue with Landscape spline segment splitting when using streaming levels.
+
+* Bugfix: Fixed an issue with Landscape painting in orthographic viewports when the painted area's Z value was below 0.
+
+##### World Browser
+
+* Bugfix: Fixed an issue when moving a sublevel in World Composition browser does not appear in Undo History.
+
+##### World Outliner
+
+* New: Actors in the World Outliner will now bring their children with them when moved into a newly created folder.
+
+#### Gameplay Framework
+
+* New: Added an option for components to opt out of physics impulses on damage using "Apply Impulse On Damage".
+
+* New: Exposed component's "Ignore Radial Impulse" and “Ignore Radial Force†flags to Blueprints. “Ignore Radial Impulse†is now properly respected when applying impulse to relevant movement components.
+
+* New: The Player Controller's "Should Perform Full Ticket When Paused" can now be set from Blueprints and the Details panel.
+
+* New: Spawn Sound and Force Feedback Blueprint nodes now have a "Auto Destroy" pin that can be set to false to allow the component to be reused after the sound/pattern complete.
+
+* New: The number of buttons that can be used by Raw Input is now 20.
+
+* New: Fields of Attribute MetaData are now editable.
+
+* New: In the Ability System, the "Cancel Ability" has been exposed to Blueprints.
+
+* New: For Cameras, support has been added for specifying a default aspect ratio and whether or not to constrain to it in a Camera Manager subclass.
+
+ * Normally the information would come from a Camera component, but this is useful when using custom view logic that doesn't source from a Camera component as the view target.
+
+* New: Added "​On Component Collision Settings Changed Event" delegate to Primitive Component. Fixed Skeletal Mesh Component not calling Super implementation for “On Component Collision Settings Changedâ€.
+
+* New: Refactored Character Movement Component determination of net send rate when combining moves into a virtual function Get Client Net Send Delta Time. Added configurable values to Game Network Manager under ​[/Script/Engine.GameNetworkManager] in BaseGame.ini: "ClientNetSendMoveDeltaTime", “ClientNetSendMoveDeltaTimeâ€, “ClientNetSendMoveThrottleAtNetSpeedâ€, “ClientNetSendMoveThrottleOverPlayerCountâ€.
+
+ * This replaces the values that were hardcoded in the network code for characters and enables easier configuration of client send rates for movement.
+
+* New: We've increased Pawn location replication precision to 2 decimal places from 0. Prevents replicated pawns from being inside geometry by a large amount. Removed CVars controlling CharacterMovement proxy shrink amount and made those instanced properties on the component.
+
+* New: Added a flag to Character Movement Component to determine whether or not character should Sweep while using "NavWalking", instead of relying on Generate Overlaps flag.
+
+* New: Added "Apply Gravity While Jumping" flag to Character Movement Component. This helps to reduce Framerate Dependent Jump Height issues when disabled, but raises jump height. This is disabled by default.
+
+* Bugfix: Fixed a crash due to null World Settings when rendering a thumbnail.
+
+* Bugfix: Fixed a crash when opening Blueprint after adding a component to native class referenced by a Child Actor Component.
+
+* Bugfix: Fixed several issues with renaming or deleting Gameplay Tags from the Gameplay Tag Project Settings page.
+
+* Bugfix: Fixed an issue when calling "Set Visibility" or “Set Hidden In Game†all children of the component will now properly be reconsidered as to whether they should render.
+
+* Bugfix: After duplicating an Actor, components added to the source instance will now have the correct position in the duplicate.
+
+* Bugfix: Ability actions can now be properly bound to input components.
+
+* Bugfix: Construction scripts will no longer be incorrectly rerun on Actors in a level that was hidden and then later made visible again.
+
+* Bugfix: Fixed an issue warning about invalid world content when loading maps with child Actor components in it.
+
+* Bugfix: Fixed cases where built lighting on child actors could be lost when loading a level.
+
+* Bugfix: Fixed case where child actor template was not cleared when setting child actor class to null.
+
+* Bugfix: Fixed issues with seamless travel in PIE and sub-levels shared between different Persistent Levels.
+
+* Bugfix: Fixed issues where Child Actor Component's "Parent Component" would be null on the client.
+
+* Bugfix: Fixed accumulated forces in Character Movement applied incorrectly when movement mode or active state changes.
+
+ * Added ​"Clear Accumulated Forcesâ€
+
+ * "Add Force" and related functions now avoid adding the force if in Movement Mode is set to "None". When ticking in "None", forces are cleared so they don't pile up until the next valid movement mode. Forces are also cleared if the updated component changes or when the capsule simulates physics.
+
+ * "Deactivate" implemented to stop movement and call “Clear Accumulated Forcesâ€.
+
+ * "Clear Accumulated Forces" now also clears pending launch velocity. Exposed “Clear Accumulated Forces†to Blueprints.
+
+ * "Apply Accumulated Forces" does not call â€Clear Accumulated Forcesâ€, since that would prevent pending launch.
+
+ * "Add Force" and “Add Impulse†now also check that character movement is active (not deactivated, able to tick).
+
+ * "Simulate Movement" handles pending launch and clears forces regardless of whether it's simulated proxy.
+
+ * Inlined Actor Component "Is Active" for performance.
+
+* Bugfix: Fixed characters sliding when landing on slanted surfaces or stairs, when aggressive "Perch" settings could cause a line trace (from the center of a capsule) instead of capsule trace and thereby screw up the floor distance checks.
+
+* Bugfix: Fixed the case of people moving a Character mesh in Begin Play rather than in the Editor or Construction Script and not having the mesh offset reflected correctly in network games.
+
+ * Added function "Cache Initial Mesh Offset" to cache initial mesh offset, used as the target for network smoothing. This takes location and rotation params so you can be explicit on the values, in case you try to change these during network smoothing, where reading the relative offsets would be skewed.
+
+ * Added a call to this function from Begin Play in addition to the existing call from "Post Initialize Components", and exposed this to Blueprints as well for custom changes to mesh offset at runtime.
+
+* Bugfix: Fixed an issue with Projectile Movement Component continuing to simulate (and generate hit events) after it is deactivated during simulation. "Has Stopped Simulation" function now checks if “Is Active†is false.
+
+* Bugfix: Fixed an issue with "Get Welded Bodies" so that it properly returns Skeletal Bodies, instead of the default body for Skeletal Mesh Components.
+
+* Bugfix: Fixed an issue with infinite jump on client when Jump Max Hold Time is not 0.
+
+* Stop dynamic force feedback when initiating Actor is destroyed.
+
+* Clarified the tooltip on the "Inverse Lerp" function.
+
+* In the Movement Component "Deactivate" calls “Stop Movement†to clear cached velocity.
+
+ * It was undesirable that reactivation many seconds or frames later would restore a stale velocity.
+
+* The "Collision.ListComponentWithResponseToProfile" command now includes pending kill objects. Use this to inspect collision responses between objects in a game world.
+
+* Optimized the Math Library "Get Forward Vector" (converts Rotator to forward direction). This way we avoid building a matrix, and avoids 1 more SinCos call.
+
+#### Learning Resources
+
+##### Sample Content
+
+* New: ShooterGame now supports dedicated servers on PC, Mac, and Linux!
+
+#### Localization
+
+* New: Improvements to culture switching and LocRes files.
+
+ * LocRes files now de-duplicate translations when they're generated, which can result in smaller LocRes files.
+
+ * The localization compilation step now produces a LocMeta file, which contains meta-data specifying the native culture during compile, and where the native LocRes file can be found.
+
+ * Changing cultures now loads the native localization data prior to loading the non-native translations to ensure that translations are always applied to a consistent base.
+
+ * The "leet" culture (available when localization testing is enabled) is now always applied against the native translation, and correctly restores non-translated text when switching away from the "leet" culture.
+
+ * "-culture=leet" now works correctly on the command line ("-leet" also works).
+
+ * LoadLocalizationResourcesForCulture is no longer called multiple times during initialization of the text localization manager.
+
+* New: Updated Fast Decimal Format to support the correct 0-9 numerals for the current locale
+
+ * These are typically still Latin, but Middle Eastern languages have some variants.
+
+ * This addresses an inconsistency between FText formatting of numbers and dates (since numbers always used Latin, but dates used the culture correct numerals).
+
+* New: Split the monolithic culture concept in UE4
+
+ * UE4 has historically only supported the concept of a single monolithic "culture" that applied to both text localization and internationalization, as well as all asset localization. Typically the "culture" was set to the "locale" of the OS, however that could be undesirable or incorrect on platforms (such as newer versions of Windows) that have a distinct concept of "language" (for localization) and "locale" (for internationalization).
+
+ * This change splits the concept of "culture" into "language" and "locale", and also adds the concept of "asset groups". The language is now used to work out which localization we should use, and the locale is used to control how numbers/dates/times/etc are formatted within our internationalization library.
+
+ * Asset groups expand on the language used by asset localization and allow you to create a group of asset classes that can be assigned a different culture than the main game language. A typical use-case of this would be creating an "audio" group that could, for example, be set to Japanese while the rest of the game runs in English.
+
+ * If your game doesn't care about the distinction between language and locale, and doesn't need to use asset groups, then you're able to continue to use "culture" as you always have. If, however, you do care about those things, then you'll likely want to avoid using the "culture" directly (as it's now a very aggressive setting that overrides all others), and instead favor using language/locale (games will typically treat these as the same) and asset groups as separate concepts (both in settings, and in your in-game UI).
+
+ * The language or locale for a game can be controlled by settings within the "Internationalization" section of your configs (this would typically be set in your Game User Settings config, in the same way that "culture" works), eg)
+
+ [Internationalization]
+ language=fr
+ locale=fr
+
+ * The asset groups for a game can be controlled by settings within the "Internationalization.AssetGroupClasses" and "Internationalization.AssetGroupCultures" sections of your configs (the asset group class definition would typically be set in your DefaultGame config, and the cultures the groups use would typically be set in your Game User Settings config), eg)
+
+ [Internationalization.AssetGroupClasses]
+ +Audio=SoundWave
+ +Audio=DialogueWave
+ [Internationalization.AssetGroupCultures]
+ +Audio=ja
+
+* Bugfix: Fixed an assert that could trigger when an IME composition is aborted during widget destruction.
+
+* Bugfix: Fixed a crash that could happen if a config was loaded while the Gather Text commandlet was running.
+
+* Bugfix: Fixed text namespaces being treated as case-insensitive when exported to JSON manifests and archives.
+
+* Bugfix: Fixed text format history being clobbered by reference collection.
+
+* Bugfix: Fixed the pluralization of the decorator text during drag-and-drop operations.
+
+* Vastly reduced the number of allocations that happen when rebuilding text at runtime.
+
+#### Networking
+
+* New: Network dormancy efficiency has been improved greatly (if you have large number of dormant actors, they now will have less overhead).
+
+* New: Network consider/relevancy code is now also much more efficient. Overall, expect a 20+% improvement in performance if you have lots of Actors in the network Actor list.
+
+* New: Adaptive network update frequency logic is now on by default. This should improve network performance for games that weren't opt'ing in to this feature.
+
+ * Net.UseAdaptiveNetUpdateFrequency is now 1 by default.
+
+* New: Replays now support network relevancy.
+
+ * All connections are considered when determining if an Actor is relevant.
+
+ * Enable by setting demo.UseNetRelevancy to 1.
+
+ * Override cull distance with demo.CullDistanceOverride.
+
+* New: Added more info about the connection to logs when you see "FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump" message.
+
+* New: Updated OnlineSubSystemNull to properly account for game state and "Allow Join In Progress".
+
+* Bugfix: Fixed a crash that could occur when updating unmapped objects.
+
+* Bugfix: Fixed an issue with IPAddressBSD validation when setting IP from string.
+
+* Bugfix: Fixed a memory leak in network drivers.
+
+* Bugfix: Fixed an issue with syncing of non-contiguious UENUMs over networks.
+
+* AActor "Pending Net Update" has been deprecated. Please use “Pending Net Update†that is now on FNetworkObjectInfo (obtained by calling “Get Network Object Info).
+
+* UNetDriver "Get Network Actor" is now deprecated. Use UNetDriver “Get Network Object Info†instead.
+
+* Disabled net.PartialBunchReliableThreshold for replays (we don't need to worry about bunch fragment sizes since there is no packet loss for replay connections).
+
+#### Online
+
+* New: Steamworks integration has been updated to support version 1.39, including updated steam controller support!
+
+* New: Web Browser module no longer directly depends on Online Subsystem plugins.
+
+ * It uses the Online Engine Interface shim to explicitly depend on the engine and will use Online Subsystem features when that module is optionally added.
+
+* New: Added a new overload for Online Session "Find Friend Session" in the session interface that can retrieve sessions for multiple friends.
+
+* New: Sending and accepting invites on dedicated servers on Steam is now supported.
+
+* New: Updated OpenSSL libraries to use BCrypt on Windows in order to reduce memory allocations.
+
+#### Other
+
+* New: Added a "Buffering" media player event.
+
+* New: The Plugin Browser now supports customizations to allow for context-specific plugin creation.
+
+* Bugfix: Fixed a crash with Media Assets in "Tick Video" after media player is garbage collected.
+
+* Bugfix: Fixed an issue to prevent the default cooked sandbox from trying to read non-cooked assets.
+
+* Bugfix: Fixed a message router thread not being woken up right away on shutdown.Crashreporter uploads/downloads crash data from AWS
+
+* Search button is disabled after clicking it once to prevent accidental double-clicks.
+
+* Reading the config hierarchy for TVOS now matches IOS to get the correct bundle id when packaging a project
+
+#### Paper2D
+
+* Bugfix: Custom tile maps using collision can now be created at runtime on any platform without crashing. However on iOS/Android/HTML5 only the boxes and spheres used in the per-tile collision shapes have effect; arbitrary convex collision (e.g., slopes or other triangle-based collision) will not cause collisions or overlaps until support for PhysX runtime cooking is added to these platforms.
+
+* Bugfix: The Paper2D flipbook editor now shows the current frame correctly when the animation timeline is longer than the editor window and the scroll bar is moved to the right.
+
+* Bugfix: Paper2D flipbook editor now shows the correct number of frames; previously, it was one frame short.
+
+#### Physics
+
+* New: Added sprite to Physics Thruster Component (previously this was only available on Physics Thruster Actor).
+
+* New: Exposed "Set All Physics Angular Velocity" to Blueprints.
+
+* New: Added finer-grain PhysX stat information that is available by using "stat physxtasks".
+
+* New: Added the ability to specify whether a ragdoll is in the sync or async scene with "Use Async Scene".
+
+* New: Changed default contact-gen method to PCM. This is the default in PhysX 3.4.
+
+* New: Added "Is In Air" method to Vehicle Wheel.
+
+* New: For the Wheeled Vehicle Movement Component, the Mass dependent wheel properties now update when mass is updated.
+
+* New: Created "Add Force At Location Local" function to allow component space forces.
+
+* New: Added a new Physics settings "Enable Stabilization". Stabilization can help stacks of simulated bodies to come to rest.
+
+* Bugfix: Fixed a crash in anim dynamics when a world was not valid during pre-update.
+
+* Bugfix: Fixed a crash when saving sub-levels that don't currently have a correctly initialized scene.
+
+* Bugfix: Fixed an issue with incorrect slider for "initial Average Frame Rate" physics setting.
+
+* Bugfix: Fixed an issue with physics constraint warning messages in Message Log. These now list Component/Actor name correctly.
+
+* Bugfix: Fixed an issue with editing Box and Capsule collision primitive rotations by storing rotation as a Rotator rather than Quaternion.
+
+* Bugfix: Editing collision profiles in Editor Preferences no longer discards edits.
+
+* Bugfix: "Find Closest Bone" function no longer ignores the “Required Physics Asset†option.
+
+* Bugfix: Fixed an issue teleport not working for physical animation component.
+
+* Bugfix: Fixed an issue incorrect inertia tensor computation for cubes, which was being doubled.
+
+* Bugfix: Fixed an issue with kinematic body interpolation in substepping causing invalid raycasting, sweeping, or overlapping.
+
+* Bugfix: Physics Constraint component now works as expected when its target is a Child Actor component.
+
+* Bugfix: Fixed an issue with collisions between components with CCD enabled having unreliable behavior.
+
+* Bugfix: Fixed an edge case where generating collision data could cause the engine to hang in an infinite loop.
+
+* Bugfix: Fixed a regression with Raycasts against Capsules returning invalid hits.
+
+* Bugfix: Instanced Static Mesh now properly creates physics state when set to Stationary.
+
+* Bugfix: Fixed a memory leak caused by keeping PhysX shapes in memory after they are no longer being used.
+
+* Expanded self-collision culling for clothing by providing a scale to tweak the culling queries. This makes a tradeoff between performance and accuracy.
+
+* Added a guard against infinitely thin geometry, which fixes some NANs.
+
+* Performance improvements to Anim node "Rigid Body".
+
+* Physics performance is improved by skipping the update of kinematic bodies when they haven't moved.
+
+#### Platforms
+
+* New: Add logging for the NUI GPU reserve so we can see when it's enabled and disabled.
+
+* New: Exposed JAVA_HOME setting in Android SDK Project Settings on Mac.
+
+* New: Added "Platform Handle Splash Screen" to deal with hiding splash screen properly on Startup Movies.
+
+* New: Implemented support for new controllers (Xbox Wireless, SteelSeries Stratus XL, PS4).
+
+ * Note: there are two implementations for Xbox Wireless due to differences in firmware. Firmware before 3.1.1221.0 does not use standard mapping which you can enable by setting the Android.OldXBoxWirelessFirmware CVar to 1 (defaults to new firmware).
+
+* New: Added support for "r.ScreenPercentage" on mobile allowing the game scene to be rendered at lower resolution than the UI. Requires MobileHDR to be enabled.
+
+* New: On-screen warnings now appear when a mobile shader permutation required to correctly render the current scene's lighting setup has been disabled in Project Settings.
+
+* New: Made some big DeviceProfile changes, particularly for the protected platforms.
+
+ * Changed the "type" of some DPs from WindowsNoEditor, etc to Windows. It should be a platform, not a random string.
+
+ * With that change, the platform can be used to save out protected platform DP .ini files to subdirectories, maintaining secrecy
+
+ * Added Config/[PlatformName]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs. See FGenericPlatformMisc::GetConfidentialPlatforms() for more information.
+
+* New: When uploading a HTML5 project to AWS S3, it now supports "signature version 4" authentication and better error message feedback on upload failures.
+
+* New: Added "use fixed timestep" setting option for HTML5 builds (This has been separated from Engine > General Settings - Framerate).
+
+ * This is slightly different to "Smooth Framerate" and “Fixed Framerateâ€.
+
+ * NOTE: Fixing the timestep does not guarantee the actual framerate. Calculations based on delta time may be adversely affected by this.
+
+* New: Added iOS/Android support for new Audio Mixer.
+
+* New: "Does Save Game Exist" will now show a message if the save data is corrupt.
+
+* New: Initial support for voice chat in the Android platform. To use enable the Voice module in DefaultEngine.ini, in the level bp create a session, and in project settings > Platforms > Android > Advanced APKPackaging, check the setting 'Add permissions to support Voice chat (RECORD_AUDIO)'. After this create a multiplayer game between two android devices. For more information check pull request #2894.
+
+* Bugfix: Fixed a crash with mobile feature level preview when the Low Quality Lightmap shader permutation is disabled.
+
+* Bugfix: Fixed a crash in clothing on platforms that don't support clothing.
+
+* Bugfix: Fixed a crash when backgrounding or sleeping on iOS Metal devices.
+
+* Bugfix: Fixed a crash with UIImagePickerController.
+
+* Bugfix: Fixed an issue with executable path for stripping Android debug symbols (handle non-Windows properly).
+
+* Bugfix: Fixed memory reporting for Uniform Buffers in "stat rhi".
+
+* Bugfix: Fixed a slow memory leak in FD3D12UniqueDescriptorTable.
+
+* Bugfix: Fixed rendering of batched Slate primitives in D3D11.x.
+
+* Bugfix: Fixed an issue with S3 public link generator for "Shipping" builds filename.
+
+* Bugfix: Fixed an issue with iOS IDFV string allocation.
+
+* Bugfix: Fixed UPL processing on iOS plist files.
+
+* Bugfix: Fixed network byte ordering for iOS multiplayer sessions.
+
+* Disabled the game analytics anonymous usage data sent to Epic on the console platforms.
+
+* Save 66MB of memory by disabling the unused default SHAPE heap in XAudio2.
+
+* Stop the audio thread from using the 7th CPU core as it can be pre-empted and not get enough execution time.
+
+* Add -distribution when iOS distribution Packaging. with IPhonePackager.exe.
+
+* Changed mouse cursor to be always visible when running in Mobile Preview.
+
+* Refactored memory allocation functions (BinnedAllocFromOS) on all platforms. Made Binned2 malloc work on Linux.
+
+##### All Mobile
+
+* Bugfix: Fixed a crash in mobile patching utilities mount method.
+
+* Bugfix: Fixed an issue with the shader compile for Landscape on platforms below SM4 feature level.
+
+##### Android
+
+* New: Bad package names are now detected and APK generation is stopped with a proper error message instead of failing during Java compiling.
+
+ * Package names with fewer than 2 segments are not allowed (e.g., "myproject" is not allowed, but “com.myproject†is legal).
+
+ * Only alphanumeric characters and underscore are allowed in the package name (Note: hyphens in the project name will be converted to underscores, but any other hyphens need to be corrected in Android project settings).
+
+ * All segments must start with a letter; if your project name starts with a letter you will need to replace the [PROJECT] part of the package name in Android project settings.
+
+ * Reserved Java keywords may not be used as the full segment; appending an underscore or other legal characters will fix this.
+
+ * Segments may not be empty (e.g. "com..myproject" is not legal).
+
+* New: Larger OBB files embedded in APK are now allowed by bypassing Asset Manager.
+
+* New: We've implemented a first pass of Google Cloud Messaging plugin. This is considered an experimental feature for this release.
+
+* New: Added missing key codes for keyboard input (@ and #).
+
+* New: Added a drop-down with some common console commands on Android to the console dialog.
+
+* New: Patches ant.bat to handle long command line issue on Windows.
+
+ * Copies original ant.bat to ant.orig.bat and writes a new ant.bat which uses subst with an unused drive letter to shorten paths).
+
+ * Note: you can edit the generated ant.bat if you need to change the drive letter used; the editor will not replace it if ant.orig.bat is found.
+
+* New: Editor now checks to make sure that at least SDK Android-23 is selected and installed. There will be an error message if an earlier version is installed.
+
+* New: Updated AAR handling to deal with versioning, subproject dependencies for resources, and scope (ignore test).
+
+* New: Added "Game Activity On New Intent Additions" section to Android Unreal Plugin Language (UPL).
+
+* New: Added support for using native virtual keyboard with Slate widgets instead of the dialog currently used for text input.
+
+ * Events are triggered when the virtual keyboard is shown and hidden.
+
+ * The show event includes the area of the screen that is covered by the virtual keyboard.
+
+ * This feature is exposed in the Android Project Settings as an experimental feature checkbox.
+
+* Bugfix: Fixed a crash that could happen when closing the Android web browser.
+
+* Bugfix: Fixed an issue to handle spaces in ANT_HOME path in generated ant.bat patch.
+
+* Bugfix: Fixed an issue with application hanging on returning from the lockscreen if orientation is Landscape.
+
+* Bugfix: Fixed an issue to correct the log warning about Target SDK and permissions.
+
+* Bugfix: Fixed an issue with Launch On when multiple architectures are enabled in the project.
+
+* Bugfix: Fixed an issue with ad banner location on Android 7.0 devices.
+
+* Bugfix: Fixed some documentation errors in UnrealPluginLanguage.cs.
+
+* Bugfix: Fixed the executable path for stripping Android debug symbols for non-Windows platforms.
+
+* Bugfix: Fixed an issue with password hiding in input dialog.
+
+* Bugfix: Fixed an issue with EGL linking issues for ARM64 libraries.
+
+* Bugfix: Fixed an issue to save and restore texture filtering for movie playback in all cases.
+
+* Bugfix: Fixed an issue with Mac and Linux install and uninstall scripts if ANDROID_HOME is not set.
+
+* Bugfix: Fixed an issue with ShowLoginUI interface change in Game Circle plugin.
+
+* Bugfix: Fixed an issue with HTTPChunkInstaller texture format checks and missing #define warning.
+
+* Bugfix: Corrected AndroidManifest.xml required features for "Daydream and Cardboard" option when GoogleVR plugin enabled.
+
+* Bugfix: Fixed an issue to prevent inserting extra permissions into AndroidManifest.xml multiple times from Project Settings.
+
+* Bugfix: The correct APK file name is now used when launching from editor for Android.
+
+* Bugfix: Fixed issues with experimental keyboard.
+
+ * Ensure the local scope ScreenRect passed into "On Virtual Keyboard Shown" in AndroidJNI is captured by value instead of by reference.
+
+ * Moved ShowVirtualKeyboardInput's "Keyboard Showing" early-out checks into the UI thread task. This enables the keyboard to continue showing when changing focus between multiple Editable Text Box widgets.
+
+* Bugfix: Fixed an issue with locations on non-ARMv7 GoogleVR libraries so that it is properly filtered by active architecture.
+
+* Bugfix: Fixed an issue to properly restore state for Android devices not using separate context for movie playback.
+
+* Bugfix: Removed an obsolete warning with Java 1.5. The java.source and java.target are now set to 1.7.
+
+* Only disable Java console command receiver for Shipping builds.
+
+* Build configuration is passed to UPL for access during packaging as $S(Configuration).
+
+* Reenabled GooglePlay for ARM64 now that it doesn't crash.
+
+* Changed Gear VR installLocation to auto as now required by Oculus.
+
+* Rebuilt ICU libraries for Android with timezones enabled and updated build scripts.
+
+* Android media player now pauses and resumes with application state.
+
+* "Is Packaging For Daydream" only returns true if GoogleVR plugin is enabled.
+
+##### HTML5
+
+* New: Emscripten toolchain has been upgraded to 1.37.9.
+
+ * Web assembly
+
+ * WebGL 2
+
+* New: There has been an update to GameX template.
+
+ * Multiple (parallel) downloads with progress percentage updates.
+
+ * Test for wasm and WebGL 2 capabilities.
+
+* New: Updates to python build scripts.
+
+* New: Configurable .ini settings have been exposed to the editor. These can be found in Project Settings > Engine > HTML5.
+
+* New: Added support for emscripten "-pre-js" and “-post-js†option when building for HTML5.
+
+* New: Added support for WebGL 2 shader to turn on Instance Static Mesh Vertex Factory.
+
+* Bugfix: Fixed an issue with AWS S3 shareable link for shipping builds.
+
+* Bugfix: Fixed some issues with WebGL 2 shaders.
+
+* Bugfix: Fixed an issue with HTML5 plugin when Blueprint projects are promoted to code projects automatically.
+
+* The recommendation from emscripten developers is to use "-separate-asm" option for asm.js builds.
+
+* Added many new UE4 patches to package HTML on Linux.
+
+* Since connections are not closed manually (server side), send a dummy payload with content-length data.
+
+##### Import/Export
+
+* New: Set Java source and target to 1.7 (fixes Java 1.5 obsolete warnings).
+
+* New: Added support for changing the variable "r.MobileContentScaleFactor" at runtime on Android. This is useful for device-specific resolution tweaking.
+
+* Bugfix: Fixed an issue where HTML5 video in a Web Browser widget would only output sound but no video on Android.
+
+* Bugfix: Fixed an issue where the red and blue channels were reversed in screenshots taken on Android in Vulkan mode.
+
+* Disabled eglSwapInterval since it can cause issues with some drivers.
+
+* Changed text for Android Mobile Deferred Renderer setting to indicate that it's only supported on Nvidia K1 and X1 devices.
+
+##### iOS
+
+* New: As we move towards the next version of iOS, we will be moving towards 64-bit support only. We have added messaging in this release to start the process of this migration.
+
+* New: IOS now utilizes the Library/Caches directory to save any data on device. This includes logs and save games. IPhonePackager has been updated to pull the data from this location as well as the Documents directory.
+
+* New: Xcode 8.3 is properly supported in this release.
+
+* Bugfix: Fixed a crash if Text Box widget is closed before text is finished being entered.
+
+* Bugfix: Fixed a crash in the OnlineSubsystem when it is disabled on iOS.
+
+* Bugfix: Fixed an issue with static audio noise on iOS devices.
+
+* Bugfix: Fixed an issue with remote compiling by unconverting the path back to host when reading from the module file name.
+
+* Bugfix: Fixed a memory leak on texture creation with Bulk Data in OpenGLTexture.cpp.
+
+* Bugfix: Fixed an issue with the device profile names for iPad Pro 9.7 and 12.9.
+
+##### Linux
+
+* New: Added pooling of OS allocations on Linux, greatly reducing the need to call mmap/munmap() and avoiding running into vm.max_map_count limit when loading large projects.
+
+* New: Install of MIME types during setup is now supported.
+
+* New: UnrealPak is no longer included in the default make target, the prebuilt binary will be used instead.
+
+* Bugfix: Fixed a crash in ShaderCompileWorker due to misaligned strings.
+
+* Bugfix: Fixed starting Linux programs using FPlatformProcess::CreateProc() from a path with space.
+
+* Bugfix: Fixed various issues with Vulkan RHI on Linux.
+
+* Bugfix: SlateDlg now appropriately compares filter extensions in a case-insensitive way, so both *.fbx and *.FBX work.
+
+* Bugfix: Fixed bogus "unable to make config file writable" message (the operation was actually succeeding).
+
+* Bugfix: Fixed clang 4.0 warnings.
+
+* Bugfix: Fixed inability to rebuild lighting in ResavePackages commandlet on Mac and Linux.
+
+* Bugfix: Fixed some problems when working from directories that have space character in their names.
+
+* Bugfix: Fixed older versions of Linux cross-toolchain (ones using LINUX_ROOT instead of LINUX_MULTIARCH_ROOT) not being detected.
+
+* Bugfix: Fixed a memory leak in callstack symbolication on Linux. This makes memory profiling work again.
+
+* Bugfix: Fixed an issue with Linux editor splash screen image being wrong when no project has been opened.
+
+* Bugfix: Fixed MoveFile to work across file systems.
+
+* Bugfix: Removed redundant RootDir() and EngineDir() on Linux.
+
+##### Mac
+
+* New: Enable Metal Shader Model 5 support on Intel as of 10.12.4 and later.
+
+* New: On Macs that do not support Metal, but erroneously report that they do, show a message box that tells users that the application cannot run instead of crashing on a failed assert.
+
+* New: Removed Mac OpenGL RHI files and disabled building of OpenGL RHI on Mac.
+
+* New: Limited support added for exposing debug events to Apple's Instruments "Points of Interest" tool.
+
+* New: Added RHISetResourceAliasability_RenderThread to FDynamicRHI for RHIs to implement simple render-target aliasing.
+
+* New: Added FApplePlatformObject, a custom block allocator for Objective-C types (with NSZombie support) which is now used in Metal RHI to decrease allocation costs of Objective-C types.
+
+* New: Limited support for Xcode automatic code-signing for iOS/tvOS.
+
+* New: Reimplement RQT_AbsoluteTime for Metal using a similar emulation to OpenGL on Mac so that the scalability system can correctly set the default graphics options. Not all drivers support this and in those cases the scalability settings are determined by an alternative, fixed, code-path.
+
+* Bugfix: Fixed mouse position issues in fullscreen mode on Mac.
+
+* Bugfix: Fixed an issue in Avf Media Player causing looped movies to only play once.
+
+* Worked around Metal's lack of implicit type-casting that was causing incorrect rendering in the Distance Field Ambient Occlusion and Shadows shaders.
+
+* Re-ordered the options in MetalRHI's internal debug options (Console Variable: "rhi.Metal.RuntimeDebugLevel") to make it more efficient.
+
+* Minimisation of render-target changes in some passes, notably Scene Occlusion and DBuffer Decals.
+
+##### Tools
+
+* Bugfix: Fixed a rare crash with the Web Browser widget on iOS.
+
+* Bugfix: Fixed iPhonePackager errors in output log when opening Project Settings on Windows.
+
+* Bugfix: Fixed Get Max Samplers returning an incorrect value for iOS OpenGL, which could have suppressed some warnings for shaders that used more than 8 samplers.
+
+* Removed duplicate gc.MaxObjectsInGame setting in IOSEngine.ini.
+
+##### Windows
+
+* Bugfix: Fixed a problem on Windows where the cursor would get locked to a part of the screen after switching from fullscreen to windowed while the cursor was unlocked.
+
+#### Programming
+
+* New: Added an experimental Android option to enable Shipping builds with hidden symbol visibility by default. (bBuildWithHiddenSymbolVisibility).
+
+ * Add JNI_METHOD for java accessible native functions, without this java will trigger an unsatisfiedlinkerror exception.
+
+ * This can significantly reduce the size of the final .so file.
+
+* New: Added support for map file generation with Android.
+
+* New: Crash reporter is no longer staged by default when packaging from the editor. The default endpoint for crashes was an Epic server, so including it in packaged games by default was not useful.
+
+* New: Script plugins can now specify dependencies which should trigger UnrealHeaderTool to be re-run, by overriding the IScriptGeneratorPluginInterface.GetExternalDependencies() method.
+
+* Bugfix: Fixed a crash where Canvas wouldn't update font engine services if it was never created.
+
+* Bugfix: Fixed an issue with Automation Tool exception when running Perforce commands if multiple brokers are present in the server configuration.
+
+* Android links with -gc-sections to remove unused code/data.
+
+* Program targets can now be excluded from the full solution build roster by setting bBuildInSolutionByDefault to false from their .target.cs file.
+
+#### Rendering
+
+* New: Added support for Window PIX.
+
+* New: Enabled support for NVIDIA Aftermath. On Aftermath enabled executables you can now get a GPU callstack when a GPU crash is detected.
+
+* New: Enabled support for global Distance Field shaders on GL 4.3 and Vulkan SM5.
+
+* New: Added support for Quad overdraw viewmode in the Forward Renderer.
+
+* New: Add support for per-component Skeletal Mesh skin weight overrides.
+
+* New: Added /VIRTUALIZEDIRECTX option to XgConsole for XGE shader compiling to work on remote machines without DX installed.
+
+* New: Added support for Structured-Buffer resource views to Metal RHI.
+
+* New: Added AMD path to experimental D3D11 HDR support.
+
+* New: Exposed the r.DisableDistortion cvar for toggling distortion rendering.
+
+* New: The high level rendering code is now PipelineStateObject aware which will allow us to reduce complexity in the rendering backends of Vulkan, Metal and Dx12 in the future.
+
+* New:Added FShaderCodeLibrary which handles de-duplication of shaders during content cooking and the shader code has moved into a separate library for cooked content runtime loading. This reduces package sizes and load-time overhead.
+
+* New: Added RHIShaderLibrary for platform specific native shader library implementations. This allows each platform to provide its own optimal shader library implementations.
+
+* New: Added Metal (MacOS and iOS) native shader library where shaders are loaded from a single Metal library improving the memory footprint, load time, and runtime compile times.
+
+* New: As part of the cook process for Metal, the archiving process also generate text shaders that can be used when running with optimized Metal shaders. Run with optimized shaders and while debugging with text source.
+
+* New: Added command line option "-noheartbeatthread" to disable heart beat thread.
+
+* New: Full refactor of the GPU Skin Cache to fix multiple issues related to Editor, Persona, per-frame numbering. Memory limit is now set per World in the Project Settings > Rendering section.
+
+* New: ShaderCache now supports running with multithreaded rendering. Command line flag "-norhithread" is no longer required to enable this feature and can now be removed if it was being used solely for this purpose.
+
+* Bugfix: Fixed a crash with D3D12 in "Update Texture 2D".
+
+* Bugfix: Fixed an assertion failure in basepass when trying to draw a mesh with Post Process Material.
+
+* Bugfix: Fixed a crash when the Tile Renderer renders before any other renderer. This could happen in rare cases on Editor bootup.
+
+* Bugfix: Fixed a crash accessing mesh Material arrays with invalid index.
+
+* Bugfix: Fixed a potential crash when rendering to accessible buffer.
+
+* Bugfix: Fixed a possible crash when failing to import cubemaps.
+
+* Bugfix: Fixed a crash for MacOS/Metal when compiling Materials using the Vector Noise node.
+
+* Bugfix: Fixed overflow issues that could occur on mali based devices when rendering DoF with bright objects.
+
+* Bugfix: Various Vulkan fixes:
+
+ * Compiles in Linux.
+
+ * Many cubemap issues squashed.
+
+ * Changed the scratch reflection cubemap clear to SetRenderTargestsAndClear, instead of SetRenderTarget() / Clear().
+
+ * Added compute fences.
+
+* Bugfix: Fixed several sRGB related issues with Retainer Box widget.
+
+* Bugfix: Fixed an issue with prepass/basepass z-fighting, caused by bad vertex welding in depth-only indexbuffer.
+
+* Bugfix: Fixed an issue with velocity rendering when an off axis projection matrix changes from frame to frame.
+
+ * Affects very few people. Cave rendering and stereo glasses but not HMDs.
+
+* Bugfix: Fixed an issue with scene motion blur data is only updated for the main renderer frames. Fixes scene captures and planar reflections breaking object motion blur.
+
+* Bugfix: Fixed an issue with Exponential Height Fog where it renders incorrectly after world origin rebasing.
+
+* Bugfix: Fixed an issue introduced into 4.15 where Static Meshes with auto-generated LODs were no longer sharing lightmaps between LODs.
+
+* Bugfix: Fixed bug converting a Procedural Mesh component to a Static Mesh if it only contains a single triangle.
+
+* Bugfix: Fixed an issue where Scene Capture 2D's show flags would not be applied properly in some circumstances.
+
+* Bugfix: Fixed an issue where the "disable Stationary Skylight" feature would cause improper warnings. Also made it so that a movable Skylight is always used in Persona preview window so all projects can get preview lighting.
+
+* Bugfix: Fixed an issue where High Quality Particle Lights would not move properly if their parent was attached to a socket of an animated skeleton.
+
+* Bugfix: Fixed detection of OpenGL Radeon driver on Mesa.
+
+* Bugfix: Fixed an issue with shot command in Vulkan.
+
+* Bugfix: Fixed an issue with refract() intrinsic handling in hlslcc for GL/Metal/Vulkan.
+
+* Bugfix: Fixed an issue with missing Mobile Material Interface for Landscape "Used Materials" check.
+
+* Bugfix: Fixed rare case where Decals could incorrectly draw a second time in separate translucency pass.
+
+* Bugfix: Fixed a bug with the basic eye adaptation mode that could result in incorrect brightness when using a small viewport. This has no effect on the default histogram version of eye adaptation.
+
+* Bugfix: Fixed an issue with Separate Translucency being affected by Gaussian DoF.
+
+* Bugfix: Fixed an issue with "Streaming Bounds" show flag not working correctly. It now shows the texture streaming bounds for the textures currently selected in the Content Browser.
+
+* Bugfix: Fixed possible stall when canceling texture updates.
+
+* Bugfix: Fixed an issue for tone mapping of bright objects with zero green. Previously, these could have had a one-pixel black outline.
+
+* Bugfix: Fixed an issue with the IES Light Profile importer with LM-63-1986 format.
+
+* Texture flags are now properly routed to RHICreateTexture3D from the render target pool.
+
+* Collection Parameter Nodes no longer rename parameters when duplicated.
+
+* Renamed console variable "r.Streaming.ScaleTexturesByGlobalMyBias" to "r.Streaming.ScaleTexturesByGlobalMipBias".
+
+* Now when using the "freezerendering" command, the foliage culling/occlusion will also be frozen.
+
+* Optimize the computation behind the Screen Position material expression in the pixel shader.
+
+ * Exposes the viewport offset of the view within the render target in the View Property material expression.
+
+##### FX
+
+* Bugfix: Fixed an issue with rendering corruption issue with 4 and 8 vertex instanced particles using the wrong Vertex Factory objects.
+
+ * D3D didn't need separate Vertex Factories due to the VertexDecl updating the stride at draw call time, but some platforms were affected.
+
+##### Lighting
+
+* New: Improved quality and significantly faster cubemap prefiltering for reflections and skylight.
+
+* New: Post Process Indirect Lighting Intensity no longer scales Skylight reflections.
+
+* New: Screen Space Reflections (SSR) now has a higher quality setting for sharp SSR when using Quality Level 4.
+
+* New: Distance field self shadowing controls for hiding world position offset self-shadow artifacts.
+
+ * Removed Static Mesh Build Settings "Distance Field Bias", which shrunk the distance field, breaking AO and shadows.
+
+* New: Distance field mesh visualization now uses a cone containing the entire tile to cull objects with, making the results stable.
+
+* New: Distance field temporal filter stores a confidence value, which is used to track leaking of occlusion during the upsample, and flush those leaked values through the history faster. Reduces DFAO ghosting when the camera is moving.
+
+* New: Added some new features to the Skylight component.
+
+ * "Occlusion Exponent" which is useful for brightening up indoors without losing contact shadows as “Min Occlusion†does.
+
+ * "Occlusion Combine Mode" which is useful for artists to choose how to combine SSAO with Distance Field Ambient Occlusion.
+
+* New: Added "r.AOListMeshDistanceFields" which dumps out mesh distance fields sorted by memory size, useful for directing content optimizations.
+
+* New: Planar reflections handle views smaller than the render target in a general way.
+
+ * Fixes planar reflections with adaptive pixel density (ViewFamily size larger than actual views combined).
+
+ * Planar reflections are now supported in splitscreen.
+
+* New: Support for fading of Light Propagation Volume cells towards the volume edges.
+
+* Fresnel of clear coat layer now darkens diffuse for the clear coat shading model.
+
+* SSR is now reprojected correctly on moving objects.
+
+* Raised High ShadowQuality to 2048 as 1024 for CSM is too low.
+
+* Disabled all distance field features on Intel cards because the HD 4000 hangs in the RHICreateTexture3D call to allocate the large atlas.
+
+##### Materials
+
+* New: Added a "Sign" material graph node which replaces the library function for more optimal translation.
+
+* New: Added MinimalAPI to several material expressions.
+
+* New: Updated default behavior of "Power" node to no longer “abs†or “max†against an arbitrary value as the results were incorrect.
+
+ * Previous version available by calling ClampedPow(x, y) in a "Custom" node.
+
+* New: Improved material translation preservation of constants.
+
+ * This improves detection of used attributes which prevents some cases of features being enabled incorrectly.
+
+* New: Material flag normal curvature to roughness now works in the Deferred Renderer. It is no longer forward only.
+
+* New: Improved Material graph error messages.
+
+* New: Enabled "r.Streaming.UsePerTextureBias" by default as a way to improve quality in low texture budget settings.
+
+* Bugfix: Fixed errors across various library Material Functions.
+
+* Bugfix: Fixed an issue with broken size query for render targets in Material graphs.
+
+ * Implemented missing "Get Size" functionality.
+
+* Bugfix: Fixed various data type inconsistencies on legacy Make and Break Material Attributes graph nodes.
+
+ * Using these together with the "Get" and “Set†Materia lAttributes nodes should now be more forgiving.
+
+* Bugfix: Fixed a regression in HLOD shadow casting performance.
+
+* Bugfix: Fixed inconsistent results with the "Investigate Texture" commands.
+
+* Bugfix: Fixed possible incorrect results when listing textures used by Material Instances.
+
+* Bugfix: Fixed an issue where Material Reroute nodes did not bind properly to Texture Object Parameters.
+
+##### Mobile Rendering
+
+* New: Mobile Skylights no longer render the scene on the device to determine the sky's color. Mobile skylight uses values determined via captures performed in the editor. This saves memory and performance on device and enables Skylight contribution on devices that do not support fp16 render targets.
+
+* New: Added "r.Mobile.TonemapperFilm" console variable which can be used to enable/disable new filmic tonemapper on Mobile devices, independently from Desktop platforms (disabled by default).
+
+* New: Material AO is now supported for the Mobile Rendering path.
+
+* New: Added better defaults for rendering resolution on iOS devices, to make them more inline with defaults on Android devices.
+
+* Bugfix: Fixed a crash that could occur on some devices when loading materials which use fonts as texture parameters.
+
+* Bugfix: Fixed a crash with Particle Cutouts on mobile devices that don't support hardware instancing (ie. Mali-400 GPU).
+
+* Bugfix: Fixed a crash when enabling shader cache on NVIDIA Shield devices.
+
+* Bugfix: Fixed a crash when previewing feature level ES3.1 with a Material using World Position Offset.
+
+* Bugfix: Fixed a crash with Media Player on iOS devices.
+
+* Bugfix: Fixed an issue with Static Mesh self-shadowing with modulated shadows.
+
+* Bugfix: Fixed several issues that could cause CSM shadowing on mobile devices to flicker.
+
+* Bugfix: Fixed an issue with scene captures on mobile when Mobile HDR is disabled and the scene capture source is Scene Color.
+
+* Bugfix: Fixed an issue with bright dynamic point lights cause bloom rendering artifacts on Android Mali devices.
+
+* Bugfix: Fixed an issue where Landscapes do not render on some Android PowerVR devices.
+
+* Bugfix: Fixed an issue where translucent object appear black on Zenfone5.
+
+* Bugfix: Fixed an redundant blend state change in OpenGL ES2.
+
+* Bugfix: Fixed rendering artifacts with bloom on iPhone7 using Metal.
+
+* Bugfix: Fixed an issue where exposure was more extreme on mobile devices with a new filmic tonemapper enabled.
+
+* Bugfix: Fixed an issue with padded NPOT textures not rendering correctly on iOS.
+
+* Bugfix: Fixed an issue with gamma issues with canvas elements on iOS Metal devices.
+
+* Significantly reduced OpenGL state setup for Slate draw calls on Mobile devices.
+
+* Slate pixel shaders will use half precision, for better UI performance on Mobile devices.
+
+* Mobile targeted projects will have better UI performance settings by default.
+
+##### Optimizations
+
+* New: Added 'r.CompressMeshDistanceFields' console command to rendering project settings, defaults to off to prevent hitches when streaming in levels.
+
+ * When enabled, mesh distance fields are stored zlib compressed in memory until needed for uploading to GPU.
+
+ * 81Mb of backing memory -> 32Mb in GPU Perf Test.
+
+ * Atlas upload time 29ms -> 893ms.
+
+* New: Added a new global distance field (4x 128^3 clipmaps) which caches mostly static primitives (Mobility set to Static or Stationary).
+
+ * The full global distance field inherits from the mostly static cache, so when a Movable primitive is modified, only other movable primitives in the vicinity need to be re-composited into the global distance field.
+
+ * Global distance field update cost with one large rotating object went from 2.5ms -> 0.2ms on 970GTX. Worst case full volume update is mostly the same.
+
+* New: Added LOD Distance Factor to Scene Capture Component, which can be used to make scene captures and planar reflections much cheaper to render if the scene has good LODs setup.
+
+* New: Added the r.LightMaxDrawDistanceScale console command for local light scalability.
+
+* New: Added a rendering project setting to use 8 bit mesh distance fields.
+
+ * This halves their memory requirement but introduces artifacts with large meshes.
+
+* New: Added new async tasks to reduce the cost of the texture streaming update on the game thread.
+
+* New: Added some automatic callbacks whenever dynamic component renderstates are updated in order to also update their texture streaming states.
+
+* Bugfix: Fixed async SSAO not actually running asynchronously when depth drawing mode was DDM_AllOpaque.
+
+* Bugfix: Fixed render queries stalling in Test/Shipping builds due to lack of pooling.
+
+* Ray Traced Distance Field Shadow optimized.
+
+ * From 1.8ms -> 0.8ms in a test scene.
+
+* Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough. This saves 10mb of tile culling buffers.
+
+* GNM RHI Clear UAV uses a compute shader for buffers larger than 1Kb.
+
+* GNM Structured buffers are now placed in GPU memory (was previously in CPU memory).
+
+* DFAO optimizations:
+
+ * Changed the culling algorithm to produce a list of intersecting screen tiles for each object, instead of the other way around. Each tile / object intersection gets its own cone tracing thread group so wavefronts are much smaller and scheduled better.
+
+ * From 3.63ms -> 3.48ms (0.15ms saved).
+
+ * Replaced slow instructions in inner loop with fast approximations (exp2 -> sqr + 1, rcpFast, lengthFast).
+
+ * From 3.25ms -> 3.09ms (0.16ms saved).
+
+ * Moved transform from world to local space out of the inner loop (sample position constructed from local space position + direction).
+
+ * From 3.09ms -> 3.04ms (0.05ms saved).
+
+* Structured buffers for DF object data.
+
+ * Full global distance field clipmap composite 3.0ms -> 2.0ms due to scalarized loads.
+
+* Exposed MaxObjectsPerTile with the 'r.AOMaxObjectsPerCullTile' console command and lowered the default from 512 to 256. This saves 17Mb of object tile culling data structures.
+
+ * This can cause flickering in Ray Traced Distance Field shadows if too many objects fall into one shadowmap culling tile.
+
+* Scene color resolves are restricted to the views. This fixes inefficiency with adaptive pixel density where the views don't match the view family size.
+
+* When using a full prepass, the base pass no longer writes depth.
+
+ * Saves 0.3ms of Scene Depth Resolve on 970 GTX with MSAA. Also allows masked materials to get EarlyZ in the base pass.
+
+ * Fixed primitives with Use As Occluder set to false being excluded from a full depth pass in static draw lists.
+
+ * Added the "r.BasePassWriteDepthEvenWithFullPrepass" console command for verifying that the base pass depths match the prepass depths.
+
+* Changing movable skylight properties no longer affects static draw lists.
+
+* Mesh distance field generation uses Embree, which provides a 2.5x speed increase.
+
+* Cleared light attenuation for local lights with a quad covering their screen extents.
+
+ * Clearing the entire light attenuation buffer costs 0.1ms. This optimization lowers the minimum cost of a shadow casting light from 0.15ms to 0.03ms.
+
+* Flushed deferred deletes when reallocating distance field atlas to reduce peak memory, at the cost of a hitch on first frame.
+
+* Disabled point / spot lights with Max Draw Distance on Low PC.
+
+* Made use of Metal's "Deferred Store Actions" where available to avoid incorrect “Store†actions introduced when restarting passes to switch encoder types or when using the Metal RHI debugging tools.
+
+* Stopped the Shader Cache recording all the RHI resources unless it is running on OpenGL. This significantly reduces the CPU overhead of enabling the Shader Cache.
+
+* HLOD texture force loaded through the "r.Streaming.HLODStrategy" console command will now load visible mips first.
+
+* The command "BuildMaterialTextureStreamingData" can now be used with "all" as argument to force a rebuild.
+
+* Reduced the texture streaming overhead for components by keeping track of the state within the streamer.
+
+##### Postprocessing
+
+* New: Using Custom Depth to write to the stencil buffer now has the ability to use single-channel bitmasks that ignore depth. This makes it possible to detect overlaps between stencil objects.
+
+* Bugfix: Fixed log value conversion in tonemapping causing true blacks to be lost.
+
+* Motion blur no longer gets dark at the edges of the screen.
+
+#### UI
+
+* New: Added API to programmatically change the Virtual Cursors UMG Widget on the Viewport Client.
+
+* Bugfix: Fixed sRGB conversion issues in Retainer Box when used with a material.
+
+* Multiline editable text boxes can now be marked as read-only.
+
+* Selecting multiple text widgets will now correctly set text when the text field is edited.
+
+* Widget Components will now correctly determine between hover and clicked states when using or simulating touch.
+
+##### Slate
+
+* New: Added Enum Has All Flags and Enum Has Any Flags, templated functions to make it easier to check for the existence of a flag on enum classes.
+
+* New: There is now a console variable option, Slate.VerifyHitTestVisibility (off by default), which enables additional visibility checks for widgets. Normally this is not necessary, but if you are changing the visibility of widgets during a frame, and several hit tests need to be performed that frame, there is a chance that a button could be clicked twice in one frame. Enabling this mode will make all hit testing more expensive, so for now it is off by default, but available for licensees that need the extra testing.
+
+* New: Added the ability to invert alpha when drawing slate textures. This will be used in the future for rendering render targets for the scene which have inverted alpha.
+
+* Bugfix: Fixed a crash during editable text widget destruction while a context menu was still open.
+
+* Bugfix: Fixed a crash when deleting a streamed font.
+
+* Bugfix: Fixed lots of outline data being added to the font cache due to wrongly hashing outline material and color data.
+
+* Bugfix: Tooltips will no longer show if the cursor is not directly over a Slate window. Fixed a case where the tooltip would not disappear when the cursor is moved over another application's window that was placed on top of a Slate window.
+
+* Bugfix: Fixed an issue where the cursor would sometimes not appear when its visibility was changed. This was rooted in how the OS requested cursor changes, WM_SETCURSOR on Windows only asks for new cursors when the mouse moves, but often cursors change just because mouse capture changes. So now the path has been centralized in Slate Tick to only handle the cursor changes in one place, and several places that need to refresh the cursor state, now set a flag to handle it on next tick.
+
+* Bugfix: Fixed a bug with ZOrder being discarded on the SOverlay slot.
+
+* Bugfix: Fixed Web Browser Viewport to properly scale.
+
+* Bugfix: SButton now correctly releases mouse capture even if it becomes disabled while pressed, but before 'click' has been fired.
+
+* Improved text rendering when the last resort font is missing.
+
+ * The last resort font is no longer included in shipping builds, so this change makes some improvements to text rendering when it is missing.
+
+ * The legacy font cache no longer tries to use the last resort font if it is not available (preventing warnings).
+
+ * The Slate font renderer no longer tries to use the last resort font if it is not available.
+
+ * Text shaping will use the last resort character if none of the available fonts can render a given character (likely because the last resort font is missing).
+
+ * HarfBuzz shaped text now uses the fallback character correctly.
+
+* Kerning-only text shaping no longer draws characters to get their metrics.
+
+* Text selection height is now the maximum of the line height and text height to account for negative line-height scaling.
+
+* Added a setting to control whether we should use the font metrics or the bounding box when laying out a font.
+
+ * Not all fonts have accurate metrics data, so using the bounding box can produce much better results for certain fonts.
+
+* Made slate loading widget / movie playback more thread safe by eliminating Slate application or the main window from being ticked directly on another thread. Is In Game Thread will also no longer return true when called from the slate loading widget thread.
+
+* Force resolution in standalone if the resolution is larger than primary working area.
+
+* Moved ESlateDrawEffect & ESlateBatchDrawFlag over to be enum class. Found cases where the enum order was being improperly assumed, and so now it will not be possible to just treat an int32 or a bool as the draw effect value.
+
+* Slate Application now maintains separate tracking for each pointer being utilized for drag drop, so now multiple fingers on multiple widgets can now simultaneously be attempting a drag, however once one of them becomes successful, we clear all state of all other tracking since only one Drag Drop operation is possible at a time.
+
+* Fold Tick is now removed from the codebase. We have not supported the other (non-folded) code path for awhile, so there was no point in maintaining the switch.
+
+* The Checkbox widget no longer just passes visibility down to the internal widgets it creates, that prevents future changes to affect it if it starts collapsed.
+
+##### UMG
+
+* New: Added Timing Policy option to Widget Component, so widgets can optionally tick in pausable/dilatable game time rather than real time.
+
+* New: Added a material function that exposes all of the current UV sets with nice names instead of indexed coordinates.
+
+* New: Added a method to create Slate Brushes from Paper Sprites the same way we can for materials and textures in blueprints.
+
+* New: Introduced PreConstruct and Native PreConstruct to the base User Widget. Users can now visualize non-binding based changes in the designer by evaluating a very limited amount of the blueprint code. In the event your user widget crashes on load, due to calling something unsafe, you can disable evaluation in the editor preferences under Widget Designer.
+
+* New: Introduced a way to inform widgets of more information about the designer. There is now a Designer Changed event sent to all design time widgets letting them know things like the current screen size and DPI scale.
+
+* Bugfix: Fixed a crash if UI blurs are rotated.
+
+* Bugfix: Outline color on text elements is now inherited properly.
+
+* Bugfix: Fixed a bug that prevented Get Owning Player in Widget from returning.
+
+* Bugfix: Additional fixes to the way we migrate changes from the preview to the serialized version of the widget tree in the widget editor. This fixes several issues with edit-inline Objects on Widgets.
+
+* Exposed a normalized (0-1) uv coordinate set and scaled pixel size for Box and Border brushes.
+
+* Widget Interaction Components now ignore Visible(false) Widget Components when tracing.
+
+* Widget animations now finish evaluating before firing an event alerting that the animation finished.
+
+* The Widget Interaction Component now checks if the Widget is enabled before it claims that it is over an interactable or keyboard focusable widget.
+
+* Adding some setters and getters for Redraw Time to the Widget Component.
+
+* Widgets projected into screenspace from the Widget Component should now appear in the correct locations if the player's camera has an aspect ratio lock.
+
+* The Safe Zone widget will now show the correct safe zone amount if you use the safezone command line options, which are now documented in the comment for the Safe Zone class.
+
+* Widget switchers that contain widgets with named slots will now correctly display a widget whose named slot is currently selected.
+
+* Widgets that are copied and pasted will now retain the same name in the widget hierarchy.
+
+#### VR
+
+* New: Added support for getting device depth from Scene Capture Component 2Ds.
+
+* New: Added ability to disable the autoloading splash screen, which would prevent the manual "hide splash screen" node from working properly.
+
+* New: Added Gear VR controller support.
+
+* New: Added support for OES_EGL_image_external to the mobile GL renderer.
+
+* Bugfix: Negative Stereo Layer priorities are now handled correctly on Steam VR.
+
+* Bugfix: Fixed threading issue with motion controller tracking that caused controller motion pops. This problem manifested intermittently.
+
+* Bugfix: Fixed crash on Oculus Rift when attempting to enter stereo mode while the HMD's 'on head' proximity sensor is not triggered.
+
+* Bugfix: Fixed low framerate when Oculus Rift 'on head' proximity sensor is not triggered and you exit stereo rendering.
+
+* The GearVR HMD plugin is now only enabled on Windows if the Oculus service is already running.
+
+* VR console commands have been rewritten to support autocompletion and inline help strings.
+
+ * The VR console commands have also be renamed and now begin with vr.*.
+
+ * The renamed VR commands have backwards compatible aliases, but will print a warning notifying the user about the deprecated functionality.
+
+* GoogleVR HMD now reacts to changes in the r.ScreenPercentage console command.
+
+* When the -hmd command line option is used to override the selected HMD, HMD plugins that are loaded early will now be unloaded during PreInit if not selected.
+
+* Integrated OpenGL support for SteamVR.
+
+* The left eye is used when selecting LODs to avoid selecting two separate LOD levels when rendering in stereo.
+
+* PSVR controller tracking limit management system.
+
+ * PSVR can track the HMD and two controllers, but many more devices can be connected. With this system you can manage which controllers are tracked to stay under the limit.
+
+* Additional WorldScale refactoring for all platforms.
+
+* GoogleVR plugin updated to version 1.3
+
+* Fixed Android manifest for Daydream and Cardboard.
+
+* Updated GoogleVR plugin to version 1.3.
+
+* GoogleVR SDK updated to 1.40.0.
+
+* GoogleVR Mode default changed to Daydream and Cardboard.
+
+## Programming Release Notes
+
+#### AI
+
+* New: Added a new mode to composite EQS generator (UEnvQueryGenerator_Composite), which allows the use of different types of items by each child generator. This can be enabled by advanced properties: bAllowDifferentItemTypes and ForcedItemType. ForcedItemType is the final type returned by the generator, and is used for allocating memory and executing tests. This mode is potentially unsafe and you will have to ensure proper memory layout (matching with ForcedItemType) of all item types used by child generators - usually subsets of ForcedItemType. Keep in mind that allocated memory block is zeroed before use.
+
+##### Debugging Tools
+
+* Bugfix: Fixed VisualLog macros for recording segments with user defined thickness.
+
+* Bugfix: Fixed compilation errors in VisualLog macros for recording custom meshes.
+
+##### Navigation
+
+* Bugfix: Fixed memory corruption in generic A* solver: FGraphAStar.
+
+* Bugfix: Fixed unique Id duplicates in custom navigation links.
+
+* Bugfix: Fixed FRecastTileGenerator::Modifiers being erroneously counted twice when stating memory.
+
+* NavModifierVolume has been marked as ENGINE_API and can now be freely used in game code.
+
+* Made FNavAgentProperties::GetExtent return INVALID_NAVEXTENT if a prop's AgentRadius is not set. This results in properly using FNavAgentProperties::DefaultProperties in navigation queries when no query extent override is provided.
+
+#### Animation
+
+* New: Added more exports to AnimationAsset, AnimSequenceBase, and Skeleton classes.
+
+##### Animation Blueprint
+
+* Bugfix: Fixed nodes only getting CopyNodeDataToPreviewNode called when pin defaults were changed (not any property change).
+
+##### Skeletal Mesh
+
+* New: Added exports to FFbxImporter, FDynamicSkelMeshObjectDataCPUSkin, and FSkeletalMeshObjectCPUSkin, for extensibility.
+
+#### Audio
+
+* New: Added new cvars to help with optimization (only applies to the new Audio Mixer).
+
+ * au.DisableReverbSubmix, au.DisableEQSubmix, ​au.DisableParallelSourceProcessing, au.SetAudioChannelCount
+
+* Bugfix: Fixed MIDI Device plugin public headers not being able to be included from an external module.
+
+* Optimized internals of new Audio Mixer. Gains approach 15% savings from before:
+
+ * Turned a float divide into a multiply, which occurred at least 32k times per audio update.
+
+ * Avoided thousands of Array.Add() calls during processing, which on shipping still does checks to see if the allocator has to grow, and updates ArrayCount.
+
+ * Removed pointer indirection and successive TArray Add()s in GetChannelMap().
+
+ * Removed function call overhead to updating channel map.
+
+ * Simplified FSourceParam::Update() to reduce branching and have one return site.
+
+ * Added alternative to GetChannelMap() called UpdateChannelMap() that avoids copying out values to an array. The values can then be fetched from the channel data directly.
+
+ * Refactored internal data to use array of structs rather than struct of arrays for better cache coherency when processing channels one at a time.
+
+#### Blueprints
+
+* New: Added an error when declaring a Blueprint Implementable Event with an enum param that is not plain or a byte type (Blueprints only support byte-sized enums).
+
+#### Core
+
+* New: There are now several serialization options available to specify what the cooked Asset Registry includes. Look for the serialize flags inside the [AssetRegistry] section of BaseEngine.ini.
+
+* New: An experimental bUseAssetRegistryForIteration option has been added to CookerSettings. This improves the performance of iterative cooking by loading the cooked Asset Registry directly, but it may still have issues with some changes to source files being missed.
+
+* New: Added a cvar to control the pak precacher throttle.
+
+* New: Added new GenericPlatformFile function, GetTimeStampLocal, which returns file time stamp in local time instead of UTC.
+
+* New: Added a check against assembling the reference token stream while streaming without locking the garbage collector.
+
+* New: Added a static_assert to prevent the use of TMap keys which do not implement GetTypeHash, as this causes runtime crashes when they are manipulated by a UMapProperty.
+
+* New: Added a bForceDebugUnrealHeaderTool option to BuildConfiguration.xml which forces the Debug version of UnrealHeaderTool to be run instead of Development.
+
+* New: Added a static_assert to ensure that TInlineSetAllocator is instantiated with a power-of-two hash size, as this is a requirement for TSet and TMap.
+
+* New: Added ICppStructOps::IsAbstract() for testing if a native type is abstract via the property system.
+
+* Bugfix: Fixed TInlineValue not calling virtual destructors.
+
+* Bugfix: Fixed several issues with editor-only objects not being correctly stripped when cooking.
+
+* Bugfix: Fixed several issues with Config files loaded from Plugins. They now correctly handle diffing game-specific changes. Engine plugins config files should be named BasePluginname.ini, and game plugins should be DefaultPluginname.ini.
+
+* Bugfix: Fixed many bugs with the event driven loader and allowed it to work at boot time.
+
+* Bugfix: Fixed a bug with nativized Blueprints that was introduced with the boot time EDL changes.
+
+* Bugfix: Fixed race in audio streaming.
+
+* Bugfix: Fixed bug which would cause a fatal error when cooking subobjects that were pending kill.
+
+* Bugfix: Fixed a bug with EDL at boot time which caused a fatal error with unfired imports.
+
+* Bugfix: Fixed a bug with RF_PendingKill subobjects and the new loader.
+
+* Bugfix: Fixed an obscure problem with stats in commandlets that use async tasks.
+
+* Bugfix: Fixed rare ensure cooking for the EDL.
+
+* Bugfix: Fixed boot time EDL causing some issues even when it wasn't being used.
+
+* Bugfix: Fixed .pak precacher shutdown.
+
+* Bugfix: Fixed memory leak in .pak precacher.
+
+* Bugfix: Fixed bad merge of priority change in the EDL.
+
+* Bugfix: Fixed race that resulted in a memory leak when reading compressed paks.
+
+* Bugfix: Fixed a weird recursive situation where StaticLoadObject could return an object that has not finished loading. Also produces a fatal error if this happens. EDL only.
+
+* Bugfix: Fixed batched render fences when BeginDestroy calls FlushRenderingCommands.
+
+* Bugfix: Fixed loading a package that is already loaded.
+
+* Bugfix: Fixed crash in signature checks when mounting pak files.
+
+* Bugfix: Fixed a change to NotifyPrimitiveDetached so that it works in the editor.
+
+* Bugfix: Fixed hash table lock optimization.
+
+* Bugfix: Fixed a crash relating to FGenericAsyncReadFileHandle when not using the EDL.
+
+* Bugfix: Fixed comments in GenericPlatform.h.
+
+* Bugfix: Fixed errors raised during code generation when a multiply-inherited base class happens to have the same name as a UObject after its prefix is stripped.
+
+* Bugfix: Fixed a compile error when calling TArray::HeapSort on an array of pointers.
+
+* Bugfix: Fixed a crash when calling UCookOnTheFlyServer::FFilePlatformRequest::ToString().
+
+* Bugfix: Fixed compile errors raised when #pragma is used inside USTRUCTs.
+
+* Bugfix: Fixed compile errors caused by whitespace existing before a UCLASS() macro.
+
+* Bugfix: Fixed TStructOpsTypeTraits::WithCopy giving different results when the trait is specialized without a WithCopy value from when it isn't specialized at all.
+
+* Bugfix: Fixed a compile error when serializing bools to an archive in editor builds, where the archive type overrides other serialization operators.
+
+* Bugfix: Fixed FWorldTileInfo::Read() to copy the correct licensee version number from the file summary into the archive.
+
+* Bugfix: Fixed a regression in FObjectAndNameAsStringProxyArchive to re-allow serialization of TWeakObjectPtrs.
+
+* Bugfix: Fixed some include-what-you-use issues in the engine and plugins.
+
+* Bugfix: Fixed UPROPERTYs being skipped when there are redundant semi-colons between the properties.
+
+* Asset Registry memory and performance have been significantly improved in both Editor and cooked games for large projects.
+
+* Allowed UnrealPak to do a better job with EDL pak files when the order provided is old or from the cooker.
+
+* Several minor tweaks to low level async IO stuff.
+
+* Stored a copy of the callback in async read request so that we do not need to worry about lifetime so we can capture variables as needed.
+
+* Cancelling async loading with the EDL loader now prints a warning and does a flush instead.
+
+* Suppressed a few EDL cook warnings.
+
+* Tweaked the EDL for to all platforms.
+
+* Platform load time performance tweaks.
+
+* Abstracted the IO tracker and handle manager for other platforms and applied it to all platforms.
+
+* Protected against UDeviceProfileManager::Get() recursion and demoted a related fatal error to a log statement.
+
+* Removed old code relating to FAsyncArchive, FAsyncIOSubsystemBase and package level compression. The editor now uses the lowest levels on the new async IO scheme.
+
+* Increased estimate of summary size.
+
+* Avoided adding a linker annotation if it actually has not changed. This improves ConditionalBeginDestroy performance.
+
+* Avoided a redundant removal of PrimitiveComponent from the streaming managers during ConditionalBeginDestroy.
+
+* Optimized UObject hash tables for speed and space.
+
+* Put the special boot order things into baseengine.ini so that licensees and games can add to it.
+
+* Renamed HasBeenAlreadyMadeSharable to DoesSharedInstanceExist.
+
+* PostLoadSubobjects is now called on all objects regardless of whether they have a CDO as outer or not.
+
+* When Rename is used to change the Outer without specifying a new name, the existing name is maintained whenever possible.
+
+* ForwardVector, RightVector, and single float FVector constructors are now recognized by Unreal Header Tool as default values for an FVector parameter.
+
+* ScriptMacros.h no longers needs to be included in header files that generate a header.
+
+* Improved the readability of some of the ReferenceChainSearch code.
+
+* Automatically included ObjectMacros.h in generated headers to prevent compile errors.
+
+* Made FPaths::Combine() variadic so that it can take arbitrary numbers of arguments.
+
+* Improved the readability of the verbosity of log categories in the debugger.
+
+* Updated TArray::Sort comments to clarify what happens when sorting an array of pointers.
+
+* Clarified the assertion message you get when inserting or removing a TArray element by reference which comes from the array.
+
+* Clarified the comments for TArray::FindLastByPredicate and FString::FindLastCharByPredicate.
+
+* Removed UnrealCodeAnalyzer.
+
+* Raised an error in UnrealHeaderTool when a header containing UCLASSes, USTRUCTs etc. does not include its .generated.h file.
+
+* Removed TBoolConstant template.
+
+* Changed TAssetPtr to allow it to be constructed from nullptr without a full definition of T.
+
+* Removed the WITH_HOT_RELOAD_CTORS macro.
+
+* Removed the UseVTableConstructors .ini option.
+
+* Removed generated FName variables for UFUNCTIONs.
+
+* Removed the generation of obsolete .java and .proto files used for replication.
+
+* Replaced the set of bools used to FBlueprintCompileReinstancer with a new EBlueprintCompileReinstancerFlags enum.
+
+* Improved hot reload logging messages to make it clear that a compile attempt on a module does not guarantee a reload of that module.
+
+* Made UnrealHeaderTool report an error if a UFUNCTION in a derived class has the same name but a different signature from one in a base class.
+
+#### Editor and Tools
+
+* New: Added spinner options to VectorInputBox.
+
+* New: Added a None option to the FKey customization, unless the FKey property had NoClear on it.
+
+* Bugfix: Implemented a fix to ensure FVirtualTrackArea::HitTestSection checks the row of the section.
+
+* Bugfix: Fixed an issue where ISequenceAudioRecorder was inaccessible to FAudioRecorder.
+
+* Project and plugin templates now use "include what you use" style by default.
+
+* When using BuildGraph, the cached list of completed nodes is now cleared by default, making the -ClearHistory argument redundant. Use the -Resume argument to continue an interrupted build using the current artifacts.
+
+* BuildGraph now outputs an error if any build products from previous steps are tampered with during the execution of a subsequent step.
+
+* The editor now offers to download and install Visual Studio 2017 if an existing version of Visual Studio is not found.
+
+* The AutomationTool -CookDir argument no longer accepts multiple parameters separated by '+' characters, since '+' is valid in directory names. Multiple -CookDir arguments are supported instead.
+
+* Game mods can now be denoted by setting the bIsMod field to true inside the .uplugin descriptor. Mods will be shown in a separate category in the plugin browser, and will be shown separately in generated project files. Installed editor builds can build and clean mods without modifying build products for the base game.
+
+##### Content Browser
+
+* Bugfix: Fixed link error when FAssetData::PrintAssetData() is used in a project.
+
+##### Sequencer
+
+* Unified global and object-bound pre animated state, and added InitializeObjectForAnimation method to state producers.
+
+* Opened the API for MovieSceneAudio-related classes along with some minor functionality additions.
+
+* Exported MovieSceneTrackEditor to allow custom tracks to be created that derive from existing tracks.
+
+#### Gameplay Framework
+
+* New: Added support for FScopedMovementUpdate to be able to queue up overlaps that do not require reflexive bGenerateOverlapEvents. This requires custom code to be able to process these overlaps.
+
+ * This allows custom inspection or processing of overlaps within a scoped move, without enabling the more expensive overlap flag. For instance you could have a fast projectile with an overlap response to a character mesh and get those overlaps from the trace without requiring expensive overlap processing when the mesh moves.
+
+ * Overlap events from the move will still only trigger from UpdateOverlaps() if bGenerateOverlapEvents is enabled on both components, as before.
+
+ * Made some data in FScopedMovementUpdate protected rather than private so it can easily be subclassed, and exposed a new helper ​SetWorldLocationAndRotation() for committing the move.
+
+* Bugfix: Fixed a crash when manipulating audio component properties from an Actor's constructor during async loading.
+
+* Bugfix: Fixed CharacterMovementComponent updates with very high delta time on server when initially joining. Made sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
+
+* CheatManager functions to Damage/Destroy targets are now easier to override in game-specific subclasses.
+
+* InputComponent now has BindAction function that allows binding functions with additional parameters.
+
+* RawInput configuration structures can now be manipulated by other modules.
+
+* AActor::GetComponents() with generic type is now optimized to not force an allocation when the component count is large.
+
+ * Previously it incorrectly assumed the output array needed space for the entire contents of OwnedComponents. If OwnedComponents.Num() > the array reserve size, this forced an allocation, even if few or no components of the requested type were found.
+
+ * It is still recommended to use TInlineComponent array or an array using TInlineAllocator<> when using this function.
+
+* Removed allocations during creation in ​AAIController::PostInitializeComponents() (in non-shipping builds).
+
+* Optimized HasActiveCameraComponent() and ​HasActivePawnControlCameraComponent() to avoid filling an array while searching for a certain component, which could have caused an allocation.
+
+* Optimized MoveComponent() collision queries to avoid processing PhysX touches when bGenerateOverlapEvents is off.
+
+ * Added support for bIgnoreTouches to FCollisionQueryParams. This allows GeomSweepMulti to filter out touches/overlaps much earlier.
+
+* MovementComponent does not ignore initial blocking overlaps when moving away from the impact normal from SafeMoveUpdatedComponent(). This fixes various cases where characters could be pushed through moving objects because they were moving away from the overlapping object, but not fast enough.
+
+ * It now always uses the hit result to depenetrate from the impact as much as possible, and then retries the move.
+
+ * Hit events are not triggered for the first test for depenetration.
+
+* CharacterMovement AdjustFloorHeight() is now allowed to adjust using the line trace if the sweep was in penetration. It also forces another next floor check so it will check after it adjusts the height or depenetrates, relevant when bAlwaysCheckFloor is off.
+
+* Optimized CharacterMovement tick to not extract transform values twice when they would not change in a small block of code.
+
+* Call TickCharacterPose() and clear root motion before abandoning tick in ​UCharacterMovementComponent::PerformMovement() when movement mode is None. This prevents root motion building up until the next valid movement mode.
+
+* Applied a performance tweak to ​ApplyRadialDamageWithFalloff().
+
+ * Do not rebuild FRadialDamageEvent each loop over hit actors.
+
+ * Added stats for ​BreakHitResult()/MakeHitResult() under "stat game".
+
+* Optimized attachment to check welding option before expensive casts and body instance fetching.
+
+#### Localization
+
+* Bugfix: Fixed a bug where passing an empty FText to ChangeKey() would keep the previous FText value that had been passed in.
+
+#### Online
+
+* New: Added the bShowSkipButton parameter to IOnlineExternalUI::ShowLoginUI, which will display the "skip" button on relevant platforms.
+
+#### Other
+
+* New: Added missing initialization for SWindow::bIsMirrorWindow.
+
+* Bugfix: Added missing module dependencies.
+
+* Bugfix: Fixed a type casting issue.
+
+#### Physics
+
+* New: Added virtual keyword to DestructibleComponent ApplyDamage and ApplyDamageRadius.
+
+* New: Added Physx simulation shader override (see GSimulationFilterShader).
+
+* Bugfix: Fixed a debug rendering issue by recreating physics when changing mobility of components.
+
+* Bugfix: Fixed compile error when PHYSX_MEMORY_STATS=1.
+
+* Bugfix: Fixed performance regression caused by using collision aggregates for Instanced Static Mesh Component.
+
+* Bugfix: Fixed a crash in AABB Manager when origin shift is used.
+
+* Made UDestructibleComponent::SpawnFractureEffectsFromDamageEvent virtual.
+
+* Exported URadialForceComponent class for inheritance.
+
+* Allowed the editor to compile when bRuntimePhysicsCooking is disabled (cooking is still allowed in WITH_EDITOR builds even with it disabled).
+
+* EndPhysics tick will no longer be scheduled if QueryOnly is used on a ragdoll.
+
+* Removed the unsupported option of HideBone with DisableCollision when calling HideBone. This was not actually supported and did nothing so shouldn't break any behavior, just don't call the function.
+
+* Exposed PhysX enhanced determinism mode using the compiler flag PHYSX_ENABLE_ENHANCED_DETERMINISM. This allows local subsets of the PhysX simulation to behave deterministically independent of what is going on elsewhere in the Physics world.
+
+#### Platforms
+
+* Bugfix: Fixed a crash bug in cases where we received a duplicate user login/logout notification from the system software.
+
+* Bugfix: Fixed Codelite project having duplicated settings.
+
+* Moved some C++ defines out of the build.cs file into a C++ header.
+
+* Moved controller connect/disconnect handling to the main thread to fix issues with thread safety for callbacks.
+
+##### Android
+
+* New: Added functionality to use the visual studio mobile projects for debugging. To generate them run "generateprojectfiles.bat -vsdebugandroid" from a command prompt. After you have packaged your game for Development and put it on the device, you can set this new project as the start up project and run/debug the project in Visual Studio.
+
+* New: Support for Android runtime permissions added. Certain permissions have been removed or put under condition to check for support when the target sdk is greater than or equal to 23.
+
+##### HTML5
+
+* New: Added new webassembly (wasm) toolchain - SIMD and multi-threading are not yet supported (these are slated to be in for wasm2).
+
+ * These will be automatically turned off when building with wasm (as opposed to asm.js).
+
+* Removed HTML5 code from the Engine's SaveGameSystem.h and placed it in HTML5Platform.cpp.
+
+* Cleaned up HTML5PlatformFile.cpp and made it match as close as possible to linux's version.
+
+* Created HTML5's own PlatformFeature & SaveGameSystem files, and updated HTML5PlatformMisc to make use of the the new HTML5 SaveGame code.
+
+##### Linux
+
+* New: Added FreeBSD memory information functions to facilitate out-of-tree UE4 FreeBSD port.
+
+* New: Added a new cross-toolchain (version 9, includes clang 4.0) when targeting Linux on Windows.
+
+* New: Added some support for building on Debian Sid or Stretch.
+
+* New: Added clang to Fedora dependencies.
+
+* New: Added ability to compile Linux servers for 32-bit x86 architecture.
+
+* New: Added files generated for KDevelop to .gitignore.
+
+* Bugfix: Fixed more third party libraries to use libc++ instead of libstdc++.
+
+* Bugfix: Fixed memory leaks when symbolicating an address in Linux callstacks (during crash reporting and memory profiling). Makes runs with the memory profiler much faster.
+
+* Bugfix: Fixed rebuilding of VHACD (a third party library) on a case sensitive filesystem.
+
+* Bugfix: Fixed CodeLite projects to now use proper Debug binaries for debug configurations.
+
+* Switched Linux file abstraction to use new managed filehandles. Shared by all platforms with low limit of open files.
+
+* Whitelisted SteamVR plugin for Linux so SteamVR Blueprint functions are always available, even if stubbed.
+
+* Made source code accessor aware of clang 3.9 and 4.0.
+
+* Setup will now install the latest clang on Arch instead of clang35.
+
+##### Mac
+
+* Fixed address sanitizer support in MacToolChain (Apple changed the name of the env variable Xcode uses to enable it) and added support for thread sanitizer.
+
+* Fixed a problem where the glslang library was not enabled on Mac, preventing building an Android project with Vulkan from Mac.
+
+* Made Binned2 malloc work on Mac.
+
+#### Programming
+
+* New: When compiling a module written in include-what-you-use style, source files which are in the adaptive non-unity working set are now built with precompiled headers disabled, to expose errors with missing headers. Set bAdaptiveUnityDisablesPCH to false in BuildConfiguration.xml to disable this behavior.
+
+* New: Added initial support for async creation of pipeline state objects, enable using r.AsyncPipelineCompile.
+
+* Module .build.cs files, which depend on the contents of external files, can now add those paths to the ExternalDependencies list. Modifications to those files will trigger the the UBT makefile to be invalidated.
+
+* Plugin config files are now included in generated project files.
+
+* UnrealBuildTool will no longer attempt to use SN-DBS for build distribution if the service is disabled.
+
+* UnrealBuildTool now correctly supports compiling modular targets which do not use the shared engine build environment.
+
+* C# programs will now be included in generated project files automatically if a blank file called UE4CSharp.prog is found in the same directory.
+
+* The engine will now warn when trying to load a plugin with a mismatched "EngineVersion" setting.
+
+* Deprecated shared pointer typedef from ImageWrapper and removed usages.
+
+* Removed boilerplate header from ImageWrapper.
+
+* Removed monolithic boilerplate header from NetworkFileSystem.
+
+* Removed boilerplate header from LauncherCheck.
+
+* LauncherServices: Removed boilerplate header from LauncherServices.
+
+* Completed a modernization pass of Automation.
+
+#### Rendering
+
+* New: Added thickness option to debug DrawWireDiamond function.
+
+* New: Added a check to see if there are duplicated shader type names.
+
+* Bugfix: Fixed obscure check with flushing RHI resources.
+
+* Bugfix: Fixed hazard with SetMaterialUsage from a thread.
+
+* Bugfix: Fixed Windows handling of -sm4 and -sm5 so it can be used with -vulkan and -opengl.
+
+* Bugfix: Fixed selection of swapchain format for Vulkan on some Linux drivers.
+
+* Bugfix: Fixed an issue on Vulkan when copying into a cubemap face.
+
+* Bugfix: Fixed a bug calculating vertex declaration hashes on OpenGL.
+
+* Moved FPositionVertexBuffer & FStaticMeshVertexDataInterface declarations into their own headers, moved FStaticMeshVertexBuffer implementation into its own source file.
+
+* Updated Vulkan distributables and glslang to SDK 1.0.39.1.
+
+* Vulkan shaders now build using glslang 1.0.42.2 and includes those headers for redistribution.
+
+* Prefer D32_S8 on Vulkan instead of D24_S8 for the depth buffer.
+
+* Removed the temporary functions RHIClearColorTexture, RHIClearDepthStencilTexture and RHIClearColorTextures from each RHI.
+
+* Separated depth/stencil load/store actions.
+
+* Use the latest SDK for Vulkan, whether the one we distribute in ThirdParty or an installed version.
+
+* Implemented SetStencilRef() and SetBlendFactor() on RHIs which were missing it.
+
+#### UI
+
+##### Slate
+
+* Updated Slate to allocate widgets using MakeShared.
+
+ * This saves one allocation per-widget.
+
+* Moved SVirtualWindow into Slate module from UMG.
+
+#### VR
+
+* New: Added an initial base implementation of IHeadMountedDisplay, FHeadMountedDisplayBase, that can be extended by HMD implementations instead of extending IHeadMountedDisplay directly. This base class provides default and or common implementations for parts of the IHeadMountedDisplay interface. Future releases may add more common functionality to this class, reducing the amount of work required to add support for new HMD platforms even further.
+
+* StereoLayers now have a default emulated implementation, making them supported on most VR platforms that did not already support them. HMD implementations that extend FHeadMountedDisplayBase will automatically inherit the functionality unless explicitly overridden.
+
+* Common code found in various HMD plugins handling management of StereoLayers has been extracted into a template base class, TStereoLayerManager, that provides a thread-safe way to manage a list of registered stereo layers.
+
+* The old Morpheus StereoLayers implementation has been removed in favor of the common stereo layers implementation provided by the HMD base class.
+
+## Upgrade Notes
+
+#### C++ API Changes
+
+* As part of the Asset Manager changes, Streamable Manager has been improved to support the concept of Streamable Handles. When requesting an async load, it now returns a shared pointer handle that will keep the requested object loaded as long as it exists. These handles can also be polled or waited on.
+
+ * Synchronous Load and Simple Async Load on Streamable Manager have been deprecated in favor of the new Streamable Handle system. Both of those functions would keep assets loaded until explicitly unloaded, which in practice was not what most people wanted.
+
+* The Class/Property/Function redirect system has been rewritten to be faster and more flexible. Ini redirects such as "+ActiveClassRedirects" defined in [/Script/Engine.Engine] will still work, but the new system is used by putting redirects like “+ClassRedirects†in the [CoreRedirects] section of Engine.ini.
+
+ * All engine redirects prior to 4.10 have been moved to CoreRedirects.cpp, newer redirects are now in the new format in BaseEngine.ini.
+
+ * A single Property/Function redirect definition will now be applied for both blueprints and serialization, and redirects can now be defined with wildcard matching syntax to simplify large refactors.
+
+ * Object and Package redirects can now be used to allow limited redirection of content references without creating an Object Redirector on disk.
+
+ * Enum redirects have been improved and will now fully work with or without the Enum Name being specified.
+
+* Several Enum functions dealing with string conversion have been deprecated, and the names and comments have been cleaned up to make it more clear which are meant to be used at Runtime and which are meant to be used in the Editor/for debugging.
+
+* The console command "r.MSAACount 1" now produces no MSAA or TAA. “r.MSAACount 0†can be used to toggle TAA on for comparisons.
+
+* Cascaded Shadow Map resolution is now controlled by the console command "r.Shadow.MaxCSMResolution" instead of “r.Shadow.MaxResolutionâ€.
+
+* New mobile targeted projects will have better UI performance settings by default.
+
+ * Please enable "Explicit Canvas Child Z Order" option in project Slate Settings, to improve UI batching. Enabling this option may require manual Z Order tweaks in UMG Canvas panels if there Z ordering issues.
+
+* VR console commands have been rewritten to support autocompletion and inline help strings.
+
+ * The VR console commands have also be renamed and now begin with vr.*
+
+ * The renamed VR commands have backwards compatible aliases, but will print a warning notifying the user about the deprecated functionality.
+
+* The Exec method in Head Mounted Display has been removed, as all VR console commands now use Auto Console Command or similar to register console commands.
+
+ * HMD implementations relying on having an Exec method now need to provide their own ways of registering console command handlers.
+
+* Set Visibility and Set Hidden In Game in Scene Component are no longer virtual. Instead override On Visibility Changed or On Hidden In Game Changed to respond to changes to these values.
+
+* The FBox and FBox2D constructors taking an int32 value have been deprecated as the value of that integer was not being used. The Force Init constructor should be used instead.
+
+ * Replace FBox/FBox2D construction of the form FBox(0) with FBox(ForceInit).
+
+* The Unreal Header Tool now outputs an error when an Editor-only struct member is exposed to blueprints. This is necessary because packaged builds will crash if a Make/Break node for that struct is executed in a blueprint.
+
+ * Any Blueprint exposed Editor-only struct members must either be made not Editor-only or no longer exposed to blueprints.
+
+* Post Load Map now provides the loaded World as a parameter to the delegate function. The World will be null if the load failed.
+
+ * All existing functions bound to Post Load Map need to have a World pointer added to their signature.
+
+* Stop saving raw curve data into animations on cook to save memory/disk space.
+
+ * If you are directly accessing Raw Curve Data on an Anim Sequence, this will no longer work in cooked builds. Animation Asset now provides a virtual function, Get Curve Data, to grab a reference to the correct Curve structure.
+
+* Removed boilerplate header from Automation Window.
+
+ * The AutomationWindow.h boilerplate header file has been removed. Please replace all includes of AutomationWindow.h with IAutomationWindowModule.h
+
+* Removed boilerplate header from Automation Controller.
+
+ * The AutomationController.h boilerplate header file has been removed. Instead of AutomationController.h, include the individual interface headers that you actually use. Remove the "Interfaces/" subdirectory from existing interface inclusions.
+
+* Automation Modernization pass
+
+ * The IAutomationWorkerModule.h has been moved to the module's public root directory. Please remove the relative path from your existing include statements.
+
+* Removed boilerplate header from LauncherCheck.
+
+ * The LauncherCheck.h boilerplate header file has been removed. Include ILauncherCheckModule.h instead of LauncherCheck.h. Remove "Interfaces/" subdirectory from existing ILauncherCheckModule.h inclusions.
+
+* Removed boilerplate header from LauncherServices.
+
+ * The LauncherServices.h boilerplate header file has been removed. Instead of including LauncherServices.h, include the ILauncherXXX.h files that you actually use. Remove the "Interfaces/" subdirectory from existing ILauncherXXX.h includes.
+
+* Deprecated shared pointer typedef and removed usages from ImageWrapper.
+
+ * The IImageWrapperPtr typedef has been deprecated. Please use TSharedPtr instead of IImageWrapperPtr.
+
+* Removed boilerplate header from ImageWrapper.
+
+ * The ImageWrapper.h boilerplate header file has been removed. Instead of including ImageWrapper.h, include the actual IImageWrapperXXX.h files that you use. Remove the "Interfaces/" subdirectory from existing IImageWrapperXXX.h includes.
+
+* Removed monolithic boilerplate header from NetworkFileSystem.
+
+ * The NetworkFileServer.h boilerplate header file has been removed. Instead of including NetworkFileServer.h, include the INetworkFileXXX.h headers that you actually use. Remove the "Interfaces/" subdirectory from existing INetworkFileXXX.h includes.
+
+* Changed default contact-gen method to PCM. This is the default in PhysX 3.4.
+
+ * This may have slight implications on jitter and stability, but should be improved overall. The old behavior is still available (set EnablePCM = false in the project settings).
+
+* Removed the temporary functions RHIClearColorTexture, RHIClearDepthStencilTexture, and RHIClearColorTextures from each RHI.
+
+* Removed obsolete SmartCastProperty function.
+
+* Added a static_assert to prevent the use of TMap keys which do not implement GetTypeHash, as this causes runtime crashes when they are manipulated by a UMapProperty.
+
+ * TMap key types must now implement GetTypeHash. Having GetTypeHash be implemented in a base class or being implicitly convertible to a type which is hashable is not sufficient.
+
+* Fixed TStructOpsTypeTraits::WithCopy giving different results when the trait is specialized without a WithCopy value from when it isn't specialized at all.
+
+ * TStructOpsTypeTraitsBase has been deprecated.
+
+* Improved support for TTuple.
+
+ * Tuples have a GetTypeHash function and can be used as a TMap key.
+
+ * Can now be serialized to archives.
+
+ * Can now be compared for equality with operators == and !=.
+
+ * Can now be compared lexicographically with operators <, >, <= and >=.
+
+ * TPair is now an alias for a 2-tuple, which is specialized to have Key and Value fields, but otherwise has the same functionality as all other tuples.
+
+ * Tuple.h is now found in the Core/Public/Templates folder, rather than the Core/Public/Delegates folder.
+
+ * TPairInitializer now converts to TPair, rather than TPair being constructible from TPairInitializer.
+
+* Removed UnrealCodeAnalyzer.
+
+* Added a static_assert to ensure that TInlineSetAllocator is instantiated with a power-of-two hash size, as this is a requirement for TSet and TMap.
+
+ * TInlineSetAllocator will no longer compile if the hash size is not a power-of-two.
+
+* Removed TBoolConstant template.
+
+* Removed the WITH_HOT_RELOAD_CTORS macro.
+
+* Removed the UseVTableConstructors .ini option.
+
+* Removed generated FName variables for UFUNCTIONs.
+
+* Refactored EvaluateBoneTransforms to prevent usage of skeletal mesh component.
+
+ * Deprecated EvaluateBoneTransforms in favor of new ​EvaluateSkeletalControl_AnyThread.
+
+ * Deprecated skeletal mesh component argument to ConvertCSTransformToBoneSpace and ​ConvertBoneSpaceTransformToCS. Now they just take a transform.
+
+* Added a new overload for IOnlineSession::FindFriendSession in the session interface that can retrieve sessions for multiple friends.
+
+ * Sending and accepting invites on dedicated servers on Steam is now supported.
+
+ * The FOnFindFriendSessionCompleteDelegate now returns an array of FOnlineSessionSearchResult objects instead of just one.
+
+* The high level rendering code is now PipelineStateObject aware which will allow us to reduce complexity in the rendering backends of Vulkan, Metal and Dx12 in the future.
+
+ * The loose state setting APIs of the Commandlist have been deprecated, instead the entire pipelinestate has to be set at once.
+
+* Moved controller connect/disconnect handling to the main thread to fix issues with thread safety for callbacks.
+
+#### Animation
+
+* When converting skeletal controls to the newer API, convert EvaluateBoneTransforms to ​EvaluateSkeletalControl_AnyThread. Backwards compatibility will be maintained, however warnings will persist. Any mesh component access should be cached in PreUpdate() as accessing the component is not thread safe.
+
+* If differences in timing between Maya and UE4 are experienced after importing Alembic files, this has been corrected. The fix requires that any problematic assets be reimported.
+
+#### Blueprints
+
+* The ticking behavior of latent actions in components has been changed to match how they behave in actors. When the component ticks, the latent actions will now be processed at the same time, rather than happening later in the frame when latent actions for non-ticking actors and components are processed. This does change behavior, so there is a console variable (t.TickComponentLatentActionsWithTheComponent) that can be used to revert to the older behavior until affected component Blueprints that depended on the old ordering behavior can be fixed up. The cvar should be treated as deprecated, and it will be removed in a future release.
+
+#### Core
+
+* To save on memory and disk space the cooked Asset Registry no longer includes Dependency information by default. If you need this information at runtime, enable bSerializeDependencies in the [AssetRegistry] section of BaseEngine.ini.
+
+* Starting asynchronous loads from within asynchronous loads has always been unsafe, but will now explicitly assert. This can be fixed by not starting asynchronous loads from within PostLoad functions, or deferring your game-specific code for a frame when called from an async callback.
+
+* Callback functions passed into Request Async Load will now execute on the next frame instead of immediately upon completion of an async load. This behavior is to avoid issues with calling async loads recursively, but if your game depends on this behavior you can restore it to call them immediately by setting the cvar s.StreamableDelegateDelayFrames to 0.
+
+* There is a new format for defining class/function/property redirects in ini files, check the [CoreRedirects] section of BaseEngine.ini for examples. The older formats will still work but the new format provides additional features and a simpler syntax so you may want to upgrade.
+
+* Any calls to Smart Cast Property should be replaced with code which explicitly handles the inner property of Array Property.
+
+* Get Type Hash implementations must now be added to types which are used as TMap keys. If your type defines Get Type Hash in a base class or is hashed via an implicit conversion, these should be fixed by implementing their own function and forwarding the call to the appropriate implementation.
+
+* Any use of TStructOpsTypeTraitsBase should be replaced with TStructOpsTypeTraitsBase2, where T is the type that the trait is being specialized for.
+
+* `#include "Delegates/Tuple.h"` should be replaced with `#include "Templates/Tuple.h"`.
+
+* As TPairInitializer is now convertible to TPair, rather than TPair being constructible from TPairInitializer, types which do not correctly implement copy or move semantics by not inhibiting the compiler defaults may cause a bad state when they are inserted into a TMap or TSet. All types used in UE4 containers should correctly define copy or move semantics.
+
+* Any dependence on Unreal Code Analyzer should be removed from projects.
+
+* The explicit usage of TInlineSetAllocator in any TSet and TMap should be updated to ensure that the template arguments provided result in hash sizes which are a power-of-two.
+
+* TBoolConstant should be replaced with TIntegralConstant.
+
+* Any use of WITH_HOT_RELOAD_CTORS should be replaced with the assumption that the value is 1.
+
+* Any use of the Use VTable Constructors .ini option should be replaced with the assumption that the value is true.
+
+* Use of generated FName variables for UFUNCTIONs (e.g. ENGINE_ReceiveTick) should be replaced with a string literal or a custom static FName variable in your own code:
+
+ * For example: static const FName ENGINE_ReceiveTick = TEXT("ReceiveTick");
+
+* If Unreal Header Tool reports an error about a function having a different signature from a base class, it should be fixed to have the same signature, or renamed.
+
+#### Editor and Tools
+
+* Exposed Make Property Combo Box in Property Customization Helpers to allow embedding an enum combo box into Struct Customizations.
+
+* Added Custom Column support to the Asset Picker Config.
+
+* If you use a protected platform, your project settings will start to be saved under MyGame\Config\Platform\PlatformEngine.ini, instead MyGame\Config\DefaultEngine.ini.
+
+#### Platforms
+
+* Made some big Device Profile changes, particularly for the protected platforms. You may need to modify your Device Profiles in similar ways if you are a heavy user of them.
+
+ * Changed the "type" of some DPs from WindowsNoEditor, etc to Windows. It should be a platform, not a random string.
+
+ * With that change, the platform can be used to save out protected platform DP .ini files to subdirectories, maintaining secrecy.
+
+ * When saving DeviceProfiles, you may need to look in a platform subdirectory for the DeviceProfiles.ini file.
+
+ * Added Config/[PlatformName]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs. See the GetConfidentialPlatforms() function in GenericPlatformMisc for more information.
+
+#### Programming
+
+* The TargetRules.ShouldUseSharedBuildEnvironment() function has been deprecated. Targets can now specify the build environment they wish to use by setting BuildEnvironment to TargetBuildEnvironment.Default/Shared/Unique in their constructor instead.
+
+* The constructor for ModuleRules-derived classes in .build.cs files should be updated to take a ReadOnlyTargetRules instance, which should be forwarded to the base class. This class contains the same properties as the previous TargetInfo argument, plus all the target-specific settings previously stored in the global BuildConfiguration and UEBuildConfiguration classes. Compatibility shims for accessing these objects will be removed in a future release. The WITH_FORWARDED_MODULE_RULES_CTOR preprocessor definition is now defined, which allows writing code which is compatible with multiple engine versions.
+
+* The TargetRules.SetupBinaries() callback has been deprecated. Instead of overriding this, targets may override the launch module through the "LaunchModuleName" property in their constructor, and add extra modules to the "ExtraModuleNames" field on the TargetRules object itself.
+
+#### Rendering
+
+* UE4Editor is whitelisted for Aftermath with latest Nvidia drivers. To whitelist other game executables contact Nvidia.
+
+* RHICmdList.Clear() methods are now removed; please use RHICmdList.SetRenderTargetsAndClear() or the DrawClearQuad() utility function from ClearQuad.h.
+
+* The Cross Compiler Tool is now removed from the Engine, it had too many limitations. Use hlslcc.sln or ShaderCompileWorker -directcompile instead.
+
+* PipelineStateCache.h contains the new replacement interface for BoundShaderStateCache.h. Otherwise, during the Geometry rendering passes the previously introduced Draw Render State is used to collect and set the Blend, Raster, and Depth Stencil State. Commit Graphics Pipeline State will set the PSO for geometry rendering passes. Postprocessing passes or passes which use Globalshaders have to fill out a Graphics Pipeline State Initializer and set this instead.
+
+* If configuring via .ini files, use the new variable name "ScaleTexturesByGlobalMipBias" where "ScaleTexturesByGlobalMyBias" was used.
+
+* Mobile: Skylights on mobile projects may need to be recaptured in the editor before packaging.
+
+* Mobile: Please replace r.TonemapperFilm=1 cvar with r.Mobile.TonemapperFilm=1 in case you want to use new filmic tonemapper on Mobile platforms.
+
+#### VR
+
+* PSVR MotionController tracking management system.
+
+ * Blueprint functions added to manage the set of actively motion tracked controllers in MotionTrackedDevice Function Library.
+
+ * You are recommended to disable tracking of all controllers first, and then enable tracking for the controllers you want to have tracked based on user setting, connected controllers, etc. The system keeps a memory of which controllers are set to be tracked even if the controller is disconnected, or not yet connected.
+
+* Experimental preview of PSVR Social Screen support.
+
+ * The new Morpheus plugin project setting Enable Social Screen Separate Mode must be set to true to use this feature. When that is true additional render and output buffers will be allocated for the Social Screen.
+
+ * Blueprint functions for controlling the feature can be found by searching for 'SocialScreen'.
+
+ * Future work will replace this API with a more flexible cross platform one, and pursue optimizations of SocialScreen output.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.INT.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.INT.udn
new file mode 100644
index 000000000000..042f7bc9a8e3
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.INT.udn
@@ -0,0 +1,3905 @@
+Availability:Public
+Title: Unreal Engine 4.16 Release Notes
+Description: Release Notes for Unreal Engine 4.16
+Crumbs:%ROOT%, Engine
+Parent:Support/Builds
+Order:16
+reference-image: image_18.gif
+reference-image: image_28.gif
+reference-image: image_31.gif
+reference-image: image_35.gif
+
+
+
+## What's New
+
+Unreal Engine 4.16 includes exciting **new rendering and animation features**, significant **performance improvements for mobile and console platforms, and tons of quality of life enhancements** that will make it even easier to make stunning environments and engaging experiences that run smoothly on a wider variety of platforms.
+
+Enhance the mood of your environments using the amazing new **Volumetric Fog** feature, which can be enabled to automatically render realistic fog and smoke effects with consistent lighting anywhere in a scene, even at a large scale.
+
+Breathe life into your characters using new dynamic **lightweight rigid body** and **low level cloth simulation** tools! Take greater control of the flow of movement using Animation Modifiers, spline IK solver, updated Pose Driver, and many other improvements to the Animation system.
+
+Garbage Collection is now **twice as fast**! UI rendering performance and UMG widget creation speed are vastly improved to enable you to create even more compelling interfaces. Interfaces and workflows for **VR Mode**, Animation, Sequencer, and other tools have been updated to make your development process more streamlined than ever before.
+
+Support for **Nintendo Switch** is fully-featured and ready for production in 4.16! Epic Games has teamed up with Nintendo to release the full UE4 source code for Nintendo Switch to approved developers for free. To learn more about how to get started, [read more here](http://www.unrealengine.com/en_US/blog/launch-your-game-on-the-nintendo-switch-with-unreal-engine-4-16)
+
+**DirectX 12 is now the default renderer for Xbox One**, bringing both performance and feature enhancements to platform support in the engine. In addition, you can now develop HTML5 games using WebAssembly and WebGL 2, and this new path will continue to improve in UE4.
+
+For mobile, the Android virtual keyboard is now supported, and runtime permissions have been exposed to both Blueprint and code. Plus, we have made even more strides to reduce executable sizes for mobile apps!
+
+In addition to hundreds of updates shipping from Epic, this release includes **160 improvements** submitted by the incredible community of Unreal Engine developers on GitHub! Thanks to each of these contributors to Unreal Engine 4.16:
+
+0lento, Akihiro Kayama (kayama-shift), Alice Robinson (Valkrysa), Altrue, Andreas Rønning (Sunjammer), Andrew Gaubatz (e-agaubatz), Angus Jones (crumblycake), Artem V. Navrotskiy (bozaro), Black Phoenix (PhoenixBlack), Cedric Neukirchen (eXifreXi), Cengiz Terzibas (yaakuro), Chris Varnz (chrisvarns), Christopher P. Yarger (cpyarger), Damian Nowakowski (zompi2), DarkSlot, DeanoC, Derek van Vliet (derekvanvliet), devbm, dodgyville, drelidan7, Gabriel Lima (Gabriel-Lima-O), Gyeonghwan (conquests), Hao Wang (haowang1013), Ilya (ill), Jackblue (JohnsonJackblue), James Horsley (mmdanggg2), Jeff Rous (JeffRous), Jon Watte (jwatte), Jørgen P. Tjernø (jorgenpt), jostster, Kalle Hämäläinen (kallehamalainen), katze7514, Kevin Kuegler (FrostByteGER), KrisRedbeard, looterz, Manmohan Bishnoi (manmohanbishnoi), Marat Radchenko (slonopotamus), Markyroson, Martin Treacy-Schwartz (the1schwartz), Matt Edmonds (cleaver404), Matthew Casey (mdcasey), Matthias (haimat), Matthias Hölzl (hoelzl), Matthias Huerbe (MatzeOGH), Michael Schoell (MichaelSchoell), Michał Siejak (Nadrin), Milan Šťastný (aknarts), Moritz Wundke (moritz-wundke), Mustafa TOP (MSTF), Narendra Umate (ardneran), Nathan Stocks (CleanCut), NaturalMotionTechnology, Nick Verenik (nverenik), Paul Murray (awesomeness872), pfontain, Phil Christensen (Rastaban), PrimalJohnScott, projectgheist, Rafael Ortis (rafortis), Rajko Stojadinovic (rajkosto), Rama (EverNewJoy), rhughesgeomerics, Ricardo Rodrigues (RicardoEPRodrigues), Robert Hagglund (hagglund), Robert Segal (robertfsegal), Ryan Pavlik (rpav), sangpan, Sanjay Nambiar (sanjay-nambiar), Satheesh (ryanjon2040), Sean Campbell (scampVR), Sebastian Axinte (ENiGMA9), Sébastien Rombauts (SRombauts), SiebenCorgie, Stefan Zimecki (stefanzimecki), StefanoProsperi, Stephen Johnson (megasjay), TaeYoung Cho (valval88), Timothee Besset (TTimo), Timothy Hagberg (thagberg), Tom Kneiphof (tomix1024), Tom Ward (tomwardio), TRS-justing, unwitherer, Vladimir (VladimirPobedinskiy), Vladimir Alyamkin (ufna), wyhily2010, Yaroslav Shmelev (SoulSharer), yeonseok-yi
+
+## Major Features
+
+### New: Volumetric Fog
+
+Create incredible ambience and mood in your environments using the new Volumetric Fog! Varying densities are supported so you can simulate clouds of dust or smoke flowing through light shafts, and any number of lights can affect the Volumetric Fog.
+
+(w:929 h:529 convert:false)
+
+(w:928 h:510 convert:false)
+
+(w:928 h:510 convert:false)
+
+Volumetric Fog supports lighting from:
+
+* A single Directional Light, with shadowing from Cascaded Shadow Maps or static shadowing, with a Light Function
+
+* Any number of point and spot lights, with dynamic or static shadowing if 'Cast Volumetric Shadow' is enabled
+
+* A single Skylight, with shadowing from Distance Field Ambient Occlusion if enabled
+
+* Particle Lights, if 'Volumetric Scattering Intensity' is greater than 0
+
+You can use Materials applied to Particle Systems to control Volumetric Fog with the new Volume Domain setting. A single particle with a Volume Material causes a sphere of density to be added to the Volumetric Fog. The effect is fully 3D with no billboards involved. Multiple spherical fog particles with noise from textures can be used to limit fog to a certain area.
+
+For information on setting up Volumetric Fog, see the [documentation](Engine/Rendering/LightingAndShadows/VolumetricFog).
+
+### New: Image-Based (FFT) Convolution for Bloom
+
+Create physically-realistic bloom post-process effects using the new image-based (FFT) convolution feature! Unreal Engine 4.16 ships with a FFT Bloom that empowers artists to use custom bloom kernel shapes, with total control over the intensity in order to match the results they imagine.
+
+(w:928 h:485 convert:false)
+
+By using a mathematical convolution of the source image with a kernel image, this bloom technique can produce a continuum of responses ranging from star-like bursts to diffuse glowing regions. The additional realism generated by the image-based convolution is the result of its ability to use visually interesting, non-symmetric kernel images. It generally looks like a star-burst with radial streaks, but could include eyelash silhouettes, bokeh or other artifacts.
+
+**Note:** Image-based convolution Bloom is designed for use in cinematics or on high-end hardware, while the pre-existing (standard) Bloom should be used for most game applications.
+
+### New: Distance Field Lighting Optimizations
+
+**Distance Field Ambient Occlusion** and **Ray Traced Distance Field Shadows** are now **30-50% faster** on current generation consoles and mid-spec PC! These features allow for more realistic ambient lighting and area shadows on dynamic meshes in your scene.
+
+(w:929 h:513 convert:false)
+
+In addition, static mesh **Distance Field Generation is 2.5 times faster**, thanks to acceleration from Intel's Embree ray tracing library. Memory usage is also significantly reduced when enabling the Eight Bit Mesh Distance Fields and Compress Mesh Distance Fields project settings.
+
+### New: Lightweight Rigid Body Simulation
+
+Create hordes of physically-simulated characters with the new **lightweight rigid body character simulation!** You can now simulate a Physics Asset inside your Animation Blueprint using a new high-performance **immediate mode** PhysX API. Characters using this simulation can also generate collision with static geometry in the world.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ VaxxVsv0Fak
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### New: Low-level Clothing Simulation
+
+Gain more control over clothing simulations using the new low-level NVIDIA NvCloth clothing solver!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 5BqodzWZIUA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+We have replaced the APEX clothing solver with a lower level solution called NvCloth from NVIDIA. The new solver is similar to the core solver of the previous APEX solution with few slight behavior changes, and it provides better access to the simulation data and extra exposed parameters for inertia settings.
+
+### New: Release Games on Nintendo Switch!
+
+Registered developers can now build and release games for the Nintendo Switch! Unreal Engine 4's production-ready Nintendo Switch support is certification compliant, enables networked multiplayer, and provides access to multiple rendering pipelines - deferred, mobile forward, and clustered forward - to enable you to ship virtually any type of game for Nintendo Switch.
+
+[REGION:raw]
+(w:925 h:641 convert:false)
+[/REGION]
+
+### New: VR Mode UI and Interaction Updates
+
+VR Mode in Unreal Editor has been overhauled to provide a more intuitive workflow and editing experience!
+
+(w:722 h:646 convert:false)
+
+A new asymmetrical controller setup puts a new and improved Radial Menu on one hand and an interaction laser with improved precision on the other to make working with objects in your level quick and easy.
+
+All VR Mode actions, including all major editor features and UI panels, are now accessed from the updated Radial Menu. Teleport has been updated so that you can instantly move to a location and resize to the default scale to see the player's perspective as well. For more information, see [https://docs.unrealengine.com/latest/INT/Engine/Editor/VR/GDC2017/](https://docs.unrealengine.com/latest/INT/Engine/Editor/VR/GDC2017/)
+
+### New: Edit Sequences in VR
+
+The Sequencer cinematics editor is now available in VR! You can create a new sequence and move objects around your level - and in the process automatically create sequence keys for their transforms. By scrubbing through time and setting these keys, you can create cinematic sequences and play them back, all inside VR. You can also open existing Level Sequences and play them back, either from the Sequencer UI or from the Radial Menu.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ X4Zw9U20Gw4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* New! Adjustable keys allow you to physically adjust your trajectories in the world!
+
+* The Scrub Time option in the Radial Menu takes thumbstick or touchpad input as the speed with which to play your Sequence backwards and forwards. Press the trigger again to exit Scrub Time mode.
+
+### New: Physics Simulation in VR Mode
+
+You can now **simulate physics Actors in VR Mode** using the motion controllers to interact with objects! Place Actors set to simulate physics and let the physical simulation run to get a realistic scattering or to knock Actors around with the motion controllers.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bG2Qf897CBI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### New: Smart Snapping in VR Mode
+
+Smart snapping uses the bounds of your object to align to other Actors in the scene, enabling you to exactly fit them together without needing to build modular assets with a grid in mind.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ lvqxM1kjubE
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+This feature is currently only available in VR Mode, but we'll add support for desktop editing in a future release.
+
+### New: Xbox One Renders with DirectX 12
+
+**DirectX 12 is now the default renderer for Xbox One!** We've made a number of stability and performance improvements in DirectX 12. This allowed us to enable it as the default RHI bringing **CPU and GPU performance improvements** for titles developed for Xbox One.
+
+(w:556 h:356 convert:false)
+
+#### Switching back to D3D11
+
+Titles that need to switch back to D3D11 will need to do the following:
+
+1. Modify bBuildForD3D12 in your title's defaultengine.ini
+
+2. Rebuild your game for Xbox One
+
+3. Recook content
+
+**Note:** The D3D11 RHI will be deprecated in a future release.
+
+### New: HTML5 Support for WebAssembly and WebGL 2
+
+Unreal Engine 4 now supports the new WebAssembly standard (also known as WASM) for HTML5, the fastest and most efficient way to compile and run C++ for the web! We are using Mozilla's latest Emscripten toolchain (v1.37.9). This is a new technology and not supported on all browsers, so it is considered an Early Access feature, and requires GitHub access.
+
+[REGION:raw]
+(w:929 h:630 convert:false)
+[/REGION]
+
+WASM is a new JavaScript code-to-binary format for Web apps that reduces app download size, startup times, memory consumption, and provides a big performance boost. For more details on WASM and browser support, head over to [http://webassembly.org/](http://webassembly.org/)
+
+UE 4.16 also adds support for WebGL 2.0 which is based on OpenGL ES 3.0 and provides more optimal rendering performance, increased visual fidelity, and support for more rendering features, including:
+
+* Most features of UE4's high-end mobile feature level
+
+* Instanced Geometry Drawing for particles and foliage
+
+* Support for Multiple Render Targets (MRTs)
+
+* Texture features such as 3D or volume textures, 2D array textures, and no more non-power-of-two texture restrictions
+
+WASM and WebGL 2.0 are supported by Firefox 52 and Chrome 57 or later (64-bit recommended). Note there appears to be a bug in Chrome 58 on Windows that is causing out-of-memory errors in some cases. We are working with Google to get this issue resolved. Please see [UE-44727](https://issues.unrealengine.com/issue/UE-44727) for the latest status on this issue.
+
+You can enable WASM and WebGL 2.0 in the Emscripten section of the HTML5 Project Settings. If you require the broadest browser support possible, continue to use ASM.js and WebGL 1. *Support for ASM.js and WebGL 1 will be deprecated in an upcoming engine release, and then removed afterwards (exact timing is dependent on additional browser support).*
+
+For a LIVE DEMO: [try out Zen Garden on HTML5](https://hacks.mozilla.org/2017/03/firefox-52-introducing-web-assembly-css-grid-and-the-grid-inspector/) to see these benefits first-hand in your own Firefox or Chrome browser (supported versions listed above).
+
+### New: 2x Faster Garbage Collection
+
+Garbage collection performance has been significantly improved and is now **more than twice as fast!** Specific improvements include:
+
+* Reachability analysis multithreading has been redesigned to reduce the overhead of task management.
+
+* Garbage Collection clustering now supports Blueprint-generated classes and selected Actor types.
+
+* UObject unhashing code has been optimized to reduce the time spent destroying Actors.
+
+### New: Kinematic Bodies with Simulated Parents
+
+We've added the ability to have kinematic physics bodies with simulated parents. You can now have child bones, such as the character's hands, purely driven by animation data, while the parents of those bones can also be driven by physics simulation data.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ qiiOU_fhex0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+This enables cool effects such as the player scaling a ledge reacting to falling rocks colliding with its body!
+
+### New: Platform SDK Upgrades
+
+In every release, we update the engine to support the latest SDK releases from platform partners.
+
+[REGION:raw]
+(w:929 h:522 convert:false)
+[/REGION]
+
+* **Visual Studio: ** Important: Visual Studio 2013 is no longer supported on Windows with this release. Please upgrade to either Visual Studio 2015 or Visual Studio 2017.
+
+* **Nintendo Switch:** supports Nintendo SDK 1.3.1
+
+* **Xbox One:** Built against the October 2016 QFE3 XDK
+
+* **PlayStation 4:** Upgraded to PSR SDK 4.508.001 SDK
+
+* **Android:** Updated CodeWorks for Android 1R6u1
+
+* **GoogleVR:** Updated plugin to version 1.3
+
+* **GoogleVR:** SDK updated to 1.40.0
+
+* **GoogleVR:** Mode default changed to Daydream & Cardboard
+
+* **Vulkan:** Updated distributables and glslang to SDK 1.0.39.1
+
+### New: Sequencer Shot Track Enhancements
+
+Shot Tracks in Sequencer gain several improvements for both cinematics and film creation!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ GqfJxD1DY8I
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* **Hierarchical bias per shot:** By default, tracks at a lower level in the level sequence hierarchy take precedence. This allows filmmakers to build a pipeline they're accustomed to, where adjustments at the shot override tracks in the sequence they're contained in.
+
+* **Exposed "When Finished" property for all tracks:** This gives the user the ability to specify whether tracks should return values to their pre-animated state or keep them when the sequence finished. In a film production environment, you would typically want animated values in a shot to return to their pre-animated state so that they don't bleed into the next shot. In a cinematic, you might want the value to persist so that you could continue into the game from the sequencer animated state.
+
+* **Pre/post roll:** Pre and post roll is now a general concept for all tracks. Some tracks have specific behaviors, for example the camera cuts track will notify the streaming system with the upcoming camera cut position in the pre-roll evaluation period.
+
+### New: Animate Material Parameter Collections in Sequencer
+
+You can now animate Material Parameter Collections in Sequencer giving you total control over animating scalar and vector parameters which can be referenced in any number of Materials. You no longer have to animate individual parameter values on each material instance in order to share animation.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ u_Cpqz7mFuM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### New: Improved UI Rendering Performance
+
+Games that use Invalidation Panels now have an option to cache only widget elements rather than render data, enabling them to benefit from much improved texture batching and significantly reduces draw calls. The result is a big performance boost on mobile devices!
+
+[REGION:asyncgif]
+(w:456)
+[/REGION]
+
+
+On the Battle Breakers hero selection UI (shown above), each hero's logical elements are cached but can also be batched together. The console variable Slate.CacheRenderData=0 enables this mode, which is now the default on mobile devices.
+
+### New: Improved Animation Pose Driver
+
+We have made many improvements to the Pose Driver feature, which enables you to procedurally drive blend shapes or bones, by comparing the pose of a set of bones to a set of reference 'targets'. This is particularly useful for areas like shoulders, where you may want to activate corrective morph targets depending on the pose of the upper arm and shoulder.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ sjtbvyDdW9w
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* You can now select multiple bones as 'inputs' to read a pose from
+
+* You can now pick which bones should be modified by the node
+
+* You can specify a 'custom curve' for how each target should be activated
+
+* Can choose to drive curves (morphs, material) directly, instead of needing a Pose Asset
+
+* UI is improved to allow creation/editing of target poses, bars to show target activation, etc.
+
+* Target locations in viewport can now be clicked to select them
+
+### New: Opacity and Opacity Mask for Material Flattening
+
+We have added support for **baking out opacity (mask) values** when using the Actor Merge Tool or Hierarchical LOD system. The resulting (instanced) material uses your configured blend mode to ensure it follows the correct render path. Here's an example of a baked out masked material:
+
+(w:904 h:740 convert:false)
+
+### New: Improved Mesh Paint Tool
+
+The mesh painting system has been overhauled to improve usability and clarity, and to allow for reusing the functionality in other parts of the Editor.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ UezYKhase9g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Also, the painting tools can now be used on skeletal meshes! Note that painting is *not* per-instance (as with static meshes) but is applied directly to the skeletal mesh asset(s).
+
+### New: Spline IK Solver
+
+A spline IK node that is useful for controlling character spines or bone chains has been added to Animation Blueprints!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ chqOk4QdPR0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+### New: Detect Material on Mesh Surfaces
+
+We've added a new 'Get Material From Face Index' function for Components which enables you to retrieve the Material applied to a Component after performing a (complex) Line Trace. This is supported for Static Meshes, Procedural Mesh Components, and BSP.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ SvsSnkwB1TQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### New: 'Look At' Animation Node Improvements
+
+The **Look At Location** property of a Look At node can now be used relative to a bone or socket. Previously this value was ignored when you specified a bone or socket.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 3C7Q6JJxmtY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+The visualization for Look At controls is also improved. For example, you can see the clamp angles, target location, interpolation and so on.
+
+### New: Animation Export Improvements
+
+We added support for creating and exporting animations that include additional animation data generated from a post-process graph assigned to the Skeletal Mesh, such as Anim Dynamics for physics simulation.
+
+To include this additional data, choose **Preview Mesh** from the **Create Animation** or **Export Animation** menus.
+
+(w:697 h:256 convert:false)
+
+### New: Unreal Audio Engine (Early Access Preview)
+
+The new Unreal Audio Engine announced at GDC is available in early access on PC, Mac, iOS, Android, and Switch. It includes a cross-platform audio mixer with full backwards-compatible support for the existing audio engine feature set, including a new multiplatform EQ and Reverb master effects. In addition, the new Unreal Audio Engine introduces new features such as a submix graph, submix effects, source effects, real-time synthesis, and better audio plugin support.
+
+The new Unreal Audio Engine is not enabled by default in 4.16 as there is continued work on implementing backends for console platforms, Linux, and HTML5, as well as stability and performance improvements, especially on mobile platforms.
+
+To enable the audio mixer, use the command line argument "-audiomixer".
+
+Note: Most new Unreal Audio Engine features are hidden if you launch the editor without the audio mixer enabled.
+
+#### New: Synthesis Plugin (Early Access)
+
+The new synthesis plugin contains two new real-time synthesizers written using the new Unreal Audio Engine's "SynthComponent" class to implement a fully-featured subtractive synthesizer as well as a real-time granulator. These new synthesizers are not only useful tools for procedural music and sound design, but they serve as an example of how third-party plugin manufactures and even sound designers might implement their own synthesis.
+
+The synthesis plugin also contains a host of new DSP source and submix effects for use with the new Unreal Audio Engine:
+
+* **Source Effects:** Stereo Delay, Bit Crusher, Dynamics Processor, Envelope Follower, EQ Filter, Virtual Analog Filter (Ladder/State Variable), Wave Shaper, Chorus, Phaser
+
+* **Submix Effects:** Reverb, EQ, Dynamics Processor
+
+### New: Steam Audio (Early Access)
+
+Epic and Valve have teamed up to release the first fully-integrated implementation of the Steam Audio SDK using the new capabilities of the new Unreal Audio Engine.
+
+(w:600 h:160 convert:false)
+
+Steam Audio fundamentally integrates with the new Unreal Audio Engine's spatialization, occlusion, and reverb systems to bring next-gen physics-based audio experiences to UE4 for VR. This is an early access version of Steam Audio with significant updates, more example projects, and workflow improvements planned for 4.17. Epic and Valve welcome any feedback, questions, or ideas for improvements.
+
+See [https://valvesoftware.github.io/steam-audio/](https://valvesoftware.github.io/steam-audio/) for more information, documentation, and support help about Steam Audio.
+
+### New: Improved Color Grading Tool
+
+The Color Grading user interface is improved to make it easier to use!
+
+(w:529 h:257 convert:false)
+
+* A new HSV mode was added.
+
+* You can now dynamically change the min/max value of the sliders depending on their type using Ctrl+Slider Drag.
+
+* A new reset button was added to reset a whole color grading category. (i.e Global, Shadows, Midtones, Highlights)
+
+### New: Improved Animation Blend Space Editor
+
+The Blend Space Editor now enables you to display Animation names for each sample using the **Show Animation Names** button inside of the grid. You can now also drag and drop animations on top of existing samples to replace them.
+
+[REGION:asyncgif]
+(w:905)
+[/REGION]
+
+### New: String Tables for Localization
+
+UE4 now has support for localized String Tables!
+
+(w:601 h:218 convert:false)
+
+String Tables provide a way to centralize your localized text into one (or several) known locations, and then reference the entries within a string table from other assets or code in a robust way that allows for easy re-use of localized text. String Tables can be defined in C++, loaded via CSV file, or created as an asset.
+
+### New: Animation Modifiers (Early Access Preview)
+
+Animation Modifiers enable you to apply a sequence of actions to a given Animation Sequence or Skeleton, such as pin-pointing on which frame(s) the right foot is placed on the ground and adding Animation Sync Markers to the frames where the ball_r bone is at its lowest point (touching the floor).
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ YC_UJuO9AI8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+A new set of functions to access specific animation data are available in the Animation Blueprint function library. Accessing and applying Animation Modifiers is done through a new tab which can be found in the Skeleton Editor and Animation Editor. Animation Modifiers can be added to a Skeleton or Animation Sequence. For Animation Sequences, the Animation Modifier is only applied to the sequence itself. When applied to a Skeleton, it is applied to all Animation Sequences which are based of the Skeleton.
+
+### New: Virtual Keyboards on Android (Early Access Preview)
+
+Android now supports using the operating system's virtual keyboard in place of the popup dialog input box!
+
+[REGION:asyncgif]
+(w:256)
+[/REGION]
+
+
+Use of the virtual keyboard is enabled by checking the checkbox under **Project Settings > Platforms > Android > APK Packaging**. This option enables basic support for the virtual keyboard, but your application is responsible for ensuring input elements are visible and not obscured behind the virtual keyboard using the supplied OnVirtualKeyboardShown and OnVirtualKeyboardHidden event handlers.
+
+**Note:** You may wish to disable the virtual keyboard with the Android.NewKeyboard console variable when the user is using a language requiring IME.
+
+### Support for Runtime Permissions on Android
+
+Unreal Engine 4 now supports Runtime Permissions as required by Android 23 and later to access features requiring permissions categorized as dangerous by Google. These include access to contacts, photos, phone state, external storage, camera, and location services. See this webpage for details: [https://developer.android.com/guide/topics/permissions/requesting.html](https://developer.android.com/guide/topics/permissions/requesting.html).
+
+If targeting Android 23, the Android Runtimes Permission plugin now provides the ability to check at runtime in native code or by using the **Check Android Permission** Blueprint node if a permission is already granted. If the permission has not yet been granted, the app may request it from the user using the **Request Android Permissions** Blueprint node and then get the result using an event bound to **On Permissions Granted Dynamic Delegate**. This allows permissions to be granted just before the game requires functionality needing a permission, improving the user experience. When targeting versions prior Android 23, permissions are granted by specifying them in the Android Manifest as usual.
+
+(w:718 h:346 convert:false)
+
+**Note:** 4.16 requires Android SDK 23 or higher to be installed. If you don't have this SDK level installed, you can find the CodeWorksforAndroid-1R6u1 installer in your Engine/Extras/AndroidWorks directory. Also, under "Project Settings", “Android SDKâ€, please change your Android SDK API Level from “matchndk†to “latestâ€. This will ensure UE4 will use the newest installed SDK found in your Android SDK platforms directory. There is no need to change the NDK API Level; “android-19†is correct to allow installing your APK on Android versions prior to Lollipop (Android 5.0); setting this higher will cause your app to require Android 5.0+.
+
+### Shader Code Library to Reduce Package Size
+
+You can now enable a shared storage location for all shader code using the **Share Material Shader Code** project setting, resulting in a single copy being stored for Materials or Material Instances that generate the same shader code.
+
+Some platforms such as Metal on iOS, TVOS and MacOS support a more efficient platform-specific shader library. Enabling the **Shared Material Native Libraries** project setting will further reduce the package size by utilizing this native library format.
+
+### New: Import Capsule Collision from FBX
+
+You can now import capsule simple collision from an FBX file, in the same way you could already import box, sphere, and convex simple collision. You now use the 'UCP' prefix on a capsule poly mesh, and it will be removed on import, and replaced by a corresponding capsule collision shape.
+
+### New: Separate Options for Shared vs Local Asset Viewer Profiles
+
+Unreal Editor now enables you to store asset viewer profiles on a shared or local level, making it possible for teams to have a shared set of profiles which can be used as a unified scene to assess art assets. Storing profiles at a local level ensures that a user can still have a custom set of profiles he prefers to use local but are not required by the team. Shared profiles are stored in *DefaultEditor.ini* and will require you to check out or make it writable.
+
+### New: Improved Animation Preview Scenes
+
+We made several improvements to preview scenes for the Animation Tools:
+
+* Preview scene settings have been moved to the existing settings tab, rather than in a hidden menu in the viewport. This settings tab is now shown by default.
+
+* Added a shortcut to quickly switch preview mesh to the main toolbar. This applies to all animation editors.
+
+* When editing preview scenes, you no longer have to create a "preview scene collection" asset just to preview extra meshes. If you are happy with your mesh setup you can now optionally save it to an asset.
+
+### New: Add Default Camera options to Anim Viewer
+
+You can now save a 'Default Camera' position for a Skeletal Mesh. This is used when opening the mesh, and can also be jumped do by pressing Shift+F.
+
+### New: Play Montage Blueprint Node
+
+**Play Montage** is a new asynchronous node which can be used in any Blueprint logic to play Anim Montages. It provides easy access to some callback events, letting you trigger other nodes when a montage blends out, is interrupted, etc...
+
+(w:376 h:272 convert:false)
+
+* OnCompleted is called when the Montage finishes playing and it fully blended out.
+
+* OnBlendOut is called when the Montage is starting to Blend Out, either because it's stopping automatically or manually.
+
+* OnInterrupted is called if the Montage is starting to Blend Out, but because it's been interrupted by another Montage playing.
+
+* OnNotifyBegin and OnNotifyEnd are callbacks when using either 'Play Montage Notify' or 'Play Montage Notify Window' Anim Notifies in the Montage asset. These AnimNotifies can forward an additional 'Notify Name' to differentiate between multiple callbacks from the same Montage.
+
+### New: Added Options For Retargeting Poses
+
+You can now import a pose from a Pose Asset to use when setting the Retarget Base Pose. Previous options of modifying and saving the current pose (Use Current Pose) and of resetting bone transform to reference pose (Reset) are still available as well.
+
+**Note:** You can create Pose Asset in the animation editor and insert any pose to the pose asset with a name assigned.
+
+### New: Collision View Option In Static Mesh Editor
+
+There are now separate options for viewing Simple and Complex Collision for a StaticMesh in the StaticMesh Editor tool.
+
+### New: Baked Poses in LODs
+
+Unreal Engine 4 now supports baking a pose into a LOD level using a new reduction setting called Bake Pose. This can be set to a single frame anim sequence which will be applied to the resulting LOD mesh. This can prove useful when removing bones and still wanting to retain a pose.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0fcNitNu9FE
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+**Note:** This feature requires Simplygon
+
+### New: Sequencer User Interface Improvements
+
+Thumbnails for Audio Tracks now render the peak samples with an inner (smoothed) RMS curve. Audio Tracks can also be resized vertically!
+
+[REGION:asyncgif]
+(w:929)
+[/REGION]
+
+
+Other Sequencer UI Improvements:
+
+* Sequencer controlled actors will now tick properly when streamed into a level.
+
+* You can now specify additional event receivers (ie. actor blueprints) for the event track.
+
+* Bindings improvements. You can now drag/drop/set bindings for the level sequence in blueprints. For example, you can spawn an object in blueprints and assign that to an existing track.
+
+### New: Mobile VR Rendering Improvements
+
+Direct multiview is now supported for Samsung Gear VR, removing an extra render target and full screen copy when using mobile multiview which improves overall performance and reduces memory usage.
+
+Monoscopic far field can now be used with multiview enabled on Gear VR ensuring the stereo rendering portion of your scene is rendered optimally.
+
+Google Daydream supports standard mobile multiview with direct support coming in a future release.
+
+### New: Social Screens for PlayStation VR (Early Access Preview)
+
+PSVR Social Screen preview provides support for Social Screen separate mode, where the the Monitor and HMD display different things.
+
+This preview supports 30fps Social Screen output, and switching between several output modes. The following sample modes are implemented:
+
+* SystemMirror (this is the default mirror mode that has always existed).
+
+* SeparateTest (simply alternates between black and white on the social screen).
+
+* SeparateTexture (displays a blueprint specified texture, for example a render target beting written to by a scene capture component).
+
+* SeparateMirror (displays the full vr render buffer)
+
+Future work will include optimization, a multi-platform interface to these features, possibly support for 60fps mode (which requires system dialogs to resolve conflicts with certain system features).
+
+The new PSVR project setting bEnableSocialScreenSeparateMode must be set to true to use this feature. When that is true additional screen buffers will be allocated for the social screen. Blueprint functions for controlling the feature can be found by searching for 'SocialScreen'.
+
+### New: Android Executable Size Reduction
+
+We have made a number of optimizations to the compiler and linker settings to reduce the size of the Android binary executable. Checking the **Build with hidden symbol visibility** option allows the linker to more aggressively remove unused code from Unreal Engine when generating the Android executable. This also strips the function symbols from the symbol table further reducing the executable size. We are seeing reductions of around 7MB from the final APK.
+
+**Note:** This option removes symbols from the binary on the device, so a native crash call stack will appear in the logcat output without any symbols. To facilitate debugging, the build system will also copy an unstripped binary with debug symbols to the output directory, and also generate a batch file that adds symbols to a call stack.
+
+### New: Vertex Interpolator Material Expression Node
+
+Vertex Interpolator nodes have been added to the Material graph offering better control for value interpolation between vertex and pixel work. These are intended as a workflow improvement, there are no changes to interpolator limits nor will shaders change.
+
+The existing workflow for offloading work to a vertex shader is by making use of the Customized UV outputs. This can be a little cumbersome and involves manually packing your data. The example material below packs the pre-skinned mesh data then unpacks it for use in an effect:
+
+(w:766 h:665 convert:false)
+
+The new interpolator node handles packing automatically, allowing the graph to be simplified and in-lined:
+
+(w:776 h:357 convert:false)
+
+Work that would previously be packed through Customized UVs is hooked up to the VS (vertex shader) pin and retrieved from the PS (pixel shader) pin.
+
+The material stats output has been updated to show the current interpolator usage, both currently packed and available maximum. Note how in the above examples the instruction counts and interpolator usage remain constant. The stats show 2 scalars are reserved by the TexCoord[0] node and the remaining 6 by our pre-skin data, giving a total of 8 scalars packed across 2 vectors.
+
+The feature is compatible with Customized UVs and will pack results together.
+
+### New: Asset Management Framework (Early Access Preview)
+
+The Asset Manager is a new global object that can be used to discover, load, and audit maps and game-specific asset types in the editor or at runtime. It provides a framework to make it easier to create things like quests, weapons, or heroes and load them on demand. It is is still under active development, and these features will not be ready to be used by Blueprint-only games or inexperienced developers until 4.17. The Asset Manager tab in Project Settings can be used to set up the rules for your game:
+
+Primary Asset Types that are scanned by the Asset Manager can be queried at runtime before they are loaded, and can then be asynchronously loaded on demand. Also, the Asset Manager settings can be used to set up cook and chunk rules when packaging and releasing a game. In progress documentation for this feature is available on AnswerHub: [https://answers.unrealengine.com/questions/595580/what-is-the-asset-manager.html](https://answers.unrealengine.com/questions/595580/what-is-the-asset-manager.html)
+
+### New: Asset Audit Window (Early Access Preview)
+
+Built on top of the Asset Management Framework, the Asset Audit window can be used to audit disk size, memory usage, and general asset properties for many assets at once. It is a specialized version of the Content Browser, and can be accessed from the **Window > Developer Tools** menu, or from the right-click menu in the Content Browser or Reference Viewer. Once you have opened the window, assets can be added using the buttons, and platform data loaded out of cooked asset registries can be loaded using the platform drop down. Here's an example of auditing textures from the Shooter Game sample on PS4:
+
+(w:929 h:289 convert:false)
+
+### VR: Unified Console Commands for VR
+
+We've consolidated and unified console commands across VR platforms to create a shared layer that developers can work from rather than maintaining each platform independently.
+
+This provides several benefits:
+
+* Bootstrapping new platforms is easier.
+
+* Argument meanings across HMDs are more consistent.
+
+* Current HMD implementations have less redundancies.
+
+* All VR-related console commands share a common prefix, "vr.". Vendor-specific extensions are clearly marked as such in the command name itself.
+
+* The updated console commands support tab completion and inline usage help texts.
+
+During a transition period, the old console commands will still be recognized, but will issue a deprecation warning when used.
+
+### Custom Hardware Cursors
+
+Platform native custom hardware cursors are now supported on Windows, Mac and Linux! You can set up the hardware cursors to use in the UserInterface settings for the project.
+
+The system allows you to provide multiple formats for the cursors. For instance, in the settings you could specify you want the "Slate/FancyPointer" to be your default pointer. In the Slate directory of your game's content folder, you could have a FancyPointer.png + .cur + tiff, to cover the multiresolution capabilities of certain platforms. The tiff would be loaded on Mac, the cur/ani file would be used on Windows, and in case a platform specific format is not found that we support, we look for a png.
+
+### Fast CreateWidget
+
+UMG widget creation is now up to 3 times faster! When cooking, the widget compiler now generates a widget template/archetype that is stored in the same package as the generated Blueprint Class and used during widget creation.
+
+**Technical Details**
+
+During compiling, we generate a nearly fully initialized widget tree including all sub User Widgets and their trees, hookup all member variables, initialize named slots, setup any animations, etc. This nearly fully constructed widget can be instanced using it as an archetype, and does not have to use the correspondingly slow StaticDuplicateObject path.
+
+There are restrictions on this method, part of the compiling step for widgets now inspects if the instancing would be successful, or if there would be GLEO references after instancing because a user forgot to setup Instanced on a subobject property. Luckily that should be few and far between since all UVisuals (Widgets & Slots) are now DefaultToInstanced, which takes care of the overwhelming cases that demand the instanced flag. Especially given the bulk of cases using BindWidget in native code.
+
+## Release Notes
+
+### AI
+
+* New: Added a profiler for Environment Query System (EQS) that can be accessed through the tabs of the EQS Editor.
+
+ * It collects data automatically during game sessions as long as UES_EQS_DEBUGGER define is set. This includes options for average and max execution time of each step (including breakdown of composite generators), number of items processed by each step, and average frequency of running, which can be useful to identify how often fail safes are actually running.
+
+ * It collects tick load data when USE_EQS_TICKLOADDATA define is set. Each query can store up to 16384 records in cyclic buffer (~4.5 minutes at 60 FPS) showing percentage of EQS tick spent on processing it. This is displayed on the graph in EQS editor tab.
+
+ * A console command has been added, "DumpEnvQueryStats", that saves current EQS profiler data to a file (project's Logs folder, .ue4eqs extension), which can be later loaded and inspected in the EQS Editor.
+
+* Bugfix: Fixed an issue with Blackboard Key Selector's "Init Selector" that resulted in it picking the first value from the Blackboard rather than the appropriately typed one.
+
+* Bugfix: Gameplay Task Resource's Auto Resource ID initialization is no longer cleared during Hot Reload.
+
+* The "Get AI Controller" is now a pure Blueprint Function.
+
+* Exposed Brain Component's "Is Running" and “Is Paused†functions to Blueprint.
+
+* Clamped AI Sight's peripheral vision angle as well as changed the UI to not allow values outside of the 0-180 range.
+
+* Disabled collision on Nav Modifier Volumes. Previously they had an 'Overlap All' response and generated overlap events. They are only supposed to be used for preventing navmesh generation, but overlap events could affect gameplay and are also bad for performance.
+
+* Made "Skip Agent Height Check When Picking Nav Data" option ignore height when picking nav data for agents. It now picks solely based on the radius when this is enabled.
+
+#### Behavior Tree
+
+* Bugfix: Added safeguards to prevent crashes resulted from Blackboard keys being names being longer than 1024 characters.
+
+* Bugfix: Fixed an issue in dynamic Behavior Tree injection that was causing unexpected behavior when the main BT had more BT injection points.
+
+* Bugfix: Fixed an issue in Blackboard key instantiation that resulted in the instanced key never being used and BB operations always referring to the original BB entry.
+
+### Debugging Tools
+
+* The Gameplay Debugger's input detection has been adjusted so that Tap and Hold work correctly in fixed timestep mode.
+
+### Navigation
+
+* Added a flag to Recast Navmesh, "Allow Nav Link As Path End", that is used to control whether path corridors can end on a navigation link or not. This may happen with partial paths and not usually desired behavior. Navigation links at the end are not allowed by default.
+
+* The Blueprint functions "Project Point To Navigation", “Get Random Reachable Point In Radiusâ€, and “Get Random Point In Navigable Radius†all return booleans determining if the projection/generation was successful, as well as the vector value that describes the requested point.
+
+* Bugfix: Fixed a memory leak in navmesh generators.
+
+* Bugfix: Fixed an issue that resulted in losing user settings in Static Mesh's navigation export (Nav Collision object) after changing any property of the Static Mesh.
+
+* Bugfix: Hand-placed AI pawns now get their Path Following Component's "My Nav Data†variable set properly.
+
+* Bugfix: Fixed an issue with missing update of navigation area after duplicate or undo operations on Nav Link Proxy and Nav Link Component.
+
+* Bugfix: Corrected the handling of path following requests by Floating Pawn Movement.
+
+* Bugfix: Fixed an issue with parameters of geometry trace handling drop-down navigation links. All components blocking on ECC_WorldStatic channel will now report a valid hit.
+
+* BugFix: HLOD's navigation collision exporting no longer causes unnecessary log output about NavCollision instances in cooked builds.
+
+#### Animation
+
+* New: You can now rename Virtual Bones.
+
+* New: You can now change Virtual Bones so that you can have a Virtual Bone that is a child of another Virtual Bone.
+
+* New: Added "Get Body Target Transform" to the Physical Animation component, which will return the goal transform that a particular body is trying to get to.
+
+* New: Control rig Sequences can now be exported to Anim Sequences.
+
+* New: Preview Scene settings have been exposed in the existing settings tab rather than in a hidden menu of the viewport.
+
+* New: Support for "Curve Source" nodes to find source components on other Actors. It now searches for the property name rather than the component name.
+
+* New: Added "Set Preview Mesh" to the toolbar for all animation related Editors.
+
+* New: Updated Alembic Third-party libraries to the latest versions.
+
+* New: Added functionality to try and match in-engine Material asset names to FaceSet names found inside of an Alembic cache to automatically assign the correct Materials.
+
+* New: The Alembic Importer now supports Vertex Color data.
+
+* New: Added functionality to inform about changes to source data when reimporting your animation data from FBX. It now checks for the following:
+
+ * Whether or not the sequence length has changed.
+
+ * Whether or not previously-imported curves exist in the source data.
+
+* Bugfix: Fixed a crash when trying to implement a function in a child Anim Blueprint.
+
+* Bugfix: Fixed a crash when debugging a null Animation Sequence.
+
+* Bugfix: Trying to access a skinned vertex position on a mesh when using Master Pose component no longer crashes.
+
+* Bugfix: Attempting to bind to Skeletal Mesh with Anim Blueprint already set no longer crashes.
+
+* Bugfix: Fixed a crash and effector selection issue for two-bone IK.
+
+* Bugfix: Right-clicking the empty space in the asset shortcut drop-down no longer crashes.
+
+* Bugfix: Removed an ensure (warning) by reverting to default unit vectors if zero-sized lookat/lookup vectors are specified for a "Look At" node.
+
+* Bugfix: Removed a crash when clearing an animation of a 1D blendspace sample.
+
+* Bugfix: Crash fix to import code for Alembic Caches with the HDF5 backend.
+
+* Bugfix: Fixed an issue when adjusting curves in the Anim Curves tab using a slider when they are not currently selected.
+
+* Bugfix: Fixed an issue with Update Rate Optimization update rate being too high. Now we use int, so if you have a high update rate it still can go until it wraps around.
+
+* Bugfix: Child Anim Blueprints can now be retargeted.
+
+* Bugfix: Fixed flipping transforms when mirrored.
+
+* Bugfix: Post Process instances are now appropriately updated, even when the main Anim Instance is not using parallel update.
+
+* Bugfix: Fixed an issue where running the Editor in a different culture could break pins on nodes that have optional arrays of pins (ie. Animation Graph nodes like Blend By Layer).
+
+* Bugfix: Fixed an issue with Anim Class being set by name, causing duplicate-named Anim Blueprints to be incorrectly resolved.
+
+* Bugfix: Fixed an issue where "r.SkeletalMeshLODBias" was affecting meshes in the Animation Editor viewports.
+
+* Bugfix: Fixed an issue with Animation Preview Scene keyboard binding (I and O hotkeys now hide and show scene elements regardless of tab opened state).
+
+* Bugfix: Skinned Mesh LOD now updates in the editor under various physics-related circumstances.
+
+* Bugfix: Fixed an issue with foot placement IK doing line traces on worker threads.
+
+* Bugfix: Fixed an issue with Anim Blueprints that contain State Machines having blank palettes.
+
+* Bugfix: Renaming curves in animations now saves properly.
+
+* Bugfix: Fixed an issue with two-bone IK flickering around full extension when stretch is enabled.
+
+* Bugfix: Animation now works as expected for dynamically-bound wheeled-vehicle anim instances.
+
+* Bugfix: Fixed an issue where you could not undo changes from Alembic Import settings.
+
+* Bugfix: Fixed timing issues occurring while playing back Alembic caches.
+
+* Bugfix: Fixed an issue with incorrect behavior occurring when placing more than three samples in a straight line for a 2D blendspace.
+
+* Bugfix: Dropping a new Animation asset on an existing Sequence Player node can now be undone.
+
+* Bugfix: Breaking transition node connections within Animation State Machines can now be undone.
+
+* Bugfix: Fixed an issue to ensure that changes to animation sync markers are propagated to currently open blendspace assets.
+
+* Bugfix: Skeletal Mesh components tick properly when paused if "Tick Event When Paused" is enabled.
+
+* Bugfix: Fixed Skeletal Mesh Merge duplicating Skeletal sockets.
+
+* Enabled snapping for translation in the Animation viewports.
+
+* Removed force inline from Virtual Compression functions.
+
+* Removed the AnimGraph module from the Graph Editor as a dependency.
+
+* Bone Reference now has improved performance by caching compact post bone index.
+
+* Graph files have been moved to Animation Blueprint Editor.
+
+* We have stopped saving raw curve data into animations on cook in order to save memory and disk space.
+
+* Ticks now appear properly on Anim Sequence scrub bar.
+
+* Persona now depends publicly on Skeletal Editor.
+
+* Montages are now correctly initialized when created. They can be used straight away without first opening them in the Montage Editor.
+
+* We now propagate thread safety flags to child Animation Blueprints.
+
+* The Anim Notify Blueprints now start with a "received notify" event node.
+
+* Made single-node animation instances request clothing simulation resets when their animation is changed. This is because the new animation could be very different from the outgoing animation, and this might cause pops.
+
+* Refactored "Evaluate Bone Transforms" to prevent usage of Skeletal Mesh component.
+
+ * Deprecated "Evaluate Bone Transforms" in favor of new “'EvaluateSkeletalControl_AnyThreadâ€.
+
+ * Deprecated Skeletal Mesh component argument to "Convert CS Transform To Bone Space" and “​Convert Bone Space Transform To CSâ€. Now they just take a transform.
+
+* When selecting bones that are non-required, we now do not render gizmos or text labels.
+
+* Skeletal selection does not lag behind choice made in the viewport (i.e. when showing bone weights).
+
+* Added accessor and modifier functions for "Start Time Offset" value in Geometry Cache components.
+
+##### Animation Assets
+
+* New: You can now choose a preview slot in the Montage Editor.
+
+* Bugfix: Fixed a crash when reimporting animations with additive transform tracks.
+
+* Bugfix: Fixed an issue with additive Pose Asset preview being applied twice.
+
+* Bugfix: Compressed animation data is now included in Memory Stats for Animation Sequences.
+
+* Bugfix: Fixed an issue where blendspace interpolation settings would not have a direct effect and required reopening the blendspace asset.
+
+##### Animation Blueprint
+
+* New: Added "Spline IK" node.
+
+* New: Added a property to Blendspace Player nodes that enables users to choose whether the play time is reset when the blendspace changes.
+
+* New: Animation Blueprints can now specify a Preview Mesh.
+
+* New: Added the "Look At" node so you can use “Look at Location†on a socket or joint, and improved the Visualizer.
+
+* Bugfix: Fixed a crash when "Pose Asset" contains a bone that is not in the mesh.
+
+* Bugfix: Fixed an assertion that could occur when selecting certain items in the Animation Blueprint editor.
+
+* Bugfix: Fixed a crash when diffing State Machine Transition graphs.
+
+* Bugfix: Fixed an issue with "Pose Handler" using mesh bone index and not compact bone index for setting up “Bone Blend Weights†array.
+
+* Bugfix: Fixed an issue with incorrect errors on compiling Aim Offset nodes with exposed blendspace pins.
+
+* Bugfix. Fixed an issue with additive nodes breaking the current pose when they have no additive animation attached.
+
+* Bugfix: Fixed issues pertaining to extra references to Animation Blueprints on Skeletal Mesh components.
+
+* Layered Bone Blend node has been optimized so that it will cache mask weights in compile time.
+
+##### Import/Export
+
+* Bugfix: Fixed a crash when reimporting a Skeletal Mesh that has Virtual Bones.
+
+##### Skeletal Mesh
+
+* Bugfix: Fixed a crash when using re-import button in the Skeletal Mesh Editor.
+
+* Bugfix: Fixed a crash related to Skeletal Mesh resources not being initialised before component is registered.
+
+* Bugfix: Fixed a serialization mismatch in Skeletal Mesh source buffers.
+
+* When importing a Skeletal Mesh, "Activate Bone Indices" now always includes parents even if it's not skinned.
+
+#### Tools
+
+* Bugfix: Fixed a crash in Persona when rotating a bone due to single bone controllers not being initialized correctly.
+
+* Bugfix: Fixed an ensure when deselecting bones in Anim Blueprint editor.
+
+* Bugfix: Fixed an issue where mesh-customized sockets were not showing up by default in 'Active' socket filter mode.
+
+* Bugfix: Fixed issues related to bone removal in Skeletal Mesh LODs.
+
+ * Issue where the "Apply" button would not show after adding bone names.
+
+ * Issue where previously removed bones would not be restored.
+
+ * Ensure that the Skeletal Tree is updated when bones are removed or restored.
+
+* Double-clicking animation assets in Content Browser will now try to re-use existing Animation Editor windows, rather than opening a new one every time.
+
+* Animation picker on Skeletal Mesh component is now disabled rather than hidden when no Skeletal Mesh is assigned.
+
+* The Soundwave-internal curve tables have been moved to the 'Advanced' rollout.
+
+#### Audio
+
+* New: Vorbis-encoded audio files can now be streamed.
+
+* New: Audio streaming is now supported on Android, iOS, and XBox One.
+
+* Bugfix: Fixed a shutdown crash when there is a pending async audio occlusion trace.
+
+* Bugfix: Fixed a crash when opening a Media Sound Wave.
+
+* Bugfix: 'Sound Player' nodes will more efficiently load the referenced sound asset unless a 'Sound Quality' node is being used to select which 'Sound Player' nodes to consider, in which case, the current asset reference evaluation will continue to be used.
+
+* Bugfix: We only queue subtitles once per-wave instances playback.
+
+#### Automation
+
+* New: Added support for -DeveloperReportOutputPath and -DeveloperReportUrl commands to permit local runs of the Automation Tool to generate reports on the report server and launch the browser to view them.
+
+* 'ResavePackages' commandlet now supports lighting in separate packages when using it to rebuild lighting.
+
+* Option to disable taking screenshots has been disabled. Screenshot comparison is an integral part of the testing so disabling them is no longer allowed.
+
+* The system now waits for the asset registry to finish loading assets before running tests.
+
+#### Blueprints
+
+* New: Added the 'Remove Gameplay Tag' function to the gameplay tag function library.
+
+* New: Blueprints containing a String and Text variables can now be marked as multi-line, which enables values to contain newlines when pressing Shift + Enter while editing them.
+
+* New: Blueprint Variables can now be marked as 'Read-Only' in Blueprint Editor, which prevents them from being set in Blueprints. This behaves the same as using 'BlueprintReadOnly' instead of 'BlueprintReadWrite' on a C++ UPROPERTY() declaration.
+
+* New: 'Get Default Locale' has been exposed to Blueprints.
+
+* Macro instances that contain latent actions will now show an overlay clock icon like other latent nodes, which makes them easier to spot and understand that they impact execution flow
+
+ (w:720 h:180 convert:false)
+
+* New: Improved comments in Blueprints.
+
+ * Comment node text now wraps while the comment is being edited.
+
+ * Reduced cases where the title of a comment node would clip at the end.
+
+ * Editing the comment for a regular node using the right click menu will now show changes immediately, rather than waiting until the node was moused over again.
+
+* New: Added the Save and Find in Content Browser buttons to the Level Script Blueprint editor (they will save/show the map package that contains the Level Script).
+
+* New: Added the ability to search for delegate nodes using the function name that they are bound to.
+
+* New: 'Array Get' node.
+
+ * Can toggle between returning a reference or copy.
+
+ * Using a reference solves a longstanding issue with arrays of structs not being able to easily make changes to the items in the array.
+
+* New: 'Get Class Defaults' node has been extended to include output pin exceptions for Set & Map variable defaults. Like array types, the returned value is now a copy of the default value rather than a reference to it. This is done in order to avoid an accidental mutation of the Blueprint class default object.
+
+* New: Function inputs are now exposed as variable "Get" nodes via the right-click context menu in a Blueprint function graph context.
+
+ * To use: In a Blueprint Function graph, right-click to access the context menu. Any input parameters will be listed as additional "Get" actions.
+
+ * In this way, input parameters can be accessed like local variables from anywhere in the function graph; in other words, it's no longer necessary to drag wires all the way back to the Function Entry node in order to access these values.
+
+* New: We now support "value-based" Bitfield enum type associations in the editor for a UPROPERTY marked as 'Bitmask' with a 'BitmaskEnum' association.
+
+ * Prior to this release, Bitfield properties did not work with associated enum types in which the enum values were explicitly set to a bitmask value (e.g. 0x80). That is, the value was assumed to always be set to the index of the bit that the flag should set in the editor ("index-based" mode).
+
+ * To switch the associate to the new "value-based" mode, include an additional metadata key in the UENUM() declaration. Example: UENUM(Meta = (Bitmask, *UseEnumValuesAsMaskValuesInEditor="true"*)).
+
+* New: Added a whitelist mechanism for handling native noexport types that can support direct field access in nativized Blueprint code.
+
+* Bugfix: Fixed a crash in Blueprint Editor when adding an input parameter to a Custom Event node after deleting a Function Graph containing a Create Event node.
+
+* Bugfix: Fixed a crash when creating a new Blueprint class from one or more selected Actors in which the root component is not Blueprint-spawnable.
+
+* Bugfix: Fixed a crash on load in nativized EDL-enabled builds with non-nativized child Blueprint class assets.
+
+* Bugfix: Fixed a runtime Blueprint VM crash upon removing an element from set after consecutive add/remove iterations.
+
+* Bugfix: Fixed a crash that could occur when splitting a struct pin on a collapsed graph node.
+
+* Bugfix: Fixed a crash when trying to use non-supported types as Blueprint map keys.
+
+* Bugfix: Fixed a crash that could occur when changing a Map's value type string to vector. Map variables are properly cleared when value type is changed to an incompatible type.
+
+* Bugfix: Fixed a crash when compiling a Blueprint that contains a split pin in a collapsed graph.
+
+* Bugfix: Fixed a crash loading Blueprints that contain a Blueprint node that no longer exists in code.
+
+* Bugfix: Fixed a crash when using the Straighten Connection shortcut key (and some other related issues with actions done after the Context Menu is closed).
+
+* Bugfix: Fixed a crash when opening a Blueprint with a parent class that no longer exists.
+
+* Bugfix: Fixed a crash with the merge tool when the source control provide is SVN and there are gaps in the revision history. (This may still not work correctly, but it won't crash. The full fix will be covered with UE-43603)
+
+* Bugfix: Fixed a crash when attempting to name component with a very long name.
+
+* Bugfix: Fixed a crash that could happen when running Cook On The Fly server with nested struct assets.
+
+* Bugfix: Fixed a crash that would happen when a level in Blueprint was auto-saved.
+
+* Bugfix: Fixed an assertion that could occur when compiling a Blueprint with certain nodes (Select, Math Expressions, etc.)
+
+* Bugfix: Fixed a crash that could occur when reparenting a component Blueprint.
+
+* Bugfix: Fixed a crash that could happen when setting maps and sets of strings and certain structs.
+
+* Bugfix: Fixed a crash that would occur when passing a self node through a CustomEvent ref parameter.
+
+* Bugfix: Fixed a crash that could occur when adding a new Blueprint function and immediately undoing.
+
+* Bugfix: Fixed a crash that could occur after renaming the category of an implemented interface function inherited from a native C++ parent class in the 'My Blueprint' panel.
+
+* Bugfix: Fixed a crash that could occur when editing a local curve variable's default value in a Blueprint graph.
+
+* Bugfix: Fixed an ensure misfire in PIE exit when using Play as Listen Server Mode.
+
+* Bugfix: Fixed an infinite loop case in the Math Expression node.
+
+* Bugfix: Fixed an issue where misaligned memory access of noexport struct properties leading to incorrectly initialized values in a nativized cooked build.
+
+* Bugfix: Fixed an issue with broken collision shapes at runtime when cooking with the optimized Blueprint component instancing data feature turned on.
+
+* Bugfix: Fixed an issue with a Bitmask Enum type validation failure when serializing a Make Bitmask Literal node
+
+* Bugfix: Fixed an issue with log spam when compiling a Blueprint function with a local TSet or TMap variable.
+
+* Bugfix: Fixed an issue with broken pin wires after expanding a duplicated collapsed graph node.
+
+* Bugfix: Fixed an issue with invalid custom Enum type selection on member fields in the User-Defined Structure editor after a reload.
+
+* Bugfix: Improved context menu "whole world" algorithm to proper take into consideration localisation when searching for terms.
+
+* Bugfix: Fixed an issue where renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded.
+
+* Bugfix: Fixed an issue with broken graph node pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself.
+
+* Bugfix: Fixed an inability to save after choosing a Level Script Blueprint class as the default value for a class input pin in a non-Level Script Blueprint class function graph.
+
+* Bugfix: Fixed an issue where Blueprints containing a 'Key Get Display Name' node will no longer be marked dirty when opening the Blueprint.
+
+* Bugfix: Fixed an issue where the user defined variable tooltip was not showing up when hovering over Get/Set nodes for local variables.
+
+* Bugfix: Fixed an issue with old versions of Blueprints being diffed accidentally showing up in Find-in-Blueprints search results.
+
+* Bugfix: Fixed some issue in Blueprint Diffing where properties of nodes edited in a Details panel would not show up as differences (this impacted Animation Graph nodes most heavily).
+
+* Bugfix: Fixed an issue in Blueprint nativization that could cause bad interface function calls to be generated.
+
+* Bugfix: Fixed an issue that could cause stale Blueprint instances in a hidden sub-level to spam a runtime error.
+
+* Bugfix: Fixed an issue that could cause a Blueprint 'mismatch' error when using 'Set' and 'Map' node.
+
+* Bugfix: Fixed an issue that could cause struct asset defaults to be wiped on editor reload.
+
+* Bugfix: Fixed an issue that could cause a packaging error when running with Blueprint nativization and no Blueprints were nativized.
+
+* Bugfix: Fixed an issue that removed the ability to set Blueprint object variables as 'config' variables, as you cannot set a object reference from a config.
+
+* Bugfix: Fixed an issue with reroute nodes so that a new output connection will propagate that type through to the node's inputs.
+
+* Bugfix: Fixed an issue so that 'Get Data Table Row' nodes are now compatible with DataTable variables.
+
+* Bugfix: Fixed an issue that could cause material parameter setting in a Blueprint construction script to fail.
+
+* Bugfix: Fixed an issue that could cause overlap events to fire multiple times in PIE.
+
+* Bugfix: Fixed an issue that would generate the nativized Blueprint plugin even if no Blueprint files were nativized.
+
+* Bugfix: Fixed an issue that would cause certain components to be orphaned and hidden from the component hierarchy.
+
+* Bugfix: Fixed an issue that could cause a level Blueprint's bound delegate nodes to not trigger.
+
+* Bugfix: Fixed an issue in Blueprint nativization that would cause cyclical logic (loops, etc.) to not iterate past the first iteration.
+
+* Bugfix: Fixed an issue in Blueprint nativization that could cause Blueprint subclasses to ignore their overridden model and default to their parent's.
+
+* Bugfix: Fixed an issue where non-nativized Blueprints were getting dropped from the cooked asset registry file when running with Blueprint nativization.
+
+* Bugfix: Fixed an issue where there would be a nativized Blueprint asset build error when there are no native code dependencies.
+
+* Bugfix: Fixed an issue with incorrect Blueprint graph pin value display names for user-defined enum types.
+
+* Bugfix: Fixed the variable 'config' setting tooltip to report the correct config file for the user to use.
+
+* Bugfix: Fixed an issue that could cause Blueprint variables set from a config to have their values improperly overwritten.
+
+* Bugfix: Fixed several issues with Switch Blueprint nodes not keeping their node and property UI in sync.
+
+* Bugfix: Fixed several issues where changing pawn/hud/state class from the Level editor toolbar would not work properly until the project was reloaded.
+
+* Bugfix: Fixed a stale class reference in interface properties that reference a Blueprint defined interface that has been recompiled.
+
+* Bugfix: Fixed an issue where 'Get Values' and 'Get Keys' nodes were not providing correct results for Map variables that have had values removed.
+
+* Bugfix: Fixed an issue where Blueprint functions that have all their return nodes pruned (ie. are not connected to anything) now have the correct output pins at call sites.
+
+* Bugfix: Fixed an issue where 'Movie Scene Sequence' and related code was not working when Blueprints were nativized.
+
+* Bugfix: Fixed an issue in nativized packaged builds that would cause default values to be lost.
+
+* Bugfix: Fixed 'Enum As Byte' related warnings in nativized packaged builds. 'Enum As Byte' is no longer used when nativizing Blueprints.
+
+* Bugfix: Fixed issues with Blueprint nativization where it didn't correctly include headers necessary for owners of subobjects, and instances where all modules needed by the generated code weren't being founds. This fixes one cause of "Cannot open include file" errors when packaging with Blueprint Nativization enabled.
+
+* Nodes in the blueprint editor again use their custom cursor (grab hand when hovering over a node and crosshairs when hovering over pins).
+
+* 'Logarithm' node added to the Blueprint Math library.
+
+* 'Set' pins on 'Intersection', 'Union' and 'Difference' nodes now infer their values uniformly.
+
+* Out of date Class Default Objects are no longer duplicated when compiling a Blueprint, reducing blueprints compilation time
+
+* Successive calls to Set Intersect, Union or Difference now provide correct results, previously the Set was not cleared before calculating the new result
+
+* 'Trace By Profile' collision functions have been exposed to Blueprints.
+
+* Nativize code is now more precise about dependencies, reducing the resulting executable size and compiler load.
+
+* Blueprints that override an inheritable component are no longer 'data only'. Blueprints with overridden components but no extra functions now load without losing data.
+
+* Blueprints that extend types that implement 'Needs Load For Server' or 'Needs Load For Client' now honor those functions, meaning they will not be cooked for targets that their type wants to be excluded from.
+
+* Delegates in nativized packaged builds correctly prevent double registration.
+
+* Blueprints used as a child actor class will no longer be marked dirty when compiling the class that references them.
+
+* When duplicating a Blueprint component, that component will now be a sibling of the duplicated node, not a child of it unless it is the root node being duplicated.
+
+* Duplicated root nodes will have their scale set to (1,1,1) to avoid applying the scale multiplier twice.
+
+* Blueprintable Components are no longer considered experimental, they have been enabled by default for several versions.
+
+* The ticking behavior of latent actions in components has been changed to match how they behave in actors. When the component ticks, the latent actions will now be processed at the same time, rather than happening later in the frame when latent actions for non-ticking actors and components are processed. This does change behavior, so there is a console variable (t.TickComponentLatentActionsWithTheComponent) that can be used to revert to the older behavior until affected component Blueprints that depended on the old ordering behavior can be fixed up. The cvar should be treated as deprecated; it will be removed in a future release.
+
+* Updated Blueprint nativization so that it generates source files compatible with 'include what you use' (IWYU).
+
+* Moved nativized Blueprint plugin generation to the project's 'Intermediate\Plugins' folder.
+
+* Removed make/break nodes from the Blueprint menu for structs that aren't marked as a 'BlueprintType'.
+
+* Updated marquee selection in graph editors. Ctrl dragging now inverts nodes' selection state, instead of only deselecting them (holding alt is now for pure deselection).
+
+* The Actor Details view will now refresh property mappings for the current Actor instances selection after a bytecode-only recompile of its Blueprint class as a dependency during reinstancing.
+
+* Child Blueprint class assets are now marked as dirty if its parent Blueprint class incurs a structural change. This alerts the user that updates to the Child Blueprint would need to be saved on exit.
+
+* We now emit C++ ctor initialization code for nested default subobjects when nativizing a Blueprint class at cook time.
+
+* Instanced Static Mesh transform edits are now reflected in the Blueprint editor's preview scene.
+
+* The editor will now raise an error at cook time after an attempt to nativize a Blueprint class that also implements a native C++ interface with a pure virtual function declaration that is not also marked up with UFUNCTION. This is because we cannot nativize a Blueprint class that does not also have an implementation of a pure virtual function inherited from the interface.
+
+* C++ interfaces with one or more pure virtual function declarations not also tagged with UFUNCTION are now excluded from the list of available "Implementable" interfaces in the Blueprint class editor.
+
+* Non-nativized child Blueprint classes will now properly override a nativized parent Blueprint class's component defaults at runtime in a nativized cooked build.
+
+* We will now implicitly nativize any child Blueprint class that overrides one or more BlueprintCallable functions inherited from a parent Blueprint class that is also nativized.
+
+* The Blueprint diff tool now reports when a component changes its type between revisions
+
+* Blueprints are now only dirtied if edited properties are from objects in the Blueprint's package.
+
+#### Core
+
+* New: Support added for "double" and 'fname' stat types in UFE stat export to CSV.
+
+* New: Pak files can now have their index encrypted with AES, preventing them from being opened by unrealpak.
+
+ * An AES key must be provided in the project Encryption.ini, and then index encryption can be enabled in the project packaging settings in the editor.
+
+ [REGION:note]
+ When either pak index encryption or signing are enabled in the Project Settings, pak ini encryption must also be enabled in order to avoid a potential security issue. All of these settings can be found in the Packaging section of the Project Settings dialog in the editor.
+ [/REGION]
+
+* New: Added "Get Component For Axis" and “Set Component For Axis†to FVector and FRotator.
+
+* New: Added support for -iterate for content plugins that require path remapping during cook/packaging.
+
+* New: Added a "CookedOnly" plugin type, for plugins meant only to be loaded in cooked games (in support of Blueprint nativization).
+
+* New: Added a Json Object Converter to add support for saving and loading TMap and TSet UProperties.
+
+* New: Absolute paths are now allowed in -UserDir= argument.
+
+* New: Added ability for games to use command line parameters for map overriding in shipping builds if their target.cs file defines UE_ALLOW_MAP_OVERRIDE_IN_SHIPPING macro to 1.
+
+* New: Added support for instanced elements in TMap and TSet properties being copied during "Copy Properties For Unrelated Objects."
+
+ * This fixes an issue where instanced fields could lose data during recompilation of a Blueprint.
+
+* New: Added a new method Platform Misc "Get OS Version" that returns a string representing the raw OS version info.
+
+* New: All HTTP implementations now use a consistent User-Agent string (specified via the overridable function Generic Platform Http "Get Default User Agent" method).
+
+ * Added a Platform and OSVersion string to the default value (platform=FPlatformMisc::IniPlatformName() and osver=FPlatformMisc::GetOSVersion()).
+
+* Bugfix: Fixed a crash with startup in the runtime asset manager when the on-disc cache already contains more data than the system is configured to use.
+
+* Bugfix: Fixed a crash in 'Chunk Cache Worker' function constructor.
+
+* Bugfix: Fixed a crash when launching "Play In Editor" session caused by missing audio data if its DDC data was not present and the audio was streamed in.
+
+* Bugfix: Fixed a crash when UObject can be added to GC cluster only if all of its Outers can also be added to it.
+
+* Bugfix: Fixed an assert with LocalExportIndex.IsNull. Now the Event Driven Loader code will properly disambiguate imports with the same name and the same outer name.
+
+* Bugfix: Fixed a crash when Hot Reloading caused by reinstancing UEngine objects.
+
+* Bugfix: Fixed an occasional crash during Hot Reload CDO reinstancing that was caused by a redundant insertion into TMap invalidating an existing reference into that TMap.
+
+* Bugfix: Fixed a crash when importing a Blueprint which contains a non-empty TMap with an enum class key.
+
+* Bugfix: Fixed a crash when Hot Reloading a project which contains a user-defined struct.
+
+* when hot reloading a project which contains a user-defined struct.
+
+* Bugfix: Fixed a crash when deserializing a TMap property item with instanced elements, where the CDO contains default element values for that property.
+
+* Bugfix: Fixed the use of many printf non-literal formatting strings, as these are potential security issues.
+
+* Bugfix: Fixed an issue with incorrect error code being returned from UnrealHeaderTool when -WarningsAsErrors and -Verbose are specified code.
+
+* Bugfix: Fixed an issue with the error code returned by UnrealHeaderTool when an error occurs during preparsing of headers.
+
+* Bugfix: Fixed a persistent stat metadata warning generated during PIE..
+
+* Bugfix: Fixed an issue with FMonitoredProcess to prevent infinite loop in -nothreading mode.
+
+* Bugfix: Fixed an issue for runtime asset cache not invalidating files with an outdated version number.
+
+* Bugfix: Fixed stats warnings because each new slate loading screen thread has the same stat name, but is potentially assigned to a different thread.
+
+* Bugfix: Fixed an issue with CSV parser missing empty cells at the end of the string.
+
+* Bugfix: Fixed an issue with external plugin cooking and deployment by remapping plugin directories upon cook & deployment Tested directory structures:
+
+ * D:\SomePluginDir
+
+ * D:\UE4\AnotherPluginDir
+
+ * D:\UE4\Engine\Plugins
+
+ * D:\UE4\MyProject\Plugins
+
+* Bugfix: Fixed a memory leak in MallocBinned which affects the mobile platforms (Android, iOS).
+
+* Bugfix: Fixed a typo in comments for LODColoration in BaseEngine.ini.
+
+* Bugfix: Fixed the Log message in "Exclusive Load Package Time Tracker."
+
+* Bugfix: Fixed an issue where "log.timestamp" command would not work because it was incorrectly handled by "log" console command.
+
+* Bugfix: Fixed an issue where the logging system could hang when running out of disk space while flushing log and fixed unexpected concurrency assert when flushing the log buffer to disk.
+
+* Bugfix: Fixed a deadlock when flushing log file while it's already being flushed by a flush timer on the async log writer thread.
+
+* Bugfix: Fixed a memory leak when running with -nullrhi on the commandline in cooked games caused by shader resources not being destroyed.
+
+* Bugfix: Fixed an issue to make sure the engine is properly cleaned up on UnrealHeaderTool early exit to prevent UnrealHeaderTool hangs.
+
+* Bugfix: Fixed an issue to make sure that streamed-in SoundWaves get added to Garbage Collection clusters.
+
+* Removed dependency preloading system from sync and async loading paths. It has been superseded by the new event driven loading system.
+
+* Removed remaining references to AES_KEY, instead using the encryption key delegates to access the key where needed.
+
+* Refactored encryption and signing key access in unrealpak to make it easier to use.
+
+* Make content projects generate a stub executable when encryption or signing keys are specified so that keys can be embedded correctly.
+
+* Separate pak cache granularity from pak signing chunk size in the EDL loader.
+
+* Increase "Serial Size" and “Serial Offset†in FObjectExport to 64bits, to handle larger file sizes.
+
+* Added some validation of the class index in exportmap entries.
+
+* Added missing support for compiling plugins external to Engine/Plugins & Game/Plugins.
+
+* Disabled the 'HeartBeat' function on platforms that don't actually want to use the HeartbeatThread.
+
+* 'None' is now going to be properly considered by the engine as an invalid filename.
+
+* The editor will now collect garbage after a map is loaded to make sure any stale components or other objects that are no longer needed are destroyed. This is to make sure that these components are not resurrected by another editor operations like duplication.
+
+* Made sure the async log writer flushes the log archive even if there's no serialization requests to prevent situations where some of the recent requests haven't been flushed to disk
+
+* Reduced the code size for the generated Static Register Natives functions.
+
+* Disabled the garbage collector when recompiling child Blueprints, as is already done for the parent Blueprint.
+
+* Simplified Unreal Header Tool's code generation logic.
+
+* Implemented Lex "To Sanitized String" for double.
+
+* The function Local Player Context "Is Valid" now also checks that the player controller has a player set.
+
+#### Editor and Tools
+
+* New: UnrealGameSync now includes a workspace-specific file filter, separately to the global file filter.
+
+* New: UnrealGameSync now supports pop-up notification for build failures on content changes.
+
+ * To mark a badge as applicable to users submitting content changes, add +ContentBadges=Name to the [Notifications] section of the project specific configuration file at /Build/UnrealGameSync.ini.
+
+* New: UnrealGameSync now allows a project to specify filters for the streams that should be displayed for fast-switching to.
+
+ * The "Quick Select Stream List" setting in the “Options†section of the Project Settings references a depot path containing a list of strings used to filter the stream list. An option is shown to switch back to showing all available streams, if desired.
+
+* New: Added support for in memory packages. Helps distinguish between packages which can and can't be cooked.
+
+* New: Added a Blueprint function to convert a Render Texture to Texture2d. This is only available for use in the Editor.
+
+* New: Custom Depth can now be enabled for Foliage.
+
+* New: You can now color-code all of the windows in the editor in order to visually distinguish them when working across multiple branches or projects
+
+ * You can adjust the 'Editor Window Background Color' for a subtle effect, as the default background is already a pretty dark grey:
+
+ (w:929 h:416 convert:false)
+
+ * Or you can edit the tint in the two brushes (which sets the texture to a white default one) to get a very brazen effect:
+
+ (w:929 h:416 convert:false)
+
+* New: Added Data Table export/import support for TMap and TSet.
+
+* New: Updated the Windows platform to use the newer Vista+ style browser dialogs, rather than the older XP style dialogs.
+
+* New: You can now empty the text value within an FText property or pin.
+
+* New: Added support for .ini-driven classes to use a specific platform's config hierarchy, so that the editor on a desktop platform can read .ini settings from other platforms .ini files.
+
+ * This will allow for NDA'd platforms to keep their ini settings in protected files, but still be editable by the editor.
+
+ * Moved project settings for console platforms over
+
+ * See UObject::GetConfigOverridePlatform()
+
+* New: Scene importing now allows for plugins to expose new scene import factory types.
+
+* New: Overhauled "Call In Editor" support and promoted it so it can be used on functions in any class, not just Blueprints derived from AActor:
+
+ * "Call In Editor" can now be used on native UFUNCTION() declarations (e.g., UFUNCTION(Category=CoolCommands, CallInEditor)).
+
+ * Blueprint declared functions can also be marked as CallInEditor (in addition to custom events), which allows you to set the category and tooltip for the buttons.
+
+ * Now shows each function as a separate button, placed in the category associated with the function.
+
+ * Removed the duplicate copies of properties placed in the Blutility section.
+
+ * Prevented operating on functions that have parameters or return values, which could crash before.
+
+ * Added a scoped transaction around "Call In Editor" execution so changes made can be undone.
+
+ * The button strip entry is now searchable by function name or tooltip.
+
+* New: Added a new Details view option: "Show Hidden Properties while Playing"
+
+ * Enabling this allows you to see every property on selected objects that belong to a simulating world, even non-visible and non-editable properties.
+
+ * This feature is very useful for inspection and debugging, because you can see all of the internals of your Actors and Objects.
+
+ * Be careful when changing values for properties that are not really intended to be changed at runtime. You could introduce instability or even corrupt data.
+
+ * Note that this setting is saved for your entire project.
+
+* New: Sequencer additions and updates:
+
+ * Tracks can now be prioritized based on their subscene hierarchical bias value. Higher bias values take precedence.
+
+ * Fixed particle system restore state so that it gets the proper initial active state of the particle.
+
+ * Added a generic past menu for Master (root) tracks.
+
+ * Changed the time snapping interval in the toolbar UI so that it no longer additionally updates the Sequencer setting. The setting is only used to initialize the time snapping interval of the Level Sequence.
+
+ * Added translate keys with Ctrl and Left-Right arrows.
+
+ * Added Level Sequence Actor button in the Details panel to open Sequencer.
+
+ * Duplicate shot now puts the duplicate on the next available row, keeping the start/end times the same.
+
+* New: You can now isolate/select all sections using a specific Material slot.
+
+* New: The FBX importer updates:
+
+ * Now imports collision models under the FBX LOD Group.
+
+ * Now applies the transform from FBX options only one time for the whole import.
+
+ * When importing an FBX file from Blender, the importer now removes the root node name "armature."
+
+ * No longer removes the socket created in UE4 Editor when using reimport. If affects only imported socket.
+
+* New: Added some LOD Setting options to the FBX Import Options window. Users can now specify the following Static Mesh LOD Settings Options:
+
+ * Auto Compute LOD Distance
+
+ * Minimum LOD Number
+
+ * LOD number
+
+* New: The FBX Importer now fills two more Material Inputs (Texture only) from the FBX Material:
+
+ * Specular Factor imported as "Roughness"
+
+ * Shininess imported as "Metallic"
+
+* New: The FBX exporter can now export with the Front X-Axis. The new option is under the Editor Preferences settings.
+
+* New: TMaps now support editing structs as keys from within the Details panel.
+
+* New: The Data Table Row Editor now contains a Reset to Default control.
+
+* New: Properties added to the header of a Details panel group (ie. via IDetailGroup::HeaderProperty()) now have copy/paste actions exposed in the Context Menu.
+
+* New: Added the possibility in Slate to reset property group to their default value.
+
+* New: Added the possibility to perform the following actions in Save/Load Level dialog:
+
+ * Rename
+
+ * Delete
+
+ * Create a New Folder
+
+ * Show in Explorer
+
+ * Show the Size Map tool
+
+* Bugfix: Fixed a crash when selecting components from an Actor's component tree and then undoing
+
+* Bugfix: Fixed a crash when attempting to open multiple cooked assets at once in the editor.
+
+* Bugfix: Fixed a crash when pressing PIE button several times before PIE session begins.
+
+* Bugfix: Fixed a crash that could occur during seamless travel while playing in a Play-in-Editor session with the "Use single process" option unchecked.
+
+* Bugfix: Fixed a crash while using the "Delete" button inside of the HLOD outliner while having a Proxy mesh opened in the Static Mesh Editor.
+
+* Bugfix: Fixed a crash when using import into level with .obj file.
+
+* Bugfix: Fixed a crash when dragging a re-import scene and there is new asset created.
+
+* Bugfix: Fixed a crash when creating too many LODs when importing a Static Mesh.
+
+* Bugfix: Fixed a crash with High Resolution Screenshot Tool that could happen when the Screen Percentage is set to a value other than 100%.
+
+* Bugfix: Fixed an issue with Device Output Log showing partial lines sometimes.
+
+* Bugfix: Fixed an issue where array properties would revert to the default values when duplicating an Actor.
+
+* Bugfix: Fixed an issue with Details panels becoming unusable if "Show Only Modified Properties" is enabled and there are no modified properties.
+
+* Bugfix: Fixed an issue so that thumbnails for Material assets now respect the "used particle system sprites flag" and show a quad instead of a sphere by default.
+
+* Bugfix: Fixed an issue for outdated error message instructions for how to fix being unable to launch on an iOS device.
+
+* Bugfix: Fixed an issue with "Save Current As" option not saving the current level and only saving the Persistent Level and then reloading everything thus causing work to be lost if editing a sub-level.
+
+* Bugfix: Fixed an issue with Material Instances being marked dirty when opening.
+
+* Bugfix: Fixed an issue with TAssetSubClassOf properties being reset on undo.
+
+* Bugfix: Fixed an issue that could cause the wrong Blueprint instance to be duplicated, or copy/pasted.
+
+* Bugfix: Fixed an issue with the Focus action in the Static Mesh Editor viewport.
+
+* Bugfix: Fixed an issue with Color Customization so that curve color names are "R", "G", "B", "A" instead of None.
+
+* Bugfix: Fixed an issue with user's setting for Texture Mip LOD size being incorrectly clamped.
+
+* Bugfix: Fixed an issue where lighting rig rotations were not set / saved correctly for Preview Scene Profiles.
+
+* Bugfix: Fixed an issue where auto-exposure values from the Preview Scene Profiles were not correctly applied
+
+* Bugfix: Fixed an issue where HLOD's "Override Screen Size" would not propagate on a LOD Actor directly.
+
+* Bugfix: Fixed an issue where the Material Slot assignment wasn't correctly restored on reimport.
+
+* Bugfix: Fixed an issue to prevent importing more LODs than the maximum allows for.
+
+* Bugfix: Fixed an issue with the FBX importer's "Front X-Axis conversion". We remove the scale of the camera and adjust the orientation of both the camera and light.
+
+* Bugfix: Fixed an issue with Auto Reimport "Directory to Monitor" feature.
+
+* Bugfix: Fixed some issues with the Import commandlet:
+
+ * Fixed possible crash when importing FBX files.
+
+ * Now makes sure that the imported assets are saved when there is no source control.
+
+* Bugfix: Fixed an issue with Static Mesh conversion from UE4 4.14 to earlier versions.
+
+* Bugfix: Fixed an issue with the Merge Actors Tool that was sometimes assigning wrong Material IDs to mesh sections.
+
+* Bugfix: Fixed an issue where the Number of Players and Dedicated Server settings for PIE would not persist correctly after Editor shutdown.
+
+* Bugfix: Fixed issues related to Auto Reimport:
+
+ * Fixed a crash when attempting to import to mount points that do not exist.
+
+ * Now allow for new assets to be created from monitored directories.
+
+ * Settings now use a path picker when specifying the "Map Directory To" field.
+
+* Bugfix: Fixed an issue so that Property Editor Inline Class Filter now shows unloaded Blueprint Classes properly in the Editor.
+
+* Bugfix: Fixed an issue with Undo/Redo transactions of Color Grading.
+
+* Iterative cooking .ini setting checking improvements have been made. More to come in a future release.
+
+* Dependency checking performance improvements for iterative cook. More to come in a future release.
+
+* Panning in orbit mode now takes in account camera speed setting.
+
+* Pivot Painter 2 is a general purpose vertex animation toolset that comes with specialized subset of material functions to automate foliage animation. The script and material function set are more flexible, easier to use and provide an improved workflow over the first release. Additionally, a content example map ships with the editor to demonstrate how Pivot Painter's output can be referenced in the editor.
+
+* Added a disclaimer popup for the first time a user enters VR Mode
+
+* All asset properties in Details panels now have thumbnails on by default.
+
+* Disabled editor sounds that play when you PIE, simulate or possess the player by default. There is now a setting in the editor preferences to control this.
+
+* The output log should now have the same text color as other panels in the editor.
+
+* Removed hard coded list of thumbnails, preventing objects with valid thumbnails from showing up. Thumbnails are now shown by default. Use meta=(DisplayThumbnail=false) on a property to hide thumbnails.
+
+* Import data and thumbnail data are now transactional. You can now undo and redo their edits.
+
+* Reread in the target RHIs array every time the list of shader types is needed, instead of caching, because the user could change the settings in the editor, then click cook.
+
+* The Paint Fill tool has changed the way it works in Texture Weight Painting mode, it now fills the mesh with the currently selected texture weight index.
+
+* Limited the ability of setting up the Hierarchical Level of Detail (HLOD) system in levels which are contained as streaming levels in other assets.
+
+* The FBX importer now builds the Static Mesh only once when there is many LODs.
+
+* The section Material slot assignment is now correctly restored on reimport.
+
+* When swapping the Static Mesh referenced by a Static Mesh component, we now just clean up the Material Override that exceed the Static Mesh Material array size, instead of clearing all overrides.
+
+* When using the Full Scene Importer the "Scene Import" data asset can now specify a different source file for reimport.
+
+* Data pin style preferences are now saved on Editor shutdown.
+
+* The "Fixup Redirects" commandlet now ensures that files that are marked for delete are correctly submitted to source control.
+
+* The "Resave Packages" commandlet will now submit files that are marked for delete.
+
+* Blocking volumes will actually be added to the level when placed via the "Place Actor" command instead of generating warnings.
+
+* Values that are directly entered for float properties with a specified Delta value will no longer snap to the nearest delta when losing focus.
+
+* Actor components can now be scaled to negative values using the transform gizmo.
+
+* Map properties now fully support customized property types used as keys.
+
+* When deleting an Actor, we now display the name of the referencers.
+
+* Using the Convert Actor feature now won't change the Actor level.
+
+* Primitive Statistics window will now properly update itself when adding new Levels.
+
+* Optimized the lightmap UVs generation to speed up the Static Meshes import flow when packing the UVs into higher resolutions.
+
+##### Content Browser
+
+* New: Added "Resave All" functionality to Content Browser folders.
+
+* New: Added a way to view/copy a list of references (including those that aren't loaded) to the Reference Viewer.
+
+* New: Importing CSV files will now show the name of the CSV file in the import dialog.
+
+* New: Added the ability to auto resize column in "Column View" by double clicking column splitters
+
+* Bugfix: Fixed an issue where folders wouldn't be removed from the Content Browser when deleting them.
+
+* Bugfix: Fixed an issue with the Reference Viewer where it only ever used the default thumbnail.
+
+* Bugfix: Fixed some issues for gathering cached asset dependency data.
+
+ * We no longer load dependency data that doesn't have the correct package name.
+
+ * We no longer populate the dependency results when "Gather Depends on Data" is set to false.
+
+* Bugfix: Fixed an issue that prevented textures from updating correctly if a source texture with the same name as a texture asset is imported from a location that differs from the asset's original source image.
+
+* Bugfix: Fixed an issue where the Force Feedback "Play" and “Stop†icons weren't rendered correctly and would only be displayed when hovering over the asset or when the asset is currently playing.
+
+* Bugfix: The Content Browser file path will now update correctly if it is pointing to a path that is deleted through the Sources Panel.
+
+* Bugfix: Duplicating an asset will correctly name it if there is another one of the same name.
+
+* Moving a newly-created asset before saving it will no longer save an empty package in the asset's original location.
+
+* When reimporting multiple assets, the "Yes to All" and "No to All" dialog options will prevent future reimport dialogs from appearing for the same asset type in the same operation.
+
+* Improve visual of "Column View" in Content Browser.
+
+##### Cooker
+
+* Bugfix: Fixed an issue with the rebuild lighting commandlet not checking out files correctly.
+
+* Bugfix: Fixed an issue where running the same DLC profile created by the Mobile Patching Wizard would increase HTTP chunk size.
+
+* Bugfix: Fixed an issue with the cooker always cooking "All Maps" even when a single map was specified on commandline.
+
+##### Foliage
+
+* New: Added the Show Flag "Foliage Occlusion Bounds" in the Advanced menu to see the bounds generated by the occlusion tree.
+
+* New: When moving a foliage asset to a new Level, you will now be prompted to save the Foliage Type as an asset if it's a local asset.
+
+* New: Improved the Foliage painting algorithm to properly support Random Pitch/Yaw when the setting "Collision with World" is enabled.
+
+* Bugfix: Fixed a crash that occurred when moving the mouse over certain content while in Foliage mode.
+
+* Bugfix: Fixed an issue that cause foliage thumbnails to incorrectly be duplicated if many of them are onscreen at once.
+
+* Bugfix: Fixed an issue where removing a Foliage Type wouldn't properly refresh the Details panel.
+
+* Bugfix: Fixed an issue where the foliage location would shift when using undo/redo transactions.
+
+* Optimized the occurrence of rebuilding the occlusion tree when performing actions in the editor.
+
+##### Landscape
+
+* New: We now automatically fill Landscape with the first created Landscape's Layer Info object.
+
+* New: Added sorting to Landscape Target Layer tabs. You can now sort by Material definition (which is the default one), alphabetical, or custom a using drag-and-drop operation.
+
+* New: Added a visibility toggle to only show the used Target Layers by the loaded components.
+
+* Bugfix: Fixed a crash when changing multipole Landscape Blend Layer nodes from Weight blend to Height blend.
+
+* Bugfix: Fixed an issue with user Landscape shortcuts not working in the Level Viewport.
+
+* Bugfix: Fixed an issue when performing an Undo action would delete the newly created Landscape and return back to the new Landscape window.
+
+* Bugfix: Fixed an issue where Landscape holes (visibility mask) was causing NavMesh problems at the borders of the Landscape component.
+
+* We have improved when a Level will be marked as dirty when manipulating a Landscape Spline.
+
+* The Landscape tools Material synchronisation has been updated between game thread and render thread.
+
+* When adding a new Component, if a Landscape info object exists it will determine which one is used based on its neighbors.
+
+##### Material Editor
+
+* Bugfix: Material Custom nodes that contain "tab" characters will now correctly display tab characters after copy/paste.
+
+##### Matinee
+
+* Bugfix: Fixed an issue with how tooltips display when using a Material Function in your Material.
+
+##### PhAT
+
+* Bugfix: Fixed "Multiple Values" being displayed in Body Setup properties when single bone has multiple bodies
+
+##### Sequencer
+
+* New: Added the ability to specify additional Event Receivers for Level Sequence Actors.
+
+* New: Event tracks can now be defined to trigger events at the start of evaluation, after objects are spawned, or at the end of evaluation.
+
+* New: Added the ability to retrieve bound objects from Blueprint.
+
+* New: There have been improvements to the Binding overrides.
+
+ * Added the ability to override spawnable bindings.
+
+ * Added the ability to override bindings in sub Sequences.
+
+ * Deprecated "Get Sequence Bindings" node in favor of "Get Sequence Binding", which is more robust, and provides a better UI/UX for selecting single bindings
+
+ * Added Drag/Drop support for Binding overrides.
+
+* New: Added the ability to specify Event Receivers on Event Tracks.
+
+ * These are defined by right-clicking on the Event Track in the Sequencer tree, and adding Event Receivers.
+
+ * Such objects must be defined within the Sequence hierarchy (as well as parents, children, grandchildren etc).
+
+* New: Added a reworked, more generic property path handling system in the Sequencer object change listener.
+
+* New: Unlocked the Cine Camera Post Process Depth of Field to use options other than CircleDoF.
+
+* New: "Pre Roll" and “Post Roll†are now exposed at the section level for all sections.
+
+* New: Enabled "Use Custom Start Frame" and “Use Custom End Frame†when rendering a single shot from the menu.
+
+* New: You can now set the fade color in the Track display.
+
+* New: Audio row heights are now also resizable by dragging on the bottom end of the track lane in the track area view.
+
+* New: Sequencer now re-evaluates when starting PIE or Simulate. This can be disabled with "Bind Sequencer to PIE" and “Bind Sequencer to Simulate†in the Play-in-Editor Advanced settings.
+
+* New: Split "Snap to the Dragged Key" option into two options, "Snap to the Pressed Key", and "Snap to the Dragged Key".
+
+* New: Added a loop selection range. If there is no selection range, loop mode is restricted to loop or no loop.
+
+* New: Added hotkeys to set the selection range to the next and previous shot (page up, page down). Also, added hotkey to set the playback range to all the shots (end).
+
+* New: You can now set sequencer audio components bIsUISound to false so that they don't continue playing when the game is paused.
+
+* New: Added an option to instance sub sequences when creating a Master Sequence.
+
+* New: Notify streaming system prior to Camera cuts by default. To enable, users will need to enable the Pre Roll section of the Camera cuts for the streaming system to activate prior to cutting to cameras.
+
+* Bugfix: Fixed a crash when selecting keyframes in the viewport.
+
+* Bugfix: Fixed a crash with Sequencer Recorder when clearing properties to record.
+
+* Bugfix: Fixed an issue where tick prerequisites were not being set up for Actors streamed in from a streaming Level.
+
+* Bugfix: Fixed an issue where Sequencer was animating objects from the wrong world.
+
+* Bugfix: Fixed an issue with event parameter structs being able to be garbage collected, resulting in NULL structs potentially being written out.
+
+* Bugfix: Fixed an issue with animation looping in Sequencer.
+
+* Bugfix: Fixed an issue with Sequencer Recorder to fix duplicate components getting recorded.
+
+* Bugfix: Fixed an issue with FBX import with camera and light animation key imports.
+
+* Bugfix: Fixed an issue with autokey not setting a keyframe for Slate color with the specified color.
+
+* Bugfix: Fixed an issue for filtering to include Child nodes.
+
+* Bugfix: Fixed an issue where the Sub Track node deletion so that all sub tracks aren't deleted, only the row being requested.
+
+* Bugfix: Fixed an issue to invalidate expired objects when Blueprints are compiled. This fixes Actor references to now handle sections that need to have their GUIDs updated (ie. attach tracks).
+
+* Bugfix: Fixed an issue so that when finishing a scrub, playback status is now correctly set to stopped rather than set to a stepping state.
+
+* Bugfix: Fixed a missing command binding alt-r to record selected objects into sequencer.
+
+* Bugfix: Fixed an issue to Filter hidden functions, which fixes a bug where the field of view property for a cinematic camera appears to be animatable,. It should be hidden just like it is in the property editor.
+
+* Added a warning when Sequencer tries to write to properties that have changed type.
+
+* Sequencer templates are now always regenerated on load
+
+* Level Sequence frame snapshots now take account of fixed-frame interval offsets, and overlapping shot sections on the same row.
+
+* We now convert Linear Color to Color for fade to get the correct fade color in viewport.
+
+* Audio waveforms now show peak samples with smoothed RMS in the center.
+
+* Set max tick rate when in game if force fixed interval playback is enabled.
+
+* Cache player fade state so that restore state will return the values to the pre animated state.
+
+##### Source Control
+
+* Bugfix: Fixed an issue with Git plugin to update the status on directories hotfix.
+
+* With the Git plugin, use use asynchronous "MarkForAdd" and "CheckIn" operations for the initial commit.
+
+* Allow binary files in Git stored via git-fat, git-lfs, etc to be diffed.
+
+##### Static Mesh Editor
+
+* Bugfix: The camera position now stays in place after reimporting from inside the Static Mesh Editor.
+
+##### Traps
+
+* Subversion binaries have been updated to 1.9.5. They should no longer crash when used.
+
+##### VR-Editor
+
+* New: Improved functionality for the VR Mode:
+
+ * Improved the look and feel of the rotation gizmo handles while in VR Mode.
+
+ * Improved interaction for painting terrain, foliage, and mesh painting.
+
+ * Improved gizmo handle animations.
+
+* New: VR Mode is now bound with the Editor Sound settings.
+
+* New: VR Mode motion controllers now have collision when in simulate.
+
+* Bugfix: Fixed VR Mode selection now to respect a component's "Is Selectable" state.
+
+* Bugfix: Fixed an issue with not being able to open a project in the Project Browser with VR Mode auto-entry enabled and the HMD active.
+
+##### Windows
+
+* New: Custom Depth can now be enabled for Landscapes
+
+* Bugfix: Fixed an issue with Landscape spline segment splitting when using streaming levels.
+
+* Bugfix: Fixed an issue with Landscape painting in orthographic viewports when the painted area's Z value was below 0.
+
+##### World Browser
+
+* Bugfix: Fixed an issue when moving a sublevel in World Composition browser does not appear in Undo History.
+
+##### World Outliner
+
+* New: Actors in the World Outliner will now bring their children with them when moved into a newly created folder.
+
+#### Gameplay Framework
+
+* New: Added an option for components to opt out of physics impulses on damage using "Apply Impulse On Damage".
+
+* New: Exposed component's "Ignore Radial Impulse" and “Ignore Radial Force†flags to Blueprints. “Ignore Radial Impulse†is now properly respected when applying impulse to relevant movement components.
+
+* New: The Player Controller's "Should Perform Full Ticket When Paused" can now be set from Blueprints and the Details panel.
+
+* New: Spawn Sound and Force Feedback Blueprint nodes now have a "Auto Destroy" pin that can be set to false to allow the component to be reused after the sound/pattern complete.
+
+* New: The number of buttons that can be used by Raw Input is now 20.
+
+* New: Fields of Attribute MetaData are now editable.
+
+* New: In the Ability System, the "Cancel Ability" has been exposed to Blueprints.
+
+* New: For Cameras, support has been added for specifying a default aspect ratio and whether or not to constrain to it in a Camera Manager subclass.
+
+ * Normally the information would come from a Camera component, but this is useful when using custom view logic that doesn't source from a Camera component as the view target.
+
+* New: Added "​On Component Collision Settings Changed Event" delegate to Primitive Component. Fixed Skeletal Mesh Component not calling Super implementation for “On Component Collision Settings Changedâ€.
+
+* New: Refactored Character Movement Component determination of net send rate when combining moves into a virtual function Get Client Net Send Delta Time. Added configurable values to Game Network Manager under ​[/Script/Engine.GameNetworkManager] in BaseGame.ini: "ClientNetSendMoveDeltaTime", “ClientNetSendMoveDeltaTimeâ€, “ClientNetSendMoveThrottleAtNetSpeedâ€, “ClientNetSendMoveThrottleOverPlayerCountâ€.
+
+ * This replaces the values that were hardcoded in the network code for characters and enables easier configuration of client send rates for movement.
+
+* New: We've increased Pawn location replication precision to 2 decimal places from 0. Prevents replicated pawns from being inside geometry by a large amount. Removed CVars controlling CharacterMovement proxy shrink amount and made those instanced properties on the component.
+
+* New: Added a flag to Character Movement Component to determine whether or not character should Sweep while using "NavWalking", instead of relying on Generate Overlaps flag.
+
+* New: Added "Apply Gravity While Jumping" flag to Character Movement Component. This helps to reduce Framerate Dependent Jump Height issues when disabled, but raises jump height. This is disabled by default.
+
+* Bugfix: Fixed a crash due to null World Settings when rendering a thumbnail.
+
+* Bugfix: Fixed a crash when opening Blueprint after adding a component to native class referenced by a Child Actor Component.
+
+* Bugfix: Fixed several issues with renaming or deleting Gameplay Tags from the Gameplay Tag Project Settings page.
+
+* Bugfix: Fixed an issue when calling "Set Visibility" or “Set Hidden In Game†all children of the component will now properly be reconsidered as to whether they should render.
+
+* Bugfix: After duplicating an Actor, components added to the source instance will now have the correct position in the duplicate.
+
+* Bugfix: Ability actions can now be properly bound to input components.
+
+* Bugfix: Construction scripts will no longer be incorrectly rerun on Actors in a level that was hidden and then later made visible again.
+
+* Bugfix: Fixed an issue warning about invalid world content when loading maps with child Actor components in it.
+
+* Bugfix: Fixed cases where built lighting on child actors could be lost when loading a level.
+
+* Bugfix: Fixed case where child actor template was not cleared when setting child actor class to null.
+
+* Bugfix: Fixed issues with seamless travel in PIE and sub-levels shared between different Persistent Levels.
+
+* Bugfix: Fixed issues where Child Actor Component's "Parent Component" would be null on the client.
+
+* Bugfix: Fixed accumulated forces in Character Movement applied incorrectly when movement mode or active state changes.
+
+ * Added ​"Clear Accumulated Forcesâ€
+
+ * "Add Force" and related functions now avoid adding the force if in Movement Mode is set to "None". When ticking in "None", forces are cleared so they don't pile up until the next valid movement mode. Forces are also cleared if the updated component changes or when the capsule simulates physics.
+
+ * "Deactivate" implemented to stop movement and call “Clear Accumulated Forcesâ€.
+
+ * "Clear Accumulated Forces" now also clears pending launch velocity. Exposed “Clear Accumulated Forces†to Blueprints.
+
+ * "Apply Accumulated Forces" does not call â€Clear Accumulated Forcesâ€, since that would prevent pending launch.
+
+ * "Add Force" and “Add Impulse†now also check that character movement is active (not deactivated, able to tick).
+
+ * "Simulate Movement" handles pending launch and clears forces regardless of whether it's simulated proxy.
+
+ * Inlined Actor Component "Is Active" for performance.
+
+* Bugfix: Fixed characters sliding when landing on slanted surfaces or stairs, when aggressive "Perch" settings could cause a line trace (from the center of a capsule) instead of capsule trace and thereby screw up the floor distance checks.
+
+* Bugfix: Fixed the case of people moving a Character mesh in Begin Play rather than in the Editor or Construction Script and not having the mesh offset reflected correctly in network games.
+
+ * Added function "Cache Initial Mesh Offset" to cache initial mesh offset, used as the target for network smoothing. This takes location and rotation params so you can be explicit on the values, in case you try to change these during network smoothing, where reading the relative offsets would be skewed.
+
+ * Added a call to this function from Begin Play in addition to the existing call from "Post Initialize Components", and exposed this to Blueprints as well for custom changes to mesh offset at runtime.
+
+* Bugfix: Fixed an issue with Projectile Movement Component continuing to simulate (and generate hit events) after it is deactivated during simulation. "Has Stopped Simulation" function now checks if “Is Active†is false.
+
+* Bugfix: Fixed an issue with "Get Welded Bodies" so that it properly returns Skeletal Bodies, instead of the default body for Skeletal Mesh Components.
+
+* Bugfix: Fixed an issue with infinite jump on client when Jump Max Hold Time is not 0.
+
+* Stop dynamic force feedback when initiating Actor is destroyed.
+
+* Clarified the tooltip on the "Inverse Lerp" function.
+
+* In the Movement Component "Deactivate" calls “Stop Movement†to clear cached velocity.
+
+ * It was undesirable that reactivation many seconds or frames later would restore a stale velocity.
+
+* The "Collision.ListComponentWithResponseToProfile" command now includes pending kill objects. Use this to inspect collision responses between objects in a game world.
+
+* Optimized the Math Library "Get Forward Vector" (converts Rotator to forward direction). This way we avoid building a matrix, and avoids 1 more SinCos call.
+
+#### Learning Resources
+
+##### Sample Content
+
+* New: ShooterGame now supports dedicated servers on PC, Mac, and Linux!
+
+#### Localization
+
+* New: Improvements to culture switching and LocRes files.
+
+ * LocRes files now de-duplicate translations when they're generated, which can result in smaller LocRes files.
+
+ * The localization compilation step now produces a LocMeta file, which contains meta-data specifying the native culture during compile, and where the native LocRes file can be found.
+
+ * Changing cultures now loads the native localization data prior to loading the non-native translations to ensure that translations are always applied to a consistent base.
+
+ * The "leet" culture (available when localization testing is enabled) is now always applied against the native translation, and correctly restores non-translated text when switching away from the "leet" culture.
+
+ * "-culture=leet" now works correctly on the command line ("-leet" also works).
+
+ * LoadLocalizationResourcesForCulture is no longer called multiple times during initialization of the text localization manager.
+
+* New: Updated Fast Decimal Format to support the correct 0-9 numerals for the current locale
+
+ * These are typically still Latin, but Middle Eastern languages have some variants.
+
+ * This addresses an inconsistency between FText formatting of numbers and dates (since numbers always used Latin, but dates used the culture correct numerals).
+
+* New: Split the monolithic culture concept in UE4
+
+ * UE4 has historically only supported the concept of a single monolithic "culture" that applied to both text localization and internationalization, as well as all asset localization. Typically the "culture" was set to the "locale" of the OS, however that could be undesirable or incorrect on platforms (such as newer versions of Windows) that have a distinct concept of "language" (for localization) and "locale" (for internationalization).
+
+ * This change splits the concept of "culture" into "language" and "locale", and also adds the concept of "asset groups". The language is now used to work out which localization we should use, and the locale is used to control how numbers/dates/times/etc are formatted within our internationalization library.
+
+ * Asset groups expand on the language used by asset localization and allow you to create a group of asset classes that can be assigned a different culture than the main game language. A typical use-case of this would be creating an "audio" group that could, for example, be set to Japanese while the rest of the game runs in English.
+
+ * If your game doesn't care about the distinction between language and locale, and doesn't need to use asset groups, then you're able to continue to use "culture" as you always have. If, however, you do care about those things, then you'll likely want to avoid using the "culture" directly (as it's now a very aggressive setting that overrides all others), and instead favor using language/locale (games will typically treat these as the same) and asset groups as separate concepts (both in settings, and in your in-game UI).
+
+ * The language or locale for a game can be controlled by settings within the "Internationalization" section of your configs (this would typically be set in your Game User Settings config, in the same way that "culture" works), eg)
+
+ [Internationalization]
+ language=fr
+ locale=fr
+
+ * The asset groups for a game can be controlled by settings within the "Internationalization.AssetGroupClasses" and "Internationalization.AssetGroupCultures" sections of your configs (the asset group class definition would typically be set in your DefaultGame config, and the cultures the groups use would typically be set in your Game User Settings config), eg)
+
+ [Internationalization.AssetGroupClasses]
+ +Audio=SoundWave
+ +Audio=DialogueWave
+ [Internationalization.AssetGroupCultures]
+ +Audio=ja
+
+* Bugfix: Fixed an assert that could trigger when an IME composition is aborted during widget destruction.
+
+* Bugfix: Fixed a crash that could happen if a config was loaded while the Gather Text commandlet was running.
+
+* Bugfix: Fixed text namespaces being treated as case-insensitive when exported to JSON manifests and archives.
+
+* Bugfix: Fixed text format history being clobbered by reference collection.
+
+* Bugfix: Fixed the pluralization of the decorator text during drag-and-drop operations.
+
+* Vastly reduced the number of allocations that happen when rebuilding text at runtime.
+
+#### Networking
+
+* New: Network dormancy efficiency has been improved greatly (if you have large number of dormant actors, they now will have less overhead).
+
+* New: Network consider/relevancy code is now also much more efficient. Overall, expect a 20+% improvement in performance if you have lots of Actors in the network Actor list.
+
+* New: Adaptive network update frequency logic is now on by default. This should improve network performance for games that weren't opt'ing in to this feature.
+
+ * Net.UseAdaptiveNetUpdateFrequency is now 1 by default.
+
+* New: Replays now support network relevancy.
+
+ * All connections are considered when determining if an Actor is relevant.
+
+ * Enable by setting demo.UseNetRelevancy to 1.
+
+ * Override cull distance with demo.CullDistanceOverride.
+
+* New: Added more info about the connection to logs when you see "FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump" message.
+
+* New: Updated OnlineSubSystemNull to properly account for game state and "Allow Join In Progress".
+
+* Bugfix: Fixed a crash that could occur when updating unmapped objects.
+
+* Bugfix: Fixed an issue with IPAddressBSD validation when setting IP from string.
+
+* Bugfix: Fixed a memory leak in network drivers.
+
+* Bugfix: Fixed an issue with syncing of non-contiguious UENUMs over networks.
+
+* AActor "Pending Net Update" has been deprecated. Please use “Pending Net Update†that is now on FNetworkObjectInfo (obtained by calling “Get Network Object Info).
+
+* UNetDriver "Get Network Actor" is now deprecated. Use UNetDriver “Get Network Object Info†instead.
+
+* Disabled net.PartialBunchReliableThreshold for replays (we don't need to worry about bunch fragment sizes since there is no packet loss for replay connections).
+
+#### Online
+
+* New: Steamworks integration has been updated to support version 1.39, including updated steam controller support!
+
+* New: Web Browser module no longer directly depends on Online Subsystem plugins.
+
+ * It uses the Online Engine Interface shim to explicitly depend on the engine and will use Online Subsystem features when that module is optionally added.
+
+* New: Added a new overload for Online Session "Find Friend Session" in the session interface that can retrieve sessions for multiple friends.
+
+* New: Sending and accepting invites on dedicated servers on Steam is now supported.
+
+* New: Updated OpenSSL libraries to use BCrypt on Windows in order to reduce memory allocations.
+
+#### Other
+
+* New: Added a "Buffering" media player event.
+
+* New: The Plugin Browser now supports customizations to allow for context-specific plugin creation.
+
+* Bugfix: Fixed a crash with Media Assets in "Tick Video" after media player is garbage collected.
+
+* Bugfix: Fixed an issue to prevent the default cooked sandbox from trying to read non-cooked assets.
+
+* Bugfix: Fixed a message router thread not being woken up right away on shutdown.Crashreporter uploads/downloads crash data from AWS
+
+* Search button is disabled after clicking it once to prevent accidental double-clicks.
+
+* Reading the config hierarchy for TVOS now matches IOS to get the correct bundle id when packaging a project
+
+#### Paper2D
+
+* Bugfix: Custom tile maps using collision can now be created at runtime on any platform without crashing. However on iOS/Android/HTML5 only the boxes and spheres used in the per-tile collision shapes have effect; arbitrary convex collision (e.g., slopes or other triangle-based collision) will not cause collisions or overlaps until support for PhysX runtime cooking is added to these platforms.
+
+* Bugfix: The Paper2D flipbook editor now shows the current frame correctly when the animation timeline is longer than the editor window and the scroll bar is moved to the right.
+
+* Bugfix: Paper2D flipbook editor now shows the correct number of frames; previously, it was one frame short.
+
+#### Physics
+
+* New: Added sprite to Physics Thruster Component (previously this was only available on Physics Thruster Actor).
+
+* New: Exposed "Set All Physics Angular Velocity" to Blueprints.
+
+* New: Added finer-grain PhysX stat information that is available by using "stat physxtasks".
+
+* New: Added the ability to specify whether a ragdoll is in the sync or async scene with "Use Async Scene".
+
+* New: Changed default contact-gen method to PCM. This is the default in PhysX 3.4.
+
+* New: Added "Is In Air" method to Vehicle Wheel.
+
+* New: For the Wheeled Vehicle Movement Component, the Mass dependent wheel properties now update when mass is updated.
+
+* New: Created "Add Force At Location Local" function to allow component space forces.
+
+* New: Added a new Physics settings "Enable Stabilization". Stabilization can help stacks of simulated bodies to come to rest.
+
+* Bugfix: Fixed a crash in anim dynamics when a world was not valid during pre-update.
+
+* Bugfix: Fixed a crash when saving sub-levels that don't currently have a correctly initialized scene.
+
+* Bugfix: Fixed an issue with incorrect slider for "initial Average Frame Rate" physics setting.
+
+* Bugfix: Fixed an issue with physics constraint warning messages in Message Log. These now list Component/Actor name correctly.
+
+* Bugfix: Fixed an issue with editing Box and Capsule collision primitive rotations by storing rotation as a Rotator rather than Quaternion.
+
+* Bugfix: Editing collision profiles in Editor Preferences no longer discards edits.
+
+* Bugfix: "Find Closest Bone" function no longer ignores the “Required Physics Asset†option.
+
+* Bugfix: Fixed an issue teleport not working for physical animation component.
+
+* Bugfix: Fixed an issue incorrect inertia tensor computation for cubes, which was being doubled.
+
+* Bugfix: Fixed an issue with kinematic body interpolation in substepping causing invalid raycasting, sweeping, or overlapping.
+
+* Bugfix: Physics Constraint component now works as expected when its target is a Child Actor component.
+
+* Bugfix: Fixed an issue with collisions between components with CCD enabled having unreliable behavior.
+
+* Bugfix: Fixed an edge case where generating collision data could cause the engine to hang in an infinite loop.
+
+* Bugfix: Fixed a regression with Raycasts against Capsules returning invalid hits.
+
+* Bugfix: Instanced Static Mesh now properly creates physics state when set to Stationary.
+
+* Bugfix: Fixed a memory leak caused by keeping PhysX shapes in memory after they are no longer being used.
+
+* Expanded self-collision culling for clothing by providing a scale to tweak the culling queries. This makes a tradeoff between performance and accuracy.
+
+* Added a guard against infinitely thin geometry, which fixes some NANs.
+
+* Performance improvements to Anim node "Rigid Body".
+
+* Physics performance is improved by skipping the update of kinematic bodies when they haven't moved.
+
+#### Platforms
+
+* New: Add logging for the NUI GPU reserve so we can see when it's enabled and disabled.
+
+* New: Exposed JAVA_HOME setting in Android SDK Project Settings on Mac.
+
+* New: Added "Platform Handle Splash Screen" to deal with hiding splash screen properly on Startup Movies.
+
+* New: Implemented support for new controllers (Xbox Wireless, SteelSeries Stratus XL, PS4).
+
+ * Note: there are two implementations for Xbox Wireless due to differences in firmware. Firmware before 3.1.1221.0 does not use standard mapping which you can enable by setting the Android.OldXBoxWirelessFirmware CVar to 1 (defaults to new firmware).
+
+* New: Added support for "r.ScreenPercentage" on mobile allowing the game scene to be rendered at lower resolution than the UI. Requires MobileHDR to be enabled.
+
+* New: On-screen warnings now appear when a mobile shader permutation required to correctly render the current scene's lighting setup has been disabled in Project Settings.
+
+* New: Made some big DeviceProfile changes, particularly for the protected platforms.
+
+ * Changed the "type" of some DPs from WindowsNoEditor, etc to Windows. It should be a platform, not a random string.
+
+ * With that change, the platform can be used to save out protected platform DP .ini files to subdirectories, maintaining secrecy
+
+ * Added Config/[PlatformName]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs. See FGenericPlatformMisc::GetConfidentialPlatforms() for more information.
+
+* New: When uploading a HTML5 project to AWS S3, it now supports "signature version 4" authentication and better error message feedback on upload failures.
+
+* New: Added "use fixed timestep" setting option for HTML5 builds (This has been separated from Engine > General Settings - Framerate).
+
+ * This is slightly different to "Smooth Framerate" and “Fixed Framerateâ€.
+
+ * NOTE: Fixing the timestep does not guarantee the actual framerate. Calculations based on delta time may be adversely affected by this.
+
+* New: Added iOS/Android support for new Audio Mixer.
+
+* New: "Does Save Game Exist" will now show a message if the save data is corrupt.
+
+* New: Initial support for voice chat in the Android platform. To use enable the Voice module in DefaultEngine.ini, in the level bp create a session, and in project settings > Platforms > Android > Advanced APKPackaging, check the setting 'Add permissions to support Voice chat (RECORD_AUDIO)'. After this create a multiplayer game between two android devices. For more information check pull request #2894.
+
+* Bugfix: Fixed a crash with mobile feature level preview when the Low Quality Lightmap shader permutation is disabled.
+
+* Bugfix: Fixed a crash in clothing on platforms that don't support clothing.
+
+* Bugfix: Fixed a crash when backgrounding or sleeping on iOS Metal devices.
+
+* Bugfix: Fixed a crash with UIImagePickerController.
+
+* Bugfix: Fixed an issue with executable path for stripping Android debug symbols (handle non-Windows properly).
+
+* Bugfix: Fixed memory reporting for Uniform Buffers in "stat rhi".
+
+* Bugfix: Fixed a slow memory leak in FD3D12UniqueDescriptorTable.
+
+* Bugfix: Fixed rendering of batched Slate primitives in D3D11.x.
+
+* Bugfix: Fixed an issue with S3 public link generator for "Shipping" builds filename.
+
+* Bugfix: Fixed an issue with iOS IDFV string allocation.
+
+* Bugfix: Fixed UPL processing on iOS plist files.
+
+* Bugfix: Fixed network byte ordering for iOS multiplayer sessions.
+
+* Disabled the game analytics anonymous usage data sent to Epic on the console platforms.
+
+* Save 66MB of memory by disabling the unused default SHAPE heap in XAudio2.
+
+* Stop the audio thread from using the 7th CPU core as it can be pre-empted and not get enough execution time.
+
+* Add -distribution when iOS distribution Packaging. with IPhonePackager.exe.
+
+* Changed mouse cursor to be always visible when running in Mobile Preview.
+
+* Refactored memory allocation functions (BinnedAllocFromOS) on all platforms. Made Binned2 malloc work on Linux.
+
+##### All Mobile
+
+* Bugfix: Fixed a crash in mobile patching utilities mount method.
+
+* Bugfix: Fixed an issue with the shader compile for Landscape on platforms below SM4 feature level.
+
+##### Android
+
+* New: Bad package names are now detected and APK generation is stopped with a proper error message instead of failing during Java compiling.
+
+ * Package names with fewer than 2 segments are not allowed (e.g., "myproject" is not allowed, but “com.myproject†is legal).
+
+ * Only alphanumeric characters and underscore are allowed in the package name (Note: hyphens in the project name will be converted to underscores, but any other hyphens need to be corrected in Android project settings).
+
+ * All segments must start with a letter; if your project name starts with a letter you will need to replace the [PROJECT] part of the package name in Android project settings.
+
+ * Reserved Java keywords may not be used as the full segment; appending an underscore or other legal characters will fix this.
+
+ * Segments may not be empty (e.g. "com..myproject" is not legal).
+
+* New: Larger OBB files embedded in APK are now allowed by bypassing Asset Manager.
+
+* New: We've implemented a first pass of Google Cloud Messaging plugin. This is considered an experimental feature for this release.
+
+* New: Added missing key codes for keyboard input (@ and #).
+
+* New: Added a drop-down with some common console commands on Android to the console dialog.
+
+* New: Patches ant.bat to handle long command line issue on Windows.
+
+ * Copies original ant.bat to ant.orig.bat and writes a new ant.bat which uses subst with an unused drive letter to shorten paths).
+
+ * Note: you can edit the generated ant.bat if you need to change the drive letter used; the editor will not replace it if ant.orig.bat is found.
+
+* New: Editor now checks to make sure that at least SDK Android-23 is selected and installed. There will be an error message if an earlier version is installed.
+
+* New: Updated AAR handling to deal with versioning, subproject dependencies for resources, and scope (ignore test).
+
+* New: Added "Game Activity On New Intent Additions" section to Android Unreal Plugin Language (UPL).
+
+* New: Added support for using native virtual keyboard with Slate widgets instead of the dialog currently used for text input.
+
+ * Events are triggered when the virtual keyboard is shown and hidden.
+
+ * The show event includes the area of the screen that is covered by the virtual keyboard.
+
+ * This feature is exposed in the Android Project Settings as an experimental feature checkbox.
+
+* Bugfix: Fixed a crash that could happen when closing the Android web browser.
+
+* Bugfix: Fixed an issue to handle spaces in ANT_HOME path in generated ant.bat patch.
+
+* Bugfix: Fixed an issue with application hanging on returning from the lockscreen if orientation is Landscape.
+
+* Bugfix: Fixed an issue to correct the log warning about Target SDK and permissions.
+
+* Bugfix: Fixed an issue with Launch On when multiple architectures are enabled in the project.
+
+* Bugfix: Fixed an issue with ad banner location on Android 7.0 devices.
+
+* Bugfix: Fixed some documentation errors in UnrealPluginLanguage.cs.
+
+* Bugfix: Fixed the executable path for stripping Android debug symbols for non-Windows platforms.
+
+* Bugfix: Fixed an issue with password hiding in input dialog.
+
+* Bugfix: Fixed an issue with EGL linking issues for ARM64 libraries.
+
+* Bugfix: Fixed an issue to save and restore texture filtering for movie playback in all cases.
+
+* Bugfix: Fixed an issue with Mac and Linux install and uninstall scripts if ANDROID_HOME is not set.
+
+* Bugfix: Fixed an issue with ShowLoginUI interface change in Game Circle plugin.
+
+* Bugfix: Fixed an issue with HTTPChunkInstaller texture format checks and missing #define warning.
+
+* Bugfix: Corrected AndroidManifest.xml required features for "Daydream and Cardboard" option when GoogleVR plugin enabled.
+
+* Bugfix: Fixed an issue to prevent inserting extra permissions into AndroidManifest.xml multiple times from Project Settings.
+
+* Bugfix: The correct APK file name is now used when launching from editor for Android.
+
+* Bugfix: Fixed issues with experimental keyboard.
+
+ * Ensure the local scope ScreenRect passed into "On Virtual Keyboard Shown" in AndroidJNI is captured by value instead of by reference.
+
+ * Moved ShowVirtualKeyboardInput's "Keyboard Showing" early-out checks into the UI thread task. This enables the keyboard to continue showing when changing focus between multiple Editable Text Box widgets.
+
+* Bugfix: Fixed an issue with locations on non-ARMv7 GoogleVR libraries so that it is properly filtered by active architecture.
+
+* Bugfix: Fixed an issue to properly restore state for Android devices not using separate context for movie playback.
+
+* Bugfix: Removed an obsolete warning with Java 1.5. The java.source and java.target are now set to 1.7.
+
+* Only disable Java console command receiver for Shipping builds.
+
+* Build configuration is passed to UPL for access during packaging as $S(Configuration).
+
+* Reenabled GooglePlay for ARM64 now that it doesn't crash.
+
+* Changed Gear VR installLocation to auto as now required by Oculus.
+
+* Rebuilt ICU libraries for Android with timezones enabled and updated build scripts.
+
+* Android media player now pauses and resumes with application state.
+
+* "Is Packaging For Daydream" only returns true if GoogleVR plugin is enabled.
+
+##### HTML5
+
+* New: Emscripten toolchain has been upgraded to 1.37.9.
+
+ * Web assembly
+
+ * WebGL 2
+
+* New: There has been an update to GameX template.
+
+ * Multiple (parallel) downloads with progress percentage updates.
+
+ * Test for wasm and WebGL 2 capabilities.
+
+* New: Updates to python build scripts.
+
+* New: Configurable .ini settings have been exposed to the editor. These can be found in Project Settings > Engine > HTML5.
+
+* New: Added support for emscripten "-pre-js" and “-post-js†option when building for HTML5.
+
+* New: Added support for WebGL 2 shader to turn on Instance Static Mesh Vertex Factory.
+
+* Bugfix: Fixed an issue with AWS S3 shareable link for shipping builds.
+
+* Bugfix: Fixed some issues with WebGL 2 shaders.
+
+* Bugfix: Fixed an issue with HTML5 plugin when Blueprint projects are promoted to code projects automatically.
+
+* The recommendation from emscripten developers is to use "-separate-asm" option for asm.js builds.
+
+* Added many new UE4 patches to package HTML on Linux.
+
+* Since connections are not closed manually (server side), send a dummy payload with content-length data.
+
+##### Import/Export
+
+* New: Set Java source and target to 1.7 (fixes Java 1.5 obsolete warnings).
+
+* New: Added support for changing the variable "r.MobileContentScaleFactor" at runtime on Android. This is useful for device-specific resolution tweaking.
+
+* Bugfix: Fixed an issue where HTML5 video in a Web Browser widget would only output sound but no video on Android.
+
+* Bugfix: Fixed an issue where the red and blue channels were reversed in screenshots taken on Android in Vulkan mode.
+
+* Disabled eglSwapInterval since it can cause issues with some drivers.
+
+* Changed text for Android Mobile Deferred Renderer setting to indicate that it's only supported on Nvidia K1 and X1 devices.
+
+##### iOS
+
+* New: As we move towards the next version of iOS, we will be moving towards 64-bit support only. We have added messaging in this release to start the process of this migration.
+
+* New: IOS now utilizes the Library/Caches directory to save any data on device. This includes logs and save games. IPhonePackager has been updated to pull the data from this location as well as the Documents directory.
+
+* New: Xcode 8.3 is properly supported in this release.
+
+* Bugfix: Fixed a crash if Text Box widget is closed before text is finished being entered.
+
+* Bugfix: Fixed a crash in the OnlineSubsystem when it is disabled on iOS.
+
+* Bugfix: Fixed an issue with static audio noise on iOS devices.
+
+* Bugfix: Fixed an issue with remote compiling by unconverting the path back to host when reading from the module file name.
+
+* Bugfix: Fixed a memory leak on texture creation with Bulk Data in OpenGLTexture.cpp.
+
+* Bugfix: Fixed an issue with the device profile names for iPad Pro 9.7 and 12.9.
+
+##### Linux
+
+* New: Added pooling of OS allocations on Linux, greatly reducing the need to call mmap/munmap() and avoiding running into vm.max_map_count limit when loading large projects.
+
+* New: Install of MIME types during setup is now supported.
+
+* New: UnrealPak is no longer included in the default make target, the prebuilt binary will be used instead.
+
+* Bugfix: Fixed a crash in ShaderCompileWorker due to misaligned strings.
+
+* Bugfix: Fixed starting Linux programs using FPlatformProcess::CreateProc() from a path with space.
+
+* Bugfix: Fixed various issues with Vulkan RHI on Linux.
+
+* Bugfix: SlateDlg now appropriately compares filter extensions in a case-insensitive way, so both *.fbx and *.FBX work.
+
+* Bugfix: Fixed bogus "unable to make config file writable" message (the operation was actually succeeding).
+
+* Bugfix: Fixed clang 4.0 warnings.
+
+* Bugfix: Fixed inability to rebuild lighting in ResavePackages commandlet on Mac and Linux.
+
+* Bugfix: Fixed some problems when working from directories that have space character in their names.
+
+* Bugfix: Fixed older versions of Linux cross-toolchain (ones using LINUX_ROOT instead of LINUX_MULTIARCH_ROOT) not being detected.
+
+* Bugfix: Fixed a memory leak in callstack symbolication on Linux. This makes memory profiling work again.
+
+* Bugfix: Fixed an issue with Linux editor splash screen image being wrong when no project has been opened.
+
+* Bugfix: Fixed MoveFile to work across file systems.
+
+* Bugfix: Removed redundant RootDir() and EngineDir() on Linux.
+
+##### Mac
+
+* New: Enable Metal Shader Model 5 support on Intel as of 10.12.4 and later.
+
+* New: On Macs that do not support Metal, but erroneously report that they do, show a message box that tells users that the application cannot run instead of crashing on a failed assert.
+
+* New: Removed Mac OpenGL RHI files and disabled building of OpenGL RHI on Mac.
+
+* New: Limited support added for exposing debug events to Apple's Instruments "Points of Interest" tool.
+
+* New: Added RHISetResourceAliasability_RenderThread to FDynamicRHI for RHIs to implement simple render-target aliasing.
+
+* New: Added FApplePlatformObject, a custom block allocator for Objective-C types (with NSZombie support) which is now used in Metal RHI to decrease allocation costs of Objective-C types.
+
+* New: Limited support for Xcode automatic code-signing for iOS/tvOS.
+
+* New: Reimplement RQT_AbsoluteTime for Metal using a similar emulation to OpenGL on Mac so that the scalability system can correctly set the default graphics options. Not all drivers support this and in those cases the scalability settings are determined by an alternative, fixed, code-path.
+
+* Bugfix: Fixed mouse position issues in fullscreen mode on Mac.
+
+* Bugfix: Fixed an issue in Avf Media Player causing looped movies to only play once.
+
+* Worked around Metal's lack of implicit type-casting that was causing incorrect rendering in the Distance Field Ambient Occlusion and Shadows shaders.
+
+* Re-ordered the options in MetalRHI's internal debug options (Console Variable: "rhi.Metal.RuntimeDebugLevel") to make it more efficient.
+
+* Minimisation of render-target changes in some passes, notably Scene Occlusion and DBuffer Decals.
+
+##### Tools
+
+* Bugfix: Fixed a rare crash with the Web Browser widget on iOS.
+
+* Bugfix: Fixed iPhonePackager errors in output log when opening Project Settings on Windows.
+
+* Bugfix: Fixed Get Max Samplers returning an incorrect value for iOS OpenGL, which could have suppressed some warnings for shaders that used more than 8 samplers.
+
+* Removed duplicate gc.MaxObjectsInGame setting in IOSEngine.ini.
+
+##### Windows
+
+* Bugfix: Fixed a problem on Windows where the cursor would get locked to a part of the screen after switching from fullscreen to windowed while the cursor was unlocked.
+
+#### Programming
+
+* New: Added an experimental Android option to enable Shipping builds with hidden symbol visibility by default. (bBuildWithHiddenSymbolVisibility).
+
+ * Add JNI_METHOD for java accessible native functions, without this java will trigger an unsatisfiedlinkerror exception.
+
+ * This can significantly reduce the size of the final .so file.
+
+* New: Added support for map file generation with Android.
+
+* New: Crash reporter is no longer staged by default when packaging from the editor. The default endpoint for crashes was an Epic server, so including it in packaged games by default was not useful.
+
+* New: Script plugins can now specify dependencies which should trigger UnrealHeaderTool to be re-run, by overriding the IScriptGeneratorPluginInterface.GetExternalDependencies() method.
+
+* Bugfix: Fixed a crash where Canvas wouldn't update font engine services if it was never created.
+
+* Bugfix: Fixed an issue with Automation Tool exception when running Perforce commands if multiple brokers are present in the server configuration.
+
+* Android links with -gc-sections to remove unused code/data.
+
+* Program targets can now be excluded from the full solution build roster by setting bBuildInSolutionByDefault to false from their .target.cs file.
+
+#### Rendering
+
+* New: Added support for Window PIX.
+
+* New: Enabled support for NVIDIA Aftermath. On Aftermath enabled executables you can now get a GPU callstack when a GPU crash is detected.
+
+* New: Enabled support for global Distance Field shaders on GL 4.3 and Vulkan SM5.
+
+* New: Added support for Quad overdraw viewmode in the Forward Renderer.
+
+* New: Add support for per-component Skeletal Mesh skin weight overrides.
+
+* New: Added /VIRTUALIZEDIRECTX option to XgConsole for XGE shader compiling to work on remote machines without DX installed.
+
+* New: Added support for Structured-Buffer resource views to Metal RHI.
+
+* New: Added AMD path to experimental D3D11 HDR support.
+
+* New: Exposed the r.DisableDistortion cvar for toggling distortion rendering.
+
+* New: The high level rendering code is now PipelineStateObject aware which will allow us to reduce complexity in the rendering backends of Vulkan, Metal and Dx12 in the future.
+
+* New:Added FShaderCodeLibrary which handles de-duplication of shaders during content cooking and the shader code has moved into a separate library for cooked content runtime loading. This reduces package sizes and load-time overhead.
+
+* New: Added RHIShaderLibrary for platform specific native shader library implementations. This allows each platform to provide its own optimal shader library implementations.
+
+* New: Added Metal (MacOS and iOS) native shader library where shaders are loaded from a single Metal library improving the memory footprint, load time, and runtime compile times.
+
+* New: As part of the cook process for Metal, the archiving process also generate text shaders that can be used when running with optimized Metal shaders. Run with optimized shaders and while debugging with text source.
+
+* New: Added command line option "-noheartbeatthread" to disable heart beat thread.
+
+* New: Full refactor of the GPU Skin Cache to fix multiple issues related to Editor, Persona, per-frame numbering. Memory limit is now set per World in the Project Settings > Rendering section.
+
+* New: ShaderCache now supports running with multithreaded rendering. Command line flag "-norhithread" is no longer required to enable this feature and can now be removed if it was being used solely for this purpose.
+
+* Bugfix: Fixed a crash with D3D12 in "Update Texture 2D".
+
+* Bugfix: Fixed an assertion failure in basepass when trying to draw a mesh with Post Process Material.
+
+* Bugfix: Fixed a crash when the Tile Renderer renders before any other renderer. This could happen in rare cases on Editor bootup.
+
+* Bugfix: Fixed a crash accessing mesh Material arrays with invalid index.
+
+* Bugfix: Fixed a potential crash when rendering to accessible buffer.
+
+* Bugfix: Fixed a possible crash when failing to import cubemaps.
+
+* Bugfix: Fixed a crash for MacOS/Metal when compiling Materials using the Vector Noise node.
+
+* Bugfix: Fixed overflow issues that could occur on mali based devices when rendering DoF with bright objects.
+
+* Bugfix: Various Vulkan fixes:
+
+ * Compiles in Linux.
+
+ * Many cubemap issues squashed.
+
+ * Changed the scratch reflection cubemap clear to SetRenderTargestsAndClear, instead of SetRenderTarget() / Clear().
+
+ * Added compute fences.
+
+* Bugfix: Fixed several sRGB related issues with Retainer Box widget.
+
+* Bugfix: Fixed an issue with prepass/basepass z-fighting, caused by bad vertex welding in depth-only indexbuffer.
+
+* Bugfix: Fixed an issue with velocity rendering when an off axis projection matrix changes from frame to frame.
+
+ * Affects very few people. Cave rendering and stereo glasses but not HMDs.
+
+* Bugfix: Fixed an issue with scene motion blur data is only updated for the main renderer frames. Fixes scene captures and planar reflections breaking object motion blur.
+
+* Bugfix: Fixed an issue with Exponential Height Fog where it renders incorrectly after world origin rebasing.
+
+* Bugfix: Fixed an issue introduced into 4.15 where Static Meshes with auto-generated LODs were no longer sharing lightmaps between LODs.
+
+* Bugfix: Fixed bug converting a Procedural Mesh component to a Static Mesh if it only contains a single triangle.
+
+* Bugfix: Fixed an issue where Scene Capture 2D's show flags would not be applied properly in some circumstances.
+
+* Bugfix: Fixed an issue where the "disable Stationary Skylight" feature would cause improper warnings. Also made it so that a movable Skylight is always used in Persona preview window so all projects can get preview lighting.
+
+* Bugfix: Fixed an issue where High Quality Particle Lights would not move properly if their parent was attached to a socket of an animated skeleton.
+
+* Bugfix: Fixed detection of OpenGL Radeon driver on Mesa.
+
+* Bugfix: Fixed an issue with shot command in Vulkan.
+
+* Bugfix: Fixed an issue with refract() intrinsic handling in hlslcc for GL/Metal/Vulkan.
+
+* Bugfix: Fixed an issue with missing Mobile Material Interface for Landscape "Used Materials" check.
+
+* Bugfix: Fixed rare case where Decals could incorrectly draw a second time in separate translucency pass.
+
+* Bugfix: Fixed a bug with the basic eye adaptation mode that could result in incorrect brightness when using a small viewport. This has no effect on the default histogram version of eye adaptation.
+
+* Bugfix: Fixed an issue with Separate Translucency being affected by Gaussian DoF.
+
+* Bugfix: Fixed an issue with "Streaming Bounds" show flag not working correctly. It now shows the texture streaming bounds for the textures currently selected in the Content Browser.
+
+* Bugfix: Fixed possible stall when canceling texture updates.
+
+* Bugfix: Fixed an issue for tone mapping of bright objects with zero green. Previously, these could have had a one-pixel black outline.
+
+* Bugfix: Fixed an issue with the IES Light Profile importer with LM-63-1986 format.
+
+* Texture flags are now properly routed to RHICreateTexture3D from the render target pool.
+
+* Collection Parameter Nodes no longer rename parameters when duplicated.
+
+* Renamed console variable "r.Streaming.ScaleTexturesByGlobalMyBias" to "r.Streaming.ScaleTexturesByGlobalMipBias".
+
+* Now when using the "freezerendering" command, the foliage culling/occlusion will also be frozen.
+
+* Optimize the computation behind the Screen Position material expression in the pixel shader.
+
+ * Exposes the viewport offset of the view within the render target in the View Property material expression.
+
+##### FX
+
+* Bugfix: Fixed an issue with rendering corruption issue with 4 and 8 vertex instanced particles using the wrong Vertex Factory objects.
+
+ * D3D didn't need separate Vertex Factories due to the VertexDecl updating the stride at draw call time, but some platforms were affected.
+
+##### Lighting
+
+* New: Improved quality and significantly faster cubemap prefiltering for reflections and skylight.
+
+* New: Post Process Indirect Lighting Intensity no longer scales Skylight reflections.
+
+* New: Screen Space Reflections (SSR) now has a higher quality setting for sharp SSR when using Quality Level 4.
+
+* New: Distance field self shadowing controls for hiding world position offset self-shadow artifacts.
+
+ * Removed Static Mesh Build Settings "Distance Field Bias", which shrunk the distance field, breaking AO and shadows.
+
+* New: Distance field mesh visualization now uses a cone containing the entire tile to cull objects with, making the results stable.
+
+* New: Distance field temporal filter stores a confidence value, which is used to track leaking of occlusion during the upsample, and flush those leaked values through the history faster. Reduces DFAO ghosting when the camera is moving.
+
+* New: Added some new features to the Skylight component.
+
+ * "Occlusion Exponent" which is useful for brightening up indoors without losing contact shadows as “Min Occlusion†does.
+
+ * "Occlusion Combine Mode" which is useful for artists to choose how to combine SSAO with Distance Field Ambient Occlusion.
+
+* New: Added "r.AOListMeshDistanceFields" which dumps out mesh distance fields sorted by memory size, useful for directing content optimizations.
+
+* New: Planar reflections handle views smaller than the render target in a general way.
+
+ * Fixes planar reflections with adaptive pixel density (ViewFamily size larger than actual views combined).
+
+ * Planar reflections are now supported in splitscreen.
+
+* New: Support for fading of Light Propagation Volume cells towards the volume edges.
+
+* Fresnel of clear coat layer now darkens diffuse for the clear coat shading model.
+
+* SSR is now reprojected correctly on moving objects.
+
+* Raised High ShadowQuality to 2048 as 1024 for CSM is too low.
+
+* Disabled all distance field features on Intel cards because the HD 4000 hangs in the RHICreateTexture3D call to allocate the large atlas.
+
+##### Materials
+
+* New: Added a "Sign" material graph node which replaces the library function for more optimal translation.
+
+* New: Added MinimalAPI to several material expressions.
+
+* New: Updated default behavior of "Power" node to no longer “abs†or “max†against an arbitrary value as the results were incorrect.
+
+ * Previous version available by calling ClampedPow(x, y) in a "Custom" node.
+
+* New: Improved material translation preservation of constants.
+
+ * This improves detection of used attributes which prevents some cases of features being enabled incorrectly.
+
+* New: Material flag normal curvature to roughness now works in the Deferred Renderer. It is no longer forward only.
+
+* New: Improved Material graph error messages.
+
+* New: Enabled "r.Streaming.UsePerTextureBias" by default as a way to improve quality in low texture budget settings.
+
+* Bugfix: Fixed errors across various library Material Functions.
+
+* Bugfix: Fixed an issue with broken size query for render targets in Material graphs.
+
+ * Implemented missing "Get Size" functionality.
+
+* Bugfix: Fixed various data type inconsistencies on legacy Make and Break Material Attributes graph nodes.
+
+ * Using these together with the "Get" and “Set†Materia lAttributes nodes should now be more forgiving.
+
+* Bugfix: Fixed a regression in HLOD shadow casting performance.
+
+* Bugfix: Fixed inconsistent results with the "Investigate Texture" commands.
+
+* Bugfix: Fixed possible incorrect results when listing textures used by Material Instances.
+
+* Bugfix: Fixed an issue where Material Reroute nodes did not bind properly to Texture Object Parameters.
+
+##### Mobile Rendering
+
+* New: Mobile Skylights no longer render the scene on the device to determine the sky's color. Mobile skylight uses values determined via captures performed in the editor. This saves memory and performance on device and enables Skylight contribution on devices that do not support fp16 render targets.
+
+* New: Added "r.Mobile.TonemapperFilm" console variable which can be used to enable/disable new filmic tonemapper on Mobile devices, independently from Desktop platforms (disabled by default).
+
+* New: Material AO is now supported for the Mobile Rendering path.
+
+* New: Added better defaults for rendering resolution on iOS devices, to make them more inline with defaults on Android devices.
+
+* Bugfix: Fixed a crash that could occur on some devices when loading materials which use fonts as texture parameters.
+
+* Bugfix: Fixed a crash with Particle Cutouts on mobile devices that don't support hardware instancing (ie. Mali-400 GPU).
+
+* Bugfix: Fixed a crash when enabling shader cache on NVIDIA Shield devices.
+
+* Bugfix: Fixed a crash when previewing feature level ES3.1 with a Material using World Position Offset.
+
+* Bugfix: Fixed a crash with Media Player on iOS devices.
+
+* Bugfix: Fixed an issue with Static Mesh self-shadowing with modulated shadows.
+
+* Bugfix: Fixed several issues that could cause CSM shadowing on mobile devices to flicker.
+
+* Bugfix: Fixed an issue with scene captures on mobile when Mobile HDR is disabled and the scene capture source is Scene Color.
+
+* Bugfix: Fixed an issue with bright dynamic point lights cause bloom rendering artifacts on Android Mali devices.
+
+* Bugfix: Fixed an issue where Landscapes do not render on some Android PowerVR devices.
+
+* Bugfix: Fixed an issue where translucent object appear black on Zenfone5.
+
+* Bugfix: Fixed an redundant blend state change in OpenGL ES2.
+
+* Bugfix: Fixed rendering artifacts with bloom on iPhone7 using Metal.
+
+* Bugfix: Fixed an issue where exposure was more extreme on mobile devices with a new filmic tonemapper enabled.
+
+* Bugfix: Fixed an issue with padded NPOT textures not rendering correctly on iOS.
+
+* Bugfix: Fixed an issue with gamma issues with canvas elements on iOS Metal devices.
+
+* Significantly reduced OpenGL state setup for Slate draw calls on Mobile devices.
+
+* Slate pixel shaders will use half precision, for better UI performance on Mobile devices.
+
+* Mobile targeted projects will have better UI performance settings by default.
+
+##### Optimizations
+
+* New: Added 'r.CompressMeshDistanceFields' console command to rendering project settings, defaults to off to prevent hitches when streaming in levels.
+
+ * When enabled, mesh distance fields are stored zlib compressed in memory until needed for uploading to GPU.
+
+ * 81Mb of backing memory -> 32Mb in GPU Perf Test.
+
+ * Atlas upload time 29ms -> 893ms.
+
+* New: Added a new global distance field (4x 128^3 clipmaps) which caches mostly static primitives (Mobility set to Static or Stationary).
+
+ * The full global distance field inherits from the mostly static cache, so when a Movable primitive is modified, only other movable primitives in the vicinity need to be re-composited into the global distance field.
+
+ * Global distance field update cost with one large rotating object went from 2.5ms -> 0.2ms on 970GTX. Worst case full volume update is mostly the same.
+
+* New: Added LOD Distance Factor to Scene Capture Component, which can be used to make scene captures and planar reflections much cheaper to render if the scene has good LODs setup.
+
+* New: Added the r.LightMaxDrawDistanceScale console command for local light scalability.
+
+* New: Added a rendering project setting to use 8 bit mesh distance fields.
+
+ * This halves their memory requirement but introduces artifacts with large meshes.
+
+* New: Added new async tasks to reduce the cost of the texture streaming update on the game thread.
+
+* New: Added some automatic callbacks whenever dynamic component renderstates are updated in order to also update their texture streaming states.
+
+* Bugfix: Fixed async SSAO not actually running asynchronously when depth drawing mode was DDM_AllOpaque.
+
+* Bugfix: Fixed render queries stalling in Test/Shipping builds due to lack of pooling.
+
+* Ray Traced Distance Field Shadow optimized.
+
+ * From 1.8ms -> 0.8ms in a test scene.
+
+* Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough. This saves 10mb of tile culling buffers.
+
+* GNM RHI Clear UAV uses a compute shader for buffers larger than 1Kb.
+
+* GNM Structured buffers are now placed in GPU memory (was previously in CPU memory).
+
+* DFAO optimizations:
+
+ * Changed the culling algorithm to produce a list of intersecting screen tiles for each object, instead of the other way around. Each tile / object intersection gets its own cone tracing thread group so wavefronts are much smaller and scheduled better.
+
+ * From 3.63ms -> 3.48ms (0.15ms saved).
+
+ * Replaced slow instructions in inner loop with fast approximations (exp2 -> sqr + 1, rcpFast, lengthFast).
+
+ * From 3.25ms -> 3.09ms (0.16ms saved).
+
+ * Moved transform from world to local space out of the inner loop (sample position constructed from local space position + direction).
+
+ * From 3.09ms -> 3.04ms (0.05ms saved).
+
+* Structured buffers for DF object data.
+
+ * Full global distance field clipmap composite 3.0ms -> 2.0ms due to scalarized loads.
+
+* Exposed MaxObjectsPerTile with the 'r.AOMaxObjectsPerCullTile' console command and lowered the default from 512 to 256. This saves 17Mb of object tile culling data structures.
+
+ * This can cause flickering in Ray Traced Distance Field shadows if too many objects fall into one shadowmap culling tile.
+
+* Scene color resolves are restricted to the views. This fixes inefficiency with adaptive pixel density where the views don't match the view family size.
+
+* When using a full prepass, the base pass no longer writes depth.
+
+ * Saves 0.3ms of Scene Depth Resolve on 970 GTX with MSAA. Also allows masked materials to get EarlyZ in the base pass.
+
+ * Fixed primitives with Use As Occluder set to false being excluded from a full depth pass in static draw lists.
+
+ * Added the "r.BasePassWriteDepthEvenWithFullPrepass" console command for verifying that the base pass depths match the prepass depths.
+
+* Changing movable skylight properties no longer affects static draw lists.
+
+* Mesh distance field generation uses Embree, which provides a 2.5x speed increase.
+
+* Cleared light attenuation for local lights with a quad covering their screen extents.
+
+ * Clearing the entire light attenuation buffer costs 0.1ms. This optimization lowers the minimum cost of a shadow casting light from 0.15ms to 0.03ms.
+
+* Flushed deferred deletes when reallocating distance field atlas to reduce peak memory, at the cost of a hitch on first frame.
+
+* Disabled point / spot lights with Max Draw Distance on Low PC.
+
+* Made use of Metal's "Deferred Store Actions" where available to avoid incorrect “Store†actions introduced when restarting passes to switch encoder types or when using the Metal RHI debugging tools.
+
+* Stopped the Shader Cache recording all the RHI resources unless it is running on OpenGL. This significantly reduces the CPU overhead of enabling the Shader Cache.
+
+* HLOD texture force loaded through the "r.Streaming.HLODStrategy" console command will now load visible mips first.
+
+* The command "BuildMaterialTextureStreamingData" can now be used with "all" as argument to force a rebuild.
+
+* Reduced the texture streaming overhead for components by keeping track of the state within the streamer.
+
+##### Postprocessing
+
+* New: Using Custom Depth to write to the stencil buffer now has the ability to use single-channel bitmasks that ignore depth. This makes it possible to detect overlaps between stencil objects.
+
+* Bugfix: Fixed log value conversion in tonemapping causing true blacks to be lost.
+
+* Motion blur no longer gets dark at the edges of the screen.
+
+#### UI
+
+* New: Added API to programmatically change the Virtual Cursors UMG Widget on the Viewport Client.
+
+* Bugfix: Fixed sRGB conversion issues in Retainer Box when used with a material.
+
+* Multiline editable text boxes can now be marked as read-only.
+
+* Selecting multiple text widgets will now correctly set text when the text field is edited.
+
+* Widget Components will now correctly determine between hover and clicked states when using or simulating touch.
+
+##### Slate
+
+* New: Added Enum Has All Flags and Enum Has Any Flags, templated functions to make it easier to check for the existence of a flag on enum classes.
+
+* New: There is now a console variable option, Slate.VerifyHitTestVisibility (off by default), which enables additional visibility checks for widgets. Normally this is not necessary, but if you are changing the visibility of widgets during a frame, and several hit tests need to be performed that frame, there is a chance that a button could be clicked twice in one frame. Enabling this mode will make all hit testing more expensive, so for now it is off by default, but available for licensees that need the extra testing.
+
+* New: Added the ability to invert alpha when drawing slate textures. This will be used in the future for rendering render targets for the scene which have inverted alpha.
+
+* Bugfix: Fixed a crash during editable text widget destruction while a context menu was still open.
+
+* Bugfix: Fixed a crash when deleting a streamed font.
+
+* Bugfix: Fixed lots of outline data being added to the font cache due to wrongly hashing outline material and color data.
+
+* Bugfix: Tooltips will no longer show if the cursor is not directly over a Slate window. Fixed a case where the tooltip would not disappear when the cursor is moved over another application's window that was placed on top of a Slate window.
+
+* Bugfix: Fixed an issue where the cursor would sometimes not appear when its visibility was changed. This was rooted in how the OS requested cursor changes, WM_SETCURSOR on Windows only asks for new cursors when the mouse moves, but often cursors change just because mouse capture changes. So now the path has been centralized in Slate Tick to only handle the cursor changes in one place, and several places that need to refresh the cursor state, now set a flag to handle it on next tick.
+
+* Bugfix: Fixed a bug with ZOrder being discarded on the SOverlay slot.
+
+* Bugfix: Fixed Web Browser Viewport to properly scale.
+
+* Bugfix: SButton now correctly releases mouse capture even if it becomes disabled while pressed, but before 'click' has been fired.
+
+* Improved text rendering when the last resort font is missing.
+
+ * The last resort font is no longer included in shipping builds, so this change makes some improvements to text rendering when it is missing.
+
+ * The legacy font cache no longer tries to use the last resort font if it is not available (preventing warnings).
+
+ * The Slate font renderer no longer tries to use the last resort font if it is not available.
+
+ * Text shaping will use the last resort character if none of the available fonts can render a given character (likely because the last resort font is missing).
+
+ * HarfBuzz shaped text now uses the fallback character correctly.
+
+* Kerning-only text shaping no longer draws characters to get their metrics.
+
+* Text selection height is now the maximum of the line height and text height to account for negative line-height scaling.
+
+* Added a setting to control whether we should use the font metrics or the bounding box when laying out a font.
+
+ * Not all fonts have accurate metrics data, so using the bounding box can produce much better results for certain fonts.
+
+* Made slate loading widget / movie playback more thread safe by eliminating Slate application or the main window from being ticked directly on another thread. Is In Game Thread will also no longer return true when called from the slate loading widget thread.
+
+* Force resolution in standalone if the resolution is larger than primary working area.
+
+* Moved ESlateDrawEffect & ESlateBatchDrawFlag over to be enum class. Found cases where the enum order was being improperly assumed, and so now it will not be possible to just treat an int32 or a bool as the draw effect value.
+
+* Slate Application now maintains separate tracking for each pointer being utilized for drag drop, so now multiple fingers on multiple widgets can now simultaneously be attempting a drag, however once one of them becomes successful, we clear all state of all other tracking since only one Drag Drop operation is possible at a time.
+
+* Fold Tick is now removed from the codebase. We have not supported the other (non-folded) code path for awhile, so there was no point in maintaining the switch.
+
+* The Checkbox widget no longer just passes visibility down to the internal widgets it creates, that prevents future changes to affect it if it starts collapsed.
+
+##### UMG
+
+* New: Added Timing Policy option to Widget Component, so widgets can optionally tick in pausable/dilatable game time rather than real time.
+
+* New: Added a material function that exposes all of the current UV sets with nice names instead of indexed coordinates.
+
+* New: Added a method to create Slate Brushes from Paper Sprites the same way we can for materials and textures in blueprints.
+
+* New: Introduced PreConstruct and Native PreConstruct to the base User Widget. Users can now visualize non-binding based changes in the designer by evaluating a very limited amount of the blueprint code. In the event your user widget crashes on load, due to calling something unsafe, you can disable evaluation in the editor preferences under Widget Designer.
+
+* New: Introduced a way to inform widgets of more information about the designer. There is now a Designer Changed event sent to all design time widgets letting them know things like the current screen size and DPI scale.
+
+* Bugfix: Fixed a crash if UI blurs are rotated.
+
+* Bugfix: Outline color on text elements is now inherited properly.
+
+* Bugfix: Fixed a bug that prevented Get Owning Player in Widget from returning.
+
+* Bugfix: Additional fixes to the way we migrate changes from the preview to the serialized version of the widget tree in the widget editor. This fixes several issues with edit-inline Objects on Widgets.
+
+* Exposed a normalized (0-1) uv coordinate set and scaled pixel size for Box and Border brushes.
+
+* Widget Interaction Components now ignore Visible(false) Widget Components when tracing.
+
+* Widget animations now finish evaluating before firing an event alerting that the animation finished.
+
+* The Widget Interaction Component now checks if the Widget is enabled before it claims that it is over an interactable or keyboard focusable widget.
+
+* Adding some setters and getters for Redraw Time to the Widget Component.
+
+* Widgets projected into screenspace from the Widget Component should now appear in the correct locations if the player's camera has an aspect ratio lock.
+
+* The Safe Zone widget will now show the correct safe zone amount if you use the safezone command line options, which are now documented in the comment for the Safe Zone class.
+
+* Widget switchers that contain widgets with named slots will now correctly display a widget whose named slot is currently selected.
+
+* Widgets that are copied and pasted will now retain the same name in the widget hierarchy.
+
+#### VR
+
+* New: Added support for getting device depth from Scene Capture Component 2Ds.
+
+* New: Added ability to disable the autoloading splash screen, which would prevent the manual "hide splash screen" node from working properly.
+
+* New: Added Gear VR controller support.
+
+* New: Added support for OES_EGL_image_external to the mobile GL renderer.
+
+* Bugfix: Negative Stereo Layer priorities are now handled correctly on Steam VR.
+
+* Bugfix: Fixed threading issue with motion controller tracking that caused controller motion pops. This problem manifested intermittently.
+
+* Bugfix: Fixed crash on Oculus Rift when attempting to enter stereo mode while the HMD's 'on head' proximity sensor is not triggered.
+
+* Bugfix: Fixed low framerate when Oculus Rift 'on head' proximity sensor is not triggered and you exit stereo rendering.
+
+* The GearVR HMD plugin is now only enabled on Windows if the Oculus service is already running.
+
+* VR console commands have been rewritten to support autocompletion and inline help strings.
+
+ * The VR console commands have also be renamed and now begin with vr.*.
+
+ * The renamed VR commands have backwards compatible aliases, but will print a warning notifying the user about the deprecated functionality.
+
+* GoogleVR HMD now reacts to changes in the r.ScreenPercentage console command.
+
+* When the -hmd command line option is used to override the selected HMD, HMD plugins that are loaded early will now be unloaded during PreInit if not selected.
+
+* Integrated OpenGL support for SteamVR.
+
+* The left eye is used when selecting LODs to avoid selecting two separate LOD levels when rendering in stereo.
+
+* PSVR controller tracking limit management system.
+
+ * PSVR can track the HMD and two controllers, but many more devices can be connected. With this system you can manage which controllers are tracked to stay under the limit.
+
+* Additional WorldScale refactoring for all platforms.
+
+* GoogleVR plugin updated to version 1.3
+
+* Fixed Android manifest for Daydream and Cardboard.
+
+* Updated GoogleVR plugin to version 1.3.
+
+* GoogleVR SDK updated to 1.40.0.
+
+* GoogleVR Mode default changed to Daydream and Cardboard.
+
+## Programming Release Notes
+
+#### AI
+
+* New: Added a new mode to composite EQS generator (UEnvQueryGenerator_Composite), which allows the use of different types of items by each child generator. This can be enabled by advanced properties: bAllowDifferentItemTypes and ForcedItemType. ForcedItemType is the final type returned by the generator, and is used for allocating memory and executing tests. This mode is potentially unsafe and you will have to ensure proper memory layout (matching with ForcedItemType) of all item types used by child generators - usually subsets of ForcedItemType. Keep in mind that allocated memory block is zeroed before use.
+
+##### Debugging Tools
+
+* Bugfix: Fixed VisualLog macros for recording segments with user defined thickness.
+
+* Bugfix: Fixed compilation errors in VisualLog macros for recording custom meshes.
+
+##### Navigation
+
+* Bugfix: Fixed memory corruption in generic A* solver: FGraphAStar.
+
+* Bugfix: Fixed unique Id duplicates in custom navigation links.
+
+* Bugfix: Fixed FRecastTileGenerator::Modifiers being erroneously counted twice when stating memory.
+
+* NavModifierVolume has been marked as ENGINE_API and can now be freely used in game code.
+
+* Made FNavAgentProperties::GetExtent return INVALID_NAVEXTENT if a prop's AgentRadius is not set. This results in properly using FNavAgentProperties::DefaultProperties in navigation queries when no query extent override is provided.
+
+#### Animation
+
+* New: Added more exports to AnimationAsset, AnimSequenceBase, and Skeleton classes.
+
+##### Animation Blueprint
+
+* Bugfix: Fixed nodes only getting CopyNodeDataToPreviewNode called when pin defaults were changed (not any property change).
+
+##### Skeletal Mesh
+
+* New: Added exports to FFbxImporter, FDynamicSkelMeshObjectDataCPUSkin, and FSkeletalMeshObjectCPUSkin, for extensibility.
+
+#### Audio
+
+* New: Added new cvars to help with optimization (only applies to the new Audio Mixer).
+
+ * au.DisableReverbSubmix, au.DisableEQSubmix, ​au.DisableParallelSourceProcessing, au.SetAudioChannelCount
+
+* Bugfix: Fixed MIDI Device plugin public headers not being able to be included from an external module.
+
+* Optimized internals of new Audio Mixer. Gains approach 15% savings from before:
+
+ * Turned a float divide into a multiply, which occurred at least 32k times per audio update.
+
+ * Avoided thousands of Array.Add() calls during processing, which on shipping still does checks to see if the allocator has to grow, and updates ArrayCount.
+
+ * Removed pointer indirection and successive TArray Add()s in GetChannelMap().
+
+ * Removed function call overhead to updating channel map.
+
+ * Simplified FSourceParam::Update() to reduce branching and have one return site.
+
+ * Added alternative to GetChannelMap() called UpdateChannelMap() that avoids copying out values to an array. The values can then be fetched from the channel data directly.
+
+ * Refactored internal data to use array of structs rather than struct of arrays for better cache coherency when processing channels one at a time.
+
+#### Blueprints
+
+* New: Added an error when declaring a Blueprint Implementable Event with an enum param that is not plain or a byte type (Blueprints only support byte-sized enums).
+
+#### Core
+
+* New: There are now several serialization options available to specify what the cooked Asset Registry includes. Look for the serialize flags inside the [AssetRegistry] section of BaseEngine.ini.
+
+* New: An experimental bUseAssetRegistryForIteration option has been added to CookerSettings. This improves the performance of iterative cooking by loading the cooked Asset Registry directly, but it may still have issues with some changes to source files being missed.
+
+* New: Added a cvar to control the pak precacher throttle.
+
+* New: Added new GenericPlatformFile function, GetTimeStampLocal, which returns file time stamp in local time instead of UTC.
+
+* New: Added a check against assembling the reference token stream while streaming without locking the garbage collector.
+
+* New: Added a static_assert to prevent the use of TMap keys which do not implement GetTypeHash, as this causes runtime crashes when they are manipulated by a UMapProperty.
+
+* New: Added a bForceDebugUnrealHeaderTool option to BuildConfiguration.xml which forces the Debug version of UnrealHeaderTool to be run instead of Development.
+
+* New: Added a static_assert to ensure that TInlineSetAllocator is instantiated with a power-of-two hash size, as this is a requirement for TSet and TMap.
+
+* New: Added ICppStructOps::IsAbstract() for testing if a native type is abstract via the property system.
+
+* Bugfix: Fixed TInlineValue not calling virtual destructors.
+
+* Bugfix: Fixed several issues with editor-only objects not being correctly stripped when cooking.
+
+* Bugfix: Fixed several issues with Config files loaded from Plugins. They now correctly handle diffing game-specific changes. Engine plugins config files should be named BasePluginname.ini, and game plugins should be DefaultPluginname.ini.
+
+* Bugfix: Fixed many bugs with the event driven loader and allowed it to work at boot time.
+
+* Bugfix: Fixed a bug with nativized Blueprints that was introduced with the boot time EDL changes.
+
+* Bugfix: Fixed race in audio streaming.
+
+* Bugfix: Fixed bug which would cause a fatal error when cooking subobjects that were pending kill.
+
+* Bugfix: Fixed a bug with EDL at boot time which caused a fatal error with unfired imports.
+
+* Bugfix: Fixed a bug with RF_PendingKill subobjects and the new loader.
+
+* Bugfix: Fixed an obscure problem with stats in commandlets that use async tasks.
+
+* Bugfix: Fixed rare ensure cooking for the EDL.
+
+* Bugfix: Fixed boot time EDL causing some issues even when it wasn't being used.
+
+* Bugfix: Fixed .pak precacher shutdown.
+
+* Bugfix: Fixed memory leak in .pak precacher.
+
+* Bugfix: Fixed bad merge of priority change in the EDL.
+
+* Bugfix: Fixed race that resulted in a memory leak when reading compressed paks.
+
+* Bugfix: Fixed a weird recursive situation where StaticLoadObject could return an object that has not finished loading. Also produces a fatal error if this happens. EDL only.
+
+* Bugfix: Fixed batched render fences when BeginDestroy calls FlushRenderingCommands.
+
+* Bugfix: Fixed loading a package that is already loaded.
+
+* Bugfix: Fixed crash in signature checks when mounting pak files.
+
+* Bugfix: Fixed a change to NotifyPrimitiveDetached so that it works in the editor.
+
+* Bugfix: Fixed hash table lock optimization.
+
+* Bugfix: Fixed a crash relating to FGenericAsyncReadFileHandle when not using the EDL.
+
+* Bugfix: Fixed comments in GenericPlatform.h.
+
+* Bugfix: Fixed errors raised during code generation when a multiply-inherited base class happens to have the same name as a UObject after its prefix is stripped.
+
+* Bugfix: Fixed a compile error when calling TArray::HeapSort on an array of pointers.
+
+* Bugfix: Fixed a crash when calling UCookOnTheFlyServer::FFilePlatformRequest::ToString().
+
+* Bugfix: Fixed compile errors raised when #pragma is used inside USTRUCTs.
+
+* Bugfix: Fixed compile errors caused by whitespace existing before a UCLASS() macro.
+
+* Bugfix: Fixed TStructOpsTypeTraits::WithCopy giving different results when the trait is specialized without a WithCopy value from when it isn't specialized at all.
+
+* Bugfix: Fixed a compile error when serializing bools to an archive in editor builds, where the archive type overrides other serialization operators.
+
+* Bugfix: Fixed FWorldTileInfo::Read() to copy the correct licensee version number from the file summary into the archive.
+
+* Bugfix: Fixed a regression in FObjectAndNameAsStringProxyArchive to re-allow serialization of TWeakObjectPtrs.
+
+* Bugfix: Fixed some include-what-you-use issues in the engine and plugins.
+
+* Bugfix: Fixed UPROPERTYs being skipped when there are redundant semi-colons between the properties.
+
+* Asset Registry memory and performance have been significantly improved in both Editor and cooked games for large projects.
+
+* Allowed UnrealPak to do a better job with EDL pak files when the order provided is old or from the cooker.
+
+* Several minor tweaks to low level async IO stuff.
+
+* Stored a copy of the callback in async read request so that we do not need to worry about lifetime so we can capture variables as needed.
+
+* Cancelling async loading with the EDL loader now prints a warning and does a flush instead.
+
+* Suppressed a few EDL cook warnings.
+
+* Tweaked the EDL for to all platforms.
+
+* Platform load time performance tweaks.
+
+* Abstracted the IO tracker and handle manager for other platforms and applied it to all platforms.
+
+* Protected against UDeviceProfileManager::Get() recursion and demoted a related fatal error to a log statement.
+
+* Removed old code relating to FAsyncArchive, FAsyncIOSubsystemBase and package level compression. The editor now uses the lowest levels on the new async IO scheme.
+
+* Increased estimate of summary size.
+
+* Avoided adding a linker annotation if it actually has not changed. This improves ConditionalBeginDestroy performance.
+
+* Avoided a redundant removal of PrimitiveComponent from the streaming managers during ConditionalBeginDestroy.
+
+* Optimized UObject hash tables for speed and space.
+
+* Put the special boot order things into baseengine.ini so that licensees and games can add to it.
+
+* Renamed HasBeenAlreadyMadeSharable to DoesSharedInstanceExist.
+
+* PostLoadSubobjects is now called on all objects regardless of whether they have a CDO as outer or not.
+
+* When Rename is used to change the Outer without specifying a new name, the existing name is maintained whenever possible.
+
+* ForwardVector, RightVector, and single float FVector constructors are now recognized by Unreal Header Tool as default values for an FVector parameter.
+
+* ScriptMacros.h no longers needs to be included in header files that generate a header.
+
+* Improved the readability of some of the ReferenceChainSearch code.
+
+* Automatically included ObjectMacros.h in generated headers to prevent compile errors.
+
+* Made FPaths::Combine() variadic so that it can take arbitrary numbers of arguments.
+
+* Improved the readability of the verbosity of log categories in the debugger.
+
+* Updated TArray::Sort comments to clarify what happens when sorting an array of pointers.
+
+* Clarified the assertion message you get when inserting or removing a TArray element by reference which comes from the array.
+
+* Clarified the comments for TArray::FindLastByPredicate and FString::FindLastCharByPredicate.
+
+* Removed UnrealCodeAnalyzer.
+
+* Raised an error in UnrealHeaderTool when a header containing UCLASSes, USTRUCTs etc. does not include its .generated.h file.
+
+* Removed TBoolConstant template.
+
+* Changed TAssetPtr to allow it to be constructed from nullptr without a full definition of T.
+
+* Removed the WITH_HOT_RELOAD_CTORS macro.
+
+* Removed the UseVTableConstructors .ini option.
+
+* Removed generated FName variables for UFUNCTIONs.
+
+* Removed the generation of obsolete .java and .proto files used for replication.
+
+* Replaced the set of bools used to FBlueprintCompileReinstancer with a new EBlueprintCompileReinstancerFlags enum.
+
+* Improved hot reload logging messages to make it clear that a compile attempt on a module does not guarantee a reload of that module.
+
+* Made UnrealHeaderTool report an error if a UFUNCTION in a derived class has the same name but a different signature from one in a base class.
+
+#### Editor and Tools
+
+* New: Added spinner options to VectorInputBox.
+
+* New: Added a None option to the FKey customization, unless the FKey property had NoClear on it.
+
+* Bugfix: Implemented a fix to ensure FVirtualTrackArea::HitTestSection checks the row of the section.
+
+* Bugfix: Fixed an issue where ISequenceAudioRecorder was inaccessible to FAudioRecorder.
+
+* Project and plugin templates now use "include what you use" style by default.
+
+* When using BuildGraph, the cached list of completed nodes is now cleared by default, making the -ClearHistory argument redundant. Use the -Resume argument to continue an interrupted build using the current artifacts.
+
+* BuildGraph now outputs an error if any build products from previous steps are tampered with during the execution of a subsequent step.
+
+* The editor now offers to download and install Visual Studio 2017 if an existing version of Visual Studio is not found.
+
+* The AutomationTool -CookDir argument no longer accepts multiple parameters separated by '+' characters, since '+' is valid in directory names. Multiple -CookDir arguments are supported instead.
+
+* Game mods can now be denoted by setting the bIsMod field to true inside the .uplugin descriptor. Mods will be shown in a separate category in the plugin browser, and will be shown separately in generated project files. Installed editor builds can build and clean mods without modifying build products for the base game.
+
+##### Content Browser
+
+* Bugfix: Fixed link error when FAssetData::PrintAssetData() is used in a project.
+
+##### Sequencer
+
+* Unified global and object-bound pre animated state, and added InitializeObjectForAnimation method to state producers.
+
+* Opened the API for MovieSceneAudio-related classes along with some minor functionality additions.
+
+* Exported MovieSceneTrackEditor to allow custom tracks to be created that derive from existing tracks.
+
+#### Gameplay Framework
+
+* New: Added support for FScopedMovementUpdate to be able to queue up overlaps that do not require reflexive bGenerateOverlapEvents. This requires custom code to be able to process these overlaps.
+
+ * This allows custom inspection or processing of overlaps within a scoped move, without enabling the more expensive overlap flag. For instance you could have a fast projectile with an overlap response to a character mesh and get those overlaps from the trace without requiring expensive overlap processing when the mesh moves.
+
+ * Overlap events from the move will still only trigger from UpdateOverlaps() if bGenerateOverlapEvents is enabled on both components, as before.
+
+ * Made some data in FScopedMovementUpdate protected rather than private so it can easily be subclassed, and exposed a new helper ​SetWorldLocationAndRotation() for committing the move.
+
+* Bugfix: Fixed a crash when manipulating audio component properties from an Actor's constructor during async loading.
+
+* Bugfix: Fixed CharacterMovementComponent updates with very high delta time on server when initially joining. Made sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
+
+* CheatManager functions to Damage/Destroy targets are now easier to override in game-specific subclasses.
+
+* InputComponent now has BindAction function that allows binding functions with additional parameters.
+
+* RawInput configuration structures can now be manipulated by other modules.
+
+* AActor::GetComponents() with generic type is now optimized to not force an allocation when the component count is large.
+
+ * Previously it incorrectly assumed the output array needed space for the entire contents of OwnedComponents. If OwnedComponents.Num() > the array reserve size, this forced an allocation, even if few or no components of the requested type were found.
+
+ * It is still recommended to use TInlineComponent array or an array using TInlineAllocator<> when using this function.
+
+* Removed allocations during creation in ​AAIController::PostInitializeComponents() (in non-shipping builds).
+
+* Optimized HasActiveCameraComponent() and ​HasActivePawnControlCameraComponent() to avoid filling an array while searching for a certain component, which could have caused an allocation.
+
+* Optimized MoveComponent() collision queries to avoid processing PhysX touches when bGenerateOverlapEvents is off.
+
+ * Added support for bIgnoreTouches to FCollisionQueryParams. This allows GeomSweepMulti to filter out touches/overlaps much earlier.
+
+* MovementComponent does not ignore initial blocking overlaps when moving away from the impact normal from SafeMoveUpdatedComponent(). This fixes various cases where characters could be pushed through moving objects because they were moving away from the overlapping object, but not fast enough.
+
+ * It now always uses the hit result to depenetrate from the impact as much as possible, and then retries the move.
+
+ * Hit events are not triggered for the first test for depenetration.
+
+* CharacterMovement AdjustFloorHeight() is now allowed to adjust using the line trace if the sweep was in penetration. It also forces another next floor check so it will check after it adjusts the height or depenetrates, relevant when bAlwaysCheckFloor is off.
+
+* Optimized CharacterMovement tick to not extract transform values twice when they would not change in a small block of code.
+
+* Call TickCharacterPose() and clear root motion before abandoning tick in ​UCharacterMovementComponent::PerformMovement() when movement mode is None. This prevents root motion building up until the next valid movement mode.
+
+* Applied a performance tweak to ​ApplyRadialDamageWithFalloff().
+
+ * Do not rebuild FRadialDamageEvent each loop over hit actors.
+
+ * Added stats for ​BreakHitResult()/MakeHitResult() under "stat game".
+
+* Optimized attachment to check welding option before expensive casts and body instance fetching.
+
+#### Localization
+
+* Bugfix: Fixed a bug where passing an empty FText to ChangeKey() would keep the previous FText value that had been passed in.
+
+#### Online
+
+* New: Added the bShowSkipButton parameter to IOnlineExternalUI::ShowLoginUI, which will display the "skip" button on relevant platforms.
+
+#### Other
+
+* New: Added missing initialization for SWindow::bIsMirrorWindow.
+
+* Bugfix: Added missing module dependencies.
+
+* Bugfix: Fixed a type casting issue.
+
+#### Physics
+
+* New: Added virtual keyword to DestructibleComponent ApplyDamage and ApplyDamageRadius.
+
+* New: Added Physx simulation shader override (see GSimulationFilterShader).
+
+* Bugfix: Fixed a debug rendering issue by recreating physics when changing mobility of components.
+
+* Bugfix: Fixed compile error when PHYSX_MEMORY_STATS=1.
+
+* Bugfix: Fixed performance regression caused by using collision aggregates for Instanced Static Mesh Component.
+
+* Bugfix: Fixed a crash in AABB Manager when origin shift is used.
+
+* Made UDestructibleComponent::SpawnFractureEffectsFromDamageEvent virtual.
+
+* Exported URadialForceComponent class for inheritance.
+
+* Allowed the editor to compile when bRuntimePhysicsCooking is disabled (cooking is still allowed in WITH_EDITOR builds even with it disabled).
+
+* EndPhysics tick will no longer be scheduled if QueryOnly is used on a ragdoll.
+
+* Removed the unsupported option of HideBone with DisableCollision when calling HideBone. This was not actually supported and did nothing so shouldn't break any behavior, just don't call the function.
+
+* Exposed PhysX enhanced determinism mode using the compiler flag PHYSX_ENABLE_ENHANCED_DETERMINISM. This allows local subsets of the PhysX simulation to behave deterministically independent of what is going on elsewhere in the Physics world.
+
+#### Platforms
+
+* Bugfix: Fixed a crash bug in cases where we received a duplicate user login/logout notification from the system software.
+
+* Bugfix: Fixed Codelite project having duplicated settings.
+
+* Moved some C++ defines out of the build.cs file into a C++ header.
+
+* Moved controller connect/disconnect handling to the main thread to fix issues with thread safety for callbacks.
+
+##### Android
+
+* New: Added functionality to use the visual studio mobile projects for debugging. To generate them run "generateprojectfiles.bat -vsdebugandroid" from a command prompt. After you have packaged your game for Development and put it on the device, you can set this new project as the start up project and run/debug the project in Visual Studio.
+
+* New: Support for Android runtime permissions added. Certain permissions have been removed or put under condition to check for support when the target sdk is greater than or equal to 23.
+
+##### HTML5
+
+* New: Added new webassembly (wasm) toolchain - SIMD and multi-threading are not yet supported (these are slated to be in for wasm2).
+
+ * These will be automatically turned off when building with wasm (as opposed to asm.js).
+
+* Removed HTML5 code from the Engine's SaveGameSystem.h and placed it in HTML5Platform.cpp.
+
+* Cleaned up HTML5PlatformFile.cpp and made it match as close as possible to linux's version.
+
+* Created HTML5's own PlatformFeature & SaveGameSystem files, and updated HTML5PlatformMisc to make use of the the new HTML5 SaveGame code.
+
+##### Linux
+
+* New: Added FreeBSD memory information functions to facilitate out-of-tree UE4 FreeBSD port.
+
+* New: Added a new cross-toolchain (version 9, includes clang 4.0) when targeting Linux on Windows.
+
+* New: Added some support for building on Debian Sid or Stretch.
+
+* New: Added clang to Fedora dependencies.
+
+* New: Added ability to compile Linux servers for 32-bit x86 architecture.
+
+* New: Added files generated for KDevelop to .gitignore.
+
+* Bugfix: Fixed more third party libraries to use libc++ instead of libstdc++.
+
+* Bugfix: Fixed memory leaks when symbolicating an address in Linux callstacks (during crash reporting and memory profiling). Makes runs with the memory profiler much faster.
+
+* Bugfix: Fixed rebuilding of VHACD (a third party library) on a case sensitive filesystem.
+
+* Bugfix: Fixed CodeLite projects to now use proper Debug binaries for debug configurations.
+
+* Switched Linux file abstraction to use new managed filehandles. Shared by all platforms with low limit of open files.
+
+* Whitelisted SteamVR plugin for Linux so SteamVR Blueprint functions are always available, even if stubbed.
+
+* Made source code accessor aware of clang 3.9 and 4.0.
+
+* Setup will now install the latest clang on Arch instead of clang35.
+
+##### Mac
+
+* Fixed address sanitizer support in MacToolChain (Apple changed the name of the env variable Xcode uses to enable it) and added support for thread sanitizer.
+
+* Fixed a problem where the glslang library was not enabled on Mac, preventing building an Android project with Vulkan from Mac.
+
+* Made Binned2 malloc work on Mac.
+
+#### Programming
+
+* New: When compiling a module written in include-what-you-use style, source files which are in the adaptive non-unity working set are now built with precompiled headers disabled, to expose errors with missing headers. Set bAdaptiveUnityDisablesPCH to false in BuildConfiguration.xml to disable this behavior.
+
+* New: Added initial support for async creation of pipeline state objects, enable using r.AsyncPipelineCompile.
+
+* Module .build.cs files, which depend on the contents of external files, can now add those paths to the ExternalDependencies list. Modifications to those files will trigger the the UBT makefile to be invalidated.
+
+* Plugin config files are now included in generated project files.
+
+* UnrealBuildTool will no longer attempt to use SN-DBS for build distribution if the service is disabled.
+
+* UnrealBuildTool now correctly supports compiling modular targets which do not use the shared engine build environment.
+
+* C# programs will now be included in generated project files automatically if a blank file called UE4CSharp.prog is found in the same directory.
+
+* The engine will now warn when trying to load a plugin with a mismatched "EngineVersion" setting.
+
+* Deprecated shared pointer typedef from ImageWrapper and removed usages.
+
+* Removed boilerplate header from ImageWrapper.
+
+* Removed monolithic boilerplate header from NetworkFileSystem.
+
+* Removed boilerplate header from LauncherCheck.
+
+* LauncherServices: Removed boilerplate header from LauncherServices.
+
+* Completed a modernization pass of Automation.
+
+#### Rendering
+
+* New: Added thickness option to debug DrawWireDiamond function.
+
+* New: Added a check to see if there are duplicated shader type names.
+
+* Bugfix: Fixed obscure check with flushing RHI resources.
+
+* Bugfix: Fixed hazard with SetMaterialUsage from a thread.
+
+* Bugfix: Fixed Windows handling of -sm4 and -sm5 so it can be used with -vulkan and -opengl.
+
+* Bugfix: Fixed selection of swapchain format for Vulkan on some Linux drivers.
+
+* Bugfix: Fixed an issue on Vulkan when copying into a cubemap face.
+
+* Bugfix: Fixed a bug calculating vertex declaration hashes on OpenGL.
+
+* Moved FPositionVertexBuffer & FStaticMeshVertexDataInterface declarations into their own headers, moved FStaticMeshVertexBuffer implementation into its own source file.
+
+* Updated Vulkan distributables and glslang to SDK 1.0.39.1.
+
+* Vulkan shaders now build using glslang 1.0.42.2 and includes those headers for redistribution.
+
+* Prefer D32_S8 on Vulkan instead of D24_S8 for the depth buffer.
+
+* Removed the temporary functions RHIClearColorTexture, RHIClearDepthStencilTexture and RHIClearColorTextures from each RHI.
+
+* Separated depth/stencil load/store actions.
+
+* Use the latest SDK for Vulkan, whether the one we distribute in ThirdParty or an installed version.
+
+* Implemented SetStencilRef() and SetBlendFactor() on RHIs which were missing it.
+
+#### UI
+
+##### Slate
+
+* Updated Slate to allocate widgets using MakeShared.
+
+ * This saves one allocation per-widget.
+
+* Moved SVirtualWindow into Slate module from UMG.
+
+#### VR
+
+* New: Added an initial base implementation of IHeadMountedDisplay, FHeadMountedDisplayBase, that can be extended by HMD implementations instead of extending IHeadMountedDisplay directly. This base class provides default and or common implementations for parts of the IHeadMountedDisplay interface. Future releases may add more common functionality to this class, reducing the amount of work required to add support for new HMD platforms even further.
+
+* StereoLayers now have a default emulated implementation, making them supported on most VR platforms that did not already support them. HMD implementations that extend FHeadMountedDisplayBase will automatically inherit the functionality unless explicitly overridden.
+
+* Common code found in various HMD plugins handling management of StereoLayers has been extracted into a template base class, TStereoLayerManager, that provides a thread-safe way to manage a list of registered stereo layers.
+
+* The old Morpheus StereoLayers implementation has been removed in favor of the common stereo layers implementation provided by the HMD base class.
+
+## Upgrade Notes
+
+#### C++ API Changes
+
+* As part of the Asset Manager changes, Streamable Manager has been improved to support the concept of Streamable Handles. When requesting an async load, it now returns a shared pointer handle that will keep the requested object loaded as long as it exists. These handles can also be polled or waited on.
+
+ * Synchronous Load and Simple Async Load on Streamable Manager have been deprecated in favor of the new Streamable Handle system. Both of those functions would keep assets loaded until explicitly unloaded, which in practice was not what most people wanted.
+
+* The Class/Property/Function redirect system has been rewritten to be faster and more flexible. Ini redirects such as "+ActiveClassRedirects" defined in [/Script/Engine.Engine] will still work, but the new system is used by putting redirects like “+ClassRedirects†in the [CoreRedirects] section of Engine.ini.
+
+ * All engine redirects prior to 4.10 have been moved to CoreRedirects.cpp, newer redirects are now in the new format in BaseEngine.ini.
+
+ * A single Property/Function redirect definition will now be applied for both blueprints and serialization, and redirects can now be defined with wildcard matching syntax to simplify large refactors.
+
+ * Object and Package redirects can now be used to allow limited redirection of content references without creating an Object Redirector on disk.
+
+ * Enum redirects have been improved and will now fully work with or without the Enum Name being specified.
+
+* Several Enum functions dealing with string conversion have been deprecated, and the names and comments have been cleaned up to make it more clear which are meant to be used at Runtime and which are meant to be used in the Editor/for debugging.
+
+* The console command "r.MSAACount 1" now produces no MSAA or TAA. “r.MSAACount 0†can be used to toggle TAA on for comparisons.
+
+* Cascaded Shadow Map resolution is now controlled by the console command "r.Shadow.MaxCSMResolution" instead of “r.Shadow.MaxResolutionâ€.
+
+* New mobile targeted projects will have better UI performance settings by default.
+
+ * Please enable "Explicit Canvas Child Z Order" option in project Slate Settings, to improve UI batching. Enabling this option may require manual Z Order tweaks in UMG Canvas panels if there Z ordering issues.
+
+* VR console commands have been rewritten to support autocompletion and inline help strings.
+
+ * The VR console commands have also be renamed and now begin with vr.*
+
+ * The renamed VR commands have backwards compatible aliases, but will print a warning notifying the user about the deprecated functionality.
+
+* The Exec method in Head Mounted Display has been removed, as all VR console commands now use Auto Console Command or similar to register console commands.
+
+ * HMD implementations relying on having an Exec method now need to provide their own ways of registering console command handlers.
+
+* Set Visibility and Set Hidden In Game in Scene Component are no longer virtual. Instead override On Visibility Changed or On Hidden In Game Changed to respond to changes to these values.
+
+* The FBox and FBox2D constructors taking an int32 value have been deprecated as the value of that integer was not being used. The Force Init constructor should be used instead.
+
+ * Replace FBox/FBox2D construction of the form FBox(0) with FBox(ForceInit).
+
+* The Unreal Header Tool now outputs an error when an Editor-only struct member is exposed to blueprints. This is necessary because packaged builds will crash if a Make/Break node for that struct is executed in a blueprint.
+
+ * Any Blueprint exposed Editor-only struct members must either be made not Editor-only or no longer exposed to blueprints.
+
+* Post Load Map now provides the loaded World as a parameter to the delegate function. The World will be null if the load failed.
+
+ * All existing functions bound to Post Load Map need to have a World pointer added to their signature.
+
+* Stop saving raw curve data into animations on cook to save memory/disk space.
+
+ * If you are directly accessing Raw Curve Data on an Anim Sequence, this will no longer work in cooked builds. Animation Asset now provides a virtual function, Get Curve Data, to grab a reference to the correct Curve structure.
+
+* Removed boilerplate header from Automation Window.
+
+ * The AutomationWindow.h boilerplate header file has been removed. Please replace all includes of AutomationWindow.h with IAutomationWindowModule.h
+
+* Removed boilerplate header from Automation Controller.
+
+ * The AutomationController.h boilerplate header file has been removed. Instead of AutomationController.h, include the individual interface headers that you actually use. Remove the "Interfaces/" subdirectory from existing interface inclusions.
+
+* Automation Modernization pass
+
+ * The IAutomationWorkerModule.h has been moved to the module's public root directory. Please remove the relative path from your existing include statements.
+
+* Removed boilerplate header from LauncherCheck.
+
+ * The LauncherCheck.h boilerplate header file has been removed. Include ILauncherCheckModule.h instead of LauncherCheck.h. Remove "Interfaces/" subdirectory from existing ILauncherCheckModule.h inclusions.
+
+* Removed boilerplate header from LauncherServices.
+
+ * The LauncherServices.h boilerplate header file has been removed. Instead of including LauncherServices.h, include the ILauncherXXX.h files that you actually use. Remove the "Interfaces/" subdirectory from existing ILauncherXXX.h includes.
+
+* Deprecated shared pointer typedef and removed usages from ImageWrapper.
+
+ * The IImageWrapperPtr typedef has been deprecated. Please use TSharedPtr instead of IImageWrapperPtr.
+
+* Removed boilerplate header from ImageWrapper.
+
+ * The ImageWrapper.h boilerplate header file has been removed. Instead of including ImageWrapper.h, include the actual IImageWrapperXXX.h files that you use. Remove the "Interfaces/" subdirectory from existing IImageWrapperXXX.h includes.
+
+* Removed monolithic boilerplate header from NetworkFileSystem.
+
+ * The NetworkFileServer.h boilerplate header file has been removed. Instead of including NetworkFileServer.h, include the INetworkFileXXX.h headers that you actually use. Remove the "Interfaces/" subdirectory from existing INetworkFileXXX.h includes.
+
+* Changed default contact-gen method to PCM. This is the default in PhysX 3.4.
+
+ * This may have slight implications on jitter and stability, but should be improved overall. The old behavior is still available (set EnablePCM = false in the project settings).
+
+* Removed the temporary functions RHIClearColorTexture, RHIClearDepthStencilTexture, and RHIClearColorTextures from each RHI.
+
+* Removed obsolete SmartCastProperty function.
+
+* Added a static_assert to prevent the use of TMap keys which do not implement GetTypeHash, as this causes runtime crashes when they are manipulated by a UMapProperty.
+
+ * TMap key types must now implement GetTypeHash. Having GetTypeHash be implemented in a base class or being implicitly convertible to a type which is hashable is not sufficient.
+
+* Fixed TStructOpsTypeTraits::WithCopy giving different results when the trait is specialized without a WithCopy value from when it isn't specialized at all.
+
+ * TStructOpsTypeTraitsBase has been deprecated.
+
+* Improved support for TTuple.
+
+ * Tuples have a GetTypeHash function and can be used as a TMap key.
+
+ * Can now be serialized to archives.
+
+ * Can now be compared for equality with operators == and !=.
+
+ * Can now be compared lexicographically with operators <, >, <= and >=.
+
+ * TPair is now an alias for a 2-tuple, which is specialized to have Key and Value fields, but otherwise has the same functionality as all other tuples.
+
+ * Tuple.h is now found in the Core/Public/Templates folder, rather than the Core/Public/Delegates folder.
+
+ * TPairInitializer now converts to TPair, rather than TPair being constructible from TPairInitializer.
+
+* Removed UnrealCodeAnalyzer.
+
+* Added a static_assert to ensure that TInlineSetAllocator is instantiated with a power-of-two hash size, as this is a requirement for TSet and TMap.
+
+ * TInlineSetAllocator will no longer compile if the hash size is not a power-of-two.
+
+* Removed TBoolConstant template.
+
+* Removed the WITH_HOT_RELOAD_CTORS macro.
+
+* Removed the UseVTableConstructors .ini option.
+
+* Removed generated FName variables for UFUNCTIONs.
+
+* Refactored EvaluateBoneTransforms to prevent usage of skeletal mesh component.
+
+ * Deprecated EvaluateBoneTransforms in favor of new ​EvaluateSkeletalControl_AnyThread.
+
+ * Deprecated skeletal mesh component argument to ConvertCSTransformToBoneSpace and ​ConvertBoneSpaceTransformToCS. Now they just take a transform.
+
+* Added a new overload for IOnlineSession::FindFriendSession in the session interface that can retrieve sessions for multiple friends.
+
+ * Sending and accepting invites on dedicated servers on Steam is now supported.
+
+ * The FOnFindFriendSessionCompleteDelegate now returns an array of FOnlineSessionSearchResult objects instead of just one.
+
+* The high level rendering code is now PipelineStateObject aware which will allow us to reduce complexity in the rendering backends of Vulkan, Metal and Dx12 in the future.
+
+ * The loose state setting APIs of the Commandlist have been deprecated, instead the entire pipelinestate has to be set at once.
+
+* Moved controller connect/disconnect handling to the main thread to fix issues with thread safety for callbacks.
+
+#### Animation
+
+* When converting skeletal controls to the newer API, convert EvaluateBoneTransforms to ​EvaluateSkeletalControl_AnyThread. Backwards compatibility will be maintained, however warnings will persist. Any mesh component access should be cached in PreUpdate() as accessing the component is not thread safe.
+
+* If differences in timing between Maya and UE4 are experienced after importing Alembic files, this has been corrected. The fix requires that any problematic assets be reimported.
+
+#### Blueprints
+
+* The ticking behavior of latent actions in components has been changed to match how they behave in actors. When the component ticks, the latent actions will now be processed at the same time, rather than happening later in the frame when latent actions for non-ticking actors and components are processed. This does change behavior, so there is a console variable (t.TickComponentLatentActionsWithTheComponent) that can be used to revert to the older behavior until affected component Blueprints that depended on the old ordering behavior can be fixed up. The cvar should be treated as deprecated, and it will be removed in a future release.
+
+#### Core
+
+* To save on memory and disk space the cooked Asset Registry no longer includes Dependency information by default. If you need this information at runtime, enable bSerializeDependencies in the [AssetRegistry] section of BaseEngine.ini.
+
+* Starting asynchronous loads from within asynchronous loads has always been unsafe, but will now explicitly assert. This can be fixed by not starting asynchronous loads from within PostLoad functions, or deferring your game-specific code for a frame when called from an async callback.
+
+* Callback functions passed into Request Async Load will now execute on the next frame instead of immediately upon completion of an async load. This behavior is to avoid issues with calling async loads recursively, but if your game depends on this behavior you can restore it to call them immediately by setting the cvar s.StreamableDelegateDelayFrames to 0.
+
+* There is a new format for defining class/function/property redirects in ini files, check the [CoreRedirects] section of BaseEngine.ini for examples. The older formats will still work but the new format provides additional features and a simpler syntax so you may want to upgrade.
+
+* Any calls to Smart Cast Property should be replaced with code which explicitly handles the inner property of Array Property.
+
+* Get Type Hash implementations must now be added to types which are used as TMap keys. If your type defines Get Type Hash in a base class or is hashed via an implicit conversion, these should be fixed by implementing their own function and forwarding the call to the appropriate implementation.
+
+* Any use of TStructOpsTypeTraitsBase should be replaced with TStructOpsTypeTraitsBase2, where T is the type that the trait is being specialized for.
+
+* `#include "Delegates/Tuple.h"` should be replaced with `#include "Templates/Tuple.h"`.
+
+* As TPairInitializer is now convertible to TPair, rather than TPair being constructible from TPairInitializer, types which do not correctly implement copy or move semantics by not inhibiting the compiler defaults may cause a bad state when they are inserted into a TMap or TSet. All types used in UE4 containers should correctly define copy or move semantics.
+
+* Any dependence on Unreal Code Analyzer should be removed from projects.
+
+* The explicit usage of TInlineSetAllocator in any TSet and TMap should be updated to ensure that the template arguments provided result in hash sizes which are a power-of-two.
+
+* TBoolConstant should be replaced with TIntegralConstant.
+
+* Any use of WITH_HOT_RELOAD_CTORS should be replaced with the assumption that the value is 1.
+
+* Any use of the Use VTable Constructors .ini option should be replaced with the assumption that the value is true.
+
+* Use of generated FName variables for UFUNCTIONs (e.g. ENGINE_ReceiveTick) should be replaced with a string literal or a custom static FName variable in your own code:
+
+ * For example: static const FName ENGINE_ReceiveTick = TEXT("ReceiveTick");
+
+* If Unreal Header Tool reports an error about a function having a different signature from a base class, it should be fixed to have the same signature, or renamed.
+
+#### Editor and Tools
+
+* Exposed Make Property Combo Box in Property Customization Helpers to allow embedding an enum combo box into Struct Customizations.
+
+* Added Custom Column support to the Asset Picker Config.
+
+* If you use a protected platform, your project settings will start to be saved under MyGame\Config\Platform\PlatformEngine.ini, instead MyGame\Config\DefaultEngine.ini.
+
+#### Platforms
+
+* Made some big Device Profile changes, particularly for the protected platforms. You may need to modify your Device Profiles in similar ways if you are a heavy user of them.
+
+ * Changed the "type" of some DPs from WindowsNoEditor, etc to Windows. It should be a platform, not a random string.
+
+ * With that change, the platform can be used to save out protected platform DP .ini files to subdirectories, maintaining secrecy.
+
+ * When saving DeviceProfiles, you may need to look in a platform subdirectory for the DeviceProfiles.ini file.
+
+ * Added Config/[PlatformName]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs. See the GetConfidentialPlatforms() function in GenericPlatformMisc for more information.
+
+#### Programming
+
+* The TargetRules.ShouldUseSharedBuildEnvironment() function has been deprecated. Targets can now specify the build environment they wish to use by setting BuildEnvironment to TargetBuildEnvironment.Default/Shared/Unique in their constructor instead.
+
+* The constructor for ModuleRules-derived classes in .build.cs files should be updated to take a ReadOnlyTargetRules instance, which should be forwarded to the base class. This class contains the same properties as the previous TargetInfo argument, plus all the target-specific settings previously stored in the global BuildConfiguration and UEBuildConfiguration classes. Compatibility shims for accessing these objects will be removed in a future release. The WITH_FORWARDED_MODULE_RULES_CTOR preprocessor definition is now defined, which allows writing code which is compatible with multiple engine versions.
+
+* The TargetRules.SetupBinaries() callback has been deprecated. Instead of overriding this, targets may override the launch module through the "LaunchModuleName" property in their constructor, and add extra modules to the "ExtraModuleNames" field on the TargetRules object itself.
+
+#### Rendering
+
+* UE4Editor is whitelisted for Aftermath with latest Nvidia drivers. To whitelist other game executables contact Nvidia.
+
+* RHICmdList.Clear() methods are now removed; please use RHICmdList.SetRenderTargetsAndClear() or the DrawClearQuad() utility function from ClearQuad.h.
+
+* The Cross Compiler Tool is now removed from the Engine, it had too many limitations. Use hlslcc.sln or ShaderCompileWorker -directcompile instead.
+
+* PipelineStateCache.h contains the new replacement interface for BoundShaderStateCache.h. Otherwise, during the Geometry rendering passes the previously introduced Draw Render State is used to collect and set the Blend, Raster, and Depth Stencil State. Commit Graphics Pipeline State will set the PSO for geometry rendering passes. Postprocessing passes or passes which use Globalshaders have to fill out a Graphics Pipeline State Initializer and set this instead.
+
+* If configuring via .ini files, use the new variable name "ScaleTexturesByGlobalMipBias" where "ScaleTexturesByGlobalMyBias" was used.
+
+* Mobile: Skylights on mobile projects may need to be recaptured in the editor before packaging.
+
+* Mobile: Please replace r.TonemapperFilm=1 cvar with r.Mobile.TonemapperFilm=1 in case you want to use new filmic tonemapper on Mobile platforms.
+
+#### VR
+
+* PSVR MotionController tracking management system.
+
+ * Blueprint functions added to manage the set of actively motion tracked controllers in MotionTrackedDevice Function Library.
+
+ * You are recommended to disable tracking of all controllers first, and then enable tracking for the controllers you want to have tracked based on user setting, connected controllers, etc. The system keeps a memory of which controllers are set to be tracked even if the controller is disconnected, or not yet connected.
+
+* Experimental preview of PSVR Social Screen support.
+
+ * The new Morpheus plugin project setting Enable Social Screen Separate Mode must be set to true to use this feature. When that is true additional render and output buffers will be allocated for the Social Screen.
+
+ * Blueprint functions for controlling the feature can be found by searching for 'SocialScreen'.
+
+ * Future work will replace this API with a more flexible cross platform one, and pursue optimizations of SocialScreen output.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.JPN.udn
new file mode 100644
index 000000000000..8e1cb1eacff9
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.JPN.udn
@@ -0,0 +1,3906 @@
+INTSourceChangelist:3457153
+Availability:Public
+Title:アンリアル エンジン 4.16 リリース ノート
+Description:Unreal Engine 4.16 リリース ノート
+Crumbs:%ROOT%, Engine
+Parent:Support/Builds
+order:16
+reference-image: image_18.gif
+reference-image: image_28.gif
+reference-image: image_31.gif
+reference-image: image_35.gif
+
+
+
+## 新機能
+
+アンリアル エンジン 4.16 には、**素晴らしいレンダリングとアニメーションの新機能**、**モバイルおよびコンソール プラットフォームの大幅なパフォーマンス改善、幅広いプラットフォーム上でスムーズに実行する美麗な背景や没入感のある体験を一段と容易に作り出すことができる豊富な拡張機能** も加わりました。
+
+魅力的な **Volumetric Fog** 新機能を使って背景の雰囲気を変えてみませんか? この機能を使うと、大規模なシーンであっても、どこでもそれに合わせたライティングと共に、自動的にリアルなフォグやスモーク エフェクトをレンダリングすることができます。
+
+動的な **軽量剛体ボディ** と **ローレベルのクロス シミュレーション** ツールを使ってキャラクターに命を吹き込みましょう!Animation Modifier、スプライン IK ソルバー、更新された Pose Driver などアニメーション システムの多くの改善点を活用すると、動きのフローの制御を高めることができます。
+
+ガーベジ コレクションが **2 倍程度速くなりました**!UI レンダリングのパフォーマンスと UMG ウィジェットの作成速度が大幅に向上し、一段と見栄えの良いインターフェースを作成できるようになりました。**VR Mode**、 アニメーション、シーケンサー、他のツールも更新されており、開発プロセスをさらに合理化します。
+
+アンリアル エンジン 4.16 では、**Nintendo Switch** のすべての機能を含むサポートが開始し、開発にご利用いただくことができます。エピック ゲームズと任天堂の協力により、開発者登録をした方には、対応するアンリアル エンジン 4 のソース コードを無償でご提供します!開始方法については [このページ](http://www.unrealengine.com/en_US/blog/launch-your-game-on-the-nintendo-switch-with-unreal-engine-4-16) をご覧ください。
+
+**DirectX 12 が Xbox One のデフォルト レンダラ** になりました。エンジンのプラットフォーム サポートで、パフォーマンス向上と機能拡張を実現します。さらに、WebAssembly と WebGL 2 を使って、HTML5 ゲームを開発できるようになりました。今後も、UE4 ではこの新たな方向性に対して改善を続けていきます。
+
+モバイル向けには、Android 用バーチャル キーボードがサポートされるようになりました。ランタイム パーミッションがブループリントとコードの両方で公開されています。さらに、モバイル アプリケーション向けに実行ファイルのサイズを減らす大幅な改善を加えました。
+
+今回のリリースには、アンリアル エンジン 4 の何百ものアップデートが含まれており、そのうち **160 の改善点** は GitHub のアンリアル エンジンのデベロッパーのコミュニティから寄せられたものです。アンリアル エンジン 4.16 に貢献をいただいた以下の皆様に謝意を表します (以下、敬称略)。
+
+0lento, Akihiro Kayama (kayama-shift), Alice Robinson (Valkrysa), Altrue, Andreas Rønning (Sunjammer), Andrew Gaubatz (e-agaubatz), Angus Jones (crumblycake), Artem V. Navrotskiy (bozaro), Black Phoenix (PhoenixBlack), Cedric Neukirchen (eXifreXi), Cengiz Terzibas (yaakuro), Chris Varnz (chrisvarns), Christopher P. Yarger (cpyarger), Damian Nowakowski (zompi2), DarkSlot, DeanoC, Derek van Vliet (derekvanvliet), devbm, dodgyville, drelidan7, Gabriel Lima (Gabriel-Lima-O), Gyeonghwan (conquests), Hao Wang (haowang1013), Ilya (ill), Jackblue (JohnsonJackblue), James Horsley (mmdanggg2), Jeff Rous (JeffRous), Jon Watte (jwatte), Jørgen P. Tjernø (jorgenpt), jostster, Kalle Hämäläinen (kallehamalainen), katze7514, Kevin Kuegler (FrostByteGER), KrisRedbeard, looterz, Manmohan Bishnoi (manmohanbishnoi), Marat Radchenko (slonopotamus), Markyroson, Martin Treacy-Schwartz (the1schwartz), Matt Edmonds (cleaver404), Matthew Casey (mdcasey), Matthias (haimat), Matthias Hölzl (hoelzl), Matthias Huerbe (MatzeOGH), Michael Schoell (MichaelSchoell), Michał Siejak (Nadrin), Milan Šťastný (aknarts), Moritz Wundke (moritz-wundke), Mustafa TOP (MSTF), Narendra Umate (ardneran), Nathan Stocks (CleanCut), NaturalMotionTechnology, Nick Verenik (nverenik), Paul Murray (awesomeness872), pfontain, Phil Christensen (Rastaban), PrimalJohnScott, projectgheist, Rafael Ortis (rafortis), Rajko Stojadinovic (rajkosto), Rama (EverNewJoy), rhughesgeomerics, Ricardo Rodrigues (RicardoEPRodrigues), Robert Hagglund (hagglund), Robert Segal (robertfsegal), Ryan Pavlik (rpav), sangpan, Sanjay Nambiar (sanjay-nambiar), Satheesh (ryanjon2040), Sean Campbell (scampVR), Sebastian Axinte (ENiGMA9), Sébastien Rombauts (SRombauts), SiebenCorgie, Stefan Zimecki (stefanzimecki), StefanoProsperi, Stephen Johnson (megasjay), TaeYoung Cho (valval88), Timothee Besset (TTimo), Timothy Hagberg (thagberg), Tom Kneiphof (tomix1024), Tom Ward (tomwardio), TRS-justing, unwitherer, Vladimir (VladimirPobedinskiy), Vladimir Alyamkin (ufna), wyhily2010, Yaroslav Shmelev (SoulSharer), yeonseok-yi
+
+## 主要機能
+
+### 新規:Volumetric Fog
+
+Volumetric Fog を使って背景の雰囲気づくりをしましょう。密度の変化をサポートすることでライトシャフトを漂う埃やスモークをシミュレートできます。ライトをいくつでも使用して Volumetric Fog に影響を与えることができます。
+
+(w:929 h:529 convert:false)
+
+(w:928 h:510 convert:false)
+
+(w:928 h:510 convert:false)
+
+Volumetric Fog は以下のライティングをサポートします。
+
+* カスケード シャドウ マップからのシャドウイングまたは静的シャドウイング、もしくは Light 関数のある単一の指向性ライト。
+
+* Cast Volumetric Shadowing が有効の場合、動的または静的シャドウイングが付いた任意の数のポイントライトおよびスポットライト。
+
+* ディスタンス フィールド アンビエント オクルージョンが有効の場合、シャドウイングが付いた単一のスカイライト。
+
+* Volumetric Scattering Intensity が 0 より大きい場合はパーティクル ライト。
+
+パーティクル システムに適用されているマテリアルを使って新しい Volume Domain 設定を使って Volumetric Fog を制御することができます。ボリューム マテリアルを持つ単一のパーティクルでは、密度を持つ球体が Volumetric Fog に追加されます。エフェクトは完全な 3D で、ビルボードは一切含まれません。テクスチャからのノイズのある複数の球体フォグ パーティクルを使用して、フォグを所定の場所に制限することができます。
+
+Volumetric Fog の設定については、この [ドキュメント](Engine/Rendering/LightingAndShadows/VolumetricFog) をご覧ください。
+
+### 新規:イメージ ベース (FFT) のブルームの畳み込みエフェクト
+
+この機能を使って物理的にリアルなブルームのポスト プロセス エフェクトを作りましょう! アンリアル エンジン 4.16 には、FFT ブルーム機能があります。カスタムのブルーム カーネルの形状を使用し、思い描いた結果に合わせて強さを制御することでアーティストの表現の幅が広がります。
+
+(w:928 h:485 convert:false)
+
+カーネル画像と共にソース画像の数学的畳み込みを使うことで、このブルーム技術では星状のバーストから周囲を照らすディフューズまで一連の反応を生み出すことができます。イメージ ベースの折り畳みが生み出す新たなリアリズムは、視覚的に面白い、非対称のカーネル イメージによるものです。通常、放射状の線から成る星状のバーストのように見えますが、まつ毛のようなシルエット、ボケ、その他のアーティファクトを含むことがあります。
+
+**Note:** イメージ ベースの畳み込みブルーム機能は、シネマティックスやハイエンド ハードウェアでの使用を想定して作られています。既存の (標準) ブルームは、ほとんどのゲーム アプリケーションでご利用いただけます。
+
+### 新規:ディスタンス フィールド ライティングの最適化
+
+**ディスタンス フィールド アンビエント オクルージョン** と **レイトレース ディスタンス フィールドシャドウ** は、現行の生成コンソールと標準的仕様の PC で **30-50% 程度速くなっています!** こうした機能によって、一段とリアルな環境光とシーンの動的メッシュに対するエリア シャドウが実現します。
+
+(w:929 h:513 convert:false)
+
+さらにスタティックメッシュの **Distance Field Generation は、Intel の Embree のレイトレーシング ライブラリによって 2.5 倍速くなっています。**Eight Bit Mesh Distance Fields と Compress Mesh Distance Fields のプロジェクト設定を有効にすると、メモリ使用量も大幅に削減します。
+
+### 新規:軽量剛体シミュレーション
+
+**軽量剛体キャラクター シミュレーション 機能を使って物理シミュレーションしたキャラクターを沢山作りましょう!**新しい高性能の **Immediate Mode** PhysX API を使って Animation ブループリント内で物理アセットをシミュレーションできるようになりました。このシミュレーションを使うキャラクターはワールドで静的ジオメトリとのコリジョンを生成することもできます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ VaxxVsv0Fak
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 新規:ローレベル クロス シミュレーション
+
+ローレベル NVIDIA NvCloth クロス ソルバーを使ってクロス シミュレーションの制御を高めましょう。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 5BqodzWZIUA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+これまでの APEX Clothing ソルバーを、 NVIDIA の NvCloth と呼ばれるローレベル ソリューションに置き換えました。この新しいソルバーは、以前の APEX ソリューションのコア ソルバーに似ていますが、いくつかの変更があります。シミュレーション データが使いやすくなっていて、慣性の設定用のパラメータが増えています。
+
+### 新規:Nintendo Switch 向けゲームを制作しましょう!
+
+登録開発者は、Nintendo Switch 向けのゲームを制作し、リリースすることができます。制作に使用できる UE4 の Nintendo Switch サポートは認証に合致したものであり、ネットワーク接続のマルチプレイヤーに対応し、ディファード、モバイル フォワード、クラスター フォワードといった複数のレンダリング パイプラインを利用することができます。Nintendo Switch 向けに様々なタイプのゲームを出荷することができます。
+
+[REGION:raw]
+(w:925 h:641 convert:false)
+[/REGION]
+
+### 新規:VR モード UI とインタラクションの更新
+
+アンリアル エディタの VR モードは、一段と直観的なワークフローと編集ができるように改善されました。
+
+(w:722 h:646 convert:false)
+
+新しい非対称コントローラーのセットアップでは、改善されたラジアル メニューとレベル内のオブジェクトを迅速かつ容易に扱えるように精度を高めたインタラクション レーザーがあります。
+
+主なエディタ機能や UI パネルを含むすべての VR モード アクションは、更新されたラジアル メニューからご利用いただけます。テレポート機能も改善されて、必要な場所にただちに移動し、プレイヤー視点で見えるようにデフォルト スケールにリサイズすることもできます。詳細は、[https://docs.unrealengine.com/latest/INT/Engine/Editor/VR/GDC2017/](https://docs.unrealengine.com/latest/INT/Engine/Editor/VR/GDC2017/) を参照してください。
+
+### 新規:VR でシーケンスを編集
+
+シーケンサー シネマティックス エディタが VR で利用できるようになりました!新規シーケンスを作り、レベル内でオブジェクトを移動することができます。しかも、このプロセス中にトランスフォームに対するシーケンス キーを自動的に作成することができます。時間をスクラブしてこうしたキーを設定することでシネマティック シーケンスの作成と再生をすべて VR 内で行うことができます。シーケンサーの UI またはラジアル メニューから既存のレベル シーケンスを開いて再生することもできます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ X4Zw9U20Gw4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* New!調整可能なキーを使うと、ワールド内の軌道を物理的に調整することができます!
+
+* ラジアル メニューの Scrub Time オプションを使うとサムスティックまたはタッチパッドの入力を、シーケンスを前後に再生する速度として使います。再度トリガーを押して Scrub Time モードを終了します。
+
+### 新規:VR モードでの物理シミュレーション
+
+モーション コントローラーを使ってオブジェクトとインタラクションして **VR モードで物理アクタをシミュレーション** できるようになりました。物理をシミュレーションするように設定したアクタを配置し、物理シミュレーションを実行し、リアルなスキャッタリングやモーション コントローラーを使ってアクタを動かすことができます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bG2Qf897CBI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 新規:VR モードでのスマート スナッピング
+
+スマート スナッピングでは、オブジェクトの境界を使ってシーン内の他のアクタと並べて配置します。これにより、グリッドを考えてモジュラー アセットをビルドする必要なく正確に位置合わせすることができます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ lvqxM1kjubE
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+この機能は、現在 VR モードでのみ利用することができます。今後のリリースでデスクトップの編集のサポートも追加予定です。
+
+### 新規:Xbox One で DirectX 12 がレンダラに
+
+**DirectX 12 は Xbox One のデフォルト レンダラになりました!** DirectX 12 で安定性を高め、パフォーマンスを向上させるために多数の更新を加えました。これをデフォルトの RHI とし、Xbox One 向けに制作されたタイトルで **CPU と GPU の性能を向上** させます。
+
+(w:556 h:356 convert:false)
+
+#### D3D11 へのスイッチバック
+
+D3D11 にスイッチバックする必要があるタイトルの場合、以下の手順に従います。
+
+1. ご自身のタイトルの defaultengine.ini の bBuildForD3D12 を修正します。
+
+1. Xbox One 向けのゲームを再ビルドします。
+
+1. コンテンツを再クックします。
+
+**Note:** D3D11 RHI は、今後のリリースで非推奨になります。
+
+### 新規:HTML5 の WebAssembly と WebGL 2 をサポート
+
+UE4 は HTML5 の新しい WebAssembly 標準 (WASM) をサポートするようになりました。これは、ウェブ向けに C++ をコンパイルし、実行する非常に迅速で効率性の高い方法です。Mozilla の最新の Emscripten ツールチェーン (v1.37.9) を使っています。これは新しい技術であり、すべてのブラウザでサポートされているわけではありません。そのため、早期アクセス機能とみなされ、GitHub のアクセスを必要とします。
+
+[REGION:raw]
+(w:929 h:630 convert:false)
+[/REGION]
+
+WASM は、アプリケーションのダウンロード サイズ、起動時間、メモリ消費を改善し、パフォーマンスを大幅に高める Web アプリケーション向けのバイナリ形式の JavaScript です。WASM とブラウザのサポートに関する詳細は、[http://webassembly.org/](http://webassembly.org/) をご覧ください。
+
+UE 4.16 は WebGL 2.0 もサポートしています。これは、OpenGL ES 3.0 をベースにしたもので、レンダリングのパフォーマンスを最適にし、ビジュアル忠実度を高め、以下を含むレンダリング機能をサポートします。
+
+* UE4 のハイエンドのモバイル機能レベルのほとんどの機能
+
+* パーティクルとフォリッジのためのインスタンス化されたジオメトリの描画
+
+* Multiple Render Targets (MRTs) のサポート
+
+* 3D またはボリューム テクスチャ、2D テクスチャ配列などのテクスチャ機能と、2 のべき乗以外のテクスチャの制約がなくなります。
+
+WASM と WebGL 2.0 は、Firefox 52 と Chrome 57 以降 (64-bit 推奨) でサポートされています。Windows 上で Chrome 58 のバグがあるようです。一部のケースでメモリ不足になるエラーを生じています。この問題の解決に向けて Google と作業を進めています。最新ステータスについては [UE-44727](https://issues.unrealengine.com/issue/UE-44727) を参照してください。
+
+HTML5 Project Settings の Emscripten セクションで WASM と WebGL 2.0 を有効にすることができます。出来る限り多くのブラウザをサポートする必要があれば、ASM.js と WebGL 1 を引き続きご利用ください。ASM.js と WebGL 1 のサポートは今後のエンジンのリリースで非推奨になり、その後取り除きます (正確な時期は今後加わるブラウザのサポートに応じて変わります)。
+
+Firefox や Chrome のブラウザ (対応バージョンは上記のとおり) での効果については、LIVE DEMO:[try out Zen Garden on HTML5](https://hacks.mozilla.org/2017/03/firefox-52-introducing-web-assembly-css-grid-and-the-grid-inspector/) をご覧ください。
+
+### 新規:ガーベジ コレクションが 2 倍程度高速化
+
+ガーベジ コレクションのパフォーマンスが大幅に改善し、**2 倍程度速くなりました!** 以下は具体的な改善点です。
+
+* タスク管理のオーバーヘッドを減らすために到達可能性解析のマルチスレッディングが再設計されました。
+
+* ガーベジ コレクションのクラスタリングは、ブループリントが生成したクラスと選択したアクタのタイプをサポートするようになりました。
+
+* アクタを破壊するために使う時間を短縮するために、UObject のアンハッシュコードが最適化されました。
+
+### 新規:シミュレートされた親を持つキネマティックボディ機能
+
+シミュレートされた親を持つキネマティック物理ボディの機能を加えました。キャラクターの手など、純粋にアニメーション データで操作される子のボーンを持つことができます。こうしたボーンの親も物理シミュレーション データによって操作することができます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ qiiOU_fhex0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+これにより、ボディと衝突する落石に反応してレッジ (棚状の障害物) をプレイヤーがよじ登るなど格好いいエフェクトを表現できます。
+
+### 新規:Platform SDK のアップグレード
+
+リリースの都度、プラットフォーム パートナーからの最新の SDK リリースに対応するようにエンジンをアップデートしています。
+
+[REGION:raw]
+(w:929 h:522 convert:false)
+[/REGION]
+
+* **Visual Studio:**重要:このリリースでは、Windows の Visual Studio 2013 はサポートしなくなりました。Visual Studio 2015 または Visual Studio 2017 にアップグレードしてください。
+
+* **Nintendo Switch:** Nintendo SDK 1.3.1 をサポート
+
+* **Xbox One:** October 2016 QFE3 XDK に対してビルド
+
+* **PlayStation 4:** PSR SDK 4.508.001 SDK にアップグレード
+
+* **Android:** CodeWorks for Android 1R6u1 にアップデート
+
+* **GoogleVR:** プラグインをバージョン 1.3 にアップデート
+
+* **GoogleVR:** SDK を 1.40.0 にアップデート
+
+* **GoogleVR:** モードのデフォルトが Daydream & Cardboard に変更
+
+* **Vulkan:** distributable と glslang を SDK 1.0.39.1 にアップデート
+
+### 新規:シーケンサーのショット トラックの改善
+
+シネマティックスと映像制作についてシーケンサーのショットトラックにいくつかの改善が加えられました。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ GqfJxD1DY8I
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* **ショット毎の階層バイアス:** デフォルトでレベル シーケンスの階層で低レベルのトラックが優先されます。これにより、映像制作者は、ショットでの調整がそれが含まれるシーケンスのトラックをオーバーライドする使い慣れたパイプラインを構築することができます。
+
+* **全てのトラックに対して "When Finished" プロパティをエクスポーズ:** これで事前にアニメートされた状態に値を戻すか、シーケンス終了時にそのままにするかを指定することができます。映像制作環境では、通常、ショットのアニメートした値をアニメート前の状態に戻し、次のショットに影響を与えないようにします。シネマティックスでは、シーケンサーのアニメートした状態からゲームに続くように値を持続させる場合があります。
+
+* **Pre/post roll:** プリロールとポストロールはあらゆるトラックで一般的な概念になりました。一部のトラックでは、例えばカメラ カット トラックなどではストリーミング システムにカメラカットの予定位置をプリロールの評価期間中に通知します。
+
+### 新規:シーケンサーでマテリアル パラメータ コレクションをアニメートする
+
+シーケンサーでマテリアル パラメータ コレクションをアニメートできるようになりました。任意の数のマテリアルで参照可能なスカラー パラメータやベクターパラメータを制御することができます。アニメーションを共有するために各マテリアル インスタンスで個々のパラメータ値をアニメートする必要がなくなりました。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ u_Cpqz7mFuM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 新規:UI レンダリング パフォーマンスの向上
+
+Invalidation Panel を使うゲームでは、レンダリング データではなくウィジェット エレメントのみをキャッシュするオプションができました。これにより、テクスチャのバッチングを改善し、ドローコールを大幅に削減します。結果としてモバイル デバイスでパフォーマンスが飛躍的に向上します。
+
+[REGION:asyncgif]
+(w:456)
+[/REGION]
+
+
+Battle Breakers のヒーロー選択 UI (上図) では各ヒーローの論理要素がキャッシングされますが、まとめてバッチングすることもできます。コンソール変数 Slate.CacheRenderData=0 はこのモードを有効にします。これは、現在モバイル デバイスでデフォルトになっています。
+
+### 新規:アニメーションの Pose Driver の改善
+
+Pose Driver 機能に多くの改善を施しました。これにより、ボーン一式と参照ターゲット一式を比較することでプロシージャルにブレンド シェイプやボーンを操作します。これは、上腕と肩のポーズに応じてモーフターゲットを補正する肩などのエリアで特に役立ちます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ sjtbvyDdW9w
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* 複数のボーンをポーズを読み取る入力として選択できるようになりました。
+
+* ノードによってどのボーンを選択するかを選ぶことができます。
+
+* 各ターゲットをどのようにアクティベートするかについてのカスタム カーブを指定することができます。
+
+* Pose Asset を必要とせずに、カーブ (モーフ、マテリアル) の操作を直接選択することができます。
+
+* ターゲット ポーズの作成/編集ができるように、ターゲットのアクティベーションを示すバーなど UI を改善しました。
+
+* ビューポートのターゲットの位置をクリックして選択できるようになりました。
+
+### 新規:マテリアルを平坦化するためのオパシティとオパシティ マスク
+
+Actor Merge ツール、Hierarchical LOD システムを使う場合の **オパシティ (マスク) 値のベイクアウト** のサポートを追加しました。結果として得られる (インスタンス化) マテリアルでは設定したブレンド モードを使って正しいレンダリング パスに従うようにします。以下は、ベイクアウトしたマスクしたマテリアルの例です。
+
+(w:904 h:740 convert:false)
+
+### 新規:Mesh Paint Tool の改善
+
+メッシュのペイント システムを見直してユーザビリティとわかりやすさを改善しました。エディタの他の部分での機能を再利用することができます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ UezYKhase9g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+さらに、このペイント ツールはスケルタルメッシュでも利用可能になりました!ペイントはインスタンス毎ではなく (スタティックメッシュと同様に)、スケルタルメッシュ アセットに直接適用されることに注意してください。
+
+### 新規:スプライン IK ソルバー
+
+キャラクターの背骨やボーン チェーンを制御するために便利なスプライン IK ノードが Animation ブループリントに追加されました。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ chqOk4QdPR0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+### 新規:メッシュ サーフェス上のマテリアルの検出
+
+コンポーネントに 'Get Material From Face Index' 関数を追加し、 (complex) Line Trace 実行後にコンポーネントに適用されるマテリアル情報を検出することができます。この機能は、スタティックメッシュ、プロシージャルなメッシュ コンポーネント、 BSP でサポートされます。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ SvsSnkwB1TQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 新規:'Look At' Animation ノードの改善
+
+Look At ノードの **Look At Location** プロパティをボーンやソケットに相対的に使用することができます。これまで、ボーンやソケットを指定した場合にこの値は無視されていました。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 3C7Q6JJxmtY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Look At 制御のビジュアル化も改善されました。例えば、クランプ アングル、ターゲット位置、補間などが視覚的にわかります。
+
+### 新規:アニメーションのエクスポートの改善
+
+物理シミュレーションの Anim Dynamics など、スケルタルメッシュに割り当てられたポストプロセスのグラフから生成された追加のアニメーション データを含むアニメーションの作成とエクスポートのサポートを追加しました。
+
+この追加データを含めるには、**[Create Animation]** メニューまたは **[Export Animation]** メニューから **Preview Mesh** を選択します。
+
+(w:697 h:256 convert:false)
+
+### 新規:Unreal Audio Engine (早期アクセス プレビュー)
+
+GDC で発表された新しい Unreal Audio Engine が PC、 Mac、 iOS、 Android、 および Switch で早期アクセス版として利用可能になりました。これにはクロス プラットフォームのオーディオ ミキサーが含まれます。既存のオーディオ エンジン機能に対して完全な後方互換性があります。新しいマルチ プラットフォームの EQ エフェクトと Reverb マスター エフェクトが含まれます。さらに、サブミックス グラフ、サブミックス エフェクト、ソース エフェクト、リアルタイム合成など新機能が盛り沢山で、オーディオ プラグインのサポートも改善されています。
+
+この新しい Unreal Audio Engine は 4.16 ではデフォルトで有効になっていません。コンソール プラットフォーム、Linux、および HTML5 のバックエンドの実装、および特にモバイル プラットフォーム向けに安定性とパフォーマンスの改善、など引き続き作業を進めているからです。
+
+オーディオ ミキサーを有効にするには、コマンドライン引数、"-audiomixer" を使用します。
+
+注意:ほとんどの Unreal Audio Engine の新規機能は、オーディオ ミキサーを有効にせずにエディタをローンチすると非表示になっています。
+
+#### 新規:Synthesis プラグイン (早期アクセス版)
+
+新しい Synthesis プラグインには、Unreal Audio Engine の "SynthComponent" クラスを使って記述した新しい 2 つのリアルタイム シンセサイザーがあり、十分な機能を備えた減算シンセサイザーとリアルタイム グラニュレータを実装します。こうした新しいシンセサイザーはプロシージャルな音楽やサウンド デザインに役立つだけでなく、サードパーティのプラグイン メーカーや、場合によってはサウンド デザイナーが独自の合成をどのように実装するかの例になります。
+
+この合成プラグインには、Unreal Audio Engine で使用する新しい DSP ソースのホストとサブミックス エフェクトがあります。
+
+* **ソース エフェクト:** ステレオ ディレイ、ビット クラッシャー、ダイナミック プロセッサー、エンベロープ フォロワー、EQ フィルタ、バーチャル アナログ フィルタ (Ladder/State Variable)、Wave Shaper、コーラス、フェイザー
+
+* **サブミックス エフェクト:** リバーブ、EQ、ダイナミック プロセッサ
+
+### 新規:Steam Audio (早期アクセス版)
+
+エピック ゲームズと Valve が協力して、Unreal Audio Engineの新機能を使用し、Steam Audio SDK を完全に統合した実装をリリースしました。
+
+(w:600 h:160 convert:false)
+
+ Steam Audio は、基本的に新しい Unreal Audio Engine の空間化、オクルージョン、リバーブのシステムと統合し、UE4 で VR 向けの次世代の物理ベースのオーディオ体験を実現します。これは Steam Audio の早期アクセス版であり、4.17 では大幅な更新、さらに多くのサンプル プロジェクト、ワークフローの改善が予定されています。エピック ゲームズと Valve では、フィードバック、ご質問、改善案をお待ちしております。
+
+Steam Audio に関する情報、ドキュメント、サポートのヘルプについては、[https://valvesoftware.github.io/steam-audio/](https://valvesoftware.github.io/steam-audio/) をご覧ください。
+
+### 新規:カラー グレーディング ツールの改善
+
+カラー グレーディングのユーザーインターフェース (UI) が、簡単に使用できるように改善されました。
+
+(w:529 h:257 convert:false)
+
+* HSV モードが追加されました。
+
+* Ctrl キーを押しながらスライダーをドラッグしてタイプに応じてスライダーの最小値、最大値を動的に変更することができます。
+
+* カラー グレーディングのカテゴリ全体 (すなわち、グローバル、シャドウ、中間調、ハイライト) をリセットする新しいリセット ボタンが加わりました。
+
+### 新規:アニメーションのブレンドスペース エディタの改善
+
+グリッド内で **[Show Animation Names (アニメーション名表示)]** ボタンを使って各サンプルのアニメーション名を表示させることができます。既存サンプルの上にアニメーションをドラッグ&ドロップして置き換えることができます。
+
+[REGION:asyncgif]
+(w:905)
+[/REGION]
+
+### 新規:ローカライズのための文字列テーブル
+
+UE4 は文字列テーブルをサポートするようになりました!
+
+(w:601 h:218 convert:false)
+
+文字列テーブルはローカライズしたテキストをひとつ (または複数) の決まった場所にまとめます。次に他のアセットまたはコードから文字列テーブル内のエントリを参照し、ローカライズしたテキストを簡単に再利用できるようにします。文字列テーブルは C++ で定義し、CSV ファイルで読み込むか、アセットとして作成します。
+
+### 新規:Animation Modifier (早期アクセス プレビュー)
+
+Animation Modifier は、アクションのシーケンスを任意のアニメーション シーケンスまたはスケルトンに適用します。例えば、地面に右足が着くのはどのフレームであるかをピンポイントで示し、Animation Sync Marker を ball_r ボーンが最低ポイント (フロアに接触する) になるフレームに追加します。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ YC_UJuO9AI8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+特定のアニメーション データにアクセスするための新しい関数一式は、Animation ブループリントの関数ライブラリに入っています。Animation Modifier にアクセスして適用するには、スケルトン エディタとアニメーション エディタにある新しいタブを使います。Animation Modifier はスケルトンまたはアニメーションのシーケンスに追加することができます。アニメーション シーケンスに対して、Animation Modifier はシーケンス自体にのみ適用されます。スケルトンに適用する場合、そのスケルトンに基づいたすべてのアニメーション シーケンスに適用されます。
+
+### 新規:Android 用バーチャル キーボード
+
+ポップアップ ダイアログ入力ボックスの代わりに、Android ではその OS でバーチャル キーボードをサポートするようになりました。
+
+[REGION:asyncgif]
+(w:256)
+[/REGION]
+
+
+バーチャル キーボードを使用するには、**Project Settings > Platforms > Android > APK Packaging** の順に進み、チェックボックスにチェックを入れます。このオプションは、バーチャル キーボードの基本サポートを有効にするものです。入力エレメントを可視にし、バーチャル キーボードの背後で見えづらくならないように調整するのは各自のアプリケーション側で、OnVirtualKeyboardShown と OnVirtualKeyboardHidden のイベント ハンドラを使って行ってください。
+
+**Note:** ユーザーが IME を必要とする言語を使っている場合、バーチャル キーボードを Android.NewKeyboard コンソール変数を使って無効にすることができます。
+
+### Android のランタイム パーミッションのサポート
+
+UE4 は Android 23 以降で必要なランタイム パーミッションをサポートするようになりました。これは、Google によって危険と分類されるパーミッションを必要とする機能を利用するためのものです。こうしたものには、連絡先、写真、電話の状態、外部記憶装置、カメラ、位置情報サービスなどがあります。詳細は、以下のウェブページをご覧ください。[https://developer.android.com/guide/topics/permissions/requesting.html](https://developer.android.com/guide/topics/permissions/requesting.html)
+
+Android 23 をターゲットにする場合、Android Runtimes Permission プラグインには、ネイティブ コードまたは **Check Android Permission** ブループリント ノードを使って既にパーミッションが与えられているかをランタイムにチェックする機能があります。パーミッションがまだ認められていない場合は、そのアプリケーションが **Request Android Permissions** ブループリント ノードを使ってユーザーからパーミッションをリクエストします。次に **On Permissions Granted Dynamic Delegate** に結合されているイベントを使ってその結果を取得します。これにより、ゲームでパーミッションを必要とする機能を求める前に、パーミッションを与えることが可能になり、ユーザー体験を高めることができます。ターゲットとするバージョンが Android 23 よりも前の場合、通常どおり Android Manifest で指定してパーミッションを与えます。
+
+(w:718 h:346 convert:false)
+
+**Note:** 4.16 では、Android SDK 23 以降をインストールする必要があります。この SDK レベルをインストールしていない場合、Engine/Extras/AndroidWorks ディレクトリに CodeWorksforAndroid-1R6u1 インストーラがあります。さらに、"Project Settings (プロジェクト設定)" の Android SDK で Android SDK API レベルを matchndk から œlatest に変更してください。これにより、UE4 は Android SDK platforms ディレクトリにあるインストールされている最新 SDK を確実に使用するようになります。NDK API Level を変更する必要はありません。 android-19 は、APK を Lollipop (Android 5.0) よりも前のバージョンにインストールする適切なものです。これよりも高く設定すると、アプリケーションで Android 5.0 以降が必要になります。
+
+### パッケージ サイズを減らすためのシェーダー コード ライブラリ
+
+**[Share Material Shader Code]** プロジェクト設定を使用して、すべてのシェーダー コード用の共有保存場所を有効にすることができます。その結果、同じシェーダー コードを生成する複数のマテリアルやマテリアル インスタンスに対してひとつのコピーだけが保存されるようになります。
+
+iOS、 TVOS 、MacOS の Metal などの一部のプラットフォームでは、プラットフォーム固有のより高効率のシェーダー ライブラリをサポートしています。**[Shared Material Native Libraries]** プロジェクト設定を有効にすることで、ネイティブ ライブラリ形式を利用してパッケージ サイズをさらに減らします。
+
+### 新規:FBX からカプセル コリジョンをインポート
+
+FBX ファイルからカプセルのシンプル コリジョンを、これまでのボックス、球体、凸型のシンプル コリジョンと同じ方法でインポートできるようになりました。カプセルのポリゴン メッシュで 'UCP' プレフィックスを使用すると、インポート時に取り除かれて、対応するカプセルのコリジョン形状に置き換わります。
+
+### 新規:共有とローカルのアセット ビューア プロファイルのオプション
+
+アンリアル エディタでは、共有またはローカルのレベルでアセット ビューア プロファイルを保存できるようになりました。アート アセットを評価するためにシーンをまとめて使用可能なプロファイル一式をチームで共有できるようになります。ローカル レベルでプロファイルを保存することで、ローカルで使用したいが、チームでは不要なカスタム プロファイル一式を持つことができます。共有プロファイルは、*DefaultEditor.ini* に保存され、ユーザーがチェックアウトするか、書き込み可能にする必要があります。
+
+### 新規:アニメーション プレビュー シーンの改善
+
+アニメーション ツールのプレビュー シーンに対して以下の改善を加えました。
+
+* プレビュー シーン設定は、ビュー ポートの非表示メニューから既存の設定タブに移動しました。この設定タブはデフォルトで表示されるようになりました。
+
+* プレビュー メッシュからメイン ツールバーに迅速に切り替えるショートカットを追加しました。これはすべてのアニメーション エディタに適用されます。
+
+* プレビュー シーンを編集する場合、余分なメッシュをプレビューするためだけに "preview scene collection" アセットを作成する必要がなくなりました。メッシュのセットアップが満足のゆくものだったら、オプションでそれをアセットに保存できるようになりました。
+
+### 新規:Anim Viewer にデフォルト カメラ オプションを追加
+
+'Default Camera' 位置をスケルタルメッシュに保存できるようになりました。メッシュを開く時に使用します。また、Shift+F を押してジャンプすることもできます。
+
+### 新規:Play Montage ブループリント ノード
+
+**Play Montage** は、Anim Montages をプレイするためのブループリント ロジックで使用できる新しい非同期ノードです。モンタージュがブレンドおよび中断された場合に別のノードをトリガーさせて、いくつかのコールバック イベントへのアクセスを容易にします。
+
+(w:376 h:272 convert:false)
+
+* Montage がプレイを終了し完全にブレンドされると OnCompleted が呼び出されます。
+
+* Montage が Blend Out を開始すると自動的あるいは手動で停止するので、OnBlendOut が呼び出されます。
+
+* Montage が Blend Out を開始すると、別の Montage のプレイによって中断されるので、OnInterrupted が呼び出されます。
+
+* Montage アセットの 'Play Montage Notify' あるいは 'Play Montage Notify Window' Anim Notifies のいずれかを使用すると、OnNotifyBegin と OnNotifyEnd がコールバックされます。同じ Montage からの複数のコールバックを区別するために、これらの AnimNotifies には 'Notify Name' を追加することができます。
+
+### 新規:リターゲット ポーズ オプションの追加
+
+Retarget Base Pose を設定すると、Pose アセットから使用するポーズをインポートできるようになりました。使用中のポーズを修正および保存するオプション (Use Current Pose) およびボーンのトランスフォームを参照ポーズにリセットするオプション (Reset) は、今まで通り利用できます。
+
+**Note:** アニメーション エディタで Pose アセットを作成し、割り当て名を使ってすべてのポーズをその Pose アセットに挿入することができます。
+
+### 新規:スタティックメッシュ エディタのコリジョン ビュー オプション
+
+スタティックメッシュ エディタ ツールのスタティックメッシュに対して、シンプルおよび複雑なコリジョンを表示する別々のオプションができました。
+
+### 新規:LOD にベイクされたポーズをサポート
+
+アンリアル エンジン 4 は Bake Pose という新しい縮小設定を使って、LOD レベルにベイクしたポーズをサポートするようになりました。この設定は、結果の LOD メッシュに適用される単一フレーム アニメーション シーケンスに対して設定することができます。ボーンを削除してもポーズを維持したい場合、この設定の便利さが分かります。
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0fcNitNu9FE
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+**Note:** この機能の使用には Simplygon が必要です。
+
+### 新規:シーケンサー ユーザーインターフェース (UI) の改善点
+
+オーディオ トラックのサムネイルが内側の (滑らかな) RMS カーブを使ってピーク サンプルをレンダリングするようになりました。オーディオ トラックも垂直方向へサイズ変更できるようになりました!
+
+[REGION:asyncgif]
+(w:929)
+[/REGION]
+
+
+その他のシーケンサー UI の改善点
+
+* シーケンサーが制御するアクタがレベルへストリームされる時、正しくティックするようになりました。
+
+* イベント トラックに対して追加でイベント レシーバー (アクタ ブループリントなど) の指定ができるようになりました。
+
+* バインディングが改善されました。ブループリントのレベル シーケンスに対してバインディングのドラッグ / ドロップ / 設定ができるようになりました。例えば、ブループリントでオブジェクトをスポーンし、それを既存トラックに割り当てることができます。
+
+### 新規:Mobile VR Rendering の改善
+
+直接マルチビューが Samsung Gear VR に対してサポートされるようになりました。モバイル マルチビューを使用する時は余計なレンダー ターゲットとフルスクリーン コピーを削除することにより、パフォーマンス全般を改善し、メモリ使用量を削減しました。
+
+マルチビューを有効にした Gear VR で Monoscopic Far Field Rendering が使用可能になりました。これにより、シーンのステレオ レンダリング部分のレンダリングが最適に行われるようになります。
+
+今後のリリースで、Google Daydream が標準のモバイル マルチビューをサポートするようになります。
+
+### 新規:PlayStation VR 用ソーシャル スクリーン (早期アクセス プレビュー)
+
+PSVR ソーシャル スクリーン プレビューは、モニタと HMD が別のものを表示する ソーシャル スクリーン セパレート モードをサポートしています。
+
+30fps ソーシャル スクリーン出力をサポートし、複数の出力モードを切り替えます。次のサンプル モードが実装されています。
+
+* SystemMirror (デフォルトのミラー モードで常にあります)。
+
+* SeparateTest (ソーシャル スクリーンの黒白を単純に切り替えます)。
+
+* SeparateTexture (シーン キャプチャ コンポーネントで書き出されたレンダー ターゲットなどのブループリント専用テクスチャです)。
+
+* SeparateMirror (フルあるいはバッファを表示)
+
+これらの機能に対するマルチ プラットフォーム インターフェース、できれば 60 fps モード (所定のシステム機能とのコンフリクトを解決するためのシステム ダイアログが必要) へのサポートといった最適化を今後行います。
+
+この機能を使用するためには、新しい PSVR プロジェクト設定 bEnableSocialScreenSeparateMode を true にしなければなりません。true にすると、追加のスクリーン バッファがソーシャル スクリーンに割り当てられます。この機能を制御するブループリント関数は 'SocialScreen' で検索可能です。
+
+### 新規:Android 実行ファイルサイズの縮小
+
+コンパイラおよびリンカ設定に多数の最適化を行うことで、Android バイナリ実行ファイル サイズを縮小しました。**[Build with hidden symbol visibility (シンボルを非表示でビルド)]** オプションにより、Android 実行ファイル生成時にリンカが、さらに多くの未使用コードをアンリアル エンジンから取り除くことができます。また、シンボル テーブルから関数シンボルもストリップするので、実行ファイル サイズはさらに小さくなります。最終 APK サイズから約 7MB の節減です。
+
+**Note:** このオプションはデバイス上のバイナリからシンボルを削除するので、ネイティブ クラッシュ コール スタックはシンボルなしで logcat 出力に表示されます。デバッグ処理の簡素化のため、ビルド システムはストリップされないデバッグ シンボル付のバイナリも出力ディレクトリにコピーします。また、コール スタックにシンボルを追加するバッチ ファイルも生成します。
+
+### 新規:Vertex Interpolator Material Expression ノード
+
+Vertex Interpolator ノードがマテリアル グラフに追加され、頂点とピクセル間での値補間の調整がしやすくなりました。ワークフローの改善が目的なので、interpolator に対する制約やシェーダーへの変更は一切ありません。
+
+頂点シェーダーへ作業をオフロード処理するための現在のワークフローは Customized UV 出力で使用されます。このフローは、データのパッケージ処理が手作業なので少々面倒です。以下の例は、予めスキンメッシュ化したデータをパックし、エフェクトで使用するためにアンパックするマテリアルです。
+
+(w:766 h:665 convert:false)
+
+この新しい補間ノードはパック処理を自動で行うので、グラフの簡素化およびインライン化が可能になります。
+
+(w:776 h:357 convert:false)
+
+Customized UV で既にパックされた作業は VS (頂点シェーダー) ピンに接続され PS (ピクセル シェーダー) ピンから抽出されます。
+
+マテリアル統計情報出力を更新して、現在パックされているものと最大値の両方の interpolator の使用状況を表示します。上の例で、命令数と interpolator の使用状況が一定であることに注目してください。2 つのベクトルで合計 8 個のスカラーをパックする場合、スカラーの 2 つは TexCoord[0] ノード、残りの 6 つはプリスキン データで確保します。
+
+本機能は Customized UV と互換性があり、結果も一緒にパックします。
+
+### 新規:アセット管理フレームワーク (早期アクセス プレビュー)
+
+Asset Manager は新規のグローバル オブジェクトです。エディタ内またはランタイム時に、マップおよびゲーム固有のアセットタイプの発見、ロード、監査を行うことができます。クエスト、武器、ヒーローなどの作成、およびオンデマンドでのそれらのロードを簡単にするフレームワークを提供します。Asset Manager はまだ開発中なので、ブループリント専用ゲームまたは経験の浅いデベロッパーによるこれらの機能の使用は 4.17 までお待ちください。[Project Settings (プロジェクト設定)] の [Asset Manager] タブでゲームのルールを設定することができます。
+
+Asset Manager がスキャンした Primary Asset Types は、ロード前のランタイム時にクエリして、オンデマンドで同期しながらロードすることができます。さらに Asset Manager 設定を使って、ゲームのパッケージングやリリース時のクックおよびチャンクのルールの設定もできます。本機能の開発状況に関しては、AnswerHub: [https://answers.unrealengine.com/questions/595580/what-is-the-asset-manager.html](https://answers.unrealengine.com/questions/595580/what-is-the-asset-manager.html) でご確認ください。
+
+### 新規:Asset Audit ウィンドウ (早期アクセス プレビュー)
+
+アセット管理フレームワーク内にビルドされているので、Asset Audit ウィンドウは一度の多数アセットに対して、ディスク サイズ、メモリ使用状況、アセット プロパティ全般の監査を行うことができます。コンテンツ ブラウザの特別版になります。**[Window] > [Developer Tools]** メニュー、もしくはコンテンツ ブラウザまたはリファレンス ビューアの右クリック メニューからアクセスできます。ウィンドウを開いたら、アセットはボタンを使って追加することができます。クック済みアセット レジストリからロードされたプラットフォーム データは、プラットフォーム ドロップダウンを使ってロードすることができます。こちらは、PS4 のシューティングゲームで使われているテクスチャの監査の例です。
+
+(w:929 h:289 convert:false)
+
+### VR: VR 向けコンソールコマンドの統合
+
+デベロッパーがプラットフォームごとに独立して作業しなくて済むような共有レイヤーを作成するために、VR プラットフォーム全体のコンソール コマンドの整合および統合を行いました。
+
+この統合は、以下のような長所があります。
+
+* 新規プラットフォームのブートが簡単になります。
+
+* HMD 全体の引数の意味の整合性が保たれます。
+
+* 現在の HMD の無駄な実装が減ります。
+
+* VR に関係するすべてのコンソール コマンドは共通のプレフィックス "vr." が付きます。メーカー固有の拡張子はコマンド名の中にそのように明記されます。
+
+* 更新されたコンソール コマンドは、タブの完成とインライン使用ヘルプ テキストをサポートします。
+
+統合過渡期間は古いコンソール コマンドも引き続き認識されますが、使用時に非推奨の警告が出ます。
+
+### ハードウェアのカーソルのカスタム化
+
+プラットフォーム ネイティブ カスタム ハードウェア カーソルが Windows、Mac、Linux でサポートされるようになりました。プロジェクトの UserInterface 設定でこのハードウェア カーソルの使用を設定することができます。
+
+カーソルには複数の形式が用意されています。例えば "Slate/FancyPointer" をデフォルト ポインタとして設定できます。ゲームのコンテンツ フォルダの Slate ディレクトリに FancyPointer.png + .cur + tiff があれば特定のプラットフォームのマルチ解像度に対応することができます。tiff は Mac にロードされ、cur/ani ファイルは Windows で使用されます。プラットフォーム専用形式が見つからない場合は png を検索します。
+
+### ウィジェット作成の高速化
+
+UMG ウィジェット作成速度が最高 3 倍になりました! クック時にウィジェット コンパイラが、生成された Blueprint クラスとして同じパッケージに格納されウィジェット作成中に使用されるウィジェット テンプレート / アーキタイプを生成するようになりました。
+
+**技術的な詳細**
+
+技術的な詳細 コンパイル中に、すべてのサブ ユーザー ウィジェットとそのツリーを含む、ほぼ完全に初期化されたウィジェット ツリーが生成され、すべてのメンバ変数を結合し、名前の付いたスロットを初期化し、すべてのアニメーションの設定が行われるようにしました。このように、ほぼ完全に構造化されたウィジェットはアーキタイプとして使用したインスタンス化が可能なので、対応している処理の遅い StaticDuplicateObject パスを使う必要がなくなります。
+
+このメソッドには制約があります。ウィジェットのコンパイル ステップのどこかで、インスタンス化処理が正常かどうか、あるいはサブオブジェクト プロパティでのユーザーのインスタンス化設定忘れのためにインスタンス化後に GLEO リファレンスが残っていないかどうかを確認します。ただし、すべての UVisuals (ウィジェットおよびスロット) が DefaultToInstanced になり、インスタンス化フラッグを要求するほとんどのケースに対応してくれるので、そのような事はあまりありません。ネイティブ コードで BindWidget を使う場合は特にそうです。
+
+## リリース ノート 「訳注: 以下は、非常に技術的な部分が含まれるため、翻訳を省略します。」
+
+### AI
+
+* New:Added a profiler for Environment Query System (EQS) that can be accessed through the tabs of the EQS Editor.
+
+ * It collects data automatically during game sessions as long as UES_EQS_DEBUGGER define is set.This includes options for average and max execution time of each step (including breakdown of composite generators), number of items processed by each step, and average frequency of running, which can be useful to identify how often fail safes are actually running.
+
+ * It collects tick load data when USE_EQS_TICKLOADDATA define is set.Each query can store up to 16384 records in cyclic buffer (~4.5 minutes at 60 FPS) showing percentage of EQS tick spent on processing it.This is displayed on the graph in EQS editor tab.
+
+ * A console command has been added, "DumpEnvQueryStats", that saves current EQS profiler data to a file (project's Logs folder, .ue4eqs extension), which can be later loaded and inspected in the EQS Editor.
+
+* Bugfix:Fixed an issue with Blackboard Key Selector's "Init Selector" that resulted in it picking the first value from the Blackboard rather than the appropriately typed one.
+
+* Bugfix:Gameplay Task Resource's Auto Resource ID initialization is no longer cleared during Hot Reload.
+
+* The "Get AI Controller" is now a pure Blueprint Function.
+
+* Exposed Brain Component's "Is Running" and “Is Paused†functions to Blueprint.
+
+* Clamped AI Sight's peripheral vision angle as well as changed the UI to not allow values outside of the 0-180 range.
+
+* Disabled collision on Nav Modifier Volumes.Previously they had an 'Overlap All' response and generated overlap events.They are only supposed to be used for preventing navmesh generation, but overlap events could affect gameplay and are also bad for performance.
+
+* Made "Skip Agent Height Check When Picking Nav Data" option ignore height when picking nav data for agents.It now picks solely based on the radius when this is enabled.
+
+#### Behavior Tree
+
+* Bugfix:Added safeguards to prevent crashes resulted from Blackboard keys being names being longer than 1024 characters.
+
+* Bugfix:Fixed an issue in dynamic Behavior Tree injection that was causing unexpected behavior when the main BT had more BT injection points.
+
+* Bugfix:Fixed an issue in Blackboard key instantiation that resulted in the instanced key never being used and BB operations always referring to the original BB entry.
+
+### Debugging Tools
+
+* The Gameplay Debugger's input detection has been adjusted so that Tap and Hold work correctly in fixed timestep mode.
+
+### Navigation
+
+* Added a flag to Recast Navmesh, "Allow Nav Link As Path End", that is used to control whether path corridors can end on a navigation link or not.This may happen with partial paths and not usually desired behavior.Navigation links at the end are not allowed by default.
+
+* The Blueprint functions "Project Point To Navigation", “Get Random Reachable Point In Radiusâ€, and “Get Random Point In Navigable Radius†all return booleans determining if the projection/generation was successful, as well as the vector value that describes the requested point.
+
+* Bugfix:Fixed a memory leak in navmesh generators.
+
+* Bugfix:Fixed an issue that resulted in losing user settings in Static Mesh's navigation export (Nav Collision object) after changing any property of the Static Mesh.
+
+* Bugfix:Hand-placed AI pawns now get their Path Following Component's "My Nav Data†variable set properly.
+
+* Bugfix:Fixed an issue with missing update of navigation area after duplicate or undo operations on Nav Link Proxy and Nav Link Component.
+
+* Bugfix:Corrected the handling of path following requests by Floating Pawn Movement.
+
+* Bugfix:Fixed an issue with parameters of geometry trace handling drop-down navigation links.All components blocking on ECC_WorldStatic channel will now report a valid hit.
+
+* BugFix:HLOD's navigation collision exporting no longer causes unnecessary log output about NavCollision instances in cooked builds.
+
+#### Animation
+
+* New:You can now rename Virtual Bones.
+
+* New:You can now change Virtual Bones so that you can have a Virtual Bone that is a child of another Virtual Bone.
+
+* New:Added "Get Body Target Transform" to the Physical Animation component, which will return the goal transform that a particular body is trying to get to.
+
+* New:Control rig Sequences can now be exported to Anim Sequences.
+
+* New:Preview Scene settings have been exposed in the existing settings tab rather than in a hidden menu of the viewport.
+
+* New:Support for "Curve Source" nodes to find source components on other Actors.It now searches for the property name rather than the component name.
+
+* New:Added "Set Preview Mesh" to the toolbar for all animation related Editors.
+
+* New:Updated Alembic Third-party libraries to the latest versions.
+
+* New:Added functionality to try and match in-engine Material asset names to FaceSet names found inside of an Alembic cache to automatically assign the correct Materials.
+
+* New:The Alembic Importer now supports Vertex Color data.
+
+* New:Added functionality to inform about changes to source data when reimporting your animation data from FBX.It now checks for the following:
+
+ * Whether or not the sequence length has changed.
+
+ * Whether or not previously-imported curves exist in the source data.
+
+* Bugfix:Fixed a crash when trying to implement a function in a child Anim Blueprint.
+
+* Bugfix:Fixed a crash when debugging a null Animation Sequence.
+
+* Bugfix:Trying to access a skinned vertex position on a mesh when using Master Pose component no longer crashes.
+
+* Bugfix:Attempting to bind to Skeletal Mesh with Anim Blueprint already set no longer crashes.
+
+* Bugfix:Fixed a crash and effector selection issue for two-bone IK.
+
+* Bugfix:Right-clicking the empty space in the asset shortcut drop-down no longer crashes.
+
+* Bugfix:Removed an ensure (warning) by reverting to default unit vectors if zero-sized lookat/lookup vectors are specified for a "Look At" node.
+
+* Bugfix:Removed a crash when clearing an animation of a 1D blendspace sample.
+
+* Bugfix:Crash fix to import code for Alembic Caches with the HDF5 backend.
+
+* Bugfix:Fixed an issue when adjusting curves in the Anim Curves tab using a slider when they are not currently selected.
+
+* Bugfix:Fixed an issue with Update Rate Optimization update rate being too high.Now we use int, so if you have a high update rate it still can go until it wraps around.
+
+* Bugfix:Child Anim Blueprints can now be retargeted.
+
+* Bugfix:Fixed flipping transforms when mirrored.
+
+* Bugfix:Post Process instances are now appropriately updated, even when the main Anim Instance is not using parallel update.
+
+* Bugfix:Fixed an issue where running the Editor in a different culture could break pins on nodes that have optional arrays of pins (ie. Animation Graph nodes like Blend By Layer).
+
+* Bugfix:Fixed an issue with Anim Class being set by name, causing duplicate-named Anim Blueprints to be incorrectly resolved.
+
+* Bugfix:Fixed an issue where "r.SkeletalMeshLODBias" was affecting meshes in the Animation Editor viewports.
+
+* Bugfix:Fixed an issue with Animation Preview Scene keyboard binding (I and O hotkeys now hide and show scene elements regardless of tab opened state).
+
+* Bugfix:Skinned Mesh LOD now updates in the editor under various physics-related circumstances.
+
+* Bugfix:Fixed an issue with foot placement IK doing line traces on worker threads.
+
+* Bugfix:Fixed an issue with Anim Blueprints that contain State Machines having blank palettes.
+
+* Bugfix:Renaming curves in animations now saves properly.
+
+* Bugfix:Fixed an issue with two-bone IK flickering around full extension when stretch is enabled.
+
+* Bugfix:Animation now works as expected for dynamically-bound wheeled-vehicle anim instances.
+
+* Bugfix:Fixed an issue where you could not undo changes from Alembic Import settings.
+
+* Bugfix:Fixed timing issues occurring while playing back Alembic caches.
+
+* Bugfix:Fixed an issue with incorrect behavior occurring when placing more than three samples in a straight line for a 2D blendspace.
+
+* Bugfix:Dropping a new Animation asset on an existing Sequence Player node can now be undone.
+
+* Bugfix:Breaking transition node connections within Animation State Machines can now be undone.
+
+* Bugfix:Fixed an issue to ensure that changes to animation sync markers are propagated to currently open blendspace assets.
+
+* Bugfix:Skeletal Mesh components tick properly when paused if "Tick Event When Paused" is enabled.
+
+* Bugfix:Fixed Skeletal Mesh Merge duplicating Skeletal sockets.
+
+* Enabled snapping for translation in the Animation viewports.
+
+* Removed force inline from Virtual Compression functions.
+
+* Removed the AnimGraph module from the Graph Editor as a dependency.
+
+* Bone Reference now has improved performance by caching compact post bone index.
+
+* Graph files have been moved to Animation Blueprint Editor.
+
+* We have stopped saving raw curve data into animations on cook in order to save memory and disk space.
+
+* Ticks now appear properly on Anim Sequence scrub bar.
+
+* Persona now depends publicly on Skeletal Editor.
+
+* Montages are now correctly initialized when created.They can be used straight away without first opening them in the Montage Editor.
+
+* We now propagate thread safety flags to child Animation Blueprints.
+
+* The Anim Notify Blueprints now start with a "received notify" event node.
+
+* Made single-node animation instances request clothing simulation resets when their animation is changed.This is because the new animation could be very different from the outgoing animation, and this might cause pops.
+
+* Refactored "Evaluate Bone Transforms" to prevent usage of Skeletal Mesh component.
+
+ * Deprecated "Evaluate Bone Transforms" in favor of new “'EvaluateSkeletalControl_AnyThreadâ€.
+
+ * Deprecated Skeletal Mesh component argument to "Convert CS Transform To Bone Space" and “​Convert Bone Space Transform To CSâ€.Now they just take a transform.
+
+* When selecting bones that are non-required, we now do not render gizmos or text labels.
+
+* Skeletal selection does not lag behind choice made in the viewport (i.e. when showing bone weights).
+
+* Added accessor and modifier functions for "Start Time Offset" value in Geometry Cache components.
+
+##### Animation Assets
+
+* New:You can now choose a preview slot in the Montage Editor.
+
+* Bugfix:Fixed a crash when reimporting animations with additive transform tracks.
+
+* Bugfix:Fixed an issue with additive Pose Asset preview being applied twice.
+
+* Bugfix:Compressed animation data is now included in Memory Stats for Animation Sequences.
+
+* Bugfix:Fixed an issue where blendspace interpolation settings would not have a direct effect and required reopening the blendspace asset.
+
+##### Animation Blueprint
+
+* New:Added "Spline IK" node.
+
+* New:Added a property to Blendspace Player nodes that enables users to choose whether the play time is reset when the blendspace changes.
+
+* New:Animation Blueprints can now specify a Preview Mesh.
+
+* New:Added the "Look At" node so you can use “Look at Location†on a socket or joint, and improved the Visualizer.
+
+* Bugfix:Fixed a crash when "Pose Asset" contains a bone that is not in the mesh.
+
+* Bugfix:Fixed an assertion that could occur when selecting certain items in the Animation Blueprint editor.
+
+* Bugfix:Fixed a crash when diffing State Machine Transition graphs.
+
+* Bugfix:Fixed an issue with "Pose Handler" using mesh bone index and not compact bone index for setting up “Bone Blend Weights†array.
+
+* Bugfix:Fixed an issue with incorrect errors on compiling Aim Offset nodes with exposed blendspace pins.
+
+* Bugfix.Fixed an issue with additive nodes breaking the current pose when they have no additive animation attached.
+
+* Bugfix:Fixed issues pertaining to extra references to Animation Blueprints on Skeletal Mesh components.
+
+* Layered Bone Blend node has been optimized so that it will cache mask weights in compile time.
+
+##### Import/Export
+
+* Bugfix:Fixed a crash when reimporting a Skeletal Mesh that has Virtual Bones.
+
+##### Skeletal Mesh
+
+* Bugfix:Fixed a crash when using re-import button in the Skeletal Mesh Editor.
+
+* Bugfix:Fixed a crash related to Skeletal Mesh resources not being initialised before component is registered.
+
+* Bugfix:Fixed a serialization mismatch in Skeletal Mesh source buffers.
+
+* When importing a Skeletal Mesh, "Activate Bone Indices" now always includes parents even if it's not skinned.
+
+#### Tools
+
+* Bugfix:Fixed a crash in Persona when rotating a bone due to single bone controllers not being initialized correctly.
+
+* Bugfix:Fixed an ensure when deselecting bones in Anim Blueprint editor.
+
+* Bugfix:Fixed an issue where mesh-customized sockets were not showing up by default in 'Active' socket filter mode.
+
+* Bugfix:Fixed issues related to bone removal in Skeletal Mesh LODs.
+
+ * Issue where the "Apply" button would not show after adding bone names.
+
+ * Issue where previously removed bones would not be restored.
+
+ * Ensure that the Skeletal Tree is updated when bones are removed or restored.
+
+* Double-clicking animation assets in Content Browser will now try to re-use existing Animation Editor windows, rather than opening a new one every time.
+
+* Animation picker on Skeletal Mesh component is now disabled rather than hidden when no Skeletal Mesh is assigned.
+
+* The Soundwave-internal curve tables have been moved to the 'Advanced' rollout.
+
+#### Audio
+
+* New:Vorbis-encoded audio files can now be streamed.
+
+* New:Audio streaming is now supported on Android, iOS, and XBox One.
+
+* Bugfix:Fixed a shutdown crash when there is a pending async audio occlusion trace.
+
+* Bugfix:Fixed a crash when opening a Media Sound Wave.
+
+* Bugfix:'Sound Player' nodes will more efficiently load the referenced sound asset unless a 'Sound Quality' node is being used to select which 'Sound Player' nodes to consider, in which case, the current asset reference evaluation will continue to be used.
+
+* Bugfix:We only queue subtitles once per-wave instances playback.
+
+#### Automation
+
+* New:Added support for -DeveloperReportOutputPath and -DeveloperReportUrl commands to permit local runs of the Automation Tool to generate reports on the report server and launch the browser to view them.
+
+* 'ResavePackages' commandlet now supports lighting in separate packages when using it to rebuild lighting.
+
+* Option to disable taking screenshots has been disabled.Screenshot comparison is an integral part of the testing so disabling them is no longer allowed.
+
+* The system now waits for the asset registry to finish loading assets before running tests.
+
+#### Blueprints
+
+* New:Added the 'Remove Gameplay Tag' function to the gameplay tag function library.
+
+* New:Blueprints containing a String and Text variables can now be marked as multi-line, which enables values to contain newlines when pressing Shift + Enter while editing them.
+
+* New:Blueprint Variables can now be marked as 'Read-Only' in Blueprint Editor, which prevents them from being set in Blueprints.This behaves the same as using 'BlueprintReadOnly' instead of 'BlueprintReadWrite' on a C++ UPROPERTY() declaration.
+
+* New:'Get Default Locale' has been exposed to Blueprints.
+
+* Macro instances that contain latent actions will now show an overlay clock icon like other latent nodes, which makes them easier to spot and understand that they impact execution flow
+
+ (w:720 h:180 convert:false)
+
+* New:Improved comments in Blueprints.
+
+ * Comment node text now wraps while the comment is being edited.
+
+ * Reduced cases where the title of a comment node would clip at the end.
+
+ * Editing the comment for a regular node using the right click menu will now show changes immediately, rather than waiting until the node was moused over again.
+
+* New:Added the Save and Find in Content Browser buttons to the Level Script Blueprint editor (they will save/show the map package that contains the Level Script).
+
+* New:Added the ability to search for delegate nodes using the function name that they are bound to.
+
+* New:'Array Get' node.
+
+ * Can toggle between returning a reference or copy.
+
+ * Using a reference solves a longstanding issue with arrays of structs not being able to easily make changes to the items in the array.
+
+* New:'Get Class Defaults' node has been extended to include output pin exceptions for Set & Map variable defaults.Like array types, the returned value is now a copy of the default value rather than a reference to it.This is done in order to avoid an accidental mutation of the Blueprint class default object.
+
+* New:Function inputs are now exposed as variable "Get" nodes via the right-click context menu in a Blueprint function graph context.
+
+ * To use:In a Blueprint Function graph, right-click to access the context menu.Any input parameters will be listed as additional "Get" actions.
+
+ * In this way, input parameters can be accessed like local variables from anywhere in the function graph; in other words, it's no longer necessary to drag wires all the way back to the Function Entry node in order to access these values.
+
+* New:We now support "value-based" Bitfield enum type associations in the editor for a UPROPERTY marked as 'Bitmask' with a 'BitmaskEnum' association.
+
+ * Prior to this release, Bitfield properties did not work with associated enum types in which the enum values were explicitly set to a bitmask value (e.g. 0x80).That is, the value was assumed to always be set to the index of the bit that the flag should set in the editor ("index-based" mode).
+
+ * To switch the associate to the new "value-based" mode, include an additional metadata key in the UENUM() declaration.Example:UENUM(Meta = (Bitmask, *UseEnumValuesAsMaskValuesInEditor="true"*)).
+
+* New:Added a whitelist mechanism for handling native noexport types that can support direct field access in nativized Blueprint code.
+
+* Bugfix:Fixed a crash in Blueprint Editor when adding an input parameter to a Custom Event node after deleting a Function Graph containing a Create Event node.
+
+* Bugfix:Fixed a crash when creating a new Blueprint class from one or more selected Actors in which the root component is not Blueprint-spawnable.
+
+* Bugfix:Fixed a crash on load in nativized EDL-enabled builds with non-nativized child Blueprint class assets.
+
+* Bugfix:Fixed a runtime Blueprint VM crash upon removing an element from set after consecutive add/remove iterations.
+
+* Bugfix:Fixed a crash that could occur when splitting a struct pin on a collapsed graph node.
+
+* Bugfix:Fixed a crash when trying to use non-supported types as Blueprint map keys.
+
+* Bugfix:Fixed a crash that could occur when changing a Map's value type string to vector.Map variables are properly cleared when value type is changed to an incompatible type.
+
+* Bugfix:Fixed a crash when compiling a Blueprint that contains a split pin in a collapsed graph.
+
+* Bugfix:Fixed a crash loading Blueprints that contain a Blueprint node that no longer exists in code.
+
+* Bugfix:Fixed a crash when using the Straighten Connection shortcut key (and some other related issues with actions done after the Context Menu is closed).
+
+* Bugfix:Fixed a crash when opening a Blueprint with a parent class that no longer exists.
+
+* Bugfix:Fixed a crash with the merge tool when the source control provide is SVN and there are gaps in the revision history.(This may still not work correctly, but it won't crash.The full fix will be covered with UE-43603)
+
+* Bugfix:Fixed a crash when attempting to name component with a very long name.
+
+* Bugfix:Fixed a crash that could happen when running Cook On The Fly server with nested struct assets.
+
+* Bugfix:Fixed a crash that would happen when a level in Blueprint was auto-saved.
+
+* Bugfix:Fixed an assertion that could occur when compiling a Blueprint with certain nodes (Select, Math Expressions, etc.)
+
+* Bugfix:Fixed a crash that could occur when reparenting a component Blueprint.
+
+* Bugfix:Fixed a crash that could happen when setting maps and sets of strings and certain structs.
+
+* Bugfix:Fixed a crash that would occur when passing a self node through a CustomEvent ref parameter.
+
+* Bugfix:Fixed a crash that could occur when adding a new Blueprint function and immediately undoing.
+
+* Bugfix:Fixed a crash that could occur after renaming the category of an implemented interface function inherited from a native C++ parent class in the 'My Blueprint' panel.
+
+* Bugfix:Fixed a crash that could occur when editing a local curve variable's default value in a Blueprint graph.
+
+* Bugfix:Fixed an ensure misfire in PIE exit when using Play as Listen Server Mode.
+
+* Bugfix:Fixed an infinite loop case in the Math Expression node.
+
+* Bugfix:Fixed an issue where misaligned memory access of noexport struct properties leading to incorrectly initialized values in a nativized cooked build.
+
+* Bugfix:Fixed an issue with broken collision shapes at runtime when cooking with the optimized Blueprint component instancing data feature turned on.
+
+* Bugfix:Fixed an issue with a Bitmask Enum type validation failure when serializing a Make Bitmask Literal node
+
+* Bugfix:Fixed an issue with log spam when compiling a Blueprint function with a local TSet or TMap variable.
+
+* Bugfix:Fixed an issue with broken pin wires after expanding a duplicated collapsed graph node.
+
+* Bugfix:Fixed an issue with invalid custom Enum type selection on member fields in the User-Defined Structure editor after a reload.
+
+* Bugfix:Improved context menu "whole world" algorithm to proper take into consideration localisation when searching for terms.
+
+* Bugfix:Fixed an issue where renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded.
+
+* Bugfix:Fixed an issue with broken graph node pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself.
+
+* Bugfix:Fixed an inability to save after choosing a Level Script Blueprint class as the default value for a class input pin in a non-Level Script Blueprint class function graph.
+
+* Bugfix:Fixed an issue where Blueprints containing a 'Key Get Display Name' node will no longer be marked dirty when opening the Blueprint.
+
+* Bugfix:Fixed an issue where the user defined variable tooltip was not showing up when hovering over Get/Set nodes for local variables.
+
+* Bugfix:Fixed an issue with old versions of Blueprints being diffed accidentally showing up in Find-in-Blueprints search results.
+
+* Bugfix:Fixed some issue in Blueprint Diffing where properties of nodes edited in a Details panel would not show up as differences (this impacted Animation Graph nodes most heavily).
+
+* Bugfix:Fixed an issue in Blueprint nativization that could cause bad interface function calls to be generated.
+
+* Bugfix:Fixed an issue that could cause stale Blueprint instances in a hidden sub-level to spam a runtime error.
+
+* Bugfix:Fixed an issue that could cause a Blueprint 'mismatch' error when using 'Set' and 'Map' node.
+
+* Bugfix:Fixed an issue that could cause struct asset defaults to be wiped on editor reload.
+
+* Bugfix:Fixed an issue that could cause a packaging error when running with Blueprint nativization and no Blueprints were nativized.
+
+* Bugfix:Fixed an issue that removed the ability to set Blueprint object variables as 'config' variables, as you cannot set a object reference from a config.
+
+* Bugfix:Fixed an issue with reroute nodes so that a new output connection will propagate that type through to the node's inputs.
+
+* Bugfix:Fixed an issue so that 'Get Data Table Row' nodes are now compatible with DataTable variables.
+
+* Bugfix:Fixed an issue that could cause material parameter setting in a Blueprint construction script to fail.
+
+* Bugfix:Fixed an issue that could cause overlap events to fire multiple times in PIE.
+
+* Bugfix:Fixed an issue that would generate the nativized Blueprint plugin even if no Blueprint files were nativized.
+
+* Bugfix:Fixed an issue that would cause certain components to be orphaned and hidden from the component hierarchy.
+
+* Bugfix:Fixed an issue that could cause a level Blueprint's bound delegate nodes to not trigger.
+
+* Bugfix:Fixed an issue in Blueprint nativization that would cause cyclical logic (loops, etc.) to not iterate past the first iteration.
+
+* Bugfix:Fixed an issue in Blueprint nativization that could cause Blueprint subclasses to ignore their overridden model and default to their parent's.
+
+* Bugfix:Fixed an issue where non-nativized Blueprints were getting dropped from the cooked asset registry file when running with Blueprint nativization.
+
+* Bugfix:Fixed an issue where there would be a nativized Blueprint asset build error when there are no native code dependencies.
+
+* Bugfix:Fixed an issue with incorrect Blueprint graph pin value display names for user-defined enum types.
+
+* Bugfix:Fixed the variable 'config' setting tooltip to report the correct config file for the user to use.
+
+* Bugfix:Fixed an issue that could cause Blueprint variables set from a config to have their values improperly overwritten.
+
+* Bugfix:Fixed several issues with Switch Blueprint nodes not keeping their node and property UI in sync.
+
+* Bugfix:Fixed several issues where changing pawn/hud/state class from the Level editor toolbar would not work properly until the project was reloaded.
+
+* Bugfix:Fixed a stale class reference in interface properties that reference a Blueprint defined interface that has been recompiled.
+
+* Bugfix:Fixed an issue where 'Get Values' and 'Get Keys' nodes were not providing correct results for Map variables that have had values removed.
+
+* Bugfix:Fixed an issue where Blueprint functions that have all their return nodes pruned (ie. are not connected to anything) now have the correct output pins at call sites.
+
+* Bugfix:Fixed an issue where 'Movie Scene Sequence' and related code was not working when Blueprints were nativized.
+
+* Bugfix:Fixed an issue in nativized packaged builds that would cause default values to be lost.
+
+* Bugfix:Fixed 'Enum As Byte' related warnings in nativized packaged builds.'Enum As Byte' is no longer used when nativizing Blueprints.
+
+* Bugfix:Fixed issues with Blueprint nativization where it didn't correctly include headers necessary for owners of subobjects, and instances where all modules needed by the generated code weren't being founds.This fixes one cause of "Cannot open include file" errors when packaging with Blueprint Nativization enabled.
+
+* Nodes in the blueprint editor again use their custom cursor (grab hand when hovering over a node and crosshairs when hovering over pins).
+
+* 'Logarithm' node added to the Blueprint Math library.
+
+* 'Set' pins on 'Intersection', 'Union' and 'Difference' nodes now infer their values uniformly.
+
+* Out of date Class Default Objects are no longer duplicated when compiling a Blueprint, reducing blueprints compilation time
+
+* Successive calls to Set Intersect, Union or Difference now provide correct results, previously the Set was not cleared before calculating the new result
+
+* 'Trace By Profile' collision functions have been exposed to Blueprints.
+
+* Nativize code is now more precise about dependencies, reducing the resulting executable size and compiler load.
+
+* Blueprints that override an inheritable component are no longer 'data only'.Blueprints with overridden components but no extra functions now load without losing data.
+
+* Blueprints that extend types that implement 'Needs Load For Server' or 'Needs Load For Client' now honor those functions, meaning they will not be cooked for targets that their type wants to be excluded from.
+
+* Delegates in nativized packaged builds correctly prevent double registration.
+
+* Blueprints used as a child actor class will no longer be marked dirty when compiling the class that references them.
+
+* When duplicating a Blueprint component, that component will now be a sibling of the duplicated node, not a child of it unless it is the root node being duplicated.
+
+* Duplicated root nodes will have their scale set to (1,1,1) to avoid applying the scale multiplier twice.
+
+* Blueprintable Components are no longer considered experimental, they have been enabled by default for several versions.
+
+* The ticking behavior of latent actions in components has been changed to match how they behave in actors.When the component ticks, the latent actions will now be processed at the same time, rather than happening later in the frame when latent actions for non-ticking actors and components are processed.This does change behavior, so there is a console variable (t.TickComponentLatentActionsWithTheComponent) that can be used to revert to the older behavior until affected component Blueprints that depended on the old ordering behavior can be fixed up.The cvar should be treated as deprecated; it will be removed in a future release.
+
+* Updated Blueprint nativization so that it generates source files compatible with 'include what you use' (IWYU).
+
+* Moved nativized Blueprint plugin generation to the project's 'Intermediate\Plugins' folder.
+
+* Removed make/break nodes from the Blueprint menu for structs that aren't marked as a 'BlueprintType'.
+
+* Updated marquee selection in graph editors.Ctrl dragging now inverts nodes' selection state, instead of only deselecting them (holding alt is now for pure deselection).
+
+* The Actor Details view will now refresh property mappings for the current Actor instances selection after a bytecode-only recompile of its Blueprint class as a dependency during reinstancing.
+
+* Child Blueprint class assets are now marked as dirty if its parent Blueprint class incurs a structural change.This alerts the user that updates to the Child Blueprint would need to be saved on exit.
+
+* We now emit C++ ctor initialization code for nested default subobjects when nativizing a Blueprint class at cook time.
+
+* Instanced Static Mesh transform edits are now reflected in the Blueprint editor's preview scene.
+
+* The editor will now raise an error at cook time after an attempt to nativize a Blueprint class that also implements a native C++ interface with a pure virtual function declaration that is not also marked up with UFUNCTION.This is because we cannot nativize a Blueprint class that does not also have an implementation of a pure virtual function inherited from the interface.
+
+* C++ interfaces with one or more pure virtual function declarations not also tagged with UFUNCTION are now excluded from the list of available "Implementable" interfaces in the Blueprint class editor.
+
+* Non-nativized child Blueprint classes will now properly override a nativized parent Blueprint class's component defaults at runtime in a nativized cooked build.
+
+* We will now implicitly nativize any child Blueprint class that overrides one or more BlueprintCallable functions inherited from a parent Blueprint class that is also nativized.
+
+* The Blueprint diff tool now reports when a component changes its type between revisions
+
+* Blueprints are now only dirtied if edited properties are from objects in the Blueprint's package.
+
+#### Core
+
+* New:Support added for "double" and 'fname' stat types in UFE stat export to CSV.
+
+* New:Pak files can now have their index encrypted with AES, preventing them from being opened by unrealpak.
+
+ * An AES key must be provided in the project Encryption.ini, and then index encryption can be enabled in the project packaging settings in the editor.
+
+ [REGION:note]
+ When either pak index encryption or signing are enabled in the Project Settings, pak ini encryption must also be enabled in order to avoid a potential security issue.All of these settings can be found in the Packaging section of the Project Settings dialog in the editor.
+ [/REGION]
+
+* New:Added "Get Component For Axis" and “Set Component For Axis†to FVector and FRotator.
+
+* New:Added support for -iterate for content plugins that require path remapping during cook/packaging.
+
+* New:Added a "CookedOnly" plugin type, for plugins meant only to be loaded in cooked games (in support of Blueprint nativization).
+
+* New:Added a Json Object Converter to add support for saving and loading TMap and TSet UProperties.
+
+* New:Absolute paths are now allowed in -UserDir= argument.
+
+* New:Added ability for games to use command line parameters for map overriding in shipping builds if their target.cs file defines UE_ALLOW_MAP_OVERRIDE_IN_SHIPPING macro to 1.
+
+* New:Added support for instanced elements in TMap and TSet properties being copied during "Copy Properties For Unrelated Objects."
+
+ * This fixes an issue where instanced fields could lose data during recompilation of a Blueprint.
+
+* New:Added a new method Platform Misc "Get OS Version" that returns a string representing the raw OS version info.
+
+* New:All HTTP implementations now use a consistent User-Agent string (specified via the overridable function Generic Platform Http "Get Default User Agent" method).
+
+ * Added a Platform and OSVersion string to the default value (platform=FPlatformMisc::IniPlatformName() and osver=FPlatformMisc::GetOSVersion()).
+
+* Bugfix:Fixed a crash with startup in the runtime asset manager when the on-disc cache already contains more data than the system is configured to use.
+
+* Bugfix:Fixed a crash in 'Chunk Cache Worker' function constructor.
+
+* Bugfix:Fixed a crash when launching "Play In Editor" session caused by missing audio data if its DDC data was not present and the audio was streamed in.
+
+* Bugfix:Fixed a crash when UObject can be added to GC cluster only if all of its Outers can also be added to it.
+
+* Bugfix:Fixed an assert with LocalExportIndex.IsNull.Now the Event Driven Loader code will properly disambiguate imports with the same name and the same outer name.
+
+* Bugfix:Fixed a crash when Hot Reloading caused by reinstancing UEngine objects.
+
+* Bugfix:Fixed an occasional crash during Hot Reload CDO reinstancing that was caused by a redundant insertion into TMap invalidating an existing reference into that TMap.
+
+* Bugfix:Fixed a crash when importing a Blueprint which contains a non-empty TMap with an enum class key.
+
+* Bugfix:Fixed a crash when Hot Reloading a project which contains a user-defined struct.
+
+* when hot reloading a project which contains a user-defined struct.
+
+* Bugfix:Fixed a crash when deserializing a TMap property item with instanced elements, where the CDO contains default element values for that property.
+
+* Bugfix:Fixed the use of many printf non-literal formatting strings, as these are potential security issues.
+
+* Bugfix:Fixed an issue with incorrect error code being returned from UnrealHeaderTool when -WarningsAsErrors and -Verbose are specified code.
+
+* Bugfix:Fixed an issue with the error code returned by UnrealHeaderTool when an error occurs during preparsing of headers.
+
+* Bugfix:Fixed a persistent stat metadata warning generated during PIE..
+
+* Bugfix:Fixed an issue with FMonitoredProcess to prevent infinite loop in -nothreading mode.
+
+* Bugfix:Fixed an issue for runtime asset cache not invalidating files with an outdated version number.
+
+* Bugfix:Fixed stats warnings because each new slate loading screen thread has the same stat name, but is potentially assigned to a different thread.
+
+* Bugfix:Fixed an issue with CSV parser missing empty cells at the end of the string.
+
+* Bugfix:Fixed an issue with external plugin cooking and deployment by remapping plugin directories upon cook & deployment Tested directory structures:
+
+ * D:\SomePluginDir
+
+ * D:\UE4\AnotherPluginDir
+
+ * D:\UE4\Engine\Plugins
+
+ * D:\UE4\MyProject\Plugins
+
+* Bugfix:Fixed a memory leak in MallocBinned which affects the mobile platforms (Android, iOS).
+
+* Bugfix:Fixed a typo in comments for LODColoration in BaseEngine.ini.
+
+* Bugfix:Fixed the Log message in "Exclusive Load Package Time Tracker."
+
+* Bugfix:Fixed an issue where "log.timestamp" command would not work because it was incorrectly handled by "log" console command.
+
+* Bugfix:Fixed an issue where the logging system could hang when running out of disk space while flushing log and fixed unexpected concurrency assert when flushing the log buffer to disk.
+
+* Bugfix:Fixed a deadlock when flushing log file while it's already being flushed by a flush timer on the async log writer thread.
+
+* Bugfix:Fixed a memory leak when running with -nullrhi on the commandline in cooked games caused by shader resources not being destroyed.
+
+* Bugfix:Fixed an issue to make sure the engine is properly cleaned up on UnrealHeaderTool early exit to prevent UnrealHeaderTool hangs.
+
+* Bugfix:Fixed an issue to make sure that streamed-in SoundWaves get added to Garbage Collection clusters.
+
+* Removed dependency preloading system from sync and async loading paths.It has been superseded by the new event driven loading system.
+
+* Removed remaining references to AES_KEY, instead using the encryption key delegates to access the key where needed.
+
+* Refactored encryption and signing key access in unrealpak to make it easier to use.
+
+* Make content projects generate a stub executable when encryption or signing keys are specified so that keys can be embedded correctly.
+
+* Separate pak cache granularity from pak signing chunk size in the EDL loader.
+
+* Increase "Serial Size" and “Serial Offset†in FObjectExport to 64bits, to handle larger file sizes.
+
+* Added some validation of the class index in exportmap entries.
+
+* Added missing support for compiling plugins external to Engine/Plugins & Game/Plugins.
+
+* Disabled the 'HeartBeat' function on platforms that don't actually want to use the HeartbeatThread.
+
+* 'None' is now going to be properly considered by the engine as an invalid filename.
+
+* The editor will now collect garbage after a map is loaded to make sure any stale components or other objects that are no longer needed are destroyed.This is to make sure that these components are not resurrected by another editor operations like duplication.
+
+* Made sure the async log writer flushes the log archive even if there's no serialization requests to prevent situations where some of the recent requests haven't been flushed to disk
+
+* Reduced the code size for the generated Static Register Natives functions.
+
+* Disabled the garbage collector when recompiling child Blueprints, as is already done for the parent Blueprint.
+
+* Simplified Unreal Header Tool's code generation logic.
+
+* Implemented Lex "To Sanitized String" for double.
+
+* The function Local Player Context "Is Valid" now also checks that the player controller has a player set.
+
+#### Editor and Tools
+
+* New:UnrealGameSync now includes a workspace-specific file filter, separately to the global file filter.
+
+* New:UnrealGameSync now supports pop-up notification for build failures on content changes.
+
+ * To mark a badge as applicable to users submitting content changes, add +ContentBadges=Name to the [Notifications] section of the project specific configuration file at /Build/UnrealGameSync.ini.
+
+* New:UnrealGameSync now allows a project to specify filters for the streams that should be displayed for fast-switching to.
+
+ * The "Quick Select Stream List" setting in the “Options†section of the Project Settings references a depot path containing a list of strings used to filter the stream list.An option is shown to switch back to showing all available streams, if desired.
+
+* New:Added support for in memory packages.Helps distinguish between packages which can and can't be cooked.
+
+* New:Added a Blueprint function to convert a Render Texture to Texture2d.This is only available for use in the Editor.
+
+* New:Custom Depth can now be enabled for Foliage.
+
+* New:You can now color-code all of the windows in the editor in order to visually distinguish them when working across multiple branches or projects
+
+ * You can adjust the 'Editor Window Background Color' for a subtle effect, as the default background is already a pretty dark grey:
+
+ (w:929 h:416 convert:false)
+
+ * Or you can edit the tint in the two brushes (which sets the texture to a white default one) to get a very brazen effect:
+
+ (w:929 h:416 convert:false)
+
+* New:Added Data Table export/import support for TMap and TSet.
+
+* New:Updated the Windows platform to use the newer Vista+ style browser dialogs, rather than the older XP style dialogs.
+
+* New:You can now empty the text value within an FText property or pin.
+
+* New:Added support for .ini-driven classes to use a specific platform's config hierarchy, so that the editor on a desktop platform can read .ini settings from other platforms .ini files.
+
+ * This will allow for NDA'd platforms to keep their ini settings in protected files, but still be editable by the editor.
+
+ * Moved project settings for console platforms over
+
+ * See UObject::GetConfigOverridePlatform()
+
+* New:Scene importing now allows for plugins to expose new scene import factory types.
+
+* New:Overhauled "Call In Editor" support and promoted it so it can be used on functions in any class, not just Blueprints derived from AActor:
+
+ * "Call In Editor" can now be used on native UFUNCTION() declarations (e.g., UFUNCTION(Category=CoolCommands, CallInEditor)).
+
+ * Blueprint declared functions can also be marked as CallInEditor (in addition to custom events), which allows you to set the category and tooltip for the buttons.
+
+ * Now shows each function as a separate button, placed in the category associated with the function.
+
+ * Removed the duplicate copies of properties placed in the Blutility section.
+
+ * Prevented operating on functions that have parameters or return values, which could crash before.
+
+ * Added a scoped transaction around "Call In Editor" execution so changes made can be undone.
+
+ * The button strip entry is now searchable by function name or tooltip.
+
+* New:Added a new Details view option:"Show Hidden Properties while Playing"
+
+ * Enabling this allows you to see every property on selected objects that belong to a simulating world, even non-visible and non-editable properties.
+
+ * This feature is very useful for inspection and debugging, because you can see all of the internals of your Actors and Objects.
+
+ * Be careful when changing values for properties that are not really intended to be changed at runtime.You could introduce instability or even corrupt data.
+
+ * Note that this setting is saved for your entire project.
+
+* New:Sequencer additions and updates:
+
+ * Tracks can now be prioritized based on their subscene hierarchical bias value.Higher bias values take precedence.
+
+ * Fixed particle system restore state so that it gets the proper initial active state of the particle.
+
+ * Added a generic past menu for Master (root) tracks.
+
+ * Changed the time snapping interval in the toolbar UI so that it no longer additionally updates the Sequencer setting.The setting is only used to initialize the time snapping interval of the Level Sequence.
+
+ * Added translate keys with Ctrl and Left-Right arrows.
+
+ * Added Level Sequence Actor button in the Details panel to open Sequencer.
+
+ * Duplicate shot now puts the duplicate on the next available row, keeping the start/end times the same.
+
+* New:You can now isolate/select all sections using a specific Material slot.
+
+* New:The FBX importer updates:
+
+ * Now imports collision models under the FBX LOD Group.
+
+ * Now applies the transform from FBX options only one time for the whole import.
+
+ * When importing an FBX file from Blender, the importer now removes the root node name "armature."
+
+ * No longer removes the socket created in UE4 Editor when using reimport.If affects only imported socket.
+
+* New:Added some LOD Setting options to the FBX Import Options window.Users can now specify the following Static Mesh LOD Settings Options:
+
+ * Auto Compute LOD Distance
+
+ * Minimum LOD Number
+
+ * LOD number
+
+* New:The FBX Importer now fills two more Material Inputs (Texture only) from the FBX Material:
+
+ * Specular Factor imported as "Roughness"
+
+ * Shininess imported as "Metallic"
+
+* New:The FBX exporter can now export with the Front X-Axis.The new option is under the Editor Preferences settings.
+
+* New:TMaps now support editing structs as keys from within the Details panel.
+
+* New:The Data Table Row Editor now contains a Reset to Default control.
+
+* New:Properties added to the header of a Details panel group (ie. via IDetailGroup::HeaderProperty()) now have copy/paste actions exposed in the Context Menu.
+
+* New:Added the possibility in Slate to reset property group to their default value.
+
+* New:Added the possibility to perform the following actions in Save/Load Level dialog:
+
+ * Rename
+
+ * Delete
+
+ * Create a New Folder
+
+ * Show in Explorer
+
+ * Show the Size Map tool
+
+* Bugfix:Fixed a crash when selecting components from an Actor's component tree and then undoing
+
+* Bugfix:Fixed a crash when attempting to open multiple cooked assets at once in the editor.
+
+* Bugfix:Fixed a crash when pressing PIE button several times before PIE session begins.
+
+* Bugfix:Fixed a crash that could occur during seamless travel while playing in a Play-in-Editor session with the "Use single process" option unchecked.
+
+* Bugfix:Fixed a crash while using the "Delete" button inside of the HLOD outliner while having a Proxy mesh opened in the Static Mesh Editor.
+
+* Bugfix:Fixed a crash when using import into level with .obj file.
+
+* Bugfix:Fixed a crash when dragging a re-import scene and there is new asset created.
+
+* Bugfix:Fixed a crash when creating too many LODs when importing a Static Mesh.
+
+* Bugfix:Fixed a crash with High Resolution Screenshot Tool that could happen when the Screen Percentage is set to a value other than 100%.
+
+* Bugfix:Fixed an issue with Device Output Log showing partial lines sometimes.
+
+* Bugfix:Fixed an issue where array properties would revert to the default values when duplicating an Actor.
+
+* Bugfix:Fixed an issue with Details panels becoming unusable if "Show Only Modified Properties" is enabled and there are no modified properties.
+
+* Bugfix:Fixed an issue so that thumbnails for Material assets now respect the "used particle system sprites flag" and show a quad instead of a sphere by default.
+
+* Bugfix:Fixed an issue for outdated error message instructions for how to fix being unable to launch on an iOS device.
+
+* Bugfix:Fixed an issue with "Save Current As" option not saving the current level and only saving the Persistent Level and then reloading everything thus causing work to be lost if editing a sub-level.
+
+* Bugfix:Fixed an issue with Material Instances being marked dirty when opening.
+
+* Bugfix:Fixed an issue with TAssetSubClassOf properties being reset on undo.
+
+* Bugfix:Fixed an issue that could cause the wrong Blueprint instance to be duplicated, or copy/pasted.
+
+* Bugfix:Fixed an issue with the Focus action in the Static Mesh Editor viewport.
+
+* Bugfix:Fixed an issue with Color Customization so that curve color names are "R", "G", "B", "A" instead of None.
+
+* Bugfix:Fixed an issue with user's setting for Texture Mip LOD size being incorrectly clamped.
+
+* Bugfix:Fixed an issue where lighting rig rotations were not set / saved correctly for Preview Scene Profiles.
+
+* Bugfix:Fixed an issue where auto-exposure values from the Preview Scene Profiles were not correctly applied
+
+* Bugfix:Fixed an issue where HLOD's "Override Screen Size" would not propagate on a LOD Actor directly.
+
+* Bugfix:Fixed an issue where the Material Slot assignment wasn't correctly restored on reimport.
+
+* Bugfix:Fixed an issue to prevent importing more LODs than the maximum allows for.
+
+* Bugfix:Fixed an issue with the FBX importer's "Front X-Axis conversion".We remove the scale of the camera and adjust the orientation of both the camera and light.
+
+* Bugfix:Fixed an issue with Auto Reimport "Directory to Monitor" feature.
+
+* Bugfix:Fixed some issues with the Import commandlet:
+
+ * Fixed possible crash when importing FBX files.
+
+ * Now makes sure that the imported assets are saved when there is no source control.
+
+* Bugfix:Fixed an issue with Static Mesh conversion from UE4 4.14 to earlier versions.
+
+* Bugfix:Fixed an issue with the Merge Actors Tool that was sometimes assigning wrong Material IDs to mesh sections.
+
+* Bugfix:Fixed an issue where the Number of Players and Dedicated Server settings for PIE would not persist correctly after Editor shutdown.
+
+* Bugfix:Fixed issues related to Auto Reimport:
+
+ * Fixed a crash when attempting to import to mount points that do not exist.
+
+ * Now allow for new assets to be created from monitored directories.
+
+ * Settings now use a path picker when specifying the "Map Directory To" field.
+
+* Bugfix:Fixed an issue so that Property Editor Inline Class Filter now shows unloaded Blueprint Classes properly in the Editor.
+
+* Bugfix:Fixed an issue with Undo/Redo transactions of Color Grading.
+
+* Iterative cooking .ini setting checking improvements have been made.More to come in a future release.
+
+* Dependency checking performance improvements for iterative cook.More to come in a future release.
+
+* Panning in orbit mode now takes in account camera speed setting.
+
+* Pivot Painter 2 is a general purpose vertex animation toolset that comes with specialized subset of material functions to automate foliage animation.The script and material function set are more flexible, easier to use and provide an improved workflow over the first release.Additionally, a content example map ships with the editor to demonstrate how Pivot Painter's output can be referenced in the editor.
+
+* Added a disclaimer popup for the first time a user enters VR Mode
+
+* All asset properties in Details panels now have thumbnails on by default.
+
+* Disabled editor sounds that play when you PIE, simulate or possess the player by default.There is now a setting in the editor preferences to control this.
+
+* The output log should now have the same text color as other panels in the editor.
+
+* Removed hard coded list of thumbnails, preventing objects with valid thumbnails from showing up.Thumbnails are now shown by default.Use meta=(DisplayThumbnail=false) on a property to hide thumbnails.
+
+* Import data and thumbnail data are now transactional.You can now undo and redo their edits.
+
+* Reread in the target RHIs array every time the list of shader types is needed, instead of caching, because the user could change the settings in the editor, then click cook.
+
+* The Paint Fill tool has changed the way it works in Texture Weight Painting mode, it now fills the mesh with the currently selected texture weight index.
+
+* Limited the ability of setting up the Hierarchical Level of Detail (HLOD) system in levels which are contained as streaming levels in other assets.
+
+* The FBX importer now builds the Static Mesh only once when there is many LODs.
+
+* The section Material slot assignment is now correctly restored on reimport.
+
+* When swapping the Static Mesh referenced by a Static Mesh component, we now just clean up the Material Override that exceed the Static Mesh Material array size, instead of clearing all overrides.
+
+* When using the Full Scene Importer the "Scene Import" data asset can now specify a different source file for reimport.
+
+* Data pin style preferences are now saved on Editor shutdown.
+
+* The "Fixup Redirects" commandlet now ensures that files that are marked for delete are correctly submitted to source control.
+
+* The "Resave Packages" commandlet will now submit files that are marked for delete.
+
+* Blocking volumes will actually be added to the level when placed via the "Place Actor" command instead of generating warnings.
+
+* Values that are directly entered for float properties with a specified Delta value will no longer snap to the nearest delta when losing focus.
+
+* Actor components can now be scaled to negative values using the transform gizmo.
+
+* Map properties now fully support customized property types used as keys.
+
+* When deleting an Actor, we now display the name of the referencers.
+
+* Using the Convert Actor feature now won't change the Actor level.
+
+* Primitive Statistics window will now properly update itself when adding new Levels.
+
+* Optimized the lightmap UVs generation to speed up the Static Meshes import flow when packing the UVs into higher resolutions.
+
+##### Content Browser
+
+* New:Added "Resave All" functionality to Content Browser folders.
+
+* New:Added a way to view/copy a list of references (including those that aren't loaded) to the Reference Viewer.
+
+* New:Importing CSV files will now show the name of the CSV file in the import dialog.
+
+* New:Added the ability to auto resize column in "Column View" by double clicking column splitters
+
+* Bugfix:Fixed an issue where folders wouldn't be removed from the Content Browser when deleting them.
+
+* Bugfix:Fixed an issue with the Reference Viewer where it only ever used the default thumbnail.
+
+* Bugfix:Fixed some issues for gathering cached asset dependency data.
+
+ * We no longer load dependency data that doesn't have the correct package name.
+
+ * We no longer populate the dependency results when "Gather Depends on Data" is set to false.
+
+* Bugfix:Fixed an issue that prevented textures from updating correctly if a source texture with the same name as a texture asset is imported from a location that differs from the asset's original source image.
+
+* Bugfix:Fixed an issue where the Force Feedback "Play" and “Stop†icons weren't rendered correctly and would only be displayed when hovering over the asset or when the asset is currently playing.
+
+* Bugfix:The Content Browser file path will now update correctly if it is pointing to a path that is deleted through the Sources Panel.
+
+* Bugfix:Duplicating an asset will correctly name it if there is another one of the same name.
+
+* Moving a newly-created asset before saving it will no longer save an empty package in the asset's original location.
+
+* When reimporting multiple assets, the "Yes to All" and "No to All" dialog options will prevent future reimport dialogs from appearing for the same asset type in the same operation.
+
+* Improve visual of "Column View" in Content Browser.
+
+##### Cooker
+
+* Bugfix:Fixed an issue with the rebuild lighting commandlet not checking out files correctly.
+
+* Bugfix:Fixed an issue where running the same DLC profile created by the Mobile Patching Wizard would increase HTTP chunk size.
+
+* Bugfix:Fixed an issue with the cooker always cooking "All Maps" even when a single map was specified on commandline.
+
+##### Foliage
+
+* New:Added the Show Flag "Foliage Occlusion Bounds" in the Advanced menu to see the bounds generated by the occlusion tree.
+
+* New:When moving a foliage asset to a new Level, you will now be prompted to save the Foliage Type as an asset if it's a local asset.
+
+* New:Improved the Foliage painting algorithm to properly support Random Pitch/Yaw when the setting "Collision with World" is enabled.
+
+* Bugfix:Fixed a crash that occurred when moving the mouse over certain content while in Foliage mode.
+
+* Bugfix:Fixed an issue that cause foliage thumbnails to incorrectly be duplicated if many of them are onscreen at once.
+
+* Bugfix:Fixed an issue where removing a Foliage Type wouldn't properly refresh the Details panel.
+
+* Bugfix:Fixed an issue where the foliage location would shift when using undo/redo transactions.
+
+* Optimized the occurrence of rebuilding the occlusion tree when performing actions in the editor.
+
+##### Landscape
+
+* New:We now automatically fill Landscape with the first created Landscape's Layer Info object.
+
+* New:Added sorting to Landscape Target Layer tabs.You can now sort by Material definition (which is the default one), alphabetical, or custom a using drag-and-drop operation.
+
+* New:Added a visibility toggle to only show the used Target Layers by the loaded components.
+
+* Bugfix:Fixed a crash when changing multipole Landscape Blend Layer nodes from Weight blend to Height blend.
+
+* Bugfix:Fixed an issue with user Landscape shortcuts not working in the Level Viewport.
+
+* Bugfix:Fixed an issue when performing an Undo action would delete the newly created Landscape and return back to the new Landscape window.
+
+* Bugfix:Fixed an issue where Landscape holes (visibility mask) was causing NavMesh problems at the borders of the Landscape component.
+
+* We have improved when a Level will be marked as dirty when manipulating a Landscape Spline.
+
+* The Landscape tools Material synchronisation has been updated between game thread and render thread.
+
+* When adding a new Component, if a Landscape info object exists it will determine which one is used based on its neighbors.
+
+##### Material Editor
+
+* Bugfix:Material Custom nodes that contain "tab" characters will now correctly display tab characters after copy/paste.
+
+##### Matinee
+
+* Bugfix:Fixed an issue with how tooltips display when using a Material Function in your Material.
+
+##### PhAT
+
+* Bugfix:Fixed "Multiple Values" being displayed in Body Setup properties when single bone has multiple bodies
+
+##### Sequencer
+
+* New:Added the ability to specify additional Event Receivers for Level Sequence Actors.
+
+* New:Event tracks can now be defined to trigger events at the start of evaluation, after objects are spawned, or at the end of evaluation.
+
+* New:Added the ability to retrieve bound objects from Blueprint.
+
+* New:There have been improvements to the Binding overrides.
+
+ * Added the ability to override spawnable bindings.
+
+ * Added the ability to override bindings in sub Sequences.
+
+ * Deprecated "Get Sequence Bindings" node in favor of "Get Sequence Binding", which is more robust, and provides a better UI/UX for selecting single bindings
+
+ * Added Drag/Drop support for Binding overrides.
+
+* New:Added the ability to specify Event Receivers on Event Tracks.
+
+ * These are defined by right-clicking on the Event Track in the Sequencer tree, and adding Event Receivers.
+
+ * Such objects must be defined within the Sequence hierarchy (as well as parents, children, grandchildren etc).
+
+* New:Added a reworked, more generic property path handling system in the Sequencer object change listener.
+
+* New:Unlocked the Cine Camera Post Process Depth of Field to use options other than CircleDoF.
+
+* New:"Pre Roll" and “Post Roll†are now exposed at the section level for all sections.
+
+* New:Enabled "Use Custom Start Frame" and “Use Custom End Frame†when rendering a single shot from the menu.
+
+* New:You can now set the fade color in the Track display.
+
+* New:Audio row heights are now also resizable by dragging on the bottom end of the track lane in the track area view.
+
+* New:Sequencer now re-evaluates when starting PIE or Simulate.This can be disabled with "Bind Sequencer to PIE" and “Bind Sequencer to Simulate†in the Play-in-Editor Advanced settings.
+
+* New:Split "Snap to the Dragged Key" option into two options, "Snap to the Pressed Key", and "Snap to the Dragged Key".
+
+* New:Added a loop selection range.If there is no selection range, loop mode is restricted to loop or no loop.
+
+* New:Added hotkeys to set the selection range to the next and previous shot (page up, page down).Also, added hotkey to set the playback range to all the shots (end).
+
+* New:You can now set sequencer audio components bIsUISound to false so that they don't continue playing when the game is paused.
+
+* New:Added an option to instance sub sequences when creating a Master Sequence.
+
+* New:Notify streaming system prior to Camera cuts by default.To enable, users will need to enable the Pre Roll section of the Camera cuts for the streaming system to activate prior to cutting to cameras.
+
+* Bugfix:Fixed a crash when selecting keyframes in the viewport.
+
+* Bugfix:Fixed a crash with Sequencer Recorder when clearing properties to record.
+
+* Bugfix:Fixed an issue where tick prerequisites were not being set up for Actors streamed in from a streaming Level.
+
+* Bugfix:Fixed an issue where Sequencer was animating objects from the wrong world.
+
+* Bugfix:Fixed an issue with event parameter structs being able to be garbage collected, resulting in NULL structs potentially being written out.
+
+* Bugfix:Fixed an issue with animation looping in Sequencer.
+
+* Bugfix:Fixed an issue with Sequencer Recorder to fix duplicate components getting recorded.
+
+* Bugfix:Fixed an issue with FBX import with camera and light animation key imports.
+
+* Bugfix:Fixed an issue with autokey not setting a keyframe for Slate color with the specified color.
+
+* Bugfix:Fixed an issue for filtering to include Child nodes.
+
+* Bugfix:Fixed an issue where the Sub Track node deletion so that all sub tracks aren't deleted, only the row being requested.
+
+* Bugfix:Fixed an issue to invalidate expired objects when Blueprints are compiled.This fixes Actor references to now handle sections that need to have their GUIDs updated (ie. attach tracks).
+
+* Bugfix:Fixed an issue so that when finishing a scrub, playback status is now correctly set to stopped rather than set to a stepping state.
+
+* Bugfix:Fixed a missing command binding alt-r to record selected objects into sequencer.
+
+* Bugfix:Fixed an issue to Filter hidden functions, which fixes a bug where the field of view property for a cinematic camera appears to be animatable,.It should be hidden just like it is in the property editor.
+
+* Added a warning when Sequencer tries to write to properties that have changed type.
+
+* Sequencer templates are now always regenerated on load
+
+* Level Sequence frame snapshots now take account of fixed-frame interval offsets, and overlapping shot sections on the same row.
+
+* We now convert Linear Color to Color for fade to get the correct fade color in viewport.
+
+* Audio waveforms now show peak samples with smoothed RMS in the center.
+
+* Set max tick rate when in game if force fixed interval playback is enabled.
+
+* Cache player fade state so that restore state will return the values to the pre animated state.
+
+##### Source Control
+
+* Bugfix:Fixed an issue with Git plugin to update the status on directories hotfix.
+
+* With the Git plugin, use use asynchronous "MarkForAdd" and "CheckIn" operations for the initial commit.
+
+* Allow binary files in Git stored via git-fat, git-lfs, etc to be diffed.
+
+##### Static Mesh Editor
+
+* Bugfix:The camera position now stays in place after reimporting from inside the Static Mesh Editor.
+
+##### Traps
+
+* Subversion binaries have been updated to 1.9.5.They should no longer crash when used.
+
+##### VR-Editor
+
+* New:Improved functionality for the VR Mode:
+
+ * Improved the look and feel of the rotation gizmo handles while in VR Mode.
+
+ * Improved interaction for painting terrain, foliage, and mesh painting.
+
+ * Improved gizmo handle animations.
+
+* New:VR Mode is now bound with the Editor Sound settings.
+
+* New:VR Mode motion controllers now have collision when in simulate.
+
+* Bugfix:Fixed VR Mode selection now to respect a component's "Is Selectable" state.
+
+* Bugfix:Fixed an issue with not being able to open a project in the Project Browser with VR Mode auto-entry enabled and the HMD active.
+
+##### Windows
+
+* New:Custom Depth can now be enabled for Landscapes
+
+* Bugfix:Fixed an issue with Landscape spline segment splitting when using streaming levels.
+
+* Bugfix:Fixed an issue with Landscape painting in orthographic viewports when the painted area's Z value was below 0.
+
+##### World Browser
+
+* Bugfix:Fixed an issue when moving a sublevel in World Composition browser does not appear in Undo History.
+
+##### World Outliner
+
+* New:Actors in the World Outliner will now bring their children with them when moved into a newly created folder.
+
+#### Gameplay Framework
+
+* New:Added an option for components to opt out of physics impulses on damage using "Apply Impulse On Damage".
+
+* New:Exposed component's "Ignore Radial Impulse" and “Ignore Radial Force†flags to Blueprints. “Ignore Radial Impulse†is now properly respected when applying impulse to relevant movement components.
+
+* New:The Player Controller's "Should Perform Full Ticket When Paused" can now be set from Blueprints and the Details panel.
+
+* New:Spawn Sound and Force Feedback Blueprint nodes now have a "Auto Destroy" pin that can be set to false to allow the component to be reused after the sound/pattern complete.
+
+* New:The number of buttons that can be used by Raw Input is now 20.
+
+* New:Fields of Attribute MetaData are now editable.
+
+* New:In the Ability System, the "Cancel Ability" has been exposed to Blueprints.
+
+* New:For Cameras, support has been added for specifying a default aspect ratio and whether or not to constrain to it in a Camera Manager subclass.
+
+ * Normally the information would come from a Camera component, but this is useful when using custom view logic that doesn't source from a Camera component as the view target.
+
+* New:Added "​On Component Collision Settings Changed Event" delegate to Primitive Component.Fixed Skeletal Mesh Component not calling Super implementation for “On Component Collision Settings Changedâ€.
+
+* New:Refactored Character Movement Component determination of net send rate when combining moves into a virtual function Get Client Net Send Delta Time.Added configurable values to Game Network Manager under ​[/Script/Engine.GameNetworkManager] in BaseGame.ini:"ClientNetSendMoveDeltaTime", “ClientNetSendMoveDeltaTimeâ€, “ClientNetSendMoveThrottleAtNetSpeedâ€, “ClientNetSendMoveThrottleOverPlayerCountâ€.
+
+ * This replaces the values that were hardcoded in the network code for characters and enables easier configuration of client send rates for movement.
+
+* New:We've increased Pawn location replication precision to 2 decimal places from 0.Prevents replicated pawns from being inside geometry by a large amount.Removed CVars controlling CharacterMovement proxy shrink amount and made those instanced properties on the component.
+
+* New:Added a flag to Character Movement Component to determine whether or not character should Sweep while using "NavWalking", instead of relying on Generate Overlaps flag.
+
+* New:Added "Apply Gravity While Jumping" flag to Character Movement Component.This helps to reduce Framerate Dependent Jump Height issues when disabled, but raises jump height.This is disabled by default.
+
+* Bugfix:Fixed a crash due to null World Settings when rendering a thumbnail.
+
+* Bugfix:Fixed a crash when opening Blueprint after adding a component to native class referenced by a Child Actor Component.
+
+* Bugfix:Fixed several issues with renaming or deleting Gameplay Tags from the Gameplay Tag Project Settings page.
+
+* Bugfix:Fixed an issue when calling "Set Visibility" or “Set Hidden In Game†all children of the component will now properly be reconsidered as to whether they should render.
+
+* Bugfix:After duplicating an Actor, components added to the source instance will now have the correct position in the duplicate.
+
+* Bugfix:Ability actions can now be properly bound to input components.
+
+* Bugfix:Construction scripts will no longer be incorrectly rerun on Actors in a level that was hidden and then later made visible again.
+
+* Bugfix:Fixed an issue warning about invalid world content when loading maps with child Actor components in it.
+
+* Bugfix:Fixed cases where built lighting on child actors could be lost when loading a level.
+
+* Bugfix:Fixed case where child actor template was not cleared when setting child actor class to null.
+
+* Bugfix:Fixed issues with seamless travel in PIE and sub-levels shared between different Persistent Levels.
+
+* Bugfix:Fixed issues where Child Actor Component's "Parent Component" would be null on the client.
+
+* Bugfix:Fixed accumulated forces in Character Movement applied incorrectly when movement mode or active state changes.
+
+ * Added ​"Clear Accumulated Forcesâ€
+
+ * "Add Force" and related functions now avoid adding the force if in Movement Mode is set to "None".When ticking in "None", forces are cleared so they don't pile up until the next valid movement mode.Forces are also cleared if the updated component changes or when the capsule simulates physics.
+
+ * "Deactivate" implemented to stop movement and call “Clear Accumulated Forcesâ€.
+
+ * "Clear Accumulated Forces" now also clears pending launch velocity.Exposed “Clear Accumulated Forces†to Blueprints.
+
+ * "Apply Accumulated Forces" does not call â€Clear Accumulated Forcesâ€, since that would prevent pending launch.
+
+ * "Add Force" and “Add Impulse†now also check that character movement is active (not deactivated, able to tick).
+
+ * "Simulate Movement" handles pending launch and clears forces regardless of whether it's simulated proxy.
+
+ * Inlined Actor Component "Is Active" for performance.
+
+* Bugfix:Fixed characters sliding when landing on slanted surfaces or stairs, when aggressive "Perch" settings could cause a line trace (from the center of a capsule) instead of capsule trace and thereby screw up the floor distance checks.
+
+* Bugfix:Fixed the case of people moving a Character mesh in Begin Play rather than in the Editor or Construction Script and not having the mesh offset reflected correctly in network games.
+
+ * Added function "Cache Initial Mesh Offset" to cache initial mesh offset, used as the target for network smoothing.This takes location and rotation params so you can be explicit on the values, in case you try to change these during network smoothing, where reading the relative offsets would be skewed.
+
+ * Added a call to this function from Begin Play in addition to the existing call from "Post Initialize Components", and exposed this to Blueprints as well for custom changes to mesh offset at runtime.
+
+* Bugfix:Fixed an issue with Projectile Movement Component continuing to simulate (and generate hit events) after it is deactivated during simulation."Has Stopped Simulation" function now checks if “Is Active†is false.
+
+* Bugfix:Fixed an issue with "Get Welded Bodies" so that it properly returns Skeletal Bodies, instead of the default body for Skeletal Mesh Components.
+
+* Bugfix:Fixed an issue with infinite jump on client when Jump Max Hold Time is not 0.
+
+* Stop dynamic force feedback when initiating Actor is destroyed.
+
+* Clarified the tooltip on the "Inverse Lerp" function.
+
+* In the Movement Component "Deactivate" calls “Stop Movement†to clear cached velocity.
+
+ * It was undesirable that reactivation many seconds or frames later would restore a stale velocity.
+
+* The "Collision.ListComponentWithResponseToProfile" command now includes pending kill objects.Use this to inspect collision responses between objects in a game world.
+
+* Optimized the Math Library "Get Forward Vector" (converts Rotator to forward direction).This way we avoid building a matrix, and avoids 1 more SinCos call.
+
+#### Learning Resources
+
+##### Sample Content
+
+* New:ShooterGame now supports dedicated servers on PC, Mac, and Linux!
+
+#### Localization
+
+* New:Improvements to culture switching and LocRes files.
+
+ * LocRes files now de-duplicate translations when they're generated, which can result in smaller LocRes files.
+
+ * The localization compilation step now produces a LocMeta file, which contains meta-data specifying the native culture during compile, and where the native LocRes file can be found.
+
+ * Changing cultures now loads the native localization data prior to loading the non-native translations to ensure that translations are always applied to a consistent base.
+
+ * The "leet" culture (available when localization testing is enabled) is now always applied against the native translation, and correctly restores non-translated text when switching away from the "leet" culture.
+
+ * "-culture=leet" now works correctly on the command line ("-leet" also works).
+
+ * LoadLocalizationResourcesForCulture is no longer called multiple times during initialization of the text localization manager.
+
+* New:Updated Fast Decimal Format to support the correct 0-9 numerals for the current locale
+
+ * These are typically still Latin, but Middle Eastern languages have some variants.
+
+ * This addresses an inconsistency between FText formatting of numbers and dates (since numbers always used Latin, but dates used the culture correct numerals).
+
+* New:Split the monolithic culture concept in UE4
+
+ * UE4 has historically only supported the concept of a single monolithic "culture" that applied to both text localization and internationalization, as well as all asset localization.Typically the "culture" was set to the "locale" of the OS, however that could be undesirable or incorrect on platforms (such as newer versions of Windows) that have a distinct concept of "language" (for localization) and "locale" (for internationalization).
+
+ * This change splits the concept of "culture" into "language" and "locale", and also adds the concept of "asset groups".The language is now used to work out which localization we should use, and the locale is used to control how numbers/dates/times/etc are formatted within our internationalization library.
+
+ * Asset groups expand on the language used by asset localization and allow you to create a group of asset classes that can be assigned a different culture than the main game language.A typical use-case of this would be creating an "audio" group that could, for example, be set to Japanese while the rest of the game runs in English.
+
+ * If your game doesn't care about the distinction between language and locale, and doesn't need to use asset groups, then you're able to continue to use "culture" as you always have.If, however, you do care about those things, then you'll likely want to avoid using the "culture" directly (as it's now a very aggressive setting that overrides all others), and instead favor using language/locale (games will typically treat these as the same) and asset groups as separate concepts (both in settings, and in your in-game UI).
+
+ * The language or locale for a game can be controlled by settings within the "Internationalization" section of your configs (this would typically be set in your Game User Settings config, in the same way that "culture" works), eg)
+
+ [Internationalization]
+ language=fr
+ locale=fr
+
+ * The asset groups for a game can be controlled by settings within the "Internationalization.AssetGroupClasses" and "Internationalization.AssetGroupCultures" sections of your configs (the asset group class definition would typically be set in your DefaultGame config, and the cultures the groups use would typically be set in your Game User Settings config), eg)
+
+ [Internationalization.AssetGroupClasses]
+ +Audio=SoundWave
+ +Audio=DialogueWave
+ [Internationalization.AssetGroupCultures]
+ +Audio=ja
+
+* Bugfix:Fixed an assert that could trigger when an IME composition is aborted during widget destruction.
+
+* Bugfix:Fixed a crash that could happen if a config was loaded while the Gather Text commandlet was running.
+
+* Bugfix:Fixed text namespaces being treated as case-insensitive when exported to JSON manifests and archives.
+
+* Bugfix:Fixed text format history being clobbered by reference collection.
+
+* Bugfix:Fixed the pluralization of the decorator text during drag-and-drop operations.
+
+* Vastly reduced the number of allocations that happen when rebuilding text at runtime.
+
+#### Networking
+
+* New:Network dormancy efficiency has been improved greatly (if you have large number of dormant actors, they now will have less overhead).
+
+* New:Network consider/relevancy code is now also much more efficient.Overall, expect a 20+% improvement in performance if you have lots of Actors in the network Actor list.
+
+* New:Adaptive network update frequency logic is now on by default.This should improve network performance for games that weren't opt'ing in to this feature.
+
+ * Net.UseAdaptiveNetUpdateFrequency is now 1 by default.
+
+* New:Replays now support network relevancy.
+
+ * All connections are considered when determining if an Actor is relevant.
+
+ * Enable by setting demo.UseNetRelevancy to 1.
+
+ * Override cull distance with demo.CullDistanceOverride.
+
+* New:Added more info about the connection to logs when you see "FRepLayout::UpdateChangelistHistory:History overflow, forcing history dump" message.
+
+* New:Updated OnlineSubSystemNull to properly account for game state and "Allow Join In Progress".
+
+* Bugfix:Fixed a crash that could occur when updating unmapped objects.
+
+* Bugfix:Fixed an issue with IPAddressBSD validation when setting IP from string.
+
+* Bugfix:Fixed a memory leak in network drivers.
+
+* Bugfix:Fixed an issue with syncing of non-contiguious UENUMs over networks.
+
+* AActor "Pending Net Update" has been deprecated.Please use “Pending Net Update†that is now on FNetworkObjectInfo (obtained by calling “Get Network Object Info).
+
+* UNetDriver "Get Network Actor" is now deprecated.Use UNetDriver “Get Network Object Info†instead.
+
+* Disabled net.PartialBunchReliableThreshold for replays (we don't need to worry about bunch fragment sizes since there is no packet loss for replay connections).
+
+#### Online
+
+* New:Steamworks integration has been updated to support version 1.39, including updated steam controller support!
+
+* New:Web Browser module no longer directly depends on Online Subsystem plugins.
+
+ * It uses the Online Engine Interface shim to explicitly depend on the engine and will use Online Subsystem features when that module is optionally added.
+
+* New:Added a new overload for Online Session "Find Friend Session" in the session interface that can retrieve sessions for multiple friends.
+
+* New:Sending and accepting invites on dedicated servers on Steam is now supported.
+
+* New:Updated OpenSSL libraries to use BCrypt on Windows in order to reduce memory allocations.
+
+#### Other
+
+* New:Added a "Buffering" media player event.
+
+* New:The Plugin Browser now supports customizations to allow for context-specific plugin creation.
+
+* Bugfix:Fixed a crash with Media Assets in "Tick Video" after media player is garbage collected.
+
+* Bugfix:Fixed an issue to prevent the default cooked sandbox from trying to read non-cooked assets.
+
+* Bugfix:Fixed a message router thread not being woken up right away on shutdown.Crashreporter uploads/downloads crash data from AWS
+
+* Search button is disabled after clicking it once to prevent accidental double-clicks.
+
+* Reading the config hierarchy for TVOS now matches IOS to get the correct bundle id when packaging a project
+
+#### Paper2D
+
+* Bugfix:Custom tile maps using collision can now be created at runtime on any platform without crashing.However on iOS/Android/HTML5 only the boxes and spheres used in the per-tile collision shapes have effect; arbitrary convex collision (e.g., slopes or other triangle-based collision) will not cause collisions or overlaps until support for PhysX runtime cooking is added to these platforms.
+
+* Bugfix:The Paper2D flipbook editor now shows the current frame correctly when the animation timeline is longer than the editor window and the scroll bar is moved to the right.
+
+* Bugfix:Paper2D flipbook editor now shows the correct number of frames; previously, it was one frame short.
+
+#### Physics
+
+* New:Added sprite to Physics Thruster Component (previously this was only available on Physics Thruster Actor).
+
+* New:Exposed "Set All Physics Angular Velocity" to Blueprints.
+
+* New:Added finer-grain PhysX stat information that is available by using "stat physxtasks".
+
+* New:Added the ability to specify whether a ragdoll is in the sync or async scene with "Use Async Scene".
+
+* New:Changed default contact-gen method to PCM.This is the default in PhysX 3.4.
+
+* New:Added "Is In Air" method to Vehicle Wheel.
+
+* New:For the Wheeled Vehicle Movement Component, the Mass dependent wheel properties now update when mass is updated.
+
+* New:Created "Add Force At Location Local" function to allow component space forces.
+
+* New:Added a new Physics settings "Enable Stabilization".Stabilization can help stacks of simulated bodies to come to rest.
+
+* Bugfix:Fixed a crash in anim dynamics when a world was not valid during pre-update.
+
+* Bugfix:Fixed a crash when saving sub-levels that don't currently have a correctly initialized scene.
+
+* Bugfix:Fixed an issue with incorrect slider for "initial Average Frame Rate" physics setting.
+
+* Bugfix:Fixed an issue with physics constraint warning messages in Message Log.These now list Component/Actor name correctly.
+
+* Bugfix:Fixed an issue with editing Box and Capsule collision primitive rotations by storing rotation as a Rotator rather than Quaternion.
+
+* Bugfix:Editing collision profiles in Editor Preferences no longer discards edits.
+
+* Bugfix:"Find Closest Bone" function no longer ignores the “Required Physics Asset†option.
+
+* Bugfix:Fixed an issue teleport not working for physical animation component.
+
+* Bugfix:Fixed an issue incorrect inertia tensor computation for cubes, which was being doubled.
+
+* Bugfix:Fixed an issue with kinematic body interpolation in substepping causing invalid raycasting, sweeping, or overlapping.
+
+* Bugfix:Physics Constraint component now works as expected when its target is a Child Actor component.
+
+* Bugfix:Fixed an issue with collisions between components with CCD enabled having unreliable behavior.
+
+* Bugfix:Fixed an edge case where generating collision data could cause the engine to hang in an infinite loop.
+
+* Bugfix:Fixed a regression with Raycasts against Capsules returning invalid hits.
+
+* Bugfix:Instanced Static Mesh now properly creates physics state when set to Stationary.
+
+* Bugfix:Fixed a memory leak caused by keeping PhysX shapes in memory after they are no longer being used.
+
+* Expanded self-collision culling for clothing by providing a scale to tweak the culling queries.This makes a tradeoff between performance and accuracy.
+
+* Added a guard against infinitely thin geometry, which fixes some NANs.
+
+* Performance improvements to Anim node "Rigid Body".
+
+* Physics performance is improved by skipping the update of kinematic bodies when they haven't moved.
+
+#### Platforms
+
+* New:Add logging for the NUI GPU reserve so we can see when it's enabled and disabled.
+
+* New:Exposed JAVA_HOME setting in Android SDK Project Settings on Mac.
+
+* New:Added "Platform Handle Splash Screen" to deal with hiding splash screen properly on Startup Movies.
+
+* New:Implemented support for new controllers (Xbox Wireless, SteelSeries Stratus XL, PS4).
+
+ * Note: there are two implementations for Xbox Wireless due to differences in firmware.Firmware before 3.1.1221.0 does not use standard mapping which you can enable by setting the Android.OldXBoxWirelessFirmware CVar to 1 (defaults to new firmware).
+
+* New:Added support for "r.ScreenPercentage" on mobile allowing the game scene to be rendered at lower resolution than the UI.Requires MobileHDR to be enabled.
+
+* New:On-screen warnings now appear when a mobile shader permutation required to correctly render the current scene's lighting setup has been disabled in Project Settings.
+
+* New:Made some big DeviceProfile changes, particularly for the protected platforms.
+
+ * Changed the "type" of some DPs from WindowsNoEditor, etc to Windows.It should be a platform, not a random string.
+
+ * With that change, the platform can be used to save out protected platform DP .ini files to subdirectories, maintaining secrecy
+
+ * Added Config/[PlatformName]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs.See FGenericPlatformMisc::GetConfidentialPlatforms() for more information.
+
+* New:When uploading a HTML5 project to AWS S3, it now supports "signature version 4" authentication and better error message feedback on upload failures.
+
+* New:Added "use fixed timestep" setting option for HTML5 builds (This has been separated from Engine > General Settings - Framerate).
+
+ * This is slightly different to "Smooth Framerate" and “Fixed Framerateâ€.
+
+ * NOTE:Fixing the timestep does not guarantee the actual framerate.Calculations based on delta time may be adversely affected by this.
+
+* New:Added iOS/Android support for new Audio Mixer.
+
+* New:"Does Save Game Exist" will now show a message if the save data is corrupt.
+
+* New:Initial support for voice chat in the Android platform.To use enable the Voice module in DefaultEngine.ini, in the level bp create a session, and in project settings > Platforms > Android > Advanced APKPackaging, check the setting 'Add permissions to support Voice chat (RECORD_AUDIO)'.After this create a multiplayer game between two android devices.For more information check pull request #2894.
+
+* Bugfix:Fixed a crash with mobile feature level preview when the Low Quality Lightmap shader permutation is disabled.
+
+* Bugfix:Fixed a crash in clothing on platforms that don't support clothing.
+
+* Bugfix:Fixed a crash when backgrounding or sleeping on iOS Metal devices.
+
+* Bugfix:Fixed a crash with UIImagePickerController.
+
+* Bugfix:Fixed an issue with executable path for stripping Android debug symbols (handle non-Windows properly).
+
+* Bugfix:Fixed memory reporting for Uniform Buffers in "stat rhi".
+
+* Bugfix:Fixed a slow memory leak in FD3D12UniqueDescriptorTable.
+
+* Bugfix:Fixed rendering of batched Slate primitives in D3D11.x.
+
+* Bugfix:Fixed an issue with S3 public link generator for "Shipping" builds filename.
+
+* Bugfix:Fixed an issue with iOS IDFV string allocation.
+
+* Bugfix:Fixed UPL processing on iOS plist files.
+
+* Bugfix:Fixed network byte ordering for iOS multiplayer sessions.
+
+* Disabled the game analytics anonymous usage data sent to Epic on the console platforms.
+
+* Save 66MB of memory by disabling the unused default SHAPE heap in XAudio2.
+
+* Stop the audio thread from using the 7th CPU core as it can be pre-empted and not get enough execution time.
+
+* Add -distribution when iOS distribution Packaging. with IPhonePackager.exe.
+
+* Changed mouse cursor to be always visible when running in Mobile Preview.
+
+* Refactored memory allocation functions (BinnedAllocFromOS) on all platforms.Made Binned2 malloc work on Linux.
+
+##### All Mobile
+
+* Bugfix:Fixed a crash in mobile patching utilities mount method.
+
+* Bugfix:Fixed an issue with the shader compile for Landscape on platforms below SM4 feature level.
+
+##### Android
+
+* New:Bad package names are now detected and APK generation is stopped with a proper error message instead of failing during Java compiling.
+
+ * Package names with fewer than 2 segments are not allowed (e.g., "myproject" is not allowed, but “com.myproject†is legal).
+
+ * Only alphanumeric characters and underscore are allowed in the package name (Note: hyphens in the project name will be converted to underscores, but any other hyphens need to be corrected in Android project settings).
+
+ * All segments must start with a letter; if your project name starts with a letter you will need to replace the [PROJECT] part of the package name in Android project settings.
+
+ * Reserved Java keywords may not be used as the full segment; appending an underscore or other legal characters will fix this.
+
+ * Segments may not be empty (e.g. "com..myproject" is not legal).
+
+* New:Larger OBB files embedded in APK are now allowed by bypassing Asset Manager.
+
+* New:We've implemented a first pass of Google Cloud Messaging plugin.This is considered an experimental feature for this release.
+
+* New:Added missing key codes for keyboard input (@ and #).
+
+* New:Added a drop-down with some common console commands on Android to the console dialog.
+
+* New:Patches ant.bat to handle long command line issue on Windows.
+
+ * Copies original ant.bat to ant.orig.bat and writes a new ant.bat which uses subst with an unused drive letter to shorten paths).
+
+ * Note: you can edit the generated ant.bat if you need to change the drive letter used; the editor will not replace it if ant.orig.bat is found.
+
+* New:Editor now checks to make sure that at least SDK Android-23 is selected and installed.There will be an error message if an earlier version is installed.
+
+* New:Updated AAR handling to deal with versioning, subproject dependencies for resources, and scope (ignore test).
+
+* New:Added "Game Activity On New Intent Additions" section to Android Unreal Plugin Language (UPL).
+
+* New:Added support for using native virtual keyboard with Slate widgets instead of the dialog currently used for text input.
+
+ * Events are triggered when the virtual keyboard is shown and hidden.
+
+ * The show event includes the area of the screen that is covered by the virtual keyboard.
+
+ * This feature is exposed in the Android Project Settings as an experimental feature checkbox.
+
+* Bugfix:Fixed a crash that could happen when closing the Android web browser.
+
+* Bugfix:Fixed an issue to handle spaces in ANT_HOME path in generated ant.bat patch.
+
+* Bugfix:Fixed an issue with application hanging on returning from the lockscreen if orientation is Landscape.
+
+* Bugfix:Fixed an issue to correct the log warning about Target SDK and permissions.
+
+* Bugfix:Fixed an issue with Launch On when multiple architectures are enabled in the project.
+
+* Bugfix:Fixed an issue with ad banner location on Android 7.0 devices.
+
+* Bugfix:Fixed some documentation errors in UnrealPluginLanguage.cs.
+
+* Bugfix:Fixed the executable path for stripping Android debug symbols for non-Windows platforms.
+
+* Bugfix:Fixed an issue with password hiding in input dialog.
+
+* Bugfix:Fixed an issue with EGL linking issues for ARM64 libraries.
+
+* Bugfix:Fixed an issue to save and restore texture filtering for movie playback in all cases.
+
+* Bugfix:Fixed an issue with Mac and Linux install and uninstall scripts if ANDROID_HOME is not set.
+
+* Bugfix:Fixed an issue with ShowLoginUI interface change in Game Circle plugin.
+
+* Bugfix:Fixed an issue with HTTPChunkInstaller texture format checks and missing #define warning.
+
+* Bugfix:Corrected AndroidManifest.xml required features for "Daydream and Cardboard" option when GoogleVR plugin enabled.
+
+* Bugfix:Fixed an issue to prevent inserting extra permissions into AndroidManifest.xml multiple times from Project Settings.
+
+* Bugfix:The correct APK file name is now used when launching from editor for Android.
+
+* Bugfix:Fixed issues with experimental keyboard.
+
+ * Ensure the local scope ScreenRect passed into "On Virtual Keyboard Shown" in AndroidJNI is captured by value instead of by reference.
+
+ * Moved ShowVirtualKeyboardInput's "Keyboard Showing" early-out checks into the UI thread task.This enables the keyboard to continue showing when changing focus between multiple Editable Text Box widgets.
+
+* Bugfix:Fixed an issue with locations on non-ARMv7 GoogleVR libraries so that it is properly filtered by active architecture.
+
+* Bugfix:Fixed an issue to properly restore state for Android devices not using separate context for movie playback.
+
+* Bugfix:Removed an obsolete warning with Java 1.5.The java.source and java.target are now set to 1.7.
+
+* Only disable Java console command receiver for Shipping builds.
+
+* Build configuration is passed to UPL for access during packaging as $S(Configuration).
+
+* Reenabled GooglePlay for ARM64 now that it doesn't crash.
+
+* Changed Gear VR installLocation to auto as now required by Oculus.
+
+* Rebuilt ICU libraries for Android with timezones enabled and updated build scripts.
+
+* Android media player now pauses and resumes with application state.
+
+* "Is Packaging For Daydream" only returns true if GoogleVR plugin is enabled.
+
+##### HTML5
+
+* New:Emscripten toolchain has been upgraded to 1.37.9.
+
+ * Web assembly
+
+ * WebGL 2
+
+* New:There has been an update to GameX template.
+
+ * Multiple (parallel) downloads with progress percentage updates.
+
+ * Test for wasm and WebGL 2 capabilities.
+
+* New:Updates to python build scripts.
+
+* New:Configurable .ini settings have been exposed to the editor.These can be found in Project Settings > Engine > HTML5.
+
+* New:Added support for emscripten "-pre-js" and “-post-js†option when building for HTML5.
+
+* New:Added support for WebGL 2 shader to turn on Instance Static Mesh Vertex Factory.
+
+* Bugfix:Fixed an issue with AWS S3 shareable link for shipping builds.
+
+* Bugfix:Fixed some issues with WebGL 2 shaders.
+
+* Bugfix:Fixed an issue with HTML5 plugin when Blueprint projects are promoted to code projects automatically.
+
+* The recommendation from emscripten developers is to use "-separate-asm" option for asm.js builds.
+
+* Added many new UE4 patches to package HTML on Linux.
+
+* Since connections are not closed manually (server side), send a dummy payload with content-length data.
+
+##### Import/Export
+
+* New:Set Java source and target to 1.7 (fixes Java 1.5 obsolete warnings).
+
+* New:Added support for changing the variable "r.MobileContentScaleFactor" at runtime on Android.This is useful for device-specific resolution tweaking.
+
+* Bugfix:Fixed an issue where HTML5 video in a Web Browser widget would only output sound but no video on Android.
+
+* Bugfix:Fixed an issue where the red and blue channels were reversed in screenshots taken on Android in Vulkan mode.
+
+* Disabled eglSwapInterval since it can cause issues with some drivers.
+
+* Changed text for Android Mobile Deferred Renderer setting to indicate that it's only supported on Nvidia K1 and X1 devices.
+
+##### iOS
+
+* New:As we move towards the next version of iOS, we will be moving towards 64-bit support only.We have added messaging in this release to start the process of this migration.
+
+* New:IOS now utilizes the Library/Caches directory to save any data on device.This includes logs and save games.IPhonePackager has been updated to pull the data from this location as well as the Documents directory.
+
+* New:Xcode 8.3 is properly supported in this release.
+
+* Bugfix:Fixed a crash if Text Box widget is closed before text is finished being entered.
+
+* Bugfix:Fixed a crash in the OnlineSubsystem when it is disabled on iOS.
+
+* Bugfix:Fixed an issue with static audio noise on iOS devices.
+
+* Bugfix:Fixed an issue with remote compiling by unconverting the path back to host when reading from the module file name.
+
+* Bugfix:Fixed a memory leak on texture creation with Bulk Data in OpenGLTexture.cpp.
+
+* Bugfix:Fixed an issue with the device profile names for iPad Pro 9.7 and 12.9.
+
+##### Linux
+
+* New:Added pooling of OS allocations on Linux, greatly reducing the need to call mmap/munmap() and avoiding running into vm.max_map_count limit when loading large projects.
+
+* New:Install of MIME types during setup is now supported.
+
+* New:UnrealPak is no longer included in the default make target, the prebuilt binary will be used instead.
+
+* Bugfix:Fixed a crash in ShaderCompileWorker due to misaligned strings.
+
+* Bugfix:Fixed starting Linux programs using FPlatformProcess::CreateProc() from a path with space.
+
+* Bugfix:Fixed various issues with Vulkan RHI on Linux.
+
+* Bugfix:SlateDlg now appropriately compares filter extensions in a case-insensitive way, so both *.fbx and *.FBX work.
+
+* Bugfix:Fixed bogus "unable to make config file writable" message (the operation was actually succeeding).
+
+* Bugfix:Fixed clang 4.0 warnings.
+
+* Bugfix:Fixed inability to rebuild lighting in ResavePackages commandlet on Mac and Linux.
+
+* Bugfix:Fixed some problems when working from directories that have space character in their names.
+
+* Bugfix:Fixed older versions of Linux cross-toolchain (ones using LINUX_ROOT instead of LINUX_MULTIARCH_ROOT) not being detected.
+
+* Bugfix:Fixed a memory leak in callstack symbolication on Linux.This makes memory profiling work again.
+
+* Bugfix:Fixed an issue with Linux editor splash screen image being wrong when no project has been opened.
+
+* Bugfix:Fixed MoveFile to work across file systems.
+
+* Bugfix:Removed redundant RootDir() and EngineDir() on Linux.
+
+##### Mac
+
+* New:Enable Metal Shader Model 5 support on Intel as of 10.12.4 and later.
+
+* New:On Macs that do not support Metal, but erroneously report that they do, show a message box that tells users that the application cannot run instead of crashing on a failed assert.
+
+* New:Removed Mac OpenGL RHI files and disabled building of OpenGL RHI on Mac.
+
+* New:Limited support added for exposing debug events to Apple's Instruments "Points of Interest" tool.
+
+* New:Added RHISetResourceAliasability_RenderThread to FDynamicRHI for RHIs to implement simple render-target aliasing.
+
+* New:Added FApplePlatformObject, a custom block allocator for Objective-C types (with NSZombie support) which is now used in Metal RHI to decrease allocation costs of Objective-C types.
+
+* New:Limited support for Xcode automatic code-signing for iOS/tvOS.
+
+* New:Reimplement RQT_AbsoluteTime for Metal using a similar emulation to OpenGL on Mac so that the scalability system can correctly set the default graphics options.Not all drivers support this and in those cases the scalability settings are determined by an alternative, fixed, code-path.
+
+* Bugfix:Fixed mouse position issues in fullscreen mode on Mac.
+
+* Bugfix:Fixed an issue in Avf Media Player causing looped movies to only play once.
+
+* Worked around Metal's lack of implicit type-casting that was causing incorrect rendering in the Distance Field Ambient Occlusion and Shadows shaders.
+
+* Re-ordered the options in MetalRHI's internal debug options (Console Variable: "rhi.Metal.RuntimeDebugLevel") to make it more efficient.
+
+* Minimisation of render-target changes in some passes, notably Scene Occlusion and DBuffer Decals.
+
+##### Tools
+
+* Bugfix:Fixed a rare crash with the Web Browser widget on iOS.
+
+* Bugfix:Fixed iPhonePackager errors in output log when opening Project Settings on Windows.
+
+* Bugfix:Fixed Get Max Samplers returning an incorrect value for iOS OpenGL, which could have suppressed some warnings for shaders that used more than 8 samplers.
+
+* Removed duplicate gc.MaxObjectsInGame setting in IOSEngine.ini.
+
+##### Windows
+
+* Bugfix:Fixed a problem on Windows where the cursor would get locked to a part of the screen after switching from fullscreen to windowed while the cursor was unlocked.
+
+#### Programming
+
+* New:Added an experimental Android option to enable Shipping builds with hidden symbol visibility by default. (bBuildWithHiddenSymbolVisibility).
+
+ * Add JNI_METHOD for java accessible native functions, without this java will trigger an unsatisfiedlinkerror exception.
+
+ * This can significantly reduce the size of the final .so file.
+
+* New:Added support for map file generation with Android.
+
+* New:Crash reporter is no longer staged by default when packaging from the editor.The default endpoint for crashes was an Epic server, so including it in packaged games by default was not useful.
+
+* New:Script plugins can now specify dependencies which should trigger UnrealHeaderTool to be re-run, by overriding the IScriptGeneratorPluginInterface.GetExternalDependencies() method.
+
+* Bugfix:Fixed a crash where Canvas wouldn't update font engine services if it was never created.
+
+* Bugfix:Fixed an issue with Automation Tool exception when running Perforce commands if multiple brokers are present in the server configuration.
+
+* Android links with -gc-sections to remove unused code/data.
+
+* Program targets can now be excluded from the full solution build roster by setting bBuildInSolutionByDefault to false from their .target.cs file.
+
+#### Rendering
+
+* New:Added support for Window PIX.
+
+* New:Enabled support for NVIDIA Aftermath.On Aftermath enabled executables you can now get a GPU callstack when a GPU crash is detected.
+
+* New:Enabled support for global Distance Field shaders on GL 4.3 and Vulkan SM5.
+
+* New:Added support for Quad overdraw viewmode in the Forward Renderer.
+
+* New:Add support for per-component Skeletal Mesh skin weight overrides.
+
+* New:Added /VIRTUALIZEDIRECTX option to XgConsole for XGE shader compiling to work on remote machines without DX installed.
+
+* New:Added support for Structured-Buffer resource views to Metal RHI.
+
+* New:Added AMD path to experimental D3D11 HDR support.
+
+* New:Exposed the r.DisableDistortion cvar for toggling distortion rendering.
+
+* New:The high level rendering code is now PipelineStateObject aware which will allow us to reduce complexity in the rendering backends of Vulkan, Metal and Dx12 in the future.
+
+* New:Added FShaderCodeLibrary which handles de-duplication of shaders during content cooking and the shader code has moved into a separate library for cooked content runtime loading.This reduces package sizes and load-time overhead.
+
+* New:Added RHIShaderLibrary for platform specific native shader library implementations.This allows each platform to provide its own optimal shader library implementations.
+
+* New:Added Metal (MacOS and iOS) native shader library where shaders are loaded from a single Metal library improving the memory footprint, load time, and runtime compile times.
+
+* New:As part of the cook process for Metal, the archiving process also generate text shaders that can be used when running with optimized Metal shaders.Run with optimized shaders and while debugging with text source.
+
+* New:Added command line option "-noheartbeatthread" to disable heart beat thread.
+
+* New:Full refactor of the GPU Skin Cache to fix multiple issues related to Editor, Persona, per-frame numbering.Memory limit is now set per World in the Project Settings > Rendering section.
+
+* New:ShaderCache now supports running with multithreaded rendering.Command line flag "-norhithread" is no longer required to enable this feature and can now be removed if it was being used solely for this purpose.
+
+* Bugfix:Fixed a crash with D3D12 in "Update Texture 2D".
+
+* Bugfix:Fixed an assertion failure in basepass when trying to draw a mesh with Post Process Material.
+
+* Bugfix:Fixed a crash when the Tile Renderer renders before any other renderer.This could happen in rare cases on Editor bootup.
+
+* Bugfix:Fixed a crash accessing mesh Material arrays with invalid index.
+
+* Bugfix:Fixed a potential crash when rendering to accessible buffer.
+
+* Bugfix:Fixed a possible crash when failing to import cubemaps.
+
+* Bugfix:Fixed a crash for MacOS/Metal when compiling Materials using the Vector Noise node.
+
+* Bugfix:Fixed overflow issues that could occur on mali based devices when rendering DoF with bright objects.
+
+* Bugfix:Various Vulkan fixes:
+
+ * Compiles in Linux.
+
+ * Many cubemap issues squashed.
+
+ * Changed the scratch reflection cubemap clear to SetRenderTargestsAndClear, instead of SetRenderTarget() / Clear().
+
+ * Added compute fences.
+
+* Bugfix:Fixed several sRGB related issues with Retainer Box widget.
+
+* Bugfix:Fixed an issue with prepass/basepass z-fighting, caused by bad vertex welding in depth-only indexbuffer.
+
+* Bugfix:Fixed an issue with velocity rendering when an off axis projection matrix changes from frame to frame.
+
+ * Affects very few people.Cave rendering and stereo glasses but not HMDs.
+
+* Bugfix:Fixed an issue with scene motion blur data is only updated for the main renderer frames.Fixes scene captures and planar reflections breaking object motion blur.
+
+* Bugfix:Fixed an issue with Exponential Height Fog where it renders incorrectly after world origin rebasing.
+
+* Bugfix:Fixed an issue introduced into 4.15 where Static Meshes with auto-generated LODs were no longer sharing lightmaps between LODs.
+
+* Bugfix:Fixed bug converting a Procedural Mesh component to a Static Mesh if it only contains a single triangle.
+
+* Bugfix:Fixed an issue where Scene Capture 2D's show flags would not be applied properly in some circumstances.
+
+* Bugfix:Fixed an issue where the "disable Stationary Skylight" feature would cause improper warnings.Also made it so that a movable Skylight is always used in Persona preview window so all projects can get preview lighting.
+
+* Bugfix:Fixed an issue where High Quality Particle Lights would not move properly if their parent was attached to a socket of an animated skeleton.
+
+* Bugfix:Fixed detection of OpenGL Radeon driver on Mesa.
+
+* Bugfix:Fixed an issue with shot command in Vulkan.
+
+* Bugfix:Fixed an issue with refract() intrinsic handling in hlslcc for GL/Metal/Vulkan.
+
+* Bugfix:Fixed an issue with missing Mobile Material Interface for Landscape "Used Materials" check.
+
+* Bugfix:Fixed rare case where Decals could incorrectly draw a second time in separate translucency pass.
+
+* Bugfix:Fixed a bug with the basic eye adaptation mode that could result in incorrect brightness when using a small viewport.This has no effect on the default histogram version of eye adaptation.
+
+* Bugfix:Fixed an issue with Separate Translucency being affected by Gaussian DoF.
+
+* Bugfix:Fixed an issue with "Streaming Bounds" show flag not working correctly.It now shows the texture streaming bounds for the textures currently selected in the Content Browser.
+
+* Bugfix:Fixed possible stall when canceling texture updates.
+
+* Bugfix:Fixed an issue for tone mapping of bright objects with zero green.Previously, these could have had a one-pixel black outline.
+
+* Bugfix:Fixed an issue with the IES Light Profile importer with LM-63-1986 format.
+
+* Texture flags are now properly routed to RHICreateTexture3D from the render target pool.
+
+* Collection Parameter Nodes no longer rename parameters when duplicated.
+
+* Renamed console variable "r.Streaming.ScaleTexturesByGlobalMyBias" to "r.Streaming.ScaleTexturesByGlobalMipBias".
+
+* Now when using the "freezerendering" command, the foliage culling/occlusion will also be frozen.
+
+* Optimize the computation behind the Screen Position material expression in the pixel shader.
+
+ * Exposes the viewport offset of the view within the render target in the View Property material expression.
+
+##### FX
+
+* Bugfix:Fixed an issue with rendering corruption issue with 4 and 8 vertex instanced particles using the wrong Vertex Factory objects.
+
+ * D3D didn't need separate Vertex Factories due to the VertexDecl updating the stride at draw call time, but some platforms were affected.
+
+##### Lighting
+
+* New:Improved quality and significantly faster cubemap prefiltering for reflections and skylight.
+
+* New:Post Process Indirect Lighting Intensity no longer scales Skylight reflections.
+
+* New:Screen Space Reflections (SSR) now has a higher quality setting for sharp SSR when using Quality Level 4.
+
+* New:Distance field self shadowing controls for hiding world position offset self-shadow artifacts.
+
+ * Removed Static Mesh Build Settings "Distance Field Bias", which shrunk the distance field, breaking AO and shadows.
+
+* New:Distance field mesh visualization now uses a cone containing the entire tile to cull objects with, making the results stable.
+
+* New:Distance field temporal filter stores a confidence value, which is used to track leaking of occlusion during the upsample, and flush those leaked values through the history faster.Reduces DFAO ghosting when the camera is moving.
+
+* New:Added some new features to the Skylight component.
+
+ * "Occlusion Exponent" which is useful for brightening up indoors without losing contact shadows as “Min Occlusion†does.
+
+ * "Occlusion Combine Mode" which is useful for artists to choose how to combine SSAO with Distance Field Ambient Occlusion.
+
+* New:Added "r.AOListMeshDistanceFields" which dumps out mesh distance fields sorted by memory size, useful for directing content optimizations.
+
+* New:Planar reflections handle views smaller than the render target in a general way.
+
+ * Fixes planar reflections with adaptive pixel density (ViewFamily size larger than actual views combined).
+
+ * Planar reflections are now supported in splitscreen.
+
+* New:Support for fading of Light Propagation Volume cells towards the volume edges.
+
+* Fresnel of clear coat layer now darkens diffuse for the clear coat shading model.
+
+* SSR is now reprojected correctly on moving objects.
+
+* Raised High ShadowQuality to 2048 as 1024 for CSM is too low.
+
+* Disabled all distance field features on Intel cards because the HD 4000 hangs in the RHICreateTexture3D call to allocate the large atlas.
+
+##### Materials
+
+* New:Added a "Sign" material graph node which replaces the library function for more optimal translation.
+
+* New:Added MinimalAPI to several material expressions.
+
+* New:Updated default behavior of "Power" node to no longer “abs†or “max†against an arbitrary value as the results were incorrect.
+
+ * Previous version available by calling ClampedPow(x, y) in a "Custom" node.
+
+* New:Improved material translation preservation of constants.
+
+ * This improves detection of used attributes which prevents some cases of features being enabled incorrectly.
+
+* New:Material flag normal curvature to roughness now works in the Deferred Renderer.It is no longer forward only.
+
+* New:Improved Material graph error messages.
+
+* New:Enabled "r.Streaming.UsePerTextureBias" by default as a way to improve quality in low texture budget settings.
+
+* Bugfix:Fixed errors across various library Material Functions.
+
+* Bugfix:Fixed an issue with broken size query for render targets in Material graphs.
+
+ * Implemented missing "Get Size" functionality.
+
+* Bugfix:Fixed various data type inconsistencies on legacy Make and Break Material Attributes graph nodes.
+
+ * Using these together with the "Get" and “Set†Materia lAttributes nodes should now be more forgiving.
+
+* Bugfix:Fixed a regression in HLOD shadow casting performance.
+
+* Bugfix:Fixed inconsistent results with the "Investigate Texture" commands.
+
+* Bugfix:Fixed possible incorrect results when listing textures used by Material Instances.
+
+* Bugfix:Fixed an issue where Material Reroute nodes did not bind properly to Texture Object Parameters.
+
+##### Mobile Rendering
+
+* New:Mobile Skylights no longer render the scene on the device to determine the sky's color.Mobile skylight uses values determined via captures performed in the editor.This saves memory and performance on device and enables Skylight contribution on devices that do not support fp16 render targets.
+
+* New:Added "r.Mobile.TonemapperFilm" console variable which can be used to enable/disable new filmic tonemapper on Mobile devices, independently from Desktop platforms (disabled by default).
+
+* New:Material AO is now supported for the Mobile Rendering path.
+
+* New:Added better defaults for rendering resolution on iOS devices, to make them more inline with defaults on Android devices.
+
+* Bugfix:Fixed a crash that could occur on some devices when loading materials which use fonts as texture parameters.
+
+* Bugfix:Fixed a crash with Particle Cutouts on mobile devices that don't support hardware instancing (ie. Mali-400 GPU).
+
+* Bugfix:Fixed a crash when enabling shader cache on NVIDIA Shield devices.
+
+* Bugfix:Fixed a crash when previewing feature level ES3.1 with a Material using World Position Offset.
+
+* Bugfix:Fixed a crash with Media Player on iOS devices.
+
+* Bugfix:Fixed an issue with Static Mesh self-shadowing with modulated shadows.
+
+* Bugfix:Fixed several issues that could cause CSM shadowing on mobile devices to flicker.
+
+* Bugfix:Fixed an issue with scene captures on mobile when Mobile HDR is disabled and the scene capture source is Scene Color.
+
+* Bugfix:Fixed an issue with bright dynamic point lights cause bloom rendering artifacts on Android Mali devices.
+
+* Bugfix:Fixed an issue where Landscapes do not render on some Android PowerVR devices.
+
+* Bugfix:Fixed an issue where translucent object appear black on Zenfone5.
+
+* Bugfix:Fixed an redundant blend state change in OpenGL ES2.
+
+* Bugfix:Fixed rendering artifacts with bloom on iPhone7 using Metal.
+
+* Bugfix:Fixed an issue where exposure was more extreme on mobile devices with a new filmic tonemapper enabled.
+
+* Bugfix:Fixed an issue with padded NPOT textures not rendering correctly on iOS.
+
+* Bugfix:Fixed an issue with gamma issues with canvas elements on iOS Metal devices.
+
+* Significantly reduced OpenGL state setup for Slate draw calls on Mobile devices.
+
+* Slate pixel shaders will use half precision, for better UI performance on Mobile devices.
+
+* Mobile targeted projects will have better UI performance settings by default.
+
+##### Optimizations
+
+* New:Added 'r.CompressMeshDistanceFields' console command to rendering project settings, defaults to off to prevent hitches when streaming in levels.
+
+ * When enabled, mesh distance fields are stored zlib compressed in memory until needed for uploading to GPU.
+
+ * 81Mb of backing memory -> 32Mb in GPU Perf Test.
+
+ * Atlas upload time 29ms -> 893ms.
+
+* New:Added a new global distance field (4x 128^3 clipmaps) which caches mostly static primitives (Mobility set to Static or Stationary).
+
+ * The full global distance field inherits from the mostly static cache, so when a Movable primitive is modified, only other movable primitives in the vicinity need to be re-composited into the global distance field.
+
+ * Global distance field update cost with one large rotating object went from 2.5ms -> 0.2ms on 970GTX.Worst case full volume update is mostly the same.
+
+* New:Added LOD Distance Factor to Scene Capture Component, which can be used to make scene captures and planar reflections much cheaper to render if the scene has good LODs setup.
+
+* New:Added the r.LightMaxDrawDistanceScale console command for local light scalability.
+
+* New:Added a rendering project setting to use 8 bit mesh distance fields.
+
+ * This halves their memory requirement but introduces artifacts with large meshes.
+
+* New:Added new async tasks to reduce the cost of the texture streaming update on the game thread.
+
+* New:Added some automatic callbacks whenever dynamic component renderstates are updated in order to also update their texture streaming states.
+
+* Bugfix:Fixed async SSAO not actually running asynchronously when depth drawing mode was DDM_AllOpaque.
+
+* Bugfix:Fixed render queries stalling in Test/Shipping builds due to lack of pooling.
+
+* Ray Traced Distance Field Shadow optimized.
+
+ * From 1.8ms -> 0.8ms in a test scene.
+
+* Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough.This saves 10mb of tile culling buffers.
+
+* GNM RHI Clear UAV uses a compute shader for buffers larger than 1Kb.
+
+* GNM Structured buffers are now placed in GPU memory (was previously in CPU memory).
+
+* DFAO optimizations:
+
+ * Changed the culling algorithm to produce a list of intersecting screen tiles for each object, instead of the other way around.Each tile / object intersection gets its own cone tracing thread group so wavefronts are much smaller and scheduled better.
+
+ * From 3.63ms -> 3.48ms (0.15ms saved).
+
+ * Replaced slow instructions in inner loop with fast approximations (exp2 -> sqr + 1, rcpFast, lengthFast).
+
+ * From 3.25ms -> 3.09ms (0.16ms saved).
+
+ * Moved transform from world to local space out of the inner loop (sample position constructed from local space position + direction).
+
+ * From 3.09ms -> 3.04ms (0.05ms saved).
+
+* Structured buffers for DF object data.
+
+ * Full global distance field clipmap composite 3.0ms -> 2.0ms due to scalarized loads.
+
+* Exposed MaxObjectsPerTile with the 'r.AOMaxObjectsPerCullTile' console command and lowered the default from 512 to 256.This saves 17Mb of object tile culling data structures.
+
+ * This can cause flickering in Ray Traced Distance Field shadows if too many objects fall into one shadowmap culling tile.
+
+* Scene color resolves are restricted to the views.This fixes inefficiency with adaptive pixel density where the views don't match the view family size.
+
+* When using a full prepass, the base pass no longer writes depth.
+
+ * Saves 0.3ms of Scene Depth Resolve on 970 GTX with MSAA.Also allows masked materials to get EarlyZ in the base pass.
+
+ * Fixed primitives with Use As Occluder set to false being excluded from a full depth pass in static draw lists.
+
+ * Added the "r.BasePassWriteDepthEvenWithFullPrepass" console command for verifying that the base pass depths match the prepass depths.
+
+* Changing movable skylight properties no longer affects static draw lists.
+
+* Mesh distance field generation uses Embree, which provides a 2.5x speed increase.
+
+* Cleared light attenuation for local lights with a quad covering their screen extents.
+
+ * Clearing the entire light attenuation buffer costs 0.1ms.This optimization lowers the minimum cost of a shadow casting light from 0.15ms to 0.03ms.
+
+* Flushed deferred deletes when reallocating distance field atlas to reduce peak memory, at the cost of a hitch on first frame.
+
+* Disabled point / spot lights with Max Draw Distance on Low PC.
+
+* Made use of Metal's "Deferred Store Actions" where available to avoid incorrect “Store†actions introduced when restarting passes to switch encoder types or when using the Metal RHI debugging tools.
+
+* Stopped the Shader Cache recording all the RHI resources unless it is running on OpenGL.This significantly reduces the CPU overhead of enabling the Shader Cache.
+
+* HLOD texture force loaded through the "r.Streaming.HLODStrategy" console command will now load visible mips first.
+
+* The command "BuildMaterialTextureStreamingData" can now be used with "all" as argument to force a rebuild.
+
+* Reduced the texture streaming overhead for components by keeping track of the state within the streamer.
+
+##### Postprocessing
+
+* New:Using Custom Depth to write to the stencil buffer now has the ability to use single-channel bitmasks that ignore depth.This makes it possible to detect overlaps between stencil objects.
+
+* Bugfix:Fixed log value conversion in tonemapping causing true blacks to be lost.
+
+* Motion blur no longer gets dark at the edges of the screen.
+
+#### UI
+
+* New:Added API to programmatically change the Virtual Cursors UMG Widget on the Viewport Client.
+
+* Bugfix:Fixed sRGB conversion issues in Retainer Box when used with a material.
+
+* Multiline editable text boxes can now be marked as read-only.
+
+* Selecting multiple text widgets will now correctly set text when the text field is edited.
+
+* Widget Components will now correctly determine between hover and clicked states when using or simulating touch.
+
+##### Slate
+
+* New:Added Enum Has All Flags and Enum Has Any Flags, templated functions to make it easier to check for the existence of a flag on enum classes.
+
+* New:There is now a console variable option, Slate.VerifyHitTestVisibility (off by default), which enables additional visibility checks for widgets.Normally this is not necessary, but if you are changing the visibility of widgets during a frame, and several hit tests need to be performed that frame, there is a chance that a button could be clicked twice in one frame.Enabling this mode will make all hit testing more expensive, so for now it is off by default, but available for licensees that need the extra testing.
+
+* New:Added the ability to invert alpha when drawing slate textures.This will be used in the future for rendering render targets for the scene which have inverted alpha.
+
+* Bugfix:Fixed a crash during editable text widget destruction while a context menu was still open.
+
+* Bugfix:Fixed a crash when deleting a streamed font.
+
+* Bugfix:Fixed lots of outline data being added to the font cache due to wrongly hashing outline material and color data.
+
+* Bugfix:Tooltips will no longer show if the cursor is not directly over a Slate window.Fixed a case where the tooltip would not disappear when the cursor is moved over another application's window that was placed on top of a Slate window.
+
+* Bugfix:Fixed an issue where the cursor would sometimes not appear when its visibility was changed.This was rooted in how the OS requested cursor changes, WM_SETCURSOR on Windows only asks for new cursors when the mouse moves, but often cursors change just because mouse capture changes.So now the path has been centralized in Slate Tick to only handle the cursor changes in one place, and several places that need to refresh the cursor state, now set a flag to handle it on next tick.
+
+* Bugfix:Fixed a bug with ZOrder being discarded on the SOverlay slot.
+
+* Bugfix:Fixed Web Browser Viewport to properly scale.
+
+* Bugfix:SButton now correctly releases mouse capture even if it becomes disabled while pressed, but before 'click' has been fired.
+
+* Improved text rendering when the last resort font is missing.
+
+ * The last resort font is no longer included in shipping builds, so this change makes some improvements to text rendering when it is missing.
+
+ * The legacy font cache no longer tries to use the last resort font if it is not available (preventing warnings).
+
+ * The Slate font renderer no longer tries to use the last resort font if it is not available.
+
+ * Text shaping will use the last resort character if none of the available fonts can render a given character (likely because the last resort font is missing).
+
+ * HarfBuzz shaped text now uses the fallback character correctly.
+
+* Kerning-only text shaping no longer draws characters to get their metrics.
+
+* Text selection height is now the maximum of the line height and text height to account for negative line-height scaling.
+
+* Added a setting to control whether we should use the font metrics or the bounding box when laying out a font.
+
+ * Not all fonts have accurate metrics data, so using the bounding box can produce much better results for certain fonts.
+
+* Made slate loading widget / movie playback more thread safe by eliminating Slate application or the main window from being ticked directly on another thread.Is In Game Thread will also no longer return true when called from the slate loading widget thread.
+
+* Force resolution in standalone if the resolution is larger than primary working area.
+
+* Moved ESlateDrawEffect & ESlateBatchDrawFlag over to be enum class.Found cases where the enum order was being improperly assumed, and so now it will not be possible to just treat an int32 or a bool as the draw effect value.
+
+* Slate Application now maintains separate tracking for each pointer being utilized for drag drop, so now multiple fingers on multiple widgets can now simultaneously be attempting a drag, however once one of them becomes successful, we clear all state of all other tracking since only one Drag Drop operation is possible at a time.
+
+* Fold Tick is now removed from the codebase.We have not supported the other (non-folded) code path for awhile, so there was no point in maintaining the switch.
+
+* The Checkbox widget no longer just passes visibility down to the internal widgets it creates, that prevents future changes to affect it if it starts collapsed.
+
+##### UMG
+
+* New:Added Timing Policy option to Widget Component, so widgets can optionally tick in pausable/dilatable game time rather than real time.
+
+* New:Added a material function that exposes all of the current UV sets with nice names instead of indexed coordinates.
+
+* New:Added a method to create Slate Brushes from Paper Sprites the same way we can for materials and textures in blueprints.
+
+* New:Introduced PreConstruct and Native PreConstruct to the base User Widget.Users can now visualize non-binding based changes in the designer by evaluating a very limited amount of the blueprint code.In the event your user widget crashes on load, due to calling something unsafe, you can disable evaluation in the editor preferences under Widget Designer.
+
+* New:Introduced a way to inform widgets of more information about the designer.There is now a Designer Changed event sent to all design time widgets letting them know things like the current screen size and DPI scale.
+
+* Bugfix:Fixed a crash if UI blurs are rotated.
+
+* Bugfix:Outline color on text elements is now inherited properly.
+
+* Bugfix:Fixed a bug that prevented Get Owning Player in Widget from returning.
+
+* Bugfix:Additional fixes to the way we migrate changes from the preview to the serialized version of the widget tree in the widget editor.This fixes several issues with edit-inline Objects on Widgets.
+
+* Exposed a normalized (0-1) uv coordinate set and scaled pixel size for Box and Border brushes.
+
+* Widget Interaction Components now ignore Visible(false) Widget Components when tracing.
+
+* Widget animations now finish evaluating before firing an event alerting that the animation finished.
+
+* The Widget Interaction Component now checks if the Widget is enabled before it claims that it is over an interactable or keyboard focusable widget.
+
+* Adding some setters and getters for Redraw Time to the Widget Component.
+
+* Widgets projected into screenspace from the Widget Component should now appear in the correct locations if the player's camera has an aspect ratio lock.
+
+* The Safe Zone widget will now show the correct safe zone amount if you use the safezone command line options, which are now documented in the comment for the Safe Zone class.
+
+* Widget switchers that contain widgets with named slots will now correctly display a widget whose named slot is currently selected.
+
+* Widgets that are copied and pasted will now retain the same name in the widget hierarchy.
+
+#### VR
+
+* New:Added support for getting device depth from Scene Capture Component 2Ds.
+
+* New:Added ability to disable the autoloading splash screen, which would prevent the manual "hide splash screen" node from working properly.
+
+* New:Added Gear VR controller support.
+
+* New:Added support for OES_EGL_image_external to the mobile GL renderer.
+
+* Bugfix:Negative Stereo Layer priorities are now handled correctly on Steam VR.
+
+* Bugfix:Fixed threading issue with motion controller tracking that caused controller motion pops.This problem manifested intermittently.
+
+* Bugfix:Fixed crash on Oculus Rift when attempting to enter stereo mode while the HMD's 'on head' proximity sensor is not triggered.
+
+* Bugfix:Fixed low framerate when Oculus Rift 'on head' proximity sensor is not triggered and you exit stereo rendering.
+
+* The GearVR HMD plugin is now only enabled on Windows if the Oculus service is already running.
+
+* VR console commands have been rewritten to support autocompletion and inline help strings.
+
+ * The VR console commands have also be renamed and now begin with vr.*.
+
+ * The renamed VR commands have backwards compatible aliases, but will print a warning notifying the user about the deprecated functionality.
+
+* GoogleVR HMD now reacts to changes in the r.ScreenPercentage console command.
+
+* When the -hmd command line option is used to override the selected HMD, HMD plugins that are loaded early will now be unloaded during PreInit if not selected.
+
+* Integrated OpenGL support for SteamVR.
+
+* The left eye is used when selecting LODs to avoid selecting two separate LOD levels when rendering in stereo.
+
+* PSVR controller tracking limit management system.
+
+ * PSVR can track the HMD and two controllers, but many more devices can be connected.With this system you can manage which controllers are tracked to stay under the limit.
+
+* Additional WorldScale refactoring for all platforms.
+
+* GoogleVR plugin updated to version 1.3
+
+* Fixed Android manifest for Daydream and Cardboard.
+
+* Updated GoogleVR plugin to version 1.3.
+
+* GoogleVR SDK updated to 1.40.0.
+
+* GoogleVR Mode default changed to Daydream and Cardboard.
+
+## Programming Release Notes
+
+#### AI
+
+* New:Added a new mode to composite EQS generator (UEnvQueryGenerator_Composite), which allows the use of different types of items by each child generator.This can be enabled by advanced properties: bAllowDifferentItemTypes and ForcedItemType.ForcedItemType is the final type returned by the generator, and is used for allocating memory and executing tests.This mode is potentially unsafe and you will have to ensure proper memory layout (matching with ForcedItemType) of all item types used by child generators - usually subsets of ForcedItemType.Keep in mind that allocated memory block is zeroed before use.
+
+##### Debugging Tools
+
+* Bugfix:Fixed VisualLog macros for recording segments with user defined thickness.
+
+* Bugfix:Fixed compilation errors in VisualLog macros for recording custom meshes.
+
+##### Navigation
+
+* Bugfix:Fixed memory corruption in generic A* solver:FGraphAStar.
+
+* Bugfix:Fixed unique Id duplicates in custom navigation links.
+
+* Bugfix:Fixed FRecastTileGenerator::Modifiers being erroneously counted twice when stating memory.
+
+* NavModifierVolume has been marked as ENGINE_API and can now be freely used in game code.
+
+* Made FNavAgentProperties::GetExtent return INVALID_NAVEXTENT if a prop's AgentRadius is not set.This results in properly using FNavAgentProperties::DefaultProperties in navigation queries when no query extent override is provided.
+
+#### Animation
+
+* New:Added more exports to AnimationAsset, AnimSequenceBase, and Skeleton classes.
+
+##### Animation Blueprint
+
+* Bugfix:Fixed nodes only getting CopyNodeDataToPreviewNode called when pin defaults were changed (not any property change).
+
+##### Skeletal Mesh
+
+* New:Added exports to FFbxImporter, FDynamicSkelMeshObjectDataCPUSkin, and FSkeletalMeshObjectCPUSkin, for extensibility.
+
+#### Audio
+
+* New:Added new cvars to help with optimization (only applies to the new Audio Mixer).
+
+ * au.DisableReverbSubmix, au.DisableEQSubmix, ​au.DisableParallelSourceProcessing, au.SetAudioChannelCount
+
+* Bugfix:Fixed MIDI Device plugin public headers not being able to be included from an external module.
+
+* Optimized internals of new Audio Mixer.Gains approach 15% savings from before:
+
+ * Turned a float divide into a multiply, which occurred at least 32k times per audio update.
+
+ * Avoided thousands of Array.Add() calls during processing, which on shipping still does checks to see if the allocator has to grow, and updates ArrayCount.
+
+ * Removed pointer indirection and successive TArray Add()s in GetChannelMap().
+
+ * Removed function call overhead to updating channel map.
+
+ * Simplified FSourceParam::Update() to reduce branching and have one return site.
+
+ * Added alternative to GetChannelMap() called UpdateChannelMap() that avoids copying out values to an array.The values can then be fetched from the channel data directly.
+
+ * Refactored internal data to use array of structs rather than struct of arrays for better cache coherency when processing channels one at a time.
+
+#### Blueprints
+
+* New:Added an error when declaring a Blueprint Implementable Event with an enum param that is not plain or a byte type (Blueprints only support byte-sized enums).
+
+#### Core
+
+* New:There are now several serialization options available to specify what the cooked Asset Registry includes.Look for the serialize flags inside the [AssetRegistry] section of BaseEngine.ini.
+
+* New:An experimental bUseAssetRegistryForIteration option has been added to CookerSettings.This improves the performance of iterative cooking by loading the cooked Asset Registry directly, but it may still have issues with some changes to source files being missed.
+
+* New:Added a cvar to control the pak precacher throttle.
+
+* New:Added new GenericPlatformFile function, GetTimeStampLocal, which returns file time stamp in local time instead of UTC.
+
+* New:Added a check against assembling the reference token stream while streaming without locking the garbage collector.
+
+* New:Added a static_assert to prevent the use of TMap keys which do not implement GetTypeHash, as this causes runtime crashes when they are manipulated by a UMapProperty.
+
+* New:Added a bForceDebugUnrealHeaderTool option to BuildConfiguration.xml which forces the Debug version of UnrealHeaderTool to be run instead of Development.
+
+* New:Added a static_assert to ensure that TInlineSetAllocator is instantiated with a power-of-two hash size, as this is a requirement for TSet and TMap.
+
+* New:Added ICppStructOps::IsAbstract() for testing if a native type is abstract via the property system.
+
+* Bugfix:Fixed TInlineValue not calling virtual destructors.
+
+* Bugfix:Fixed several issues with editor-only objects not being correctly stripped when cooking.
+
+* Bugfix:Fixed several issues with Config files loaded from Plugins.They now correctly handle diffing game-specific changes.Engine plugins config files should be named BasePluginname.ini, and game plugins should be DefaultPluginname.ini.
+
+* Bugfix:Fixed many bugs with the event driven loader and allowed it to work at boot time.
+
+* Bugfix:Fixed a bug with nativized Blueprints that was introduced with the boot time EDL changes.
+
+* Bugfix:Fixed race in audio streaming.
+
+* Bugfix:Fixed bug which would cause a fatal error when cooking subobjects that were pending kill.
+
+* Bugfix:Fixed a bug with EDL at boot time which caused a fatal error with unfired imports.
+
+* Bugfix:Fixed a bug with RF_PendingKill subobjects and the new loader.
+
+* Bugfix:Fixed an obscure problem with stats in commandlets that use async tasks.
+
+* Bugfix:Fixed rare ensure cooking for the EDL.
+
+* Bugfix:Fixed boot time EDL causing some issues even when it wasn't being used.
+
+* Bugfix:Fixed .pak precacher shutdown.
+
+* Bugfix:Fixed memory leak in .pak precacher.
+
+* Bugfix:Fixed bad merge of priority change in the EDL.
+
+* Bugfix:Fixed race that resulted in a memory leak when reading compressed paks.
+
+* Bugfix:Fixed a weird recursive situation where StaticLoadObject could return an object that has not finished loading.Also produces a fatal error if this happens.EDL only.
+
+* Bugfix:Fixed batched render fences when BeginDestroy calls FlushRenderingCommands.
+
+* Bugfix:Fixed loading a package that is already loaded.
+
+* Bugfix:Fixed crash in signature checks when mounting pak files.
+
+* Bugfix:Fixed a change to NotifyPrimitiveDetached so that it works in the editor.
+
+* Bugfix:Fixed hash table lock optimization.
+
+* Bugfix:Fixed a crash relating to FGenericAsyncReadFileHandle when not using the EDL.
+
+* Bugfix:Fixed comments in GenericPlatform.h.
+
+* Bugfix:Fixed errors raised during code generation when a multiply-inherited base class happens to have the same name as a UObject after its prefix is stripped.
+
+* Bugfix:Fixed a compile error when calling TArray::HeapSort on an array of pointers.
+
+* Bugfix:Fixed a crash when calling UCookOnTheFlyServer::FFilePlatformRequest::ToString().
+
+* Bugfix:Fixed compile errors raised when #pragma is used inside USTRUCTs.
+
+* Bugfix:Fixed compile errors caused by whitespace existing before a UCLASS() macro.
+
+* Bugfix:Fixed TStructOpsTypeTraits::WithCopy giving different results when the trait is specialized without a WithCopy value from when it isn't specialized at all.
+
+* Bugfix:Fixed a compile error when serializing bools to an archive in editor builds, where the archive type overrides other serialization operators.
+
+* Bugfix:Fixed FWorldTileInfo::Read() to copy the correct licensee version number from the file summary into the archive.
+
+* Bugfix:Fixed a regression in FObjectAndNameAsStringProxyArchive to re-allow serialization of TWeakObjectPtrs.
+
+* Bugfix:Fixed some include-what-you-use issues in the engine and plugins.
+
+* Bugfix:Fixed UPROPERTYs being skipped when there are redundant semi-colons between the properties.
+
+* Asset Registry memory and performance have been significantly improved in both Editor and cooked games for large projects.
+
+* Allowed UnrealPak to do a better job with EDL pak files when the order provided is old or from the cooker.
+
+* Several minor tweaks to low level async IO stuff.
+
+* Stored a copy of the callback in async read request so that we do not need to worry about lifetime so we can capture variables as needed.
+
+* Cancelling async loading with the EDL loader now prints a warning and does a flush instead.
+
+* Suppressed a few EDL cook warnings.
+
+* Tweaked the EDL for to all platforms.
+
+* Platform load time performance tweaks.
+
+* Abstracted the IO tracker and handle manager for other platforms and applied it to all platforms.
+
+* Protected against UDeviceProfileManager::Get() recursion and demoted a related fatal error to a log statement.
+
+* Removed old code relating to FAsyncArchive, FAsyncIOSubsystemBase and package level compression.The editor now uses the lowest levels on the new async IO scheme.
+
+* Increased estimate of summary size.
+
+* Avoided adding a linker annotation if it actually has not changed.This improves ConditionalBeginDestroy performance.
+
+* Avoided a redundant removal of PrimitiveComponent from the streaming managers during ConditionalBeginDestroy.
+
+* Optimized UObject hash tables for speed and space.
+
+* Put the special boot order things into baseengine.ini so that licensees and games can add to it.
+
+* Renamed HasBeenAlreadyMadeSharable to DoesSharedInstanceExist.
+
+* PostLoadSubobjects is now called on all objects regardless of whether they have a CDO as outer or not.
+
+* When Rename is used to change the Outer without specifying a new name, the existing name is maintained whenever possible.
+
+* ForwardVector, RightVector, and single float FVector constructors are now recognized by Unreal Header Tool as default values for an FVector parameter.
+
+* ScriptMacros.h no longers needs to be included in header files that generate a header.
+
+* Improved the readability of some of the ReferenceChainSearch code.
+
+* Automatically included ObjectMacros.h in generated headers to prevent compile errors.
+
+* Made FPaths::Combine() variadic so that it can take arbitrary numbers of arguments.
+
+* Improved the readability of the verbosity of log categories in the debugger.
+
+* Updated TArray::Sort comments to clarify what happens when sorting an array of pointers.
+
+* Clarified the assertion message you get when inserting or removing a TArray element by reference which comes from the array.
+
+* Clarified the comments for TArray::FindLastByPredicate and FString::FindLastCharByPredicate.
+
+* Removed UnrealCodeAnalyzer.
+
+* Raised an error in UnrealHeaderTool when a header containing UCLASSes, USTRUCTs etc. does not include its .generated.h file.
+
+* Removed TBoolConstant template.
+
+* Changed TAssetPtr to allow it to be constructed from nullptr without a full definition of T.
+
+* Removed the WITH_HOT_RELOAD_CTORS macro.
+
+* Removed the UseVTableConstructors .ini option.
+
+* Removed generated FName variables for UFUNCTIONs.
+
+* Removed the generation of obsolete .java and .proto files used for replication.
+
+* Replaced the set of bools used to FBlueprintCompileReinstancer with a new EBlueprintCompileReinstancerFlags enum.
+
+* Improved hot reload logging messages to make it clear that a compile attempt on a module does not guarantee a reload of that module.
+
+* Made UnrealHeaderTool report an error if a UFUNCTION in a derived class has the same name but a different signature from one in a base class.
+
+#### Editor and Tools
+
+* New:Added spinner options to VectorInputBox.
+
+* New:Added a None option to the FKey customization, unless the FKey property had NoClear on it.
+
+* Bugfix:Implemented a fix to ensure FVirtualTrackArea::HitTestSection checks the row of the section.
+
+* Bugfix:Fixed an issue where ISequenceAudioRecorder was inaccessible to FAudioRecorder.
+
+* Project and plugin templates now use "include what you use" style by default.
+
+* When using BuildGraph, the cached list of completed nodes is now cleared by default, making the -ClearHistory argument redundant.Use the -Resume argument to continue an interrupted build using the current artifacts.
+
+* BuildGraph now outputs an error if any build products from previous steps are tampered with during the execution of a subsequent step.
+
+* The editor now offers to download and install Visual Studio 2017 if an existing version of Visual Studio is not found.
+
+* The AutomationTool -CookDir argument no longer accepts multiple parameters separated by '+' characters, since '+' is valid in directory names.Multiple -CookDir arguments are supported instead.
+
+* Game mods can now be denoted by setting the bIsMod field to true inside the .uplugin descriptor.Mods will be shown in a separate category in the plugin browser, and will be shown separately in generated project files.Installed editor builds can build and clean mods without modifying build products for the base game.
+
+##### Content Browser
+
+* Bugfix:Fixed link error when FAssetData::PrintAssetData() is used in a project.
+
+##### Sequencer
+
+* Unified global and object-bound pre animated state, and added InitializeObjectForAnimation method to state producers.
+
+* Opened the API for MovieSceneAudio-related classes along with some minor functionality additions.
+
+* Exported MovieSceneTrackEditor to allow custom tracks to be created that derive from existing tracks.
+
+#### Gameplay Framework
+
+* New:Added support for FScopedMovementUpdate to be able to queue up overlaps that do not require reflexive bGenerateOverlapEvents.This requires custom code to be able to process these overlaps.
+
+ * This allows custom inspection or processing of overlaps within a scoped move, without enabling the more expensive overlap flag.For instance you could have a fast projectile with an overlap response to a character mesh and get those overlaps from the trace without requiring expensive overlap processing when the mesh moves.
+
+ * Overlap events from the move will still only trigger from UpdateOverlaps() if bGenerateOverlapEvents is enabled on both components, as before.
+
+ * Made some data in FScopedMovementUpdate protected rather than private so it can easily be subclassed, and exposed a new helper ​SetWorldLocationAndRotation() for committing the move.
+
+* Bugfix:Fixed a crash when manipulating audio component properties from an Actor's constructor during async loading.
+
+* Bugfix:Fixed CharacterMovementComponent updates with very high delta time on server when initially joining.Made sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
+
+* CheatManager functions to Damage/Destroy targets are now easier to override in game-specific subclasses.
+
+* InputComponent now has BindAction function that allows binding functions with additional parameters.
+
+* RawInput configuration structures can now be manipulated by other modules.
+
+* AActor::GetComponents() with generic type is now optimized to not force an allocation when the component count is large.
+
+ * Previously it incorrectly assumed the output array needed space for the entire contents of OwnedComponents.If OwnedComponents.Num() > the array reserve size, this forced an allocation, even if few or no components of the requested type were found.
+
+ * It is still recommended to use TInlineComponent array or an array using TInlineAllocator<> when using this function.
+
+* Removed allocations during creation in ​AAIController::PostInitializeComponents() (in non-shipping builds).
+
+* Optimized HasActiveCameraComponent() and ​HasActivePawnControlCameraComponent() to avoid filling an array while searching for a certain component, which could have caused an allocation.
+
+* Optimized MoveComponent() collision queries to avoid processing PhysX touches when bGenerateOverlapEvents is off.
+
+ * Added support for bIgnoreTouches to FCollisionQueryParams.This allows GeomSweepMulti to filter out touches/overlaps much earlier.
+
+* MovementComponent does not ignore initial blocking overlaps when moving away from the impact normal from SafeMoveUpdatedComponent().This fixes various cases where characters could be pushed through moving objects because they were moving away from the overlapping object, but not fast enough.
+
+ * It now always uses the hit result to depenetrate from the impact as much as possible, and then retries the move.
+
+ * Hit events are not triggered for the first test for depenetration.
+
+* CharacterMovement AdjustFloorHeight() is now allowed to adjust using the line trace if the sweep was in penetration.It also forces another next floor check so it will check after it adjusts the height or depenetrates, relevant when bAlwaysCheckFloor is off.
+
+* Optimized CharacterMovement tick to not extract transform values twice when they would not change in a small block of code.
+
+* Call TickCharacterPose() and clear root motion before abandoning tick in ​UCharacterMovementComponent::PerformMovement() when movement mode is None.This prevents root motion building up until the next valid movement mode.
+
+* Applied a performance tweak to ​ApplyRadialDamageWithFalloff().
+
+ * Do not rebuild FRadialDamageEvent each loop over hit actors.
+
+ * Added stats for ​BreakHitResult()/MakeHitResult() under "stat game".
+
+* Optimized attachment to check welding option before expensive casts and body instance fetching.
+
+#### Localization
+
+* Bugfix:Fixed a bug where passing an empty FText to ChangeKey() would keep the previous FText value that had been passed in.
+
+#### Online
+
+* New:Added the bShowSkipButton parameter to IOnlineExternalUI::ShowLoginUI, which will display the "skip" button on relevant platforms.
+
+#### Other
+
+* New:Added missing initialization for SWindow::bIsMirrorWindow.
+
+* Bugfix:Added missing module dependencies.
+
+* Bugfix:Fixed a type casting issue.
+
+#### Physics
+
+* New:Added virtual keyword to DestructibleComponent ApplyDamage and ApplyDamageRadius.
+
+* New:Added Physx simulation shader override (see GSimulationFilterShader).
+
+* Bugfix:Fixed a debug rendering issue by recreating physics when changing mobility of components.
+
+* Bugfix:Fixed compile error when PHYSX_MEMORY_STATS=1.
+
+* Bugfix:Fixed performance regression caused by using collision aggregates for Instanced Static Mesh Component.
+
+* Bugfix:Fixed a crash in AABB Manager when origin shift is used.
+
+* Made UDestructibleComponent::SpawnFractureEffectsFromDamageEvent virtual.
+
+* Exported URadialForceComponent class for inheritance.
+
+* Allowed the editor to compile when bRuntimePhysicsCooking is disabled (cooking is still allowed in WITH_EDITOR builds even with it disabled).
+
+* EndPhysics tick will no longer be scheduled if QueryOnly is used on a ragdoll.
+
+* Removed the unsupported option of HideBone with DisableCollision when calling HideBone.This was not actually supported and did nothing so shouldn't break any behavior, just don't call the function.
+
+* Exposed PhysX enhanced determinism mode using the compiler flag PHYSX_ENABLE_ENHANCED_DETERMINISM.This allows local subsets of the PhysX simulation to behave deterministically independent of what is going on elsewhere in the Physics world.
+
+#### Platforms
+
+* Bugfix:Fixed a crash bug in cases where we received a duplicate user login/logout notification from the system software.
+
+* Bugfix:Fixed Codelite project having duplicated settings.
+
+* Moved some C++ defines out of the build.cs file into a C++ header.
+
+* Moved controller connect/disconnect handling to the main thread to fix issues with thread safety for callbacks.
+
+##### Android
+
+* New:Added functionality to use the visual studio mobile projects for debugging.To generate them run "generateprojectfiles.bat -vsdebugandroid" from a command prompt.After you have packaged your game for Development and put it on the device, you can set this new project as the start up project and run/debug the project in Visual Studio.
+
+* New:Support for Android runtime permissions added.Certain permissions have been removed or put under condition to check for support when the target sdk is greater than or equal to 23.
+
+##### HTML5
+
+* New:Added new webassembly (wasm) toolchain - SIMD and multi-threading are not yet supported (these are slated to be in for wasm2).
+
+ * These will be automatically turned off when building with wasm (as opposed to asm.js).
+
+* Removed HTML5 code from the Engine's SaveGameSystem.h and placed it in HTML5Platform.cpp.
+
+* Cleaned up HTML5PlatformFile.cpp and made it match as close as possible to linux's version.
+
+* Created HTML5's own PlatformFeature & SaveGameSystem files, and updated HTML5PlatformMisc to make use of the the new HTML5 SaveGame code.
+
+##### Linux
+
+* New:Added FreeBSD memory information functions to facilitate out-of-tree UE4 FreeBSD port.
+
+* New:Added a new cross-toolchain (version 9, includes clang 4.0) when targeting Linux on Windows.
+
+* New:Added some support for building on Debian Sid or Stretch.
+
+* New:Added clang to Fedora dependencies.
+
+* New:Added ability to compile Linux servers for 32-bit x86 architecture.
+
+* New:Added files generated for KDevelop to .gitignore.
+
+* Bugfix:Fixed more third party libraries to use libc++ instead of libstdc++.
+
+* Bugfix:Fixed memory leaks when symbolicating an address in Linux callstacks (during crash reporting and memory profiling).Makes runs with the memory profiler much faster.
+
+* Bugfix:Fixed rebuilding of VHACD (a third party library) on a case sensitive filesystem.
+
+* Bugfix:Fixed CodeLite projects to now use proper Debug binaries for debug configurations.
+
+* Switched Linux file abstraction to use new managed filehandles.Shared by all platforms with low limit of open files.
+
+* Whitelisted SteamVR plugin for Linux so SteamVR Blueprint functions are always available, even if stubbed.
+
+* Made source code accessor aware of clang 3.9 and 4.0.
+
+* Setup will now install the latest clang on Arch instead of clang35.
+
+##### Mac
+
+* Fixed address sanitizer support in MacToolChain (Apple changed the name of the env variable Xcode uses to enable it) and added support for thread sanitizer.
+
+* Fixed a problem where the glslang library was not enabled on Mac, preventing building an Android project with Vulkan from Mac.
+
+* Made Binned2 malloc work on Mac.
+
+#### Programming
+
+* New:When compiling a module written in include-what-you-use style, source files which are in the adaptive non-unity working set are now built with precompiled headers disabled, to expose errors with missing headers.Set bAdaptiveUnityDisablesPCH to false in BuildConfiguration.xml to disable this behavior.
+
+* New:Added initial support for async creation of pipeline state objects, enable using r.AsyncPipelineCompile.
+
+* Module .build.cs files, which depend on the contents of external files, can now add those paths to the ExternalDependencies list.Modifications to those files will trigger the the UBT makefile to be invalidated.
+
+* Plugin config files are now included in generated project files.
+
+* UnrealBuildTool will no longer attempt to use SN-DBS for build distribution if the service is disabled.
+
+* UnrealBuildTool now correctly supports compiling modular targets which do not use the shared engine build environment.
+
+* C# programs will now be included in generated project files automatically if a blank file called UE4CSharp.prog is found in the same directory.
+
+* The engine will now warn when trying to load a plugin with a mismatched "EngineVersion" setting.
+
+* Deprecated shared pointer typedef from ImageWrapper and removed usages.
+
+* Removed boilerplate header from ImageWrapper.
+
+* Removed monolithic boilerplate header from NetworkFileSystem.
+
+* Removed boilerplate header from LauncherCheck.
+
+* LauncherServices:Removed boilerplate header from LauncherServices.
+
+* Completed a modernization pass of Automation.
+
+#### Rendering
+
+* New:Added thickness option to debug DrawWireDiamond function.
+
+* New:Added a check to see if there are duplicated shader type names.
+
+* Bugfix:Fixed obscure check with flushing RHI resources.
+
+* Bugfix:Fixed hazard with SetMaterialUsage from a thread.
+
+* Bugfix:Fixed Windows handling of -sm4 and -sm5 so it can be used with -vulkan and -opengl.
+
+* Bugfix:Fixed selection of swapchain format for Vulkan on some Linux drivers.
+
+* Bugfix:Fixed an issue on Vulkan when copying into a cubemap face.
+
+* Bugfix:Fixed a bug calculating vertex declaration hashes on OpenGL.
+
+* Moved FPositionVertexBuffer & FStaticMeshVertexDataInterface declarations into their own headers, moved FStaticMeshVertexBuffer implementation into its own source file.
+
+* Updated Vulkan distributables and glslang to SDK 1.0.39.1.
+
+* Vulkan shaders now build using glslang 1.0.42.2 and includes those headers for redistribution.
+
+* Prefer D32_S8 on Vulkan instead of D24_S8 for the depth buffer.
+
+* Removed the temporary functions RHIClearColorTexture, RHIClearDepthStencilTexture and RHIClearColorTextures from each RHI.
+
+* Separated depth/stencil load/store actions.
+
+* Use the latest SDK for Vulkan, whether the one we distribute in ThirdParty or an installed version.
+
+* Implemented SetStencilRef() and SetBlendFactor() on RHIs which were missing it.
+
+#### UI
+
+##### Slate
+
+* Updated Slate to allocate widgets using MakeShared.
+
+ * This saves one allocation per-widget.
+
+* Moved SVirtualWindow into Slate module from UMG.
+
+#### VR
+
+* New:Added an initial base implementation of IHeadMountedDisplay, FHeadMountedDisplayBase, that can be extended by HMD implementations instead of extending IHeadMountedDisplay directly.This base class provides default and or common implementations for parts of the IHeadMountedDisplay interface.Future releases may add more common functionality to this class, reducing the amount of work required to add support for new HMD platforms even further.
+
+* StereoLayers now have a default emulated implementation, making them supported on most VR platforms that did not already support them.HMD implementations that extend FHeadMountedDisplayBase will automatically inherit the functionality unless explicitly overridden.
+
+* Common code found in various HMD plugins handling management of StereoLayers has been extracted into a template base class, TStereoLayerManager, that provides a thread-safe way to manage a list of registered stereo layers.
+
+* The old Morpheus StereoLayers implementation has been removed in favor of the common stereo layers implementation provided by the HMD base class.
+
+## Upgrade Notes
+
+#### C++ API Changes
+
+* As part of the Asset Manager changes, Streamable Manager has been improved to support the concept of Streamable Handles.When requesting an async load, it now returns a shared pointer handle that will keep the requested object loaded as long as it exists.These handles can also be polled or waited on.
+
+ * Synchronous Load and Simple Async Load on Streamable Manager have been deprecated in favor of the new Streamable Handle system.Both of those functions would keep assets loaded until explicitly unloaded, which in practice was not what most people wanted.
+
+* The Class/Property/Function redirect system has been rewritten to be faster and more flexible.Ini redirects such as "+ActiveClassRedirects" defined in [/Script/Engine.Engine] will still work, but the new system is used by putting redirects like “+ClassRedirects†in the [CoreRedirects] section of Engine.ini.
+
+ * All engine redirects prior to 4.10 have been moved to CoreRedirects.cpp, newer redirects are now in the new format in BaseEngine.ini.
+
+ * A single Property/Function redirect definition will now be applied for both blueprints and serialization, and redirects can now be defined with wildcard matching syntax to simplify large refactors.
+
+ * Object and Package redirects can now be used to allow limited redirection of content references without creating an Object Redirector on disk.
+
+ * Enum redirects have been improved and will now fully work with or without the Enum Name being specified.
+
+* Several Enum functions dealing with string conversion have been deprecated, and the names and comments have been cleaned up to make it more clear which are meant to be used at Runtime and which are meant to be used in the Editor/for debugging.
+
+* The console command "r.MSAACount 1" now produces no MSAA or TAA. “r.MSAACount 0†can be used to toggle TAA on for comparisons.
+
+* Cascaded Shadow Map resolution is now controlled by the console command "r.Shadow.MaxCSMResolution" instead of “r.Shadow.MaxResolutionâ€.
+
+* New mobile targeted projects will have better UI performance settings by default.
+
+ * Please enable "Explicit Canvas Child Z Order" option in project Slate Settings, to improve UI batching.Enabling this option may require manual Z Order tweaks in UMG Canvas panels if there Z ordering issues.
+
+* VR console commands have been rewritten to support autocompletion and inline help strings.
+
+ * The VR console commands have also be renamed and now begin with vr.*
+
+ * The renamed VR commands have backwards compatible aliases, but will print a warning notifying the user about the deprecated functionality.
+
+* The Exec method in Head Mounted Display has been removed, as all VR console commands now use Auto Console Command or similar to register console commands.
+
+ * HMD implementations relying on having an Exec method now need to provide their own ways of registering console command handlers.
+
+* Set Visibility and Set Hidden In Game in Scene Component are no longer virtual.Instead override On Visibility Changed or On Hidden In Game Changed to respond to changes to these values.
+
+* The FBox and FBox2D constructors taking an int32 value have been deprecated as the value of that integer was not being used.The Force Init constructor should be used instead.
+
+ * Replace FBox/FBox2D construction of the form FBox(0) with FBox(ForceInit).
+
+* The Unreal Header Tool now outputs an error when an Editor-only struct member is exposed to blueprints.This is necessary because packaged builds will crash if a Make/Break node for that struct is executed in a blueprint.
+
+ * Any Blueprint exposed Editor-only struct members must either be made not Editor-only or no longer exposed to blueprints.
+
+* Post Load Map now provides the loaded World as a parameter to the delegate function.The World will be null if the load failed.
+
+ * All existing functions bound to Post Load Map need to have a World pointer added to their signature.
+
+* Stop saving raw curve data into animations on cook to save memory/disk space.
+
+ * If you are directly accessing Raw Curve Data on an Anim Sequence, this will no longer work in cooked builds.Animation Asset now provides a virtual function, Get Curve Data, to grab a reference to the correct Curve structure.
+
+* Removed boilerplate header from Automation Window.
+
+ * The AutomationWindow.h boilerplate header file has been removed.Please replace all includes of AutomationWindow.h with IAutomationWindowModule.h
+
+* Removed boilerplate header from Automation Controller.
+
+ * The AutomationController.h boilerplate header file has been removed.Instead of AutomationController.h, include the individual interface headers that you actually use.Remove the "Interfaces/" subdirectory from existing interface inclusions.
+
+* Automation Modernization pass
+
+ * The IAutomationWorkerModule.h has been moved to the module's public root directory.Please remove the relative path from your existing include statements.
+
+* Removed boilerplate header from LauncherCheck.
+
+ * The LauncherCheck.h boilerplate header file has been removed.Include ILauncherCheckModule.h instead of LauncherCheck.h.Remove "Interfaces/" subdirectory from existing ILauncherCheckModule.h inclusions.
+
+* Removed boilerplate header from LauncherServices.
+
+ * The LauncherServices.h boilerplate header file has been removed.Instead of including LauncherServices.h, include the ILauncherXXX.h files that you actually use.Remove the "Interfaces/" subdirectory from existing ILauncherXXX.h includes.
+
+* Deprecated shared pointer typedef and removed usages from ImageWrapper.
+
+ * The IImageWrapperPtr typedef has been deprecated.Please use TSharedPtr instead of IImageWrapperPtr.
+
+* Removed boilerplate header from ImageWrapper.
+
+ * The ImageWrapper.h boilerplate header file has been removed.Instead of including ImageWrapper.h, include the actual IImageWrapperXXX.h files that you use.Remove the "Interfaces/" subdirectory from existing IImageWrapperXXX.h includes.
+
+* Removed monolithic boilerplate header from NetworkFileSystem.
+
+ * The NetworkFileServer.h boilerplate header file has been removed.Instead of including NetworkFileServer.h, include the INetworkFileXXX.h headers that you actually use.Remove the "Interfaces/" subdirectory from existing INetworkFileXXX.h includes.
+
+* Changed default contact-gen method to PCM.This is the default in PhysX 3.4.
+
+ * This may have slight implications on jitter and stability, but should be improved overall.The old behavior is still available (set EnablePCM = false in the project settings).
+
+* Removed the temporary functions RHIClearColorTexture, RHIClearDepthStencilTexture, and RHIClearColorTextures from each RHI.
+
+* Removed obsolete SmartCastProperty function.
+
+* Added a static_assert to prevent the use of TMap keys which do not implement GetTypeHash, as this causes runtime crashes when they are manipulated by a UMapProperty.
+
+ * TMap key types must now implement GetTypeHash.Having GetTypeHash be implemented in a base class or being implicitly convertible to a type which is hashable is not sufficient.
+
+* Fixed TStructOpsTypeTraits::WithCopy giving different results when the trait is specialized without a WithCopy value from when it isn't specialized at all.
+
+ * TStructOpsTypeTraitsBase has been deprecated.
+
+* Improved support for TTuple.
+
+ * Tuples have a GetTypeHash function and can be used as a TMap key.
+
+ * Can now be serialized to archives.
+
+ * Can now be compared for equality with operators == and !=.
+
+ * Can now be compared lexicographically with operators <, >, <= and >=.
+
+ * TPair is now an alias for a 2-tuple, which is specialized to have Key and Value fields, but otherwise has the same functionality as all other tuples.
+
+ * Tuple.h is now found in the Core/Public/Templates folder, rather than the Core/Public/Delegates folder.
+
+ * TPairInitializer now converts to TPair, rather than TPair being constructible from TPairInitializer.
+
+* Removed UnrealCodeAnalyzer.
+
+* Added a static_assert to ensure that TInlineSetAllocator is instantiated with a power-of-two hash size, as this is a requirement for TSet and TMap.
+
+ * TInlineSetAllocator will no longer compile if the hash size is not a power-of-two.
+
+* Removed TBoolConstant template.
+
+* Removed the WITH_HOT_RELOAD_CTORS macro.
+
+* Removed the UseVTableConstructors .ini option.
+
+* Removed generated FName variables for UFUNCTIONs.
+
+* Refactored EvaluateBoneTransforms to prevent usage of skeletal mesh component.
+
+ * Deprecated EvaluateBoneTransforms in favor of new ​EvaluateSkeletalControl_AnyThread.
+
+ * Deprecated skeletal mesh component argument to ConvertCSTransformToBoneSpace and ​ConvertBoneSpaceTransformToCS.Now they just take a transform.
+
+* Added a new overload for IOnlineSession::FindFriendSession in the session interface that can retrieve sessions for multiple friends.
+
+ * Sending and accepting invites on dedicated servers on Steam is now supported.
+
+ * The FOnFindFriendSessionCompleteDelegate now returns an array of FOnlineSessionSearchResult objects instead of just one.
+
+* The high level rendering code is now PipelineStateObject aware which will allow us to reduce complexity in the rendering backends of Vulkan, Metal and Dx12 in the future.
+
+ * The loose state setting APIs of the Commandlist have been deprecated, instead the entire pipelinestate has to be set at once.
+
+* Moved controller connect/disconnect handling to the main thread to fix issues with thread safety for callbacks.
+
+#### Animation
+
+* When converting skeletal controls to the newer API, convert EvaluateBoneTransforms to ​EvaluateSkeletalControl_AnyThread.Backwards compatibility will be maintained, however warnings will persist.Any mesh component access should be cached in PreUpdate() as accessing the component is not thread safe.
+
+* If differences in timing between Maya and UE4 are experienced after importing Alembic files, this has been corrected.The fix requires that any problematic assets be reimported.
+
+#### Blueprints
+
+* The ticking behavior of latent actions in components has been changed to match how they behave in actors.When the component ticks, the latent actions will now be processed at the same time, rather than happening later in the frame when latent actions for non-ticking actors and components are processed.This does change behavior, so there is a console variable (t.TickComponentLatentActionsWithTheComponent) that can be used to revert to the older behavior until affected component Blueprints that depended on the old ordering behavior can be fixed up.The cvar should be treated as deprecated, and it will be removed in a future release.
+
+#### Core
+
+* To save on memory and disk space the cooked Asset Registry no longer includes Dependency information by default.If you need this information at runtime, enable bSerializeDependencies in the [AssetRegistry] section of BaseEngine.ini.
+
+* Starting asynchronous loads from within asynchronous loads has always been unsafe, but will now explicitly assert.This can be fixed by not starting asynchronous loads from within PostLoad functions, or deferring your game-specific code for a frame when called from an async callback.
+
+* Callback functions passed into Request Async Load will now execute on the next frame instead of immediately upon completion of an async load.This behavior is to avoid issues with calling async loads recursively, but if your game depends on this behavior you can restore it to call them immediately by setting the cvar s.StreamableDelegateDelayFrames to 0.
+
+* There is a new format for defining class/function/property redirects in ini files, check the [CoreRedirects] section of BaseEngine.ini for examples.The older formats will still work but the new format provides additional features and a simpler syntax so you may want to upgrade.
+
+* Any calls to Smart Cast Property should be replaced with code which explicitly handles the inner property of Array Property.
+
+* Get Type Hash implementations must now be added to types which are used as TMap keys.If your type defines Get Type Hash in a base class or is hashed via an implicit conversion, these should be fixed by implementing their own function and forwarding the call to the appropriate implementation.
+
+* Any use of TStructOpsTypeTraitsBase should be replaced with TStructOpsTypeTraitsBase2, where T is the type that the trait is being specialized for.
+
+* `#include "Delegates/Tuple.h"` should be replaced with `#include "Templates/Tuple.h"`.
+
+* As TPairInitializer is now convertible to TPair, rather than TPair being constructible from TPairInitializer, types which do not correctly implement copy or move semantics by not inhibiting the compiler defaults may cause a bad state when they are inserted into a TMap or TSet.All types used in UE4 containers should correctly define copy or move semantics.
+
+* Any dependence on Unreal Code Analyzer should be removed from projects.
+
+* The explicit usage of TInlineSetAllocator in any TSet and TMap should be updated to ensure that the template arguments provided result in hash sizes which are a power-of-two.
+
+* TBoolConstant should be replaced with TIntegralConstant.
+
+* Any use of WITH_HOT_RELOAD_CTORS should be replaced with the assumption that the value is 1.
+
+* Any use of the Use VTable Constructors .ini option should be replaced with the assumption that the value is true.
+
+* Use of generated FName variables for UFUNCTIONs (e.g. ENGINE_ReceiveTick) should be replaced with a string literal or a custom static FName variable in your own code:
+
+ * For example: static const FName ENGINE_ReceiveTick = TEXT("ReceiveTick");
+
+* If Unreal Header Tool reports an error about a function having a different signature from a base class, it should be fixed to have the same signature, or renamed.
+
+#### Editor and Tools
+
+* Exposed Make Property Combo Box in Property Customization Helpers to allow embedding an enum combo box into Struct Customizations.
+
+* Added Custom Column support to the Asset Picker Config.
+
+* If you use a protected platform, your project settings will start to be saved under MyGame\Config\Platform\PlatformEngine.ini, instead MyGame\Config\DefaultEngine.ini.
+
+#### Platforms
+
+* Made some big Device Profile changes, particularly for the protected platforms.You may need to modify your Device Profiles in similar ways if you are a heavy user of them.
+
+ * Changed the "type" of some DPs from WindowsNoEditor, etc to Windows.It should be a platform, not a random string.
+
+ * With that change, the platform can be used to save out protected platform DP .ini files to subdirectories, maintaining secrecy.
+
+ * When saving DeviceProfiles, you may need to look in a platform subdirectory for the DeviceProfiles.ini file.
+
+ * Added Config/[PlatformName]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs.See the GetConfidentialPlatforms() function in GenericPlatformMisc for more information.
+
+#### Programming
+
+* The TargetRules.ShouldUseSharedBuildEnvironment() function has been deprecated.Targets can now specify the build environment they wish to use by setting BuildEnvironment to TargetBuildEnvironment.Default/Shared/Unique in their constructor instead.
+
+* The constructor for ModuleRules-derived classes in .build.cs files should be updated to take a ReadOnlyTargetRules instance, which should be forwarded to the base class.This class contains the same properties as the previous TargetInfo argument, plus all the target-specific settings previously stored in the global BuildConfiguration and UEBuildConfiguration classes.Compatibility shims for accessing these objects will be removed in a future release.The WITH_FORWARDED_MODULE_RULES_CTOR preprocessor definition is now defined, which allows writing code which is compatible with multiple engine versions.
+
+* The TargetRules.SetupBinaries() callback has been deprecated.Instead of overriding this, targets may override the launch module through the "LaunchModuleName" property in their constructor, and add extra modules to the "ExtraModuleNames" field on the TargetRules object itself.
+
+#### Rendering
+
+* UE4Editor is whitelisted for Aftermath with latest Nvidia drivers.To whitelist other game executables contact Nvidia.
+
+* RHICmdList.Clear() methods are now removed; please use RHICmdList.SetRenderTargetsAndClear() or the DrawClearQuad() utility function from ClearQuad.h.
+
+* The Cross Compiler Tool is now removed from the Engine, it had too many limitations.Use hlslcc.sln or ShaderCompileWorker -directcompile instead.
+
+* PipelineStateCache.h contains the new replacement interface for BoundShaderStateCache.h.Otherwise, during the Geometry rendering passes the previously introduced Draw Render State is used to collect and set the Blend, Raster, and Depth Stencil State.Commit Graphics Pipeline State will set the PSO for geometry rendering passes.Postprocessing passes or passes which use Globalshaders have to fill out a Graphics Pipeline State Initializer and set this instead.
+
+* If configuring via .ini files, use the new variable name "ScaleTexturesByGlobalMipBias" where "ScaleTexturesByGlobalMyBias" was used.
+
+* Mobile:Skylights on mobile projects may need to be recaptured in the editor before packaging.
+
+* Mobile:Please replace r.TonemapperFilm=1 cvar with r.Mobile.TonemapperFilm=1 in case you want to use new filmic tonemapper on Mobile platforms.
+
+#### VR
+
+* PSVR MotionController tracking management system.
+
+ * Blueprint functions added to manage the set of actively motion tracked controllers in MotionTrackedDevice Function Library.
+
+ * You are recommended to disable tracking of all controllers first, and then enable tracking for the controllers you want to have tracked based on user setting, connected controllers, etc.The system keeps a memory of which controllers are set to be tracked even if the controller is disconnected, or not yet connected.
+
+* Experimental preview of PSVR Social Screen support.
+
+ * The new Morpheus plugin project setting Enable Social Screen Separate Mode must be set to true to use this feature.When that is true additional render and output buffers will be allocated for the Social Screen.
+
+ * Blueprint functions for controlling the feature can be found by searching for 'SocialScreen'.
+
+ * Future work will replace this API with a more flexible cross platform one, and pursue optimizations of SocialScreen output.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.KOR.udn
new file mode 100644
index 000000000000..212a44b41e87
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_16/4_16ReleaseNotes.KOR.udn
@@ -0,0 +1,3906 @@
+INTSourceChangelist:3457153
+Availability:Public
+Title: 언리얼 엔진 4.16 릴리즈 노트
+Description: 언리얼 엔진 4.16 릴리즈 노트
+Crumbs:%ROOT%, Engine
+Parent:Support/Builds
+Order:16
+reference-image: image_18.gif
+reference-image: image_28.gif
+reference-image: image_31.gif
+reference-image: image_35.gif
+
+
+
+## 새 소식
+
+언리얼 엔진 4.16 에는 흥미로운 **렌더링 및 애니메이션 신기능**, **모바일 및 콘솔 플랫폼 퍼포먼스의 비약적인 향상** 은 물론, **개발자 여러분 삶의 질 향상을 위한 수많은 개선사항** 이 포함되어 있어, 보다 많은 플랫폼에서 부드럽게 실행되는 눈부신 배경이나 매력적인 체험을 더욱 쉽게 만들 수 있습니다.
+
+배경의 분위기를 한층 강화시킬 수 있는 놀라운 **볼류메트릭 포그** 신기능을 사용하면, 스케일을 키워도 씬 어디서든 일관된 라이팅을 보이는 사실적인 포그 및 스모크 이펙트를 자동으로 렌더링해 줍니다.
+
+새로운 다이내믹 **라이트웨이트 리짓 바디** 및 **로우 레벨 클로스 시뮬레이션** 툴로 캐릭터에 생명력을 불어넣어 보세요! 애니메이션 모디파이어, 스플라인 IK 솔버, 업데이트된 포즈 드라이버를 비롯한 애니메이션 시스템의 여러 개선사항을 활용하여 동작의 흐름을 보다 세밀하게 제어할 수 있습니다.
+
+가비지 컬렉션 속도가 **두 배 빨라졌습니다**! UI 렌더링 퍼포먼스와 UMG 위젯 생성 속도가 크게 향상되어 보다 현란한 인터페이스 제작이 가능합니다. **VR 모드**, 애니메이션, 시퀀서, 기타 툴의 인터페이스와 작업방식도 업데이트되어 개발 프로세스 효율성이 크게 높아졌습니다.
+
+4.16 부터 **Nintendo Switch** 가 완벽 지원되어 실제 제작단계에서 사용할 수 있게 되었습니다! 에픽게임즈는 Nintendo 와의 협업을 통해 공인된 개발자들에게 Nintendo Switch 용 풀 소스 코드를 무료 배포했습니다. 개발 시작을 위한 자세한 내용은 [여기서](http://www.unrealengine.com/blog/launch-your-game-on-the-nintendo-switch-with-unreal-engine-4-16) 확인해 보세요.
+
+**이제 Xbox One 의 기본 렌더러를 DirectX 12 로 설정**, 해당 플랫폼을 지원하는 엔진 퍼포먼스와 피처 두 마리 토끼를 동시에 잡았습니다. 게다가 HTML5 게임 개발에 WebAssembly 와 WebGL 2 가 지원되기 시작하였으며, 이 부분은 UE4 에서 지속적으로 발전시켜 나갈 것입니다.
+
+모바일에서는, 이제 안드로이드 가상 키보드가 지원되며, 실행시간 권한 요청 기능을 블루프린트와 코드 양쪽에서 쓸 수 있습니다. 게다가 모바일 앱 실행파일 크기를 한층 더 줄일 수 있게 되었습니다!
+
+에픽에서 직접 공개한 업데이트 수백종 이외에도, 이번 릴리즈에는 놀라운 언리얼 엔진 개발자 커뮤니티가 GitHub 를 통해 제출한 **개선사항이 160 종** 포함되어 있습니다! 언리얼 엔진 4.16 에 기여해 주신 분들께 감사드립니다:
+
+0lento, Akihiro Kayama (kayama-shift), Alice Robinson (Valkrysa), Altrue, Andreas Rønning (Sunjammer), Andrew Gaubatz (e-agaubatz), Angus Jones (crumblycake), Artem V. Navrotskiy (bozaro), Black Phoenix (PhoenixBlack), Cedric Neukirchen (eXifreXi), Cengiz Terzibas (yaakuro), Chris Varnz (chrisvarns), Christopher P. Yarger (cpyarger), Damian Nowakowski (zompi2), DarkSlot, DeanoC, Derek van Vliet (derekvanvliet), devbm, dodgyville, drelidan7, Gabriel Lima (Gabriel-Lima-O), Gyeonghwan (conquests), Hao Wang (haowang1013), Ilya (ill), Jackblue (JohnsonJackblue), James Horsley (mmdanggg2), Jeff Rous (JeffRous), Jon Watte (jwatte), Jørgen P. Tjernø (jorgenpt), jostster, Kalle Hamalainen (kallehamalainen), katze7514, Kevin Kuegler (FrostByteGER), KrisRedbeard, looterz, Manmohan Bishnoi (manmohanbishnoi), Marat Radchenko (slonopotamus), Markyroson, Martin Treacy-Schwartz (the1schwartz), Matt Edmonds (cleaver404), Matthew Casey (mdcasey), Matthias (haimat), Matthias Holzl (hoelzl), Matthias Huerbe (MatzeOGH), Michael Schoell (MichaelSchoell), Michał Siejak (Nadrin), Milan ??astny (aknarts), Moritz Wundke (moritz-wundke), Mustafa TOP (MSTF), Narendra Umate (ardneran), Nathan Stocks (CleanCut), NaturalMotionTechnology, Nick Verenik (nverenik), Paul Murray (awesomeness872), pfontain, Phil Christensen (Rastaban), PrimalJohnScott, projectgheist, Rafael Ortis (rafortis), Rajko Stojadinovic (rajkosto), Rama (EverNewJoy), rhughesgeomerics, Ricardo Rodrigues (RicardoEPRodrigues), Robert Hagglund (hagglund), Robert Segal (robertfsegal), Ryan Pavlik (rpav), sangpan, Sanjay Nambiar (sanjay-nambiar), Satheesh (ryanjon2040), Sean Campbell (scampVR), Sebastian Axinte (ENiGMA9), Sebastien Rombauts (SRombauts), SiebenCorgie, Stefan Zimecki (stefanzimecki), StefanoProsperi, Stephen Johnson (megasjay), TaeYoung Cho (valval88), Timothee Besset (TTimo), Timothy Hagberg (thagberg), Tom Kneiphof (tomix1024), Tom Ward (tomwardio), TRS-justing, unwitherer, Vladimir (VladimirPobedinskiy), Vladimir Alyamkin (ufna), wyhily2010, Yaroslav Shmelev (SoulSharer), yeonseok-yi
+
+## 주요 기능
+
+### 신규: 볼류메트릭 포그
+
+새로운 Volumetric Fog (볼류메트릭 포그) 기능으로 환경에 놀라운 배경 효과와 분위기를 연출해 보세요! 다양한 농도 설정이 지원되어 빛줄기 사이로 흐르는 먼지나 연기 구름 시뮬레이션이 가능하며, 이 볼류메트릭 포그에는 다수의 라이트가 동시에 영향을 줄 수 있습니다.
+
+(w:929 h:529 convert:false)
+
+(w:928 h:510 convert:false)
+
+(w:928 h:510 convert:false)
+
+볼류메트릭 포그가 받을 수 있는 라이팅은 다음과 같습니다:
+
+* 단일 디렉셔널 라이트, 캐스케이드 섀도우 맵의 섀도잉 또는 스태틱 섀도잉, 라이트 함수.
+
+* 다수 포인트 및 스포트 라이트, Cast Volumetric Shadow 옵션이 켜진 경우 다이내믹 또는 스태틱 섀도잉.
+
+* 단일 스카이라이트, 섀도잉은 Distance Field Ambient Occlusion 이 켜진 경우.
+
+* 파티클 라이트, 'Volumetric Scattering Intensity' 값이 0 보다 큰 경우.
+
+파티클 시스템에 적용된 머티리얼을 사용하여 새로운 Volume Domain 세팅으로 볼류메트릭 포그를 제어할 수 있습니다. 볼륨 머티리얼이 있는 파티클 하나로 볼류메트릭 포그에 일정 농도의 구체를 추가시킬 수 있습니다. 이 효과는 빌보드와 상관 없는 풀 3D 입니다. 다수의 구체 포그 파티클에 텍스처의 노이즈를 적용하여 사용하면 포그를 특정 영역에 제한시킬 수 있습니다.
+
+볼류메트릭 포그 구성 관련 정보는 [문서](Engine/Rendering/LightingAndShadows/VolumetricFog) 를 참고하세요.
+
+### 신규: 블룸에 이미지 기반 (FFT) 컨볼루션
+
+새로운 이미지 기반 (FFT) 컨볼루션(합성곱) 기능으로 물리 법칙에 맞는 사실적인 블룸 포스트 프로세스 이펙트를 만들 수 있습니다! 언리얼 엔진 4.16 에 포함된 FFT 블룸 기능으로, 아티스트는 커스텀 블룸 커널 모양을 사용할 수 있을 뿐 아니라, 원하는 결과를 낼 수 있도록 그 세기도 완벽히 제어할 수 있습니다.
+
+(w:928 h:485 convert:false)
+
+소스 이미지의 수학 컨볼루션 연산에 커널 이미지를 사용하는 이 블룸 기법을 통해, 별모양 광채에서부터 일정 구역의 디퓨즈 글로우에 이르기까지 다양한 반응 연속체 효과를 낼 수 있습니다. 이미지 기반 컨볼루션으로 사실감을 더할 수 있는 것은, 시각적으로 흥미로운 비대칭 커널 이미지를 사용할 수 있기 때문입니다. 보통은 방사형으로 퍼지는 별모양 광채같아 보이지만, 속눈썹 실루엣, 보케, 기타 부작용같은 모양을 포함시킬 수도 있습니다.
+
+주: 이미지 기반 컨볼루션 블룸은 시네마틱이나 고사양 하드웨어용으로, 대부분의 게임에서는 기존 (표준) 블룸이 적합할 것입니다.
+
+### 신규: 디스턴스 필드 라이팅 최적화
+
+**디스턴스 필드 앰비언트 오클루전** 및 **레이 트레이스드 디스턴스 필드 섀도우** 가 현 세대 콘솔과 중간 사양 PC 에서 **30-50% 빨라졌습니다**! 씬에 보다 사실적인 앰비언트 라이팅과 다이내믹 메시에 에리어 섀도우를 드리울 수 있도록 해주는 기능입니다.
+
+(w:929 h:513 convert:false)
+
+게다가, Intel 의 Embree 레이 트레이싱 라이브러리를 사용하여 **메시 디스턴스 필드 생성 시간도 2.5 배 빨라졌습니다**. 프로젝트 세팅 중 Eight Bit Mesh Distance Fields (8비트 메시 디스턴스 필드) 및 Compress Mesh Distance Fields (메시 디스턴스 필드 압축) 옵션을 사용하면 메모리 사용량 역시 크게 감소합니다.
+
+### 신규: 라이트웨이트 리짓 바디 시뮬레이션
+
+새로운 **라이트웨이트 리짓 바디 캐릭터 시뮬레이션** 으로 물리 시뮬레이션 캐릭터 군단을 만들 수 있습니다! 이제 새로운 고성능 **즉시 모드** PhysX API 로 애니메이션 블루프린트 안에서 피직스 애셋 시뮬레이션이 가능합니다. 이 시뮬레이션을 사용하는 캐릭터는 월드의 스태틱 지오메트리와의 콜리전 생성도 가능합니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ VaxxVsv0Fak
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 신규: 로우 레벨 클로딩 시뮬레이션
+
+Nvidia 의 새로운 로우 레벨 NvCloth 클로딩 솔버를 사용하여 보다 세밀한 클로딩 시뮬레이션 제어가 가능합니다!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 5BqodzWZIUA
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+기존 APEX 클로딩 솔버를 보다 낮은 수준에서 동작하는 솔루션인 Nvidia 의 NvCloth 로 대체했습니다. 이 새로운 솔버는 작동방식에 약간의 차이를 제외하고 기존 APEX 솔루션의 코어 솔버와 비슷하지만, 시뮬레이션 데이터에 더욱 쉽게 접근할 수 있고 관성 세팅에 몇 가지 추가 파라미터가 노출되어 있습니다.
+
+### 신규: Nintendo Switch 게임 출시 지원!
+
+등록한 개발자들은 이제 Nitendo Switch 용 게임 제작 및 출시가 가능합니다! 언리얼 엔진 4 는 Nintendo Switch 검증 사항을 준수하며, 네트워크 멀티플레이어 게임은 물론, 디퍼드 / 모바일 포워드 / 클러스터드 포워드와 같은 멀티 렌더링 파이프라인 접근도 지원하여, 사실상 어떤 유형의 게임도 쉽게 제작할 수 있습니다.
+
+[REGION:raw]
+(w:925 h:641 convert:false)
+[/REGION]
+
+### 신규: VR 모드 UI 및 인터랙션 업데이트
+
+언리얼 에디터의 VR 모드가 대폭 개선되어 보다 직관적인 작업방식과 편집 환경을 제공해 줍니다.
+
+(w:722 h:646 convert:false)
+
+새로운 비대칭 컨트롤러 셋업으로 한 손에는 새롭게 개선된 원형 메뉴를, 다른 한 손에는 보다 정밀해진 인터랙션 레이저로 레벨의 오브젝트 작업을 빠르고 쉽게 할 수 있습니다.
+
+모든 주요 에디터 기능과 UI 패널을 포함한 모든 VR 동작을 이제 새로워진 원형 메뉴에서 열어볼 수 있습니다. 텔레포트도 업데이트되어 어느 한 위치로 순간 이동한 뒤 기본 스케일로 크기를 조정하여 플레이어 관점에서 확인할 수 있도록 하기도 했습니다. 자세한 정보는 [관련 문서](Engine/Editor/VR/GDC2017) 를 참고하세요.
+
+### 신규: VR 에서 시퀀스 편집
+
+시퀀서 시네마틱 에디터를 이제 VR 에서 사용할 수 있습니다! 새 시퀀스 생성, 레벨에서 오브젝트 이동 작업을 하면, 그 트랜스폼에 대한 시퀀스 키를 자동 생성해 줍니다. 타임라인 스크러빙 후 이 키를 설정하는 것으로, 시네마틱 시퀀스를 만들고 재생하는 작업을 VR 안에서 모두 해낼 수 있습니다. 시퀀서 UI 나 원형 메뉴를 통해서도 기존 레벨 시퀀스를 열거나 재생할 수 있습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ X4Zw9U20Gw4
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* 신규! 키 조정을 통해 월드의 궤도를 물리적으로 조절할 수 있습니다.
+
+* 원형 메뉴의 Scrub Time (시간 스크럽) 옵션을 통해 썸스틱이나 터치패드 입력으로 시퀀스 재생 방향과 속도를 정할 수 있습니다. 트리거를 다시 한 번 누르면 시간 스크럽 모드를 빠져나갑니다.
+
+### 신규: VR 모드 피직스 시뮬레이션
+
+이제 **VR 모드에서** 모션 컨트롤러로 레벨의 오브젝트와 상호작용하면서 **피직스 시뮬레이션 적용** 이 가능합니다! 피직스 시뮬레이션 설정된 액터를 배치한 뒤 물리 시뮬레이션을 통해 액터가 사실적으로 퍼지도록 하거나, 모션 컨트롤러로 건드리거나 하면 됩니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ bG2Qf897CBI
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 신규: VR 모드 스마트 스내핑
+
+스마트 스내핑은 오브젝트의 바운드를 사용하여 씬의 다른 액터와 줄을 맞춰주는 기능으로, 미리 그리드를 신경쓸 필요 없이 모듈식 애셋 제작을 할 수 있습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ lvqxM1kjubE
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+이 기능은 현재 VR 모드에서만 가능하나, 앞으로 데스크탑 편집도 지원할 계획입니다.
+
+### 신규: Xbox One 기본 렌더러 DirectX 12
+
+**DirectX 12 가 Xbox One 의 기본 렌더러가 되었습니다**! DirectX 12 에 가한 여러가지 안전성 및 퍼포먼스 개선사항 덕에 Xbox One 의 기본 RHI 로 활용하여, **CPU 및 GPU 퍼포먼스 향상** 효과를 누릴 수 있게 되었습니다.
+
+(w:556 h:356 convert:false)
+
+#### D3D11 로 돌아가기
+
+D3D11 로 돌아갈 필요가 있는 타이틀의 경우 그 방법은 다음과 같습니다:
+
+1. 타이틀 defaultengine.ini 에서 bBuildForD3D12 옵션을 변경합니다.
+
+2. 게임을 Xbox One 용으로 다시 빌드합니다.
+
+3. 콘텐츠를 다시 쿠킹합니다.
+
+**주:** D3D11 RHI 는 앞으로 폐기될 예정입니다.
+
+### 신규: WebAssembly 및 WebGL 2 용 HTML5 지원
+
+언리얼 엔진 4 가 이제 HTML5 의 새로운 WebAssembly 표준(다른 명칭으로는 WASM)을 지원하여, 웹에서도 C++ 코드를 가장 빠르고 효율적으로 컴파일하고 실행할 수 있게 되었습니다! Mozilla 의 최신 (v1.37.9) Emscripten 툴체인을 사용하고 있습니다. 이 기능은 아직 모든 브라우저에 지원되지 않는 신기술이라 얼리 액세스 기능으로 간주되고 있으며, GitHub 접근 권한이 필요합니다.
+
+[REGION:raw]
+(w:929 h:630 convert:false)
+[/REGION]
+
+WASM 은 웹 앱에 사용되는 새로운 JavaScript 코드-투-바이너리 포맷으로, 앱 다운로드 크기와 시작 시간 및 메모리 소모량을 감소시켜 퍼포먼스를 크게 향상시켜 줍니다. WASM 및 브라우저 지원 관련 자세한 내용은 http://webassembly.org/ 페이지를 참고하세요.
+
+UE 4.16 에는 OpenGL ES 3.0 기반 WebGL 2.0 지원도 추가되어 한 층 높은 렌더링 퍼포먼스 최적화와 시각 충실도 향상과 아울러 다음과 같은 렌더링 기능도 추가로 지원합니다:
+
+* UE4 고사양 모바일 피처 레벨 대부분의 기능
+
+* 파티클과 폴리지에 인스턴스드 지오메트리 드로잉
+
+* 멀티 렌더 타겟(MRT) 지원
+
+* 3D 또는 볼륨 텍스처, 2D 배열 텍스처와 같은 텍스처 기능, 2 제곱 텍스처 금지 제약 없음
+
+WASM 및 WebGL 2.0 은 (64 비트 추천) Firefox 52 와 Chrome 57 버전 이상에서 지원됩니다. 윈도우 상의 Chrome 58 버전에서 일부분 메모리 부족 오류를 유발하는 버그가 보이고 있습니다. 구글과의 협업으로 이슈 해결중입니다. [UE-44727](https://issues.unrealengine.com/issue/UE-44727) 에서 그 현황을 확인하실 수 있습니다.
+
+HTML5 프로젝트 세팅의 Emscripten 부분에서 이 옵션을 변경할 수 있습니다. 가급적 폭넓은 브라우저 지원을 위해서라면 아직은 ASM.js 와 WebGL 1 을 사용하세요. *하지만 ASM.js 및 WebGL 1 지원은 앞으로 나올 엔진 버전에서 폐기 상태에 접어든 이후 제거될 것입니다 (정확한 시기는 브라우저 추가 지원에 따라 달라집니다).*
+
+Firefox 또는 Chrome (위 지원 버전) 브라우저에서 [HTML5 에서 실행되는 Zen Garden 데모](https://hacks.mozilla.org/2017/03/firefox-52-introducing-web-assembly-css-grid-and-the-grid-inspector/) 를 통해 직접 확인하실 수 있습니다.
+
+### 신규: 가비지 컬렉션 속도 2 배 향상
+
+가비지 컬렉션 퍼포먼스가 크게 향상되어 이제 **두 배 이상 빨라졌습니다**! 구체적인 개선사항은 다음과 같습니다:
+
+* 도달가능성 분석 멀티스레딩 작업을 새롭게 디자인하여 태스크 관리 비용을 감소시켰습니다.
+
+* 가비지 컬렉션 클러스터 작업이 블루프린트 생성 클래스 및 선택된 액터 유형을 지원합니다.
+
+* UObject 언해시 코드 최적화를 통해 액터 소멸에 걸리는 시간을 단축시켰습니다.
+
+### 신규: 시뮬레이팅 부모 포함 키네마틱 바디
+
+시뮬레이션 부모를 포함한 키네마틱 피직스 바디를 만들 수 있는 기능을 추가했습니다. 이제 캐릭터의 손과 같은 자손 본은 순수히 애니메이션 데이터로 구동시키면서, 그 본의 부모 역시도 피직스 시뮬레이션 데이터로 구동되도록 만들 수 있습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ qiiOU_fhex0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+플레이어가 턱을 오르면서 낙석이 바디에 충돌하는 경우 그에 반응하도록 하는 등의 멋진 이펙트를 만들 수 있습니다.
+
+### 신규: 플랫폼 SDK 업그레이드
+
+매 번 릴리즈마다 플랫폼 파트너사의 최신 SDK 버전을 지원할 수 있도록 엔진을 업그레이드하고 있습니다.
+
+[REGION:raw]
+(w:929 h:522 convert:false)
+[/REGION]
+
+* **Visual Studio:** 중요: Visual Studio 2013 은 윈도우에서 이번 릴리즈에 더이상 지원되지 않습니다. Visual Studio 2015 또는 Visual Studio 2017 로 업그레이드해 주세요.
+
+* **Nintendo Switch:** Nintendo SDK 1.3.1 을 지원합니다.
+
+* **Xbox One:** October 2016 QFE3 XDK 버전 대상으로 빌드했습니다.
+
+* **PlayStation 4:** PSR SDK 4.508.001 SDK 로 업그레이드했습니다.
+
+* **Android:** Updated CodeWorks for Android 1R6u1
+
+* **GoogleVR:** 플러그인 1.3 버전으로 업그레이드했습니다.
+
+* **GoogleVR:** SDK 1.40.0 버전으로 업데이트했습니다.
+
+* **GoogleVR:** Mode 기본값이 Daydream & Cardboard 로 변경되었습니다.
+
+* **Vulkan:** 배포 파일과 glslang 을 SDK 1.0.39.1 로 업그레이드했습니다.
+
+### 신규: 시퀀서 샷 트랙 개선
+
+시퀀서의 샷 트랙이 시네마틱 및 영화 제작에도 유용하도록 여러모로 개선되었습니다!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ GqfJxD1DY8I
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* **샷 별 계층형 바이어스** - 기본적으로 레벨 시퀀스 계층구조 내 하위 레벨의 트랙이 우선권을 갖습니다. 이를 통해 영화 제작자는 자신에게 익숙한 파이프라인을 만들어, 샷에서 수정을 가하면 그것이 들어있는 시퀀스의 트랙을 덮어쓰도록 할 수 있습니다.
+
+* **모든 트랙에 When Finished 프로퍼티 노출** - 애니메이션 이전 상태의 값으로 되돌릴지 아니면 시퀀스 종료 상태의 값을 유지할지를 트랙에 지정할 수 있습니다. 영화 제작 환경에서는 보통 샷에서 애니메이션이 적용된 값을 애니메이션 전 상태로 되돌려 다음 샷으로 새어나가지 않도록 합니다. 시네마틱에서는 값을 유지시켜 시퀀서 애니메이션 상태에서부터 게임을 계속할 수 있도록 하는 것이 좋을 것입니다.
+
+* **프리/포스트 롤** - 이제 모든 트랙에 프리 / 포스트 롤이 일반적인 개념이 되었습니다. 어떤 트랙에는 그에 맞는 작동방식이 있을텐데, 예를 들어 카메라 컷 트랙은 프리 롤 평가 기간의 카메라 컷 예상 위치를 스트리밍 시스템에 알려주는 것입니다.
+
+### 신규: 시퀀서에서 머티리얼 파라미터 컬렉션 애니메이션
+
+이제 시퀀서에서 머티리얼 파라미터 컬렉션에 대한 애니메이션을 통해, 다수의 머티리얼에서도 레퍼런싱할 수 있는 스칼라 및 벡터 파라미터 애니메이션 완벽 제어가 가능합니다. 더이상 애니메이션 공유를 위해 각 머티리얼 인스턴스마다 별개의 파라미터 값 애니메이션을 줄 필요가 없습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ u_Cpqz7mFuM
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 신규: UI 렌더링 퍼포먼스 개선
+
+이제 게임에서 Invalidation Panel 을 사용하면 렌더 데이터가 아닌 위젯 엘리먼트만 캐시에 저장하는 옵션으로 텍스처 배치 작업을 향상시켜 드로 콜 수를 크게 줄일 수 있습니다. 모바일 디바이스에서 퍼포먼스가 크게 향상될 것입니다!
+
+[REGION:asyncgif]
+(w:456)
+[/REGION]
+
+
+위의 배틀 브레이커스 영웅 선택 UI 에서, 각 영웅의 논리 엘리먼트를 캐시에 저장시켜 함께 배치 처리되도록 할 수 있습니다. 이 모드를 켜는 콘솔 변수는 Slate.CacheRenderData=0 으로, 모바일 디바이스에서는 기본값입니다.
+
+### 신규: 애니메이션 포즈 드라이버 개선
+
+포즈 드라이버 기능 개선을 통해, 본 세트의 포즈를 레퍼런스 '타겟' 세트와 비교하는 식으로 블렌드 셰이프나 본을 절차적으로 구동시킬 수 있게 되었습니다. 어깨처럼 상박과 어깨 포즈에 따라 모프 타겟을 자동 교정하면 좋은 곳에 특히 좋습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ sjtbvyDdW9w
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+* 이제 포즈를 읽어 들일 '입력'으로 다수의 본을 선택할 수 있습니다.
+
+* 이제 노드가 변경할 본을 선택할 수 있습니다.
+
+* 각 타겟 가동 방법에 대한 '커스텀 커브' 지정이 가능합니다.
+
+* 포즈 애셋 필요 없이 (모프, 머티리얼) 커브를 바로 구동시키도록 선택할 수 있습니다.
+
+* UI 에 타겟 포즈 생성/편집, 타겟 가동 표시 바 등이 개선되었습니다.
+
+* 뷰포트에서 타겟 위치를 클릭하여 선택할 수 있습니다.
+
+### 신규: 머티리얼 플래트닝용 오파시티 및 오파티시 마스크
+
+블렌드 모드 옵션을 사용하여 머지 액터와 HLOD 로 오파시티 (마스크) 값을 구워내는 기능이 지원됩니다. 결과 (인스턴싱된) 머티리얼은 set blend mode 를 사용하여 올바른 렌더 패스를 따르도록 합니다. 마스크드 머티리얼을 구워낸 예제입니다:
+
+(w:904 h:740 convert:false)
+
+### 신규: 메시 페인트 툴 개선
+
+메시 페인트 시스템이 대폭 개선되어 사용하기 쉽고 명확해졌으며, 에디터 다른 부분의 기능을 재사용할 수 있게 되었습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ UezYKhase9g
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+또, 스켈레탈 메시에 페인트 툴을 사용할 수 있게 되었습니다. 참고로 페인트는 (스태틱 메시와 마찬가지로) 인스턴스 단위가 아니며 스켈레탈 메시 애셋에 직접 적용됩니다.
+
+### 신규: 스플라인 IK 솔버
+
+캐릭터 스플라인 또는 본 체인 제어에 좋은 Spline IK 노드가 애니메이션 블루프린트에 추가되었습니다!
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ chqOk4QdPR0
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+
+### 신규: 메시 표면의 머티리얼 감지
+
+컴포넌트에 추가된 'Get Material From Face Index' (면 인덱스에서 머티리얼 구하기) 함수로 (복합) 라인 트레이스 이후 컴포넌트에 적용된 머티리얼을 구할 수 있습니다. 스태틱 메시, 프로시저럴 메시 컴포넌트, BSP 에 적용됩니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ SvsSnkwB1TQ
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+### 신규: 'Look At' 애니메이션 노드 개선
+
+이제 Look At 노드의 **Look At Location** 프로퍼티를 본 또는 소켓 기준으로 사용할 수 있습니다. 기존에는 본이나 소켓을 지정해도 이 값을 무시했었습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 3C7Q6JJxmtY
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+Look At 컨트롤에 대한 시각화 역시 개선되었습니다. 예를 들어, 경사 각도, 타겟 위치, 보간 등을 확인할 수 있습니다.
+
+### 신규: 애니메이션 익스포트 개선
+
+스켈레탈 메시에 할당된 포스트 프로세스 그래프에서 생성된 부가 애니메이션 데이터, 이를테면 피직스 시뮬레이션용 애님 다이내믹스같은 것을 포함하는 애니메이션을 만들고 익스포트하는 기능이 지원됩니다.
+
+이 부가 데이터를 포함시키려면, 애니메이션 생성 또는 애니메이션 익스포트 에서 **프리뷰 메시** 를 선택하면 됩니다.
+
+(w:697 h:256 convert:false)
+
+### 신규: 언리얼 오디오 엔진 (얼리 액세스 프리뷰)
+
+GDC 에서 발표된 새로운 언리얼 오디오 엔진이 PC, Mac, iOS, Android, Switch 에서 얼리 액세스로 접할 수 있습니다. 새로운 멀티플랫폼 EQ 및 Reverb 마스터 이펙트와 함께, 기존 오디오 엔진 피처 세트 하위 호환이 완벽 지원되는 멀티 플랫폼 오디오 믹서가 포함되어 있습니다. 추가로, 새로운 언리얼 오디오 엔진에는 서브믹스 그래프, 서브믹스 이펙트, 소스 이펙트, 실시간 합성, 오디오 플러그인 지원 강화 등의 새로운 기능이 도입되어 있습니다.
+
+새로운 언리얼 오디오 엔진은 4.16 에 기본으로 켜져있지 않은데, 콘솔 플랫폼, 리눅스, HTML5 용 백엔드 구현과 아울러 특히나 모바일 플랫폼에서의 안전성과 퍼포먼스 향상을 위한 작업이 계속 이루어지고 있기 때문입니다.
+
+오디오 믹서를 켜려면, "-audiomixer" 명령줄 인수를 붙여주면 됩니다.
+
+주: 대부분의 언리얼 오디오 엔진 신기능은 오디오 믹서를 켜지 않고 에디터를 실행시키면 숨겨져 있습니다.
+
+### 신규: Synthesis 플러그인 (얼리 액세스)
+
+새로운 synthesis 플러그인에는 두 가지 새로운 리얼타임 신디사이저가 들어있습니다. 하나는 새로운 언리얼 오디오 엔진의 "SynthComponent" 클래스를 사용하여 구현한 완전판 서브트랙티브 신디사이저(감산 합성)이고, 다른 하나는 리얼타임 그래뉼레이터입니다. 새 신디사이저는 절차적인 음악이나 사운드 디자인에 유용한 툴일 뿐 아니라, 써드 파티 플러그인 제조사나 심지어 사운드 디자이너도 자신만의 신디사이저를 구현하기 위해 참고할 수 있는 예제 역할을 하기도 합니다.
+
+synthesis 플러그인에는 새로운 언리얼 오디오 엔진에서 사용할 수 있는 DSP 소스 및 서브믹스 이펙트 호스트도 들어있습니다:
+
+* **소스 이펙트:** 스테레오 딜레이, 비트 크러셔, 다이내믹스 프로세서, 엔벨롭 팔로워, EQ 필터, 버추얼 아날로그 필터 (래더/스테이트 베리어블), 웨이브 셰이퍼, 코러스, 페이저
+
+* **서브믹스 이펙트:** 리버브, EQ, 다이내믹스 프로세서
+
+### 신규: Steam Audio (얼리 액세스)
+
+에픽과 Valve 가 팀을 이뤄 새로운 언리얼 오디오 엔진의 신기능을 활용하여 처음으로 완벽 통합 구현한 Steam Audio SDK 를 발매했습니다.
+
+(w:600 h:160 convert:false)
+
+Steam Audio 는 새로운 언리얼 오디오 엔진의 공간화, 오클루전, 리버브 시스템과 근본적인 수준에서 통합되어 UE4 의 VR 을 위한 차세대 물리 기반 오디오 체험을 선사할 수 있습니다. 이번 버전은 Steam Audio 얼리 액세스 버전이며, 4.17 에 중요 업데이트, 추가 예제 프로젝트, 작업방식 개선사항이 계획되어 있습니다. 개선을 위한 피드백, 질문, 아이디어는 언제든 환영입니다.
+
+Steam Audio 관련 자세한 정보, 문서, 기술지원 도움말은 [https://valvesoftware.github.io/steam-audio/](https://valvesoftware.github.io/steam-audio/) 페이지를 참고하세요.
+
+### 신규: 컬러 그레이딩 툴 개선
+
+컬러 그레이딩 유저 인터페이스가 사용하기 쉽도록 개선되었습니다!
+
+(w:529 h:257 convert:false)
+
+* 새로운 HSV 모드가 추가되었습니다.
+
+* Ctrl+슬라이더 드래그로 유형에 따라 최소/최대값을 동적으로 변경할 수 있습니다.
+
+* 새로 추가된 리셋 버튼으로 전체 컬러 그레이딩 카테고리를 리셋시킬 수 있습니다 (예: 글로벌, 섀도우, 미드톤, 하이라이트).
+
+### 신규: 애니메이션 블렌드 스페이스 에디터 개선
+
+이제 블렌드 스페이스 에디터에서 그리드 안의 **Show Animation Names** (애니메이션 이름 표시) 버튼으로 각 샘플의 애니메이션 이름을 표시할 수 있습니다. 이제 기존 애니메이션 위에 새 애니메이션을 끌어 놓아 대체할 수도 있습니다.
+
+[REGION:asyncgif]
+(w:905)
+[/REGION]
+
+### 신규: 현지화용 스트링 테이블
+
+UE4 에 이제 현지화 스트링 테이블이 지원됩니다!
+
+(w:601 h:218 convert:false)
+
+스트링 테이블은 현지화 텍스트를 하나( 또는 여러 개)의 알려진 위치에 몰아두고 스티링 테이블 안의 항목을 다른 애셋이나 코드에서 안정적인 방식으로 레퍼런싱하여 현지화 텍스트를 쉽게 재사용할 수 있습니다. 스트링 테이블은 C++ 에서 정의하거나, CSV 파일을 통해 로드하거나, 애셋으로 생성할 수 있습니다.
+
+### 신규: 애니메이션 모디파이어 (얼리 액세스 프리뷰)
+
+애니메이션 모디파이어는 주어진 애니메이션 시퀀스 또는 스켈레톤에 액션 시퀀스를 적용할 수 있습니다. 이를테면 오른발이 바닥에 오는 것이 몇 프레임인지 정확히 지정한 뒤, ball_r 본이 최저점에 오는 (바닥에 닿는) 프레임에 애니메이션 싱크 마커를 추가하는 것입니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ YC_UJuO9AI8
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+새로운 함수 세트로 애니메이션 블루프린트 함수 라이브러리에 사용할 수 있는 특정 애니메이션 데이터를 접근할 수 있습니다. 애니메이션 모디파이어 접근 및 적용은 스켈레톤 에디터와 애니메이션 에디터에서 찾을 수 있는 새 탭에서 이루어집니다. 애니메이션 모디파이어는 스켈레톤 또는 애니메이션 시퀀스에 추가할 수 있습니다. 애니메이션 시퀀스의 경우, 애니메이션 모디파이어는 시퀀스 자체에만 적용됩니다. 스켈레톤에 적용하면, 그 스켈레톤을 기반으로 한 모든 애니메이션 시퀀스에 적용됩니다.
+
+### 신규: 안드로이드 가상 키보드 (얼리 액세스 프리뷰)
+
+이제 팝업 입력 대화창 대신 안드로이드 운영 체제의 가상 키보드를 지원합니다!
+
+[REGION:asyncgif]
+(w:256)
+[/REGION]
+
+
+가상 키보드 활성화는 **프로젝트 세팅 > 플랫폼 > Android > APK Packaging** 아래 옵션을 체크하면 됩니다. 이 옵션은 가상 키보드 기본 지원을 활성화시키지만, 입력 요소가 보이면서 가상 키보드 뒤에 가리지 않도록 하기 위해서는 제공된 OnVirtualKeyboardShown 와 OnVirtualKeyboardHidden 이벤트 핸들러를 앱에서 사용해 줘야 합니다.
+
+**주:** 사용자 언어가 IME 를 필요로 하는 경우 Android.NewKeyboard 콘솔 명령으로 가상 키보드를 끄는 것이 나을 수 있습니다.
+
+### 안드로이드 실행시간 권한 요청 지원
+
+이제 언리얼 엔진 4 에 안드로이드 23 이상에서 필요로 하는 런타임 퍼미션을 지원합니다. 여기에는 연락처, 사진, 폰 상태, 외부 저장장치, 카메라, 위치 서비스에 대한 접근이 포함됩니다. 자세한 내용은 다음 웹페이지를 참고하세요: [https://developer.android.com/guide/topics/permissions/requesting.html](https://developer.android.com/guide/topics/permissions/requesting.html).
+
+안드로이드 23 을 타겟으로 삼는 경우, Android Runtimes Permission 플러그인에 네이티브 코드나 Check Android Permission 블루프린트 노드를 사용하여 권한이 이미 부여되었는지 검사하는 기능이 제공됩니다. 권한이 아직 부여되지 않은 경우, 앱에서는 Request Android Permissions 블루프린트 노드를 사용하여 사용자에게 요청한 뒤, On Permissions Granted Dynamic 델리게이트에 바인딩된 이벤트를 사용하여 결과를 구할 수 있습니다. 그러면 게임이 권한이 필요한 기능을 사용하기 직전에 권한을 요청하도록 하여, 사용자 경험 향상에 도움이 됩니다. 안드로이드 23 이전 버전을 타겟으로 삼는 경우, 예전처럼 Android Manifest 에 지정하여 권한을 부여해야 합니다.
+
+(w:718 h:346 convert:false)
+
+**주:** 4.16 은 Android SDK 23 이상이 설치되어 있어야 합니다. 기존 버전을 사용하시는 경우 SDK 매니저를 사용하여 안드로이드의 Upgrade Note 부분 안내에 따라 설치해 주시기 바랍니다. 또한 Android SDK 프로젝트 세팅에서, Android SDK API Level 을 "matchndk" 에서 "latest" 으로 변경해 주세요. 그러면 Android SDK 플랫폼 디렉토리에 설치된 최신 SDK 를 사용합니다. NDK API Level 은 변경할 필요 없습니다. Lollipop (Android 5.0) 이전 버전 안드로이드에 APK 를 설치할 수 있도록 하려면 "android-19" 가 맞습니다. 이 값을 높여 설정하면 Android 5.0 이상이 필요합니다.
+
+### 패키지 크기 감소를 위한 셰이더 코드 라이브러리
+
+이제 Share Material Shader Code 프로젝트 세팅으로 모든 셰이더 코드의 공유 저장 위치를 지정할 수 있습니다. 그러면 같은 셰이더 코드를 생성하는 머티리얼 또는 머티리얼 인스턴스에 대해 하나의 사본만 저장하게 됩니다.
+
+iOS, TVOS, MacOS 의 Metal 에서는 보다 효율적인 플랫폼 전용 셰이더 라이브러리를 지원합니다. Shared Material Native Libraries 프로젝트 세팅을 켜면 이 네이티브 라이브러리 포맷을 활용하여 패키지 크기가 한 층 더 줄어듭니다.
+
+### 신규: FBX 에서 캡슐 콜리전 임포트
+
+이제 FBX 파일에서, 이미 박스, 구체, 컨벡스 심플 콜리전을 임포트하듯, 캡슐 심플 콜리전을 임포트할 수 있습니다. 캡슐 폴리 메시의 'UCP' 접두사를 사용하면, 임포트할 때 제거되면서 그에 해당하는 캡슐 콜리전 셰이프로 대체됩니다.
+
+### 신규: 공유 vs 로컬 애셋 뷰어 프로파일용 별도 옵션
+
+이제 언리얼 에디터에서 공유 또는 로컬 레벨에 애셋 뷰어 프로파일을 저장, 팀원들과 프로파일 세트를 공유하고, 아트 애셋 감정을 위한 통합 씬으로 사용할 수 있습니다. 로컬 레벨에 프로파일을 저장하면 팀에는 필요치 않지만 개인적으로 선호하는 프로파일 커스텀 세트를 유지할 수 있습니다. 공유 프로파일은 DefaultEditor.ini 에 저장되며, 체크 아웃 또는 쓰기 가능으로 만들어야 합니다.
+
+### 신규: 애니메이션 프리뷰 씬 개선
+
+애니메이션 툴용 프리뷰 씬이 여러모로 개선되었습니다:
+
+* 프리뷰 씬 세팅이 뷰포트 숨김 메뉴가 아닌 기존 세팅 탭으로 이동되었습니다. 이 세팅 탭은 이제 기본으로 표시됩니다.
+
+* 메인 툴바에 프리뷰 메시를 빠르게 전환할 수 있는 바로가기가 추가되었습니다. 모든 애니메이션 에디터에 적용됩니다.
+
+* 프리뷰 씬을 편집할 때, 더이상 여분 메시 미리보기만을 위한 "프리뷰 씬 컬렉션"을 만들 필요가 없습니다. 메시 셋업이 마음에 들면 애셋에 저장할 수도 있습니다.
+
+### 신규: 애님 뷰어에 기본 카메라 옵션 추가
+
+이제 스켈레탈 메시의 '기본 카메라' 위치를 저장할 수 있습니다. 메시를 열 때 사용되며, Shift+F 키를 눌러 점프할 수도 있습니다.
+
+### 신규: Play Montage 블루프린트 노드
+
+Play Montage 는 어느 블루프린트 로직에서도 애님 몽타주 재생에 쓸 수 있는 새로운 비동기 노드입니다. 이를 통해 몇몇 콜백 이벤트에 쉽게 접근할 수 있어, 몽타주가 블렌드 아웃 되거나 중단되는 등의 경우에 다른 노드를 발동시킬 수 있습니다.
+
+(w:376 h:272 convert:false)
+
+* OnCompleted 는 몽타주 재생이 완료되고 완전히 블렌드 아웃 되면 호출됩니다.
+
+* OnBlendOut 는 몽타주가 자동이든 수동이든 중지되어 Blend Out 시작할 때 호출됩니다.
+
+* OnInterrupted 는 몽타주가 다른 몽타주 재생에 의해 중단되어 Blend Out 시작할 때 호출됩니다.
+
+* OnNotifyBegin 및 OnNotifyEnd 는 몽타주 애셋에서 Play Montage Notify 나 Play Montage Notify Window 를 사용할 때의 콜백입니다. 이 애님 노티파이들은 Notify Name 을 추가로 붙여 같은 몽타주에서 온 다수의 콜백을 구분할 수도 있습니다.
+
+### 신규: 포즈 리타겟용 옵션 추가
+
+이제 리타겟 베이스 포즈를 설정할 때 사용할 포즈 애셋에서 포즈를 임포트할 수 있습니다. 현재 포즈를 변경 및 저장하고 (Use Current Pose) 본 트랜스폼을 레퍼런스 포즈로 리셋시키는 (Reset) 기존 옵션도 여전히 사용 가능합니다.
+
+**주:** 애니메이션 에디터에서 포즈 애셋을 생성하고 이름을 할당한 포즈 애셋에 아무 포즈나 삽입할 수 있습니다.
+
+### 신규: 스태틱 메시 에디터의 콜리전 뷰 옵션
+
+스태틱 메시 에디터 툴에 스태틱 메시의 단순 및 복합 콜리전 표시를 위한 별도의 옵션이 생겼습니다.
+
+### 신규: LOD 에 포즈 굽기
+
+이제 언리얼 엔진 4 에 Bake Pose 라는 새로운 감소 세팅을 사용하여 LOD 레벨에 포즈를 구워 넣는 기능이 지원됩니다. 이 세팅을 단일 프레임 애님 시퀀스로 설정하면 결과 LOD 메시에 적용됩니다. 본은 제거하면서 포즈는 계속 유지하고자 할 때 유용하게 쓰일 수 있습니다.
+
+[OBJECT:EmbeddedVideo]
+ [PARAMLITERAL:videoid]
+ 0fcNitNu9FE
+ [/PARAMLITERAL]
+ [PARAMLITERAL:width]
+ 78
+ [/PARAMLITERAL]
+ [PARAMLITERAL:height]
+ 56.25
+ [/PARAMLITERAL]
+ [PARAMLITERAL:units]
+ %
+ [/PARAMLITERAL]
+ [PARAMLITERAL:type]
+ simple
+ [/PARAMLITERAL]
+[/OBJECT]
+
+**주:** 이 기능은 Simplygon 이 필요합니다.
+
+### 신규: 시퀀서 유저 인터페이스 개선사항
+
+이제 오디오 트랙 썸네일에 내부 (스무딩 적용된) RMS 커브로 피크 샘플이 렌더링됩니다. 오디오 트랙 세로 크기조정도 가능합니다!
+
+[REGION:asyncgif]
+(w:929)
+[/REGION]
+
+
+기타 시퀀서 UI 개선사항:
+
+* 시퀀서 제어 액터는 이제 레벨에 스트림 인 될 때 제대로 틱 됩니다.
+
+* 이제 이벤트 트랙에 대한 부가 이벤트 리시버 (예: 액터 블루프린트) 지정이 가능합니다.
+
+* 바인딩이 개선되었습니다. 이제 블루프린트에서 레벨 시퀀스에 대한 바인딩을 드래그/드롭/설정 가능합니다. 예를 들어 블루프린트에서 오브젝트를 스폰하고 그것을 기존 트랙에 할당할 수 있습니다.
+
+### 신규: 모바일 VR 렌더링 개선
+
+GearVR 에 다이렉트 멀티뷰가 지원됩니다. 모바일 멀티뷰를 사용할 때 렌더 타겟을 추가로 사용하지 않고 전체 화면 사본이 필요치 않아 전반적인 퍼포먼스가 향상되고 메모리 사용량이 줄어듭니다.
+
+이제 GearVR 에서 멀티뷰가 켜진 상태에서는 모노스코픽 파 필드를 사용하여 씬의 스테레오 렌더링 부분의 최적 렌더링이 가능합니다.
+
+Google Daydream 은 앞으로 나올 버전에서 다이렉트가 지원되는 표준 모바일 멀티뷰를 지원합니다.
+
+### 신규: Playstation VR 용 소셜 스크린 (얼리 액세스 프리뷰)
+
+PSVR 소셜 스크린 프리뷰에 소셜 스크린 분리 모드가 지원됩니다. 모니터와 HMD 디스플레이에 다른 것을 표시하는 모드입니다.
+
+이 프리뷰는 30fps 소셜 스크린 출력을 지원하며, 다수의 출력 모드 전환이 가능합니다. 구현된 샘플 모드는 다음과 같습니다:
+
+* SystemMirror (항상 있었던 기본 미러링 모드입니다).
+
+* SeparateTest (소셜 화면의 단순한 흑백 전환입니다).
+
+* SeparateTexture (블루프린트 지정 텍스처, 예를 들어 씬 캡처 컴포넌트가 쓰고 있는 렌더 타겟 같은 것을 표시합니다).
+
+* SeparateMirror (전체 VR 렌더 버퍼를 표시합니다).
+
+앞으로 이 기능에 대한 최적화, 멀티 플랫폼 인터페이스, 가급적 60fps 모드도 (시스템 대화창에서 특정 시스템 기능과의 충돌을 해결해야 하지만) 지원할 수 있도록 작업중입니다.
+
+이 기능을 사용하려면 새로 생긴 Morpheus 프로젝트 세팅 bEnableSocialScreenSeparateMode 를 true 로 설정해야 합니다. 그러면 소셜 스크린용 스크린 버퍼가 추가로 할당됩니다. 이 기능 제어를 위한 블루프린트 함수는 SocialScreen 으로 검색하면 됩니다.
+
+### 신규: 안드로이드 실행파일 크기 감소
+
+컴파일러와 링커 세팅을 다수 최적화시켜 안드로이드 바이너리 실행파일 크기를 줄였습니다. Build with hidden symbol visibility 옵션을 켜면 안드로이드 실행파일을 만들 때 언리얼 엔진에서 사용하지 않는 코드를 보다 적극적으로 제거해줍니다. 심볼 테이블에서 함수 심볼도 벗겨내어 실행파일 크기를 한층 더 줄여줍니다. 최종 APK 크기가 약 7MB 줄어드는 것을 확인했습니다.
+
+**주:** 이 옵션은 디바이스의 바이너리에서 심볼을 제거하므로, logcat 출력에는 네이티브 크래시 콜 스택이 심볼 없이 나타날 것입니다. 디버깅이 가능하도록 하기 위해, 빌드 시스템에서는 디버그 심볼을 벗겨내지 않은 바이너리도 출력 디렉토리에 복사한 뒤, 콜 스택에 심볼을 붙이는 배치 파일을 추가로 생성합니다.
+
+### 신규: Vertex Interpolator 머티리얼 표현식 노드
+
+머티리얼 그래프에 Vertex Interpolator 노드가 추가되어 버텍스 및 픽셀 작업의 값 보간 제어가 더욱 확실해졌습니다. 이는 작업방식상의 개선으로, 인터폴레이터의 한계나 셰이더 변경은 없습니다.
+
+기존에 버텍스 셰이더 작업을 덜어내는 방식은 Customized UV 출력을 활용하는 것이었습니다. 데이터 수동 패킹 작업이 수반되는 약간 번거로울 수 있는 작업이었지요. 아래 예제 머티리얼은 미리 스키닝된 메시 데이터를 패킹한 후 언패킹하여 이펙트에서 사용하는 것입니다:
+
+(w:766 h:665 convert:false)
+
+새로운 인터폴레이터 노드는 패킹을 자동 처리해 주어, 그래프가 단순하고 깔끔해집니다:
+
+(w:776 h:357 convert:false)
+
+기존에 Customized UVs 를 통해 패킹하던 작업은 VS (버텍스 셰이더) 핀에 걸어주고 PS (픽셀 셰이더) 핀에서 구합니다.
+
+머티리얼 통계 출력도, 인터폴레이터의 현재 패킹된 것과 가능한 최대 사용량을 표시하도록 업데이트했습니다. 참고로 위 예제에서 인스트럭션 수와 인터폴레이터 사용량은 그대로입니다. 통계를 보면 2 개의 스칼라가 TexCoord[0] 노드, 나머지 6 개는 미리 스키닝된 데이터에 예약되어 있어, 총 2 개의 벡터에 8 개의 스칼라가 패킹되어 있음을 알 수 있습니다.
+
+이 기능은 Customized UVs 와 호환되며, 결과를 같이 패킹합니다.
+
+## 신규: 애셋 관리 프레임워크 (얼리 액세스 프리뷰)
+
+Asset Manager (애셋 매니저)는 에디터에서나 실행시간에 게임 전용 애셋 유형과 맵을 발견, 로드, 검사하는 데 사용할 수 있는 새로운 글로벌 오브젝트입니다. 퀘스트, 무기, 영웅과 같은 것들을 만들고 요청이 있을 때 로드하는 작업을 수월하게 해주는 프레임워크를 제공합니다. 아직 활발히 개발중인 기능이라, 숙련되지 않은 개발자나 블루프린트 전용 게임에서 사용하기에는 아직 이르며, 4.17 이나 되어야 할 것입니다. 프로젝트 세팅의 애셋 매니저 탭에서 게임의 규칙을 구성할 수 있습니다:
+
+애셋 매니저가 검색한 주요 애셋 유형은 로드 직전 실행시간에 쿼리한 뒤, 요청이 있을 때 비동기 로드 가능합니다. 또한 애셋 매니저 세팅을 통해 게임을 패키지 제작 및 릴리즈할 때 쿠킹 및 청크 규칙을 구성할 수 있습니다. AnswerHub 에서 이 기능에 대해 작성중인 문서를 참고해 보실 수 있습니다: [https://answers.unrealengine.com/questions/595580/what-is-the-asset-manager.html](https://answers.unrealengine.com/questions/595580/what-is-the-asset-manager.html)
+
+### 신규: 애셋 검사 창 [얼리 액세스 프리뷰]
+
+애셋 관리 프레임워크 기반으로 제작된 Asset Audit (애셋 검사) 창을 사용하여 디스크 크기, 메모리 사용량, 다수 애셋에 대한 일반적인 애셋 프로퍼티를 한꺼번에 검사할 수 있습니다. 콘텐츠 브라우저의 특수 버전으로, 창 > 개발자 툴 메뉴에서, 또는 콘텐츠 브라우저나 레퍼런스 뷰어의 우클릭 메뉴에서 접할 수 있습니다. 창을 연 이후에는, 버튼으로 애셋을 추가하고, 플랫폼 드롭다운으로 쿠킹된 애셋 레지스트리에서 로드한 플랫폼 데이터를 로드할 수 있습니다. PS4 에서 ShooterGame 샘플의 텍스처를 검사하는 예제입니다:
+
+(w:929 h:289 convert:false)
+
+### VR: VR 용 콘솔 명령 통합
+
+각 플랫폼마다 다른 다양한 VR 플랫폼용 콘솔 명령을 한 데 모아 통합시켜, 개발자가 쉽게 작업할 수 있는 공유 레이어를 만들었습니다.
+
+여기에는 여러가지 장점이 있습니다:
+
+* 새로운 플랫폼의 독자 처리가 쉬워집니다.
+
+* HMD 마다 다른 인수의 뜻 일관성이 높아집니다.
+
+* 현재 HMD 구현 상의 중복이 줄어듭니다.
+
+* 모든 VR 관련 콘솔 명령에 "vr." 이라는 공통 접두사가 붙습니다. 특정 업체 전용 익스텐션은 명령 이름만 보고도 쉽게 알 수 있습니다.
+
+* 업데이트된 콘솔 명령은 탭 완료 기능과 내장 사용법 도움말을 지원합니다.
+
+현재는 과도기라 예전 콘솔 명령 인식은 됩니다만, 사용할 때 폐기 경고가 뜰 것입니다.
+
+### 커스텀 하드웨어 커서
+
+이제 플랫폼에 내장된 커스텀 하드웨어 커서가 윈도우, 맥, 리눅스에 지원됩니다! 프로젝트의 UserInterface 세팅에서 사용할 하드웨어 커서 구성이 가능합니다.
+
+이 시스템에서는 커서에 여러가지 포맷을 제공할 수 있습니다. 예를 들어, 세팅에서 "Slate/FancyPointer" 를 기본 포인터로 쓰고싶다고 지정할 수 있습니다. 게임 content 폴더의 Slate 디렉토리에 FancyPointer.png + .cur + tiff 를 넣어두면 특정 플랫폼의 다중 해상도 지원이 가능합니다. Tiff 는 맥에서, cur/ani 파일은 윈도우에서 사용되며, 해당 플랫폼에 맞는 포맷을 찾지 못한 경우 png 를 찾습니다.
+
+### 빠른 위젯 생성
+
+UMG 위젯 생성이 최대 3 배 빨라졌습니다! 쿠킹할 때, 이제 위젯 컴파일러는 생성된 블루프린트 클래스와 같은 패키지 안에 저장되어 위젯 생성 도중 사용되는 위젯 템플릿/아키타입을 생성합니다.
+
+**테크니컬 디테일**
+
+컴파일 도중, 모든 하위 유저 위젯 및 그 트리를 포함해서 거의 완벽히 초기화된 위젯 트리를 생성하고, 모든 멤버 변수를 걸어주고(hookup), 네임드 슬롯을 초기화하고, 애니메이션 셋업 등의 작업을 합니다. 이렇게 생성 작업이 거의 완료된 위젯을 아키타입으로 사용하여 인스턴싱을 하면, 그에 해당하는 느린 버전의 StaticDuplicateObject 패쓰를 통하지 않아도 됩니다.
+
+이 메소드에는 제약이 있는데, 이제 위젯의 컴파일 단계 일부에서 인스턴싱이 성공했는지, 또는 사용자가 서브오브젝트 프로퍼티에서 Instanced 구성을 깜빡해서 GLEO 레퍼런스가 생길 것인지 조사합니다. 다행히 그런 경우는 극히 드물텐데, UVisual (위젯 & 슬롯)은 모두 DefaultToInstanced (기본으로 인스턴싱)이므로, Instanced 플래그를 요하는 대부분의 경우는 알아서 처리해주기 때문입니다. 네이티브 코드에서 BindWidget 을 사용하는 대량 작업의 경우라면 더더욱 그렇습니다.
+
+## Release Notes
+
+### AI
+
+* New: Added a profiler for Environment Query System (EQS) that can be accessed through the tabs of the EQS Editor.
+
+ * It collects data automatically during game sessions as long as UES_EQS_DEBUGGER define is set. This includes options for average and max execution time of each step (including breakdown of composite generators), number of items processed by each step, and average frequency of running, which can be useful to identify how often fail safes are actually running.
+
+ * It collects tick load data when USE_EQS_TICKLOADDATA define is set. Each query can store up to 16384 records in cyclic buffer (~4.5 minutes at 60 FPS) showing percentage of EQS tick spent on processing it. This is displayed on the graph in EQS editor tab.
+
+ * A console command has been added, "DumpEnvQueryStats", that saves current EQS profiler data to a file (project's Logs folder, .ue4eqs extension), which can be later loaded and inspected in the EQS Editor.
+
+* Bugfix: Fixed an issue with Blackboard Key Selector's "Init Selector" that resulted in it picking the first value from the Blackboard rather than the appropriately typed one.
+
+* Bugfix: Gameplay Task Resource's Auto Resource ID initialization is no longer cleared during Hot Reload.
+
+* The "Get AI Controller" is now a pure Blueprint Function.
+
+* Exposed Brain Component's "Is Running" and “Is Paused†functions to Blueprint.
+
+* Clamped AI Sight's peripheral vision angle as well as changed the UI to not allow values outside of the 0-180 range.
+
+* Disabled collision on Nav Modifier Volumes. Previously they had an 'Overlap All' response and generated overlap events. They are only supposed to be used for preventing navmesh generation, but overlap events could affect gameplay and are also bad for performance.
+
+* Made "Skip Agent Height Check When Picking Nav Data" option ignore height when picking nav data for agents. It now picks solely based on the radius when this is enabled.
+
+#### Behavior Tree
+
+* Bugfix: Added safeguards to prevent crashes resulted from Blackboard keys being names being longer than 1024 characters.
+
+* Bugfix: Fixed an issue in dynamic Behavior Tree injection that was causing unexpected behavior when the main BT had more BT injection points.
+
+* Bugfix: Fixed an issue in Blackboard key instantiation that resulted in the instanced key never being used and BB operations always referring to the original BB entry.
+
+### Debugging Tools
+
+* The Gameplay Debugger's input detection has been adjusted so that Tap and Hold work correctly in fixed timestep mode.
+
+### Navigation
+
+* Added a flag to Recast Navmesh, "Allow Nav Link As Path End", that is used to control whether path corridors can end on a navigation link or not. This may happen with partial paths and not usually desired behavior. Navigation links at the end are not allowed by default.
+
+* The Blueprint functions "Project Point To Navigation", “Get Random Reachable Point In Radiusâ€, and “Get Random Point In Navigable Radius†all return booleans determining if the projection/generation was successful, as well as the vector value that describes the requested point.
+
+* Bugfix: Fixed a memory leak in navmesh generators.
+
+* Bugfix: Fixed an issue that resulted in losing user settings in Static Mesh's navigation export (Nav Collision object) after changing any property of the Static Mesh.
+
+* Bugfix: Hand-placed AI pawns now get their Path Following Component's "My Nav Data†variable set properly.
+
+* Bugfix: Fixed an issue with missing update of navigation area after duplicate or undo operations on Nav Link Proxy and Nav Link Component.
+
+* Bugfix: Corrected the handling of path following requests by Floating Pawn Movement.
+
+* Bugfix: Fixed an issue with parameters of geometry trace handling drop-down navigation links. All components blocking on ECC_WorldStatic channel will now report a valid hit.
+
+* BugFix: HLOD's navigation collision exporting no longer causes unnecessary log output about NavCollision instances in cooked builds.
+
+#### Animation
+
+* New: You can now rename Virtual Bones.
+
+* New: You can now change Virtual Bones so that you can have a Virtual Bone that is a child of another Virtual Bone.
+
+* New: Added "Get Body Target Transform" to the Physical Animation component, which will return the goal transform that a particular body is trying to get to.
+
+* New: Control rig Sequences can now be exported to Anim Sequences.
+
+* New: Preview Scene settings have been exposed in the existing settings tab rather than in a hidden menu of the viewport.
+
+* New: Support for "Curve Source" nodes to find source components on other Actors. It now searches for the property name rather than the component name.
+
+* New: Added "Set Preview Mesh" to the toolbar for all animation related Editors.
+
+* New: Updated Alembic Third-party libraries to the latest versions.
+
+* New: Added functionality to try and match in-engine Material asset names to FaceSet names found inside of an Alembic cache to automatically assign the correct Materials.
+
+* New: The Alembic Importer now supports Vertex Color data.
+
+* New: Added functionality to inform about changes to source data when reimporting your animation data from FBX. It now checks for the following:
+
+ * Whether or not the sequence length has changed.
+
+ * Whether or not previously-imported curves exist in the source data.
+
+* Bugfix: Fixed a crash when trying to implement a function in a child Anim Blueprint.
+
+* Bugfix: Fixed a crash when debugging a null Animation Sequence.
+
+* Bugfix: Trying to access a skinned vertex position on a mesh when using Master Pose component no longer crashes.
+
+* Bugfix: Attempting to bind to Skeletal Mesh with Anim Blueprint already set no longer crashes.
+
+* Bugfix: Fixed a crash and effector selection issue for two-bone IK.
+
+* Bugfix: Right-clicking the empty space in the asset shortcut drop-down no longer crashes.
+
+* Bugfix: Removed an ensure (warning) by reverting to default unit vectors if zero-sized lookat/lookup vectors are specified for a "Look At" node.
+
+* Bugfix: Removed a crash when clearing an animation of a 1D blendspace sample.
+
+* Bugfix: Crash fix to import code for Alembic Caches with the HDF5 backend.
+
+* Bugfix: Fixed an issue when adjusting curves in the Anim Curves tab using a slider when they are not currently selected.
+
+* Bugfix: Fixed an issue with Update Rate Optimization update rate being too high. Now we use int, so if you have a high update rate it still can go until it wraps around.
+
+* Bugfix: Child Anim Blueprints can now be retargeted.
+
+* Bugfix: Fixed flipping transforms when mirrored.
+
+* Bugfix: Post Process instances are now appropriately updated, even when the main Anim Instance is not using parallel update.
+
+* Bugfix: Fixed an issue where running the Editor in a different culture could break pins on nodes that have optional arrays of pins (ie. Animation Graph nodes like Blend By Layer).
+
+* Bugfix: Fixed an issue with Anim Class being set by name, causing duplicate-named Anim Blueprints to be incorrectly resolved.
+
+* Bugfix: Fixed an issue where "r.SkeletalMeshLODBias" was affecting meshes in the Animation Editor viewports.
+
+* Bugfix: Fixed an issue with Animation Preview Scene keyboard binding (I and O hotkeys now hide and show scene elements regardless of tab opened state).
+
+* Bugfix: Skinned Mesh LOD now updates in the editor under various physics-related circumstances.
+
+* Bugfix: Fixed an issue with foot placement IK doing line traces on worker threads.
+
+* Bugfix: Fixed an issue with Anim Blueprints that contain State Machines having blank palettes.
+
+* Bugfix: Renaming curves in animations now saves properly.
+
+* Bugfix: Fixed an issue with two-bone IK flickering around full extension when stretch is enabled.
+
+* Bugfix: Animation now works as expected for dynamically-bound wheeled-vehicle anim instances.
+
+* Bugfix: Fixed an issue where you could not undo changes from Alembic Import settings.
+
+* Bugfix: Fixed timing issues occurring while playing back Alembic caches.
+
+* Bugfix: Fixed an issue with incorrect behavior occurring when placing more than three samples in a straight line for a 2D blendspace.
+
+* Bugfix: Dropping a new Animation asset on an existing Sequence Player node can now be undone.
+
+* Bugfix: Breaking transition node connections within Animation State Machines can now be undone.
+
+* Bugfix: Fixed an issue to ensure that changes to animation sync markers are propagated to currently open blendspace assets.
+
+* Bugfix: Skeletal Mesh components tick properly when paused if "Tick Event When Paused" is enabled.
+
+* Bugfix: Fixed Skeletal Mesh Merge duplicating Skeletal sockets.
+
+* Enabled snapping for translation in the Animation viewports.
+
+* Removed force inline from Virtual Compression functions.
+
+* Removed the AnimGraph module from the Graph Editor as a dependency.
+
+* Bone Reference now has improved performance by caching compact post bone index.
+
+* Graph files have been moved to Animation Blueprint Editor.
+
+* We have stopped saving raw curve data into animations on cook in order to save memory and disk space.
+
+* Ticks now appear properly on Anim Sequence scrub bar.
+
+* Persona now depends publicly on Skeletal Editor.
+
+* Montages are now correctly initialized when created. They can be used straight away without first opening them in the Montage Editor.
+
+* We now propagate thread safety flags to child Animation Blueprints.
+
+* The Anim Notify Blueprints now start with a "received notify" event node.
+
+* Made single-node animation instances request clothing simulation resets when their animation is changed. This is because the new animation could be very different from the outgoing animation, and this might cause pops.
+
+* Refactored "Evaluate Bone Transforms" to prevent usage of Skeletal Mesh component.
+
+ * Deprecated "Evaluate Bone Transforms" in favor of new “'EvaluateSkeletalControl_AnyThreadâ€.
+
+ * Deprecated Skeletal Mesh component argument to "Convert CS Transform To Bone Space" and “​Convert Bone Space Transform To CSâ€. Now they just take a transform.
+
+* When selecting bones that are non-required, we now do not render gizmos or text labels.
+
+* Skeletal selection does not lag behind choice made in the viewport (i.e. when showing bone weights).
+
+* Added accessor and modifier functions for "Start Time Offset" value in Geometry Cache components.
+
+##### Animation Assets
+
+* New: You can now choose a preview slot in the Montage Editor.
+
+* Bugfix: Fixed a crash when reimporting animations with additive transform tracks.
+
+* Bugfix: Fixed an issue with additive Pose Asset preview being applied twice.
+
+* Bugfix: Compressed animation data is now included in Memory Stats for Animation Sequences.
+
+* Bugfix: Fixed an issue where blendspace interpolation settings would not have a direct effect and required reopening the blendspace asset.
+
+##### Animation Blueprint
+
+* New: Added "Spline IK" node.
+
+* New: Added a property to Blendspace Player nodes that enables users to choose whether the play time is reset when the blendspace changes.
+
+* New: Animation Blueprints can now specify a Preview Mesh.
+
+* New: Added the "Look At" node so you can use “Look at Location†on a socket or joint, and improved the Visualizer.
+
+* Bugfix: Fixed a crash when "Pose Asset" contains a bone that is not in the mesh.
+
+* Bugfix: Fixed an assertion that could occur when selecting certain items in the Animation Blueprint editor.
+
+* Bugfix: Fixed a crash when diffing State Machine Transition graphs.
+
+* Bugfix: Fixed an issue with "Pose Handler" using mesh bone index and not compact bone index for setting up “Bone Blend Weights†array.
+
+* Bugfix: Fixed an issue with incorrect errors on compiling Aim Offset nodes with exposed blendspace pins.
+
+* Bugfix. Fixed an issue with additive nodes breaking the current pose when they have no additive animation attached.
+
+* Bugfix: Fixed issues pertaining to extra references to Animation Blueprints on Skeletal Mesh components.
+
+* Layered Bone Blend node has been optimized so that it will cache mask weights in compile time.
+
+##### Import/Export
+
+* Bugfix: Fixed a crash when reimporting a Skeletal Mesh that has Virtual Bones.
+
+##### Skeletal Mesh
+
+* Bugfix: Fixed a crash when using re-import button in the Skeletal Mesh Editor.
+
+* Bugfix: Fixed a crash related to Skeletal Mesh resources not being initialised before component is registered.
+
+* Bugfix: Fixed a serialization mismatch in Skeletal Mesh source buffers.
+
+* When importing a Skeletal Mesh, "Activate Bone Indices" now always includes parents even if it's not skinned.
+
+#### Tools
+
+* Bugfix: Fixed a crash in Persona when rotating a bone due to single bone controllers not being initialized correctly.
+
+* Bugfix: Fixed an ensure when deselecting bones in Anim Blueprint editor.
+
+* Bugfix: Fixed an issue where mesh-customized sockets were not showing up by default in 'Active' socket filter mode.
+
+* Bugfix: Fixed issues related to bone removal in Skeletal Mesh LODs.
+
+ * Issue where the "Apply" button would not show after adding bone names.
+
+ * Issue where previously removed bones would not be restored.
+
+ * Ensure that the Skeletal Tree is updated when bones are removed or restored.
+
+* Double-clicking animation assets in Content Browser will now try to re-use existing Animation Editor windows, rather than opening a new one every time.
+
+* Animation picker on Skeletal Mesh component is now disabled rather than hidden when no Skeletal Mesh is assigned.
+
+* The Soundwave-internal curve tables have been moved to the 'Advanced' rollout.
+
+#### Audio
+
+* New: Vorbis-encoded audio files can now be streamed.
+
+* New: Audio streaming is now supported on Android, iOS, and XBox One.
+
+* Bugfix: Fixed a shutdown crash when there is a pending async audio occlusion trace.
+
+* Bugfix: Fixed a crash when opening a Media Sound Wave.
+
+* Bugfix: 'Sound Player' nodes will more efficiently load the referenced sound asset unless a 'Sound Quality' node is being used to select which 'Sound Player' nodes to consider, in which case, the current asset reference evaluation will continue to be used.
+
+* Bugfix: We only queue subtitles once per-wave instances playback.
+
+#### Automation
+
+* New: Added support for -DeveloperReportOutputPath and -DeveloperReportUrl commands to permit local runs of the Automation Tool to generate reports on the report server and launch the browser to view them.
+
+* 'ResavePackages' commandlet now supports lighting in separate packages when using it to rebuild lighting.
+
+* Option to disable taking screenshots has been disabled. Screenshot comparison is an integral part of the testing so disabling them is no longer allowed.
+
+* The system now waits for the asset registry to finish loading assets before running tests.
+
+#### Blueprints
+
+* New: Added the 'Remove Gameplay Tag' function to the gameplay tag function library.
+
+* New: Blueprints containing a String and Text variables can now be marked as multi-line, which enables values to contain newlines when pressing Shift + Enter while editing them.
+
+* New: Blueprint Variables can now be marked as 'Read-Only' in Blueprint Editor, which prevents them from being set in Blueprints. This behaves the same as using 'BlueprintReadOnly' instead of 'BlueprintReadWrite' on a C++ UPROPERTY() declaration.
+
+* New: 'Get Default Locale' has been exposed to Blueprints.
+
+* Macro instances that contain latent actions will now show an overlay clock icon like other latent nodes, which makes them easier to spot and understand that they impact execution flow
+
+ (w:720 h:180 convert:false)
+
+* New: Improved comments in Blueprints.
+
+ * Comment node text now wraps while the comment is being edited.
+
+ * Reduced cases where the title of a comment node would clip at the end.
+
+ * Editing the comment for a regular node using the right click menu will now show changes immediately, rather than waiting until the node was moused over again.
+
+* New: Added the Save and Find in Content Browser buttons to the Level Script Blueprint editor (they will save/show the map package that contains the Level Script).
+
+* New: Added the ability to search for delegate nodes using the function name that they are bound to.
+
+* New: 'Array Get' node.
+
+ * Can toggle between returning a reference or copy.
+
+ * Using a reference solves a longstanding issue with arrays of structs not being able to easily make changes to the items in the array.
+
+* New: 'Get Class Defaults' node has been extended to include output pin exceptions for Set & Map variable defaults. Like array types, the returned value is now a copy of the default value rather than a reference to it. This is done in order to avoid an accidental mutation of the Blueprint class default object.
+
+* New: Function inputs are now exposed as variable "Get" nodes via the right-click context menu in a Blueprint function graph context.
+
+ * To use: In a Blueprint Function graph, right-click to access the context menu. Any input parameters will be listed as additional "Get" actions.
+
+ * In this way, input parameters can be accessed like local variables from anywhere in the function graph; in other words, it's no longer necessary to drag wires all the way back to the Function Entry node in order to access these values.
+
+* New: We now support "value-based" Bitfield enum type associations in the editor for a UPROPERTY marked as 'Bitmask' with a 'BitmaskEnum' association.
+
+ * Prior to this release, Bitfield properties did not work with associated enum types in which the enum values were explicitly set to a bitmask value (e.g. 0x80). That is, the value was assumed to always be set to the index of the bit that the flag should set in the editor ("index-based" mode).
+
+ * To switch the associate to the new "value-based" mode, include an additional metadata key in the UENUM() declaration. Example: UENUM(Meta = (Bitmask, *UseEnumValuesAsMaskValuesInEditor="true"*)).
+
+* New: Added a whitelist mechanism for handling native noexport types that can support direct field access in nativized Blueprint code.
+
+* Bugfix: Fixed a crash in Blueprint Editor when adding an input parameter to a Custom Event node after deleting a Function Graph containing a Create Event node.
+
+* Bugfix: Fixed a crash when creating a new Blueprint class from one or more selected Actors in which the root component is not Blueprint-spawnable.
+
+* Bugfix: Fixed a crash on load in nativized EDL-enabled builds with non-nativized child Blueprint class assets.
+
+* Bugfix: Fixed a runtime Blueprint VM crash upon removing an element from set after consecutive add/remove iterations.
+
+* Bugfix: Fixed a crash that could occur when splitting a struct pin on a collapsed graph node.
+
+* Bugfix: Fixed a crash when trying to use non-supported types as Blueprint map keys.
+
+* Bugfix: Fixed a crash that could occur when changing a Map's value type string to vector. Map variables are properly cleared when value type is changed to an incompatible type.
+
+* Bugfix: Fixed a crash when compiling a Blueprint that contains a split pin in a collapsed graph.
+
+* Bugfix: Fixed a crash loading Blueprints that contain a Blueprint node that no longer exists in code.
+
+* Bugfix: Fixed a crash when using the Straighten Connection shortcut key (and some other related issues with actions done after the Context Menu is closed).
+
+* Bugfix: Fixed a crash when opening a Blueprint with a parent class that no longer exists.
+
+* Bugfix: Fixed a crash with the merge tool when the source control provide is SVN and there are gaps in the revision history. (This may still not work correctly, but it won't crash. The full fix will be covered with UE-43603)
+
+* Bugfix: Fixed a crash when attempting to name component with a very long name.
+
+* Bugfix: Fixed a crash that could happen when running Cook On The Fly server with nested struct assets.
+
+* Bugfix: Fixed a crash that would happen when a level in Blueprint was auto-saved.
+
+* Bugfix: Fixed an assertion that could occur when compiling a Blueprint with certain nodes (Select, Math Expressions, etc.)
+
+* Bugfix: Fixed a crash that could occur when reparenting a component Blueprint.
+
+* Bugfix: Fixed a crash that could happen when setting maps and sets of strings and certain structs.
+
+* Bugfix: Fixed a crash that would occur when passing a self node through a CustomEvent ref parameter.
+
+* Bugfix: Fixed a crash that could occur when adding a new Blueprint function and immediately undoing.
+
+* Bugfix: Fixed a crash that could occur after renaming the category of an implemented interface function inherited from a native C++ parent class in the 'My Blueprint' panel.
+
+* Bugfix: Fixed a crash that could occur when editing a local curve variable's default value in a Blueprint graph.
+
+* Bugfix: Fixed an ensure misfire in PIE exit when using Play as Listen Server Mode.
+
+* Bugfix: Fixed an infinite loop case in the Math Expression node.
+
+* Bugfix: Fixed an issue where misaligned memory access of noexport struct properties leading to incorrectly initialized values in a nativized cooked build.
+
+* Bugfix: Fixed an issue with broken collision shapes at runtime when cooking with the optimized Blueprint component instancing data feature turned on.
+
+* Bugfix: Fixed an issue with a Bitmask Enum type validation failure when serializing a Make Bitmask Literal node
+
+* Bugfix: Fixed an issue with log spam when compiling a Blueprint function with a local TSet or TMap variable.
+
+* Bugfix: Fixed an issue with broken pin wires after expanding a duplicated collapsed graph node.
+
+* Bugfix: Fixed an issue with invalid custom Enum type selection on member fields in the User-Defined Structure editor after a reload.
+
+* Bugfix: Improved context menu "whole world" algorithm to proper take into consideration localisation when searching for terms.
+
+* Bugfix: Fixed an issue where renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded.
+
+* Bugfix: Fixed an issue with broken graph node pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself.
+
+* Bugfix: Fixed an inability to save after choosing a Level Script Blueprint class as the default value for a class input pin in a non-Level Script Blueprint class function graph.
+
+* Bugfix: Fixed an issue where Blueprints containing a 'Key Get Display Name' node will no longer be marked dirty when opening the Blueprint.
+
+* Bugfix: Fixed an issue where the user defined variable tooltip was not showing up when hovering over Get/Set nodes for local variables.
+
+* Bugfix: Fixed an issue with old versions of Blueprints being diffed accidentally showing up in Find-in-Blueprints search results.
+
+* Bugfix: Fixed some issue in Blueprint Diffing where properties of nodes edited in a Details panel would not show up as differences (this impacted Animation Graph nodes most heavily).
+
+* Bugfix: Fixed an issue in Blueprint nativization that could cause bad interface function calls to be generated.
+
+* Bugfix: Fixed an issue that could cause stale Blueprint instances in a hidden sub-level to spam a runtime error.
+
+* Bugfix: Fixed an issue that could cause a Blueprint 'mismatch' error when using 'Set' and 'Map' node.
+
+* Bugfix: Fixed an issue that could cause struct asset defaults to be wiped on editor reload.
+
+* Bugfix: Fixed an issue that could cause a packaging error when running with Blueprint nativization and no Blueprints were nativized.
+
+* Bugfix: Fixed an issue that removed the ability to set Blueprint object variables as 'config' variables, as you cannot set a object reference from a config.
+
+* Bugfix: Fixed an issue with reroute nodes so that a new output connection will propagate that type through to the node's inputs.
+
+* Bugfix: Fixed an issue so that 'Get Data Table Row' nodes are now compatible with DataTable variables.
+
+* Bugfix: Fixed an issue that could cause material parameter setting in a Blueprint construction script to fail.
+
+* Bugfix: Fixed an issue that could cause overlap events to fire multiple times in PIE.
+
+* Bugfix: Fixed an issue that would generate the nativized Blueprint plugin even if no Blueprint files were nativized.
+
+* Bugfix: Fixed an issue that would cause certain components to be orphaned and hidden from the component hierarchy.
+
+* Bugfix: Fixed an issue that could cause a level Blueprint's bound delegate nodes to not trigger.
+
+* Bugfix: Fixed an issue in Blueprint nativization that would cause cyclical logic (loops, etc.) to not iterate past the first iteration.
+
+* Bugfix: Fixed an issue in Blueprint nativization that could cause Blueprint subclasses to ignore their overridden model and default to their parent's.
+
+* Bugfix: Fixed an issue where non-nativized Blueprints were getting dropped from the cooked asset registry file when running with Blueprint nativization.
+
+* Bugfix: Fixed an issue where there would be a nativized Blueprint asset build error when there are no native code dependencies.
+
+* Bugfix: Fixed an issue with incorrect Blueprint graph pin value display names for user-defined enum types.
+
+* Bugfix: Fixed the variable 'config' setting tooltip to report the correct config file for the user to use.
+
+* Bugfix: Fixed an issue that could cause Blueprint variables set from a config to have their values improperly overwritten.
+
+* Bugfix: Fixed several issues with Switch Blueprint nodes not keeping their node and property UI in sync.
+
+* Bugfix: Fixed several issues where changing pawn/hud/state class from the Level editor toolbar would not work properly until the project was reloaded.
+
+* Bugfix: Fixed a stale class reference in interface properties that reference a Blueprint defined interface that has been recompiled.
+
+* Bugfix: Fixed an issue where 'Get Values' and 'Get Keys' nodes were not providing correct results for Map variables that have had values removed.
+
+* Bugfix: Fixed an issue where Blueprint functions that have all their return nodes pruned (ie. are not connected to anything) now have the correct output pins at call sites.
+
+* Bugfix: Fixed an issue where 'Movie Scene Sequence' and related code was not working when Blueprints were nativized.
+
+* Bugfix: Fixed an issue in nativized packaged builds that would cause default values to be lost.
+
+* Bugfix: Fixed 'Enum As Byte' related warnings in nativized packaged builds. 'Enum As Byte' is no longer used when nativizing Blueprints.
+
+* Bugfix: Fixed issues with Blueprint nativization where it didn't correctly include headers necessary for owners of subobjects, and instances where all modules needed by the generated code weren't being founds. This fixes one cause of "Cannot open include file" errors when packaging with Blueprint Nativization enabled.
+
+* Nodes in the blueprint editor again use their custom cursor (grab hand when hovering over a node and crosshairs when hovering over pins).
+
+* 'Logarithm' node added to the Blueprint Math library.
+
+* 'Set' pins on 'Intersection', 'Union' and 'Difference' nodes now infer their values uniformly.
+
+* Out of date Class Default Objects are no longer duplicated when compiling a Blueprint, reducing blueprints compilation time
+
+* Successive calls to Set Intersect, Union or Difference now provide correct results, previously the Set was not cleared before calculating the new result
+
+* 'Trace By Profile' collision functions have been exposed to Blueprints.
+
+* Nativize code is now more precise about dependencies, reducing the resulting executable size and compiler load.
+
+* Blueprints that override an inheritable component are no longer 'data only'. Blueprints with overridden components but no extra functions now load without losing data.
+
+* Blueprints that extend types that implement 'Needs Load For Server' or 'Needs Load For Client' now honor those functions, meaning they will not be cooked for targets that their type wants to be excluded from.
+
+* Delegates in nativized packaged builds correctly prevent double registration.
+
+* Blueprints used as a child actor class will no longer be marked dirty when compiling the class that references them.
+
+* When duplicating a Blueprint component, that component will now be a sibling of the duplicated node, not a child of it unless it is the root node being duplicated.
+
+* Duplicated root nodes will have their scale set to (1,1,1) to avoid applying the scale multiplier twice.
+
+* Blueprintable Components are no longer considered experimental, they have been enabled by default for several versions.
+
+* The ticking behavior of latent actions in components has been changed to match how they behave in actors. When the component ticks, the latent actions will now be processed at the same time, rather than happening later in the frame when latent actions for non-ticking actors and components are processed. This does change behavior, so there is a console variable (t.TickComponentLatentActionsWithTheComponent) that can be used to revert to the older behavior until affected component Blueprints that depended on the old ordering behavior can be fixed up. The cvar should be treated as deprecated; it will be removed in a future release.
+
+* Updated Blueprint nativization so that it generates source files compatible with 'include what you use' (IWYU).
+
+* Moved nativized Blueprint plugin generation to the project's 'Intermediate\Plugins' folder.
+
+* Removed make/break nodes from the Blueprint menu for structs that aren't marked as a 'BlueprintType'.
+
+* Updated marquee selection in graph editors. Ctrl dragging now inverts nodes' selection state, instead of only deselecting them (holding alt is now for pure deselection).
+
+* The Actor Details view will now refresh property mappings for the current Actor instances selection after a bytecode-only recompile of its Blueprint class as a dependency during reinstancing.
+
+* Child Blueprint class assets are now marked as dirty if its parent Blueprint class incurs a structural change. This alerts the user that updates to the Child Blueprint would need to be saved on exit.
+
+* We now emit C++ ctor initialization code for nested default subobjects when nativizing a Blueprint class at cook time.
+
+* Instanced Static Mesh transform edits are now reflected in the Blueprint editor's preview scene.
+
+* The editor will now raise an error at cook time after an attempt to nativize a Blueprint class that also implements a native C++ interface with a pure virtual function declaration that is not also marked up with UFUNCTION. This is because we cannot nativize a Blueprint class that does not also have an implementation of a pure virtual function inherited from the interface.
+
+* C++ interfaces with one or more pure virtual function declarations not also tagged with UFUNCTION are now excluded from the list of available "Implementable" interfaces in the Blueprint class editor.
+
+* Non-nativized child Blueprint classes will now properly override a nativized parent Blueprint class's component defaults at runtime in a nativized cooked build.
+
+* We will now implicitly nativize any child Blueprint class that overrides one or more BlueprintCallable functions inherited from a parent Blueprint class that is also nativized.
+
+* The Blueprint diff tool now reports when a component changes its type between revisions
+
+* Blueprints are now only dirtied if edited properties are from objects in the Blueprint's package.
+
+#### Core
+
+* New: Support added for "double" and 'fname' stat types in UFE stat export to CSV.
+
+* New: Pak files can now have their index encrypted with AES, preventing them from being opened by unrealpak.
+
+ * An AES key must be provided in the project Encryption.ini, and then index encryption can be enabled in the project packaging settings in the editor.
+
+ [REGION:note]
+ When either pak index encryption or signing are enabled in the Project Settings, pak ini encryption must also be enabled in order to avoid a potential security issue. All of these settings can be found in the Packaging section of the Project Settings dialog in the editor.
+ [/REGION]
+
+* New: Added "Get Component For Axis" and “Set Component For Axis†to FVector and FRotator.
+
+* New: Added support for -iterate for content plugins that require path remapping during cook/packaging.
+
+* New: Added a "CookedOnly" plugin type, for plugins meant only to be loaded in cooked games (in support of Blueprint nativization).
+
+* New: Added a Json Object Converter to add support for saving and loading TMap and TSet UProperties.
+
+* New: Absolute paths are now allowed in -UserDir= argument.
+
+* New: Added ability for games to use command line parameters for map overriding in shipping builds if their target.cs file defines UE_ALLOW_MAP_OVERRIDE_IN_SHIPPING macro to 1.
+
+* New: Added support for instanced elements in TMap and TSet properties being copied during "Copy Properties For Unrelated Objects."
+
+ * This fixes an issue where instanced fields could lose data during recompilation of a Blueprint.
+
+* New: Added a new method Platform Misc "Get OS Version" that returns a string representing the raw OS version info.
+
+* New: All HTTP implementations now use a consistent User-Agent string (specified via the overridable function Generic Platform Http "Get Default User Agent" method).
+
+ * Added a Platform and OSVersion string to the default value (platform=FPlatformMisc::IniPlatformName() and osver=FPlatformMisc::GetOSVersion()).
+
+* Bugfix: Fixed a crash with startup in the runtime asset manager when the on-disc cache already contains more data than the system is configured to use.
+
+* Bugfix: Fixed a crash in 'Chunk Cache Worker' function constructor.
+
+* Bugfix: Fixed a crash when launching "Play In Editor" session caused by missing audio data if its DDC data was not present and the audio was streamed in.
+
+* Bugfix: Fixed a crash when UObject can be added to GC cluster only if all of its Outers can also be added to it.
+
+* Bugfix: Fixed an assert with LocalExportIndex.IsNull. Now the Event Driven Loader code will properly disambiguate imports with the same name and the same outer name.
+
+* Bugfix: Fixed a crash when Hot Reloading caused by reinstancing UEngine objects.
+
+* Bugfix: Fixed an occasional crash during Hot Reload CDO reinstancing that was caused by a redundant insertion into TMap invalidating an existing reference into that TMap.
+
+* Bugfix: Fixed a crash when importing a Blueprint which contains a non-empty TMap with an enum class key.
+
+* Bugfix: Fixed a crash when Hot Reloading a project which contains a user-defined struct.
+
+* when hot reloading a project which contains a user-defined struct.
+
+* Bugfix: Fixed a crash when deserializing a TMap property item with instanced elements, where the CDO contains default element values for that property.
+
+* Bugfix: Fixed the use of many printf non-literal formatting strings, as these are potential security issues.
+
+* Bugfix: Fixed an issue with incorrect error code being returned from UnrealHeaderTool when -WarningsAsErrors and -Verbose are specified code.
+
+* Bugfix: Fixed an issue with the error code returned by UnrealHeaderTool when an error occurs during preparsing of headers.
+
+* Bugfix: Fixed a persistent stat metadata warning generated during PIE..
+
+* Bugfix: Fixed an issue with FMonitoredProcess to prevent infinite loop in -nothreading mode.
+
+* Bugfix: Fixed an issue for runtime asset cache not invalidating files with an outdated version number.
+
+* Bugfix: Fixed stats warnings because each new slate loading screen thread has the same stat name, but is potentially assigned to a different thread.
+
+* Bugfix: Fixed an issue with CSV parser missing empty cells at the end of the string.
+
+* Bugfix: Fixed an issue with external plugin cooking and deployment by remapping plugin directories upon cook & deployment Tested directory structures:
+
+ * D:\SomePluginDir
+
+ * D:\UE4\AnotherPluginDir
+
+ * D:\UE4\Engine\Plugins
+
+ * D:\UE4\MyProject\Plugins
+
+* Bugfix: Fixed a memory leak in MallocBinned which affects the mobile platforms (Android, iOS).
+
+* Bugfix: Fixed a typo in comments for LODColoration in BaseEngine.ini.
+
+* Bugfix: Fixed the Log message in "Exclusive Load Package Time Tracker."
+
+* Bugfix: Fixed an issue where "log.timestamp" command would not work because it was incorrectly handled by "log" console command.
+
+* Bugfix: Fixed an issue where the logging system could hang when running out of disk space while flushing log and fixed unexpected concurrency assert when flushing the log buffer to disk.
+
+* Bugfix: Fixed a deadlock when flushing log file while it's already being flushed by a flush timer on the async log writer thread.
+
+* Bugfix: Fixed a memory leak when running with -nullrhi on the commandline in cooked games caused by shader resources not being destroyed.
+
+* Bugfix: Fixed an issue to make sure the engine is properly cleaned up on UnrealHeaderTool early exit to prevent UnrealHeaderTool hangs.
+
+* Bugfix: Fixed an issue to make sure that streamed-in SoundWaves get added to Garbage Collection clusters.
+
+* Removed dependency preloading system from sync and async loading paths. It has been superseded by the new event driven loading system.
+
+* Removed remaining references to AES_KEY, instead using the encryption key delegates to access the key where needed.
+
+* Refactored encryption and signing key access in unrealpak to make it easier to use.
+
+* Make content projects generate a stub executable when encryption or signing keys are specified so that keys can be embedded correctly.
+
+* Separate pak cache granularity from pak signing chunk size in the EDL loader.
+
+* Increase "Serial Size" and “Serial Offset†in FObjectExport to 64bits, to handle larger file sizes.
+
+* Added some validation of the class index in exportmap entries.
+
+* Added missing support for compiling plugins external to Engine/Plugins & Game/Plugins.
+
+* Disabled the 'HeartBeat' function on platforms that don't actually want to use the HeartbeatThread.
+
+* 'None' is now going to be properly considered by the engine as an invalid filename.
+
+* The editor will now collect garbage after a map is loaded to make sure any stale components or other objects that are no longer needed are destroyed. This is to make sure that these components are not resurrected by another editor operations like duplication.
+
+* Made sure the async log writer flushes the log archive even if there's no serialization requests to prevent situations where some of the recent requests haven't been flushed to disk
+
+* Reduced the code size for the generated Static Register Natives functions.
+
+* Disabled the garbage collector when recompiling child Blueprints, as is already done for the parent Blueprint.
+
+* Simplified Unreal Header Tool's code generation logic.
+
+* Implemented Lex "To Sanitized String" for double.
+
+* The function Local Player Context "Is Valid" now also checks that the player controller has a player set.
+
+#### Editor and Tools
+
+* New: UnrealGameSync now includes a workspace-specific file filter, separately to the global file filter.
+
+* New: UnrealGameSync now supports pop-up notification for build failures on content changes.
+
+ * To mark a badge as applicable to users submitting content changes, add +ContentBadges=Name to the [Notifications] section of the project specific configuration file at /Build/UnrealGameSync.ini.
+
+* New: UnrealGameSync now allows a project to specify filters for the streams that should be displayed for fast-switching to.
+
+ * The "Quick Select Stream List" setting in the “Options†section of the Project Settings references a depot path containing a list of strings used to filter the stream list. An option is shown to switch back to showing all available streams, if desired.
+
+* New: Added support for in memory packages. Helps distinguish between packages which can and can't be cooked.
+
+* New: Added a Blueprint function to convert a Render Texture to Texture2d. This is only available for use in the Editor.
+
+* New: Custom Depth can now be enabled for Foliage.
+
+* New: You can now color-code all of the windows in the editor in order to visually distinguish them when working across multiple branches or projects
+
+ * You can adjust the 'Editor Window Background Color' for a subtle effect, as the default background is already a pretty dark grey:
+
+ (w:929 h:416 convert:false)
+
+ * Or you can edit the tint in the two brushes (which sets the texture to a white default one) to get a very brazen effect:
+
+ (w:929 h:416 convert:false)
+
+* New: Added Data Table export/import support for TMap and TSet.
+
+* New: Updated the Windows platform to use the newer Vista+ style browser dialogs, rather than the older XP style dialogs.
+
+* New: You can now empty the text value within an FText property or pin.
+
+* New: Added support for .ini-driven classes to use a specific platform's config hierarchy, so that the editor on a desktop platform can read .ini settings from other platforms .ini files.
+
+ * This will allow for NDA'd platforms to keep their ini settings in protected files, but still be editable by the editor.
+
+ * Moved project settings for console platforms over
+
+ * See UObject::GetConfigOverridePlatform()
+
+* New: Scene importing now allows for plugins to expose new scene import factory types.
+
+* New: Overhauled "Call In Editor" support and promoted it so it can be used on functions in any class, not just Blueprints derived from AActor:
+
+ * "Call In Editor" can now be used on native UFUNCTION() declarations (e.g., UFUNCTION(Category=CoolCommands, CallInEditor)).
+
+ * Blueprint declared functions can also be marked as CallInEditor (in addition to custom events), which allows you to set the category and tooltip for the buttons.
+
+ * Now shows each function as a separate button, placed in the category associated with the function.
+
+ * Removed the duplicate copies of properties placed in the Blutility section.
+
+ * Prevented operating on functions that have parameters or return values, which could crash before.
+
+ * Added a scoped transaction around "Call In Editor" execution so changes made can be undone.
+
+ * The button strip entry is now searchable by function name or tooltip.
+
+* New: Added a new Details view option: "Show Hidden Properties while Playing"
+
+ * Enabling this allows you to see every property on selected objects that belong to a simulating world, even non-visible and non-editable properties.
+
+ * This feature is very useful for inspection and debugging, because you can see all of the internals of your Actors and Objects.
+
+ * Be careful when changing values for properties that are not really intended to be changed at runtime. You could introduce instability or even corrupt data.
+
+ * Note that this setting is saved for your entire project.
+
+* New: Sequencer additions and updates:
+
+ * Tracks can now be prioritized based on their subscene hierarchical bias value. Higher bias values take precedence.
+
+ * Fixed particle system restore state so that it gets the proper initial active state of the particle.
+
+ * Added a generic past menu for Master (root) tracks.
+
+ * Changed the time snapping interval in the toolbar UI so that it no longer additionally updates the Sequencer setting. The setting is only used to initialize the time snapping interval of the Level Sequence.
+
+ * Added translate keys with Ctrl and Left-Right arrows.
+
+ * Added Level Sequence Actor button in the Details panel to open Sequencer.
+
+ * Duplicate shot now puts the duplicate on the next available row, keeping the start/end times the same.
+
+* New: You can now isolate/select all sections using a specific Material slot.
+
+* New: The FBX importer updates:
+
+ * Now imports collision models under the FBX LOD Group.
+
+ * Now applies the transform from FBX options only one time for the whole import.
+
+ * When importing an FBX file from Blender, the importer now removes the root node name "armature."
+
+ * No longer removes the socket created in UE4 Editor when using reimport. If affects only imported socket.
+
+* New: Added some LOD Setting options to the FBX Import Options window. Users can now specify the following Static Mesh LOD Settings Options:
+
+ * Auto Compute LOD Distance
+
+ * Minimum LOD Number
+
+ * LOD number
+
+* New: The FBX Importer now fills two more Material Inputs (Texture only) from the FBX Material:
+
+ * Specular Factor imported as "Roughness"
+
+ * Shininess imported as "Metallic"
+
+* New: The FBX exporter can now export with the Front X-Axis. The new option is under the Editor Preferences settings.
+
+* New: TMaps now support editing structs as keys from within the Details panel.
+
+* New: The Data Table Row Editor now contains a Reset to Default control.
+
+* New: Properties added to the header of a Details panel group (ie. via IDetailGroup::HeaderProperty()) now have copy/paste actions exposed in the Context Menu.
+
+* New: Added the possibility in Slate to reset property group to their default value.
+
+* New: Added the possibility to perform the following actions in Save/Load Level dialog:
+
+ * Rename
+
+ * Delete
+
+ * Create a New Folder
+
+ * Show in Explorer
+
+ * Show the Size Map tool
+
+* Bugfix: Fixed a crash when selecting components from an Actor's component tree and then undoing
+
+* Bugfix: Fixed a crash when attempting to open multiple cooked assets at once in the editor.
+
+* Bugfix: Fixed a crash when pressing PIE button several times before PIE session begins.
+
+* Bugfix: Fixed a crash that could occur during seamless travel while playing in a Play-in-Editor session with the "Use single process" option unchecked.
+
+* Bugfix: Fixed a crash while using the "Delete" button inside of the HLOD outliner while having a Proxy mesh opened in the Static Mesh Editor.
+
+* Bugfix: Fixed a crash when using import into level with .obj file.
+
+* Bugfix: Fixed a crash when dragging a re-import scene and there is new asset created.
+
+* Bugfix: Fixed a crash when creating too many LODs when importing a Static Mesh.
+
+* Bugfix: Fixed a crash with High Resolution Screenshot Tool that could happen when the Screen Percentage is set to a value other than 100%.
+
+* Bugfix: Fixed an issue with Device Output Log showing partial lines sometimes.
+
+* Bugfix: Fixed an issue where array properties would revert to the default values when duplicating an Actor.
+
+* Bugfix: Fixed an issue with Details panels becoming unusable if "Show Only Modified Properties" is enabled and there are no modified properties.
+
+* Bugfix: Fixed an issue so that thumbnails for Material assets now respect the "used particle system sprites flag" and show a quad instead of a sphere by default.
+
+* Bugfix: Fixed an issue for outdated error message instructions for how to fix being unable to launch on an iOS device.
+
+* Bugfix: Fixed an issue with "Save Current As" option not saving the current level and only saving the Persistent Level and then reloading everything thus causing work to be lost if editing a sub-level.
+
+* Bugfix: Fixed an issue with Material Instances being marked dirty when opening.
+
+* Bugfix: Fixed an issue with TAssetSubClassOf properties being reset on undo.
+
+* Bugfix: Fixed an issue that could cause the wrong Blueprint instance to be duplicated, or copy/pasted.
+
+* Bugfix: Fixed an issue with the Focus action in the Static Mesh Editor viewport.
+
+* Bugfix: Fixed an issue with Color Customization so that curve color names are "R", "G", "B", "A" instead of None.
+
+* Bugfix: Fixed an issue with user's setting for Texture Mip LOD size being incorrectly clamped.
+
+* Bugfix: Fixed an issue where lighting rig rotations were not set / saved correctly for Preview Scene Profiles.
+
+* Bugfix: Fixed an issue where auto-exposure values from the Preview Scene Profiles were not correctly applied
+
+* Bugfix: Fixed an issue where HLOD's "Override Screen Size" would not propagate on a LOD Actor directly.
+
+* Bugfix: Fixed an issue where the Material Slot assignment wasn't correctly restored on reimport.
+
+* Bugfix: Fixed an issue to prevent importing more LODs than the maximum allows for.
+
+* Bugfix: Fixed an issue with the FBX importer's "Front X-Axis conversion". We remove the scale of the camera and adjust the orientation of both the camera and light.
+
+* Bugfix: Fixed an issue with Auto Reimport "Directory to Monitor" feature.
+
+* Bugfix: Fixed some issues with the Import commandlet:
+
+ * Fixed possible crash when importing FBX files.
+
+ * Now makes sure that the imported assets are saved when there is no source control.
+
+* Bugfix: Fixed an issue with Static Mesh conversion from UE4 4.14 to earlier versions.
+
+* Bugfix: Fixed an issue with the Merge Actors Tool that was sometimes assigning wrong Material IDs to mesh sections.
+
+* Bugfix: Fixed an issue where the Number of Players and Dedicated Server settings for PIE would not persist correctly after Editor shutdown.
+
+* Bugfix: Fixed issues related to Auto Reimport:
+
+ * Fixed a crash when attempting to import to mount points that do not exist.
+
+ * Now allow for new assets to be created from monitored directories.
+
+ * Settings now use a path picker when specifying the "Map Directory To" field.
+
+* Bugfix: Fixed an issue so that Property Editor Inline Class Filter now shows unloaded Blueprint Classes properly in the Editor.
+
+* Bugfix: Fixed an issue with Undo/Redo transactions of Color Grading.
+
+* Iterative cooking .ini setting checking improvements have been made. More to come in a future release.
+
+* Dependency checking performance improvements for iterative cook. More to come in a future release.
+
+* Panning in orbit mode now takes in account camera speed setting.
+
+* Pivot Painter 2 is a general purpose vertex animation toolset that comes with specialized subset of material functions to automate foliage animation. The script and material function set are more flexible, easier to use and provide an improved workflow over the first release. Additionally, a content example map ships with the editor to demonstrate how Pivot Painter's output can be referenced in the editor.
+
+* Added a disclaimer popup for the first time a user enters VR Mode
+
+* All asset properties in Details panels now have thumbnails on by default.
+
+* Disabled editor sounds that play when you PIE, simulate or possess the player by default. There is now a setting in the editor preferences to control this.
+
+* The output log should now have the same text color as other panels in the editor.
+
+* Removed hard coded list of thumbnails, preventing objects with valid thumbnails from showing up. Thumbnails are now shown by default. Use meta=(DisplayThumbnail=false) on a property to hide thumbnails.
+
+* Import data and thumbnail data are now transactional. You can now undo and redo their edits.
+
+* Reread in the target RHIs array every time the list of shader types is needed, instead of caching, because the user could change the settings in the editor, then click cook.
+
+* The Paint Fill tool has changed the way it works in Texture Weight Painting mode, it now fills the mesh with the currently selected texture weight index.
+
+* Limited the ability of setting up the Hierarchical Level of Detail (HLOD) system in levels which are contained as streaming levels in other assets.
+
+* The FBX importer now builds the Static Mesh only once when there is many LODs.
+
+* The section Material slot assignment is now correctly restored on reimport.
+
+* When swapping the Static Mesh referenced by a Static Mesh component, we now just clean up the Material Override that exceed the Static Mesh Material array size, instead of clearing all overrides.
+
+* When using the Full Scene Importer the "Scene Import" data asset can now specify a different source file for reimport.
+
+* Data pin style preferences are now saved on Editor shutdown.
+
+* The "Fixup Redirects" commandlet now ensures that files that are marked for delete are correctly submitted to source control.
+
+* The "Resave Packages" commandlet will now submit files that are marked for delete.
+
+* Blocking volumes will actually be added to the level when placed via the "Place Actor" command instead of generating warnings.
+
+* Values that are directly entered for float properties with a specified Delta value will no longer snap to the nearest delta when losing focus.
+
+* Actor components can now be scaled to negative values using the transform gizmo.
+
+* Map properties now fully support customized property types used as keys.
+
+* When deleting an Actor, we now display the name of the referencers.
+
+* Using the Convert Actor feature now won't change the Actor level.
+
+* Primitive Statistics window will now properly update itself when adding new Levels.
+
+* Optimized the lightmap UVs generation to speed up the Static Meshes import flow when packing the UVs into higher resolutions.
+
+##### Content Browser
+
+* New: Added "Resave All" functionality to Content Browser folders.
+
+* New: Added a way to view/copy a list of references (including those that aren't loaded) to the Reference Viewer.
+
+* New: Importing CSV files will now show the name of the CSV file in the import dialog.
+
+* New: Added the ability to auto resize column in "Column View" by double clicking column splitters
+
+* Bugfix: Fixed an issue where folders wouldn't be removed from the Content Browser when deleting them.
+
+* Bugfix: Fixed an issue with the Reference Viewer where it only ever used the default thumbnail.
+
+* Bugfix: Fixed some issues for gathering cached asset dependency data.
+
+ * We no longer load dependency data that doesn't have the correct package name.
+
+ * We no longer populate the dependency results when "Gather Depends on Data" is set to false.
+
+* Bugfix: Fixed an issue that prevented textures from updating correctly if a source texture with the same name as a texture asset is imported from a location that differs from the asset's original source image.
+
+* Bugfix: Fixed an issue where the Force Feedback "Play" and “Stop†icons weren't rendered correctly and would only be displayed when hovering over the asset or when the asset is currently playing.
+
+* Bugfix: The Content Browser file path will now update correctly if it is pointing to a path that is deleted through the Sources Panel.
+
+* Bugfix: Duplicating an asset will correctly name it if there is another one of the same name.
+
+* Moving a newly-created asset before saving it will no longer save an empty package in the asset's original location.
+
+* When reimporting multiple assets, the "Yes to All" and "No to All" dialog options will prevent future reimport dialogs from appearing for the same asset type in the same operation.
+
+* Improve visual of "Column View" in Content Browser.
+
+##### Cooker
+
+* Bugfix: Fixed an issue with the rebuild lighting commandlet not checking out files correctly.
+
+* Bugfix: Fixed an issue where running the same DLC profile created by the Mobile Patching Wizard would increase HTTP chunk size.
+
+* Bugfix: Fixed an issue with the cooker always cooking "All Maps" even when a single map was specified on commandline.
+
+##### Foliage
+
+* New: Added the Show Flag "Foliage Occlusion Bounds" in the Advanced menu to see the bounds generated by the occlusion tree.
+
+* New: When moving a foliage asset to a new Level, you will now be prompted to save the Foliage Type as an asset if it's a local asset.
+
+* New: Improved the Foliage painting algorithm to properly support Random Pitch/Yaw when the setting "Collision with World" is enabled.
+
+* Bugfix: Fixed a crash that occurred when moving the mouse over certain content while in Foliage mode.
+
+* Bugfix: Fixed an issue that cause foliage thumbnails to incorrectly be duplicated if many of them are onscreen at once.
+
+* Bugfix: Fixed an issue where removing a Foliage Type wouldn't properly refresh the Details panel.
+
+* Bugfix: Fixed an issue where the foliage location would shift when using undo/redo transactions.
+
+* Optimized the occurrence of rebuilding the occlusion tree when performing actions in the editor.
+
+##### Landscape
+
+* New: We now automatically fill Landscape with the first created Landscape's Layer Info object.
+
+* New: Added sorting to Landscape Target Layer tabs. You can now sort by Material definition (which is the default one), alphabetical, or custom a using drag-and-drop operation.
+
+* New: Added a visibility toggle to only show the used Target Layers by the loaded components.
+
+* Bugfix: Fixed a crash when changing multipole Landscape Blend Layer nodes from Weight blend to Height blend.
+
+* Bugfix: Fixed an issue with user Landscape shortcuts not working in the Level Viewport.
+
+* Bugfix: Fixed an issue when performing an Undo action would delete the newly created Landscape and return back to the new Landscape window.
+
+* Bugfix: Fixed an issue where Landscape holes (visibility mask) was causing NavMesh problems at the borders of the Landscape component.
+
+* We have improved when a Level will be marked as dirty when manipulating a Landscape Spline.
+
+* The Landscape tools Material synchronisation has been updated between game thread and render thread.
+
+* When adding a new Component, if a Landscape info object exists it will determine which one is used based on its neighbors.
+
+##### Material Editor
+
+* Bugfix: Material Custom nodes that contain "tab" characters will now correctly display tab characters after copy/paste.
+
+##### Matinee
+
+* Bugfix: Fixed an issue with how tooltips display when using a Material Function in your Material.
+
+##### PhAT
+
+* Bugfix: Fixed "Multiple Values" being displayed in Body Setup properties when single bone has multiple bodies
+
+##### Sequencer
+
+* New: Added the ability to specify additional Event Receivers for Level Sequence Actors.
+
+* New: Event tracks can now be defined to trigger events at the start of evaluation, after objects are spawned, or at the end of evaluation.
+
+* New: Added the ability to retrieve bound objects from Blueprint.
+
+* New: There have been improvements to the Binding overrides.
+
+ * Added the ability to override spawnable bindings.
+
+ * Added the ability to override bindings in sub Sequences.
+
+ * Deprecated "Get Sequence Bindings" node in favor of "Get Sequence Binding", which is more robust, and provides a better UI/UX for selecting single bindings
+
+ * Added Drag/Drop support for Binding overrides.
+
+* New: Added the ability to specify Event Receivers on Event Tracks.
+
+ * These are defined by right-clicking on the Event Track in the Sequencer tree, and adding Event Receivers.
+
+ * Such objects must be defined within the Sequence hierarchy (as well as parents, children, grandchildren etc).
+
+* New: Added a reworked, more generic property path handling system in the Sequencer object change listener.
+
+* New: Unlocked the Cine Camera Post Process Depth of Field to use options other than CircleDoF.
+
+* New: "Pre Roll" and “Post Roll†are now exposed at the section level for all sections.
+
+* New: Enabled "Use Custom Start Frame" and “Use Custom End Frame†when rendering a single shot from the menu.
+
+* New: You can now set the fade color in the Track display.
+
+* New: Audio row heights are now also resizable by dragging on the bottom end of the track lane in the track area view.
+
+* New: Sequencer now re-evaluates when starting PIE or Simulate. This can be disabled with "Bind Sequencer to PIE" and “Bind Sequencer to Simulate†in the Play-in-Editor Advanced settings.
+
+* New: Split "Snap to the Dragged Key" option into two options, "Snap to the Pressed Key", and "Snap to the Dragged Key".
+
+* New: Added a loop selection range. If there is no selection range, loop mode is restricted to loop or no loop.
+
+* New: Added hotkeys to set the selection range to the next and previous shot (page up, page down). Also, added hotkey to set the playback range to all the shots (end).
+
+* New: You can now set sequencer audio components bIsUISound to false so that they don't continue playing when the game is paused.
+
+* New: Added an option to instance sub sequences when creating a Master Sequence.
+
+* New: Notify streaming system prior to Camera cuts by default. To enable, users will need to enable the Pre Roll section of the Camera cuts for the streaming system to activate prior to cutting to cameras.
+
+* Bugfix: Fixed a crash when selecting keyframes in the viewport.
+
+* Bugfix: Fixed a crash with Sequencer Recorder when clearing properties to record.
+
+* Bugfix: Fixed an issue where tick prerequisites were not being set up for Actors streamed in from a streaming Level.
+
+* Bugfix: Fixed an issue where Sequencer was animating objects from the wrong world.
+
+* Bugfix: Fixed an issue with event parameter structs being able to be garbage collected, resulting in NULL structs potentially being written out.
+
+* Bugfix: Fixed an issue with animation looping in Sequencer.
+
+* Bugfix: Fixed an issue with Sequencer Recorder to fix duplicate components getting recorded.
+
+* Bugfix: Fixed an issue with FBX import with camera and light animation key imports.
+
+* Bugfix: Fixed an issue with autokey not setting a keyframe for Slate color with the specified color.
+
+* Bugfix: Fixed an issue for filtering to include Child nodes.
+
+* Bugfix: Fixed an issue where the Sub Track node deletion so that all sub tracks aren't deleted, only the row being requested.
+
+* Bugfix: Fixed an issue to invalidate expired objects when Blueprints are compiled. This fixes Actor references to now handle sections that need to have their GUIDs updated (ie. attach tracks).
+
+* Bugfix: Fixed an issue so that when finishing a scrub, playback status is now correctly set to stopped rather than set to a stepping state.
+
+* Bugfix: Fixed a missing command binding alt-r to record selected objects into sequencer.
+
+* Bugfix: Fixed an issue to Filter hidden functions, which fixes a bug where the field of view property for a cinematic camera appears to be animatable,. It should be hidden just like it is in the property editor.
+
+* Added a warning when Sequencer tries to write to properties that have changed type.
+
+* Sequencer templates are now always regenerated on load
+
+* Level Sequence frame snapshots now take account of fixed-frame interval offsets, and overlapping shot sections on the same row.
+
+* We now convert Linear Color to Color for fade to get the correct fade color in viewport.
+
+* Audio waveforms now show peak samples with smoothed RMS in the center.
+
+* Set max tick rate when in game if force fixed interval playback is enabled.
+
+* Cache player fade state so that restore state will return the values to the pre animated state.
+
+##### Source Control
+
+* Bugfix: Fixed an issue with Git plugin to update the status on directories hotfix.
+
+* With the Git plugin, use use asynchronous "MarkForAdd" and "CheckIn" operations for the initial commit.
+
+* Allow binary files in Git stored via git-fat, git-lfs, etc to be diffed.
+
+##### Static Mesh Editor
+
+* Bugfix: The camera position now stays in place after reimporting from inside the Static Mesh Editor.
+
+##### Traps
+
+* Subversion binaries have been updated to 1.9.5. They should no longer crash when used.
+
+##### VR-Editor
+
+* New: Improved functionality for the VR Mode:
+
+ * Improved the look and feel of the rotation gizmo handles while in VR Mode.
+
+ * Improved interaction for painting terrain, foliage, and mesh painting.
+
+ * Improved gizmo handle animations.
+
+* New: VR Mode is now bound with the Editor Sound settings.
+
+* New: VR Mode motion controllers now have collision when in simulate.
+
+* Bugfix: Fixed VR Mode selection now to respect a component's "Is Selectable" state.
+
+* Bugfix: Fixed an issue with not being able to open a project in the Project Browser with VR Mode auto-entry enabled and the HMD active.
+
+##### Windows
+
+* New: Custom Depth can now be enabled for Landscapes
+
+* Bugfix: Fixed an issue with Landscape spline segment splitting when using streaming levels.
+
+* Bugfix: Fixed an issue with Landscape painting in orthographic viewports when the painted area's Z value was below 0.
+
+##### World Browser
+
+* Bugfix: Fixed an issue when moving a sublevel in World Composition browser does not appear in Undo History.
+
+##### World Outliner
+
+* New: Actors in the World Outliner will now bring their children with them when moved into a newly created folder.
+
+#### Gameplay Framework
+
+* New: Added an option for components to opt out of physics impulses on damage using "Apply Impulse On Damage".
+
+* New: Exposed component's "Ignore Radial Impulse" and “Ignore Radial Force†flags to Blueprints. “Ignore Radial Impulse†is now properly respected when applying impulse to relevant movement components.
+
+* New: The Player Controller's "Should Perform Full Ticket When Paused" can now be set from Blueprints and the Details panel.
+
+* New: Spawn Sound and Force Feedback Blueprint nodes now have a "Auto Destroy" pin that can be set to false to allow the component to be reused after the sound/pattern complete.
+
+* New: The number of buttons that can be used by Raw Input is now 20.
+
+* New: Fields of Attribute MetaData are now editable.
+
+* New: In the Ability System, the "Cancel Ability" has been exposed to Blueprints.
+
+* New: For Cameras, support has been added for specifying a default aspect ratio and whether or not to constrain to it in a Camera Manager subclass.
+
+ * Normally the information would come from a Camera component, but this is useful when using custom view logic that doesn't source from a Camera component as the view target.
+
+* New: Added "​On Component Collision Settings Changed Event" delegate to Primitive Component. Fixed Skeletal Mesh Component not calling Super implementation for “On Component Collision Settings Changedâ€.
+
+* New: Refactored Character Movement Component determination of net send rate when combining moves into a virtual function Get Client Net Send Delta Time. Added configurable values to Game Network Manager under ​[/Script/Engine.GameNetworkManager] in BaseGame.ini: "ClientNetSendMoveDeltaTime", “ClientNetSendMoveDeltaTimeâ€, “ClientNetSendMoveThrottleAtNetSpeedâ€, “ClientNetSendMoveThrottleOverPlayerCountâ€.
+
+ * This replaces the values that were hardcoded in the network code for characters and enables easier configuration of client send rates for movement.
+
+* New: We've increased Pawn location replication precision to 2 decimal places from 0. Prevents replicated pawns from being inside geometry by a large amount. Removed CVars controlling CharacterMovement proxy shrink amount and made those instanced properties on the component.
+
+* New: Added a flag to Character Movement Component to determine whether or not character should Sweep while using "NavWalking", instead of relying on Generate Overlaps flag.
+
+* New: Added "Apply Gravity While Jumping" flag to Character Movement Component. This helps to reduce Framerate Dependent Jump Height issues when disabled, but raises jump height. This is disabled by default.
+
+* Bugfix: Fixed a crash due to null World Settings when rendering a thumbnail.
+
+* Bugfix: Fixed a crash when opening Blueprint after adding a component to native class referenced by a Child Actor Component.
+
+* Bugfix: Fixed several issues with renaming or deleting Gameplay Tags from the Gameplay Tag Project Settings page.
+
+* Bugfix: Fixed an issue when calling "Set Visibility" or “Set Hidden In Game†all children of the component will now properly be reconsidered as to whether they should render.
+
+* Bugfix: After duplicating an Actor, components added to the source instance will now have the correct position in the duplicate.
+
+* Bugfix: Ability actions can now be properly bound to input components.
+
+* Bugfix: Construction scripts will no longer be incorrectly rerun on Actors in a level that was hidden and then later made visible again.
+
+* Bugfix: Fixed an issue warning about invalid world content when loading maps with child Actor components in it.
+
+* Bugfix: Fixed cases where built lighting on child actors could be lost when loading a level.
+
+* Bugfix: Fixed case where child actor template was not cleared when setting child actor class to null.
+
+* Bugfix: Fixed issues with seamless travel in PIE and sub-levels shared between different Persistent Levels.
+
+* Bugfix: Fixed issues where Child Actor Component's "Parent Component" would be null on the client.
+
+* Bugfix: Fixed accumulated forces in Character Movement applied incorrectly when movement mode or active state changes.
+
+ * Added ​"Clear Accumulated Forcesâ€
+
+ * "Add Force" and related functions now avoid adding the force if in Movement Mode is set to "None". When ticking in "None", forces are cleared so they don't pile up until the next valid movement mode. Forces are also cleared if the updated component changes or when the capsule simulates physics.
+
+ * "Deactivate" implemented to stop movement and call “Clear Accumulated Forcesâ€.
+
+ * "Clear Accumulated Forces" now also clears pending launch velocity. Exposed “Clear Accumulated Forces†to Blueprints.
+
+ * "Apply Accumulated Forces" does not call â€Clear Accumulated Forcesâ€, since that would prevent pending launch.
+
+ * "Add Force" and “Add Impulse†now also check that character movement is active (not deactivated, able to tick).
+
+ * "Simulate Movement" handles pending launch and clears forces regardless of whether it's simulated proxy.
+
+ * Inlined Actor Component "Is Active" for performance.
+
+* Bugfix: Fixed characters sliding when landing on slanted surfaces or stairs, when aggressive "Perch" settings could cause a line trace (from the center of a capsule) instead of capsule trace and thereby screw up the floor distance checks.
+
+* Bugfix: Fixed the case of people moving a Character mesh in Begin Play rather than in the Editor or Construction Script and not having the mesh offset reflected correctly in network games.
+
+ * Added function "Cache Initial Mesh Offset" to cache initial mesh offset, used as the target for network smoothing. This takes location and rotation params so you can be explicit on the values, in case you try to change these during network smoothing, where reading the relative offsets would be skewed.
+
+ * Added a call to this function from Begin Play in addition to the existing call from "Post Initialize Components", and exposed this to Blueprints as well for custom changes to mesh offset at runtime.
+
+* Bugfix: Fixed an issue with Projectile Movement Component continuing to simulate (and generate hit events) after it is deactivated during simulation. "Has Stopped Simulation" function now checks if “Is Active†is false.
+
+* Bugfix: Fixed an issue with "Get Welded Bodies" so that it properly returns Skeletal Bodies, instead of the default body for Skeletal Mesh Components.
+
+* Bugfix: Fixed an issue with infinite jump on client when Jump Max Hold Time is not 0.
+
+* Stop dynamic force feedback when initiating Actor is destroyed.
+
+* Clarified the tooltip on the "Inverse Lerp" function.
+
+* In the Movement Component "Deactivate" calls “Stop Movement†to clear cached velocity.
+
+ * It was undesirable that reactivation many seconds or frames later would restore a stale velocity.
+
+* The "Collision.ListComponentWithResponseToProfile" command now includes pending kill objects. Use this to inspect collision responses between objects in a game world.
+
+* Optimized the Math Library "Get Forward Vector" (converts Rotator to forward direction). This way we avoid building a matrix, and avoids 1 more SinCos call.
+
+#### Learning Resources
+
+##### Sample Content
+
+* New: ShooterGame now supports dedicated servers on PC, Mac, and Linux!
+
+#### Localization
+
+* New: Improvements to culture switching and LocRes files.
+
+ * LocRes files now de-duplicate translations when they're generated, which can result in smaller LocRes files.
+
+ * The localization compilation step now produces a LocMeta file, which contains meta-data specifying the native culture during compile, and where the native LocRes file can be found.
+
+ * Changing cultures now loads the native localization data prior to loading the non-native translations to ensure that translations are always applied to a consistent base.
+
+ * The "leet" culture (available when localization testing is enabled) is now always applied against the native translation, and correctly restores non-translated text when switching away from the "leet" culture.
+
+ * "-culture=leet" now works correctly on the command line ("-leet" also works).
+
+ * LoadLocalizationResourcesForCulture is no longer called multiple times during initialization of the text localization manager.
+
+* New: Updated Fast Decimal Format to support the correct 0-9 numerals for the current locale
+
+ * These are typically still Latin, but Middle Eastern languages have some variants.
+
+ * This addresses an inconsistency between FText formatting of numbers and dates (since numbers always used Latin, but dates used the culture correct numerals).
+
+* New: Split the monolithic culture concept in UE4
+
+ * UE4 has historically only supported the concept of a single monolithic "culture" that applied to both text localization and internationalization, as well as all asset localization. Typically the "culture" was set to the "locale" of the OS, however that could be undesirable or incorrect on platforms (such as newer versions of Windows) that have a distinct concept of "language" (for localization) and "locale" (for internationalization).
+
+ * This change splits the concept of "culture" into "language" and "locale", and also adds the concept of "asset groups". The language is now used to work out which localization we should use, and the locale is used to control how numbers/dates/times/etc are formatted within our internationalization library.
+
+ * Asset groups expand on the language used by asset localization and allow you to create a group of asset classes that can be assigned a different culture than the main game language. A typical use-case of this would be creating an "audio" group that could, for example, be set to Japanese while the rest of the game runs in English.
+
+ * If your game doesn't care about the distinction between language and locale, and doesn't need to use asset groups, then you're able to continue to use "culture" as you always have. If, however, you do care about those things, then you'll likely want to avoid using the "culture" directly (as it's now a very aggressive setting that overrides all others), and instead favor using language/locale (games will typically treat these as the same) and asset groups as separate concepts (both in settings, and in your in-game UI).
+
+ * The language or locale for a game can be controlled by settings within the "Internationalization" section of your configs (this would typically be set in your Game User Settings config, in the same way that "culture" works), eg)
+
+ [Internationalization]
+ language=fr
+ locale=fr
+
+ * The asset groups for a game can be controlled by settings within the "Internationalization.AssetGroupClasses" and "Internationalization.AssetGroupCultures" sections of your configs (the asset group class definition would typically be set in your DefaultGame config, and the cultures the groups use would typically be set in your Game User Settings config), eg)
+
+ [Internationalization.AssetGroupClasses]
+ +Audio=SoundWave
+ +Audio=DialogueWave
+ [Internationalization.AssetGroupCultures]
+ +Audio=ja
+
+* Bugfix: Fixed an assert that could trigger when an IME composition is aborted during widget destruction.
+
+* Bugfix: Fixed a crash that could happen if a config was loaded while the Gather Text commandlet was running.
+
+* Bugfix: Fixed text namespaces being treated as case-insensitive when exported to JSON manifests and archives.
+
+* Bugfix: Fixed text format history being clobbered by reference collection.
+
+* Bugfix: Fixed the pluralization of the decorator text during drag-and-drop operations.
+
+* Vastly reduced the number of allocations that happen when rebuilding text at runtime.
+
+#### Networking
+
+* New: Network dormancy efficiency has been improved greatly (if you have large number of dormant actors, they now will have less overhead).
+
+* New: Network consider/relevancy code is now also much more efficient. Overall, expect a 20+% improvement in performance if you have lots of Actors in the network Actor list.
+
+* New: Adaptive network update frequency logic is now on by default. This should improve network performance for games that weren't opt'ing in to this feature.
+
+ * Net.UseAdaptiveNetUpdateFrequency is now 1 by default.
+
+* New: Replays now support network relevancy.
+
+ * All connections are considered when determining if an Actor is relevant.
+
+ * Enable by setting demo.UseNetRelevancy to 1.
+
+ * Override cull distance with demo.CullDistanceOverride.
+
+* New: Added more info about the connection to logs when you see "FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump" message.
+
+* New: Updated OnlineSubSystemNull to properly account for game state and "Allow Join In Progress".
+
+* Bugfix: Fixed a crash that could occur when updating unmapped objects.
+
+* Bugfix: Fixed an issue with IPAddressBSD validation when setting IP from string.
+
+* Bugfix: Fixed a memory leak in network drivers.
+
+* Bugfix: Fixed an issue with syncing of non-contiguious UENUMs over networks.
+
+* AActor "Pending Net Update" has been deprecated. Please use “Pending Net Update†that is now on FNetworkObjectInfo (obtained by calling “Get Network Object Info).
+
+* UNetDriver "Get Network Actor" is now deprecated. Use UNetDriver “Get Network Object Info†instead.
+
+* Disabled net.PartialBunchReliableThreshold for replays (we don't need to worry about bunch fragment sizes since there is no packet loss for replay connections).
+
+#### Online
+
+* New: Steamworks integration has been updated to support version 1.39, including updated steam controller support!
+
+* New: Web Browser module no longer directly depends on Online Subsystem plugins.
+
+ * It uses the Online Engine Interface shim to explicitly depend on the engine and will use Online Subsystem features when that module is optionally added.
+
+* New: Added a new overload for Online Session "Find Friend Session" in the session interface that can retrieve sessions for multiple friends.
+
+* New: Sending and accepting invites on dedicated servers on Steam is now supported.
+
+* New: Updated OpenSSL libraries to use BCrypt on Windows in order to reduce memory allocations.
+
+#### Other
+
+* New: Added a "Buffering" media player event.
+
+* New: The Plugin Browser now supports customizations to allow for context-specific plugin creation.
+
+* Bugfix: Fixed a crash with Media Assets in "Tick Video" after media player is garbage collected.
+
+* Bugfix: Fixed an issue to prevent the default cooked sandbox from trying to read non-cooked assets.
+
+* Bugfix: Fixed a message router thread not being woken up right away on shutdown.Crashreporter uploads/downloads crash data from AWS
+
+* Search button is disabled after clicking it once to prevent accidental double-clicks.
+
+* Reading the config hierarchy for TVOS now matches IOS to get the correct bundle id when packaging a project
+
+#### Paper2D
+
+* Bugfix: Custom tile maps using collision can now be created at runtime on any platform without crashing. However on iOS/Android/HTML5 only the boxes and spheres used in the per-tile collision shapes have effect; arbitrary convex collision (e.g., slopes or other triangle-based collision) will not cause collisions or overlaps until support for PhysX runtime cooking is added to these platforms.
+
+* Bugfix: The Paper2D flipbook editor now shows the current frame correctly when the animation timeline is longer than the editor window and the scroll bar is moved to the right.
+
+* Bugfix: Paper2D flipbook editor now shows the correct number of frames; previously, it was one frame short.
+
+#### Physics
+
+* New: Added sprite to Physics Thruster Component (previously this was only available on Physics Thruster Actor).
+
+* New: Exposed "Set All Physics Angular Velocity" to Blueprints.
+
+* New: Added finer-grain PhysX stat information that is available by using "stat physxtasks".
+
+* New: Added the ability to specify whether a ragdoll is in the sync or async scene with "Use Async Scene".
+
+* New: Changed default contact-gen method to PCM. This is the default in PhysX 3.4.
+
+* New: Added "Is In Air" method to Vehicle Wheel.
+
+* New: For the Wheeled Vehicle Movement Component, the Mass dependent wheel properties now update when mass is updated.
+
+* New: Created "Add Force At Location Local" function to allow component space forces.
+
+* New: Added a new Physics settings "Enable Stabilization". Stabilization can help stacks of simulated bodies to come to rest.
+
+* Bugfix: Fixed a crash in anim dynamics when a world was not valid during pre-update.
+
+* Bugfix: Fixed a crash when saving sub-levels that don't currently have a correctly initialized scene.
+
+* Bugfix: Fixed an issue with incorrect slider for "initial Average Frame Rate" physics setting.
+
+* Bugfix: Fixed an issue with physics constraint warning messages in Message Log. These now list Component/Actor name correctly.
+
+* Bugfix: Fixed an issue with editing Box and Capsule collision primitive rotations by storing rotation as a Rotator rather than Quaternion.
+
+* Bugfix: Editing collision profiles in Editor Preferences no longer discards edits.
+
+* Bugfix: "Find Closest Bone" function no longer ignores the “Required Physics Asset†option.
+
+* Bugfix: Fixed an issue teleport not working for physical animation component.
+
+* Bugfix: Fixed an issue incorrect inertia tensor computation for cubes, which was being doubled.
+
+* Bugfix: Fixed an issue with kinematic body interpolation in substepping causing invalid raycasting, sweeping, or overlapping.
+
+* Bugfix: Physics Constraint component now works as expected when its target is a Child Actor component.
+
+* Bugfix: Fixed an issue with collisions between components with CCD enabled having unreliable behavior.
+
+* Bugfix: Fixed an edge case where generating collision data could cause the engine to hang in an infinite loop.
+
+* Bugfix: Fixed a regression with Raycasts against Capsules returning invalid hits.
+
+* Bugfix: Instanced Static Mesh now properly creates physics state when set to Stationary.
+
+* Bugfix: Fixed a memory leak caused by keeping PhysX shapes in memory after they are no longer being used.
+
+* Expanded self-collision culling for clothing by providing a scale to tweak the culling queries. This makes a tradeoff between performance and accuracy.
+
+* Added a guard against infinitely thin geometry, which fixes some NANs.
+
+* Performance improvements to Anim node "Rigid Body".
+
+* Physics performance is improved by skipping the update of kinematic bodies when they haven't moved.
+
+#### Platforms
+
+* New: Add logging for the NUI GPU reserve so we can see when it's enabled and disabled.
+
+* New: Exposed JAVA_HOME setting in Android SDK Project Settings on Mac.
+
+* New: Added "Platform Handle Splash Screen" to deal with hiding splash screen properly on Startup Movies.
+
+* New: Implemented support for new controllers (Xbox Wireless, SteelSeries Stratus XL, PS4).
+
+ * Note: there are two implementations for Xbox Wireless due to differences in firmware. Firmware before 3.1.1221.0 does not use standard mapping which you can enable by setting the Android.OldXBoxWirelessFirmware CVar to 1 (defaults to new firmware).
+
+* New: Added support for "r.ScreenPercentage" on mobile allowing the game scene to be rendered at lower resolution than the UI. Requires MobileHDR to be enabled.
+
+* New: On-screen warnings now appear when a mobile shader permutation required to correctly render the current scene's lighting setup has been disabled in Project Settings.
+
+* New: Made some big DeviceProfile changes, particularly for the protected platforms.
+
+ * Changed the "type" of some DPs from WindowsNoEditor, etc to Windows. It should be a platform, not a random string.
+
+ * With that change, the platform can be used to save out protected platform DP .ini files to subdirectories, maintaining secrecy
+
+ * Added Config/[PlatformName]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs. See FGenericPlatformMisc::GetConfidentialPlatforms() for more information.
+
+* New: When uploading a HTML5 project to AWS S3, it now supports "signature version 4" authentication and better error message feedback on upload failures.
+
+* New: Added "use fixed timestep" setting option for HTML5 builds (This has been separated from Engine > General Settings - Framerate).
+
+ * This is slightly different to "Smooth Framerate" and “Fixed Framerateâ€.
+
+ * NOTE: Fixing the timestep does not guarantee the actual framerate. Calculations based on delta time may be adversely affected by this.
+
+* New: Added iOS/Android support for new Audio Mixer.
+
+* New: "Does Save Game Exist" will now show a message if the save data is corrupt.
+
+* New: Initial support for voice chat in the Android platform. To use enable the Voice module in DefaultEngine.ini, in the level bp create a session, and in project settings > Platforms > Android > Advanced APKPackaging, check the setting 'Add permissions to support Voice chat (RECORD_AUDIO)'. After this create a multiplayer game between two android devices. For more information check pull request #2894.
+
+* Bugfix: Fixed a crash with mobile feature level preview when the Low Quality Lightmap shader permutation is disabled.
+
+* Bugfix: Fixed a crash in clothing on platforms that don't support clothing.
+
+* Bugfix: Fixed a crash when backgrounding or sleeping on iOS Metal devices.
+
+* Bugfix: Fixed a crash with UIImagePickerController.
+
+* Bugfix: Fixed an issue with executable path for stripping Android debug symbols (handle non-Windows properly).
+
+* Bugfix: Fixed memory reporting for Uniform Buffers in "stat rhi".
+
+* Bugfix: Fixed a slow memory leak in FD3D12UniqueDescriptorTable.
+
+* Bugfix: Fixed rendering of batched Slate primitives in D3D11.x.
+
+* Bugfix: Fixed an issue with S3 public link generator for "Shipping" builds filename.
+
+* Bugfix: Fixed an issue with iOS IDFV string allocation.
+
+* Bugfix: Fixed UPL processing on iOS plist files.
+
+* Bugfix: Fixed network byte ordering for iOS multiplayer sessions.
+
+* Disabled the game analytics anonymous usage data sent to Epic on the console platforms.
+
+* Save 66MB of memory by disabling the unused default SHAPE heap in XAudio2.
+
+* Stop the audio thread from using the 7th CPU core as it can be pre-empted and not get enough execution time.
+
+* Add -distribution when iOS distribution Packaging. with IPhonePackager.exe.
+
+* Changed mouse cursor to be always visible when running in Mobile Preview.
+
+* Refactored memory allocation functions (BinnedAllocFromOS) on all platforms. Made Binned2 malloc work on Linux.
+
+##### All Mobile
+
+* Bugfix: Fixed a crash in mobile patching utilities mount method.
+
+* Bugfix: Fixed an issue with the shader compile for Landscape on platforms below SM4 feature level.
+
+##### Android
+
+* New: Bad package names are now detected and APK generation is stopped with a proper error message instead of failing during Java compiling.
+
+ * Package names with fewer than 2 segments are not allowed (e.g., "myproject" is not allowed, but “com.myproject†is legal).
+
+ * Only alphanumeric characters and underscore are allowed in the package name (Note: hyphens in the project name will be converted to underscores, but any other hyphens need to be corrected in Android project settings).
+
+ * All segments must start with a letter; if your project name starts with a letter you will need to replace the [PROJECT] part of the package name in Android project settings.
+
+ * Reserved Java keywords may not be used as the full segment; appending an underscore or other legal characters will fix this.
+
+ * Segments may not be empty (e.g. "com..myproject" is not legal).
+
+* New: Larger OBB files embedded in APK are now allowed by bypassing Asset Manager.
+
+* New: We've implemented a first pass of Google Cloud Messaging plugin. This is considered an experimental feature for this release.
+
+* New: Added missing key codes for keyboard input (@ and #).
+
+* New: Added a drop-down with some common console commands on Android to the console dialog.
+
+* New: Patches ant.bat to handle long command line issue on Windows.
+
+ * Copies original ant.bat to ant.orig.bat and writes a new ant.bat which uses subst with an unused drive letter to shorten paths).
+
+ * Note: you can edit the generated ant.bat if you need to change the drive letter used; the editor will not replace it if ant.orig.bat is found.
+
+* New: Editor now checks to make sure that at least SDK Android-23 is selected and installed. There will be an error message if an earlier version is installed.
+
+* New: Updated AAR handling to deal with versioning, subproject dependencies for resources, and scope (ignore test).
+
+* New: Added "Game Activity On New Intent Additions" section to Android Unreal Plugin Language (UPL).
+
+* New: Added support for using native virtual keyboard with Slate widgets instead of the dialog currently used for text input.
+
+ * Events are triggered when the virtual keyboard is shown and hidden.
+
+ * The show event includes the area of the screen that is covered by the virtual keyboard.
+
+ * This feature is exposed in the Android Project Settings as an experimental feature checkbox.
+
+* Bugfix: Fixed a crash that could happen when closing the Android web browser.
+
+* Bugfix: Fixed an issue to handle spaces in ANT_HOME path in generated ant.bat patch.
+
+* Bugfix: Fixed an issue with application hanging on returning from the lockscreen if orientation is Landscape.
+
+* Bugfix: Fixed an issue to correct the log warning about Target SDK and permissions.
+
+* Bugfix: Fixed an issue with Launch On when multiple architectures are enabled in the project.
+
+* Bugfix: Fixed an issue with ad banner location on Android 7.0 devices.
+
+* Bugfix: Fixed some documentation errors in UnrealPluginLanguage.cs.
+
+* Bugfix: Fixed the executable path for stripping Android debug symbols for non-Windows platforms.
+
+* Bugfix: Fixed an issue with password hiding in input dialog.
+
+* Bugfix: Fixed an issue with EGL linking issues for ARM64 libraries.
+
+* Bugfix: Fixed an issue to save and restore texture filtering for movie playback in all cases.
+
+* Bugfix: Fixed an issue with Mac and Linux install and uninstall scripts if ANDROID_HOME is not set.
+
+* Bugfix: Fixed an issue with ShowLoginUI interface change in Game Circle plugin.
+
+* Bugfix: Fixed an issue with HTTPChunkInstaller texture format checks and missing #define warning.
+
+* Bugfix: Corrected AndroidManifest.xml required features for "Daydream and Cardboard" option when GoogleVR plugin enabled.
+
+* Bugfix: Fixed an issue to prevent inserting extra permissions into AndroidManifest.xml multiple times from Project Settings.
+
+* Bugfix: The correct APK file name is now used when launching from editor for Android.
+
+* Bugfix: Fixed issues with experimental keyboard.
+
+ * Ensure the local scope ScreenRect passed into "On Virtual Keyboard Shown" in AndroidJNI is captured by value instead of by reference.
+
+ * Moved ShowVirtualKeyboardInput's "Keyboard Showing" early-out checks into the UI thread task. This enables the keyboard to continue showing when changing focus between multiple Editable Text Box widgets.
+
+* Bugfix: Fixed an issue with locations on non-ARMv7 GoogleVR libraries so that it is properly filtered by active architecture.
+
+* Bugfix: Fixed an issue to properly restore state for Android devices not using separate context for movie playback.
+
+* Bugfix: Removed an obsolete warning with Java 1.5. The java.source and java.target are now set to 1.7.
+
+* Only disable Java console command receiver for Shipping builds.
+
+* Build configuration is passed to UPL for access during packaging as $S(Configuration).
+
+* Reenabled GooglePlay for ARM64 now that it doesn't crash.
+
+* Changed Gear VR installLocation to auto as now required by Oculus.
+
+* Rebuilt ICU libraries for Android with timezones enabled and updated build scripts.
+
+* Android media player now pauses and resumes with application state.
+
+* "Is Packaging For Daydream" only returns true if GoogleVR plugin is enabled.
+
+##### HTML5
+
+* New: Emscripten toolchain has been upgraded to 1.37.9.
+
+ * Web assembly
+
+ * WebGL 2
+
+* New: There has been an update to GameX template.
+
+ * Multiple (parallel) downloads with progress percentage updates.
+
+ * Test for wasm and WebGL 2 capabilities.
+
+* New: Updates to python build scripts.
+
+* New: Configurable .ini settings have been exposed to the editor. These can be found in Project Settings > Engine > HTML5.
+
+* New: Added support for emscripten "-pre-js" and “-post-js†option when building for HTML5.
+
+* New: Added support for WebGL 2 shader to turn on Instance Static Mesh Vertex Factory.
+
+* Bugfix: Fixed an issue with AWS S3 shareable link for shipping builds.
+
+* Bugfix: Fixed some issues with WebGL 2 shaders.
+
+* Bugfix: Fixed an issue with HTML5 plugin when Blueprint projects are promoted to code projects automatically.
+
+* The recommendation from emscripten developers is to use "-separate-asm" option for asm.js builds.
+
+* Added many new UE4 patches to package HTML on Linux.
+
+* Since connections are not closed manually (server side), send a dummy payload with content-length data.
+
+##### Import/Export
+
+* New: Set Java source and target to 1.7 (fixes Java 1.5 obsolete warnings).
+
+* New: Added support for changing the variable "r.MobileContentScaleFactor" at runtime on Android. This is useful for device-specific resolution tweaking.
+
+* Bugfix: Fixed an issue where HTML5 video in a Web Browser widget would only output sound but no video on Android.
+
+* Bugfix: Fixed an issue where the red and blue channels were reversed in screenshots taken on Android in Vulkan mode.
+
+* Disabled eglSwapInterval since it can cause issues with some drivers.
+
+* Changed text for Android Mobile Deferred Renderer setting to indicate that it's only supported on Nvidia K1 and X1 devices.
+
+##### iOS
+
+* New: As we move towards the next version of iOS, we will be moving towards 64-bit support only. We have added messaging in this release to start the process of this migration.
+
+* New: IOS now utilizes the Library/Caches directory to save any data on device. This includes logs and save games. IPhonePackager has been updated to pull the data from this location as well as the Documents directory.
+
+* New: Xcode 8.3 is properly supported in this release.
+
+* Bugfix: Fixed a crash if Text Box widget is closed before text is finished being entered.
+
+* Bugfix: Fixed a crash in the OnlineSubsystem when it is disabled on iOS.
+
+* Bugfix: Fixed an issue with static audio noise on iOS devices.
+
+* Bugfix: Fixed an issue with remote compiling by unconverting the path back to host when reading from the module file name.
+
+* Bugfix: Fixed a memory leak on texture creation with Bulk Data in OpenGLTexture.cpp.
+
+* Bugfix: Fixed an issue with the device profile names for iPad Pro 9.7 and 12.9.
+
+##### Linux
+
+* New: Added pooling of OS allocations on Linux, greatly reducing the need to call mmap/munmap() and avoiding running into vm.max_map_count limit when loading large projects.
+
+* New: Install of MIME types during setup is now supported.
+
+* New: UnrealPak is no longer included in the default make target, the prebuilt binary will be used instead.
+
+* Bugfix: Fixed a crash in ShaderCompileWorker due to misaligned strings.
+
+* Bugfix: Fixed starting Linux programs using FPlatformProcess::CreateProc() from a path with space.
+
+* Bugfix: Fixed various issues with Vulkan RHI on Linux.
+
+* Bugfix: SlateDlg now appropriately compares filter extensions in a case-insensitive way, so both *.fbx and *.FBX work.
+
+* Bugfix: Fixed bogus "unable to make config file writable" message (the operation was actually succeeding).
+
+* Bugfix: Fixed clang 4.0 warnings.
+
+* Bugfix: Fixed inability to rebuild lighting in ResavePackages commandlet on Mac and Linux.
+
+* Bugfix: Fixed some problems when working from directories that have space character in their names.
+
+* Bugfix: Fixed older versions of Linux cross-toolchain (ones using LINUX_ROOT instead of LINUX_MULTIARCH_ROOT) not being detected.
+
+* Bugfix: Fixed a memory leak in callstack symbolication on Linux. This makes memory profiling work again.
+
+* Bugfix: Fixed an issue with Linux editor splash screen image being wrong when no project has been opened.
+
+* Bugfix: Fixed MoveFile to work across file systems.
+
+* Bugfix: Removed redundant RootDir() and EngineDir() on Linux.
+
+##### Mac
+
+* New: Enable Metal Shader Model 5 support on Intel as of 10.12.4 and later.
+
+* New: On Macs that do not support Metal, but erroneously report that they do, show a message box that tells users that the application cannot run instead of crashing on a failed assert.
+
+* New: Removed Mac OpenGL RHI files and disabled building of OpenGL RHI on Mac.
+
+* New: Limited support added for exposing debug events to Apple's Instruments "Points of Interest" tool.
+
+* New: Added RHISetResourceAliasability_RenderThread to FDynamicRHI for RHIs to implement simple render-target aliasing.
+
+* New: Added FApplePlatformObject, a custom block allocator for Objective-C types (with NSZombie support) which is now used in Metal RHI to decrease allocation costs of Objective-C types.
+
+* New: Limited support for Xcode automatic code-signing for iOS/tvOS.
+
+* New: Reimplement RQT_AbsoluteTime for Metal using a similar emulation to OpenGL on Mac so that the scalability system can correctly set the default graphics options. Not all drivers support this and in those cases the scalability settings are determined by an alternative, fixed, code-path.
+
+* Bugfix: Fixed mouse position issues in fullscreen mode on Mac.
+
+* Bugfix: Fixed an issue in Avf Media Player causing looped movies to only play once.
+
+* Worked around Metal's lack of implicit type-casting that was causing incorrect rendering in the Distance Field Ambient Occlusion and Shadows shaders.
+
+* Re-ordered the options in MetalRHI's internal debug options (Console Variable: "rhi.Metal.RuntimeDebugLevel") to make it more efficient.
+
+* Minimisation of render-target changes in some passes, notably Scene Occlusion and DBuffer Decals.
+
+##### Tools
+
+* Bugfix: Fixed a rare crash with the Web Browser widget on iOS.
+
+* Bugfix: Fixed iPhonePackager errors in output log when opening Project Settings on Windows.
+
+* Bugfix: Fixed Get Max Samplers returning an incorrect value for iOS OpenGL, which could have suppressed some warnings for shaders that used more than 8 samplers.
+
+* Removed duplicate gc.MaxObjectsInGame setting in IOSEngine.ini.
+
+##### Windows
+
+* Bugfix: Fixed a problem on Windows where the cursor would get locked to a part of the screen after switching from fullscreen to windowed while the cursor was unlocked.
+
+#### Programming
+
+* New: Added an experimental Android option to enable Shipping builds with hidden symbol visibility by default. (bBuildWithHiddenSymbolVisibility).
+
+ * Add JNI_METHOD for java accessible native functions, without this java will trigger an unsatisfiedlinkerror exception.
+
+ * This can significantly reduce the size of the final .so file.
+
+* New: Added support for map file generation with Android.
+
+* New: Crash reporter is no longer staged by default when packaging from the editor. The default endpoint for crashes was an Epic server, so including it in packaged games by default was not useful.
+
+* New: Script plugins can now specify dependencies which should trigger UnrealHeaderTool to be re-run, by overriding the IScriptGeneratorPluginInterface.GetExternalDependencies() method.
+
+* Bugfix: Fixed a crash where Canvas wouldn't update font engine services if it was never created.
+
+* Bugfix: Fixed an issue with Automation Tool exception when running Perforce commands if multiple brokers are present in the server configuration.
+
+* Android links with -gc-sections to remove unused code/data.
+
+* Program targets can now be excluded from the full solution build roster by setting bBuildInSolutionByDefault to false from their .target.cs file.
+
+#### Rendering
+
+* New: Added support for Window PIX.
+
+* New: Enabled support for NVIDIA Aftermath. On Aftermath enabled executables you can now get a GPU callstack when a GPU crash is detected.
+
+* New: Enabled support for global Distance Field shaders on GL 4.3 and Vulkan SM5.
+
+* New: Added support for Quad overdraw viewmode in the Forward Renderer.
+
+* New: Add support for per-component Skeletal Mesh skin weight overrides.
+
+* New: Added /VIRTUALIZEDIRECTX option to XgConsole for XGE shader compiling to work on remote machines without DX installed.
+
+* New: Added support for Structured-Buffer resource views to Metal RHI.
+
+* New: Added AMD path to experimental D3D11 HDR support.
+
+* New: Exposed the r.DisableDistortion cvar for toggling distortion rendering.
+
+* New: The high level rendering code is now PipelineStateObject aware which will allow us to reduce complexity in the rendering backends of Vulkan, Metal and Dx12 in the future.
+
+* New:Added FShaderCodeLibrary which handles de-duplication of shaders during content cooking and the shader code has moved into a separate library for cooked content runtime loading. This reduces package sizes and load-time overhead.
+
+* New: Added RHIShaderLibrary for platform specific native shader library implementations. This allows each platform to provide its own optimal shader library implementations.
+
+* New: Added Metal (MacOS and iOS) native shader library where shaders are loaded from a single Metal library improving the memory footprint, load time, and runtime compile times.
+
+* New: As part of the cook process for Metal, the archiving process also generate text shaders that can be used when running with optimized Metal shaders. Run with optimized shaders and while debugging with text source.
+
+* New: Added command line option "-noheartbeatthread" to disable heart beat thread.
+
+* New: Full refactor of the GPU Skin Cache to fix multiple issues related to Editor, Persona, per-frame numbering. Memory limit is now set per World in the Project Settings > Rendering section.
+
+* New: ShaderCache now supports running with multithreaded rendering. Command line flag "-norhithread" is no longer required to enable this feature and can now be removed if it was being used solely for this purpose.
+
+* Bugfix: Fixed a crash with D3D12 in "Update Texture 2D".
+
+* Bugfix: Fixed an assertion failure in basepass when trying to draw a mesh with Post Process Material.
+
+* Bugfix: Fixed a crash when the Tile Renderer renders before any other renderer. This could happen in rare cases on Editor bootup.
+
+* Bugfix: Fixed a crash accessing mesh Material arrays with invalid index.
+
+* Bugfix: Fixed a potential crash when rendering to accessible buffer.
+
+* Bugfix: Fixed a possible crash when failing to import cubemaps.
+
+* Bugfix: Fixed a crash for MacOS/Metal when compiling Materials using the Vector Noise node.
+
+* Bugfix: Fixed overflow issues that could occur on mali based devices when rendering DoF with bright objects.
+
+* Bugfix: Various Vulkan fixes:
+
+ * Compiles in Linux.
+
+ * Many cubemap issues squashed.
+
+ * Changed the scratch reflection cubemap clear to SetRenderTargestsAndClear, instead of SetRenderTarget() / Clear().
+
+ * Added compute fences.
+
+* Bugfix: Fixed several sRGB related issues with Retainer Box widget.
+
+* Bugfix: Fixed an issue with prepass/basepass z-fighting, caused by bad vertex welding in depth-only indexbuffer.
+
+* Bugfix: Fixed an issue with velocity rendering when an off axis projection matrix changes from frame to frame.
+
+ * Affects very few people. Cave rendering and stereo glasses but not HMDs.
+
+* Bugfix: Fixed an issue with scene motion blur data is only updated for the main renderer frames. Fixes scene captures and planar reflections breaking object motion blur.
+
+* Bugfix: Fixed an issue with Exponential Height Fog where it renders incorrectly after world origin rebasing.
+
+* Bugfix: Fixed an issue introduced into 4.15 where Static Meshes with auto-generated LODs were no longer sharing lightmaps between LODs.
+
+* Bugfix: Fixed bug converting a Procedural Mesh component to a Static Mesh if it only contains a single triangle.
+
+* Bugfix: Fixed an issue where Scene Capture 2D's show flags would not be applied properly in some circumstances.
+
+* Bugfix: Fixed an issue where the "disable Stationary Skylight" feature would cause improper warnings. Also made it so that a movable Skylight is always used in Persona preview window so all projects can get preview lighting.
+
+* Bugfix: Fixed an issue where High Quality Particle Lights would not move properly if their parent was attached to a socket of an animated skeleton.
+
+* Bugfix: Fixed detection of OpenGL Radeon driver on Mesa.
+
+* Bugfix: Fixed an issue with shot command in Vulkan.
+
+* Bugfix: Fixed an issue with refract() intrinsic handling in hlslcc for GL/Metal/Vulkan.
+
+* Bugfix: Fixed an issue with missing Mobile Material Interface for Landscape "Used Materials" check.
+
+* Bugfix: Fixed rare case where Decals could incorrectly draw a second time in separate translucency pass.
+
+* Bugfix: Fixed a bug with the basic eye adaptation mode that could result in incorrect brightness when using a small viewport. This has no effect on the default histogram version of eye adaptation.
+
+* Bugfix: Fixed an issue with Separate Translucency being affected by Gaussian DoF.
+
+* Bugfix: Fixed an issue with "Streaming Bounds" show flag not working correctly. It now shows the texture streaming bounds for the textures currently selected in the Content Browser.
+
+* Bugfix: Fixed possible stall when canceling texture updates.
+
+* Bugfix: Fixed an issue for tone mapping of bright objects with zero green. Previously, these could have had a one-pixel black outline.
+
+* Bugfix: Fixed an issue with the IES Light Profile importer with LM-63-1986 format.
+
+* Texture flags are now properly routed to RHICreateTexture3D from the render target pool.
+
+* Collection Parameter Nodes no longer rename parameters when duplicated.
+
+* Renamed console variable "r.Streaming.ScaleTexturesByGlobalMyBias" to "r.Streaming.ScaleTexturesByGlobalMipBias".
+
+* Now when using the "freezerendering" command, the foliage culling/occlusion will also be frozen.
+
+* Optimize the computation behind the Screen Position material expression in the pixel shader.
+
+ * Exposes the viewport offset of the view within the render target in the View Property material expression.
+
+##### FX
+
+* Bugfix: Fixed an issue with rendering corruption issue with 4 and 8 vertex instanced particles using the wrong Vertex Factory objects.
+
+ * D3D didn't need separate Vertex Factories due to the VertexDecl updating the stride at draw call time, but some platforms were affected.
+
+##### Lighting
+
+* New: Improved quality and significantly faster cubemap prefiltering for reflections and skylight.
+
+* New: Post Process Indirect Lighting Intensity no longer scales Skylight reflections.
+
+* New: Screen Space Reflections (SSR) now has a higher quality setting for sharp SSR when using Quality Level 4.
+
+* New: Distance field self shadowing controls for hiding world position offset self-shadow artifacts.
+
+ * Removed Static Mesh Build Settings "Distance Field Bias", which shrunk the distance field, breaking AO and shadows.
+
+* New: Distance field mesh visualization now uses a cone containing the entire tile to cull objects with, making the results stable.
+
+* New: Distance field temporal filter stores a confidence value, which is used to track leaking of occlusion during the upsample, and flush those leaked values through the history faster. Reduces DFAO ghosting when the camera is moving.
+
+* New: Added some new features to the Skylight component.
+
+ * "Occlusion Exponent" which is useful for brightening up indoors without losing contact shadows as “Min Occlusion†does.
+
+ * "Occlusion Combine Mode" which is useful for artists to choose how to combine SSAO with Distance Field Ambient Occlusion.
+
+* New: Added "r.AOListMeshDistanceFields" which dumps out mesh distance fields sorted by memory size, useful for directing content optimizations.
+
+* New: Planar reflections handle views smaller than the render target in a general way.
+
+ * Fixes planar reflections with adaptive pixel density (ViewFamily size larger than actual views combined).
+
+ * Planar reflections are now supported in splitscreen.
+
+* New: Support for fading of Light Propagation Volume cells towards the volume edges.
+
+* Fresnel of clear coat layer now darkens diffuse for the clear coat shading model.
+
+* SSR is now reprojected correctly on moving objects.
+
+* Raised High ShadowQuality to 2048 as 1024 for CSM is too low.
+
+* Disabled all distance field features on Intel cards because the HD 4000 hangs in the RHICreateTexture3D call to allocate the large atlas.
+
+##### Materials
+
+* New: Added a "Sign" material graph node which replaces the library function for more optimal translation.
+
+* New: Added MinimalAPI to several material expressions.
+
+* New: Updated default behavior of "Power" node to no longer “abs†or “max†against an arbitrary value as the results were incorrect.
+
+ * Previous version available by calling ClampedPow(x, y) in a "Custom" node.
+
+* New: Improved material translation preservation of constants.
+
+ * This improves detection of used attributes which prevents some cases of features being enabled incorrectly.
+
+* New: Material flag normal curvature to roughness now works in the Deferred Renderer. It is no longer forward only.
+
+* New: Improved Material graph error messages.
+
+* New: Enabled "r.Streaming.UsePerTextureBias" by default as a way to improve quality in low texture budget settings.
+
+* Bugfix: Fixed errors across various library Material Functions.
+
+* Bugfix: Fixed an issue with broken size query for render targets in Material graphs.
+
+ * Implemented missing "Get Size" functionality.
+
+* Bugfix: Fixed various data type inconsistencies on legacy Make and Break Material Attributes graph nodes.
+
+ * Using these together with the "Get" and “Set†Materia lAttributes nodes should now be more forgiving.
+
+* Bugfix: Fixed a regression in HLOD shadow casting performance.
+
+* Bugfix: Fixed inconsistent results with the "Investigate Texture" commands.
+
+* Bugfix: Fixed possible incorrect results when listing textures used by Material Instances.
+
+* Bugfix: Fixed an issue where Material Reroute nodes did not bind properly to Texture Object Parameters.
+
+##### Mobile Rendering
+
+* New: Mobile Skylights no longer render the scene on the device to determine the sky's color. Mobile skylight uses values determined via captures performed in the editor. This saves memory and performance on device and enables Skylight contribution on devices that do not support fp16 render targets.
+
+* New: Added "r.Mobile.TonemapperFilm" console variable which can be used to enable/disable new filmic tonemapper on Mobile devices, independently from Desktop platforms (disabled by default).
+
+* New: Material AO is now supported for the Mobile Rendering path.
+
+* New: Added better defaults for rendering resolution on iOS devices, to make them more inline with defaults on Android devices.
+
+* Bugfix: Fixed a crash that could occur on some devices when loading materials which use fonts as texture parameters.
+
+* Bugfix: Fixed a crash with Particle Cutouts on mobile devices that don't support hardware instancing (ie. Mali-400 GPU).
+
+* Bugfix: Fixed a crash when enabling shader cache on NVIDIA Shield devices.
+
+* Bugfix: Fixed a crash when previewing feature level ES3.1 with a Material using World Position Offset.
+
+* Bugfix: Fixed a crash with Media Player on iOS devices.
+
+* Bugfix: Fixed an issue with Static Mesh self-shadowing with modulated shadows.
+
+* Bugfix: Fixed several issues that could cause CSM shadowing on mobile devices to flicker.
+
+* Bugfix: Fixed an issue with scene captures on mobile when Mobile HDR is disabled and the scene capture source is Scene Color.
+
+* Bugfix: Fixed an issue with bright dynamic point lights cause bloom rendering artifacts on Android Mali devices.
+
+* Bugfix: Fixed an issue where Landscapes do not render on some Android PowerVR devices.
+
+* Bugfix: Fixed an issue where translucent object appear black on Zenfone5.
+
+* Bugfix: Fixed an redundant blend state change in OpenGL ES2.
+
+* Bugfix: Fixed rendering artifacts with bloom on iPhone7 using Metal.
+
+* Bugfix: Fixed an issue where exposure was more extreme on mobile devices with a new filmic tonemapper enabled.
+
+* Bugfix: Fixed an issue with padded NPOT textures not rendering correctly on iOS.
+
+* Bugfix: Fixed an issue with gamma issues with canvas elements on iOS Metal devices.
+
+* Significantly reduced OpenGL state setup for Slate draw calls on Mobile devices.
+
+* Slate pixel shaders will use half precision, for better UI performance on Mobile devices.
+
+* Mobile targeted projects will have better UI performance settings by default.
+
+##### Optimizations
+
+* New: Added 'r.CompressMeshDistanceFields' console command to rendering project settings, defaults to off to prevent hitches when streaming in levels.
+
+ * When enabled, mesh distance fields are stored zlib compressed in memory until needed for uploading to GPU.
+
+ * 81Mb of backing memory -> 32Mb in GPU Perf Test.
+
+ * Atlas upload time 29ms -> 893ms.
+
+* New: Added a new global distance field (4x 128^3 clipmaps) which caches mostly static primitives (Mobility set to Static or Stationary).
+
+ * The full global distance field inherits from the mostly static cache, so when a Movable primitive is modified, only other movable primitives in the vicinity need to be re-composited into the global distance field.
+
+ * Global distance field update cost with one large rotating object went from 2.5ms -> 0.2ms on 970GTX. Worst case full volume update is mostly the same.
+
+* New: Added LOD Distance Factor to Scene Capture Component, which can be used to make scene captures and planar reflections much cheaper to render if the scene has good LODs setup.
+
+* New: Added the r.LightMaxDrawDistanceScale console command for local light scalability.
+
+* New: Added a rendering project setting to use 8 bit mesh distance fields.
+
+ * This halves their memory requirement but introduces artifacts with large meshes.
+
+* New: Added new async tasks to reduce the cost of the texture streaming update on the game thread.
+
+* New: Added some automatic callbacks whenever dynamic component renderstates are updated in order to also update their texture streaming states.
+
+* Bugfix: Fixed async SSAO not actually running asynchronously when depth drawing mode was DDM_AllOpaque.
+
+* Bugfix: Fixed render queries stalling in Test/Shipping builds due to lack of pooling.
+
+* Ray Traced Distance Field Shadow optimized.
+
+ * From 1.8ms -> 0.8ms in a test scene.
+
+* Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough. This saves 10mb of tile culling buffers.
+
+* GNM RHI Clear UAV uses a compute shader for buffers larger than 1Kb.
+
+* GNM Structured buffers are now placed in GPU memory (was previously in CPU memory).
+
+* DFAO optimizations:
+
+ * Changed the culling algorithm to produce a list of intersecting screen tiles for each object, instead of the other way around. Each tile / object intersection gets its own cone tracing thread group so wavefronts are much smaller and scheduled better.
+
+ * From 3.63ms -> 3.48ms (0.15ms saved).
+
+ * Replaced slow instructions in inner loop with fast approximations (exp2 -> sqr + 1, rcpFast, lengthFast).
+
+ * From 3.25ms -> 3.09ms (0.16ms saved).
+
+ * Moved transform from world to local space out of the inner loop (sample position constructed from local space position + direction).
+
+ * From 3.09ms -> 3.04ms (0.05ms saved).
+
+* Structured buffers for DF object data.
+
+ * Full global distance field clipmap composite 3.0ms -> 2.0ms due to scalarized loads.
+
+* Exposed MaxObjectsPerTile with the 'r.AOMaxObjectsPerCullTile' console command and lowered the default from 512 to 256. This saves 17Mb of object tile culling data structures.
+
+ * This can cause flickering in Ray Traced Distance Field shadows if too many objects fall into one shadowmap culling tile.
+
+* Scene color resolves are restricted to the views. This fixes inefficiency with adaptive pixel density where the views don't match the view family size.
+
+* When using a full prepass, the base pass no longer writes depth.
+
+ * Saves 0.3ms of Scene Depth Resolve on 970 GTX with MSAA. Also allows masked materials to get EarlyZ in the base pass.
+
+ * Fixed primitives with Use As Occluder set to false being excluded from a full depth pass in static draw lists.
+
+ * Added the "r.BasePassWriteDepthEvenWithFullPrepass" console command for verifying that the base pass depths match the prepass depths.
+
+* Changing movable skylight properties no longer affects static draw lists.
+
+* Mesh distance field generation uses Embree, which provides a 2.5x speed increase.
+
+* Cleared light attenuation for local lights with a quad covering their screen extents.
+
+ * Clearing the entire light attenuation buffer costs 0.1ms. This optimization lowers the minimum cost of a shadow casting light from 0.15ms to 0.03ms.
+
+* Flushed deferred deletes when reallocating distance field atlas to reduce peak memory, at the cost of a hitch on first frame.
+
+* Disabled point / spot lights with Max Draw Distance on Low PC.
+
+* Made use of Metal's "Deferred Store Actions" where available to avoid incorrect “Store†actions introduced when restarting passes to switch encoder types or when using the Metal RHI debugging tools.
+
+* Stopped the Shader Cache recording all the RHI resources unless it is running on OpenGL. This significantly reduces the CPU overhead of enabling the Shader Cache.
+
+* HLOD texture force loaded through the "r.Streaming.HLODStrategy" console command will now load visible mips first.
+
+* The command "BuildMaterialTextureStreamingData" can now be used with "all" as argument to force a rebuild.
+
+* Reduced the texture streaming overhead for components by keeping track of the state within the streamer.
+
+##### Postprocessing
+
+* New: Using Custom Depth to write to the stencil buffer now has the ability to use single-channel bitmasks that ignore depth. This makes it possible to detect overlaps between stencil objects.
+
+* Bugfix: Fixed log value conversion in tonemapping causing true blacks to be lost.
+
+* Motion blur no longer gets dark at the edges of the screen.
+
+#### UI
+
+* New: Added API to programmatically change the Virtual Cursors UMG Widget on the Viewport Client.
+
+* Bugfix: Fixed sRGB conversion issues in Retainer Box when used with a material.
+
+* Multiline editable text boxes can now be marked as read-only.
+
+* Selecting multiple text widgets will now correctly set text when the text field is edited.
+
+* Widget Components will now correctly determine between hover and clicked states when using or simulating touch.
+
+##### Slate
+
+* New: Added Enum Has All Flags and Enum Has Any Flags, templated functions to make it easier to check for the existence of a flag on enum classes.
+
+* New: There is now a console variable option, Slate.VerifyHitTestVisibility (off by default), which enables additional visibility checks for widgets. Normally this is not necessary, but if you are changing the visibility of widgets during a frame, and several hit tests need to be performed that frame, there is a chance that a button could be clicked twice in one frame. Enabling this mode will make all hit testing more expensive, so for now it is off by default, but available for licensees that need the extra testing.
+
+* New: Added the ability to invert alpha when drawing slate textures. This will be used in the future for rendering render targets for the scene which have inverted alpha.
+
+* Bugfix: Fixed a crash during editable text widget destruction while a context menu was still open.
+
+* Bugfix: Fixed a crash when deleting a streamed font.
+
+* Bugfix: Fixed lots of outline data being added to the font cache due to wrongly hashing outline material and color data.
+
+* Bugfix: Tooltips will no longer show if the cursor is not directly over a Slate window. Fixed a case where the tooltip would not disappear when the cursor is moved over another application's window that was placed on top of a Slate window.
+
+* Bugfix: Fixed an issue where the cursor would sometimes not appear when its visibility was changed. This was rooted in how the OS requested cursor changes, WM_SETCURSOR on Windows only asks for new cursors when the mouse moves, but often cursors change just because mouse capture changes. So now the path has been centralized in Slate Tick to only handle the cursor changes in one place, and several places that need to refresh the cursor state, now set a flag to handle it on next tick.
+
+* Bugfix: Fixed a bug with ZOrder being discarded on the SOverlay slot.
+
+* Bugfix: Fixed Web Browser Viewport to properly scale.
+
+* Bugfix: SButton now correctly releases mouse capture even if it becomes disabled while pressed, but before 'click' has been fired.
+
+* Improved text rendering when the last resort font is missing.
+
+ * The last resort font is no longer included in shipping builds, so this change makes some improvements to text rendering when it is missing.
+
+ * The legacy font cache no longer tries to use the last resort font if it is not available (preventing warnings).
+
+ * The Slate font renderer no longer tries to use the last resort font if it is not available.
+
+ * Text shaping will use the last resort character if none of the available fonts can render a given character (likely because the last resort font is missing).
+
+ * HarfBuzz shaped text now uses the fallback character correctly.
+
+* Kerning-only text shaping no longer draws characters to get their metrics.
+
+* Text selection height is now the maximum of the line height and text height to account for negative line-height scaling.
+
+* Added a setting to control whether we should use the font metrics or the bounding box when laying out a font.
+
+ * Not all fonts have accurate metrics data, so using the bounding box can produce much better results for certain fonts.
+
+* Made slate loading widget / movie playback more thread safe by eliminating Slate application or the main window from being ticked directly on another thread. Is In Game Thread will also no longer return true when called from the slate loading widget thread.
+
+* Force resolution in standalone if the resolution is larger than primary working area.
+
+* Moved ESlateDrawEffect & ESlateBatchDrawFlag over to be enum class. Found cases where the enum order was being improperly assumed, and so now it will not be possible to just treat an int32 or a bool as the draw effect value.
+
+* Slate Application now maintains separate tracking for each pointer being utilized for drag drop, so now multiple fingers on multiple widgets can now simultaneously be attempting a drag, however once one of them becomes successful, we clear all state of all other tracking since only one Drag Drop operation is possible at a time.
+
+* Fold Tick is now removed from the codebase. We have not supported the other (non-folded) code path for awhile, so there was no point in maintaining the switch.
+
+* The Checkbox widget no longer just passes visibility down to the internal widgets it creates, that prevents future changes to affect it if it starts collapsed.
+
+##### UMG
+
+* New: Added Timing Policy option to Widget Component, so widgets can optionally tick in pausable/dilatable game time rather than real time.
+
+* New: Added a material function that exposes all of the current UV sets with nice names instead of indexed coordinates.
+
+* New: Added a method to create Slate Brushes from Paper Sprites the same way we can for materials and textures in blueprints.
+
+* New: Introduced PreConstruct and Native PreConstruct to the base User Widget. Users can now visualize non-binding based changes in the designer by evaluating a very limited amount of the blueprint code. In the event your user widget crashes on load, due to calling something unsafe, you can disable evaluation in the editor preferences under Widget Designer.
+
+* New: Introduced a way to inform widgets of more information about the designer. There is now a Designer Changed event sent to all design time widgets letting them know things like the current screen size and DPI scale.
+
+* Bugfix: Fixed a crash if UI blurs are rotated.
+
+* Bugfix: Outline color on text elements is now inherited properly.
+
+* Bugfix: Fixed a bug that prevented Get Owning Player in Widget from returning.
+
+* Bugfix: Additional fixes to the way we migrate changes from the preview to the serialized version of the widget tree in the widget editor. This fixes several issues with edit-inline Objects on Widgets.
+
+* Exposed a normalized (0-1) uv coordinate set and scaled pixel size for Box and Border brushes.
+
+* Widget Interaction Components now ignore Visible(false) Widget Components when tracing.
+
+* Widget animations now finish evaluating before firing an event alerting that the animation finished.
+
+* The Widget Interaction Component now checks if the Widget is enabled before it claims that it is over an interactable or keyboard focusable widget.
+
+* Adding some setters and getters for Redraw Time to the Widget Component.
+
+* Widgets projected into screenspace from the Widget Component should now appear in the correct locations if the player's camera has an aspect ratio lock.
+
+* The Safe Zone widget will now show the correct safe zone amount if you use the safezone command line options, which are now documented in the comment for the Safe Zone class.
+
+* Widget switchers that contain widgets with named slots will now correctly display a widget whose named slot is currently selected.
+
+* Widgets that are copied and pasted will now retain the same name in the widget hierarchy.
+
+#### VR
+
+* New: Added support for getting device depth from Scene Capture Component 2Ds.
+
+* New: Added ability to disable the autoloading splash screen, which would prevent the manual "hide splash screen" node from working properly.
+
+* New: Added Gear VR controller support.
+
+* New: Added support for OES_EGL_image_external to the mobile GL renderer.
+
+* Bugfix: Negative Stereo Layer priorities are now handled correctly on Steam VR.
+
+* Bugfix: Fixed threading issue with motion controller tracking that caused controller motion pops. This problem manifested intermittently.
+
+* Bugfix: Fixed crash on Oculus Rift when attempting to enter stereo mode while the HMD's 'on head' proximity sensor is not triggered.
+
+* Bugfix: Fixed low framerate when Oculus Rift 'on head' proximity sensor is not triggered and you exit stereo rendering.
+
+* The GearVR HMD plugin is now only enabled on Windows if the Oculus service is already running.
+
+* VR console commands have been rewritten to support autocompletion and inline help strings.
+
+ * The VR console commands have also be renamed and now begin with vr.*.
+
+ * The renamed VR commands have backwards compatible aliases, but will print a warning notifying the user about the deprecated functionality.
+
+* GoogleVR HMD now reacts to changes in the r.ScreenPercentage console command.
+
+* When the -hmd command line option is used to override the selected HMD, HMD plugins that are loaded early will now be unloaded during PreInit if not selected.
+
+* Integrated OpenGL support for SteamVR.
+
+* The left eye is used when selecting LODs to avoid selecting two separate LOD levels when rendering in stereo.
+
+* PSVR controller tracking limit management system.
+
+ * PSVR can track the HMD and two controllers, but many more devices can be connected. With this system you can manage which controllers are tracked to stay under the limit.
+
+* Additional WorldScale refactoring for all platforms.
+
+* GoogleVR plugin updated to version 1.3
+
+* Fixed Android manifest for Daydream and Cardboard.
+
+* Updated GoogleVR plugin to version 1.3.
+
+* GoogleVR SDK updated to 1.40.0.
+
+* GoogleVR Mode default changed to Daydream and Cardboard.
+
+## Programming Release Notes
+
+#### AI
+
+* New: Added a new mode to composite EQS generator (UEnvQueryGenerator_Composite), which allows the use of different types of items by each child generator. This can be enabled by advanced properties: bAllowDifferentItemTypes and ForcedItemType. ForcedItemType is the final type returned by the generator, and is used for allocating memory and executing tests. This mode is potentially unsafe and you will have to ensure proper memory layout (matching with ForcedItemType) of all item types used by child generators - usually subsets of ForcedItemType. Keep in mind that allocated memory block is zeroed before use.
+
+##### Debugging Tools
+
+* Bugfix: Fixed VisualLog macros for recording segments with user defined thickness.
+
+* Bugfix: Fixed compilation errors in VisualLog macros for recording custom meshes.
+
+##### Navigation
+
+* Bugfix: Fixed memory corruption in generic A* solver: FGraphAStar.
+
+* Bugfix: Fixed unique Id duplicates in custom navigation links.
+
+* Bugfix: Fixed FRecastTileGenerator::Modifiers being erroneously counted twice when stating memory.
+
+* NavModifierVolume has been marked as ENGINE_API and can now be freely used in game code.
+
+* Made FNavAgentProperties::GetExtent return INVALID_NAVEXTENT if a prop's AgentRadius is not set. This results in properly using FNavAgentProperties::DefaultProperties in navigation queries when no query extent override is provided.
+
+#### Animation
+
+* New: Added more exports to AnimationAsset, AnimSequenceBase, and Skeleton classes.
+
+##### Animation Blueprint
+
+* Bugfix: Fixed nodes only getting CopyNodeDataToPreviewNode called when pin defaults were changed (not any property change).
+
+##### Skeletal Mesh
+
+* New: Added exports to FFbxImporter, FDynamicSkelMeshObjectDataCPUSkin, and FSkeletalMeshObjectCPUSkin, for extensibility.
+
+#### Audio
+
+* New: Added new cvars to help with optimization (only applies to the new Audio Mixer).
+
+ * au.DisableReverbSubmix, au.DisableEQSubmix, ​au.DisableParallelSourceProcessing, au.SetAudioChannelCount
+
+* Bugfix: Fixed MIDI Device plugin public headers not being able to be included from an external module.
+
+* Optimized internals of new Audio Mixer. Gains approach 15% savings from before:
+
+ * Turned a float divide into a multiply, which occurred at least 32k times per audio update.
+
+ * Avoided thousands of Array.Add() calls during processing, which on shipping still does checks to see if the allocator has to grow, and updates ArrayCount.
+
+ * Removed pointer indirection and successive TArray Add()s in GetChannelMap().
+
+ * Removed function call overhead to updating channel map.
+
+ * Simplified FSourceParam::Update() to reduce branching and have one return site.
+
+ * Added alternative to GetChannelMap() called UpdateChannelMap() that avoids copying out values to an array. The values can then be fetched from the channel data directly.
+
+ * Refactored internal data to use array of structs rather than struct of arrays for better cache coherency when processing channels one at a time.
+
+#### Blueprints
+
+* New: Added an error when declaring a Blueprint Implementable Event with an enum param that is not plain or a byte type (Blueprints only support byte-sized enums).
+
+#### Core
+
+* New: There are now several serialization options available to specify what the cooked Asset Registry includes. Look for the serialize flags inside the [AssetRegistry] section of BaseEngine.ini.
+
+* New: An experimental bUseAssetRegistryForIteration option has been added to CookerSettings. This improves the performance of iterative cooking by loading the cooked Asset Registry directly, but it may still have issues with some changes to source files being missed.
+
+* New: Added a cvar to control the pak precacher throttle.
+
+* New: Added new GenericPlatformFile function, GetTimeStampLocal, which returns file time stamp in local time instead of UTC.
+
+* New: Added a check against assembling the reference token stream while streaming without locking the garbage collector.
+
+* New: Added a static_assert to prevent the use of TMap keys which do not implement GetTypeHash, as this causes runtime crashes when they are manipulated by a UMapProperty.
+
+* New: Added a bForceDebugUnrealHeaderTool option to BuildConfiguration.xml which forces the Debug version of UnrealHeaderTool to be run instead of Development.
+
+* New: Added a static_assert to ensure that TInlineSetAllocator is instantiated with a power-of-two hash size, as this is a requirement for TSet and TMap.
+
+* New: Added ICppStructOps::IsAbstract() for testing if a native type is abstract via the property system.
+
+* Bugfix: Fixed TInlineValue not calling virtual destructors.
+
+* Bugfix: Fixed several issues with editor-only objects not being correctly stripped when cooking.
+
+* Bugfix: Fixed several issues with Config files loaded from Plugins. They now correctly handle diffing game-specific changes. Engine plugins config files should be named BasePluginname.ini, and game plugins should be DefaultPluginname.ini.
+
+* Bugfix: Fixed many bugs with the event driven loader and allowed it to work at boot time.
+
+* Bugfix: Fixed a bug with nativized Blueprints that was introduced with the boot time EDL changes.
+
+* Bugfix: Fixed race in audio streaming.
+
+* Bugfix: Fixed bug which would cause a fatal error when cooking subobjects that were pending kill.
+
+* Bugfix: Fixed a bug with EDL at boot time which caused a fatal error with unfired imports.
+
+* Bugfix: Fixed a bug with RF_PendingKill subobjects and the new loader.
+
+* Bugfix: Fixed an obscure problem with stats in commandlets that use async tasks.
+
+* Bugfix: Fixed rare ensure cooking for the EDL.
+
+* Bugfix: Fixed boot time EDL causing some issues even when it wasn't being used.
+
+* Bugfix: Fixed .pak precacher shutdown.
+
+* Bugfix: Fixed memory leak in .pak precacher.
+
+* Bugfix: Fixed bad merge of priority change in the EDL.
+
+* Bugfix: Fixed race that resulted in a memory leak when reading compressed paks.
+
+* Bugfix: Fixed a weird recursive situation where StaticLoadObject could return an object that has not finished loading. Also produces a fatal error if this happens. EDL only.
+
+* Bugfix: Fixed batched render fences when BeginDestroy calls FlushRenderingCommands.
+
+* Bugfix: Fixed loading a package that is already loaded.
+
+* Bugfix: Fixed crash in signature checks when mounting pak files.
+
+* Bugfix: Fixed a change to NotifyPrimitiveDetached so that it works in the editor.
+
+* Bugfix: Fixed hash table lock optimization.
+
+* Bugfix: Fixed a crash relating to FGenericAsyncReadFileHandle when not using the EDL.
+
+* Bugfix: Fixed comments in GenericPlatform.h.
+
+* Bugfix: Fixed errors raised during code generation when a multiply-inherited base class happens to have the same name as a UObject after its prefix is stripped.
+
+* Bugfix: Fixed a compile error when calling TArray::HeapSort on an array of pointers.
+
+* Bugfix: Fixed a crash when calling UCookOnTheFlyServer::FFilePlatformRequest::ToString().
+
+* Bugfix: Fixed compile errors raised when #pragma is used inside USTRUCTs.
+
+* Bugfix: Fixed compile errors caused by whitespace existing before a UCLASS() macro.
+
+* Bugfix: Fixed TStructOpsTypeTraits::WithCopy giving different results when the trait is specialized without a WithCopy value from when it isn't specialized at all.
+
+* Bugfix: Fixed a compile error when serializing bools to an archive in editor builds, where the archive type overrides other serialization operators.
+
+* Bugfix: Fixed FWorldTileInfo::Read() to copy the correct licensee version number from the file summary into the archive.
+
+* Bugfix: Fixed a regression in FObjectAndNameAsStringProxyArchive to re-allow serialization of TWeakObjectPtrs.
+
+* Bugfix: Fixed some include-what-you-use issues in the engine and plugins.
+
+* Bugfix: Fixed UPROPERTYs being skipped when there are redundant semi-colons between the properties.
+
+* Asset Registry memory and performance have been significantly improved in both Editor and cooked games for large projects.
+
+* Allowed UnrealPak to do a better job with EDL pak files when the order provided is old or from the cooker.
+
+* Several minor tweaks to low level async IO stuff.
+
+* Stored a copy of the callback in async read request so that we do not need to worry about lifetime so we can capture variables as needed.
+
+* Cancelling async loading with the EDL loader now prints a warning and does a flush instead.
+
+* Suppressed a few EDL cook warnings.
+
+* Tweaked the EDL for to all platforms.
+
+* Platform load time performance tweaks.
+
+* Abstracted the IO tracker and handle manager for other platforms and applied it to all platforms.
+
+* Protected against UDeviceProfileManager::Get() recursion and demoted a related fatal error to a log statement.
+
+* Removed old code relating to FAsyncArchive, FAsyncIOSubsystemBase and package level compression. The editor now uses the lowest levels on the new async IO scheme.
+
+* Increased estimate of summary size.
+
+* Avoided adding a linker annotation if it actually has not changed. This improves ConditionalBeginDestroy performance.
+
+* Avoided a redundant removal of PrimitiveComponent from the streaming managers during ConditionalBeginDestroy.
+
+* Optimized UObject hash tables for speed and space.
+
+* Put the special boot order things into baseengine.ini so that licensees and games can add to it.
+
+* Renamed HasBeenAlreadyMadeSharable to DoesSharedInstanceExist.
+
+* PostLoadSubobjects is now called on all objects regardless of whether they have a CDO as outer or not.
+
+* When Rename is used to change the Outer without specifying a new name, the existing name is maintained whenever possible.
+
+* ForwardVector, RightVector, and single float FVector constructors are now recognized by Unreal Header Tool as default values for an FVector parameter.
+
+* ScriptMacros.h no longers needs to be included in header files that generate a header.
+
+* Improved the readability of some of the ReferenceChainSearch code.
+
+* Automatically included ObjectMacros.h in generated headers to prevent compile errors.
+
+* Made FPaths::Combine() variadic so that it can take arbitrary numbers of arguments.
+
+* Improved the readability of the verbosity of log categories in the debugger.
+
+* Updated TArray::Sort comments to clarify what happens when sorting an array of pointers.
+
+* Clarified the assertion message you get when inserting or removing a TArray element by reference which comes from the array.
+
+* Clarified the comments for TArray::FindLastByPredicate and FString::FindLastCharByPredicate.
+
+* Removed UnrealCodeAnalyzer.
+
+* Raised an error in UnrealHeaderTool when a header containing UCLASSes, USTRUCTs etc. does not include its .generated.h file.
+
+* Removed TBoolConstant template.
+
+* Changed TAssetPtr to allow it to be constructed from nullptr without a full definition of T.
+
+* Removed the WITH_HOT_RELOAD_CTORS macro.
+
+* Removed the UseVTableConstructors .ini option.
+
+* Removed generated FName variables for UFUNCTIONs.
+
+* Removed the generation of obsolete .java and .proto files used for replication.
+
+* Replaced the set of bools used to FBlueprintCompileReinstancer with a new EBlueprintCompileReinstancerFlags enum.
+
+* Improved hot reload logging messages to make it clear that a compile attempt on a module does not guarantee a reload of that module.
+
+* Made UnrealHeaderTool report an error if a UFUNCTION in a derived class has the same name but a different signature from one in a base class.
+
+#### Editor and Tools
+
+* New: Added spinner options to VectorInputBox.
+
+* New: Added a None option to the FKey customization, unless the FKey property had NoClear on it.
+
+* Bugfix: Implemented a fix to ensure FVirtualTrackArea::HitTestSection checks the row of the section.
+
+* Bugfix: Fixed an issue where ISequenceAudioRecorder was inaccessible to FAudioRecorder.
+
+* Project and plugin templates now use "include what you use" style by default.
+
+* When using BuildGraph, the cached list of completed nodes is now cleared by default, making the -ClearHistory argument redundant. Use the -Resume argument to continue an interrupted build using the current artifacts.
+
+* BuildGraph now outputs an error if any build products from previous steps are tampered with during the execution of a subsequent step.
+
+* The editor now offers to download and install Visual Studio 2017 if an existing version of Visual Studio is not found.
+
+* The AutomationTool -CookDir argument no longer accepts multiple parameters separated by '+' characters, since '+' is valid in directory names. Multiple -CookDir arguments are supported instead.
+
+* Game mods can now be denoted by setting the bIsMod field to true inside the .uplugin descriptor. Mods will be shown in a separate category in the plugin browser, and will be shown separately in generated project files. Installed editor builds can build and clean mods without modifying build products for the base game.
+
+##### Content Browser
+
+* Bugfix: Fixed link error when FAssetData::PrintAssetData() is used in a project.
+
+##### Sequencer
+
+* Unified global and object-bound pre animated state, and added InitializeObjectForAnimation method to state producers.
+
+* Opened the API for MovieSceneAudio-related classes along with some minor functionality additions.
+
+* Exported MovieSceneTrackEditor to allow custom tracks to be created that derive from existing tracks.
+
+#### Gameplay Framework
+
+* New: Added support for FScopedMovementUpdate to be able to queue up overlaps that do not require reflexive bGenerateOverlapEvents. This requires custom code to be able to process these overlaps.
+
+ * This allows custom inspection or processing of overlaps within a scoped move, without enabling the more expensive overlap flag. For instance you could have a fast projectile with an overlap response to a character mesh and get those overlaps from the trace without requiring expensive overlap processing when the mesh moves.
+
+ * Overlap events from the move will still only trigger from UpdateOverlaps() if bGenerateOverlapEvents is enabled on both components, as before.
+
+ * Made some data in FScopedMovementUpdate protected rather than private so it can easily be subclassed, and exposed a new helper ​SetWorldLocationAndRotation() for committing the move.
+
+* Bugfix: Fixed a crash when manipulating audio component properties from an Actor's constructor during async loading.
+
+* Bugfix: Fixed CharacterMovementComponent updates with very high delta time on server when initially joining. Made sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
+
+* CheatManager functions to Damage/Destroy targets are now easier to override in game-specific subclasses.
+
+* InputComponent now has BindAction function that allows binding functions with additional parameters.
+
+* RawInput configuration structures can now be manipulated by other modules.
+
+* AActor::GetComponents() with generic type is now optimized to not force an allocation when the component count is large.
+
+ * Previously it incorrectly assumed the output array needed space for the entire contents of OwnedComponents. If OwnedComponents.Num() > the array reserve size, this forced an allocation, even if few or no components of the requested type were found.
+
+ * It is still recommended to use TInlineComponent array or an array using TInlineAllocator<> when using this function.
+
+* Removed allocations during creation in ​AAIController::PostInitializeComponents() (in non-shipping builds).
+
+* Optimized HasActiveCameraComponent() and ​HasActivePawnControlCameraComponent() to avoid filling an array while searching for a certain component, which could have caused an allocation.
+
+* Optimized MoveComponent() collision queries to avoid processing PhysX touches when bGenerateOverlapEvents is off.
+
+ * Added support for bIgnoreTouches to FCollisionQueryParams. This allows GeomSweepMulti to filter out touches/overlaps much earlier.
+
+* MovementComponent does not ignore initial blocking overlaps when moving away from the impact normal from SafeMoveUpdatedComponent(). This fixes various cases where characters could be pushed through moving objects because they were moving away from the overlapping object, but not fast enough.
+
+ * It now always uses the hit result to depenetrate from the impact as much as possible, and then retries the move.
+
+ * Hit events are not triggered for the first test for depenetration.
+
+* CharacterMovement AdjustFloorHeight() is now allowed to adjust using the line trace if the sweep was in penetration. It also forces another next floor check so it will check after it adjusts the height or depenetrates, relevant when bAlwaysCheckFloor is off.
+
+* Optimized CharacterMovement tick to not extract transform values twice when they would not change in a small block of code.
+
+* Call TickCharacterPose() and clear root motion before abandoning tick in ​UCharacterMovementComponent::PerformMovement() when movement mode is None. This prevents root motion building up until the next valid movement mode.
+
+* Applied a performance tweak to ​ApplyRadialDamageWithFalloff().
+
+ * Do not rebuild FRadialDamageEvent each loop over hit actors.
+
+ * Added stats for ​BreakHitResult()/MakeHitResult() under "stat game".
+
+* Optimized attachment to check welding option before expensive casts and body instance fetching.
+
+#### Localization
+
+* Bugfix: Fixed a bug where passing an empty FText to ChangeKey() would keep the previous FText value that had been passed in.
+
+#### Online
+
+* New: Added the bShowSkipButton parameter to IOnlineExternalUI::ShowLoginUI, which will display the "skip" button on relevant platforms.
+
+#### Other
+
+* New: Added missing initialization for SWindow::bIsMirrorWindow.
+
+* Bugfix: Added missing module dependencies.
+
+* Bugfix: Fixed a type casting issue.
+
+#### Physics
+
+* New: Added virtual keyword to DestructibleComponent ApplyDamage and ApplyDamageRadius.
+
+* New: Added Physx simulation shader override (see GSimulationFilterShader).
+
+* Bugfix: Fixed a debug rendering issue by recreating physics when changing mobility of components.
+
+* Bugfix: Fixed compile error when PHYSX_MEMORY_STATS=1.
+
+* Bugfix: Fixed performance regression caused by using collision aggregates for Instanced Static Mesh Component.
+
+* Bugfix: Fixed a crash in AABB Manager when origin shift is used.
+
+* Made UDestructibleComponent::SpawnFractureEffectsFromDamageEvent virtual.
+
+* Exported URadialForceComponent class for inheritance.
+
+* Allowed the editor to compile when bRuntimePhysicsCooking is disabled (cooking is still allowed in WITH_EDITOR builds even with it disabled).
+
+* EndPhysics tick will no longer be scheduled if QueryOnly is used on a ragdoll.
+
+* Removed the unsupported option of HideBone with DisableCollision when calling HideBone. This was not actually supported and did nothing so shouldn't break any behavior, just don't call the function.
+
+* Exposed PhysX enhanced determinism mode using the compiler flag PHYSX_ENABLE_ENHANCED_DETERMINISM. This allows local subsets of the PhysX simulation to behave deterministically independent of what is going on elsewhere in the Physics world.
+
+#### Platforms
+
+* Bugfix: Fixed a crash bug in cases where we received a duplicate user login/logout notification from the system software.
+
+* Bugfix: Fixed Codelite project having duplicated settings.
+
+* Moved some C++ defines out of the build.cs file into a C++ header.
+
+* Moved controller connect/disconnect handling to the main thread to fix issues with thread safety for callbacks.
+
+##### Android
+
+* New: Added functionality to use the visual studio mobile projects for debugging. To generate them run "generateprojectfiles.bat -vsdebugandroid" from a command prompt. After you have packaged your game for Development and put it on the device, you can set this new project as the start up project and run/debug the project in Visual Studio.
+
+* New: Support for Android runtime permissions added. Certain permissions have been removed or put under condition to check for support when the target sdk is greater than or equal to 23.
+
+##### HTML5
+
+* New: Added new webassembly (wasm) toolchain - SIMD and multi-threading are not yet supported (these are slated to be in for wasm2).
+
+ * These will be automatically turned off when building with wasm (as opposed to asm.js).
+
+* Removed HTML5 code from the Engine's SaveGameSystem.h and placed it in HTML5Platform.cpp.
+
+* Cleaned up HTML5PlatformFile.cpp and made it match as close as possible to linux's version.
+
+* Created HTML5's own PlatformFeature & SaveGameSystem files, and updated HTML5PlatformMisc to make use of the the new HTML5 SaveGame code.
+
+##### Linux
+
+* New: Added FreeBSD memory information functions to facilitate out-of-tree UE4 FreeBSD port.
+
+* New: Added a new cross-toolchain (version 9, includes clang 4.0) when targeting Linux on Windows.
+
+* New: Added some support for building on Debian Sid or Stretch.
+
+* New: Added clang to Fedora dependencies.
+
+* New: Added ability to compile Linux servers for 32-bit x86 architecture.
+
+* New: Added files generated for KDevelop to .gitignore.
+
+* Bugfix: Fixed more third party libraries to use libc++ instead of libstdc++.
+
+* Bugfix: Fixed memory leaks when symbolicating an address in Linux callstacks (during crash reporting and memory profiling). Makes runs with the memory profiler much faster.
+
+* Bugfix: Fixed rebuilding of VHACD (a third party library) on a case sensitive filesystem.
+
+* Bugfix: Fixed CodeLite projects to now use proper Debug binaries for debug configurations.
+
+* Switched Linux file abstraction to use new managed filehandles. Shared by all platforms with low limit of open files.
+
+* Whitelisted SteamVR plugin for Linux so SteamVR Blueprint functions are always available, even if stubbed.
+
+* Made source code accessor aware of clang 3.9 and 4.0.
+
+* Setup will now install the latest clang on Arch instead of clang35.
+
+##### Mac
+
+* Fixed address sanitizer support in MacToolChain (Apple changed the name of the env variable Xcode uses to enable it) and added support for thread sanitizer.
+
+* Fixed a problem where the glslang library was not enabled on Mac, preventing building an Android project with Vulkan from Mac.
+
+* Made Binned2 malloc work on Mac.
+
+#### Programming
+
+* New: When compiling a module written in include-what-you-use style, source files which are in the adaptive non-unity working set are now built with precompiled headers disabled, to expose errors with missing headers. Set bAdaptiveUnityDisablesPCH to false in BuildConfiguration.xml to disable this behavior.
+
+* New: Added initial support for async creation of pipeline state objects, enable using r.AsyncPipelineCompile.
+
+* Module .build.cs files, which depend on the contents of external files, can now add those paths to the ExternalDependencies list. Modifications to those files will trigger the the UBT makefile to be invalidated.
+
+* Plugin config files are now included in generated project files.
+
+* UnrealBuildTool will no longer attempt to use SN-DBS for build distribution if the service is disabled.
+
+* UnrealBuildTool now correctly supports compiling modular targets which do not use the shared engine build environment.
+
+* C# programs will now be included in generated project files automatically if a blank file called UE4CSharp.prog is found in the same directory.
+
+* The engine will now warn when trying to load a plugin with a mismatched "EngineVersion" setting.
+
+* Deprecated shared pointer typedef from ImageWrapper and removed usages.
+
+* Removed boilerplate header from ImageWrapper.
+
+* Removed monolithic boilerplate header from NetworkFileSystem.
+
+* Removed boilerplate header from LauncherCheck.
+
+* LauncherServices: Removed boilerplate header from LauncherServices.
+
+* Completed a modernization pass of Automation.
+
+#### Rendering
+
+* New: Added thickness option to debug DrawWireDiamond function.
+
+* New: Added a check to see if there are duplicated shader type names.
+
+* Bugfix: Fixed obscure check with flushing RHI resources.
+
+* Bugfix: Fixed hazard with SetMaterialUsage from a thread.
+
+* Bugfix: Fixed Windows handling of -sm4 and -sm5 so it can be used with -vulkan and -opengl.
+
+* Bugfix: Fixed selection of swapchain format for Vulkan on some Linux drivers.
+
+* Bugfix: Fixed an issue on Vulkan when copying into a cubemap face.
+
+* Bugfix: Fixed a bug calculating vertex declaration hashes on OpenGL.
+
+* Moved FPositionVertexBuffer & FStaticMeshVertexDataInterface declarations into their own headers, moved FStaticMeshVertexBuffer implementation into its own source file.
+
+* Updated Vulkan distributables and glslang to SDK 1.0.39.1.
+
+* Vulkan shaders now build using glslang 1.0.42.2 and includes those headers for redistribution.
+
+* Prefer D32_S8 on Vulkan instead of D24_S8 for the depth buffer.
+
+* Removed the temporary functions RHIClearColorTexture, RHIClearDepthStencilTexture and RHIClearColorTextures from each RHI.
+
+* Separated depth/stencil load/store actions.
+
+* Use the latest SDK for Vulkan, whether the one we distribute in ThirdParty or an installed version.
+
+* Implemented SetStencilRef() and SetBlendFactor() on RHIs which were missing it.
+
+#### UI
+
+##### Slate
+
+* Updated Slate to allocate widgets using MakeShared.
+
+ * This saves one allocation per-widget.
+
+* Moved SVirtualWindow into Slate module from UMG.
+
+#### VR
+
+* New: Added an initial base implementation of IHeadMountedDisplay, FHeadMountedDisplayBase, that can be extended by HMD implementations instead of extending IHeadMountedDisplay directly. This base class provides default and or common implementations for parts of the IHeadMountedDisplay interface. Future releases may add more common functionality to this class, reducing the amount of work required to add support for new HMD platforms even further.
+
+* StereoLayers now have a default emulated implementation, making them supported on most VR platforms that did not already support them. HMD implementations that extend FHeadMountedDisplayBase will automatically inherit the functionality unless explicitly overridden.
+
+* Common code found in various HMD plugins handling management of StereoLayers has been extracted into a template base class, TStereoLayerManager, that provides a thread-safe way to manage a list of registered stereo layers.
+
+* The old Morpheus StereoLayers implementation has been removed in favor of the common stereo layers implementation provided by the HMD base class.
+
+## Upgrade Notes
+
+#### C++ API Changes
+
+* As part of the Asset Manager changes, Streamable Manager has been improved to support the concept of Streamable Handles. When requesting an async load, it now returns a shared pointer handle that will keep the requested object loaded as long as it exists. These handles can also be polled or waited on.
+
+ * Synchronous Load and Simple Async Load on Streamable Manager have been deprecated in favor of the new Streamable Handle system. Both of those functions would keep assets loaded until explicitly unloaded, which in practice was not what most people wanted.
+
+* The Class/Property/Function redirect system has been rewritten to be faster and more flexible. Ini redirects such as "+ActiveClassRedirects" defined in [/Script/Engine.Engine] will still work, but the new system is used by putting redirects like “+ClassRedirects†in the [CoreRedirects] section of Engine.ini.
+
+ * All engine redirects prior to 4.10 have been moved to CoreRedirects.cpp, newer redirects are now in the new format in BaseEngine.ini.
+
+ * A single Property/Function redirect definition will now be applied for both blueprints and serialization, and redirects can now be defined with wildcard matching syntax to simplify large refactors.
+
+ * Object and Package redirects can now be used to allow limited redirection of content references without creating an Object Redirector on disk.
+
+ * Enum redirects have been improved and will now fully work with or without the Enum Name being specified.
+
+* Several Enum functions dealing with string conversion have been deprecated, and the names and comments have been cleaned up to make it more clear which are meant to be used at Runtime and which are meant to be used in the Editor/for debugging.
+
+* The console command "r.MSAACount 1" now produces no MSAA or TAA. “r.MSAACount 0†can be used to toggle TAA on for comparisons.
+
+* Cascaded Shadow Map resolution is now controlled by the console command "r.Shadow.MaxCSMResolution" instead of “r.Shadow.MaxResolutionâ€.
+
+* New mobile targeted projects will have better UI performance settings by default.
+
+ * Please enable "Explicit Canvas Child Z Order" option in project Slate Settings, to improve UI batching. Enabling this option may require manual Z Order tweaks in UMG Canvas panels if there Z ordering issues.
+
+* VR console commands have been rewritten to support autocompletion and inline help strings.
+
+ * The VR console commands have also be renamed and now begin with vr.*
+
+ * The renamed VR commands have backwards compatible aliases, but will print a warning notifying the user about the deprecated functionality.
+
+* The Exec method in Head Mounted Display has been removed, as all VR console commands now use Auto Console Command or similar to register console commands.
+
+ * HMD implementations relying on having an Exec method now need to provide their own ways of registering console command handlers.
+
+* Set Visibility and Set Hidden In Game in Scene Component are no longer virtual. Instead override On Visibility Changed or On Hidden In Game Changed to respond to changes to these values.
+
+* The FBox and FBox2D constructors taking an int32 value have been deprecated as the value of that integer was not being used. The Force Init constructor should be used instead.
+
+ * Replace FBox/FBox2D construction of the form FBox(0) with FBox(ForceInit).
+
+* The Unreal Header Tool now outputs an error when an Editor-only struct member is exposed to blueprints. This is necessary because packaged builds will crash if a Make/Break node for that struct is executed in a blueprint.
+
+ * Any Blueprint exposed Editor-only struct members must either be made not Editor-only or no longer exposed to blueprints.
+
+* Post Load Map now provides the loaded World as a parameter to the delegate function. The World will be null if the load failed.
+
+ * All existing functions bound to Post Load Map need to have a World pointer added to their signature.
+
+* Stop saving raw curve data into animations on cook to save memory/disk space.
+
+ * If you are directly accessing Raw Curve Data on an Anim Sequence, this will no longer work in cooked builds. Animation Asset now provides a virtual function, Get Curve Data, to grab a reference to the correct Curve structure.
+
+* Removed boilerplate header from Automation Window.
+
+ * The AutomationWindow.h boilerplate header file has been removed. Please replace all includes of AutomationWindow.h with IAutomationWindowModule.h
+
+* Removed boilerplate header from Automation Controller.
+
+ * The AutomationController.h boilerplate header file has been removed. Instead of AutomationController.h, include the individual interface headers that you actually use. Remove the "Interfaces/" subdirectory from existing interface inclusions.
+
+* Automation Modernization pass
+
+ * The IAutomationWorkerModule.h has been moved to the module's public root directory. Please remove the relative path from your existing include statements.
+
+* Removed boilerplate header from LauncherCheck.
+
+ * The LauncherCheck.h boilerplate header file has been removed. Include ILauncherCheckModule.h instead of LauncherCheck.h. Remove "Interfaces/" subdirectory from existing ILauncherCheckModule.h inclusions.
+
+* Removed boilerplate header from LauncherServices.
+
+ * The LauncherServices.h boilerplate header file has been removed. Instead of including LauncherServices.h, include the ILauncherXXX.h files that you actually use. Remove the "Interfaces/" subdirectory from existing ILauncherXXX.h includes.
+
+* Deprecated shared pointer typedef and removed usages from ImageWrapper.
+
+ * The IImageWrapperPtr typedef has been deprecated. Please use TSharedPtr instead of IImageWrapperPtr.
+
+* Removed boilerplate header from ImageWrapper.
+
+ * The ImageWrapper.h boilerplate header file has been removed. Instead of including ImageWrapper.h, include the actual IImageWrapperXXX.h files that you use. Remove the "Interfaces/" subdirectory from existing IImageWrapperXXX.h includes.
+
+* Removed monolithic boilerplate header from NetworkFileSystem.
+
+ * The NetworkFileServer.h boilerplate header file has been removed. Instead of including NetworkFileServer.h, include the INetworkFileXXX.h headers that you actually use. Remove the "Interfaces/" subdirectory from existing INetworkFileXXX.h includes.
+
+* Changed default contact-gen method to PCM. This is the default in PhysX 3.4.
+
+ * This may have slight implications on jitter and stability, but should be improved overall. The old behavior is still available (set EnablePCM = false in the project settings).
+
+* Removed the temporary functions RHIClearColorTexture, RHIClearDepthStencilTexture, and RHIClearColorTextures from each RHI.
+
+* Removed obsolete SmartCastProperty function.
+
+* Added a static_assert to prevent the use of TMap keys which do not implement GetTypeHash, as this causes runtime crashes when they are manipulated by a UMapProperty.
+
+ * TMap key types must now implement GetTypeHash. Having GetTypeHash be implemented in a base class or being implicitly convertible to a type which is hashable is not sufficient.
+
+* Fixed TStructOpsTypeTraits::WithCopy giving different results when the trait is specialized without a WithCopy value from when it isn't specialized at all.
+
+ * TStructOpsTypeTraitsBase has been deprecated.
+
+* Improved support for TTuple.
+
+ * Tuples have a GetTypeHash function and can be used as a TMap key.
+
+ * Can now be serialized to archives.
+
+ * Can now be compared for equality with operators == and !=.
+
+ * Can now be compared lexicographically with operators <, >, <= and >=.
+
+ * TPair is now an alias for a 2-tuple, which is specialized to have Key and Value fields, but otherwise has the same functionality as all other tuples.
+
+ * Tuple.h is now found in the Core/Public/Templates folder, rather than the Core/Public/Delegates folder.
+
+ * TPairInitializer now converts to TPair, rather than TPair being constructible from TPairInitializer.
+
+* Removed UnrealCodeAnalyzer.
+
+* Added a static_assert to ensure that TInlineSetAllocator is instantiated with a power-of-two hash size, as this is a requirement for TSet and TMap.
+
+ * TInlineSetAllocator will no longer compile if the hash size is not a power-of-two.
+
+* Removed TBoolConstant template.
+
+* Removed the WITH_HOT_RELOAD_CTORS macro.
+
+* Removed the UseVTableConstructors .ini option.
+
+* Removed generated FName variables for UFUNCTIONs.
+
+* Refactored EvaluateBoneTransforms to prevent usage of skeletal mesh component.
+
+ * Deprecated EvaluateBoneTransforms in favor of new ​EvaluateSkeletalControl_AnyThread.
+
+ * Deprecated skeletal mesh component argument to ConvertCSTransformToBoneSpace and ​ConvertBoneSpaceTransformToCS. Now they just take a transform.
+
+* Added a new overload for IOnlineSession::FindFriendSession in the session interface that can retrieve sessions for multiple friends.
+
+ * Sending and accepting invites on dedicated servers on Steam is now supported.
+
+ * The FOnFindFriendSessionCompleteDelegate now returns an array of FOnlineSessionSearchResult objects instead of just one.
+
+* The high level rendering code is now PipelineStateObject aware which will allow us to reduce complexity in the rendering backends of Vulkan, Metal and Dx12 in the future.
+
+ * The loose state setting APIs of the Commandlist have been deprecated, instead the entire pipelinestate has to be set at once.
+
+* Moved controller connect/disconnect handling to the main thread to fix issues with thread safety for callbacks.
+
+#### Animation
+
+* When converting skeletal controls to the newer API, convert EvaluateBoneTransforms to ​EvaluateSkeletalControl_AnyThread. Backwards compatibility will be maintained, however warnings will persist. Any mesh component access should be cached in PreUpdate() as accessing the component is not thread safe.
+
+* If differences in timing between Maya and UE4 are experienced after importing Alembic files, this has been corrected. The fix requires that any problematic assets be reimported.
+
+#### Blueprints
+
+* The ticking behavior of latent actions in components has been changed to match how they behave in actors. When the component ticks, the latent actions will now be processed at the same time, rather than happening later in the frame when latent actions for non-ticking actors and components are processed. This does change behavior, so there is a console variable (t.TickComponentLatentActionsWithTheComponent) that can be used to revert to the older behavior until affected component Blueprints that depended on the old ordering behavior can be fixed up. The cvar should be treated as deprecated, and it will be removed in a future release.
+
+#### Core
+
+* To save on memory and disk space the cooked Asset Registry no longer includes Dependency information by default. If you need this information at runtime, enable bSerializeDependencies in the [AssetRegistry] section of BaseEngine.ini.
+
+* Starting asynchronous loads from within asynchronous loads has always been unsafe, but will now explicitly assert. This can be fixed by not starting asynchronous loads from within PostLoad functions, or deferring your game-specific code for a frame when called from an async callback.
+
+* Callback functions passed into Request Async Load will now execute on the next frame instead of immediately upon completion of an async load. This behavior is to avoid issues with calling async loads recursively, but if your game depends on this behavior you can restore it to call them immediately by setting the cvar s.StreamableDelegateDelayFrames to 0.
+
+* There is a new format for defining class/function/property redirects in ini files, check the [CoreRedirects] section of BaseEngine.ini for examples. The older formats will still work but the new format provides additional features and a simpler syntax so you may want to upgrade.
+
+* Any calls to Smart Cast Property should be replaced with code which explicitly handles the inner property of Array Property.
+
+* Get Type Hash implementations must now be added to types which are used as TMap keys. If your type defines Get Type Hash in a base class or is hashed via an implicit conversion, these should be fixed by implementing their own function and forwarding the call to the appropriate implementation.
+
+* Any use of TStructOpsTypeTraitsBase should be replaced with TStructOpsTypeTraitsBase2, where T is the type that the trait is being specialized for.
+
+* `#include "Delegates/Tuple.h"` should be replaced with `#include "Templates/Tuple.h"`.
+
+* As TPairInitializer is now convertible to TPair, rather than TPair being constructible from TPairInitializer, types which do not correctly implement copy or move semantics by not inhibiting the compiler defaults may cause a bad state when they are inserted into a TMap or TSet. All types used in UE4 containers should correctly define copy or move semantics.
+
+* Any dependence on Unreal Code Analyzer should be removed from projects.
+
+* The explicit usage of TInlineSetAllocator in any TSet and TMap should be updated to ensure that the template arguments provided result in hash sizes which are a power-of-two.
+
+* TBoolConstant should be replaced with TIntegralConstant.
+
+* Any use of WITH_HOT_RELOAD_CTORS should be replaced with the assumption that the value is 1.
+
+* Any use of the Use VTable Constructors .ini option should be replaced with the assumption that the value is true.
+
+* Use of generated FName variables for UFUNCTIONs (e.g. ENGINE_ReceiveTick) should be replaced with a string literal or a custom static FName variable in your own code:
+
+ * For example: static const FName ENGINE_ReceiveTick = TEXT("ReceiveTick");
+
+* If Unreal Header Tool reports an error about a function having a different signature from a base class, it should be fixed to have the same signature, or renamed.
+
+#### Editor and Tools
+
+* Exposed Make Property Combo Box in Property Customization Helpers to allow embedding an enum combo box into Struct Customizations.
+
+* Added Custom Column support to the Asset Picker Config.
+
+* If you use a protected platform, your project settings will start to be saved under MyGame\Config\Platform\PlatformEngine.ini, instead MyGame\Config\DefaultEngine.ini.
+
+#### Platforms
+
+* Made some big Device Profile changes, particularly for the protected platforms. You may need to modify your Device Profiles in similar ways if you are a heavy user of them.
+
+ * Changed the "type" of some DPs from WindowsNoEditor, etc to Windows. It should be a platform, not a random string.
+
+ * With that change, the platform can be used to save out protected platform DP .ini files to subdirectories, maintaining secrecy.
+
+ * When saving DeviceProfiles, you may need to look in a platform subdirectory for the DeviceProfiles.ini file.
+
+ * Added Config/[PlatformName]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs. See the GetConfidentialPlatforms() function in GenericPlatformMisc for more information.
+
+#### Programming
+
+* The TargetRules.ShouldUseSharedBuildEnvironment() function has been deprecated. Targets can now specify the build environment they wish to use by setting BuildEnvironment to TargetBuildEnvironment.Default/Shared/Unique in their constructor instead.
+
+* The constructor for ModuleRules-derived classes in .build.cs files should be updated to take a ReadOnlyTargetRules instance, which should be forwarded to the base class. This class contains the same properties as the previous TargetInfo argument, plus all the target-specific settings previously stored in the global BuildConfiguration and UEBuildConfiguration classes. Compatibility shims for accessing these objects will be removed in a future release. The WITH_FORWARDED_MODULE_RULES_CTOR preprocessor definition is now defined, which allows writing code which is compatible with multiple engine versions.
+
+* The TargetRules.SetupBinaries() callback has been deprecated. Instead of overriding this, targets may override the launch module through the "LaunchModuleName" property in their constructor, and add extra modules to the "ExtraModuleNames" field on the TargetRules object itself.
+
+#### Rendering
+
+* UE4Editor is whitelisted for Aftermath with latest Nvidia drivers. To whitelist other game executables contact Nvidia.
+
+* RHICmdList.Clear() methods are now removed; please use RHICmdList.SetRenderTargetsAndClear() or the DrawClearQuad() utility function from ClearQuad.h.
+
+* The Cross Compiler Tool is now removed from the Engine, it had too many limitations. Use hlslcc.sln or ShaderCompileWorker -directcompile instead.
+
+* PipelineStateCache.h contains the new replacement interface for BoundShaderStateCache.h. Otherwise, during the Geometry rendering passes the previously introduced Draw Render State is used to collect and set the Blend, Raster, and Depth Stencil State. Commit Graphics Pipeline State will set the PSO for geometry rendering passes. Postprocessing passes or passes which use Globalshaders have to fill out a Graphics Pipeline State Initializer and set this instead.
+
+* If configuring via .ini files, use the new variable name "ScaleTexturesByGlobalMipBias" where "ScaleTexturesByGlobalMyBias" was used.
+
+* Mobile: Skylights on mobile projects may need to be recaptured in the editor before packaging.
+
+* Mobile: Please replace r.TonemapperFilm=1 cvar with r.Mobile.TonemapperFilm=1 in case you want to use new filmic tonemapper on Mobile platforms.
+
+#### VR
+
+* PSVR MotionController tracking management system.
+
+ * Blueprint functions added to manage the set of actively motion tracked controllers in MotionTrackedDevice Function Library.
+
+ * You are recommended to disable tracking of all controllers first, and then enable tracking for the controllers you want to have tracked based on user setting, connected controllers, etc. The system keeps a memory of which controllers are set to be tracked even if the controller is disconnected, or not yet connected.
+
+* Experimental preview of PSVR Social Screen support.
+
+ * The new Morpheus plugin project setting Enable Social Screen Separate Mode must be set to true to use this feature. When that is true additional render and output buffers will be allocated for the Social Screen.
+
+ * Blueprint functions for controlling the feature can be found by searching for 'SocialScreen'.
+
+ * Future work will replace this API with a more flexible cross platform one, and pursue optimizations of SocialScreen output.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..2498098f653a
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.CHN.udn
@@ -0,0 +1,50 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.2 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_2
+Order:0
+
+## 4.2.0 Release
+
+Released: 06/04/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.2.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.2.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2014/4_2)
+
+## 4.2.1 Hotfix
+
+Released: 06/17/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.2.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.2.1-release)
+
+Fixes:
+
+* Fixed texture streaming for static meshes with multiple LODs when exceeding the default 1gb texture pool.
+
+* Fixed Paper2D flipbook components and tile map actors not rendering, sprite color not taking effect.
+
+* [XB1] Fixed particles rendering as black when bounds were zero.
+
+* Fixed OnSuccess and OnFail outputs not triggering for AI Move To blueprint node.
+
+* Prevent triggers blocking projectiles in first-person template.
+
+* [iOS] Some projects would fail to launch on device.
+
+* [PS4] Packaging in shipping would not create executable.
+
+* [Mac] Added Subversion binaries to default install.
+
+## QFE for the 4.2.1 Hotfix
+
+If you are using the latest hotfix for this engine version and experience the issue described below, download and run this ‘quick fix’ to resolve the issue.
+
+* Fixes a crash that occurs with Blueprints that have soft and hard dependencies. ([report](https://answers.unrealengine.com/questions/70620/42-urgent-help-needed-unrecoverable.html))
+
+[Windows Download](http://cdn.unrealengine.com/qfe/QFE-FromCL-2121920-Shelve-2235825.exe](http://cdn.unrealengine.com/qfe/QFE-FromCL-2121920-Shelve-2235825.exe)
+
+[Mac Download](http://cdn.unrealengine.com/qfe/QFE-FromCL-2121920-Shelve-2235825_Mac.zip](http://cdn.unrealengine.com/qfe/QFE-FromCL-2121920-Shelve-2235825_Mac.zip)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.JPN.udn
index 9b5574b8ed22..eb4d30269d8a 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.2 Update Notes
+Title: アンリアル エンジン 4.2 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2014/4_2
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..e80b285b493b
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_2/Updates/UnrealEngine4_2UpdateNotes.KOR.udn
@@ -0,0 +1,50 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.2 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_2
+Order:0
+
+## 4.2.0 릴리즈
+
+릴리즈 날짜: 2014/06/04
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.2.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.2.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2014/4_2)
+
+## 4.2.1 핫픽스
+
+릴리즈 날짜: 2014/06/17
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.2.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.2.1-release)
+
+픽스:
+
+* 기본 1gb 텍스처 풀을 초과하는 다수의 LOD 가 있는 스태틱 메시의 텍스처 스트리밍을 수정했습니다.
+
+* Paper2D 플립북 컴포넌트 및 타일 맵 액터가 렌더링되지 않고, 스프라이트 컬러가 이펙트를 받지 않던 것을 고쳤습니다.
+
+* [XB1] 바운드가 제로인 경우 파티클이 검정으로 렌더링되던 것을 고쳤습니다.
+
+* OnSuccess 및 OnFail 출력이 AI Move To 블루프린트 노드를 발동시키지 않던 것을 고쳤습니다.
+
+* 일인칭 템플릿에서 트리거가 프로젝타일을 막지 못하도록 했습니다.
+
+* [iOS] 일부 프로젝트가 디바이스에서 실행에 실패하던 것을 고쳤습니다.
+
+* [PS4] Shipping 모드 패키징이 실행파일을 생성하지 못하던 것을 고쳤습니다.
+
+* [Mac] 기본 인스톨에 Subversion 바이너리를 추가했습니다.
+
+## 4.2.1 핫픽스 QFE
+
+이번 엔진 버전의 최신 핫픽스를 사용하다가 아래 이슈를 겪으시는 경우, 이 '퀵 픽스'를 다운로드하여 실행하면 이슈 해결이 가능합니다.
+
+* 소프트 및 하드 디펜던시를 갖는 블루프린트 관련 발생하는 크래시 픽스. ([리포트](https://answers.unrealengine.com/questions/70620/42-urgent-help-needed-unrecoverable.html))
+
+[윈도우 다운로드](http://cdn.unrealengine.com/qfe/QFE-FromCL-2121920-Shelve-2235825.exe](http://cdn.unrealengine.com/qfe/QFE-FromCL-2121920-Shelve-2235825.exe)
+
+[맥 다운로드](http://cdn.unrealengine.com/qfe/QFE-FromCL-2121920-Shelve-2235825_Mac.zip](http://cdn.unrealengine.com/qfe/QFE-FromCL-2121920-Shelve-2235825_Mac.zip)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..1b7e8b09a19a
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.CHN.udn
@@ -0,0 +1,48 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.3 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_3
+Order:0
+
+## 4.3.0 Release
+
+Released: 07/16/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.3.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.3.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2014/4_3)
+
+## 4.3.1 Hotfix
+
+Released: 07/29/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.3.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.3.1-release)
+
+Fixes:
+
+* Fixed: Japanese Localization
+
+* Fixed: PIE with Box BSP affected by Radial Force Actor WorldStatic
+
+* Fixed: PC to iOS workflow doesn't properly sign IPAs for distribution
+
+* Fixed: menu windows do not open when 'Enable Window Animations' is enabled
+
+* Fixed: Landscape Spline: Content created with 4.2 Crashes with 4.3
+
+* Fixed: only first UV channel is usable other channels are broken and textures will not be mapped
+
+* Fixed: Morpheus crashes on init
+
+## QFE for the 4.3.1 Hotfix
+
+If you are using the latest hotfix for this engine version and experience the issue described below, download and run this ‘quick fix’ to resolve the issue.
+
+* Fixes a crash that occurs with Blueprints that have soft and hard dependencies. ([report](https://answers.unrealengine.com/questions/70620/42-urgent-help-needed-unrecoverable.html))
+
+[Windows Download](http://cdn.unrealengine.com/qfe/QFE-FromCL-2226259-Shelve-2236052.exe](http://cdn.unrealengine.com/qfe/QFE-FromCL-2226259-Shelve-2236052.exe)
+
+[Mac Download](http://cdn.unrealengine.com/qfe/QFE-FromCL-2226259-Shelve-2236052_Mac.zip](http://cdn.unrealengine.com/qfe/QFE-FromCL-2226259-Shelve-2236052_Mac.zip)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.JPN.udn
index a99e0f67092b..a5359399c17e 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.3 Update Notes
+Title: アンリアル エンジン 4.3 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2014/4_3
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..09f0126ab2c3
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_3/Updates/UnrealEngine4_3UpdateNotes.KOR.udn
@@ -0,0 +1,48 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.3 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_3
+Order:0
+
+## 4.3.0 릴리즈
+
+릴리즈 날짜: 2014/07/16
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.3.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.3.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2014/4_3)
+
+## 4.3.1 핫픽스
+
+릴리즈 날짜: 2014/07/29
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.3.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.3.1-release)
+
+픽스:
+
+* 일본어 현지화
+
+* Radial Force Actor WorldStatic 에 영향받은 Box BSP 관련 PIE
+
+* PC 에서 iOS 작업방식에서 IPA 배포 사이닝이 제대로 되지 않음
+
+* 'Enable Window Animations' 옵션이 켜졌을 때 메뉴 창이 열리지 않음
+
+* 랜드스케이프 스플라인: 4.2 로 만든 콘텐츠가 4.3 에서 크래시
+
+* 첫 UV 채널만 사용되고 다른 채널은 깨지며 텍스처가 매핑되지 않음
+
+* Morpheus 초기화 크래시
+
+## 4.3.1 핫픽스 QFE
+
+이 엔진 버전의 최신 핫픽스를 사용하다가 아래 이슈를 겪으시는 경우, 이 '퀵 픽스'를 다운로드하여 실행하면 이슈 해결이 가능합니다.
+
+* 소프트 및 하드 디펜던시가 있는 블루프린트 관련 발생하는 크래시 픽스 ([리포트](https://answers.unrealengine.com/questions/70620/42-urgent-help-needed-unrecoverable.html))
+
+[윈도우 다운로드](http://cdn.unrealengine.com/qfe/QFE-FromCL-2226259-Shelve-2236052.exe](http://cdn.unrealengine.com/qfe/QFE-FromCL-2226259-Shelve-2236052.exe)
+
+[맥 다운로드](http://cdn.unrealengine.com/qfe/QFE-FromCL-2226259-Shelve-2236052_Mac.zip](http://cdn.unrealengine.com/qfe/QFE-FromCL-2226259-Shelve-2236052_Mac.zip)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..5b3f1ca8137c
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.CHN.udn
@@ -0,0 +1,70 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.4 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_4
+Order:0
+
+## 4.4.0 Release
+
+Released: 08/14/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.4.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.4.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2014/4_4)
+
+## 4.4.1 Hotfix
+
+Released: 08/26/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.4.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.4.1-release)
+
+Fixes:
+
+* Unreal Front End: Fixed a crash that occurred when using cooking-on-the-fly with MacNoEditor
+
+* Oculus Rift support has been updated to use the Oculus 0.4.1 Beta SDK
+
+* Fixed a crash when opening animations from the Military Weapons Asset Content Pack on the Marketplace
+
+* Fixed a bug where mouse handling was broken on Mac
+
+* Blueprints: Added a redirect to the base engine ini which allows existing content to point to the correct location for an enum, fixing a compatibility break
+
+* Fixed info.plist search order in UAT
+
+* Fixed a bug with audio in Couch Knights
+
+## 4.4.2 Hotfix
+
+Released: 09/09/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.4.2-release](https://github.com/EpicGames/UnrealEngine/tree/4.4.2-release)
+
+Fixes:
+
+* Fixed an error that could occur with Notify tracks in animation Montages.
+
+* Fixed an error that could cause the Mac Editor to become unresponsive when Slate Text Views were used
+
+* Fixed game plugin source being compiled with optimizations when Debug or DebugGame configuration is set.
+
+* Updated Vehicle Template with Oculus Rift support!
+
+## 4.4.3 Hotfix
+
+Released: 09/16/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.4.3-release](https://github.com/EpicGames/UnrealEngine/tree/4.4.3-release)
+
+Fixes:
+
+* Fixed a crash after loading a Blueprint with particular linked nodes set as a dependency of another Blueprint.
+
+* Fixed a .NET Framework SDK test dependency added in 4.4.1.
+
+* Added Xcode 6 support; please review the known issues.
+
+* Improved Oculus compatibility with the Vehicle template – fixed the camera setup and replaced the vehicle mesh
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.JPN.udn
index a5ae16089b37..761b9fe054ed 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.4 Update Notes
+Title: アンリアル エンジン 4.4 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2014/4_4
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..26f9ce0a12ea
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_4/Updates/UnrealEngine4_4UpdateNotes.KOR.udn
@@ -0,0 +1,70 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.4 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_4
+Order:0
+
+## 4.4.0 릴리즈
+
+릴리즈 날짜: 2014/08/14
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.4.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.4.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2014/4_4)
+
+## 4.4.1 핫픽스
+
+릴리즈 날짜: 2014/08/26
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.4.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.4.1-release)
+
+픽스:
+
+* Unreal Front End: MacNoEditor 로 cooking-on-the-fly 를 사용할 때 발생하던 크래시를 고쳤습니다.
+
+* Oculus Rift 지원이 Oculus 0.4.1 Beta SDK 를 사용하도록 업데이트되었습니다.
+
+* 마켓플레이스에서 Military Weapons Asset Content Pack 의 애니메이션을 열 때 발생하던 크래시를 고쳤습니다.
+
+* Mac 에서 마우스 처리가 깨지던 버그를 잡았습니다.
+
+* 블루프린트: base engine ini 로의 리디렉션을 추가하여 기존 콘텐츠가 enum 의 올바른 위치를 지정할 수 있도록 하여 호환성이 깨지던 문제를 해결했습니다.
+
+* UAT 에서 info.plist 검색 순서를 변경했습니다.
+
+* Couch Knights 의 오디오 버그를 잡았습니다.
+
+## 4.4.2 핫픽스
+
+릴리즈 날짜: 2014/09/09
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.4.2-release](https://github.com/EpicGames/UnrealEngine/tree/4.4.2-release)
+
+픽스:
+
+* 애니메이션 몽타주의 Notify 트랙 관련 발생할 수 있었던 오류를 고쳤습니다.
+
+* Mac 에디터에서 Slate Text Views 를 사용했을 때 반응 없음 현상을 유발할 수 있었던 오류를 고쳤습니다.
+
+* Debug 또는 DebugGame 구성이 설정되었을 때 게임 플러그인 소스가 최적화되어 컴파일되도록 수정했습니다.
+
+* Vehicle Template 에 Oculus Rift 가 지원되도록 업데이트했습니다!
+
+## 4.4.3 핫픽스
+
+릴리즈 날짜: 2014/09/16
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.4.3-release](https://github.com/EpicGames/UnrealEngine/tree/4.4.3-release)
+
+픽스:
+
+* 다른 블루프린트의 종속성으로 설정된 특정 링크 노드를 포함한 블루프린트를 로드한 뒤 발생하는 크래시를 고쳤습니다.
+
+* .NET Framework SDK 종속성 테스트를 4.4.1 에 추가했습니다.
+
+* Xcode 6 지원을 추가했습니다. 알려진 문제점을 검토해 보세요.
+
+* Vehicle 템플릿 관련 Oculus 호환성을 개선시켰습니다. 카메라 셋업 수정 및 비히클 메시를 대체했습니다.
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..25fc9792b727
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.CHN.udn
@@ -0,0 +1,52 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.5 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_5
+Order:0
+
+## 4.5.0 Release
+
+Released: 10/14/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.5.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.5.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2014/4_5)
+
+## 4.5.1 Hotfix
+
+Released: 10/23/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.5.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.5.1-release)
+
+Fixes:
+
+* The default landscape material now correctly renders on VehicleGame.
+
+* Fixed an error when using Hot-Reload with XCode.
+
+* Fixed an error when packaging projects on Linux OS.
+
+* Corrected bugs that occurred on Nvidia devices in 10.10 Yosemite.
+
+* Fixed an error while attempting to join a match of Shootergame while on Linux OS.
+
+* Fixed the UI in Shootergame to be properly masked on Linux OS.
+
+* Material Parameter Collections now work properly when called through Blueprints.
+
+* Mouse input has been adjusted to a more consistent and less sensitive state.
+
+* Resolved some issues discovered with retargeting animations with Epic compatible skeletons.
+
+* Fixed an issue with iOS certificate validation while packaging projects.
+
+## QFE for the 4.5.1 Hotfix
+
+If you are using the latest hotfix for this engine version and experience the issue described below, download and run this ‘quick fix’ to resolve the issue.
+
+* Fixes issue where editor incorrectly detects that iTunes isn’t installed and will not allow any iOS Launch On or Package.
+
+[Windows Download](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-2370532.exe](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-2370532.exe)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.JPN.udn
index 5f22ccad2f2f..765f83c9658c 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.5 Update Notes
+Title: アンリアル エンジン 4.5 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2014/4_5
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..c2dc889ff8f1
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_5/Updates/UnrealEngine4_5UpdateNotes.KOR.udn
@@ -0,0 +1,52 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.5 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_5
+Order:0
+
+## 4.5.0 릴리즈
+
+릴리즈 날짜: 2014/10/14
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.5.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.5.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2014/4_5)
+
+## 4.5.1 핫픽스
+
+릴리즈 날짜: 2014/10/23
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.5.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.5.1-release)
+
+픽스:
+
+* 이제 VehicleGame 에 기본 랜드스케이프 머티리얼이 제대로 렌더링됩니다.
+
+* XCode 에서 핫 리로드를 사용할 때의 오류를 고쳤습니다.
+
+* 리눅스 OS 에서 프로젝트 패키지를 만들 때의 오류를 고쳤습니다.
+
+* 10.10 Yosemite 에서 Nvidia 디바이스에 발생하던 버그를 잡았습니다.
+
+* 리눅스 OS 에서 Shootergame 경기 참가를 시도할 때 발생하던 오류를 고쳤습니다.
+
+* Shootergame 의 UI 가 리눅스 OS 에서 제대로 마스킹되도록 수정했습니다.
+
+* Material Parameter Collection 이 이제 블루프린트를 통해 호출해도 정상 작동합니다.
+
+* 마우스 입력의 일관성을 향상시키고 덜 민감한 상태로 조정했습니다.
+
+* 에픽 호환 스켈레톤 포함 애니메이션 리타게팅 관련 발견된 이슈를 몇 가지 해결했습니다.
+
+* 프로젝트 패키지 작업 도중 iOS Certificate 인증 관련 이슈를 수정했습니다.
+
+## 4.5.1 핫픽스 QFE
+
+이 엔진 버전 최신 핫픽스를 사용하면서 아래 이슈를 겪으시는 경우, 이 '퀵 픽스' 를 다운로드하여 실행하면 이슈 해결이 가능합니다.
+
+* iTunes 가 설치되지 않아 iOS 에서 실행 또는 패키지 옵션을 사용할 수 없도록 에디터에서 잘못 감지되는 이슈에 대한 픽스입니다.
+
+[윈도우 다운로드](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-2370532.exe](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-2370532.exe)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..1163ab83653d
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.CHN.udn
@@ -0,0 +1,62 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.6 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_6
+Order:0
+
+## 4.6.0 Release
+
+Released: 12/03/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.6.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.6.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2014/4_6)
+
+## 4.6.1 Hotfix
+
+Released: 12/16/2014
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.6.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.6.1-release)
+
+Fixes:
+
+* ContentExamples Media map movie no longer renders black.
+
+* ContentExamples Media map no longer shows the UDK splash screen.
+
+* ContentExamples Media map is no longer missing source video.
+
+* XBox One now boots from Visual Studio correctly.
+
+* Fixed an error that caused material If nodes to break.
+
+* Fixed a bug that was causing new and converted non-ascii text projects to crash.
+
+* Corrected a bug that prevented composite decorators from being opened in Behavior Trees.
+
+* Event Nodes can now be called for Event Dispatchers.
+
+* Fixed an error that prevented the creation of new events in the AnimBP Eventgraph for new Anim Notifies.
+
+* Corrected Static Lighting on InstancedStaticMeshes.
+
+* Corrected the adb path and device serial number for Android packaged install batch files
+
+* Fixed an error that caused crashes on Android when Touch events were called too early.
+
+* Fixed a bug in pathfinding when default querying extent was not large enough on the Z axis.
+
+* InstancedStaticMesh now renders correctly on mobile devices.
+
+* Corrected a bug with animation retargeting adversely affecting looping animations.
+
+## QFE for the 4.6.1 Hotfix
+
+If you are using the latest hotfix for this engine version and experience the issue described below, download and run this ‘quick fix’ to resolve the issue.
+
+* Fixes issue where editor incorrectly detects that iTunes isn’t installed and will not allow any iOS Launch On or Package.
+
+[Windows Download](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-2405993.exe](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-2405993.exe)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.JPN.udn
index 483d6a372343..d43c8221178c 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.6 Update Notes
+Title: アンリアル エンジン 4.6 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2014/4_6
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..44b3ab626052
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_6/Updates/UnrealEngine4_6UpdateNotes.KOR.udn
@@ -0,0 +1,62 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.6 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2014/4_6
+Order:0
+
+## 4.6.0 릴리즈
+
+릴리즈 날짜: 2014/12/03
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.6.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.6.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2014/4_6)
+
+## 4.6.1 핫픽스
+
+릴리즈 날짜: 2014/12/16
+
+Github: [https://github.com/EpicGames/UnrealEngine/tree/4.6.1-release](https://github.com/EpicGames/UnrealEngine/tree/4.6.1-release)
+
+픽스:
+
+* ContentExamples Media 맵 무비가 더이상 검정으로 렌더링되지 않습니다.
+
+* ContentExamples Media 맵이 더이상 UDK 스플래시 화면을 표시하지 않습니다.
+
+* ContentExamples Media 맵이 더이상 소스 비디오가 빠져있지 않습니다.
+
+* XBox One 이 이제 Visual Studio 에서 정상 부팅됩니다.
+
+* 머티리얼 If 노드를 깨지게 만들던 오류를 고쳤습니다.
+
+* ascii 이외 텍스트 프로젝트를 새로 만들거나 변환한 경우 크래시가 나던 버그를 잡았습니다.
+
+* 비헤이비어 트리에서 컴포짓 데코레이터를 열 수 없게 만들던 버그를 잡았습니다.
+
+* 이제 Event Nodes 를 Event Dispatchers 에 대해 호출할 수 있습니다.
+
+* 새로운 애님 노티파이에 대해 애님 블루프린트 이벤트 그래프에서 새 이벤트 생성을 하지 못하게 막던 오류를 고쳤습니다.
+
+* InstancedStaticMeshes 의 스태틱 라이팅을 고쳤습니다.
+
+* 안드로이드 패키징된 인스톨 배치 파일에 대한 adb 경로와 디바이스 시리얼 번호를 수정했습니다.
+
+* 안드로이드에서 Touch 이벤트를 너무 일찍 호출했을 때 크래시를 유발하던 오류를 고쳤습니다.
+
+* Z 축 기본 쿼리 크기가 충분히 크지 않을 때의 길찾기 버그를 잡았습니다.
+
+* 이제 모바일 디바이스에서 InstancedStaticMesh 가 제대로 렌더링됩니다.
+
+* 애니메이션 리타게팅이 루핑 애니메이션에 반대로 영향을 끼치던 버그를 잡았습니다.
+
+## 4.6.1 핫픽스용 QFE
+
+이 엔진 버전의 최신 핫픽스를 사용하면서 아래 이슈를 겪으시는 경우, 이 '퀵 픽스'를 다운로드하여 실행하면 이슈 해결이 가능합니다.
+
+* iTunes 가 설치되지 않아 iOS 에서 실행 또는 패키징 작업을 할 수 없다고 잘못 감지되던 에디터 이슈에 대한 픽스입니다.
+
+[윈도우 다운로드](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-2405993.exe](https://s3.amazonaws.com/unrealengine/qfe/QFE-FromCL-2405993.exe)
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..3c24e06f5d3d
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.CHN.udn
@@ -0,0 +1,362 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.7 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2015/4_7
+Order:0
+
+## 4.7.0 Release
+
+Released: 02/24/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2015/4_7)
+
+## 4.7.1 Hotfix
+
+Released: 02/27/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.1-release)
+
+Fixes:
+
+* UE-6706 Text does not scale when using the "Draw Text" node in a HUD blueprint
+
+* UE-7139 Crash caused by "/Game/Maps/UEDPIE_2_Menu.Menu not cleaned up by garbage collection!"
+
+* UE-7497 No Graphs are displayed in Visual Logger after enabling them
+
+* UE-9745 Color picker does not work.
+
+* UE-10016 Using the Merge Blueprints feature crashes the editor
+
+* UE-10114 LevelScript should not get a Overlap event added by default
+
+* UE-10137 Redirected graph nodes cause a crash in IsDataOnlyBlueprint
+
+* UE-10141 Vehicle code project has default texture in packaged game
+
+* UE-10143 High reflectivity on all materials in SunTemple on Android
+
+* UE-10167 Undoing a pasted custom event node with an input pin results in a crash
+
+* UE-10169 When installing VS through the editor, invoke installer with a command-line parameter that enables Microsoft's Telemetry
+
+* UE-10257 Mac to Android first time device is plugged in, after installing tadp user still has to place sdk paths
+
+* UE-10260 Pre-existing Foliage stays at highest LOD
+
+* UE-10277 Android fails to show as valid platform for Mac in UFE until editor is opened
+
+* UE-10283 TargetArray nodes are reported as invalid if played in Standalone mode but not in PIE
+
+* UE-10298 Creating an exposed variable does not always update correctly to the bp's Details panel
+
+* UE-10305 Set Timer node does not stop the timer if it is set to zero by the Custom Event
+
+* UE-10313 Crash playing animation montage in reverse
+
+* UE-10319 Crash attempting to edit a Struct Transform's rotation value as a slider
+
+* UE-10406 All shadow casting on Paper2D sprites is broken (no sprites cast shadows)
+
+* UE-10410 Reparenting an Actor blueprint crashes the editor
+
+* UE-10510 Crash occurs applying instance changes to blueprint when instances have different changes
+
+* UE-10524 Icon reports failure to add if creating a project with source control enabled
+
+* UE-10529 TappyChicken: HTML5: Firefox: The Fullscreen button now displays the screen offcentre (large black border on the right)
+
+* UE-10537 Editor crash when child component has physics enabled and is moved
+
+* UE-10562 Empty if blocks are generated in shaders and can cause driver compiler crashes on Android
+
+* UE-10646 Crash occurs copying a non-scene component in component window
+
+* UE-10650 Possible crash in USceneComponent::UpdatePhysicsVolume
+
+* UE-10658 Excessive memory consumption in some circumstances due to off-by-1 count error
+
+* UE-10732 Actor's attached to an Actor with a blueprint created root component don't stay in correct relative position when moved
+
+* UE-10793 GitHub 851 : Update .gitignore - ignore FeaturePacks
+
+* UE-10812 Comparing BB entries doesn't work
+
+* UE-10822 Crash clearing the undo buffer during blueprint merge
+
+* UE-10826 Crash compiling Level BP after deleting event
+
+## 4.7.2 Hotfix
+
+Released: 03/04/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.2-release)
+
+Fixes:
+
+* UE-11207 ios launch fail after upgrading to 4.7.1, provision not found, signing key not found
+
+* UE-11202 Horizontal navigation in Notify timelines is super-frustrating
+
+* UE-11130 Cannot build code projects for ios
+
+* UE-11102 Mac editor sometimes crashes in FMacWindow::IsMaximized when creating a new window
+
+* UE-11046 Crash in FLandscapeComponentSceneProxy::GetStaticBatchElementVisibility with tiny component size
+
+* UE-11023 Opening the engine crashes: Assert failed: GConfig->GetInt
+
+* UE-11018 Synced BlackBoard keys don't work
+
+* UE-8589 MatineeFightScene has no sound on mac
+
+* UE-8550 Audio cuts out during scene transitions in the Particle Effects cinematic
+
+## 4.7.3 Hotfix
+
+Released: 03/17/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.3-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.3-release)
+
+Fixes:
+
+* UE-11029 Crash after converting to 4.7.0 from 4.6.1
+
+* UE-11404 Second player is not affecting by any gamepad input.
+
+* UE-11402 Editor will not build if you have PS4 code, and ONLY SDK 2.0
+
+* UE-11485 Compiling the engine with Xcode 6.3 beta generates errors
+
+* UE-10128 Preview Static mesh does not translate with socket
+
+* UE-11315 Bugg 38187: SIGSEGV: invalid attempt to access memory at address 0x1010102
+
+* UE-10569 Crash when opening maps and blueprints in user's project
+
+* UE-10708 Build failing for users project with all platforms
+
+* UE-11312 Mac Bugg 38298: SIGSEGV: invalid attempt to access memory at address 0x3
+
+* UE-11369 Crash when clicking on a "Two Bone IK" node
+
+* UE-11185 A function in a Blueprint Function Library that references another function in that library cannot be saved after closing and reopening the project
+
+* UE-11322 Crash when refreshing/moving/deleting BP nodes
+
+* UE-11743 4.7 does not support Morpheus under SDK 2.0
+
+* UE-11302 Cannot deploy to iPad
+
+* UE-11692 Crash when rendering hit proxies
+
+* UE-11304 Can't compile CrossCompilerTools due to missing file
+
+* UE-11484 Fix Xcode 6.3 beta clang issues.
+
+* UE-11393 Tiled landscape import' creates overlapped landscape components
+
+* UE-11017 GitHub 857 : Fixed native enum support in blackboard component.
+
+* UE-10697 Crash when opening Post Process Material with Live Data Preview running in Profiler
+
+* UE-11225 Closing Chunk Parameters tabs with chunk selected and reopening Destructible will cause crash
+
+* UE-10149 Project crashes on load after modifying Parent Blueprints
+
+* UE-11244 Crash when renaming assets from the Persona asset browser
+
+* UE-11272 Blueprint compile error when upgrading project
+
+* UE-11319 Crash on project open (Assertion Failed)
+
+* UE-11401 Need more logging in the Deployment Server
+
+* UE-11292 Editor Crashes when clicking on Transform(Modify) Bone node in Content Examples
+
+* UE-10900 Crash in FBatchingSPDI::DrawMesh in stand alone game
+
+* UE-11505 Crash launching Blueprint Office standalone
+
+* UE-10856 Crash on dragging static meshes into the scene
+
+* UE-11298 Crash with Distance Fields while using World Composition
+
+* UE-11422 GitHub 894 : wrong parsing of the return of adb cmd: device
+
+* UE-11447 Player Character does not collide with landscape
+
+* UE-11638 GetActorsPerception useless in 4.7
+
+* UE-11589 GitHub 909 : Update .gitignore
+
+* UE-11605 Overridden components are broken in static Actors in cooked build
+
+* UE-11666 UberGraphFunction should be preloaded in Class::Link
+
+* UE-11711 Severe log spam when particles collide with static objects
+
+* UE-11640 AI Move To issues in 4.7
+
+* UE-11360 Placing a ' - ' in theproject name will cause the Android build to fail
+
+* UE-11647 Denver Tegra K1 (Nexus 9) disables rendering thread causing bad performance
+
+* UE-11383 Screen orientation is ignored on Android devices.
+
+* UE-11460 A level will not save if a Blueprint that uses a Blueprint Component with an Event Dispatcher is placed in it
+
+* UE-11600 Performing a hot reload on a project that contains an FStringAssetReference will crash the Editor.
+
+* UE-11707 Implement workaround for Localization being broken for a number of editor strings
+
+* UE-11592 Cook on the fly Android projects crash after launching on the device.
+
+* UE-11739 In some circumstances CrowdManager doesn't get created.
+
+* UE-11321 Crash when creating landscape
+
+* UE-11777 BP-implemented BT decorators end up thinking they're not on active branch
+
+* UE-11826 MediaPlayer14 class lookup crash with distribution builds
+
+* UE-11840 Launch on Nexus 9 fails due to unknown arm64-v8a architecture
+
+* UE-11893 Editor crashes when dragging a docked window
+
+## 4.7.4 Hotfix
+
+Released: 04/02/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.4-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.4-release)
+
+Fixes:
+
+* UE-11891 MoveToActor doesn't update AI's path on goal actor's move
+
+* UE-11997 Navigation crashing on PIE in absence of NavOctree
+
+* UE-12108 [CrashReport] Ensure in UPrimitiveComponent::SetCanEverAffectNavigation()
+
+* UE-12106 [CrashReport] Saving after blueprint change causes crash.
+
+* UE-12443 [CrashReport] Crash in blueprints during autosave
+
+* UE-9417 It is easy to make a comment box unselectable when it overlaps with another comment block
+
+* UE-10891 Force deleting a blueprint that is parented to another blueprint causes crash
+
+* UE-10865 4.6.1 to 4.7 conversion crash "Assertion failed: Pin != nullptr ...K2Node_DynamicCast.cpp]"
+
+* UE-11523 DateTime variables will cause a crash on compile
+
+* UE-11011 Crash (assert) when accessing a property in a blueprint
+
+* UE-12073 [CrashReport] Disconnecting/changing blueprint nodes causes crash.
+
+* UE-12206 GitHub 944 : UE-12128: Properly save structs when struct field default value is different
+
+* UE-12962 Editor crashes after clicking on "Apply Instance Change to Blueprint" button
+
+* UE-10574 Component properties of template not propagated when SpawnActor called
+
+* UE-12109 [CrashReport] Crash while attempting to load a project
+
+* UE-11368 uv scale of materials on hollow BSP does not persist after building geometry
+
+* UE-4743 Crash when moving a sprite imported as part of a spritesheet to another folder if the sprite names had invalid character
+
+* UE-11372 Access Violation in UE4Editor_SlateCore!TWeakPtr when changing view options
+
+* UE-9824 Widget class is replaced with a placeholder class when reloaded
+
+* UE-10040 Copy/Paste a button inside of another button then attempting to move the pasted button crashes editor
+
+* UE-11204 Crash when returning to viewport from immersive mode with an editor window tabbed beneath
+
+* UE-12915 Crash when using static lighting in foliage
+
+* UE-7213 Crash occurred trying to cycle gizmo in Persona Anim BP Viewport
+
+* UE-9982 Sprites with non-center pivots can be invisible in thumbnail renders
+
+* UE-12196 Automatic collision generation is incorrectly rotated for sprites that were imported as rotated from a sprite sheet
+
+* UE-12041 Sprite sheets with modified textures don't reimport correctly
+
+* UE-7918 Sprites don't initialize PixelsPerUnrealUnit in cooked builds, causing invalid values for GetSocketLocation, etc... for assets that have Pixels/uu of 2.56
+
+* UE-11903 Crash closing ElementalDemo game in opengl
+
+* UE-12150 Crash launching PIE when sublevel contains landscape in hidden level
+
+* UE-12111 [CrashReport] Crash after undoing/deleting landscape.
+
+* UE-12433 Editor crashes when toggling off visibility for a sublevel that contains a landscape
+
+* UE-11815 [CrashReport] Crash while attempting to connect iOS device.
+
+* UE-12165 Morpheus crashes occasionally while running
+
+* UE-12209 Canvas items are not drawn correctly in Morpheus
+
+* UE-12211 Morpheus tears visibly even when VSync is on.
+
+* UE-12212 Morpheus runs HMD distortion shader an extra time.
+
+* UE-12324 Morpheus rendering broken when console rendering is on the screen.
+
+* UE-11302 Cannot deploy to iPad
+
+* UE-12063 Cannot package project on Linux
+
+* UE-12210 Morpheus IPD is applied incorrectly.
+
+* UE-13048 Xbox projects (code and BP) launch to black screen, logs show success
+
+* UE-12213 Landscape material reverts to default when launched onto an Android device
+
+* UE-12542 MAC: Very slow texture compression times in Editor
+
+* UE-12235 Large performance regression in shadow rendering.
+
+* UE-6190 UVs skewed in Mobile Preview mode for some skeletal meshes
+
+* UE-11865 Open a level that contains instanced meshes (with built lighting) will crash the editor
+
+* UE-10664 Crash in OpenGL3 and OpenGL4 occurs when opening any map after having a map loaded with foliage.
+
+* UE-11810 [CrashReport] Crash in ULevel::BuildStreamingData casting Texture
+
+* UE-11434 New user crashes on Editor load
+
+* UE-12228 Invalid error messages in crashes
+
+## 4.7.5 Hotfix
+
+Released: 04/08/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.5-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.5-release)
+
+Fixes:
+
+* UE-13250 Multiplayer Shootout project sample crashes on start
+
+* UE-13274 Projects crashing on launch after converting from 4.7.3 to 4.7.4
+
+* UE-11828 HydroErosion on landscape crashes on Linux
+
+## 4.7.6 Hotfix
+
+Released: 04/20/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.6-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.6-release)
+
+Fixes:
+
+* UE-13664 MAC: Crash on startup
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.JPN.udn
index 972f4ee957cf..9683b4c8a40d 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.7 Update Notes
+Title: アンリアル エンジン 4.7 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2015/4_7
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..e4f0ae20d762
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_7/Updates/UnrealEngine4_7UpdateNotes.KOR.udn
@@ -0,0 +1,362 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.7 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2015/4_7
+Order:0
+
+## 4.7.0 릴리즈
+
+릴리즈 날짜: 2015/02/24
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2015/4_7)
+
+## 4.7.1 핫픽스
+
+릴리즈 날짜: 2015/02/27
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.1-release)
+
+픽스:
+
+* UE-6706 HUD 블루프린트에서 Draw Text 노드를 사용할 때 텍스트 스케일이 적용되지 않음
+
+* UE-7139 "가비지 콜렉션이 /Game/Maps/UEDPIE_2_Menu.Menu 클린업 하지 못함!" 으로 크래시 유발
+
+* UE-7497 그래프를 활성화시켜도 비주얼 로거에 표시되지 않음
+
+* UE-9745 색 선택기가 작동하지 않음
+
+* UE-10016 Merge Blueprints 기능을 사용하면 에디터 크래시
+
+* UE-10114 LevelScript 에 Overlap 이벤트가 기본으로 추가되지 않아야
+
+* UE-10137 리디렉션된 그래프 노드가 IsDataOnlyBlueprint 에서 크래시 유발
+
+* UE-10141 비히클 코드 프로젝트의 패키징된 게임에 기본 텍스처
+
+* UE-10143 안드로이드에서 SunTemple 의 모든 머티리얼이 반사성 높음
+
+* UE-10167 입력핀 없는 커스텀 이벤트 노드 붙여넣기를 되돌리면 크래시
+
+* UE-10169 에디터를 통해 VS 를 설치할 때, Microsoft 의 Telemetry 를 활성화시키는 명령줄 파라미터를 포함시켜 인스톨러 실행
+
+* UE-10257 Mac 에 안드로이드 디바이스를 처음 연결할 때, tadp 를 설치한 후에도 여전히 sdk 경로를 직접 입력해야 함
+
+* UE-10260 미리 존재하던 폴리지가 최고 LOD 에 유지
+
+* UE-10277 Mac 에서 에디터를 열 때까지 UFE 에서 안드로이드고 유효 플랫폼으로 표시되지 않음
+
+* UE-10283 PIE 가 아닌 독립형 모드로 플레이할 때 TargetArray 노드가 유효하지 않은 것으로 보고
+
+* UE-10298 노출 변수를 만드는 것이 블루프린트 디테일 패널을 항상 정확히 업데이트하지 않음
+
+* UE-10305 커스텀 이벤트에서 Set Timer 노드를 0 으로 설정해도 타이머가 멈추지 않음
+
+* UE-10313 애니메이션 몽타주를 거꾸로 재생할 때 크래시
+
+* UE-10319 Struct Transform 의 회전 값을 슬라이더로 편집 시도할 때 크래시
+
+* UE-10406 Paper2D 의 모든 섀도우 캐스팅이 깨짐 (스프라이트가 그림자를 드리우지 않음)
+
+* UE-10410 액터 블루프린트 부모를 변경하면 에디터 크래시
+
+* UE-10510 인스턴스에 여러가지 변경이 있을 때 블루프린트에 인스턴스 변경사항을 적용하면 크래시
+
+* UE-10524 소스 콘트롤을 켠 상태에서 프로젝트를 생성하면 아이콘 추가에 실패했다고 보고
+
+* UE-10529 TappyChicken: HTML5: Firefox: 전체화면 버튼이 화면 중심에서 벗어나 표시 (오른쪽에 커다란 검정 테두리)
+
+* UE-10537 자손 컴포넌트에 피직스가 켜져 있는데 움직이면 에디터 크래시
+
+* UE-10562 셰이더에서 블록이 생성된 경우 공백이고, 안드로이드에서 드라이버 컴파일러 크래시 유발
+
+* UE-10646 컴포넌트 창에 씬 컴포넌트 이외의 것을 복사하면 크래시
+
+* UE-10650 USceneComponent::UpdatePhysicsVolume 에 크래시 발생 가능
+
+* UE-10658 카운트 1 오차 오류로 인해 특정 상황에서 과도한 메모리 소모
+
+* UE-10732 블루프린트 생성된 루트 컴포넌트가 있는 액터에 붙은 액터가 움직이면 상대 위치가 틀려짐
+
+* UE-10793 GitHub 851 : .gitignore 업데이트 - FeaturePacks 무시
+
+* UE-10812 BB 항목 비교가 작동하지 않음
+
+* UE-10822 블루프린트 병합 도중 되돌리기 버퍼를 지우면 크래시
+
+* UE-10826 이벤트를 지운 후 레벨 BP 를 컴파일면 크래시.Crash compiling Level BP after deleting event
+
+## 4.7.2 핫픽스
+
+릴리즈 날짜: 2015/03/04
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.2-release)
+
+픽스:
+
+* UE-11207 4.7.1 업그레이드 이후 iOS 실행 실패. provision 도 signing key 도 찾지 못함
+
+* UE-11202 Notify 타임라인에서 가로 이동이 매우 좌절스러움
+
+* UE-11130 ios 용 코드 프로젝트 빌드 불가
+
+* UE-11102 Mac 에디터가 가끔 새 창을 만들 때 FMacWindow::IsMaximized 에서 크래시
+
+* UE-11046 컴포넌트 크기가 아주 작을 때 FLandscapeComponentSceneProxy::GetStaticBatchElementVisibility 에서 크래시
+
+* UE-11023 엔진을 열 때 크래시: Assert 실패: GConfig->GetInt
+
+* UE-11018 싱크된 BlackBoard 키가 작동하지 않음
+
+* UE-8589 MatineeFightScene 가 mac 에서 사운드가 나지 않음
+
+* UE-8550 파티클 이펙트 시네마틱에서 씬 전환 도중 오디오 컷이 잘림
+
+## 4.7.3 핫픽스
+
+릴리즈 날짜: 2015/03/17
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.3-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.3-release)
+
+픽스:
+
+* UE-11029 4.6.1 에서 4.7.0 으로 변환한 이후 크래시
+
+* UE-11404 두 번째 플레이어가 게임패드 입력을 받지 못함
+
+* UE-11402 PS4 코드와 SDK 2.0 만 있을 때 에디터가 빌드되지 않음
+
+* UE-11485 Xcode 6.3 beta 로 엔진을 컴파일하면 오류 생성
+
+* UE-10128 프리뷰 스태틱 메시가 소켓과 함께 이동되지 않음
+
+* UE-11315 Bugg 38187: SIGSEGV: 유효하지 않은 0x1010102 주소 메모리 접근 시도
+
+* UE-10569 유저 프로젝트의 맵 및 블루프린트를 열 때 크래시
+
+* UE-10708 모든 플랫폼으로 유저 프로젝트 빌드 실패
+
+* UE-11312 Mac Bugg 38298: SIGSEGV: 유효하지 않은 0x3 주소 메모리 접근 시도
+
+* UE-11369 "Two Bone IK" 노드에 클릭하면 크래시
+
+* UE-11185 Blueprint Function Library 의 함수 중 그 라이브러리의 다른 함수를 레퍼런싱한 함수는 프로젝트를 닫고 다시 연 이후 저장할 수 없음
+
+* UE-11322 BP 노드 새로고침/이동/삭제 후 크래시
+
+* UE-11743 4.7 에서 SDK 2.0 이하 Morpheus 지원하지 않음
+
+* UE-11302 iPad 에 디플로이 불가
+
+* UE-11692 히트 프록시를 렌더링할 때 크래시
+
+* UE-11304 빠진 파일이 있어 CrossCompilerTools 컴파일 불가
+
+* UE-11484 Xcode 6.3 beta clang 이슈 픽스
+
+* UE-11393 타일드 랜드스케이프 임포트가 오버랩된 랜드스케이프 컴포넌트 생성
+
+* UE-11017 GitHub 857 : 블랙보드 컴포넌트의 네이티브 enum 지원 수정
+
+* UE-10697 프로파일러에서 라이브 데이터 프리뷰를 실행한 채 포스트 프로세스 머티리얼을 열면 크래시
+
+* UE-11225 청크를 선택한 채 청크 파라미터 탭을 닫고 디스트럭터블을 다시 열면 크래시
+
+* UE-10149 부모 블루프린트 변경 이후 프로젝트를 로드하면 크래시
+
+* UE-11244 페르소나 애셋 브라우저에서 애셋 이름을 변경하면 크래시
+
+* UE-11272 프로젝트를 업그레이드할 때 블루프린트 컴파일 오류
+
+* UE-11319 프로젝트를 열 때 크래시 (어서트 실패)
+
+* UE-11401 디플로이먼트 서버에 로그 추가 필요
+
+* UE-11292 Content Examples 의 Transform(Modify) Bone 노드를 클릭하면 에디터 크래시
+
+* UE-10900 독립형 게임에서 FBatchingSPDI::DrawMesh 크래시
+
+* UE-11505 Blueprint Office 독립형 실행하면 크래시
+
+* UE-10856 스태틱 메시를 씬에 끌어 놓으면 크래시
+
+* UE-11298 World Composition 사용 도중 Distance Fields 관련 크래시
+
+* UE-11422 GitHub 894 : adb cmd: device 의 반환 값 잘못된 해석
+
+* UE-11447 Player Character 가 랜드스케이프와 충돌하지 않음
+
+* UE-11638 GetActorsPerception 이 4.7 에서 무용지물
+
+* UE-11589 GitHub 909 : .gitignore 업데이트
+
+* UE-11605 오버라이드한 컴포넌트가 쿠킹된 빌드의 스태틱 액터에서 깨짐
+
+* UE-11666 UberGraphFunction 은 Class::Link 에서 미리 로드되어야 함
+
+* UE-11711 파티클이 스태틱 오브젝트와 충돌할 때 심각한 로그 스팸
+
+* UE-11640 AI Move To 이슈가 4.7 에서 발생
+
+* UE-11360 프로젝트 이름에 ' - ' 를 넣으면 안드로이드 빌드 실패 유발
+
+* UE-11647 Denver Tegra K1 (Nexus 9) 에서 악성 퍼포먼스를 유발하는 렌더링 스레드 비활성화
+
+* UE-11383 안드로이드 디바이스에서 화면 오리엔테이션이 무시됨
+
+* UE-11460 안에 이벤트 디스패처가 배치된 블루프린트 컴포넌트를 사용하는 블루프린트가 있는 경우 레벨이 저장되지 않음
+
+* UE-11600 FStringAssetReference 가 들어있는 프로젝트에서 핫 리로드를 실행하면 에디터 크래시
+
+* UE-11707 다수의 에디터 스트링 현지화가 깨지던 부분에 대한 우회법 구현
+
+* UE-11592 안드로이드 프로젝트의 cook-on-the-fly 가 디바이스에서 실행 이후 크래시
+
+* UE-11739 특정 환경에서 CrowdManager 가 생성되지 않음
+
+* UE-11321 랜드스케이프를 생성할 때 크래시
+
+* UE-11777 BP 구현된 BT 데코레이터가 활성 브랜치에 있지 않다고 생각하게 됨
+
+* UE-11826 MediaPlayer14 클래스 룩업이 배포 빌드에서 크래시
+
+* UE-11840 Nexus 9 에서 실행하면 알려지지 않은 arm64-v8a 아키텍처로 인해 실패
+
+* UE-11893 도킹된 창을 드래그할 때 에디터 크래시
+
+## 4.7.4 핫픽스
+
+릴리즈 날짜: 2015/04/02
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.4-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.4-release)
+
+픽스:
+
+* UE-11891 MoveToActor 가 골 액터 이동 시 AI 경로를 업데이트하지 않음
+
+* UE-11997 NavOctree 부재 시 PIE 의 내비게이션 크래시
+
+* UE-12108 [CrashReport] UPrimitiveComponent::SetCanEverAffectNavigation() 에서 Ensure 발생
+
+* UE-12106 [CrashReport] 블루프린트 변경 이후 저장하면 크래시 유발
+
+* UE-12443 [CrashReport] 자동저장 도중 블루프린트 크래시
+
+* UE-9417 코멘트 박스가 다른 코멘트 블록에 겹칠 때 선택할 수 없는 경우가 많음
+
+* UE-10891 다른 블루프린트의 부모 블루프린트를 강제 삭제하면 크래시 유발
+
+* UE-10865 4.6.1 에서 4.7 변환 시 "어서트 실패: Pin != nullptr ...K2Node_DynamicCast.cpp]"
+
+* UE-11523 DateTime 변수가 컴파일 시 크래시 유발
+
+* UE-11011 블루프린트의 프로퍼티 접근 시 크래시 (어서트)
+
+* UE-12073 [CrashReport] 블루프린트 노드 연결끊기/변경 시 크래시 유발
+
+* UE-12206 GitHub 944 : UE-12128: struct 칸 기본 값이 다를 때 struct 제대로 저장
+
+* UE-12962 "Apply Instance Change to Blueprint" (인스턴스 변경사항을 블루프린트에 저장) 버튼을 클릭한 이후 에디터 크래시
+
+* UE-10574 템플릿의 컴포넌트 프로퍼티가 SpawnActor 를 호출했을 때 전파되지 않음
+
+* UE-12109 [CrashReport] 프로젝트 로드 시도 도중 크래시
+
+* UE-11368 속이 빈 BSP 의 머티리얼 UV 스케일이 지오메트리 빌드 이후 유지되지 않음
+
+* UE-4743 스프라이트 시트의 일부로 임포트된 스프라이트를 다른 폴더로 옮길 때 그 스프라이트 이름에 잘못된 캐릭터가 있는 경우 크래시
+
+* UE-11372 뷰 옵션을 변경할 때 UE4Editor_SlateCore!TWeakPtr 에서 Access Violation
+
+* UE-9824 위젯 클래스가 리로드 시 플레이스홀더 클래스로 대체
+
+* UE-10040 다른 버튼 안에 한 버튼을 복사/붙여넣기 한 뒤 붙여넣은 버튼을 이동하려 하면 에디터 크래시
+
+* UE-11204 뷰포트 아래 에디터 창을 탭으로 달고 몰입 모드에서 뷰포트로 돌아오면 크래시
+
+* UE-12915 폴리지에서 스태틱 라이팅을 사용하면 크래시
+
+* UE-7213 페르소나 애님 BP 뷰포트에서 기즈모 순환하면 크래시
+
+* UE-9982 피벗이 중심에 있지 않은 스프라이트가 썸네일 렌더링에 안보일 수 있음
+
+* UE-12196 자동 콜리전 생성 기능이 스프라이트 시트에서 회전된 것으로 임포트된 스프라이트에 잘못된 회전 적용
+
+* UE-12041 텍스처가 변경된 스프라이트 시트가 제대로 리임포트되지 않음
+
+* UE-7918 스프라이트가 쿠킹된 빌드에서 PixelsPerUnrealUnit 초기화를 하지 않아, 픽셀/uu 가 2.56 인 애셋에 대한 GetSocketLocation 등의 결과가 잘못 나옴
+
+* UE-11903 opengl 에서 ElementalDemo 게임을 닫을 때 크래시
+
+* UE-12150 서브레벨의 숨겨진 레벨에 랜드스케이프가 있을 때 PIE 를 실행하면 크래시
+
+* UE-12111 [CrashReport] 랜드스케이프 되돌리기/삭제 후 크래시
+
+* UE-12433 랜드스케이프가 들어있는 서브레벨의 비저빌리티 토글을 끄면 에디터 크래시
+
+* UE-11815 [CrashReport] iOS 디바이스에 연결을 시도하는 도중 크래시
+
+* UE-12165 Morpheus 실행 도중 가끔 크래시
+
+* UE-12209 Canvas 아이템이 Morpheus 에서 제대로 그려지지 않음
+
+* UE-12211 Morpheus 에서 VSync 를 켜도 시각적으로 찢어져 보임
+
+* UE-12212 Morpheus 가 증가된 시간에 HMD 디스토션 셰이더 실행
+
+* UE-12324 콘솔 렌더링이 화면에 있을 때 Morpheus 렌더링이 깨짐
+
+* UE-11302 iPad 에 디플로이 불가
+
+* UE-12063 리눅스에서 프로젝트 패키징 불가
+
+* UE-12210 Morpheus IPD 가 잘못 적용
+
+* UE-13048 Xbox (코드 및 BP) 프로젝트가 검정 화면에 실행되지만 로그에는 성공이라 나옴
+
+* UE-12213 랜드스케이프 머티리얼을 안드로이드 디바이스에서 실행하면 기본값 복원
+
+* UE-12542 MAC: 에디터에서 텍스처 압축 시간 매우 느림
+
+* UE-12235 섀도우 렌더링에 큰 퍼포먼스 퇴보
+
+* UE-6190 모바일 프리뷰 모드에서 일부 스켈레탈 메시의 경우 UV 가 왜곡
+
+* UE-11865 (라이팅은 빌드되고) 인스턴스드 메시가 들어있는 레벨을 열면 에디터 크래시
+
+* UE-10664 폴리지 포함 맵을 로드한 이후 다른 맵을 열 때 OpenGL3 및 OpenGL4 크래시
+
+* UE-11810 [CrashReport] Texture 형변환하는 ULevel::BuildStreamingData 에서 크래시
+
+* UE-11434 에디터 로드 시 새로운 유저 크래시
+
+* UE-12228 크래시에 유효하지 않은 오류 메시지
+
+## 4.7.5 핫픽스
+
+릴리즈 날짜: 2015/04/08
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.5-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.5-release)
+
+픽스:
+
+* UE-13250 Multiplayer Shootout 프로젝트 샘플 시작 시 크래시
+
+* UE-13274 4.7.3 에서 4.7.4 로 프로젝트 변환 후 실행하면 크래시
+
+* UE-11828 리눅스에서 랜드스케이프 HydroErosion 크래시
+
+## 4.7.6 핫픽스
+
+릴리즈 날짜: 2015/04/20
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.6-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.7.6-release)
+
+픽스:
+
+* UE-13664 MAC: 시작 시 크래시
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..8bf6ea901cf2
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.CHN.udn
@@ -0,0 +1,182 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.8 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2015/4_8
+Order:0
+
+## 4.8.0 Release
+
+Released: 06/08/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2015/4_8)
+
+## 4.8.1 Hotfix
+
+Released: 06/24/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.1-release)
+
+Fixes:
+
+* UE-11816 [CrashReport] Garbage collection crashes not caused directly by the editor
+
+* UE-12079 Crash: UGameInstance::StartGameInstance "Failed to enter xx"
+
+* UE-14313 Tappy chicken size has increased dramatically from 4.6 to 4.7
+
+* UE-15505 Elemental Demo when played does not start matinee
+
+* UE-15651 GitHub 1148 : Fix divide by zero when importing 0-length animations
+
+* UE-16471 UMapProperty crashes
+
+* UE-16513 [CrashReport] Adding a Return node to a function that contains a Local array variable then compiling will crash the engine
+
+* UE-16521 [CrashReport] UE4Editor_Core!FRunnableThread::SetTls() [threadingbase.cpp:267]
+
+* UE-16711 Xbox fails to open BP projects for shipping config
+
+* UE-16724 StaticFindObject can return objects that have not been fully streamed in
+
+* UE-16752 [CrashReport] UE4Editor_D3D11RHI!VerifyD3D11CreateTextureResult() [d3d11util.cpp:223]
+
+* UE-16754 GatherTextFromSource commandlet always fails when using the deprecated SourceFileSearchFilters setting.
+
+* UE-16789 'Target' pin name in certain BP nodes jitters in localized mode
+
+* UE-16806 [CrashReport] UE4Editor_HotReload!GetCachedCDODuplicate() [hotreload.cpp:636]
+
+* UE-16844 [CrashReport] Building lighting with a CustomMeshComponent in level causes crash
+
+* UE-16894 Interrupting the KiteDemo cinematic leaves you with no drone controls
+
+* UE-16900 Crash when Applying Hole Material to Imported Tiled Landscape with World Composition
+
+* UE-16907 Project using ScriptPluginComponents can crash when upgrading to 4.8
+
+* UE-16918 Sprite sheets cannot be reimported in 4.8 in a project that was converted from an older version
+
+* UE-16971 Packaging fails with plugin and full rebuild checked
+
+* UE-16972 Self reference disconnecting on editor restart
+
+* UE-16995 Crash undoing TMap UProperties
+
+* UE-17008 Editor crashes every time you save if there is no editor startup map set
+
+* UE-17067 Engine builds need to include engine localization data
+
+* UE-17075 The localization dashboard generates inaccurate paths when referencing files on a different drive than the binary.
+
+* UE-17082 Project debug symbols are no longer included in crash reporter callstacks.
+
+* UE-17087 Assertion failed: !Result || Result->LinkerLoad == Linker crash
+
+* UE-17111 Indirect Lighting Cache is broken on PS4
+
+* UE-17129 Crash when terminating a Matinee camera anim
+
+* UE-17153 USkinnedMeshComponent::QuerySupportedSockets behaves differently in !WITH_EDITOR
+
+* UE-17194 LoadPackageInternal may crash due to corrupted linkers
+
+* UE-17221 Hot reloading does not work on Linux
+
+* UE-17222 CPU usage is not decreased when the editor isn't in foreground on Linux
+
+* UE-17228 Cook commandlet dies on Linux with error if run on a headless machine.
+
+* UE-17233 Media streaming from the internet is not working on Windows
+
+## 4.8.2 Hotfix
+
+Released: 07/14/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.2-release)
+
+Fixes:
+
+* UE-16177 When launching the editor and having oculus_runtime_sdk_0.6.0.0_win_partner installed, the editor crashes.
+
+* UE-16608 Convert Actor option is grayed out and not selectable. (ConversionRoot metadata not found)
+
+* UE-16822 [CrashReport] Saving in animation blueprint can cause a crash
+
+* UE-16896 Level streaming crash in KiteDemo after retriggering cinematic
+
+* UE-16905 User Play Space Rot does not change anything in Client Play Camera Shake
+
+* UE-16966 Default settings cannot be used to import character animations
+
+* UE-16970 StrategyGame crash on android devices bad name index
+
+* UE-17103 Curve editor breaks randomly in Cascade
+
+* UE-17118 Custom Output node added to a Material Editor crashes Editor
+
+* UE-17163 [CrashReport] dxgi! and RHI related crash on project open
+
+* UE-17167 [CrashReport] Character interaction with asset causes crash
+
+* UE-17177 Localization manifest writing fails if source control is hooked up and the manifest file does not exist already.
+
+* UE-17211 [CrashReport] Clicking connection wires between blueprints nodes causes crash
+
+* UE-17212 Stack overflow due to heavy recursion in indirect lighting cache
+
+* UE-17213 LightSourceAngle is incorrectly greyed out
+
+* UE-17216 [CrashReport] Crash in FD3D11ComputeShader::~FD3D11ComputeShader()
+
+* UE-17226 OnPaint function causes artifacts to show up in a New Editor window
+
+* UE-17384 Import options broken when importing bones-only fbx animation
+
+* UE-17385 Android game packaged with obb outside apk does not create SaveGame directory on device
+
+* UE-17400 Regression for UPROPERTY specifier causing crash ("Template Mismatch during attachment") during PIE
+
+* UE-17419 Crash compiling BPAIController and RunnerAI via session frontend test
+
+* UE-17443 DynamicModifiersOnly navmesh generation mode doesn't work
+
+* UE-17523 Paper2D Set Sprite function in Construction requires mobility to be set to Movable
+
+* UE-17562 [CrashReport] Crash in TBaseMulticastDelegate >::AddDelegateInstance()
+
+* UE-17569 GitHub 1309 : [Core][Windows] Don't crash when GetRawInputData() fails.
+
+* UE-17673 Clicking the GameMode Override dropdown in the World Settings tab crashes the editor
+
+* UE-17792 Analog Input does not work for network clients (AddMovementInput scale values other than 0 and 1 do not replicate for clients)
+
+* UE-17829 Second client fails to load when using multiplayer PIE in separate processes
+
+* UE-18020 Crash Report Client - updates to data collection
+
+* UE-18041 [CrashReport] Fatal error in PostInitProperties
+
+* UE-18080 [CrashReport] Crash in UProjectileMovementComponent::TickComponent()
+
+* UE-18173 Crash report client submits user names for github builds
+
+## 4.8.3 Hotfix
+
+Released: 07/29/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.3-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.3-release)
+
+Fixes:
+
+* UE-18668 Crash when closing projects
+
+* UE-17342 Crash when exiting PIE after server travel
+
+* UE-18530 Assert in ConformComponentsUtils::FindeNativeArchetype
+
+* UE-19151 Parallel Rendering is disabled in Shipping builds
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.JPN.udn
index 555ad44b6927..078491d594bf 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.8 Update Notes
+Title: アンリアル エンジン 4.8 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2015/4_8
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..73306fa3b1ae
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_8/Updates/UnrealEngine4_8UpdateNotes.KOR.udn
@@ -0,0 +1,182 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.8 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2015/4_8
+Order:0
+
+## 4.8.0 릴리즈
+
+릴리즈 날짜: 2015/06/08
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2015/4_8)
+
+## 4.8.1 핫픽스
+
+릴리즈 날짜: 2015/06/24
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.1-release)
+
+픽스:
+
+* UE-11816 [CrashReport] 에디터에 직접적 원인이 없는 가비지 콜렉션 크래시
+
+* UE-12079 Crash: UGameInstance::StartGameInstance "Failed to enter xx"
+
+* UE-14313 Tappy chicken 크기가 4.6 에서 4.7 로 가면서 많이 커짐
+
+* UE-15505 Elemental Demo 플레이하면 마티네가 시작되지 않음
+
+* UE-15651 GitHub 1148 : 길이가 0 인 애니메이션 임포트할 때 divide by zero 수정
+
+* UE-16471 UMapProperty 크래시
+
+* UE-16513 [CrashReport] 로컬 배열 변수가 들어있는 함수에 Return 노드를 추가한 뒤 컴파일하면 엔진 크래시
+
+* UE-16521 [CrashReport] UE4Editor_Core!FRunnableThread::SetTls() [threadingbase.cpp:267]
+
+* UE-16711 Xbox 에서 shipping 구성으로 BP 프로젝트 안열림
+
+* UE-16724 StaticFindObject 가 완전히 스트림 인 되지 않은 오브젝트 반환 가능
+
+* UE-16752 [CrashReport] UE4Editor_D3D11RHI!VerifyD3D11CreateTextureResult() [d3d11util.cpp:223]
+
+* UE-16754 GatherTextFromSource 커맨드렛이 폐기된 SourceFileSearchFilters 세팅을 사용하면 항상 실패
+
+* UE-16789 현지화 모드에서 특정 BP 노드의 'Target' 핀 이름이 떨림
+
+* UE-16806 [CrashReport] UE4Editor_HotReload!GetCachedCDODuplicate() [hotreload.cpp:636]
+
+* UE-16844 [CrashReport] 레벨에 CustomMeshComponent 포함 라이팅 빌드 시 크래시
+
+* UE-16894 KiteDemo 시네마틱을 중단하면 드론 컨트롤 못함
+
+* UE-16900 월드 컴포지션 포함 임포트된 타일 랜드스케이프에 홀 머티리얼을 적용하면 크래시
+
+* UE-16907 ScriptPluginComponents 를 사용하는 프로젝트를 4.8 로 업그레이드하면 크래시 가능
+
+* UE-16918 구버전에서 변환된 프로젝트에서 4.8 로 스프라이트 시트 리임포트 불가
+
+* UE-16971 플러그인 및 풀 리빌드 체크 상태에서 패키지 실패
+
+* UE-16972 에디터를 재시작하면 셀프 레퍼런스 연결 끊어짐
+
+* UE-16995 TMap UProperties 되돌리기 크래시
+
+* UE-17008 에디터 스타트업 맵이 설정되지 않은 경우 저장할 때마다 에디터 크래시
+
+* UE-17067 엔진 빌드에 엔진 현지화 데이터 포함 필요
+
+* UE-17075 현지화 대시보드에서 바이너리와 다른 드라이브의 파일을 레퍼런싱할 때 정확하지 않은 경로 생성
+
+* UE-17082 프로젝트 디버그 심볼이 더이상 크래시 리포터 콜스택에 포함되지 않음
+
+* UE-17087 어서트 실패: !Result || Result->LinkerLoad == Linker 크래시
+
+* UE-17111 PS4 에서 간접 라이팅 캐시가 깨짐
+
+* UE-17129 마티네 카메라 애님 종료 시 크래시
+
+* UE-17153 USkinnedMeshComponent::QuerySupportedSockets 작동이 !WITH_EDITOR 와 다름
+
+* UE-17194 LoadPackageInternal 가 깨진 링커로 인해 크래시 가능
+
+* UE-17221 핫 리로드가 리눅스에서 작동하지 않음
+
+* UE-17222 리눅스에서 에디터가 포그라운드 실행중이지 않을 때 CPU 사용량 감소
+
+* UE-17228 헤드리스 머신에서 실행된 경우 Cook 커맨드렛이 리눅스에서 오류를 내며 죽는 현상
+
+* UE-17233 인터넷에서 미디어 스트리밍이 윈도우에서 작동하지 않음
+
+## 4.8.2 핫픽스
+
+릴리즈 날짜: 2015/07/14
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.2-release)
+
+픽스:
+
+* UE-16177 에디터를 실행하고 oculus_runtime_sdk_0.6.0.0_win_partner 가 설치된 상태에서 에디터 크래시
+
+* UE-16608 Convert Actor 옵션이 비활성화되어 선택 불가 (ConversionRoot 메타데이터 없음)
+
+* UE-16822 [CrashReport] 애니메이션 블루프린트에서 저장이 크래시 유발 가능
+
+* UE-16896 KiteDemo 에서 시네마틱 재발동 후 레벨 스트리밍 크래시
+
+* UE-16905 User Play Space Rot 이 Client Play Camera Shake 에서 아무것도 변경하지 않음
+
+* UE-16966 기본 세팅으로 캐릭터 애니메이션 임포트 불가
+
+* UE-16970 StrategyGame 이 안드로이드 디바이스에서 네임 인덱스가 잘못된 경우 크래시
+
+* UE-17103 캐스케이드에서 랜덤하게 커브 에디터가 깨짐
+
+* UE-17118 머티리얼 에디터에 Custom Output 노드를 추가하면 에디터 크래시
+
+* UE-17163 [CrashReport] 프로젝트 열 때 dxgi! 및 RHI 관련 크래시
+
+* UE-17167 [CrashReport] 애셋 포함 캐릭터 통합 시 크래시 유발
+
+* UE-17177 소스 콘트롤 연결 상태에서 manifest 가 이미 존재하지 않는 경우 현지화 manifest 쓰기 실패
+
+* UE-17211 [CrashReport] 블루프린트 노드 사이 연결 선을 클릭하면 크래시 유발
+
+* UE-17212 간접 라이팅 캐시의 과도한 반복으로 스택 오버플로우
+
+* UE-17213 LightSourceAngle 가 비정상적으로 비활성화
+
+* UE-17216 [CrashReport] FD3D11ComputeShader::~FD3D11ComputeShader() 크래시
+
+* UE-17226 OnPaint 함수가 새 에디터 창에 부작용 유발
+
+* UE-17384 본만 있는 fbx 애니메이션 임포트 시 임포트 옵션 깨짐
+
+* UE-17385 apk 외부 obb 로 패키징된 안드로이드 게임이 디바이스에 SaveGame 디렉토리를 생성하지 않음
+
+* UE-17400 PIE 도중 ("어태치먼트 도중 템플릿 불일치") 크래시를 유발하는 UPROPERTY 지정자 퇴보
+
+* UE-17419 세션 프론트엔드 테스트를 통해 BPAIController 및 RunnerAI 컴파일 도중 크래시
+
+* UE-17443 DynamicModifiersOnly 내비메시 생성 모드가 작동하지 않음
+
+* UE-17523 컨스트럭션에서 Paper2D Set Sprite 함수가 모빌리티를 Movable 로 설정해야 함
+
+* UE-17562 [CrashReport] TBaseMulticastDelegate >::AddDelegateInstance() 크래시
+
+* UE-17569 GitHub 1309 : [Core][Windows] GetRawInputData() 실패 시 크래시가 나지 않음
+
+* UE-17673 월드 세팅 탭의 GameMode Override 드롭다운을 클릭하면 에디터 크래시
+
+* UE-17792 Analog Input 이 네트워크 클라이언트에 작동하지 않음 (AddMovementInput 0 이나 1 이외의 스케일 값이 클라이언트에 리플리케이트되지 않음)
+
+* UE-17829 별도의 프로세스로 멀티플레이어 PIE 를 사용하면 두 번째 클라이언트 로드 실패
+
+* UE-18020 Crash Report Client - 데이터 콜렉션 업데이트
+
+* UE-18041 [CrashReport] PostInitProperties 의 치명적 오류
+
+* UE-18080 [CrashReport] UProjectileMovementComponent::TickComponent() 크래시
+
+* UE-18173 크래시 리포트 클라이언트가 github 빌드의 경우 사용자 이름 제출
+
+## 4.8.3 핫픽스
+
+릴리즈 날짜: 2015/07/29
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.3-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.8.3-release)
+
+픽스:
+
+* UE-18668 프로젝트를 닫으면 크래시
+
+* UE-17342 서버 트래블 이후 PIE 를 종료하면 크래시
+
+* UE-18530 ConformComponentsUtils::FindeNativeArchetype 어서트
+
+* UE-19151 Shipping 빌드에서 패럴렐 렌더링 비활성화
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.CHN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.CHN.udn
new file mode 100644
index 000000000000..d989c52f597a
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.CHN.udn
@@ -0,0 +1,140 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 虚幻引擎 4.9 更新日志
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2015/4_9
+Order:0
+
+## 4.9.0 Release
+
+Released: 08/31/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.0-release)
+
+Release Notes: [](Support/Builds/ReleaseNotes/2015/4_9)
+
+## 4.9.1 Hotfix
+
+Released: 09/15/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.1-release)
+
+Fixes:
+
+* UE-20265 ForEach 'Enum' node returns incorrect enum values
+
+* UE-20643 Enum to Byte conversion returns 2 for the first enum then 4 then 6 and so on rather than 0, 1, 2, etc
+
+* UE-20878 Child Blueprint getting certain property values cleared in cooked games
+
+* UE-20009 [CrashReport] UE4Editor_UnrealEd!operator<<() [editortransaction.cpp:157]
+
+* UE-20867 Issues converting enum to byte in BP
+
+* UE-20733 Disabling collision of an actor after an overlap event will cause the event to fire twice
+
+* UE-20466 [CrashReport] UE4Editor_Engine!UAnimSequence::GetBonePose() [animsequence.cpp:994]
+
+* UE-20413 Montage with negative value of curves doesn't work
+
+* UE-20496 Overlap checks during swept movement can generate repeated begin/end overlaps, or wrong end overlap event
+
+* UE-20146 Can't increase lightmap resolution on landscape, it crashes
+
+* UE-20202 Dynamic point lights generate shader compile errors on HTML5
+
+* UE-20492 Renamed/Copied code project folders fail to launch on to iOS
+
+* UE-20728 Editable Text crashes on Android
+
+* UE-20380 HTML5: Mac: RunMacHTML5LaunchHelper.command has incorrect file type in P4, causes error
+
+* UE-20419 Mono error encountered with packaged HTML5 sample
+
+* UE-20872 Enabling MSAA crashes when using metal
+
+* UE-20968 Offline Shader Compile has been disabled on Mac
+
+* Note: When performing a launch on from the Mac to iOS the first time there will be an increase in the cook time as the shaders will be rebuilt.
+
+* UE-20928 Launch on for Android may crash or use wrong version of aapt
+
+* UE-20864 Launch on to Wi-Fi Android devices will fail
+
+* UE-20008 SunTemple exits to home screen on the iPad 4
+
+* UE-20590 Can't build UE4Game for IOS from PC
+
+* UE-12215 Sound effects continue to play when game is suspended on Android
+
+* UE-20692 Epic Games Launcher unhides while the editor is loading on Mac
+
+* UE-20991 Launch On for iOS does not automatically start
+
+* Note: The Launch On feature for iOS on Mac has been temporarily disabled due to an incompatibility with Xcode 7.0. We are working on the issue for 4.10.
+
+* UE-20640 SSAO 4.9 perf regression fix
+
+* UE-20335 Blendable Weight set higher than 1.0 crashes
+
+* UE-20639 Crash on Mobile Previewing or Playing in a New Editor Viewport a Mobile/Tablet - Mobile/HTML Project
+
+* UE-20297 REGRESSION: HierarchicalInstancedStaticMeshComponent LOD transitions are broken in 4.9 and Main
+
+* UE-20172 [CrashReport] UE4Editor_Engine!FBatchedElements::FSimpleElementBSSContainer::GetBSS() [batchedelements.h:308]
+
+* UE-20699 "Build Solution" does not work for GitHub users
+
+* UE-20291 Rev Oculus SDK to 0.7 / 0.6.18
+
+## 4.9.2 Hotfix
+
+Released: 09/30/2015
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.2-release)
+
+Fixes:
+
+* UE-20792 DrawMaterial() Function not Rendering Translucent Material to HUD
+
+* UE-21233 Calling RequestStimuliListenerUpdate on actor with one element in AIPerception Sensing Config causes crash
+
+* UE-21234 Crash on play when AIPerception Senses Config element is set to "sense config" options
+
+* UE-20913 Undo after deletion in BP editor causes crash
+
+* UE-17698 [CrashReport] UE4Editor_CoreUObject!UStruct::IsChildOf() [class.h:400]
+
+* UE-20644 [CrashReport] Crash while undoing in Blueprints - FObjectRecord::FReader::operator
+
+* UE-20258 Child blueprint classes can no longer change default values for inherited variables
+
+* UE-21081 Cannot open assets created in 4.9.1 in 4.9.0 version of editor
+
+* UE-20210 [CrashReport] Crash on Windows Chinese version when changing editor language
+
+* UE-21337 Movies are not skipped when Wait for Movies to Complete is false
+
+* UE-21292 Parallax Occlusion Mapping broken on Macs
+
+* UE-21127 Crash in FSlateImageRun destructor
+
+* UE-20550 Sliders and check boxs not working on touch screen device
+
+* UE-21076 Possible divide by zero in animation transitions with zero crossfade durations
+
+* UE-20961 [CrashReport] UE4Editor_Engine!FKShapeElem::GetShapeCheck() [shapeelem.h:55]
+
+* UE-20952 Launching a Project which uses Depth of Field crashes to Home Screen on iOS8 device
+
+* UE-21123 PowerVR Galaxy S4 (GT-I9500) shows black scene when MobileHDR enabled
+
+* UE-21367 Submitting to App store for IOS 9 leads to validation errors
+
+* UE-20940 Effects.umap causes Standalone and Mobile Preview PIE to Crash
+
+* UE-21126 Foliage culling broken on XboxOne
+
+* UE-21185 Update buttons on CrashReporter window to encourage submission
+
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.JPN.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.JPN.udn
index b629c540e525..ea0279b196ac 100644
--- a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.JPN.udn
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.JPN.udn
@@ -1,6 +1,6 @@
INTSourceChangelist:0
Availability:Public
-Title: Unreal Engine 4.9 Update Notes
+Title: アンリアル エンジン 4.9 アップデート ノート
Description:
Crumbs:
Parent:Support/Builds/ReleaseNotes/2015/4_9
diff --git a/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.KOR.udn b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.KOR.udn
new file mode 100644
index 000000000000..ad65861c7e98
--- /dev/null
+++ b/Engine/Documentation/Source/Support/Builds/ReleaseNotes/4_9/Updates/UnrealEngine4_9UpdateNotes.KOR.udn
@@ -0,0 +1,140 @@
+INTSourceChangelist:3367470
+Availability:Public
+Title: 언리얼 엔진 4.9 업데이트 노트
+Description:
+Crumbs:
+Parent:Support/Builds/ReleaseNotes/2015/4_9
+Order:0
+
+## 4.9.0 릴리즈
+
+릴리즈 날짜: 2015/08/31
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.0-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.0-release)
+
+릴리즈 노트: [](Support/Builds/ReleaseNotes/2015/4_9)
+
+## 4.9.1 핫픽스
+
+릴리즈 날짜: 2015/09/15
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.1-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.1-release)
+
+픽스:
+
+* UE-20265 ForEach 'Enum' 노드가 잘못된 enum 값을 반환
+
+* UE-20643 Enum to Byte 변환이 0, 1, 2 식이 아닌 2, 4, 6 식으로 반환
+
+* UE-20878 자손 블루프린트가 쿠킹된 게임에서 특정 프로퍼티 값을 지움
+
+* UE-20009 [CrashReport] UE4Editor_UnrealEd!operator<<() [editortransaction.cpp:157]
+
+* UE-20867 블루프린트에서 enum to byte 변환 관련 이슈
+
+* UE-20733 오버랩 이벤트 후 액터 콜리전을 끄면 이벤트가 두 번 발동
+
+* UE-20466 [CrashReport] UE4Editor_Engine!UAnimSequence::GetBonePose() [animsequence.cpp:994]
+
+* UE-20413 음수 커브 값이 있는 몽타주 작동 않음
+
+* UE-20496 스윕 이동 도중 오버랩 체크가 반복된 오버랩 시작/끝 또는 잘못된 오버랩 끝 이벤트 생성 가능
+
+* UE-20146 랜드스케이프에서 라이트맵 해상도를 올리면 크래시
+
+* UE-20202 다이내믹 포인트 라이트가 HTML5 에서 셰이더 컴파일 오류
+
+* UE-20492 코드 프로젝트 폴더 이름변경/복사한 경우 iOS 에서 실행에 실패
+
+* UE-20728 Editable Text 가 Android 에서 크래시
+
+* UE-20380 HTML5: Mac: RunMacHTML5LaunchHelper.command 가 P4 에 파일 유형이 잘못되어 오류 유발
+
+* UE-20419 패키징된 HTML5 샘플 관련 Mono 오류
+
+* UE-20872 Metal 사용 시 MSAA 켜면 크래시
+
+* UE-20968 Mac 에서 Offline Shader Compile 꺼짐
+
+* 주: Mac 에서 IOS 로 처음 실행시킬 때, 셰이더 리빌드로 인해 쿠킹 시간이 증가됩니다.
+
+* UE-20928 Android 에서 실행 옵션이 크래시가 나거나 aapt 잘못된 버전 사용
+
+* UE-20864 Wi-Fi Android 디바이스에서 실행 옵션이 실패
+
+* UE-20008 SunTemple 이 iPad 4 에서 홈 화면으로 빠져나감
+
+* UE-20590 PC 에서 iOS 용 UE4Game 빌드 불가
+
+* UE-12215 Android 에서 게임을 일시정지했을 때 사운드 이펙트가 계속 재생
+
+* UE-20692 Mac 에서 에디터 로드 도중 에픽 게임즈 런처 숨김이 해제
+
+* UE-20991 iOS 에서 실행 옵션이 자동으로 시작되지 않음
+
+* 주: Mac 의 iOS 에서 실행 옵션은 Xcode 7.0 과 호환되지 않아 임시로 비활성화되었습니다. 4.10 에서 이 이슈 해결 작업을 하고 있습니다.
+
+* UE-20640 SSAO 4.9 퍼포먼스 퇴보 픽스
+
+* UE-20335 Blendable Weight 가 1.0 초과 설정된 경우 크래시
+
+* UE-20639 모바일/태블릿 - 모바일/HTML 프로젝트를 모바일 프리뷰 또는 새 에디터 뷰포트에서 플레이 시 크래시
+
+* UE-20297 퇴보: HierarchicalInstancedStaticMeshComponent LOD 전환이 4.9 와 Main 에서 깨짐
+
+* UE-20172 [CrashReport] UE4Editor_Engine!FBatchedElements::FSimpleElementBSSContainer::GetBSS() [batchedelements.h:308]
+
+* UE-20699 GitHub 사용자에게 Build Solution 이 작동하지 않음
+
+* UE-20291 Oculus SDK 를 0.7 / 0.6.18 로 변경
+
+## 4.9.2 핫픽스
+
+릴리즈 날짜: 2015/09/30
+
+Github: [https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.2-release](https://github.com/EpicGames/UnrealEngine/releases/tag/4.9.2-release)
+
+픽스:
+
+* UE-20792 DrawMaterial() 함수가 반투명 머티리얼을 HUD 에 렌더링하지 않음
+
+* UE-21233 AIPerception Sensing Config 에 엘리멑느가 하나 있는 액터에서 RequestStimuliListenerUpdate 호출 시 크래시
+
+* UE-21234 AIPerception Senses Config 엘리먼트가 sense config 옵션으로 설정되었을 때 플레이 시 크래시
+
+* UE-20913 BP 에디터에서 삭제 이후 되돌리기 하면 크래시
+
+* UE-17698 [CrashReport] UE4Editor_CoreUObject!UStruct::IsChildOf() [class.h:400]
+
+* UE-20644 [CrashReport] 블루프린트에서 되돌리기할 때 크래시 - FObjectRecord::FReader::operator
+
+* UE-20258 자손 블루프린트 클래스가 더이상 상속된 변수의 기본값 변경 불가
+
+* UE-21081 4.9.0 버전 에디터에서 4.9.1 버전으로 생성된 애셋을 열 수 없음
+
+* UE-20210 [CrashReport] 윈도우 중국 버전에서 에디터 언어를 변경할 때 크래시
+
+* UE-21337 Wait for Movies to Complete 옵션이 false 인 경우 무비 건너뛰기 불가
+
+* UE-21292 Parallax Occlusion Mapping 이 Mac 에서 깨짐
+
+* UE-21127 FSlateImageRun 소멸자에서 크래시
+
+* UE-20550 터치 스크린 디바이스에서 슬라이더와 체크박스가 작동되지 않음
+
+* UE-21076 크로스페이드 기간이 0 인 애니메이션 전환 시 divide by zero 발생 가능
+
+* UE-20961 [CrashReport] UE4Editor_Engine!FKShapeElem::GetShapeCheck() [shapeelem.h:55]
+
+* UE-20952 Depth of Field 를 사용하는 프로젝트 실행 시 iOS 디바이스에서 홈 화면으로 크래시
+
+* UE-21123 PowerVR Galaxy S4 (GT-I9500) 에서 MobileHDR 활성화 시 검정 화면
+
+* UE-21367 iOS 에서 앱 스토어 제출 시 인증 오류
+
+* UE-20940 Effects.umap 으로 인해 Standalone 및 Mobile Preview PIE 크래시
+
+* UE-21126 폴리지 컬링이 XboxOne 에서 깨짐
+
+* UE-21185 CrashReporter 창의 업데이트 버튼이 제출을 장려하도록 변경
+
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.CHN.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.CHN.udn
index 15261993ec9a..89680e6b8fe3 100644
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.CHN.udn
+++ b/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.CHN.udn
@@ -20,7 +20,6 @@ Navigation:role
[/PARAM]
[PARAM:links]
* [](Support/BusinessAndLegal/TermsAndConditions "%Support/BusinessAndLegal/TermsAndConditions:description%")
- * [](Support/BusinessAndLegal/TrademarksAndLogos "%Support/BusinessAndLegal/TrademarksAndLogos:description%")
[/PARAM]
[/OBJECT]
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.INT.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.INT.udn
index c4a5d6a7c6e7..22bc98f8ae36 100644
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.INT.udn
+++ b/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.INT.udn
@@ -9,32 +9,4 @@ Version: 4.9

[/REGION]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Legal
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/BusinessAndLegal/TermsAndConditions "%Support/BusinessAndLegal/TermsAndConditions:description%")
- * [](Support/BusinessAndLegal/TrademarksAndLogos "%Support/BusinessAndLegal/TrademarksAndLogos:description%")
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- Business
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/BusinessAndLegal/IntegratedPartnersProgram "%Support/BusinessAndLegal/IntegratedPartnersProgram:description%")
- * [](Support/BusinessAndLegal/ShippingChecklist "%Support/BusinessAndLegal/ShippingChecklist:description%")
- [/PARAM]
-[/OBJECT]
+[DIR(output:"listbutton" parent:"Support/BusinessAndLegal")]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.JPN.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.JPN.udn
index b8120453266a..3e23522759d7 100644
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.JPN.udn
+++ b/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.JPN.udn
@@ -1,40 +1,13 @@
-INTSourceChangelist:2363518
+INTSourceChangelist:3473445
Availability:Licensee
Title:ビジネスとリーガル
Crumbs:%ROOT%
Description:アンリアル・エンジン 4 を使用したゲーム開発に関するビジネスとリーガル情報
Navigation:role
+Version:4.9
[REGION:banner]

[/REGION]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- リーガル
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/BusinessAndLegal/TermsAndConditions "%Support/BusinessAndLegal/TermsAndConditions:description%")
- * [](Support/BusinessAndLegal/TrademarksAndLogos "%Support/BusinessAndLegal/TrademarksAndLogos:description%")
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- ビジネス
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/BusinessAndLegal/IntegratedPartnersProgram "%Support/BusinessAndLegal/IntegratedPartnersProgram:description%")
- * [](Support/BusinessAndLegal/ShippingChecklist "%Support/BusinessAndLegal/ShippingChecklist:description%")
- [/PARAM]
-[/OBJECT]
+[DIR(output:"listbutton" parent:"Support/BusinessAndLegal")]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.KOR.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.KOR.udn
index 3b5f266bed71..4ba6d2196536 100644
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.KOR.udn
+++ b/Engine/Documentation/Source/Support/BusinessAndLegal/BusinessAndLegal.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3473445
Availability:Licensee
Title:비즈니스와 법무
Crumbs:%ROOT%
@@ -10,32 +10,4 @@ Version: 4.9

[/REGION]
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 법무
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/BusinessAndLegal/TermsAndConditions "%Support/BusinessAndLegal/TermsAndConditions:description%")
- * [](Support/BusinessAndLegal/TrademarksAndLogos "%Support/BusinessAndLegal/TrademarksAndLogos:description%")
- [/PARAM]
-[/OBJECT]
-
-[OBJECT:TopicButtonList]
- [PARAM:icon]
- (convert:false)
- [/PARAM]
- [PARAM:title]
- 비즈니스
- [/PARAM]
- [PARAM:description]
- [/PARAM]
- [PARAM:links]
- * [](Support/BusinessAndLegal/IntegratedPartnersProgram "%Support/BusinessAndLegal/IntegratedPartnersProgram:description%")
- * [](Support/BusinessAndLegal/ShippingChecklist "%Support/BusinessAndLegal/ShippingChecklist:description%")
- [/PARAM]
-[/OBJECT]
\ No newline at end of file
+[DIR(output:"listbutton" parent:"Support/BusinessAndLegal")]
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.CHN.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.CHN.udn
deleted file mode 100644
index 09e4eaf126f6..000000000000
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.CHN.udn
+++ /dev/null
@@ -1,47 +0,0 @@
-INTSourceChangelist:1547574
-Availability:Licensee
-Title: 集成合作伙伴项目
-Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:这是一个为集成产品到虚幻引擎4的公司设立的项目,并包括了所有当前项目成员。
-
-
-
-Epic Games创建了集成合作伙伴项目(IPP)来和拥有跨平台技术的公司建立正式的商务关系,这些被选中的公司整合并补充虚幻4(UE4)的内容。 在IPP项目下,Epic持续提供给IPP成员UE4源代码访问权限以及完整的技术支持。 加入 IPP 的公司同意通过 Epic 设立的支持渠道为 UE4 授权用户提供高层次技术支持,使他们能应用最新的 UE4版本,并同Epic 一起努力挖掘潜在的推销和联合推广机会。 IPP 项目可以使虚幻引擎 4 用户更加轻松地将 IPP 供应商提供的第三方中间件解决方案整合到他们自己的游戏中。
-
-这些产品不包括在[第三方软件]页面列出的工具和软件(Support/BusinessAndLegal/ThirdPartySoftware)。
-
-如果您想要集成某个产品,最好联系该产品供应商。
-
-## 标识及商标
-
-集成合作伙伴项目标识可放置于合作伙伴的网站,产品包装或其他媒体上。请只使用官方标识,并且所有的使用应符合Epic Games规定的使用方针。
-
-* [集成合作伙伴项目标识](Support/BusinessAndLegal/TrademarksAndLogos/UE4_Partner_Logos.zip) (4MB .zip)
-
-
-关于标识和商标完整的使用指南可以在[标识与商标](Support/BusinessAndLegal/TrademarksAndLogos)页面找到。
-
-## 集成合作伙伴(IPP)项目成员
-
-| 合作伙伴 | 产品 |
-| ------- | ------- |
-| [REGION:tablesection]**完全集成且完全可用**[REGION:lightbox inline][[REGION:infolink][/REGION]](#usedfullinfo)[/REGION][/REGION] ||
-| **NVIDIA** | [PhysX](http://www.nvidia.com/object/nvidia_physx.html), [APEX](http://developer.nvidia.com/object/apex.html) |
-| [REGION:tablesection]**完全集成且部分可用**[REGION:lightbox inline][[REGION:infolink][/REGION]](#usedpartialinfo)[/REGION][/REGION] ||
-| **Donya Labs** | [Simplygon](http://www.donyalabs.com/)
-
-
-[REGION:hidden]
-
- [REGION:infobox]
- These products are fully integrated into Unreal Engine 4 and no additional purchase is required.
- Integration is maintained by Epic & the vendor; both source code & libraries are in Perforce.
- [/REGION]
-
-
- [REGION:infobox]
- These products are partially integrated into Unreal Engine 4. Both source code and libraries must
- be obtained from the vendor and require an additional purchase.
- [/REGION]
-
-[/REGION]
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.INT.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.INT.udn
deleted file mode 100644
index aea2c63ef08b..000000000000
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.INT.udn
+++ /dev/null
@@ -1,64 +0,0 @@
-Availability:Licensee
-Title: Integrated Partners Program
-Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:Program for companies that have integrated products into Unreal Engine 4. Includes a list of all current program members.
-Version: 4.9
-
-[Region:raw]
-
-[/Region]
-
-Epic Games has established the Integrated Partners Program (IPP) for the purposes of having a formal business relationship with selected companies making cross-platform technologies which integrate with, and are complementary to, Unreal Engine 4 (UE4). Under the IPP program, Epic provides continuous UE4 source code access and full technical support to IPP members. Companies who join the IPP agree to provide a high level of technical support for UE4 licensees through Epic's established support channels, keep their implementations up-to-date with the latest UE4 versions, and work with Epic on potential promotional and co-marketing efforts. The IPP program will make it easier for Unreal Engine 4 licensees to incorporate 3rd party middleware solutions from IPP vendors into their games.
-
-These products are in addition to the tools and software listed on the [Third Party Software](Support/BusinessAndLegal/ThirdPartySoftware) page.
-
-If you are interested in integrating a product, it is best to contact the vendor.
-
-## Logos and Trademarks
-
-Integrated Partner Program logos are available for placement on partners' websites, product packaging, or other media. Only the official logos should be used and all usage must be in accordance with the usage guidelines stipulated by Epic Games.
-
-* [Integrate Partner Program Logos](Support/BusinessAndLegal/TrademarksAndLogos/UE4_Partner_Logos.zip) (4MB .zip)
-
-
-Complete usage guidelines for both trademarks and logos are available on the [Trademarks and Logos](Support/BusinessAndLegal/TrademarksAndLogos) page.
-
-## Integrated Partners Program Members
-
-| Partner | Product |
-| ------- | ------- |
-| [REGION:tablesection][INCLUDE:#usedfull][/REGION] ||
-| **NVIDIA** | [PhysX](http://www.nvidia.com/object/nvidia_physx.html), [APEX](http://developer.nvidia.com/object/apex.html) |
-| [REGION:tablesection][INCLUDE:#usedpartial][/REGION] ||
-| **Donya Labs** | [Simplygon](http://www.donyalabs.com/)
-
-
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.JPN.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.JPN.udn
deleted file mode 100644
index e3739af55499..000000000000
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.JPN.udn
+++ /dev/null
@@ -1,62 +0,0 @@
-INTSourceChangelist:2373965
-Availability:Licensee
-Title:統合パートナープログラム (IPP)
-Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:アンリアル エンジン 4 に統合している製品をもつ企業向けプログラム現在のプログラム メンバーの一覧が含まれます。
-
-
-
-Epic Gamesの統合パートナープログラム (IPP) は、クロス プラットフォーム テクノロジーをアンリアル エンジン 4 に統合、または補完的技術をもたらす厳選された企業と正式なビジネス関係を構築する目的で設立されました。Epic は、IPP プログラム参加メンバーに対して、UE4 のソースコードへのアクセスおよび全面的なテクニカル サポートを提供します。IPP 参加メンバーは、Epic が構築したサポート チャンネルを通して、ハイレベルな技術サポートをアンリアル エンジン 4 (UE4) ライセンシーに提供し、最新の UE4 バージョンで最新の実装を保ち、Epic との連携による潜在的なプロモーション及び共同マーケティングを行うことに同意しております。IPP プログラムに参加することにより、アンリアル エンジン 4 のライセンシーは、IPP 業者が提供する第三者ミドルウェアソリューションの導入が容易になります。
-
-これらの製品は、[Third Party Software](Support/BusinessAndLegal/ThirdPartySoftware) に掲載されているツールやソフトウェアに追加されるものです。
-
-製品の統合に興味をお持ちでしたら、まずはベンダーまで問い合わせてください。
-
-## ロゴと商標
-
-ビジネスパートナーのウェブサイト、商品、パッケージやその他の媒体で使用する、統合パートナープログラムのロゴがご利用いただけます。公式ロゴのみを使用し、Epic Games の規定に基づく使用に関するガイドラインに準拠しなければなりません。
-
-* [Integrate Partner Program Logos](Support/BusinessAndLegal/TrademarksAndLogos/UE4_Partner_Logos.zip) (4MB .zip)
-
-
-トレードマークとロゴに関する使用ガイドの完全版を [Trademarks and Logos](Support/BusinessAndLegal/TrademarksAndLogos) のページ商標とロゴから参照いただけます。
-
-## 統合パートナープログラムのメンバー
-
-| Partner | Product |
-| ------- | ------- |
-| [REGION:tablesection][INCLUDE:#usedfull][/REGION] ||
-| **NVIDIA** | [PhysX](http://www.nvidia.com/object/nvidia_physx.html), [APEX](http://developer.nvidia.com/object/apex.html) |
-| [REGION:tablesection][INCLUDE:#usedpartial][/REGION] ||
-| **Donya Labs** | [Simplygon](http://www.donyalabs.com/)
-
-
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.KOR.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.KOR.udn
deleted file mode 100644
index fbec64a57ce5..000000000000
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/IntegratedPartnersProgram/IntegratedPartnersProgram.KOR.udn
+++ /dev/null
@@ -1,65 +0,0 @@
-INTSourceChangelist:3108692
-Availability:Licensee
-Title: 통합 파트너 프로그램
-Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:언리얼 엔진 4 에 제품을 통합시킨 회사를 위한 프로그램입니다. 현재 이 프로그램에 가입된 멤버도 포함됩니다.
-Version: 4.9
-
-[Region:raw]
-
-[/Region]
-
-에픽 게임스는 언리얼 엔진 4 에 통합되어 상보적인 관계의 크로스 플랫폼 테크놀로지를 개발한 엄선된 회사들과 공식적인 업무 제휴관계를 맺을 목적으로 통합 파트너 프로그램(IPP, Integrated Partners Program)을 수립했습니다. IPP 하에서 에픽은 IPP 회원사에게 지속적인 언리얼 엔진 4 소스 코드 접근 권한과 최대의 기술 지원을 제공합니다. 아울러 IPP 에 합류하는 회사는 에픽이 수립한 지원 창구를 통해 UE4 라이선시께 높은 수준의 기술 지원을 제공하며 UE4 최신 버전에 맞춰 자사의 구현 내용을 최신으로 유지함은 물론, 에픽과 가능한 모든 홍보나 공동 마케팅 노력을 함께할 것임에 동의합니다. IPP 는 언리얼 엔진 4 라이선시께서 해당 회사의 게임에 IPP 벤더의 써드 파티 미들웨어 솔루션을 통합시키는 작업을 수월하게 만들어 줄 것입니다.
-
-이 곳의 제품들은 [써드 파티 소프트웨어](Support/BusinessAndLegal/ThirdPartySoftware) 페이지에 나열된 툴과 소프트웨어에 더해지는 것입니다.
-
-제품 통합에 관심이 있으신 경우, 벤더와 상의해 보시기 바랍니다.
-
-## 로고와 상호
-
-통합 파트너 프로그램 로고는 파트너의 웹사이트, 제품 패키지, 기타 매체에 사용할 수 있습니다. 공식 로고만 사용할 수 있으며, 그 모든 사용법은 에픽 게임스가 명시한 사용 지침을 따라야 합니다.
-
-* [통합 파트너 프로그램 로고](Support/BusinessAndLegal/TrademarksAndLogos/UE4_Partner_Logos.zip) (4MB .zip)
-
-
-상호와 로고의 자세한 사용 지침에 대한 것은 [상호와 로고](Support/BusinessAndLegal/TrademarksAndLogos) 페이지를 참고해 주시기 바랍니다.
-
-## 통합 파트너 프로그램 회원사
-
-| 파트너 | 제품 |
-| ------- | ------- |
-| [REGION:tablesection][INCLUDE:#usedfull][/REGION] ||
-| **NVIDIA** | [PhysX](http://www.nvidia.com/object/nvidia_physx.html), [APEX](http://developer.nvidia.com/object/apex.html) |
-| [REGION:tablesection][INCLUDE:#usedpartial][/REGION] ||
-| **Donya Labs** | [Simplygon](http://www.donyalabs.com/)
-
-
\ No newline at end of file
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.INT.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.INT.udn
index 6bc3876268d9..aee8d7effa51 100644
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.INT.udn
+++ b/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.INT.udn
@@ -37,7 +37,7 @@ as on the back of the box for the Game).
Licensee agrees to display the "Powered by Unreal Technology" logo on the physical packaging of the Game.
Licensee also agrees to display the "Powered by Unreal Technology" logo within the opening sequence or splash
screen of the Game. Licensee agrees that any display of the "Powered by Unreal Technology" logo will comply
-with the **_Unreal Engine Style Guide_** which can be found on the [Trademarks And Logos](Support/BusinessAndLegal/TrademarksAndLogos) page.
+with the **_Unreal Engine Style Guide_** which can be found on the [Logo & Branding](https://www.unrealengine.com/branding) page.
As an alternative to static logos, an animated version is also available.
@@ -47,8 +47,7 @@ The Unreal Technology logo is not required on any labels for physical media (flo
## Third Party Software
Licensee must also provide appropriate legal notices required by any other third party software used in the
-Game. A list of libraries included in the Unreal® Engine, and the legal text that goes with
-them, can be found at [Third Party Software](Support/BusinessAndLegal/ThirdPartySoftware).
+Game.
## Sanctioned Content
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.JPN.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.JPN.udn
index 9f4a96448bb9..eca4b544eeb1 100644
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.JPN.udn
+++ b/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.JPN.udn
@@ -1,20 +1,22 @@
-Availability:Licensee
-Title:出荷検品表
+INTSourceChangelist:3473445
+Availability:Licensee
+Title:シッピングのチェックリスト
Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:アンリアル エンジン 4 を使用したゲームの販売時に参照するガイドラインと対処アイテムのリスト
+Description:UE4 を使用したゲームのシッピング時に参照するガイドラインとアイテムのリスト
+Version:4.9
-アンリアル エンジン 4 を起用したプロジェクトの完成が近づいたら、
-プロジェクトを販売する前にある措置の実行および確認事項がいくつかあります。このドキュメントには、
-アンリアル エンジン 4 を使用した公式ゲームプロジェクトの販売に関する注記事項やドキュメントのコレクションが含まれています。
+アンリアル エンジン 4 (UE4) を起用したプロジェクトの完成が近づいたら、
+プロジェクトをシッピングする前に行うことと、確認事項がいくつかあります。このドキュメントには、
+UE4 を使用した公式ゲーム プロジェクトのシッピングに関する注記事項やドキュメントのコレクションが含まれています。
-プロジェクトにアンリアル エンジン 4 を使用したユーザーは **ライセンシー** となります。ユーザーのプロジェクトは **公式ゲーム** (または **ゲーム**) です。
+プロジェクトに UE4 を使用したユーザーは **ライセンシー** となります。プロジェクトは **公式ゲーム** (または **ゲーム**) になります。
## 必須の商標表示
ライセンシーは、アンリアル テクノロジー ロゴの使用時は必ず商標を表示しなくてはいけません
(公式ゲームのパッケージの裏側など)。
- "Unreal, Unreal Technology および the Powered by Unreal Technology ロゴは、米国およびその他の国と地域における Epic Games, Inc. の商標または登録商標です。"
+ "Unreal、Unreal Technology、および Powered by Unreal Technology ロゴは、米国およびその他の国と地域における Epic Games, Inc. の商標または登録商標です。"
## 必須の著作権表示
@@ -34,9 +36,9 @@ Description:アンリアル エンジン 4 を使用したゲームの販売時
(公式ゲームのパッケージの裏側など)。
ライセンシーは、ゲームの外箱に "Powered by Unreal Technology" ロゴを表示することに合意するものとします。
-ライセンシーはまた、ゲームのオープニングシークエンスまたはスプラッシュスクリーンに "Powered by Unreal Technology" ロゴを
-表示することに合意するものとします。ライセンシーは、"Powered by Unreal Technology" ロゴのいかなる表示において **_アンリアル・エンジン スタイルガイド_** に準拠することに合意するものとします。
-スタイルガイドは [Trademarks And Logos](Support/BusinessAndLegal/TrademarksAndLogos) のページを参照してください。
+ライセンシーはまた、ゲームのオープニング シークエンスまたはスプラッシュ スクリーンに "Powered by Unreal Technology" ロゴを
+表示することに合意するものとします。ライセンシーは、"Powered by Unreal Technology" ロゴのいかなる表示においても **_アンリアル・エンジン スタイルガイド_** に準拠することに合意するものとします。
+スタイルガイドは [Logo & Branding](https://www.unrealengine.com/branding) のページを参照してください。
静止ロゴの代替として、アニメーションロゴも利用可能です。
@@ -45,14 +47,13 @@ Unreal Technology ロゴを物理媒体のラベルに表示する必要はあ
## 第三者ソフトウェア
-ライセンシーは、ゲームで使用したその他の第三者ソフトウェアが必須とする適切な法的通知を必ず表示しなくてはいけません。
-Unreal® Engine に格納されているライブラリのリストおよびこれらに付随する権利表記は、
-[Third Party Software](Support/BusinessAndLegal/ThirdPartySoftware) を参照してください。
+ライセンシーは、ゲームで使用したその他の第三者ソフトウェアが必須とする適切な法的通知を
+必ず表示しなくてはいけません。
## 公式コンテンツ
-アンリアル エディタ版で作成したその他のゲームまたは製品の販売は、ライセンシーがユーザーコンテンツに
-セーフガードを実装しない限り、公式ゲームと潜在的に互換性を持つコンテンツを作成することができます。
-他者から供給されるユーザーコンテンツと公式ゲームを非互換性とするには、
-ライセンシーは、公式ゲームが承認ツールからのみコンテンツの受け取りを可能にする措置を取らなければいけません。
+その他のゲームまたは製品はアンリアル エディタのバージョンと合わせてシッピングされることがあり、その場合ライセンシーがそうしたユーザー コンテンツに
+セーフガードを実装しない限り、ユーザーは公式ゲームと互換性を持ちうるコンテンツを作成することができます。
+他のソースからのユーザー コンテンツと公式ゲームを非互換にするには、
+ライセンシーは、公式ゲームが認可されたツールからのみコンテンツを受け取るようにする措置 (例、公式ゲーム用のエディタ) を取らなければいけません。上述のコンテンツに影響を受けない公式ゲームの作成は
上述のコンテンツに影響を受けない公式ゲームの作成はすべてライセンシーの責任となります。
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.KOR.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.KOR.udn
index 162c6b859a08..d318d5c6b605 100644
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.KOR.udn
+++ b/Engine/Documentation/Source/Support/BusinessAndLegal/ShippingChecklist/ShippingChecklist.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3108692
+INTSourceChangelist:3473445
Availability:Licensee
Title: 출하 점검목록
Crumbs:%ROOT%, Support/BusinessAndLegal
@@ -37,7 +37,7 @@ Version: 4.9
라이선시는 게임의 물리적 포장에 "Powered by Unreal Technology" 로고를,
또한 게임의 스플래시 화면이나 시작 화면에 "Powered by Unreal Technology" 로고를 넣는다는 것에 동의합니다.
"Powered by Unreal Technology" 로고의 표시는
-[상호와 로고](Support/BusinessAndLegal/TrademarksAndLogos) 페이지에서 찾을 수 있는
+[로고 & 브랜드](https://www.unrealengine.com/branding) 페이지에서 찾을 수 있는
**_언리얼 엔진 스타일 가이드_** 를 따른다는 데 동의합니다.
정적인 로고에 대한 대안으로 애니메이션 버전도 가능합니다.
@@ -47,9 +47,8 @@ Version: 4.9
## 써드 파티 소프트웨어
-라이선시는 게임에 사용된 다른 써드 파티 소프트웨어가 요구하는 법적 문구를 알맞게 실어야 합니다. 언리얼 엔진에 포함된
-라이브러리 목록과 그에 따르는 법적 문구는 [써드 파티 소프트웨어](Support/BusinessAndLegal/ThirdPartySoftware)
-페이지에서 찾아보실 수 있습니다.
+라이선시는 게임에 사용된 다른 써드 파티 소프트웨어가 요구하는 법적 문구를 알맞게 실어야
+합니다.
## 승인된 콘텐츠
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.CHN.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.CHN.udn
deleted file mode 100644
index 9c011869b18b..000000000000
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.CHN.udn
+++ /dev/null
@@ -1,24 +0,0 @@
-INTSourceChangelist:2363518
-Availability:Licensee
-Title: 商标和标识
-Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:以印刷形式、游戏内使用形式和在网络上使用属于Epic Games, Inc的商标和标识的指南。
-
-
-虚幻引擎标识和商标只供授权合作伙伴以及符合条件的Epic Games的虚幻引擎授权用户使用。
-
-请参考虚幻引擎4风格指南了解虚幻引擎标识的所有要求、限制和使用说明。
-
-如果对风格指南中的标识使用指南不清楚,请通过向Epic的市场部– [branding@unrealengine.com](mailto:branding@unrealengine.com)发送邮件提交JPEG或PDF格式资料以供审核。 请为Epic预留足够的时间进行审核及回应。 Epic没有回应并不表示同意。 在继续后续的操作之前,您必须得到Epic游戏的首肯。
-
-## 虚幻引擎4风格指南
-
-* [风格指南](UE4_Styleguide.pdf) (PDF 3.3MB)
-
-
-## 虚幻引擎4认证的商标
-
-* [打印 & 网络商标](Print_and_Web.zip) (.ZIP 13.5MB)
-* [启动屏幕商标](SplashScreen.zip) (.ZIP 0.3MB)
-* [集成伙伴商标](IntegratedPartner.zip) (.ZIP 3.7MB)
-* [水平商标](Horizontal.zip) (.ZIP 1.4MB)
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.INT.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.INT.udn
deleted file mode 100644
index 9ea97a574dcc..000000000000
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.INT.udn
+++ /dev/null
@@ -1,30 +0,0 @@
-Availability:Licensee
-Title: Trademarks and Logos
-Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:Guide to using the trademarks and logos belonging to Epic Games, Inc. in print, in games, and on the web.
-Version: 4.9
-
-
-The use of the Unreal Engine Logo and Trademarks is available only to licensed partners and qualified Unreal Engine
-licensees of Epic Games.
-
-Please reference the UE4 Style Guide for all requirements, restrictions and usage instructions for the Unreal Engine
-logo.
-
-If a circumstance arises where the style guide is unclear on logo usage direction, please submit materials to be approved
-in JPEG or PDF format by email to Epic's marketing department contact - [branding@unrealengine.com](mailto:branding@unrealengine.com). Please allow
-sufficient time for Epic to review and respond. A failure by Epic to respond does NOT indicate approval. You must receive
-actual approval from Epic games before proceeding.
-
-## UE4 Style Guide
-
-* [Style Guide](UE4_Styleguide.pdf) (PDF 3.3MB)
-
-
-## UE4 Approved Logos
-
-* [Print & Web Logos](Print_and_Web.zip) (.ZIP 13.5MB)
-* [Start-up screen Logos](SplashScreen.zip) (.ZIP 0.3MB)
-* [Integrated Partner Logos](IntegratedPartner.zip) (.ZIP 3.7MB)
-* [Horizontal Logos](Horizontal.zip) (.ZIP 1.4MB)
-
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.JPN.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.JPN.udn
deleted file mode 100644
index 1b2db09ebc67..000000000000
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.JPN.udn
+++ /dev/null
@@ -1,30 +0,0 @@
-INTSourceChangelist:2363518
-Availability:Licensee
-Title:商標とロゴ
-Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:印刷物、ゲーム内、ウェブ上での Epic Games, Inc. に帰属する商標とロゴの使用に関するガイド
-
-
-「Unreal Engine」ロゴと商標の使用は、
-認可を受けたビジネスパートナーと Epic Games の「Unreal Engine」正規ライセンシーのみが利用できます。
-
-「Unreal Engine」ロゴに関する条件、制限事項、
-使用に関する説明は、 UE4 スタイルガイドを参照してください。
-
-スタイルガイド上でロゴの使用説明に不明瞭な点が生じた場合、 PDF フォーマットの資料を Epic 社のマーケティングディレクター、
- Rex Stover (mailto:rex.stover@epicgames.com) 宛に E メールで送信の上承認を得てください。書類の精査と返答までに
-特定のお時間を要しますこと予めご了承願います。当社からの返答がない状況が、承認を得たという解釈にはなりませんのでご注意ください。ロゴの使用前に
-必ず当社からの承認を得てください。
-
-## UE4 スタイルガイド
-
-* [スタイルガイド](UE4_Styleguide.pdf) (PDF 3.3MB)
-
-
-## UE4 で許可されているロゴ
-
-* [Print & Web Logos](Print_and_Web.zip) (.ZIP 13.5MB)
-* [Start-up screen Logos](SplashScreen.zip) (.ZIP 0.3MB)
-* [Integrated Partner Logos](IntegratedPartner.zip) (.ZIP 3.7MB)
-* [Horizontal Logos](Horizontal.zip) (.ZIP 1.4MB)
-
diff --git a/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.KOR.udn b/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.KOR.udn
deleted file mode 100644
index ad93154fb74c..000000000000
--- a/Engine/Documentation/Source/Support/BusinessAndLegal/TrademarksAndLogos/TrademarksAndLogos.KOR.udn
+++ /dev/null
@@ -1,30 +0,0 @@
-INTSourceChangelist:3108692
-Availability:Licensee
-Title: 상호와 로고
-Crumbs:%ROOT%, Support/BusinessAndLegal
-Description:에픽 게임스의 상호와 로고를 인쇄물, 게임, 웹에서 사용하는 데 대한 안내서입니다.
-Version: 4.9
-
-
-언리얼 엔진 로고와 상호의 사용은 라이선싱 파트너와 에픽 게임스의 언리얼 엔진 라이선시에게만
-사용이 허가되어 있습니다.
-
-언리얼 엔진 로고 사용 관련 조건, 제약, 사용 지침에 대해서는 'UE4 스타일 가이드'를 참고해 주시기
-바랍니다.
-
-스타일 가이드의 로고 사용 지침에 딱 들어맞지 않는 사례가 발생한 경우, 해당 자료를 JPEG 나 PDF 포맷으로 하여
-에픽의 마케팅 담당자 [branding@unrealengine.com](mailto:branding@unrealengine.com) 에게 보내어 승인을 받아
-주시기 바랍니다. 에픽이 검토하여 답변드릴 수 있도록 충분한 시간을 주십시오. 에픽의 답변이 없다고 해서 승인한 것은
-아닙니다. 실사용을 위해서는 먼저 에픽 게임스에게 실제 승인을 받아야 합니다.
-
-## UE4 스타일 가이드
-
-* [스타일 가이드](UE4_Styleguide.pdf) (PDF 3.3MB)
-
-
-## UE4 승인 로고
-
-* [인쇄물 & 웹 로고](Print_and_Web.zip) (.ZIP 13.5MB)
-* [시작 화면 로고](SplashScreen.zip) (.ZIP 0.3MB)
-* [통합 파트너 로고](IntegratedPartner.zip) (.ZIP 3.7MB)
-* [가로 로고](Horizontal.zip) (.ZIP 1.4MB)
diff --git a/Engine/Documentation/Source/UE4Home.INT.udn b/Engine/Documentation/Source/UE4Home.INT.udn
index 7d24b7dd8090..667bc60019b8 100644
--- a/Engine/Documentation/Source/UE4Home.INT.udn
+++ b/Engine/Documentation/Source/UE4Home.INT.udn
@@ -58,6 +58,12 @@ type:landing
[PARAMLITERAL:terms]
UMG UI
[/PARAMLITERAL]
+ [PARAMLITERAL:terms]
+ Sequencer
+ [/PARAMLITERAL]
+ [PARAMLITERAL:terms]
+ VR
+ [/PARAMLITERAL]
[/OBJECT]
[/REGION]
diff --git a/Engine/Documentation/Source/UE4Home.KOR.udn b/Engine/Documentation/Source/UE4Home.KOR.udn
index 4615cd463a1d..6c0e7294f83d 100644
--- a/Engine/Documentation/Source/UE4Home.KOR.udn
+++ b/Engine/Documentation/Source/UE4Home.KOR.udn
@@ -1,4 +1,4 @@
-INTSourceChangelist:3151855
+INTSourceChangelist:3429222
Availability:Public
Title: 언리얼 엔진 4 문서
Crumbs:
@@ -59,6 +59,12 @@ type:landing
[PARAMLITERAL:terms]
UMG UI
[/PARAMLITERAL]
+ [PARAMLITERAL:terms]
+ 시퀀서
+ [/PARAMLITERAL]
+ [PARAMLITERAL:terms]
+ VR
+ [/PARAMLITERAL]
[/OBJECT]
[/REGION]
diff --git a/Engine/Extras/ThirdPartyNotUE/emsdk/Emscripten_License_v1.36.11.txt b/Engine/Extras/ThirdPartyNotUE/emsdk/Emscripten_License_v1.36.11.txt
deleted file mode 100644
index 271131375e59..000000000000
--- a/Engine/Extras/ThirdPartyNotUE/emsdk/Emscripten_License_v1.36.11.txt
+++ /dev/null
@@ -1,101 +0,0 @@
-Emscripten is available under 2 licenses, the MIT license and the
-University of Illinois/NCSA Open Source License.
-
-Both are permissive open source licenses, with little if any
-practical difference between them.
-
-The reason for offering both is that (1) the MIT license is
-well-known, while (2) the University of Illinois/NCSA Open Source
-License allows Emscripten's code to be integrated upstream into
-LLVM, which uses that license, should the opportunity arise.
-
-The full text of both licenses follows.
-
-==============================================================================
-
-Copyright (c) 2010-2014 Emscripten authors, see AUTHORS file.
-
-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.
-
-==============================================================================
-
-Copyright (c) 2010-2014 Emscripten authors, see AUTHORS file.
-All rights reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and associated documentation files (the
-"Software"), to deal with 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:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimers.
-
- Redistributions in binary form must reproduce the above
- copyright notice, this list of conditions and the following disclaimers
- in the documentation and/or other materials provided with the
- distribution.
-
- Neither the names of Mozilla,
- nor the names of its contributors may be used to endorse
- or promote products derived from this Software without specific prior
- written permission.
-
-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 CONTRIBUTORS 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 WITH THE SOFTWARE.
-
-==============================================================================
-
-This program uses portions of Node.js source code located in src/library_path.js,
-in accordance with the terms of the MIT license. Node's license follows:
-
- """
- Copyright Joyent, Inc. and other Node contributors. All rights reserved.
- 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 musl libc project is bundled in this repo, and it has the MIT license, see
-system/lib/libc/musl/COPYRIGHT
-
-The third_party/ subdirectory contains code with other licenses. None of it is
-used by default, but certain options use it (e.g., the optional closure compiler
-flag will run closure compiler from third_party/).
\ No newline at end of file
diff --git a/Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/1.37.9/emcc.py b/Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/1.37.9/emcc.py
index d3cfa07fe11f..1dc477e3929c 100755
--- a/Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/1.37.9/emcc.py
+++ b/Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/1.37.9/emcc.py
@@ -1358,6 +1358,11 @@ There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR P
newargs.append('-mllvm')
newargs.append('-disable-llvm-optzns')
+ ## *** UE4 EDIT start ***
+ if shared.Settings.USE_WEBGL2:
+ newargs.append('-DUE4_HTML5_TARGET_WEBGL2=1')
+ ## *** UE4 EDIT end ***
+
shared.Settings.EMSCRIPTEN_VERSION = shared.EMSCRIPTEN_VERSION
shared.Settings.OPT_LEVEL = opt_level
shared.Settings.DEBUG_LEVEL = debug_level
diff --git a/Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/1.37.9/tools/shared.py b/Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/1.37.9/tools/shared.py
index fd458fce819a..0b8ce68b80b9 100755
--- a/Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/1.37.9/tools/shared.py
+++ b/Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/1.37.9/tools/shared.py
@@ -1877,6 +1877,7 @@ class Building:
undefs = []
commons = []
for line in output.split('\n'):
+ line = line.rstrip('\r') # EPIC EDIT -- nick.shin 2017.05.15 -- if symbol files has DOS line endings, this is needed for Linux/OSX builds [UE-44779]
if len(line) == 0: continue
if ':' in line: continue # e.g. filename.o: , saying which file it's from
parts = filter(lambda seg: len(seg) > 0, line.split(' '))
diff --git a/Engine/Extras/VisualStudioDebugging/InstallVisualizers.bat b/Engine/Extras/VisualStudioDebugging/InstallVisualizers.bat
index e4f1f9301e43..37e54d16e8ba 100644
--- a/Engine/Extras/VisualStudioDebugging/InstallVisualizers.bat
+++ b/Engine/Extras/VisualStudioDebugging/InstallVisualizers.bat
@@ -8,6 +8,7 @@ if "%VS140COMNTOOLS%" neq "" (
set FoundVSInstance=1
mkdir "%USERPROFILE%\Documents\Visual Studio 2015\Visualizers"
copy UE4.natvis "%USERPROFILE%\Documents\Visual Studio 2015\Visualizers"
+ copy UE4_Android_Nsight.dat "%VS140COMNTOOLS%\..\IDE\Extensions\NVIDIA\Nsight Tegra\3.4\Debuggers\Visualizers"
echo Installed visualizers for Visual Studio 2015
)
@@ -25,10 +26,8 @@ if "%VS110COMNTOOLS%" neq "" (
echo Installed visualizers for Visual Studio 2012
)
-if "%SCE_ORBIS_SDK_DIR%" neq "" (
- mkdir "%USERPROFILE%\Documents\SCE\orbis-debugger"
- copy PS4UE4.natvis "%USERPROFILE%\Documents\SCE\orbis-debugger"
- echo Installed Visualizers for Orbis
+if exist PS4\InstallPS4Visualizer.bat (
+ call PS4\InstallPS4Visualizer.bat
)
if "%FoundVSInstance%" equ "0" (
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Classes/PaperSprite.h b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Classes/PaperSprite.h
index 7cec959348dd..1377a975a6fc 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Classes/PaperSprite.h
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Classes/PaperSprite.h
@@ -15,7 +15,7 @@ class UMaterialInterface;
class UPaperSpriteAtlas;
//@TODO: Should have some nice UI and enforce unique names, etc...
-USTRUCT()
+USTRUCT(BlueprintType)
struct FPaperSpriteSocket
{
GENERATED_USTRUCT_BODY()
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Classes/PaperTileSet.h b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Classes/PaperTileSet.h
index 79429024c0a1..3d222f074aaf 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Classes/PaperTileSet.h
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Classes/PaperTileSet.h
@@ -13,7 +13,7 @@
struct FPaperTileInfo;
// Information about a single tile in a tile set
-USTRUCT(meta=(ShowOnlyInnerProperties))
+USTRUCT(BlueprintType, meta=(ShowOnlyInnerProperties))
struct PAPER2D_API FPaperTileMetadata
{
public:
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperFlipbookComponent.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperFlipbookComponent.cpp
index d48f8f5554f1..fd514e0cf81f 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperFlipbookComponent.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperFlipbookComponent.cpp
@@ -313,6 +313,8 @@ void UPaperFlipbookComponent::TickFlipbook(float DeltaTime)
}
}
+/// @cond DOXYGEN_WARNINGS
+
void UPaperFlipbookComponent::GetLifetimeReplicatedProps(TArray< FLifetimeProperty > & OutLifetimeProps) const
{
Super::GetLifetimeReplicatedProps(OutLifetimeProps);
@@ -320,6 +322,8 @@ void UPaperFlipbookComponent::GetLifetimeReplicatedProps(TArray< FLifetimeProper
DOREPLIFETIME(UPaperFlipbookComponent, SourceFlipbook);
}
+/// @endcond
+
void UPaperFlipbookComponent::OnRep_SourceFlipbook(class UPaperFlipbook* OldFlipbook)
{
if (OldFlipbook != SourceFlipbook)
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperSprite.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperSprite.cpp
index 03e212259189..915c2c8fb473 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperSprite.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperSprite.cpp
@@ -785,18 +785,10 @@ void UPaperSprite::RebuildCollisionData()
switch (SpriteCollisionDomain)
{
case ESpriteCollisionMode::Use3DPhysics:
- BodySetup = nullptr;
- if (BodySetup == nullptr)
- {
- BodySetup = NewObject(this);
- }
+ BodySetup = NewObject(this);
break;
case ESpriteCollisionMode::Use2DPhysics:
- BodySetup = nullptr;
- if (BodySetup == nullptr)
- {
- BodySetup = NewObject(this);
- }
+ BodySetup = NewObject(this);
break;
case ESpriteCollisionMode::None:
BodySetup = nullptr;
@@ -2085,10 +2077,8 @@ void FSpriteGeometryCollisionBuilderBase::ProcessGeometry(const FSpriteGeometryC
void FSpriteGeometryCollisionBuilderBase::Finalize()
{
// Rebuild the body setup
-#if WITH_PHYSX && (WITH_RUNTIME_PHYSICS_COOKING || WITH_EDITOR)
MyBodySetup->InvalidatePhysicsData();
MyBodySetup->CreatePhysicsMeshes();
-#endif
}
void FSpriteGeometryCollisionBuilderBase::AddBoxCollisionShapesToBodySetup(const FSpriteGeometryCollection& InGeometry)
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperTileMap.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperTileMap.cpp
index a002d3d0cd5c..2181d94b6e1f 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperTileMap.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/PaperTileMap.cpp
@@ -277,10 +277,8 @@ void UPaperTileMap::UpdateBodySetup()
}
// Finalize the BodySetup
-#if WITH_PHYSX && (WITH_RUNTIME_PHYSICS_COOKING || WITH_EDITOR)
BodySetup->InvalidatePhysicsData();
BodySetup->CreatePhysicsMeshes();
-#endif
}
void UPaperTileMap::GetTileToLocalParameters(FVector& OutCornerPosition, FVector& OutStepX, FVector& OutStepY, FVector& OutOffsetYFactor) const
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/Terrain/PaperTerrainComponent.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/Terrain/PaperTerrainComponent.cpp
index 2ed8a746a989..1703847b01d3 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/Terrain/PaperTerrainComponent.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2D/Private/Terrain/PaperTerrainComponent.cpp
@@ -261,18 +261,18 @@ FTransform UPaperTerrainComponent::GetTransformAtDistance(float InDistance) cons
LocalTransform = FTransform(FRotator(0.0f, 180.0f, 0.0f), FVector::ZeroVector) * LocalTransform;
#if PAPER_TERRAIN_DRAW_DEBUG
- FTransform WorldTransform = LocalTransform * ComponentToWorld;
+ FTransform WorldTransform = LocalTransform * GetComponentToWorld();
const float Time = 2.5f;
DrawDebugCoordinateSystem(GetWorld(), WorldTransform.GetLocation(), FRotator(WorldTransform.GetRotation()), 15.0f, true, Time, SDPG_Foreground);
-// FVector WorldPos = ComponentToWorld.TransformPosition(Position3D);
+// FVector WorldPos = GetComponentTransform().TransformPosition(Position3D);
// WorldPos.Y -= 0.01;
//
-// //DrawDebugLine(GetWorld(), WorldPos, WorldPos + ComponentToWorld.TransformVector(Tangent) * 10.0f, FColor::Red, true, Time);
-// // DrawDebugLine(GetWorld(), WorldPos, WorldPos + ComponentToWorld.TransformVector(NormalEst) * 10.0f, FColor::Green, true, Time);
-// // DrawDebugLine(GetWorld(), WorldPos, WorldPos + ComponentToWorld.TransformVector(Bitangent) * 10.0f, FColor::Blue, true, Time);
-// //DrawDebugLine(GetWorld(), WorldPos, WorldPos + ComponentToWorld.TransformVector(Floop) * 10.0f, FColor::Yellow, true, Time);
+// //DrawDebugLine(GetWorld(), WorldPos, WorldPos + GetComponentTransform().TransformVector(Tangent) * 10.0f, FColor::Red, true, Time);
+// // DrawDebugLine(GetWorld(), WorldPos, WorldPos + GetComponentTransform().TransformVector(NormalEst) * 10.0f, FColor::Green, true, Time);
+// // DrawDebugLine(GetWorld(), WorldPos, WorldPos + GetComponentTransform().TransformVector(Bitangent) * 10.0f, FColor::Blue, true, Time);
+// //DrawDebugLine(GetWorld(), WorldPos, WorldPos + GetComponentTransform().TransformVector(Floop) * 10.0f, FColor::Yellow, true, Time);
// // DrawDebugPoint(GetWorld(), WorldPos, 4.0f, FColor::White, true, 1.0f);
#endif
@@ -706,11 +706,11 @@ void UPaperTerrainComponent::OnSplineEdited()
{
const float Time = 5.0f;
{
- FTransform WorldTransform = GetTransformAtDistance(0.0f) * ComponentToWorld;
+ FTransform WorldTransform = GetTransformAtDistance(0.0f) * GetComponentTransform();
DrawDebugCoordinateSystem(GetWorld(), WorldTransform.GetLocation(), FRotator(WorldTransform.GetRotation()), 30.0f, true, Time, SDPG_Foreground);
}
{
- FTransform WorldTransform = GetTransformAtDistance(SplineLength) * ComponentToWorld;
+ FTransform WorldTransform = GetTransformAtDistance(SplineLength) * GetComponentTransform();
DrawDebugCoordinateSystem(GetWorld(), WorldTransform.GetLocation(), FRotator(WorldTransform.GetRotation()), 30.0f, true, Time, SDPG_Foreground);
}
}
@@ -720,10 +720,8 @@ void UPaperTerrainComponent::OnSplineEdited()
if (CachedBodySetup != nullptr)
{
// Finalize the BodySetup
-#if WITH_PHYSX && (WITH_RUNTIME_PHYSICS_COOKING || WITH_EDITOR)
CachedBodySetup->InvalidatePhysicsData();
CachedBodySetup->CreatePhysicsMeshes();
-#endif
}
RecreateRenderState_Concurrent();
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/FlipbookEditor/SFlipbookTimeline.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/FlipbookEditor/SFlipbookTimeline.cpp
index 1c30a14b6edd..f0ee6253c77a 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/FlipbookEditor/SFlipbookTimeline.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/FlipbookEditor/SFlipbookTimeline.cpp
@@ -175,7 +175,7 @@ void SFlipbookTimeline::OnAssetsDropped(const class FAssetDragDropOp& DragDropOp
{
//@TODO: Support inserting in addition to dropping at the end
TArray NewFrames;
- for (const FAssetData& AssetData : DragDropOp.AssetData)
+ for (const FAssetData& AssetData : DragDropOp.GetAssets())
{
if (UObject* Object = AssetData.GetAsset())
{
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/GroupedSprites/PaperGroupedSpriteUtilities.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/GroupedSprites/PaperGroupedSpriteUtilities.cpp
index bbc7963b35ce..5d860c37e93a 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/GroupedSprites/PaperGroupedSpriteUtilities.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/GroupedSprites/PaperGroupedSpriteUtilities.cpp
@@ -132,10 +132,7 @@ void FPaperGroupedSpriteUtilities::SplitSprites(const TArray& InObject
ActorsCreated.Add(SpawnedActor);
// Give it a good name
- if (InstanceData.SourceSprite != nullptr)
- {
- FActorLabelUtilities::SetActorLabelUnique(SpawnedActor, InstanceData.SourceSprite->GetName());
- }
+ FActorLabelUtilities::SetActorLabelUnique(SpawnedActor, InstanceData.SourceSprite->GetName());
}
}
}
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/MeshPainting/MeshPaintSpriteAdapter.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/MeshPainting/MeshPaintSpriteAdapter.cpp
index ca13c0d38795..1eb1e3ace205 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/MeshPainting/MeshPaintSpriteAdapter.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/MeshPainting/MeshPaintSpriteAdapter.cpp
@@ -235,6 +235,32 @@ TArray FMeshPaintSpriteAdapter::SphereIntersectVertices(const float Com
return InRangeVertices;
}
+void FMeshPaintSpriteAdapter::GetInfluencedVertexData(const float ComponentSpaceSquaredBrushRadius, const FVector& ComponentSpaceBrushPosition, const FVector& ComponentSpaceCameraPosition, const bool bOnlyFrontFacing, TArray>& OutData) const
+{
+ // Get a list of (optionally front-facing) triangles that are within a reasonable distance to the brush
+ TArray InfluencedTriangles = SphereIntersectTriangles(
+ ComponentSpaceSquaredBrushRadius,
+ ComponentSpaceBrushPosition,
+ ComponentSpaceCameraPosition,
+ bOnlyFrontFacing);
+
+ // Make sure we're dealing with triangle lists
+ const int32 NumIndexBufferIndices = MeshIndices.Num();
+ check(NumIndexBufferIndices % 3 == 0);
+
+ OutData.Reserve(InfluencedTriangles.Num() * 3);
+ for(int32 InfluencedTriangle : InfluencedTriangles)
+ {
+ for(int32 Index = 0; Index < 3; ++Index)
+ {
+ OutData.AddDefaulted();
+ TPair& OutPair = OutData.Last();
+ OutPair.Key = MeshIndices[InfluencedTriangle * 3 + Index];
+ OutPair.Value = MeshVertices[OutPair.Key];
+ }
+ }
+}
+
//////////////////////////////////////////////////////////////////////////
// FMeshPaintSpriteAdapterFactory
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/MeshPainting/MeshPaintSpriteAdapter.h b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/MeshPainting/MeshPaintSpriteAdapter.h
index e90d77bb1ff9..c1933f0db09b 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/MeshPainting/MeshPaintSpriteAdapter.h
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/MeshPainting/MeshPaintSpriteAdapter.h
@@ -46,9 +46,12 @@ public:
virtual FMatrix GetComponentToWorldMatrix() const override;
virtual void GetInfluencedVertexIndices(const float ComponentSpaceSquaredBrushRadius, const FVector& ComponentSpaceBrushPosition, const FVector& ComponentSpaceCameraPosition, const bool bOnlyFrontFacing, TSet &InfluencedVertices) const override;
+ virtual void GetInfluencedVertexData(const float ComponentSpaceSquaredBrushRadius, const FVector& ComponentSpaceBrushPosition, const FVector& ComponentSpaceCameraPosition, const bool bOnlyFrontFacing, TArray>& OutData) const override;
virtual TArray SphereIntersectVertices(const float ComponentSpaceSquaredBrushRadius, const FVector& ComponentSpaceBrushPosition, const FVector& ComponentSpaceCameraPosition, const bool bOnlyFrontFacing) const override;
+
+
protected:
UPaperSpriteComponent* SpriteComponent;
UPaperSprite* Sprite;
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/PaperEditorShared/SpriteGeometryEditing.h b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/PaperEditorShared/SpriteGeometryEditing.h
index ab9ac5042fcf..7a3c099c3aaa 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/PaperEditorShared/SpriteGeometryEditing.h
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/PaperEditorShared/SpriteGeometryEditing.h
@@ -69,7 +69,7 @@ public:
virtual bool CanDeleteSelection() const;
- ~FSpriteSelectionHelper()
+ virtual ~FSpriteSelectionHelper()
{
}
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/TileMapEditing/EdModeTileMap.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/TileMapEditing/EdModeTileMap.cpp
index 3aea76db8f30..5148f1aa9458 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/TileMapEditing/EdModeTileMap.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/TileMapEditing/EdModeTileMap.cpp
@@ -637,7 +637,7 @@ UPaperTileLayer* FEdModeTileMap::GetSelectedLayerUnderCursor(const FViewportCurs
{
UPaperTileLayer* Layer = TileMap->TileLayers[LayerIndex];
- ComponentToWorld = (TileMapComponent != nullptr) ? TileMapComponent->ComponentToWorld : FTransform::Identity;
+ ComponentToWorld = TileMapComponent->ComponentToWorld;
const FVector LocalStart = ComponentToWorld.InverseTransformPosition(TraceStart);
const FVector LocalDirection = ComponentToWorld.InverseTransformVector(TraceDir);
const FVector LocalEnd = LocalStart + (LocalDirection * HALF_WORLD_MAX);
diff --git a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/TileMapEditing/PaperTileMapDetailsCustomization.cpp b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/TileMapEditing/PaperTileMapDetailsCustomization.cpp
index 99b0b61fbb21..233306049fb9 100644
--- a/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/TileMapEditing/PaperTileMapDetailsCustomization.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/TileMapEditing/PaperTileMapDetailsCustomization.cpp
@@ -358,7 +358,7 @@ FReply FPaperTileMapDetailsCustomization::OnPromoteToAssetButtonClicked()
PromotionFactory->AssetToRename = TileMapComponent->TileMap;
FAssetToolsModule& AssetToolsModule = FAssetToolsModule::GetModule();
- UObject* NewAsset = AssetToolsModule.Get().CreateAsset(PromotionFactory->GetSupportedClass(), PromotionFactory);
+ UObject* NewAsset = AssetToolsModule.Get().CreateAssetWithDialog(PromotionFactory->GetSupportedClass(), PromotionFactory);
// Show it in the content browser
TArray ObjectsToSync;
diff --git a/Engine/Plugins/2D/Paper2D/Source/PaperSpriteSheetImporter/Private/PaperJsonSpriteSheetImporter.cpp b/Engine/Plugins/2D/Paper2D/Source/PaperSpriteSheetImporter/Private/PaperJsonSpriteSheetImporter.cpp
index b1e1ce4d1429..b090610ec4cf 100644
--- a/Engine/Plugins/2D/Paper2D/Source/PaperSpriteSheetImporter/Private/PaperJsonSpriteSheetImporter.cpp
+++ b/Engine/Plugins/2D/Paper2D/Source/PaperSpriteSheetImporter/Private/PaperJsonSpriteSheetImporter.cpp
@@ -595,11 +595,7 @@ bool FPaperJsonSpriteSheetImporter::PerformImport(const FString& LongPackagePath
AssetToolsModule.Get().CreateUniqueAssetName(TentativePackagePath, DefaultSuffix, /*out*/ PackageName, /*out*/ AssetName);
// Create a unique package name and asset name for the frame
- if (OuterForFrame == nullptr)
- {
- // Create a package for the frame
- OuterForFrame = CreatePackage(nullptr, *PackageName);
- }
+ OuterForFrame = CreatePackage(nullptr, *PackageName);
// Create the asset
TargetSprite = NewObject(OuterForFrame, *AssetName, Flags);
diff --git a/Engine/Plugins/Blendables/LightPropagationVolume/Source/LightPropagationVolumeRuntime/LightPropagationVolumeRuntime.Build.cs b/Engine/Plugins/Blendables/LightPropagationVolume/Source/LightPropagationVolumeRuntime/LightPropagationVolumeRuntime.Build.cs
index a7e7fe61003c..90ba318de432 100644
--- a/Engine/Plugins/Blendables/LightPropagationVolume/Source/LightPropagationVolumeRuntime/LightPropagationVolumeRuntime.Build.cs
+++ b/Engine/Plugins/Blendables/LightPropagationVolume/Source/LightPropagationVolumeRuntime/LightPropagationVolumeRuntime.Build.cs
@@ -6,11 +6,14 @@ public class LightPropagationVolumeRuntime : ModuleRules
{
public LightPropagationVolumeRuntime(ReadOnlyTargetRules Target) : base(Target)
{
+ ShortName = "LPVRuntime";
+
PrivateDependencyModuleNames.AddRange(
new string[] {
"Core",
"CoreUObject",
"Engine", // FBlendableManager
+ "Renderer"
// "RHI",
// "RenderCore",
// "ShaderCore",
diff --git a/Engine/Plugins/Blendables/LightPropagationVolume/Source/LightPropagationVolumeRuntime/Public/LightPropagationVolumeBlendable.h b/Engine/Plugins/Blendables/LightPropagationVolume/Source/LightPropagationVolumeRuntime/Public/LightPropagationVolumeBlendable.h
index 8f08cd8b1c8e..986f0ea68f22 100644
--- a/Engine/Plugins/Blendables/LightPropagationVolume/Source/LightPropagationVolumeRuntime/Public/LightPropagationVolumeBlendable.h
+++ b/Engine/Plugins/Blendables/LightPropagationVolume/Source/LightPropagationVolumeRuntime/Public/LightPropagationVolumeBlendable.h
@@ -6,154 +6,9 @@
#include "UObject/ObjectMacros.h"
#include "UObject/Object.h"
#include "Engine/BlendableInterface.h"
+#include "LightPropagationVolumeSettings.h"
#include "LightPropagationVolumeBlendable.generated.h"
-USTRUCT(BlueprintType)
-struct FLightPropagationVolumeSettings
-{
- GENERATED_USTRUCT_BODY()
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category=Overrides, meta=(PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVIntensity:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVDirectionalOcclusionIntensity:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVDirectionalOcclusionRadius:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVDiffuseOcclusionExponent:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVSpecularOcclusionExponent:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVDiffuseOcclusionIntensity:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVSpecularOcclusionIntensity:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVSize:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVSecondaryOcclusionIntensity:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVSecondaryBounceIntensity:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVGeometryVolumeBias:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVVplInjectionBias:1;
-
- UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Overrides, meta = (PinHiddenByDefault, InlineEditConditionToggle))
- uint32 bOverride_LPVEmissiveInjectionIntensity:1;
-
- /** How strong the dynamic GI from the LPV should be. 0.0 is off, 1.0 is the "normal" value, but higher values can be used to boost the effect*/
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, meta=(editcondition = "bOverride_LPVIntensity", UIMin = "0", UIMax = "20", DisplayName = "Intensity") )
- float LPVIntensity;
-
- /** Bias applied to light injected into the LPV in cell units. Increase to reduce bleeding through thin walls*/
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVVplInjectionBias", UIMin = "0", UIMax = "2", DisplayName = "Light Injection Bias") )
- float LPVVplInjectionBias;
-
- /** The size of the LPV volume, in Unreal units*/
- UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=LightPropagationVolume, meta=(editcondition = "bOverride_LPVSize", UIMin = "100", UIMax = "20000", DisplayName = "Size") )
- float LPVSize;
-
- /** Secondary occlusion strength (bounce light shadows). Set to 0 to disable*/
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, meta=(editcondition = "bOverride_LPVSecondaryOcclusionIntensity", UIMin = "0", UIMax = "1", DisplayName = "Secondary Occlusion Intensity") )
- float LPVSecondaryOcclusionIntensity;
-
- /** Secondary bounce light strength (bounce light shadows). Set to 0 to disable*/
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVSecondaryBounceIntensity", UIMin = "0", UIMax = "1", DisplayName = "Secondary Bounce Intensity") )
- float LPVSecondaryBounceIntensity;
-
- /** Bias applied to the geometry volume in cell units. Increase to reduce darkening due to secondary occlusion */
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVGeometryVolumeBias", UIMin = "0", UIMax = "2", DisplayName = "Geometry Volume Bias"))
- float LPVGeometryVolumeBias;
-
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVEmissiveInjectionIntensity", UIMin = "0", UIMax = "20", DisplayName = "Emissive Injection Intensity") )
- float LPVEmissiveInjectionIntensity;
-
- /** Controls the amount of directional occlusion. Requires LPV. Values very close to 1.0 are recommended */
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, meta=(editcondition = "bOverride_LPVDirectionalOcclusionIntensity", UIMin = "0", UIMax = "1", DisplayName = "Occlusion Intensity") )
- float LPVDirectionalOcclusionIntensity;
-
- /** Occlusion Radius - 16 is recommended for most scenes */
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVDirectionalOcclusionRadius", UIMin = "1", UIMax = "16", DisplayName = "Occlusion Radius") )
- float LPVDirectionalOcclusionRadius;
-
- /** Diffuse occlusion exponent - increase for more contrast. 1 to 2 is recommended */
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, meta=(editcondition = "bOverride_LPVDiffuseOcclusionExponent", UIMin = "0.5", UIMax = "5", DisplayName = "Diffuse occlusion exponent") )
- float LPVDiffuseOcclusionExponent;
-
- /** Specular occlusion exponent - increase for more contrast. 6 to 9 is recommended */
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, meta=(editcondition = "bOverride_LPVSpecularOcclusionExponent", UIMin = "1", UIMax = "16", DisplayName = "Specular occlusion exponent") )
- float LPVSpecularOcclusionExponent;
-
- /** Diffuse occlusion intensity - higher values provide increased diffuse occlusion.*/
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVDiffuseOcclusionIntensity", UIMin = "0", UIMax = "4", DisplayName = "Diffuse occlusion intensity") )
- float LPVDiffuseOcclusionIntensity;
-
- /** Specular occlusion intensity - higher values provide increased specular occlusion.*/
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVSpecularOcclusionIntensity", UIMin = "0", UIMax = "4", DisplayName = "Specular occlusion intensity") )
- float LPVSpecularOcclusionIntensity;
-
- /** LPV Fade range - increase to fade more gradually towards the LPV edges.*/
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVFadeRange", UIMin = "0", UIMax = "9", DisplayName = "Fade range"))
- float LPVFadeRange;
-
- /** LPV Directional Occlusion Fade range - increase to fade more gradually towards the LPV edges.*/
- UPROPERTY(interp, BlueprintReadWrite, Category=LightPropagationVolume, AdvancedDisplay, meta=(editcondition = "bOverride_LPVDirectionalOcclusionFadeRange", UIMin = "0", UIMax = "9", DisplayName = "DO Fade range"))
- float LPVDirectionalOcclusionFadeRange;
-
- // good start values for a new volume
- FLightPropagationVolumeSettings()
- {
- // to set all bOverride_.. by default to false
- FMemory::Memzero(this, sizeof(*this));
-
- // default values:
-
- LPVIntensity = 1.0f;
- LPVSize = 5312.0f;
- LPVSecondaryOcclusionIntensity = 0.0f;
- LPVSecondaryBounceIntensity = 0.0f;
- LPVVplInjectionBias = 0.64f;
- LPVGeometryVolumeBias = 0.384f;
- LPVEmissiveInjectionIntensity = 1.0f;
- LPVDirectionalOcclusionIntensity = 0.0f;
- LPVDirectionalOcclusionRadius = 8.0f;
- LPVDiffuseOcclusionExponent = 1.0f;
- LPVSpecularOcclusionExponent = 7.0f;
- LPVDiffuseOcclusionIntensity = 1.0f;
- LPVSpecularOcclusionIntensity = 1.0f;
- LPVFadeRange = 0.0f;
- LPVDirectionalOcclusionFadeRange = 0.0f;
- }
-
- /**
- * Used to define the values before any override happens.
- * Should be as neutral as possible.
- */
- void SetBaseValues()
- {
- *this = FLightPropagationVolumeSettings();
- }
-
- // for type safety in FBlendableManager
- static const FName& GetFName()
- {
- static const FName Name = FName(TEXT("FLightPropagationVolumeSettings"));
-
- return Name;
- }
-};
-
// BlueprintType to make the object spawnable in blueprint
UCLASS(MinimalAPI, Blueprintable, BlueprintType)
class ULightPropagationVolumeBlendable : public UObject, public IBlendableInterface
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlOperations.cpp b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlOperations.cpp
index bfccdde9afac..a5e32c7e85ad 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlOperations.cpp
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlOperations.cpp
@@ -78,7 +78,7 @@ bool FGitCheckInWorker::Execute(FGitSourceControlCommand& InCommand)
if(InCommand.bCommandSuccessful)
{
// Remove any deleted files from status cache
- FGitSourceControlModule& GitSourceControl = FModuleManager::LoadModuleChecked("GitSourceControl");
+ FGitSourceControlModule& GitSourceControl = FModuleManager::GetModuleChecked("GitSourceControl");
FGitSourceControlProvider& Provider = GitSourceControl.GetProvider();
TArray> LocalStates;
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlProvider.cpp b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlProvider.cpp
index 10c7df465baf..f23bf35dd43f 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlProvider.cpp
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlProvider.cpp
@@ -20,7 +20,11 @@ static FName ProviderName("Git");
void FGitSourceControlProvider::Init(bool bForceConnection)
{
- CheckGitAvailability();
+ // Init() is called multiple times at startup: do not check git each time
+ if(!bGitAvailable)
+ {
+ CheckGitAvailability();
+ }
// bForceConnection: not used anymore
}
@@ -28,28 +32,23 @@ void FGitSourceControlProvider::Init(bool bForceConnection)
void FGitSourceControlProvider::CheckGitAvailability()
{
FGitSourceControlModule& GitSourceControl = FModuleManager::LoadModuleChecked("GitSourceControl");
- const FString& PathToGitBinary = GitSourceControl.AccessSettings().GetBinaryPath();
+ FString PathToGitBinary = GitSourceControl.AccessSettings().GetBinaryPath();
+ if(PathToGitBinary.IsEmpty())
+ {
+ // Try to find Git binary, and update settings accordingly
+ PathToGitBinary = GitSourceControlUtils::FindGitBinaryPath();
+ if(!PathToGitBinary.IsEmpty())
+ {
+ GitSourceControl.AccessSettings().SetBinaryPath(PathToGitBinary);
+ }
+ }
+
if(!PathToGitBinary.IsEmpty())
{
bGitAvailable = GitSourceControlUtils::CheckGitAvailability(PathToGitBinary, &GitVersion);
if(bGitAvailable)
{
- // Find the path to the root Git directory (if any)
- const FString PathToGameDir = FPaths::ConvertRelativePathToFull(FPaths::GameDir());
- const bool bRepositoryFound = GitSourceControlUtils::FindRootDirectory(PathToGameDir, PathToRepositoryRoot);
- // Get user name & email (of the repository, else from the global Git config)
- GitSourceControlUtils::GetUserConfig(PathToGitBinary, PathToRepositoryRoot, UserName, UserEmail);
- if (bRepositoryFound)
- {
- // Get branch name
- GitSourceControlUtils::GetBranchName(PathToGitBinary, PathToRepositoryRoot, BranchName);
- bGitRepositoryFound = true;
- }
- else
- {
- UE_LOG(LogSourceControl, Error, TEXT("'%s' is not part of a Git repository"), *FPaths::GameDir());
- bGitRepositoryFound = false;
- }
+ CheckRepositoryStatus(PathToGitBinary);
}
}
else
@@ -58,10 +57,38 @@ void FGitSourceControlProvider::CheckGitAvailability()
}
}
+void FGitSourceControlProvider::CheckRepositoryStatus(const FString& InPathToGitBinary)
+{
+ // Find the path to the root Git directory (if any)
+ const FString PathToGameDir = FPaths::ConvertRelativePathToFull(FPaths::GameDir());
+ bGitRepositoryFound = GitSourceControlUtils::FindRootDirectory(PathToGameDir, PathToRepositoryRoot);
+ if(bGitRepositoryFound)
+ {
+ // Get branch name
+ bGitRepositoryFound = GitSourceControlUtils::GetBranchName(InPathToGitBinary, PathToRepositoryRoot, BranchName);
+ if (!bGitRepositoryFound)
+ {
+ UE_LOG(LogSourceControl, Error, TEXT("'%s' is not a valid Git repository"), *PathToRepositoryRoot);
+ }
+ }
+ else
+ {
+ UE_LOG(LogSourceControl, Warning, TEXT("'%s' is not part of a Git repository"), *FPaths::GameDir());
+ }
+
+ // Get user name & email (of the repository, else from the global Git config)
+ GitSourceControlUtils::GetUserConfig(InPathToGitBinary, PathToRepositoryRoot, UserName, UserEmail);
+}
+
void FGitSourceControlProvider::Close()
{
// clear the cache
StateCache.Empty();
+
+ bGitAvailable = false;
+ bGitRepositoryFound = false;
+ UserName.Empty();
+ UserEmail.Empty();
}
TSharedRef FGitSourceControlProvider::GetStateInternal(const FString& Filename)
@@ -217,6 +244,11 @@ bool FGitSourceControlProvider::UsesChangelists() const
return false;
}
+bool FGitSourceControlProvider::UsesCheckout() const
+{
+ return false;
+}
+
TSharedPtr FGitSourceControlProvider::CreateWorker(const FName& InOperationName) const
{
const FGetGitSourceControlWorker* Operation = WorkersMap.Find(InOperationName);
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlProvider.h b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlProvider.h
index c98102fc0311..791200f4045b 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlProvider.h
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlProvider.h
@@ -19,11 +19,15 @@ struct FGitVersion
int Minor;
uint32 bHasCatFileWithFilters : 1;
+ uint32 bHasGitLfs : 1;
+ uint32 bHasGitLfsLocking : 1;
FGitVersion()
: Major(0)
, Minor(0)
, bHasCatFileWithFilters(false)
+ , bHasGitLfs(false)
+ , bHasGitLfsLocking(false)
{
}
@@ -59,6 +63,7 @@ public:
virtual void CancelOperation( const TSharedRef& InOperation ) override;
virtual bool UsesLocalReadOnlyState() const override;
virtual bool UsesChangelists() const override;
+ virtual bool UsesCheckout() const override;
virtual void Tick() override;
virtual TArray< TSharedRef > GetLabels( const FString& InMatchingSpec ) const override;
#if SOURCE_CONTROL_WITH_SLATE
@@ -66,10 +71,15 @@ public:
#endif
/**
- * Run a Git "version" command to check the availability of the binary.
+ * Check configuration, else standard paths, and run a Git "version" command to check the availability of the binary.
*/
void CheckGitAvailability();
+ /**
+ * Find the .git/ repository and check it's status.
+ */
+ void CheckRepositoryStatus(const FString& InPathToGitBinary);
+
/** Is git binary found and working. */
inline bool IsGitAvailable() const
{
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlSettings.cpp b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlSettings.cpp
index 0c46ba3b5a40..bab4742ddc05 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlSettings.cpp
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlSettings.cpp
@@ -15,16 +15,21 @@ static const FString SettingsSection = TEXT("GitSourceControl.GitSourceControlSe
}
-const FString& FGitSourceControlSettings::GetBinaryPath() const
+const FString FGitSourceControlSettings::GetBinaryPath() const
{
FScopeLock ScopeLock(&CriticalSection);
return BinaryPath;
}
-void FGitSourceControlSettings::SetBinaryPath(const FString& InString)
+bool FGitSourceControlSettings::SetBinaryPath(const FString& InString)
{
FScopeLock ScopeLock(&CriticalSection);
- BinaryPath = InString;
+ const bool bChanged = (BinaryPath != InString);
+ if(bChanged)
+ {
+ BinaryPath = InString;
+ }
+ return bChanged;
}
// This is called at startup nearly before anything else in our module: BinaryPath will then be used by the provider
@@ -32,23 +37,12 @@ void FGitSourceControlSettings::LoadSettings()
{
FScopeLock ScopeLock(&CriticalSection);
const FString& IniFile = SourceControlHelpers::GetSettingsIni();
- bool bLoaded = GConfig->GetString(*GitSettingsConstants::SettingsSection, TEXT("BinaryPath"), BinaryPath, IniFile);
- if(!bLoaded || BinaryPath.IsEmpty())
- {
- BinaryPath = GitSourceControlUtils::FindGitBinaryPath();
- }
+ GConfig->GetString(*GitSettingsConstants::SettingsSection, TEXT("BinaryPath"), BinaryPath, IniFile);
}
void FGitSourceControlSettings::SaveSettings() const
{
FScopeLock ScopeLock(&CriticalSection);
-
- // Re-Check provided git binary path for each change
- FGitSourceControlModule& GitSourceControl = FModuleManager::LoadModuleChecked("GitSourceControl");
- GitSourceControl.GetProvider().CheckGitAvailability();
- if (GitSourceControl.GetProvider().IsAvailable())
- {
- const FString& IniFile = SourceControlHelpers::GetSettingsIni();
- GConfig->SetString(*GitSettingsConstants::SettingsSection, TEXT("BinaryPath"), *BinaryPath, IniFile);
- }
+ const FString& IniFile = SourceControlHelpers::GetSettingsIni();
+ GConfig->SetString(*GitSettingsConstants::SettingsSection, TEXT("BinaryPath"), *BinaryPath, IniFile);
}
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlSettings.h b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlSettings.h
index b970ebbecbc4..26fc995c5837 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlSettings.h
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlSettings.h
@@ -8,10 +8,10 @@ class FGitSourceControlSettings
{
public:
/** Get the Git Binary Path */
- const FString& GetBinaryPath() const;
+ const FString GetBinaryPath() const;
/** Set the Git Binary Path */
- void SetBinaryPath(const FString& InString);
+ bool SetBinaryPath(const FString& InString);
/** Load settings from ini file */
void LoadSettings();
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlUtils.cpp b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlUtils.cpp
index 4df69f501407..eeee1cd6f820 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlUtils.cpp
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlUtils.cpp
@@ -231,11 +231,9 @@ FString FindGitBinaryPath()
bool CheckGitAvailability(const FString& InPathToGitBinary, FGitVersion *OutVersion)
{
- bool bGitAvailable = false;
-
FString InfoMessages;
FString ErrorMessages;
- bGitAvailable = RunCommandInternalRaw(TEXT("version"), InPathToGitBinary, FString(), TArray(), TArray(), InfoMessages, ErrorMessages);
+ bool bGitAvailable = RunCommandInternalRaw(TEXT("version"), InPathToGitBinary, FString(), TArray(), TArray(), InfoMessages, ErrorMessages);
if(bGitAvailable)
{
if(!InfoMessages.Contains("git"))
@@ -246,6 +244,7 @@ bool CheckGitAvailability(const FString& InPathToGitBinary, FGitVersion *OutVers
{
ParseGitVersion(InfoMessages, OutVersion);
FindGitCapabilities(InPathToGitBinary, OutVersion);
+ FindGitLfsCapabilities(InPathToGitBinary, OutVersion);
}
}
@@ -287,6 +286,22 @@ void FindGitCapabilities(const FString& InPathToGitBinary, FGitVersion *OutVersi
}
}
+void FindGitLfsCapabilities(const FString& InPathToGitBinary, FGitVersion *OutVersion)
+{
+ FString InfoMessages;
+ FString ErrorMessages;
+ bool bGitLfsAvailable = RunCommandInternalRaw(TEXT("lfs version"), InPathToGitBinary, FString(), TArray(), TArray(), InfoMessages, ErrorMessages);
+ if(bGitLfsAvailable)
+ {
+ OutVersion->bHasGitLfs = true;
+
+ if(0 <= InfoMessages.Compare(TEXT("git-lfs/2.0.0")))
+ {
+ OutVersion->bHasGitLfsLocking = true; // Git LFS File Locking workflow introduced in "git-lfs/2.0.0"
+ }
+ }
+}
+
// Find the root of the Git repository, looking from the provided path and upward in its parent directories.
bool FindRootDirectory(const FString& InPath, FString& OutRepositoryRoot)
{
@@ -355,7 +370,7 @@ void GetUserConfig(const FString& InPathToGitBinary, const FString& InRepository
}
}
-void GetBranchName(const FString& InPathToGitBinary, const FString& InRepositoryRoot, FString& OutBranchName)
+bool GetBranchName(const FString& InPathToGitBinary, const FString& InRepositoryRoot, FString& OutBranchName)
{
bool bResults;
TArray InfoMessages;
@@ -380,7 +395,13 @@ void GetBranchName(const FString& InPathToGitBinary, const FString& InRepository
OutBranchName = "HEAD detached at ";
OutBranchName += InfoMessages[0];
}
+ else
+ {
+ bResults = false;
+ }
}
+
+ return bResults;
}
bool RunCommand(const FString& InCommand, const FString& InPathToGitBinary, const FString& InRepositoryRoot, const TArray& InParameters, const TArray& InFiles, TArray& OutResults, TArray& OutErrorMessages)
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlUtils.h b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlUtils.h
index 09ef10d0d7ea..d68cb60e03c7 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlUtils.h
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/GitSourceControlUtils.h
@@ -61,6 +61,13 @@ bool CheckGitAvailability(const FString& InPathToGitBinary, FGitVersion* OutVers
*/
void FindGitCapabilities(const FString& InPathToGitBinary, FGitVersion *OutVersion);
+/**
+ * Run a Git "lfs" command to check the availability of the "Large File System" extension.
+ * @param InPathToGitBinary The path to the Git binary
+ * @param OutGitVersion If provided, populate with the git version parsed from "version" command
+ */
+ void FindGitLfsCapabilities(const FString& InPathToGitBinary, FGitVersion *OutVersion);
+
/**
* Find the root of the Git repository, looking from the provided path and upward in its parent directories
* @param InPath The path to the Game Directory (or any path or file in any git repository)
@@ -83,8 +90,9 @@ void GetUserConfig(const FString& InPathToGitBinary, const FString& InRepository
* @param InPathToGitBinary The path to the Git binary
* @param InRepositoryRoot The Git repository from where to run the command - usually the Game directory (can be empty)
* @param OutBranchName Name of the current checked-out branch (if any, ie. not in detached HEAD)
+ * @returns true if the command succeeded and returned no errors
*/
-void GetBranchName(const FString& InPathToGitBinary, const FString& InRepositoryRoot, FString& OutBranchName);
+bool GetBranchName(const FString& InPathToGitBinary, const FString& InRepositoryRoot, FString& OutBranchName);
/**
* Run a Git command - output is a string TArray.
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/SGitSourceControlSettings.cpp b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/SGitSourceControlSettings.cpp
index 3ee4abe3a8eb..bfadce88e461 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/SGitSourceControlSettings.cpp
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/SGitSourceControlSettings.cpp
@@ -28,6 +28,7 @@ void SGitSourceControlSettings::Construct(const FArguments& InArgs)
FSlateFontInfo Font = FEditorStyle::GetFontStyle(TEXT("SourceControl.LoginWindow.Font"));
bAutoCreateGitIgnore = true;
+ bAutoCreateGitAttributes = false;
bAutoInitialCommit = true;
InitialCommitMessage = LOCTEXT("InitialCommitMessage", "Initial commit");
@@ -188,6 +189,33 @@ void SGitSourceControlSettings::Construct(const FArguments& InArgs)
.Font(Font)
]
]
+ // Option to add a proper .gitattributes file for Git LFS (false by default)
+ +SVerticalBox::Slot()
+ .AutoHeight()
+ .Padding(2.0f)
+ .VAlign(VAlign_Center)
+ [
+ SNew(SHorizontalBox)
+ .Visibility(this, &SGitSourceControlSettings::CanInitializeGitRepository)
+ +SHorizontalBox::Slot()
+ .FillWidth(0.1f)
+ [
+ SNew(SCheckBox)
+ .ToolTipText(LOCTEXT("CreateGitAttributes_Tooltip", "Create and add a '.gitattributes' file to enable Git LFS for the whole 'Content/' directory (needs Git LFS extensions to be installed)."))
+ .IsChecked(ECheckBoxState::Unchecked)
+ .OnCheckStateChanged(this, &SGitSourceControlSettings::OnCheckedCreateGitAttributes)
+ .IsEnabled(this, &SGitSourceControlSettings::CanInitializeGitLfs)
+ ]
+ +SHorizontalBox::Slot()
+ .FillWidth(2.9f)
+ .VAlign(VAlign_Center)
+ [
+ SNew(STextBlock)
+ .Text(LOCTEXT("CreateGitAttributes", "Add a .gitattributes file to enable Git LFS"))
+ .ToolTipText(LOCTEXT("CreateGitAttributes_Tooltip", "Create and add a '.gitattributes' file to enable Git LFS"))
+ .Font(Font)
+ ]
+ ]
// Option to Make the initial Git commit with custom message
+SVerticalBox::Slot()
.AutoHeight()
@@ -224,10 +252,10 @@ void SGitSourceControlSettings::Construct(const FArguments& InArgs)
.Font(Font)
]
]
- // Button to initialize the project with Git, create the .gitignore, and make the first commit)
+ // Button to initialize the project with Git, create .gitignore/.gitattributes files, and make the first commit)
+SVerticalBox::Slot()
.FillHeight(2.0f)
- .Padding(2.0f)
+ .Padding(2.5f)
.VAlign(VAlign_Center)
[
SNew(SHorizontalBox)
@@ -240,6 +268,7 @@ void SGitSourceControlSettings::Construct(const FArguments& InArgs)
.ToolTipText(LOCTEXT("GitInitRepository_Tooltip", "Initialize current project as a new Git repository"))
.OnClicked(this, &SGitSourceControlSettings::OnClickedInitializeGitRepository)
.HAlign(HAlign_Center)
+ .ContentPadding(6)
]
]
]
@@ -260,8 +289,16 @@ FText SGitSourceControlSettings::GetBinaryPathText() const
void SGitSourceControlSettings::OnBinaryPathTextCommited(const FText& InText, ETextCommit::Type InCommitType) const
{
FGitSourceControlModule& GitSourceControl = FModuleManager::LoadModuleChecked("GitSourceControl");
- GitSourceControl.AccessSettings().SetBinaryPath(InText.ToString());
- GitSourceControl.SaveSettings();
+ const bool bChanged = GitSourceControl.AccessSettings().SetBinaryPath(InText.ToString());
+ if(bChanged)
+ {
+ // Re-Check provided git binary path for each change
+ GitSourceControl.GetProvider().CheckGitAvailability();
+ if(GitSourceControl.GetProvider().IsGitAvailable())
+ {
+ GitSourceControl.SaveSettings();
+ }
+ }
}
FText SGitSourceControlSettings::GetPathToRepositoryRoot() const
@@ -290,6 +327,15 @@ EVisibility SGitSourceControlSettings::CanInitializeGitRepository() const
return (bGitAvailable && !bGitRepositoryFound) ? EVisibility::Visible : EVisibility::Collapsed;
}
+bool SGitSourceControlSettings::CanInitializeGitLfs() const
+{
+ FGitSourceControlModule& GitSourceControl = FModuleManager::LoadModuleChecked("GitSourceControl");
+ const FString& PathToGitBinary = GitSourceControl.AccessSettings().GetBinaryPath();
+ const bool bGitLfsAvailable = GitSourceControl.GetProvider().GetGitVersion().bHasGitLfs;
+ const bool bGitRepositoryFound = GitSourceControl.GetProvider().IsEnabled();
+ return (bGitLfsAvailable && !bGitRepositoryFound);
+}
+
FReply SGitSourceControlSettings::OnClickedInitializeGitRepository()
{
FGitSourceControlModule& GitSourceControl = FModuleManager::LoadModuleChecked("GitSourceControl");
@@ -301,11 +347,11 @@ FReply SGitSourceControlSettings::OnClickedInitializeGitRepository()
// 1. Synchronous (very quick) "git init" operation: initialize a Git local repository with a .git/ subdirectory
GitSourceControlUtils::RunCommand(TEXT("init"), PathToGitBinary, PathToGameDir, TArray(), TArray(), InfoMessages, ErrorMessages);
- // Check the new repository status to enable connection
- GitSourceControl.GetProvider().CheckGitAvailability();
- if(GitSourceControl.GetProvider().IsEnabled())
+ // Check the new repository status to enable connection (branch, user e-mail)
+ GitSourceControl.GetProvider().CheckRepositoryStatus(PathToGitBinary);
+ if(GitSourceControl.GetProvider().IsAvailable())
{
- // List of files to add to Source Control (.uproject, Config/, Content/, Source/ files and .gitignore if any)
+ // List of files to add to Source Control (.uproject, Config/, Content/, Source/ files and .gitignore/.gitattributes if any)
TArray ProjectFiles;
ProjectFiles.Add(FPaths::GetProjectFilePath());
ProjectFiles.Add(FPaths::GameConfigDir());
@@ -316,14 +362,27 @@ FReply SGitSourceControlSettings::OnClickedInitializeGitRepository()
}
if(bAutoCreateGitIgnore)
{
- // 2. Create a standard ".gitignore" file with common patterns for a typical Blueprint & C++ project
+ // 2.a. Create a standard ".gitignore" file with common patterns for a typical Blueprint & C++ project
const FString GitIgnoreFilename = FPaths::Combine(FPaths::GameDir(), TEXT(".gitignore"));
- const FString GitIgnoreContent = TEXT("Binaries\nDerivedDataCache\nIntermediate\nSaved\n*.VC.db\n*.opensdf\n*.opendb\n*.sdf\n*.sln\n*.suo\n*.xcodeproj\n*.xcworkspace");
+ const FString GitIgnoreContent = TEXT("Binaries\nDerivedDataCache\nIntermediate\nSaved\n.vs\n*.VC.db\n*.opensdf\n*.opendb\n*.sdf\n*.sln\n*.suo\n*.xcodeproj\n*.xcworkspace");
if(FFileHelper::SaveStringToFile(GitIgnoreContent, *GitIgnoreFilename, FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM))
{
ProjectFiles.Add(GitIgnoreFilename);
}
}
+ if (bAutoCreateGitAttributes)
+ {
+ // 2.b. Synchronous (very quick) "lfs install" operation: needs only to be run once by user
+ GitSourceControlUtils::RunCommand(TEXT("lfs install"), PathToGitBinary, PathToGameDir, TArray(), TArray(), InfoMessages, ErrorMessages);
+
+ // 2.c. Create a ".gitattributes" file to enable Git LFS (Large File System) for the whole "Content/" subdir
+ const FString GitAttributesFilename = FPaths::Combine(FPaths::GameDir(), TEXT(".gitattributes"));
+ const FString GitAttributesContent = TEXT("Content/** filter=lfs diff=lfs merge=lfs -text lockable\n");
+ if (FFileHelper::SaveStringToFile(GitAttributesContent, *GitAttributesFilename, FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM))
+ {
+ ProjectFiles.Add(GitAttributesFilename);
+ }
+ }
// 3. Add files to Source Control: launch an asynchronous MarkForAdd operation
LaunchMarkForAddOperation(ProjectFiles);
@@ -437,6 +496,11 @@ void SGitSourceControlSettings::OnCheckedCreateGitIgnore(ECheckBoxState NewCheck
bAutoCreateGitIgnore = (NewCheckedState == ECheckBoxState::Checked);
}
+void SGitSourceControlSettings::OnCheckedCreateGitAttributes(ECheckBoxState NewCheckedState)
+{
+ bAutoCreateGitAttributes = (NewCheckedState == ECheckBoxState::Checked);
+}
+
void SGitSourceControlSettings::OnCheckedInitialCommit(ECheckBoxState NewCheckedState)
{
bAutoInitialCommit = (NewCheckedState == ECheckBoxState::Checked);
diff --git a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/SGitSourceControlSettings.h b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/SGitSourceControlSettings.h
index 3219fd481575..36c8072666d6 100644
--- a/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/SGitSourceControlSettings.h
+++ b/Engine/Plugins/Developer/GitSourceControl/Source/GitSourceControl/Private/SGitSourceControlSettings.h
@@ -40,13 +40,18 @@ private:
FText GetUserName() const;
FText GetUserEmail() const;
- /** Delegate to initialize a new Git repository */
EVisibility CanInitializeGitRepository() const;
+ bool CanInitializeGitLfs() const;
+
+ /** Delegate to initialize a new Git repository */
FReply OnClickedInitializeGitRepository();
void OnCheckedCreateGitIgnore(ECheckBoxState NewCheckedState);
bool bAutoCreateGitIgnore;
+ void OnCheckedCreateGitAttributes(ECheckBoxState NewCheckedState);
+ bool bAutoCreateGitAttributes;
+
void OnCheckedInitialCommit(ECheckBoxState NewCheckedState);
bool bAutoInitialCommit;
void OnInitialCommitMessageCommited(const FText& InText, ETextCommit::Type InCommitType);
diff --git a/Engine/Plugins/Developer/OneSkyLocalizationService/Source/OneSkyLocalizationService/Private/OneSkyLocalizationServiceOperations.cpp b/Engine/Plugins/Developer/OneSkyLocalizationService/Source/OneSkyLocalizationService/Private/OneSkyLocalizationServiceOperations.cpp
index ea1ac22bc697..a13323b6449b 100644
--- a/Engine/Plugins/Developer/OneSkyLocalizationService/Source/OneSkyLocalizationService/Private/OneSkyLocalizationServiceOperations.cpp
+++ b/Engine/Plugins/Developer/OneSkyLocalizationService/Source/OneSkyLocalizationService/Private/OneSkyLocalizationServiceOperations.cpp
@@ -1016,7 +1016,7 @@ void FOneSkyUploadFileWorker::Query_HttpRequestComplete(FHttpRequestPtr HttpRequ
if (bResult)
{
- TSharedPtr UploadFileOp = StaticCastSharedRef(Command->Operation);
+ TSharedPtr UploadFileOp = StaticCastSharedRef(Command->Operation); //-V595
FGuid InTargetGuid;
int32 InProjectId = -1;
diff --git a/Engine/Plugins/Developer/OneSkyLocalizationService/Source/OneSkyLocalizationService/Private/OneSkyLocalizationServiceProvider.cpp b/Engine/Plugins/Developer/OneSkyLocalizationService/Source/OneSkyLocalizationService/Private/OneSkyLocalizationServiceProvider.cpp
index aaa5cc8b0db8..2cfea2e080ab 100644
--- a/Engine/Plugins/Developer/OneSkyLocalizationService/Source/OneSkyLocalizationService/Private/OneSkyLocalizationServiceProvider.cpp
+++ b/Engine/Plugins/Developer/OneSkyLocalizationService/Source/OneSkyLocalizationService/Private/OneSkyLocalizationServiceProvider.cpp
@@ -856,9 +856,6 @@ void FOneSkyLocalizationServiceProvider::ExportCultureForTargetToOneSky_Callback
FilesDownloadingForImportFromOneSky.Remove(InRelativeInputFilePathAndName);
ErrorText = UploadLocalizationTargetOp->GetOutErrorText();
- InTargetGuid = UploadLocalizationTargetOp->GetInTargetGuid();
-
- Target = ILocalizationModule::Get().GetLocalizationTargetByName(TargetName, bIsEngineTarget);
FilesUploadingForExportToOneSky.Remove(InRelativeInputFilePathAndName);
diff --git a/Engine/Plugins/Developer/PerforceSourceControl/Source/PerforceSourceControl/Private/PerforceSourceControlProvider.cpp b/Engine/Plugins/Developer/PerforceSourceControl/Source/PerforceSourceControl/Private/PerforceSourceControlProvider.cpp
index 6782c0ad4422..3b74494d2f7d 100644
--- a/Engine/Plugins/Developer/PerforceSourceControl/Source/PerforceSourceControl/Private/PerforceSourceControlProvider.cpp
+++ b/Engine/Plugins/Developer/PerforceSourceControl/Source/PerforceSourceControl/Private/PerforceSourceControlProvider.cpp
@@ -322,6 +322,11 @@ bool FPerforceSourceControlProvider::UsesChangelists() const
return true;
}
+bool FPerforceSourceControlProvider::UsesCheckout() const
+{
+ return true;
+}
+
void FPerforceSourceControlProvider::OutputCommandMessages(const FPerforceSourceControlCommand& InCommand) const
{
FMessageLog SourceControlLog("SourceControl");
diff --git a/Engine/Plugins/Developer/PerforceSourceControl/Source/PerforceSourceControl/Private/PerforceSourceControlProvider.h b/Engine/Plugins/Developer/PerforceSourceControl/Source/PerforceSourceControl/Private/PerforceSourceControlProvider.h
index 845408e9b1d2..376082e132de 100644
--- a/Engine/Plugins/Developer/PerforceSourceControl/Source/PerforceSourceControl/Private/PerforceSourceControlProvider.h
+++ b/Engine/Plugins/Developer/PerforceSourceControl/Source/PerforceSourceControl/Private/PerforceSourceControlProvider.h
@@ -39,6 +39,7 @@ public:
virtual void CancelOperation( const TSharedRef& InOperation ) override;
virtual bool UsesLocalReadOnlyState() const override;
virtual bool UsesChangelists() const override;
+ virtual bool UsesCheckout() const override;
virtual void Tick() override;
virtual TArray< TSharedRef > GetLabels( const FString& InMatchingSpec ) const override;
#if SOURCE_CONTROL_WITH_SLATE
diff --git a/Engine/Plugins/Developer/RenderDocPlugin/Source/RenderDocPlugin/Private/RenderDocPluginModule.cpp b/Engine/Plugins/Developer/RenderDocPlugin/Source/RenderDocPlugin/Private/RenderDocPluginModule.cpp
index 3ab573285877..0654d6aace69 100644
--- a/Engine/Plugins/Developer/RenderDocPlugin/Source/RenderDocPlugin/Private/RenderDocPluginModule.cpp
+++ b/Engine/Plugins/Developer/RenderDocPlugin/Source/RenderDocPlugin/Private/RenderDocPluginModule.cpp
@@ -281,7 +281,7 @@ void FRenderDocPluginModule::CaptureCurrentViewport()
// infer the intended viewport to intercept/capture:
FViewport* Viewport (nullptr);
check(GEngine);
- if (!Viewport && GEngine->GameViewport)
+ if (GEngine->GameViewport)
{
check(GEngine->GameViewport->Viewport);
if (GEngine->GameViewport->Viewport->HasFocus())
diff --git a/Engine/Plugins/Developer/SubversionSourceControl/Source/SubversionSourceControl/Private/SubversionSourceControlProvider.cpp b/Engine/Plugins/Developer/SubversionSourceControl/Source/SubversionSourceControl/Private/SubversionSourceControlProvider.cpp
index f5364ff1903a..c6f593d45cfd 100644
--- a/Engine/Plugins/Developer/SubversionSourceControl/Source/SubversionSourceControl/Private/SubversionSourceControlProvider.cpp
+++ b/Engine/Plugins/Developer/SubversionSourceControl/Source/SubversionSourceControl/Private/SubversionSourceControlProvider.cpp
@@ -204,6 +204,11 @@ bool FSubversionSourceControlProvider::UsesChangelists() const
return false;
}
+bool FSubversionSourceControlProvider::UsesCheckout() const
+{
+ return true;
+}
+
TSharedPtr FSubversionSourceControlProvider::CreateWorker(const FName& InOperationName) const
{
const FGetSubversionSourceControlWorker* Operation = WorkersMap.Find(InOperationName);
diff --git a/Engine/Plugins/Developer/SubversionSourceControl/Source/SubversionSourceControl/Private/SubversionSourceControlProvider.h b/Engine/Plugins/Developer/SubversionSourceControl/Source/SubversionSourceControl/Private/SubversionSourceControlProvider.h
index 37286fe3d6b9..ce1e46affbef 100644
--- a/Engine/Plugins/Developer/SubversionSourceControl/Source/SubversionSourceControl/Private/SubversionSourceControlProvider.h
+++ b/Engine/Plugins/Developer/SubversionSourceControl/Source/SubversionSourceControl/Private/SubversionSourceControlProvider.h
@@ -38,6 +38,7 @@ public:
virtual void CancelOperation( const TSharedRef& InOperation ) override;
virtual bool UsesLocalReadOnlyState() const override;
virtual bool UsesChangelists() const override;
+ virtual bool UsesCheckout() const override;
virtual void Tick() override;
virtual TArray< TSharedRef > GetLabels( const FString& InMatchingSpec ) const override;
#if SOURCE_CONTROL_WITH_SLATE
diff --git a/Engine/Plugins/Developer/VisualStudioSourceCodeAccess/Source/VisualStudioSourceCodeAccess/Private/VisualStudioSourceCodeAccessor.cpp b/Engine/Plugins/Developer/VisualStudioSourceCodeAccess/Source/VisualStudioSourceCodeAccess/Private/VisualStudioSourceCodeAccessor.cpp
index f4e2c58f313e..ec8c78c8b914 100644
--- a/Engine/Plugins/Developer/VisualStudioSourceCodeAccess/Source/VisualStudioSourceCodeAccess/Private/VisualStudioSourceCodeAccessor.cpp
+++ b/Engine/Plugins/Developer/VisualStudioSourceCodeAccess/Source/VisualStudioSourceCodeAccess/Private/VisualStudioSourceCodeAccessor.cpp
@@ -23,6 +23,7 @@
#if VSACCESSOR_HAS_DTE
#pragma warning(push)
#pragma warning(disable: 4278)
+ #pragma warning(disable: 4471)
#pragma warning(disable: 4146)
#pragma warning(disable: 4191)
#pragma warning(disable: 6244)
@@ -211,7 +212,7 @@ EAccessVisualStudioResult AccessVisualStudioViaDTE(TComPtr& OutDTE
// Get the solution path for this instance
// If it equals the solution we would have opened above in RunVisualStudio(), we'll take that
TComPtr Solution;
- LPOLESTR OutPath;
+ BSTR OutPath = nullptr;
if (SUCCEEDED(TempDTE->get_Solution(&Solution)) &&
SUCCEEDED(Solution->get_FullName(&OutPath)))
{
@@ -223,6 +224,8 @@ EAccessVisualStudioResult AccessVisualStudioViaDTE(TComPtr& OutDTE
OutDTE = TempDTE;
AccessResult = EAccessVisualStudioResult::VSInstanceIsOpen;
}
+
+ SysFreeString(OutPath);
}
else
{
@@ -563,15 +566,21 @@ bool GetProcessCommandLine(const ::DWORD InProcessID, FString& OutCommandLine)
::IWbemLocator *pLoc = nullptr;
if (SUCCEEDED(::CoCreateInstance(CLSID_WbemLocator, 0, CLSCTX_INPROC_SERVER, IID_IWbemLocator, (LPVOID*)&pLoc)))
{
+ FComBSTR ResourceName(TEXT("ROOT\\CIMV2"));
+
::IWbemServices *pSvc = nullptr;
- if (SUCCEEDED(pLoc->ConnectServer(BSTR(TEXT("ROOT\\CIMV2")), nullptr, nullptr, nullptr, 0, 0, 0, &pSvc)))
+ if (SUCCEEDED(pLoc->ConnectServer(ResourceName, nullptr, nullptr, nullptr, 0, 0, 0, &pSvc)))
{
// Set the proxy so that impersonation of the client occurs
if (SUCCEEDED(::CoSetProxyBlanket(pSvc, RPC_C_AUTHN_WINNT, RPC_C_AUTHZ_NONE, nullptr, RPC_C_AUTHN_LEVEL_CALL, RPC_C_IMP_LEVEL_IMPERSONATE, nullptr, EOAC_NONE)))
{
::IEnumWbemClassObject* pEnumerator = nullptr;
const FString WQLQuery = FString::Printf(TEXT("SELECT ProcessId, CommandLine FROM Win32_Process WHERE ProcessId=%lu"), InProcessID);
- if (SUCCEEDED(pSvc->ExecQuery(BSTR(TEXT("WQL")), BSTR(*WQLQuery), WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, nullptr, &pEnumerator)))
+
+ FComBSTR WQLBstr(TEXT("WQL"));
+ FComBSTR WQLQueryBstr(*WQLQuery);
+
+ if (SUCCEEDED(pSvc->ExecQuery(WQLBstr, WQLQueryBstr, WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, nullptr, &pEnumerator)))
{
while (pEnumerator && !bSuccess)
{
@@ -704,9 +713,9 @@ EAccessVisualStudioResult AccessVisualStudioViaProcess(::DWORD& OutProcessID, FS
{
UE_LOG(LogVSAccessor, Warning, TEXT("Couldn't access module information"));
AccessResult = EAccessVisualStudioResult::VSInstanceUnknown;
+ }
}
}
- }
else
{
UE_LOG(LogVSAccessor, Warning, TEXT("Couldn't access module table"));
diff --git a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/AssetManagerEditor.Build.cs b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/AssetManagerEditor.Build.cs
index c67a06ac938f..540c0c866e8e 100644
--- a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/AssetManagerEditor.Build.cs
+++ b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/AssetManagerEditor.Build.cs
@@ -11,8 +11,8 @@ public class AssetManagerEditor : ModuleRules
"Core",
"CoreUObject",
"Engine",
- "TargetPlatform"
- }
+ "TargetPlatform"
+ }
);
PrivateDependencyModuleNames.AddRange(
@@ -29,9 +29,11 @@ public class AssetManagerEditor : ModuleRules
"EditorStyle",
"AssetTools",
"PropertyEditor",
- "GraphEditor",
- "ReferenceViewer",
- "SandboxFile"
+ "GraphEditor",
+ "BlueprintGraph",
+ "KismetCompiler",
+ "ReferenceViewer",
+ "SandboxFile"
}
);
}
diff --git a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/AssetManagerEditorModule.cpp b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/AssetManagerEditorModule.cpp
index 8c1b9c1fb1a2..3ee940e32d73 100644
--- a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/AssetManagerEditorModule.cpp
+++ b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/AssetManagerEditorModule.cpp
@@ -42,6 +42,9 @@
#include "IPlatformFileSandboxWrapper.h"
#include "HAL/PlatformFilemanager.h"
#include "Serialization/ArrayReader.h"
+#include "EdGraphUtilities.h"
+#include "EdGraphSchema_K2.h"
+#include "SGraphPin.h"
#define LOCTEXT_NAMESPACE "AssetManagerEditor"
@@ -49,6 +52,24 @@ DEFINE_LOG_CATEGORY(LogAssetManagerEditor);
// Static functions/variables defeined in the interface
+class FAssetManagerGraphPanelPinFactory : public FGraphPanelPinFactory
+{
+ virtual TSharedPtr CreatePin(class UEdGraphPin* InPin) const override
+ {
+ const UEdGraphSchema_K2* K2Schema = GetDefault();
+ if (InPin->PinType.PinCategory == K2Schema->PC_Struct && InPin->PinType.PinSubCategoryObject == TBaseStructure::Get())
+ {
+ return SNew(SPrimaryAssetIdGraphPin, InPin);
+ }
+ if (InPin->PinType.PinCategory == K2Schema->PC_Struct && InPin->PinType.PinSubCategoryObject == TBaseStructure::Get())
+ {
+ return SNew(SPrimaryAssetTypeGraphPin, InPin);
+ }
+
+ return nullptr;
+ }
+};
+
const FName IAssetManagerEditorModule::ResourceSizeName = FName("ResourceSize");
const FName IAssetManagerEditorModule::DiskSizeName = FName("DiskSize");
const FName IAssetManagerEditorModule::ManagedResourceSizeName = FName("ManagedResourceSize");
@@ -74,37 +95,41 @@ TSharedRef IAssetManagerEditorModule::MakePrimaryAssetTypeSelector(FOnG
TSharedRef IAssetManagerEditorModule::MakePrimaryAssetIdSelector(FOnGetPrimaryAssetDisplayText OnGetDisplayText, FOnSetPrimaryAssetId OnSetId, bool bAllowClear, TArray AllowedTypes)
{
- FOnShouldFilterAsset AssetFilter = FOnShouldFilterAsset::CreateStatic(&IAssetManagerEditorModule::OnShouldFilterPrimaryAsset, AllowedTypes);
- TAttribute OnGetObjectText = TAttribute::Create(OnGetDisplayText);
- FOnSetObject OnSetObject = FOnSetObject::CreateLambda([OnSetId](const FAssetData& AssetData)
+ FOnGetContent OnCreateMenuContent = FOnGetContent::CreateLambda([OnGetDisplayText, OnSetId, bAllowClear, AllowedTypes]()
{
- UAssetManager& Manager = UAssetManager::Get();
-
- FPrimaryAssetId AssetId;
- if (AssetData.IsValid())
+ FOnShouldFilterAsset AssetFilter = FOnShouldFilterAsset::CreateStatic(&IAssetManagerEditorModule::OnShouldFilterPrimaryAsset, AllowedTypes);
+ FOnSetObject OnSetObject = FOnSetObject::CreateLambda([OnSetId](const FAssetData& AssetData)
{
- AssetId = Manager.GetPrimaryAssetIdFromData(AssetData);
- ensure(AssetId.IsValid());
- }
+ FSlateApplication::Get().DismissAllMenus();
+ UAssetManager& Manager = UAssetManager::Get();
- OnSetId.Execute(AssetId);
- });
+ FPrimaryAssetId AssetId;
+ if (AssetData.IsValid())
+ {
+ AssetId = Manager.GetPrimaryAssetIdForData(AssetData);
+ ensure(AssetId.IsValid());
+ }
- TArray AllowedClasses;
- TArray NewAssetFactories;
+ OnSetId.Execute(AssetId);
+ });
- return SNew(SComboButton)
- .MenuContent()
- [
- PropertyCustomizationHelpers::MakeAssetPickerWithMenu(
+ TArray AllowedClasses;
+ TArray NewAssetFactories;
+
+ return PropertyCustomizationHelpers::MakeAssetPickerWithMenu(
FAssetData(),
bAllowClear,
AllowedClasses,
NewAssetFactories,
AssetFilter,
OnSetObject,
- FSimpleDelegate())
- ]
+ FSimpleDelegate());
+ });
+
+ TAttribute OnGetObjectText = TAttribute::Create(OnGetDisplayText);
+
+ return SNew(SComboButton)
+ .OnGetMenuContent(OnCreateMenuContent)
.ButtonContent()
[
SNew(STextBlock)
@@ -151,7 +176,7 @@ bool IAssetManagerEditorModule::OnShouldFilterPrimaryAsset(const FAssetData& InA
if (InAssetData.IsValid())
{
- FPrimaryAssetId AssetId = Manager.GetPrimaryAssetIdFromData(InAssetData);
+ FPrimaryAssetId AssetId = Manager.GetPrimaryAssetIdForData(InAssetData);
if (AssetId.IsValid())
{
if (AllowedTypes.Num() > 0)
@@ -287,6 +312,10 @@ void FAssetManagerEditorModule::StartupModule()
PropertyModule.RegisterCustomPropertyTypeLayout("PrimaryAssetId", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&FPrimaryAssetIdCustomization::MakeInstance));
PropertyModule.NotifyCustomizationModuleChanged();
+ // Register Pins
+ TSharedPtr AssetManagerGraphPanelPinFactory = MakeShareable(new FAssetManagerGraphPanelPinFactory());
+ FEdGraphUtilities::RegisterVisualPinFactory(AssetManagerGraphPanelPinFactory);
+
// Register content browser hook
FContentBrowserModule& ContentBrowserModule = FModuleManager::LoadModuleChecked(TEXT("ContentBrowser"));
TArray& CBMenuExtenderDelegates = ContentBrowserModule.GetAllAssetViewContextMenuExtenders();
@@ -471,7 +500,7 @@ FString FAssetManagerEditorModule::GetValueForCustomColumn(FAssetData& AssetData
{
FName SizeTag = (ColumnName == ManagedResourceSizeName) ? ResourceSizeName : DiskSizeName;
- FPrimaryAssetId PrimaryAssetId = AssetManager.GetPrimaryAssetIdFromData(AssetData);
+ FPrimaryAssetId PrimaryAssetId = AssetManager.GetPrimaryAssetIdForData(AssetData);
if (!PrimaryAssetId.IsValid())
{
@@ -519,9 +548,9 @@ FString FAssetManagerEditorModule::GetValueForCustomColumn(FAssetData& AssetData
{
int64 TotalWeight = 0;
- TArray ReferencingPrimaryAssets;
+ TSet ReferencingPrimaryAssets;
- AssetManager.GetPackageManagerList(AssetData.PackageName, false, ReferencingPrimaryAssets);
+ AssetManager.GetPackageManagers(AssetData.PackageName, false, ReferencingPrimaryAssets);
for (const FPrimaryAssetId& PrimaryAssetId : ReferencingPrimaryAssets)
{
diff --git a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetIdCustomization.cpp b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetIdCustomization.cpp
index a4cdbaeaa1d8..f97172c98934 100644
--- a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetIdCustomization.cpp
+++ b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetIdCustomization.cpp
@@ -99,7 +99,7 @@ void FPrimaryAssetIdCustomization::OnSetObject(const FAssetData& AssetData)
FPrimaryAssetId AssetId;
if (AssetData.IsValid())
{
- AssetId = Manager.GetPrimaryAssetIdFromData(AssetData);
+ AssetId = Manager.GetPrimaryAssetIdForData(AssetData);
ensure(AssetId.IsValid());
}
@@ -107,4 +107,38 @@ void FPrimaryAssetIdCustomization::OnSetObject(const FAssetData& AssetData)
}
}
+void SPrimaryAssetIdGraphPin::Construct(const FArguments& InArgs, UEdGraphPin* InGraphPinObj)
+{
+ SGraphPin::Construct(SGraphPin::FArguments(), InGraphPinObj);
+}
+
+TSharedRef SPrimaryAssetIdGraphPin::GetDefaultValueWidget()
+{
+ FString DefaultString = GraphPinObj->GetDefaultAsString();
+ CurrentId = FPrimaryAssetId(DefaultString);
+
+ return SNew(SVerticalBox)
+ .Visibility(this, &SGraphPin::GetDefaultValueVisibility)
+ + SVerticalBox::Slot()
+ .AutoHeight()
+ [
+ IAssetManagerEditorModule::MakePrimaryAssetIdSelector(
+ FOnGetPrimaryAssetDisplayText::CreateSP(this, &SPrimaryAssetIdGraphPin::GetDisplayText),
+ FOnSetPrimaryAssetId::CreateSP(this, &SPrimaryAssetIdGraphPin::OnIdSelected),
+ true)
+ ];
+}
+
+void SPrimaryAssetIdGraphPin::OnIdSelected(FPrimaryAssetId AssetId)
+{
+ CurrentId = AssetId;
+ GraphPinObj->GetSchema()->TrySetDefaultValue(*GraphPinObj, CurrentId.ToString());
+}
+
+FText SPrimaryAssetIdGraphPin::GetDisplayText() const
+{
+ return FText::AsCultureInvariant(CurrentId.ToString());
+}
+
+
#undef LOCTEXT_NAMESPACE
diff --git a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetIdCustomization.h b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetIdCustomization.h
index b6a66d076faa..0e3d103e9184 100644
--- a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetIdCustomization.h
+++ b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetIdCustomization.h
@@ -5,6 +5,7 @@
#include "CoreMinimal.h"
#include "Widgets/SWidget.h"
#include "Editor/PropertyEditor/Public/IPropertyTypeCustomization.h"
+#include "SGraphPin.h"
class IPropertyHandle;
@@ -33,3 +34,23 @@ private:
TArray AllowedTypes;
};
+/** Graph pin version of UI */
+class SPrimaryAssetIdGraphPin : public SGraphPin
+{
+public:
+ SLATE_BEGIN_ARGS(SPrimaryAssetIdGraphPin) {}
+ SLATE_END_ARGS()
+
+ void Construct(const FArguments& InArgs, UEdGraphPin* InGraphPinObj);
+
+ //~ Begin SGraphPin Interface
+ virtual TSharedRef GetDefaultValueWidget() override;
+ //~ End SGraphPin Interface
+
+private:
+
+ void OnIdSelected(FPrimaryAssetId AssetId);
+ FText GetDisplayText() const;
+
+ FPrimaryAssetId CurrentId;
+};
\ No newline at end of file
diff --git a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetTypeCustomization.cpp b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetTypeCustomization.cpp
index 1803f6eacf89..141702b3c8dd 100644
--- a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetTypeCustomization.cpp
+++ b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetTypeCustomization.cpp
@@ -47,5 +47,37 @@ void FPrimaryAssetTypeCustomization::CustomizeHeader(TSharedRef SPrimaryAssetTypeGraphPin::GetDefaultValueWidget()
+{
+ FString DefaultString = GraphPinObj->GetDefaultAsString();
+ CurrentType = FPrimaryAssetType(*DefaultString);
+
+ return SNew(SVerticalBox)
+ .Visibility(this, &SGraphPin::GetDefaultValueVisibility)
+ + SVerticalBox::Slot()
+ .AutoHeight()
+ [
+ IAssetManagerEditorModule::MakePrimaryAssetTypeSelector(
+ FOnGetPrimaryAssetDisplayText::CreateSP(this, &SPrimaryAssetTypeGraphPin::GetDisplayText),
+ FOnSetPrimaryAssetType::CreateSP(this, &SPrimaryAssetTypeGraphPin::OnTypeSelected),
+ true)
+ ];
+}
+
+void SPrimaryAssetTypeGraphPin::OnTypeSelected(FPrimaryAssetType AssetType)
+{
+ CurrentType = AssetType;
+ GraphPinObj->GetSchema()->TrySetDefaultValue(*GraphPinObj, CurrentType.ToString());
+}
+
+FText SPrimaryAssetTypeGraphPin::GetDisplayText() const
+{
+ return FText::AsCultureInvariant(CurrentType.ToString());
+}
#undef LOCTEXT_NAMESPACE
diff --git a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetTypeCustomization.h b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetTypeCustomization.h
index da3ab726fb2f..2023fda237e3 100644
--- a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetTypeCustomization.h
+++ b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/PrimaryAssetTypeCustomization.h
@@ -5,6 +5,7 @@
#include "CoreMinimal.h"
#include "Widgets/SWidget.h"
#include "Editor/PropertyEditor/Public/IPropertyTypeCustomization.h"
+#include "SGraphPin.h"
class IPropertyHandle;
@@ -31,3 +32,23 @@ private:
};
+/** Graph pin version of UI */
+class SPrimaryAssetTypeGraphPin : public SGraphPin
+{
+public:
+ SLATE_BEGIN_ARGS(SPrimaryAssetTypeGraphPin) {}
+ SLATE_END_ARGS()
+
+ void Construct(const FArguments& InArgs, UEdGraphPin* InGraphPinObj);
+
+ //~ Begin SGraphPin Interface
+ virtual TSharedRef GetDefaultValueWidget() override;
+ //~ End SGraphPin Interface
+
+private:
+
+ void OnTypeSelected(FPrimaryAssetType AssetType);
+ FText GetDisplayText() const;
+
+ FPrimaryAssetType CurrentType;
+};
\ No newline at end of file
diff --git a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/SAssetAuditBrowser.cpp b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/SAssetAuditBrowser.cpp
index 4dc8468f76d2..086b5cf20046 100644
--- a/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/SAssetAuditBrowser.cpp
+++ b/Engine/Plugins/Editor/AssetManagerEditor/Source/AssetManagerEditor/Private/SAssetAuditBrowser.cpp
@@ -255,7 +255,8 @@ void SAssetAuditBrowser::Construct(const FArguments& InArgs)
Config.HiddenColumnNames.Add(TEXT("Path"));
// Add custom columns
- Config.CustomColumns.Emplace(FPrimaryAssetId::PrimaryAssetTypeTag, LOCTEXT("AssetType", "Asset Type"), LOCTEXT("AssetTypeTooltip", "Primary Asset Type of this asset"), UObject::FAssetRegistryTag::TT_Numerical, FOnGetCustomAssetColumnData::CreateSP(this, &SAssetAuditBrowser::GetValueForCustomColumn));
+ Config.CustomColumns.Emplace(FPrimaryAssetId::PrimaryAssetTypeTag, LOCTEXT("AssetType", "Primary Type"), LOCTEXT("AssetTypeTooltip", "Primary Asset Type of this asset, if set"), UObject::FAssetRegistryTag::TT_Alphabetical, FOnGetCustomAssetColumnData::CreateSP(this, &SAssetAuditBrowser::GetValueForCustomColumn));
+ Config.CustomColumns.Emplace(FPrimaryAssetId::PrimaryAssetNameTag, LOCTEXT("AssetName", "Primary Name"), LOCTEXT("AssetNameTooltip", "Primary Asset Name of this asset, if set"), UObject::FAssetRegistryTag::TT_Alphabetical, FOnGetCustomAssetColumnData::CreateSP(this, &SAssetAuditBrowser::GetValueForCustomColumn));
Config.CustomColumns.Emplace(IAssetManagerEditorModule::ManagedResourceSizeName, LOCTEXT("ManagedResourceSize", "Memory Kb"), LOCTEXT("ManagedResourceSizeTooltip", "Memory used by both this asset and any other assets it manages, in kilobytes"), UObject::FAssetRegistryTag::TT_Numerical, FOnGetCustomAssetColumnData::CreateSP(this, &SAssetAuditBrowser::GetValueForCustomColumn));
Config.CustomColumns.Emplace(IAssetManagerEditorModule::ResourceSizeName, LOCTEXT("ResourceSize", "Exclusive Memory Kb"), LOCTEXT("ResourceSizeTooltip", "Memory used exclusively by this asset, in kilobytes"), UObject::FAssetRegistryTag::TT_Numerical, FOnGetCustomAssetColumnData::CreateSP(this, &SAssetAuditBrowser::GetValueForCustomColumn));
Config.CustomColumns.Emplace(IAssetManagerEditorModule::ManagedDiskSizeName, LOCTEXT("ManagedDiskSize", "Disk Kb"), LOCTEXT("ManagedDiskSizeTooltip", "Total disk space used by both this and all managed assets, in kilobytes"), UObject::FAssetRegistryTag::TT_Numerical, FOnGetCustomAssetColumnData::CreateSP(this, &SAssetAuditBrowser::GetValueForCustomColumn));
@@ -264,8 +265,11 @@ void SAssetAuditBrowser::Construct(const FArguments& InArgs)
Config.CustomColumns.Emplace(IAssetManagerEditorModule::CookRuleName, LOCTEXT("CookRule", "Cook Rule"), LOCTEXT("CookRuleTooltip", "Rather this asset will be cooked or not"), UObject::FAssetRegistryTag::TT_Alphabetical, FOnGetCustomAssetColumnData::CreateSP(this, &SAssetAuditBrowser::GetValueForCustomColumn));
Config.CustomColumns.Emplace(IAssetManagerEditorModule::ChunksName, LOCTEXT("Chunks", "Chunks"), LOCTEXT("ChunksTooltip", "List of chunks this will be added to when cooked"), UObject::FAssetRegistryTag::TT_Alphabetical, FOnGetCustomAssetColumnData::CreateSP(this, &SAssetAuditBrowser::GetValueForCustomColumn));
- // Ignore blueprint tags
+ // Ignore these tags as we added them as custom columns
+ AssetRegistryTagsToIgnore.Add(FPrimaryAssetId::PrimaryAssetTypeTag);
AssetRegistryTagsToIgnore.Add(FPrimaryAssetId::PrimaryAssetNameTag);
+
+ // Ignore blueprint tags
AssetRegistryTagsToIgnore.Add("ParentClass");
AssetRegistryTagsToIgnore.Add("BlueprintType");
AssetRegistryTagsToIgnore.Add("NumReplicatedProperties");
diff --git a/Engine/Plugins/Editor/AudioCapture/AudioCapture.uplugin b/Engine/Plugins/Editor/AudioCapture/AudioCapture.uplugin
index 513414884242..271679bc2dee 100644
--- a/Engine/Plugins/Editor/AudioCapture/AudioCapture.uplugin
+++ b/Engine/Plugins/Editor/AudioCapture/AudioCapture.uplugin
@@ -12,7 +12,7 @@
"SupportURL" : "",
"EnabledByDefault" : true,
"CanContainContent" : false,
- "IsBetaVersion" : true,
+ "IsBetaVersion" : false,
"Installed" : false,
"Modules" :
[
diff --git a/Engine/Plugins/Editor/AudioCapture/Source/AudioCapture/Private/RtAudio.cpp b/Engine/Plugins/Editor/AudioCapture/Source/AudioCapture/Private/RtAudio.cpp
index be394233c6e0..304b126dc03b 100644
--- a/Engine/Plugins/Editor/AudioCapture/Source/AudioCapture/Private/RtAudio.cpp
+++ b/Engine/Plugins/Editor/AudioCapture/Source/AudioCapture/Private/RtAudio.cpp
@@ -3170,7 +3170,7 @@ bool RtApiAsio::probeDeviceOpen(unsigned int device, StreamMode mode, unsigned i
if (result != ASE_OK) {
// Standard method failed. This can happen with strict/misbehaving drivers that return valid buffer size ranges
// but only accept the preferred buffer size as parameter for ASIOCreateBuffers. eg. Creatives ASIO driver
- // in that case, let's be nave and try that instead
+ // in that case, let's be naive and try that instead
*bufferSize = preferSize;
stream_.bufferSize = *bufferSize;
result = ASIOCreateBuffers(handle->bufferInfos, nChannels, stream_.bufferSize, &asioCallbacks);
diff --git a/Engine/Plugins/Editor/EpicSurvey/EpicSurvey.uplugin b/Engine/Plugins/Editor/EpicSurvey/EpicSurvey.uplugin
index 60c5aab0680c..1edce8d097c0 100644
--- a/Engine/Plugins/Editor/EpicSurvey/EpicSurvey.uplugin
+++ b/Engine/Plugins/Editor/EpicSurvey/EpicSurvey.uplugin
@@ -21,5 +21,12 @@
"Type" : "Editor",
"LoadingPhase" : "Default"
}
+ ],
+ "Plugins": [
+ {
+ "Name": "OnlineSubsystem",
+ "Enabled": true
+ }
]
+
}
\ No newline at end of file
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagContainerCustomization.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagContainerCustomization.cpp
index 6fa66dce7865..b78302ad55ca 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagContainerCustomization.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagContainerCustomization.cpp
@@ -10,6 +10,7 @@
#include "PropertyHandle.h"
#include "DetailWidgetRow.h"
#include "ScopedTransaction.h"
+#include "SHyperlink.h"
#define LOCTEXT_NAMESPACE "GameplayTagContainerCustomization"
@@ -116,10 +117,27 @@ void FGameplayTagContainerCustomization::RefreshTagList()
TSharedRef FGameplayTagContainerCustomization::MakeListViewWidget(TSharedPtr Item, const TSharedRef& OwnerTable)
{
+ if (UGameplayTagsManager::Get().ShowGameplayTagAsHyperLinkEditor(*Item.Get()))
+ {
+ return SNew( STableRow< TSharedPtr >, OwnerTable )
+ [
+ SNew(SHyperlink)
+ .Text( FText::FromString(*Item.Get()) )
+ .OnNavigate( this, &FGameplayTagContainerCustomization::OnTagDoubleClicked, *Item.Get() )
+ ];
+
+ }
+
+
return SNew( STableRow< TSharedPtr >, OwnerTable )
- [
- SNew(STextBlock) .Text( FText::FromString(*Item.Get()) )
- ];
+ [
+ SNew(STextBlock) .Text( FText::FromString(*Item.Get()) )
+ ];
+}
+
+void FGameplayTagContainerCustomization::OnTagDoubleClicked(FString TagName)
+{
+ UGameplayTagsManager::Get().NotifyGameplayTagDoubleClickedEditor(TagName);
}
TSharedRef FGameplayTagContainerCustomization::GetListContent()
@@ -129,22 +147,7 @@ TSharedRef FGameplayTagContainerCustomization::GetListContent()
return SNullWidget::NullWidget;
}
- FString Categories;
- {
- TSharedPtr PropertyHandle = StructPropertyHandle;
- while(PropertyHandle.IsValid())
- {
- if (PropertyHandle->GetProperty() != nullptr)
- {
- if (PropertyHandle->GetProperty()->HasMetaData( TEXT("Categories") ))
- {
- Categories = PropertyHandle->GetProperty()->GetMetaData( TEXT("Categories") );
- break;
- }
- }
- PropertyHandle = PropertyHandle->GetParentHandle();
- }
- }
+ FString Categories = UGameplayTagsManager::Get().GetCategoriesMetaFromPropertyHandle(StructPropertyHandle);
TArray OuterObjects;
StructPropertyHandle->GetOuterObjects(OuterObjects);
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagContainerCustomization.h b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagContainerCustomization.h
index 95b309876bf1..56d6d21eb444 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagContainerCustomization.h
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagContainerCustomization.h
@@ -72,5 +72,7 @@ private:
/** The TagList, kept as a member so we can update it later */
TSharedPtr>> TagListView;
+
+ void OnTagDoubleClicked(FString TagName);
};
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagCustomization.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagCustomization.cpp
index c75ec1d7f89e..fc291db4ea58 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagCustomization.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagCustomization.cpp
@@ -6,9 +6,16 @@
#include "Editor.h"
#include "PropertyHandle.h"
#include "DetailWidgetRow.h"
+#include "GameplayTagsEditorModule.h"
+#include "SHyperlink.h"
#define LOCTEXT_NAMESPACE "GameplayTagCustomization"
+TSharedRef FGameplayTagCustomizationPublic::MakeInstance()
+{
+ return MakeShareable(new FGameplayTagCustomization);
+}
+
void FGameplayTagCustomization::CustomizeHeader(TSharedRef InStructPropertyHandle, class FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils)
{
TagContainer = MakeShareable(new FGameplayTagContainer);
@@ -41,41 +48,51 @@ void FGameplayTagCustomization::CustomizeHeader(TSharedRefRegisterForUndo(this);
}
+void FGameplayTagCustomization::OnTagDoubleClicked()
+{
+ UGameplayTagsManager::Get().NotifyGameplayTagDoubleClickedEditor(TagName);
+}
+
+EVisibility FGameplayTagCustomization::GetVisibilityForTagTextBlockWidget(bool ForTextWidget) const
+{
+ return (UGameplayTagsManager::Get().ShowGameplayTagAsHyperLinkEditor(TagName) ^ ForTextWidget) ? EVisibility::Visible : EVisibility::Collapsed;
+}
+
TSharedRef FGameplayTagCustomization::GetListContent()
{
BuildEditableContainerList();
- FString Categories;
- {
- TSharedPtr PropertyHandle = StructPropertyHandle;
- while(PropertyHandle.IsValid())
- {
- if (PropertyHandle->GetProperty())
- {
- if (PropertyHandle->GetProperty()->HasMetaData( TEXT("Categories") ))
- {
- Categories = PropertyHandle->GetProperty()->GetMetaData( TEXT("Categories") );
- break;
- }
- }
- PropertyHandle = PropertyHandle->GetParentHandle();
- }
- }
+ FString Categories = UGameplayTagsManager::Get().GetCategoriesMetaFromPropertyHandle(StructPropertyHandle);
bool bReadOnly = StructPropertyHandle->GetProperty()->HasAnyPropertyFlags(CPF_EditConst);
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagCustomization.h b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagCustomization.h
index 5f6dd11e8d1b..69b0ceabc7b8 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagCustomization.h
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagCustomization.h
@@ -14,10 +14,6 @@ class IPropertyHandle;
class FGameplayTagCustomization : public IPropertyTypeCustomization, public FEditorUndoClient
{
public:
- static TSharedRef MakeInstance()
- {
- return MakeShareable(new FGameplayTagCustomization);
- }
~FGameplayTagCustomization();
@@ -60,5 +56,8 @@ private:
/** Tag name selected*/
FString TagName;
+
+ void OnTagDoubleClicked();
+ EVisibility GetVisibilityForTagTextBlockWidget(bool ForTextWidget) const;
};
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagQueryCustomization.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagQueryCustomization.cpp
index ed7e527e3d02..433cc9749475 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagQueryCustomization.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagQueryCustomization.cpp
@@ -13,6 +13,9 @@
#include "Editor.h"
#include "PropertyHandle.h"
#include "DetailWidgetRow.h"
+#include "IPropertyTypeCustomization.h"
+#include "IPropertyUtilities.h"
+#include "NotifyHook.h"
#define LOCTEXT_NAMESPACE "GameplayTagQueryCustomization"
@@ -20,7 +23,9 @@ void FGameplayTagQueryCustomization::CustomizeHeader(TSharedRefGetProperty() ? StructPropertyHandle->GetProperty()->HasAnyPropertyFlags(CPF_EditConst) : false;
@@ -182,8 +187,8 @@ FReply FGameplayTagQueryCustomization::OnEditButtonClicked()
.ClientSize(FVector2D(600, 400))
[
SNew(SGameplayTagQueryWidget, EditableQueries)
- .OnSaveAndClose(this, &FGameplayTagQueryCustomization::CloseWidgetWindow)
- .OnCancel(this, &FGameplayTagQueryCustomization::CloseWidgetWindow)
+ .OnSaveAndClose(this, &FGameplayTagQueryCustomization::CloseWidgetWindow, false)
+ .OnCancel(this, &FGameplayTagQueryCustomization::CloseWidgetWindow, true)
.ReadOnly(bReadOnly)
];
@@ -220,16 +225,33 @@ void FGameplayTagQueryCustomization::BuildEditableQueryList()
TArray OuterObjects;
StructPropertyHandle->GetOuterObjects(OuterObjects);
+
for (int32 Idx = 0; Idx < RawStructData.Num(); ++Idx)
{
- EditableQueries.Add(SGameplayTagQueryWidget::FEditableGameplayTagQueryDatum(OuterObjects.IsValidIndex(Idx) ? OuterObjects[Idx] : nullptr, (FGameplayTagQuery*)RawStructData[Idx]));
+ // Null outer objects may mean that we are inside a UDataTable. This is ok though. We can still dirty the data table via FNotify Hook. (see ::CloseWidgetWindow). However undo will not work.
+ UObject* Obj = OuterObjects.IsValidIndex(Idx) ? OuterObjects[Idx] : nullptr;
+ EditableQueries.Add(SGameplayTagQueryWidget::FEditableGameplayTagQueryDatum(Obj, (FGameplayTagQuery*)RawStructData[Idx]));
}
}
}
-void FGameplayTagQueryCustomization::CloseWidgetWindow()
+void FGameplayTagQueryCustomization::CloseWidgetWindow(bool WasCancelled)
{
+ // Notify change. This is required for these to work inside of UDataTables
+ if (!WasCancelled && PropertyUtilities.IsValid())
+ {
+ UProperty* TheProperty = StructPropertyHandle->GetProperty();
+
+ FEditPropertyChain PropertyChain;
+ PropertyChain.AddHead(TheProperty);
+ PropertyChain.SetActivePropertyNode(TheProperty);
+
+ FPropertyChangedEvent ChangeEvent(StructPropertyHandle->GetProperty(), EPropertyChangeType::ValueSet, nullptr);
+ FNotifyHook* NotifyHook = PropertyUtilities->GetNotifyHook();
+ NotifyHook->NotifyPostChange(ChangeEvent, &PropertyChain);
+ }
+
if( GameplayTagQueryWidgetWindow.IsValid() )
{
GameplayTagQueryWidgetWindow->RequestDestroyWindow();
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagQueryCustomization.h b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagQueryCustomization.h
index 499e21822ccd..99ede310591f 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagQueryCustomization.h
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagQueryCustomization.h
@@ -48,7 +48,7 @@ private:
FText GetQueryDescText() const;
- void CloseWidgetWindow();
+ void CloseWidgetWindow(bool WasCancelled);
/** Build List of Editable Queries */
void BuildEditableQueryList();
@@ -63,5 +63,7 @@ private:
TSharedPtr GameplayTagQueryWidgetWindow;
FString QueryDescription;
+
+ TSharedPtr PropertyUtilities;
};
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagReferenceHelperDetails.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagReferenceHelperDetails.cpp
index d856141e98fb..bea7f1590842 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagReferenceHelperDetails.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagReferenceHelperDetails.cpp
@@ -8,6 +8,9 @@
#include "GameplayTagContainer.h"
#include "UObjectHash.h"
#include "UnrealType.h"
+#include "GameplayTagsManager.h"
+#include "SGameplayTagWidget.h"
+#include "IDetailChildrenBuilder.h"
#define LOCTEXT_NAMESPACE "GameplayTagReferenceHelperDetails"
@@ -193,4 +196,40 @@ TSharedRef FGameplayTagReferenceHelperDetails::OnGenerateWidgetForGam
}
}
+// --------------------------------------------------------------------------------------
+
+TSharedRef FGameplayTagCreationWidgetHelperDetails::MakeInstance()
+{
+ return MakeShareable(new FGameplayTagCreationWidgetHelperDetails());
+}
+
+void FGameplayTagCreationWidgetHelperDetails::CustomizeHeader( TSharedRef StructPropertyHandle, class FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils )
+{
+
+}
+
+void FGameplayTagCreationWidgetHelperDetails::CustomizeChildren( TSharedRef StructPropertyHandle, class IDetailChildrenBuilder& StructBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils )
+{
+ FString FilterString = UGameplayTagsManager::Get().GetCategoriesMetaFromPropertyHandle(StructPropertyHandle);
+ const float MaxPropertyWidth = 480.0f;
+ const float MaxPropertyHeight = 240.0f;
+
+ StructBuilder.AddChildContent( LOCTEXT("NewTag", "NewTag") )
+ .ValueContent()
+ .MaxDesiredWidth(MaxPropertyWidth)
+ [
+ SAssignNew(TagWidget, SGameplayTagWidget, TArray())
+ .Filter(FilterString)
+ .NewTagName(FilterString)
+ .MultiSelect(false)
+ .GameplayTagUIMode(EGameplayTagUIMode::ManagementMode)
+ .MaxHeight(MaxPropertyHeight)
+ .NewTagControlsInitiallyExpanded(true)
+ //.OnTagChanged(this, &FGameplayTagsSettingsCustomization::OnTagChanged)
+ ];
+
+}
+
+
+
#undef LOCTEXT_NAMESPACE
\ No newline at end of file
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagReferenceHelperDetails.h b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagReferenceHelperDetails.h
index d2f4defce53b..74c1bcb75157 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagReferenceHelperDetails.h
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagReferenceHelperDetails.h
@@ -45,4 +45,15 @@ private:
TSharedPtr PropertyHandle;
struct FGameplayTagReferenceHelper* GetValue();
+};
+
+class FGameplayTagCreationWidgetHelperDetails : public IPropertyTypeCustomization
+{
+public:
+ static TSharedRef MakeInstance();
+
+ /** IPropertyTypeCustomization interface */
+ virtual void CustomizeHeader( TSharedRef StructPropertyHandle, class FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils ) override;
+ virtual void CustomizeChildren( TSharedRef StructPropertyHandle, class IDetailChildrenBuilder& StructBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils ) override;
+ TSharedPtr TagWidget;
};
\ No newline at end of file
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsEditorModule.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsEditorModule.cpp
index ca6a21319efa..b2be9a91f1b5 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsEditorModule.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsEditorModule.cpp
@@ -46,12 +46,13 @@ public:
{
FPropertyEditorModule& PropertyModule = FModuleManager::LoadModuleChecked("PropertyEditor");
PropertyModule.RegisterCustomPropertyTypeLayout("GameplayTagContainer", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&FGameplayTagContainerCustomization::MakeInstance));
- PropertyModule.RegisterCustomPropertyTypeLayout("GameplayTag", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&FGameplayTagCustomization::MakeInstance));
+ PropertyModule.RegisterCustomPropertyTypeLayout("GameplayTag", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&FGameplayTagCustomizationPublic::MakeInstance));
PropertyModule.RegisterCustomPropertyTypeLayout("GameplayTagQuery", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&FGameplayTagQueryCustomization::MakeInstance));
PropertyModule.RegisterCustomClassLayout(UGameplayTagsList::StaticClass()->GetFName(), FOnGetDetailCustomizationInstance::CreateStatic(&FGameplayTagsSettingsCustomization::MakeInstance));
PropertyModule.RegisterCustomPropertyTypeLayout("GameplayTagReferenceHelper", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&FGameplayTagReferenceHelperDetails::MakeInstance));
+ PropertyModule.RegisterCustomPropertyTypeLayout("GameplayTagCreationWidgetHelper", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&FGameplayTagCreationWidgetHelperDetails::MakeInstance));
PropertyModule.NotifyCustomizationModuleChanged();
}
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_LiteralGameplayTag.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_LiteralGameplayTag.cpp
index 5853c22f62b9..5afc7b10d2cf 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_LiteralGameplayTag.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_LiteralGameplayTag.cpp
@@ -23,8 +23,8 @@ void UGameplayTagsK2Node_LiteralGameplayTag::AllocateDefaultPins()
{
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_String, TEXT("LiteralGameplayTagContainer"), NULL, false, false, TEXT("TagIn"));
- CreatePin(EGPD_Output, K2Schema->PC_Struct, TEXT(""), FGameplayTagContainer::StaticStruct(), false, false, K2Schema->PN_ReturnValue);
+ CreatePin(EGPD_Input, K2Schema->PC_String, TEXT("LiteralGameplayTagContainer"), nullptr, TEXT("TagIn"));
+ CreatePin(EGPD_Output, K2Schema->PC_Struct, FString(), FGameplayTagContainer::StaticStruct(), K2Schema->PN_ReturnValue);
}
FLinearColor UGameplayTagsK2Node_LiteralGameplayTag::GetNodeTitleColor() const
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagAssetInterface.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagAssetInterface.cpp
index 405bd428b598..31c634782fdc 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagAssetInterface.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagAssetInterface.cpp
@@ -25,7 +25,7 @@ void UGameplayTagsK2Node_MultiCompareGameplayTagAssetInterface::AllocateDefaultP
}
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_Interface, TEXT(""), UGameplayTagAssetInterface::StaticClass(), false, false, TEXT("Gameplay Tag Asset Interface"));
+ CreatePin(EGPD_Input, K2Schema->PC_Interface, FString(), UGameplayTagAssetInterface::StaticClass(), TEXT("Gameplay Tag Asset Interface"));
}
void UGameplayTagsK2Node_MultiCompareGameplayTagAssetInterface::ExpandNode(class FKismetCompilerContext& CompilerContext, UEdGraph* SourceGraph)
@@ -103,6 +103,6 @@ void UGameplayTagsK2Node_MultiCompareGameplayTagAssetInterface::AddPinToSwitchNo
PinNames.Add(FName(*PinName));
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_Struct, TEXT(""), FGameplayTagContainer::StaticStruct(), false, true, InPin);
- CreatePin(EGPD_Output, K2Schema->PC_Boolean, TEXT(""), NULL, false, false, OutPin);
+ CreatePin(EGPD_Input, K2Schema->PC_Struct, FString(), FGameplayTagContainer::StaticStruct(), InPin, EPinContainerType::None, true);
+ CreatePin(EGPD_Output, K2Schema->PC_Boolean, FString(), nullptr, OutPin);
}
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagAssetInterfaceSingleTags.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagAssetInterfaceSingleTags.cpp
index b13d4e9d7633..e2f978ab0b66 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagAssetInterfaceSingleTags.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagAssetInterfaceSingleTags.cpp
@@ -24,7 +24,7 @@ void UGameplayTagsK2Node_MultiCompareGameplayTagAssetInterfaceSingleTags::Alloca
}
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_Interface, TEXT(""), UGameplayTagAssetInterface::StaticClass(), false, false, TEXT("Gameplay Tag Asset Interface"));
+ CreatePin(EGPD_Input, K2Schema->PC_Interface, FString(), UGameplayTagAssetInterface::StaticClass(), TEXT("Gameplay Tag Asset Interface"));
}
void UGameplayTagsK2Node_MultiCompareGameplayTagAssetInterfaceSingleTags::ExpandNode(class FKismetCompilerContext& CompilerContext, UEdGraph* SourceGraph)
@@ -104,6 +104,6 @@ void UGameplayTagsK2Node_MultiCompareGameplayTagAssetInterfaceSingleTags::AddPin
PinNames.Add(FName(*PinName));
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_Struct, TEXT(""), FGameplayTag::StaticStruct(), false, true, InPin);
- CreatePin(EGPD_Output, K2Schema->PC_Boolean, TEXT(""), NULL, false, false, OutPin);
+ CreatePin(EGPD_Input, K2Schema->PC_Struct, FString(), FGameplayTag::StaticStruct(), InPin, EPinContainerType::None, true);
+ CreatePin(EGPD_Output, K2Schema->PC_Boolean, FString(), nullptr, OutPin);
}
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagContainer.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagContainer.cpp
index c78c6ad6d096..a7b90f36eb4e 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagContainer.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagContainer.cpp
@@ -23,7 +23,7 @@ void UGameplayTagsK2Node_MultiCompareGameplayTagContainer::AllocateDefaultPins()
}
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_Struct, TEXT(""), FGameplayTagContainer::StaticStruct(), false, true, TEXT("Gameplay Tag Container"));
+ CreatePin(EGPD_Input, K2Schema->PC_Struct, FString(), FGameplayTagContainer::StaticStruct(), TEXT("Gameplay Tag Container"), EPinContainerType::None, true);
}
void UGameplayTagsK2Node_MultiCompareGameplayTagContainer::ExpandNode(class FKismetCompilerContext& CompilerContext, UEdGraph* SourceGraph)
@@ -101,6 +101,6 @@ void UGameplayTagsK2Node_MultiCompareGameplayTagContainer::AddPinToSwitchNode()
PinNames.Add(FName(*PinName));
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_Struct, TEXT(""), FGameplayTagContainer::StaticStruct(), false, true, InPin);
- CreatePin(EGPD_Output, K2Schema->PC_Boolean, TEXT(""), NULL, false, false, OutPin);
+ CreatePin(EGPD_Input, K2Schema->PC_Struct, FString(), FGameplayTagContainer::StaticStruct(), InPin, EPinContainerType::None, true);
+ CreatePin(EGPD_Output, K2Schema->PC_Boolean, FString(), nullptr, OutPin);
}
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagContainerSingleTags.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagContainerSingleTags.cpp
index e24ba36bde1b..479f7b6ee96f 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagContainerSingleTags.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_MultiCompareGameplayTagContainerSingleTags.cpp
@@ -23,7 +23,7 @@ void UGameplayTagsK2Node_MultiCompareGameplayTagContainerSingleTags::AllocateDef
}
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_Struct, TEXT(""), FGameplayTagContainer::StaticStruct(), false, true, TEXT("Gameplay Tag Container"));
+ CreatePin(EGPD_Input, K2Schema->PC_Struct, FString(), FGameplayTagContainer::StaticStruct(), TEXT("Gameplay Tag Container"), EPinContainerType::None, true);
}
void UGameplayTagsK2Node_MultiCompareGameplayTagContainerSingleTags::ExpandNode(class FKismetCompilerContext& CompilerContext, UEdGraph* SourceGraph)
@@ -101,6 +101,6 @@ void UGameplayTagsK2Node_MultiCompareGameplayTagContainerSingleTags::AddPinToSwi
PinNames.Add(FName(*PinName));
const UEdGraphSchema_K2* K2Schema = GetDefault();
- CreatePin(EGPD_Input, K2Schema->PC_Struct, TEXT(""), FGameplayTag::StaticStruct(), false, true, InPin);
- CreatePin(EGPD_Output, K2Schema->PC_Boolean, TEXT(""), NULL, false, false, OutPin);
+ CreatePin(EGPD_Input, K2Schema->PC_Struct, FString(), FGameplayTag::StaticStruct(), InPin, EPinContainerType::None, true);
+ CreatePin(EGPD_Output, K2Schema->PC_Boolean, FString(), nullptr, OutPin);
}
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_SwitchGameplayTag.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_SwitchGameplayTag.cpp
index e07a29a717f7..f5b33986e80f 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_SwitchGameplayTag.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_SwitchGameplayTag.cpp
@@ -18,7 +18,7 @@ void UGameplayTagsK2Node_SwitchGameplayTag::CreateFunctionPin()
{
// Set properties on the function pin
const UEdGraphSchema_K2* K2Schema = GetDefault();
- UEdGraphPin* FunctionPin = CreatePin(EGPD_Input, K2Schema->PC_Object, TEXT(""), FunctionClass, false, false, FunctionName.ToString());
+ UEdGraphPin* FunctionPin = CreatePin(EGPD_Input, K2Schema->PC_Object, FString(), FunctionClass, FunctionName.ToString());
FunctionPin->bDefaultValueIsReadOnly = true;
FunctionPin->bNotConnectable = true;
FunctionPin->bHidden = true;
@@ -98,8 +98,8 @@ void UGameplayTagsK2Node_SwitchGameplayTag::GetMenuActions(FBlueprintActionDatab
void UGameplayTagsK2Node_SwitchGameplayTag::CreateSelectionPin()
{
const UEdGraphSchema_K2* K2Schema = GetDefault();
- UEdGraphPin* Pin = CreatePin(EGPD_Input, K2Schema->PC_Struct, TEXT(""), FGameplayTag::StaticStruct(), false, false, TEXT("Selection"));
- K2Schema->SetPinDefaultValueBasedOnType(Pin);
+ UEdGraphPin* Pin = CreatePin(EGPD_Input, K2Schema->PC_Struct, FString(), FGameplayTag::StaticStruct(), TEXT("Selection"));
+ K2Schema->SetPinAutogeneratedDefaultValueBasedOnType(Pin);
}
FEdGraphPinType UGameplayTagsK2Node_SwitchGameplayTag::GetPinType() const
@@ -151,7 +151,7 @@ void UGameplayTagsK2Node_SwitchGameplayTag::CreateCasePins()
PinNames[Index] = FName(*GetUniquePinName());
}
- CreatePin(EGPD_Output, K2Schema->PC_Exec, TEXT(""), NULL, false, false, PinNames[Index].ToString());
+ CreatePin(EGPD_Output, K2Schema->PC_Exec, FString(), nullptr, PinNames[Index].ToString());
}
}
@@ -176,7 +176,7 @@ void UGameplayTagsK2Node_SwitchGameplayTag::AddPinToSwitchNode()
PinNames.Add(FName(*PinName));
const UEdGraphSchema_K2* K2Schema = GetDefault();
- UEdGraphPin* NewPin = CreatePin(EGPD_Output, K2Schema->PC_Exec, TEXT(""), NULL, false, false, PinName);
+ UEdGraphPin* NewPin = CreatePin(EGPD_Output, K2Schema->PC_Exec, FString(), nullptr, PinName);
if (PinTags.Num() < PinNames.Num())
{
PinTags.Add(FGameplayTag());
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_SwitchGameplayTagContainer.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_SwitchGameplayTagContainer.cpp
index 30e3ad146b2c..4f335f84aad4 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_SwitchGameplayTagContainer.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/GameplayTagsK2Node_SwitchGameplayTagContainer.cpp
@@ -18,7 +18,7 @@ void UGameplayTagsK2Node_SwitchGameplayTagContainer::CreateFunctionPin()
{
// Set properties on the function pin
const UEdGraphSchema_K2* K2Schema = GetDefault();
- UEdGraphPin* FunctionPin = CreatePin(EGPD_Input, K2Schema->PC_Object, TEXT(""), FunctionClass, false, false, FunctionName.ToString());
+ UEdGraphPin* FunctionPin = CreatePin(EGPD_Input, K2Schema->PC_Object, FString(), FunctionClass, FunctionName.ToString());
FunctionPin->bDefaultValueIsReadOnly = true;
FunctionPin->bNotConnectable = true;
FunctionPin->bHidden = true;
@@ -98,8 +98,8 @@ void UGameplayTagsK2Node_SwitchGameplayTagContainer::GetMenuActions(FBlueprintAc
void UGameplayTagsK2Node_SwitchGameplayTagContainer::CreateSelectionPin()
{
const UEdGraphSchema_K2* K2Schema = GetDefault();
- UEdGraphPin* Pin = CreatePin(EGPD_Input, K2Schema->PC_Struct, TEXT(""), FGameplayTagContainer::StaticStruct(), false, false, TEXT("Selection"));
- K2Schema->SetPinDefaultValueBasedOnType(Pin);
+ UEdGraphPin* Pin = CreatePin(EGPD_Input, K2Schema->PC_Struct, FString(), FGameplayTagContainer::StaticStruct(), TEXT("Selection"));
+ K2Schema->SetPinAutogeneratedDefaultValueBasedOnType(Pin);
}
FEdGraphPinType UGameplayTagsK2Node_SwitchGameplayTagContainer::GetPinType() const
@@ -143,7 +143,7 @@ void UGameplayTagsK2Node_SwitchGameplayTagContainer::CreateCasePins()
PinNames[Index] = FName(*GetUniquePinName());
}
- UEdGraphPin * NewPin = CreatePin(EGPD_Output, K2Schema->PC_Exec, TEXT(""), nullptr, false, false, PinNames[Index].ToString());
+ UEdGraphPin * NewPin = CreatePin(EGPD_Output, K2Schema->PC_Exec, FString(), nullptr, PinNames[Index].ToString());
if (PinContainers[Index].IsValid())
{
@@ -177,7 +177,7 @@ void UGameplayTagsK2Node_SwitchGameplayTagContainer::AddPinToSwitchNode()
PinNames.Add(FName(*PinName));
const UEdGraphSchema_K2* K2Schema = GetDefault();
- UEdGraphPin* NewPin = CreatePin(EGPD_Output, K2Schema->PC_Exec, TEXT(""), nullptr, false, false, PinName);
+ UEdGraphPin* NewPin = CreatePin(EGPD_Output, K2Schema->PC_Exec, FString(), nullptr, PinName);
NewPin->PinFriendlyName = FText::FromString(PinName);
if (PinContainers.Num() < PinNames.Num())
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SAddNewGameplayTagWidget.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SAddNewGameplayTagWidget.cpp
index f947c1418b33..831080de7503 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SAddNewGameplayTagWidget.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SAddNewGameplayTagWidget.cpp
@@ -11,6 +11,15 @@
void SAddNewGameplayTagWidget::Construct(const FArguments& InArgs)
{
+
+ FText HintText = LOCTEXT("NewTagNameHint", "X.Y.Z");
+ DefaultNewName = InArgs._NewTagName;
+ if (DefaultNewName.IsEmpty() == false)
+ {
+ HintText = FText::FromString(DefaultNewName);
+ }
+
+
bAddingNewTag = false;
bShouldGetKeyboardFocus = false;
@@ -42,7 +51,7 @@ void SAddNewGameplayTagWidget::Construct(const FArguments& InArgs)
[
SAssignNew(TagNameTextBox, SEditableTextBox)
.MinDesiredWidth(240.0f)
- .HintText(LOCTEXT("NewTagNameHint", "X.Y.Z"))
+ .HintText(HintText)
.OnTextCommitted(this, &SAddNewGameplayTagWidget::OnCommitNewTagName)
]
]
@@ -166,7 +175,7 @@ void SAddNewGameplayTagWidget::Reset()
void SAddNewGameplayTagWidget::SetTagName(const FText& InName)
{
- TagNameTextBox->SetText(InName);
+ TagNameTextBox->SetText(InName.IsEmpty() ? FText::FromString(DefaultNewName) : InName);
}
void SAddNewGameplayTagWidget::SelectTagSource(const FName& InSource)
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SAddNewGameplayTagWidget.h b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SAddNewGameplayTagWidget.h
index d9341ab6d345..623210cbf5d5 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SAddNewGameplayTagWidget.h
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SAddNewGameplayTagWidget.h
@@ -19,8 +19,10 @@ public:
DECLARE_DELEGATE_ThreeParams( FOnGameplayTagAdded, const FString& /*TagName*/, const FString& /*TagComment*/, const FName& /*TagSource*/);
SLATE_BEGIN_ARGS(SAddNewGameplayTagWidget)
+ : _NewTagName(TEXT(""))
{}
SLATE_EVENT( FOnGameplayTagAdded, OnGameplayTagAdded ) // Callback for when a new tag is added
+ SLATE_ARGUMENT( FString, NewTagName ) // String that will initially populate the New Tag Name field
SLATE_END_ARGS();
virtual void Tick( const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime ) override;
@@ -86,4 +88,6 @@ private:
/** Tracks if this widget should get keyboard focus */
bool bShouldGetKeyboardFocus;
+
+ FString DefaultNewName;
};
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SGameplayTagGraphPin.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SGameplayTagGraphPin.cpp
index d49c8eb66830..0844107bcfc6 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SGameplayTagGraphPin.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SGameplayTagGraphPin.cpp
@@ -53,10 +53,7 @@ void SGameplayTagGraphPin::ParseDefaultValueData()
UFunction* ThisFunction = CallFuncNode->GetTargetFunction();
if (ThisFunction)
{
- if (ThisFunction->HasMetaData(TEXT("GameplayTagFilter")))
- {
- FilterString = ThisFunction->GetMetaData(TEXT("GameplayTagFilter"));
- }
+ FilterString = UGameplayTagsManager::Get().GetCategoriesMetaFromFunction(ThisFunction);
}
}
diff --git a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SGameplayTagWidget.cpp b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SGameplayTagWidget.cpp
index c1bbcd55aea2..e8a08340bcce 100644
--- a/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SGameplayTagWidget.cpp
+++ b/Engine/Plugins/Editor/GameplayTagsEditor/Source/GameplayTagsEditor/Private/SGameplayTagWidget.cpp
@@ -49,7 +49,7 @@ void SGameplayTagWidget::Construct(const FArguments& InArgs, const TArray