Commit Graph

717 Commits

Author SHA1 Message Date
massimo tristano
d11cc38546 [Backout] - CL25722170
[FYI] massimo.tristano
Original CL Desc
-----------------------------------------------------------------
Optimizations in Material translation code amounting to 50% speed up.

Optimized function UMaterialExpression::GetInputs() with highest exclusive run-time during material translation from 19.79% to 1.79% exclusive run time.

This change caches the inputs upon expression creation by default and return a TArrayView instead of always creating a new transient dynamic array. The optimization also simplifies code for some Expression types.

Also optimized ContainsInputLoopInternal() to use a linked list of stack allocated nodes instead of Pushing/Popping from a dynamic array.

#rb jason.nadro
#preflight 64776ef44a277ca8f0b9a538

[CL 25722294 by massimo tristano in ue5-main branch]
2023-06-01 05:50:43 -04:00
massimo tristano
fff9f2ef54 Optimizations in Material translation code amounting to 50% speed up.
Optimized function UMaterialExpression::GetInputs() with highest exclusive run-time during material translation from 19.79% to 1.79% exclusive run time.

This change caches the inputs upon expression creation by default and return a TArrayView instead of always creating a new transient dynamic array. The optimization also simplifies code for some Expression types.

Also optimized ContainsInputLoopInternal() to use a linked list of stack allocated nodes instead of Pushing/Popping from a dynamic array.

#rb jason.nadro
#preflight 64776ef44a277ca8f0b9a538

[CL 25722174 by massimo tristano in ue5-main branch]
2023-06-01 05:32:59 -04:00
Sebastien Hillaire
621f548c98 Substrate - Fixed some editor poping message due to bad bitfield macro.
#rb none
#preflight https://horde.devtools.epicgames.com/job/647709d62e6c1a0737ca9652

[CL 25699902 by Sebastien Hillaire in ue5-main branch]
2023-05-31 08:16:13 -04:00
wouter dek
9c6d2f0930 Add LWC function usage statistics to material translator
#preflight 646e5a891b241f07484f6bf6
#rb kevin.ortegren

[CL 25617338 by wouter dek in ue5-main branch]
2023-05-25 04:34:25 -04:00
Sebastien Hillaire
9e42177357 Substrate - Added special path for more expensive features such as glints or SpecularLUT.
This path is taken in the shader only when needed using #define.


#rb charles.derousiers
#preflight https://horde.devtools.epicgames.com/job/646dc45c2c0a5da0dceb33e0

[CL 25600187 by Sebastien Hillaire in ue5-main branch]
2023-05-24 07:16:08 -04:00
massimo tristano
c796d51c18 Following up on 25509187, which disables the ability to override material parameters leading to a new shader permutation if the material is derived from a restricted parent, this change enhances the tooltip of the affected parameters to provide users with informative messages.
#rb jon.cain
#preflight 646cbd46205f5d23d522e701

[CL 25592166 by massimo tristano in ue5-main branch]
2023-05-23 18:12:25 -04:00
Charles deRousiers
23a0b8d740 Add Specular Profile asset.
This allows artist to provide a custom LUT describing specular behavior for view and light angles. The LUT can be procedurally generated or provided from a texture.

#rb sebastien.hillaire
#jira none
#preflight 646b6b392c0a5da0dcc8a2ab

[CL 25564387 by Charles deRousiers in ue5-main branch]
2023-05-22 11:00:34 -04:00
Sebastien Hillaire
52bf81f355 Substrata - HUD - display of material tyep and details.
#rb none
#preflight none
#fyi charles.derousiers

[CL 25545574 by Sebastien Hillaire in ue5-main branch]
2023-05-19 11:36:49 -04:00
Sebastien Hillaire
247f5217b2 Substrate - Editor HUD - show IsThin and fixed a few UI presentation/alignement issues.
#rb none
#preflight none
#fyi charles.derousiers

[CL 25543469 by Sebastien Hillaire in ue5-main branch]
2023-05-19 09:18:23 -04:00
massimo tristano
b079905165 Disable ability to override parameters that cause Material Instances to create a new shader permutation when parenting a restricted (non-base game cooked) parent.
In restrictive mode, material instances could not inherit from a cooked material not in base modules. Now material instances can inherit from such restricted materials as long as they do not introduce a new static parameters permutation and thus a new shader. To prevent this, the UI disables the checkboxes that would trigger a new shader to be created (full validation is still performed at cook time, so even if a user manages to create a material instance with a static permutation, this would be rejected by the content worker).

[REVIEW] josie.yang
#preflight 6464e5a22d446eac96ca83a6

[CL 25511566 by massimo tristano in ue5-main branch]
2023-05-17 13:29:04 -04:00
kirill zorin
de8db5ff76 Converting ARO-facing raw pointers to TObjectPtr ahead of raw pointer ARO API deprecation.
#rb zousar.shaker
#rb markus.breyer
#rb robert.manuszewski

#preflight 646391406b1406b54ab15460

[CL 25489627 by kirill zorin in ue5-main branch]
2023-05-16 10:52:49 -04:00
christopher waters
5b751e83bd Cleaning up more platform code.
#jira UE-185135
#rb robert.srinivasiah
#preflight 64628533aa3c584c0b0af08d

