rpg_esim
rpg_esim copied to clipboard
glGetError: opengl_renderer.cpp:438] something went wrong while reading pixels: 1282
when I run roslaunch esim_ros esim.launch config:=cfg/opengl.conf
, I have get these errors:
I0907 11:57:29.156168 10852 data_provider_online_render.cpp:63] Horizontal FOV: 61.7164 deg
I0907 11:57:29.156272 10852 data_provider_online_render.cpp:64] Vertical FOV: 48.2168 deg
I0907 11:57:29.156277 10852 data_provider_online_render.cpp:65] Diagonal FOV: 73.4823 deg
I0907 11:57:29.444448 10852 model.h:54] will load model at: /home/ian/catkin_ws/src/rpg_esim/event_camera_simulator/imp/imp_opengl_renderer/resources/objects/sponza/sponza.obj
I0907 11:57:29.579762 10852 opengl_renderer.cpp:118] Successfully set up multisampled color and depth framebuffers
I0907 11:57:29.580186 10852 opengl_renderer.cpp:141] Successfully set up color and depth framebuffers
I0907 11:57:29.580565 10852 opengl_renderer.cpp:164] Successfully set up optic flow framebuffer
ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ
ERROR::PROGRAM_LINKING_ERROR of type: PROGRAM
Vertex info
(0) : error C5145: must write to gl_Position
ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ
ERROR::PROGRAM_LINKING_ERROR of type: PROGRAM
Vertex info
(0) : error C5145: must write to gl_Position
something went wrong while reading pixels: 502
E0907 11:57:29.595811 10852 opengl_renderer.cpp:438] something went wrong while reading pixels: 1282
Hello, It seems that the program failed to load the shaders (vertex and fragment shaders). This happens at these two lines:
- https://github.com/uzh-rpg/rpg_esim/blob/master/event_camera_simulator/imp/imp_opengl_renderer/src/opengl_renderer.cpp#L167
- https://github.com/uzh-rpg/rpg_esim/blob/master/event_camera_simulator/imp/imp_opengl_renderer/src/opengl_renderer.cpp#L170 .
The absolute path to the shaders should be found automatically via the FileSystem::getPath()
function, but for some reason it doesn't seem to work for you.
Could you please report the value of FileSystem::getPath("src/shader.vert").c_str()
to help me debug? You may add the following line:
LOG(INFO) << FileSystem::getPath("src/shader.vert").c_str();
, then recompile, run the program again and check the console output.
Meanwhile, you may hard code the absolute path of the shaders (they are in imp_opengl_renderer/src
), which should temporarily solve your issue.
Thanks, Henri