Class MeshOptimizer

java.lang.Object
org.lwjgl.util.meshoptimizer.MeshOptimizer

public class MeshOptimizer extends Object
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
  • Method Summary

    Modifier and Type
    Method
    Description
    meshopt_analyzeCoverage(IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, MeshoptCoverageStatistics __result)
    struct meshopt_CoverageStatistics meshopt_analyzeCoverage(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    meshopt_analyzeOverdraw(IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, MeshoptOverdrawStatistics __result)
    struct meshopt_OverdrawStatistics meshopt_analyzeOverdraw(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    meshopt_analyzeVertexCache(IntBuffer indices, long vertex_count, int cache_size, int warp_size, int primgroup_size, MeshoptVertexCacheStatistics __result)
    struct meshopt_VertexCacheStatistics meshopt_analyzeVertexCache(unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int cache_size, unsigned int warp_size, unsigned int primgroup_size)
    meshopt_analyzeVertexFetch(IntBuffer indices, long vertex_count, long vertex_size, MeshoptVertexFetchStatistics __result)
    struct meshopt_VertexFetchStatistics meshopt_analyzeVertexFetch(unsigned int const * indices, size_t index_count, size_t vertex_count, size_t vertex_size)
    static long
    meshopt_buildMeshlets(MeshoptMeshlet.Buffer meshlets, IntBuffer meshlet_vertices, ByteBuffer meshlet_triangles, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long max_triangles, float cone_weight)
    size_t meshopt_buildMeshlets(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t max_triangles, float cone_weight)
    static long
    meshopt_buildMeshletsBound(long index_count, long max_vertices, long max_triangles)
    size_t meshopt_buildMeshletsBound(size_t index_count, size_t max_vertices, size_t max_triangles)
    static long
    meshopt_buildMeshletsFlex(MeshoptMeshlet.Buffer meshlets, IntBuffer meshlet_vertices, ByteBuffer meshlet_triangles, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long min_triangles, long max_triangles, float cone_weight, float split_factor)
    size_t meshopt_buildMeshletsFlex(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t min_triangles, size_t max_triangles, float cone_weight, float split_factor)
    static long
    meshopt_buildMeshletsScan(MeshoptMeshlet.Buffer meshlets, IntBuffer meshlet_vertices, ByteBuffer meshlet_triangles, IntBuffer indices, long vertex_count, long max_vertices, long max_triangles)
    size_t meshopt_buildMeshletsScan(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, size_t vertex_count, size_t max_vertices, size_t max_triangles)
    static long
    meshopt_buildMeshletsSpatial(MeshoptMeshlet.Buffer meshlets, IntBuffer meshlet_vertices, ByteBuffer meshlet_triangles, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long min_triangles, long max_triangles, float fill_weight)
    size_t meshopt_buildMeshletsSpatial(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t min_triangles, size_t max_triangles, float fill_weight)
    meshopt_computeClusterBounds(IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, MeshoptBounds __result)
    struct meshopt_Bounds meshopt_computeClusterBounds(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    meshopt_computeMeshletBounds(IntBuffer meshlet_vertices, ByteBuffer meshlet_triangles, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, MeshoptBounds __result)
    struct meshopt_Bounds meshopt_computeMeshletBounds(unsigned int const * meshlet_vertices, unsigned char const * meshlet_triangles, size_t triangle_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    meshopt_computeSphereBounds(FloatBuffer positions, long count, long positions_stride, @Nullable FloatBuffer radii, long radii_stride, MeshoptBounds __result)
    struct meshopt_Bounds meshopt_computeSphereBounds(float const * positions, size_t count, size_t positions_stride, float const * radii, size_t radii_stride)
    static void
    meshopt_decodeFilterColor(ByteBuffer buffer, long count, long stride)
    void meshopt_decodeFilterColor(void * buffer, size_t count, size_t stride)
    static void
    meshopt_decodeFilterColor(ShortBuffer buffer, long count, long stride)
    void meshopt_decodeFilterColor(void * buffer, size_t count, size_t stride)
    static void
    meshopt_decodeFilterExp(ByteBuffer buffer, long count, long stride)
    void meshopt_decodeFilterExp(void * buffer, size_t count, size_t stride)
    static void
    meshopt_decodeFilterExp(IntBuffer buffer, long count, long stride)
    void meshopt_decodeFilterExp(void * buffer, size_t count, size_t stride)
    static void
    meshopt_decodeFilterOct(ByteBuffer buffer, long count, long stride)
    void meshopt_decodeFilterOct(void * buffer, size_t count, size_t stride)
    static void
    meshopt_decodeFilterOct(ShortBuffer buffer, long count, long stride)
    void meshopt_decodeFilterOct(void * buffer, size_t count, size_t stride)
    static void
    meshopt_decodeFilterQuat(ByteBuffer buffer, long count, long stride)
    void meshopt_decodeFilterQuat(void * buffer, size_t count, size_t stride)
    static void
    meshopt_decodeFilterQuat(ShortBuffer buffer, long count, long stride)
    void meshopt_decodeFilterQuat(void * buffer, size_t count, size_t stride)
    static int
    meshopt_decodeIndexBuffer(ByteBuffer destination, long index_count, long index_size, ByteBuffer buffer)
    int meshopt_decodeIndexBuffer(void * destination, size_t index_count, size_t index_size, unsigned char const * buffer, size_t buffer_size)
    static int
    meshopt_decodeIndexSequence(ByteBuffer destination, long index_count, long index_size, ByteBuffer buffer)
    int meshopt_decodeIndexSequence(void * destination, size_t index_count, size_t index_size, unsigned char const * buffer, size_t buffer_size)
    static int
    int meshopt_decodeIndexVersion(unsigned char const * buffer, size_t buffer_size)
    static int
    meshopt_decodeMeshlet(@Nullable ByteBuffer vertices, long vertex_count, long vertex_size, ByteBuffer triangles, long triangle_count, long triangle_size, ByteBuffer buffer)
    int meshopt_decodeMeshlet(void * vertices, size_t vertex_count, size_t vertex_size, void * triangles, size_t triangle_count, size_t triangle_size, unsigned char const * buffer, size_t buffer_size)
    static int
    meshopt_decodeMeshletRaw(@Nullable IntBuffer vertices, IntBuffer triangles, ByteBuffer buffer)
    int meshopt_decodeMeshletRaw(unsigned int * vertices, size_t vertex_count, unsigned int * triangles, size_t triangle_count, unsigned char const * buffer, size_t buffer_size)
    static int
    meshopt_decodeVertexBuffer(ByteBuffer destination, long vertex_count, long vertex_size, ByteBuffer buffer)
    int meshopt_decodeVertexBuffer(void * destination, size_t vertex_count, size_t vertex_size, unsigned char const * buffer, size_t buffer_size)
    static int
    int meshopt_decodeVertexVersion(unsigned char const * buffer, size_t buffer_size)
    static float
    Reverse quantization of a half-precision (as defined by IEEE-754 fp16) floating point value.
    static void
    meshopt_encodeFilterColor(ByteBuffer destination, long count, long stride, int bits, FloatBuffer data)
    void meshopt_encodeFilterColor(void * destination, size_t count, size_t stride, int bits, float const * data)
    static void
    meshopt_encodeFilterColor(ShortBuffer destination, long count, long stride, int bits, FloatBuffer data)
    void meshopt_encodeFilterColor(void * destination, size_t count, size_t stride, int bits, float const * data)
    static void
    meshopt_encodeFilterExp(ByteBuffer destination, long count, long stride, int bits, FloatBuffer data, int mode)
    void meshopt_encodeFilterExp(void * destination, size_t count, size_t stride, int bits, float const * data, enum meshopt_EncodeExpMode mode)
    static void
    meshopt_encodeFilterExp(IntBuffer destination, long count, long stride, int bits, FloatBuffer data, int mode)
    void meshopt_encodeFilterExp(void * destination, size_t count, size_t stride, int bits, float const * data, enum meshopt_EncodeExpMode mode)
    static void
    meshopt_encodeFilterOct(ByteBuffer destination, long count, long stride, int bits, FloatBuffer data)
    void meshopt_encodeFilterOct(void * destination, size_t count, size_t stride, int bits, float const * data)
    static void
    meshopt_encodeFilterOct(ShortBuffer destination, long count, long stride, int bits, FloatBuffer data)
    void meshopt_encodeFilterOct(void * destination, size_t count, size_t stride, int bits, float const * data)
    static void
    meshopt_encodeFilterQuat(ByteBuffer destination, long count, long stride, int bits, FloatBuffer data)
    void meshopt_encodeFilterQuat(void * destination, size_t count, size_t stride, int bits, float const * data)
    static void
    meshopt_encodeFilterQuat(ShortBuffer destination, long count, long stride, int bits, FloatBuffer data)
    void meshopt_encodeFilterQuat(void * destination, size_t count, size_t stride, int bits, float const * data)
    static long
    size_t meshopt_encodeIndexBuffer(unsigned char * buffer, size_t buffer_size, unsigned int const * indices, size_t index_count)
    static long
    meshopt_encodeIndexBufferBound(long index_count, long vertex_count)
    size_t meshopt_encodeIndexBufferBound(size_t index_count, size_t vertex_count)
    static long
    size_t meshopt_encodeIndexSequence(unsigned char * buffer, size_t buffer_size, unsigned int const * indices, size_t index_count)
    static long
    meshopt_encodeIndexSequenceBound(long index_count, long vertex_count)
    size_t meshopt_encodeIndexSequenceBound(size_t index_count, size_t vertex_count)
    static void
    void meshopt_encodeIndexVersion(int version)
    static long
    meshopt_encodeMeshlet(ByteBuffer buffer, @Nullable IntBuffer vertices, ByteBuffer triangles)
    size_t meshopt_encodeMeshlet(unsigned char * buffer, size_t buffer_size, unsigned int const * vertices, size_t vertex_count, unsigned char const * triangles, size_t triangle_count)
    static long
    meshopt_encodeMeshletBound(long max_vertices, long max_triangles)
    size_t meshopt_encodeMeshletBound(size_t max_vertices, size_t max_triangles)
    static long
    meshopt_encodeVertexBuffer(ByteBuffer buffer, ByteBuffer vertices, long vertex_count, long vertex_size)
    size_t meshopt_encodeVertexBuffer(unsigned char * buffer, size_t buffer_size, void const * vertices, size_t vertex_count, size_t vertex_size)
    static long
    meshopt_encodeVertexBufferBound(long vertex_count, long vertex_size)
    size_t meshopt_encodeVertexBufferBound(size_t vertex_count, size_t vertex_size)
    static long
    meshopt_encodeVertexBufferLevel(ByteBuffer buffer, ByteBuffer vertices, long vertex_count, long vertex_size, int level, int version)
    size_t meshopt_encodeVertexBufferLevel(unsigned char * buffer, size_t buffer_size, void const * vertices, size_t vertex_count, size_t vertex_size, int level, int version)
    static void
    void meshopt_encodeVertexVersion(int version)
    static long
    size_t meshopt_extractMeshletIndices(unsigned int * vertices, unsigned char * triangles, unsigned int const * indices, size_t index_count)
    static void
    meshopt_generateAdjacencyIndexBuffer(IntBuffer destination, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_generateAdjacencyIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static void
    meshopt_generatePositionRemap(IntBuffer destination, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_generatePositionRemap(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static long
    meshopt_generateProvokingIndexBuffer(IntBuffer destination, IntBuffer reorder, IntBuffer indices, long index_count, long vertex_count)
    size_t meshopt_generateProvokingIndexBuffer(unsigned int * destination, unsigned int * reorder, unsigned int const * indices, size_t index_count, size_t vertex_count)
    static void
    meshopt_generateShadowIndexBuffer(IntBuffer destination, IntBuffer indices, ByteBuffer vertices, long vertex_count, long vertex_size, long vertex_stride)
    void meshopt_generateShadowIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size, size_t vertex_stride)
    static void
    meshopt_generateShadowIndexBufferMulti(IntBuffer destination, IntBuffer indices, long vertex_count, MeshoptStream.Buffer streams)
    void meshopt_generateShadowIndexBufferMulti(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, struct meshopt_Stream const * streams, size_t stream_count)
    static void
    meshopt_generateTessellationIndexBuffer(IntBuffer destination, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_generateTessellationIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static long
    meshopt_generateVertexRemap(IntBuffer destination, @Nullable IntBuffer indices, long index_count, ByteBuffer vertices, long vertex_count, long vertex_size)
    size_t meshopt_generateVertexRemap(unsigned int * destination, unsigned int const * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size)
    static long
    meshopt_generateVertexRemapCustom(IntBuffer destination, @Nullable IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, @Nullable MeshoptEqualsI callback, long context)
    size_t meshopt_generateVertexRemapCustom(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, int (*) (void *, unsigned int, unsigned int) callback, void * context)
    static long
    meshopt_generateVertexRemapMulti(IntBuffer destination, @Nullable IntBuffer indices, long vertex_count, MeshoptStream.Buffer streams)
    size_t meshopt_generateVertexRemapMulti(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, struct meshopt_Stream const * streams, size_t stream_count)
    static long
    meshopt_opacityMapCompact(ByteBuffer data, ByteBuffer levels, IntBuffer offsets, IntBuffer omm_indices, int states)
    size_t meshopt_opacityMapCompact(unsigned char * data, size_t data_size, unsigned char * levels, unsigned int * offsets, size_t omm_count, int * omm_indices, size_t triangle_count, int states)
    static long
    meshopt_opacityMapEntrySize(int level, int states)
    size_t meshopt_opacityMapEntrySize(int level, int states)
    static long
    meshopt_opacityMapMeasure(ByteBuffer levels, IntBuffer sources, IntBuffer omm_indices, IntBuffer indices, FloatBuffer vertex_uvs, long vertex_count, long vertex_uvs_stride, int texture_width, int texture_height, int max_level, float target_edge)
    size_t meshopt_opacityMapMeasure(unsigned char * levels, unsigned int * sources, int * omm_indices, unsigned int const * indices, size_t index_count, float const * vertex_uvs, size_t vertex_count, size_t vertex_uvs_stride, unsigned int texture_width, unsigned int texture_height, int max_level, float target_edge)
    static void
    meshopt_opacityMapRasterize(ByteBuffer result, int level, int states, FloatBuffer uv0, FloatBuffer uv1, FloatBuffer uv2, ByteBuffer texture_data, long texture_stride, long texture_pitch, int texture_width, int texture_height)
    void meshopt_opacityMapRasterize(unsigned char * result, int level, int states, float const * uv0, float const * uv1, float const * uv2, unsigned char const * texture_data, size_t texture_stride, size_t texture_pitch, unsigned int texture_width, unsigned int texture_height)
    static void
    meshopt_optimizeMeshlet(IntBuffer meshlet_vertices, ByteBuffer meshlet_triangles)
    void meshopt_optimizeMeshlet(unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, size_t triangle_count, size_t vertex_count)
    static void
    meshopt_optimizeMeshletLevel(IntBuffer meshlet_vertices, ByteBuffer meshlet_triangles, int level)
    void meshopt_optimizeMeshletLevel(unsigned int * meshlet_vertices, size_t vertex_count, unsigned char * meshlet_triangles, size_t triangle_count, int level)
    static void
    meshopt_optimizeOverdraw(IntBuffer destination, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, float threshold)
    void meshopt_optimizeOverdraw(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float threshold)
    static void
    meshopt_optimizeVertexCache(IntBuffer destination, IntBuffer indices, long vertex_count)
    void meshopt_optimizeVertexCache(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    static void
    meshopt_optimizeVertexCacheFifo(IntBuffer destination, IntBuffer indices, long vertex_count, int cache_size)
    void meshopt_optimizeVertexCacheFifo(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int cache_size)
    static void
    meshopt_optimizeVertexCacheStrip(IntBuffer destination, IntBuffer indices, long vertex_count)
    void meshopt_optimizeVertexCacheStrip(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    static long
    meshopt_optimizeVertexFetch(ByteBuffer destination, IntBuffer indices, ByteBuffer vertices, long vertex_count, long vertex_size)
    size_t meshopt_optimizeVertexFetch(void * destination, unsigned int * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size)
    static long
    size_t meshopt_optimizeVertexFetchRemap(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    static long
    meshopt_partitionClusters(IntBuffer destination, IntBuffer cluster_indices, IntBuffer cluster_index_counts, @Nullable FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, long target_partition_size)
    size_t meshopt_partitionClusters(unsigned int * destination, unsigned int const * cluster_indices, size_t total_index_count, unsigned int const * cluster_index_counts, size_t cluster_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t target_partition_size)
    static float
    meshopt_quantizeFloat(float v, int N)
    Quantizes a float into a floating point value with a limited number of significant mantissa bits, preserving the IEEE-754 fp32 binary representation.
    static short
    Quantizes a float into half-precision (as defined by IEEE-754 fp16) floating point value.
    static int
    meshopt_quantizeSnorm(float v, int N)
    Quantizes a float in [-1..1] range into an N-bit fixed point snorm value.
    static int
    meshopt_quantizeUnorm(float v, int N)
    Quantizes a float in [0..1] range into an N-bit fixed point unorm value.
    static void
    meshopt_remapIndexBuffer(IntBuffer destination, @Nullable IntBuffer indices, long index_count, IntBuffer remap)
    void meshopt_remapIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, unsigned int const * remap)
    static void
    meshopt_remapVertexBuffer(ByteBuffer destination, ByteBuffer vertices, long vertex_count, long vertex_size, IntBuffer remap)
    void meshopt_remapVertexBuffer(void * destination, void const * vertices, size_t vertex_count, size_t vertex_size, unsigned int const * remap)
    static void
    void meshopt_setAllocator(void * (*) (size_t) allocate, void (*) (void *) deallocate)
    static long
    meshopt_simplify(IntBuffer destination, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, long target_index_count, float target_error, int options, @Nullable FloatBuffer result_error)
    size_t meshopt_simplify(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    static long
    meshopt_simplifyPoints(IntBuffer destination, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, @Nullable FloatBuffer vertex_colors, long vertex_colors_stride, float color_weight, long target_vertex_count)
    size_t meshopt_simplifyPoints(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float const * vertex_colors, size_t vertex_colors_stride, float color_weight, size_t target_vertex_count)
    static long
    meshopt_simplifyPrune(IntBuffer destination, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, float target_error)
    size_t meshopt_simplifyPrune(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float target_error)
    static float
    meshopt_simplifyScale(FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride)
    float meshopt_simplifyScale(float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static long
    meshopt_simplifySloppy(IntBuffer destination, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, @Nullable ByteBuffer vertex_lock, long target_index_count, float target_error, @Nullable FloatBuffer result_error)
    size_t meshopt_simplifySloppy(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, unsigned char const * vertex_lock, size_t target_index_count, float target_error, float * result_error)
    static long
    meshopt_simplifyWithAttributes(IntBuffer destination, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, FloatBuffer vertex_attributes, long vertex_attributes_stride, FloatBuffer attribute_weights, @Nullable ByteBuffer vertex_lock, long target_index_count, float target_error, int options, @Nullable FloatBuffer result_error)
    size_t meshopt_simplifyWithAttributes(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float const * vertex_attributes, size_t vertex_attributes_stride, float const * attribute_weights, size_t attribute_count, unsigned char const * vertex_lock, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    static long
    meshopt_simplifyWithUpdate(IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, FloatBuffer vertex_attributes, long vertex_attributes_stride, FloatBuffer attribute_weights, @Nullable ByteBuffer vertex_lock, long target_index_count, float target_error, int options, @Nullable FloatBuffer result_error)
    size_t meshopt_simplifyWithUpdate(unsigned int * indices, size_t index_count, float * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float * vertex_attributes, size_t vertex_attributes_stride, float const * attribute_weights, size_t attribute_count, unsigned char const * vertex_lock, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    static void
    meshopt_spatialClusterPoints(IntBuffer destination, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride, long cluster_size)
    void meshopt_spatialClusterPoints(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t cluster_size)
    static void
    meshopt_spatialSortRemap(IntBuffer destination, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_spatialSortRemap(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static void
    meshopt_spatialSortTriangles(IntBuffer destination, IntBuffer indices, FloatBuffer vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_spatialSortTriangles(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static long
    meshopt_stripify(IntBuffer destination, IntBuffer indices, long vertex_count, int restart_index)
    size_t meshopt_stripify(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int restart_index)
    static long
    meshopt_stripifyBound(long index_count)
    size_t meshopt_stripifyBound(size_t index_count)
    static long
    meshopt_unstripify(IntBuffer destination, IntBuffer indices, int restart_index)
    size_t meshopt_unstripify(unsigned int * destination, unsigned int const * indices, size_t index_count, unsigned int restart_index)
    static long
    meshopt_unstripifyBound(long index_count)
    size_t meshopt_unstripifyBound(size_t index_count)
    static void
    nmeshopt_analyzeCoverage(long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long __result)
    struct meshopt_CoverageStatistics meshopt_analyzeCoverage(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static void
    nmeshopt_analyzeOverdraw(long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long __result)
    struct meshopt_OverdrawStatistics meshopt_analyzeOverdraw(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static void
    nmeshopt_analyzeVertexCache(long indices, long index_count, long vertex_count, int cache_size, int warp_size, int primgroup_size, long __result)
    struct meshopt_VertexCacheStatistics meshopt_analyzeVertexCache(unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int cache_size, unsigned int warp_size, unsigned int primgroup_size)
    static void
    nmeshopt_analyzeVertexFetch(long indices, long index_count, long vertex_count, long vertex_size, long __result)
    struct meshopt_VertexFetchStatistics meshopt_analyzeVertexFetch(unsigned int const * indices, size_t index_count, size_t vertex_count, size_t vertex_size)
    static long
    nmeshopt_buildMeshlets(long meshlets, long meshlet_vertices, long meshlet_triangles, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long max_triangles, float cone_weight)
    size_t meshopt_buildMeshlets(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t max_triangles, float cone_weight)
    static long
    nmeshopt_buildMeshletsFlex(long meshlets, long meshlet_vertices, long meshlet_triangles, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long min_triangles, long max_triangles, float cone_weight, float split_factor)
    size_t meshopt_buildMeshletsFlex(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t min_triangles, size_t max_triangles, float cone_weight, float split_factor)
    static long
    nmeshopt_buildMeshletsScan(long meshlets, long meshlet_vertices, long meshlet_triangles, long indices, long index_count, long vertex_count, long max_vertices, long max_triangles)
    size_t meshopt_buildMeshletsScan(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, size_t vertex_count, size_t max_vertices, size_t max_triangles)
    static long
    nmeshopt_buildMeshletsSpatial(long meshlets, long meshlet_vertices, long meshlet_triangles, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long min_triangles, long max_triangles, float fill_weight)
    size_t meshopt_buildMeshletsSpatial(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t min_triangles, size_t max_triangles, float fill_weight)
    static void
    nmeshopt_computeClusterBounds(long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long __result)
    struct meshopt_Bounds meshopt_computeClusterBounds(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static void
    nmeshopt_computeMeshletBounds(long meshlet_vertices, long meshlet_triangles, long triangle_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long __result)
    struct meshopt_Bounds meshopt_computeMeshletBounds(unsigned int const * meshlet_vertices, unsigned char const * meshlet_triangles, size_t triangle_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static void
    nmeshopt_computeSphereBounds(long positions, long count, long positions_stride, long radii, long radii_stride, long __result)
    struct meshopt_Bounds meshopt_computeSphereBounds(float const * positions, size_t count, size_t positions_stride, float const * radii, size_t radii_stride)
    static void
    nmeshopt_decodeFilterColor(long buffer, long count, long stride)
    void meshopt_decodeFilterColor(void * buffer, size_t count, size_t stride)
    static void
    nmeshopt_decodeFilterExp(long buffer, long count, long stride)
    void meshopt_decodeFilterExp(void * buffer, size_t count, size_t stride)
    static void
    nmeshopt_decodeFilterOct(long buffer, long count, long stride)
    void meshopt_decodeFilterOct(void * buffer, size_t count, size_t stride)
    static void
    nmeshopt_decodeFilterQuat(long buffer, long count, long stride)
    void meshopt_decodeFilterQuat(void * buffer, size_t count, size_t stride)
    static int
    nmeshopt_decodeIndexBuffer(long destination, long index_count, long index_size, long buffer, long buffer_size)
    int meshopt_decodeIndexBuffer(void * destination, size_t index_count, size_t index_size, unsigned char const * buffer, size_t buffer_size)
    static int
    nmeshopt_decodeIndexSequence(long destination, long index_count, long index_size, long buffer, long buffer_size)
    int meshopt_decodeIndexSequence(void * destination, size_t index_count, size_t index_size, unsigned char const * buffer, size_t buffer_size)
    static int
    nmeshopt_decodeIndexVersion(long buffer, long buffer_size)
    int meshopt_decodeIndexVersion(unsigned char const * buffer, size_t buffer_size)
    static int
    nmeshopt_decodeMeshlet(long vertices, long vertex_count, long vertex_size, long triangles, long triangle_count, long triangle_size, long buffer, long buffer_size)
    int meshopt_decodeMeshlet(void * vertices, size_t vertex_count, size_t vertex_size, void * triangles, size_t triangle_count, size_t triangle_size, unsigned char const * buffer, size_t buffer_size)
    static int
    nmeshopt_decodeMeshletRaw(long vertices, long vertex_count, long triangles, long triangle_count, long buffer, long buffer_size)
    int meshopt_decodeMeshletRaw(unsigned int * vertices, size_t vertex_count, unsigned int * triangles, size_t triangle_count, unsigned char const * buffer, size_t buffer_size)
    static int
    nmeshopt_decodeVertexBuffer(long destination, long vertex_count, long vertex_size, long buffer, long buffer_size)
    int meshopt_decodeVertexBuffer(void * destination, size_t vertex_count, size_t vertex_size, unsigned char const * buffer, size_t buffer_size)
    static int
    nmeshopt_decodeVertexVersion(long buffer, long buffer_size)
    int meshopt_decodeVertexVersion(unsigned char const * buffer, size_t buffer_size)
    static void
    nmeshopt_encodeFilterColor(long destination, long count, long stride, int bits, long data)
    void meshopt_encodeFilterColor(void * destination, size_t count, size_t stride, int bits, float const * data)
    static void
    nmeshopt_encodeFilterExp(long destination, long count, long stride, int bits, long data, int mode)
    void meshopt_encodeFilterExp(void * destination, size_t count, size_t stride, int bits, float const * data, enum meshopt_EncodeExpMode mode)
    static void
    nmeshopt_encodeFilterOct(long destination, long count, long stride, int bits, long data)
    void meshopt_encodeFilterOct(void * destination, size_t count, size_t stride, int bits, float const * data)
    static void
    nmeshopt_encodeFilterQuat(long destination, long count, long stride, int bits, long data)
    void meshopt_encodeFilterQuat(void * destination, size_t count, size_t stride, int bits, float const * data)
    static long
    nmeshopt_encodeIndexBuffer(long buffer, long buffer_size, long indices, long index_count)
    size_t meshopt_encodeIndexBuffer(unsigned char * buffer, size_t buffer_size, unsigned int const * indices, size_t index_count)
    static long
    nmeshopt_encodeIndexSequence(long buffer, long buffer_size, long indices, long index_count)
    size_t meshopt_encodeIndexSequence(unsigned char * buffer, size_t buffer_size, unsigned int const * indices, size_t index_count)
    static long
    nmeshopt_encodeMeshlet(long buffer, long buffer_size, long vertices, long vertex_count, long triangles, long triangle_count)
    size_t meshopt_encodeMeshlet(unsigned char * buffer, size_t buffer_size, unsigned int const * vertices, size_t vertex_count, unsigned char const * triangles, size_t triangle_count)
    static long
    nmeshopt_encodeVertexBuffer(long buffer, long buffer_size, long vertices, long vertex_count, long vertex_size)
    size_t meshopt_encodeVertexBuffer(unsigned char * buffer, size_t buffer_size, void const * vertices, size_t vertex_count, size_t vertex_size)
    static long
    nmeshopt_encodeVertexBufferLevel(long buffer, long buffer_size, long vertices, long vertex_count, long vertex_size, int level, int version)
    size_t meshopt_encodeVertexBufferLevel(unsigned char * buffer, size_t buffer_size, void const * vertices, size_t vertex_count, size_t vertex_size, int level, int version)
    static long
    nmeshopt_extractMeshletIndices(long vertices, long triangles, long indices, long index_count)
    size_t meshopt_extractMeshletIndices(unsigned int * vertices, unsigned char * triangles, unsigned int const * indices, size_t index_count)
    static void
    nmeshopt_generateAdjacencyIndexBuffer(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_generateAdjacencyIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static void
    nmeshopt_generatePositionRemap(long destination, long vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_generatePositionRemap(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static long
    nmeshopt_generateProvokingIndexBuffer(long destination, long reorder, long indices, long index_count, long vertex_count)
    size_t meshopt_generateProvokingIndexBuffer(unsigned int * destination, unsigned int * reorder, unsigned int const * indices, size_t index_count, size_t vertex_count)
    static void
    nmeshopt_generateShadowIndexBuffer(long destination, long indices, long index_count, long vertices, long vertex_count, long vertex_size, long vertex_stride)
    void meshopt_generateShadowIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size, size_t vertex_stride)
    static void
    nmeshopt_generateShadowIndexBufferMulti(long destination, long indices, long index_count, long vertex_count, long streams, long stream_count)
    void meshopt_generateShadowIndexBufferMulti(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, struct meshopt_Stream const * streams, size_t stream_count)
    static void
    nmeshopt_generateTessellationIndexBuffer(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_generateTessellationIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static long
    nmeshopt_generateVertexRemap(long destination, long indices, long index_count, long vertices, long vertex_count, long vertex_size)
    size_t meshopt_generateVertexRemap(unsigned int * destination, unsigned int const * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size)
    static long
    nmeshopt_generateVertexRemapCustom(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long callback, long context)
    size_t meshopt_generateVertexRemapCustom(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, int (*) (void *, unsigned int, unsigned int) callback, void * context)
    static long
    nmeshopt_generateVertexRemapMulti(long destination, long indices, long index_count, long vertex_count, long streams, long stream_count)
    size_t meshopt_generateVertexRemapMulti(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, struct meshopt_Stream const * streams, size_t stream_count)
    static long
    nmeshopt_opacityMapCompact(long data, long data_size, long levels, long offsets, long omm_count, long omm_indices, long triangle_count, int states)
    size_t meshopt_opacityMapCompact(unsigned char * data, size_t data_size, unsigned char * levels, unsigned int * offsets, size_t omm_count, int * omm_indices, size_t triangle_count, int states)
    static long
    nmeshopt_opacityMapMeasure(long levels, long sources, long omm_indices, long indices, long index_count, long vertex_uvs, long vertex_count, long vertex_uvs_stride, int texture_width, int texture_height, int max_level, float target_edge)
    size_t meshopt_opacityMapMeasure(unsigned char * levels, unsigned int * sources, int * omm_indices, unsigned int const * indices, size_t index_count, float const * vertex_uvs, size_t vertex_count, size_t vertex_uvs_stride, unsigned int texture_width, unsigned int texture_height, int max_level, float target_edge)
    static void
    nmeshopt_opacityMapRasterize(long result, int level, int states, long uv0, long uv1, long uv2, long texture_data, long texture_stride, long texture_pitch, int texture_width, int texture_height)
    void meshopt_opacityMapRasterize(unsigned char * result, int level, int states, float const * uv0, float const * uv1, float const * uv2, unsigned char const * texture_data, size_t texture_stride, size_t texture_pitch, unsigned int texture_width, unsigned int texture_height)
    static void
    nmeshopt_optimizeMeshlet(long meshlet_vertices, long meshlet_triangles, long triangle_count, long vertex_count)
    void meshopt_optimizeMeshlet(unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, size_t triangle_count, size_t vertex_count)
    static void
    nmeshopt_optimizeMeshletLevel(long meshlet_vertices, long vertex_count, long meshlet_triangles, long triangle_count, int level)
    void meshopt_optimizeMeshletLevel(unsigned int * meshlet_vertices, size_t vertex_count, unsigned char * meshlet_triangles, size_t triangle_count, int level)
    static void
    nmeshopt_optimizeOverdraw(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, float threshold)
    void meshopt_optimizeOverdraw(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float threshold)
    static void
    nmeshopt_optimizeVertexCache(long destination, long indices, long index_count, long vertex_count)
    void meshopt_optimizeVertexCache(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    static void
    nmeshopt_optimizeVertexCacheFifo(long destination, long indices, long index_count, long vertex_count, int cache_size)
    void meshopt_optimizeVertexCacheFifo(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int cache_size)
    static void
    nmeshopt_optimizeVertexCacheStrip(long destination, long indices, long index_count, long vertex_count)
    void meshopt_optimizeVertexCacheStrip(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    static long
    nmeshopt_optimizeVertexFetch(long destination, long indices, long index_count, long vertices, long vertex_count, long vertex_size)
    size_t meshopt_optimizeVertexFetch(void * destination, unsigned int * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size)
    static long
    nmeshopt_optimizeVertexFetchRemap(long destination, long indices, long index_count, long vertex_count)
    size_t meshopt_optimizeVertexFetchRemap(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    static long
    nmeshopt_partitionClusters(long destination, long cluster_indices, long total_index_count, long cluster_index_counts, long cluster_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long target_partition_size)
    size_t meshopt_partitionClusters(unsigned int * destination, unsigned int const * cluster_indices, size_t total_index_count, unsigned int const * cluster_index_counts, size_t cluster_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t target_partition_size)
    static void
    nmeshopt_remapIndexBuffer(long destination, long indices, long index_count, long remap)
    void meshopt_remapIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, unsigned int const * remap)
    static void
    nmeshopt_remapVertexBuffer(long destination, long vertices, long vertex_count, long vertex_size, long remap)
    void meshopt_remapVertexBuffer(void * destination, void const * vertices, size_t vertex_count, size_t vertex_size, unsigned int const * remap)
    static void
    nmeshopt_setAllocator(long allocate, long deallocate)
    void meshopt_setAllocator(void * (*) (size_t) allocate, void (*) (void *) deallocate)
    static long
    nmeshopt_simplify(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long target_index_count, float target_error, int options, long result_error)
    size_t meshopt_simplify(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    static long
    nmeshopt_simplifyPoints(long destination, long vertex_positions, long vertex_count, long vertex_positions_stride, long vertex_colors, long vertex_colors_stride, float color_weight, long target_vertex_count)
    size_t meshopt_simplifyPoints(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float const * vertex_colors, size_t vertex_colors_stride, float color_weight, size_t target_vertex_count)
    static long
    nmeshopt_simplifyPrune(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, float target_error)
    size_t meshopt_simplifyPrune(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float target_error)
    static float
    nmeshopt_simplifyScale(long vertex_positions, long vertex_count, long vertex_positions_stride)
    float meshopt_simplifyScale(float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static long
    nmeshopt_simplifySloppy(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long vertex_lock, long target_index_count, float target_error, long result_error)
    size_t meshopt_simplifySloppy(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, unsigned char const * vertex_lock, size_t target_index_count, float target_error, float * result_error)
    static long
    nmeshopt_simplifyWithAttributes(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long vertex_attributes, long vertex_attributes_stride, long attribute_weights, long attribute_count, long vertex_lock, long target_index_count, float target_error, int options, long result_error)
    size_t meshopt_simplifyWithAttributes(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float const * vertex_attributes, size_t vertex_attributes_stride, float const * attribute_weights, size_t attribute_count, unsigned char const * vertex_lock, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    static long
    nmeshopt_simplifyWithUpdate(long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long vertex_attributes, long vertex_attributes_stride, long attribute_weights, long attribute_count, long vertex_lock, long target_index_count, float target_error, int options, long result_error)
    size_t meshopt_simplifyWithUpdate(unsigned int * indices, size_t index_count, float * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float * vertex_attributes, size_t vertex_attributes_stride, float const * attribute_weights, size_t attribute_count, unsigned char const * vertex_lock, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    static void
    nmeshopt_spatialClusterPoints(long destination, long vertex_positions, long vertex_count, long vertex_positions_stride, long cluster_size)
    void meshopt_spatialClusterPoints(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t cluster_size)
    static void
    nmeshopt_spatialSortRemap(long destination, long vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_spatialSortRemap(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static void
    nmeshopt_spatialSortTriangles(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride)
    void meshopt_spatialSortTriangles(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    static long
    nmeshopt_stripify(long destination, long indices, long index_count, long vertex_count, int restart_index)
    size_t meshopt_stripify(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int restart_index)
    static long
    nmeshopt_unstripify(long destination, long indices, long index_count, int restart_index)
    size_t meshopt_unstripify(unsigned int * destination, unsigned int const * indices, size_t index_count, unsigned int restart_index)

    Methods inherited from class Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • MESHOPTIMIZER_VERSION

      public static final int MESHOPTIMIZER_VERSION
      See Also:
    • meshopt_EncodeExpSeparate

      public static final int meshopt_EncodeExpSeparate
      See Also:
    • meshopt_EncodeExpSharedVector

      public static final int meshopt_EncodeExpSharedVector
      See Also:
    • meshopt_EncodeExpSharedComponent

      public static final int meshopt_EncodeExpSharedComponent
      See Also:
    • meshopt_EncodeExpClamped

      public static final int meshopt_EncodeExpClamped
      See Also:
    • meshopt_SimplifyLockBorder

      public static final int meshopt_SimplifyLockBorder
      See Also:
    • meshopt_SimplifySparse

      public static final int meshopt_SimplifySparse
      See Also:
    • meshopt_SimplifyErrorAbsolute

      public static final int meshopt_SimplifyErrorAbsolute
      See Also:
    • meshopt_SimplifyPrune

      public static final int meshopt_SimplifyPrune
      See Also:
    • meshopt_SimplifyRegularize

      public static final int meshopt_SimplifyRegularize
      See Also:
    • meshopt_SimplifyPermissive

      public static final int meshopt_SimplifyPermissive
      See Also:
    • meshopt_SimplifyRegularizeLight

      public static final int meshopt_SimplifyRegularizeLight
      See Also:
    • meshopt_SimplifyVertex_Lock

      public static final int meshopt_SimplifyVertex_Lock
      See Also:
    • meshopt_SimplifyVertex_Protect

      public static final int meshopt_SimplifyVertex_Protect
      See Also:
    • meshopt_SimplifyVertex_Priority

      public static final int meshopt_SimplifyVertex_Priority
      See Also:
  • Method Details

    • nmeshopt_generateVertexRemap

      public static long nmeshopt_generateVertexRemap(long destination, long indices, long index_count, long vertices, long vertex_count, long vertex_size)
      size_t meshopt_generateVertexRemap(unsigned int * destination, unsigned int const * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size)
    • meshopt_generateVertexRemap

      @NativeType("size_t") public static long meshopt_generateVertexRemap(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") @Nullable IntBuffer indices, @NativeType("size_t") long index_count, @NativeType("void const *") ByteBuffer vertices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size)
      size_t meshopt_generateVertexRemap(unsigned int * destination, unsigned int const * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size)
    • nmeshopt_generateVertexRemapMulti

      public static long nmeshopt_generateVertexRemapMulti(long destination, long indices, long index_count, long vertex_count, long streams, long stream_count)
      size_t meshopt_generateVertexRemapMulti(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, struct meshopt_Stream const * streams, size_t stream_count)
    • meshopt_generateVertexRemapMulti

      @NativeType("size_t") public static long meshopt_generateVertexRemapMulti(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") @Nullable IntBuffer indices, @NativeType("size_t") long vertex_count, @NativeType("struct meshopt_Stream const *") MeshoptStream.Buffer streams)
      size_t meshopt_generateVertexRemapMulti(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, struct meshopt_Stream const * streams, size_t stream_count)
    • nmeshopt_generateVertexRemapCustom

      public static long nmeshopt_generateVertexRemapCustom(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long callback, long context)
      size_t meshopt_generateVertexRemapCustom(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, int (*) (void *, unsigned int, unsigned int) callback, void * context)
    • meshopt_generateVertexRemapCustom

      @NativeType("size_t") public static long meshopt_generateVertexRemapCustom(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") @Nullable IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("int (*) (void *, unsigned int, unsigned int)") @Nullable MeshoptEqualsI callback, @NativeType("void *") long context)
      size_t meshopt_generateVertexRemapCustom(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, int (*) (void *, unsigned int, unsigned int) callback, void * context)
    • nmeshopt_remapVertexBuffer

      public static void nmeshopt_remapVertexBuffer(long destination, long vertices, long vertex_count, long vertex_size, long remap)
      void meshopt_remapVertexBuffer(void * destination, void const * vertices, size_t vertex_count, size_t vertex_size, unsigned int const * remap)
    • meshopt_remapVertexBuffer

      public static void meshopt_remapVertexBuffer(@NativeType("void *") ByteBuffer destination, @NativeType("void const *") ByteBuffer vertices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size, @NativeType("unsigned int const *") IntBuffer remap)
      void meshopt_remapVertexBuffer(void * destination, void const * vertices, size_t vertex_count, size_t vertex_size, unsigned int const * remap)
    • nmeshopt_remapIndexBuffer

      public static void nmeshopt_remapIndexBuffer(long destination, long indices, long index_count, long remap)
      void meshopt_remapIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, unsigned int const * remap)
    • meshopt_remapIndexBuffer

      public static void meshopt_remapIndexBuffer(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") @Nullable IntBuffer indices, @NativeType("size_t") long index_count, @NativeType("unsigned int const *") IntBuffer remap)
      void meshopt_remapIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, unsigned int const * remap)
    • nmeshopt_generateShadowIndexBuffer

      public static void nmeshopt_generateShadowIndexBuffer(long destination, long indices, long index_count, long vertices, long vertex_count, long vertex_size, long vertex_stride)
      void meshopt_generateShadowIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size, size_t vertex_stride)
    • meshopt_generateShadowIndexBuffer

      public static void meshopt_generateShadowIndexBuffer(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("void const *") ByteBuffer vertices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size, @NativeType("size_t") long vertex_stride)
      void meshopt_generateShadowIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size, size_t vertex_stride)
    • nmeshopt_generateShadowIndexBufferMulti

      public static void nmeshopt_generateShadowIndexBufferMulti(long destination, long indices, long index_count, long vertex_count, long streams, long stream_count)
      void meshopt_generateShadowIndexBufferMulti(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, struct meshopt_Stream const * streams, size_t stream_count)
    • meshopt_generateShadowIndexBufferMulti

      public static void meshopt_generateShadowIndexBufferMulti(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long vertex_count, @NativeType("struct meshopt_Stream const *") MeshoptStream.Buffer streams)
      void meshopt_generateShadowIndexBufferMulti(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, struct meshopt_Stream const * streams, size_t stream_count)
    • nmeshopt_generatePositionRemap

      public static void nmeshopt_generatePositionRemap(long destination, long vertex_positions, long vertex_count, long vertex_positions_stride)
      void meshopt_generatePositionRemap(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_generatePositionRemap

      public static void meshopt_generatePositionRemap(@NativeType("unsigned int *") IntBuffer destination, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride)
      void meshopt_generatePositionRemap(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_generateAdjacencyIndexBuffer

      public static void nmeshopt_generateAdjacencyIndexBuffer(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride)
      void meshopt_generateAdjacencyIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_generateAdjacencyIndexBuffer

      public static void meshopt_generateAdjacencyIndexBuffer(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride)
      void meshopt_generateAdjacencyIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_generateTessellationIndexBuffer

      public static void nmeshopt_generateTessellationIndexBuffer(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride)
      void meshopt_generateTessellationIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_generateTessellationIndexBuffer

      public static void meshopt_generateTessellationIndexBuffer(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride)
      void meshopt_generateTessellationIndexBuffer(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_generateProvokingIndexBuffer

      public static long nmeshopt_generateProvokingIndexBuffer(long destination, long reorder, long indices, long index_count, long vertex_count)
      size_t meshopt_generateProvokingIndexBuffer(unsigned int * destination, unsigned int * reorder, unsigned int const * indices, size_t index_count, size_t vertex_count)
    • meshopt_generateProvokingIndexBuffer

      @NativeType("size_t") public static long meshopt_generateProvokingIndexBuffer(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int *") IntBuffer reorder, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long index_count, @NativeType("size_t") long vertex_count)
      size_t meshopt_generateProvokingIndexBuffer(unsigned int * destination, unsigned int * reorder, unsigned int const * indices, size_t index_count, size_t vertex_count)
    • nmeshopt_optimizeVertexCache

      public static void nmeshopt_optimizeVertexCache(long destination, long indices, long index_count, long vertex_count)
      void meshopt_optimizeVertexCache(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    • meshopt_optimizeVertexCache

      public static void meshopt_optimizeVertexCache(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long vertex_count)
      void meshopt_optimizeVertexCache(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    • nmeshopt_optimizeVertexCacheStrip

      public static void nmeshopt_optimizeVertexCacheStrip(long destination, long indices, long index_count, long vertex_count)
      void meshopt_optimizeVertexCacheStrip(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    • meshopt_optimizeVertexCacheStrip

      public static void meshopt_optimizeVertexCacheStrip(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long vertex_count)
      void meshopt_optimizeVertexCacheStrip(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    • nmeshopt_optimizeVertexCacheFifo

      public static void nmeshopt_optimizeVertexCacheFifo(long destination, long indices, long index_count, long vertex_count, int cache_size)
      void meshopt_optimizeVertexCacheFifo(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int cache_size)
    • meshopt_optimizeVertexCacheFifo

      public static void meshopt_optimizeVertexCacheFifo(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long vertex_count, @NativeType("unsigned int") int cache_size)
      void meshopt_optimizeVertexCacheFifo(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int cache_size)
    • nmeshopt_optimizeOverdraw

      public static void nmeshopt_optimizeOverdraw(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, float threshold)
      void meshopt_optimizeOverdraw(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float threshold)
    • meshopt_optimizeOverdraw

      public static void meshopt_optimizeOverdraw(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, float threshold)
      void meshopt_optimizeOverdraw(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float threshold)
    • nmeshopt_optimizeVertexFetch

      public static long nmeshopt_optimizeVertexFetch(long destination, long indices, long index_count, long vertices, long vertex_count, long vertex_size)
      size_t meshopt_optimizeVertexFetch(void * destination, unsigned int * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size)
    • meshopt_optimizeVertexFetch

      @NativeType("size_t") public static long meshopt_optimizeVertexFetch(@NativeType("void *") ByteBuffer destination, @NativeType("unsigned int *") IntBuffer indices, @NativeType("void const *") ByteBuffer vertices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size)
      size_t meshopt_optimizeVertexFetch(void * destination, unsigned int * indices, size_t index_count, void const * vertices, size_t vertex_count, size_t vertex_size)
    • nmeshopt_optimizeVertexFetchRemap

      public static long nmeshopt_optimizeVertexFetchRemap(long destination, long indices, long index_count, long vertex_count)
      size_t meshopt_optimizeVertexFetchRemap(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    • meshopt_optimizeVertexFetchRemap

      @NativeType("size_t") public static long meshopt_optimizeVertexFetchRemap(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices)
      size_t meshopt_optimizeVertexFetchRemap(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count)
    • nmeshopt_encodeIndexBuffer

      public static long nmeshopt_encodeIndexBuffer(long buffer, long buffer_size, long indices, long index_count)
      size_t meshopt_encodeIndexBuffer(unsigned char * buffer, size_t buffer_size, unsigned int const * indices, size_t index_count)
    • meshopt_encodeIndexBuffer

      @NativeType("size_t") public static long meshopt_encodeIndexBuffer(@NativeType("unsigned char *") ByteBuffer buffer, @NativeType("unsigned int const *") IntBuffer indices)
      size_t meshopt_encodeIndexBuffer(unsigned char * buffer, size_t buffer_size, unsigned int const * indices, size_t index_count)
    • meshopt_encodeIndexBufferBound

      @NativeType("size_t") public static long meshopt_encodeIndexBufferBound(@NativeType("size_t") long index_count, @NativeType("size_t") long vertex_count)
      size_t meshopt_encodeIndexBufferBound(size_t index_count, size_t vertex_count)
    • meshopt_encodeIndexVersion

      public static void meshopt_encodeIndexVersion(int version)
      void meshopt_encodeIndexVersion(int version)
    • nmeshopt_decodeIndexBuffer

      public static int nmeshopt_decodeIndexBuffer(long destination, long index_count, long index_size, long buffer, long buffer_size)
      int meshopt_decodeIndexBuffer(void * destination, size_t index_count, size_t index_size, unsigned char const * buffer, size_t buffer_size)
    • meshopt_decodeIndexBuffer

      public static int meshopt_decodeIndexBuffer(@NativeType("void *") ByteBuffer destination, @NativeType("size_t") long index_count, @NativeType("size_t") long index_size, @NativeType("unsigned char const *") ByteBuffer buffer)
      int meshopt_decodeIndexBuffer(void * destination, size_t index_count, size_t index_size, unsigned char const * buffer, size_t buffer_size)
    • nmeshopt_decodeIndexVersion

      public static int nmeshopt_decodeIndexVersion(long buffer, long buffer_size)
      int meshopt_decodeIndexVersion(unsigned char const * buffer, size_t buffer_size)
    • meshopt_decodeIndexVersion

      public static int meshopt_decodeIndexVersion(@NativeType("unsigned char const *") ByteBuffer buffer)
      int meshopt_decodeIndexVersion(unsigned char const * buffer, size_t buffer_size)
    • nmeshopt_encodeIndexSequence

      public static long nmeshopt_encodeIndexSequence(long buffer, long buffer_size, long indices, long index_count)
      size_t meshopt_encodeIndexSequence(unsigned char * buffer, size_t buffer_size, unsigned int const * indices, size_t index_count)
    • meshopt_encodeIndexSequence

      @NativeType("size_t") public static long meshopt_encodeIndexSequence(@NativeType("unsigned char *") ByteBuffer buffer, @NativeType("unsigned int const *") IntBuffer indices)
      size_t meshopt_encodeIndexSequence(unsigned char * buffer, size_t buffer_size, unsigned int const * indices, size_t index_count)
    • meshopt_encodeIndexSequenceBound

      @NativeType("size_t") public static long meshopt_encodeIndexSequenceBound(@NativeType("size_t") long index_count, @NativeType("size_t") long vertex_count)
      size_t meshopt_encodeIndexSequenceBound(size_t index_count, size_t vertex_count)
    • nmeshopt_decodeIndexSequence

      public static int nmeshopt_decodeIndexSequence(long destination, long index_count, long index_size, long buffer, long buffer_size)
      int meshopt_decodeIndexSequence(void * destination, size_t index_count, size_t index_size, unsigned char const * buffer, size_t buffer_size)
    • meshopt_decodeIndexSequence

      public static int meshopt_decodeIndexSequence(@NativeType("void *") ByteBuffer destination, @NativeType("size_t") long index_count, @NativeType("size_t") long index_size, @NativeType("unsigned char const *") ByteBuffer buffer)
      int meshopt_decodeIndexSequence(void * destination, size_t index_count, size_t index_size, unsigned char const * buffer, size_t buffer_size)
    • nmeshopt_encodeMeshlet

      public static long nmeshopt_encodeMeshlet(long buffer, long buffer_size, long vertices, long vertex_count, long triangles, long triangle_count)
      size_t meshopt_encodeMeshlet(unsigned char * buffer, size_t buffer_size, unsigned int const * vertices, size_t vertex_count, unsigned char const * triangles, size_t triangle_count)
    • meshopt_encodeMeshlet

      @NativeType("size_t") public static long meshopt_encodeMeshlet(@NativeType("unsigned char *") ByteBuffer buffer, @NativeType("unsigned int const *") @Nullable IntBuffer vertices, @NativeType("unsigned char const *") ByteBuffer triangles)
      size_t meshopt_encodeMeshlet(unsigned char * buffer, size_t buffer_size, unsigned int const * vertices, size_t vertex_count, unsigned char const * triangles, size_t triangle_count)
    • meshopt_encodeMeshletBound

      @NativeType("size_t") public static long meshopt_encodeMeshletBound(@NativeType("size_t") long max_vertices, @NativeType("size_t") long max_triangles)
      size_t meshopt_encodeMeshletBound(size_t max_vertices, size_t max_triangles)
    • nmeshopt_decodeMeshlet

      public static int nmeshopt_decodeMeshlet(long vertices, long vertex_count, long vertex_size, long triangles, long triangle_count, long triangle_size, long buffer, long buffer_size)
      int meshopt_decodeMeshlet(void * vertices, size_t vertex_count, size_t vertex_size, void * triangles, size_t triangle_count, size_t triangle_size, unsigned char const * buffer, size_t buffer_size)
    • meshopt_decodeMeshlet

      public static int meshopt_decodeMeshlet(@NativeType("void *") @Nullable ByteBuffer vertices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size, @NativeType("void *") ByteBuffer triangles, @NativeType("size_t") long triangle_count, @NativeType("size_t") long triangle_size, @NativeType("unsigned char const *") ByteBuffer buffer)
      int meshopt_decodeMeshlet(void * vertices, size_t vertex_count, size_t vertex_size, void * triangles, size_t triangle_count, size_t triangle_size, unsigned char const * buffer, size_t buffer_size)
    • nmeshopt_decodeMeshletRaw

      public static int nmeshopt_decodeMeshletRaw(long vertices, long vertex_count, long triangles, long triangle_count, long buffer, long buffer_size)
      int meshopt_decodeMeshletRaw(unsigned int * vertices, size_t vertex_count, unsigned int * triangles, size_t triangle_count, unsigned char const * buffer, size_t buffer_size)
    • meshopt_decodeMeshletRaw

      public static int meshopt_decodeMeshletRaw(@NativeType("unsigned int *") @Nullable IntBuffer vertices, @NativeType("unsigned int *") IntBuffer triangles, @NativeType("unsigned char const *") ByteBuffer buffer)
      int meshopt_decodeMeshletRaw(unsigned int * vertices, size_t vertex_count, unsigned int * triangles, size_t triangle_count, unsigned char const * buffer, size_t buffer_size)
    • nmeshopt_encodeVertexBuffer

      public static long nmeshopt_encodeVertexBuffer(long buffer, long buffer_size, long vertices, long vertex_count, long vertex_size)
      size_t meshopt_encodeVertexBuffer(unsigned char * buffer, size_t buffer_size, void const * vertices, size_t vertex_count, size_t vertex_size)
    • meshopt_encodeVertexBuffer

      @NativeType("size_t") public static long meshopt_encodeVertexBuffer(@NativeType("unsigned char *") ByteBuffer buffer, @NativeType("void const *") ByteBuffer vertices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size)
      size_t meshopt_encodeVertexBuffer(unsigned char * buffer, size_t buffer_size, void const * vertices, size_t vertex_count, size_t vertex_size)
    • meshopt_encodeVertexBufferBound

      @NativeType("size_t") public static long meshopt_encodeVertexBufferBound(@NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size)
      size_t meshopt_encodeVertexBufferBound(size_t vertex_count, size_t vertex_size)
    • nmeshopt_encodeVertexBufferLevel

      public static long nmeshopt_encodeVertexBufferLevel(long buffer, long buffer_size, long vertices, long vertex_count, long vertex_size, int level, int version)
      size_t meshopt_encodeVertexBufferLevel(unsigned char * buffer, size_t buffer_size, void const * vertices, size_t vertex_count, size_t vertex_size, int level, int version)
    • meshopt_encodeVertexBufferLevel

      @NativeType("size_t") public static long meshopt_encodeVertexBufferLevel(@NativeType("unsigned char *") ByteBuffer buffer, @NativeType("void const *") ByteBuffer vertices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size, int level, int version)
      size_t meshopt_encodeVertexBufferLevel(unsigned char * buffer, size_t buffer_size, void const * vertices, size_t vertex_count, size_t vertex_size, int level, int version)
    • meshopt_encodeVertexVersion

      public static void meshopt_encodeVertexVersion(int version)
      void meshopt_encodeVertexVersion(int version)
    • nmeshopt_decodeVertexBuffer

      public static int nmeshopt_decodeVertexBuffer(long destination, long vertex_count, long vertex_size, long buffer, long buffer_size)
      int meshopt_decodeVertexBuffer(void * destination, size_t vertex_count, size_t vertex_size, unsigned char const * buffer, size_t buffer_size)
    • meshopt_decodeVertexBuffer

      public static int meshopt_decodeVertexBuffer(@NativeType("void *") ByteBuffer destination, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size, @NativeType("unsigned char const *") ByteBuffer buffer)
      int meshopt_decodeVertexBuffer(void * destination, size_t vertex_count, size_t vertex_size, unsigned char const * buffer, size_t buffer_size)
    • nmeshopt_decodeVertexVersion

      public static int nmeshopt_decodeVertexVersion(long buffer, long buffer_size)
      int meshopt_decodeVertexVersion(unsigned char const * buffer, size_t buffer_size)
    • meshopt_decodeVertexVersion

      public static int meshopt_decodeVertexVersion(@NativeType("unsigned char const *") ByteBuffer buffer)
      int meshopt_decodeVertexVersion(unsigned char const * buffer, size_t buffer_size)
    • nmeshopt_decodeFilterOct

      public static void nmeshopt_decodeFilterOct(long buffer, long count, long stride)
      void meshopt_decodeFilterOct(void * buffer, size_t count, size_t stride)
    • meshopt_decodeFilterOct

      public static void meshopt_decodeFilterOct(@NativeType("void *") ByteBuffer buffer, @NativeType("size_t") long count, @NativeType("size_t") long stride)
      void meshopt_decodeFilterOct(void * buffer, size_t count, size_t stride)
    • meshopt_decodeFilterOct

      public static void meshopt_decodeFilterOct(@NativeType("void *") ShortBuffer buffer, @NativeType("size_t") long count, @NativeType("size_t") long stride)
      void meshopt_decodeFilterOct(void * buffer, size_t count, size_t stride)
    • nmeshopt_decodeFilterQuat

      public static void nmeshopt_decodeFilterQuat(long buffer, long count, long stride)
      void meshopt_decodeFilterQuat(void * buffer, size_t count, size_t stride)
    • meshopt_decodeFilterQuat

      public static void meshopt_decodeFilterQuat(@NativeType("void *") ByteBuffer buffer, @NativeType("size_t") long count, @NativeType("size_t") long stride)
      void meshopt_decodeFilterQuat(void * buffer, size_t count, size_t stride)
    • meshopt_decodeFilterQuat

      public static void meshopt_decodeFilterQuat(@NativeType("void *") ShortBuffer buffer, @NativeType("size_t") long count, @NativeType("size_t") long stride)
      void meshopt_decodeFilterQuat(void * buffer, size_t count, size_t stride)
    • nmeshopt_decodeFilterExp

      public static void nmeshopt_decodeFilterExp(long buffer, long count, long stride)
      void meshopt_decodeFilterExp(void * buffer, size_t count, size_t stride)
    • meshopt_decodeFilterExp

      public static void meshopt_decodeFilterExp(@NativeType("void *") ByteBuffer buffer, @NativeType("size_t") long count, @NativeType("size_t") long stride)
      void meshopt_decodeFilterExp(void * buffer, size_t count, size_t stride)
    • meshopt_decodeFilterExp

      public static void meshopt_decodeFilterExp(@NativeType("void *") IntBuffer buffer, @NativeType("size_t") long count, @NativeType("size_t") long stride)
      void meshopt_decodeFilterExp(void * buffer, size_t count, size_t stride)
    • nmeshopt_decodeFilterColor

      public static void nmeshopt_decodeFilterColor(long buffer, long count, long stride)
      void meshopt_decodeFilterColor(void * buffer, size_t count, size_t stride)
    • meshopt_decodeFilterColor

      public static void meshopt_decodeFilterColor(@NativeType("void *") ByteBuffer buffer, @NativeType("size_t") long count, @NativeType("size_t") long stride)
      void meshopt_decodeFilterColor(void * buffer, size_t count, size_t stride)
    • meshopt_decodeFilterColor

      public static void meshopt_decodeFilterColor(@NativeType("void *") ShortBuffer buffer, @NativeType("size_t") long count, @NativeType("size_t") long stride)
      void meshopt_decodeFilterColor(void * buffer, size_t count, size_t stride)
    • nmeshopt_encodeFilterOct

      public static void nmeshopt_encodeFilterOct(long destination, long count, long stride, int bits, long data)
      void meshopt_encodeFilterOct(void * destination, size_t count, size_t stride, int bits, float const * data)
    • meshopt_encodeFilterOct

      public static void meshopt_encodeFilterOct(@NativeType("void *") ByteBuffer destination, @NativeType("size_t") long count, @NativeType("size_t") long stride, int bits, @NativeType("float const *") FloatBuffer data)
      void meshopt_encodeFilterOct(void * destination, size_t count, size_t stride, int bits, float const * data)
    • meshopt_encodeFilterOct

      public static void meshopt_encodeFilterOct(@NativeType("void *") ShortBuffer destination, @NativeType("size_t") long count, @NativeType("size_t") long stride, int bits, @NativeType("float const *") FloatBuffer data)
      void meshopt_encodeFilterOct(void * destination, size_t count, size_t stride, int bits, float const * data)
    • nmeshopt_encodeFilterQuat

      public static void nmeshopt_encodeFilterQuat(long destination, long count, long stride, int bits, long data)
      void meshopt_encodeFilterQuat(void * destination, size_t count, size_t stride, int bits, float const * data)
    • meshopt_encodeFilterQuat

      public static void meshopt_encodeFilterQuat(@NativeType("void *") ByteBuffer destination, @NativeType("size_t") long count, @NativeType("size_t") long stride, int bits, @NativeType("float const *") FloatBuffer data)
      void meshopt_encodeFilterQuat(void * destination, size_t count, size_t stride, int bits, float const * data)
    • meshopt_encodeFilterQuat

      public static void meshopt_encodeFilterQuat(@NativeType("void *") ShortBuffer destination, @NativeType("size_t") long count, @NativeType("size_t") long stride, int bits, @NativeType("float const *") FloatBuffer data)
      void meshopt_encodeFilterQuat(void * destination, size_t count, size_t stride, int bits, float const * data)
    • nmeshopt_encodeFilterExp

      public static void nmeshopt_encodeFilterExp(long destination, long count, long stride, int bits, long data, int mode)
      void meshopt_encodeFilterExp(void * destination, size_t count, size_t stride, int bits, float const * data, enum meshopt_EncodeExpMode mode)
    • meshopt_encodeFilterExp

      public static void meshopt_encodeFilterExp(@NativeType("void *") ByteBuffer destination, @NativeType("size_t") long count, @NativeType("size_t") long stride, int bits, @NativeType("float const *") FloatBuffer data, @NativeType("enum meshopt_EncodeExpMode") int mode)
      void meshopt_encodeFilterExp(void * destination, size_t count, size_t stride, int bits, float const * data, enum meshopt_EncodeExpMode mode)
    • meshopt_encodeFilterExp

      public static void meshopt_encodeFilterExp(@NativeType("void *") IntBuffer destination, @NativeType("size_t") long count, @NativeType("size_t") long stride, int bits, @NativeType("float const *") FloatBuffer data, @NativeType("enum meshopt_EncodeExpMode") int mode)
      void meshopt_encodeFilterExp(void * destination, size_t count, size_t stride, int bits, float const * data, enum meshopt_EncodeExpMode mode)
    • nmeshopt_encodeFilterColor

      public static void nmeshopt_encodeFilterColor(long destination, long count, long stride, int bits, long data)
      void meshopt_encodeFilterColor(void * destination, size_t count, size_t stride, int bits, float const * data)
    • meshopt_encodeFilterColor

      public static void meshopt_encodeFilterColor(@NativeType("void *") ByteBuffer destination, @NativeType("size_t") long count, @NativeType("size_t") long stride, int bits, @NativeType("float const *") FloatBuffer data)
      void meshopt_encodeFilterColor(void * destination, size_t count, size_t stride, int bits, float const * data)
    • meshopt_encodeFilterColor

      public static void meshopt_encodeFilterColor(@NativeType("void *") ShortBuffer destination, @NativeType("size_t") long count, @NativeType("size_t") long stride, int bits, @NativeType("float const *") FloatBuffer data)
      void meshopt_encodeFilterColor(void * destination, size_t count, size_t stride, int bits, float const * data)
    • nmeshopt_simplify

      public static long nmeshopt_simplify(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long target_index_count, float target_error, int options, long result_error)
      size_t meshopt_simplify(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    • meshopt_simplify

      @NativeType("size_t") public static long meshopt_simplify(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("size_t") long target_index_count, float target_error, @NativeType("unsigned int") int options, @NativeType("float *") @Nullable FloatBuffer result_error)
      size_t meshopt_simplify(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    • nmeshopt_simplifyWithAttributes

      public static long nmeshopt_simplifyWithAttributes(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long vertex_attributes, long vertex_attributes_stride, long attribute_weights, long attribute_count, long vertex_lock, long target_index_count, float target_error, int options, long result_error)
      size_t meshopt_simplifyWithAttributes(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float const * vertex_attributes, size_t vertex_attributes_stride, float const * attribute_weights, size_t attribute_count, unsigned char const * vertex_lock, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    • meshopt_simplifyWithAttributes

      @NativeType("size_t") public static long meshopt_simplifyWithAttributes(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("float const *") FloatBuffer vertex_attributes, @NativeType("size_t") long vertex_attributes_stride, @NativeType("float const *") FloatBuffer attribute_weights, @NativeType("unsigned char const *") @Nullable ByteBuffer vertex_lock, @NativeType("size_t") long target_index_count, float target_error, @NativeType("unsigned int") int options, @NativeType("float *") @Nullable FloatBuffer result_error)
      size_t meshopt_simplifyWithAttributes(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float const * vertex_attributes, size_t vertex_attributes_stride, float const * attribute_weights, size_t attribute_count, unsigned char const * vertex_lock, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    • nmeshopt_simplifyWithUpdate

      public static long nmeshopt_simplifyWithUpdate(long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long vertex_attributes, long vertex_attributes_stride, long attribute_weights, long attribute_count, long vertex_lock, long target_index_count, float target_error, int options, long result_error)
      size_t meshopt_simplifyWithUpdate(unsigned int * indices, size_t index_count, float * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float * vertex_attributes, size_t vertex_attributes_stride, float const * attribute_weights, size_t attribute_count, unsigned char const * vertex_lock, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    • meshopt_simplifyWithUpdate

      @NativeType("size_t") public static long meshopt_simplifyWithUpdate(@NativeType("unsigned int *") IntBuffer indices, @NativeType("float *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("float *") FloatBuffer vertex_attributes, @NativeType("size_t") long vertex_attributes_stride, @NativeType("float const *") FloatBuffer attribute_weights, @NativeType("unsigned char const *") @Nullable ByteBuffer vertex_lock, @NativeType("size_t") long target_index_count, float target_error, @NativeType("unsigned int") int options, @NativeType("float *") @Nullable FloatBuffer result_error)
      size_t meshopt_simplifyWithUpdate(unsigned int * indices, size_t index_count, float * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float * vertex_attributes, size_t vertex_attributes_stride, float const * attribute_weights, size_t attribute_count, unsigned char const * vertex_lock, size_t target_index_count, float target_error, unsigned int options, float * result_error)
    • nmeshopt_simplifySloppy

      public static long nmeshopt_simplifySloppy(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long vertex_lock, long target_index_count, float target_error, long result_error)
      size_t meshopt_simplifySloppy(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, unsigned char const * vertex_lock, size_t target_index_count, float target_error, float * result_error)
    • meshopt_simplifySloppy

      @NativeType("size_t") public static long meshopt_simplifySloppy(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("unsigned char const *") @Nullable ByteBuffer vertex_lock, @NativeType("size_t") long target_index_count, float target_error, @NativeType("float *") @Nullable FloatBuffer result_error)
      size_t meshopt_simplifySloppy(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, unsigned char const * vertex_lock, size_t target_index_count, float target_error, float * result_error)
    • nmeshopt_simplifyPrune

      public static long nmeshopt_simplifyPrune(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, float target_error)
      size_t meshopt_simplifyPrune(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float target_error)
    • meshopt_simplifyPrune

      @NativeType("size_t") public static long meshopt_simplifyPrune(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, float target_error)
      size_t meshopt_simplifyPrune(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float target_error)
    • nmeshopt_simplifyPoints

      public static long nmeshopt_simplifyPoints(long destination, long vertex_positions, long vertex_count, long vertex_positions_stride, long vertex_colors, long vertex_colors_stride, float color_weight, long target_vertex_count)
      size_t meshopt_simplifyPoints(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float const * vertex_colors, size_t vertex_colors_stride, float color_weight, size_t target_vertex_count)
    • meshopt_simplifyPoints

      @NativeType("size_t") public static long meshopt_simplifyPoints(@NativeType("unsigned int *") IntBuffer destination, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("float const *") @Nullable FloatBuffer vertex_colors, @NativeType("size_t") long vertex_colors_stride, float color_weight, @NativeType("size_t") long target_vertex_count)
      size_t meshopt_simplifyPoints(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, float const * vertex_colors, size_t vertex_colors_stride, float color_weight, size_t target_vertex_count)
    • nmeshopt_simplifyScale

      public static float nmeshopt_simplifyScale(long vertex_positions, long vertex_count, long vertex_positions_stride)
      float meshopt_simplifyScale(float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_simplifyScale

      public static float meshopt_simplifyScale(@NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride)
      float meshopt_simplifyScale(float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_stripify

      public static long nmeshopt_stripify(long destination, long indices, long index_count, long vertex_count, int restart_index)
      size_t meshopt_stripify(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int restart_index)
    • meshopt_stripify

      @NativeType("size_t") public static long meshopt_stripify(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long vertex_count, @NativeType("unsigned int") int restart_index)
      size_t meshopt_stripify(unsigned int * destination, unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int restart_index)
    • meshopt_stripifyBound

      @NativeType("size_t") public static long meshopt_stripifyBound(@NativeType("size_t") long index_count)
      size_t meshopt_stripifyBound(size_t index_count)
    • nmeshopt_unstripify

      public static long nmeshopt_unstripify(long destination, long indices, long index_count, int restart_index)
      size_t meshopt_unstripify(unsigned int * destination, unsigned int const * indices, size_t index_count, unsigned int restart_index)
    • meshopt_unstripify

      @NativeType("size_t") public static long meshopt_unstripify(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("unsigned int") int restart_index)
      size_t meshopt_unstripify(unsigned int * destination, unsigned int const * indices, size_t index_count, unsigned int restart_index)
    • meshopt_unstripifyBound

      @NativeType("size_t") public static long meshopt_unstripifyBound(@NativeType("size_t") long index_count)
      size_t meshopt_unstripifyBound(size_t index_count)
    • nmeshopt_analyzeVertexCache

      public static void nmeshopt_analyzeVertexCache(long indices, long index_count, long vertex_count, int cache_size, int warp_size, int primgroup_size, long __result)
      struct meshopt_VertexCacheStatistics meshopt_analyzeVertexCache(unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int cache_size, unsigned int warp_size, unsigned int primgroup_size)
    • meshopt_analyzeVertexCache

      @NativeType("struct meshopt_VertexCacheStatistics") public static MeshoptVertexCacheStatistics meshopt_analyzeVertexCache(@NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long vertex_count, @NativeType("unsigned int") int cache_size, @NativeType("unsigned int") int warp_size, @NativeType("unsigned int") int primgroup_size, @NativeType("struct meshopt_VertexCacheStatistics") MeshoptVertexCacheStatistics __result)
      struct meshopt_VertexCacheStatistics meshopt_analyzeVertexCache(unsigned int const * indices, size_t index_count, size_t vertex_count, unsigned int cache_size, unsigned int warp_size, unsigned int primgroup_size)
    • nmeshopt_analyzeVertexFetch

      public static void nmeshopt_analyzeVertexFetch(long indices, long index_count, long vertex_count, long vertex_size, long __result)
      struct meshopt_VertexFetchStatistics meshopt_analyzeVertexFetch(unsigned int const * indices, size_t index_count, size_t vertex_count, size_t vertex_size)
    • meshopt_analyzeVertexFetch

      @NativeType("struct meshopt_VertexFetchStatistics") public static MeshoptVertexFetchStatistics meshopt_analyzeVertexFetch(@NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_size, @NativeType("struct meshopt_VertexFetchStatistics") MeshoptVertexFetchStatistics __result)
      struct meshopt_VertexFetchStatistics meshopt_analyzeVertexFetch(unsigned int const * indices, size_t index_count, size_t vertex_count, size_t vertex_size)
    • nmeshopt_analyzeOverdraw

      public static void nmeshopt_analyzeOverdraw(long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long __result)
      struct meshopt_OverdrawStatistics meshopt_analyzeOverdraw(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_analyzeOverdraw

      @NativeType("struct meshopt_OverdrawStatistics") public static MeshoptOverdrawStatistics meshopt_analyzeOverdraw(@NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("struct meshopt_OverdrawStatistics") MeshoptOverdrawStatistics __result)
      struct meshopt_OverdrawStatistics meshopt_analyzeOverdraw(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_analyzeCoverage

      public static void nmeshopt_analyzeCoverage(long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long __result)
      struct meshopt_CoverageStatistics meshopt_analyzeCoverage(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_analyzeCoverage

      @NativeType("struct meshopt_CoverageStatistics") public static MeshoptCoverageStatistics meshopt_analyzeCoverage(@NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("struct meshopt_CoverageStatistics") MeshoptCoverageStatistics __result)
      struct meshopt_CoverageStatistics meshopt_analyzeCoverage(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_buildMeshlets

      public static long nmeshopt_buildMeshlets(long meshlets, long meshlet_vertices, long meshlet_triangles, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long max_triangles, float cone_weight)
      size_t meshopt_buildMeshlets(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t max_triangles, float cone_weight)
    • meshopt_buildMeshlets

      @NativeType("size_t") public static long meshopt_buildMeshlets(@NativeType("struct meshopt_Meshlet *") MeshoptMeshlet.Buffer meshlets, @NativeType("unsigned int *") IntBuffer meshlet_vertices, @NativeType("unsigned char *") ByteBuffer meshlet_triangles, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("size_t") long max_vertices, @NativeType("size_t") long max_triangles, float cone_weight)
      size_t meshopt_buildMeshlets(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t max_triangles, float cone_weight)
    • nmeshopt_buildMeshletsScan

      public static long nmeshopt_buildMeshletsScan(long meshlets, long meshlet_vertices, long meshlet_triangles, long indices, long index_count, long vertex_count, long max_vertices, long max_triangles)
      size_t meshopt_buildMeshletsScan(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, size_t vertex_count, size_t max_vertices, size_t max_triangles)
    • meshopt_buildMeshletsScan

      @NativeType("size_t") public static long meshopt_buildMeshletsScan(@NativeType("struct meshopt_Meshlet *") MeshoptMeshlet.Buffer meshlets, @NativeType("unsigned int *") IntBuffer meshlet_vertices, @NativeType("unsigned char *") ByteBuffer meshlet_triangles, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("size_t") long vertex_count, @NativeType("size_t") long max_vertices, @NativeType("size_t") long max_triangles)
      size_t meshopt_buildMeshletsScan(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, size_t vertex_count, size_t max_vertices, size_t max_triangles)
    • meshopt_buildMeshletsBound

      @NativeType("size_t") public static long meshopt_buildMeshletsBound(@NativeType("size_t") long index_count, @NativeType("size_t") long max_vertices, @NativeType("size_t") long max_triangles)
      size_t meshopt_buildMeshletsBound(size_t index_count, size_t max_vertices, size_t max_triangles)
    • nmeshopt_buildMeshletsFlex

      public static long nmeshopt_buildMeshletsFlex(long meshlets, long meshlet_vertices, long meshlet_triangles, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long min_triangles, long max_triangles, float cone_weight, float split_factor)
      size_t meshopt_buildMeshletsFlex(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t min_triangles, size_t max_triangles, float cone_weight, float split_factor)
    • meshopt_buildMeshletsFlex

      @NativeType("size_t") public static long meshopt_buildMeshletsFlex(@NativeType("struct meshopt_Meshlet *") MeshoptMeshlet.Buffer meshlets, @NativeType("unsigned int *") IntBuffer meshlet_vertices, @NativeType("unsigned char *") ByteBuffer meshlet_triangles, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("size_t") long max_vertices, @NativeType("size_t") long min_triangles, @NativeType("size_t") long max_triangles, float cone_weight, float split_factor)
      size_t meshopt_buildMeshletsFlex(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t min_triangles, size_t max_triangles, float cone_weight, float split_factor)
    • nmeshopt_buildMeshletsSpatial

      public static long nmeshopt_buildMeshletsSpatial(long meshlets, long meshlet_vertices, long meshlet_triangles, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long max_vertices, long min_triangles, long max_triangles, float fill_weight)
      size_t meshopt_buildMeshletsSpatial(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t min_triangles, size_t max_triangles, float fill_weight)
    • meshopt_buildMeshletsSpatial

      @NativeType("size_t") public static long meshopt_buildMeshletsSpatial(@NativeType("struct meshopt_Meshlet *") MeshoptMeshlet.Buffer meshlets, @NativeType("unsigned int *") IntBuffer meshlet_vertices, @NativeType("unsigned char *") ByteBuffer meshlet_triangles, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("size_t") long max_vertices, @NativeType("size_t") long min_triangles, @NativeType("size_t") long max_triangles, float fill_weight)
      size_t meshopt_buildMeshletsSpatial(struct meshopt_Meshlet * meshlets, unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t min_triangles, size_t max_triangles, float fill_weight)
    • nmeshopt_optimizeMeshlet

      public static void nmeshopt_optimizeMeshlet(long meshlet_vertices, long meshlet_triangles, long triangle_count, long vertex_count)
      void meshopt_optimizeMeshlet(unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, size_t triangle_count, size_t vertex_count)
    • meshopt_optimizeMeshlet

      public static void meshopt_optimizeMeshlet(@NativeType("unsigned int *") IntBuffer meshlet_vertices, @NativeType("unsigned char *") ByteBuffer meshlet_triangles)
      void meshopt_optimizeMeshlet(unsigned int * meshlet_vertices, unsigned char * meshlet_triangles, size_t triangle_count, size_t vertex_count)
    • nmeshopt_optimizeMeshletLevel

      public static void nmeshopt_optimizeMeshletLevel(long meshlet_vertices, long vertex_count, long meshlet_triangles, long triangle_count, int level)
      void meshopt_optimizeMeshletLevel(unsigned int * meshlet_vertices, size_t vertex_count, unsigned char * meshlet_triangles, size_t triangle_count, int level)
    • meshopt_optimizeMeshletLevel

      public static void meshopt_optimizeMeshletLevel(@NativeType("unsigned int *") IntBuffer meshlet_vertices, @NativeType("unsigned char *") ByteBuffer meshlet_triangles, int level)
      void meshopt_optimizeMeshletLevel(unsigned int * meshlet_vertices, size_t vertex_count, unsigned char * meshlet_triangles, size_t triangle_count, int level)
    • nmeshopt_computeClusterBounds

      public static void nmeshopt_computeClusterBounds(long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long __result)
      struct meshopt_Bounds meshopt_computeClusterBounds(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_computeClusterBounds

      @NativeType("struct meshopt_Bounds") public static MeshoptBounds meshopt_computeClusterBounds(@NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("struct meshopt_Bounds") MeshoptBounds __result)
      struct meshopt_Bounds meshopt_computeClusterBounds(unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_computeMeshletBounds

      public static void nmeshopt_computeMeshletBounds(long meshlet_vertices, long meshlet_triangles, long triangle_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long __result)
      struct meshopt_Bounds meshopt_computeMeshletBounds(unsigned int const * meshlet_vertices, unsigned char const * meshlet_triangles, size_t triangle_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_computeMeshletBounds

      @NativeType("struct meshopt_Bounds") public static MeshoptBounds meshopt_computeMeshletBounds(@NativeType("unsigned int const *") IntBuffer meshlet_vertices, @NativeType("unsigned char const *") ByteBuffer meshlet_triangles, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("struct meshopt_Bounds") MeshoptBounds __result)
      struct meshopt_Bounds meshopt_computeMeshletBounds(unsigned int const * meshlet_vertices, unsigned char const * meshlet_triangles, size_t triangle_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_computeSphereBounds

      public static void nmeshopt_computeSphereBounds(long positions, long count, long positions_stride, long radii, long radii_stride, long __result)
      struct meshopt_Bounds meshopt_computeSphereBounds(float const * positions, size_t count, size_t positions_stride, float const * radii, size_t radii_stride)
    • meshopt_computeSphereBounds

      @NativeType("struct meshopt_Bounds") public static MeshoptBounds meshopt_computeSphereBounds(@NativeType("float const *") FloatBuffer positions, @NativeType("size_t") long count, @NativeType("size_t") long positions_stride, @NativeType("float const *") @Nullable FloatBuffer radii, @NativeType("size_t") long radii_stride, @NativeType("struct meshopt_Bounds") MeshoptBounds __result)
      struct meshopt_Bounds meshopt_computeSphereBounds(float const * positions, size_t count, size_t positions_stride, float const * radii, size_t radii_stride)
    • nmeshopt_extractMeshletIndices

      public static long nmeshopt_extractMeshletIndices(long vertices, long triangles, long indices, long index_count)
      size_t meshopt_extractMeshletIndices(unsigned int * vertices, unsigned char * triangles, unsigned int const * indices, size_t index_count)
    • meshopt_extractMeshletIndices

      @NativeType("size_t") public static long meshopt_extractMeshletIndices(@NativeType("unsigned int *") IntBuffer vertices, @NativeType("unsigned char *") ByteBuffer triangles, @NativeType("unsigned int const *") IntBuffer indices)
      size_t meshopt_extractMeshletIndices(unsigned int * vertices, unsigned char * triangles, unsigned int const * indices, size_t index_count)
    • nmeshopt_partitionClusters

      public static long nmeshopt_partitionClusters(long destination, long cluster_indices, long total_index_count, long cluster_index_counts, long cluster_count, long vertex_positions, long vertex_count, long vertex_positions_stride, long target_partition_size)
      size_t meshopt_partitionClusters(unsigned int * destination, unsigned int const * cluster_indices, size_t total_index_count, unsigned int const * cluster_index_counts, size_t cluster_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t target_partition_size)
    • meshopt_partitionClusters

      @NativeType("size_t") public static long meshopt_partitionClusters(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer cluster_indices, @NativeType("unsigned int const *") IntBuffer cluster_index_counts, @NativeType("float const *") @Nullable FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("size_t") long target_partition_size)
      size_t meshopt_partitionClusters(unsigned int * destination, unsigned int const * cluster_indices, size_t total_index_count, unsigned int const * cluster_index_counts, size_t cluster_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t target_partition_size)
    • nmeshopt_spatialSortRemap

      public static void nmeshopt_spatialSortRemap(long destination, long vertex_positions, long vertex_count, long vertex_positions_stride)
      void meshopt_spatialSortRemap(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_spatialSortRemap

      public static void meshopt_spatialSortRemap(@NativeType("unsigned int *") IntBuffer destination, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride)
      void meshopt_spatialSortRemap(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_spatialSortTriangles

      public static void nmeshopt_spatialSortTriangles(long destination, long indices, long index_count, long vertex_positions, long vertex_count, long vertex_positions_stride)
      void meshopt_spatialSortTriangles(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • meshopt_spatialSortTriangles

      public static void meshopt_spatialSortTriangles(@NativeType("unsigned int *") IntBuffer destination, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride)
      void meshopt_spatialSortTriangles(unsigned int * destination, unsigned int const * indices, size_t index_count, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride)
    • nmeshopt_spatialClusterPoints

      public static void nmeshopt_spatialClusterPoints(long destination, long vertex_positions, long vertex_count, long vertex_positions_stride, long cluster_size)
      void meshopt_spatialClusterPoints(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t cluster_size)
    • meshopt_spatialClusterPoints

      public static void meshopt_spatialClusterPoints(@NativeType("unsigned int *") IntBuffer destination, @NativeType("float const *") FloatBuffer vertex_positions, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_positions_stride, @NativeType("size_t") long cluster_size)
      void meshopt_spatialClusterPoints(unsigned int * destination, float const * vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t cluster_size)
    • nmeshopt_opacityMapMeasure

      public static long nmeshopt_opacityMapMeasure(long levels, long sources, long omm_indices, long indices, long index_count, long vertex_uvs, long vertex_count, long vertex_uvs_stride, int texture_width, int texture_height, int max_level, float target_edge)
      size_t meshopt_opacityMapMeasure(unsigned char * levels, unsigned int * sources, int * omm_indices, unsigned int const * indices, size_t index_count, float const * vertex_uvs, size_t vertex_count, size_t vertex_uvs_stride, unsigned int texture_width, unsigned int texture_height, int max_level, float target_edge)
    • meshopt_opacityMapMeasure

      @NativeType("size_t") public static long meshopt_opacityMapMeasure(@NativeType("unsigned char *") ByteBuffer levels, @NativeType("unsigned int *") IntBuffer sources, @NativeType("int *") IntBuffer omm_indices, @NativeType("unsigned int const *") IntBuffer indices, @NativeType("float const *") FloatBuffer vertex_uvs, @NativeType("size_t") long vertex_count, @NativeType("size_t") long vertex_uvs_stride, @NativeType("unsigned int") int texture_width, @NativeType("unsigned int") int texture_height, int max_level, float target_edge)
      size_t meshopt_opacityMapMeasure(unsigned char * levels, unsigned int * sources, int * omm_indices, unsigned int const * indices, size_t index_count, float const * vertex_uvs, size_t vertex_count, size_t vertex_uvs_stride, unsigned int texture_width, unsigned int texture_height, int max_level, float target_edge)
    • nmeshopt_opacityMapRasterize

      public static void nmeshopt_opacityMapRasterize(long result, int level, int states, long uv0, long uv1, long uv2, long texture_data, long texture_stride, long texture_pitch, int texture_width, int texture_height)
      void meshopt_opacityMapRasterize(unsigned char * result, int level, int states, float const * uv0, float const * uv1, float const * uv2, unsigned char const * texture_data, size_t texture_stride, size_t texture_pitch, unsigned int texture_width, unsigned int texture_height)
    • meshopt_opacityMapRasterize

      public static void meshopt_opacityMapRasterize(@NativeType("unsigned char *") ByteBuffer result, int level, int states, @NativeType("float const *") FloatBuffer uv0, @NativeType("float const *") FloatBuffer uv1, @NativeType("float const *") FloatBuffer uv2, @NativeType("unsigned char const *") ByteBuffer texture_data, @NativeType("size_t") long texture_stride, @NativeType("size_t") long texture_pitch, @NativeType("unsigned int") int texture_width, @NativeType("unsigned int") int texture_height)
      void meshopt_opacityMapRasterize(unsigned char * result, int level, int states, float const * uv0, float const * uv1, float const * uv2, unsigned char const * texture_data, size_t texture_stride, size_t texture_pitch, unsigned int texture_width, unsigned int texture_height)
    • meshopt_opacityMapEntrySize

      @NativeType("size_t") public static long meshopt_opacityMapEntrySize(int level, int states)
      size_t meshopt_opacityMapEntrySize(int level, int states)
    • nmeshopt_opacityMapCompact

      public static long nmeshopt_opacityMapCompact(long data, long data_size, long levels, long offsets, long omm_count, long omm_indices, long triangle_count, int states)
      size_t meshopt_opacityMapCompact(unsigned char * data, size_t data_size, unsigned char * levels, unsigned int * offsets, size_t omm_count, int * omm_indices, size_t triangle_count, int states)
    • meshopt_opacityMapCompact

      @NativeType("size_t") public static long meshopt_opacityMapCompact(@NativeType("unsigned char *") ByteBuffer data, @NativeType("unsigned char *") ByteBuffer levels, @NativeType("unsigned int *") IntBuffer offsets, @NativeType("int *") IntBuffer omm_indices, int states)
      size_t meshopt_opacityMapCompact(unsigned char * data, size_t data_size, unsigned char * levels, unsigned int * offsets, size_t omm_count, int * omm_indices, size_t triangle_count, int states)
    • nmeshopt_setAllocator

      public static void nmeshopt_setAllocator(long allocate, long deallocate)
      void meshopt_setAllocator(void * (*) (size_t) allocate, void (*) (void *) deallocate)
    • meshopt_setAllocator

      public static void meshopt_setAllocator(@NativeType("void * (*) (size_t)") MeshoptAllocateI allocate, @NativeType("void (*) (void *)") MeshoptDeallocateI deallocate)
      void meshopt_setAllocator(void * (*) (size_t) allocate, void (*) (void *) deallocate)
    • meshopt_quantizeUnorm

      public static int meshopt_quantizeUnorm(float v, int N)
      Quantizes a float in [0..1] range into an N-bit fixed point unorm value.

      Assumes reconstruction function q / (2N - 1), which is the case for fixed-function normalized fixed point conversion. Maximum reconstruction error: 1 / 2N+1.

    • meshopt_quantizeSnorm

      public static int meshopt_quantizeSnorm(float v, int N)
      Quantizes a float in [-1..1] range into an N-bit fixed point snorm value.

      Assumes reconstruction function q / (2N-1 - 1), which is the case for fixed-function normalized fixed point conversion (except early OpenGL versions). Maximum reconstruction error: 1 / 2N.

    • meshopt_quantizeHalf

      public static short meshopt_quantizeHalf(float v)
      Quantizes a float into half-precision (as defined by IEEE-754 fp16) floating point value.

      Generates +-inf for overflow, preserves NaN, flushes denormals to zero, rounds to nearest. Representable magnitude range: [6e-5; 65504]. Maximum relative reconstruction error: 5e-4.

    • meshopt_quantizeFloat

      public static float meshopt_quantizeFloat(float v, int N)
      Quantizes a float into a floating point value with a limited number of significant mantissa bits, preserving the IEEE-754 fp32 binary representation.

      Generates +-inf for overflow, preserves NaN, flushes denormals to zero, rounds to nearest. Assumes N is in a valid mantissa precision range, which is 1..23.

    • meshopt_dequantizeHalf

      public static float meshopt_dequantizeHalf(@NativeType("unsigned short") short h)
      Reverse quantization of a half-precision (as defined by IEEE-754 fp16) floating point value.

      Preserves Inf/NaN, flushes denormals to zero.