Animation for transforms exported as relative to parent actors. Hidden nodes are not exported by the plugin so relative transform need to be taken to closest exported ancestor node.
#jira UE-131680
#preflight 6294af1e380652524ec77dc7
#rb #rb benoit.deschenes
[CL 20450056 by kerim borchaev in ue5-main branch]
- enables conversion to Datasmith of non-uniformly scaled objects done along rotated axes(pivot) by baking pivots into geometry(when appropriate)
#jira UE-136121
#preflight 628e3e8a731cfa46fcc016c3
#rb benoit.deschenes
[CL 20368776 by kerim borchaev in ue5-main branch]
- main improvement is to handle situations when material change event is sent during update - vray materials also fire events when RenderBegin/RenderEnd is called on their nodes
#jira UE-150309
#preflight 628cbcc96f6741ae315dba75
#rb benoit.deschenes
[CL 20348772 by kerim borchaev in ue5-main branch]
- Changed geometry-related events to use ReferenceMaker notifications
- Result is that notifications are immediate..
- ..therefore could be ignored when sent from within Update. This allows setting Geom nodes to produce Render mesh during update(switching to Render mesh sends notification).
- Test case - AutoSync for optimize/turbosmooth/vrayproxy etc objects exports Render mesh(not viewport mesh) and doesn't spam DirectLink updates
#jira UETOOL-5105 UE-151506
#preflight 627ce774332e182a581b842d
#rb benoit.deschenes
[CL 20242777 by kerim borchaev in ue5-main branch]
- Sync can correctly restarts after being cancelled
#jira UETOOL-5104
#preflight 626a64ef0464895bc5fe1f78
#rb benoit.deschenes
[CL 20006279 by kerim borchaev in ue5-main branch]
- Node transforms updated when Max time slider changes
- Optimize Collision Sync - not using Max api to find node by name but instead use plugin's recorded name->node mapping
- additional refactor to simplify further validity checks(for geometry, materials etc)
#jira UETOOL-5042
#preflight 625718d6f7476d662c7fd20d
#rb benoit.deschenes
[CL 19774347 by kerim borchaev in ue5-main branch]
rules of thumb:
- Actor transforms are in doubles
- mesh internal data are in floats, except UVs that are in doubles
- compiled 3dsmax, archicad, navisworks, revit, rhino, sketchup, solidworks
#jira UETOOL-5070
#preflight 623f2ee47d49f37dfd3d599b
#rb Benoit.Deschenes
[CL 19533189 by Johan Duparc in ue5-main branch]
- Changes to Texmaps are synced(bitmap and other types, bakeable or not)
- No unused textures left in the udatasmith file(any situation when texture was used but not anymore)
- Only textures referenced in converted material are exported. This is an improvement over old exporter where it exported all texmaps referenced by source Max material and then cleaned up scene.
#jira UETOOL-4391
#preflight 6239ee8b7b69b01ec152cc1e
#rb benoit.deschenes
[CL 19495448 by kerim borchaev in ue5-main branch]
- Export outputs into Messages dialog and log timings for each export stage. Always enabled
- Sync/AutoSync can enable this too, with "Datasmith_SetExportOption_StatSync true" mxs command
- removed info/warnings from outputting to Listener, only Messages and Unreal log
- Unreal log is located here - %LOCALAPPDATA%\UnrealDatasmithExporter\Saved\Logs\UnrealDatasmithExporter.log
#preflight 62336c4948746817f12d1ca4
#jira none
#rb benoit.deschenes
[CL 19423770 by kerim borchaev in ue5-main branch]
- test: add two geometries with different multisubobj materials to the same Forest object
- also fixed crash related to Containers. Test: create container, close it, open, close, previously this whould eventually crash
#jira UETOOL-4389
#preflight 623048c7c51b66df4c39fb52
#rb benoit.deschenes
[CL 19387780 by kerim borchaev in ue5-main branch]
- mesh with multiple material ids but single material(i.e. not a multimaterial) is consolidated into single mesh with one material slot. Simple test - create a box(in Max it defaults to 6 matIds) and assign a material then sync/export/observe
- sorted material slots to make them in the same order as in multimaterial
- unused materials removed from Datasmith scene. I.e. assign material - sync - assign different material - first material should go away from udatasmith if not used on other nodes
#jira UE-143713
#preflight 6229002ccc09078bab5cadf5
#rb benoit.deschenes
[CL 19333134 by kerim borchaev in ue5-main branch]
- fixed scene reset/new/load DirectLink name
- (internal)flag to use viewport mesh for Sync/AutoSync to prevent GeometryChanged events appearing. Testcase - use Optimize/MeshSmooth/TurboSmooth modifier and have render/viewport mesh different quality. This would cause infinite update before.
#jira none
#preflight 621e34a7f1206ae3ea5a5acf
#rb benoit.deschenes
[CL 19239308 by kerim borchaev in ue5-main branch]
- Scope: Pure Metallic, Thin(as ThinTranslucent), Transparent/Refractive material(including volumetric transmittance for PathTracer), simple opaque, emissive materials
- Roughness(with Glossiness mode) converted linearly. So that it's invertible same as in Max - e.g. 0.5 Roughness is same as 0.5 Gloss
- Specular/Ior conversion suported for both Ior and Disney modes. Ior is properly converted(to Specular). And Disney Specular to refraction Ior.
#jira UETOOL-4970
#preflight 6215b8ea0f71e491ccea8460
#rb benoit.deschenes
[CL 19083835 by kerim borchaev in ue5-main branch]
- Converted Max Physical Material to Datasmith UEPbr, including Clear coat
- Testcases:
- Opaque
- Simple Transparent Max material exported as simple transparency(no refraction, ior)
- Advanced Transparent Max material exported as refractive material
- ClearCoat(ior, roughness used)
- Added ThinTranslucent variant(when Max material is ThinWalled or IOR it 1.0)
- Reflection converted to Specular
- Additionally: Fixed transparency color map, emission map/color map that was broken
#jira UETOOL-4571 UETOOL-4900
#preflight 61f7d274e55232619f81a549
#rb benoit.deschenes
[CL 18791909 by kerim borchaev in ue5-main branch]
- handling deletion of nodes moved to Update, not only fixing autosync but also ensuring that this potentially heavy work(in case of many removed nodes) doesn't happen when user is editing the scene
#jira UE-139068
#preflight 61e837c8da16597a1f39965d
#rb benoit.deschenes
[CL 18660619 by kerim borchaev in ue5-main branch]