zeux / meshoptimizer

Compare d941931 ... +1 ... 28de27a

No flags found

Use flags to group coverage reports by test type, project and/or folders.
Then setup custom commit statuses and notifications for each flag.

e.g., #unittest #integration

#production #enterprise

#frontend #backend

Learn more about Codecov Flags here.

Showing 1 of 3 files from the diff.
Other files ignored by Codecov
gltf/material.cpp has changed.
js/README.md has changed.

@@ -108,7 +108,7 @@
Loading
108 108
 * destination must contain enough space for the resulting index buffer (index_count*2 elements)
109 109
 * vertex_positions should have float3 position in the first 12 bytes of each vertex - similar to glVertexPointer
110 110
 */
111 -
MESHOPTIMIZER_EXPERIMENTAL void meshopt_generateAdjacencyIndexBuffer(unsigned int* destination, const unsigned int* indices, size_t index_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride);
111 +
MESHOPTIMIZER_API void meshopt_generateAdjacencyIndexBuffer(unsigned int* destination, const unsigned int* indices, size_t index_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride);
112 112
113 113
/**
114 114
 * Generate index buffer that can be used for PN-AEN tessellation with crack-free displacement
@@ -124,7 +124,7 @@
Loading
124 124
 * destination must contain enough space for the resulting index buffer (index_count*4 elements)
125 125
 * vertex_positions should have float3 position in the first 12 bytes of each vertex - similar to glVertexPointer
126 126
 */
127 -
MESHOPTIMIZER_EXPERIMENTAL void meshopt_generateTessellationIndexBuffer(unsigned int* destination, const unsigned int* indices, size_t index_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride);
127 +
MESHOPTIMIZER_API void meshopt_generateTessellationIndexBuffer(unsigned int* destination, const unsigned int* indices, size_t index_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride);
128 128
129 129
/**
130 130
 * Vertex transform cache optimizer
@@ -204,7 +204,7 @@
Loading
204 204
 * Experimental: Set index encoder format version
205 205
 * version must specify the data format version to encode; valid values are 0 (decodable by all library versions) and 1 (decodable by 0.14+)
206 206
 */
207 -
MESHOPTIMIZER_EXPERIMENTAL void meshopt_encodeIndexVersion(int version);
207 +
MESHOPTIMIZER_API void meshopt_encodeIndexVersion(int version);
208 208
209 209
/**
210 210
 * Index buffer decoder
@@ -224,8 +224,8 @@
Loading
224 224
 *
225 225
 * buffer must contain enough space for the encoded index sequence (use meshopt_encodeIndexSequenceBound to compute worst case size)
226 226
 */
227 -
MESHOPTIMIZER_EXPERIMENTAL size_t meshopt_encodeIndexSequence(unsigned char* buffer, size_t buffer_size, const unsigned int* indices, size_t index_count);
228 -
MESHOPTIMIZER_EXPERIMENTAL size_t meshopt_encodeIndexSequenceBound(size_t index_count, size_t vertex_count);
227 +
MESHOPTIMIZER_API size_t meshopt_encodeIndexSequence(unsigned char* buffer, size_t buffer_size, const unsigned int* indices, size_t index_count);
228 +
MESHOPTIMIZER_API size_t meshopt_encodeIndexSequenceBound(size_t index_count, size_t vertex_count);
229 229
230 230
/**
231 231
 * Index sequence decoder
@@ -235,7 +235,7 @@
Loading
235 235
 *
236 236
 * destination must contain enough space for the resulting index sequence (index_count elements)
237 237
 */
238 -
MESHOPTIMIZER_EXPERIMENTAL int meshopt_decodeIndexSequence(void* destination, size_t index_count, size_t index_size, const unsigned char* buffer, size_t buffer_size);
238 +
MESHOPTIMIZER_API int meshopt_decodeIndexSequence(void* destination, size_t index_count, size_t index_size, const unsigned char* buffer, size_t buffer_size);
239 239
240 240
/**
241 241
 * Vertex buffer encoder
@@ -253,7 +253,7 @@
Loading
253 253
 * Experimental: Set vertex encoder format version
254 254
 * version must specify the data format version to encode; valid values are 0 (decodable by all library versions)
255 255
 */
