Я не могу найти, как использовать wxPython с существующим контекстом OpenGL. Я знаю, как использовать wxPython самостоятельно и создать свое собственное окно, но возможно ли использовать контекст, используемый окном Windows?
Итак, у меня есть движок, написанный на C ++, который использует OpenGL. Я планирую использовать Python для элементов пользовательского интерфейса. Я собираюсь связать Python с C ++ (это не должно быть проблемой), но возможно ли использовать wxPython в части Python и заставить его использовать контекст OpenGL из существующего окна?
РЕДАКТИРОВАТЬ: Для тех, кто пытался это раньше, будет этот Работа?
В любом случае, я думаю, вам придется написать собственный класс wxPython в качестве обёртки вокруг контекста GL игрового движка.
Простой способ структурировать программу — использовать wxPython в качестве основного элемента управления. Вы создаете представление игрового движка из Python как объект Python и запускаете цикл событий wxPython. Каждый раз, когда пользовательский вид обновляется или останавливается, он может вызывать код игрового движка C ++.
Если вам нужно написать main () C ++ для игрового движка и использовать цикл событий игрового движка, это будет намного сложнее. wxPython и wxWidgets, как и большинство GUI-инструментариев, написаны в предположении, что они являются основным циклом событий и имеют полный контроль над событиями. Вам нужно будет выяснить, как вызывать внутренний цикл обработчика события wxPython один раз за кадр.
Надеюсь это поможет.