pub trait EntryPoint: 'static + Send + Sync {
    const NAME: &'static str;

    // Provided methods
    fn parameters() -> EntryPointParameters { ... }
    fn constants() -> EntryPointConstants { ... }
    fn types() -> EntryPointTypes { ... }
    fn permutation(shader_defs: &Vec<ShaderDefVal>) -> Vec<String>  { ... }
    fn filter_constants(shader_defs: &Vec<ShaderDefVal>) -> Vec<ShaderDefVal>  { ... }
    fn build(shader_defs: &Vec<ShaderDefVal>) -> String { ... }
}
Expand description

A rust-gpu entry point for use with RustGpuMaterial.

Required Associated Constants§

source

const NAME: &'static str

The entry point’s base function name, including module path

const NAME: EntryPointName = "mesh::entry_points::vertex";

Provided Methods§

source

fn parameters() -> EntryPointParameters

source

fn constants() -> EntryPointConstants

source

fn types() -> EntryPointTypes

source

fn permutation(shader_defs: &Vec<ShaderDefVal>) -> Vec<String>

Constructs a permutation set from the provided shader defs

source

fn filter_constants(shader_defs: &Vec<ShaderDefVal>) -> Vec<ShaderDefVal>

source

fn build(shader_defs: &Vec<ShaderDefVal>) -> String

Build an entry point name from the provided shader defs

Implementations on Foreign Types§

source§

impl EntryPoint for ()

source§

const NAME: &'static str = ""

Implementors§

source§

impl EntryPoint for MeshFragment

source§

const NAME: EntryPointName = "mesh::entry_points::fragment"

source§

impl EntryPoint for MeshVertex

source§

const NAME: EntryPointName = "mesh::entry_points::vertex"

source§

impl EntryPoint for PbrFragment

source§

const NAME: EntryPointName = "pbr::entry_points::fragment"