Commit Graph

71 Commits

Author SHA1 Message Date
Martin Mittring
4d20764bac fixed pause motionblur of static meshes (per object motionblur)
[CL 2527253 by Martin Mittring in Main branch]
2015-04-27 14:32:32 -04:00
Rolando Caloca
8625164112 PR #797 - Contributed by simontaylor81
UE4 - Added -AllowCommandletRendering to allow running a commandlet to initialize an RHI
- Added some fixes for null pointer dereferences

[CL 2523559 by Rolando Caloca in Main branch]
2015-04-23 18:09:01 -04:00
Daniel Wright
bfd7b3736c Distance field primitive updates no longer infinitely accumulate when distance field features are disabled
Distance field scene updates are no longer tracked when the project setting r.GenerateMeshDistanceFields is disabled

[CL 2519945 by Daniel Wright in Main branch]
2015-04-21 16:33:23 -04:00
Daniel Wright
b03e092ba1 Platforms that don't support distance field lighting will skip primitive delta tracking
[CL 2519554 by Daniel Wright in Main branch]
2015-04-21 13:39:16 -04:00
Mike Fricker
114458bf0f Clang warning fixes: Fixed missing 'override' specifiers
- Also removed some unreferenced functions that adding 'override' revealed

PR #1002 -- Thank you, Omar007!

[CL 2498415 by Mike Fricker in Main branch]
2015-04-01 07:20:55 -04:00
Brian Karis
d3b0603276 PR #668: Added color temperature property for lights! (Contributed by JedTheKrampus)
https://github.com/EpicGames/UnrealEngine/pull/668

[CL 2492899 by Brian Karis in Main branch]
2015-03-26 19:26:04 -04:00
Marc Audy
037d007078 Fix shadowed variables
[CL 2471506 by Marc Audy in Main branch]
2015-03-06 15:13:38 -05:00
Gil Gribb
fd3c212541 UE4 - occlusion queries for foliage and grass
[CL 2468748 by Gil Gribb in Main branch]
2015-03-04 09:58:16 -05:00
Gil Gribb
35cf42566a UE4 - merge GDC branch, code @2465640 to main
[CL 2468685 by Gil Gribb in Main branch]
2015-03-04 08:31:40 -05:00
Daniel Wright
42370ef0a1 Integrate - Enabling a skylight from a blueprint SetVisibility call will now cause it to capture and generate its processed texture
The scene tracks enabled skylights in a stack and the most recently enabled one wins

[CL 2452220 by Daniel Wright in Main branch]
2015-02-19 16:22:36 -05:00
Daniel Wright
89a80b0399 Integrate - Fixed disabled skylights affecting the scene
[CL 2452199 by Daniel Wright in Main branch]
2015-02-19 16:18:10 -05:00
Daniel Wright
d05993f885 Heightfield dynamic Global Illumination
* Enable with 'r.DistanceFieldGI 1' on console
* Surfel GI is currently disabled as it doesn't interop yet
* A GBuffer atlas is created for Landscape from components that can affect indirect lighting based on the current view
* Shadowing from a directional light is computed by reusing shadowmaps and ray tracing distance fields
* Lighting is computed for the atlas using GBuffer properties
* First bounce GI light transfer is computed for a receiver by iterating over all the nearby lit texels of the heightfield and treating them as Virtual Point Lights.  Two gather regions are used, the larger one skips through the heightfield to achieve a larger bounce distance.  Distance field AO is used to provide local shadowing.
* Material diffuse color not yet supported, and regions outside of the view don't have valid shadowing.

[CL 2436606 by Daniel Wright in Main branch]
2015-02-06 23:31:19 -05:00
Rolando Caloca
d3966bc579 UE4 - Speedtree now calculates previous world pos (incurs extra vertex cost)
[CL 2432787 by Rolando Caloca in Main branch]
2015-02-04 20:14:59 -05:00
Daniel Wright
ba3963fcaf Surfel Global Illumination with Distance Field shadowing
* Disabled by default, need a movable skylight with r.DistanceFieldGI enabled at load time (ConsoleVariables.ini)
* Surfels (oriented disks) are placed on mesh surfaces and capture diffuse color by evaluating the material with actual UVs and world position
* Surfels are lit and shadowed by ray tracing through mesh distance fields (directional light only so far)
* Irradiance cache records are lit with nearby Virtual Point Lights created from lit surfels.  Only using camera based LOD of the surfel representation and object based surfel culling, no hierarchy yet.
* Shadowing of the VPLs is provided by distance field cone tracing.  A depth visibility function is constructed along each of the 9 cone trace directions, and used to shadow the incoming VPL lighting.
* Component reregistration and transform updating causes surfels to be generated again which can be slow.  In the future only the material needs to be re-evaluated.
* Geometry shaders with stream out are now supported, by implementing FShader::GetStreamOutElements
* Compute shaders can now evaluate materal attributes like BaseColor
* SkyLight MaxOcclusionDistance increased to 10m, which is the minimum useful amount for GI

[CL 2424208 by Daniel Wright in Main branch]
2015-01-29 14:46:20 -05:00
Allan Bentham
6d9e2ddf94 Do not attempt to process drawlists for unused base pass types.
#codereview nick.penwarden

[CL 2416689 by Allan Bentham in Main branch]
2015-01-23 07:04:13 -05:00
Rolando Caloca
cd6f01a383 UE4 - ps4 compile fix
[CL 2415550 by Rolando Caloca in Main branch]
2015-01-22 13:54:00 -05:00
Lina Halper
fe1f98bd30 #Hierarchical LOD generation system
[CL 2415338 by Lina Halper in Main branch]
2015-01-22 11:05:14 -05:00
Rolando Caloca
3010398165 UE4 - Switch between outputting velocity as a separate render target or in the base pass as an extra GBuffer (r.BasePassOutputsVelocity defaults to 0)
#codereview Nick.Penwarden, Martin.Mittring

[CL 2413248 by Rolando Caloca in Main branch]
2015-01-20 20:14:07 -05:00
Rolando Caloca
4f6a5be88f UE4 - Fix for missing forward rendering draw lists
[CL 2401456 by Rolando Caloca in Main branch]
2015-01-08 17:59:18 -05:00
Jack Porter
24c133befa Fix seams between proxy streaming levels and real landscape
[CL 2400802 by Jack Porter in Main branch]
2015-01-08 06:59:31 -05:00
Martin Mittring
44643b462f fixed UE-5791
Adding a Scene Capture 2D to Render Target will override Motion Blur settings in level

[CL 2393098 by Martin Mittring in Main branch]
2014-12-18 17:17:28 -05:00
Zak Middleton
e95939ba24 #ue4 - Convert all engine uses of GetComponents() to use TInlineComponentArray.
[CL 2393060 by Zak Middleton in Main branch]
2014-12-18 17:02:31 -05:00
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
Daniel Wright
3f86fcf583 All FScene's detect distance field atlas reallocation properly now, fixes artifacts when the atlas was reallocated in PIE
[CL 2383677 by Daniel Wright in Main branch]
2014-12-10 11:54:51 -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