Commit Graph

85 Commits

Author SHA1 Message Date
Ben Marsh
0cc6e3dca6 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 6631504 by Ben Marsh in Main branch]
2019-05-24 11:51:54 -04:00
dmitriy dyomin
a057ce7394 Support auto-instancing on mobile ES3.1 feature level (Metal, OpenGL ES3.1, Vulkan)
Disabled by default, can be enabled with r.Mobile.SupportGPUScene=1
#jira UE-71355
#rb rolando.caloca, zach.bethel
[FYI] rolando.caloca, zach.bethel


#ROBOMERGE-SOURCE: CL 6617026 via CL 6617089
#ROBOMERGE-BOT: (v358-6608238)

[CL 6617118 by dmitriy dyomin in Main branch]
2019-05-23 00:36:32 -04:00
ben marsh
787b1dc05e Copy of CL 5906283
Fixed tessellation shader cross-compilation for Vulkan backend.

#rb Rolando.Caloca
#lockdown Marcus.Wassmer
#jira UE-54442

#ROBOMERGE-SOURCE: CL 5952885 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5952886 by ben marsh in Main branch]
2019-04-17 14:59:02 -04:00
rolando caloca
955a14de37 UE4 - Fix invalid IR on hlslcc potentially causing a crash
#rb none
[FYI] Jonas.Meyer
#rnx
#jira UE-71397

#ROBOMERGE-OWNER: rolando.caloca
#ROBOMERGE-AUTHOR: rolando.caloca
#ROBOMERGE-SOURCE: CL 5399410 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5399503 by rolando caloca in Main branch]
2019-03-14 14:16:41 -04:00
jonas meyer
ea912b9911 Bump shader version for jira UE-71386.
Followup change to the vulkan nan fix.
hlslcc was not generating conditional moves for swizzles, causing the proposed fix to generate a lot of code. this is fixed with this change

#jira UE-71386
#rb rolando.caloca

Code Before:
{
		bvec4 v138 = bvec4(false,false,false,false);
		v138.xyzw = lessThan(floatBitsToUint(v137),uvec4(2139095040u,2139095040u,2139095040u,2139095040u));
		vec4 v139 = vec4(0.000000,0.000000,0.000000,0.000000);
		if (not(v138).x)
		{
			v139.x = 0.000000;
		}
		else
		{
			v139.x = v137.x;
		}
		if (not(v138).y)
		{
			v139.y = 0.000000;
		}
		else
		{
			v139.y = v137.y;
		}
		if (not(v138).z)
		{
			v139.z = 0.000000;
		}
		else
		{
			v139.z = v137.z;
		}
		if (not(v138).w)
		{
			v139.w = 0.000000;
		}
		else
		{
			v139.w = v137.w;
		}
		imageStore( RWLightScattering, ivec3(gl_GlobalInvocationID), v139.xyzw);
	}

Code After

	{
		bvec4 v138 = bvec4(false,false,false,false);
		v138.xyzw = lessThan(floatBitsToUint(v137),uvec4(2139095040u,2139095040u,2139095040u,2139095040u));
		vec4 v139 = vec4(0.000000,0.000000,0.000000,0.000000);
		v139.x = (not(v138).x)?(0.000000):(v137.x);
		v139.y = (not(v138).y)?(0.000000):(v137.y);
		v139.z = (not(v138).z)?(0.000000):(v137.z);
		v139.w = (not(v138).w)?(0.000000):(v137.w);
		imageStore( RWLightScattering, ivec3(gl_GlobalInvocationID), v139.xyzw);
	}

#ROBOMERGE-OWNER: jonas.meyer
#ROBOMERGE-AUTHOR: jonas.meyer
#ROBOMERGE-SOURCE: CL 5382705 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5383313 by jonas meyer in Main branch]
2019-03-13 11:41:33 -04:00
jonas meyer
4bf590b04d Fix nans on vulkan.
hlslcc was incorrectly converting conditionals to mix. When one of the operand is a nan, this conversion is incorrect, as the nan will propagate, and thus we get weird bugs where the nans stick around.
#jira UE-71386
#rb rolando.caloca emil.persson

#ROBOMERGE-SOURCE: CL 5380320 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5380325 by jonas meyer in Main branch]
2019-03-13 07:53:15 -04:00
rolando caloca
6a91db8fee UE4.22 - Tessellation on Vulkan (experimental, disabled)
#rb none
#jira
#rnx

#ROBOMERGE-OWNER: rolando.caloca
#ROBOMERGE-AUTHOR: rolando.caloca
#ROBOMERGE-SOURCE: CL 5318719 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5337029 by rolando caloca in Main branch]
2019-03-07 09:13:39 -05:00
ben marsh
4f7d0787ad Remove overrides forcing undefined identifier and shadow variable warnings off. Separating out from change to force these settings to create a new PCH to prevent the warning setting being ignored.
#rb none
#jira

