This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-02-21
Channels
- # architecture (9)
- # beginners (192)
- # boot (1)
- # bristol-clojurians (2)
- # cider (213)
- # cljs-dev (10)
- # clojure (195)
- # clojure-art (2)
- # clojure-austin (3)
- # clojure-belgium (4)
- # clojure-dev (4)
- # clojure-dusseldorf (1)
- # clojure-gamedev (9)
- # clojure-greece (21)
- # clojure-italy (27)
- # clojure-losangeles (2)
- # clojure-russia (1)
- # clojure-seattle-old (2)
- # clojure-serbia (1)
- # clojure-spec (114)
- # clojure-uk (136)
- # clojured (2)
- # clojurescript (100)
- # community-development (19)
- # core-async (12)
- # cursive (7)
- # duct (1)
- # figwheel (7)
- # fulcro (96)
- # hoplon (4)
- # jobs (2)
- # lein-figwheel (28)
- # leiningen (2)
- # luminus (14)
- # lumo (3)
- # off-topic (11)
- # om-next (2)
- # pedestal (10)
- # planck (11)
- # portkey (2)
- # proton (1)
- # protorepl (19)
- # re-frame (27)
- # reagent (12)
- # shadow-cljs (82)
- # spacemacs (42)
- # specter (15)
- # sql (3)
hey folks
been considering building a large simulation game and i’m curious how clojure would fare given that data is immutable - recreating the entire game state every frame seems expensive
also i’d have to hook into a real renderer like unity, I was considering potentially using something like https://grpc.io/ to communicate with their game engine every frame to buffer rendering commands
@iwannaseethelight I think it depends on how big the state is. You don't actually "recreate" it, either. Due to the persistent data structures you only create/edit the parts of the state you need to each frame.
One game I did in Clojure: https://github.com/the2bears/DS3
well i’m just saying every modification to a data structure emits a new data structure
i’m aware of the data structures they’re using under the hood, but doing a (map #(...) entities)
kind of pattern may not be practical for games
doing that with 100k things at 60 hz or greater