mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-10 03:51:25 +00:00
with viz, this "supposedly" reverses everything (but doesn't)
This commit is contained in:
1 parent
820715bd40
commit
7436f088da
2 files changed
+55
-4
No files matched your search
+53
-2
@@ -24,8 +24,22 @@ pub fn run(capture_provider: Arc<CaptureProvider>, calibration_data: k4a_sys::k4
|
||||
enable_opengl_debugging();
|
||||
|
||||
let mut last_texture_id = 0;
|
||||
let mut last_array_buffer_id = 0;
|
||||
let mut last_element_array_buffer_id = 0;
|
||||
let mut last_pixel_unpack_buffer_id = 0;
|
||||
let mut last_renderbuffer_binding = 0;
|
||||
let mut last_vertex_array_binding = 0;
|
||||
let mut last_draw_framebuffer_binding = 0;
|
||||
let mut last_read_framebuffer_binding = 0;
|
||||
unsafe {
|
||||
gl::GetIntegerv(gl::TEXTURE_BINDING_2D, &mut last_texture_id);
|
||||
gl::GetIntegerv(gl::ARRAY_BUFFER_BINDING, &mut last_array_buffer_id);
|
||||
gl::GetIntegerv(gl::ELEMENT_ARRAY_BUFFER_BINDING, &mut last_element_array_buffer_id);
|
||||
gl::GetIntegerv(gl::PIXEL_UNPACK_BUFFER_BINDING, &mut last_pixel_unpack_buffer_id);
|
||||
gl::GetIntegerv(gl::RENDERBUFFER_BINDING, &mut last_renderbuffer_binding);
|
||||
gl::GetIntegerv(gl::VERTEX_ARRAY_BINDING, &mut last_vertex_array_binding);
|
||||
gl::GetIntegerv(gl::DRAW_FRAMEBUFFER_BINDING, &mut last_draw_framebuffer_binding);
|
||||
gl::GetIntegerv(gl::READ_FRAMEBUFFER_BINDING, &mut last_read_framebuffer_binding);
|
||||
}
|
||||
|
||||
let mut visualizer = PointCloudVisualizer::new(
|
||||
@@ -35,6 +49,13 @@ pub fn run(capture_provider: Arc<CaptureProvider>, calibration_data: k4a_sys::k4
|
||||
|
||||
unsafe {
|
||||
gl::BindTexture(gl::TEXTURE_2D, last_texture_id as u32);
|
||||
gl::BindBuffer(gl::ARRAY_BUFFER, last_array_buffer_id as u32);
|
||||
gl::BindBuffer(gl::ELEMENT_ARRAY_BUFFER, last_element_array_buffer_id as u32);
|
||||
gl::BindBuffer(gl::PIXEL_UNPACK_BUFFER, last_pixel_unpack_buffer_id as u32);
|
||||
gl::BindRenderbuffer(gl::RENDERBUFFER, last_renderbuffer_binding as u32);
|
||||
gl::BindVertexArray(last_vertex_array_binding as u32);
|
||||
gl::BindFramebuffer(gl::DRAW_FRAMEBUFFER, last_draw_framebuffer_binding as u32);
|
||||
gl::BindFramebuffer(gl::READ_FRAMEBUFFER, last_read_framebuffer_binding as u32);
|
||||
}
|
||||
|
||||
let mut texture = ViewerImage::create(
|
||||
@@ -71,7 +92,26 @@ pub fn run(capture_provider: Arc<CaptureProvider>, calibration_data: k4a_sys::k4
|
||||
//gl::Clear(gl::COLOR_BUFFER_BIT);
|
||||
}
|
||||
|
||||
/*visualizer.update_texture(&texture, capture)
|
||||
let mut last_texture_id = 0;
|
||||
let mut last_array_buffer_id = 0;
|
||||
let mut last_element_array_buffer_id = 0;
|
||||
let mut last_pixel_unpack_buffer_id = 0;
|
||||
let mut last_renderbuffer_binding = 0;
|
||||
let mut last_vertex_array_binding = 0;
|
||||
let mut last_draw_framebuffer_binding = 0;
|
||||
let mut last_read_framebuffer_binding = 0;
|
||||
unsafe {
|
||||
gl::GetIntegerv(gl::TEXTURE_BINDING_2D, &mut last_texture_id);
|
||||
gl::GetIntegerv(gl::ARRAY_BUFFER_BINDING, &mut last_array_buffer_id);
|
||||
gl::GetIntegerv(gl::ELEMENT_ARRAY_BUFFER_BINDING, &mut last_element_array_buffer_id);
|
||||
gl::GetIntegerv(gl::PIXEL_UNPACK_BUFFER_BINDING, &mut last_pixel_unpack_buffer_id);
|
||||
gl::GetIntegerv(gl::RENDERBUFFER_BINDING, &mut last_renderbuffer_binding);
|
||||
gl::GetIntegerv(gl::VERTEX_ARRAY_BINDING, &mut last_vertex_array_binding);
|
||||
gl::GetIntegerv(gl::DRAW_FRAMEBUFFER_BINDING, &mut last_draw_framebuffer_binding);
|
||||
gl::GetIntegerv(gl::READ_FRAMEBUFFER_BINDING, &mut last_read_framebuffer_binding);
|
||||
}
|
||||
|
||||
visualizer.update_texture(&texture, capture)
|
||||
.map(|_| {
|
||||
println!("UPDATED TEXTURE!");
|
||||
})
|
||||
@@ -83,7 +123,18 @@ pub fn run(capture_provider: Arc<CaptureProvider>, calibration_data: k4a_sys::k4
|
||||
unreachable!("Error: {:?}", err);
|
||||
}
|
||||
}
|
||||
});*/
|
||||
});
|
||||
|
||||
unsafe {
|
||||
gl::BindTexture(gl::TEXTURE_2D, last_texture_id as u32);
|
||||
gl::BindBuffer(gl::ARRAY_BUFFER, last_array_buffer_id as u32);
|
||||
gl::BindBuffer(gl::ELEMENT_ARRAY_BUFFER, last_element_array_buffer_id as u32);
|
||||
gl::BindBuffer(gl::PIXEL_UNPACK_BUFFER, last_pixel_unpack_buffer_id as u32);
|
||||
gl::BindRenderbuffer(gl::RENDERBUFFER, last_renderbuffer_binding as u32);
|
||||
gl::BindVertexArray(last_vertex_array_binding as u32);
|
||||
gl::BindFramebuffer(gl::DRAW_FRAMEBUFFER, last_draw_framebuffer_binding as u32);
|
||||
gl::BindFramebuffer(gl::READ_FRAMEBUFFER, last_read_framebuffer_binding as u32);
|
||||
}
|
||||
|
||||
//println!("swapping buffers");
|
||||
//gl_window.swap_buffers().unwrap();
|
||||
|
||||
@@ -256,8 +256,8 @@ impl PointCloudVisualizer {
|
||||
|
||||
println!("-> gl::Enable(DEPTH_TEST");
|
||||
gl::Enable(gl::DEPTH_TEST);
|
||||
println!("-> gl::ClearColor()");
|
||||
gl::ClearColor(0.0, 0.0, 0.0, 0.0);
|
||||
//println!("-> gl::ClearColor()");
|
||||
//gl::ClearColor(0.0, 0.0, 0.0, 0.0);
|
||||
println!("-> gl::Clear(COLOR,DEPTH)");
|
||||
gl::Clear(gl::COLOR_BUFFER_BIT | gl::DEPTH_BUFFER_BIT);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user