feat(render): time-based rotation in shaders

This commit is contained in:
Chance 2025-04-27 17:22:05 -04:00
parent 22a58044d5
commit 0e8209f9b9
Signed by: caznix
GPG key ID: 489D213143D753FD
3 changed files with 55 additions and 12 deletions

View file

@ -3,7 +3,7 @@ use naga::{
ShaderStage,
back::spv::{self, WriterFlags},
front::glsl::{self, Options as GlslOptions, ParseErrors},
valid::{ValidationError, ValidationFlags, Validator},
valid::{Capabilities, ValidationError, ValidationFlags, Validator},
};
use std::{
env, fs,
@ -62,9 +62,12 @@ fn compile_shader(path: &Path, out_dir: &Path) -> Result<(), BuildError> {
let module = glsl::Frontend::default()
.parse(&GlslOptions::from(stage), &src)
.map_err(|e| (ext.clone(), e))?;
let info = Validator::new(ValidationFlags::all(), Default::default())
.validate(&module)
.map_err(|e| (ext.clone(), e.into_inner()))?;
let info = Validator::new(
ValidationFlags::all(),
Capabilities::default().union(Capabilities::PUSH_CONSTANT),
)
.validate(&module)
.map_err(|e| (ext.clone(), e.into_inner()))?;
let mut writer = spv::Writer::new(&spv::Options {
flags: WriterFlags::empty(),
..Default::default()