Skip to content

Commit 9c1df8b

Browse files
committed
Expose default system and scene keys in shader packages
1 parent 743ab6b commit 9c1df8b

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

src/shpk.rs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,13 @@ pub struct physis_SHPK {
3636
vertex_shaders: *mut physis_Shader,
3737
num_pixel_shaders: i32,
3838
pixel_shaders: *mut physis_Shader,
39+
40+
num_system_keys: i32,
41+
system_keys: *mut Key,
42+
43+
num_scene_keys: i32,
44+
scene_keys: *mut Key,
45+
3946
num_material_keys: i32,
4047
material_keys: *mut Key,
4148

@@ -55,6 +62,10 @@ impl Default for physis_SHPK {
5562
vertex_shaders: null_mut(),
5663
num_pixel_shaders: 0,
5764
pixel_shaders: null_mut(),
65+
num_system_keys: 0,
66+
system_keys: null_mut(),
67+
num_scene_keys: 0,
68+
scene_keys: null_mut(),
5869
num_material_keys: 0,
5970
material_keys: null_mut(),
6071
sub_view_key1_default: 0,
@@ -137,6 +148,8 @@ pub extern "C" fn physis_parse_shpk(buffer: physis_Buffer) -> physis_SHPK {
137148
mem::forget(bytecode);
138149
}
139150

151+
let mut system_keys = shpk.material_keys.clone();
152+
let mut scene_keys = shpk.material_keys.clone();
140153
let mut material_keys = shpk.material_keys.clone();
141154
let mut material_params = shpk.material_parameters.clone();
142155

@@ -145,6 +158,10 @@ pub extern "C" fn physis_parse_shpk(buffer: physis_Buffer) -> physis_SHPK {
145158
vertex_shaders: c_vertex_shaders.as_mut_ptr(),
146159
num_pixel_shaders: c_fragment_shaders.len() as i32,
147160
pixel_shaders: c_fragment_shaders.as_mut_ptr(),
161+
num_system_keys: system_keys.len() as i32,
162+
system_keys: system_keys.as_mut_ptr(),
163+
num_scene_keys: scene_keys.len() as i32,
164+
scene_keys: scene_keys.as_mut_ptr(),
148165
num_material_keys: material_keys.len() as i32,
149166
material_keys: material_keys.as_mut_ptr(),
150167
sub_view_key1_default: shpk.sub_view_key1_default,

0 commit comments

Comments
 (0)