Commit Graph

582 Commits

Author SHA1 Message Date
Jason Nadro
dcd55e3f15 Fix Game Thread and Render Thread access issues when performing shader compilation using FMaterial.
- SubmitCompileJobs was assumed to be render thread only.  Make this explicit in the function name and add a render thread check.
- Add SubmitCompileJobs_GameThread to perform shader compilation submitted from the Game Thread safe.
- Keep a ref to a GameThreadPendingCompilerEnvironment because the one on the GameThreadShaderMap goes away after we clone.
- Add render thread check to GetRuntimeVirtualTextureOutputAttibuteMask_RenderThread
- Move simple enum types from ShaderCompiler.h to ShaderCompilerCore.h so we can access EShaderCompileJobPriority in MaterialShared.h
- Fixup incorrect usage SubmitCompileJobs that was submitted from the Game Thread using the Render Thread maps.

#rb Ben.Ingram
#jira none
#preflight 6216879fdb60b6b592f1d97f

[CL 19098715 by Jason Nadro in ue5-main branch]
2022-02-23 14:59:45 -05:00
Sebastien Hillaire
7c6830b98e Strata - new blending mode.
- works for starta and legacy conversion material
- legacy converted to strata setup the strata blending mode
- strata material also affect legacy blending mode because it is used in multiple places in the engine.
- works for lit and unlit legacy material
- to be fixed:
    - lit with premultiplied alpha
    - materials with multiple shading models

#preflight https://horde.devtools.epicgames.com/job/6214893c3577e44741abf99f
#rb charles.derousiers

[CL 19069633 by Sebastien Hillaire in ue5-main branch]
2022-02-22 02:26:20 -05:00
ben ingram
501db0c0d2 Use TWeakObjectPtr<> on MI layer parameter editor code, so we can check for live objects during various Slate callbacks
Otherwise we can hit callbacks before editor has a chance to refresh, and crash on stale pointer access
#jira UE-140971
#preflight 6202eb2a7e40979d33ba9fd7
#rb lauren.barnes

#ROBOMERGE-OWNER: ben.ingram
#ROBOMERGE-AUTHOR: ben.ingram
#ROBOMERGE-SOURCE: CL 18913293 in //UE5/Release-5.0/... via CL 18919947 via CL 18920839
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v916-18915374)

[CL 18921506 by ben ingram in ue5-main branch]
2022-02-09 13:24:56 -05:00
Robb Surridge
65a3c1236d Move IntroTutorials to a plugin. Part 1: move code module and clean up references.
#jira 141830
#preflight 6202f3e4bd4f846436f1dfc6
#rb lauren.barnes

[CL 18920903 by Robb Surridge in ue5-main branch]
2022-02-09 13:00:06 -05:00
robert srinivasiah
3737a45475 Hololens: Dedicated Shader Platform
We can't share DDPI infrastructure with PC D3D ES3.1 because of conflicts from sharing. We need a separate shader platform.
For now, we'll just 'intrusively' plumb the new Hololens shader platform. In the future, we want to move as much code out into
Hololens-specific platform code to reduce conflict with shared paths that don't need to know about Hololens.

#rb steve.smith, christopher.waters
#jira UE-133375
#preflight 61f9ca302251c6fb596e583e

#ROBOMERGE-AUTHOR: robert.srinivasiah
#ROBOMERGE-SOURCE: CL 18818524 in //UE5/Release-5.0/... via CL 18818546 via CL 18822881
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18824735 by robert srinivasiah in ue5-main branch]
2022-02-02 08:00:15 -05:00
JeanMichel Dignard
8bbf51e8dd Interchange
- Made sure we don't call MarkPackageDirty from non game threads as its not threadsafe.
- Update the texture sampler sampling types during the factory PreImportPreCompleted callback so that we have the correct sampling type for textures that are being upgraded to virtual.
- Fixed some issues with material creation where we had some early returns in functions that shouldn't.
#preflight 61f4653ce52a8a4a91ce060d