#ROBOMERGE-SOURCE: CL 5295892 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5308944 by ben marsh in Main branch]
2019-03-05 18:48:29 -05:00
rolando caloca
1df046219e UE4.22 - Modify SPIR-V shader entry point name so it can be found easily while debugging (like Metal)
#rb none
#rnx
#jira UE-70676

#ROBOMERGE-SOURCE: CL 5271453 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5271454 by rolando caloca in Main branch]
2019-03-01 16:20:45 -05:00
rolando caloca
8a9099cbaf UE4.22 - Fix Lumin shaders format
#rnx
#rb none
#jira UE-UE-70308

#ROBOMERGE-SOURCE: CL 5095354 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5095358 by rolando caloca in Main branch]
2019-02-20 14:58:38 -05:00
rolando caloca
b119b7cc3c UE4.22 - Fix Texture2dArray crash on Vulkan
#rb none
#jira
#rnx
[FYI] Mark.Satterthwaite

#ROBOMERGE-SOURCE: CL 4984286 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 4984314 by rolando caloca in Main branch]
2019-02-13 13:03:31 -05:00
Marcus Wassmer
a8d6cc952b Merging //UE4/Dev-Main@4700769 to Dev-Rendering (//UE4/Dev-Rendering)
#rb none

[CL 4729861 by Marcus Wassmer in Dev-Rendering branch]
2019-01-15 18:04:38 -05:00
Ben Marsh
c09b6d7f18 Merge from //UE4/Main.
#rb none
#rnx

[CL 4701155 by Ben Marsh in Dev-Build branch]
2019-01-10 11:10:29 -05:00
Rolando Caloca
c6ce9f0790 DR - Dump hlslcc flags for Metal direct compiler
- Don't validate on Vulkan shaders unless on debug
#rb none

[CL 4686842 by Rolando Caloca in Dev-Rendering branch]
2019-01-07 17:35:21 -05:00
Rolando Caloca
26cf301968 DR - hlslcc - Fix for samplers getting removed while inlining
#rb none
#rnx

[CL 4683264 by Rolando Caloca in Dev-Rendering branch]
2019-01-04 17:38:16 -05:00
Marcus Wassmer
cbfcbbb93b Merging //UE4/Dev-Main@4662404 to Dev-Rendering (//UE4/Dev-Rendering)
#rb none
Should be just copyright updates

[CL 4680440 by Marcus Wassmer in Dev-Rendering branch]
2019-01-03 19:16:26 -05:00
Rolando Caloca
990204b930 DR - vk - Do not emit precision on bool variables
#rb none
#rnx

[CL 4667349 by Rolando Caloca in Dev-Rendering branch]
2018-12-17 18:47:14 -05:00
Rolando Caloca
016944b119 DR - hlslcc - Retain sizes for global uniforms (ie float3 doesn't get promoted to float4)
#rb none
#rnx

[CL 4662704 by Rolando Caloca in Dev-Rendering branch]
2018-12-14 14:51:12 -05:00
Ben Marsh
530369c613 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4662695 by Ben Marsh in Dev-Build branch]
2018-12-14 14:49:12 -05:00
Marcus Wassmer
b5d7db3689 Copying //UE4/Dev-Rendering-HLR@4650617 to Dev-Rendering (//UE4/Dev-Rendering)
#rb none

[CL 4651635 by Marcus Wassmer in Dev-Rendering branch]
2018-12-11 22:25:04 -05:00
Ben Marsh
8346d5c50a Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4634893 by Ben Marsh in Dev-Build branch]
2018-12-05 18:59:28 -05:00
Rolando Caloca
b06b4d4ca8 DR - vk - Copy from 4580291
- Fix for unhandled nan in Vulkan shaders
#rb Arciel.Rekman

[CL 4581755 by Rolando Caloca in Dev-Rendering branch]
2018-11-20 08:47:01 -05:00
Rolando Caloca
e5b3a2ed00 DR - vk - Zero-initialize all values in Vulkan shaders
#rb none

[CL 4522601 by Rolando Caloca in Dev-Rendering branch]
2018-10-29 18:40:23 -04:00
Guillaume Abadie
c72b7a33d8 Merging //UE4/Dev-Rendering-Graph@4492585 to Dev-Rendering (//UE4/Dev-Rendering)
This implements the framework to write the high level rendering code into passes organized in direct acyclic graph. It is also unifying the uniform buffer, shader parameters, and pass parameters to same single API: structures with run time meta data. This allow high level user code be extremely seamless, user code debugging, and render graph ease of implementation and debugging.

Issue of collaborative work of Arne Schnober, Brian Karis, Daniel Wright, Marcus Wassmer and Guillaume Abadie.

Names of the graph managed resources are not final.

#rb Arne.Schnober, Brian.Karis, Daniel.Wright, Marcus.Wassmer

[CL 4492694 by Guillaume Abadie in Dev-Rendering branch]
2018-10-19 17:36:35 -04:00
Rolando Caloca
35a988a68a DR - vk - Update to glslang 1.1.82.1
#rb none

[CL 4442796 by Rolando Caloca in Dev-Rendering branch]
2018-10-09 17:50:54 -04:00