From 814cc1cb01692aa934a40636c9226ff7bb911266 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Mon, 6 Jan 2025 14:28:02 +0100 Subject: new proto --- client/src/scene_prepare.rs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 client/src/scene_prepare.rs (limited to 'client/src/scene_prepare.rs') diff --git a/client/src/scene_prepare.rs b/client/src/scene_prepare.rs new file mode 100644 index 0000000..8d52f49 --- /dev/null +++ b/client/src/scene_prepare.rs @@ -0,0 +1,30 @@ +use anyhow::Result; +use std::{ + collections::{HashMap, HashSet}, + sync::Arc, +}; +use weareshared::{packets::Resource, resources::Part, tree::SceneTree}; +use wgpu::Buffer; + +pub struct ScenePreparer { + index_buffers: HashMap, + vertex_buffers_x3: HashMap<[Resource; 1], Arc>, + vertex_buffers_x2: HashMap<[Resource; 2], Arc>, + vertex_buffers_x1: HashMap<[Resource; 3], Arc>, + parts: HashMap, +} + +impl ScenePreparer { + pub fn new() -> Self { + Self { + index_buffers: HashMap::new(), + vertex_buffers_x3: HashMap::new(), + vertex_buffers_x2: HashMap::new(), + vertex_buffers_x1: HashMap::new(), + parts: HashMap::new(), + } + } + fn update(&mut self, tree: &SceneTree) -> Result<()> { + let x = tree.objects.values().map(|o| o.res).collect::>(); + } +} -- cgit v1.2.3-70-g09d2