2019-12-26 15:33:43 -05:00
|
|
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
#include "MaterialEditorDetailCustomization.h"
|
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
|
|
|
#include "Widgets/Text/STextBlock.h"
|
|
|
|
|
#include "Widgets/Input/SEditableText.h"
|
|
|
|
|
#include "Widgets/Input/SComboButton.h"
|
|
|
|
|
#include "Widgets/Views/SListView.h"
|
|
|
|
|
#include "Materials/Material.h"
|
2014-11-12 04:43:54 -05:00
|
|
|
#include "Materials/MaterialParameterCollection.h"
|
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
|
|
|
#include "DetailLayoutBuilder.h"
|
|
|
|
|
#include "DetailWidgetRow.h"
|
|
|
|
|
#include "DetailCategoryBuilder.h"
|
2015-07-02 09:20:08 -04:00
|
|
|
#include "Materials/MaterialExpressionScalarParameter.h"
|
2019-05-22 10:27:49 -04:00
|
|
|
#include "Materials/MaterialExpressionVectorParameter.h"
|
2020-10-07 10:35:24 -04:00
|
|
|
#include "Materials/MaterialExpressionComposite.h"
|
|
|
|
|
#include "Materials/MaterialExpressionPinBase.h"
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
#include "MaterialLayersFunctionsCustomization.h"
|
|
|
|
|
#include "PropertyEditorModule.h"
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3739701)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3358367 by tim.gautier
Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters
Change 3624848 by Jamie.Dale
Added a composite font for the editor (and Slate core)
This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.
This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.
This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.
Change 3654993 by Jamie.Dale
'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer
This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer
Breaking changes:
- Native has been renamed to FNativeFuncPtr.
- The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
- Use P_THIS if you were previously using the 'this' pointer in your native function.
Change 3699591 by Jamie.Dale
Added support for displaying and editing numbers in a culture correct way
Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).
#jira UE-4028
Change 3719568 by Jamie.Dale
Allow platforms to override the default ICU timezone calculation
Change 3622366 by Bradut.Palas
#jira UE-46677
Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.
Change 3622378 by Bradut.Palas
#jira UE-46590
we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.
Change 3622552 by Jamie.Dale
Added support for per-culture sub-fonts within a composite font
This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).
Change 3623170 by Jamie.Dale
Fixing warning
Change 3624846 by Jamie.Dale
Composite font cache optimizations
- Converted a typically small sized map to a sorted array + binary search.
- Converted the already sorted range array to use binary search.
- Contiguous ranges using the same typeface are now merged in the cache.
Change 3625576 by Cody.Albert
We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.
#jira UE-47971
Change 3626057 by Matt.Kuhlenschmidt
Expose EUmgSequencePlayMode to blueprints
#jira UE-49255
Change 3626556 by Matt.Kuhlenschmidt
Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning.
#jira UE-48922, UE-48957
Change 3627692 by Matt.Kuhlenschmidt
PR #3977: Source control submenu menu customization (Contributed by Kryofenix)
Change 3628600 by Arciel.Rekman
Added AutoCheckout to FAssetRenameManager for commandlet usage.
Change 3630561 by Richard.Hinckley
Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.
Change 3630656 by Richard.Hinckley
Compile fix.
Change 3630964 by Arciel.Rekman
Fix CrashReporterClient headless build.
Change 3631050 by Matt.Kuhlenschmidt
Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp
Causes major problems with resizing splitters in editor
Change 3631140 by Arciel.Rekman
OpenAL: update Linux version to 1.18.1 (UETOOL-1253)
- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
- Bulk of the change from Cengiz.Terzibas
#jira UETOOL-1253
Change 3632924 by Jamie.Dale
Added support for a catch-all fallback font within composite fonts
This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.
Change 3633055 by Jamie.Dale
Fixed some refresh issues in the font editor
Change 3633062 by Jamie.Dale
Fixed localization commands being reported as unknown
Change 3633906 by Nick.Darnell
UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working.
Change 3634070 by Arciel.Rekman
Display actually used values of material overrides.
Change 3634254 by Arciel.Rekman
Fix ResavePackages working poorly with projects on other drives (UE-49465).
#jira UE-49465
Change 3635985 by Matt.Kuhlenschmidt
Fixed typo in function name used by maps
PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)
Change 3636012 by Matt.Kuhlenschmidt
PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)
Change 3636706 by Lauren.Ridge
Epic Friday: Save parameters to child or sibling instance functionality
Change 3638706 by Jamie.Dale
Added an improved Japanese font to the editor
This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).
#jira UE-33268
Change 3639438 by Arciel.Rekman
Linux: Repaired ARM server build (UE-49635).
- Made Steam* plugins compile.
- Disabled OpenEXR as the libs aren't compiled (need to be done separately).
(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)
Change 3640625 by Matt.Kuhlenschmidt
PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)
Change 3640626 by Matt.Kuhlenschmidt
PR #4011: Remove space from filename (Contributed by projectgheist)
Change 3640697 by Matt.Kuhlenschmidt
PR #4010: PNG alpha fix (Contributed by mmdanggg2)
Change 3641137 by Jamie.Dale
Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch
It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.
Change 3641351 by Jamie.Dale
Fixing incorrect weights on the Japanese sub-font
Change 3641356 by Jamie.Dale
Fixing inconsistent font sizes between CoreStyle and EditorStyle
Change 3641710 by Jamie.Dale
Fixed pure-virtual function call on UMulticastDelegateProperty
Change 3641941 by Lauren.Ridge
Adding a Parameter Details tab to the Material Editor so users can change default parameter details
Change 3644141 by Jamie.Dale
Added an improved Korean font to the editor
This is only used when displaying Korean text when the editor is set to Korean
Change 3644213 by Arciel.Rekman
Fix the side effects of a fix for UE-49465.
- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.
#jira UE-49465
Change 3644777 by Jamie.Dale
Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished
Change 3644879 by tim.gautier
QAGame: Optimized assets for Procedural Foliage testing
- Added camera bookmarks to Stations in QA-Foliage
- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
- Fixed up redirectors
Change 3645109 by Matt.Kuhlenschmidt
PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)
Change 3645114 by Matt.Kuhlenschmidt
PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)
Change 3645116 by Matt.Kuhlenschmidt
PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)
Change 3645118 by Matt.Kuhlenschmidt
PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)
Change 3645876 by Arciel.Rekman
Linux: fix submenus of context menu not working (UE-47639).
- Change by icculus (Ryan Gordon).
- QA-ClickHUD seems to be not affected by this change (it is already broken alas).
#jira UE-47639
Change 3648088 by Jamie.Dale
Fixed some case-sensitivity issues with FText format argument names/pins
These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.
#jira UE-47122
Change 3648097 by Jamie.Dale
Moved common macOS/iOS localization implementation into FApplePlatformMisc
#jira UE-49940
Change 3650858 by Arciel.Rekman
UBT: improve CodeLite project generator (UE-49400).
- PR #3987 submitted by yaakuro (Cengiz Terzibas).
#jira UE-49400
Change 3651231 by Arciel.Rekman
Linux: default to SM5 for Vulkan.
- Change by Timothee.Bessett.
Change 3653627 by Matt.Kuhlenschmidt
PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)
Change 3653628 by Matt.Kuhlenschmidt
PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)
Change 3653984 by Jamie.Dale
Fixed some redundant string construction
Change 3658528 by Joe.Graf
UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files
Change 3658594 by Jamie.Dale
Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues
#jira UE-27263
Change 3659643 by Michael.Trepka
Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior
#jira UETOOL-1238
Change 3661908 by Matt.Kuhlenschmidt
USD asset importing improvements
Change 3664100 by Matt.Kuhlenschmidt
Fix static analysis
Change 3664107 by Matt.Kuhlenschmidt
PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)
Change 3664125 by Matt.Kuhlenschmidt
PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)
Change 3664340 by Jamie.Dale
PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)
Change 3664403 by Jamie.Dale
PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)
Change 3664539 by Jamie.Dale
PR #3280: Added EditableText functionality (Contributed by projectgheist)
Change 3665433 by Alexis.Matte
When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
#jira UE-50231
Change 3666747 by Cody.Albert
Change 3669280 by Jamie.Dale
PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)
Change 3669718 by Jamie.Dale
PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)
Change 3670838 by Alexis.Matte
Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
#jira UE-50387
Change 3671559 by Matt.Kuhlenschmidt
Update SimpleUI automation test ground truth
#jira UE-50325
Change 3671587 by Alexis.Matte
Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
#jira UE-50147
Change 3671730 by Jamie.Dale
Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances
Change 3672104 by Michael.Dupuis
#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings
Change 3674906 by Alexis.Matte
Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
#jira UE-50248
Change 3674942 by Matt.Kuhlenschmidt
Fix static analysis
Change 3675401 by Alexis.Matte
-fix export animation, do not truncate the last frame anymore
-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.
#jira UE-48231
Change 3675990 by Alexis.Matte
Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
This is to avoid driving random vertex with old morph target.
#jira UE-50391
Change 3676169 by Alexis.Matte
When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.
Change 3676396 by Alexis.Matte
Make all LOD 0 name consistent in staticmesh editor
#jira UE-49461
Change 3677730 by Cody.Albert
Enable locking of Persistent Level in Levels tab
#jira UE-50686
Change 3677838 by Jamie.Dale
Replaced broken version of Roboto Light
Change 3679619 by Alexis.Matte
Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
#jira UE-50001
Change 3680093 by Alexis.Matte
Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.
Change 3680931 by Arciel.Rekman
SlateDialogs: show image icon for *.tga (UE-25106).
- Also reworked the logic somewhat.
#jira UE-25106
Change 3681966 by Yannick.Lange
MaterialEditor post-process preview.
#jira UE-45307
Change 3682407 by Lauren.Ridge
Fixes for material editor compile errors
Change 3682628 by Lauren.Ridge
Content browser filters for Material Layers, Blends, and their instances
Change 3682725 by Lauren.Ridge
Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default
Change 3682921 by Lauren.Ridge
Fix for instance layers not initializing fully
Change 3682954 by Lauren.Ridge
Creating Material Layer Test Assets
Change 3683582 by Alexis.Matte
Fix static analysis build
Change 3683614 by Matt.Kuhlenschmidt
PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)
Change 3684130 by Lauren.Ridge
Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3686289 by Arciel.Rekman
Remove the pessimization (UE-23791).
Change 3686455 by Lauren.Ridge
Fixes for adding/removing a layer parameter from the parent not updating the child
Change 3686829 by Jamie.Dale
No longer include trailing whitespace in the justification calculation for soft-wrapped lines
#jira UE-50266
Change 3686970 by Lauren.Ridge
Making material parameter preview work for functions as well
Change 3687077 by Jamie.Dale
Fixed crash using FActorDetails with the struct details panel
Change 3687152 by Jamie.Dale
Fixed the row structure tag not appearing in the Content Browser for Data Table assets
The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.
#jira UE-48691
Change 3687174 by Lauren.Ridge
Fix for material layer sub-parameters showing up in the default material parameters panel
Change 3688100 by Lauren.Ridge
Fixing static analysis error
Change 3688317 by Jamie.Dale
Fixed crash using the widget reflector in a cooked game
Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.
Change 3689054 by Jamie.Dale
Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes
#jira UE-45751
Change 3689513 by Jamie.Dale
Fixed justification bug with RTL text caused by CL# 3686829
Also implemented the same alignment fix for visually left-aligned RTL text.
#jira UE-50266
Change 3690231 by Lauren.Ridge
Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor
Change 3690234 by Lauren.Ridge
Adding Material Layers Function Parameter to Static Parameter Compare
Change 3690750 by Chris.Bunner
Potential nullptr crash.
Change 3690751 by Chris.Bunner
Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.
Change 3691010 by Jamie.Dale
Fixed some clipping issues that could occur with right-aligned text
FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)
#jira UE-46760
Change 3691091 by Jamie.Dale
Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type
Change 3691134 by Alexis.Matte
Make sure we instance also the collision mesh when exporting a level to fbx file.
#jira UE-51066
Change 3691157 by Lauren.Ridge
Fix for reset to default not refreshing sub-parameters
Change 3691192 by Jamie.Dale
Fixed Content Browser selection resetting when changing certain view settings
#jira UE-49611
Change 3691204 by Alexis.Matte
Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
#jira UE-51023
Change 3692335 by Lauren.Ridge
Setting displayed asset to equal filter asset if no instance has been selected
Change 3692479 by Jamie.Dale
Fixed whitespace
Change 3692508 by Alexis.Matte
Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
We also prevent the export dialog to show
#jira UE-50973
Change 3692639 by Jamie.Dale
Translation Editor now shows stale translations as "Untranslated"
Change 3692743 by Lauren.Ridge
Smaller blend icons, added icon size override to FObjectEntryBox
Change 3692830 by Alexis.Matte
Fix linux build
Change 3692894 by Lauren.Ridge
Tooltip on "Parent" in material layers
Change 3693141 by Jamie.Dale
Removed dead code
FastDecimalFormat made this redundant
Change 3693580 by Jamie.Dale
Added AlwaysSign number formatting option
#jira UE-10310
Change 3693784 by Jamie.Dale
Fixed assert extracting the number formatting rules for Arabic
It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.
#jira UE-10310
Change 3694428 by Arciel.Rekman
Linux: make directory watch request a warning so they don't block cooking.
- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html
Change 3694458 by Matt.Kuhlenschmidt
Made duplicate keybinding warning non-fatal
Change 3694496 by Alexis.Matte
fix static analysis build
Change 3694515 by Jamie.Dale
Added support for culture correct parsing of decimal numbers
#jira UE-4028
Change 3694621 by Jamie.Dale
Added a variant of FastDecimalFormat::StringToNumber that takes a string length
This can be useful if you want to convert a number from within a non-null terminated string
#jira UE-4028
Change 3694958 by Jamie.Dale
Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing
You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.
#jira UE-4028
Change 3695083 by Alexis.Matte
Optimisation of the morph target import
- We now compute only the normal for the shape the tangent are not necessary
- The async tasks are create when there is some available cpu thread to avoid filling the memory
- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
#jira UE-50945
Change 3695122 by Jamie.Dale
GetCultureAgnosticFormattingRules no longer returns a copy
Change 3695835 by Arciel.Rekman
TestPAL: greatly expanded malloc test.
Change 3695918 by Arciel.Rekman
TestPAL: Added thread priority test.
Change 3696589 by Arciel.Rekman
TestPAL: tweak thread priorities test (better readability).
Change 3697345 by Alexis.Matte
Fix reorder of material when importing a LOD with new material
#jira UE-51135
Change 3699590 by Jamie.Dale
Updated SGraphPinNum to use a numeric editor
#jira UE-4028
Change 3699698 by Matt.Kuhlenschmidt
Fix crash opening the level viewport context menu if the actor-component selection is out of sync
#jira UE-48444
Change 3700158 by Arciel.Rekman
Enable packaging for Android Vulkan on Linux (UETOOL-1232).
- Change by Cengiz Terzibas
Change 3700224 by Arciel.Rekman
TestPAL: fixed a memory leak.
Change 3700775 by Cody.Albert
Don't need to initialize EnvironmentCubeMap twice.
Change 3700866 by Michael.Trepka
PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)
#jira UE-41643
Change 3701132 by Michael.Trepka
Copy of CL 3671538
Fixed issues with editor's game mode in high DPI on Mac.
#jira UE-49947, UE-51063
Change 3701421 by Michael.Trepka
Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression
Change 3701495 by Alexis.Matte
Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
#jira UE-UE-51359
Change 3702982 by Jamie.Dale
Cleaned up some localization setting names
These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.
Change 3703517 by Arciel.Rekman
TestPAL: improved thread test.
- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).
Change 3704378 by Michael.Trepka
Disable Zoom button on Mac if project requests a resizeable window without it.
#jira UE-51335
Change 3706316 by Jamie.Dale
Fixed the asset search suggestions list closing if you clicked on its scrollbar
#jira UE-28885
Change 3706855 by Alexis.Matte
Support importing animation that has some keys with negative time
#jira UE-51305
Change 3709634 by Matt.Kuhlenschmidt
PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)
Change 3711085 by Michael.Trepka
Reenabled UBT makefiles on Mac
Change 3713049 by Josh.Engebretson
The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect.
#jira UE-51319
Change 3713144 by Lauren.Ridge
Fixing automated test error
#jira UE-50982
Change 3713395 by Alexis.Matte
Fix auto import mountpoint
#jira UE-51524
Change 3713881 by Michael.Trepka
Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.
#jira UE-31093
Change 3714197 by Michael.Trepka
Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.
#jira UE-47915
Change 3714911 by Joe.Graf
Merge of cmake changes from Dev-Rendering
Change 3715973 by Michael.Trepka
Disable OS close button on Windows if project settings request that
#jira UE-45522
Change 3716390 by Lauren.Ridge
The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.
#jira UE-50916
Change 3716529 by Josh.Engebretson
Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1
#jira UE-51341
Change 3716885 by Josh.Engebretson
Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary.
#jira UE-48572
Change 3716929 by Josh.Engebretson
Unshelved from pending changelist '3364093':
PR #3420: Exe's icons and properties (Contributed by projectgheist)
Change 3716937 by Josh.Engebretson
Unshelved from pending changelist '3647428':
PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)
Change 3717002 by Josh.Engebretson
Fix FileReference/string conversion
Change 3717355 by Joe.Graf
Fixed CMake file generation on Windows including Engine/Source/ThirdParty source
Change 3718256 by Arciel.Rekman
TestPAL: slight mod to the malloc test.
- Touch the allocated memory to check actual resident usage.
Change 3718290 by Arciel.Rekman
BAFO: place descriptor after the allocation to save some VIRT memory.
- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.
Change 3718508 by Michael.Trepka
Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)
#jira UE-46148
Change 3718855 by Lauren.Ridge
Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.
Change 3718932 by Cody.Albert
Update ActorSequence plugin loading phase to PreDefault
#jira UE-51612
Change 3719378 by tim.gautier
QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
Added additional Text Widgets for testing
Change 3719413 by Lauren.Ridge
Resubmit of content browser favorites
Change 3719803 by Yannick.Lange
VREditor: Fix crash with null GEditor
#jira UE-50103
Change 3721127 by tim.gautier
QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
- Added M_ParamDefaults and MF_ParamDefaults
- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions
Change 3721255 by Alexis.Matte
Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
#jira UE-51363
Change 3721594 by Lauren.Ridge
Material Blends now have plane mesh previews in their icons.
Change 3722072 by tim.gautier
QAGame: Updated MF_ParamDefaults - using red channel as roughness
Updated M_ParamDefaults - tweaked Scalar values
Change 3722180 by Michael.Trepka
Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.
#jira UE-25941
Change 3722220 by Michael.Trepka
Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly
#jira UE-40246
Change 3722806 by Lauren.Ridge
Fixing non-editor compiles
Change 3722914 by Alexis.Matte
Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.
#jira UE-51665
Change 3723446 by Michael.Trepka
Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME
Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.
#jira UE-48257
Change 3723505 by Matt.Kuhlenschmidt
Fix duplicate actors being created for USD primitives that specify a custom actor class
Change 3723555 by Matt.Kuhlenschmidt
Fix crash loading the gameplayabilities module
#jira UE-51693
Change 3723557 by Matt.Kuhlenschmidt
Fixed tooltip on viewport dpi scaling option
Change 3723870 by Lauren.Ridge
Fixing incorrect reset to default visibility, adding clear behavior to fields
Change 3723917 by Arciel.Rekman
Linux: fix compilation with glibc 2.26+ (UE-51699).
- Fixes compilation on Ubuntu 17.10 among others.
(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3723918 by Arciel.Rekman
Linux: do not test for popcnt presence unnecessarily (UE-51677).
(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3724229 by Arciel.Rekman
Fix FOutputDeviceStdOutput to use printf() on Unix platforms.
Change 3724261 by Arciel.Rekman
TestPAL: fix thread priority test (zero the counter).
Change 3724978 by Arciel.Rekman
Linux: fix priority calculation.
- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.
Change 3725382 by Matt.Kuhlenschmidt
Guard against crashes and add more logging when actor creation fails.
Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed
#jira UE-47464
Change 3725559 by Matt.Kuhlenschmidt
Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows.
Moved some files around for better consistency
Change 3725640 by Arciel.Rekman
Fix Linux thread/process priorities.
- Should also speed up SCW on Linux by deprioritizing them less.
Change 3726101 by Matt.Kuhlenschmidt
Fix logic bug in USD child "kind" type resolving
Change 3726244 by Joe.Graf
Added an option to generate a minimal set of targets for cmake files
Added shader and config files to cmake file generation for searching within IDEs
Change 3726506 by Arciel.Rekman
Fix compile issue after DPI change.
Change 3726549 by Matt.Kuhlenschmidt
Remove unnecessary indirection to cached widgets in the hit test grid
Change 3726660 by Arciel.Rekman
Enable DPI switch on Linux.
Change 3726763 by Arciel.Rekman
Fix mismatching "noperspective" qualifier (UE-50807).
- Pull request #4080 by TTimo.
Change 3727080 by Michael.Trepka
Added support for editor's EnableHighDPIAwareness setting on Mac
Change 3727658 by Matt.Kuhlenschmidt
Fix shutdown crash if level editor is still referenced after the object system has been gc'd
#jira UE-51630
Change 3728270 by Matt.Kuhlenschmidt
Remove propertyeditor dependency from editorstyle
Change 3728291 by Arciel.Rekman
Linux: fix for a crash on a headless system (UE-51714).
- Preliminary change before merging to 4.18.
Change 3728293 by Arciel.Rekman
Linux: remove unneeded dependency on CEF.
- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.
Change 3728524 by Michael.Trepka
Copy of CL 3725570
Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)
#jira UE-51709
Change 3728875 by Michael.Trepka
Fixed compile error in Mac SlateOpenGLContext.cpp
Change 3728880 by Matt.Kuhlenschmidt
Guard against invalid worlds in thumbnail renderers
Change 3728924 by Michael.Trepka
Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.
#jira UE-51711
Change 3729288 by Joe.Graf
Added the .idea/misc.xml file generation to speed up CLion indexing
Change 3729935 by Michael.Dupuis
#jira UE-51722: Hide from UI invalid enum values
Change 3730234 by Matt.Kuhlenschmidt
Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.
#jira UE-51801
Change 3730349 by Michael.Dupuis
#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item
Change 3730438 by Lauren.Ridge
Cleaning up material layering UI functions
Change 3730723 by Jamie.Dale
Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers
#jira UE-51799
Change 3731008 by Lauren.Ridge
Changing Layers and Blends from proxy assets to real assets
Change 3731026 by Arciel.Rekman
libelf: make elf_end() visible (UE-51843).
- This repairs compilation for a case when CUDA is being used.
- Also added some missing files for ARM 32-bit.
Change 3731081 by Lauren.Ridge
New material layer test assets
Change 3731186 by Josh.Engebretson
Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets
#jira UE-50104
Change 3731188 by Mike.Erwin
Improve responsiveness of Open Asset dialog.
On large projects, there's a noticeable delay when opening and searching/filtering assets.
Stopwatch measurements on my machine (seconds for ~122,000 assets):
before with this CL
ctrl-P 1.4 0.45
search 1.8 0.55
CollectionManagerModule was the main culprit for search/filter slowness.
Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.
Change 3731682 by Arciel.Rekman
UnrealEd: Allow unattended commandlets to rename/save packages.
Change 3732305 by Michael.Dupuis
#jira UE-48434 : Only register if the foliage type still has a valid mesh
Change 3732361 by Matt.Kuhlenschmidt
Fix two settings objects being created in the transient package with the same name
#jira UE-51891
Change 3732895 by Josh.Engebretson
https://jira.it.epicgames.net/browse/UE-51706
If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
Adds DDC notification events for check/put and query for whether a shared DDC is in use.
#jira UE-51706
Change 3733025 by Arciel.Rekman
UBT: make sure new clang versions are invoked.
Change 3733311 by Mike.Erwin
Fix Linux compile warning from CL 3731188
It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.
Change 3733658 by Josh.Engebretson
Add a missing #undef LOCTEXT_NAMESPACE
Change 3734003 by Arciel.Rekman
Fix Windows attempting to use printf %ls and crashing at that (UE-51934).
Change 3734039 by Michael.Trepka
Fixed a couple of merge issues in Mac ApplicationCore
Change 3734052 by Michael.Trepka
One more Mac ApplicationCore fix
Change 3734244 by Lauren.Ridge
Fix for accessing Slate window on render thread
Change 3734950 by Josh.Engebretson
Fixing clang warning
Change 3734978 by Jamie.Dale
Relaxed enum property importing to allow valid numeric values to be imported too
This was previously made more strict which caused a regression in Data Table importing
#jira UE-51848
Change 3734999 by Arciel.Rekman
Linux: add LTO support and more.
- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
- Supports using llvm-ar and lld instead of ar/ranlib and ld.
- More build information printed (and in a better organized way).
- Native scripts updated to install packages with the appropriate tools on supported systems
- AutoSDKs updated to require a new toolchain (already checked in).
- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089
Change 3735268 by Matt.Kuhlenschmidt
Added support for canvas based DPI scaling.
-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
-The debug canvas for stats is always dpi scaled in editor and pie.
-Eliminated text scaling workaround now that the entire canvas is properly scaled
-Enabled canvas scaling in cascade UI
Change 3735329 by Matt.Kuhlenschmidt
Fix potential crash if an asset editor has an object deleted out from under it
#jira UE-51941
Change 3735502 by Arciel.Rekman
Fix compile issue (bShouldUpdateScreenPercentage).
Change 3735878 by Jamie.Dale
Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string
This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.
Change 3735881 by Jamie.Dale
JsonValue no longer stringifies whole numbers as floats
Change 3735884 by Jamie.Dale
Only allow enums to import integral values
Change 3735912 by Josh.Engebretson
Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications
#jira UE-48131
Change 3736280 by Matt.Kuhlenschmidt
Fix 0 dpi scale for canvases
#jira UE-51995
Change 3736298 by Matt.Kuhlenschmidt
Force focus of game viewports in vr mode
Change 3736374 by Jamie.Dale
Fixed some places where input chords were being used without testing that they had a valid key set
#jira UE-51799
Change 3738543 by Matt.Kuhlenschmidt
Better fix for edit condition crashes
#jira UE-51886
Change 3738603 by Lauren.Ridge
Copy over of drag and drop non-array onto array fix
Change 3739701 by Chris.Babcock
Fix crashlytics merge error
#jira UE-52064
#ue4
#android
[CL 3739980 by Matt Kuhlenschmidt in Main branch]
2017-11-06 18:22:01 -05:00
|
|
|
#include "MaterialEditor/MaterialEditorPreviewParameters.h"
|
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3847469)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3805828 by Gil.Gribb
UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.
Change 3806784 by Ben.Marsh
UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.
Change 3807549 by Graeme.Thornton
Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.
Change 3807727 by Graeme.Thornton
Unhide the text asset format experimental editor option
Change 3807746 by Josh.Engebretson
Remove WER from iOS platform
Change 3807928 by Robert.Manuszewski
When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet
Change 3808221 by Steve.Robb
GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()
^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.
Change 3809233 by Graeme.Thornton
TBA: Misc changes to text asset commandlet
- Rename mode to "loadsave"
- Add -outputFormat option which can be assigned "text" or "binary"
- When saving binary, use a differentiated filename so that source assets aren't overwritten
Change 3809518 by Ben.Marsh
Remove the outdated UnrealSync automation script.
Change 3809643 by Steve.Robb
GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value
#jira UE-53037
Change 3809862 by Steve.Robb
GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately
#jira UE-42593
Change 3811190 by Graeme.Thornton
Add support for writing specific log channels to their own files
Change 3811197 by Graeme.Thornton
Minor updates to output formatting and timing for the text asset commandlet
Change 3811257 by Robert.Manuszewski
Cluster creation will now be time-sliced
Change 3811565 by Steve.Robb
Define out non-monolithic module functions.
Change 3812561 by Steve.Robb
GitHub #3886 : Enable Brace-Initialization for Declaring Variables
Incorrect semi-colon search removed after discussion with author.
Test added.
#jira UE-48242
Change 3812864 by Steve.Robb
Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.
See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html
#jira UE-53089
Change 3820358 by Ben.Marsh
PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)
Change 3822594 by Ben.Marsh
UAT: Improvements to log file handling.
- Always create log files in the final location, rather than writing to a temp directory and copying in later.
- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.
Change 3823695 by Ben.Marsh
UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).
Now always queries changes up to the last change for which zipped binaries are available.
Change 3823845 by Ben.Marsh
UBT: Exclude C# projects for unsupported platforms when generating project files.
Change 3824180 by Ben.Marsh
UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).
#jira
Change 3825777 by Steve.Robb
Fix to return value of StringToBytes.
Change 3825810 by Ben.Marsh
UBT: Reduce length of include paths for MSVC toolchain.
Change 3825822 by Robert.Manuszewski
Optimized PIE lazy pointer fixup. Should be up to 8x faster now.
Change 3826734 by Ben.Marsh
Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.
Change 3827730 by Steve.Robb
Try to avoid decltype(auto) if it's not supported.
See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html
Change 3827745 by Steve.Robb
Initializer list support for TMap.
Change 3827770 by Steve.Robb
GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()
#jira UE-53813
Change 3829189 by Ben.Marsh
UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.
Change 3830444 by Steve.Robb
BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
This should be revisited when Core has its own JSON library.
Change 3830718 by Ben.Marsh
Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.
The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.
For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.
When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.
#jira UE-53845
Change 3831064 by Ben.Marsh
Fix log file contention when spawning UBT recursively.
Change 3832654 by Ben.Marsh
UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.
Change 3832680 by Ben.Marsh
UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.
Change 3832695 by Ben.Marsh
UGS: Invert the options in the 'Show Changes' submenu for simplicity.
Change 3833528 by Ben.Marsh
UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].
Change 3833543 by Ben.Marsh
UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.
Change 3834354 by Robert.Manuszewski
Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.
#jira UE-52035
Change 3834400 by Robert.Manuszewski
Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.
#jira UE-52035
Change 3834947 by Steve.Robb
USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.
Change 3835004 by Ben.Marsh
Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.
Change 3835340 by Ben.Marsh
Fix errors making installed build from directories with spaces in the name.
Change 3835972 by Ben.Marsh
UBT: Improved diagnostic message for targets which don't need a version file.
Change 3836019 by Ben.Marsh
UBT: Fix warnings caused by defining linkage macros for third party libraries.
Change 3836269 by Ben.Marsh
Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.
Change 3836543 by Ben.Marsh
Enable SoundMod plugin on Linux, since it's already supported through the editor.
Change 3836546 by Ben.Marsh
PR #4412: fix type mismatch (Contributed by nakapon)
Change 3836805 by Ben.Marsh
Fix commandlet to compile marketplace plugins.
Change 3836829 by Ben.Marsh
UBT: Fix ability to precompile plugins from installed engine builds.
Change 3837036 by Ben.Marsh
UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.
Change 3837037 by Ben.Marsh
UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).
Change 3837040 by Ben.Marsh
UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.
Change 3837247 by Ben.Marsh
UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).
Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.
Change 3837262 by Ben.Marsh
UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.
Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.
Change 3837343 by Ben.Marsh
UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.
Change 3837356 by Ben.Marsh
Fix invalid character encodings.
Change 3837727 by Graeme.Thornton
UnrealPak: KeyGenerator: Only generate prime table when required, not all the time
Change 3837823 by Ben.Marsh
UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.
Change 3837831 by Graeme.Thornton
UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives
Change 3837857 by Robert.Manuszewski
PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)
Change 3837943 by Robert.Manuszewski
PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)
Change 3838451 by Ben.Marsh
UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.
#jira UE-53996
Change 3839519 by Ben.Marsh
UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.
Change 3843790 by Graeme.Thornton
UnrealPak: Log the size of all encrypted data
Change 3844258 by Ben.Marsh
Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.
Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.
#jira UE-54157
Change 3845796 by Ben.Marsh
Workaround for slow performance of String.EndsWith() on Mono.
Change 3845823 by Ben.Marsh
Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.
#jira UE-54123
Change 3845901 by Arciel.Rekman
Linux: fix crash due to lambda lifetime issues (UE-54040).
- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).
(Edigrating 3819174 to Dev-Core)
Change 3846439 by Ben.Marsh
Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.
Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.
Change 3816608 by Ben.Marsh
UBT: Use DirectoryReference objects for all include paths.
Change 3816954 by Ben.Marsh
UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.
Change 3816986 by Ben.Marsh
UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.
Change 3816991 by Ben.Marsh
UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.
Change 3823090 by Ben.Marsh
UAT: Improve logging for child UAT instances.
- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.
Change 3826082 by Ben.Marsh
UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.
Change 3827025 by Ben.Marsh
UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.
Change 3829927 by James.Hopkin
Made HTTP interface const correct
Change 3833533 by Ben.Marsh
Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.
Change 3835826 by Ben.Marsh
UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.
Change 3835969 by Ben.Marsh
UBT: Fix cases where text is being written directly to the console rather than via logging functions.
Change 3837777 by Steve.Robb
Format string type checking added to FOutputDevice::Logf.
Fixes for those.
Change 3838569 by Steve.Robb
Algo moved up a folder.
[CL 3847482 by Ben Marsh in Main branch]
2018-01-20 11:19:29 -05:00
|
|
|
#include "Widgets/Input/SButton.h"
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3739701)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3358367 by tim.gautier
Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters
Change 3624848 by Jamie.Dale
Added a composite font for the editor (and Slate core)
This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.
This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.
This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.
Change 3654993 by Jamie.Dale
'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer
This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer
Breaking changes:
- Native has been renamed to FNativeFuncPtr.
- The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
- Use P_THIS if you were previously using the 'this' pointer in your native function.
Change 3699591 by Jamie.Dale
Added support for displaying and editing numbers in a culture correct way
Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).
#jira UE-4028
Change 3719568 by Jamie.Dale
Allow platforms to override the default ICU timezone calculation
Change 3622366 by Bradut.Palas
#jira UE-46677
Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.
Change 3622378 by Bradut.Palas
#jira UE-46590
we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.
Change 3622552 by Jamie.Dale
Added support for per-culture sub-fonts within a composite font
This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).
Change 3623170 by Jamie.Dale
Fixing warning
Change 3624846 by Jamie.Dale
Composite font cache optimizations
- Converted a typically small sized map to a sorted array + binary search.
- Converted the already sorted range array to use binary search.
- Contiguous ranges using the same typeface are now merged in the cache.
Change 3625576 by Cody.Albert
We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.
#jira UE-47971
Change 3626057 by Matt.Kuhlenschmidt
Expose EUmgSequencePlayMode to blueprints
#jira UE-49255
Change 3626556 by Matt.Kuhlenschmidt
Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning.
#jira UE-48922, UE-48957
Change 3627692 by Matt.Kuhlenschmidt
PR #3977: Source control submenu menu customization (Contributed by Kryofenix)
Change 3628600 by Arciel.Rekman
Added AutoCheckout to FAssetRenameManager for commandlet usage.
Change 3630561 by Richard.Hinckley
Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.
Change 3630656 by Richard.Hinckley
Compile fix.
Change 3630964 by Arciel.Rekman
Fix CrashReporterClient headless build.
Change 3631050 by Matt.Kuhlenschmidt
Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp
Causes major problems with resizing splitters in editor
Change 3631140 by Arciel.Rekman
OpenAL: update Linux version to 1.18.1 (UETOOL-1253)
- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
- Bulk of the change from Cengiz.Terzibas
#jira UETOOL-1253
Change 3632924 by Jamie.Dale
Added support for a catch-all fallback font within composite fonts
This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.
Change 3633055 by Jamie.Dale
Fixed some refresh issues in the font editor
Change 3633062 by Jamie.Dale
Fixed localization commands being reported as unknown
Change 3633906 by Nick.Darnell
UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working.
Change 3634070 by Arciel.Rekman
Display actually used values of material overrides.
Change 3634254 by Arciel.Rekman
Fix ResavePackages working poorly with projects on other drives (UE-49465).
#jira UE-49465
Change 3635985 by Matt.Kuhlenschmidt
Fixed typo in function name used by maps
PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)
Change 3636012 by Matt.Kuhlenschmidt
PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)
Change 3636706 by Lauren.Ridge
Epic Friday: Save parameters to child or sibling instance functionality
Change 3638706 by Jamie.Dale
Added an improved Japanese font to the editor
This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).
#jira UE-33268
Change 3639438 by Arciel.Rekman
Linux: Repaired ARM server build (UE-49635).
- Made Steam* plugins compile.
- Disabled OpenEXR as the libs aren't compiled (need to be done separately).
(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)
Change 3640625 by Matt.Kuhlenschmidt
PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)
Change 3640626 by Matt.Kuhlenschmidt
PR #4011: Remove space from filename (Contributed by projectgheist)
Change 3640697 by Matt.Kuhlenschmidt
PR #4010: PNG alpha fix (Contributed by mmdanggg2)
Change 3641137 by Jamie.Dale
Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch
It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.
Change 3641351 by Jamie.Dale
Fixing incorrect weights on the Japanese sub-font
Change 3641356 by Jamie.Dale
Fixing inconsistent font sizes between CoreStyle and EditorStyle
Change 3641710 by Jamie.Dale
Fixed pure-virtual function call on UMulticastDelegateProperty
Change 3641941 by Lauren.Ridge
Adding a Parameter Details tab to the Material Editor so users can change default parameter details
Change 3644141 by Jamie.Dale
Added an improved Korean font to the editor
This is only used when displaying Korean text when the editor is set to Korean
Change 3644213 by Arciel.Rekman
Fix the side effects of a fix for UE-49465.
- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.
#jira UE-49465
Change 3644777 by Jamie.Dale
Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished
Change 3644879 by tim.gautier
QAGame: Optimized assets for Procedural Foliage testing
- Added camera bookmarks to Stations in QA-Foliage
- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
- Fixed up redirectors
Change 3645109 by Matt.Kuhlenschmidt
PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)
Change 3645114 by Matt.Kuhlenschmidt
PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)
Change 3645116 by Matt.Kuhlenschmidt
PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)
Change 3645118 by Matt.Kuhlenschmidt
PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)
Change 3645876 by Arciel.Rekman
Linux: fix submenus of context menu not working (UE-47639).
- Change by icculus (Ryan Gordon).
- QA-ClickHUD seems to be not affected by this change (it is already broken alas).
#jira UE-47639
Change 3648088 by Jamie.Dale
Fixed some case-sensitivity issues with FText format argument names/pins
These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.
#jira UE-47122
Change 3648097 by Jamie.Dale
Moved common macOS/iOS localization implementation into FApplePlatformMisc
#jira UE-49940
Change 3650858 by Arciel.Rekman
UBT: improve CodeLite project generator (UE-49400).
- PR #3987 submitted by yaakuro (Cengiz Terzibas).
#jira UE-49400
Change 3651231 by Arciel.Rekman
Linux: default to SM5 for Vulkan.
- Change by Timothee.Bessett.
Change 3653627 by Matt.Kuhlenschmidt
PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)
Change 3653628 by Matt.Kuhlenschmidt
PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)
Change 3653984 by Jamie.Dale
Fixed some redundant string construction
Change 3658528 by Joe.Graf
UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files
Change 3658594 by Jamie.Dale
Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues
#jira UE-27263
Change 3659643 by Michael.Trepka
Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior
#jira UETOOL-1238
Change 3661908 by Matt.Kuhlenschmidt
USD asset importing improvements
Change 3664100 by Matt.Kuhlenschmidt
Fix static analysis
Change 3664107 by Matt.Kuhlenschmidt
PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)
Change 3664125 by Matt.Kuhlenschmidt
PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)
Change 3664340 by Jamie.Dale
PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)
Change 3664403 by Jamie.Dale
PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)
Change 3664539 by Jamie.Dale
PR #3280: Added EditableText functionality (Contributed by projectgheist)
Change 3665433 by Alexis.Matte
When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
#jira UE-50231
Change 3666747 by Cody.Albert
Change 3669280 by Jamie.Dale
PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)
Change 3669718 by Jamie.Dale
PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)
Change 3670838 by Alexis.Matte
Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
#jira UE-50387
Change 3671559 by Matt.Kuhlenschmidt
Update SimpleUI automation test ground truth
#jira UE-50325
Change 3671587 by Alexis.Matte
Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
#jira UE-50147
Change 3671730 by Jamie.Dale
Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances
Change 3672104 by Michael.Dupuis
#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings
Change 3674906 by Alexis.Matte
Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
#jira UE-50248
Change 3674942 by Matt.Kuhlenschmidt
Fix static analysis
Change 3675401 by Alexis.Matte
-fix export animation, do not truncate the last frame anymore
-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.
#jira UE-48231
Change 3675990 by Alexis.Matte
Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
This is to avoid driving random vertex with old morph target.
#jira UE-50391
Change 3676169 by Alexis.Matte
When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.
Change 3676396 by Alexis.Matte
Make all LOD 0 name consistent in staticmesh editor
#jira UE-49461
Change 3677730 by Cody.Albert
Enable locking of Persistent Level in Levels tab
#jira UE-50686
Change 3677838 by Jamie.Dale
Replaced broken version of Roboto Light
Change 3679619 by Alexis.Matte
Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
#jira UE-50001
Change 3680093 by Alexis.Matte
Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.
Change 3680931 by Arciel.Rekman
SlateDialogs: show image icon for *.tga (UE-25106).
- Also reworked the logic somewhat.
#jira UE-25106
Change 3681966 by Yannick.Lange
MaterialEditor post-process preview.
#jira UE-45307
Change 3682407 by Lauren.Ridge
Fixes for material editor compile errors
Change 3682628 by Lauren.Ridge
Content browser filters for Material Layers, Blends, and their instances
Change 3682725 by Lauren.Ridge
Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default
Change 3682921 by Lauren.Ridge
Fix for instance layers not initializing fully
Change 3682954 by Lauren.Ridge
Creating Material Layer Test Assets
Change 3683582 by Alexis.Matte
Fix static analysis build
Change 3683614 by Matt.Kuhlenschmidt
PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)
Change 3684130 by Lauren.Ridge
Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3686289 by Arciel.Rekman
Remove the pessimization (UE-23791).
Change 3686455 by Lauren.Ridge
Fixes for adding/removing a layer parameter from the parent not updating the child
Change 3686829 by Jamie.Dale
No longer include trailing whitespace in the justification calculation for soft-wrapped lines
#jira UE-50266
Change 3686970 by Lauren.Ridge
Making material parameter preview work for functions as well
Change 3687077 by Jamie.Dale
Fixed crash using FActorDetails with the struct details panel
Change 3687152 by Jamie.Dale
Fixed the row structure tag not appearing in the Content Browser for Data Table assets
The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.
#jira UE-48691
Change 3687174 by Lauren.Ridge
Fix for material layer sub-parameters showing up in the default material parameters panel
Change 3688100 by Lauren.Ridge
Fixing static analysis error
Change 3688317 by Jamie.Dale
Fixed crash using the widget reflector in a cooked game
Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.
Change 3689054 by Jamie.Dale
Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes
#jira UE-45751
Change 3689513 by Jamie.Dale
Fixed justification bug with RTL text caused by CL# 3686829
Also implemented the same alignment fix for visually left-aligned RTL text.
#jira UE-50266
Change 3690231 by Lauren.Ridge
Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor
Change 3690234 by Lauren.Ridge
Adding Material Layers Function Parameter to Static Parameter Compare
Change 3690750 by Chris.Bunner
Potential nullptr crash.
Change 3690751 by Chris.Bunner
Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.
Change 3691010 by Jamie.Dale
Fixed some clipping issues that could occur with right-aligned text
FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)
#jira UE-46760
Change 3691091 by Jamie.Dale
Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type
Change 3691134 by Alexis.Matte
Make sure we instance also the collision mesh when exporting a level to fbx file.
#jira UE-51066
Change 3691157 by Lauren.Ridge
Fix for reset to default not refreshing sub-parameters
Change 3691192 by Jamie.Dale
Fixed Content Browser selection resetting when changing certain view settings
#jira UE-49611
Change 3691204 by Alexis.Matte
Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
#jira UE-51023
Change 3692335 by Lauren.Ridge
Setting displayed asset to equal filter asset if no instance has been selected
Change 3692479 by Jamie.Dale
Fixed whitespace
Change 3692508 by Alexis.Matte
Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
We also prevent the export dialog to show
#jira UE-50973
Change 3692639 by Jamie.Dale
Translation Editor now shows stale translations as "Untranslated"
Change 3692743 by Lauren.Ridge
Smaller blend icons, added icon size override to FObjectEntryBox
Change 3692830 by Alexis.Matte
Fix linux build
Change 3692894 by Lauren.Ridge
Tooltip on "Parent" in material layers
Change 3693141 by Jamie.Dale
Removed dead code
FastDecimalFormat made this redundant
Change 3693580 by Jamie.Dale
Added AlwaysSign number formatting option
#jira UE-10310
Change 3693784 by Jamie.Dale
Fixed assert extracting the number formatting rules for Arabic
It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.
#jira UE-10310
Change 3694428 by Arciel.Rekman
Linux: make directory watch request a warning so they don't block cooking.
- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html
Change 3694458 by Matt.Kuhlenschmidt
Made duplicate keybinding warning non-fatal
Change 3694496 by Alexis.Matte
fix static analysis build
Change 3694515 by Jamie.Dale
Added support for culture correct parsing of decimal numbers
#jira UE-4028
Change 3694621 by Jamie.Dale
Added a variant of FastDecimalFormat::StringToNumber that takes a string length
This can be useful if you want to convert a number from within a non-null terminated string
#jira UE-4028
Change 3694958 by Jamie.Dale
Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing
You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.
#jira UE-4028
Change 3695083 by Alexis.Matte
Optimisation of the morph target import
- We now compute only the normal for the shape the tangent are not necessary
- The async tasks are create when there is some available cpu thread to avoid filling the memory
- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
#jira UE-50945
Change 3695122 by Jamie.Dale
GetCultureAgnosticFormattingRules no longer returns a copy
Change 3695835 by Arciel.Rekman
TestPAL: greatly expanded malloc test.
Change 3695918 by Arciel.Rekman
TestPAL: Added thread priority test.
Change 3696589 by Arciel.Rekman
TestPAL: tweak thread priorities test (better readability).
Change 3697345 by Alexis.Matte
Fix reorder of material when importing a LOD with new material
#jira UE-51135
Change 3699590 by Jamie.Dale
Updated SGraphPinNum to use a numeric editor
#jira UE-4028
Change 3699698 by Matt.Kuhlenschmidt
Fix crash opening the level viewport context menu if the actor-component selection is out of sync
#jira UE-48444
Change 3700158 by Arciel.Rekman
Enable packaging for Android Vulkan on Linux (UETOOL-1232).
- Change by Cengiz Terzibas
Change 3700224 by Arciel.Rekman
TestPAL: fixed a memory leak.
Change 3700775 by Cody.Albert
Don't need to initialize EnvironmentCubeMap twice.
Change 3700866 by Michael.Trepka
PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)
#jira UE-41643
Change 3701132 by Michael.Trepka
Copy of CL 3671538
Fixed issues with editor's game mode in high DPI on Mac.
#jira UE-49947, UE-51063
Change 3701421 by Michael.Trepka
Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression
Change 3701495 by Alexis.Matte
Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
#jira UE-UE-51359
Change 3702982 by Jamie.Dale
Cleaned up some localization setting names
These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.
Change 3703517 by Arciel.Rekman
TestPAL: improved thread test.
- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).
Change 3704378 by Michael.Trepka
Disable Zoom button on Mac if project requests a resizeable window without it.
#jira UE-51335
Change 3706316 by Jamie.Dale
Fixed the asset search suggestions list closing if you clicked on its scrollbar
#jira UE-28885
Change 3706855 by Alexis.Matte
Support importing animation that has some keys with negative time
#jira UE-51305
Change 3709634 by Matt.Kuhlenschmidt
PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)
Change 3711085 by Michael.Trepka
Reenabled UBT makefiles on Mac
Change 3713049 by Josh.Engebretson
The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect.
#jira UE-51319
Change 3713144 by Lauren.Ridge
Fixing automated test error
#jira UE-50982
Change 3713395 by Alexis.Matte
Fix auto import mountpoint
#jira UE-51524
Change 3713881 by Michael.Trepka
Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.
#jira UE-31093
Change 3714197 by Michael.Trepka
Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.
#jira UE-47915
Change 3714911 by Joe.Graf
Merge of cmake changes from Dev-Rendering
Change 3715973 by Michael.Trepka
Disable OS close button on Windows if project settings request that
#jira UE-45522
Change 3716390 by Lauren.Ridge
The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.
#jira UE-50916
Change 3716529 by Josh.Engebretson
Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1
#jira UE-51341
Change 3716885 by Josh.Engebretson
Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary.
#jira UE-48572
Change 3716929 by Josh.Engebretson
Unshelved from pending changelist '3364093':
PR #3420: Exe's icons and properties (Contributed by projectgheist)
Change 3716937 by Josh.Engebretson
Unshelved from pending changelist '3647428':
PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)
Change 3717002 by Josh.Engebretson
Fix FileReference/string conversion
Change 3717355 by Joe.Graf
Fixed CMake file generation on Windows including Engine/Source/ThirdParty source
Change 3718256 by Arciel.Rekman
TestPAL: slight mod to the malloc test.
- Touch the allocated memory to check actual resident usage.
Change 3718290 by Arciel.Rekman
BAFO: place descriptor after the allocation to save some VIRT memory.
- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.
Change 3718508 by Michael.Trepka
Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)
#jira UE-46148
Change 3718855 by Lauren.Ridge
Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.
Change 3718932 by Cody.Albert
Update ActorSequence plugin loading phase to PreDefault
#jira UE-51612
Change 3719378 by tim.gautier
QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
Added additional Text Widgets for testing
Change 3719413 by Lauren.Ridge
Resubmit of content browser favorites
Change 3719803 by Yannick.Lange
VREditor: Fix crash with null GEditor
#jira UE-50103
Change 3721127 by tim.gautier
QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
- Added M_ParamDefaults and MF_ParamDefaults
- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions
Change 3721255 by Alexis.Matte
Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
#jira UE-51363
Change 3721594 by Lauren.Ridge
Material Blends now have plane mesh previews in their icons.
Change 3722072 by tim.gautier
QAGame: Updated MF_ParamDefaults - using red channel as roughness
Updated M_ParamDefaults - tweaked Scalar values
Change 3722180 by Michael.Trepka
Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.
#jira UE-25941
Change 3722220 by Michael.Trepka
Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly
#jira UE-40246
Change 3722806 by Lauren.Ridge
Fixing non-editor compiles
Change 3722914 by Alexis.Matte
Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.
#jira UE-51665
Change 3723446 by Michael.Trepka
Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME
Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.
#jira UE-48257
Change 3723505 by Matt.Kuhlenschmidt
Fix duplicate actors being created for USD primitives that specify a custom actor class
Change 3723555 by Matt.Kuhlenschmidt
Fix crash loading the gameplayabilities module
#jira UE-51693
Change 3723557 by Matt.Kuhlenschmidt
Fixed tooltip on viewport dpi scaling option
Change 3723870 by Lauren.Ridge
Fixing incorrect reset to default visibility, adding clear behavior to fields
Change 3723917 by Arciel.Rekman
Linux: fix compilation with glibc 2.26+ (UE-51699).
- Fixes compilation on Ubuntu 17.10 among others.
(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3723918 by Arciel.Rekman
Linux: do not test for popcnt presence unnecessarily (UE-51677).
(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3724229 by Arciel.Rekman
Fix FOutputDeviceStdOutput to use printf() on Unix platforms.
Change 3724261 by Arciel.Rekman
TestPAL: fix thread priority test (zero the counter).
Change 3724978 by Arciel.Rekman
Linux: fix priority calculation.
- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.
Change 3725382 by Matt.Kuhlenschmidt
Guard against crashes and add more logging when actor creation fails.
Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed
#jira UE-47464
Change 3725559 by Matt.Kuhlenschmidt
Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows.
Moved some files around for better consistency
Change 3725640 by Arciel.Rekman
Fix Linux thread/process priorities.
- Should also speed up SCW on Linux by deprioritizing them less.
Change 3726101 by Matt.Kuhlenschmidt
Fix logic bug in USD child "kind" type resolving
Change 3726244 by Joe.Graf
Added an option to generate a minimal set of targets for cmake files
Added shader and config files to cmake file generation for searching within IDEs
Change 3726506 by Arciel.Rekman
Fix compile issue after DPI change.
Change 3726549 by Matt.Kuhlenschmidt
Remove unnecessary indirection to cached widgets in the hit test grid
Change 3726660 by Arciel.Rekman
Enable DPI switch on Linux.
Change 3726763 by Arciel.Rekman
Fix mismatching "noperspective" qualifier (UE-50807).
- Pull request #4080 by TTimo.
Change 3727080 by Michael.Trepka
Added support for editor's EnableHighDPIAwareness setting on Mac
Change 3727658 by Matt.Kuhlenschmidt
Fix shutdown crash if level editor is still referenced after the object system has been gc'd
#jira UE-51630
Change 3728270 by Matt.Kuhlenschmidt
Remove propertyeditor dependency from editorstyle
Change 3728291 by Arciel.Rekman
Linux: fix for a crash on a headless system (UE-51714).
- Preliminary change before merging to 4.18.
Change 3728293 by Arciel.Rekman
Linux: remove unneeded dependency on CEF.
- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.
Change 3728524 by Michael.Trepka
Copy of CL 3725570
Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)
#jira UE-51709
Change 3728875 by Michael.Trepka
Fixed compile error in Mac SlateOpenGLContext.cpp
Change 3728880 by Matt.Kuhlenschmidt
Guard against invalid worlds in thumbnail renderers
Change 3728924 by Michael.Trepka
Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.
#jira UE-51711
Change 3729288 by Joe.Graf
Added the .idea/misc.xml file generation to speed up CLion indexing
Change 3729935 by Michael.Dupuis
#jira UE-51722: Hide from UI invalid enum values
Change 3730234 by Matt.Kuhlenschmidt
Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.
#jira UE-51801
Change 3730349 by Michael.Dupuis
#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item
Change 3730438 by Lauren.Ridge
Cleaning up material layering UI functions
Change 3730723 by Jamie.Dale
Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers
#jira UE-51799
Change 3731008 by Lauren.Ridge
Changing Layers and Blends from proxy assets to real assets
Change 3731026 by Arciel.Rekman
libelf: make elf_end() visible (UE-51843).
- This repairs compilation for a case when CUDA is being used.
- Also added some missing files for ARM 32-bit.
Change 3731081 by Lauren.Ridge
New material layer test assets
Change 3731186 by Josh.Engebretson
Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets
#jira UE-50104
Change 3731188 by Mike.Erwin
Improve responsiveness of Open Asset dialog.
On large projects, there's a noticeable delay when opening and searching/filtering assets.
Stopwatch measurements on my machine (seconds for ~122,000 assets):
before with this CL
ctrl-P 1.4 0.45
search 1.8 0.55
CollectionManagerModule was the main culprit for search/filter slowness.
Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.
Change 3731682 by Arciel.Rekman
UnrealEd: Allow unattended commandlets to rename/save packages.
Change 3732305 by Michael.Dupuis
#jira UE-48434 : Only register if the foliage type still has a valid mesh
Change 3732361 by Matt.Kuhlenschmidt
Fix two settings objects being created in the transient package with the same name
#jira UE-51891
Change 3732895 by Josh.Engebretson
https://jira.it.epicgames.net/browse/UE-51706
If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
Adds DDC notification events for check/put and query for whether a shared DDC is in use.
#jira UE-51706
Change 3733025 by Arciel.Rekman
UBT: make sure new clang versions are invoked.
Change 3733311 by Mike.Erwin
Fix Linux compile warning from CL 3731188
It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.
Change 3733658 by Josh.Engebretson
Add a missing #undef LOCTEXT_NAMESPACE
Change 3734003 by Arciel.Rekman
Fix Windows attempting to use printf %ls and crashing at that (UE-51934).
Change 3734039 by Michael.Trepka
Fixed a couple of merge issues in Mac ApplicationCore
Change 3734052 by Michael.Trepka
One more Mac ApplicationCore fix
Change 3734244 by Lauren.Ridge
Fix for accessing Slate window on render thread
Change 3734950 by Josh.Engebretson
Fixing clang warning
Change 3734978 by Jamie.Dale
Relaxed enum property importing to allow valid numeric values to be imported too
This was previously made more strict which caused a regression in Data Table importing
#jira UE-51848
Change 3734999 by Arciel.Rekman
Linux: add LTO support and more.
- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
- Supports using llvm-ar and lld instead of ar/ranlib and ld.
- More build information printed (and in a better organized way).
- Native scripts updated to install packages with the appropriate tools on supported systems
- AutoSDKs updated to require a new toolchain (already checked in).
- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089
Change 3735268 by Matt.Kuhlenschmidt
Added support for canvas based DPI scaling.
-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
-The debug canvas for stats is always dpi scaled in editor and pie.
-Eliminated text scaling workaround now that the entire canvas is properly scaled
-Enabled canvas scaling in cascade UI
Change 3735329 by Matt.Kuhlenschmidt
Fix potential crash if an asset editor has an object deleted out from under it
#jira UE-51941
Change 3735502 by Arciel.Rekman
Fix compile issue (bShouldUpdateScreenPercentage).
Change 3735878 by Jamie.Dale
Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string
This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.
Change 3735881 by Jamie.Dale
JsonValue no longer stringifies whole numbers as floats
Change 3735884 by Jamie.Dale
Only allow enums to import integral values
Change 3735912 by Josh.Engebretson
Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications
#jira UE-48131
Change 3736280 by Matt.Kuhlenschmidt
Fix 0 dpi scale for canvases
#jira UE-51995
Change 3736298 by Matt.Kuhlenschmidt
Force focus of game viewports in vr mode
Change 3736374 by Jamie.Dale
Fixed some places where input chords were being used without testing that they had a valid key set
#jira UE-51799
Change 3738543 by Matt.Kuhlenschmidt
Better fix for edit condition crashes
#jira UE-51886
Change 3738603 by Lauren.Ridge
Copy over of drag and drop non-array onto array fix
Change 3739701 by Chris.Babcock
Fix crashlytics merge error
#jira UE-52064
#ue4
#android
[CL 3739980 by Matt Kuhlenschmidt in Main branch]
2017-11-06 18:22:01 -05:00
|
|
|
#include "MaterialEditor/MaterialEditorInstanceConstant.h"
|
|
|
|
|
#include "IDetailGroup.h"
|
|
|
|
|
#include "MaterialEditor/DEditorParameterValue.h"
|
|
|
|
|
#include "AssetToolsModule.h"
|
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3847469)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3805828 by Gil.Gribb
UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.
Change 3806784 by Ben.Marsh
UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.
Change 3807549 by Graeme.Thornton
Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.
Change 3807727 by Graeme.Thornton
Unhide the text asset format experimental editor option
Change 3807746 by Josh.Engebretson
Remove WER from iOS platform
Change 3807928 by Robert.Manuszewski
When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet
Change 3808221 by Steve.Robb
GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()
^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.
Change 3809233 by Graeme.Thornton
TBA: Misc changes to text asset commandlet
- Rename mode to "loadsave"
- Add -outputFormat option which can be assigned "text" or "binary"
- When saving binary, use a differentiated filename so that source assets aren't overwritten
Change 3809518 by Ben.Marsh
Remove the outdated UnrealSync automation script.
Change 3809643 by Steve.Robb
GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value
#jira UE-53037
Change 3809862 by Steve.Robb
GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately
#jira UE-42593
Change 3811190 by Graeme.Thornton
Add support for writing specific log channels to their own files
Change 3811197 by Graeme.Thornton
Minor updates to output formatting and timing for the text asset commandlet
Change 3811257 by Robert.Manuszewski
Cluster creation will now be time-sliced
Change 3811565 by Steve.Robb
Define out non-monolithic module functions.
Change 3812561 by Steve.Robb
GitHub #3886 : Enable Brace-Initialization for Declaring Variables
Incorrect semi-colon search removed after discussion with author.
Test added.
#jira UE-48242
Change 3812864 by Steve.Robb
Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.
See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html
#jira UE-53089
Change 3820358 by Ben.Marsh
PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)
Change 3822594 by Ben.Marsh
UAT: Improvements to log file handling.
- Always create log files in the final location, rather than writing to a temp directory and copying in later.
- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.
Change 3823695 by Ben.Marsh
UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).
Now always queries changes up to the last change for which zipped binaries are available.
Change 3823845 by Ben.Marsh
UBT: Exclude C# projects for unsupported platforms when generating project files.
Change 3824180 by Ben.Marsh
UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).
#jira
Change 3825777 by Steve.Robb
Fix to return value of StringToBytes.
Change 3825810 by Ben.Marsh
UBT: Reduce length of include paths for MSVC toolchain.
Change 3825822 by Robert.Manuszewski
Optimized PIE lazy pointer fixup. Should be up to 8x faster now.
Change 3826734 by Ben.Marsh
Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.
Change 3827730 by Steve.Robb
Try to avoid decltype(auto) if it's not supported.
See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html
Change 3827745 by Steve.Robb
Initializer list support for TMap.
Change 3827770 by Steve.Robb
GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()
#jira UE-53813
Change 3829189 by Ben.Marsh
UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.
Change 3830444 by Steve.Robb
BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
This should be revisited when Core has its own JSON library.
Change 3830718 by Ben.Marsh
Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.
The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.
For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.
When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.
#jira UE-53845
Change 3831064 by Ben.Marsh
Fix log file contention when spawning UBT recursively.
Change 3832654 by Ben.Marsh
UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.
Change 3832680 by Ben.Marsh
UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.
Change 3832695 by Ben.Marsh
UGS: Invert the options in the 'Show Changes' submenu for simplicity.
Change 3833528 by Ben.Marsh
UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].
Change 3833543 by Ben.Marsh
UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.
Change 3834354 by Robert.Manuszewski
Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.
#jira UE-52035
Change 3834400 by Robert.Manuszewski
Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.
#jira UE-52035
Change 3834947 by Steve.Robb
USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.
Change 3835004 by Ben.Marsh
Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.
Change 3835340 by Ben.Marsh
Fix errors making installed build from directories with spaces in the name.
Change 3835972 by Ben.Marsh
UBT: Improved diagnostic message for targets which don't need a version file.
Change 3836019 by Ben.Marsh
UBT: Fix warnings caused by defining linkage macros for third party libraries.
Change 3836269 by Ben.Marsh
Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.
Change 3836543 by Ben.Marsh
Enable SoundMod plugin on Linux, since it's already supported through the editor.
Change 3836546 by Ben.Marsh
PR #4412: fix type mismatch (Contributed by nakapon)
Change 3836805 by Ben.Marsh
Fix commandlet to compile marketplace plugins.
Change 3836829 by Ben.Marsh
UBT: Fix ability to precompile plugins from installed engine builds.
Change 3837036 by Ben.Marsh
UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.
Change 3837037 by Ben.Marsh
UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).
Change 3837040 by Ben.Marsh
UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.
Change 3837247 by Ben.Marsh
UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).
Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.
Change 3837262 by Ben.Marsh
UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.
Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.
Change 3837343 by Ben.Marsh
UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.
Change 3837356 by Ben.Marsh
Fix invalid character encodings.
Change 3837727 by Graeme.Thornton
UnrealPak: KeyGenerator: Only generate prime table when required, not all the time
Change 3837823 by Ben.Marsh
UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.
Change 3837831 by Graeme.Thornton
UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives
Change 3837857 by Robert.Manuszewski
PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)
Change 3837943 by Robert.Manuszewski
PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)
Change 3838451 by Ben.Marsh
UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.
#jira UE-53996
Change 3839519 by Ben.Marsh
UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.
Change 3843790 by Graeme.Thornton
UnrealPak: Log the size of all encrypted data
Change 3844258 by Ben.Marsh
Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.
Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.
#jira UE-54157
Change 3845796 by Ben.Marsh
Workaround for slow performance of String.EndsWith() on Mono.
Change 3845823 by Ben.Marsh
Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.
#jira UE-54123
Change 3845901 by Arciel.Rekman
Linux: fix crash due to lambda lifetime issues (UE-54040).
- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).
(Edigrating 3819174 to Dev-Core)
Change 3846439 by Ben.Marsh
Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.
Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.
Change 3816608 by Ben.Marsh
UBT: Use DirectoryReference objects for all include paths.
Change 3816954 by Ben.Marsh
UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.
Change 3816986 by Ben.Marsh
UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.
Change 3816991 by Ben.Marsh
UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.
Change 3823090 by Ben.Marsh
UAT: Improve logging for child UAT instances.
- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.
Change 3826082 by Ben.Marsh
UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.
Change 3827025 by Ben.Marsh
UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.
Change 3829927 by James.Hopkin
Made HTTP interface const correct
Change 3833533 by Ben.Marsh
Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.
Change 3835826 by Ben.Marsh
UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.
Change 3835969 by Ben.Marsh
UBT: Fix cases where text is being written directly to the console rather than via logging functions.
Change 3837777 by Steve.Robb
Format string type checking added to FOutputDevice::Logf.
Fixes for those.
Change 3838569 by Steve.Robb
Algo moved up a folder.
[CL 3847482 by Ben Marsh in Main branch]
2018-01-20 11:19:29 -05:00
|
|
|
#include "Modules/ModuleManager.h"
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3739701)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3358367 by tim.gautier
Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters
Change 3624848 by Jamie.Dale
Added a composite font for the editor (and Slate core)
This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.
This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.
This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.
Change 3654993 by Jamie.Dale
'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer
This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer
Breaking changes:
- Native has been renamed to FNativeFuncPtr.
- The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
- Use P_THIS if you were previously using the 'this' pointer in your native function.
Change 3699591 by Jamie.Dale
Added support for displaying and editing numbers in a culture correct way
Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).
#jira UE-4028
Change 3719568 by Jamie.Dale
Allow platforms to override the default ICU timezone calculation
Change 3622366 by Bradut.Palas
#jira UE-46677
Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.
Change 3622378 by Bradut.Palas
#jira UE-46590
we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.
Change 3622552 by Jamie.Dale
Added support for per-culture sub-fonts within a composite font
This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).
Change 3623170 by Jamie.Dale
Fixing warning
Change 3624846 by Jamie.Dale
Composite font cache optimizations
- Converted a typically small sized map to a sorted array + binary search.
- Converted the already sorted range array to use binary search.
- Contiguous ranges using the same typeface are now merged in the cache.
Change 3625576 by Cody.Albert
We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.
#jira UE-47971
Change 3626057 by Matt.Kuhlenschmidt
Expose EUmgSequencePlayMode to blueprints
#jira UE-49255
Change 3626556 by Matt.Kuhlenschmidt
Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning.
#jira UE-48922, UE-48957
Change 3627692 by Matt.Kuhlenschmidt
PR #3977: Source control submenu menu customization (Contributed by Kryofenix)
Change 3628600 by Arciel.Rekman
Added AutoCheckout to FAssetRenameManager for commandlet usage.
Change 3630561 by Richard.Hinckley
Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.
Change 3630656 by Richard.Hinckley
Compile fix.
Change 3630964 by Arciel.Rekman
Fix CrashReporterClient headless build.
Change 3631050 by Matt.Kuhlenschmidt
Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp
Causes major problems with resizing splitters in editor
Change 3631140 by Arciel.Rekman
OpenAL: update Linux version to 1.18.1 (UETOOL-1253)
- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
- Bulk of the change from Cengiz.Terzibas
#jira UETOOL-1253
Change 3632924 by Jamie.Dale
Added support for a catch-all fallback font within composite fonts
This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.
Change 3633055 by Jamie.Dale
Fixed some refresh issues in the font editor
Change 3633062 by Jamie.Dale
Fixed localization commands being reported as unknown
Change 3633906 by Nick.Darnell
UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working.
Change 3634070 by Arciel.Rekman
Display actually used values of material overrides.
Change 3634254 by Arciel.Rekman
Fix ResavePackages working poorly with projects on other drives (UE-49465).
#jira UE-49465
Change 3635985 by Matt.Kuhlenschmidt
Fixed typo in function name used by maps
PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)
Change 3636012 by Matt.Kuhlenschmidt
PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)
Change 3636706 by Lauren.Ridge
Epic Friday: Save parameters to child or sibling instance functionality
Change 3638706 by Jamie.Dale
Added an improved Japanese font to the editor
This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).
#jira UE-33268
Change 3639438 by Arciel.Rekman
Linux: Repaired ARM server build (UE-49635).
- Made Steam* plugins compile.
- Disabled OpenEXR as the libs aren't compiled (need to be done separately).
(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)
Change 3640625 by Matt.Kuhlenschmidt
PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)
Change 3640626 by Matt.Kuhlenschmidt
PR #4011: Remove space from filename (Contributed by projectgheist)
Change 3640697 by Matt.Kuhlenschmidt
PR #4010: PNG alpha fix (Contributed by mmdanggg2)
Change 3641137 by Jamie.Dale
Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch
It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.
Change 3641351 by Jamie.Dale
Fixing incorrect weights on the Japanese sub-font
Change 3641356 by Jamie.Dale
Fixing inconsistent font sizes between CoreStyle and EditorStyle
Change 3641710 by Jamie.Dale
Fixed pure-virtual function call on UMulticastDelegateProperty
Change 3641941 by Lauren.Ridge
Adding a Parameter Details tab to the Material Editor so users can change default parameter details
Change 3644141 by Jamie.Dale
Added an improved Korean font to the editor
This is only used when displaying Korean text when the editor is set to Korean
Change 3644213 by Arciel.Rekman
Fix the side effects of a fix for UE-49465.
- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.
#jira UE-49465
Change 3644777 by Jamie.Dale
Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished
Change 3644879 by tim.gautier
QAGame: Optimized assets for Procedural Foliage testing
- Added camera bookmarks to Stations in QA-Foliage
- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
- Fixed up redirectors
Change 3645109 by Matt.Kuhlenschmidt
PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)
Change 3645114 by Matt.Kuhlenschmidt
PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)
Change 3645116 by Matt.Kuhlenschmidt
PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)
Change 3645118 by Matt.Kuhlenschmidt
PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)
Change 3645876 by Arciel.Rekman
Linux: fix submenus of context menu not working (UE-47639).
- Change by icculus (Ryan Gordon).
- QA-ClickHUD seems to be not affected by this change (it is already broken alas).
#jira UE-47639
Change 3648088 by Jamie.Dale
Fixed some case-sensitivity issues with FText format argument names/pins
These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.
#jira UE-47122
Change 3648097 by Jamie.Dale
Moved common macOS/iOS localization implementation into FApplePlatformMisc
#jira UE-49940
Change 3650858 by Arciel.Rekman
UBT: improve CodeLite project generator (UE-49400).
- PR #3987 submitted by yaakuro (Cengiz Terzibas).
#jira UE-49400
Change 3651231 by Arciel.Rekman
Linux: default to SM5 for Vulkan.
- Change by Timothee.Bessett.
Change 3653627 by Matt.Kuhlenschmidt
PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)
Change 3653628 by Matt.Kuhlenschmidt
PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)
Change 3653984 by Jamie.Dale
Fixed some redundant string construction
Change 3658528 by Joe.Graf
UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files
Change 3658594 by Jamie.Dale
Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues
#jira UE-27263
Change 3659643 by Michael.Trepka
Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior
#jira UETOOL-1238
Change 3661908 by Matt.Kuhlenschmidt
USD asset importing improvements
Change 3664100 by Matt.Kuhlenschmidt
Fix static analysis
Change 3664107 by Matt.Kuhlenschmidt
PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)
Change 3664125 by Matt.Kuhlenschmidt
PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)
Change 3664340 by Jamie.Dale
PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)
Change 3664403 by Jamie.Dale
PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)
Change 3664539 by Jamie.Dale
PR #3280: Added EditableText functionality (Contributed by projectgheist)
Change 3665433 by Alexis.Matte
When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
#jira UE-50231
Change 3666747 by Cody.Albert
Change 3669280 by Jamie.Dale
PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)
Change 3669718 by Jamie.Dale
PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)
Change 3670838 by Alexis.Matte
Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
#jira UE-50387
Change 3671559 by Matt.Kuhlenschmidt
Update SimpleUI automation test ground truth
#jira UE-50325
Change 3671587 by Alexis.Matte
Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
#jira UE-50147
Change 3671730 by Jamie.Dale
Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances
Change 3672104 by Michael.Dupuis
#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings
Change 3674906 by Alexis.Matte
Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
#jira UE-50248
Change 3674942 by Matt.Kuhlenschmidt
Fix static analysis
Change 3675401 by Alexis.Matte
-fix export animation, do not truncate the last frame anymore
-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.
#jira UE-48231
Change 3675990 by Alexis.Matte
Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
This is to avoid driving random vertex with old morph target.
#jira UE-50391
Change 3676169 by Alexis.Matte
When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.
Change 3676396 by Alexis.Matte
Make all LOD 0 name consistent in staticmesh editor
#jira UE-49461
Change 3677730 by Cody.Albert
Enable locking of Persistent Level in Levels tab
#jira UE-50686
Change 3677838 by Jamie.Dale
Replaced broken version of Roboto Light
Change 3679619 by Alexis.Matte
Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
#jira UE-50001
Change 3680093 by Alexis.Matte
Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.
Change 3680931 by Arciel.Rekman
SlateDialogs: show image icon for *.tga (UE-25106).
- Also reworked the logic somewhat.
#jira UE-25106
Change 3681966 by Yannick.Lange
MaterialEditor post-process preview.
#jira UE-45307
Change 3682407 by Lauren.Ridge
Fixes for material editor compile errors
Change 3682628 by Lauren.Ridge
Content browser filters for Material Layers, Blends, and their instances
Change 3682725 by Lauren.Ridge
Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default
Change 3682921 by Lauren.Ridge
Fix for instance layers not initializing fully
Change 3682954 by Lauren.Ridge
Creating Material Layer Test Assets
Change 3683582 by Alexis.Matte
Fix static analysis build
Change 3683614 by Matt.Kuhlenschmidt
PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)
Change 3684130 by Lauren.Ridge
Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3686289 by Arciel.Rekman
Remove the pessimization (UE-23791).
Change 3686455 by Lauren.Ridge
Fixes for adding/removing a layer parameter from the parent not updating the child
Change 3686829 by Jamie.Dale
No longer include trailing whitespace in the justification calculation for soft-wrapped lines
#jira UE-50266
Change 3686970 by Lauren.Ridge
Making material parameter preview work for functions as well
Change 3687077 by Jamie.Dale
Fixed crash using FActorDetails with the struct details panel
Change 3687152 by Jamie.Dale
Fixed the row structure tag not appearing in the Content Browser for Data Table assets
The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.
#jira UE-48691
Change 3687174 by Lauren.Ridge
Fix for material layer sub-parameters showing up in the default material parameters panel
Change 3688100 by Lauren.Ridge
Fixing static analysis error
Change 3688317 by Jamie.Dale
Fixed crash using the widget reflector in a cooked game
Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.
Change 3689054 by Jamie.Dale
Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes
#jira UE-45751
Change 3689513 by Jamie.Dale
Fixed justification bug with RTL text caused by CL# 3686829
Also implemented the same alignment fix for visually left-aligned RTL text.
#jira UE-50266
Change 3690231 by Lauren.Ridge
Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor
Change 3690234 by Lauren.Ridge
Adding Material Layers Function Parameter to Static Parameter Compare
Change 3690750 by Chris.Bunner
Potential nullptr crash.
Change 3690751 by Chris.Bunner
Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.
Change 3691010 by Jamie.Dale
Fixed some clipping issues that could occur with right-aligned text
FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)
#jira UE-46760
Change 3691091 by Jamie.Dale
Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type
Change 3691134 by Alexis.Matte
Make sure we instance also the collision mesh when exporting a level to fbx file.
#jira UE-51066
Change 3691157 by Lauren.Ridge
Fix for reset to default not refreshing sub-parameters
Change 3691192 by Jamie.Dale
Fixed Content Browser selection resetting when changing certain view settings
#jira UE-49611
Change 3691204 by Alexis.Matte
Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
#jira UE-51023
Change 3692335 by Lauren.Ridge
Setting displayed asset to equal filter asset if no instance has been selected
Change 3692479 by Jamie.Dale
Fixed whitespace
Change 3692508 by Alexis.Matte
Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
We also prevent the export dialog to show
#jira UE-50973
Change 3692639 by Jamie.Dale
Translation Editor now shows stale translations as "Untranslated"
Change 3692743 by Lauren.Ridge
Smaller blend icons, added icon size override to FObjectEntryBox
Change 3692830 by Alexis.Matte
Fix linux build
Change 3692894 by Lauren.Ridge
Tooltip on "Parent" in material layers
Change 3693141 by Jamie.Dale
Removed dead code
FastDecimalFormat made this redundant
Change 3693580 by Jamie.Dale
Added AlwaysSign number formatting option
#jira UE-10310
Change 3693784 by Jamie.Dale
Fixed assert extracting the number formatting rules for Arabic
It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.
#jira UE-10310
Change 3694428 by Arciel.Rekman
Linux: make directory watch request a warning so they don't block cooking.
- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html
Change 3694458 by Matt.Kuhlenschmidt
Made duplicate keybinding warning non-fatal
Change 3694496 by Alexis.Matte
fix static analysis build
Change 3694515 by Jamie.Dale
Added support for culture correct parsing of decimal numbers
#jira UE-4028
Change 3694621 by Jamie.Dale
Added a variant of FastDecimalFormat::StringToNumber that takes a string length
This can be useful if you want to convert a number from within a non-null terminated string
#jira UE-4028
Change 3694958 by Jamie.Dale
Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing
You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.
#jira UE-4028
Change 3695083 by Alexis.Matte
Optimisation of the morph target import
- We now compute only the normal for the shape the tangent are not necessary
- The async tasks are create when there is some available cpu thread to avoid filling the memory
- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
#jira UE-50945
Change 3695122 by Jamie.Dale
GetCultureAgnosticFormattingRules no longer returns a copy
Change 3695835 by Arciel.Rekman
TestPAL: greatly expanded malloc test.
Change 3695918 by Arciel.Rekman
TestPAL: Added thread priority test.
Change 3696589 by Arciel.Rekman
TestPAL: tweak thread priorities test (better readability).
Change 3697345 by Alexis.Matte
Fix reorder of material when importing a LOD with new material
#jira UE-51135
Change 3699590 by Jamie.Dale
Updated SGraphPinNum to use a numeric editor
#jira UE-4028
Change 3699698 by Matt.Kuhlenschmidt
Fix crash opening the level viewport context menu if the actor-component selection is out of sync
#jira UE-48444
Change 3700158 by Arciel.Rekman
Enable packaging for Android Vulkan on Linux (UETOOL-1232).
- Change by Cengiz Terzibas
Change 3700224 by Arciel.Rekman
TestPAL: fixed a memory leak.
Change 3700775 by Cody.Albert
Don't need to initialize EnvironmentCubeMap twice.
Change 3700866 by Michael.Trepka
PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)
#jira UE-41643
Change 3701132 by Michael.Trepka
Copy of CL 3671538
Fixed issues with editor's game mode in high DPI on Mac.
#jira UE-49947, UE-51063
Change 3701421 by Michael.Trepka
Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression
Change 3701495 by Alexis.Matte
Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
#jira UE-UE-51359
Change 3702982 by Jamie.Dale
Cleaned up some localization setting names
These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.
Change 3703517 by Arciel.Rekman
TestPAL: improved thread test.
- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).
Change 3704378 by Michael.Trepka
Disable Zoom button on Mac if project requests a resizeable window without it.
#jira UE-51335
Change 3706316 by Jamie.Dale
Fixed the asset search suggestions list closing if you clicked on its scrollbar
#jira UE-28885
Change 3706855 by Alexis.Matte
Support importing animation that has some keys with negative time
#jira UE-51305
Change 3709634 by Matt.Kuhlenschmidt
PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)
Change 3711085 by Michael.Trepka
Reenabled UBT makefiles on Mac
Change 3713049 by Josh.Engebretson
The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect.
#jira UE-51319
Change 3713144 by Lauren.Ridge
Fixing automated test error
#jira UE-50982
Change 3713395 by Alexis.Matte
Fix auto import mountpoint
#jira UE-51524
Change 3713881 by Michael.Trepka
Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.
#jira UE-31093
Change 3714197 by Michael.Trepka
Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.
#jira UE-47915
Change 3714911 by Joe.Graf
Merge of cmake changes from Dev-Rendering
Change 3715973 by Michael.Trepka
Disable OS close button on Windows if project settings request that
#jira UE-45522
Change 3716390 by Lauren.Ridge
The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.
#jira UE-50916
Change 3716529 by Josh.Engebretson
Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1
#jira UE-51341
Change 3716885 by Josh.Engebretson
Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary.
#jira UE-48572
Change 3716929 by Josh.Engebretson
Unshelved from pending changelist '3364093':
PR #3420: Exe's icons and properties (Contributed by projectgheist)
Change 3716937 by Josh.Engebretson
Unshelved from pending changelist '3647428':
PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)
Change 3717002 by Josh.Engebretson
Fix FileReference/string conversion
Change 3717355 by Joe.Graf
Fixed CMake file generation on Windows including Engine/Source/ThirdParty source
Change 3718256 by Arciel.Rekman
TestPAL: slight mod to the malloc test.
- Touch the allocated memory to check actual resident usage.
Change 3718290 by Arciel.Rekman
BAFO: place descriptor after the allocation to save some VIRT memory.
- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.
Change 3718508 by Michael.Trepka
Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)
#jira UE-46148
Change 3718855 by Lauren.Ridge
Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.
Change 3718932 by Cody.Albert
Update ActorSequence plugin loading phase to PreDefault
#jira UE-51612
Change 3719378 by tim.gautier
QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
Added additional Text Widgets for testing
Change 3719413 by Lauren.Ridge
Resubmit of content browser favorites
Change 3719803 by Yannick.Lange
VREditor: Fix crash with null GEditor
#jira UE-50103
Change 3721127 by tim.gautier
QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
- Added M_ParamDefaults and MF_ParamDefaults
- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions
Change 3721255 by Alexis.Matte
Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
#jira UE-51363
Change 3721594 by Lauren.Ridge
Material Blends now have plane mesh previews in their icons.
Change 3722072 by tim.gautier
QAGame: Updated MF_ParamDefaults - using red channel as roughness
Updated M_ParamDefaults - tweaked Scalar values
Change 3722180 by Michael.Trepka
Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.
#jira UE-25941
Change 3722220 by Michael.Trepka
Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly
#jira UE-40246
Change 3722806 by Lauren.Ridge
Fixing non-editor compiles
Change 3722914 by Alexis.Matte
Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.
#jira UE-51665
Change 3723446 by Michael.Trepka
Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME
Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.
#jira UE-48257
Change 3723505 by Matt.Kuhlenschmidt
Fix duplicate actors being created for USD primitives that specify a custom actor class
Change 3723555 by Matt.Kuhlenschmidt
Fix crash loading the gameplayabilities module
#jira UE-51693
Change 3723557 by Matt.Kuhlenschmidt
Fixed tooltip on viewport dpi scaling option
Change 3723870 by Lauren.Ridge
Fixing incorrect reset to default visibility, adding clear behavior to fields
Change 3723917 by Arciel.Rekman
Linux: fix compilation with glibc 2.26+ (UE-51699).
- Fixes compilation on Ubuntu 17.10 among others.
(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3723918 by Arciel.Rekman
Linux: do not test for popcnt presence unnecessarily (UE-51677).
(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3724229 by Arciel.Rekman
Fix FOutputDeviceStdOutput to use printf() on Unix platforms.
Change 3724261 by Arciel.Rekman
TestPAL: fix thread priority test (zero the counter).
Change 3724978 by Arciel.Rekman
Linux: fix priority calculation.
- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.
Change 3725382 by Matt.Kuhlenschmidt
Guard against crashes and add more logging when actor creation fails.
Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed
#jira UE-47464
Change 3725559 by Matt.Kuhlenschmidt
Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows.
Moved some files around for better consistency
Change 3725640 by Arciel.Rekman
Fix Linux thread/process priorities.
- Should also speed up SCW on Linux by deprioritizing them less.
Change 3726101 by Matt.Kuhlenschmidt
Fix logic bug in USD child "kind" type resolving
Change 3726244 by Joe.Graf
Added an option to generate a minimal set of targets for cmake files
Added shader and config files to cmake file generation for searching within IDEs
Change 3726506 by Arciel.Rekman
Fix compile issue after DPI change.
Change 3726549 by Matt.Kuhlenschmidt
Remove unnecessary indirection to cached widgets in the hit test grid
Change 3726660 by Arciel.Rekman
Enable DPI switch on Linux.
Change 3726763 by Arciel.Rekman
Fix mismatching "noperspective" qualifier (UE-50807).
- Pull request #4080 by TTimo.
Change 3727080 by Michael.Trepka
Added support for editor's EnableHighDPIAwareness setting on Mac
Change 3727658 by Matt.Kuhlenschmidt
Fix shutdown crash if level editor is still referenced after the object system has been gc'd
#jira UE-51630
Change 3728270 by Matt.Kuhlenschmidt
Remove propertyeditor dependency from editorstyle
Change 3728291 by Arciel.Rekman
Linux: fix for a crash on a headless system (UE-51714).
- Preliminary change before merging to 4.18.
Change 3728293 by Arciel.Rekman
Linux: remove unneeded dependency on CEF.
- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.
Change 3728524 by Michael.Trepka
Copy of CL 3725570
Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)
#jira UE-51709
Change 3728875 by Michael.Trepka
Fixed compile error in Mac SlateOpenGLContext.cpp
Change 3728880 by Matt.Kuhlenschmidt
Guard against invalid worlds in thumbnail renderers
Change 3728924 by Michael.Trepka
Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.
#jira UE-51711
Change 3729288 by Joe.Graf
Added the .idea/misc.xml file generation to speed up CLion indexing
Change 3729935 by Michael.Dupuis
#jira UE-51722: Hide from UI invalid enum values
Change 3730234 by Matt.Kuhlenschmidt
Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.
#jira UE-51801
Change 3730349 by Michael.Dupuis
#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item
Change 3730438 by Lauren.Ridge
Cleaning up material layering UI functions
Change 3730723 by Jamie.Dale
Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers
#jira UE-51799
Change 3731008 by Lauren.Ridge
Changing Layers and Blends from proxy assets to real assets
Change 3731026 by Arciel.Rekman
libelf: make elf_end() visible (UE-51843).
- This repairs compilation for a case when CUDA is being used.
- Also added some missing files for ARM 32-bit.
Change 3731081 by Lauren.Ridge
New material layer test assets
Change 3731186 by Josh.Engebretson
Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets
#jira UE-50104
Change 3731188 by Mike.Erwin
Improve responsiveness of Open Asset dialog.
On large projects, there's a noticeable delay when opening and searching/filtering assets.
Stopwatch measurements on my machine (seconds for ~122,000 assets):
before with this CL
ctrl-P 1.4 0.45
search 1.8 0.55
CollectionManagerModule was the main culprit for search/filter slowness.
Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.
Change 3731682 by Arciel.Rekman
UnrealEd: Allow unattended commandlets to rename/save packages.
Change 3732305 by Michael.Dupuis
#jira UE-48434 : Only register if the foliage type still has a valid mesh
Change 3732361 by Matt.Kuhlenschmidt
Fix two settings objects being created in the transient package with the same name
#jira UE-51891
Change 3732895 by Josh.Engebretson
https://jira.it.epicgames.net/browse/UE-51706
If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
Adds DDC notification events for check/put and query for whether a shared DDC is in use.
#jira UE-51706
Change 3733025 by Arciel.Rekman
UBT: make sure new clang versions are invoked.
Change 3733311 by Mike.Erwin
Fix Linux compile warning from CL 3731188
It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.
Change 3733658 by Josh.Engebretson
Add a missing #undef LOCTEXT_NAMESPACE
Change 3734003 by Arciel.Rekman
Fix Windows attempting to use printf %ls and crashing at that (UE-51934).
Change 3734039 by Michael.Trepka
Fixed a couple of merge issues in Mac ApplicationCore
Change 3734052 by Michael.Trepka
One more Mac ApplicationCore fix
Change 3734244 by Lauren.Ridge
Fix for accessing Slate window on render thread
Change 3734950 by Josh.Engebretson
Fixing clang warning
Change 3734978 by Jamie.Dale
Relaxed enum property importing to allow valid numeric values to be imported too
This was previously made more strict which caused a regression in Data Table importing
#jira UE-51848
Change 3734999 by Arciel.Rekman
Linux: add LTO support and more.
- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
- Supports using llvm-ar and lld instead of ar/ranlib and ld.
- More build information printed (and in a better organized way).
- Native scripts updated to install packages with the appropriate tools on supported systems
- AutoSDKs updated to require a new toolchain (already checked in).
- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089
Change 3735268 by Matt.Kuhlenschmidt
Added support for canvas based DPI scaling.
-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
-The debug canvas for stats is always dpi scaled in editor and pie.
-Eliminated text scaling workaround now that the entire canvas is properly scaled
-Enabled canvas scaling in cascade UI
Change 3735329 by Matt.Kuhlenschmidt
Fix potential crash if an asset editor has an object deleted out from under it
#jira UE-51941
Change 3735502 by Arciel.Rekman
Fix compile issue (bShouldUpdateScreenPercentage).
Change 3735878 by Jamie.Dale
Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string
This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.
Change 3735881 by Jamie.Dale
JsonValue no longer stringifies whole numbers as floats
Change 3735884 by Jamie.Dale
Only allow enums to import integral values
Change 3735912 by Josh.Engebretson
Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications
#jira UE-48131
Change 3736280 by Matt.Kuhlenschmidt
Fix 0 dpi scale for canvases
#jira UE-51995
Change 3736298 by Matt.Kuhlenschmidt
Force focus of game viewports in vr mode
Change 3736374 by Jamie.Dale
Fixed some places where input chords were being used without testing that they had a valid key set
#jira UE-51799
Change 3738543 by Matt.Kuhlenschmidt
Better fix for edit condition crashes
#jira UE-51886
Change 3738603 by Lauren.Ridge
Copy over of drag and drop non-array onto array fix
Change 3739701 by Chris.Babcock
Fix crashlytics merge error
#jira UE-52064
#ue4
#android
[CL 3739980 by Matt Kuhlenschmidt in Main branch]
2017-11-06 18:22:01 -05:00
|
|
|
#include "Factories/MaterialInstanceConstantFactoryNew.h"
|
|
|
|
|
#include "Materials/MaterialInstanceConstant.h"
|
|
|
|
|
#include "MaterialEditor/DEditorFontParameterValue.h"
|
2019-09-06 19:47:59 -04:00
|
|
|
#include "MaterialEditor/DEditorRuntimeVirtualTextureParameterValue.h"
|
|
|
|
|
#include "MaterialEditor/DEditorScalarParameterValue.h"
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3739701)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3358367 by tim.gautier
Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters
Change 3624848 by Jamie.Dale
Added a composite font for the editor (and Slate core)
This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.
This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.
This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.
Change 3654993 by Jamie.Dale
'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer
This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer
Breaking changes:
- Native has been renamed to FNativeFuncPtr.
- The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
- Use P_THIS if you were previously using the 'this' pointer in your native function.
Change 3699591 by Jamie.Dale
Added support for displaying and editing numbers in a culture correct way
Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).
#jira UE-4028
Change 3719568 by Jamie.Dale
Allow platforms to override the default ICU timezone calculation
Change 3622366 by Bradut.Palas
#jira UE-46677
Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.
Change 3622378 by Bradut.Palas
#jira UE-46590
we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.
Change 3622552 by Jamie.Dale
Added support for per-culture sub-fonts within a composite font
This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).
Change 3623170 by Jamie.Dale
Fixing warning
Change 3624846 by Jamie.Dale
Composite font cache optimizations
- Converted a typically small sized map to a sorted array + binary search.
- Converted the already sorted range array to use binary search.
- Contiguous ranges using the same typeface are now merged in the cache.
Change 3625576 by Cody.Albert
We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.
#jira UE-47971
Change 3626057 by Matt.Kuhlenschmidt
Expose EUmgSequencePlayMode to blueprints
#jira UE-49255
Change 3626556 by Matt.Kuhlenschmidt
Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning.
#jira UE-48922, UE-48957
Change 3627692 by Matt.Kuhlenschmidt
PR #3977: Source control submenu menu customization (Contributed by Kryofenix)
Change 3628600 by Arciel.Rekman
Added AutoCheckout to FAssetRenameManager for commandlet usage.
Change 3630561 by Richard.Hinckley
Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.
Change 3630656 by Richard.Hinckley
Compile fix.
Change 3630964 by Arciel.Rekman
Fix CrashReporterClient headless build.
Change 3631050 by Matt.Kuhlenschmidt
Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp
Causes major problems with resizing splitters in editor
Change 3631140 by Arciel.Rekman
OpenAL: update Linux version to 1.18.1 (UETOOL-1253)
- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
- Bulk of the change from Cengiz.Terzibas
#jira UETOOL-1253
Change 3632924 by Jamie.Dale
Added support for a catch-all fallback font within composite fonts
This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.
Change 3633055 by Jamie.Dale
Fixed some refresh issues in the font editor
Change 3633062 by Jamie.Dale
Fixed localization commands being reported as unknown
Change 3633906 by Nick.Darnell
UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working.
Change 3634070 by Arciel.Rekman
Display actually used values of material overrides.
Change 3634254 by Arciel.Rekman
Fix ResavePackages working poorly with projects on other drives (UE-49465).
#jira UE-49465
Change 3635985 by Matt.Kuhlenschmidt
Fixed typo in function name used by maps
PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)
Change 3636012 by Matt.Kuhlenschmidt
PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)
Change 3636706 by Lauren.Ridge
Epic Friday: Save parameters to child or sibling instance functionality
Change 3638706 by Jamie.Dale
Added an improved Japanese font to the editor
This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).
#jira UE-33268
Change 3639438 by Arciel.Rekman
Linux: Repaired ARM server build (UE-49635).
- Made Steam* plugins compile.
- Disabled OpenEXR as the libs aren't compiled (need to be done separately).
(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)
Change 3640625 by Matt.Kuhlenschmidt
PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)
Change 3640626 by Matt.Kuhlenschmidt
PR #4011: Remove space from filename (Contributed by projectgheist)
Change 3640697 by Matt.Kuhlenschmidt
PR #4010: PNG alpha fix (Contributed by mmdanggg2)
Change 3641137 by Jamie.Dale
Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch
It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.
Change 3641351 by Jamie.Dale
Fixing incorrect weights on the Japanese sub-font
Change 3641356 by Jamie.Dale
Fixing inconsistent font sizes between CoreStyle and EditorStyle
Change 3641710 by Jamie.Dale
Fixed pure-virtual function call on UMulticastDelegateProperty
Change 3641941 by Lauren.Ridge
Adding a Parameter Details tab to the Material Editor so users can change default parameter details
Change 3644141 by Jamie.Dale
Added an improved Korean font to the editor
This is only used when displaying Korean text when the editor is set to Korean
Change 3644213 by Arciel.Rekman
Fix the side effects of a fix for UE-49465.
- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.
#jira UE-49465
Change 3644777 by Jamie.Dale
Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished
Change 3644879 by tim.gautier
QAGame: Optimized assets for Procedural Foliage testing
- Added camera bookmarks to Stations in QA-Foliage
- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
- Fixed up redirectors
Change 3645109 by Matt.Kuhlenschmidt
PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)
Change 3645114 by Matt.Kuhlenschmidt
PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)
Change 3645116 by Matt.Kuhlenschmidt
PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)
Change 3645118 by Matt.Kuhlenschmidt
PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)
Change 3645876 by Arciel.Rekman
Linux: fix submenus of context menu not working (UE-47639).
- Change by icculus (Ryan Gordon).
- QA-ClickHUD seems to be not affected by this change (it is already broken alas).
#jira UE-47639
Change 3648088 by Jamie.Dale
Fixed some case-sensitivity issues with FText format argument names/pins
These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.
#jira UE-47122
Change 3648097 by Jamie.Dale
Moved common macOS/iOS localization implementation into FApplePlatformMisc
#jira UE-49940
Change 3650858 by Arciel.Rekman
UBT: improve CodeLite project generator (UE-49400).
- PR #3987 submitted by yaakuro (Cengiz Terzibas).
#jira UE-49400
Change 3651231 by Arciel.Rekman
Linux: default to SM5 for Vulkan.
- Change by Timothee.Bessett.
Change 3653627 by Matt.Kuhlenschmidt
PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)
Change 3653628 by Matt.Kuhlenschmidt
PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)
Change 3653984 by Jamie.Dale
Fixed some redundant string construction
Change 3658528 by Joe.Graf
UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files
Change 3658594 by Jamie.Dale
Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues
#jira UE-27263
Change 3659643 by Michael.Trepka
Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior
#jira UETOOL-1238
Change 3661908 by Matt.Kuhlenschmidt
USD asset importing improvements
Change 3664100 by Matt.Kuhlenschmidt
Fix static analysis
Change 3664107 by Matt.Kuhlenschmidt
PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)
Change 3664125 by Matt.Kuhlenschmidt
PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)
Change 3664340 by Jamie.Dale
PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)
Change 3664403 by Jamie.Dale
PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)
Change 3664539 by Jamie.Dale
PR #3280: Added EditableText functionality (Contributed by projectgheist)
Change 3665433 by Alexis.Matte
When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
#jira UE-50231
Change 3666747 by Cody.Albert
Change 3669280 by Jamie.Dale
PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)
Change 3669718 by Jamie.Dale
PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)
Change 3670838 by Alexis.Matte
Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
#jira UE-50387
Change 3671559 by Matt.Kuhlenschmidt
Update SimpleUI automation test ground truth
#jira UE-50325
Change 3671587 by Alexis.Matte
Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
#jira UE-50147
Change 3671730 by Jamie.Dale
Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances
Change 3672104 by Michael.Dupuis
#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings
Change 3674906 by Alexis.Matte
Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
#jira UE-50248
Change 3674942 by Matt.Kuhlenschmidt
Fix static analysis
Change 3675401 by Alexis.Matte
-fix export animation, do not truncate the last frame anymore
-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.
#jira UE-48231
Change 3675990 by Alexis.Matte
Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
This is to avoid driving random vertex with old morph target.
#jira UE-50391
Change 3676169 by Alexis.Matte
When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.
Change 3676396 by Alexis.Matte
Make all LOD 0 name consistent in staticmesh editor
#jira UE-49461
Change 3677730 by Cody.Albert
Enable locking of Persistent Level in Levels tab
#jira UE-50686
Change 3677838 by Jamie.Dale
Replaced broken version of Roboto Light
Change 3679619 by Alexis.Matte
Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
#jira UE-50001
Change 3680093 by Alexis.Matte
Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.
Change 3680931 by Arciel.Rekman
SlateDialogs: show image icon for *.tga (UE-25106).
- Also reworked the logic somewhat.
#jira UE-25106
Change 3681966 by Yannick.Lange
MaterialEditor post-process preview.
#jira UE-45307
Change 3682407 by Lauren.Ridge
Fixes for material editor compile errors
Change 3682628 by Lauren.Ridge
Content browser filters for Material Layers, Blends, and their instances
Change 3682725 by Lauren.Ridge
Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default
Change 3682921 by Lauren.Ridge
Fix for instance layers not initializing fully
Change 3682954 by Lauren.Ridge
Creating Material Layer Test Assets
Change 3683582 by Alexis.Matte
Fix static analysis build
Change 3683614 by Matt.Kuhlenschmidt
PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)
Change 3684130 by Lauren.Ridge
Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3686289 by Arciel.Rekman
Remove the pessimization (UE-23791).
Change 3686455 by Lauren.Ridge
Fixes for adding/removing a layer parameter from the parent not updating the child
Change 3686829 by Jamie.Dale
No longer include trailing whitespace in the justification calculation for soft-wrapped lines
#jira UE-50266
Change 3686970 by Lauren.Ridge
Making material parameter preview work for functions as well
Change 3687077 by Jamie.Dale
Fixed crash using FActorDetails with the struct details panel
Change 3687152 by Jamie.Dale
Fixed the row structure tag not appearing in the Content Browser for Data Table assets
The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.
#jira UE-48691
Change 3687174 by Lauren.Ridge
Fix for material layer sub-parameters showing up in the default material parameters panel
Change 3688100 by Lauren.Ridge
Fixing static analysis error
Change 3688317 by Jamie.Dale
Fixed crash using the widget reflector in a cooked game
Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.
Change 3689054 by Jamie.Dale
Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes
#jira UE-45751
Change 3689513 by Jamie.Dale
Fixed justification bug with RTL text caused by CL# 3686829
Also implemented the same alignment fix for visually left-aligned RTL text.
#jira UE-50266
Change 3690231 by Lauren.Ridge
Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor
Change 3690234 by Lauren.Ridge
Adding Material Layers Function Parameter to Static Parameter Compare
Change 3690750 by Chris.Bunner
Potential nullptr crash.
Change 3690751 by Chris.Bunner
Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.
Change 3691010 by Jamie.Dale
Fixed some clipping issues that could occur with right-aligned text
FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)
#jira UE-46760
Change 3691091 by Jamie.Dale
Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type
Change 3691134 by Alexis.Matte
Make sure we instance also the collision mesh when exporting a level to fbx file.
#jira UE-51066
Change 3691157 by Lauren.Ridge
Fix for reset to default not refreshing sub-parameters
Change 3691192 by Jamie.Dale
Fixed Content Browser selection resetting when changing certain view settings
#jira UE-49611
Change 3691204 by Alexis.Matte
Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
#jira UE-51023
Change 3692335 by Lauren.Ridge
Setting displayed asset to equal filter asset if no instance has been selected
Change 3692479 by Jamie.Dale
Fixed whitespace
Change 3692508 by Alexis.Matte
Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
We also prevent the export dialog to show
#jira UE-50973
Change 3692639 by Jamie.Dale
Translation Editor now shows stale translations as "Untranslated"
Change 3692743 by Lauren.Ridge
Smaller blend icons, added icon size override to FObjectEntryBox
Change 3692830 by Alexis.Matte
Fix linux build
Change 3692894 by Lauren.Ridge
Tooltip on "Parent" in material layers
Change 3693141 by Jamie.Dale
Removed dead code
FastDecimalFormat made this redundant
Change 3693580 by Jamie.Dale
Added AlwaysSign number formatting option
#jira UE-10310
Change 3693784 by Jamie.Dale
Fixed assert extracting the number formatting rules for Arabic
It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.
#jira UE-10310
Change 3694428 by Arciel.Rekman
Linux: make directory watch request a warning so they don't block cooking.
- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html
Change 3694458 by Matt.Kuhlenschmidt
Made duplicate keybinding warning non-fatal
Change 3694496 by Alexis.Matte
fix static analysis build
Change 3694515 by Jamie.Dale
Added support for culture correct parsing of decimal numbers
#jira UE-4028
Change 3694621 by Jamie.Dale
Added a variant of FastDecimalFormat::StringToNumber that takes a string length
This can be useful if you want to convert a number from within a non-null terminated string
#jira UE-4028
Change 3694958 by Jamie.Dale
Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing
You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.
#jira UE-4028
Change 3695083 by Alexis.Matte
Optimisation of the morph target import
- We now compute only the normal for the shape the tangent are not necessary
- The async tasks are create when there is some available cpu thread to avoid filling the memory
- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
#jira UE-50945
Change 3695122 by Jamie.Dale
GetCultureAgnosticFormattingRules no longer returns a copy
Change 3695835 by Arciel.Rekman
TestPAL: greatly expanded malloc test.
Change 3695918 by Arciel.Rekman
TestPAL: Added thread priority test.
Change 3696589 by Arciel.Rekman
TestPAL: tweak thread priorities test (better readability).
Change 3697345 by Alexis.Matte
Fix reorder of material when importing a LOD with new material
#jira UE-51135
Change 3699590 by Jamie.Dale
Updated SGraphPinNum to use a numeric editor
#jira UE-4028
Change 3699698 by Matt.Kuhlenschmidt
Fix crash opening the level viewport context menu if the actor-component selection is out of sync
#jira UE-48444
Change 3700158 by Arciel.Rekman
Enable packaging for Android Vulkan on Linux (UETOOL-1232).
- Change by Cengiz Terzibas
Change 3700224 by Arciel.Rekman
TestPAL: fixed a memory leak.
Change 3700775 by Cody.Albert
Don't need to initialize EnvironmentCubeMap twice.
Change 3700866 by Michael.Trepka
PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)
#jira UE-41643
Change 3701132 by Michael.Trepka
Copy of CL 3671538
Fixed issues with editor's game mode in high DPI on Mac.
#jira UE-49947, UE-51063
Change 3701421 by Michael.Trepka
Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression
Change 3701495 by Alexis.Matte
Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
#jira UE-UE-51359
Change 3702982 by Jamie.Dale
Cleaned up some localization setting names
These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.
Change 3703517 by Arciel.Rekman
TestPAL: improved thread test.
- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).
Change 3704378 by Michael.Trepka
Disable Zoom button on Mac if project requests a resizeable window without it.
#jira UE-51335
Change 3706316 by Jamie.Dale
Fixed the asset search suggestions list closing if you clicked on its scrollbar
#jira UE-28885
Change 3706855 by Alexis.Matte
Support importing animation that has some keys with negative time
#jira UE-51305
Change 3709634 by Matt.Kuhlenschmidt
PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)
Change 3711085 by Michael.Trepka
Reenabled UBT makefiles on Mac
Change 3713049 by Josh.Engebretson
The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect.
#jira UE-51319
Change 3713144 by Lauren.Ridge
Fixing automated test error
#jira UE-50982
Change 3713395 by Alexis.Matte
Fix auto import mountpoint
#jira UE-51524
Change 3713881 by Michael.Trepka
Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.
#jira UE-31093
Change 3714197 by Michael.Trepka
Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.
#jira UE-47915
Change 3714911 by Joe.Graf
Merge of cmake changes from Dev-Rendering
Change 3715973 by Michael.Trepka
Disable OS close button on Windows if project settings request that
#jira UE-45522
Change 3716390 by Lauren.Ridge
The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.
#jira UE-50916
Change 3716529 by Josh.Engebretson
Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1
#jira UE-51341
Change 3716885 by Josh.Engebretson
Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary.
#jira UE-48572
Change 3716929 by Josh.Engebretson
Unshelved from pending changelist '3364093':
PR #3420: Exe's icons and properties (Contributed by projectgheist)
Change 3716937 by Josh.Engebretson
Unshelved from pending changelist '3647428':
PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)
Change 3717002 by Josh.Engebretson
Fix FileReference/string conversion
Change 3717355 by Joe.Graf
Fixed CMake file generation on Windows including Engine/Source/ThirdParty source
Change 3718256 by Arciel.Rekman
TestPAL: slight mod to the malloc test.
- Touch the allocated memory to check actual resident usage.
Change 3718290 by Arciel.Rekman
BAFO: place descriptor after the allocation to save some VIRT memory.
- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.
Change 3718508 by Michael.Trepka
Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)
#jira UE-46148
Change 3718855 by Lauren.Ridge
Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.
Change 3718932 by Cody.Albert
Update ActorSequence plugin loading phase to PreDefault
#jira UE-51612
Change 3719378 by tim.gautier
QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
Added additional Text Widgets for testing
Change 3719413 by Lauren.Ridge
Resubmit of content browser favorites
Change 3719803 by Yannick.Lange
VREditor: Fix crash with null GEditor
#jira UE-50103
Change 3721127 by tim.gautier
QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
- Added M_ParamDefaults and MF_ParamDefaults
- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions
Change 3721255 by Alexis.Matte
Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
#jira UE-51363
Change 3721594 by Lauren.Ridge
Material Blends now have plane mesh previews in their icons.
Change 3722072 by tim.gautier
QAGame: Updated MF_ParamDefaults - using red channel as roughness
Updated M_ParamDefaults - tweaked Scalar values
Change 3722180 by Michael.Trepka
Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.
#jira UE-25941
Change 3722220 by Michael.Trepka
Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly
#jira UE-40246
Change 3722806 by Lauren.Ridge
Fixing non-editor compiles
Change 3722914 by Alexis.Matte
Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.
#jira UE-51665
Change 3723446 by Michael.Trepka
Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME
Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.
#jira UE-48257
Change 3723505 by Matt.Kuhlenschmidt
Fix duplicate actors being created for USD primitives that specify a custom actor class
Change 3723555 by Matt.Kuhlenschmidt
Fix crash loading the gameplayabilities module
#jira UE-51693
Change 3723557 by Matt.Kuhlenschmidt
Fixed tooltip on viewport dpi scaling option
Change 3723870 by Lauren.Ridge
Fixing incorrect reset to default visibility, adding clear behavior to fields
Change 3723917 by Arciel.Rekman
Linux: fix compilation with glibc 2.26+ (UE-51699).
- Fixes compilation on Ubuntu 17.10 among others.
(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3723918 by Arciel.Rekman
Linux: do not test for popcnt presence unnecessarily (UE-51677).
(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3724229 by Arciel.Rekman
Fix FOutputDeviceStdOutput to use printf() on Unix platforms.
Change 3724261 by Arciel.Rekman
TestPAL: fix thread priority test (zero the counter).
Change 3724978 by Arciel.Rekman
Linux: fix priority calculation.
- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.
Change 3725382 by Matt.Kuhlenschmidt
Guard against crashes and add more logging when actor creation fails.
Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed
#jira UE-47464
Change 3725559 by Matt.Kuhlenschmidt
Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows.
Moved some files around for better consistency
Change 3725640 by Arciel.Rekman
Fix Linux thread/process priorities.
- Should also speed up SCW on Linux by deprioritizing them less.
Change 3726101 by Matt.Kuhlenschmidt
Fix logic bug in USD child "kind" type resolving
Change 3726244 by Joe.Graf
Added an option to generate a minimal set of targets for cmake files
Added shader and config files to cmake file generation for searching within IDEs
Change 3726506 by Arciel.Rekman
Fix compile issue after DPI change.
Change 3726549 by Matt.Kuhlenschmidt
Remove unnecessary indirection to cached widgets in the hit test grid
Change 3726660 by Arciel.Rekman
Enable DPI switch on Linux.
Change 3726763 by Arciel.Rekman
Fix mismatching "noperspective" qualifier (UE-50807).
- Pull request #4080 by TTimo.
Change 3727080 by Michael.Trepka
Added support for editor's EnableHighDPIAwareness setting on Mac
Change 3727658 by Matt.Kuhlenschmidt
Fix shutdown crash if level editor is still referenced after the object system has been gc'd
#jira UE-51630
Change 3728270 by Matt.Kuhlenschmidt
Remove propertyeditor dependency from editorstyle
Change 3728291 by Arciel.Rekman
Linux: fix for a crash on a headless system (UE-51714).
- Preliminary change before merging to 4.18.
Change 3728293 by Arciel.Rekman
Linux: remove unneeded dependency on CEF.
- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.
Change 3728524 by Michael.Trepka
Copy of CL 3725570
Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)
#jira UE-51709
Change 3728875 by Michael.Trepka
Fixed compile error in Mac SlateOpenGLContext.cpp
Change 3728880 by Matt.Kuhlenschmidt
Guard against invalid worlds in thumbnail renderers
Change 3728924 by Michael.Trepka
Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.
#jira UE-51711
Change 3729288 by Joe.Graf
Added the .idea/misc.xml file generation to speed up CLion indexing
Change 3729935 by Michael.Dupuis
#jira UE-51722: Hide from UI invalid enum values
Change 3730234 by Matt.Kuhlenschmidt
Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.
#jira UE-51801
Change 3730349 by Michael.Dupuis
#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item
Change 3730438 by Lauren.Ridge
Cleaning up material layering UI functions
Change 3730723 by Jamie.Dale
Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers
#jira UE-51799
Change 3731008 by Lauren.Ridge
Changing Layers and Blends from proxy assets to real assets
Change 3731026 by Arciel.Rekman
libelf: make elf_end() visible (UE-51843).
- This repairs compilation for a case when CUDA is being used.
- Also added some missing files for ARM 32-bit.
Change 3731081 by Lauren.Ridge
New material layer test assets
Change 3731186 by Josh.Engebretson
Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets
#jira UE-50104
Change 3731188 by Mike.Erwin
Improve responsiveness of Open Asset dialog.
On large projects, there's a noticeable delay when opening and searching/filtering assets.
Stopwatch measurements on my machine (seconds for ~122,000 assets):
before with this CL
ctrl-P 1.4 0.45
search 1.8 0.55
CollectionManagerModule was the main culprit for search/filter slowness.
Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.
Change 3731682 by Arciel.Rekman
UnrealEd: Allow unattended commandlets to rename/save packages.
Change 3732305 by Michael.Dupuis
#jira UE-48434 : Only register if the foliage type still has a valid mesh
Change 3732361 by Matt.Kuhlenschmidt
Fix two settings objects being created in the transient package with the same name
#jira UE-51891
Change 3732895 by Josh.Engebretson
https://jira.it.epicgames.net/browse/UE-51706
If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
Adds DDC notification events for check/put and query for whether a shared DDC is in use.
#jira UE-51706
Change 3733025 by Arciel.Rekman
UBT: make sure new clang versions are invoked.
Change 3733311 by Mike.Erwin
Fix Linux compile warning from CL 3731188
It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.
Change 3733658 by Josh.Engebretson
Add a missing #undef LOCTEXT_NAMESPACE
Change 3734003 by Arciel.Rekman
Fix Windows attempting to use printf %ls and crashing at that (UE-51934).
Change 3734039 by Michael.Trepka
Fixed a couple of merge issues in Mac ApplicationCore
Change 3734052 by Michael.Trepka
One more Mac ApplicationCore fix
Change 3734244 by Lauren.Ridge
Fix for accessing Slate window on render thread
Change 3734950 by Josh.Engebretson
Fixing clang warning
Change 3734978 by Jamie.Dale
Relaxed enum property importing to allow valid numeric values to be imported too
This was previously made more strict which caused a regression in Data Table importing
#jira UE-51848
Change 3734999 by Arciel.Rekman
Linux: add LTO support and more.
- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
- Supports using llvm-ar and lld instead of ar/ranlib and ld.
- More build information printed (and in a better organized way).
- Native scripts updated to install packages with the appropriate tools on supported systems
- AutoSDKs updated to require a new toolchain (already checked in).
- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089
Change 3735268 by Matt.Kuhlenschmidt
Added support for canvas based DPI scaling.
-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
-The debug canvas for stats is always dpi scaled in editor and pie.
-Eliminated text scaling workaround now that the entire canvas is properly scaled
-Enabled canvas scaling in cascade UI
Change 3735329 by Matt.Kuhlenschmidt
Fix potential crash if an asset editor has an object deleted out from under it
#jira UE-51941
Change 3735502 by Arciel.Rekman
Fix compile issue (bShouldUpdateScreenPercentage).
Change 3735878 by Jamie.Dale
Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string
This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.
Change 3735881 by Jamie.Dale
JsonValue no longer stringifies whole numbers as floats
Change 3735884 by Jamie.Dale
Only allow enums to import integral values
Change 3735912 by Josh.Engebretson
Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications
#jira UE-48131
Change 3736280 by Matt.Kuhlenschmidt
Fix 0 dpi scale for canvases
#jira UE-51995
Change 3736298 by Matt.Kuhlenschmidt
Force focus of game viewports in vr mode
Change 3736374 by Jamie.Dale
Fixed some places where input chords were being used without testing that they had a valid key set
#jira UE-51799
Change 3738543 by Matt.Kuhlenschmidt
Better fix for edit condition crashes
#jira UE-51886
Change 3738603 by Lauren.Ridge
Copy over of drag and drop non-array onto array fix
Change 3739701 by Chris.Babcock
Fix crashlytics merge error
#jira UE-52064
#ue4
#android
[CL 3739980 by Matt Kuhlenschmidt in Main branch]
2017-11-06 18:22:01 -05:00
|
|
|
#include "MaterialEditor/DEditorStaticSwitchParameterValue.h"
|
|
|
|
|
#include "MaterialEditor/DEditorStaticComponentMaskParameterValue.h"
|
2019-09-06 19:47:59 -04:00
|
|
|
#include "MaterialEditor/DEditorTextureParameterValue.h"
|
|
|
|
|
#include "MaterialEditor/DEditorVectorParameterValue.h"
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3739701)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3358367 by tim.gautier
Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters
Change 3624848 by Jamie.Dale
Added a composite font for the editor (and Slate core)
This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.
This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.
This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.
Change 3654993 by Jamie.Dale
'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer
This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer
Breaking changes:
- Native has been renamed to FNativeFuncPtr.
- The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
- Use P_THIS if you were previously using the 'this' pointer in your native function.
Change 3699591 by Jamie.Dale
Added support for displaying and editing numbers in a culture correct way
Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).
#jira UE-4028
Change 3719568 by Jamie.Dale
Allow platforms to override the default ICU timezone calculation
Change 3622366 by Bradut.Palas
#jira UE-46677
Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.
Change 3622378 by Bradut.Palas
#jira UE-46590
we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.
Change 3622552 by Jamie.Dale
Added support for per-culture sub-fonts within a composite font
This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).
Change 3623170 by Jamie.Dale
Fixing warning
Change 3624846 by Jamie.Dale
Composite font cache optimizations
- Converted a typically small sized map to a sorted array + binary search.
- Converted the already sorted range array to use binary search.
- Contiguous ranges using the same typeface are now merged in the cache.
Change 3625576 by Cody.Albert
We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.
#jira UE-47971
Change 3626057 by Matt.Kuhlenschmidt
Expose EUmgSequencePlayMode to blueprints
#jira UE-49255
Change 3626556 by Matt.Kuhlenschmidt
Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning.
#jira UE-48922, UE-48957
Change 3627692 by Matt.Kuhlenschmidt
PR #3977: Source control submenu menu customization (Contributed by Kryofenix)
Change 3628600 by Arciel.Rekman
Added AutoCheckout to FAssetRenameManager for commandlet usage.
Change 3630561 by Richard.Hinckley
Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.
Change 3630656 by Richard.Hinckley
Compile fix.
Change 3630964 by Arciel.Rekman
Fix CrashReporterClient headless build.
Change 3631050 by Matt.Kuhlenschmidt
Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp
Causes major problems with resizing splitters in editor
Change 3631140 by Arciel.Rekman
OpenAL: update Linux version to 1.18.1 (UETOOL-1253)
- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
- Bulk of the change from Cengiz.Terzibas
#jira UETOOL-1253
Change 3632924 by Jamie.Dale
Added support for a catch-all fallback font within composite fonts
This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.
Change 3633055 by Jamie.Dale
Fixed some refresh issues in the font editor
Change 3633062 by Jamie.Dale
Fixed localization commands being reported as unknown
Change 3633906 by Nick.Darnell
UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working.
Change 3634070 by Arciel.Rekman
Display actually used values of material overrides.
Change 3634254 by Arciel.Rekman
Fix ResavePackages working poorly with projects on other drives (UE-49465).
#jira UE-49465
Change 3635985 by Matt.Kuhlenschmidt
Fixed typo in function name used by maps
PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)
Change 3636012 by Matt.Kuhlenschmidt
PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)
Change 3636706 by Lauren.Ridge
Epic Friday: Save parameters to child or sibling instance functionality
Change 3638706 by Jamie.Dale
Added an improved Japanese font to the editor
This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).
#jira UE-33268
Change 3639438 by Arciel.Rekman
Linux: Repaired ARM server build (UE-49635).
- Made Steam* plugins compile.
- Disabled OpenEXR as the libs aren't compiled (need to be done separately).
(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)
Change 3640625 by Matt.Kuhlenschmidt
PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)
Change 3640626 by Matt.Kuhlenschmidt
PR #4011: Remove space from filename (Contributed by projectgheist)
Change 3640697 by Matt.Kuhlenschmidt
PR #4010: PNG alpha fix (Contributed by mmdanggg2)
Change 3641137 by Jamie.Dale
Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch
It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.
Change 3641351 by Jamie.Dale
Fixing incorrect weights on the Japanese sub-font
Change 3641356 by Jamie.Dale
Fixing inconsistent font sizes between CoreStyle and EditorStyle
Change 3641710 by Jamie.Dale
Fixed pure-virtual function call on UMulticastDelegateProperty
Change 3641941 by Lauren.Ridge
Adding a Parameter Details tab to the Material Editor so users can change default parameter details
Change 3644141 by Jamie.Dale
Added an improved Korean font to the editor
This is only used when displaying Korean text when the editor is set to Korean
Change 3644213 by Arciel.Rekman
Fix the side effects of a fix for UE-49465.
- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.
#jira UE-49465
Change 3644777 by Jamie.Dale
Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished
Change 3644879 by tim.gautier
QAGame: Optimized assets for Procedural Foliage testing
- Added camera bookmarks to Stations in QA-Foliage
- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
- Fixed up redirectors
Change 3645109 by Matt.Kuhlenschmidt
PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)
Change 3645114 by Matt.Kuhlenschmidt
PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)
Change 3645116 by Matt.Kuhlenschmidt
PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)
Change 3645118 by Matt.Kuhlenschmidt
PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)
Change 3645876 by Arciel.Rekman
Linux: fix submenus of context menu not working (UE-47639).
- Change by icculus (Ryan Gordon).
- QA-ClickHUD seems to be not affected by this change (it is already broken alas).
#jira UE-47639
Change 3648088 by Jamie.Dale
Fixed some case-sensitivity issues with FText format argument names/pins
These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.
#jira UE-47122
Change 3648097 by Jamie.Dale
Moved common macOS/iOS localization implementation into FApplePlatformMisc
#jira UE-49940
Change 3650858 by Arciel.Rekman
UBT: improve CodeLite project generator (UE-49400).
- PR #3987 submitted by yaakuro (Cengiz Terzibas).
#jira UE-49400
Change 3651231 by Arciel.Rekman
Linux: default to SM5 for Vulkan.
- Change by Timothee.Bessett.
Change 3653627 by Matt.Kuhlenschmidt
PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)
Change 3653628 by Matt.Kuhlenschmidt
PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)
Change 3653984 by Jamie.Dale
Fixed some redundant string construction
Change 3658528 by Joe.Graf
UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files
Change 3658594 by Jamie.Dale
Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues
#jira UE-27263
Change 3659643 by Michael.Trepka
Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior
#jira UETOOL-1238
Change 3661908 by Matt.Kuhlenschmidt
USD asset importing improvements
Change 3664100 by Matt.Kuhlenschmidt
Fix static analysis
Change 3664107 by Matt.Kuhlenschmidt
PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)
Change 3664125 by Matt.Kuhlenschmidt
PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)
Change 3664340 by Jamie.Dale
PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)
Change 3664403 by Jamie.Dale
PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)
Change 3664539 by Jamie.Dale
PR #3280: Added EditableText functionality (Contributed by projectgheist)
Change 3665433 by Alexis.Matte
When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
#jira UE-50231
Change 3666747 by Cody.Albert
Change 3669280 by Jamie.Dale
PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)
Change 3669718 by Jamie.Dale
PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)
Change 3670838 by Alexis.Matte
Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
#jira UE-50387
Change 3671559 by Matt.Kuhlenschmidt
Update SimpleUI automation test ground truth
#jira UE-50325
Change 3671587 by Alexis.Matte
Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
#jira UE-50147
Change 3671730 by Jamie.Dale
Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances
Change 3672104 by Michael.Dupuis
#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings
Change 3674906 by Alexis.Matte
Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
#jira UE-50248
Change 3674942 by Matt.Kuhlenschmidt
Fix static analysis
Change 3675401 by Alexis.Matte
-fix export animation, do not truncate the last frame anymore
-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.
#jira UE-48231
Change 3675990 by Alexis.Matte
Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
This is to avoid driving random vertex with old morph target.
#jira UE-50391
Change 3676169 by Alexis.Matte
When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.
Change 3676396 by Alexis.Matte
Make all LOD 0 name consistent in staticmesh editor
#jira UE-49461
Change 3677730 by Cody.Albert
Enable locking of Persistent Level in Levels tab
#jira UE-50686
Change 3677838 by Jamie.Dale
Replaced broken version of Roboto Light
Change 3679619 by Alexis.Matte
Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
#jira UE-50001
Change 3680093 by Alexis.Matte
Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.
Change 3680931 by Arciel.Rekman
SlateDialogs: show image icon for *.tga (UE-25106).
- Also reworked the logic somewhat.
#jira UE-25106
Change 3681966 by Yannick.Lange
MaterialEditor post-process preview.
#jira UE-45307
Change 3682407 by Lauren.Ridge
Fixes for material editor compile errors
Change 3682628 by Lauren.Ridge
Content browser filters for Material Layers, Blends, and their instances
Change 3682725 by Lauren.Ridge
Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default
Change 3682921 by Lauren.Ridge
Fix for instance layers not initializing fully
Change 3682954 by Lauren.Ridge
Creating Material Layer Test Assets
Change 3683582 by Alexis.Matte
Fix static analysis build
Change 3683614 by Matt.Kuhlenschmidt
PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)
Change 3684130 by Lauren.Ridge
Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3686289 by Arciel.Rekman
Remove the pessimization (UE-23791).
Change 3686455 by Lauren.Ridge
Fixes for adding/removing a layer parameter from the parent not updating the child
Change 3686829 by Jamie.Dale
No longer include trailing whitespace in the justification calculation for soft-wrapped lines
#jira UE-50266
Change 3686970 by Lauren.Ridge
Making material parameter preview work for functions as well
Change 3687077 by Jamie.Dale
Fixed crash using FActorDetails with the struct details panel
Change 3687152 by Jamie.Dale
Fixed the row structure tag not appearing in the Content Browser for Data Table assets
The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.
#jira UE-48691
Change 3687174 by Lauren.Ridge
Fix for material layer sub-parameters showing up in the default material parameters panel
Change 3688100 by Lauren.Ridge
Fixing static analysis error
Change 3688317 by Jamie.Dale
Fixed crash using the widget reflector in a cooked game
Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.
Change 3689054 by Jamie.Dale
Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes
#jira UE-45751
Change 3689513 by Jamie.Dale
Fixed justification bug with RTL text caused by CL# 3686829
Also implemented the same alignment fix for visually left-aligned RTL text.
#jira UE-50266
Change 3690231 by Lauren.Ridge
Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor
Change 3690234 by Lauren.Ridge
Adding Material Layers Function Parameter to Static Parameter Compare
Change 3690750 by Chris.Bunner
Potential nullptr crash.
Change 3690751 by Chris.Bunner
Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.
Change 3691010 by Jamie.Dale
Fixed some clipping issues that could occur with right-aligned text
FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)
#jira UE-46760
Change 3691091 by Jamie.Dale
Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type
Change 3691134 by Alexis.Matte
Make sure we instance also the collision mesh when exporting a level to fbx file.
#jira UE-51066
Change 3691157 by Lauren.Ridge
Fix for reset to default not refreshing sub-parameters
Change 3691192 by Jamie.Dale
Fixed Content Browser selection resetting when changing certain view settings
#jira UE-49611
Change 3691204 by Alexis.Matte
Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
#jira UE-51023
Change 3692335 by Lauren.Ridge
Setting displayed asset to equal filter asset if no instance has been selected
Change 3692479 by Jamie.Dale
Fixed whitespace
Change 3692508 by Alexis.Matte
Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
We also prevent the export dialog to show
#jira UE-50973
Change 3692639 by Jamie.Dale
Translation Editor now shows stale translations as "Untranslated"
Change 3692743 by Lauren.Ridge
Smaller blend icons, added icon size override to FObjectEntryBox
Change 3692830 by Alexis.Matte
Fix linux build
Change 3692894 by Lauren.Ridge
Tooltip on "Parent" in material layers
Change 3693141 by Jamie.Dale
Removed dead code
FastDecimalFormat made this redundant
Change 3693580 by Jamie.Dale
Added AlwaysSign number formatting option
#jira UE-10310
Change 3693784 by Jamie.Dale
Fixed assert extracting the number formatting rules for Arabic
It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.
#jira UE-10310
Change 3694428 by Arciel.Rekman
Linux: make directory watch request a warning so they don't block cooking.
- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html
Change 3694458 by Matt.Kuhlenschmidt
Made duplicate keybinding warning non-fatal
Change 3694496 by Alexis.Matte
fix static analysis build
Change 3694515 by Jamie.Dale
Added support for culture correct parsing of decimal numbers
#jira UE-4028
Change 3694621 by Jamie.Dale
Added a variant of FastDecimalFormat::StringToNumber that takes a string length
This can be useful if you want to convert a number from within a non-null terminated string
#jira UE-4028
Change 3694958 by Jamie.Dale
Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing
You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.
#jira UE-4028
Change 3695083 by Alexis.Matte
Optimisation of the morph target import
- We now compute only the normal for the shape the tangent are not necessary
- The async tasks are create when there is some available cpu thread to avoid filling the memory
- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
#jira UE-50945
Change 3695122 by Jamie.Dale
GetCultureAgnosticFormattingRules no longer returns a copy
Change 3695835 by Arciel.Rekman
TestPAL: greatly expanded malloc test.
Change 3695918 by Arciel.Rekman
TestPAL: Added thread priority test.
Change 3696589 by Arciel.Rekman
TestPAL: tweak thread priorities test (better readability).
Change 3697345 by Alexis.Matte
Fix reorder of material when importing a LOD with new material
#jira UE-51135
Change 3699590 by Jamie.Dale
Updated SGraphPinNum to use a numeric editor
#jira UE-4028
Change 3699698 by Matt.Kuhlenschmidt
Fix crash opening the level viewport context menu if the actor-component selection is out of sync
#jira UE-48444
Change 3700158 by Arciel.Rekman
Enable packaging for Android Vulkan on Linux (UETOOL-1232).
- Change by Cengiz Terzibas
Change 3700224 by Arciel.Rekman
TestPAL: fixed a memory leak.
Change 3700775 by Cody.Albert
Don't need to initialize EnvironmentCubeMap twice.
Change 3700866 by Michael.Trepka
PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)
#jira UE-41643
Change 3701132 by Michael.Trepka
Copy of CL 3671538
Fixed issues with editor's game mode in high DPI on Mac.
#jira UE-49947, UE-51063
Change 3701421 by Michael.Trepka
Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression
Change 3701495 by Alexis.Matte
Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
#jira UE-UE-51359
Change 3702982 by Jamie.Dale
Cleaned up some localization setting names
These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.
Change 3703517 by Arciel.Rekman
TestPAL: improved thread test.
- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).
Change 3704378 by Michael.Trepka
Disable Zoom button on Mac if project requests a resizeable window without it.
#jira UE-51335
Change 3706316 by Jamie.Dale
Fixed the asset search suggestions list closing if you clicked on its scrollbar
#jira UE-28885
Change 3706855 by Alexis.Matte
Support importing animation that has some keys with negative time
#jira UE-51305
Change 3709634 by Matt.Kuhlenschmidt
PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)
Change 3711085 by Michael.Trepka
Reenabled UBT makefiles on Mac
Change 3713049 by Josh.Engebretson
The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect.
#jira UE-51319
Change 3713144 by Lauren.Ridge
Fixing automated test error
#jira UE-50982
Change 3713395 by Alexis.Matte
Fix auto import mountpoint
#jira UE-51524
Change 3713881 by Michael.Trepka
Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.
#jira UE-31093
Change 3714197 by Michael.Trepka
Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.
#jira UE-47915
Change 3714911 by Joe.Graf
Merge of cmake changes from Dev-Rendering
Change 3715973 by Michael.Trepka
Disable OS close button on Windows if project settings request that
#jira UE-45522
Change 3716390 by Lauren.Ridge
The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.
#jira UE-50916
Change 3716529 by Josh.Engebretson
Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1
#jira UE-51341
Change 3716885 by Josh.Engebretson
Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary.
#jira UE-48572
Change 3716929 by Josh.Engebretson
Unshelved from pending changelist '3364093':
PR #3420: Exe's icons and properties (Contributed by projectgheist)
Change 3716937 by Josh.Engebretson
Unshelved from pending changelist '3647428':
PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)
Change 3717002 by Josh.Engebretson
Fix FileReference/string conversion
Change 3717355 by Joe.Graf
Fixed CMake file generation on Windows including Engine/Source/ThirdParty source
Change 3718256 by Arciel.Rekman
TestPAL: slight mod to the malloc test.
- Touch the allocated memory to check actual resident usage.
Change 3718290 by Arciel.Rekman
BAFO: place descriptor after the allocation to save some VIRT memory.
- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.
Change 3718508 by Michael.Trepka
Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)
#jira UE-46148
Change 3718855 by Lauren.Ridge
Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.
Change 3718932 by Cody.Albert
Update ActorSequence plugin loading phase to PreDefault
#jira UE-51612
Change 3719378 by tim.gautier
QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
Added additional Text Widgets for testing
Change 3719413 by Lauren.Ridge
Resubmit of content browser favorites
Change 3719803 by Yannick.Lange
VREditor: Fix crash with null GEditor
#jira UE-50103
Change 3721127 by tim.gautier
QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
- Added M_ParamDefaults and MF_ParamDefaults
- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions
Change 3721255 by Alexis.Matte
Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
#jira UE-51363
Change 3721594 by Lauren.Ridge
Material Blends now have plane mesh previews in their icons.
Change 3722072 by tim.gautier
QAGame: Updated MF_ParamDefaults - using red channel as roughness
Updated M_ParamDefaults - tweaked Scalar values
Change 3722180 by Michael.Trepka
Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.
#jira UE-25941
Change 3722220 by Michael.Trepka
Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly
#jira UE-40246
Change 3722806 by Lauren.Ridge
Fixing non-editor compiles
Change 3722914 by Alexis.Matte
Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.
#jira UE-51665
Change 3723446 by Michael.Trepka
Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME
Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.
#jira UE-48257
Change 3723505 by Matt.Kuhlenschmidt
Fix duplicate actors being created for USD primitives that specify a custom actor class
Change 3723555 by Matt.Kuhlenschmidt
Fix crash loading the gameplayabilities module
#jira UE-51693
Change 3723557 by Matt.Kuhlenschmidt
Fixed tooltip on viewport dpi scaling option
Change 3723870 by Lauren.Ridge
Fixing incorrect reset to default visibility, adding clear behavior to fields
Change 3723917 by Arciel.Rekman
Linux: fix compilation with glibc 2.26+ (UE-51699).
- Fixes compilation on Ubuntu 17.10 among others.
(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3723918 by Arciel.Rekman
Linux: do not test for popcnt presence unnecessarily (UE-51677).
(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3724229 by Arciel.Rekman
Fix FOutputDeviceStdOutput to use printf() on Unix platforms.
Change 3724261 by Arciel.Rekman
TestPAL: fix thread priority test (zero the counter).
Change 3724978 by Arciel.Rekman
Linux: fix priority calculation.
- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.
Change 3725382 by Matt.Kuhlenschmidt
Guard against crashes and add more logging when actor creation fails.
Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed
#jira UE-47464
Change 3725559 by Matt.Kuhlenschmidt
Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows.
Moved some files around for better consistency
Change 3725640 by Arciel.Rekman
Fix Linux thread/process priorities.
- Should also speed up SCW on Linux by deprioritizing them less.
Change 3726101 by Matt.Kuhlenschmidt
Fix logic bug in USD child "kind" type resolving
Change 3726244 by Joe.Graf
Added an option to generate a minimal set of targets for cmake files
Added shader and config files to cmake file generation for searching within IDEs
Change 3726506 by Arciel.Rekman
Fix compile issue after DPI change.
Change 3726549 by Matt.Kuhlenschmidt
Remove unnecessary indirection to cached widgets in the hit test grid
Change 3726660 by Arciel.Rekman
Enable DPI switch on Linux.
Change 3726763 by Arciel.Rekman
Fix mismatching "noperspective" qualifier (UE-50807).
- Pull request #4080 by TTimo.
Change 3727080 by Michael.Trepka
Added support for editor's EnableHighDPIAwareness setting on Mac
Change 3727658 by Matt.Kuhlenschmidt
Fix shutdown crash if level editor is still referenced after the object system has been gc'd
#jira UE-51630
Change 3728270 by Matt.Kuhlenschmidt
Remove propertyeditor dependency from editorstyle
Change 3728291 by Arciel.Rekman
Linux: fix for a crash on a headless system (UE-51714).
- Preliminary change before merging to 4.18.
Change 3728293 by Arciel.Rekman
Linux: remove unneeded dependency on CEF.
- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.
Change 3728524 by Michael.Trepka
Copy of CL 3725570
Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)
#jira UE-51709
Change 3728875 by Michael.Trepka
Fixed compile error in Mac SlateOpenGLContext.cpp
Change 3728880 by Matt.Kuhlenschmidt
Guard against invalid worlds in thumbnail renderers
Change 3728924 by Michael.Trepka
Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.
#jira UE-51711
Change 3729288 by Joe.Graf
Added the .idea/misc.xml file generation to speed up CLion indexing
Change 3729935 by Michael.Dupuis
#jira UE-51722: Hide from UI invalid enum values
Change 3730234 by Matt.Kuhlenschmidt
Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.
#jira UE-51801
Change 3730349 by Michael.Dupuis
#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item
Change 3730438 by Lauren.Ridge
Cleaning up material layering UI functions
Change 3730723 by Jamie.Dale
Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers
#jira UE-51799
Change 3731008 by Lauren.Ridge
Changing Layers and Blends from proxy assets to real assets
Change 3731026 by Arciel.Rekman
libelf: make elf_end() visible (UE-51843).
- This repairs compilation for a case when CUDA is being used.
- Also added some missing files for ARM 32-bit.
Change 3731081 by Lauren.Ridge
New material layer test assets
Change 3731186 by Josh.Engebretson
Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets
#jira UE-50104
Change 3731188 by Mike.Erwin
Improve responsiveness of Open Asset dialog.
On large projects, there's a noticeable delay when opening and searching/filtering assets.
Stopwatch measurements on my machine (seconds for ~122,000 assets):
before with this CL
ctrl-P 1.4 0.45
search 1.8 0.55
CollectionManagerModule was the main culprit for search/filter slowness.
Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.
Change 3731682 by Arciel.Rekman
UnrealEd: Allow unattended commandlets to rename/save packages.
Change 3732305 by Michael.Dupuis
#jira UE-48434 : Only register if the foliage type still has a valid mesh
Change 3732361 by Matt.Kuhlenschmidt
Fix two settings objects being created in the transient package with the same name
#jira UE-51891
Change 3732895 by Josh.Engebretson
https://jira.it.epicgames.net/browse/UE-51706
If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
Adds DDC notification events for check/put and query for whether a shared DDC is in use.
#jira UE-51706
Change 3733025 by Arciel.Rekman
UBT: make sure new clang versions are invoked.
Change 3733311 by Mike.Erwin
Fix Linux compile warning from CL 3731188
It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.
Change 3733658 by Josh.Engebretson
Add a missing #undef LOCTEXT_NAMESPACE
Change 3734003 by Arciel.Rekman
Fix Windows attempting to use printf %ls and crashing at that (UE-51934).
Change 3734039 by Michael.Trepka
Fixed a couple of merge issues in Mac ApplicationCore
Change 3734052 by Michael.Trepka
One more Mac ApplicationCore fix
Change 3734244 by Lauren.Ridge
Fix for accessing Slate window on render thread
Change 3734950 by Josh.Engebretson
Fixing clang warning
Change 3734978 by Jamie.Dale
Relaxed enum property importing to allow valid numeric values to be imported too
This was previously made more strict which caused a regression in Data Table importing
#jira UE-51848
Change 3734999 by Arciel.Rekman
Linux: add LTO support and more.
- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
- Supports using llvm-ar and lld instead of ar/ranlib and ld.
- More build information printed (and in a better organized way).
- Native scripts updated to install packages with the appropriate tools on supported systems
- AutoSDKs updated to require a new toolchain (already checked in).
- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089
Change 3735268 by Matt.Kuhlenschmidt
Added support for canvas based DPI scaling.
-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
-The debug canvas for stats is always dpi scaled in editor and pie.
-Eliminated text scaling workaround now that the entire canvas is properly scaled
-Enabled canvas scaling in cascade UI
Change 3735329 by Matt.Kuhlenschmidt
Fix potential crash if an asset editor has an object deleted out from under it
#jira UE-51941
Change 3735502 by Arciel.Rekman
Fix compile issue (bShouldUpdateScreenPercentage).
Change 3735878 by Jamie.Dale
Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string
This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.
Change 3735881 by Jamie.Dale
JsonValue no longer stringifies whole numbers as floats
Change 3735884 by Jamie.Dale
Only allow enums to import integral values
Change 3735912 by Josh.Engebretson
Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications
#jira UE-48131
Change 3736280 by Matt.Kuhlenschmidt
Fix 0 dpi scale for canvases
#jira UE-51995
Change 3736298 by Matt.Kuhlenschmidt
Force focus of game viewports in vr mode
Change 3736374 by Jamie.Dale
Fixed some places where input chords were being used without testing that they had a valid key set
#jira UE-51799
Change 3738543 by Matt.Kuhlenschmidt
Better fix for edit condition crashes
#jira UE-51886
Change 3738603 by Lauren.Ridge
Copy over of drag and drop non-array onto array fix
Change 3739701 by Chris.Babcock
Fix crashlytics merge error
#jira UE-52064
#ue4
#android
[CL 3739980 by Matt Kuhlenschmidt in Main branch]
2017-11-06 18:22:01 -05:00
|
|
|
#include "MaterialPropertyHelpers.h"
|
|
|
|
|
#include "MaterialEditor/DEditorMaterialLayersParameterValue.h"
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3807299)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3528776 by Yannick.Lange
Allow thumbnails to be captured from a viewport always.
#jira UE-45392
Change 3564359 by Yannick.Lange
Back out part of changelist 3528776: Revert allowing thumbnails to be captured from a viewport to fix UE-47827 & UE-47785.
#jira UE-47785, UE-47827
Change 3740671 by Matt.Kuhlenschmidt
Make the font editor canvas respect dpi scale
Change 3740810 by Josh.Engebretson
PR #4138: Log GenerateProjectFiles to file when using UVS (Contributed by projectgheist)
#jira UE-51358
Change 3740939 by Cody.Albert
Fixing some #ifdefs that should be #ifs
Change 3741089 by Alexis.Matte
Make sure bImportBoneTracks is set to true when importing into level
#jira UE-51999
Change 3741101 by Alexis.Matte
Fix the import material search
#jira UE-51857
Change 3741690 by Jamie.Dale
Guard against an invalid index in SLocalizationCommandletExecutor::Tick
#jira UE-52067
Change 3741710 by Jamie.Dale
Made a static variable also const
Change 3741724 by Michael.Dupuis
Added missing shader cache
Change 3742037 by Lauren.Ridge
Details panels can now "own" a color picker so a different details panel refreshing doesn't close it. Also fixed refreshing state of the graph after changing texture or color parameter values
Change 3742250 by Matt.Kuhlenschmidt
PR #4185: Output Log Filter tooltip shows %s instead of category. (Contributed by LordNed)
Change 3742308 by Lauren.Ridge
Adding axis input to the material editor's viewport client
Change 3742380 by Matt.Kuhlenschmidt
USD importer improvements
- USD now stores source file information for reimports
- Fixed bug where no geometry would be imported if an exporter had set a time code even without animated data
- Prevent a crash if a mesh doesnt have enough valid data to be imported
Change 3742536 by Matt.Kuhlenschmidt
Remove usd wrapper test project
Change 3743564 by Alexis.Matte
Fix skeletal mesh screen size auto set value when importing a LOD
#test none
#jira UE-52100
Change 3743582 by Lauren.Ridge
Fixing non-desktop compiles
Change 3743598 by Lauren.Ridge
Fixing shadowed variable by renaming the global color picker weak ptr variable.
Change 3743636 by Lauren.Ridge
Creating a new parameter immediately allows naming
Change 3743855 by Michael.Dupuis
Added missing shader from cache
Change 3744277 by Lauren.Ridge
Don't show empty Global group if it only contained the material layer param.
Change 3744330 by Lauren.Ridge
Clarifying "no parameter" text
Change 3744529 by Lauren.Ridge
Making Save to Child and Save To Sibling buttons work for material layer params, show on material layer param panel
Change 3744668 by Chris.Bunner
Added shared layer input collection asset, a list of float/texture redirectors that allow setting globally in a material graph then retrieving within layer/blend graphs.
Added output for number of unique shaders generated by a particular material instance.
Show instruction counts when working on a material layer.
Relaxed restrictions on material layers, base MA input is now optional.
#jira UETOOL-1271, UETOOL-1278, UETOOL-1279
Change 3744669 by Chris.Bunner
Added automated test for material layers, layer/blend instances and shared inputs.
Change 3744754 by Laz.Matech
Adding localization data to QAGame for the Realtime Preview localization test.
#jira none
Change 3744860 by Michael.Dupuis
#jira UE-52049 : Do not update random stream in most case, only when adding new instances, or filling from built data
Change 3744965 by Chris.Bunner
Rebuilt lighting in automated test map and updated reflection capture screenshot.
Change 3746015 by Michael.Dupuis
#jira UE-52090: Added missing shader for forward rendering
Change 3746038 by Michael.Dupuis
#jira UE-51494: Make sure index is valid for this instance as instances from template and instance could mismatch due to in level changes
Change 3746076 by Michael.Dupuis
Removed unused code
Change 3746998 by Tim.Gautier
QAGame: - Renamed UMG_RealtimePreview > UMG_InEditorPreview
- Moved UMG_InEditorPreview into UMG > Localization, setting up for future Localization tests
Change 3747206 by Arciel.Rekman
Linux: make UI scale more coarse to prevent unnecessary scaling (UE-52086).
- Monitors whose physical dimensions fall in range of 80-110 DPI should still have scale=1.0.
(Edigrating CL 3740942 from Release-4.18 to Dev-Editor)
Change 3747211 by Arciel.Rekman
Make failure to launch SCW more apparent to the user (UE-47263).
- Fixes frequent crash on Linux.
(Merging 3747070 from Release-4.18 to Dev-Editor)
Change 3747726 by Tim.Gautier
QAGame: Resubmitting updated Loc files
Change 3747872 by Tim.Gautier
QAGame: Resubmitting compiled Loc assets
Change 3748118 by Lauren.Ridge
Adding help text to the material layers preview tab
Change 3748398 by Lauren.Ridge
Fixing tooltips for the material layer read-only preview
Change 3748565 by Arciel.Rekman
Linux: fix RHIs settings being wrong when removed via project properties (UE-51203).
- This was a deeper issue with config system than just Linux RHIs.
- This is a better fix than one submitted to 4.18 branch in CL 3747086.
Change 3749441 by Matt.Kuhlenschmidt
PR #4201: Fix a typo in a comment. (Contributed by dneelyep)
Change 3749442 by Matt.Kuhlenschmidt
PR #4195: Incorrect specifier used for FText::Format (Contributed by projectgheist)
Change 3749496 by Matt.Kuhlenschmidt
Fix static analysis
Change 3749805 by Lauren.Ridge
Fixing reset to default on MaterialLayerParam in base material
Change 3749838 by Lauren.Ridge
Also correctly resetting names and layer states
Change 3750442 by Mieszko.Zielinski
Added a safety check which addresses the crash #UE4
Note that this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't contain any duplicates and will be inplemented in Dev-Framework.
#jira UE-52123
Change 3752266 by Arciel.Rekman
OpenGL: remove PLATFORM_WINDOWS exceptions.
- Discrepancy in behavior between Windows and Linux OpenGL is unhelpful for bug reproducibility.
- VAB bug should have been fixed long ago (on both platforms).
Change 3752929 by Arciel.Rekman
Linux: avoid crashing on unknown drivers.
- See https://answers.unrealengine.com/questions/724100/crashes-on-startup-after-first-run.html
- Checks in IsDeviceIntel() and such fail if the drivers were not detected.
Change 3753254 by Michael.Dupuis
Added missing shader for shader cache
Change 3753426 by Michael.Dupuis
#jira UE-5751: Added the possibility to change material instance exposed params at runtime using a MID for texture, vector and scalar for 1 component or all components
Change 3753440 by Alexis.Matte
Fix fbx scene importer morph target import crash
#jira UE-52255
Change 3753457 by Michael.Dupuis
build fix
Change 3753700 by Chris.Bunner
Make GetSharedInput preview fallback always available in editor as this should handle previews, thumbnails and other editor-only cases.
Refactor to remove duplicate code in material translator.
Material layer expressions are required for client load, fixes cooked builds using layer instances in the base material layer stack.
Change 3754760 by Chris.Bunner
Tidying up EngineTest/ShaderModels map.
Change 3754765 by Arciel.Rekman
Avoid placing tooltip windows under the cursor (UE-12288).
- Fixes inability to use some corners of the screen on Linux (the tooltips there aren't click-through).
Change 3754788 by Matt.Kuhlenschmidt
Fix details panel crash after compiling blueprints that have edit conditon properties
Change 3754933 by Christina.TempelaarL
Fixed typo in heightLerp (transistion->transition).
#jira UE-46736
Change 3754946 by Cody.Albert
Update loading movie code to properly calculate delta time when throttled at 60fps
Change 3755059 by Jamie.Dale
Fixed game preview language not updating in realtime while PIE was enabled
#jira UE-52209
Change 3755130 by Jamie.Dale
Fixed game preview language not updating from native when switching between preview languages
#jira UE-52348
Change 3755664 by Michael.Dupuis
Fixed compile warning
Change 3755714 by Yannick.Lange
Always allow capturing thumbnails from viewport.
This also hides the thumbnail editing UI when a thumbnail was captured from a viewport.
Change 3755944 by Alexis.Matte
Fix crash when importing morph target with "built in" tangent option
#jira UE-52319
Change 3756109 by Christina.TempelaarL
fixed FBX importer Import Textures tooltip, UMaterial -> Material in tooltip text
#jira UE-48389
Change 3756169 by Jamie.Dale
Added plural form pattern to SContentBrowser::GetPathText
Change 3756493 by Laz.Matech
Updating Localization content to further test InEditor Preview Language in UMG
#jira none
Change 3758336 by Alexis.Matte
Fix a crash when importing morph target there was a unsync between some buffer depending on the import options
#jira UE-52319
Change 3758947 by Jamie.Dale
Fixed cursor position regression in search boxes
This was caused by a call to SetText that was added in CL# 3627864
This caused the text to update as it was changed, which made the cursor jump to the end of the text and made it impossible to type in the middle of a search term.
This was done as a bound FText value had been passed to the InitalText of SSearchBox, which made the text resolution behave strangely. InitalText should always be a value, and SSearchBox now resolves any bindings during its constructor.
#jira UE-48874
Change 3759000 by Laz.Matech
Submitting the .PO file for CL 3756493
#jira none
Change 3759480 by Matt.Kuhlenschmidt
Safe guard against brush details crash
#jira UE-52278
Change 3759665 by Matt.Kuhlenschmidt
PR #4214: UE-52249: Use valid PreviewShadowsIndicatorMaterialName (Contributed by projectgheist)
Change 3761211 by Matt.Kuhlenschmidt
Remove the restriction that a level must be writable to be locked/unlocked.
Fixed duplicate icons being used by the level browser
Change 3761304 by Chris.Bunner
MaterialAttributeLayers graph node BaseMA input is no longer required.
Note: Requires "Use Preview Value" set to true on inputs.
Change 3761307 by Chris.Bunner
New material layers and blends will have "Use Preview Value" set to true by default to avoid the need for connected inputs - Missed file on previous commit.
Change 3761357 by Chris.Bunner
Renamed material shared input enum.
Change 3761419 by Chris.Bunner
Updating material layers automated test assets after recent changes.
Reverted some naming changes so existing screenshot tests can be reused.
Change 3762058 by tim.gautier
QAGame: Adding Material Layer assets for testing (Content/Materials/LayerFunction)
Change 3763328 by Matt.Kuhlenschmidt
Fix Slate warning at editor startup
Change 3763354 by Alexis.Matte
Fix skeletal mesh material assign when reducing a LOD that was import from a file using simplygon reduction
#jira UE-52505
Change 3763501 by Matt.Kuhlenschmidt
Prevent shared asset thumbnail pools from having their resources forcefully released when they are in use. ReleaseResources is now private and only called on destruction of the pool
Change 3763574 by Matt.Kuhlenschmidt
Fix slate material box brushes not being keyed off image size
#jira UE-40219
Change 3763678 by Jamie.Dale
Disable realtime level editor viewport if running under remote desktop
This makes the main editor window much more responsive by default under remote desktop
Change 3763679 by Jamie.Dale
Added asset caching metrics for the loc gather
Change 3763693 by Matt.Kuhlenschmidt
Changed the code that activates the actor details tab when selection changes to a flash. There are simply too many things that change the selection and steal focus away from a tab being used
#jira UE-51754
Change 3763826 by Michael.Dupuis
Fixed Fortnite cooking crash
Change 3763864 by Harrison.Moore
Adding New Default 'LayerBlend' assets
Change 3764028 by Christina.TempelaarL
#jira UE-47695 Auto LOD bug
Moved the sections dropdown to the LOD Picker category and modified Custom cb behavior, based on suggestions from charlie.
Change 3764031 by Christina.TempelaarL
#jira UE-47695 Auto LOD in StaticMeshViewer
moved LOD combo widget to LOD picker category and hide custom checkboxes until custom checked.
Change 3764076 by tim.gautier
QAGame: Submitting UMG_Multitouch_test for initial Multitouch testing
Change 3764263 by Matt.Kuhlenschmidt
Fix the floor mesh thumbnail
Change 3764284 by Chris.Bunner
Removing some asserts for cases that can validly fail and are already handled.
Change 3764372 by Matt.Kuhlenschmidt
PR #4196: Show edit icons in editor (Contributed by projectgheist)
Change 3764388 by Chris.Bunner
Fixing logic for material, function and instance updating active materials and instances and their editors.
Change 3764674 by Harrison.Moore
test materials added, Blend updates
Change 3764681 by Harrison.Moore
Adding HMtest map
Change 3766238 by Chris.Bunner
Material layer callers need to let their internal material function calls update their inputs/outputs.
Change 3766556 by Jamie.Dale
Fixed crashes that could happen if some of the data table panels were closed
We now always create the underlying widgets, even if they're currently hidden from view
#jira UE-52552
Change 3767753 by Chris.Bunner
When rebuilding a material function instance editor we must re-create and re-apply the proxies as the expressions have likely changed. Take care to maintain local parameter changes as these have not been saved yet.
Change 3768719 by Michael.Dupuis
#jira UE-52521: Prevent possible crash if a segment have no point or invalid point
Change 3769157 by Jamie.Dale
Fixed incorrect text selection if selecting via double click beyond the bounds of the line
It would previously select the second to last word, rather than the last word
#jira UE-51609
Change 3769159 by Harrison.Moore
Belica Test update, New layer blends updated with texture type fix.
Change 3769205 by Jamie.Dale
Fixed Windows file save dialog not appending the correct extension when there were multiple options available
#jira UE-52180
Change 3769220 by Harrison.Moore
Layer blend tweaks
Change 3769292 by Jamie.Dale
Removing redundant code
Applying the correct package ID, only to then strip it off again is rather pointless
Change 3769479 by Arciel.Rekman
UBT: Use response files for compiler when compiling for Linux.
- Some command lines are too long when cross-compiling on Windows.
Change 3769920 by Arciel.Rekman
Linux: convert yet another initialization crash to a user-friendly message (UE-52457).
#jira UE-52457
Change 3771055 by Alexis.Matte
Make sure we set the Used by morph target material flag to material use by the morphtarget instead of all skinned mesh component
Use the morph vertex factory only for section that has active morph target
#jira UE-51483
Change 3771135 by Michael.Dupuis
Fixed fortnite cooking
Change 3773054 by Yannick.Lange
Avoid loading viewport interaction assets when starting the editor.
Change 3774184 by Arciel.Rekman
Linux: disabled some gdb visualizers until the issue is fixed.
- CL 3773942 by CengizT.
Change 3774303 by Matt.Kuhlenschmidt
Pull requests to fix various typos
Change 3774305 by Matt.Kuhlenschmidt
PR #4237: Visual Studio Repeatedly Opens (UE-51608) (Contributed by LordNed)
#jira UE-51608
Change 3774701 by Arciel.Rekman
OpenGL: fix ARB callback errors when hitting Build Lighting.
- Merged from 4.18 shelf.
Change 3775812 by Matt.Kuhlenschmidt
Fix One-off crash undo-ing while working with Material Params / Material Functions
#jira UE-52680
Change 3775849 by Matt.Kuhlenschmidt
More info for UE-52610
Change 3775850 by Matt.Kuhlenschmidt
Guard against mesh paint crashes
#jira UE-52618
Change 3775904 by Matt.Kuhlenschmidt
Added logging to track down window shutdown issues
Change 3775913 by Matt.Kuhlenschmidt
Pull requests for typos
#jira UE-52751, UE-52748
Change 3776676 by Jamie.Dale
Fixed being able to insert tabs into spin boxes with units
#jira UE-52776
Change 3777006 by Michael.Trepka
Process Mac windowDidBecomeMain and windowDidResignMain notifications immediately instead of deferring them. This solves issues with Slate code that closes and immediately opens new menu windows. Previously closing a window would schedule menu parent's activation event that could be processed after another menu's creation, making it immediately disappear.
#jira UE-52145
Change 3777170 by Arciel.Rekman
Linux: use Xft.dpi (most desktop environments expose their scale through that) as a DPI value (UE-52086, UE-52766).
- Change by Brandon.Schaefer.
- Limitation: no per-monitor DPI.
(Edigrating CL 3776509 //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3777292 by Arciel.Rekman
Linux: fix symbol collision causing problems with AMD drivers (UE-51843).
- We cannot have elf_end() hidden, because libcuda.so calls elf_end from libnvidia-fatbinaryloader.so and this breaks linking monolithic binaries ("hidden symbol referenced in DSO").
- We cannot have elf_end() visible, because of a name collision with a different libelf used by AMD drivers.
- The only possible workaround is to have elf_end() renamed.
(Edigrating CL 3777242 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3777686 by Joe.Conley
Blueprint editor variable type tooltips: fix case mismatch that was preventing type name to be displayed properly in soft object/class reference tooltips.
Change 3778180 by Jamie.Dale
Avoid a crash if a regex pattern or matcher outlive ICU during shutdown
#jira UE-52770
Change 3778182 by Jamie.Dale
Avoid a crash if a break iterator outlives ICU during shutdown
Change 3778368 by Jamie.Dale
Added missing pragma once
Change 3778560 by Matt.Kuhlenschmidt
Prevent non-shared DDC notification from triggering for epic internal builds
Change 3778709 by Lauren.Ridge
Copying 4.18.2 array reordering propagating to children fix (originally 3778547)
Change 3779205 by Lauren.Ridge
Duplicating 3776649 to fix a crash on compile due to partial GC of a widget.
#jira UE-52260
Change 3779217 by Brandon.Schaefer
GitHub #3678 Fix Setup.sh handling of special characters in PNG path
#jira UE-46103
Change 3779341 by Brandon.Schaefer
GitHub #3012 Use elemtry OS versions to set the ubuntu versions for depencies
#jira UE-39364
Change 3780274 by Joe.Conley
DataTables: Add documentation tooltips showing type information to header columns
Change 3780840 by Alexis.Matte
Do a re-import when user re-import LOD 0
Prevent importing more then MAX_SKELETAL_MESH_LODS
#jira UE-52373
Change 3781067 by Arciel.Rekman
Linux: fix OSSSteam cross-compilation (and CIS).
- Broken by previous change that put compile-time arguments into response file and bulk-replaced \ with /, which affected things like Definitions.Add("STEAM_SDK_VER_PATH=TEXT(\"Steam" + SteamVersion + "\")");
Change 3781110 by Christina.TempelaarL
#jira UE-47695 moved Static Mesh Editor LOD menu from tools to viewport tool bar
Change 3781531 by Christina.TempelaarL
#jira UE-47695 added LOD menu to Static Mesh Editor viewport
Change 3781663 by Alexis.Matte
Fix for cancel export fbx when previewing animation sequence export
#jira UE-49743
Change 3782007 by Jamie.Dale
Improved the ability to lockdown available game languages
In addition to the previous "DisabledCultures" array, you can now add an array of "EnabledCultures" (using the same per-build config filters) to explicitly list the cultures that are allowed to be used in your build (if the list is empty, then everything is allowed unless otherwise disabled).
This also stops the game from attempting to fallback to the native language if the native language has been disabled (we will fallback to the first available language instead).
Change 3782122 by Jordan.Walker
test assets for material layers
Change 3782131 by Joe.Graf
Added support for IOS and TVOS targets when generating CMake files on Mac
Change 3782218 by Christina.TempelaarL
fixing include paths and capitalization causing build errors.
Change 3783171 by Michael.Dupuis
Added the possibility to override default LOD rules for visible primitive and whole scene shadow casting primitive
Added the possibility to store Custom data per view for the frame duration
Change 3783172 by Michael.Dupuis
#jira UE-35097 : Refactored landscape rendering logic to improve general performance while using new custom data and custom lod feature
Exposed many new settings to control component using sub sections rendering, tessellated component, shadow should be include into tessellation, tessellation falloff based on camera location
Changed how LOD distribution is done to be in screen size instead of distance.
Give the possibility to have a different distribution for LOD0 vs the other one.
Change 3783174 by Michael.Dupuis
missing file to landscape refactor
Change 3783315 by Lauren.Ridge
Changing a parameter in the Material Parameter Panel now dirties the material correctly.
Changing a layer parameter in the Material Instance Editor now refreshes the details panel as well.
Change 3783374 by Chris.Bunner
Adding MaterialSharedInputCollection to hidden list when MaterialLayers disabled.
Change 3783617 by Chris.Bunner
Added a Channel Mask material expression parameter. Wraps up a vector parameter and dot product with a single channel selection interface, internally a regular vector parameter.
Fixed GetSharedInput failing to return the preview texture in the Function Instance editor.
Change 3783676 by Lauren.Ridge
Adding access to a material function instance's parent in the Material Instance Editor
Change 3783751 by Michael.Trepka
PR #4248: Fixed C++ std in generated Xcode project to match rest of engine (C++14) (Contributed by Bo98)
Change 3783971 by Brandon.Schaefer
Rename/Move all deploy/Deploy folder/files into AlembicDeploy. Due to case sensitivity on linux, need to maintain the correct case.
#jira UE-37631
Change 3783992 by Michael.Dupuis
#jira UE-35097: Remove tessellation on editor tools
Fixed a case where tessellation multiplier at 0 would cause the component to not be visible
Fixed minor tessellation falloff calculation error
Change 3784502 by Chris.Bunner
Restored missing bool setter.
Coding standards fix.
Change 3784614 by Arciel.Rekman
Linux: better error message when running out of inotify watches (UE-50459).
#jira UE-50459
Change 3784620 by Chris.Bunner
Updated LayerBlend_TextureMask to use new ChannelMask parameter.
Change 3784725 by Lauren.Ridge
Fixing groups not sorting correctly
Change 3785645 by Chris.Bunner
Non-editor compile fix.
Change 3785666 by Arciel.Rekman
Linux: restore ability to use Wayland instead of X11.
- SDL libs recompiled and Wayland version is set to lower one to be compatible with the compositor shipped on Ubuntu 16.04 LTS
- Change by Anthony.Bills.
Change 3785708 by Arciel.Rekman
Linux: implement voice capture using SDL (non-server only) (UE-51298).
- Based on pull request #4131 by mkirzinger.
Change 3785878 by Arciel.Rekman
UBT: add VSCode to default generators on Linux.
Change 3786058 by Arciel.Rekman
Do not add dependencies on other RHIs for servers (UE-48894).
- Pull request #3944 contributed by pfoote.
#jira UE-48894
Change 3786845 by Arciel.Rekman
Code changes to make gcc support easier (UE-51978).
- Contributed by a licensee (pull request #4181 by tomwardio "Collection of fixes to allow UE4 to be compiled by GCC on Linux").
Change 3786871 by Matt.Kuhlenschmidt
Fix static analysis
Change 3786883 by Matt.Kuhlenschmidt
Fix HTML5
Change 3786923 by Matt.Kuhlenschmidt
Fix engine layer blend asset referencing game content. This is not allowed
#jira UE-52888
Change 3786927 by Brandon.Schaefer
Linux: Alembic support
#jira: UE-37631
Change 3786994 by Arciel.Rekman
Remove support for /-prefixed switches (UE-47429).
- They collide with absolute file paths on Mac/Linux and a source of inconsistencies between platforms.
#jira UE-47429
Change 3787032 by Michael.Trepka
Initial support for building and running Niagara on Mac
Change 3787035 by Brandon.Schaefer
GitHub #4166 Undef GL entrypoint macros after use
#jira UE-51663
Change 3787144 by Lauren.Ridge
Fixing material parameter group association resetting after undo
#jira UE-52514
Change 3787839 by Jordan.Walker
updated engine level layer blends to not include game content
switched them to use Chris B's new mask selection node
Change 3787967 by Lauren.Ridge
Fix for broken layer groups, related crash
Change 3787991 by Lauren.Ridge
Fixing thumbnails for material function instances, resolving not being able to delete new function instances
#jira UE-52967
Change 3788226 by Michael.Trepka
Fixed a deadlock when closing Mac CrashReportClient which resulted from changes in CL 3777006
#jira UE-53002
Change 3788557 by Brandon.Schaefer
Fix shadow compiler warnings around our includes
Change 3789700 by Lauren.Ridge
Experimental setting for turning on Material Layers - off by default.
Change 3789703 by Jamie.Dale
Harden the LocMeta and LocRes loading to prevent loading files that are too new
Change 3789706 by Jamie.Dale
Added localization ID to the package summary
This will allow the localization gatherer to query it without having to load the entire package
Change 3789708 by Jamie.Dale
Added a way to display and reset the package localization ID via the Content Browser
Change 3789709 by Jamie.Dale
Added warning for duplicate package localization IDs when gathering asset localization
Change 3789713 by Jamie.Dale
Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph
Change 3789736 by Christina.TempelaarL
Fixed recently-introduced StaticMeshEditor bug - changing LOD dropdown menu selection was not changing LOD sections category.
Change 3789853 by Chris.Bunner
Material instances should return overridden values when the caller is requesting the default, not leaving the request to fall through to the base material.
#jira UE-52796
Change 3790185 by Brandon.Schaefer
Add better error handling when using new SDK for linux on windows.
#jira UE-50527
Change 3790195 by Jamie.Dale
Fixed line-ending inconsistency when retrieving rich-text
We were using LINE_TERMINATOR when getting the offsets, but \n when getting the text
Change 3790473 by Chris.Bunner
When finding expression by GUID, only return FunctionCall result if expression was found. Fixes cases where searched-for expression is after a FunctionCall in the expressions list.
#jira UE-52729
Change 3790650 by Arciel.Rekman
UBT: Linux: print build details first before refusing to build.
- Tweak to the previous feature that we forgot.
Change 3790681 by Arciel.Rekman
UBT: Linux: tweaks to wording (SDK -> toolchain).
Change 3791459 by Brandon.Schaefer
Linux: libcurl rebuild for version 7.57
#jira OGS-870
Change 3791533 by Arciel.Rekman
Better error messaging when UMB is unusable (UE-50658).
- Should be replaced by a better fix, but merging this workaround in case the better fix will not be done in time for 4.19.
(Edigrating CL 3789387, 3789787 from Release-4.18 to Dev-Editor)
Change 3791885 by Matt.Kuhlenschmidt
Fix static analysis
#jira UE-53097
Change 3791910 by Brandon.Schaefer
Fix for not using proper libraries on x86_64 for libcurl
#jira OGS-870
Change 3792017 by Jamie.Dale
Fixed a conflict between the path settings and favorite settings
Change 3792022 by Jamie.Dale
Fixed a crash that could happen when performing ARO on the property chains of a struct
#jira UE-52999
Change 3792025 by Jamie.Dale
Changed package summary localization ID to be versioned by the object version to avoid changing data in unversioned cooked assets
Change 3792066 by Michael.Dupuis
#jira UE-5751: Fixed possible crash when using dynamic matrial instance
Added missing shaders for landscape when using tessellation
Change 3792718 by Arciel.Rekman
OpenGL: bringing back Windows workarounds to unblock copy-up (UE-52534).
#jira UE-52534
Change 3793018 by Mike.Erwin
new glTF importer plugin
Import StaticMesh, Material, and Texture assets from the Khronos glTF 2.0 format. Text (.gltf) and binary (.glb) files are supported.
Limitations:
- There is no options UI. All assets from the file are imported.
- The glTF format can describe animation and whole scenes, but the initial version of this plugin does not attempt either.
- Data encoded as Base64 data URI is not supported. This is uncommon but is part of the glTF spec.
#jira: UE-50695
Change 3793626 by Matt.Kuhlenschmidt
Logging for HTML5 issue
Change 3794034 by Matt.Kuhlenschmidt
Fix CIS
Change 3794271 by Michael.Dupuis
#jira UE-53133: Fxed shadow calculation when using non whole scene shadow
Change 3794273 by Chris.Bunner
Function call material nodes should be created with no outputs by default.
#jira UE-53127, UE-53128, UE-52616
Change 3794334 by Lina.Halper
- Fix animation reinitializing when just setting new animation with single node
- Deprecated GetScalarParameterDefault and replace that with GetScalarParameterDefaultValue
#jira: UE-52796
Change 3794338 by Michael.Dupuis
Fixed lod visual popping when texture mip used for landscape is not ready
Change 3794350 by Mike.Erwin
Fix glTF importer header includes.
Build was failing on Linux.
Change 3794357 by Michael.Dupuis
#jira UE-53166: buildfix: removed phase 2 landscape optim leftover...
Change 3794549 by Michael.Dupuis
#jira UE-53166 : fixed compile error
Change 3794755 by Matt.Kuhlenschmidt
Fix automation warning
Change 3794910 by Lina.Halper
Change material default value to be red to keep the behavior same.
- Previous code was getting default value of parent, which was wrong, but now since we're grabbing correct value, it's not doing what it meant to do. Changed content to keep same value as parent as default.
Change 3795296 by Mike.Erwin
glTF: fix Linux build errors
A variable was being shadowed.
The other errors are due to an obscure corner of the C++ spec which clang enforces.
https://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects
#jira UE-53204
Change 3797313 by Chris.Bunner
Re-built lighting in Rendering/ShaderModels automated test map and updated failing screenshots.
#jira UE-53198
Change 3803962 by Jamie.Dale
Fixed struct instances not comparing against the correct default values when gathering for localization
Change 3804771 by Michael.Dupuis
Back out changelist 3783171
Change 3804772 by Michael.Dupuis
Back out changelist 3783172
Change 3805258 by Michael.Dupuis
Added missing shader cache for landscape
Change 3806105 by Matt.Kuhlenschmidt
Disable harware benchmarking during automation tests, commandlets, and on the build machine
Change 3806438 by Michael.Dupuis
#jira UE-53228: Fixed rendering path of new landscape optim when using GDoInitViewsLightingAfterPrepass(used in Orion)
Change 3806577 by Matt.Kuhlenschmidt
Change plugin uploading to crash reporter to only do so in editor builds
Change 3806588 by Michael.Dupuis
Remove temp test version in landscape version
Change 3806900 by Jamie.Dale
Fixed 'inconsistent DLL linkage' error when using older versions of Python 2.7
#jira UE-53353
Change 3807125 by Jamie.Dale
Fixed UBT warning after Dev-Core merge
Change 3807299 by tim.gautier
QAGame: Checking in test asset M_LandscapeMaterial_Foliage, quicker repro for UE-53442
[CL 3807911 by Matt Kuhlenschmidt in Main branch]
2017-12-14 10:07:13 -05:00
|
|
|
#include "PropertyCustomizationHelpers.h"
|
2018-05-23 21:04:31 -04:00
|
|
|
#include "Curves/CurveLinearColor.h"
|
|
|
|
|
#include "IPropertyUtilities.h"
|
2019-06-11 18:27:07 -04:00
|
|
|
#include "Engine/Texture.h"
|
2019-09-12 02:26:38 -04:00
|
|
|
#include "Materials/MaterialExpressionCurveAtlasRowParameter.h"
|
|
|
|
|
#include "Curves/CurveLinearColorAtlas.h"
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
#define LOCTEXT_NAMESPACE "MaterialEditor"
|
|
|
|
|
|
|
|
|
|
TSharedRef<IDetailCustomization> FMaterialExpressionParameterDetails::MakeInstance(FOnCollectParameterGroups InCollectGroupsDelegate)
|
|
|
|
|
{
|
|
|
|
|
return MakeShareable( new FMaterialExpressionParameterDetails(InCollectGroupsDelegate) );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FMaterialExpressionParameterDetails::FMaterialExpressionParameterDetails(FOnCollectParameterGroups InCollectGroupsDelegate)
|
|
|
|
|
: CollectGroupsDelegate(InCollectGroupsDelegate)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
FMaterialExpressionParameterDetails::FMaterialExpressionParameterDetails()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
void FMaterialExpressionParameterDetails::CustomizeDetails( IDetailLayoutBuilder& DetailLayout )
|
|
|
|
|
{
|
|
|
|
|
// for expression parameters all their properties are in one category based on their class name.
|
|
|
|
|
FName DefaultCategory = NAME_None;
|
|
|
|
|
IDetailCategoryBuilder& Category = DetailLayout.EditCategory( DefaultCategory );
|
2019-05-22 10:27:49 -04:00
|
|
|
|
2015-07-01 18:00:42 -04:00
|
|
|
TArray< TWeakObjectPtr<UObject> > Objects;
|
|
|
|
|
DetailLayout.GetObjectsBeingCustomized(Objects);
|
|
|
|
|
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
DefaultValueHandles.Reset();
|
|
|
|
|
ScalarParameterObjects.Reset();
|
|
|
|
|
|
2019-05-22 10:27:49 -04:00
|
|
|
const FName MaterialExpressionCategory = TEXT("MaterialExpression");
|
2019-09-12 02:26:38 -04:00
|
|
|
IDetailCategoryBuilder& ExpressionCategory = DetailLayout.EditCategory(MaterialExpressionCategory);
|
2019-05-22 10:27:49 -04:00
|
|
|
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
for (const auto& WeakObjectPtr : Objects)
|
2015-07-01 18:00:42 -04:00
|
|
|
{
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
UObject* Object = WeakObjectPtr.Get();
|
|
|
|
|
|
|
|
|
|
UMaterialExpressionScalarParameter* ScalarParameter = Cast<UMaterialExpressionScalarParameter>(Object);
|
2015-07-01 18:00:42 -04:00
|
|
|
|
|
|
|
|
if (ScalarParameter)
|
|
|
|
|
{
|
|
|
|
|
// Store these for OnSliderMinMaxEdited
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
ScalarParameterObjects.Emplace(WeakObjectPtr);
|
|
|
|
|
DefaultValueHandles.Emplace(DetailLayout.GetProperty("DefaultValue", UMaterialExpressionScalarParameter::StaticClass()));
|
2015-07-01 18:00:42 -04:00
|
|
|
|
|
|
|
|
TSharedPtr<IPropertyHandle> SliderMinHandle = DetailLayout.GetProperty("SliderMin", UMaterialExpressionScalarParameter::StaticClass());
|
|
|
|
|
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
if (SliderMinHandle.IsValid() && SliderMinHandle->IsValidHandle())
|
2015-07-01 18:00:42 -04:00
|
|
|
{
|
|
|
|
|
// Setup a callback when SliderMin changes to update the DefaultValue slider
|
|
|
|
|
FSimpleDelegate OnSliderMinMaxEditedDelegate = FSimpleDelegate::CreateSP(this, &FMaterialExpressionParameterDetails::OnSliderMinMaxEdited);
|
|
|
|
|
SliderMinHandle->SetOnPropertyValueChanged(OnSliderMinMaxEditedDelegate);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TSharedPtr<IPropertyHandle> SliderMaxHandle = DetailLayout.GetProperty("SliderMax", UMaterialExpressionScalarParameter::StaticClass());
|
|
|
|
|
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
if (SliderMaxHandle.IsValid() && SliderMaxHandle->IsValidHandle())
|
2015-07-01 18:00:42 -04:00
|
|
|
{
|
|
|
|
|
FSimpleDelegate OnSliderMinMaxEditedDelegate = FSimpleDelegate::CreateSP(this, &FMaterialExpressionParameterDetails::OnSliderMinMaxEdited);
|
|
|
|
|
SliderMaxHandle->SetOnPropertyValueChanged(OnSliderMinMaxEditedDelegate);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
OnSliderMinMaxEdited();
|
2019-05-22 10:27:49 -04:00
|
|
|
|
|
|
|
|
TSharedPtr<IPropertyHandle> PropertyHandle = DetailLayout.GetProperty("bUseCustomPrimitiveData", UMaterialExpressionScalarParameter::StaticClass());
|
|
|
|
|
if (PropertyHandle.IsValid() && PropertyHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
// Rebuild the layout when the bUseCustomPrimitiveData property changes
|
|
|
|
|
PropertyHandle->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
}
|
|
|
|
|
|
2019-09-12 02:26:38 -04:00
|
|
|
if (ScalarParameter->IsUsedAsAtlasPosition())
|
|
|
|
|
{
|
|
|
|
|
UMaterialExpressionCurveAtlasRowParameter* ColorCurveParameter = Cast<UMaterialExpressionCurveAtlasRowParameter>(ScalarParameter);
|
|
|
|
|
TSharedPtr<IPropertyHandle> CurveHandle = DetailLayout.GetProperty("Curve", UMaterialExpressionCurveAtlasRowParameter::StaticClass());
|
|
|
|
|
if (CurveHandle.IsValid() && CurveHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
const FName AtlasCategoryName = TEXT("MaterialExpressionCurveAtlasRowParameter");
|
|
|
|
|
IDetailCategoryBuilder& AtlasCategory = DetailLayout.EditCategory(AtlasCategoryName);
|
|
|
|
|
TSoftObjectPtr<UCurveLinearColorAtlas> Atlas = TSoftObjectPtr<UCurveLinearColorAtlas>(FSoftObjectPath(ColorCurveParameter->Atlas->GetPathName()));
|
|
|
|
|
CurveHandle->MarkHiddenByCustomization();
|
|
|
|
|
AtlasCategory.AddCustomRow(CurveHandle->GetPropertyDisplayName())
|
|
|
|
|
.NameContent()
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(CurveHandle->GetPropertyDisplayName())
|
|
|
|
|
.Font(IDetailLayoutBuilder::GetDetailFont())
|
|
|
|
|
]
|
|
|
|
|
.ValueContent()
|
|
|
|
|
.HAlign(HAlign_Fill)
|
|
|
|
|
.MaxDesiredWidth(400.0f)
|
|
|
|
|
[
|
|
|
|
|
SNew(SObjectPropertyEntryBox)
|
|
|
|
|
.PropertyHandle(CurveHandle)
|
|
|
|
|
.AllowedClass(UCurveLinearColor::StaticClass())
|
|
|
|
|
.NewAssetFactories(TArray<UFactory*>())
|
|
|
|
|
.DisplayThumbnail(true)
|
|
|
|
|
.ThumbnailPool(DetailLayout.GetThumbnailPool())
|
|
|
|
|
.OnShouldFilterAsset(FOnShouldFilterAsset::CreateStatic(&FMaterialPropertyHelpers::OnShouldFilterCurveAsset, Atlas))
|
|
|
|
|
.OnShouldSetAsset(FOnShouldSetAsset::CreateStatic(&FMaterialPropertyHelpers::OnShouldSetCurveAsset, Atlas))
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TSharedPtr<IPropertyHandle> AtlasHandle = DetailLayout.GetProperty("Atlas", UMaterialExpressionCurveAtlasRowParameter::StaticClass());
|
|
|
|
|
if (AtlasHandle.IsValid() && AtlasHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
// Rebuild the layout when the bUseCustomPrimitiveData property changes
|
|
|
|
|
AtlasHandle->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2019-05-22 10:27:49 -04:00
|
|
|
if (ScalarParameter->bUseCustomPrimitiveData)
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideCategory(TEXT("MaterialExpressionScalarParameter"));
|
|
|
|
|
DetailLayout.HideCategory(MaterialExpressionCategory);
|
|
|
|
|
}
|
2015-07-01 18:00:42 -04:00
|
|
|
}
|
2019-05-22 10:27:49 -04:00
|
|
|
|
|
|
|
|
UMaterialExpressionVectorParameter* VectorParameter = Cast<UMaterialExpressionVectorParameter>(Object);
|
|
|
|
|
|
|
|
|
|
if (VectorParameter)
|
|
|
|
|
{
|
|
|
|
|
TSharedPtr<IPropertyHandle> PropertyHandle = DetailLayout.GetProperty("bUseCustomPrimitiveData", UMaterialExpressionVectorParameter::StaticClass());
|
|
|
|
|
if (PropertyHandle.IsValid() && PropertyHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
// Rebuild the layout when the bUseCustomPrimitiveData property changes
|
|
|
|
|
PropertyHandle->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
}
|
2019-09-10 11:35:20 -04:00
|
|
|
|
|
|
|
|
TSharedPtr<IPropertyHandle> ChannelHandle = DetailLayout.GetProperty("ChannelNames", UMaterialExpressionVectorParameter::StaticClass());
|
|
|
|
|
TSharedPtr<IPropertyHandle> ValueHandle = DetailLayout.GetProperty("DefaultValue", UMaterialExpressionVectorParameter::StaticClass());
|
|
|
|
|
if (ChannelHandle.IsValid() && ChannelHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
static const FName Red("R");
|
|
|
|
|
static const FName Green("G");
|
|
|
|
|
static const FName Blue("B");
|
|
|
|
|
static const FName Alpha("A");
|
|
|
|
|
// Rebuild the layout when the ChannelNames property changes
|
|
|
|
|
ChannelHandle->GetChildHandle(Red)->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
ChannelHandle->GetChildHandle(Green)->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
ChannelHandle->GetChildHandle(Blue)->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
ChannelHandle->GetChildHandle(Alpha)->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
}
|
|
|
|
|
|
2019-05-22 10:27:49 -04:00
|
|
|
if (VectorParameter->bUseCustomPrimitiveData)
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideCategory(TEXT("MaterialExpressionVectorParameter"));
|
|
|
|
|
DetailLayout.HideCategory(MaterialExpressionCategory);
|
|
|
|
|
}
|
2019-09-10 11:35:20 -04:00
|
|
|
|
2020-03-04 15:20:58 -05:00
|
|
|
if (ValueHandle.IsValid() && ValueHandle->IsValidHandle() && !VectorParameter->IsUsedAsChannelMask())
|
2019-09-10 11:35:20 -04:00
|
|
|
{
|
|
|
|
|
static const FName Red("R");
|
|
|
|
|
static const FName Green("G");
|
|
|
|
|
static const FName Blue("B");
|
|
|
|
|
static const FName Alpha("A");
|
|
|
|
|
if (!VectorParameter->ChannelNames.R.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
ValueHandle->GetChildHandle(Red)->SetPropertyDisplayName(VectorParameter->ChannelNames.R);
|
|
|
|
|
}
|
|
|
|
|
if (!VectorParameter->ChannelNames.G.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
ValueHandle->GetChildHandle(Green)->SetPropertyDisplayName(VectorParameter->ChannelNames.G);
|
|
|
|
|
}
|
|
|
|
|
if (!VectorParameter->ChannelNames.B.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
ValueHandle->GetChildHandle(Blue)->SetPropertyDisplayName(VectorParameter->ChannelNames.B);
|
|
|
|
|
}
|
|
|
|
|
if (!VectorParameter->ChannelNames.A.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
ValueHandle->GetChildHandle(Alpha)->SetPropertyDisplayName(VectorParameter->ChannelNames.A);
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-03-04 15:20:58 -05:00
|
|
|
|
|
|
|
|
if (VectorParameter->IsUsedAsChannelMask())
|
|
|
|
|
{
|
|
|
|
|
TSharedPtr<IPropertyHandle> ChannelNameHandle = DetailLayout.GetProperty("ChannelNames", UMaterialExpressionVectorParameter::StaticClass());
|
|
|
|
|
ChannelNameHandle->MarkHiddenByCustomization();
|
|
|
|
|
}
|
2019-09-10 11:35:20 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UMaterialExpressionTextureSampleParameter* TextureParameter = Cast<UMaterialExpressionTextureSampleParameter>(Object);
|
|
|
|
|
|
|
|
|
|
if (TextureParameter)
|
|
|
|
|
{
|
|
|
|
|
TSharedPtr<IPropertyHandle> ChannelHandle = DetailLayout.GetProperty("ChannelNames", UMaterialExpressionTextureSampleParameter::StaticClass());
|
|
|
|
|
TSharedPtr<IPropertyHandle> ValueHandle = DetailLayout.GetProperty("Texture", UMaterialExpressionTextureBase::StaticClass());
|
|
|
|
|
if (TextureParameter->GetOutputType(0) != MCT_Texture)
|
|
|
|
|
{
|
|
|
|
|
if (ChannelHandle.IsValid() && ChannelHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
static const FName Red("R");
|
|
|
|
|
static const FName Green("G");
|
|
|
|
|
static const FName Blue("B");
|
|
|
|
|
static const FName Alpha("A");
|
|
|
|
|
// Rebuild the layout when the ChannelNames property changes
|
|
|
|
|
ChannelHandle->GetChildHandle(Red)->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
ChannelHandle->GetChildHandle(Green)->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
ChannelHandle->GetChildHandle(Blue)->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
ChannelHandle->GetChildHandle(Alpha)->SetOnPropertyValueChanged(FSimpleDelegate::CreateLambda([&DetailLayout]()
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.ForceRefreshDetails();
|
|
|
|
|
}));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (ValueHandle.IsValid() && ValueHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
IDetailPropertyRow& PropertyRow = *DetailLayout.EditDefaultProperty(ValueHandle);
|
|
|
|
|
TSharedPtr<SWidget> NameWidget;
|
|
|
|
|
TSharedPtr<SWidget> ValueWidget;
|
|
|
|
|
FDetailWidgetRow DefaultRow;
|
|
|
|
|
PropertyRow.GetDefaultWidgets(NameWidget, ValueWidget, DefaultRow);
|
|
|
|
|
|
|
|
|
|
FDetailWidgetRow &DetailWidgetRow = PropertyRow.CustomWidget();
|
|
|
|
|
TSharedPtr<SVerticalBox> NameVerticalBox;
|
|
|
|
|
DetailWidgetRow.NameContent()
|
|
|
|
|
[
|
|
|
|
|
SAssignNew(NameVerticalBox, SVerticalBox)
|
|
|
|
|
+ SVerticalBox::Slot()
|
|
|
|
|
.AutoHeight()
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(FText::FromName(TextureParameter->ParameterName))
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.NormalFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
DetailWidgetRow.ValueContent()
|
|
|
|
|
.MinDesiredWidth(DefaultRow.ValueWidget.MinWidth)
|
|
|
|
|
.MaxDesiredWidth(DefaultRow.ValueWidget.MaxWidth)
|
|
|
|
|
[
|
|
|
|
|
ValueWidget.ToSharedRef()
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
static const FName Red("R");
|
|
|
|
|
static const FName Green("G");
|
|
|
|
|
static const FName Blue("B");
|
|
|
|
|
static const FName Alpha("A");
|
|
|
|
|
|
|
|
|
|
if (!TextureParameter->ChannelNames.R.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
NameVerticalBox->AddSlot()
|
|
|
|
|
[
|
|
|
|
|
SNew(SHorizontalBox)
|
|
|
|
|
+ SHorizontalBox::Slot()
|
|
|
|
|
.AutoWidth()
|
|
|
|
|
.Padding(20.0, 2.0, 4.0, 2.0)
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(FText::FromName(Red))
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.BoldFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
+ SHorizontalBox::Slot()
|
|
|
|
|
.HAlign(HAlign_Left)
|
|
|
|
|
.Padding(4.0, 2.0)
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(TextureParameter->ChannelNames.R)
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.NormalFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
if (!TextureParameter->ChannelNames.G.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
NameVerticalBox->AddSlot()
|
|
|
|
|
[
|
|
|
|
|
SNew(SHorizontalBox)
|
|
|
|
|
+ SHorizontalBox::Slot()
|
|
|
|
|
.Padding(20.0, 2.0, 4.0, 2.0)
|
|
|
|
|
.AutoWidth()
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(FText::FromName(Green))
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.BoldFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
+ SHorizontalBox::Slot()
|
|
|
|
|
.HAlign(HAlign_Left)
|
|
|
|
|
.Padding(4.0, 2.0)
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(TextureParameter->ChannelNames.G)
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.NormalFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
if (!TextureParameter->ChannelNames.B.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
NameVerticalBox->AddSlot()
|
|
|
|
|
[
|
|
|
|
|
SNew(SHorizontalBox)
|
|
|
|
|
+ SHorizontalBox::Slot()
|
|
|
|
|
.Padding(20.0, 2.0, 4.0, 2.0)
|
|
|
|
|
.AutoWidth()
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(FText::FromName(Blue))
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.BoldFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
+ SHorizontalBox::Slot()
|
|
|
|
|
.HAlign(HAlign_Left)
|
|
|
|
|
.Padding(4.0, 2.0)
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(TextureParameter->ChannelNames.B)
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.NormalFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
if (!TextureParameter->ChannelNames.A.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
NameVerticalBox->AddSlot()
|
|
|
|
|
[
|
|
|
|
|
SNew(SHorizontalBox)
|
|
|
|
|
+ SHorizontalBox::Slot()
|
|
|
|
|
.Padding(20.0, 2.0, 4.0, 2.0)
|
|
|
|
|
.AutoWidth()
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(FText::FromName(Alpha))
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.BoldFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
+ SHorizontalBox::Slot()
|
|
|
|
|
.HAlign(HAlign_Left)
|
|
|
|
|
.Padding(4.0, 2.0)
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(TextureParameter->ChannelNames.A)
|
2022-05-09 13:12:28 -04:00
|
|
|
.Font(FAppStyle::GetFontStyle(TEXT("PropertyWindow.NormalFont")))
|
2019-09-10 11:35:20 -04:00
|
|
|
]
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideProperty(ChannelHandle);
|
|
|
|
|
}
|
2019-05-22 10:27:49 -04:00
|
|
|
}
|
|
|
|
|
|
2015-07-01 18:00:42 -04:00
|
|
|
}
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
|
|
|
|
|
check(ScalarParameterObjects.Num() == DefaultValueHandles.Num());
|
2015-07-01 18:00:42 -04:00
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
Category.AddProperty("ParameterName");
|
2019-01-17 10:57:52 -05:00
|
|
|
|
2019-09-12 02:26:38 -04:00
|
|
|
|
2019-01-17 10:57:52 -05:00
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
// Get a handle to the property we are about to edit
|
|
|
|
|
GroupPropertyHandle = DetailLayout.GetProperty( "Group" );
|
|
|
|
|
|
|
|
|
|
TSharedPtr<SComboButton> NewComboButton;
|
|
|
|
|
TSharedPtr<SEditableText> NewEditBox;
|
|
|
|
|
TSharedPtr<SListView<TSharedPtr<FString>>> NewListView;
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
|
|
|
|
|
if (GroupPropertyHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
GroupPropertyHandle->MarkHiddenByCustomization();
|
|
|
|
|
|
|
|
|
|
PopulateGroups();
|
|
|
|
|
|
2019-01-17 10:57:52 -05:00
|
|
|
ExpressionCategory.AddCustomRow(GroupPropertyHandle->GetPropertyDisplayName())
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
.NameContent()
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(GroupPropertyHandle->GetPropertyDisplayName())
|
2019-01-17 10:57:52 -05:00
|
|
|
.Font(IDetailLayoutBuilder::GetDetailFont())
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
]
|
2019-01-17 10:57:52 -05:00
|
|
|
.ValueContent()
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
[
|
|
|
|
|
SAssignNew(NewComboButton, SComboButton)
|
|
|
|
|
.ContentPadding(FMargin(2.0f, 2.0f))
|
2019-01-17 10:57:52 -05:00
|
|
|
.ButtonContent()
|
|
|
|
|
[
|
|
|
|
|
SAssignNew(NewEditBox, SEditableText)
|
|
|
|
|
.Text(this, &FMaterialExpressionParameterDetails::OnGetText)
|
|
|
|
|
.OnTextCommitted(this, &FMaterialExpressionParameterDetails::OnTextCommitted)
|
|
|
|
|
]
|
|
|
|
|
.MenuContent()
|
|
|
|
|
[
|
|
|
|
|
SNew(SVerticalBox)
|
|
|
|
|
+ SVerticalBox::Slot()
|
|
|
|
|
.AutoHeight()
|
|
|
|
|
.MaxHeight(400.0f)
|
|
|
|
|
[
|
|
|
|
|
SAssignNew(NewListView, SListView<TSharedPtr<FString>>)
|
|
|
|
|
.ListItemsSource(&GroupsSource)
|
|
|
|
|
.OnGenerateRow(this, &FMaterialExpressionParameterDetails::MakeDetailsGroupViewWidget)
|
|
|
|
|
.OnSelectionChanged(this, &FMaterialExpressionParameterDetails::OnSelectionChanged)
|
|
|
|
|
]
|
|
|
|
|
]
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
];
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2019-01-17 10:57:52 -05:00
|
|
|
ExpressionCategory.AddProperty("SortPriority");
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
}
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3431234)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3323393 on 2017/02/27 by Ben.Cosh
This fixes an issue with actor details component selection causing actor selection to get out of sync across undo operations
#Jira UE-40753 - [CrashReport] UE4Editor_LevelEditor!FLevelEditorActionCallbacks::Paste_CanExecute() [leveleditoractions.cpp:1602]
#Proj Engine
Change 3379355 on 2017/04/04 by Lauren.Ridge
Adding sort priorities to Material Parameters and Parameter Groups. If sort priorities are equal, fallback to alphabetical sort. Default sort priority is 0, can be set on the parameter in the base material. Parameters are still sorted within groups.Group sort priority is set on the main material preferences.
Change 3379389 on 2017/04/04 by Nick.Darnell
Core - Removing several old macros that were referring to EMIT_DEPRECATED_WARNING_MESSAGE, which is no longer defined in the engine, so these macros are double deprecated.
Change 3379551 on 2017/04/04 by Nick.Darnell
Automation - Adding more logging to the automation controller when generating reports.
Change 3379554 on 2017/04/04 by Nick.Darnell
UMG - Making the WidgetComponent make more things caneditconst in the editor depending on what the settings are to make it more obvious what works in certain contexts.
Change 3379565 on 2017/04/04 by Nick.Darnell
UMG - Deprecating OPTIONA_BINDING, moving to PROPERTY_BINDING in place and you'll need to define a PROPERTY_BINDING_IMPLEMENTATION. Will make bindings safer to call from blueprints.
Change 3379576 on 2017/04/04 by Lauren.Ridge
Parameter group dropdown now sorts alphabetically
Change 3379592 on 2017/04/04 by JeanMichel.Dignard
Fbx Morph Targets import optimisation
- Only reimport the points for each morphs and compute the tangents for the wedges affected by those points.
- Removed the full skeletal mesh rebuild on each morph target import.
- Allow MeshUtilities::ComputeTangents_MikkTSpace to only recompute the tangents that are zero.
Gains around 7.30 mins for 785 morph targets in mikkt space and 1.30 mins using built-in normals, with provided test file.
#jira UE-34125
Change 3380260 on 2017/04/04 by Nick.Darnell
UMG - Fixing some OPTIONAL_BINDINGS that needed to be converted.
Change 3380551 on 2017/04/05 by Andrew.Rodham
Sequencer: Fixed ImplIndex sometimes not relating to the source data index when compiling at the track level
#jira UE-43446
Change 3380555 on 2017/04/05 by Andrew.Rodham
Sequencer: Automated unit tests for the segment and track compilers
Change 3380647 on 2017/04/05 by Nick.Darnell
UMG - Tweaking some stuff on the experimental rich textblock.
Change 3380719 on 2017/04/05 by Yannick.Lange
Fix 'Compile FortniteClient Mac' and 'Compile Ocean iOS' Failed with Material.cpp errors. Wrapping WITH_EDITOR around ParameterGroupData.
#jira UE-43667
Change 3380765 on 2017/04/05 by Nick.Darnell
UMG - Fixing a few more instances of OPTIONAL_BINDING.
Change 3380786 on 2017/04/05 by Yannick.Lange
Wrap SortPriority in GetParameterSortPriority with WITH_EDITOR.
Change 3380872 on 2017/04/05 by Matt.Kuhlenschmidt
PR #3453: UE-43004: YesNo MessageDialog instead of YesNoCancel (Contributed by projectgheist)
Change 3381635 on 2017/04/05 by Matt.Kuhlenschmidt
Expose static mesh material accessors to blueprints
#jira UE-43631
Change 3381643 on 2017/04/05 by Matt.Kuhlenschmidt
Added a way to enable or disable the component transform units display independently from unit display anywhere else. This is off by default
Change 3381705 on 2017/04/05 by Yannick.Lange
- Slate application multiple input pre-processors.
- Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor.
Change 3381959 on 2017/04/05 by Yannick.Lange
Back out changelist 3381705. Old changelist.
Change 3382049 on 2017/04/05 by Yannick.Lange
- Slate application multiple input pre-processors in a wrapper class.
- Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor.
- Deprecated SetInputPreProcessor, but made it work with RegisterInputPreProcessor and UnregisterInputPreProcessor.
Change 3382450 on 2017/04/06 by Andrew.Rodham
Sequencer: Fixed 'ambiguous' overloaded constructor for UT linux server builds
Change 3382468 on 2017/04/06 by Yannick.Lange
Rename AllowWorldMovement parameter to bAllow.
Change 3382474 on 2017/04/06 by Yannick.Lange
Make GetInteractors constant because we dont want it to be possible to change this arrray.
Change 3382492 on 2017/04/06 by Yannick.Lange
VR Editor: Floating UI's are stored in a map with FNames as key.
Change 3382502 on 2017/04/06 by Yannick.Lange
VR Editor: Use asset container for auto scaler sound.
Change 3382589 on 2017/04/06 by Nick.Darnell
Slate - Upgrading usages of SetInputPreprocessor. Also adjusting the API for the new preprocessor functions to have an option to remove all, which was what several usages expected. Also updated the deprecated version of SetInputPreprocessor to removeall if null is provided for the remove, mimicing the old functionality.
Change 3382594 on 2017/04/06 by Nick.Darnell
UMG - Deprecating GetMousePositionScaledByDPI, this function has too many issues, and I don't want to break buggy backwards compatability, so just going to deprecate it instead. For replacement, you can now access an FGeometry representing the viewport (after DPI scale has been added to the transform stack), and also the FGeometry for a Player's Screen widget host, which might be constrained for splitscreen, or camera aspect.
Change 3382672 on 2017/04/06 by Nick.Darnell
Build - Fixing incremental build.
Change 3382674 on 2017/04/06 by Nick.Darnell
Removing a hack added by launcher.
Change 3382697 on 2017/04/06 by Matt.Kuhlenschmidt
Fixed plugin browser auto-resizing when scrolling. Gave it a proper splitter
Change 3382875 on 2017/04/06 by Michael.Trepka
Modified FMacApplication::OnCursorLock() to avoid a thread safety problem with using TSharedPtr/Ref<FMacWindow> of the same window on main and game threads simultaneously.
#jira FORT-34952
Change 3383303 on 2017/04/06 by Lauren.Ridge
Adding sort priority to texture parameter code
Change 3383561 on 2017/04/06 by Jamie.Dale
Fixed MaximumIntegralDigits incorrectly including group separators in its count
Change 3383570 on 2017/04/06 by Jamie.Dale
Added regression tests for formatting a number with MaximumIntegralDigits and group separators enabled
Change 3384507 on 2017/04/07 by Lauren.Ridge
Mesh painting no longer paints on invisible components. Toggling visiblity refreshes the selected set.
#jira UE-21172
Change 3384804 on 2017/04/07 by Joe.Graf
Fixed a clang error on Linux due to missing virtual destructor when deleting through the interface pointer
#CodeReview: marc.audy
#rb: n/a
Change 3385011 on 2017/04/07 by Matt.Kuhlenschmidt
Fix dirtying levels just by copying actors if the level contains a foliage actor. The foliage system makes lazy asset pointers
#jira UE-43750
Change 3385127 on 2017/04/07 by Lauren.Ridge
Adding WITHEDITOR to OnDragDropCheckOverride
Change 3385241 on 2017/04/07 by Jamie.Dale
Removing warning if asking for a null or empty localization provider
Change 3385442 on 2017/04/07 by Arciel.Rekman
Fix a number of problems with Linux splash.
- Thread safety (UE-40354).
- Inconsistent font (UE-35000).
- Change by Cengiz Terzibas.
Change 3385708 on 2017/04/08 by Lauren.Ridge
Resaving VREditor asset container with engine version
Change 3385711 on 2017/04/08 by Arciel.Rekman
Speculative fix for a non-unity Linux build.
Change 3386120 on 2017/04/10 by Matt.Kuhlenschmidt
Fix stats not being enabled when in simulate
Change 3386289 on 2017/04/10 by Matt.Kuhlenschmidt
PR #3466: Git plugin: add option to autoconfigure Git LFS (Contributed by SRombauts)
Change 3386301 on 2017/04/10 by Matt.Kuhlenschmidt
PR #3470: Git Plugin: disable "Keep Files Checked Out" checkbox on Submit to Source Control Window (Contributed by SRombauts)
Change 3386381 on 2017/04/10 by Michael.Trepka
PR #3461: Mac doesn't return the correct exit code (Contributed by projectgheist)
Change 3388223 on 2017/04/11 by matt.kuhlenschmidt
Deleted collection: MattKTest
Change 3388808 on 2017/04/11 by Lauren.Ridge
Reset arrows now only display for non-default values in the Material Instance editor. Reset to default arrows now are placed in the correct location for SObjectPropertyEntryBox and SPropertyEditorAsset. SResetToDefaultPropertyEditor now takes a property handle in the constructor, instead of an FPropertyEditor.
#jira UE-20882
Change 3388843 on 2017/04/11 by Lauren.Ridge
Forward declaring custom reset override. Fix for incremental build error
Change 3388950 on 2017/04/11 by Nick.Darnell
PR #3450: UMG "Lock" Feature (Contributed by GBX-ABair).
Epic Edit: Made some changes to make it work with named slots, added an option not to always recursively itterate the children, also removed the dependency on SWidget changes.
Change 3388996 on 2017/04/11 by Matt.Kuhlenschmidt
Removed crashtracker
Change 3389004 on 2017/04/11 by Lauren.Ridge
Fix for automated test error - additional safety check for if the reset button has been successfully created.
Change 3389056 on 2017/04/11 by Matt.Kuhlenschmidt
Removed editor live streaming
Change 3389077 on 2017/04/11 by Jamie.Dale
Removing QAGame config change
Change 3389078 on 2017/04/11 by Nick.Darnell
Fortnite - Fixing an input preprocessor warning.
Change 3389136 on 2017/04/11 by Nick.Darnell
Slate - Removing deprecated 'aspect ratio' locking box cells, never really worked, deprecated a long time ago.
Change 3389147 on 2017/04/11 by Nick.Darnell
UMG - Fixing a critical error with the alignment of the lock icon.
#jira UE-43881
Change 3389401 on 2017/04/11 by Nick.Darnell
UMG - Adds a designer option to control respecting the locked mode.
Change 3389638 on 2017/04/11 by Nick.Darnell
UMG - Adding the Widget Reflector button to the widget designer.
Change 3389639 on 2017/04/11 by Nick.Darnell
UMG - Tweaking the respect lock icon.
Change 3390032 on 2017/04/12 by JeanMichel.Dignard
Fixed project generation when using subfolders in Target.SolutionDirectory (ie: SolutionDirectory = "Programs\MyProgram")
Change 3390033 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3472: Exposed Distributions to Game Projects and Plugins (Contributed by StormtideGames)
Change 3390041 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3446: Add missing TryLock to PThreadCriticalSection and add RAII helper for try locking. (Contributed by Laurie-Hedge)
Change 3390196 on 2017/04/12 by Lauren.Ridge
Fix for crash on opening assets without reset to default button enable
Change 3390414 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3300: UE-5528: Added check for empty startup tutorial path (Contributed by projectgheist)
#jira UE-5528
Change 3390427 on 2017/04/12 by Jamie.Dale
Fixed not being able to set pure whitespace values on FText properties
#jira UE-42007
Change 3390712 on 2017/04/12 by Jamie.Dale
Content Browser search now takes the display names of properties into account
#jira UE-39564
Change 3390897 on 2017/04/12 by Nick.Darnell
Slate - Changing the order that the tabs draw in so that the draw front to back, instead of back to front.
Change 3390900 on 2017/04/12 by Nick.Darnell
Making a Cast CastChecked in UScaleBox.
Change 3390907 on 2017/04/12 by Nick.Darnell
UMG - Adding GetMousePositionOnPlatform and GetMousePositionOnViewport as other replacements that people can use rather than GetMousePositionScaledByDPI.
Change 3390934 on 2017/04/12 by Cody.Albert
Fix to set correct draw layer in FSlateElementBatcher::AddElements
Change 3390966 on 2017/04/12 by Nick.Darnell
Input - Force inline some core input functions.
Change 3391207 on 2017/04/12 by Jamie.Dale
Fixed moving a folder containing a level not moving the level
Also removed some redundant usage of ContentBrowserUtils::GetUnloadedAssets
#jira UE-42091
Change 3391327 on 2017/04/12 by Mike.Fricker
Removed Twitch support and GameLiveStreaming
Change 3391405 on 2017/04/12 by Mike.Fricker
Removed Twitch support and GameLiveStreaming (part 2)
Change 3391407 on 2017/04/12 by Mike.Fricker
Removed some remaining EditorLiveStreaming and CrashTracker code
Change 3392296 on 2017/04/13 by Yannick.Lange
VR Editor: New assets in asset containers for gizmo rotation.
Change 3392332 on 2017/04/13 by Nick.Darnell
Slate - Removing delegate hooks from the safezone and scalebox widget when the widgets are cleaned up.
Change 3392349 on 2017/04/13 by Cody.Albert
Corrected typo
Change 3392688 on 2017/04/13 by Yannick.Lange
VR Editor: Resaved asset containers
Change 3392905 on 2017/04/13 by Jamie.Dale
Fixed FPaths::ChangeExtension and FPaths::SetExtension stomping over the path part of a filename if the name part of the had no extension but the path contained a dot, eg) C:/First.Last/file
Change 3393514 on 2017/04/13 by Yannick.Lange
VR Editor: Temp direct interaction pointer.
Change 3393930 on 2017/04/14 by Yannick.Lange
VR Editor: Remove unused transform gizmo
Change 3394084 on 2017/04/14 by Max.Chen
Audio Capture: No longer beta
Change 3394499 on 2017/04/14 by Cody.Albert
Updated UMovieSceneSpawnTrack::PostLoad to call ConditionalPostLoad on bool track before converting it to a spawn track
#rnx
Change 3395703 on 2017/04/17 by Yannick.Lange
Duplicate from Release-4.16 CL 3394172
Viewport Interaction: Fix disable animation when aiming for gizmo stretch handles.
#jira UE-43964
Change 3395794 on 2017/04/17 by Mike.Fricker
#rn Fixed FastXML not loading XML files with attributes delimited by single quote characters
Change 3395945 on 2017/04/17 by Yannick.Lange
VR Editor: Swap end and start of laser, because they start of laser was using end mesh.
Change 3396253 on 2017/04/17 by Michael.Dupuis
#jiraUE-43693:
While moving foliage instance between levels, UI count was'nt updating properly
Moved MoveSelectedFoliageToLevel to EdModeFoliage as we required more treatment than was done in LevelCollectionModel
Ask to save foliage type as asset while moving between level foliage instances containing local foliage type
Change 3396291 on 2017/04/17 by Michael.Dupuis
#jira UE-35029:
Added a cache for mesh bounds so if the bounds changed we can rebuild the occlusion tree
Added possibility to register on bounds changed of a static mesh in editor mode
Rebuild the occlusion tree if the mesh bounds changed
Rebuild the occlusion tree if we change the mesh associated with a foliage type
Optimize some operation to not Rebuild the occlusion tree for every instance added/remove instead it's done at the end of the operation
Change 3396293 on 2017/04/17 by Michael.Dupuis
#jira UE-40685:
Improve Collision With World algo, to support painting pitch rotated instance or not on a flat terrain or slope respecting the specified ground angles
Change 3397660 on 2017/04/18 by Matt.Kuhlenschmidt
PR #3480: Git plugin: improve/cleanup init and settings (Contributed by SRombauts)
Change 3397675 on 2017/04/18 by Alex.Delesky
#jira UE-42383 - Adds a delegate to the placement mode module to allow users to register custom categories and listen to when they should be refreshed.
Change 3397818 on 2017/04/18 by Yannick.Lange
ViewportInteraction and VR Editor: - Replace GENERATED_UCLASS_BODY with GENERATED_BODY.
- Remove destructors for uobjects.
Change 3397832 on 2017/04/18 by Yannick.Lange
VR Editor: Remove unused vreditorbuttoon
Change 3397884 on 2017/04/18 by Yannick.Lange
VREditor: Addition to 3397832, remove unused vreditorbuttoon.
Change 3397985 on 2017/04/18 by Michael.Trepka
Another attempt to solve the issue with dsymutil failing with an error saying the input file did not exist. We now check for the input file's existence in a loop 30 times (once a second) before trying to call dsymutil. Also, added a FixDylibDependencies as a prerequisite for dSYM generation.
#jira UE-43900
Change 3398030 on 2017/04/18 by Jamie.Dale
Fixed outline changes not automatically updating the text layout used by a text block
#jira UE-42116
Change 3398039 on 2017/04/18 by Jamie.Dale
Unified asset drag-and-drop
FAssetDragDropOp now handles both assets and asset paths, and FAssetPathDragDropOp has been removed. This allows assets and folders to be drag-dropped at the same time in the Content Browser.
#jira UE-39208
Change 3398074 on 2017/04/18 by Michael.Dupuis
Fixed crash in cooking fortnite
Change 3398351 on 2017/04/18 by Alex.Delesky
Fixing PlacementMode module build error
Change 3398513 on 2017/04/18 by Yannick.Lange
VR Editor: - Remove unused previousvreditor member.
- Removing extensions when exiting vr mode without having to find the extensions.
Change 3398540 on 2017/04/18 by Alex.Delesky
Removing a private PlacementMode header that was included in a public one.
Change 3399434 on 2017/04/19 by Matt.Kuhlenschmidt
Remove uncessary files from p4
Change 3400657 on 2017/04/19 by Jamie.Dale
Fixed potential underflow when using negative digit ranges with FastDecimalFormat
Change 3400722 on 2017/04/19 by Jamie.Dale
Removed some check's that could trip with malformed data
Change 3401811 on 2017/04/20 by Jamie.Dale
Improved the display of asset tags in the Content Browser
- Numeric tags are now displayed pretty printed.
- Numeric tags can now be displayed as a memory value (the numeric value should be in bytes).
- Dimensional tags are now split and each part pretty printed.
- Date/Time tags are now stored as a timestamp (which has the side effect of sorting correctly) and displayed as a localized date/time.
- The column view now shows the same display values as the tooltips do.
- The tooltip now uses the tag meta-data display name (if set).
- The tag meta-data display name can now be used as an alias in the Content Browser search.
#jira UE-34090
Change 3401868 on 2017/04/20 by Cody.Albert
Add screenshot save directory parameter to editor and project settings
#rn Added options to the settings menu to specify screenshot save directory
Change 3402107 on 2017/04/20 by Jamie.Dale
Cleaned up the "View Options" menu in the Content Browser
Re-organized some of the settings into better groups, and fixed some places where items would still be shown in the asset view when some of these content filter options were disabled (either via a setting, or via the UI).
Change 3402283 on 2017/04/20 by Jamie.Dale
Creating a folder in the Content Browser now creates the folder on disk, and cancelling a folder naming now removes the temporary folder
#jira UE-8892
Change 3402572 on 2017/04/20 by Alex.Delesky
#jira UE-42421
PR #3311: Improved log messages (Contributed by projectgheist)
Change 3403226 on 2017/04/21 by Yannick.Lange
VR Editor: - Removed previous quick menu floating UI panel.
- Added the concept of a info display floating UI panel.
- Used info display for showing sequencer timer.
Change 3403277 on 2017/04/21 by Yannick.Lange
VR Editor: - Set window mesh for info display panel.
- Add option to null out widget when hidden.
Change 3403289 on 2017/04/21 by Yannick.Lange
VR Editor: Don't load VREditorAssetContainer asset when starting editor.
Change 3403353 on 2017/04/21 by Yannick.Lange
VR Editor: Fix variable 'RelativeOffset' is uninitialized when used within its own initialization.
Change 3404183 on 2017/04/21 by Matt.Kuhlenschmidt
Fix typo
Change 3405378 on 2017/04/24 by Alex.Delesky
#jira UE-42550 - Audio thumbnails should never rerender now, even with real-time thumbnails enabled
Change 3405382 on 2017/04/24 by Alex.Delesky
#jira UE-42097 - The Main Frame window will no longer steadily grow if it's closed while not maximized
Change 3405384 on 2017/04/24 by Alex.Delesky
#jira UE-43985 - Duplicating Force Feedback, Sound Wave, or Sound Cue assets from the context menu after right-clicking on the playback controls will now correctly select the newly created asset for rename.
Change 3405386 on 2017/04/24 by Alex.Delesky
#jire UE-42239 - Blueprints that have been duplicated from another blueprint will now render their thumbnails correctly instead of displaying a flat black thumbnail.
Change 3405388 on 2017/04/24 by Alex.Delesky
#jira UE-43241 - Blueprint classes that derive from notplaceable classes (such as SpectatorPawn and GameMode) can no longer be placed within the level editor via the right-click Add/Replace menus
Change 3405394 on 2017/04/24 by Alex.Delesky
#jira UE-42137 - Users can no longer access the widget object of a Widget Component from within actor construction scripts
Change 3405429 on 2017/04/24 by Alex.Delesky
Fixing a naming issue for CL 3405378
Change 3405579 on 2017/04/24 by Cody.Albert
Fixed bad include from CL#1401868
#jira UE-44238
Change 3406716 on 2017/04/24 by Max.Chen
Sequencer: Add attach/detach rules for attach section.
#jira UE-40970
Change 3406718 on 2017/04/24 by Max.Chen
Sequencer: Set component velocity for attached objects
#jira UE-36337
Change 3406721 on 2017/04/24 by Max.Chen
Sequencer: Re-evaluate on stop. This fixes a situation where if you set the playback position to the end of a sequence while it's playing, the sequence will stop playing but won't re-evaluate to the end of the sequence.
#jira UE-43966
Change 3406726 on 2017/04/24 by Max.Chen
Sequencer: Added StopAndGoToEnd() function to player
#jira UE-43967
Change 3406727 on 2017/04/24 by Max.Chen
Sequencer: Add cinematic options to level sequence player
#jira UE-39388
Change 3407097 on 2017/04/25 by Yannick.Lange
VR Editor: Temp asset for free rotation handle gizmo.
Change 3407123 on 2017/04/25 by Michael.Dupuis
#jira UE-44329: Only display the message in attended mode and editor (so user can actually perform the save)
Change 3407135 on 2017/04/25 by Max.Chen
Sequencer: Load level sequence asynchronously.
#jira UE-43807
Change 3407137 on 2017/04/25 by Shaun.Kime
Fixing comments to refer to correct function name.
Change 3407138 on 2017/04/25 by Max.Chen
Sequencer: Mark actor that the spawnable duplicates as a transient so that the level isn't dirtied. Then clear the transient flag on the object template.
#jira UE-30007
Change 3407139 on 2017/04/25 by Max.Chen
Sequencer: Fix active marker in sub, cinematic, control rig sections.
#jira UE-44235
Change 3407229 on 2017/04/25 by Max.Chen
Sequencer: Prioritize buttons over label.
#jira UE-26813
Change 3407343 on 2017/04/25 by Matt.Kuhlenschmidt
Added a world accessor to blutilties so they can operate on the editor world (spawn,destroy actors etc)
Change 3407401 on 2017/04/25 by Nick.Darnell
Slate - Adding a Round function to SlateRect. Also adding a way to convert a Transform2D to a full matrix.
Change 3407842 on 2017/04/25 by Matt.Kuhlenschmidt
Made AssetTools a uobject interface so it could be access from script.
A few methods were deprecated and renamed to enforce a consistent UI. Now all asset tools methods that expose a dialog have "WithDialog" in their name to differentiate them from methods that do not open dialogs and could be used by scripts for automation. C++ users may still access IAssetTools but should not ever need to use the UAssetTools interface class
Change 3407890 on 2017/04/25 by Matt.Kuhlenschmidt
Removed temp method
Change 3408084 on 2017/04/25 by Matt.Kuhlenschmidt
Exposed source control helpers to script
Change 3408163 on 2017/04/25 by Matt.Kuhlenschmidt
Deprecated actor grouping methods on UUnrealEdEngine and moved their functionality into their own class( UActorGroupingUtils). There is a new editor config setting to set which grouping utils class is used and defaults to the base class. The new utility methods are exposed to script.
Change 3408220 on 2017/04/25 by Alex.Delesky
#jira UE-43387 - The Levels window will now support the organization of streaming levels using editor-only folders.
Change 3408239 on 2017/04/25 by Matt.Kuhlenschmidt
Added a file helpers API to script. This one is a wrapper around FEditorFileUtils for now to work around some issues exposing legacy methods to script but FEditorFileUtils will be deprecated soon
Change 3408314 on 2017/04/25 by Jamie.Dale
Fixed typo
Change 3408911 on 2017/04/25 by Max.Chen
Level Editor: Delegate for when viewport tab content changes.
#jira UE-37805
Change 3408912 on 2017/04/25 by Max.Chen
Sequencer: Transport controls are added when viewport content changes and only to viewports that support it (ie. cinematic viewport doesn't allow it since it has its own transport controls). This fixes issues where transport controls wouldn't be visible in newly created viewports and also would get disabled when switching from default to cinematic and back to default.
#jira UE-37805
Change 3409073 on 2017/04/26 by Yannick.Lange
VR Editor: Fix starting point of lasers.
Change 3409330 on 2017/04/26 by Matt.Kuhlenschmidt
Fix CIS
Change 3409497 on 2017/04/26 by Alexis.Matte
Fix crash importing animation with skeleton that do not match the fbx skeleton.
#jira UE-43865
Change 3409530 on 2017/04/26 by Michael.Dupuis
#jira UE-44329: Only display the log if we're not running a commandlet
Change 3409559 on 2017/04/26 by Alex.Delesky
#jira none - Fixing case of header include for CL 3408220
Change 3409577 on 2017/04/26 by Yannick.Lange
VR Editor: being able to push/pull along the laser using touchpad or analog stick when transforming object towards laser impact.
Change 3409614 on 2017/04/26 by Max.Chen
Sequencer: Add Scrub() to movie scene player.
Change 3409658 on 2017/04/26 by Jamie.Dale
Made the handling of null item selection consistent in SComboBox
If the selection was initially null and the combo was closed, it would previously pass through the null entry to its child SListView, which would then always think the selection was changing when the combo was opened and cause it to immediately close again.
Change 3409659 on 2017/04/26 by Jamie.Dale
Added preset Unicode block range selection to the font editor UI
#jira UE-44312
Change 3409755 on 2017/04/26 by Max.Chen
Sequencer: Back out bIsUISound for scrubbing.
Change 3410015 on 2017/04/26 by Max.Chen
Sequencer: Fix crash on asynchronous level sequence player load.
#jira UE-43807
Change 3410094 on 2017/04/26 by Max.Chen
Slate: Enter edit mode and return handled if not read only.
Change 3410151 on 2017/04/26 by Michael.Trepka
Fix for building EngineTest project on Mac
Change 3410930 on 2017/04/27 by Matt.Kuhlenschmidt
Expose editor visibility methods on Actor to blueprint/script
Change 3411164 on 2017/04/27 by Matt.Kuhlenschmidt
Fix crash when repeatedly spaming ctrl+s and ctrl+shift+s to save.
PR #3511: UE-44098: Replace check with if-statement (Contributed by projectgheist)
Change 3411187 on 2017/04/27 by Jamie.Dale
No longer attempt to use the game culture override in the editor
Change 3411443 on 2017/04/27 by Alex.Delesky
#jira UE-43730, UE-43703 - Material Instances will now correctly use their preview meshes when being edited, or will use their parent's preview mesh if their preview mesh has not been set and the parent's is valid.
Change 3411809 on 2017/04/27 by Max.Chen
Sequencer: Prioritize buttons over label.
#jira UE-26813
Change 3411810 on 2017/04/27 by Cody.Albert
Scrollbox now properly calls Invalidate while scrolling
Change 3411892 on 2017/04/27 by Alex.Delesky
#jira UE-40031
PR #3065: Ignore .vs folder when initializing git projects (Contributed by mattiascibien)
Change 3412002 on 2017/04/27 by Jamie.Dale
Fixed crash when using an invalid regex pattern
#jira UE-44340
Change 3412009 on 2017/04/27 by Cody.Albert
Fixed Invalidation Panel to apply scale only to volatile elements, correcting an issue with Cache Relative Positions
Change 3412631 on 2017/04/27 by Jamie.Dale
Implemented support for hiding empty folders in the Content Browser
"Empty" in this case is defined as folders that recursively don't contain assets or classes. Folders that have been created by the user or have at any point contained content during the current editing session are always shown.
This also fixes some places where the content filters would miss certain folders (usually due to missing checks when processing AssetRegistry events), and allows asset and path views to be synced to folder selections (as well as asset selections), which improves the experience when renaming folders, and navigating the Content Browser history.
#jira UE-40038
Change 3413023 on 2017/04/27 by Max.Chen
Sequencer: Fix filtering so that it includes parent nodes only and doesn't recurse through to add their children.
Change 3413309 on 2017/04/28 by Jamie.Dale
Fixed shadow warning
Change 3413327 on 2017/04/28 by Jamie.Dale
Added code to sanitize some known strings before passing them to ICU
Change 3413486 on 2017/04/28 by Matt.Kuhlenschmidt
Allow AssetRenameData to be exposed to blueprints/script
Change 3413630 on 2017/04/28 by Jamie.Dale
Moved FUnicodeBlockRange into Slate so that it can be used for C++ defined fonts as well as those defined in the font editor
Change 3414164 on 2017/04/28 by Jamie.Dale
Removing some type-unsafe placement new array additions
Change 3414497 on 2017/04/28 by Yannick.Lange
ViewportInteraction: - Add arcball sphere asset.
- Add opacity parameter to translucent gizmo material.
Change 3415021 on 2017/04/28 by Max.Chen
Sequencer: Remove spacer nodes at the top and bottom of the node tree.
This fixes the artifact of having spaces at the top and bottom which get selected when you click on the space and when you press Home and End to go to the top or bottom of the tree.
#jira UE-28931
Change 3415786 on 2017/05/01 by Matt.Kuhlenschmidt
#rn PR #3518: Allow PaintedVertices to be sized down (Contributed by jasoncalvert)
Change 3415836 on 2017/05/01 by Alex.Delesky
#jira UE-39203 - You can now summon the reference viewer from the content browser using the keyboard shortcut.
Change 3415837 on 2017/05/01 by Alex.Delesky
#jira UE-34947 - When the user attempts to download an IDE from within the editor (due to needing one to add a C++ class), the window that hosts the widget will now close if it's a modal window.
Change 3415839 on 2017/05/01 by Alex.Delesky
#jira UE-42049
PR #3266: Profiler: added Thread filter (Contributed by StefanoProsperi)
Change 3415842 on 2017/05/01 by Michael.Dupuis
#jira UE-44514 : Removed the warning as it's causing more issue than it fixes.
Change 3416511 on 2017/05/01 by Matt.Kuhlenschmidt
Make UHT generate WITH_EDITOR guards around UFunctions generated in a WITH_EDITOR C++ block. This prevents these functions from being generated in non-editor builds
Change 3416520 on 2017/05/01 by Yannick.Lange
Viewport Interaction: - Toggle ViewportWorldInteraction with command for desktop testing without having to use VREditor.
- Add helper function to add a unique extension by subclass.
Change 3416956 on 2017/05/01 by Matt.Kuhlenschmidt
Exposed EditorLevelUtils to script. This allows creation of streaming levels, setting the current level and moving actors between levels
Change 3416964 on 2017/05/01 by Matt.Kuhlenschmidt
Prevent foliage from marking actors dirty as HISM components are added and removed from the scene.
Change 3416988 on 2017/05/01 by Lauren.Ridge
PR #3122: UE-40262: Color tabs according to asset type (Contributed by projectgheist)
Changed the highlight style to be around the icon and match the content browser color and style.
#jira UE-40437
Change 3418014 on 2017/05/02 by Yannick.Lange
Viewport Interaction: Remove material members from base transform gizmo and use asset container to get materials.
Change 3418087 on 2017/05/02 by Lauren.Ridge
Adding minor tab icon surrounds
Change 3418602 on 2017/05/02 by Jamie.Dale
Fixed a crash that could occur due to bad data in the asset registry
It was possible for FAssetRegistry::PrioritizeSearchPath to re-order the BackgroundAssetResults in response to callback from FAssetRegistry::AssetSearchDataGathered, which caused integrity issues with the array, and would lead to results being missed, or an existing result being processed twice (which due to certain assumptions would result in it being deleted, and bad data being left in the asset registry).
These results lists now use a custom type that prevents the mutation of items that have already been processed but not yet trimmed.
Change 3418702 on 2017/05/02 by Matt.Kuhlenschmidt
Fix USD files that reference other USD files not finding the referenced files by relative path. Requires USD third party changes only
Change 3419071 on 2017/05/02 by Arciel.Rekman
UBT: optimize FixDeps step on Linux.
- Removes the need to re-link unrelated engine libraries when recompiling a code project.
- Makes builds faster on machines with multiple cores.
- The module that has circularly referenced dependencies is considered cross-referenced itself.
- Tested compilation on Linux (native & cross) and Mac (native).
Change 3419240 on 2017/05/02 by Cody.Albert
Bound widgets in animation tracks can no longer be swapped with widgets from a different widget blueprint, which would lead to a crash
Change 3420011 on 2017/05/02 by Max.Chen
Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.
#jira UE-44569
Change 3420507 on 2017/05/03 by Lauren.Ridge
Selecting a camera or other preview actor in VR Mode now creates a floating in-world viewport. Also deselect all Actors when moving into and out of VR Mode
Change 3420643 on 2017/05/03 by andrew.porter
QAGame - Adding test content to QA-Sequencer for using spawnables with override bindings
Change 3420678 on 2017/05/03 by andrew.porter
QAGame: Updating override binding sequence
Change 3420961 on 2017/05/03 by Jamie.Dale
Exposed some missing Internationalization functions to BPs
Change 3422767 on 2017/05/04 by Yannick.Lange
ViewportInteraction: Extensibility for dragging on gizmo handles
Removed ETransformGizmoInteractionType completely and replaced it with UViewportDragOperation. Using the ETransformGizmoInteractionType enum made external extensibility impossible. Now every gizmo handle group has a component called UViewportDragOperationComponent which holds a UViewportDragOperation of a certain type. This UViewportDragOperation can be inherited to create a custom method to calculate a new transform for the objects when dragging the gizmo handle.
Change 3422789 on 2017/05/04 by Yannick.Lange
ViewportInteraction: Fix duplicate console variable.
Change 3422817 on 2017/05/04 by Andrew.Rodham
Sequencer: Changed level sequence object references to always use a package and object path based lookup
- Newly created binding references now consist of a package name and an inner object path for actors, and just an inner object path for components. The package name is fixed up dynamically for PIE, which means it can work correctly for multiplayer PIE, and when levels are streamed in during PIE (functionality previously unavailable to lazy object ptrs)
- Added a way of rebinding all possessable objects in the current sequence (Rebind Possessable References)
- Level sequence binding references no longer use native serialization now that TMap serialization is fully supported.
- Multiple bindings are now supported in the API layer of level sequence references, although this is not yet exposed to the sequencer UI.
#jira UE-44490
Change 3422826 on 2017/05/04 by Andrew.Rodham
Removed erroneous braces
Change 3422874 on 2017/05/04 by James.Golding
Adding MaterialEditingLibrary to allow manipulation of materials within the editor.
- Refactored code out of MaterialEditor where possible
Marked some material types as BP-accessible, to allow to editor-Blueprint access.
Remove unused 'bSkipPrim' property from Set/CheckMaterialUsage
Change 3422942 on 2017/05/04 by Lauren.Ridge
Tab padding adjustment to allow tabs with icons to be the same height as tabs without
Change 3423090 on 2017/05/04 by Jamie.Dale
Added a way to get the source package path for a localized package path
Added tests for the localized package path checks.
Change 3423133 on 2017/05/04 by Jamie.Dale
Fixed a bug where a trailing quote without a newline at the end of a CSV file would be added to the parsed text rather than converted to a terminator
Change 3423301 on 2017/05/04 by Max.Chen
Sequencer: Add JumpToPosition which updates to a position in a scrubbing state.
Change 3423344 on 2017/05/04 by Jamie.Dale
Updated localized asset group caching so that it works in non-cooked builds
Change 3423486 on 2017/05/04 by Lauren.Ridge
Fixing deselection code in VWI
Change 3423502 on 2017/05/04 by Jamie.Dale
Adding automated localization tests
Change 3424219 on 2017/05/04 by Yannick.Lange
- Hide FWidget when ViewportWorldInteraction starts.
- Added option to EditorViewportClient to not render FWidget without using FWidget::SetDefaultVisibility.
Change 3425116 on 2017/05/05 by Matt.Kuhlenschmidt
PR #3527: Modified comments (Contributed by projectgheist)
Change 3425239 on 2017/05/05 by Matt.Kuhlenschmidt
Fix shutdown crash in projects that unregister asset tools in UObjects being destroyed at shutdown.
Change 3425241 on 2017/05/05 by Max.Chen
Sequencer: Components aren't deselected from the sequencer tree view when they get deselected in the viewport/outliner.
#jira UE-44559
Change 3425286 on 2017/05/05 by Jamie.Dale
Text duplicated as part of a widget archetype now maintains its existing key
#jira UE-44715
Change 3425477 on 2017/05/05 by Andrew.Rodham
Sequencer: Do not deprecate legacy object references since they still need to be serialized on save
- Also re-add identical via equality operator so that serialization works again
Change 3425681 on 2017/05/05 by Jamie.Dale
Fixed fallback font height/baseline measuring
Change 3426137 on 2017/05/05 by Jamie.Dale
Removing PPF_Localized
It's an old UE3-ism that's no longer tested anywhere
Change 3427434 on 2017/05/07 by Yannick.Lange
ViewportInteraction: Null check for viewport.
Change 3427905 on 2017/05/08 by Matt.Kuhlenschmidt
Removed the concept of a global selection annotation. This poses a major problem when more than one selection set is clearing it. If more than one selection set is in a transaction the last one to be serialized will clear and rebuild the annotation thus causing out of sync issues with component and actor selection sets. This change introduces the concept of a per-selection set annotation to avoid being out of sync. Actor and ActorComponent now override IsSelected (editor only) to make use of these selections.
#jira UE-44655
Change 3428738 on 2017/05/08 by Matt.Kuhlenschmidt
Fix other usage of USelection not having a selection annotation
#jira UE-44786
Change 3429562 on 2017/05/08 by Matt.Kuhlenschmidt
Fix crash on platforms without a cursor
#jira UE-44815
Change 3429862 on 2017/05/08 by tim.gautier
QAGame: Enable Include CrashReporter in Project Settings
Change 3430385 on 2017/05/09 by Lauren.Ridge
Resetting user focus to game viewport after movie finishes playback
#jira UE-44785
Change 3430695 on 2017/05/09 by Lauren.Ridge
Fix for crash on leaving in the middle of a loading movie
#jira UE-44834
Change 3431234 on 2017/05/09 by Matt.Kuhlenschmidt
Fixed movie player setting all users to focus which breaks VR controllers
[CL 3432852 by Matt Kuhlenschmidt in Main branch]
2017-05-10 11:49:32 -04:00
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
GroupComboButton = NewComboButton;
|
|
|
|
|
GroupEditBox = NewEditBox;
|
|
|
|
|
GroupListView = NewListView;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionParameterDetails::PopulateGroups()
|
|
|
|
|
{
|
|
|
|
|
TArray<FString> Groups;
|
|
|
|
|
CollectGroupsDelegate.ExecuteIfBound(&Groups);
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3431234)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3323393 on 2017/02/27 by Ben.Cosh
This fixes an issue with actor details component selection causing actor selection to get out of sync across undo operations
#Jira UE-40753 - [CrashReport] UE4Editor_LevelEditor!FLevelEditorActionCallbacks::Paste_CanExecute() [leveleditoractions.cpp:1602]
#Proj Engine
Change 3379355 on 2017/04/04 by Lauren.Ridge
Adding sort priorities to Material Parameters and Parameter Groups. If sort priorities are equal, fallback to alphabetical sort. Default sort priority is 0, can be set on the parameter in the base material. Parameters are still sorted within groups.Group sort priority is set on the main material preferences.
Change 3379389 on 2017/04/04 by Nick.Darnell
Core - Removing several old macros that were referring to EMIT_DEPRECATED_WARNING_MESSAGE, which is no longer defined in the engine, so these macros are double deprecated.
Change 3379551 on 2017/04/04 by Nick.Darnell
Automation - Adding more logging to the automation controller when generating reports.
Change 3379554 on 2017/04/04 by Nick.Darnell
UMG - Making the WidgetComponent make more things caneditconst in the editor depending on what the settings are to make it more obvious what works in certain contexts.
Change 3379565 on 2017/04/04 by Nick.Darnell
UMG - Deprecating OPTIONA_BINDING, moving to PROPERTY_BINDING in place and you'll need to define a PROPERTY_BINDING_IMPLEMENTATION. Will make bindings safer to call from blueprints.
Change 3379576 on 2017/04/04 by Lauren.Ridge
Parameter group dropdown now sorts alphabetically
Change 3379592 on 2017/04/04 by JeanMichel.Dignard
Fbx Morph Targets import optimisation
- Only reimport the points for each morphs and compute the tangents for the wedges affected by those points.
- Removed the full skeletal mesh rebuild on each morph target import.
- Allow MeshUtilities::ComputeTangents_MikkTSpace to only recompute the tangents that are zero.
Gains around 7.30 mins for 785 morph targets in mikkt space and 1.30 mins using built-in normals, with provided test file.
#jira UE-34125
Change 3380260 on 2017/04/04 by Nick.Darnell
UMG - Fixing some OPTIONAL_BINDINGS that needed to be converted.
Change 3380551 on 2017/04/05 by Andrew.Rodham
Sequencer: Fixed ImplIndex sometimes not relating to the source data index when compiling at the track level
#jira UE-43446
Change 3380555 on 2017/04/05 by Andrew.Rodham
Sequencer: Automated unit tests for the segment and track compilers
Change 3380647 on 2017/04/05 by Nick.Darnell
UMG - Tweaking some stuff on the experimental rich textblock.
Change 3380719 on 2017/04/05 by Yannick.Lange
Fix 'Compile FortniteClient Mac' and 'Compile Ocean iOS' Failed with Material.cpp errors. Wrapping WITH_EDITOR around ParameterGroupData.
#jira UE-43667
Change 3380765 on 2017/04/05 by Nick.Darnell
UMG - Fixing a few more instances of OPTIONAL_BINDING.
Change 3380786 on 2017/04/05 by Yannick.Lange
Wrap SortPriority in GetParameterSortPriority with WITH_EDITOR.
Change 3380872 on 2017/04/05 by Matt.Kuhlenschmidt
PR #3453: UE-43004: YesNo MessageDialog instead of YesNoCancel (Contributed by projectgheist)
Change 3381635 on 2017/04/05 by Matt.Kuhlenschmidt
Expose static mesh material accessors to blueprints
#jira UE-43631
Change 3381643 on 2017/04/05 by Matt.Kuhlenschmidt
Added a way to enable or disable the component transform units display independently from unit display anywhere else. This is off by default
Change 3381705 on 2017/04/05 by Yannick.Lange
- Slate application multiple input pre-processors.
- Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor.
Change 3381959 on 2017/04/05 by Yannick.Lange
Back out changelist 3381705. Old changelist.
Change 3382049 on 2017/04/05 by Yannick.Lange
- Slate application multiple input pre-processors in a wrapper class.
- Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor.
- Deprecated SetInputPreProcessor, but made it work with RegisterInputPreProcessor and UnregisterInputPreProcessor.
Change 3382450 on 2017/04/06 by Andrew.Rodham
Sequencer: Fixed 'ambiguous' overloaded constructor for UT linux server builds
Change 3382468 on 2017/04/06 by Yannick.Lange
Rename AllowWorldMovement parameter to bAllow.
Change 3382474 on 2017/04/06 by Yannick.Lange
Make GetInteractors constant because we dont want it to be possible to change this arrray.
Change 3382492 on 2017/04/06 by Yannick.Lange
VR Editor: Floating UI's are stored in a map with FNames as key.
Change 3382502 on 2017/04/06 by Yannick.Lange
VR Editor: Use asset container for auto scaler sound.
Change 3382589 on 2017/04/06 by Nick.Darnell
Slate - Upgrading usages of SetInputPreprocessor. Also adjusting the API for the new preprocessor functions to have an option to remove all, which was what several usages expected. Also updated the deprecated version of SetInputPreprocessor to removeall if null is provided for the remove, mimicing the old functionality.
Change 3382594 on 2017/04/06 by Nick.Darnell
UMG - Deprecating GetMousePositionScaledByDPI, this function has too many issues, and I don't want to break buggy backwards compatability, so just going to deprecate it instead. For replacement, you can now access an FGeometry representing the viewport (after DPI scale has been added to the transform stack), and also the FGeometry for a Player's Screen widget host, which might be constrained for splitscreen, or camera aspect.
Change 3382672 on 2017/04/06 by Nick.Darnell
Build - Fixing incremental build.
Change 3382674 on 2017/04/06 by Nick.Darnell
Removing a hack added by launcher.
Change 3382697 on 2017/04/06 by Matt.Kuhlenschmidt
Fixed plugin browser auto-resizing when scrolling. Gave it a proper splitter
Change 3382875 on 2017/04/06 by Michael.Trepka
Modified FMacApplication::OnCursorLock() to avoid a thread safety problem with using TSharedPtr/Ref<FMacWindow> of the same window on main and game threads simultaneously.
#jira FORT-34952
Change 3383303 on 2017/04/06 by Lauren.Ridge
Adding sort priority to texture parameter code
Change 3383561 on 2017/04/06 by Jamie.Dale
Fixed MaximumIntegralDigits incorrectly including group separators in its count
Change 3383570 on 2017/04/06 by Jamie.Dale
Added regression tests for formatting a number with MaximumIntegralDigits and group separators enabled
Change 3384507 on 2017/04/07 by Lauren.Ridge
Mesh painting no longer paints on invisible components. Toggling visiblity refreshes the selected set.
#jira UE-21172
Change 3384804 on 2017/04/07 by Joe.Graf
Fixed a clang error on Linux due to missing virtual destructor when deleting through the interface pointer
#CodeReview: marc.audy
#rb: n/a
Change 3385011 on 2017/04/07 by Matt.Kuhlenschmidt
Fix dirtying levels just by copying actors if the level contains a foliage actor. The foliage system makes lazy asset pointers
#jira UE-43750
Change 3385127 on 2017/04/07 by Lauren.Ridge
Adding WITHEDITOR to OnDragDropCheckOverride
Change 3385241 on 2017/04/07 by Jamie.Dale
Removing warning if asking for a null or empty localization provider
Change 3385442 on 2017/04/07 by Arciel.Rekman
Fix a number of problems with Linux splash.
- Thread safety (UE-40354).
- Inconsistent font (UE-35000).
- Change by Cengiz Terzibas.
Change 3385708 on 2017/04/08 by Lauren.Ridge
Resaving VREditor asset container with engine version
Change 3385711 on 2017/04/08 by Arciel.Rekman
Speculative fix for a non-unity Linux build.
Change 3386120 on 2017/04/10 by Matt.Kuhlenschmidt
Fix stats not being enabled when in simulate
Change 3386289 on 2017/04/10 by Matt.Kuhlenschmidt
PR #3466: Git plugin: add option to autoconfigure Git LFS (Contributed by SRombauts)
Change 3386301 on 2017/04/10 by Matt.Kuhlenschmidt
PR #3470: Git Plugin: disable "Keep Files Checked Out" checkbox on Submit to Source Control Window (Contributed by SRombauts)
Change 3386381 on 2017/04/10 by Michael.Trepka
PR #3461: Mac doesn't return the correct exit code (Contributed by projectgheist)
Change 3388223 on 2017/04/11 by matt.kuhlenschmidt
Deleted collection: MattKTest
Change 3388808 on 2017/04/11 by Lauren.Ridge
Reset arrows now only display for non-default values in the Material Instance editor. Reset to default arrows now are placed in the correct location for SObjectPropertyEntryBox and SPropertyEditorAsset. SResetToDefaultPropertyEditor now takes a property handle in the constructor, instead of an FPropertyEditor.
#jira UE-20882
Change 3388843 on 2017/04/11 by Lauren.Ridge
Forward declaring custom reset override. Fix for incremental build error
Change 3388950 on 2017/04/11 by Nick.Darnell
PR #3450: UMG "Lock" Feature (Contributed by GBX-ABair).
Epic Edit: Made some changes to make it work with named slots, added an option not to always recursively itterate the children, also removed the dependency on SWidget changes.
Change 3388996 on 2017/04/11 by Matt.Kuhlenschmidt
Removed crashtracker
Change 3389004 on 2017/04/11 by Lauren.Ridge
Fix for automated test error - additional safety check for if the reset button has been successfully created.
Change 3389056 on 2017/04/11 by Matt.Kuhlenschmidt
Removed editor live streaming
Change 3389077 on 2017/04/11 by Jamie.Dale
Removing QAGame config change
Change 3389078 on 2017/04/11 by Nick.Darnell
Fortnite - Fixing an input preprocessor warning.
Change 3389136 on 2017/04/11 by Nick.Darnell
Slate - Removing deprecated 'aspect ratio' locking box cells, never really worked, deprecated a long time ago.
Change 3389147 on 2017/04/11 by Nick.Darnell
UMG - Fixing a critical error with the alignment of the lock icon.
#jira UE-43881
Change 3389401 on 2017/04/11 by Nick.Darnell
UMG - Adds a designer option to control respecting the locked mode.
Change 3389638 on 2017/04/11 by Nick.Darnell
UMG - Adding the Widget Reflector button to the widget designer.
Change 3389639 on 2017/04/11 by Nick.Darnell
UMG - Tweaking the respect lock icon.
Change 3390032 on 2017/04/12 by JeanMichel.Dignard
Fixed project generation when using subfolders in Target.SolutionDirectory (ie: SolutionDirectory = "Programs\MyProgram")
Change 3390033 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3472: Exposed Distributions to Game Projects and Plugins (Contributed by StormtideGames)
Change 3390041 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3446: Add missing TryLock to PThreadCriticalSection and add RAII helper for try locking. (Contributed by Laurie-Hedge)
Change 3390196 on 2017/04/12 by Lauren.Ridge
Fix for crash on opening assets without reset to default button enable
Change 3390414 on 2017/04/12 by Matt.Kuhlenschmidt
PR #3300: UE-5528: Added check for empty startup tutorial path (Contributed by projectgheist)
#jira UE-5528
Change 3390427 on 2017/04/12 by Jamie.Dale
Fixed not being able to set pure whitespace values on FText properties
#jira UE-42007
Change 3390712 on 2017/04/12 by Jamie.Dale
Content Browser search now takes the display names of properties into account
#jira UE-39564
Change 3390897 on 2017/04/12 by Nick.Darnell
Slate - Changing the order that the tabs draw in so that the draw front to back, instead of back to front.
Change 3390900 on 2017/04/12 by Nick.Darnell
Making a Cast CastChecked in UScaleBox.
Change 3390907 on 2017/04/12 by Nick.Darnell
UMG - Adding GetMousePositionOnPlatform and GetMousePositionOnViewport as other replacements that people can use rather than GetMousePositionScaledByDPI.
Change 3390934 on 2017/04/12 by Cody.Albert
Fix to set correct draw layer in FSlateElementBatcher::AddElements
Change 3390966 on 2017/04/12 by Nick.Darnell
Input - Force inline some core input functions.
Change 3391207 on 2017/04/12 by Jamie.Dale
Fixed moving a folder containing a level not moving the level
Also removed some redundant usage of ContentBrowserUtils::GetUnloadedAssets
#jira UE-42091
Change 3391327 on 2017/04/12 by Mike.Fricker
Removed Twitch support and GameLiveStreaming
Change 3391405 on 2017/04/12 by Mike.Fricker
Removed Twitch support and GameLiveStreaming (part 2)
Change 3391407 on 2017/04/12 by Mike.Fricker
Removed some remaining EditorLiveStreaming and CrashTracker code
Change 3392296 on 2017/04/13 by Yannick.Lange
VR Editor: New assets in asset containers for gizmo rotation.
Change 3392332 on 2017/04/13 by Nick.Darnell
Slate - Removing delegate hooks from the safezone and scalebox widget when the widgets are cleaned up.
Change 3392349 on 2017/04/13 by Cody.Albert
Corrected typo
Change 3392688 on 2017/04/13 by Yannick.Lange
VR Editor: Resaved asset containers
Change 3392905 on 2017/04/13 by Jamie.Dale
Fixed FPaths::ChangeExtension and FPaths::SetExtension stomping over the path part of a filename if the name part of the had no extension but the path contained a dot, eg) C:/First.Last/file
Change 3393514 on 2017/04/13 by Yannick.Lange
VR Editor: Temp direct interaction pointer.
Change 3393930 on 2017/04/14 by Yannick.Lange
VR Editor: Remove unused transform gizmo
Change 3394084 on 2017/04/14 by Max.Chen
Audio Capture: No longer beta
Change 3394499 on 2017/04/14 by Cody.Albert
Updated UMovieSceneSpawnTrack::PostLoad to call ConditionalPostLoad on bool track before converting it to a spawn track
#rnx
Change 3395703 on 2017/04/17 by Yannick.Lange
Duplicate from Release-4.16 CL 3394172
Viewport Interaction: Fix disable animation when aiming for gizmo stretch handles.
#jira UE-43964
Change 3395794 on 2017/04/17 by Mike.Fricker
#rn Fixed FastXML not loading XML files with attributes delimited by single quote characters
Change 3395945 on 2017/04/17 by Yannick.Lange
VR Editor: Swap end and start of laser, because they start of laser was using end mesh.
Change 3396253 on 2017/04/17 by Michael.Dupuis
#jiraUE-43693:
While moving foliage instance between levels, UI count was'nt updating properly
Moved MoveSelectedFoliageToLevel to EdModeFoliage as we required more treatment than was done in LevelCollectionModel
Ask to save foliage type as asset while moving between level foliage instances containing local foliage type
Change 3396291 on 2017/04/17 by Michael.Dupuis
#jira UE-35029:
Added a cache for mesh bounds so if the bounds changed we can rebuild the occlusion tree
Added possibility to register on bounds changed of a static mesh in editor mode
Rebuild the occlusion tree if the mesh bounds changed
Rebuild the occlusion tree if we change the mesh associated with a foliage type
Optimize some operation to not Rebuild the occlusion tree for every instance added/remove instead it's done at the end of the operation
Change 3396293 on 2017/04/17 by Michael.Dupuis
#jira UE-40685:
Improve Collision With World algo, to support painting pitch rotated instance or not on a flat terrain or slope respecting the specified ground angles
Change 3397660 on 2017/04/18 by Matt.Kuhlenschmidt
PR #3480: Git plugin: improve/cleanup init and settings (Contributed by SRombauts)
Change 3397675 on 2017/04/18 by Alex.Delesky
#jira UE-42383 - Adds a delegate to the placement mode module to allow users to register custom categories and listen to when they should be refreshed.
Change 3397818 on 2017/04/18 by Yannick.Lange
ViewportInteraction and VR Editor: - Replace GENERATED_UCLASS_BODY with GENERATED_BODY.
- Remove destructors for uobjects.
Change 3397832 on 2017/04/18 by Yannick.Lange
VR Editor: Remove unused vreditorbuttoon
Change 3397884 on 2017/04/18 by Yannick.Lange
VREditor: Addition to 3397832, remove unused vreditorbuttoon.
Change 3397985 on 2017/04/18 by Michael.Trepka
Another attempt to solve the issue with dsymutil failing with an error saying the input file did not exist. We now check for the input file's existence in a loop 30 times (once a second) before trying to call dsymutil. Also, added a FixDylibDependencies as a prerequisite for dSYM generation.
#jira UE-43900
Change 3398030 on 2017/04/18 by Jamie.Dale
Fixed outline changes not automatically updating the text layout used by a text block
#jira UE-42116
Change 3398039 on 2017/04/18 by Jamie.Dale
Unified asset drag-and-drop
FAssetDragDropOp now handles both assets and asset paths, and FAssetPathDragDropOp has been removed. This allows assets and folders to be drag-dropped at the same time in the Content Browser.
#jira UE-39208
Change 3398074 on 2017/04/18 by Michael.Dupuis
Fixed crash in cooking fortnite
Change 3398351 on 2017/04/18 by Alex.Delesky
Fixing PlacementMode module build error
Change 3398513 on 2017/04/18 by Yannick.Lange
VR Editor: - Remove unused previousvreditor member.
- Removing extensions when exiting vr mode without having to find the extensions.
Change 3398540 on 2017/04/18 by Alex.Delesky
Removing a private PlacementMode header that was included in a public one.
Change 3399434 on 2017/04/19 by Matt.Kuhlenschmidt
Remove uncessary files from p4
Change 3400657 on 2017/04/19 by Jamie.Dale
Fixed potential underflow when using negative digit ranges with FastDecimalFormat
Change 3400722 on 2017/04/19 by Jamie.Dale
Removed some check's that could trip with malformed data
Change 3401811 on 2017/04/20 by Jamie.Dale
Improved the display of asset tags in the Content Browser
- Numeric tags are now displayed pretty printed.
- Numeric tags can now be displayed as a memory value (the numeric value should be in bytes).
- Dimensional tags are now split and each part pretty printed.
- Date/Time tags are now stored as a timestamp (which has the side effect of sorting correctly) and displayed as a localized date/time.
- The column view now shows the same display values as the tooltips do.
- The tooltip now uses the tag meta-data display name (if set).
- The tag meta-data display name can now be used as an alias in the Content Browser search.
#jira UE-34090
Change 3401868 on 2017/04/20 by Cody.Albert
Add screenshot save directory parameter to editor and project settings
#rn Added options to the settings menu to specify screenshot save directory
Change 3402107 on 2017/04/20 by Jamie.Dale
Cleaned up the "View Options" menu in the Content Browser
Re-organized some of the settings into better groups, and fixed some places where items would still be shown in the asset view when some of these content filter options were disabled (either via a setting, or via the UI).
Change 3402283 on 2017/04/20 by Jamie.Dale
Creating a folder in the Content Browser now creates the folder on disk, and cancelling a folder naming now removes the temporary folder
#jira UE-8892
Change 3402572 on 2017/04/20 by Alex.Delesky
#jira UE-42421
PR #3311: Improved log messages (Contributed by projectgheist)
Change 3403226 on 2017/04/21 by Yannick.Lange
VR Editor: - Removed previous quick menu floating UI panel.
- Added the concept of a info display floating UI panel.
- Used info display for showing sequencer timer.
Change 3403277 on 2017/04/21 by Yannick.Lange
VR Editor: - Set window mesh for info display panel.
- Add option to null out widget when hidden.
Change 3403289 on 2017/04/21 by Yannick.Lange
VR Editor: Don't load VREditorAssetContainer asset when starting editor.
Change 3403353 on 2017/04/21 by Yannick.Lange
VR Editor: Fix variable 'RelativeOffset' is uninitialized when used within its own initialization.
Change 3404183 on 2017/04/21 by Matt.Kuhlenschmidt
Fix typo
Change 3405378 on 2017/04/24 by Alex.Delesky
#jira UE-42550 - Audio thumbnails should never rerender now, even with real-time thumbnails enabled
Change 3405382 on 2017/04/24 by Alex.Delesky
#jira UE-42097 - The Main Frame window will no longer steadily grow if it's closed while not maximized
Change 3405384 on 2017/04/24 by Alex.Delesky
#jira UE-43985 - Duplicating Force Feedback, Sound Wave, or Sound Cue assets from the context menu after right-clicking on the playback controls will now correctly select the newly created asset for rename.
Change 3405386 on 2017/04/24 by Alex.Delesky
#jire UE-42239 - Blueprints that have been duplicated from another blueprint will now render their thumbnails correctly instead of displaying a flat black thumbnail.
Change 3405388 on 2017/04/24 by Alex.Delesky
#jira UE-43241 - Blueprint classes that derive from notplaceable classes (such as SpectatorPawn and GameMode) can no longer be placed within the level editor via the right-click Add/Replace menus
Change 3405394 on 2017/04/24 by Alex.Delesky
#jira UE-42137 - Users can no longer access the widget object of a Widget Component from within actor construction scripts
Change 3405429 on 2017/04/24 by Alex.Delesky
Fixing a naming issue for CL 3405378
Change 3405579 on 2017/04/24 by Cody.Albert
Fixed bad include from CL#1401868
#jira UE-44238
Change 3406716 on 2017/04/24 by Max.Chen
Sequencer: Add attach/detach rules for attach section.
#jira UE-40970
Change 3406718 on 2017/04/24 by Max.Chen
Sequencer: Set component velocity for attached objects
#jira UE-36337
Change 3406721 on 2017/04/24 by Max.Chen
Sequencer: Re-evaluate on stop. This fixes a situation where if you set the playback position to the end of a sequence while it's playing, the sequence will stop playing but won't re-evaluate to the end of the sequence.
#jira UE-43966
Change 3406726 on 2017/04/24 by Max.Chen
Sequencer: Added StopAndGoToEnd() function to player
#jira UE-43967
Change 3406727 on 2017/04/24 by Max.Chen
Sequencer: Add cinematic options to level sequence player
#jira UE-39388
Change 3407097 on 2017/04/25 by Yannick.Lange
VR Editor: Temp asset for free rotation handle gizmo.
Change 3407123 on 2017/04/25 by Michael.Dupuis
#jira UE-44329: Only display the message in attended mode and editor (so user can actually perform the save)
Change 3407135 on 2017/04/25 by Max.Chen
Sequencer: Load level sequence asynchronously.
#jira UE-43807
Change 3407137 on 2017/04/25 by Shaun.Kime
Fixing comments to refer to correct function name.
Change 3407138 on 2017/04/25 by Max.Chen
Sequencer: Mark actor that the spawnable duplicates as a transient so that the level isn't dirtied. Then clear the transient flag on the object template.
#jira UE-30007
Change 3407139 on 2017/04/25 by Max.Chen
Sequencer: Fix active marker in sub, cinematic, control rig sections.
#jira UE-44235
Change 3407229 on 2017/04/25 by Max.Chen
Sequencer: Prioritize buttons over label.
#jira UE-26813
Change 3407343 on 2017/04/25 by Matt.Kuhlenschmidt
Added a world accessor to blutilties so they can operate on the editor world (spawn,destroy actors etc)
Change 3407401 on 2017/04/25 by Nick.Darnell
Slate - Adding a Round function to SlateRect. Also adding a way to convert a Transform2D to a full matrix.
Change 3407842 on 2017/04/25 by Matt.Kuhlenschmidt
Made AssetTools a uobject interface so it could be access from script.
A few methods were deprecated and renamed to enforce a consistent UI. Now all asset tools methods that expose a dialog have "WithDialog" in their name to differentiate them from methods that do not open dialogs and could be used by scripts for automation. C++ users may still access IAssetTools but should not ever need to use the UAssetTools interface class
Change 3407890 on 2017/04/25 by Matt.Kuhlenschmidt
Removed temp method
Change 3408084 on 2017/04/25 by Matt.Kuhlenschmidt
Exposed source control helpers to script
Change 3408163 on 2017/04/25 by Matt.Kuhlenschmidt
Deprecated actor grouping methods on UUnrealEdEngine and moved their functionality into their own class( UActorGroupingUtils). There is a new editor config setting to set which grouping utils class is used and defaults to the base class. The new utility methods are exposed to script.
Change 3408220 on 2017/04/25 by Alex.Delesky
#jira UE-43387 - The Levels window will now support the organization of streaming levels using editor-only folders.
Change 3408239 on 2017/04/25 by Matt.Kuhlenschmidt
Added a file helpers API to script. This one is a wrapper around FEditorFileUtils for now to work around some issues exposing legacy methods to script but FEditorFileUtils will be deprecated soon
Change 3408314 on 2017/04/25 by Jamie.Dale
Fixed typo
Change 3408911 on 2017/04/25 by Max.Chen
Level Editor: Delegate for when viewport tab content changes.
#jira UE-37805
Change 3408912 on 2017/04/25 by Max.Chen
Sequencer: Transport controls are added when viewport content changes and only to viewports that support it (ie. cinematic viewport doesn't allow it since it has its own transport controls). This fixes issues where transport controls wouldn't be visible in newly created viewports and also would get disabled when switching from default to cinematic and back to default.
#jira UE-37805
Change 3409073 on 2017/04/26 by Yannick.Lange
VR Editor: Fix starting point of lasers.
Change 3409330 on 2017/04/26 by Matt.Kuhlenschmidt
Fix CIS
Change 3409497 on 2017/04/26 by Alexis.Matte
Fix crash importing animation with skeleton that do not match the fbx skeleton.
#jira UE-43865
Change 3409530 on 2017/04/26 by Michael.Dupuis
#jira UE-44329: Only display the log if we're not running a commandlet
Change 3409559 on 2017/04/26 by Alex.Delesky
#jira none - Fixing case of header include for CL 3408220
Change 3409577 on 2017/04/26 by Yannick.Lange
VR Editor: being able to push/pull along the laser using touchpad or analog stick when transforming object towards laser impact.
Change 3409614 on 2017/04/26 by Max.Chen
Sequencer: Add Scrub() to movie scene player.
Change 3409658 on 2017/04/26 by Jamie.Dale
Made the handling of null item selection consistent in SComboBox
If the selection was initially null and the combo was closed, it would previously pass through the null entry to its child SListView, which would then always think the selection was changing when the combo was opened and cause it to immediately close again.
Change 3409659 on 2017/04/26 by Jamie.Dale
Added preset Unicode block range selection to the font editor UI
#jira UE-44312
Change 3409755 on 2017/04/26 by Max.Chen
Sequencer: Back out bIsUISound for scrubbing.
Change 3410015 on 2017/04/26 by Max.Chen
Sequencer: Fix crash on asynchronous level sequence player load.
#jira UE-43807
Change 3410094 on 2017/04/26 by Max.Chen
Slate: Enter edit mode and return handled if not read only.
Change 3410151 on 2017/04/26 by Michael.Trepka
Fix for building EngineTest project on Mac
Change 3410930 on 2017/04/27 by Matt.Kuhlenschmidt
Expose editor visibility methods on Actor to blueprint/script
Change 3411164 on 2017/04/27 by Matt.Kuhlenschmidt
Fix crash when repeatedly spaming ctrl+s and ctrl+shift+s to save.
PR #3511: UE-44098: Replace check with if-statement (Contributed by projectgheist)
Change 3411187 on 2017/04/27 by Jamie.Dale
No longer attempt to use the game culture override in the editor
Change 3411443 on 2017/04/27 by Alex.Delesky
#jira UE-43730, UE-43703 - Material Instances will now correctly use their preview meshes when being edited, or will use their parent's preview mesh if their preview mesh has not been set and the parent's is valid.
Change 3411809 on 2017/04/27 by Max.Chen
Sequencer: Prioritize buttons over label.
#jira UE-26813
Change 3411810 on 2017/04/27 by Cody.Albert
Scrollbox now properly calls Invalidate while scrolling
Change 3411892 on 2017/04/27 by Alex.Delesky
#jira UE-40031
PR #3065: Ignore .vs folder when initializing git projects (Contributed by mattiascibien)
Change 3412002 on 2017/04/27 by Jamie.Dale
Fixed crash when using an invalid regex pattern
#jira UE-44340
Change 3412009 on 2017/04/27 by Cody.Albert
Fixed Invalidation Panel to apply scale only to volatile elements, correcting an issue with Cache Relative Positions
Change 3412631 on 2017/04/27 by Jamie.Dale
Implemented support for hiding empty folders in the Content Browser
"Empty" in this case is defined as folders that recursively don't contain assets or classes. Folders that have been created by the user or have at any point contained content during the current editing session are always shown.
This also fixes some places where the content filters would miss certain folders (usually due to missing checks when processing AssetRegistry events), and allows asset and path views to be synced to folder selections (as well as asset selections), which improves the experience when renaming folders, and navigating the Content Browser history.
#jira UE-40038
Change 3413023 on 2017/04/27 by Max.Chen
Sequencer: Fix filtering so that it includes parent nodes only and doesn't recurse through to add their children.
Change 3413309 on 2017/04/28 by Jamie.Dale
Fixed shadow warning
Change 3413327 on 2017/04/28 by Jamie.Dale
Added code to sanitize some known strings before passing them to ICU
Change 3413486 on 2017/04/28 by Matt.Kuhlenschmidt
Allow AssetRenameData to be exposed to blueprints/script
Change 3413630 on 2017/04/28 by Jamie.Dale
Moved FUnicodeBlockRange into Slate so that it can be used for C++ defined fonts as well as those defined in the font editor
Change 3414164 on 2017/04/28 by Jamie.Dale
Removing some type-unsafe placement new array additions
Change 3414497 on 2017/04/28 by Yannick.Lange
ViewportInteraction: - Add arcball sphere asset.
- Add opacity parameter to translucent gizmo material.
Change 3415021 on 2017/04/28 by Max.Chen
Sequencer: Remove spacer nodes at the top and bottom of the node tree.
This fixes the artifact of having spaces at the top and bottom which get selected when you click on the space and when you press Home and End to go to the top or bottom of the tree.
#jira UE-28931
Change 3415786 on 2017/05/01 by Matt.Kuhlenschmidt
#rn PR #3518: Allow PaintedVertices to be sized down (Contributed by jasoncalvert)
Change 3415836 on 2017/05/01 by Alex.Delesky
#jira UE-39203 - You can now summon the reference viewer from the content browser using the keyboard shortcut.
Change 3415837 on 2017/05/01 by Alex.Delesky
#jira UE-34947 - When the user attempts to download an IDE from within the editor (due to needing one to add a C++ class), the window that hosts the widget will now close if it's a modal window.
Change 3415839 on 2017/05/01 by Alex.Delesky
#jira UE-42049
PR #3266: Profiler: added Thread filter (Contributed by StefanoProsperi)
Change 3415842 on 2017/05/01 by Michael.Dupuis
#jira UE-44514 : Removed the warning as it's causing more issue than it fixes.
Change 3416511 on 2017/05/01 by Matt.Kuhlenschmidt
Make UHT generate WITH_EDITOR guards around UFunctions generated in a WITH_EDITOR C++ block. This prevents these functions from being generated in non-editor builds
Change 3416520 on 2017/05/01 by Yannick.Lange
Viewport Interaction: - Toggle ViewportWorldInteraction with command for desktop testing without having to use VREditor.
- Add helper function to add a unique extension by subclass.
Change 3416956 on 2017/05/01 by Matt.Kuhlenschmidt
Exposed EditorLevelUtils to script. This allows creation of streaming levels, setting the current level and moving actors between levels
Change 3416964 on 2017/05/01 by Matt.Kuhlenschmidt
Prevent foliage from marking actors dirty as HISM components are added and removed from the scene.
Change 3416988 on 2017/05/01 by Lauren.Ridge
PR #3122: UE-40262: Color tabs according to asset type (Contributed by projectgheist)
Changed the highlight style to be around the icon and match the content browser color and style.
#jira UE-40437
Change 3418014 on 2017/05/02 by Yannick.Lange
Viewport Interaction: Remove material members from base transform gizmo and use asset container to get materials.
Change 3418087 on 2017/05/02 by Lauren.Ridge
Adding minor tab icon surrounds
Change 3418602 on 2017/05/02 by Jamie.Dale
Fixed a crash that could occur due to bad data in the asset registry
It was possible for FAssetRegistry::PrioritizeSearchPath to re-order the BackgroundAssetResults in response to callback from FAssetRegistry::AssetSearchDataGathered, which caused integrity issues with the array, and would lead to results being missed, or an existing result being processed twice (which due to certain assumptions would result in it being deleted, and bad data being left in the asset registry).
These results lists now use a custom type that prevents the mutation of items that have already been processed but not yet trimmed.
Change 3418702 on 2017/05/02 by Matt.Kuhlenschmidt
Fix USD files that reference other USD files not finding the referenced files by relative path. Requires USD third party changes only
Change 3419071 on 2017/05/02 by Arciel.Rekman
UBT: optimize FixDeps step on Linux.
- Removes the need to re-link unrelated engine libraries when recompiling a code project.
- Makes builds faster on machines with multiple cores.
- The module that has circularly referenced dependencies is considered cross-referenced itself.
- Tested compilation on Linux (native & cross) and Mac (native).
Change 3419240 on 2017/05/02 by Cody.Albert
Bound widgets in animation tracks can no longer be swapped with widgets from a different widget blueprint, which would lead to a crash
Change 3420011 on 2017/05/02 by Max.Chen
Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.
#jira UE-44569
Change 3420507 on 2017/05/03 by Lauren.Ridge
Selecting a camera or other preview actor in VR Mode now creates a floating in-world viewport. Also deselect all Actors when moving into and out of VR Mode
Change 3420643 on 2017/05/03 by andrew.porter
QAGame - Adding test content to QA-Sequencer for using spawnables with override bindings
Change 3420678 on 2017/05/03 by andrew.porter
QAGame: Updating override binding sequence
Change 3420961 on 2017/05/03 by Jamie.Dale
Exposed some missing Internationalization functions to BPs
Change 3422767 on 2017/05/04 by Yannick.Lange
ViewportInteraction: Extensibility for dragging on gizmo handles
Removed ETransformGizmoInteractionType completely and replaced it with UViewportDragOperation. Using the ETransformGizmoInteractionType enum made external extensibility impossible. Now every gizmo handle group has a component called UViewportDragOperationComponent which holds a UViewportDragOperation of a certain type. This UViewportDragOperation can be inherited to create a custom method to calculate a new transform for the objects when dragging the gizmo handle.
Change 3422789 on 2017/05/04 by Yannick.Lange
ViewportInteraction: Fix duplicate console variable.
Change 3422817 on 2017/05/04 by Andrew.Rodham
Sequencer: Changed level sequence object references to always use a package and object path based lookup
- Newly created binding references now consist of a package name and an inner object path for actors, and just an inner object path for components. The package name is fixed up dynamically for PIE, which means it can work correctly for multiplayer PIE, and when levels are streamed in during PIE (functionality previously unavailable to lazy object ptrs)
- Added a way of rebinding all possessable objects in the current sequence (Rebind Possessable References)
- Level sequence binding references no longer use native serialization now that TMap serialization is fully supported.
- Multiple bindings are now supported in the API layer of level sequence references, although this is not yet exposed to the sequencer UI.
#jira UE-44490
Change 3422826 on 2017/05/04 by Andrew.Rodham
Removed erroneous braces
Change 3422874 on 2017/05/04 by James.Golding
Adding MaterialEditingLibrary to allow manipulation of materials within the editor.
- Refactored code out of MaterialEditor where possible
Marked some material types as BP-accessible, to allow to editor-Blueprint access.
Remove unused 'bSkipPrim' property from Set/CheckMaterialUsage
Change 3422942 on 2017/05/04 by Lauren.Ridge
Tab padding adjustment to allow tabs with icons to be the same height as tabs without
Change 3423090 on 2017/05/04 by Jamie.Dale
Added a way to get the source package path for a localized package path
Added tests for the localized package path checks.
Change 3423133 on 2017/05/04 by Jamie.Dale
Fixed a bug where a trailing quote without a newline at the end of a CSV file would be added to the parsed text rather than converted to a terminator
Change 3423301 on 2017/05/04 by Max.Chen
Sequencer: Add JumpToPosition which updates to a position in a scrubbing state.
Change 3423344 on 2017/05/04 by Jamie.Dale
Updated localized asset group caching so that it works in non-cooked builds
Change 3423486 on 2017/05/04 by Lauren.Ridge
Fixing deselection code in VWI
Change 3423502 on 2017/05/04 by Jamie.Dale
Adding automated localization tests
Change 3424219 on 2017/05/04 by Yannick.Lange
- Hide FWidget when ViewportWorldInteraction starts.
- Added option to EditorViewportClient to not render FWidget without using FWidget::SetDefaultVisibility.
Change 3425116 on 2017/05/05 by Matt.Kuhlenschmidt
PR #3527: Modified comments (Contributed by projectgheist)
Change 3425239 on 2017/05/05 by Matt.Kuhlenschmidt
Fix shutdown crash in projects that unregister asset tools in UObjects being destroyed at shutdown.
Change 3425241 on 2017/05/05 by Max.Chen
Sequencer: Components aren't deselected from the sequencer tree view when they get deselected in the viewport/outliner.
#jira UE-44559
Change 3425286 on 2017/05/05 by Jamie.Dale
Text duplicated as part of a widget archetype now maintains its existing key
#jira UE-44715
Change 3425477 on 2017/05/05 by Andrew.Rodham
Sequencer: Do not deprecate legacy object references since they still need to be serialized on save
- Also re-add identical via equality operator so that serialization works again
Change 3425681 on 2017/05/05 by Jamie.Dale
Fixed fallback font height/baseline measuring
Change 3426137 on 2017/05/05 by Jamie.Dale
Removing PPF_Localized
It's an old UE3-ism that's no longer tested anywhere
Change 3427434 on 2017/05/07 by Yannick.Lange
ViewportInteraction: Null check for viewport.
Change 3427905 on 2017/05/08 by Matt.Kuhlenschmidt
Removed the concept of a global selection annotation. This poses a major problem when more than one selection set is clearing it. If more than one selection set is in a transaction the last one to be serialized will clear and rebuild the annotation thus causing out of sync issues with component and actor selection sets. This change introduces the concept of a per-selection set annotation to avoid being out of sync. Actor and ActorComponent now override IsSelected (editor only) to make use of these selections.
#jira UE-44655
Change 3428738 on 2017/05/08 by Matt.Kuhlenschmidt
Fix other usage of USelection not having a selection annotation
#jira UE-44786
Change 3429562 on 2017/05/08 by Matt.Kuhlenschmidt
Fix crash on platforms without a cursor
#jira UE-44815
Change 3429862 on 2017/05/08 by tim.gautier
QAGame: Enable Include CrashReporter in Project Settings
Change 3430385 on 2017/05/09 by Lauren.Ridge
Resetting user focus to game viewport after movie finishes playback
#jira UE-44785
Change 3430695 on 2017/05/09 by Lauren.Ridge
Fix for crash on leaving in the middle of a loading movie
#jira UE-44834
Change 3431234 on 2017/05/09 by Matt.Kuhlenschmidt
Fixed movie player setting all users to focus which breaks VR controllers
[CL 3432852 by Matt Kuhlenschmidt in Main branch]
2017-05-10 11:49:32 -04:00
|
|
|
Groups.Sort([&](const FString& A, const FString& B) {
|
|
|
|
|
return A.ToLower() < B.ToLower();
|
|
|
|
|
});
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
GroupsSource.Empty();
|
|
|
|
|
for (int32 GroupIdx = 0; GroupIdx < Groups.Num(); ++GroupIdx)
|
|
|
|
|
{
|
|
|
|
|
GroupsSource.Add(MakeShareable(new FString(Groups[GroupIdx])));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TSharedRef< ITableRow > FMaterialExpressionParameterDetails::MakeDetailsGroupViewWidget( TSharedPtr<FString> Item, const TSharedRef< STableViewBase >& OwnerTable )
|
|
|
|
|
{
|
|
|
|
|
return SNew(STableRow<TSharedPtr<FString>>, OwnerTable)
|
|
|
|
|
[
|
2015-01-07 09:52:40 -05:00
|
|
|
SNew(STextBlock) .Text(FText::FromString(*Item.Get()))
|
2014-03-14 14:13:41 -04:00
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionParameterDetails::OnSelectionChanged( TSharedPtr<FString> ProposedSelection, ESelectInfo::Type /*SelectInfo*/ )
|
|
|
|
|
{
|
|
|
|
|
if (ProposedSelection.IsValid())
|
|
|
|
|
{
|
|
|
|
|
GroupPropertyHandle->SetValue(*ProposedSelection.Get());
|
|
|
|
|
GroupListView.Pin()->ClearSelection();
|
|
|
|
|
GroupComboButton.Pin()->SetIsOpen(false);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionParameterDetails::OnTextCommitted( const FText& InText, ETextCommit::Type /*CommitInfo*/)
|
|
|
|
|
{
|
|
|
|
|
GroupPropertyHandle->SetValue(InText.ToString());
|
|
|
|
|
PopulateGroups();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FString FMaterialExpressionParameterDetails::OnGetString() const
|
|
|
|
|
{
|
|
|
|
|
FString OutText;
|
|
|
|
|
if (GroupPropertyHandle->GetValue(OutText) == FPropertyAccess::MultipleValues)
|
|
|
|
|
{
|
|
|
|
|
return LOCTEXT("MultipleValues", "Multiple Values").ToString();
|
|
|
|
|
}
|
|
|
|
|
return OutText;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FText FMaterialExpressionParameterDetails::OnGetText() const
|
|
|
|
|
{
|
|
|
|
|
FString NewString = OnGetString();
|
|
|
|
|
return FText::FromString(NewString);
|
|
|
|
|
}
|
|
|
|
|
|
2015-07-01 18:00:42 -04:00
|
|
|
void FMaterialExpressionParameterDetails::OnSliderMinMaxEdited()
|
|
|
|
|
{
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
check(ScalarParameterObjects.Num() == DefaultValueHandles.Num());
|
|
|
|
|
for (int32 Index = 0; Index < ScalarParameterObjects.Num(); Index++)
|
2015-07-01 18:00:42 -04:00
|
|
|
{
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
UMaterialExpressionScalarParameter* ScalarParameter = Cast<UMaterialExpressionScalarParameter>(ScalarParameterObjects[Index].Get());
|
|
|
|
|
|
|
|
|
|
if (ScalarParameter && DefaultValueHandles[Index].IsValid() && DefaultValueHandles[Index]->IsValidHandle())
|
2015-07-01 18:00:42 -04:00
|
|
|
{
|
Copying //UE4/Dev-Editor to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
2015-12-12 08:54:23 -05:00
|
|
|
if (ScalarParameter->SliderMax > ScalarParameter->SliderMin)
|
|
|
|
|
{
|
|
|
|
|
// Update the values that SPropertyEditorNumeric reads
|
|
|
|
|
// Unfortuantly there is no way to recreate the widget to actually update the UI with these new values
|
|
|
|
|
DefaultValueHandles[Index]->SetInstanceMetaData("UIMin", FString::Printf(TEXT("%f"), ScalarParameter->SliderMin));
|
|
|
|
|
DefaultValueHandles[Index]->SetInstanceMetaData("UIMax", FString::Printf(TEXT("%f"), ScalarParameter->SliderMax));
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
DefaultValueHandles[Index]->SetInstanceMetaData("UIMin", TEXT(""));
|
|
|
|
|
DefaultValueHandles[Index]->SetInstanceMetaData("UIMax", TEXT(""));
|
|
|
|
|
}
|
2015-07-01 18:00:42 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
TSharedRef<IDetailCustomization> FMaterialExpressionCollectionParameterDetails::MakeInstance()
|
|
|
|
|
{
|
|
|
|
|
return MakeShareable( new FMaterialExpressionCollectionParameterDetails() );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FMaterialExpressionCollectionParameterDetails::FMaterialExpressionCollectionParameterDetails()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
2014-12-02 13:48:53 -05:00
|
|
|
FText FMaterialExpressionCollectionParameterDetails::GetToolTipText() const
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
if (ParametersSource.Num() == 1)
|
|
|
|
|
{
|
2014-12-02 13:48:53 -05:00
|
|
|
return LOCTEXT("SpecifyCollection", "Specify a Collection to get parameter options");
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2014-12-02 13:48:53 -05:00
|
|
|
return LOCTEXT("ChooseParameter", "Choose a parameter from the collection");
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2015-01-07 09:52:40 -05:00
|
|
|
FText FMaterialExpressionCollectionParameterDetails::GetParameterNameString() const
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
FString CurrentParameterName;
|
|
|
|
|
|
|
|
|
|
FPropertyAccess::Result Result = ParameterNamePropertyHandle->GetValue(CurrentParameterName);
|
|
|
|
|
if( Result == FPropertyAccess::MultipleValues )
|
|
|
|
|
{
|
2015-01-07 09:52:40 -05:00
|
|
|
return NSLOCTEXT("PropertyEditor", "MultipleValues", "Multiple Values");
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
2015-01-07 09:52:40 -05:00
|
|
|
return FText::FromString(CurrentParameterName);
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool FMaterialExpressionCollectionParameterDetails::IsParameterNameComboEnabled() const
|
|
|
|
|
{
|
2014-11-10 11:14:20 -05:00
|
|
|
UMaterialParameterCollection* Collection = nullptr;
|
|
|
|
|
|
|
|
|
|
if (CollectionPropertyHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
UObject* CollectionObject = nullptr;
|
|
|
|
|
verify(CollectionPropertyHandle->GetValue(CollectionObject) == FPropertyAccess::Success);
|
|
|
|
|
Collection = Cast<UMaterialParameterCollection>(CollectionObject);
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
return Collection != nullptr;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionCollectionParameterDetails::OnCollectionChanged()
|
|
|
|
|
{
|
|
|
|
|
PopulateParameters();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionCollectionParameterDetails::CustomizeDetails( IDetailLayoutBuilder& DetailLayout )
|
|
|
|
|
{
|
|
|
|
|
// for expression parameters all their properties are in one category based on their class name.
|
|
|
|
|
FName DefaultCategory = NAME_None;
|
|
|
|
|
IDetailCategoryBuilder& Category = DetailLayout.EditCategory( DefaultCategory );
|
|
|
|
|
|
|
|
|
|
// Get a handle to the property we are about to edit
|
|
|
|
|
ParameterNamePropertyHandle = DetailLayout.GetProperty( "ParameterName" );
|
2014-11-10 11:14:20 -05:00
|
|
|
check(ParameterNamePropertyHandle.IsValid());
|
2014-03-14 14:13:41 -04:00
|
|
|
CollectionPropertyHandle = DetailLayout.GetProperty( "Collection" );
|
2014-11-10 11:14:20 -05:00
|
|
|
check(CollectionPropertyHandle.IsValid());
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
// Register a changed callback on the collection property since we need to update the PropertyName vertical box when it changes
|
|
|
|
|
FSimpleDelegate OnCollectionChangedDelegate = FSimpleDelegate::CreateSP( this, &FMaterialExpressionCollectionParameterDetails::OnCollectionChanged );
|
|
|
|
|
CollectionPropertyHandle->SetOnPropertyValueChanged( OnCollectionChangedDelegate );
|
|
|
|
|
|
|
|
|
|
ParameterNamePropertyHandle->MarkHiddenByCustomization();
|
|
|
|
|
CollectionPropertyHandle->MarkHiddenByCustomization();
|
|
|
|
|
|
|
|
|
|
PopulateParameters();
|
|
|
|
|
|
|
|
|
|
TSharedPtr<SComboButton> NewComboButton;
|
|
|
|
|
TSharedPtr<SListView<TSharedPtr<FString>>> NewListView;
|
|
|
|
|
|
|
|
|
|
// This isn't strictly speaking customized, but we need it to appear before the "Parameter Name" property,
|
|
|
|
|
// so we manually add it and set MarkHiddenByCustomization on it to avoid it being automatically added
|
|
|
|
|
Category.AddProperty(CollectionPropertyHandle);
|
|
|
|
|
|
|
|
|
|
Category.AddCustomRow( ParameterNamePropertyHandle->GetPropertyDisplayName() )
|
|
|
|
|
.NameContent()
|
|
|
|
|
[
|
|
|
|
|
SNew( STextBlock )
|
|
|
|
|
.Text( ParameterNamePropertyHandle->GetPropertyDisplayName() )
|
|
|
|
|
.Font( IDetailLayoutBuilder::GetDetailFont() )
|
|
|
|
|
]
|
|
|
|
|
.ValueContent()
|
|
|
|
|
[
|
|
|
|
|
SAssignNew(NewComboButton, SComboButton)
|
|
|
|
|
.IsEnabled(this, &FMaterialExpressionCollectionParameterDetails::IsParameterNameComboEnabled)
|
|
|
|
|
.ContentPadding(0)
|
|
|
|
|
.ButtonContent()
|
|
|
|
|
[
|
|
|
|
|
SNew(STextBlock)
|
|
|
|
|
.Text(this, &FMaterialExpressionCollectionParameterDetails::GetParameterNameString )
|
|
|
|
|
]
|
|
|
|
|
.MenuContent()
|
|
|
|
|
[
|
|
|
|
|
SNew(SVerticalBox)
|
|
|
|
|
+SVerticalBox::Slot()
|
|
|
|
|
.AutoHeight()
|
|
|
|
|
.MaxHeight(400.0f)
|
|
|
|
|
[
|
|
|
|
|
SAssignNew(NewListView, SListView<TSharedPtr<FString>>)
|
|
|
|
|
.ListItemsSource(&ParametersSource)
|
|
|
|
|
.OnGenerateRow(this, &FMaterialExpressionCollectionParameterDetails::MakeDetailsGroupViewWidget)
|
|
|
|
|
.OnSelectionChanged(this, &FMaterialExpressionCollectionParameterDetails::OnSelectionChanged)
|
|
|
|
|
]
|
|
|
|
|
]
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
ParameterComboButton = NewComboButton;
|
|
|
|
|
ParameterListView = NewListView;
|
|
|
|
|
|
2014-12-02 13:48:53 -05:00
|
|
|
NewComboButton->SetToolTipText(GetToolTipText());
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionCollectionParameterDetails::PopulateParameters()
|
|
|
|
|
{
|
2014-11-10 11:14:20 -05:00
|
|
|
UMaterialParameterCollection* Collection = nullptr;
|
|
|
|
|
|
|
|
|
|
if (CollectionPropertyHandle->IsValidHandle())
|
|
|
|
|
{
|
|
|
|
|
UObject* CollectionObject = nullptr;
|
|
|
|
|
verify(CollectionPropertyHandle->GetValue(CollectionObject) == FPropertyAccess::Success);
|
|
|
|
|
Collection = Cast<UMaterialParameterCollection>(CollectionObject);
|
|
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
ParametersSource.Empty();
|
|
|
|
|
|
|
|
|
|
if (Collection)
|
|
|
|
|
{
|
2020-08-11 01:36:57 -04:00
|
|
|
TArray<FName> NameList;
|
|
|
|
|
Collection->GetParameterNames(NameList, false);
|
|
|
|
|
Collection->GetParameterNames(NameList, true);
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2020-08-11 01:36:57 -04:00
|
|
|
NameList.Sort([](const FName& A, const FName& B)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2020-08-11 01:36:57 -04:00
|
|
|
return A.LexicalLess(B);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
for (const FName& Name : NameList)
|
|
|
|
|
{
|
|
|
|
|
ParametersSource.Add(MakeShareable(new FString(Name.ToString())));
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (ParametersSource.Num() == 0)
|
|
|
|
|
{
|
|
|
|
|
ParametersSource.Add(MakeShareable(new FString(LOCTEXT("NoParameter", "None").ToString())));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TSharedRef< ITableRow > FMaterialExpressionCollectionParameterDetails::MakeDetailsGroupViewWidget( TSharedPtr<FString> Item, const TSharedRef< STableViewBase >& OwnerTable )
|
|
|
|
|
{
|
|
|
|
|
return SNew(STableRow<TSharedPtr<FString>>, OwnerTable)
|
|
|
|
|
[
|
2015-01-07 09:52:40 -05:00
|
|
|
SNew(STextBlock) .Text(FText::FromString(*Item.Get()))
|
2014-03-14 14:13:41 -04:00
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionCollectionParameterDetails::OnSelectionChanged( TSharedPtr<FString> ProposedSelection, ESelectInfo::Type /*SelectInfo*/ )
|
|
|
|
|
{
|
|
|
|
|
if (ProposedSelection.IsValid())
|
|
|
|
|
{
|
|
|
|
|
ParameterNamePropertyHandle->SetValue(*ProposedSelection.Get());
|
|
|
|
|
ParameterListView.Pin()->ClearSelection();
|
|
|
|
|
ParameterComboButton.Pin()->SetIsOpen(false);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2015-06-22 15:55:50 -04:00
|
|
|
TSharedRef<class IDetailCustomization> FMaterialDetailCustomization::MakeInstance()
|
|
|
|
|
{
|
|
|
|
|
return MakeShareable( new FMaterialDetailCustomization );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialDetailCustomization::CustomizeDetails( IDetailLayoutBuilder& DetailLayout )
|
|
|
|
|
{
|
2021-01-28 17:48:58 -04:00
|
|
|
static const auto CVarMaterialEnableControlFlow = IConsoleManager::Get().FindTConsoleVariableDataInt(TEXT("r.MaterialEnableControlFlow"));
|
Early WIP of refactored material HLSL translator/generator.
Only mildly functional currently, my goal here is to get feedback on the high level direction. The new code is disabled by default; it needs to be opted-into per material (and the UI for that is hidden by default behind a CVAR), so it shouldn't affect any existing workflows.
Basic outline:
* UMaterialExpression::Compile is replaced by GenerateHLSLStatement/GenerateHLSLExpression
* GenerateHLSLExpression returns a HLSLTree::FExpression derived object. This is broadly similar to FShaderCodeChunk, except FExpression stores pointers to dependent expressions, and only generates the final HLSL string on demand (EmitHLSL method). FExpression will have many derived classes to represent various HLSL expresisons like Add, Parameter, Constant, etc.
* GenerateHLSLStatement returns a HLSLTree::FStatement. Statements represent chunk of HLSL code rather than a value. 'if(...)' is a statement for example.
* UMaterialExpression will normally override only 1 of GenerateHLSLStatement/GenerateHLSLExpression, although both are possible (for loop may override both, since the for loop index is an expression for example)
* FMaterialHLSLGenerator is the 'context' object passed to GenerateHLSLStatement/GenerateHLSLExpression. This is kind of like FHLSLMaterialTranslator. It's responsible for tracking which scope statements/expressions belong to (this can evolve as a given expression/statement is accessed from multiple UMaterialExpressions)
* HLSLTree.h contains the implementation of Expression and FStatement. I feel like it's possible this could be useful outside of the material system (for example could be shared with Niagara). Will be tricky to partition/organize the code in such a way to make this work though.
* HLSLTreeCommon.h contains derived expression/statement types. The intent is to support plugins that define additional derived types.
* MaterialExpressionHLSL.cpp contains the implementations of GenerateHLSLStatement/GenerateHLSLExpression I've added so far. Eventually all expression types will need to be converted over (this will be a big job). Once the new system is done, we can remove all the old Compile() functions in MaterialExpressions.cpp
* I haven't given any real thought to Strata or analytic derivatives yet, but I don't forsee any serious problem adapting them to this new system
#jira none
#rb arciel.rekman, sebastien.hillaire, rune.stubbe
[CL 15536071 by Ben Ingram in ue5-main branch]
2021-02-25 19:27:22 -04:00
|
|
|
static const auto CVarMaterialEnableNewHLSLGenerator = IConsoleManager::Get().FindTConsoleVariableDataInt(TEXT("r.MaterialEnableNewHLSLGenerator"));
|
2021-01-28 17:48:58 -04:00
|
|
|
|
2015-06-22 15:55:50 -04:00
|
|
|
TArray<TWeakObjectPtr<UObject> > Objects;
|
|
|
|
|
DetailLayout.GetObjectsBeingCustomized( Objects );
|
|
|
|
|
|
|
|
|
|
bool bUIMaterial = true;
|
2019-05-22 10:27:49 -04:00
|
|
|
bool bIsShadingModelFromMaterialExpression = false;
|
2015-06-22 15:55:50 -04:00
|
|
|
for( TWeakObjectPtr<UObject>& Object : Objects )
|
|
|
|
|
{
|
|
|
|
|
UMaterial* Material = Cast<UMaterial>( Object.Get() );
|
|
|
|
|
if( Material )
|
|
|
|
|
{
|
|
|
|
|
bUIMaterial &= Material->IsUIMaterial();
|
2019-05-22 10:27:49 -04:00
|
|
|
|
|
|
|
|
// If any Object has its shading model from material expression
|
|
|
|
|
bIsShadingModelFromMaterialExpression |= Material->IsShadingModelFromMaterialExpression();
|
2015-06-22 15:55:50 -04:00
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
// this shouldn't happen but just in case, let all properties through
|
|
|
|
|
bUIMaterial = false;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2019-05-22 10:27:49 -04:00
|
|
|
// Material category
|
|
|
|
|
{
|
|
|
|
|
IDetailCategoryBuilder& MaterialCategory = DetailLayout.EditCategory( TEXT("Material") );
|
|
|
|
|
|
|
|
|
|
TArray<TSharedRef<IPropertyHandle>> AllProperties;
|
|
|
|
|
MaterialCategory.GetDefaultProperties( AllProperties );
|
|
|
|
|
|
|
|
|
|
for( TSharedRef<IPropertyHandle>& PropertyHandle : AllProperties )
|
|
|
|
|
{
|
2019-12-13 11:07:03 -05:00
|
|
|
FProperty* Property = PropertyHandle->GetProperty();
|
2019-05-22 10:27:49 -04:00
|
|
|
FName PropertyName = Property->GetFName();
|
|
|
|
|
|
|
|
|
|
if (bUIMaterial)
|
|
|
|
|
{
|
|
|
|
|
if( PropertyName != GET_MEMBER_NAME_CHECKED(UMaterial, MaterialDomain)
|
|
|
|
|
&& PropertyName != GET_MEMBER_NAME_CHECKED(UMaterial, BlendMode)
|
|
|
|
|
&& PropertyName != GET_MEMBER_NAME_CHECKED(UMaterial, OpacityMaskClipValue)
|
|
|
|
|
&& PropertyName != GET_MEMBER_NAME_CHECKED(UMaterial, NumCustomizedUVs) )
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideProperty( PropertyHandle );
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2021-01-28 17:48:58 -04:00
|
|
|
if (PropertyName == GET_MEMBER_NAME_CHECKED(UMaterial, bEnableExecWire) && !CVarMaterialEnableControlFlow->GetValueOnAnyThread())
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideProperty(PropertyHandle);
|
|
|
|
|
}
|
|
|
|
|
|
Early WIP of refactored material HLSL translator/generator.
Only mildly functional currently, my goal here is to get feedback on the high level direction. The new code is disabled by default; it needs to be opted-into per material (and the UI for that is hidden by default behind a CVAR), so it shouldn't affect any existing workflows.
Basic outline:
* UMaterialExpression::Compile is replaced by GenerateHLSLStatement/GenerateHLSLExpression
* GenerateHLSLExpression returns a HLSLTree::FExpression derived object. This is broadly similar to FShaderCodeChunk, except FExpression stores pointers to dependent expressions, and only generates the final HLSL string on demand (EmitHLSL method). FExpression will have many derived classes to represent various HLSL expresisons like Add, Parameter, Constant, etc.
* GenerateHLSLStatement returns a HLSLTree::FStatement. Statements represent chunk of HLSL code rather than a value. 'if(...)' is a statement for example.
* UMaterialExpression will normally override only 1 of GenerateHLSLStatement/GenerateHLSLExpression, although both are possible (for loop may override both, since the for loop index is an expression for example)
* FMaterialHLSLGenerator is the 'context' object passed to GenerateHLSLStatement/GenerateHLSLExpression. This is kind of like FHLSLMaterialTranslator. It's responsible for tracking which scope statements/expressions belong to (this can evolve as a given expression/statement is accessed from multiple UMaterialExpressions)
* HLSLTree.h contains the implementation of Expression and FStatement. I feel like it's possible this could be useful outside of the material system (for example could be shared with Niagara). Will be tricky to partition/organize the code in such a way to make this work though.
* HLSLTreeCommon.h contains derived expression/statement types. The intent is to support plugins that define additional derived types.
* MaterialExpressionHLSL.cpp contains the implementations of GenerateHLSLStatement/GenerateHLSLExpression I've added so far. Eventually all expression types will need to be converted over (this will be a big job). Once the new system is done, we can remove all the old Compile() functions in MaterialExpressions.cpp
* I haven't given any real thought to Strata or analytic derivatives yet, but I don't forsee any serious problem adapting them to this new system
#jira none
#rb arciel.rekman, sebastien.hillaire, rune.stubbe
[CL 15536071 by Ben Ingram in ue5-main branch]
2021-02-25 19:27:22 -04:00
|
|
|
if (PropertyName == GET_MEMBER_NAME_CHECKED(UMaterial, bEnableNewHLSLGenerator) && !CVarMaterialEnableNewHLSLGenerator->GetValueOnAnyThread())
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideProperty(PropertyHandle);
|
|
|
|
|
}
|
|
|
|
|
|
2019-05-22 10:27:49 -04:00
|
|
|
#if WITH_EDITORONLY_DATA
|
|
|
|
|
// Hide the shading model
|
|
|
|
|
if (!bIsShadingModelFromMaterialExpression && PropertyName == GET_MEMBER_NAME_CHECKED(UMaterial, UsedShadingModels))
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideProperty(PropertyHandle);
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2015-06-22 15:55:50 -04:00
|
|
|
if( bUIMaterial )
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideCategory( TEXT("TranslucencySelfShadowing") );
|
|
|
|
|
DetailLayout.HideCategory( TEXT("Translucency") );
|
|
|
|
|
DetailLayout.HideCategory( TEXT("Tessellation") );
|
|
|
|
|
DetailLayout.HideCategory( TEXT("PostProcessMaterial") );
|
|
|
|
|
DetailLayout.HideCategory( TEXT("Lightmass") );
|
|
|
|
|
DetailLayout.HideCategory( TEXT("Thumbnail") );
|
|
|
|
|
DetailLayout.HideCategory( TEXT("MaterialInterface") );
|
|
|
|
|
DetailLayout.HideCategory( TEXT("PhysicalMaterial") );
|
|
|
|
|
DetailLayout.HideCategory( TEXT("Usage") );
|
|
|
|
|
|
Copying //UE4/WEX-Staging/... to //UE4/Main (Source: //WEX/Main @ 3580612)
#rb none
#lockdown nick.penwarden
=================================================================================================
MAJOR FEATURES + CHANGES
=================================================================================================
Change 3526838 by David.Nikdel
#WEX: make map elements support TitleProperty on their values in the editor
#JIRA: none
Change 3517937 by Ben.Zeigler
#jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure
Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases
Change 3498765 by David.Nikdel
#WEX: Added a way to bind a delegate that fires whenever an analytics event is queued.
- Bind this delegate and use it to log analytics events (for now)
#JIRA: none
Change 3495796 by Josh.May
#WEX
#JIRA: None
- Reworked the LoadTimes.DumpReport console command to accept command arguments and added options for alphanumeric sorting (-alphasort), tweakable asset time cutoff (lowtime=X), and file output to the Saved/Profiling directory (file).
- Added hooks for automatically generating load time reports for every map load (enabled using the DUMP_LOAD_REPORT_PER_MAP #define).
Change 3489241 by Josh.Markiewicz
#UE4 - First unfinished pass to GoogleIOS
- SDK auth token data needs to copy auth into TMap properly
#jira none
Change 3487767 by David.Nikdel
#Analytics: Make FAnalyticsEventAttribute support typed values
- This makes sure the value types in the resultant JSON reflect the code.
- Added support for Number (double), Boolean, Null, and JsonFragment types
- This should make it so we don't have to whitelist everything to be converted to number on the Grafana processing side.
- Made all attributes on FAnalyticsEventAttribute immutable
#JIRA: WEX-6696, WEX-6706
Change 3478818 by Chris.Babcock
Add detection of Houdini (running on Intel Android CPU)
#jira WEX-5009
#ue4
#android
#robomerge R1.2
Change 3475449 by Allan.Bentham
Add disable force inline option for iOS build, enabled for WEX.
#jira UEMOB-167
[CL 3588553 by Peter Sauerbrei in Main branch]
2017-08-15 16:16:21 -04:00
|
|
|
// Mobile category
|
|
|
|
|
{
|
|
|
|
|
IDetailCategoryBuilder& MobileCategory = DetailLayout.EditCategory(TEXT("Mobile"));
|
|
|
|
|
|
|
|
|
|
TArray<TSharedRef<IPropertyHandle>> AllProperties;
|
|
|
|
|
MobileCategory.GetDefaultProperties(AllProperties);
|
|
|
|
|
|
|
|
|
|
for (TSharedRef<IPropertyHandle>& PropertyHandle : AllProperties)
|
|
|
|
|
{
|
2019-12-13 11:07:03 -05:00
|
|
|
FProperty* Property = PropertyHandle->GetProperty();
|
Copying //UE4/WEX-Staging/... to //UE4/Main (Source: //WEX/Main @ 3580612)
#rb none
#lockdown nick.penwarden
=================================================================================================
MAJOR FEATURES + CHANGES
=================================================================================================
Change 3526838 by David.Nikdel
#WEX: make map elements support TitleProperty on their values in the editor
#JIRA: none
Change 3517937 by Ben.Zeigler
#jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure
Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases
Change 3498765 by David.Nikdel
#WEX: Added a way to bind a delegate that fires whenever an analytics event is queued.
- Bind this delegate and use it to log analytics events (for now)
#JIRA: none
Change 3495796 by Josh.May
#WEX
#JIRA: None
- Reworked the LoadTimes.DumpReport console command to accept command arguments and added options for alphanumeric sorting (-alphasort), tweakable asset time cutoff (lowtime=X), and file output to the Saved/Profiling directory (file).
- Added hooks for automatically generating load time reports for every map load (enabled using the DUMP_LOAD_REPORT_PER_MAP #define).
Change 3489241 by Josh.Markiewicz
#UE4 - First unfinished pass to GoogleIOS
- SDK auth token data needs to copy auth into TMap properly
#jira none
Change 3487767 by David.Nikdel
#Analytics: Make FAnalyticsEventAttribute support typed values
- This makes sure the value types in the resultant JSON reflect the code.
- Added support for Number (double), Boolean, Null, and JsonFragment types
- This should make it so we don't have to whitelist everything to be converted to number on the Grafana processing side.
- Made all attributes on FAnalyticsEventAttribute immutable
#JIRA: WEX-6696, WEX-6706
Change 3478818 by Chris.Babcock
Add detection of Houdini (running on Intel Android CPU)
#jira WEX-5009
#ue4
#android
#robomerge R1.2
Change 3475449 by Allan.Bentham
Add disable force inline option for iOS build, enabled for WEX.
#jira UEMOB-167
[CL 3588553 by Peter Sauerbrei in Main branch]
2017-08-15 16:16:21 -04:00
|
|
|
FName PropertyName = Property->GetFName();
|
|
|
|
|
|
2021-05-23 11:58:03 -04:00
|
|
|
if (PropertyName != GET_MEMBER_NAME_CHECKED(UMaterial, FloatPrecisionMode))
|
Copying //UE4/WEX-Staging/... to //UE4/Main (Source: //WEX/Main @ 3580612)
#rb none
#lockdown nick.penwarden
=================================================================================================
MAJOR FEATURES + CHANGES
=================================================================================================
Change 3526838 by David.Nikdel
#WEX: make map elements support TitleProperty on their values in the editor
#JIRA: none
Change 3517937 by Ben.Zeigler
#jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure
Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases
Change 3498765 by David.Nikdel
#WEX: Added a way to bind a delegate that fires whenever an analytics event is queued.
- Bind this delegate and use it to log analytics events (for now)
#JIRA: none
Change 3495796 by Josh.May
#WEX
#JIRA: None
- Reworked the LoadTimes.DumpReport console command to accept command arguments and added options for alphanumeric sorting (-alphasort), tweakable asset time cutoff (lowtime=X), and file output to the Saved/Profiling directory (file).
- Added hooks for automatically generating load time reports for every map load (enabled using the DUMP_LOAD_REPORT_PER_MAP #define).
Change 3489241 by Josh.Markiewicz
#UE4 - First unfinished pass to GoogleIOS
- SDK auth token data needs to copy auth into TMap properly
#jira none
Change 3487767 by David.Nikdel
#Analytics: Make FAnalyticsEventAttribute support typed values
- This makes sure the value types in the resultant JSON reflect the code.
- Added support for Number (double), Boolean, Null, and JsonFragment types
- This should make it so we don't have to whitelist everything to be converted to number on the Grafana processing side.
- Made all attributes on FAnalyticsEventAttribute immutable
#JIRA: WEX-6696, WEX-6706
Change 3478818 by Chris.Babcock
Add detection of Houdini (running on Intel Android CPU)
#jira WEX-5009
#ue4
#android
#robomerge R1.2
Change 3475449 by Allan.Bentham
Add disable force inline option for iOS build, enabled for WEX.
#jira UEMOB-167
[CL 3588553 by Peter Sauerbrei in Main branch]
2017-08-15 16:16:21 -04:00
|
|
|
{
|
|
|
|
|
DetailLayout.HideProperty(PropertyHandle);
|
|
|
|
|
}
|
2015-06-22 15:55:50 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2022-01-10 19:25:13 -05:00
|
|
|
TSharedRef<class IDetailCustomization> FMaterialFunctionDetailCustomization::MakeInstance()
|
|
|
|
|
{
|
|
|
|
|
return MakeShareable(new FMaterialFunctionDetailCustomization);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialFunctionDetailCustomization::CustomizeDetails(IDetailLayoutBuilder& DetailLayout)
|
|
|
|
|
{
|
|
|
|
|
static const auto CVarMaterialEnableControlFlow = IConsoleManager::Get().FindTConsoleVariableDataInt(TEXT("r.MaterialEnableControlFlow"));
|
|
|
|
|
static const auto CVarMaterialEnableNewHLSLGenerator = IConsoleManager::Get().FindTConsoleVariableDataInt(TEXT("r.MaterialEnableNewHLSLGenerator"));
|
|
|
|
|
|
|
|
|
|
// MaterialFunction category
|
|
|
|
|
{
|
|
|
|
|
IDetailCategoryBuilder& MaterialCategory = DetailLayout.EditCategory(TEXT("MaterialFunction"));
|
|
|
|
|
|
|
|
|
|
TArray<TSharedRef<IPropertyHandle>> AllProperties;
|
|
|
|
|
MaterialCategory.GetDefaultProperties(AllProperties);
|
|
|
|
|
|
|
|
|
|
for (TSharedRef<IPropertyHandle>& PropertyHandle : AllProperties)
|
|
|
|
|
{
|
|
|
|
|
FProperty* Property = PropertyHandle->GetProperty();
|
|
|
|
|
FName PropertyName = Property->GetFName();
|
|
|
|
|
|
|
|
|
|
if (PropertyName == GET_MEMBER_NAME_CHECKED(UMaterialFunction, bEnableExecWire) && !CVarMaterialEnableControlFlow->GetValueOnAnyThread())
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideProperty(PropertyHandle);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (PropertyName == GET_MEMBER_NAME_CHECKED(UMaterialFunction, bEnableNewHLSLGenerator) && !CVarMaterialEnableNewHLSLGenerator->GetValueOnAnyThread())
|
|
|
|
|
{
|
|
|
|
|
DetailLayout.HideProperty(PropertyHandle);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
|
|
|
TSharedRef<class IDetailCustomization> FMaterialExpressionLayersParameterDetails::MakeInstance(FOnCollectParameterGroups InCollectGroupsDelegate)
|
|
|
|
|
{
|
|
|
|
|
return MakeShareable(new FMaterialExpressionLayersParameterDetails(InCollectGroupsDelegate));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FMaterialExpressionLayersParameterDetails::FMaterialExpressionLayersParameterDetails(FOnCollectParameterGroups InCollectGroupsDelegate)
|
|
|
|
|
{
|
|
|
|
|
CollectGroupsDelegate = InCollectGroupsDelegate;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionLayersParameterDetails::CustomizeDetails(IDetailLayoutBuilder& DetailLayout)
|
|
|
|
|
{
|
|
|
|
|
FMaterialExpressionParameterDetails::CustomizeDetails(DetailLayout);
|
|
|
|
|
// for expression parameters all their properties are in one category based on their class name.
|
|
|
|
|
FName LayerCategory = FName("Layers");
|
|
|
|
|
IDetailCategoryBuilder& Category = DetailLayout.EditCategory(LayerCategory);
|
|
|
|
|
// Get a handle to the property we are about to edit
|
|
|
|
|
GroupPropertyHandle = DetailLayout.GetProperty("DefaultLayers");
|
|
|
|
|
GroupPropertyHandle->MarkHiddenByCustomization();
|
|
|
|
|
TSharedRef<FMaterialLayersFunctionsCustomization> MaterialLayersFunctionsCustomization = MakeShareable(new FMaterialLayersFunctionsCustomization(GroupPropertyHandle, &DetailLayout));
|
|
|
|
|
Category.AddCustomBuilder(MaterialLayersFunctionsCustomization);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2020-10-07 10:35:24 -04:00
|
|
|
TSharedRef<class IDetailCustomization> FMaterialExpressionCompositeDetails::MakeInstance()
|
|
|
|
|
{
|
|
|
|
|
return MakeShareable(new FMaterialExpressionCompositeDetails());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FMaterialExpressionCompositeDetails::CustomizeDetails(IDetailLayoutBuilder& DetailLayout)
|
|
|
|
|
{
|
|
|
|
|
FName DefaultCategory = NAME_None;
|
|
|
|
|
IDetailCategoryBuilder& Category = DetailLayout.EditCategory(DefaultCategory);
|
|
|
|
|
Category.AddProperty("SubgraphName");
|
|
|
|
|
|
|
|
|
|
const FName MaterialExpressionCategory = TEXT("MaterialExpression");
|
|
|
|
|
IDetailCategoryBuilder& ExpressionCategory = DetailLayout.EditCategory(MaterialExpressionCategory);
|
|
|
|
|
|
|
|
|
|
TArray< TWeakObjectPtr<UObject> > Objects;
|
|
|
|
|
DetailLayout.GetObjectsBeingCustomized(Objects);
|
|
|
|
|
|
|
|
|
|
for (const auto& WeakObjectPtr : Objects)
|
|
|
|
|
{
|
|
|
|
|
UObject* Object = WeakObjectPtr.Get();
|
|
|
|
|
|
|
|
|
|
UMaterialExpressionComposite* Composite = Cast<UMaterialExpressionComposite>(Object);
|
|
|
|
|
|
|
|
|
|
if (Composite)
|
|
|
|
|
{
|
|
|
|
|
if (IDetailPropertyRow* PinBaseRow = ExpressionCategory.AddExternalObjectProperty({Composite->InputExpressions}, GET_MEMBER_NAME_CHECKED(UMaterialExpressionPinBase, ReroutePins)))
|
|
|
|
|
{
|
|
|
|
|
PinBaseRow->DisplayName(LOCTEXT("InputPinsComposite", "Input Pins"));
|
|
|
|
|
PinBaseRow->Visibility(EVisibility::Visible);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (IDetailPropertyRow* PinBaseRow = ExpressionCategory.AddExternalObjectProperty({Composite->OutputExpressions }, GET_MEMBER_NAME_CHECKED(UMaterialExpressionPinBase, ReroutePins)))
|
|
|
|
|
{
|
|
|
|
|
PinBaseRow->DisplayName(LOCTEXT("OutPinsComposite", "Output Pins"));
|
|
|
|
|
PinBaseRow->Visibility(EVisibility::Visible);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
#undef LOCTEXT_NAMESPACE
|