@@ -14,7 +14,7 @@ use optix::{
1414 shader_binding_table:: { SbtRecord , ShaderBindingTable } ,
1515} ;
1616
17- use crate :: vector :: V4f32 ;
17+ use glam :: { IVec2 , Vec4 } ;
1818
1919pub struct Renderer {
2020 launch_params : DeviceVariable < LaunchParams > ,
@@ -23,7 +23,7 @@ pub struct Renderer {
2323 buf_hitgroup : DeviceBuffer < HitgroupRecord > ,
2424 buf_miss : DeviceBuffer < MissRecord > ,
2525 pipeline : Pipeline ,
26- color_buffer : DeviceBuffer < V4f32 > ,
26+ color_buffer : DeviceBuffer < Vec4 > ,
2727 ctx : DeviceContext ,
2828 stream : Stream ,
2929 cuda_context : CuContext ,
@@ -144,10 +144,7 @@ impl Renderer {
144144 let launch_params = DeviceVariable :: new ( LaunchParams {
145145 frame_id : 0 ,
146146 color_buffer : color_buffer. as_device_ptr ( ) ,
147- fb_size : Point2i {
148- x : width as i32 ,
149- y : height as i32 ,
150- } ,
147+ fb_size : IVec2 :: new ( width as i32 , height as i32 ) ,
151148 } ) ?;
152149
153150 Ok ( Renderer {
@@ -193,24 +190,17 @@ impl Renderer {
193190 Ok ( ( ) )
194191 }
195192
196- pub fn download_pixels ( & self , slice : & mut [ V4f32 ] ) -> Result < ( ) , Box < dyn std:: error:: Error > > {
193+ pub fn download_pixels ( & self , slice : & mut [ Vec4 ] ) -> Result < ( ) , Box < dyn std:: error:: Error > > {
197194 self . color_buffer . copy_to ( slice) ?;
198195 Ok ( ( ) )
199196 }
200197}
201198
202- #[ repr( C ) ]
203- #[ derive( Copy , Clone , DeviceCopy ) ]
204- struct Point2i {
205- pub x : i32 ,
206- pub y : i32 ,
207- }
208-
209199#[ repr( C ) ]
210200#[ derive( Copy , Clone , DeviceCopy ) ]
211201struct LaunchParams {
212- pub color_buffer : DevicePointer < V4f32 > ,
213- pub fb_size : Point2i ,
202+ pub color_buffer : DevicePointer < Vec4 > ,
203+ pub fb_size : IVec2 ,
214204 pub frame_id : i32 ,
215205}
216206
0 commit comments