diff --git a/meta/evmod.types b/meta/evmod.types index 25b96c6..59c071d 100644 --- a/meta/evmod.types +++ b/meta/evmod.types @@ -21,7 +21,11 @@ TYPE(MeshAsset, struct { }) typedef enum { - EV_IMAGEFORMAT_RGBA8, + EV_IMAGEFORMAT_R8G8B8_SRGB, + EV_IMAGEFORMAT_R8G8B8_UNORM, + EV_IMAGEFORMAT_R8G8B8A8_SRGB, + EV_IMAGEFORMAT_R8G8B8A8_UNORM, + EV_IMAGEFORMAT_R32G32B32A32_SFLOAT, EV_IMAGEFORMAT_INVALID } EvImageFormat; diff --git a/src/loaders/ImageLoader/ImageLoader.c b/src/loaders/ImageLoader/ImageLoader.c index 58f02e6..8056ef6 100644 --- a/src/loaders/ImageLoader/ImageLoader.c +++ b/src/loaders/ImageLoader/ImageLoader.c @@ -62,9 +62,17 @@ EvImageFormat strToFormat( evstr_ref str_ref) { - if(!strncmp(str_ref.data + str_ref.offset, "RGBA8", str_ref.len)) - return EV_IMAGEFORMAT_RGBA8; - - else + if(!strncmp(str_ref.data + str_ref.offset, "R8G8B8A8_SRGB", str_ref.len)) { + return EV_IMAGEFORMAT_R8G8B8A8_SRGB; + } else if(!strncmp(str_ref.data + str_ref.offset, "R8G8B8A8_UNORM", str_ref.len)) { + return EV_IMAGEFORMAT_R8G8B8A8_UNORM; + } else if(!strncmp(str_ref.data + str_ref.offset, "R8G8B8_UNORM", str_ref.len)) { + return EV_IMAGEFORMAT_R8G8B8_UNORM; + } else if(!strncmp(str_ref.data + str_ref.offset, "R8G8B8_SRGB", str_ref.len)) { + return EV_IMAGEFORMAT_R8G8B8_SRGB; + } else if(!strncmp(str_ref.data + str_ref.offset, "R32G32B32A32_SFLOAT", str_ref.len)) { + return EV_IMAGEFORMAT_R32G32B32A32_SFLOAT; + } else { return EV_IMAGEFORMAT_INVALID; + } } diff --git a/src/loaders/MeshLoader/MeshLoader.c b/src/loaders/MeshLoader/MeshLoader.c index 2b809d9..3453693 100644 --- a/src/loaders/MeshLoader/MeshLoader.c +++ b/src/loaders/MeshLoader/MeshLoader.c @@ -22,6 +22,7 @@ ev_meshloader_loadasset( uint32_t jsonLength = ((U32*)asset->data)[0]; uint32_t blobLength = ((U32*)asset->data)[1]; + (void)blobLength; const char *json = (PTR)(&((U32*)asset->data)[2]); const void *data = json + jsonLength; @@ -51,7 +52,7 @@ void ev_meshloader_textasset_destr( MeshAsset mesh) { - + EV_UNUSED_PARAMS(mesh); } void