Open4
「RustではじめるOpenGL」の2025年でのパッケージメモ

第4章のパッケージ
[dependencies]
sdl2 = "0.36.0"
gl = "0.14.0"
cgmath = "0.18.0"
c_str_macro = "1.0.3"
imgui = "0.11.0"
imgui-sdl2 = "0.15.3"
imgui-opengl-renderer = "0.12.1"
現状sdl2
は0.38.0
が最新。
imgui-sdl2
の最新パッケージの0.15.3
はsdl2>=0.34,<0.37
に紐づいているので(dependencies)、sdl2は0.36.0
まで上げられる。
というのをimgui
でもimgui-opengl-renderer
でもやる。
4.2.3のコード部分
let ui = imgui_context.frame();
// imgui::Window::new(im_str!("Information")) // ここを
ui.window("Information") // こうする
.size([300.0,200.0], imgui::Condition::FirstUseEver)
.build(||{});
imgui_sdl2_context.prepare_render(&ui, &window);
// renderer.render(ui); // ここを
renderer.render(&mut imgui_context); // こうする

5.1.1のコード部分
imguiのカメラ位置のslider設定
ここの部分を
#[rustfmt::skip]
imgui::Slider::new(im_str!("Camera X"), -5.0..=5.0)
.build(&ui, &mut camera_x);
#[rustfmt::skip]
imgui::Slider::new(im_str!("Camera Y"), -5.0..=5.0)
.build(&ui, &mut camera_y);
#[rustfmt::skip]
imgui::Slider::new(im_str!("Camera Z"), -5.0..=5.0)
.build(&ui, &mut camera_z);
こうする
ui.slider("Camera X", -5.0,5.0, &mut camera_x);
ui.slider("Camera Y", -5.0, 5.0, &mut camera_y);
ui.slider("Camera Z", -5.0, 5.0, &mut camera_z);
render
ここを
renderer.render(ui);
こうする
renderer.render(&mut imgui_context); // ここも

im_str!()
は使えないが普通の文字列で可能。