Подтвердить что ты не робот

Разработка игр с Qt: где искать в первую очередь?

Итак, я собираюсь разработать клон Pac-Man с Qt. Проблема в том, что я не знаю, с чего начать.

Я быстро просмотрю документацию и демонстрацию. Я также загрузил некоторые источники игры на qt-apps.org. И кажется, что существует много способов разработки игры с Qt!

В вашем опыте, какую часть Qt следует рассмотреть, чтобы разработать клон Pac-Mac?

  • Анимационная структура
  • Графическая среда просмотра
  • Система Paint
  • Декларация Qt

Любая помощь будет оценена.

4b9b3361

Ответ 1

Я думаю, что фреймворк QGraphicsView - лучший способ. Создайте QGraphicsScene, несколько QGraphicsItems для элементов игры. У вас есть обнаружение столкновений бесплатно.

Большинство игр KDE основаны на фреймворке QGraphicsView. Это хорошо подходит для простой разработки игр.

Ответ 2

В настоящее время я работаю над проектом, предоставляющим игровые компоненты Qt Quick Components для кросс-платформенной разработки игр: http://v-play.net:)

Ответ 3

Как минимум вы захотите посмотреть QGLWidget. Вы можете получить программу OpenGL за несколько минут, выйдя из QGLWidget, она создаст окно, контекст, обработает ввод мыши и клавиатуры и т.д. Создайте QTimer, чтобы вызвать updateGL() каждые 10-15 мс или около того, и ваше добро. Я думаю, что есть демо-версия для настройки, но прошло некоторое время с тех пор, как я это увидел.

Если вы хотите вставлять виджеты в окно, я бы посмотрел QGraphicsView. Существует демо этого boxes. Просто остерегайтесь демонстрации, которую трудно изучить, поскольку несколько классов бросаются в один и тот же файл, и может потребоваться несколько минут трассировки, чтобы выяснить, где находится поток.

Поскольку вы делаете игру 2d, вам может потребоваться использовать QPainter на верх OpenGL. Это позволяет легко рисовать примитивы, а не делать их с помощью вызовов OpenGL. Я никогда не мог заставить это перестать мерцать в полноэкранном режиме.

Ответ 4

Я разрабатываю симуляцию жестких тел с Qt и OpenGL, используя PhysX API от Nvidia. Если вы хотите увидеть этот подход, посмотрите мой проект в github: http://github.com/lucassimao/Simulacao-Estereologica

Ответ 5

Там есть книга о разработке игр в Qt здесь, это немного устарело, но это может дать вам некоторые идеи. Но IMHO, Qt является виджетами и немного медленнее для игры, вы можете подумать об использовании SDL или OpenGL.

Ответ 7

Ну, одно место для поиска может быть основой разработки игр Gluon, которая в настоящее время находится в разработке. Это зависит от того, на что вы действительно нацелились с вашим клоном PacMan, но Gluon вполне может быть тем, что вам нужно: https://github.com/KDE/gluon

Ответ 8

Если кто-то еще заинтересован в том, чтобы научиться делать ИГРЫ, используя C++ и Qt, взгляните на мою серию руководств на YouTube. Это объясняет структуру графического представления через серию видео, которые основаны на одной игре, которую мы начнем в уроке 1.

C++ Урок по Qt Game 8 - Добавление графики

Если вы еще не знакомы с Qt, то мне ДЕЙСТВИТЕЛЬНО понравилась серия руководств по VoidRealm Qt, также на youtube (C++ Qt 1 - Введение в программирование на QT).