Doesn't the scene graph of qt3d use the instancing and sort the draw calls
to reduce the number of state changes?
In our engine the win was big when I add the sort to reduce calls of
glUniform* and glBindTexture,... especially on Android and Windows.
We don't use instancing for the moment because it's hard for us to maintain
the backend, it's one of reasons I am planning the migration to qt3d.

In my opinion for qt3d the API have to expose a flag on entity to allow or
not automatic batching.
Else the automatic batching could be applied on meshes that doesn't have a
transformation and don't require to be rendered in a particular order (like
those with alpha).

I'll made some tests on our engine to evaluate the performance win, it may
be insignificance due to the sort.


2016-09-25 11:55 GMT+02:00 Sean Harmer <sean.har...@kdab.com>:

> Hi Xavier,
>
> On 23/09/2016 17:13, Xavier Bigand wrote:
>
>> Hi,
>>
>> Does qt3d backend capable to batch geometries to reduce the number of
>> draw calls?
>>
>> In our case this optimization should improve performances a lot, because
>> we generate dynamically geometries that doesn't change often and are
>> created in world coordinates (no transformations applied).
>>
>
> Qt 3D does not yet do batching automatically. However we do support stuff
> that may help you.
>
> * You can use instancing if you have GL 3.2 or newer
> * You can do your own batching by putting such geometry into a single
> buffer, either
>
> ** to be rendered as a single entity if you don't need interaction with
> the individual parts or
> ** to be rendered as separate entities with GeometryRenderer's all
> referencing the same Buffer.
>
> The latter doesn't reduce the draw call count but does minimise the state
> changes related to binding different buffers.
>
> We hope to add automatic batching in the future but we're still looking
> into a nice API to expose this without reducing the control the user has
> over organising their data.
>
> Cheers,
>
> Sean
>
>
>>
>>
>> --
>> Xavier
>>
>>
>> _______________________________________________
>> Interest mailing list
>> Interest@qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/interest
>>
>>
> --
> Dr Sean Harmer | sean.har...@kdab.com | Managing Director UK
> KDAB (UK) Ltd, a KDAB Group company
> Tel. +44 (0)1625 809908; Sweden (HQ) +46-563-540090
> Mobile: +44 (0)7545 140604
> KDAB - Qt Experts
> _______________________________________________
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>



-- 
Xavier
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to