Я играл с gl-rs
, и в исходном уроке opengl они установили VertexAttribPointer
, а это смещение:
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 6 * sizeof(float), (void*)0);
glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 6 * sizeof(float), (void*)(3* sizeof(float)));
С gl-rs
я не могу понять, как установить смещение (void*)(3* sizeof(float)
. Я могу установить (void*)0
с помощью:
gl::VertexAttribPointer(
0,
3,
gl::FLOAT,
gl::FALSE,
(6 * std::mem::size_of::<f32>()) as gl::types::GLint,
std::ptr::null(), // offset
);
Как мне установить различные значения, такие как (void*)(3* sizeof(float)
для смещения? Я не знаком с C, поэтому объяснения приветствуются.