Commit Graph

29 Commits

Author SHA1 Message Date
alexis matte
f0e40516ca (Undo Backout, fix mac build) Interchange: support the skeletal mesh VertexAttributes import feature.
#jira UE-191224
#rb jeanluc.corenthin
#rnx

[CL 27608093 by alexis matte in ue5-main branch]
2023-09-05 15:28:23 -04:00
alexis matte
d72c3696be [Backout] - CL27604738, error on mac build
[FYI] Alexis.Matte
Original CL Desc
-----------------------------------------------------------------
Interchange: support the skeletal mesh VertexAttributes import feature.
#jira UE-191224
#rb jeanluc.corenthin
#rnx

[CL 27605829 by alexis matte in ue5-main branch]
2023-09-05 14:32:49 -04:00
alexis matte
4c975936b3 Interchange: support the skeletal mesh VertexAttributes import feature.
#jira UE-191224
#rb jeanluc.corenthin
#rnx

[CL 27604792 by alexis matte in ue5-main branch]
2023-09-05 14:07:14 -04:00
vedang javdekar
ce0757bf30 Implement support of IDatasmithDecalActorElement through Interchange
- Added support for Decal Materials as well

#jira UE-158008
#jira UE-153394
#rb JeanLuc.Corenthin

[CL 27188788 by vedang javdekar in ue5-main branch]
2023-08-17 18:23:39 -04:00
balazs toereki
b14f323b5c [Interchange - FBX] Import - Animation problem - fixes.
Finished GeometricTransform support for Interchange.

#jira UE-192185 UE-192181 UE-192314
#rb JeanLuc.Corenthin

[CL 27017721 by balazs toereki in ue5-main branch]
2023-08-10 19:24:06 -04:00
alexis matte
0566810826 Interchange: Add "Import Collision" option for static mesh.
#jira UE-190837
#rb jeanluc.corenthin
#rnx

[CL 26709393 by alexis matte in ue5-main branch]
2023-07-31 12:29:24 -04:00
balazs toereki
1afad2c78b [Interchange] Imported morph play view difference with edit view
#jira UE-186102
#rb Aidin.Abedi

[CL 26510181 by balazs toereki in ue5-main branch]
2023-07-21 10:08:38 -04:00
Balazs Toereki
ef7427a40f [Interchange] glTF Transmission material handling issues.
Exposed MaterialAttribute possibilities for Interchange.
Updated Shading Model priorities for glTF.
Updated Material Generation to use new MaterialFunction for glTF Transmission.
GLTFCore removed AlphaMode restricion on Transmission materials.

#jira UE-185859 UE-186686

[CL 26063211 by Balazs Toereki in ue5-main branch]
2023-06-16 14:32:39 -04:00
JeanLuc Corenthin
6f6a6b1d94 Improve conversion of Lambert/Phong materials to UE materials
- Added a proprietary material function, MF_PhongToMetalRoughness, to make the conversion. The computation is based on various implementations in open source code, Blender, yocto-gl,...
  - Refactored the creation of the UInterchangeShaderGraphNode in FBX
  - Modified the OBJ translator to take in account the logic in the new material function
  - Modified the generic material pipeline to use the new material function
  - Move Anisotropy to common parameters since Anisotropic Phong is a thing
  - Renamed PBR namespace PBRMR, for Metallic|Roughness PBR model
  - Created PBRSG namespace for Specular|Glossiness PBR model with DiffuseColor, SpecularColor and GLossiness parameters.
  - Renamed IsPBRModel to IsMetalRoughModel
  - Added IsSpecGlossModel to check against PBRSG parameters
  - Added suffix '_MR' to existing materials and material functions used when user requests to create material instances
  - Added new materials and material functions with '_SG' suffix for specular|glossiness model
  - Added factory dependency between material instances and newly added Map inputs
  - Removed ability to generate material instances from the generic material pipeline for the glTF translator

#jira UE-186738, UE-185541, UE-186735,

