From ec4612427a5ce743ba0759227eaa422dd1ff9b0e Mon Sep 17 00:00:00 2001 From: Rosyid Haryadi Date: Wed, 5 Mar 2025 10:23:58 +0700 Subject: upd switch display buffer to vec. large array somehow causing stack overflow in windows --- src/common.rs | 3 ++- src/main.rs | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/common.rs b/src/common.rs index 3e606b1..6cc5e83 100644 --- a/src/common.rs +++ b/src/common.rs @@ -142,5 +142,6 @@ impl Default for Pixel { } } -pub type DisplayBuffer = [[Pixel; IMG_WIDTH]; IMG_HEIGHT]; +// pub type DisplayBuffer = [[Pixel; IMG_WIDTH]; IMG_HEIGHT]; +pub type DisplayBuffer = Vec>; diff --git a/src/main.rs b/src/main.rs index 386810e..9696840 100644 --- a/src/main.rs +++ b/src/main.rs @@ -13,7 +13,7 @@ use crate::object::{HittableList, Sphere}; use crate::view::{render_viewer, View}; fn main() { - let mut display_buffer: DisplayBuffer = [[Pixel::default(); IMG_WIDTH]; IMG_HEIGHT]; + let mut display_buffer: DisplayBuffer = vec![Vec::from([Pixel::default(); IMG_WIDTH]); IMG_HEIGHT]; let mut world = HittableList::new(); let ground = Material::new(Color::from_name(ColorName::Gray), MaterialType::Diffuse); -- cgit v1.2.3-70-g09d2