Skip to content

v2.1.9028-beta1

Pre-release
Pre-release

Choose a tag to compare

@abenedik abenedik released this 20 Sep 08:22

This is an intermediate beta version that uses Ab4d.SharpEngine v2.1.9028-beta1 with the following new features (compared to v2.0):

  • Added GpuStagingBuffer class that can do a batch copy of multiple buffers so we wait only once for multiple buffers copy operations. This significantly improves performance of buffer initialization (creating 1000 pyramids each with its own mesh takes now 15ms instead of 200ms).
  • Added MeshUtils.CreateSmoothShadedMesh and MeshUtils.CreateFlatShadedMesh methods that can convert any mesh to a smooth shaded mesh (without any hard edges) or a flat shaded mesh (all edges are hard).
  • Improved generating edge lines - in some cases GetEdgeLines method generated too many edge lines (for example after Boolean operations) or to few edges (for example after slicing the mesh with a plane).
  • Fixed copying data to GPU memory on some Android emulators.
  • Fixed LineSelectorData that can produce invalid results when some of the lines are completely behind the camera.
  • Improved performance of LineSelectorData when the whole line is behind the camera - in this case the screen space positions are not calculated. Also added a new property IsBoundingBoxBehindTheCamera.
  • Added a new overload to LineSelectorData.GetClosestPositionOnLine method that takes screenPosition (mouse 2D position) as a parameter.
  • Updated setting memory type index when creating shared texture for WPF and Avalonia applications on Windows.
  • Added support for devices that use non-coherent memory (some older Android and older iMac devices).
  • Added support for VK_EXT_device_fault extension. This can provide some additional information on device lost on devices that support that extension.
  • Improved performance of copying rendered texture to CPU (used for PresentationType = WritableBitmap or for SceneView.RenderToGpuImage).