Commit Graph

34 Commits

Author SHA1 Message Date
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
Daniel Wright
bbffb27aaf Fixed specular on movable skylights
* Removed double normalization from stationary skylight specular

[CL 2239230 by Daniel Wright in Main branch]
2014-07-31 19:39:39 -04:00
Graeme Thornton
747d2a9b9d Mobile Preview In Editor
- Material editor preview nodes now work when the editor is in es2 mode
 - Make editor primitives work in ES2 mode
 - Fix slate font rendering in ES2 mode
 - Remove ES2 shader de-gamma when in the editor
 - Add a new linear sampler type for linear textures
 - Various fixes for dynamic feature level switching
 - When in an emulated feature level mode, display some text in the level editor viewport saying what feature level we're running
 - Removed feature level parameter from USkeletalMesh::GetResourceForRendering. Not used for anything
 - ParticleVertexFactoryPool is now creates feature level specific vertex factories.

[CL 2187558 by Graeme Thornton in Main branch]
2014-07-10 10:39:54 -04:00
Gil Gribb
a5e5aef45d UE4 - cleaned up the recursive RHI usage for command lists and added these RHI mthods as queuable RHICopyToResolveTarget, RHICLear, RHIClearMRT, RHIClearUAV
[CL 2181497 by Gil Gribb in Main branch]
2014-07-09 11:02:23 -04:00
Gil Gribb
30f1fe2722 UE4 - further command list work. BoundShaderState, RHISetComputeShader, RHIDispatchComputeShader, RHIDispatchIndirectComputeShader, RHIAutomaticCacheFlushAfterComputeShader, RHIDrawPrimitiveIndirect, RHIDrawIndexedIndirect, RHIDrawIndexedPrimitiveIndirect, RHIEnableDepthBoundsTest
[CL 2175853 by Gil Gribb in Main branch]
2014-07-08 10:43:52 -04:00
Gil Gribb
fa40806ce3 UE4 - More RHI command list work. Remove more cases of GetImmediateCommandList
[CL 2124713 by Gil Gribb in Main branch]
2014-07-02 12:18:30 -04:00
Rolando Caloca
99ae52dcea UE4 - Fix PS4 compile issues
#codereview Gil.Gribb

[CL 2119715 by Rolando Caloca in Main branch]
2014-06-27 14:17:57 -04:00
Gil Gribb
1d50eae0de UE4 - rework RHI user-facing APIs to be safer and incorporate the desired sematics
[CL 2119499 by Gil Gribb in Main branch]
2014-06-27 11:07:13 -04:00
Brian Karis
29c87eafd7 Added clear coat shading model. Fixed incorrect reflection capture filtering.
Needs some clean up still. Standard deferred reflections not implemented yet. Tiled deferred reflections needs some optimization. ClearCoat and ClearCoatRoughness needs to be exposed to the material editor.

[CL 2118481 by Brian Karis in Main branch]
2014-06-26 16:40:05 -04:00
Brian Karis
1eda5e2e8d Moved FMaterialShaderto renderer public so slate can access it.
[CL 2115613 by Brian Karis in Main branch]
2014-06-24 14:37:21 -04:00
Gil Gribb
bc7c8cbca8 UE4 - more work preparing for parallel rendering. Merged the cmd list into the post process context, among other things.
[CL 2103040 by Gil Gribb in Main branch]
2014-06-12 07:13:34 -04:00
Graeme Thornton
be68b29d63 Remove spurious ClearScratchCubemaps() from CaptureSceneToScratchCubemap()
CaptureSceneToScratchCubemap() is called once per cube face, so we were clearing the whole cubemap before drawing each face, meaning only the last face was actually valid. The rest were all luminous green!

[CL 2102953 by Graeme Thornton in Main branch]
2014-06-12 05:18:04 -04:00
Gil Gribb
3de6028e86 UE4: Rearrange RHICmdList toward non-null cmd lists and the final "look"
[CL 2100216 by Gil Gribb in Main branch]
2014-06-10 07:29:49 -04:00
Martin Wilson
8d28c198fd Change cubemap clearing logic to stop race condition on initializing render targets
#ttp 337070 - Regression: EDITOR: CRASH: Closing the editor while an animation blueprint is open will cause it to crash when reopened

#codereview Daniel.Wright

