Due to a crash, bProcessIsRunning is never set to false, so the parallel tasks "CheckDuration" and "CheckMemory" never end.
To fix it, bProcessIsRunning become static so it can be set to false without any instance of FDatasmithCADWorkerImpl
#preflight 640215175515f4f57bd58d70
[CL 24500161 by david lesage in ue5-main branch]
Set verbose level of messages in FCADFileData
This allows to set the verbose level of non critical message to "Log" instead of "Warning"
#rb jeanluc.corenthin
#preflight 63b5362a8c5081ee9aff569f
[CL 23573586 by David Lesage in ue5-main branch]
One problem is a (undefined) memory leak in the CAD conversion process.
The workaround to fix it, is to restart CADWorker as soon as the leak is too important.
A first implementation is done is 5.1.1 withour header modification: the state ETaskState::Unknown is used to inform that the worker need to be restart.
#jira UE-168831
#rb jeanluc.corenthin
#preflight 637f874edf0c31526849ef73
#lockdown jeanmichel.dignard
[CL 23267335 by david lesage in ue5-main branch]
Skipping AppExit can cause crashes on exit because systems are destroyed in the wrong order.
#jira UE-170063
#preflight none
#rb Brandon.Schaefer
#rnx
[CL 23139565 by Devin Doucette in ue5-main branch]
- to try to fix large crack, a second step could be perform with a larger tolerance
- to prevent the meshing failure of thin surface, and consequently the presence of a crack in the mesh, thin surface can be removed and replaced by a topological weld.
3 new CVar are added to drive this new process:
- ds.CADTranslator.Stitching.ForceSew
- ds.CADTranslator.Stitching.ForceFactor
- ds.CADTranslator.Stitching.RemoveThinFaces
Fix crashes, fix HD leak, fix RAM usage
#jira UE-154019, UE-157085
#rb jeanluc.corenthin
#preflight 6356cd17f92c325024f48f6e
#lockdown jeanmichel.dignard
#preflight 635a9bb00b08a07d8a4310d7
[CL 22810471 by david lesage in ue5-main branch]
[FYI] David.Lesage
Original CL Desc
-----------------------------------------------------------------
[CADKernel] Improve topological welding:
- to try to fix large crack, a second step could be perform with a larger tolerance
- to prevent the meshing failure of thin surface, and consequently the presence of a crack in the mesh, thin surface can be removed and replaced by a topological weld.
3 new CVar are added to drive this new process:
- ds.CADTranslator.Stitching.ForceSew
- ds.CADTranslator.Stitching.ForceFactor
- ds.CADTranslator.Stitching.RemoveThinFaces
Fix crashes, fix HD leak, fix RAM usage
#jira UE-154019, UE-157085
#rb jeanluc.corenthin
#preflight 6352c5ef7261e565c47ca046
#lockdown jeanmichel.dignard
[CL 22713056 by aurel cordonnier in ue5-main branch]
- to try to fix large crack, a second step could be perform with a larger tolerance
- to prevent the meshing failure of thin surface, and consequently the presence of a crack in the mesh, thin surface can be removed and replaced by a topological weld.
3 new CVar are added to drive this new process:
- ds.CADTranslator.Stitching.ForceSew
- ds.CADTranslator.Stitching.ForceFactor
- ds.CADTranslator.Stitching.RemoveThinFaces
Fix crashes, fix HD leak, fix RAM usage
#jira UE-154019, UE-157085
#rb jeanluc.corenthin
#preflight 6352c5ef7261e565c47ca046
#lockdown jeanmichel.dignard
[CL 22711547 by marc audy in ue5-main branch]
Fix that import of the CATProduct hangs. The main problem is due to the size of the message between the CADWorker and the dispatcher in this case (the CATProduct has more than 4000 external references, that generated a message bigger than the limit.)
=>
fix FNetworkNode::ReceiveMessage(): remove the limite of 1 Mb for message size, manage the reception of large messages
fix FDatasmithWorkerHandler::RunInternal(): manage the case of EWorkerErrorState::ConnectionLost
+ some improvements:
- Launch only one worker for monolithic file
- Replace FThread by UE::Tasks::FTask
#rb johan.duparc
#preflight 631a0305304480f8f8584bed
[CL 21908209 by david lesage in ue5-main branch]
* Removed deprecated or dead code paths
* Simplified build system setup for physics support
* Deprecated build system flags and unsupported macros
#jira none
#rb Chris.Caulfield, Kriss.Gossart
#preflight 62963ec0fe779f23c8ea0c5e
[CL 20450744 by Benn Gallagher in ue5-main branch]
The main idea is to replace CoreTechFileParser by a generic CADFileReader.
CADFileReader has an ICADFileParser that will process (parse) the file with the selected SDK (KernelIO or TechSoft or ...).
CoreTechFileReader become CoreTechFileParser and implement ICADFileParser.
The next step is to implement TechSoftFileParser.
To simplify the exchange, a FCADFileData replace FContext and extand the encapsulation of the data needed and generated during the file parsing
#rb johan.duparc
[CL 17496262 by David Lesage in ue5-main branch]