X11 opengl на снежном барсе - PullRequest
0 голосов
/ 27 мая 2011

Я унаследовал старую кодовую базу, используя OpenGL внутри X11. Заголовок включает в себя как это

#include <stdio.h> 
#include <stdlib.h> 
#include <sys/types.h> 
#include <sys/stat.h> 
#include <X11/Intrinsic.h>
#include <GL/glx.h>
#include <GL/gl.h>
#include <X11/cursorfont.h>

Я хочу перенести это на Snow Leopard, моя основная проблема на данный момент в том, что я не могу получить правильные заголовки или, может быть, я должен сказать, что не могу заставить xcode связываться с правильными заголовками. Мне нужно использовать такие вещи, как

GLXDrawable drawable; 
XVisualInfo *ptr;
GLXContext MainContext;
XSetWindowAttributes wa;

Я пытался установить X11 dev (я пытался http://xquartz.macosforge.org/trac/wiki, я пытался использовать fink для установки x11 opengl dev libs и ...). Очевидно, я не программист на C (хотя у меня довольно хороший опыт разработки Objective c и iOS). Любая помощь будет оценена.

1 Ответ

1 голос
/ 27 мая 2011

Сервер X11 для MacOS X довольно ограничен и, по моему опыту, имеет довольно слабую поддержку OpenGL.Поэтому вместо того, чтобы пытаться втиснуть квадратную свинью в круглое отверстие, я бы просто использовал MacOS X нативный OpenGL API.Вероятно, самый простой способ сделать вашу вещь переносимой - это заменить все эти специфичные для окон вещи на GLFW, аккуратную оболочку OpenGL для X11 / GLX, Win32 и MacOS X, которая заботится о создании контекста OpenGL и вводе пользователем.Кстати, пользовательский ввод: вам тоже придется его настроить.

Не поймите меня неправильно, мне действительно нравится X11 / GLX.И если бы у меня не было такого плохого опыта с поддержкой сервера MacOS X (Leopard) X11 для OpenGL, я бы с удовольствием дал совет, как с этим справиться.Но я думаю, что в конце вы сохраните здравомыслие, если просто замените этот код X11 на GLFW.

...