[CL 18779420 by JeanMichel Dignard in ue5-main branch]
2022-01-28 17:11:02 -05:00
jason nadro
9be5e7c23b Ensure that all compilation has been submitted when querying for a material's statistics.
- This is important when running with "compile what you use" ODSC in the editor.

#rb Arciel.Rekman
#preflight 61f1a50cf8088a3d2991c8b1

#ROBOMERGE-AUTHOR: jason.nadro
#ROBOMERGE-SOURCE: CL 18752861 in //UE5/Release-5.0/... via CL 18752866 via CL 18756837
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18757118 by jason nadro in ue5-main branch]
2022-01-27 14:06:46 -05:00
ben ingram
f163313516 Fix uninitialized pointers in material editor, that can happen if base material is reloaded while MI is open
#rb none
#jira UE-134178
#preflight none

#ROBOMERGE-AUTHOR: ben.ingram
#ROBOMERGE-SOURCE: CL 18741994 in //UE5/Release-5.0/... via CL 18742306 via CL 18742892
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18743244 by ben ingram in ue5-main branch]
2022-01-26 15:38:28 -05:00
ben ingram
f9b20e4ac9 Don't crash if layer function outputs haven't been initialized yet
#rb none
#preflight none
#jira UE-134987

#ROBOMERGE-AUTHOR: ben.ingram
#ROBOMERGE-SOURCE: CL 18741111 in //UE5/Release-5.0/... via CL 18741603 via CL 18742855
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18743211 by ben ingram in ue5-main branch]
2022-01-26 15:36:33 -05:00
ben ingram
ae36806f9b Fix MaterialFunctionInstance parameter inheritance
#preflight 61e76974b56c33b8ec014f3a
#rb none
#jira none

#ROBOMERGE-OWNER: ben.ingram
#ROBOMERGE-AUTHOR: ben.ingram
#ROBOMERGE-SOURCE: CL 18659671 in //UE5/Release-5.0/... via CL 18659685 via CL 18659695
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v900-18638592)
#ROBOMERGE-CONFLICT from-shelf

[CL 18659767 by ben ingram in ue5-main branch]
2022-01-19 12:15:39 -05:00
dmitriy dyomin
de43655903 Fixed: Certain project configurations may result in missing material shader stats for ES31 feature level
Simplified shader name selection for mobile material shader stats
#rb jack.porter

#ROBOMERGE-OWNER: dmitriy.dyomin
#ROBOMERGE-AUTHOR: dmitriy.dyomin
#ROBOMERGE-SOURCE: CL 18632067 via CL 18632071 via CL 18632078 via CL 18632169 via CL 18632171 via CL 18651605 via CL 18651728 via CL 18651852
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v900-18638592)

[CL 18651910 by dmitriy dyomin in ue5-main branch]
2022-01-18 18:45:37 -05:00
Ben Ingram
e6f2147048 Misc fixes for enabling/disabling control flow in material editor
#rb none
#jira none
#preflight none

[CL 18573247 by Ben Ingram in ue5-main branch]
2022-01-11 11:51:35 -05:00
Ben Ingram
ff516caf95 Hide UMaterialFunction UI options for new HLSL generator/control flow, if the global CVARs are disabled
#rb none
#jira none
#preflight none

[CL 18567303 by Ben Ingram in ue5-main branch]
2022-01-10 19:25:13 -05:00
Ben Ingram
6f2cbfee8c New material HLSL translator supports functions using control flow
#preflight 61dcc5b94d377749b662ee15
#jira none
#rb none

[CL 18567176 by Ben Ingram in ue5-main branch]
2022-01-10 19:10:49 -05:00
arciel rekman
8e8967db28 Fix blocking compilation when editing instances of special materials.
- Also added a check to surface a potential memory freezing issue earlier (unrelated).

