Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





pregunta básica.. cómo reescribir atributos de vertice?

Iniciado por killgates, 29 de Diciembre de 2015, 11:07:27 PM

« anterior - próximo »

killgates

Hola,

Eso! . Que no se cómo reescribir atributos de vértice una vez ya los he pasado con glVertexAttribPointer();

Tengo modelos 3d que están divididos en varios submodelos, y cada uno de ellos los tengo en arreglos diferentes.
Mi intención es pasar uno a uno los arreglos y dibujarlos, para luego mostrar en pantalla.
No se si existe otra forma de hacerlo.

Gracias,

Ray

no sé exactamente lo que quieres decir.

pero yo creo que teniendo cada modelo en un VBO en la memoria gráfica basta con hacer el bind del VBO correspondiente justo antes de dibujar sin tener que pasar nada a ningún lado.

killgates

#2
Ya. Pero estoy utilizando shaders...
Quieres decir que active un buffer cada vez, y luego lo envíe con glvertexattribpointer()?

Entonces cada vez que reenvío atributos de vértice al shader, los sobreescribo?

O he de utilizar un shader para cada "objeto" del juego?

Ray

A ver, el shader y los atributos de vértice le dicen a la tarjeta cómo lo tiene que dibujar, y los vértices y las texturas le dicen qué es lo que tiene que dibujar. Todos los datos residen en objetos, que se llaman por su abreviatura, en el caso en el caso de los arrays de vertices, VBO, y no es otra cosa que bloques de memoria que normalmente residirán en la VRAM, así que no son necesarios "enviarlos" más que una vez, cuando se cargan con glBufferData.

crea y carga cada submodelo en un VBO y establece sus atributos, si no recuerdo mal opengl asignará esos atributos de vértice al buffer actual enlazado con glBindBuffer(GL_ARRAY_BUFFER.

Luego para dibujar basta con enlazar el buffer que se vaya a usar y opengl lo usará en el próximo dibujado con glDrawArrays o glDrawElements.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.