Commit Graph

129 Commits

Author SHA1 Message Date
Graeme Thornton
8d8ebe62d9 Added _DEPRECATED to both GRHIFeatureLevel and GRHIShaderPlatform, to indicate that they shouldn't be used any more. Added documention to describe why this has been done
#codereview Nick.Penwarden

[CL 2322612 by Graeme Thornton in Main branch]
2014-10-08 09:48:43 -04:00
Gil Gribb
86ba06e88f UE4 - Remove xbox from PC version of split d3d11rhi
[CL 2319732 by Gil Gribb in Main branch]
2014-10-06 10:05:16 -04:00
Michael Noland
2f0a414b41 Engine: Coding-standards fixes (TypeName [*|&] VariableName -> TypeName[*|&] VariableName)
[CL 2316338 by Michael Noland in Main branch]
2014-10-01 14:45:04 -04:00
Jaroslaw Palczynski
65ba5d456f TArray documentation and a coupld of methods deprecation.
Changes mostly in Array.h. The changes in other files are only renames for deprecated functions.

[CL 2312616 by Jaroslaw Palczynski in Main branch]
2014-09-29 04:23:44 -04:00
Martin Mittring
d56f8e5153 moved log printout of VRam from XboxOne code into main code to also print texture name and format, avoid re-request of a VRam texture in case the limit was laready reached
[CL 2311217 by Martin Mittring in Main branch]
2014-09-26 12:36:52 -04:00
Marc Audy
ada4cf303f Rename AReverbVolume to AAudioVolume
[CL 2311102 by Marc Audy in Main branch]
2014-09-26 11:32:27 -04:00
Keith Judge
896837a82a Memory leak fix for state cache.
[CL 2309517 by Keith Judge in Main branch]
2014-09-25 04:44:48 -04:00
Gil Gribb
ac7c2bbf42 UE4 - use a local bound shader state for long GPU task for RHI thread compatibility
[CL 2300806 by Gil Gribb in Main branch]
2014-09-17 07:40:19 -04:00
Jamie Dale
b1076751ff Made FName case-preserving by storing case-variant strings in its string table
This is controlled by the macro "WITH_CASE_PRESERVING_NAME", which is currently just set to "WITH_EDITORONLY_DATA" so that it works in editor builds (and UHT).

Added an extra NAME_INDEX entry to FName to store a second string table index for a case-variant string. The previous Index value (now called ComparisonIndex) is still used for comparison purposes (as FNames are still case-insensitive).

The Init process for an FName now works like this:
 1) It will find or add a string table entry for the given string (not matching case) - this entry index is stored in ComparisonIndex.
 2) It will then compare the string table entry string against the given string (matching case) to see if it also needs to add a case-variant entry for the FName.
 3) If it does, it finds or adds a second string table entry (matching case) for the string - this entry index is stored in DisplayIndex.

Hard-coded FNames (those listed in UnrealNames.h) do not support case-variants (due to existing network replication rules for hard-coded FNames), so they skip steps 2 and 3.

I added FMinimalName, which is the same size as FName was previously. This shouldn't really be used (and as such, is deliberately awkward to make/use) as it loses the case-preserving behaviour of FName, however it was required for some things (like stats) that had a hard-coded upper limit on FName size.

I added FScriptName, which always contains the extra display index (even when WITH_CASE_PRESERVING_NAME is disabled). This is used by Blueprint bytecode, as the types used by Blueprint bytecode must be a consistent size between all build configurations.

Other changes:

 - Fixed up any places that were passing an Index into the FName constructor which was supposed to take an EName.
     - Some places were doing this to make the number unique when replicating an object, but this was losing the case-variant information, so I had to fix them.
     - FName will now assert if the EName constructor is used with an value outside the range of hard-coded FNames.

 - Ensured that assets, actors, and blueprint components could all be renamed in a way that only changed their case, and that these changes were correctly persisted.

 - Added FLinkerNamePairKeyFuncs and TLinkerNameMapKeyFuncs for use with TSet and TMap.
     - These allow ULinkerSave and ULinkerLoad to correctly write out case-variants for FNames, and also fixes an issue where the linker would erroneously write out duplicate string table entries for FNames which had a different number (causing package bloat).

 - Bumped VER_MIN_SCRIPTVM_UE4 so that all Blueprint bytecode is recompiled using FScriptName.

ReviewedBy Robert.Manuszewski, Gil.Gribb

[CL 2300730 by Jamie Dale in Main branch]
2014-09-17 05:24:55 -04:00
Rolando Caloca
e2c488d888 UE4 - Remove Metal horrible hack, use new SetRenderTargets api
#codereview Josh.Adams

