Ezelia / EZGUI

EZGUI - The missing GUI for Pixi.js and Phaser.io
http://ezgui.ezelia.com
440 stars 95 forks source link

Does not work with Phaser version > 2.6 #67

Open tranquoctoan371 opened 6 years ago

tranquoctoan371 commented 6 years ago

Error log when using with new version of Phaser:

Uncaught TypeError: Cannot read property 'resolution' of undefined at new b.CanvasRenderer

Please fix this, EZGUI is awesome

jjalonso commented 6 years ago

Any future plan to port it to Phaser 3 ?

Thanks

alaa-eddine commented 6 years ago

@jjalonso yes, I'm working on a full refactor for the library. the current compatibility approach is very bad, when I started it I thouht I'll only have to support one Pixi Version and one Phaser version ... today there are 3 incompatible Pixi versions and 3 incompatible Phaser versions (Phaser 2, Phaser CE and Phaser 3).

so my new approach will use plugins, one for each supported library, the initial goal will be to restore full compatibility with PixiV3, PixiV4, Phaser 2 and Phaser 2 CE using two different plugins. then extend the compatibility to Phaser 3 using a new plugin.

This approach will also simplify community contributions to support other libraries if they want.

there will be slight impact on the code, since you'll need to explicitely declare which plugin to use (Pixi, Phaser2 or Phaser3) .... but hopefully, there will be no (or minor) breaking changes.

jjalonso commented 6 years ago

I though the development would be using only Phaser 3 API to create elements in a container.

On Thu, 21 Jun 2018 at 14:24, Alaa-eddine K. notifications@github.com wrote:

@jjalonso https://github.com/jjalonso yes, I'm working on a full refactor for the library. the current compatibility approach is very bad, when I started it I thouht I'll only have to support one Pixi Version and one Phaser version ... today there are 3 incompatible Pixi versions and 3 incompatible Phaser versions (Phaser 2, Phaser CE and Phaser 3).

so my new approach will use plugins, one for each supported library, the initial goal will be to restore full compatibility with PixiV3, PixiV4, Phaser 2 and Phaser 2 CE using two different plugins. then extend the compatibility to Phaser 3 using a new plugin.

This approach will also simplify community contributions to support other libraries if they want.

there will be slight impact on the code, since you'll need to explicitely declare which plugin to use (Pixi, Phaser2 or Phaser3) .... but hopefully, there will be no (or minor) breaking changes.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Ezelia/EZGUI/issues/67#issuecomment-399102240, or mute the thread https://github.com/notifications/unsubscribe-auth/AAXxWyx_QXl3WlKFnq_q1Z6_5p-owroGks5t-56TgaJpZM4Rt2I1 .

alaa-eddine commented 6 years ago

EZGUI will become an abstract library for HTML5 GUI.

The Phaser 3 plugin will use only Phaser 3 API obviously. other plugins like Pixi for example, will use their own APIs.

The idea is to keep GUI creation logic completely separated from the rendering. this way I can support different rendering libraries/Game engines .... and if one of them introduce a breaking change, it won't break the others, I'll just have to update its plugin.

jjalonso commented 6 years ago

It Will look great, I'm only worried if the project is quite big, will be so big for you as unique developer and eventually it will be abandoned.

At the moment is no Phaser 3 UI, and there is a slot in the market for a proper one, or at least a first one.

On Thu, 21 Jun 2018 at 15:11, Alaa-eddine K. notifications@github.com wrote:

EZGUI will become an abstract library for HTML5 GUI.

The Phaser 3 plugin will use only Phaser 3 API obviously. other plugins like Pixi for example, will use their own APIs.

The idea is to keep GUI creation logic completely separated from the rendering. this way I can support different rendering libraries/Game engines .... and if one of them introduce a breaking change, it won't break the others, I'll just have to update its plugin.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Ezelia/EZGUI/issues/67#issuecomment-399117232, or mute the thread https://github.com/notifications/unsubscribe-auth/AAXxWysL3gfaJqBzoObRQllbVKqLZN6Yks5t-6lzgaJpZM4Rt2I1 .

alaa-eddine commented 6 years ago

well EZGUI is not that big, and I also use it in some professional gaming projects for customers, this is how I'm funding it somehow :), and this is why I'm not abandonning it.

obviously it's never simple to keep maintaining such projects, but hopefully, if the new version is well structured and used by more people, I'll maybe get some contribution from other developers :)

jjalonso commented 6 years ago

Coolio

Ill be aware, would be great to update this thread when something is available I think people will come to search here too and see this thread. Thanks.

On Thu, 21 Jun 2018 at 16:11, Alaa-eddine K. notifications@github.com wrote:

well EZGUI is not that big, and I also use it in some professional gaming projects for customers, this is how I'm funding it somehow :), and this is why I'm not abandonning it.

obviously it's never simple to keep maintaining such projects, but hopefully, if the new version is well structured and used by more people, I'll maybe get some contribution from other developers :)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Ezelia/EZGUI/issues/67#issuecomment-399138775, or mute the thread https://github.com/notifications/unsubscribe-auth/AAXxWwT7Xa7hgI91Y9KLbk5qTpDm3Vlvks5t-7e4gaJpZM4Rt2I1 .