4 #include "TileLoadResult.h"
6 #include <CesiumAsync/Future.h>
7 #include <CesiumRasterOverlays/IPrepareRasterOverlayRendererResources.h>
9 #include <glm/vec2.hpp>
36 void* pRenderResources{
nullptr};
75 const glm::dmat4& transform,
76 const std::any& rendererOptions) = 0;
112 void* pLoadThreadResult,
113 void* pMainThreadResult) noexcept = 0;
137 int32_t overlayTextureCoordinateID,
139 void* pMainThreadRendererResources,
140 const glm::dvec2& translation,
141 const glm::dvec2& scale) = 0;
155 int32_t overlayTextureCoordinateID,
157 void* pMainThreadRendererResources) noexcept = 0;
When implemented for a rendering engine, allows renderer resources to be created and destroyed under ...
virtual void detachRasterInMainThread(const Tile &tile, int32_t overlayTextureCoordinateID, const CesiumRasterOverlays::RasterOverlayTile &rasterTile, void *pMainThreadRendererResources) noexcept=0
Detaches a raster overlay tile from a geometry tile.
virtual void free(Tile &tile, void *pLoadThreadResult, void *pMainThreadResult) noexcept=0
Frees previously-prepared renderer resources.
virtual void * prepareInMainThread(Tile &tile, void *pLoadThreadResult)=0
Further prepares renderer resources.
virtual void attachRasterInMainThread(const Tile &tile, int32_t overlayTextureCoordinateID, const CesiumRasterOverlays::RasterOverlayTile &rasterTile, void *pMainThreadRendererResources, const glm::dvec2 &translation, const glm::dvec2 &scale)=0
Attaches a raster overlay tile to a geometry tile.
virtual CesiumAsync::Future< TileLoadResultAndRenderResources > prepareInLoadThread(const CesiumAsync::AsyncSystem &asyncSystem, TileLoadResult &&tileLoadResult, const glm::dmat4 &transform, const std::any &rendererOptions)=0
Prepares renderer resources for the given tile. This method is invoked in the load thread.
A system for managing asynchronous requests and tasks.
A value that will be available in the future, as produced by AsyncSystem.
Raster image data for a tile in a quadtree.
Classes that implement the 3D Tiles standard.
Classes that support asynchronous operations.
Basic geometry classes for Cesium.
Classes for working with glTF models.
Classes for raster overlays, which allow draping massive 2D textures over a model.
Store the result of loading a tile content after invoking TilesetContentLoader::loadTileContent.
The root object for a glTF asset.