feat(bindings): update C# wrappers for meshopt, nvtt, ufbx

Refactor and regenerate native C# bindings for Ghost.MeshOptimizer, Ghost.Nvtt, and Ghost.Ufbx to match updated native APIs and improve usability.
- Replace meshoptimizer.dll with newer version.
- Move meshoptimizer functions to static methods in partial class; add new meshlet, simplification, quantization features.
- Remove enum wrappers in favor of constants; delete meshopt_Allocator.cs.
- Regenerate native wrappers with PascalCase naming, XML doc comments, and aggressive inlining.
- Implement IDisposable for resource structs; update configs for naming, documentation, and method mapping.
- Update user code to use new wrapper classes and method names.
- Improve documentation and comments for clarity.

BREAKING CHANGE: API surface changes, wrapper class and method names updated, enum wrappers removed, custom allocator deleted.
This commit is contained in:
2026-03-17 00:19:54 +09:00
parent 9bae3e647e
commit e831b71a79
62 changed files with 3820 additions and 1285 deletions

View File

@@ -2,14 +2,15 @@
// This file is generated by Ghost.NativeWrapperGen. Do not edit manually.
// </auto-generated>
using System.Runtime.CompilerServices;
namespace Ghost.Ufbx;
public unsafe partial struct ufbx_cache_channel
{
// From: ufbx_sample_geometry_cache_real(ufbx_cache_channel*, double, float*, nuint, ufbx_geometry_cache_data_opts*)
public nuint sample_geometry_cache_real(double time, float* data, nuint num_data, ufbx_geometry_cache_data_opts* opts)
/// <summary>
/// From: <see cref="Api.ufbx_sample_geometry_cache_real(ufbx_cache_channel*, double, float*, nuint, ufbx_geometry_cache_data_opts*)" />
/// </summary>
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)]
public nuint SampleGeometryCacheReal(double time, float* data, nuint num_data, ufbx_geometry_cache_data_opts* opts)
{
return Api.ufbx_sample_geometry_cache_real(
(ufbx_cache_channel*)System.Runtime.CompilerServices.Unsafe.AsPointer(ref this),
@@ -19,8 +20,11 @@ public unsafe partial struct ufbx_cache_channel
opts);
}
// From: ufbx_sample_geometry_cache_vec3(ufbx_cache_channel*, double, Misaki.HighPerformance.Mathematics.float3*, nuint, ufbx_geometry_cache_data_opts*)
public nuint sample_geometry_cache_vec3(double time, Misaki.HighPerformance.Mathematics.float3* data, nuint num_data, ufbx_geometry_cache_data_opts* opts)
/// <summary>
/// From: <see cref="Api.ufbx_sample_geometry_cache_vec3(ufbx_cache_channel*, double, Misaki.HighPerformance.Mathematics.float3*, nuint, ufbx_geometry_cache_data_opts*)" />
/// </summary>
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)]
public nuint SampleGeometryCacheVec3(double time, Misaki.HighPerformance.Mathematics.float3* data, nuint num_data, ufbx_geometry_cache_data_opts* opts)
{
return Api.ufbx_sample_geometry_cache_vec3(
(ufbx_cache_channel*)System.Runtime.CompilerServices.Unsafe.AsPointer(ref this),