For the complete documentation index, see llms.txt. This page is also available as Markdown.

Upgrade from 6.3.35

Upgrade projects and runtime code from Flora 6.3.35.

Review these changes when upgrading runtime code or serialized settings.

Instance relationships

Instance relationship APIs now use three concrete roles: Prefab, RenderDefinition, and Owner.

Previous API
Replacement

FloraInstanceFilter.ByIdentitySource(...)

FloraInstanceFilter.ByPrefab(...)

FloraInstanceFilter.ByRenderSource(...)

FloraInstanceFilter.ByRenderDefinition(...)

IdentitySourceGameObjectID

Prefab

RenderSourceGameObjectID

RenderDefinition

OwnerGameObjectID

Owner

GetInstanceIdentitySource(...)

GetInstancePrefab(...)

GetInstanceRenderSource(...)

GetInstanceRenderDefinition(...)

The previous names remain as obsolete compatibility aliases until a future version. Serialized FloraInstanceFilter fields migrate automatically. Constructor named arguments use prefab, owner, and renderDefinition.

GetInstancePrefab(...) now returns null for scene-only renderers instead of returning the scene object as an identity fallback. Use GetInstanceRenderDefinition(...) when you need the object supplying render data.

See System for the role definitions and common mappings.

Rendering configuration

  • Enable GPU Occlusion Culling replaces Disable GPU Occlusion Culling. Serialized behavior is preserved.

  • Renderer, LODGroup, Terrain, and Camera settings replace the removed scene-level feature gates.

  • Range-density controls now belong to FloraRenderSettings.

Writable Volume Profiles migrate FloraDensitySettings automatically. FloraRenderSettings wins conflicting overrides. Read-only profiles and GetGlobalDensitySettings() remain compatible with 6.x.

Terrain details

Terrain details are transient GPU data. They have no FloraInstanceHandle and do not appear in queries. ByDetails() and TerrainDetail are obsolete and never match.

Terrain detail streaming is automatic. The former streaming mode, responsiveness, and work-budget controls have been removed. Use DetailUnloadHysteresisSeconds to configure only the unload grace period.

Requested density maps are imported in coalesced patch ranges, ready patch layers are generated atomically on the GPU, and expired patches are released immediately.

See Scene Settings.

Runtime-created instance layers

The CreateInstance(...) and CreateInstances(...) overloads accept FloraPrefabLayerSource:

  • Owner uses the owner or parent layer and remains the default.

  • Prefab uses the prefab's layer.

Variation colors

Submit colors with SetInstanceVariationColor(...) or SetInstanceVariationColors(...). Keep readable state in caller-owned data.

The obsolete GetInstanceVariationColor(...) always throws NotSupportedException and will be removed in the future.

Last updated