Sfoglia il codice sorgente

Update generate_jamie_plane function to use a dynamic number of dimensions,still not working

Ghastrod 1 anno fa
parent
commit
805f72f5b3
3 ha cambiato i file con 15 aggiunte e 14 eliminazioni
  1. 1 1
      justfile
  2. 1 1
      src/lib.rs
  3. 13 12
      src/simple_plane.rs

+ 1 - 1
justfile

@@ -12,4 +12,4 @@ test:
     cargo test
 
 build:
-    cargo build
+    cargo build

+ 1 - 1
src/lib.rs

@@ -353,7 +353,7 @@ impl<'a> State<'a> {
         //let vert = DEBUG_VERT;
         //println!("{:?}", vert);
 
-        let vert = generate_jamie_plane(2);
+        let vert = generate_jamie_plane(3);
         println!("{:?}", vert);
 
         // Create a buffer with the vertex data

+ 13 - 12
src/simple_plane.rs

@@ -52,25 +52,26 @@ pub fn generate_square()->Vec<Vertex>{
 //Simple plane from Jamie King video: OpenGL Plane Code
 
 pub fn generate_jamie_plane(dimensions:u32)->Vec<Vertex>{
-    let mut vertices: Vec<Vertex> = vec![];
+    let mut vertices: Vec<Vertex> = vec![Vertex{position: [0.0, 0.0, 0.0], color: [1.0, 1.0, 1.0]}; dimensions as usize * dimensions as usize];
     let nombre_de_points = dimensions * dimensions;
+
+
     let moitie = dimensions / 2;
     let mut row = 0;
     let mut column = 0;
-    while row <= dimensions{
-        while column <= dimensions {
-            println!("row: {}, column: {}", row, column);
-            let x = column as f32 - moitie as f32;
-            let z = row as f32 - moitie as f32;
-            let y = 0.0;
-            let vert = Vertex{
-                position: [x, z, y],
+    while row < (dimensions){
+        while column < (dimensions ){
+            vertices[(row * dimensions + column) as usize] = Vertex{
+                position: [((column as f32) - moitie as f32), 0.0, ((row as f32) - moitie as f32)],
                 color: [1.0, 1.0, 1.0]
             };
-            vertices.push(vert);
-            column = column + 1;
+            println!("row: {}, column: {}, first call", row, column);
+
+            column += 1;
         }
-        row = row + 1;
+        column = 0;
+        println!("row: {}, column: {}, last call", row, column);
+        row += 1;
     }
     return vertices;
 }