Fusee icon indicating copy to clipboard operation
Fusee copied to clipboard

Rework mesh implementation

Open wrestledBearOnce opened this issue 3 years ago • 0 comments

Closes: #605 Closes: #525 Closes: #456 Closes: #396

  • Implemented new mesh backing field logic which registeres each and every change inside the data

  • Update GPU data once per frame via MeshManager.cs (if requested, default true)

  • Prepared the possibility to track changed indices/index ranges (not yet completely implemented)

  • Re-Calculate the AABB for each mesh, each frame (only if necessary)

  • Use ReadOnlySpan<T> where possible, pass only references to the mesh data until we arrive at the GL methods

  • Update all triangles from ushort to uint (Android, Blazor, Desktop), no mesh triangles limitation to ushort.max anymore

  • Follow-ups: implement and track each changed index range, implement the possibility to switch between dynamic (CPU and GPU data present) static (CPU data is readonly), GPUMesh (no more CPU data) mesh implementation

wrestledBearOnce avatar Sep 01 '22 08:09 wrestledBearOnce