summaryrefslogtreecommitdiff
path: root/bindgen/rust/src/shader.rs
blob: e80e00bc3feba4195e7ef7cf32e3eff943e39783 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use std::{ffi::c_void, path::Path};

use crate::ral::{Pipeline, ShaderBinding};

pub struct Shader {
    pipeline: Pipeline,
    binding_layouts: Vec<ShaderBinding>,
}

#[no_mangle]
pub unsafe extern "C" fn rust_function(data: *mut c_void) -> celeritas_sys::ShaderDataLayout {
    todo!()
}

impl Shader {
    pub fn new(name: String, vs_path: &Path, fs_path: &Path) -> Self {
        todo!()
    }
    pub fn add_layout(&mut self) -> &mut Self {
        // TODO
        self
    }
}