Индикатор кругового обзора на OpenGl в Qt 5.2?

Доброй пятницы уважаемые хабровчане!
Для начала опишу проблему.
Я учусь на четвёртом курсе МГТУ МИРЭА и при этом прохожу обучение на военной кафедре. Так вот. Задали написать программу, которая эмулирует работу индикатора кругового обзора (может помните тележурнал "Каламбур" - там перед каждой серией "Крутого пике" мужик вырывает из себя клок волос, сидя возле как раз этого индикатора.).
Я вообще-то Web-программист, поэтому навыки по созданию десктопных приложений ограничиваются академическими, весьма посредственными, знаниями. На Qt я программировал за свою жизнь всего 3 раза, и то - простенькие лабораторные для университета. C++ я последний раз порывался изучить года два назад и к настоящему моменту основательно его подзабыл.

Я нарисовал с помощью OpenGl этот самый локатор (пока без каких-либо функций). На данный момент он представляет собой круглый дисплей, по которому по кругу движется стрелка, которая "обновляет" данные на экране - пассивные помехи и отрисовывает отметки дальности и азимута.

Теперь собственно к вопросу. Я не знаком со спецификой разработки десктопных приложений, да тем более мало что знаю про Opengl. А проблема в следующем: на кафедре стоят допотопные Pentium 2, Pentium3. Возможно ли сделать так, чтобы программа на них не тормозила? И если да - что можно сделать для этого по коду (ссылка на репозиторий чуть ниже).

А также прошу посмотреть мой код (который, как я подозреваю, полное дерьмо) и, возможно, дать какие-то советы по реализации, предложения по оптимизации, указать на ошибки. Возможно посоветуете какую-либо полезную по теме литературу.

Заранее большое спасибо.

P.S. Я пишу под Ubuntu Gnome 13.10, но под Windows тоже должно нормально запуститься.

Ссылка на репозиторий
  • Вопрос задан
  • 4342 просмотра
Пригласить эксперта
Ответы на вопрос 2
kulinich
@kulinich
С++ программист
По поводу загрузки процессора и алгоритма отрисовки могу посоветовать фрагмент из книги "Юрий Щупак. Win32 API Эффективная разработка приложений".
Там на странице 527 описывают "программный имитатор", а на странице 539-540 пример ускорения отрисовки. Я понимаю, что вам opengl надо, но все равно алгоритм отрисовки можно и на Win32 API понять.
Ответ написан
PavelK
@PavelK
На винде у видяхи должна быть поддержка OpenGl, а так же сам Qt должен быть собран с поддержкой OpenGl , по умолчанию он собран с Agile а это жуткие тормоза.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы