Как хобби, я работал над переделкой старой видеоигры, и я хочу избежать возможности изобретать колесо там, где это возможно. Игра в значительной степени основана на графическом интерфейсе, но графический интерфейс должен быть настроен с точки зрения внешнего вида, а также должен работать с 3D-рендерингом OpenGL для нескольких игровых экранов.Qt библиотека для разработки 2D/3D игр
Чтобы дать вам идею, вот скриншот от первоначального прототипа:
Там много анимации используется, и 3D также, но GUI виджеты ведут себя так же, как в стандартном настольного приложения.
До сих пор я использовал свою собственную графическую библиотеку (она не является надежной или полной, и я столкнулся с некоторыми проблемами).
Я рассматриваю возможность перехода на Qt с учетом его репутации и впечатляющих функций, а также некоторых хороших скриншотов на веб-сайте Qt. Но я никогда раньше не использовал Qt, поэтому у меня нет понятия о том, на что он способен, или о том, какое время потребуются для изучения. (Примечание. Я использовал FLTK).
Мой вопрос: было бы возможно/практично использовать Qt в этой ситуации?
UPDATE: После издевательства над некоторыми игровыми экранами в Qt я решил не использовать его. Хотя он поддерживает многие функции, которые мне нужны из коробки (особенно через таблицы стилей), мне нужно поддерживать настраиваемые предварительно обработанные шрифты на основе растровых изображений (я не могу их преобразовать или заменить). И я не могу подклассировать QFont или переопределить его без его взлома в будущих выпусках Qt. Тем не менее, я был очень впечатлен Qt (как в простоте использования, так и в хорошей документации). Я буду заимствовать некоторые его функции для своего собственного движка. Спасибо всем, кто внес вклад.
Простой ответ: да, его возможно/практично использовать Qt в этой ситуации. Чтобы получить более эффективный ответ, вы можете рассмотреть вопрос о более подробном вопросе или перечислить некоторые сомнения, которые могут возникнуть в Qt. – Brady
Взгляните на архитектуру 'QGraphicsView' /' QGraphicsScene', она должна быть близка к тому, что вам нужно. – cmannett85
Спасибо, ребята. Ну, я никогда не использовал Qt, поэтому моя главная задача - потратить много времени на изучение этого, чтобы найти, что он не может делать то, в чем я нуждаюсь. Класс QGraphicsView, похоже, поддерживает некоторые функции, которые мне нужны. Другой пример, который мне нужен, - это не прямоугольные кнопки, например. с наклонными краями (мой существующий код использует маску изображения для принятия/отклонения событий мыши). Будет ли Qt легко разрешать такие подвиги? – QuasarDonkey