Commit Graph

84 Commits

Author SHA1 Message Date
Daniel Wright
57721a6245 Distance Field Global Illumination first working version
* Requires a Movable Skylight + 'r.DistanceFieldGI 1' + 'r.GenerateMeshDistanceFields' project setting enabled
* Provides a single bounce of Diffuse GI with bounce distance limited by OcclusionMaxDistance (default 6m)
* Virtual Point Lights are placed from the directional light by ray tracing the scene's distance fields, normal comes from SDF gradient
* Currently only placing 128*128 VPLs up to 40m from camera
* VPLs light irradiance cache samples using hemispherical disk light model, indirect shadowing is provided by the same cone traces used for Distance Field AO
* Irradiance is computed only at irradiance cache points (max every 8 pixels) and interpolated to the rest of the pixels
* Hardcoded half grey material color for now, and poor performance due to brute force VPL lighting

[CL 2390645 by Daniel Wright in Main branch]
2014-12-16 20:00:22 -05:00
Allan Bentham
cd3bd4840f ES2 post process will upscale if UnscaledViewRect is larger than ViewRect (which only occurs when using ES2 emulation).
Fixes UE-5594

#codereview nick.penwarden

[CL 2380312 by Allan Bentham in Main branch]
2014-12-08 09:45:54 -05:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Allan Bentham
053049ef03 Allow ES2 post process chain to deal with view rectangle that doesn't encompass entire target.
Fixes issues caused by constrained aspect ratio cameras.
Fixes UE-5536
#codereview nick.penwarden

[CL 2371544 by Allan Bentham in Main branch]
2014-11-27 10:36:38 -05:00
Rolando Caloca
d7085db04c UE4 & 4.6 - Enable subsurface scattering for OpenGL
#codereview Martin.Mittring

[CL 2365497 by Rolando Caloca in Main branch]
2014-11-19 17:00:58 -05:00
Martin Mittring
0a738fe37d fixed UE-5588
Crash occurs enabling Show Visualize Subsurface Scattering (Screen Space)

[CL 2363947 by Martin Mittring in Main branch]
2014-11-18 16:19:36 -05:00
Graeme Thornton
e05d7a5ea4 Fix crash when using high resolution screenshot capture regions (UE-5288)
[CL 2358267 by Graeme Thornton in Main branch]
2014-11-13 04:51:52 -05:00
Martin Mittring
d1745571b1 fixed LDR SceneCaptureing after recent changes to CaptureEveryFrame (added State)
[CL 2353459 by Martin Mittring in Main branch]
2014-11-07 15:01:06 -05:00
Martin Mittring
6a0bc3ef5b New feature: Cylindrical projection/distortion
r.Upscale.Cylinder 1
  r.ScreenPercentage.Editor 1

[CL 2347514 by Martin Mittring in Main branch]
2014-11-03 16:17:18 -05:00
Timothy Lottes
bd4e8471ab Resolve UE-3535 (was TTP 349592). This adds in temporal AA for near Gaussian DOF also to remove flicker.
[CL 2347150 by Timothy Lottes in Main branch]
2014-11-03 11:26:08 -05:00
Nick Whiting
651d7e5a34 #ue4: fixing a rare crash that occur when RenderTarget exists but there is no texture in it.
[CL 2343150 by Nick Whiting in Main branch]
2014-10-28 22:04:42 -04:00
Martin Mittring
fb3b0663a4 fixed UE-4597
[CL 2339919 by Martin Mittring in Main branch]
2014-10-24 11:35:45 -04:00
Martin Mittring
7df629a7f8 fixed Highres Screen Shot visualizebuffer output (recently got broken)
#code_review: Richard.Talbot-Watkins

[CL 2338890 by Martin Mittring in Main branch]
2014-10-23 14:51:48 -04:00
Martin Mittring
130f74ccda VisualizeHDR now shows Histogram bucket as color
[CL 2334975 by Martin Mittring in Main branch]
2014-10-20 17:40:17 -04:00
Martin Mittring
42e456cfd0 added histogram visuzalization ot HDRVisualize for debugging (disabled by default)
[CL 2334895 by Martin Mittring in Main branch]
2014-10-20 16:39:50 -04:00
Martin Mittring
4c75833788 improved SubsurfaceProfile quality (no artifacts on half res upsample, more crisp non subsurface), refactoring
[CL 2330637 by Martin Mittring in Main branch]
2014-10-15 16:18:43 -04:00
Martin Mittring
60e7aca1ea added parameters to postprocess materila tonemapper pass, more can be exposed later
vector: Engine.FilmWhitePoint
 scalar: Engine.FilmSaturation, Engine.FilmContrast

[CL 2313277 by Martin Mittring in Main branch]
2014-09-29 15:31:24 -04:00
Martin Mittring
8b656c6cc2 exposing new PostProcessMaterial location to replace the tonemapper, this is the base for upcoming postprocess changes
[CL 2311408 by Martin Mittring in Main branch]
2014-09-26 15:22:35 -04:00
Niklas Smedberg
bb8f417304 Support for OpenGL ES 3.1 + Android Extension Pack
[CL 2303212 by Niklas Smedberg in Main branch]
2014-09-18 17:49:40 -04:00
Allan Bentham
e44536f6fd ES2 preview - ES2 post process path deals with sub rectangles of render targets.
#codereview nick.penwarden,graeme.thornton

[CL 2300919 by Allan Bentham in Main branch]
2014-09-17 09:30:48 -04:00
Martin Mittring
04475707d1 removed UI Blur (Feature was only used by Fortnite, not fully wokring and complicated the engine internals)
[CL 2292510 by Martin Mittring in Main branch]
2014-09-10 12:31:36 -04:00
Martin Mittring
413d9679aa fixed TTP 333766 UE4: RENDERING: BufferVisualization doesn't use the Before/AfterTonemapper material setting
[CL 2291621 by Martin Mittring in Main branch]
2014-09-09 18:35:58 -04:00
Martin Mittring
e8114c49ce minor optimization, run LUTBlender only if really needed
[CL 2283571 by Martin Mittring in Main branch]
2014-09-03 18:16:55 -04:00
Brian Karis
429cb13a76 Fixed velocity rendering in stereo.
Moved velocity rendering outside of post process graph.

[CL 2281975 by Brian Karis in Main branch]
2014-09-02 16:37:25 -04:00
Daniel Wright
f5238f04e1 Distance Field AO improvements
* Distance field building is now asynchronous and stored in the DDC separately from static mesh data.
* Added OcclusionMaxDistance and Contrast properties to Movable sky light
* Using the GBuffer normal instead of the generated distance field normal, fixes artifacts on two-sided materials and between modular pieces.  Also saves about .7ms / 4.5ms
* Points in the distance field are only considered 'inside' the mesh if > 50% of all rays traced hit a backface.  Most meshes can have a valid distance field generated with this heuristic.  Meshes without a distance field representation can receive occlusion.
* Fortnite two-sided foliage with world position offset animation works fine now
* Using the resulting bent normal for diffuse lighting, improves consistency in occluded corners
* Resulting bent normal is also used to occlude skylight specular using an approximate cone-cone intersection, prevents leaking where SSR is not available
* Fixed stationary skylights not getting lightmap mixing
* Reflection captures now work with the movable skylight, which adds its diffuse contribution to IndirectIrradiance so their lightmap mixing works
* Added new show flag to visualize mesh distance fields, which ray traces through the distance fields and gives a sense of their shape

[CL 2276435 by Daniel Wright in Main branch]
2014-08-28 13:54:31 -04:00