[CL 2099509 by Martin Wilson in Main branch]
2014-06-09 16:18:37 -04:00
Gil Gribb
fa7226b8fe UE4 - merge first pass at parallel rendering to main
[CL 2095959 by Gil Gribb in Main branch]
2014-06-05 16:38:54 -04:00
Daniel Wright
1464dcf2c3 Distance field AO using a surface cache
* Provides mid-range stable AO for dynamic rigid meshes
* Movable sky lights are now supported, and distance field AO is used for shadowing Movable sky lighting from dynamic scenes
* Static meshes are preprocessed into signed distance field volumes at mesh build time when the r.AllowMeshDistanceFieldRepresentations project setting is enabled
* Non-uniform scaling does not work with this method (mirroring is fine), animating through world position offset also causes artifacts as the two representations diverge
* Occlusion is computed along cones to reduce over-shadowing, object distance fields are operated on directly (no hierarchy) to obtain enough resolution to prevent leaking, visibility traces are done with cone stepping to allow better parallelization, and shading is done adaptively in space and time using the surface cache.

[CL 2093556 by Daniel Wright in Main branch]
2014-06-03 15:53:13 -04:00
Graeme Thornton
e1700afed8 First pass of changes to remove GRHIFeatureLevel, allowing for multiple scenes with different feature levels to exist. First step towards dynamic mobile preview in the editor.
#ttp 331829 - Mobile Preview in Editor
#proj Engine
#branch UE4

#summary First pass of changes to remove GRHIFeatureLevel, allowing for multiple scenes with different feature levels to exist. First step towards dynamic mobile preview in the editor.

#change Added GMaxRHIFeature level which contains the highest supported feature level on this machine
#change Added a cvar "r.FeatureLevelPreview" which, when set to 1, enables a feature level selection in the quick settings menu. Not wired up to anything at the minute
#change Added a feature level variable to FScene, which is currently initialized to whatever GRHIFeatureLevel is. Accessed with GetFeatureLevel()
#change Added a helper accessor GetFeatureLevel() to FSceneView which gets the feature level from the relevant scene. Purely to reduce the amount of typing needed to get to a feature level
#change Many changes across the renderer to try and read the current feature level from the view or scene. Not everything is done yet, but this is almost all of the "easy" stuff. As there is still just a global feature level in the engine, nothing should change.

[CL 2066905 by Graeme Thornton in Main branch]
2014-05-08 09:05:50 -04:00
Martin Mittring
4a18a6d047 * refactored render target pool managentment, better sharing of rendertargets, can cause some different behavior (getting SceneColor) or might bump into ensure().
* saves GPU memory doing better sharing
* can be visualized using r.RenderTargetPool.Events

[CL 2064545 by Martin Mittring in Main branch]
2014-05-06 11:27:50 -04:00
Mikolaj Sieluzycki
45c031d576 #ttp 331438 UE4: PlatformMath refactor
#proj core
#branch UE4
#summary Rename Trunc, Round, Floor, Ceil to TruncToInt, RoundToInt, FloorToInt, CeilToInt. Added *ToFloat versions. Repeated for FGenericPlatformMath and all derived classes for all platforms wherever applicable. Corrected comment in Fractional and added Frac() which does HLSL-style fractional (x - floor(x)). Checked for compilation on all projects (with cooking levels wherever applicable). Didn't change Fractional to Frac, this will be done in second commit.
#codereview robert.manuszewski

[CL 2064306 by Mikolaj Sieluzycki in Main branch]
2014-05-06 06:26:25 -04:00
Brian Karis
247887d115 Fixed unity build name conflicts
[CL 2060270 by Brian Karis in Main branch]
2014-04-30 15:24:06 -04:00
Brian Karis
9871b021d7 Fixed dependency. Unbacked out change.
[CL 2060185 by Brian Karis in Main branch]
2014-04-30 14:14:19 -04:00
Bob Tellez
c59bebc734 Back out changelist 2059445. This change introduced a dependency on a shader called "MonteCarlo.usf" in ReflectionEnvironmentShaders.usf which does not exist.
#codereview Brian.Karis

[CL 2059473 by Bob Tellez in Main branch]
2014-04-29 21:59:35 -04:00
Brian Karis
e7f39636a1 Diffuse from captures.
Reflection environment refactor, optimization and clean up. Fixed blending bug with layered cubemaps. Added diffuse from captures as alternative to lightmaps. Still tied to cvar.

[CL 2059445 by Brian Karis in Main branch]
2014-04-29 21:59:12 -04:00
Daniel Wright
76a059bcbe Static sky lights do not cause reflection captures to mask out the sky
* This allows the specular contribution of static sky lights to work in the ES2 rendering path

[CL 2058189 by Daniel Wright in Main branch]
2014-04-28 17:30:56 -04:00