obiot

Members
  • Content Count

    289
  • Joined

  • Last visited

  • Days Won

    5

Reputation Activity

  1. Like
    obiot got a reaction from PLAYERKILLERS in melonJS 8.0.0   
    Few of the improved examples I was talking about :
    Sprite rendering around a specific Anchor Point, including rotation, scaling and transparency :  

     
     
     
     
     
     
     
     
     
     
     
    UI example, with the canvas embedded in a CSS layout, and input fully working even when zooming in/out or scrolling the page :


     
     
     
     
     
     
     
     
     
     
     
    Shape drawing in WebGL and Canvas mode, including masking  :

     
     
     
     
     
     
     
     
     
     
     
    Also, examples have been moved into their own repositories, and will keep being improved over time, feel free to submit there your changes as well : 
    https://github.com/melonjs/examples
  2. Like
    obiot got a reaction from PLAYERKILLERS in melonJS 8.0.0   
    Hi all,
    It took waaaay too long to reach a proper stable release, but melonJS 8.0 is finally available ! 

    Full list of changes is here, but to sum it up, the initial goal of this release was to improve the physic implementation and move forward with ES6 support (at least for class definition), but we actually ended up revamping the WebGL renderer and improving other part of the engine following numerous and very helpful feedback from some users, like @PLAYERKILLERS, @alcor and @siauderman to name a few

    WebGL & Canvas Renderer :
    WebGL renderer and embedded shaders have now been fully rewritten and should offer better compatibility (especially on mobile and linux platform) and definitely better performance. WebGL2 support, WebGL2 brings performances improvements and most of all allow to use now-power-of-two texture, which will decrease memory consumption and therefore also performances. It’s currently off by default (there is a ‘preferWebGL1’ flag to set to false to enable it)probably it will be enabled for the next release) as it has not been used yet for any games deployment, so I definitely recommends to test it on your side as well (will fallback automatically to WebGL1 if not supported) Proper tint support for both WebGL and Canvas renderer (just specify a tint color using me.Sprite.tint, and the sprite color will be changed accordingly) -> this is great as well to optimise the amount of assets as they can simply be coloured programmatically, by extension BitmapText can now also be tinted, using tint, or by specifying a fillStyle in the constructor parameters (so just one white bitmap text is enough now and can be coloured any way we need) Physic Improvements :
    me.game.world is now a specific container that manage physic related properties and updates and hold instances like the quadtree used for Broad phase  gravity for physic bodies is now defined globally under me.game.world.gravity, and can be scaled individually using me.Body.gravityScale any shapes or physic body can now be fully rotated around either their center or a specific given point renderable can now be fully rotated around either their Anchor Point or a specific given point Other improvements :
    melonJS now create a default Stage by default, which means you can just add any child to the game world right after initialising your game (great for prototyping or small games) massive improvements on the canvas scaling/positioning and related input detection when embedded into a complex CSS layout lots of Tiled related fixes, including for staggered map rendering, anti-diagonal rotation, tile animation, etc... add support for free-texture-packer (http://free-tex-packer.com), a free Texture Packer alternative some new Color utility function (lerp, random) melonJS will now automatically release any registered event on a renderable as soon as the object is destroy accelerometer and motion detection improvements (to support latest w3c api) fix the long standing issue of sprite position being offset when scaling or rotating a sprite -> this will bring some visual differences in any existing game where scaling or rotating me.Sprite objects (since now the position will be updated accordingly to the Anchor Point) examples have been cleaned up and improved to show most of the new features (check the sprite, graphics, UI ones for examples) tons of other bug fixes here and there There should not be any breaking changes in this release, as always we tried to keep it backward compatible, but keep an eye on the console log for deprecation warning and make sure to check the upgrade guide on how to upgrade your game : https://github.com/melonjs/melonJS/wiki/Upgrade-Guide

    Last but not least, everything is available on NPM and jsDeliver, README has also been updated and worth a read if you haven't since a long time
     
    Then next, for the version 9.0 (I guess), few things we are looking at :
    Physic improvement: as the goal is to be able to plug a physic engine in melonJS (like matter, box2d, etc..) we will keep improving/changing the internal implementation of the physic body and how the world is iterated in order to more closely match those library and more easily allow defining a physic plugin or something or even directly use one in melonJS (if anyone has any advise/preference on a physic engine for javascript, please shoot) me.Entity will be deprecated, way to go forward will be to add a me.Body object to any me.renderable, this will automatically fix all the entity bounds issues, and is more aligned with how physic engine (like matter) are working. The new way to work is already working in the current 8.0 version, but not fully tested, I do recommend though to start using it so that we can track left over issues with it. I created a ticket for that on GitHub, if you have comment let’s discuss it there : https://github.com/melonjs/melonJS/issues/1008 convert class definition to ES6, will probably start with the one that are more like internal and not likely to be extended in your game (like vector and matrix). but also for now we will keep the current rollup build setup to output a pure ES5 library (so even though we slowly migrate melonJS to ES6, we still transpile it back to ES5, at least until the whole library is converted), a track list has also been added for those classes here : https://github.com/melonjs/melonJS/issues/915 further improvements to the WebGL renderer : finish testing WebGL2, and other things like VAO that could be added as well  
    ... and I think that's all for now !
    So, I hope you guys are excited about this new release, let me know what you think, and will definitely look forward to your feedback !
    -- the melonJS team
  3. Thanks
    obiot got a reaction from PrzeGrze in Stomp mechanic on collision   
    flicker actually takes an optional callback function as argument, so you can directly remove the child from there or do whatever else you need when the effect is over. 
    also it's good practice to disable collision on that object at that point, you can do it using setCollisionMask (at least this is how I do it), but using your own variable also do the job 
    see the example below for both :
    https://github.com/melonjs/melonJS/blob/master/examples/platformer/js/entities/enemies.js#L78-L102
     
  4. Like
    obiot reacted to alcor in Triggering me.LevelEntity transitions when contained instead of on collide   
    Will do! Pushed it. Looks good so far, but I'll keep an eye out
  5. Thanks
    obiot got a reaction from walfin in The COVID-19 Game   
    Approved with some smart renaming 👍🥳
  6. Like
    obiot got a reaction from ACE4654 in Cannot Find Folder!   
    Hi, you can just create the lib folder yourself and you should be fine
  7. Thanks
    obiot reacted to walfin in The COVID-19 Game   
    Firefox extension approved: https://addons.mozilla.org/en-US/firefox/addon/the-covid-19-game
    Chrome extension approved: https://chrome.google.com/webstore/detail/the-covid-19-game/bmchlajjghhhhbjicciaphnkbckekamk
     
  8. Like
    obiot reacted to Alien in Device orientation   
    Thank you so much, Olivier, you are fast! I'll test that ASAP and will let you know how it goes.
  9. Like
    obiot reacted to 01271 in BitmapText not appearing when drawn from other entity   
    Well that's embarrassing, since the buttons I have are all at the bottom of the screen then drawing things at 200,200 (I thought it was abs pos) meant that they were completely off the canvas.
  10. Thanks
    obiot reacted to PLAYERKILLERS in beta 8.0 & updated WebGL renderer   
    Updated
    https://playerkillers.exchange/lib/melonjs.js
  11. Thanks
    obiot reacted to PLAYERKILLERS in error: sampler arrays indexed with non-constant expressions are forbidden in GLSL 1.30 and later   
    He hasn't responded with a result. I'll add this update. Thanks again for the update.
  12. Like
    obiot reacted to PLAYERKILLERS in error: sampler arrays indexed with non-constant expressions are forbidden in GLSL 1.30 and later   
    Thanks again, I'll ask the user to test it.
  13. Like
    obiot got a reaction from PLAYERKILLERS in error: sampler arrays indexed with non-constant expressions are forbidden in GLSL 1.30 and later   
    @PLAYERKILLERS test build with the fallback fix to Canvas is available, see here https://github.com/melonjs/melonJS/issues/982
     
     
  14. Like
    obiot got a reaction from PLAYERKILLERS in error: sampler arrays indexed with non-constant expressions are forbidden in GLSL 1.30 and later   
    which edit do you have for texture packer, is it the one for the free texture packer we also added in 8.0 ? 
    as for the gravity, yes, as part of the 8.0 version (major version increase, so some breaking changes) we revamped a bit the physic implementation to be closer to those physic engine out-there (with the will to be able to use one of them through a plugin) and as a consequence we now have a world global gravity settings that can then be lowered or amplified per physic object (instead of previously where each object gravity were managed separately), see here for the detailed changes : https://github.com/melonjs/melonJS/wiki/Upgrade-Guide#71x-to-800
    but if you switch to 8.0, you can just disable the gravity by setting me.game.world.gravity to 0 (it's a vector) and you should be back to the previous 7.x behavior.
    last but not least as part of the WebGL testing I think we should then try to compile/link the built-in shaders and if failing then display a error message in the console and revert back to the canvas renderer, l'll look into it this week.
     
  15. Like
    obiot got a reaction from PLAYERKILLERS in error: sampler arrays indexed with non-constant expressions are forbidden in GLSL 1.30 and later   
    FYI, see here : https://github.com/melonjs/melonJS/issues/982
     
  16. Like
    obiot got a reaction from PLAYERKILLERS in free-texture-packer   
    here it is :
    commit :
    https://github.com/melonjs/melonJS/commit/5be6a92a4800a4f819d07d1863772413dc0068c4
    build 8.0 :
    https://melonjs-builds.s3.amazonaws.com/index.html?prefix=artifacts/master/2573/build/
  17. Like
    obiot got a reaction from PLAYERKILLERS in free-texture-packer   
    nice ! Will add it ASAP, thanks for the feedback
  18. Like
    obiot got a reaction from PLAYERKILLERS in melonJS 7.1.0   
    Hi Guys,
    Back from holiday, and after having missed the release window before leaving, here is finally the latest 7.1.0 update for melonJS.
    Some nice things in this release, including :
    Last but not least,  staggered hexagonal and isometric Tiled maps support More technical catch-up to align both the Canvas and WebGL renderer, and further improvement to the new me.GLShader class Various fixes and improvements in me.Text, Physic, Pointer, Audio and Sprite objects. See full changelog here, and as always all changes are backward compatible with the previous version, and available here:
    https://github.com/melonjs/melonJS/releases/tag/7.1.0
    or on npm/jsdeliver :
    https://www.jsdelivr.com/package/npm/melonjs
     
    Tell us what you think !
     
    -- the melonJS team
     
  19. Like
    obiot reacted to PLAYERKILLERS in wip: PLAYERKILLERS.EXCHANGE   
  20. Like
    obiot reacted to PLAYERKILLERS in melonJS 6.4.0   
    Thank you!
  21. Thanks
    obiot got a reaction from PLAYERKILLERS in melonJS 6.4.0   
    Hello, shortly after the Chinese new year, here is a new release of melonJS,
    High-Level Changes :
    New documentation format, including a better, more modern, layout and search feature. http://melonjs.github.io/melonJS/docs/index.html  Support for Multiple Texture Packer Textures Added Colour Tint support for Renderable (WebGL mode only for now) Bunch of small fix and improvements on Renderable,  Animations, Isometric rendering, and System renderers See here for a more detailed changelog, there is no API change this time (just some internal re-factoring), so you can safely upgrade without breaking your game
    Have fun guys, and let us know what you think about the new documentation ! (it certainly can be further tweaked/improved)
    --- the melonJS team 
  22. Thanks
    obiot got a reaction from sistemlogikadigital in melonJS 6.4.0   
    Hello, shortly after the Chinese new year, here is a new release of melonJS,
    High-Level Changes :
    New documentation format, including a better, more modern, layout and search feature. http://melonjs.github.io/melonJS/docs/index.html  Support for Multiple Texture Packer Textures Added Colour Tint support for Renderable (WebGL mode only for now) Bunch of small fix and improvements on Renderable,  Animations, Isometric rendering, and System renderers See here for a more detailed changelog, there is no API change this time (just some internal re-factoring), so you can safely upgrade without breaking your game
    Have fun guys, and let us know what you think about the new documentation ! (it certainly can be further tweaked/improved)
    --- the melonJS team 
  23. Like
    obiot got a reaction from AndreasLoew in melonJS 6.4.0   
    Hello, shortly after the Chinese new year, here is a new release of melonJS,
    High-Level Changes :
    New documentation format, including a better, more modern, layout and search feature. http://melonjs.github.io/melonJS/docs/index.html  Support for Multiple Texture Packer Textures Added Colour Tint support for Renderable (WebGL mode only for now) Bunch of small fix and improvements on Renderable,  Animations, Isometric rendering, and System renderers See here for a more detailed changelog, there is no API change this time (just some internal re-factoring), so you can safely upgrade without breaking your game
    Have fun guys, and let us know what you think about the new documentation ! (it certainly can be further tweaked/improved)
    --- the melonJS team 
  24. Thanks
    obiot got a reaction from PLAYERKILLERS in melonJS 6.3.0   
    on this Christmas Eve, I'm happy to be able to "put" a new 6.3.0 version of melonJS under your virtual Game Dev Christmas tree
    The menu today will be the following :
    the WebGL renderer went through some heavy internal changes to align it with the Canvas one in terms of graphic rendering, allowing to stroke and/or fill all shapes properly (see here for a simple example of the final result, demonstrating shape drawing + alpha blending + mask/clipping in WebGL). on top of the API improvement for shape drawing, the WebGL renderer has also been greatly optimised in terms of memory usage or shape drawing operations (faster, better, stronger) renderable now support rendering mask in both Canvas and WebGL mode, by simply adding a me.Shape mask object to any renderable. This feature is pretty cool, works with any object inheriting from me.Renderable (Container, Sprite, etc...) and is the easiest ever to use audio core has been updated, and improve the audio unlock features (since desktop browser now also need that...) other small fixes here and there to make all the elves secretly running your game loop happier See here as well for a more detailed changelog, there is only one API change but in a backward compatible way, so you can safely upgrade without breaking your game
    Wishing everybody a Merry Christmas !
    --- the melonJS team 
  25. Like
    obiot got a reaction from PLAYERKILLERS in me.Renderable.onVisibilityChange()   
    found and fixed a similar case
    https://github.com/melonjs/melonJS/commit/43d91c800fa684ae2fe61e26d183842cc254dfcb