[CL 25996132 by JeanLuc Corenthin in ue5-main branch]
2023-06-14 17:13:43 -04:00
Balazs Toereki
6ce8bbfd0d [Interchange - glTF] Can't import orthographic cameras.
Added CameraActor vs CineCameraActor handling to Interchange.
Refactored UInterchangeCameraNode to UInterchangeStandardCameraNode and UInterchangePhysicalCameraNode (+ FactoryNodes).
Added Standard.Perspective to Physical camera conversion to GenericScenePipeline.

#jira UE-182119
#preflight 644145faf61b80bcf7e67d01
#rb JeanLuc.Corenthin Aidin.Abedi

[CL 25127030 by Balazs Toereki in ue5-main branch]
2023-04-20 10:23:22 -04:00
Alexis Matte
5b8738a42b Interchange: Add LODGroup static mesh pipeline option
#jira UE-180852
#rb jeanluc.corenthin
#rnx
#preflight 643e9ab6211b661dc4473c5f

[CL 25085268 by Alexis Matte in ue5-main branch]
2023-04-18 09:41:01 -04:00
JeanLuc Corenthin
ac790c46f7 Implemented ability to reimport a file into a level - #2
- Added asset, InterchangeSceneImportAsset, used to track import and reimport of levels
  - Added translated node, factory node and factory for InterchangeSceneImportAsset
  - Modified InterchangeGenericScenesPipeline to support InterchangeSceneImportAsset
  - Modified pipeline assets for reimport workflows

#fyi flavien.picon,andre.stdenis,francis.moreau

#jira UE-171006
#rb alexis.matte
#preflight 64343a2e427eda5626ad9b49

[CL 24980159 by JeanLuc Corenthin in ue5-main branch]
2023-04-10 13:48:21 -04:00
JeanLuc Corenthin
038a9034d2 Implemented ability to reimport a file into a level - #1
- Added the ability to apply reimport policy on actors based on attributes with delegates
  - Fixed the copy of factory node's attributes from one node to another when the attributes are associated with delegates

#jira UE-171005
#rb alexis.matte
#preflight 642eeff728551807174738a9

[CL 24946066 by JeanLuc Corenthin in ue5-main branch]
2023-04-06 12:35:09 -04:00
Danny Kabrane
4cede43499 MaterialX:
- Use FunctionCallShaderNode instead of ShaderGraphNode, and apply directly the outputs to the shadergraph in the Translator instead of the Material Pipeline (StandardSurfaceShader, SurfaceUnlitShader)

Translator:
- Adding a key to the TexturePayloadKey to retrieve CompressionSettings from a TextureNode

Material Pipeline:
- Remove the OneMinus on the SheenRoughness (was only useful for the GltfTranslator)
- Connect and enable the Refraction, which was disabled by default in UE
- Connect the Anisotropy in the PBR model
- Connect the Tangent in the Common Parameters
- Set the Blend mode to Opaque for Subsurface Materials

#rb JeanLuc.Corenthin
#preflight 6424066a5e52099fe34d31eb

[CL 24833195 by Danny Kabrane in ue5-main branch]
2023-03-29 05:54:19 -04:00
Balazs Toereki
47d0c0c481 [Interchange] UInterchangeFactoryBaseNode::BuildFactoryNodeUid usage review
#jira none
#preflight 642357ba5e52099fe3051591

[CL 24827157 by Balazs Toereki in ue5-main branch]
2023-03-28 17:22:29 -04:00
JeanLuc Corenthin
a28479886a Finalized support for MaterialFunctionCall in the generic material pipeline
#jira UE-180478
#rb alexis.matte
#fyi danny.kabrane
#preflight 641b17f9691c5ebc154dd3a0

[CL 24754168 by JeanLuc Corenthin in ue5-main branch]
2023-03-22 16:54:27 -04:00
Balazs Toereki
84715437aa [Interchange] Refactor GetAnimationPayloadData interface.
Also fixing: When forcing a Skeletal mesh on glTF asset import the animation sequence is not created

#jira UE-177338 UE-174437
#preflight 6408c7cf6c1b9295b9b5a9c6
#rb Alexis.Matte JeanLuc.Corenthin

[CL 24646509 by Balazs Toereki in ue5-main branch]
2023-03-14 18:53:13 -04:00
Balazs Toereki
3ab36475ac [Interchange] Animation API consolidation.
FBX Rigid Animation support, FBX Multi Skeletal Animation support.

