charles derousiers
b402ba8720
Fix vulkan compilation issue with new ShaderPrint coloring.
...
Vulkan/DXC does not support initialization of static const variable having complex type. This change lines change the initialization to some simple define instead.
#rb none
#ROBOMERGE-SOURCE: CL 16574414
#ROBOMERGE-BOT: (v828-16531559)
[CL 16574416 by charles derousiers in ue5-main branch]
2021-06-07 14:15:34 -04:00
charles derousiers
0390184ee4
Add color support for shader print.
...
#rb none
#preflight 60bded2c0249c30001e4eceb
#ROBOMERGE-SOURCE: CL 16568047
#ROBOMERGE-BOT: (v828-16531559)
[CL 16568081 by charles derousiers in ue5-main branch]
2021-06-07 06:25:15 -04:00
charles derousiers
76466fc4e4
Add proper ASCII texture to print standard character set from shader.
...
#rb none
#ROBOMERGE-SOURCE: CL 16566309
#ROBOMERGE-BOT: (v828-16531559)
[CL 16566349 by charles derousiers in ue5-main branch]
2021-06-06 16:05:31 -04:00
charles derousiers
8c6a059f03
Add ShaderPrintText function for print TEXT("") string within shader.
...
#rb yuriy.odonnel, sebatien.hillaire
#jira none
#preflight 60b7570fc744b2000146292e
#ROBOMERGE-SOURCE: CL 16531948 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v828-16531559)
[CL 16531979 by charles derousiers in ue5-main branch]
2021-06-02 07:03:05 -04:00
Steve Robb
1f3fe8c9ac
Some ANSICHAR/UTF8CHAR cast fixes for upcoming changes to StringConv.h.
...
#rb none
#jira none
[CL 16469364 by Steve Robb in ue5-main branch]
2021-05-26 10:45:12 -04:00
Lukas Hermanns
fb34aca6c2
Add '#line'-directive to custom HLSL rewriter in ShaderConductor.
...
#rb Rolando.Caloca, Will.Damon
#fyi Ryan.Vance, Carl.Lloyd
#jira none
#rnx
[CL 16367768 by Lukas Hermanns in ue5-main branch]
2021-05-18 11:17:09 -04:00
Lukas Hermanns
518ab66ee2
Remove unused struct field from "FShaderConductorOptions".
...
#rb Rolando.Caloca
#jira none
#rnx
[CL 16220825 by Lukas Hermanns in ue5-main branch]
2021-05-06 10:56:55 -04:00
Lukas Hermanns
7d8a9df55c
Improve assertion output for redundancy check in SPIR-V header parser.
...
#rb Rolando.Caloca
#jira none
#rnx
[CL 16186518 by Lukas Hermanns in ue5-main branch]
2021-05-03 16:09:19 -04:00
Lukas Hermanns
c2eda93a8d
Refactor SPIR-V patching and strip debug instructions for Vulkan mobile except OpName instructions in --strip-reflect pass as UE always needs this reflection information.
...
Rebuild ShaderConductor for Win64, Mac, Linux.
#rb Carl.Lloyd, Rolando.Caloca, Ryan.Vance
#fyi Mihnea.Balta, Will.Damon, Dmitriy.Dyomin, Michael.Sartain, Brandon.Schaefer
#jira none
#rnx
[CL 16186169 by Lukas Hermanns in ue5-main branch]
2021-05-03 15:22:38 -04:00
Lukas Hermanns
2a6092c316
Replace custom Disassemble function in ShaderConductor interface with the one that was already there.
...
#rb Ryan.Vance
#fyi Carl.Lloyd
#jira none
#rnx
[CL 16118857 by Lukas Hermanns in ue5-main branch]
2021-04-26 17:13:29 -04:00
rob krajcarski
21572f4b70
Fix for Niagara velocity shaders being generated incorrectly, which would fail PSOs to be created.
...
Fixes issue where an array of non-indexed elements with custom semantics would have their 'optimized' code path generated as:
Local_Value = OptimizedValue;
Instead of the reverse.
#rb lukas.hermanns, rolando.caloca
#jira none
[CL 16116319 by rob krajcarski in ue5-main branch]
2021-04-26 13:43:03 -04:00
Ryan Vance
aacfa50a0d
Initial shader compilation changes to support VKRT.
...
#rb Lukas.Hermanns, Rolando.Caloca
[CL 16098805 by Ryan Vance in ue5-main branch]
2021-04-22 17:38:43 -04:00
christopher waters
83f70197d3
Tessellation Removal: Removing RHI Hull/Domain shader types and enums.
...
#rb lukas.hermanns
#jira UE-94564
#preflight 607f2e11eb4f050001d4655e
[CL 16066223 by christopher waters in ue5-main branch]
2021-04-20 17:00:25 -04:00
christopher waters
874ec853a4
Filling a few gaps in Mesh shader support. Adding ShouldCompilePermutation support to shader pipeline types to guard against unsupported shader types.
...
#jira none
#rb arciel.rekman
#preflight 60773f1c3f280e0001331ab8
[CL 16012256 by christopher waters in ue5-main branch]
2021-04-14 17:05:02 -04:00
Lukas Hermanns
677f2f50f1
Fix binding reflection for Metal backend: only Vulkan needs storage buffers to always occupy a UAV binding slot.
...
#rb Will.Damon
#jira none
#rnx
[CL 15979593 by Lukas Hermanns in ue5-main branch]
2021-04-12 13:16:00 -04:00
Lukas Hermanns
dc07d3f58e
Add "Disassemble" function to public interface of ShaderConductor.
...
Move ShaderConductor utility to disassemble SPIR-V into ShaderCompilerCommon module.
Fix --strip-reflect pass in SPIRV-Tools to remove all SPV_GOOGLE* reflection extensions.
Rebuild ShaderConductor for Win64, Linux, and Mac.
#rb Carl.Lloyd, Ryan.Vance
#fyi Mihnea.Balta, Rolando.Caloca, Will.Damon, Dmitriy.Dyomin
#jira none
#rnx
[CL 15978123 by Lukas Hermanns in ue5-main branch]
2021-04-12 11:25:06 -04:00
Lukas Hermanns
c75e86cf40
Move SPIR-V utility functions for reflection and binding information into SpirvCommon.h/.cpp source files.
...
#rb Will.Damon, Carl.Lloyd
#fyi Ryan.Vance, Mihnea.Balta, Rolando.Caloca, Dmitriy.Dyomin
#jira none
#rnx
[CL 15954206 by Lukas Hermanns in ue5-main branch]
2021-04-08 10:09:56 -04:00
Lukas Hermanns
6c9b164f8b
Added secondary "WritePackedGlobal" function to FHlslccHeaderWriter.
...
#rb Carl.Lloyd
#jira none
#rnx
[CL 15875032 by Lukas Hermanns in ue5-main branch]
2021-03-31 10:19:01 -04:00
Lukas Hermanns
2e1fb14cb7
Add "Optimize" function to public interface of ShaderConductor to perform SPIR-V optimizations *after* shader reflection (e.g. to strip reflection extensions).
...
#rb Carl.Lloyd, Will.Damon
#fyi Ryanc.Vance, Mihnea.Balta, Rolando.Caloca, Michael.Sartain, Brandon.Schaefer
#jira none
#rnx
[CL 15850443 by Lukas Hermanns in ue5-main branch]
2021-03-29 09:45:48 -04:00
will damon
0a4e702859
Remove all tessellation support from Metal RHI
...
- Also, remove _NOTESS Metal profile
#rb christopher.waters, richard.wallis, lukas.hermanns, rolando.caloca
#jira UE-94564
#rnx
[CL 15831929 by will damon in ue5-main branch]
2021-03-25 16:56:00 -04:00
christopher waters
1d0b1d44eb
Initial support for Mesh and Amplification Shaders. These new shader types are an optional feature of the RHIs and are only enabled on PC D3D12 with Feature Level SM6.
...
#jira none
#rb emil.persson, graham.wihlidal, lukas.hermanns
[CL 15742432 by christopher waters in ue5-main branch]
2021-03-18 18:42:49 -04:00
Guillaume Abadie
51824a3a5f
Pipedown FShaderParametersMetadata to the shader compile worker
...
#rb yuriy.odonnell
[CL 15714856 by Guillaume Abadie in ue5-main branch]
2021-03-16 16:19:23 -04:00
will damon
4d9be3b3ee
Update min macOS version to 10.15 and roll default MSL to v2.2.
...
[REVIEW] [at]richard.wallis [at]axel.riffard [at]jack.porter [at]dave.hunter
#jira UE-109999
#rnx
#ROBOMERGE-SOURCE: CL 15681710 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)
[CL 15684125 by will damon in ue5-main branch]
2021-03-11 21:32:06 -04:00
Lukas Hermanns
7e21c4a78b
Replaced "ArraySize" macro with template function to avoid identifier conflict.
...
#rb Rolando.Caloca
#jira none
#rnx
[CL 15645384 by Lukas Hermanns in ue5-main branch]
2021-03-08 16:37:06 -04:00
Rolando Caloca
24ccfe4d84
UE5 - Allow passing extra arguments to DXC
...
#rb Lukas.Hermanns
[CL 15436490 by Rolando Caloca in ue5-main branch]
2021-02-17 12:29:50 -04:00