#rb Ben.Ingram
[at]Ben.Ingram

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18546658 via CL 18546662 via CL 18546682 via CL 18547604 via CL 18547669 via CL 18547737
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)

[CL 18547799 by arciel rekman in ue5-main branch]
2022-01-07 13:03:26 -05:00
arciel rekman
22bdec058c Fix blocking compilation when editing instances of special materials.
- Also added a check to surface a potential memory freezing issue earlier (unrelated).

#rb Ben.Ingram
[at]Ben.Ingram

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18546658 via CL 18546662 via CL 18546682 via CL 18547604 via CL 18547669
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18547737 by arciel rekman in ue5-release-engine-test branch]
2022-01-07 13:01:04 -05:00
arciel rekman
2dd726f0dc Fix CIS (MaterialStats.cpp, deprecated SP removed).
#rb none
#jira none
#preflight none

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18485162 in //UE5/Release-5.0/... via CL 18485165 via CL 18485167
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)

[CL 18485191 by arciel rekman in ue5-main branch]
2021-12-17 14:56:38 -05:00
arciel rekman
75f714f374 Fix shaders stats not showing up on Mac (UE-134608).
#jira UE-134608
#rb Will.Damon
#lockdown Cristina.Riveron
[REVIEW] [at]Mitchell.Wilson

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18173938 in //UE4/Release-4.27/... via CL 18458421 via CL 18458609 via CL 18485099 via CL 18485103 via CL 18485112
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)

[CL 18485180 by arciel rekman in ue5-main branch]
2021-12-17 14:56:02 -05:00
arciel rekman
616fdffde0 Fix CIS (MaterialStats.cpp, deprecated SP removed).
#rb none
#jira none
#preflight none

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18485162 in //UE5/Release-5.0/... via CL 18485165
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18485167 by arciel rekman in ue5-release-engine-test branch]
2021-12-17 14:54:41 -05:00
arciel rekman
b65ed306c1 Fix shaders stats not showing up on Mac (UE-134608).
#jira UE-134608
#rb Will.Damon
#lockdown Cristina.Riveron
[REVIEW] [at]Mitchell.Wilson

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18173938 in //UE4/Release-4.27/... via CL 18458421 via CL 18458609 via CL 18485099 via CL 18485103
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18485112 by arciel rekman in ue5-release-engine-test branch]
2021-12-17 14:43:29 -05:00
arciel rekman
bf87e97c21 Improve availability of shader platforms in the mat ed (UE-136509).
#rb none
#jira UE-136509

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18387134 in //UE5/Release-5.0/... via CL 18387149 via CL 18387152
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v896-18170469)

[CL 18387164 by arciel rekman in ue5-main branch]
2021-12-06 15:34:28 -05:00
arciel rekman
1e5deb1942 Improve availability of shader platforms in the mat ed (UE-136509).
#rb none
#jira UE-136509

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18387134 in //UE5/Release-5.0/... via CL 18387149
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)

[CL 18387152 by arciel rekman in ue5-release-engine-test branch]
2021-12-06 15:33:50 -05:00
sebastian nordgren
1791adb9a8 Deprecated bDisplayResetToDefault and the other checkboxes in IPropertyHandle::CreatePropertyNameWidget().
#jira UE-132670
#preflight 61a601ff9a226d9e8235b12e

[CL 18323004 by sebastian nordgren in ue5-main branch]
2021-11-30 06:04:48 -05:00
ben ingram
5dae45efae Hand integrate CL 17250155:
Prevent stack overflow from material editor setting color from details view that doesn't own current color picker.
#jira UE-120042
#rb none

#ROBOMERGE-AUTHOR: ben.ingram
#ROBOMERGE-SOURCE: CL 18238668 via CL 18239212 via CL 18239370 via CL 18240762 via CL 18240831
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18242931 by ben ingram in ue5-release-engine-test branch]
2021-11-18 15:23:37 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00