Comments (4)
I'm doing a Pixi integration at the moment and might be able to contribute something back when I'm a little further along. So far straightforward -- I'm letting the sim-ecs event loop "lead" and entities have components with Container
objects in them that are attached to the pixi scenegraph. Nothing fancy but no major issues yet.
from sim-ecs.
Thanks! I might do that. But so far so good -- just churning along productively. I'm finding some ways to decouple Pixi from the ECS components that make sense for me, but may not be generalizable. I'm building a roguelike, so I'm finding it is useful to decouple the stuff that runs at display framerate and letting the ECS systems slow way down and just run once per turn cycle. That may not be useful for others. :D But once my architecture has settled a little more I'll write it up.
FWIW, I have done a tiny bit of work on using Pixi@^8 for rendering from within an ECS. It gets pretty non-trivial when pixi wants a scenegraph for everything or you want to do hierarchies of transformations, but without a tree representation of your data.
And just to be clear, I'm not being modest when I say I've only done a "tiny" amount of work on this. The pixi team on discord has been very responsive to requests for help or even feature requests. But none the less here is some code: https://github.com/dannyfritz/nuthatch/blob/v8-localTransform/lib/src/index.ts
Unfortunately this appears to be the only portion of my local working-tree of sim-ecs experiments that has made its way to GitHub though: https://github.com/dannyfritz/nuthatch/blob/c25e7685f91ac0b39adcf80e725864b722595176/package.json#L17
from sim-ecs.
Thank you! Pixi is a very good rendering library many projects use, so having a demo for it will be a huge boon. If you have any questions or need help, just drop a message, I try to read my GitHub notifications daily.
from sim-ecs.
Thanks! I might do that. But so far so good -- just churning along productively. I'm finding some ways to decouple Pixi from the ECS components that make sense for me, but may not be generalizable. I'm building a roguelike, so I'm finding it is useful to decouple the stuff that runs at display framerate and letting the ECS systems slow way down and just run once per turn cycle. That may not be useful for others. :D But once my architecture has settled a little more I'll write it up.
from sim-ecs.
Related Issues (20)
- Sync-Point ergonomics HOT 1
- Implement async error handling (when a system throws/rejects)
- Add Madge as post-build-step HOT 1
- Investigate Deno (again) HOT 3
- I really like this git repository ! Why is insertion very slow ? HOT 1
- Rename `findWorld()` to `getWorld()`
- Create shorthand aliases for long `with...()` methods
- Add convencience methods to Query, like `filter`, `sort`,... HOT 1
- Make components Objects-of-Arrays (like BitECS) HOT 1
- Add snapshots
- Investigate preformance regression on master HOT 1
- Update Benchmarks
- Implement HMR functionality
- It feels like benchmarks are missing the point HOT 6
- Implement Component Observers
- Run pipeline from pipeline HOT 4
- deno - publish fixed imports HOT 3
- Create more examples
- The runtime world hasn't initialized a scheduler executor! HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sim-ecs.