[CL 2299859 by Rolando Caloca in Main branch]
2014-09-16 14:51:25 -04:00
Rolando Caloca
5c417a2bc4 UE4 - Fix ambiguity
[CL 2298925 by Rolando Caloca in Main branch]
2014-09-15 19:18:11 -04:00
Rolando Caloca
09f73697a7 UE4 - new RHISetRenderTargets API
#codereview Gil.Gribb

[CL 2298900 by Rolando Caloca in Main branch]
2014-09-15 18:38:19 -04:00
Graeme Thornton
ff5e71eb16 WIP Mobile Preview
- Store global bitfield of active feature levels
 - Generate shaders for all active feature levels
 - Add option to experimental settings to enable dynamic feature level
 - Redirect GRHIFeatureLevel to GMaxRHIFeatureLevel - Effectively const now, ready to be removed

[CL 2296373 by Graeme Thornton in Main branch]
2014-09-13 10:47:14 -04:00
Nick Penwarden
fc8e35f5ad Fix D3D11 leaking resources when deferred deletion is enabled
[CL 2295369 by Nick Penwarden in Main branch]
2014-09-12 14:11:50 -04:00
Gil Gribb
598cbb659c UE4 - allow draw events to work in parallel rendering, some flush tweaks
[CL 2293700 by Gil Gribb in Main branch]
2014-09-11 09:38:38 -04:00
Gil Gribb
028e20b821 UE4 - parallel rendering tweaks. XB1 pseduo-threadsafe query readback. virtual RHI call elimination, optional (and disabled) stats on RHI commands. Disabled state reduction.
[CL 2290946 by Gil Gribb in Main branch]
2014-09-09 12:21:31 -04:00
Rolando Caloca
db3a94f08e UE4 - Remove Feature Level SM3 & replace it with ES 3.1.
- Fixes up the featurelevel switch on material nodes to default all ES2 inputs to also occur on ES3.1

[CL 2286623 by Rolando Caloca in Main branch]
2014-09-05 15:06:43 -04:00
Mike Fricker
2c6f571a5d Various compilation fixes for Clang on Windows platform
- Fixed some warnings and errors in Windows code when bCompileWithClang=true

[CL 2284753 by Mike Fricker in Main branch]
2014-09-04 13:15:42 -04:00
Gil Gribb
2138564178 UE4 - RHI Thread implementation for XB1
[CL 2284612 by Gil Gribb in Main branch]
2014-09-04 11:35:18 -04:00
Nick Penwarden
128c2f4a9e Remove stats that are no longer useful and were causing many calls to Cycles per frame.
[CL 2278121 by Nick Penwarden in Main branch]
2014-08-29 16:31:30 -04:00
Graeme Thornton
df9dbd5ae3 Continued in-editor mobile preview work
- Removed default shader platform parameter from GetGlobalShaderMap()
 - Added an inline overload of GetGlobalShaderMap() that takes a feature level instead, and translates to the correct shader platform
 - Cached feature level on FSceneView for faster access
 - Cached shader map on FViewInfo for faster access
 - Cached featurelevel/shadermap on rendering composition graph execution context, for faster access

Fixed a couple of crashes when switching feature level dynamically
 - Needed to allow certain shader permutations to be generated if feature level was ES2, but still on a PC platform. (i.e. hitproxy shaders, and basepass shaders used by editor primitives system)

#codereview Nick.Penwarden

[CL 2275937 by Graeme Thornton in Main branch]
2014-08-28 06:22:54 -04:00
Rolando Caloca
14cc8f09a3 UE4 - Integrate
- Addes 3_1 define on shaders
- Fixes GL packed uniforms array size incorrect assert
- Disallows running the editor with -featureleveles2
- r.MobileHDR is now read-only
- Moved some checks from SM3 to SM4

[CL 2270866 by Rolando Caloca in Main branch]
2014-08-25 14:41:54 -04:00
Ben Marsh
e9f8b8d3a1 Fixup multiline comments that are meant to be documentation. Need to start with /** for doxygen to parse them.
[CL 2265840 by Ben Marsh in Main branch]
2014-08-21 08:33:39 -04:00
Mikolaj Sieluzycki
cfaf45ac58 Header cleanup: Engine module, public headers.
[CL 2265766 by Mikolaj Sieluzycki in Main branch]
2014-08-21 06:03:00 -04:00
Graeme Thornton
bcde0d05c2 Mobile Preview
* More removal of GRHIFeatureLevel and GRHIShaderPlatform

[CL 2262530 by Graeme Thornton in Main branch]
2014-08-19 10:41:34 -04:00