add Dart IndirectLight and Ktx1Bundle classes, and separate KTX decoding from skybox/IBL creation
This commit is contained in:
@@ -46,6 +46,7 @@ extern "C"
|
||||
typedef struct TGltfResourceLoader TGltfResourceLoader;
|
||||
typedef struct TFilamentAsset TFilamentAsset;
|
||||
typedef struct TColorGrading TColorGrading;
|
||||
typedef struct TKtx1Bundle TKtx1Bundle;
|
||||
|
||||
typedef struct {
|
||||
double x;
|
||||
|
||||
@@ -260,11 +260,24 @@ EMSCRIPTEN_KEEPALIVE uint32_t Texture_getHeight(TTexture *tTexture, uint32_t lev
|
||||
EMSCRIPTEN_KEEPALIVE uint32_t Texture_getDepth(TTexture *tTexture, uint32_t level);
|
||||
EMSCRIPTEN_KEEPALIVE TTextureUsage Texture_getUsage(TTexture *tTexture, uint32_t level);
|
||||
EMSCRIPTEN_KEEPALIVE void Texture_generateMipMaps(TTexture *tTexture, TEngine *tEngine);
|
||||
EMSCRIPTEN_KEEPALIVE TTexture* Texture_decodeKtx(
|
||||
TEngine *tEngine,
|
||||
EMSCRIPTEN_KEEPALIVE TKtx1Bundle* Ktx1Bundle_create(
|
||||
uint8_t *ktxData,
|
||||
size_t length,
|
||||
float *sphericalHarmonics,
|
||||
size_t length
|
||||
);
|
||||
EMSCRIPTEN_KEEPALIVE void Ktx1Bundle_getSphericalHarmonics(
|
||||
TKtx1Bundle *tBundle,
|
||||
float *harmonics
|
||||
);
|
||||
EMSCRIPTEN_KEEPALIVE bool Ktx1Bundle_isCubemap(
|
||||
TKtx1Bundle *tBundle
|
||||
);
|
||||
EMSCRIPTEN_KEEPALIVE void Ktx1Bundle_destroy(
|
||||
TKtx1Bundle *tBundle
|
||||
);
|
||||
|
||||
EMSCRIPTEN_KEEPALIVE TTexture* Ktx1Reader_createTexture(
|
||||
TEngine *tEngine,
|
||||
TKtx1Bundle *tBundle,
|
||||
uint32_t requestId,
|
||||
VoidCallback onTextureUploadComplete
|
||||
);
|
||||
|
||||
@@ -60,7 +60,7 @@ namespace thermion
|
||||
void (*onComplete)(TTexture*)
|
||||
);
|
||||
void Texture_generateMipMapsRenderThread(TTexture *tTexture, TEngine *tEngine, uint32_t requestId, VoidCallback onComplete);
|
||||
void Texture_decodeKtxRenderThread(TEngine *tEngine, uint8_t *ktxData, size_t length, float *sphericalHarmonics, uint32_t requestId, VoidCallback onTextureUploadComplete, void (*onComplete)(TTexture *));
|
||||
void Ktx1Reader_createTextureRenderThread(TEngine *tEngine, TKtx1Bundle *tBundle, uint32_t requestId, VoidCallback onTextureUploadComplete, void (*onComplete)(TTexture *));
|
||||
|
||||
void Engine_destroyTextureRenderThread(TEngine *engine, TTexture* tTexture, uint32_t requestId, VoidCallback onComplete);
|
||||
void Engine_createFenceRenderThread(TEngine *tEngine, void (*onComplete)(TFence*));
|
||||
|
||||
Reference in New Issue
Block a user