Commit Graph

25 Commits

Author SHA1 Message Date
charles bloom
108b030948 Texture preventative fixes; clarify some mip locking code and fix 64 bit issues
#rb fabian.giesen
#rnx

[CL 29759416 by charles bloom in ue5-main branch]
2023-11-15 16:30:26 -05:00
ryan schmidt
db4634dfb9 GeometryScripting: improve support for handling StaticMesh/DynamicMesh LOD and Material aspects
UE::AssetUtils::GetStaticMeshLODMaterialListBySection() now returns the slot name for each Material
BP function GetSectionMaterialListFromStaticMesh() now returns slot names. Fixed issue in this function where LODIndex was clamped to Render LODs, not SourceModel LODs. This function now also works for RenderData LODs. In CopyMeshToStaticMesh, for RenderData LODs, the MaterialID is set to the MaterialIndex referenced by each mesh section. So in this case in GetSectionMaterialListFromStaticMesh, the Asset Material List is returned directly. This is not really a "per Section Material List' as the function name implies, however it allows this function to provide comparable behavior between SourceModel and RenderData LODs.

Add new BP function RemapToNewMaterialIDsByMaterial() which figures out MaterialID remapping based on original and new Material lists (assuming MaterialID indexes into original Material list)
Add BP functions GetNumStaticMeshLODsOfType() and CheckStaticMeshHasAvailableLOD(), these utilities are useful for dealing w/ multi-LOD assets

#rb jimmy.andrews

[CL 29052212 by ryan schmidt in ue5-main branch]
2023-10-24 15:57:31 -04:00
dmitriy dyomin
b967feaef8 Add ability to setup VT support on a per-platform basis
#rb jeremy.moore

[CL 28260983 by dmitriy dyomin in ue5-main branch]
2023-09-26 22:38:26 -04:00
zach bethel
6473b91df9 Hardened thread safety of render command pipe system and added ability to sync specific pipes.
- Added additional sync scopes to handle VT standalone path.

#jira UE-194136, FORT-648678, UE-194553, PLAY-12828

[CL 27691097 by zach bethel in ue5-main branch]
2023-09-07 17:51:23 -04:00
jimmy andrews
51c961876f Fix meshes that have 'recompute tangents' enabled not displaying with correct tangents after conversion to dynamic mesh + enable tangents on sculpt tools so 'original material' mode renders correctly when normal maps are used
#jira UE-189344
#rb rinat.abdrashitov

[CL 26408384 by jimmy andrews in ue5-main branch]
2023-07-17 11:25:00 -04:00
dan thompson
992eceb8f3 Texture2DBuilder shouldn't remove mips - this is unneeded, and in the use cases where the builder texture is reused as the final texture, causes issues.
[FYI] Ryan.Schmidt
#rb none
#jira UE-187796

[CL 26328949 by dan thompson in ue5-main branch]
2023-06-29 17:26:02 -04:00
dmytro vovk
6e87e7ac29 Pack FTexture2DMipMap fields
#rb Christopher.Waters
#preflight 6422d44f803cb466e8475419

[CL 24912796 by dmytro vovk in ue5-main branch]
2023-04-04 12:38:36 -04:00
charles bloom
ffe45866e0 clean up code using GetMipData without checking return value
GetMipData can return false on textures that have no sources
Textures without source is common now in UEFN
also comment about some code that is broken or more fragile than necessary

#preflight https://horde.devtools.epicgames.com/job/6423434d710ec8400fe83bd6
#rb fabian.giesen,dan.thompson

[CL 24831862 by charles bloom in ue5-main branch]
2023-03-29 02:28:14 -04:00
matija kecman
b4369f3873 Geometry Scripting: Add a ChannelPack node which has up to 4 input textures and creates an output texture where the RGBA channels are sourced from the inputs
#preflight 641a46d625389270b7a7a781
#jira UE-174783
#rb ryan.schmidt

[CL 24745402 by matija kecman in ue5-main branch]
2023-03-22 07:02:05 -04:00
matija kecman
4db50ffff3 Fix horde issue 259463
This is the second attempt to fix this problem, sorry! It's a PVS static analysis problem.

#rb trivial
#preflight 63e2abef797b029c0a874d82

[CL 24061767 by matija kecman in ue5-main branch]
2023-02-07 17:52:01 -05:00
matija kecman
f33be98d26 Fix horde issue 259463
Note this issue is occurring in a `if constexpr (false)` block. This problem previously occurred in horde issue 259313 with some other things that may have since been fixed

#rb trivial
#preflight 63e23339c11233cdca859cf4

[CL 24050765 by matija kecman in ue5-main branch]
2023-02-07 11:41:05 -05:00
matija kecman
7f6c5fb7e7 Fix incorrect handling of texture source format BGRE8 in UE::AssetUtils::ReadTexture function
#jira UE-175010
#preflight 63de2fd4af610ffb8b605079
#rb jimmy.andrews

