glDrawElements を glDrawElementInstanced に変更すると、有効なプログラムで segfault が発生することがわかりました。コンパイルに問題はありません。gdb は、glDrawElementInstanced がセグメンテーション違反であると述べています。誰でも問題を推測できますか?
x86_64 GNU/Linux で実行されます。
CMakeLists.txt の一部:
cmake_minimum_required (VERSION 2.6)
project (sph)
find_package(OpenGL REQUIRED)
include_directories(
/usr/nvidia-current
.
)
set(ALL_LIBS
${OPENGL_LIBRARY}
glfw
GLEW
)
add_definitions(
-D_CRT_SECURE_NO_WARNINGS
)
target_link_libraries(sph
${ALL_LIBS}
)
セグメンテーションのサイト:
glDrawElementsInstanced(
GL_TRIANGLES,
indices.size(),
GL_UNSIGNED_SHORT,
(void *)0,
2
);