combomash / engine

TypeScript Algorithmic Media Engine
https://www.npmjs.com/package/@combomash/engine
ISC License
0 stars 0 forks source link

samples #15

Open owmo-dev opened 3 months ago

owmo-dev commented 3 months ago

Modify the "frame" option to be "frames" so that it has a start and end frame. If the two frames are the same, then it's a one-shot, otherwise it'll cycle over multiple frames. Why?

May need to make entityManager run everything async to allow for long await functions.

owmo-dev commented 2 months ago

I want to reject the idea of a start and end frame, that is more appropriate for the Orchestrator (already implemented). What is valuable in the Engine is the idea of handling a progressive render loop, where the configuration supplies a number cycles it should loop before considering a frame completed.

Nodes would ideally be chained together, rather than individually looped (perhaps both is useful? configurable?). Either way, a change in the condition of completion would be necessitated. Pipelines would keep track of the cycles.

owmo-dev commented 1 month ago

To add to this - I attempted to add logging into my artwork (to show progress of rendering) but because the entire thing is happening within a single requestAnimationFrame the console log doesn't get rendered to the browser until next frame. I need to have some way of managing buckets & samples across individual frame calls, rather than handling that loop in the artwork itself. The change will introduce a breaking change for existing artworks, which will need to be version locked.