112 UPROPERTY(VisibleAnywhere, Category =
"Cesium") USceneComponent* Root;
119 "Use the Mobility property on the RootComponent instead."))
120 TEnumAsByte<EComponentMobility::Type> Mobility_DEPRECATED =
121 EComponentMobility::Static;
124 UFUNCTION(BlueprintCallable,
meta = (DeprecatedFunction))
126 return this->RootComponent->Mobility;
128 UFUNCTION(BlueprintCallable,
meta = (DeprecatedFunction))
149 const TArray<FVector>& LongitudeLatitudeHeightArray,
150 FCesiumSampleHeightMostDetailedCallback OnHeightsSampled);
168 Meta = (AllowPrivateAccess))
184 Meta = (AllowPrivateAccess))
189 UFUNCTION(BlueprintCallable, Category =
"Cesium")
193 UFUNCTION(BlueprintCallable, Category =
"Cesium")
203 UFUNCTION(BlueprintCallable, Category =
"Cesium")
211 UFUNCTION(BlueprintCallable, Category =
"Cesium")
228 Meta = (AllowPrivateAccess))
243 Meta = (AllowPrivateAccess))
260 Meta = (AllowPrivateAccess))
275 Meta = (AllowPrivateAccess))
286 Meta = (AllowPrivateAccess))
287 UCesiumBoundingVolumePoolComponent* BoundingVolumePoolComponent =
nullptr;
293 TSharedPtr<CesiumViewExtension, ESPMode::ThreadSafe> _cesiumViewExtension =
298 UFUNCTION(BlueprintCallable, Category =
"Cesium")
302 UFUNCTION(BlueprintCallable, Category =
"Cesium")
312 UFUNCTION(BlueprintCallable, Category =
"Cesium")
319 UFUNCTION(BlueprintCallable, Category =
"Cesium")
325 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium")
329 UFUNCTION(BlueprintGetter, Category =
"Cesium")
333 UFUNCTION(BlueprintSetter, Category =
"Cesium")
343 UFUNCTION(BlueprintCallable, Category =
"Cesium")
351 UFUNCTION(BlueprintCallable, Category =
"Cesium")
373 Category =
"Cesium|Level of Detail",
374 meta = (ClampMin = 0.0))
384 Category =
"Cesium|Level of Detail")
394 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium|Tile Loading")
404 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium|Tile Loading")
416 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium|Tile Loading")
431 Category =
"Cesium|Tile Loading",
432 meta = (ClampMin = 0))
444 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium|Tile Loading")
461 Category =
"Cesium|Tile Loading",
462 meta = (ClampMin = 0))
481 Category =
"Cesium|Tile Culling",
482 Meta = (EditCondition =
"!UseLodTransitions", EditConditionHides))
498 Category =
"Cesium|Tile Culling",
499 Meta = (EditCondition =
"!UseLodTransitions", EditConditionHides))
522 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium|Tile Culling")
547 Category =
"Cesium|Tile Culling",
548 meta = (EditCondition =
"EnforceCulledScreenSpaceError", ClampMin = 0.0))
554 UPROPERTY(Transient, VisibleDefaultsOnly, Category =
"Cesium|Tile Occlusion")
581 Category =
"Cesium|Tile Occlusion",
582 meta = (EditCondition =
"CanEnableOcclusionCulling"))
595 Category =
"Cesium|Tile Occlusion",
598 "EnableOcclusionCulling && CanEnableOcclusionCulling",
615 Category =
"Cesium|Tile Occlusion",
618 "EnableOcclusionCulling && CanEnableOcclusionCulling"))
627 UFUNCTION(CallInEditor, BlueprintCallable, Category =
"Cesium")
633 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium|Debug")
640 UPROPERTY(EditAnywhere, Category =
"Cesium|Debug")
654 UPROPERTY(EditAnywhere, Category =
"Cesium|Debug")
660 UPROPERTY(EditAnywhere, Category =
"Cesium|Debug")
667 UPROPERTY(EditAnywhere, Category =
"Cesium|Debug")
674 UPROPERTY(EditAnywhere, Category =
"Cesium|Debug")
684 Category =
"Collision",
685 meta = (ShowOnlyInnerProperties, SkipUCSModifiedProperties))
691 UPROPERTY(BlueprintAssignable, Category =
"Cesium");
704 Category =
"Cesium|Rendering")
716 Category =
"Cesium|Rendering",
717 meta = (EditCondition =
"UseLodTransitions", EditConditionHides))
722 float LoadProgress = 0.0f;
732 meta = (DisplayName =
"Source"))
745 meta = (EditCondition =
"TilesetSource==ETilesetSource::FromUrl"))
759 (EditCondition =
"TilesetSource==ETilesetSource::FromCesiumIon",
771 meta = (EditCondition =
"TilesetSource==ETilesetSource::FromCesiumIon"))
772 FString IonAccessToken;
777 DeprecationMessage =
"Use CesiumIonServer instead."))
778 FString IonAssetEndpointUrl_DEPRECATED;
789 meta = (EditCondition =
"TilesetSource==ETilesetSource::FromCesiumIon"))
800 TMap<FString, FString> RequestHeaders;
806 UFUNCTION(CallInEditor, Category =
"Cesium")
807 void TroubleshootToken();
822 Category =
"Cesium|Physics")
823 bool CreatePhysicsMeshes = true;
835 Category =
"Cesium|Physics",
836 meta = (EditCondition =
"CreatePhysicsMeshes"))
837 bool EnableDoubleSidedCollisions = false;
851 Category =
"Cesium|Navigation")
852 bool CreateNavCollision = false;
873 Category =
"Cesium|Rendering")
874 bool AlwaysIncludeTangents = false;
889 Category =
"Cesium|Rendering")
890 bool GenerateSmoothNormals = false;
902 Category =
"Cesium|Rendering")
903 bool EnableWaterMask = false;
919 Category =
"Cesium|Rendering",
920 meta = (DisplayName =
"Ignore KHR_materials_unlit"))
921 bool IgnoreKhrMaterialsUnlit = false;
930 Category =
"Cesium|Rendering")
931 bool ReceiveDecals = true;
945 Category =
"Cesium|Rendering")
946 UMaterialInterface* Material =
nullptr;
961 Category =
"Cesium|Rendering")
962 UMaterialInterface* TranslucentMaterial =
nullptr;
978 Category =
"Cesium|Rendering")
979 UMaterialInterface* WaterMaterial =
nullptr;
985 Category =
"Rendering",
986 meta = (ShowOnlyInnerProperties))
999 Category =
"Cesium|Rendering")
1010 Category =
"VirtualTexture",
1011 meta = (DisplayName =
"Draw in Virtual Textures"))
1012 TArray<TObjectPtr<URuntimeVirtualTexture>> RuntimeVirtualTextures;
1019 Category = VirtualTexture,
1020 meta = (DisplayName =
"Draw in Main Pass"))
1021 ERuntimeVirtualTextureMainPassType VirtualTextureRenderPassType =
1022 ERuntimeVirtualTextureMainPassType::Exclusive;
1040 Category = Rendering)
1041 int32 TranslucencySortPriority;
1048 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1051 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1054 UFUNCTION(BlueprintSetter, Category =
"Cesium")
1057 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1060 UFUNCTION(BlueprintSetter, Category =
"Cesium")
1063 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1066 UFUNCTION(BlueprintSetter, Category =
"Cesium")
1069 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1072 UFUNCTION(BlueprintSetter, Category =
"Cesium")
1075 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1078 UFUNCTION(BlueprintSetter, Category =
"Cesium")
1081 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1084 UFUNCTION(BlueprintSetter, Category =
"Cesium")
1087 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1090 UFUNCTION(BlueprintGetter, Category =
"VirtualTexture")
1092 return RuntimeVirtualTextures;
1095 UFUNCTION(BlueprintSetter, Category =
"VirtualTexture")
1097 TArray<URuntimeVirtualTexture*> InRuntimeVirtualTextures);
1099 UFUNCTION(BlueprintGetter, Category =
"VirtualTexture")
1101 return VirtualTextureRenderPassType;
1104 UFUNCTION(BlueprintGetter, Category = Rendering)
1107 UFUNCTION(BlueprintSetter, Category = Rendering)
1110 UFUNCTION(BlueprintSetter, Category =
"Cesium")
1113 UFUNCTION(BlueprintGetter, Category =
"Cesium")
1116 UFUNCTION(BlueprintSetter, Category =
"Cesium")
1119 UFUNCTION(BlueprintGetter, Category =
"Cesium|Tile Culling|Experimental")
1122 UFUNCTION(BlueprintSetter, Category =
"Cesium|Tile Culling|Experimental")
1125 UFUNCTION(BlueprintGetter, Category =
"Cesium|Tile Culling|Experimental")
1128 UFUNCTION(BlueprintSetter, Category =
"Cesium|Tile Culling|Experimental")
1131 UFUNCTION(BlueprintGetter, Category =
"Cesium|Tile Culling|Experimental")
1136 UFUNCTION(BlueprintSetter, Category =
"Cesium|Tile Culling|Experimental")
1139 UFUNCTION(BlueprintGetter, Category =
"Cesium|Physics")
1142 UFUNCTION(BlueprintSetter, Category =
"Cesium|Physics")
1145 UFUNCTION(BlueprintGetter, Category =
"Cesium|Physics")
1147 return EnableDoubleSidedCollisions;
1150 UFUNCTION(BlueprintSetter, Category =
"Cesium|Physics")
1153 UFUNCTION(BlueprintGetter, Category =
"Cesium|Navigation")
1156 UFUNCTION(BlueprintSetter, Category =
"Cesium|Navigation")
1159 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1162 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1165 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1168 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1171 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1174 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1177 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1179 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1182 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1184 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1187 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1190 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1193 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1195 return TranslucentMaterial;
1198 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1201 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1204 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1207 UFUNCTION(BlueprintGetter, Category =
"Rendering")
1209 return CustomDepthParameters;
1212 UFUNCTION(BlueprintSetter, Category =
"Rendering")
1215 UFUNCTION(BlueprintGetter, Category =
"Cesium|Rendering")
1217 return PointCloudShading;
1220 UFUNCTION(BlueprintSetter, Category =
"Cesium|Rendering")
1223 UFUNCTION(BlueprintCallable, Category =
"Cesium|Rendering")
1226 UFUNCTION(BlueprintCallable, Category =
"Cesium|Rendering")
1229 UFUNCTION(BlueprintCallable, Category =
"Cesium|Rendering")
1244 return this->_pTileset.Get();
1247 return this->_pTileset.Get();
1252 virtual void Tick(
float DeltaTime)
override;
1256 virtual void EndPlay(
const EEndPlayReason::Type EndPlayReason)
override;
1265 PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent)
override;
1266 virtual void PostEditChangeChainProperty(
1267 FPropertyChangedChainEvent& PropertyChangedChainEvent)
override;
1268 virtual void PostEditUndo()
override;
1269 virtual void PostEditImport()
override;
1284 class UPrimitiveComponent* MyComp,
1286 class UPrimitiveComponent* OtherComp,
1288 FVector HitLocation,
1290 FVector NormalImpulse,
1291 const FHitResult& Hit)
override;
1295 void DestroyTileset();
1299 const glm::dmat4& unrealWorldToTileset,
1302 std::vector<FCesiumCamera> GetCameras()
const;
1303 std::vector<FCesiumCamera> GetPlayerCameras()
const;
1304 std::vector<FCesiumCamera> GetSceneCaptures()
const;
1321 const std::shared_ptr<Cesium3DTilesSelection::GltfModifier>&
1332 const std::shared_ptr<Cesium3DTilesSelection::GltfModifier>& Modifier);
1355 UFUNCTION(CallInEditor)
1356 void HandleOnGeoreferenceEllipsoidChanged(
1373 void updateTilesetOptionsFromProperties();
1382 void updateLastViewUpdateResultState(
1391 void showTilesToRender(
1392 const std::vector<Cesium3DTilesSelection::Tile::ConstPointer>& tiles);
1399 void AddFocusViewportDelegate();
1402 std::vector<FCesiumCamera> GetEditorCameras()
const;
1413 void OnFocusEditorViewportOnThis();
1415 void RuntimeSettingsChanged(
1417 struct FPropertyChangedEvent& changed);
1419 void OnPreBeginPIE(
bool bIsSimulating);
1423 TUniquePtr<Cesium3DTilesSelection::Tileset> _pTileset;
1424 TWeakObjectPtr<UCesiumFeaturesMetadataComponent> _pFeaturesMetadataComponent;
1425 TWeakObjectPtr<UCesiumVoxelMetadataComponent> _pVoxelMetadataComponent;
1427 bool _destroyOnNextTick;
1429#ifdef CESIUM_DEBUG_TILE_STATES
1430 TUniquePtr<Cesium3DTilesSelection::DebugTileStateDatabase> _pStateDebug;
1433 PRAGMA_DISABLE_DEPRECATION_WARNINGS
1434 std::optional<FMetadataDescription> _metadataDescription_DEPRECATED;
1435 PRAGMA_ENABLE_DEPRECATION_WARNINGS
1441 UCesiumVoxelRendererComponent* _pVoxelRendererComponent =
nullptr;
1444 uint32_t _lastTilesRendered;
1445 uint32_t _lastWorkerThreadTileLoadQueueLength;
1446 uint32_t _lastMainThreadTileLoadQueueLength;
1448 uint32_t _lastTilesVisited;
1449 uint32_t _lastCulledTilesVisited;
1450 uint32_t _lastTilesCulled;
1451 uint32_t _lastTilesOccluded;
1452 uint32_t _lastTilesWaitingForOcclusionResults;
1453 uint32_t _lastMaxDepthVisited;
1455 std::chrono::high_resolution_clock::time_point _startTime;
1457 bool _captureMovieMode;
1458 bool _beforeMoviePreloadAncestors;
1459 bool _beforeMoviePreloadSiblings;
1460 int32_t _beforeMovieLoadingDescendantLimit;
1461 bool _beforeMovieUseLodTransitions;
1463 bool _scaleUsingDPI;
1477 std::vector<Cesium3DTilesSelection::Tile::ConstPointer> _tilesToHideNextFrame;
1479 int32 _tilesetsBeingDestroyed;
1481 std::shared_ptr<Cesium3DTilesSelection::GltfModifier> _pGltfModifier;
1489 UPROPERTY(Transient, DuplicateTransient, TextExportTransient)
1490 UObject* _pLifecycleEventReceiver;