expose Material->getFeautureLevel
This commit is contained in:
@@ -73,6 +73,7 @@ extern "C"
|
|||||||
typedef enum TTransparencyMode TTransparencyMode;
|
typedef enum TTransparencyMode TTransparencyMode;
|
||||||
|
|
||||||
EMSCRIPTEN_KEEPALIVE TMaterialInstance *Material_createInstance(TMaterial *tMaterial);
|
EMSCRIPTEN_KEEPALIVE TMaterialInstance *Material_createInstance(TMaterial *tMaterial);
|
||||||
|
EMSCRIPTEN_KEEPALIVE TFeatureLevel Material_getFeatureLevel(TMaterial *tMaterial);
|
||||||
EMSCRIPTEN_KEEPALIVE TMaterial *Material_createImageMaterial(TEngine *tEngine);
|
EMSCRIPTEN_KEEPALIVE TMaterial *Material_createImageMaterial(TEngine *tEngine);
|
||||||
EMSCRIPTEN_KEEPALIVE TMaterial *Material_createGridMaterial(TEngine *tEngine);
|
EMSCRIPTEN_KEEPALIVE TMaterial *Material_createGridMaterial(TEngine *tEngine);
|
||||||
EMSCRIPTEN_KEEPALIVE TMaterial *Material_createGizmoMaterial(TEngine *tEngine);
|
EMSCRIPTEN_KEEPALIVE TMaterial *Material_createGizmoMaterial(TEngine *tEngine);
|
||||||
|
|||||||
@@ -34,6 +34,21 @@ namespace thermion
|
|||||||
return reinterpret_cast<TMaterialInstance *>(instance);
|
return reinterpret_cast<TMaterialInstance *>(instance);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EMSCRIPTEN_KEEPALIVE TFeatureLevel Material_getFeatureLevel(TMaterial *tMaterial) {
|
||||||
|
auto *material = reinterpret_cast<filament::Material *>(tMaterial);
|
||||||
|
auto featureLevel = material->getFeatureLevel();
|
||||||
|
switch(featureLevel) {
|
||||||
|
case filament::backend::FeatureLevel::FEATURE_LEVEL_0:
|
||||||
|
return FEATURE_LEVEL_0;
|
||||||
|
case filament::backend::FeatureLevel::FEATURE_LEVEL_1:
|
||||||
|
return FEATURE_LEVEL_1;
|
||||||
|
case filament::backend::FeatureLevel::FEATURE_LEVEL_2:
|
||||||
|
return FEATURE_LEVEL_2;
|
||||||
|
case filament::backend::FeatureLevel::FEATURE_LEVEL_3:
|
||||||
|
return FEATURE_LEVEL_3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
EMSCRIPTEN_KEEPALIVE TMaterial *Material_createImageMaterial(TEngine *tEngine) {
|
EMSCRIPTEN_KEEPALIVE TMaterial *Material_createImageMaterial(TEngine *tEngine) {
|
||||||
auto *engine = reinterpret_cast<filament::Engine *>(tEngine);
|
auto *engine = reinterpret_cast<filament::Engine *>(tEngine);
|
||||||
auto *material = filament::Material::Builder()
|
auto *material = filament::Material::Builder()
|
||||||
|
|||||||
Reference in New Issue
Block a user