> For the complete documentation index, see [llms.txt](https://flora.magneticarcade.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://flora.magneticarcade.com/rendering/gpu-resident-drawer.md).

# GPU Resident Drawer

Flora and Unity GPU Resident Drawer solve similar rendering problems with different content ownership models.

## Guidance

* Use Flora when you need terrain foliage support, container workflows, or runtime-created instance populations.
* Use GPU Resident Drawer for MeshRenderer-driven workflows where its defaults fit your project.

## What This Affects

* Memory footprint at high instance counts.
* Authoring workflow (`GameObject`-centric vs data-driven instancing).
* Occlusion workload if both systems run.

***

## Content Model Differences

* **GPU Resident Drawer**: active `GameObject` + `MeshRenderer` driven.
* **Flora**: supports terrain, containers, and runtime instance data without requiring one render `GameObject` path per instance.

Related Flora workflows:

* [Terrain Provider](/scripts/terrain-provider.md)
* [Instance Container](/scripts/instance-container.md)
* [Runtime Samples](/samples/runtime-samples.md#fish-boids)

***

## Occlusion Interaction

Both systems maintain separate occlusion resources. Running both over overlapping content can duplicate GPU work.

## Practical Recommendation

For the same content path, prefer one primary instancing/occlusion strategy and profile scene cost.
