Class: Bestguigui::GLBuffer

Inherits:
Object
  • Object
show all
Defined in:
lib/bestguigui_lab/gl_buffer.rb

Overview

Envoie un buffer de floats vers un VBO OpenGL (GL_ARRAY_BUFFER) et renvoie son nom — utilisé par ObjModel pour charger sa géométrie.

Class Method Summary collapse

Class Method Details

.upload(data) ⇒ Object



7
8
9
10
11
12
13
14
15
16
# File 'lib/bestguigui_lab/gl_buffer.rb', line 7

def self.upload(data)
    name_buffer = "\x00" * 4
    glGenBuffers(1, name_buffer)
    vbo = name_buffer.unpack1('L')

    glBindBuffer(GL_ARRAY_BUFFER, vbo)
    glBufferData(GL_ARRAY_BUFFER, data.bytesize, data, GL_STATIC_DRAW)

    vbo
end