improve sw renderer

This commit is contained in:
asrael 2026-01-21 23:19:50 -06:00
parent 415d424057
commit 39ee0fefb7
89 changed files with 9380 additions and 2307 deletions

View file

@ -6,11 +6,10 @@
(var time 0)
(var active-demo :logo)
(var particles nil)
(var particles2 nil)
(var fire-init? false)
(var rain-init? false)
(var snow-init? false)
(var snow-init2? false)
(var first_person3d-init? false)
(var use-famicube-palette? false)
(var logo-x 256)
@ -32,9 +31,7 @@
(pxl8.load_palette "res/sprites/pxl8_logo.ase")
(set logo-sprite (pxl8.load_sprite "res/sprites/pxl8_logo.ase"))
(set particles (pxl8.create_particles 1000))
(set particles2 (pxl8.create_particles 500))
(music.init)
(first_person3d.init)))
(music.init)))
(global update (fn [dt]
(when (pxl8.key_pressed "escape")
@ -57,7 +54,8 @@
(set transition-pending nil)
(when (= active-demo :fire) (set fire-init? false))
(when (= active-demo :rain) (set rain-init? false))
(when (= active-demo :snow) (set snow-init? false) (set snow-init2? false)))
(when (= active-demo :snow) (set snow-init? false))
(when (= active-demo :first_person3d) (set first_person3d-init? false)))
(transition:destroy)
(set transition nil)))
@ -92,12 +90,14 @@
(when (> logo-y 296)
(set logo-y 296)
(set logo-dy (- (math.abs logo-dy)))))
:first_person3d (first_person3d.update dt))
:first_person3d (do
(when (not first_person3d-init?)
(first_person3d.init)
(set first_person3d-init? true))
(first_person3d.update dt)))
(when particles
(particles:update dt))
(when particles2
(particles2:update dt)))
(particles:update dt)))
(when (menu.is-paused)
(menu.update))))
@ -174,6 +174,7 @@
:first_person3d (first_person3d.frame)
_ (pxl8.clear 0))
(when transition