Supports cube map images in scene-loader
[platform/core/uifw/dali-toolkit.git] / dali-scene-loader / public-api / environment-definition.h
index 066f6fa..35d6ee9 100644 (file)
@@ -1,7 +1,7 @@
 #ifndef DALI_SCENE_LOADER_ENVIRONMENT_DEFINITION_H
 #define DALI_SCENE_LOADER_ENVIRONMENT_DEFINITION_H
 /*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2022 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -19,7 +19,7 @@
 
 // INTERNAL INCLUDES
 #include "dali-scene-loader/public-api/api.h"
-#include "dali-scene-loader/public-api/ktx-loader.h"
+#include "dali-scene-loader/public-api/cube-data.h"
 
 // EXTERNAL INCLUDES
 #include "dali/public-api/math/quaternion.h"
@@ -39,6 +39,7 @@ struct DALI_SCENE_LOADER_API EnvironmentDefinition
   {
     Texture mDiffuse;  // irradiance
     Texture mSpecular; // radiance
+    Texture mBrdf;     // pre-computed brdf
 
     bool IsLoaded() const
     {
@@ -48,8 +49,9 @@ struct DALI_SCENE_LOADER_API EnvironmentDefinition
 
   struct RawData
   {
-    CubeData mDiffuse;
-    CubeData mSpecular;
+    CubeData  mDiffuse;
+    CubeData  mSpecular;
+    PixelData mBrdf;
   };
 
   using EnvironmentData = std::pair<EnvironmentDefinition, Textures>;
@@ -80,7 +82,9 @@ public: // DATA
   std::string mDiffuseMapPath;
   std::string mSpecularMapPath;
   Quaternion  mCubeOrientation = Quaternion::IDENTITY;
+  Vector3     mYDirection      = Vector3::ONE;
   float       mIblIntensity    = 1.0f;
+  bool        mUseBrdfTexture  = false;
 };
 
 } // namespace SceneLoader