[CL 25480257 by christopher waters in ue5-main branch]
2023-05-15 16:56:55 -04:00
bryan sefcik
91c57d395e Removed redundant module includes.
#preflight 645d4bf3aa3c584c0b5b3a67

[CL 25435653 by bryan sefcik in ue5-main branch]
2023-05-11 16:48:21 -04:00
Sebastien Hillaire
5cf6e3bb5b Strata - Glints prototype.
Contains aproved LICENCE and TPS for code and LUT.
Enabled via r.substrate.glint 1

#preflight https://horde.devtools.epicgames.com/job/645cd751aa3c584c0b384ea1
#rb charles.derousiers

[CL 25433839 by Sebastien Hillaire in ue5-main branch]
2023-05-11 15:33:23 -04:00
aditya ravichandran
31830290ab Asset Editors: Deprecate OnClose and RequestClose in favor of similar functions that take in a close reason
Fix a crash in some asset editors when you force deleted an asset with pending changes and hit "cancel" on the save dialog

#jira UE-107248
#preflight 64517c880e33f2d51d6e3adb

[CL 25321878 by aditya ravichandran in ue5-main branch]
2023-05-03 14:45:26 -04:00
sebastien hillaire
9662bc33d8 Move ResetLoaders wwhen duplicating material to a more correct place: UpdateOriginalMaterial, called when duplicating materials on apply, save or else.
Follow up to 25171370.

#rb Francis.Hurteau
#preflight https://horde.devtools.epicgames.com/job/6450dc6f1c2846595c92feec

[CL 25301476 by sebastien hillaire in ue5-main branch]
2023-05-02 10:32:39 -04:00
Sebastien Hillaire
0af535c3b0 Substrate
- deleted details output from message log
- material in Substrate HUD no display details
- Simplification button is next to the tick box.
- !! not using bitfield which seems to cause some weird bit shift sometimes. Reported !!

#rb none
#preflight https://horde.devtools.epicgames.com/job/644a18a80f12404fb7507280
#fyi dan.elksnitis, charles.derousiers

[CL 25211397 by Sebastien Hillaire in ue5-main branch]
2023-04-27 02:53:34 -04:00
Sebastien Hillaire
f95f61d42d MaterialEditor - Fixed LOCTEXT conflict
#rb none
#preflight none

[CL 25211185 by Sebastien Hillaire in ue5-main branch]
2023-04-27 01:38:44 -04:00
Sebastien Hillaire
12875a6491 Substrate - Editor HUD upgdate.
#preflight https://horde.devtools.epicgames.com/job/6448f21cf451a62211e8eef3
#rb none
#fyi charles.derousiers

[CL 25195523 by Sebastien Hillaire in ue5-main branch]
2023-04-26 06:16:31 -04:00
Florin Pascu
cd8651734e UX: Remove user-visible ES31 editor references and replace with Mobile
#jira UE-134173
#rb Jack.Porter
#preflight 6447ac2e641e2c3cb4227930

[CL 25178065 by Florin Pascu in ue5-main branch]
2023-04-25 07:05:08 -04:00
sebastien hillaire
9a93a465b8 Removed bad disable optimisation that stayed behind after some more debugging...
#prelfight none

[CL 25175534 by sebastien hillaire in ue5-main branch]
2023-04-24 23:30:00 -04:00
sebastien hillaire
4ce5ee6677 Fix for duplicated material applying multiple times data conversion after a duplicate when it is in fact not needed since it has been done on load already.
#rb Francis.Hurteau
#preflight https://horde.devtools.epicgames.com/job/6446de5d2804595a0448d0b5

[CL 25175528 by sebastien hillaire in ue5-main branch]
2023-04-24 23:29:40 -04:00
jian ru
9e02435ecf Remove r.MaterialEnableControlFlow and disable the feature as how control flow should be implemented in the material editor is still under discussion
#rb jason.nadro

[CL 25154565 by jian ru in ue5-main branch]
2023-04-21 17:43:44 -04:00
Sebastien Hillaire
6f058da7c5 Substrate - bring back proper premultipled alpha that can be toggle on materials and material instances.
- Coverage over the background can be override from the root node when AlphaCompiste blend mode is selected. If not plugged in, coverage of over brackground is off and regular blending is used.
 - Decals only support translucent, composite and modulate. Normal is ignored when using CompositeAlpha (seen somewhere)
 - Light functions can only be opaque so nothing to do in this case.
 - UI domain tested with all blend mode
 - Material attribute aslo tested
 - Fixed many of issues with blend mode defines, being forced, etc.


#rb soon charles.derousiers
#preflight https://horde.devtools.epicgames.com/job/64426db6641e2c3cb4fc7966
#fyi charles.derousiers

[CL 25143802 by Sebastien Hillaire in ue5-main branch]
2023-04-21 07:37:40 -04:00
kirill zorin
a469aafd78 Update callsites to prepare for upcoming TArray/TArrayView<TObjectPtr<...>> restrictions
#rb zousar.shaker
#rb devin.doucette
#rb steve.robb
#rb robert.manuszewski
#rb saam.barati
#preflight 643f4c09a35280ed4f53ccb3

[CL 25100071 by kirill zorin in ue5-main branch]
2023-04-18 22:39:29 -04:00