Menu

About 2D rendering performance

kgm
2017-07-04
2017-07-04
  • kgm

    kgm - 2017-07-04

    In case you missed the topic Michalis :) http://forum.lazarus.freepascal.org/index.php?topic=37363.msg251344#msg251344

    For people who already familiar with the engine, we know there're many ways to overcome the engine's weakness but for new people who just download the engine and try it's 2D demos they may get bad first impression from the demo's performance. I think it's time for us to implement proper batching for the engine, or at least, it's 2D routines.

    What do you think?

     
    • Michalis Kamburelis

      Thanks for linking this Lazarus forum thread, I would have missed it otherwise.

      I agree the automatic batching is very needed, but there are other needed features too :) For now, I think that the order of https://castle-engine.sourceforge.io/planned_features.php is more-or-less good: Delphi compatibility and API improvements and basic visual editing (GLScene-like) (6.4 release), physics (6.6 release). I think that these are most pressing needs.

      The rest is more fluid in my mind now: I'm not sure yet what to attack for 6.8 release. Batching can be a good option:)

      Of course, I would also welcome contibutions here, so if you want to attack this, I would be most grateful. I must admit though that it may not be easy, it needs to be well-thought where to actually place batching, to make implementation easy. I had an idea once to do batching by combining multiple TGeometryArrays instances (right now, each TShape just returns one TGeometryArrays instance). But that's just one idea, one needs to try it and see how it works in practice :)

      I'll add some more comments at the Lazarus thread :) Thanks again!

       

Anonymous
Anonymous

Add attachments
Cancel