256 -
MESHOPTIMIZER_EXPERIMENTAL void meshopt_encodeVertexVersion(int version);
256 +
MESHOPTIMIZER_API void meshopt_encodeVertexVersion(int version);
257 257
258 258
/**
259 259
 * Vertex buffer decoder
@@ -285,15 +285,15 @@
Loading
285 285
/**
286 286
 * Vertex buffer filter encoders
287 287
 * These functions can be used to encode data in a format that meshopt_decodeFilter can decode
288 -
 * 
288 +
 *
289 289
 * meshopt_encodeFilterOct encodes unit vectors with K-bit (K <= 16) signed X/Y as an output.
290 290
 * Each component is stored as an 8-bit or 16-bit normalized integer; stride must be equal to 4 or 8. W is preserved as is.
291 291
 * Input data must contain 4 floats for every vector (count*4 total).
292 -
 * 
292 +
 *
293 293
 * meshopt_encodeFilterQuat encodes unit quaternions with K-bit (4 <= K <= 16) component encoding.
294 294
 * Each component is stored as an 16-bit integer; stride must be equal to 8.
295 295
 * Input data must contain 4 floats for every quaternion (count*4 total).
296 -
 * 
296 +
 *
297 297
 * meshopt_encodeFilterExp encodes arbitrary (finite) floating-point data with 8-bit exponent and K-bit integer mantissa (1 <= K <= 24).
298 298
 * Mantissa is shared between all components of a given vector as defined by stride; stride must be divisible by 4.
299 299
 * Input data must contain stride/4 floats for every vector (count*stride/4 total).
@@ -446,9 +446,9 @@
Loading
446 446
 * max_vertices and max_triangles must not exceed implementation limits (max_vertices <= 255 - not 256!, max_triangles <= 512)
447 447
 * cone_weight should be set to 0 when cone culling is not used, and a value between 0 and 1 otherwise to balance between cluster size and cone culling efficiency
448 448
 */
449 -
MESHOPTIMIZER_EXPERIMENTAL size_t meshopt_buildMeshlets(struct meshopt_Meshlet* meshlets, unsigned int* meshlet_vertices, unsigned char* meshlet_triangles, const unsigned int* indices, size_t index_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t max_triangles, float cone_weight);
450 -
MESHOPTIMIZER_EXPERIMENTAL size_t meshopt_buildMeshletsScan(struct meshopt_Meshlet* meshlets, unsigned int* meshlet_vertices, unsigned char* meshlet_triangles, const unsigned int* indices, size_t index_count, size_t vertex_count, size_t max_vertices, size_t max_triangles);
451 -
MESHOPTIMIZER_EXPERIMENTAL size_t meshopt_buildMeshletsBound(size_t index_count, size_t max_vertices, size_t max_triangles);
449 +
MESHOPTIMIZER_API size_t meshopt_buildMeshlets(struct meshopt_Meshlet* meshlets, unsigned int* meshlet_vertices, unsigned char* meshlet_triangles, const unsigned int* indices, size_t index_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride, size_t max_vertices, size_t max_triangles, float cone_weight);
450 +
MESHOPTIMIZER_API size_t meshopt_buildMeshletsScan(struct meshopt_Meshlet* meshlets, unsigned int* meshlet_vertices, unsigned char* meshlet_triangles, const unsigned int* indices, size_t index_count, size_t vertex_count, size_t max_vertices, size_t max_triangles);
451 +
MESHOPTIMIZER_API size_t meshopt_buildMeshletsBound(size_t index_count, size_t max_vertices, size_t max_triangles);
452 452
453 453
struct meshopt_Bounds
454 454
{
@@ -487,8 +487,8 @@
Loading
487 487
 * vertex_positions should have float3 position in the first 12 bytes of each vertex - similar to glVertexPointer
488 488
 * index_count/3 should be less than or equal to 512 (the function assumes clusters of limited size)
489 489
 */
490 -
MESHOPTIMIZER_EXPERIMENTAL struct meshopt_Bounds meshopt_computeClusterBounds(const unsigned int* indices, size_t index_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride);
491 -
MESHOPTIMIZER_EXPERIMENTAL struct meshopt_Bounds meshopt_computeMeshletBounds(const unsigned int* meshlet_vertices, const unsigned char* meshlet_triangles, size_t triangle_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride);
490 +
MESHOPTIMIZER_API struct meshopt_Bounds meshopt_computeClusterBounds(const unsigned int* indices, size_t index_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride);
491 +
MESHOPTIMIZER_API struct meshopt_Bounds meshopt_computeMeshletBounds(const unsigned int* meshlet_vertices, const unsigned char* meshlet_triangles, size_t triangle_count, const float* vertex_positions, size_t vertex_count, size_t vertex_positions_stride);
492 492
493 493
/**
494 494
 * Experimental: Spatial sorter

Everything is accounted for!

No changes detected that need to be reviewed.
What changes does Codecov check for?
Lines, not adjusted in diff, that have changed coverage data.
Files that introduced coverage data that had none before.
Files that have missing coverage data that once were tracked.
Files Coverage
src 97.54%
Project Totals (16 files) 97.54%
Loading