[CL 24028051 by matija kecman in ue5-main branch]
2023-02-06 06:03:33 -05:00
joe pribele
0926a226cf removed PRAGMA_DISABLE_OPTIMZATIONS that appear to be left in by accident
#rb zousar.shaker
#preflight 636c1c6f7c2b50519028f593

[CL 23063526 by joe pribele in ue5-main branch]
2022-11-09 16:47:19 -05:00
semion piskarev
df5a9de541 MeshModelingTools: Fix crash when trying to read from texture that does not have source data in editor.
#rb Ryan.Schmidt
#preflight 6361f8e5522c8f7ab312149a

[CL 22937898 by semion piskarev in ue5-main branch]
2022-11-02 23:06:24 -04:00
henrik karlsson
b5b86c796c This change is a strategical submit for a coming change that removes lots of includes in headers that are included by many files. This change contains adding of includes in files that previously got those includes transitively from other inclkudes
#preflight 6355d4940313c24974b2107b
#rb none

[CL 22783162 by henrik karlsson in ue5-main branch]
2022-10-26 12:57:32 -04:00
ryan schmidt
3addba1a71 ModelingComponents: fix UE::AssetUtils::GetStaticMeshLODMaterialListBySection, it was returning incorrect results for static meshes with re-ordered sections/slots.
#rb lonnie.li
#preflight 6352d5da777a77c440646b05
#jira UE-167960
#lockdown aurel.cordonnier

[CL 22712147 by ryan schmidt in ue5-main branch]
2022-10-22 15:34:39 -04:00
bryan sefcik
117472780d Fixed include paths.
#jira
#preflight 634ee62fe746026e48eb077e

[CL 22621687 by bryan sefcik in ue5-main branch]
2022-10-19 06:39:08 -04:00
ryan schmidt
ae72511e29 ModelingComponents: Modify AssetUtils::ReadTexture()'s PlatformData path to catch and error out if being used in non-Editor builds and the texture format is not TC_VectorDisplacementMap. We cannot change texture format at runtime, because UpdateResource() depends on the source data being available. This is old code that never worked and would just crash outside the Editor.
Add messaging in geometry script functions that call ReadTexture, to hint to the user how to configure their textures to use at runtime

#rb david.hill
#preflight 632a2db16919ce3998922aab
#jira UE-164548

[CL 22114020 by ryan schmidt in ue5-main branch]
2022-09-21 11:37:26 -04:00
henry falconer
2e427c809a Removed an ensure that could fail while reading from a valid texture that has no source art
#rb tyson.brochu
#rn fix geometry
#preflight 6310b4b8840bf1e5c3751f54

[CL 21739446 by henry falconer in ue5-main branch]
2022-09-01 09:49:45 -04:00
lonnie li
8ed8a29e69 GeometryScript: Added CreateNewTexture2DAsset function
#rb semion.piskarev
#jira none
#preflight 62278b28e83598518f37e7b2

[CL 19309284 by lonnie li in ue5-main branch]
2022-03-08 15:11:38 -05:00
ryan schmidt
e61f1edc0c ModelingComponents: handle situation where StaticMesh SectionInfoMap is empty or partially populated in AssetUtils::GetStaticMeshLODAssetMaterials()
GeometryScript: explicitly clear SectionInfoMap in CopyMeshToStaticMesh() instead of clearing entries one at a time, which is wrong if only some sections are in the map
#rnx
#jira UE-138808
#preflight 61df651f9c1e5c90b61a54ad

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 18597446 in //UE5/Release-5.0/... via CL 18597457 via CL 18597465
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)

[CL 18597480 by ryan schmidt in ue5-main branch]
2022-01-13 11:08:19 -05:00
ryan schmidt
36cf6a396d ModelingComponents: add AssetUtils/StaticMeshMaterialUtil.* with various utility functions for working with StaticMesh materials
#rb none
#rnx
#preflight 61bb8cffca02f71eb5afa57d

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 18478579 in //UE5/Release-5.0/... via CL 18481519
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18481794 by ryan schmidt in ue5-release-engine-test branch]
2021-12-16 19:54:23 -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
michael balzer
b8a1c9b6cf GeometryCore: Remove ExplicitUseGeometryMathTypes.h
#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 18227685 in //UE5/Release-5.0/... via CL 18229350
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18231457 by michael balzer in ue5-release-engine-test branch]
2021-11-17 19:02:44 -05:00
michael balzer
a49c74b915 MeshModelingToolset: Move ModelingOperators and ModelingOperatorsEditorOnly modules out of experimental plugin
#jira UETOOL-3823
#rb lonnie.li
#preflight 617b1aea5794a500014f544a

#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 17972239 in //UE5/Release-5.0/... via CL 17972248
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 17972256 by michael balzer in ue5-release-engine-test branch]
2021-10-28 19:47:45 -04:00