MCPcopy Create free account
hub / github.com/KhronosGroup/KTX-Software / compressBasis

Method compressBasis

interface/js_binding/ktx_wrapper.cpp:381–425  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

379 }
380
381 ktx_error_code_e compressBasis(const ktxBasisParams& params_input)
382 {
383 ktx_error_code_e result = KTX_SUCCESS;
384 ktxBasisParams params = params_input;
385 params.structSize = sizeof(ktxBasisParams);
386 params.threadCount = 1;
387 params.verbose = false;
388 params.noSSE = true;
389
390//#define DUMP_PARAMS
391#ifdef DUMP_PARAMS
392 printf("params.structSize %d\n", params.structSize);
393 printf("params.uastc %d\n", params.uastc);
394 printf("params.verbose %d\n", params.verbose);
395 printf("params.noSSE %d\n", params.noSSE);
396 printf("params.threadCount %d\n", params.threadCount);
397 printf("params.inputSwizzle %.4s\n", params.inputSwizzle);
398 printf("params.preSwizzle %d\n", params.preSwizzle);
399 printf("params.ETC1S.compressionLevel %d\n", params.compressionLevel);
400 printf("params.ETC1S.qualityLevel %d\n", params.qualityLevel);
401 printf("params.ETC1S.maxEndpoints %d\n", params.maxEndpoints);
402 printf("params.ETC1S.endpointRDOThreshold %f\n", params.endpointRDOThreshold);
403 printf("params.ETC1S.maxSelectors %d\n", params.maxSelectors);
404 printf("params.ETC1S.selectorRDOThreshold %f\n", params.selectorRDOThreshold);
405 printf("params.ETC1S.normalMap %d\n", params.normalMap);
406 printf("params.ETC1S.separateRGToRGB_A %d\n", params.separateRGToRGB_A);
407 printf("params.ETC1S.noEndpointRDO %d\n", params.noEndpointRDO);
408 printf("params.ETC1S.noSelectorRDO %d\n", params.noSelectorRDO);
409
410 printf("params.UASTC.uastcFlags %d\n", params.uastcFlags);
411 printf("params.UASTC.uastcRDO %d\n", params.uastcRDO);
412 printf("params.UASTC.uastcRDOQualityScalar %f\n", params.uastcRDOQualityScalar);
413 printf("params.UASTC.uastcRDODictSize %d\n", params.uastcRDODictSize);
414 printf("params.UASTC.uastcRDOMaxSmoothBlockErrorScale %f\n", params.uastcRDOMaxSmoothBlockErrorScale);
415 printf("params.UASTC.uastcRDOMaxSmoothBlockStdDev %f\n", params.uastcRDOMaxSmoothBlockStdDev);
416 printf("params.UASTC.uastcRDODontFavorSimplerModes %d\n", params.uastcRDODontFavorSimplerModes);
417 printf("params.UASTC.uastcRDONoMultithreading %d\n", params.uastcRDONoMultithreading);
418#endif
419
420 result = ktxTexture2_CompressBasisEx(*this, &params);
421 if (result != KTX_SUCCESS) {
422 std::cout << "ERROR: failed to compressBasis: " << ktxErrorString(result) << std::endl;
423 }
424 return result;
425 }
426
427 ktx_error_code_e deflateZstd(int compression_level)
428 {

Callers 1

testEncodeBasisFunction · 0.45

Calls 3

printfFunction · 0.85
ktxErrorStringFunction · 0.85

Tested by

no test coverage detected