clean up worldgen and remove verbose logging
This commit is contained in:
parent
4d84122ef3
commit
34e534b6f2
11 changed files with 359 additions and 174 deletions
|
|
@ -18,6 +18,9 @@
|
|||
(local turn-speed 2.0)
|
||||
(local bob-speed 8.0)
|
||||
(local bob-amount 4.0)
|
||||
(local max-pitch 1.5)
|
||||
(local cell-size 64)
|
||||
(local grid-size 32)
|
||||
|
||||
(fn init []
|
||||
(set world (pxl8.world_new))
|
||||
|
|
@ -30,7 +33,37 @@
|
|||
:iterations 4})]
|
||||
(if (< result 0)
|
||||
(pxl8.error (.. "Failed to generate cave - result: " result))
|
||||
(pxl8.info "Generated procedural cave"))))
|
||||
(do
|
||||
(let [floor-tex (pxl8.procgen_tex {:name "floor"
|
||||
:seed 11111
|
||||
:width 64
|
||||
:height 64
|
||||
:base_color 20})
|
||||
ceiling-tex (pxl8.procgen_tex {:name "ceiling"
|
||||
:seed 22222
|
||||
:width 64
|
||||
:height 64
|
||||
:base_color 0})
|
||||
wall-tex (pxl8.procgen_tex {:name "wall"
|
||||
:seed 12345
|
||||
:width 64
|
||||
:height 64
|
||||
:base_color 4})]
|
||||
|
||||
(pxl8.upload_atlas)
|
||||
|
||||
(let [result (pxl8.world_apply_textures world [
|
||||
{:name "floor"
|
||||
:texture_id floor-tex
|
||||
:rule (fn [normal] (> normal.y 0.7))}
|
||||
{:name "ceiling"
|
||||
:texture_id ceiling-tex
|
||||
:rule (fn [normal] (< normal.y -0.7))}
|
||||
{:name "wall"
|
||||
:texture_id wall-tex
|
||||
:rule (fn [normal] (and (<= normal.y 0.7) (>= normal.y -0.7)))}])]
|
||||
(when (< result 0)
|
||||
(pxl8.error (.. "Failed to apply textures - result: " result)))))))))
|
||||
|
||||
(fn update [dt]
|
||||
(set fps-accumulator (+ fps-accumulator dt))
|
||||
|
|
@ -50,36 +83,35 @@
|
|||
forward-z (- (math.cos cam-yaw))
|
||||
right-x (math.cos cam-yaw)
|
||||
right-z (- (math.sin cam-yaw))
|
||||
cell-size 64
|
||||
grid-min 0
|
||||
grid-max (* 32 cell-size)]
|
||||
grid-max (* grid-size cell-size)
|
||||
move-delta (* move-speed dt)]
|
||||
|
||||
(var moving false)
|
||||
(var new-x cam-x)
|
||||
(var new-z cam-z)
|
||||
|
||||
(when (pxl8.key_down "w")
|
||||
(set new-x (+ new-x (* forward-x move-speed dt)))
|
||||
(set new-z (+ new-z (* forward-z move-speed dt)))
|
||||
(set new-x (+ new-x (* forward-x move-delta)))
|
||||
(set new-z (+ new-z (* forward-z move-delta)))
|
||||
(set moving true))
|
||||
|
||||
(when (pxl8.key_down "s")
|
||||
(set new-x (- new-x (* forward-x move-speed dt)))
|
||||
(set new-z (- new-z (* forward-z move-speed dt)))
|
||||
(set new-x (- new-x (* forward-x move-delta)))
|
||||
(set new-z (- new-z (* forward-z move-delta)))
|
||||
(set moving true))
|
||||
|
||||
(when (pxl8.key_down "q")
|
||||
(set new-x (- new-x (* right-x move-speed dt)))
|
||||
(set new-z (- new-z (* right-z move-speed dt)))
|
||||
(set new-x (- new-x (* right-x move-delta)))
|
||||
(set new-z (- new-z (* right-z move-delta)))
|
||||
(set moving true))
|
||||
|
||||
(when (pxl8.key_down "e")
|
||||
(set new-x (+ new-x (* right-x move-speed dt)))
|
||||
(set new-z (+ new-z (* right-z move-speed dt)))
|
||||
(set new-x (+ new-x (* right-x move-delta)))
|
||||
(set new-z (+ new-z (* right-z move-delta)))
|
||||
(set moving true))
|
||||
|
||||
(when (and (>= new-x grid-min) (<= new-x grid-max)
|
||||
(>= new-z grid-min) (<= new-z grid-max))
|
||||
(when (and (>= new-x 0) (<= new-x grid-max)
|
||||
(>= new-z 0) (<= new-z grid-max))
|
||||
(set cam-x new-x)
|
||||
(set cam-z new-z))
|
||||
|
||||
|
|
@ -90,12 +122,10 @@
|
|||
(set cam-yaw (- cam-yaw (* turn-speed dt))))
|
||||
|
||||
(when (pxl8.key_down "up")
|
||||
(set cam-pitch (+ cam-pitch (* turn-speed dt)))
|
||||
(when (> cam-pitch 1.5) (set cam-pitch 1.5)))
|
||||
(set cam-pitch (math.min max-pitch (+ cam-pitch (* turn-speed dt)))))
|
||||
|
||||
(when (pxl8.key_down "down")
|
||||
(set cam-pitch (- cam-pitch (* turn-speed dt)))
|
||||
(when (< cam-pitch -1.5) (set cam-pitch -1.5)))
|
||||
(set cam-pitch (math.max (- max-pitch) (- cam-pitch (* turn-speed dt)))))
|
||||
|
||||
(if moving
|
||||
(set bob-time (+ bob-time (* dt bob-speed)))
|
||||
|
|
@ -134,17 +164,17 @@
|
|||
|
||||
(pxl8.text (.. "Pos: " (string.format "%.0f" cam-x) ","
|
||||
(string.format "%.0f" cam-y) ","
|
||||
(string.format "%.0f" cam-z)) 10 25 12))
|
||||
(string.format "%.0f" cam-z)) 10 25 12)
|
||||
|
||||
(let [new-state (debug-ui.render {:show-debug-ui show-debug-ui
|
||||
:fps fps
|
||||
:wireframe false
|
||||
:auto-rotate false
|
||||
:orthographic false
|
||||
:use-texture true
|
||||
:affine affine})]
|
||||
(when (not= new-state.show-debug-ui nil) (set show-debug-ui new-state.show-debug-ui))
|
||||
(when (not= new-state.affine nil) (set affine new-state.affine)))))
|
||||
(let [new-state (debug-ui.render {:show-debug-ui show-debug-ui
|
||||
:fps fps
|
||||
:wireframe false
|
||||
:auto-rotate false
|
||||
:orthographic false
|
||||
:use-texture true
|
||||
:affine affine})]
|
||||
(when (not= new-state.show-debug-ui nil) (set show-debug-ui new-state.show-debug-ui))
|
||||
(when (not= new-state.affine nil) (set affine new-state.affine))))))
|
||||
|
||||
{:init init
|
||||
:update update
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue