feat(examples): 3D MVP cube via standard shader, drop basic (Étape 5)
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
//! Workflow bas-niveau : utilisation directe du `Context`, `Renderer`, `PipelineCache`, `Mesh` et
|
||||
//! `Material`, contournant la façade `App`. Rendu d'un quad plat éclairé via la boucle winit 0.30
|
||||
//! (`EventLoop::run_app` + `ApplicationHandler`). La fenêtre et le GPU sont créés dans `resumed()`,
|
||||
//! comme l'exigent winit 0.30 et la migration faite dans `app.rs`.
|
||||
//! `Material`, contournant la façade `App`. Rendu d'un quad plat (shader `standard` **unlit**) via la
|
||||
//! boucle winit 0.30 (`EventLoop::run_app` + `ApplicationHandler`). La fenêtre et le GPU sont créés
|
||||
//! dans `resumed()`, comme l'exigent winit 0.30 et la migration faite dans `app.rs`.
|
||||
use std::sync::Arc;
|
||||
use winit::application::ApplicationHandler;
|
||||
use winit::dpi::LogicalSize;
|
||||
@@ -59,13 +59,16 @@ impl ApplicationHandler for App {
|
||||
let device = Arc::new(context.device.clone());
|
||||
let mut cache = PipelineCache::new(device);
|
||||
cache
|
||||
.register_shader("basic", utils::BASIC_SHADER_PATH)
|
||||
.register_shader("standard", utils::STANDARD_SHADER_PATH)
|
||||
.unwrap();
|
||||
|
||||
let renderer = Renderer::new(&context, format);
|
||||
// Rendu 2D plat : `standard` en mode unlit (les bind groups frame+object sont posés par
|
||||
// draw_entity, la matrice frame par défaut est l'identité → positions NDC inchangées).
|
||||
let mut renderer = Renderer::new(&context, format);
|
||||
renderer.set_unlit(true);
|
||||
|
||||
// 3. Material : On utilise renderer.device() et renderer.format()
|
||||
let material = Material::new(renderer.format(), "basic", &mut cache);
|
||||
let material = Material::new(renderer.format(), "standard", &mut cache);
|
||||
|
||||
// Mesh : On utilise le device du renderer
|
||||
let vertices = [
|
||||
|
||||
Reference in New Issue
Block a user