Skip to content

Provide clear information about performance #8

Open
@kukumberman

Description

@kukumberman

According to your statement - it can handle 10 million instances
https://github.com/ColinLeung-NiloCat/UnityURP-MobileDrawMeshInstancedIndirectExample?tab=readme-ov-file#can-this-demo-runs-on-midrange-mobile

Grass position buffer per instance takes 12 bytes (float3)
https://github.com/ColinLeung-NiloCat/UnityURP-MobileDrawMeshInstancedIndirectExample/blob/master/Assets/URPMobileGrassInstancedIndirectDemo/InstancedIndirectGrass/Core/CullingCompute.compute#L9

So count of 10M takes only 120 MB of VRAM (there is also dynamic buffer of visible grass indices which takes max 40 MB).

In my case only number of visible instances has impact on performance.

Here is my benchmark on Redmi Note 11 (Adreno 610).

Mesh (11 vertices, 7 triangles)

visible count tris count fps
100k 700k 25
50k 350k 35

Mesh (3 vertices, 1 triangle)

visible count tris count fps
100k 100k 30
50k 50k 36

I appreciate your work and I learned and lot 🤩

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions