Так, я собираюсь разработать клон Pac-человека с QT. Проблема состоит в том, что я действительно не знаю, где запустить.
Я быстро смотрю на документацию и некоторую демонстрацию. Я также загрузил некоторые игровые источники на qt-apps.org. И кажется, что существует много способов разработать игру с QT!
По вашему опыту, какую часть QT я должен рассмотреть для разработки клона Pac-Mac?
Любая справка ценилась бы.
Я думаю, что фреймворк QGraphicsView - лучший способ. Создайте QGraphicsScene , несколько QGraphicsItems для элементов игры. У вас есть обнаружение столкновений бесплатно.
Большинство игр KDE основаны на платформе QGraphicsView. Он хорошо подходит для простой разработки игр.
Как минимум вы захотите посмотреть QGLWidget . Вы можете получить программу OpenGL за несколько минут, производную от QGLWidget, она создаст окно, контекст, обработает ввод с помощью мыши и клавиатуры и т. Д. Создайте QTimer для запуска updateGL () каждые 10-15 мс или около того, и вам хорошо. Я думаю, что где-то есть демонстрация для настройки этого, но прошло некоторое время с тех пор, как я ее видел.
Если вы хотите встраивать виджеты в окно, я бы посмотрел на QGraphicsView . Существует демонстрация этого под названием боксы . Просто будьте осторожны, демонстрация немного сложна для изучения, поскольку несколько классов помещены в один и тот же файл, и может потребоваться несколько секунд трассировки, чтобы выяснить, где находится поток.
Поскольку вы занимаетесь 2-мерной игрой, вы можете использовать QPainter на в верхней части OpenGL . Это позволяет вам легко рисовать примитивы вместо того, чтобы делать их с помощью вызовов OpenGL. Я никогда не мог заставить это перестать мерцать в полноэкранном режиме.
Здесь есть книга о разработке игр на Qt , она немного устарела, но может дать вам некоторые идеи. Но IMHO, Qt основан на виджетах и немного медленен для игры, вы можете подумать об использовании SDL или OpenGL.
Я разрабатываю моделирование твердых тел с помощью Qt и OpenGL, используя PhysX API от Nvidia. Если вы хотите увидеть этот подход, посмотрите мой проект на github: http://github.com/lucassimao/Simulacao-Estereologica
Что ж, одно из мест, где можно посмотреть, - это среда разработки игр Gluon, которая в настоящее время находится в стадии разработки. Это зависит от того, к чему вы на самом деле стремитесь с клоном PacMan, но Gluon вполне может быть тем, что вам нужно: https://github.com/KDE/gluon
Хорошим началом было бы:
Возможно, если вам нужно схитрить, вы можете посмотреть здесь xpacman.tar.gz