Если рендеринг QML аппаратно ускорен, разве этот простой пример не превосходит эквивалентную реализацию в Qt classic?Почему этот код QML имеет низкую производительность?
import QtQuick 2.3
import QtQuick.Controls 1.2
ApplicationWindow {
id: app
visible: true
width: 640
height: 480
Column {
id: cc
property real val: 0
Row {
spacing: 10
TextField {
id: numRows
text: "1"
property int value: parseInt(text);
validator: IntValidator { bottom: 1; top: 100; }
}
TextField {
id: numCols
text: "1"
property int value: parseInt(text);
validator: IntValidator { bottom: 1; top: 100; }
}
}
Repeater {
model: numRows.value
Row {
Repeater {
model: numCols.value
Slider {
width: app.width/numCols.value
height: 18.5
value: cc.val
onValueChanged: cc.val = value
}
}
}
}
}
}
Я Идея заключается в том, чтобы заполнить экран с строками и столбцами ползунков, и имеет каждый слайдер подключаться к любому другому слайдеру. Для моего экрана я использую 55 строк и 20 столбцов. Когда я перемещаю слайдер, я ожидаю увидеть текущее движение всех слайдеров на экране, но частота кадров очень низкая (я бы догадался от 5 до 10 кадров в секунду). У меня очень мускулистый графический процессор, и я ожидал гораздо лучшей производительности. Что может быть неправильным?
Вы используете OpenGL или УГЛА строить? – dtech
@ddriver Я уверен, что это сборка OpenGL. Есть ли большая разница в производительности между этими двумя? – Arlen