User Tag List

Resultados 1 al 8 de 8

Tema: Xcode + Interface Builder + OpenGL

  1. #1

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,546
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,657
    Agradecer Thanks Received 
    1,923
    Thanked in
    Agradecido 1,290 veces en [ARG:2 UNDEFINED] posts

    Unhappy Xcode + Interface Builder + OpenGL

    Hola, llevo un par de dias que me esto tirando de los pelos

    Quiero abrir una simple ventana para dibujar en opengl y lo quiero hacer usando el interface builder (IB), tengo eso mismo pero copiando uno de los ejemplos y quitando lo que no necesito, pero lo quiero hacer yo desde cero para enterarme.

    Yo sigo los siguentes pasos, por cierto uso el xcode 3.1.

    - Creo un proyecto cocoa
    - Si lo ejecuto sale una ventana vacia, todo ok
    - Le añado un NSOpenGLView a la ventada desde el IB, lo raro es que sale en negro y en los ejemplos esta sale en azul y con un nombre en el centro. Ademas con el inspector puedo poner los parametros de inicializacion (Formato de pixel, zbuffer...) pero en los ejemplos no puedo acceder a ellos .
    - Compilo y ejecuto y sale la ventana con un cuadrado en blanco (la ventana de opengl)
    - Creo un objeto en IB llamado openGLView y le pongo el siguiente codigo, ademas selecciono el NSOpenGLView y le digo que es de la clase openGLView, pero sale igual, ademas no parece que de error

    Código:
    -(id)initWithFrame: (NSRect)frame
    {
    	GLuint attribs[] = 
    	{
    		NSOpenGLPFANoRecovery,
    		NSOpenGLPFAWindow,
    		NSOpenGLPFAAccelerated,
    		NSOpenGLPFADoubleBuffer,
    		NSOpenGLPFAColorSize, 24,
    		NSOpenGLPFAAlphaSize, 8,
    		NSOpenGLPFADepthSize, 24,
    		NSOpenGLPFAStencilSize, 8,
    		NSOpenGLPFAAccumSize, 0,
    		0
    	} ;
    	
    	NSOpenGLPixelFormat* fmt = [[NSOpenGLPixelFormat alloc] initWithAttributes: (NSOpenGLPixelFormatAttribute*) attribs]; 
    	
    	if (!fmt)
    		NSLog(@"No OpenGL pixel format");
    	
    	self = [super initWithFrame:frame pixelFormat: [fmt autorelease]];
    	return self;
    }
    
    -(void) drawRect:(NSRect)rect
    {
    	[[self openGLContext] makeCurrentContext];
    	
    	glViewport(0, 0, (GLsizei) rect.size.width, (GLsizei) rect.size.height);
    
    	glClearColor(0, 0, 0, 0);
    	glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
    
    	glMatrixMode(GL_PROJECTION);
    	glLoadIdentity();
    	glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0);
    	glMatrixMode(GL_MODELVIEW);
    	glLoadIdentity();
    
    	glColor3f(1.0, 1.0, 1.0);
    	glBegin(GL_TRIANGLES);
    	glVertex2f(-0.5, -0.5);
    	glVertex2f( 0.5,  0.5);
    	glVertex2f( 0.5, -0.5);
    	glEnd();
    
    	[[self openGLContext] flushBuffer ];
    }
    ¿Alguna idea?

  2. #2

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,546
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,657
    Agradecer Thanks Received 
    1,923
    Thanked in
    Agradecido 1,290 veces en [ARG:2 UNDEFINED] posts
    jope que exito XD

  3. #3

    Fecha de ingreso
    Jan 2008
    Ubicación
    Madrid
    Mensajes
    4,451
    Mencionado
    14 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    87
    Agradecer Thanks Received 
    161
    Thanked in
    Agradecido 94 veces en [ARG:2 UNDEFINED] posts
    Buff, es que el Objetive-C es durillo y Cocoa no veas.
    No se si conoces GLUT, es una librería de utilidades y gestión de ventanas multiplataforma. Funciona igual en Macos, en Linux y en Windows. Aquí tienes un ejemplo de código.
    Última edición por hardyx; 25/02/2011 a las 22:40

  4. #4

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,546
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,657
    Agradecer Thanks Received 
    1,923
    Thanked in
    Agradecido 1,290 veces en [ARG:2 UNDEFINED] posts
    Si que conozco las glut pero lo quiero hacer con cocoa para aprender, pero por ahora la curva de aprendizaje tiene una pendiente de +infinito

  5. #5

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    22,749
    Mencionado
    226 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,240
    Agradecer Thanks Received 
    1,902
    Thanked in
    Agradecido 1,185 veces en [ARG:2 UNDEFINED] posts
    A la tarde te miro como va. Yo openGL lo toco en el iPhone, pero no difiere mucho del Cocoa de Mac (tb he hecho algunas cosillas para Mac).

  6. #6

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,546
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,657
    Agradecer Thanks Received 
    1,923
    Thanked in
    Agradecido 1,290 veces en [ARG:2 UNDEFINED] posts
    Es curioso porque sigo esto al pie de la letra y no funciona

    [media]http://www.youtube.com/watch?v=L5dGZMkdzSo[/media]
    < - >
    Por fin!!!!1!!!!

    para que aprendais de mi error
    http://www.idevgames.com/forums/thread-4391.html
    http://developer.apple.com/library/m...04/qa1167.html
    Última edición por swapd0; 27/02/2011 a las 00:06 Razón: Edición automática anti doble-post.

  7. #7

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    22,749
    Mencionado
    226 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,240
    Agradecer Thanks Received 
    1,902
    Thanked in
    Agradecido 1,185 veces en [ARG:2 UNDEFINED] posts
    Perdona que no te haya respondido pero ayer me subi a la montaña con la moto, vine muerta y ni miré el foro xD
    Me alegro que se te haya solucionado

  8. #8

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,546
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,657
    Agradecer Thanks Received 
    1,923
    Thanked in
    Agradecido 1,290 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por ^MiSaTo^ Ver mensaje
    Perdona que no te haya respondido pero ayer me subi a la montaña con la moto, vine muerta y ni miré el foro xD
    Me alegro que se te haya solucionado
    No problemo, ademas se aprende mas solucionando uno mismo los problemas que pidiendo ayuda pero es que estaba desesperado

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •