* Provides mid-range stable AO for dynamic rigid meshes
* Movable sky lights are now supported, and distance field AO is used for shadowing Movable sky lighting from dynamic scenes
* Static meshes are preprocessed into signed distance field volumes at mesh build time when the r.AllowMeshDistanceFieldRepresentations project setting is enabled
* Non-uniform scaling does not work with this method (mirroring is fine), animating through world position offset also causes artifacts as the two representations diverge
* Occlusion is computed along cones to reduce over-shadowing, object distance fields are operated on directly (no hierarchy) to obtain enough resolution to prevent leaking, visibility traces are done with cone stepping to allow better parallelization, and shading is done adaptively in space and time using the surface cache.
[CL 2093556 by Daniel Wright in Main branch]
#ttp 335786 Lighting: Assigning a Material in the Staticmesh editor unbuilds lighting on placed meshes
reviewer Thomas.Sarkanen
[CL 2093124 by Andrew Copland in Main branch]
Milestone 4
-Added support for grouping devices based off MachineName, Platform, OSVersion, Model, GPU, CPU, RAM, or RenderMode.
-Added a graphical test result section to show relative times between instances.
[CL 2076099 by kevin hamilton in Main branch]
Automation: Milestone 3 and fixes for milestone 2
-Added new EditorShot command to take editor screenshots
-Made the ExterialTool options use the dierctory picker
-Fixed a bug with the StaticMeshEditor test if the tutorial pops up
-StaticMeshUV test now uses async package loading
-Added a display every Nth screenshot to the screenshot compre tab
-Added support to disable screenshots or request full size ones
-Changed the screenshots so they save to the game directory even if you run the frontend by itself
-Added screenshot support for the load all maps tests
[CL 2071712 by kevin hamilton in Main branch]
#ttp 319896 - Skeletalmesh/Staticmesh LOD refactoring: Part 1 (Refactor Static Meshes to use ScreenSize rather than distance)
#branch UE4
#change Removed LOD Distances and added ScreenSize for Static Meshes
[CL 2065408 by Benn Gallagher in Main branch]
#proj core
#branch UE4
#summary Rename Trunc, Round, Floor, Ceil to TruncToInt, RoundToInt, FloorToInt, CeilToInt. Added *ToFloat versions. Repeated for FGenericPlatformMath and all derived classes for all platforms wherever applicable. Corrected comment in Fractional and added Frac() which does HLSL-style fractional (x - floor(x)). Checked for compilation on all projects (with cooking levels wherever applicable). Didn't change Fractional to Frac, this will be done in second commit.
#codereview robert.manuszewski
[CL 2064306 by Mikolaj Sieluzycki in Main branch]
Other Updates:
- The WidgetReflector is now in its own module as well. It will be converted to a plug-in later.
- The Public API of both Slate and SlateCore has largely been reorganized for better discoverabilty. More cleanup work is needed.
- Added a lot of missing API documentation and fixed existing ones. More and better documentation is needed.
- Removed dead code, fixed a couple things I stubled upon, and conformed to coding guidelines (NULL vs nullptr, line breaks, etc.)
Upgrade Notes:
- The Slate Remote Server is currently disabled - will be re-enabled shortly!
- If your module previously had a module dependency to 'Slate', it now also needs a PrivateModuleDependency to 'SlateCore' in its Build.cs file.
- If your module exposes in any of its Public header files types that are now declared in SlateCore, it needs a PublicModuleDependency to 'SlateCore'
- The ToolTip property type on SWidget has changed from SToolTip to IToolTip; change local variables to TSharedPtr<IToolTip> instead of TSharedPtr<SToolTip> where needed
- IToolTip is not a widget. If you need access to the actual widget that represents the tool tip, use IToolTip::AsWidget(); If you need access to the tool tip's content, use IToolTip::GetContentWidget()
Troubleshooting:
- After syncing to this changelist you may have to clean your /Engine/Intermediate/Build/ directory and rebuild your entire project
- If in your project you are getting linker errors for unresolved types that are now declared in SlateCore, you may be missing a dependency to 'SlateCore'
- If in the Engine code you are getting linker errors for unresolved types that are now declared in SlateCore, you may need to rebuild the entire Engine
[CL 2057118 by Max Preussner in Main branch]
#ttp 333283 - EDITOR: Static Mesh will disappear when changing the Z axis from 0 to any other number while using the Build Scale tool
#branch UE4
#proj Editor.StaticMeshEditor
#change Trapped inputs close to zero in FMeshBuildSettingsLayout::OnBuildScale*Changed and rejected them.
#reviewedby Chris.Wood
[CL 2056448 by Richard TalbotWatkin in Main branch]
TTP# 332724 - Regression: EDITOR: Texture: CRASH: Reimporting a texture that is not a power of two results in a crash
Reimporting a non-power of 2 texture would cause a modal dialog to open, causing the texture editor viewport to be ticked for render while the texture was still being reimported. This lead to a crash due to the texture having no resource allocated.
The rendering in the texture editor is now disabled while a reimport takes place.
I also moved the Pre/PostReimport delegates from FAssetEditorToolkit to FReimportManager to ensure that all reimport cases are caught (eg, reimporting from the Content Browser while an asset editor is open).
ReviewedBy Thomas.Sarkanen, Max.Preussner
[CL 2056305 by Jamie Dale in Main branch]
Merging //depot/Partners/Zombie/UE4-iOS/... to //depot/UE4/...
Milestone 1 and 2 combined (CL# 2047358 to 2055524)
-Run external tools
-Repeat tests N times
-Visual difference for editor vs game tests
-Static mesh UV test
-Editor window screenshots
-Automation test presets
-Static mesh editor test
[CL 2055603 by kevin hamilton in Main branch]