5#include <CesiumGltf/Accessor.h>
6#include <CesiumGltf/Animation.h>
7#include <CesiumGltf/Asset.h>
8#include <CesiumGltf/Buffer.h>
9#include <CesiumGltf/BufferView.h>
10#include <CesiumGltf/Camera.h>
11#include <CesiumGltf/Image.h>
12#include <CesiumGltf/Library.h>
13#include <CesiumGltf/Material.h>
14#include <CesiumGltf/Mesh.h>
15#include <CesiumGltf/Node.h>
16#include <CesiumGltf/Sampler.h>
17#include <CesiumGltf/Scene.h>
18#include <CesiumGltf/Skin.h>
19#include <CesiumGltf/Texture.h>
20#include <CesiumUtility/ExtensibleObject.h>
34 static constexpr const char* TypeName =
"Model";
90 std::vector<CesiumGltf::Image>
images;
109 std::vector<CesiumGltf::Node>
nodes;
135 std::vector<CesiumGltf::Skin>
skins;
153 accum += int64_t(
sizeof(std::string) * this->extensionsUsed.capacity());
154 accum += int64_t(
sizeof(std::string) * this->extensionsRequired.capacity());
Classes for working with glTF models.
This class is not meant to be instantiated directly. Use Accessor instead.
Metadata about the glTF asset.
int64_t getSizeBytes() const
Calculates the size in bytes of this object, including the contents of all collections,...
A view into a buffer generally representing a subset of the buffer.
This class is not meant to be instantiated directly. Use Buffer instead.
A camera's projection. A node MAY reference a camera to apply a transform to place the camera in the ...
This class is not meant to be instantiated directly. Use Image instead.
The material appearance of a primitive.
A set of primitives to be rendered. Its global transform is defined by a node that references it.
The root object for a glTF asset.
std::vector< CesiumGltf::Camera > cameras
An array of cameras.
std::vector< CesiumGltf::Scene > scenes
An array of scenes.
ModelSpec()=default
This class is not meant to be instantiated directly. Use Model instead.
std::vector< CesiumGltf::Skin > skins
An array of skins.
std::vector< CesiumGltf::BufferView > bufferViews
An array of bufferViews.
std::vector< CesiumGltf::Animation > animations
An array of keyframe animations.
std::vector< CesiumGltf::Sampler > samplers
An array of samplers.
std::vector< CesiumGltf::Material > materials
An array of materials.
CesiumGltf::Asset asset
Metadata about the glTF asset.
std::vector< std::string > extensionsRequired
Names of glTF extensions required to properly load this asset.
std::vector< CesiumGltf::Mesh > meshes
An array of meshes.
std::vector< CesiumGltf::Node > nodes
An array of nodes.
std::vector< CesiumGltf::Image > images
An array of images.
std::vector< CesiumGltf::Accessor > accessors
An array of accessors.
std::vector< CesiumGltf::Texture > textures
An array of textures.
std::vector< std::string > extensionsUsed
Names of glTF extensions used in this asset.
int64_t getSizeBytes() const
Calculates the size in bytes of this object, including the contents of all collections,...
std::vector< CesiumGltf::Buffer > buffers
An array of buffers.
This class is not meant to be instantiated directly. Use Model instead.
A node in the node hierarchy. When the node contains skin, all mesh.primitives MUST contain JOINTS_0 ...
Texture sampler properties for filtering and wrapping modes.
The root nodes of a scene.
Joints and matrices defining a skin.
A texture and its sampler.
The base class for objects that have extensions and extras.
int64_t getSizeBytes() const
Calculates the size in bytes of this ExtensibleObject, including all of its extras but NOT including ...