*
*/
+// EXTERNAL INCLUDES
+#include <dali/public-api/common/dali-common.h>
+
// INTERNAL INCLUDES
#include <dali-scene3d/internal/loader/gltf2-asset.h>
#include <dali-scene3d/public-api/loader/load-result.h>
#include <dali-scene3d/public-api/loader/scene-definition.h>
#include <dali-scene3d/public-api/loader/shader-definition-factory.h>
-// EXTERNAL INCLUDES
-#include <dali/devel-api/threading/mutex.h>
-#include <dali/integration-api/debug.h>
-
namespace gt = gltf2;
namespace js = json;
-namespace Dali
-{
-namespace Scene3D
-{
-namespace Loader
-{
-namespace Internal
+namespace Dali::Scene3D::Loader::Internal
{
namespace Gltf2Util
{
-
struct NodeMapping
{
- Index gltfIdx;
- Index runtimeIdx;
+ Index gltfIndex;
+ Index runtimeIndex;
- bool operator<(Index gltfIdx) const
+ bool operator<(Index gltfIndex) const
{
- return this->gltfIdx < gltfIdx;
+ return this->gltfIndex < gltfIndex;
}
};
class NodeIndexMapper
{
public:
- NodeIndexMapper() = default;
- NodeIndexMapper(const NodeIndexMapper&) = delete;
+ NodeIndexMapper() = default;
+ NodeIndexMapper(const NodeIndexMapper&) = delete;
NodeIndexMapper& operator=(const NodeIndexMapper&) = delete;
- ///@brief Registers a mapping of the @a gltfIdx of a node to its @a runtimeIdx .
+ ///@brief Registers a mapping of the @a gltfIndex of a node to its @a runtimeIndex .
///@note If the indices are the same, the registration is omitted, in order to
/// save growing a vector.
- void RegisterMapping(Index gltfIdx, Index runtimeIdx)
+ void RegisterMapping(Index gltfIndex, Index runtimeIndex)
{
- if(gltfIdx != runtimeIdx)
+ if(gltfIndex != runtimeIndex)
{
- auto iInsert = std::lower_bound(mNodes.begin(), mNodes.end(), gltfIdx);
- DALI_ASSERT_DEBUG(iInsert == mNodes.end() || iInsert->gltfIdx != gltfIdx);
- mNodes.insert(iInsert, NodeMapping{gltfIdx, runtimeIdx});
+ auto iInsert = std::lower_bound(mNodes.begin(), mNodes.end(), gltfIndex);
+ DALI_ASSERT_DEBUG(iInsert == mNodes.end() || iInsert->gltfIndex != gltfIndex);
+ mNodes.insert(iInsert, NodeMapping{gltfIndex, runtimeIndex});
}
}
- ///@brief Retrieves the runtime index of a Node, mapped to the given @a gltfIdx.
- Index GetRuntimeId(Index gltfIdx) const
+ ///@brief Retrieves the runtime index of a Node, mapped to the given @a gltfIndex.
+ Index GetRuntimeId(Index gltfIndex) const
{
- auto iFind = std::lower_bound(mNodes.begin(), mNodes.end(), gltfIdx); // using custom operator<
- return (iFind != mNodes.end() && iFind->gltfIdx == gltfIdx) ? iFind->runtimeIdx : gltfIdx;
+ auto iFind = std::lower_bound(mNodes.begin(), mNodes.end(), gltfIndex); // using custom operator<
+ return (iFind != mNodes.end() && iFind->gltfIndex == gltfIndex) ? iFind->runtimeIndex : gltfIndex;
}
private:
NodeIndexMapper mNodeIndices;
};
-void ConvertBuffers(const gt::Document& doc, ConversionContext& context);
+void ConvertBuffers(const gt::Document& document, ConversionContext& context);
-void ConvertMaterials(const gt::Document& doc, ConversionContext& context);
+void ConvertMaterials(const gt::Document& document, ConversionContext& context);
-void ConvertMeshes(const gt::Document& doc, ConversionContext& context);
+void ConvertMeshes(const gt::Document& document, ConversionContext& context);
-void ConvertCamera(const gt::Camera& camera, CameraParameters& camParams);
+void ConvertCamera(const gt::Camera& camera, CameraParameters& cameraParameters);
-void ConvertNodes(const gt::Document& doc, ConversionContext& context, bool isMRendererModel);
+void ConvertNodes(const gt::Document& document, ConversionContext& context, bool isMRendererModel);
-void ConvertAnimations(const gt::Document& doc, ConversionContext& context);
+void ConvertAnimations(const gt::Document& document, ConversionContext& context);
-void ProcessSkins(const gt::Document& doc, ConversionContext& context);
+void ProcessSkins(const gt::Document& document, ConversionContext& context);
void ProduceShaders(ShaderDefinitionFactory& shaderFactory, SceneDefinition& scene);
-void SetDefaultEnvironmentMap(const gt::Document& doc, ConversionContext& context);
+void SetDefaultEnvironmentMap(const gt::Document& document, ConversionContext& context);
const std::string_view GetRendererModelIdentification();
} // namespace Gltf2Util
-} // namespace Internal
-} // namespace Loader
-} // namespace Scene3D
-} // namespace Dali
+} // namespace Dali::Scene3D::Loader::Internal
#endif // DALI_SCENE3D_LOADER_GLTF2_UTIL_H