#jira UE-175882
#preflight 63fcec51ef1b24bf94a73aa1
#rb Alexis.Matte

[CL 24427908 by Balazs Toereki in ue5-main branch]
2023-02-27 13:38:13 -05:00
Thomas Sarkanen
502797ca50 Animation Curve Runtime & Editor Improvements
Runtime notes:
- Removes 'smart name' usage across the animation systems.
- Changed curve blending from a uniform array (sized per skeleton) to a sparse array of sorted named values. Blends and other combiners are performed using a dual iteration 'tape merge'.
- Skeleton curves are no longer guaranteed to cover all curve names that can be found at runtime.

Editor notes:
- Curve metadata (flags, bone links etc.) is still present on the skeleton, but can also now exist on a skeletal mesh
- Curve metadata (for morph targets) is still populated on import
- Curves can now be used arbitrarily at runtime

New features:
- New Find/Replace dialog that allows for batch-replacing curves and notifies across all of a project's assets
- New curve debugger tab in various Persona editors that allows for viewing curve values live. This also now allows viewing curves for specific pose watches.
- Pose watches now output curve tracks to the Rewind Debugger

#rb Jurre.deBaare,Nicholas.Frechette,Sara.Schvartzman,Helge.Mathee,Kiaran.Ritchie,Jaime.Cifuentes,Martin.Wilson,Keith.Yerex,Andrean.Franc (and more!)
#jira UE-167776
#jira UE-173716
#jira UE-110407
#preflight 63fc98c81206d91a2bc3ab90
#preflight 63f3ad4f81646f1f24c240c2

[CL 24421496 by Thomas Sarkanen in ue5-main branch]
2023-02-27 07:20:58 -05:00
Balazs Toereki
4e93fb3c3c [Interchange] Adding MorphTargetCurveWeights support for SkeletalMeshActors
#jira UE-158229
#preflight 63d3ef5d5d0c0164cc8b62c4
#rb Alexis.Matte JeanLuc.Corenthin

[CL 23890822 by Balazs Toereki in ue5-main branch]
2023-01-27 15:30:54 -05:00
Alexis Matte
47e10601ed Interchange:
- Add Material SkinXX workflow in the generic asset pipeline
- Add LOD Naming workflow in the generic asset pipeline, the difference with the fbx legacy is we wont create generated LOD if there is hole in the specified lod
- Staticmesh collision was already implement
- UVChannel is implement in the fbx translator since the meshdescription can't pass the UVChannel names. Only fbx will support this feature to make sure interchange fbx is on par with legacy fbx.

#jira UE-152801
#rb jeanluc.corenthin
#rnx
#preflight 63b847ceaf3ebedd99e05a76

[CL 23598610 by Alexis Matte in ue5-main branch]
2023-01-06 11:22:43 -05:00
Alexis Matte
7c102e67c2 Interchange: The interchange generic asset pipeline now support "BoneInfluenceLimit" skeletalmesh build settings.
#jira none
#rb jeanluc.corenthin
#rnx
#preflight 638a0d8e35192facc1c34aa8

[CL 23372384 by Alexis Matte in ue5-main branch]
2022-12-02 09:50:13 -05: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
balazs toereki
861fffb59c Interchange (hierarchy) baking fixes
+ Interchange GLTF Translator Skeleton handling fix
+ Fixing Interchange AnimSequence transform baking
+ Changed Approach for Mesh Baking, from Complete to RootJoint baking (with bBakeMeshes option to bake to the root level node)

#jira UE-166107 UE-165682 UE-166108
#preflight 634814ccf04e6f85056ee1d0
#lockdown jeanmichel.dignard
#rb Alexis.Matte JeanLuc.Corenthin

[CL 22566670 by balazs toereki in ue5-main branch]
2022-10-17 11:51:36 -04:00
Alexis Matte
a8bd67498d Interchange: Add the UseHighPrecisionSkinWeights to interchange pipeline.
#jira UE-165703
#rb jeanluc.corenthin
#rnx
#preflight 633c76955047970556868d75

[CL 22335311 by Alexis Matte in ue5-main branch]
2022-10-04 14:27:47 -04:00