Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Reputation Activity

  1. Like
    obiot got a reaction from PLAYERKILLERS in Falls back to CANVAS renderer   
    there were a massive rewrite in the version 8 compared to version 7 yes, with better detection and fallback to canvas, and also WebGL2 support, so you should actually see performances improvement   
    but this might be linked the the below changes on older computer with 2 GPU, as browser are all switching to a low-power mode by default, as opposed to the previous "high-performance"
    Renderer : allow specifying the default powerPreference value for the WebGL Renderer (on Safari and Chrome 80+ default is now low-power) see here for the WebGL specs : https://www.khronos.org/registry/webgl/specs/latest/1.0/
    my pleasure and merry Christmas to you too ! I have done anything in a while, between moving house and holiday period, I;ll only be back in January
  2. Like
    obiot got a reaction from PLAYERKILLERS in Falls back to CANVAS renderer   
    yes, but at that point it's either you set `failIfMajorPerformaceCaveat` to false and games won't work on some linux platform (this was one of the issue in the past), or true but then windows machines that don't have a good enough WebGL driver implementation will fallback to canvas.... unless you have a good idea, not much more I can do about this to be honest... 
  3. Like
    obiot got a reaction from PLAYERKILLERS in melonJS es6 module   
    Hi Guys,
    as part of the 9.0 (master) branch, all classes have been converted to es6, and the build process now generate 3 files :
    melonjs.js (plain es5 umd bundle) melonjs.min.js  (minified es5 umd bundle) melons-module.js (es6 module) both the es5 umd bundle and es6 module are now available under our amazon build bucket (click on the latest build version) :
    I haven't yet really tested it to be honest, as I'm still focusing on other features and I haven't really yet converted any example, but It would really be nice to have any external feedback/testing on this one if anyone here wants to be a alpha-beta tester for the es6 module.
    the API are still supposed to be backward compatible (inheritance mechanism has not been changed yet to the es6 class inheritance), so using "import * as me from melons-bundle.js" should just be working as previously.
  4. Thanks
    obiot reacted to walfin in melonJS 8.0.0   
    Hooray to melonJS 8.0.1! 🎉🎊
  5. 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 : 
  6. 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
  7. 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 :
  8. 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
  9. Thanks
    obiot got a reaction from walfin in The COVID-19 Game   
    Approved with some smart renaming 👍🥳
  10. 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
  11. 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
  12. 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.
  13. 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.
  14. Thanks
    obiot reacted to PLAYERKILLERS in beta 8.0 & updated WebGL renderer   
  15. 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.
  16. 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.
  17. 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
  18. 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.
  19. 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
  20. Like
    obiot got a reaction from PLAYERKILLERS in free-texture-packer   
    here it is :
    commit :
    build 8.0 :
  21. Like
    obiot got a reaction from PLAYERKILLERS in free-texture-packer   
    nice ! Will add it ASAP, thanks for the feedback
  22. 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:
    or on npm/jsdeliver :
    Tell us what you think !
    -- the melonJS team
  23. Like
    obiot reacted to PLAYERKILLERS in wip: PLAYERKILLERS.EXCHANGE   
  24. Like
    obiot reacted to PLAYERKILLERS in melonJS 6.4.0   
    Thank you!
  25. 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 
  • Create New...