>[оверквотинг удален]
> было грамотно написано, а вы пишете про какую-то чушь :)
> Все оптимизации строятся на том что рендерер видит сразу всю сцену и
> может производить различные оптимизации, а как уж там мы наполняли эту
> сцену - тут похер, можем через декларативный qml, либо из императивного
> си++ еслиб они предоставили какой-нибудь нормальный апи для этого.
> И то что мы наполнили сцену, используя императивный апи, совсем не значит
> что мы не можем повесить колбэк на какое-то из свойств объекта
> и динамически его вычислять только при надобности, если вдруг рендерер захочет
> нарисовать этот объект (видимо это до вас не доходит).
> И никаких уникальных оптимизаций интерпретатор qml не выполняет.Я, вероятно, недостаточно хорошо выразился. Очевидно же, что декларативный подход оставляет больше свободы для, гм, интерпретации кода, нежели чем императивный. В декларативном случае проще соблюдать инварианты при преобразованиях (и оптимизациях в том числе) — в императивном случае все равно придется строить и поддерживать этакую картину состояния системы, убеждаясь, что после оптимизаций код все равно обеспечивает изоморфное преобразование из одного состояния в другое. Это весьма затрудняет построение оптимизатора.
А рендерер всю сцену уже со времен QGraphicsView видит, тащем-та.
Еще раз, декларативно можно и на плюсах писать, но зачем? Все равно вы в конечном счете придете к какому-то (embedded) domain-specific language, так почему бы сразу не писать на нем? :)