I recently added animations to my game:
deepfinesse.com/demo
>From my testing, CPU is 100% even when nothing is animating. This seems to
be a consequence of simply adding AnimationFrame.times to my subscriptions.
CPU is still 100% if I do nothing but return an unchanged model when
processing a timer tick (requestAnimationFrame() under the covers), per
below.
I thought ELM would be slick enough to realize nothing changed in the model
and not re-render anything. This touches on "Lazy" stuff, but Lazy appears
to be associated with the html package only. I'm not using that, rather,
my app is pure graphics via evancz/graphics.
Any ideas?
STEP ONE:
subscriptions model =
Sub.batch
[ Mouse.clicks MouseClick
, AnimationFrame.times Ticker <- HERE
]
STEP TWO:
update : Msg -> Model -> Model
update msg model =
case msg of
MouseClick pos ->
handleMouseClick pos model
Ticker curTime ->
stepAnimation curTime model <- HERE
STEP THREE: just return model for now
stepAnimation : Time -> Model -> Model
stepAnimation curTime model =
model
--
You received this message because you are subscribed to the Google Groups "Elm
Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.