Group all solid triangles independently of color
This commit is contained in:
parent
5b0dfcd0b0
commit
33c3c0c0aa
23 changed files with 1343 additions and 1084 deletions
|
|
@ -1,10 +1,13 @@
|
|||
//! Utilities for uniform buffer operations.
|
||||
use encase::private::WriteInto;
|
||||
use encase::ShaderType;
|
||||
|
||||
use std::fmt;
|
||||
use std::marker::PhantomData;
|
||||
|
||||
/// A dynamic buffer is any type of buffer which does not have a static offset.
|
||||
pub(crate) struct Buffer<T: ShaderType> {
|
||||
#[derive(Debug)]
|
||||
pub struct Buffer<T: ShaderType> {
|
||||
offsets: Vec<wgpu::DynamicOffset>,
|
||||
cpu: Internal,
|
||||
gpu: wgpu::Buffer,
|
||||
|
|
@ -204,3 +207,13 @@ impl Internal {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl fmt::Debug for Internal {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
match self {
|
||||
Self::Uniform(_) => write!(f, "Internal::Uniform(_)"),
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
Self::Storage(_) => write!(f, "Internal::Storage(_)"),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ const DEFAULT_STATIC_BUFFER_COUNT: wgpu::BufferAddress = 128;
|
|||
/// A generic buffer struct useful for items which have no alignment requirements
|
||||
/// (e.g. Vertex, Index buffers) & no dynamic offsets.
|
||||
#[derive(Debug)]
|
||||
pub(crate) struct Buffer<T> {
|
||||
pub struct Buffer<T> {
|
||||
//stored sequentially per mesh iteration; refers to the offset index in the GPU buffer
|
||||
offsets: Vec<wgpu::BufferAddress>,
|
||||
label: &'static str,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue