obiot

Members
  • Content Count

    228
  • Joined

  • Last visited

  • Days Won

    1

obiot last won the day on February 19

obiot had the most liked content!

About obiot

  • Rank
    Advanced Member
  • Birthday July 20

Contact Methods

  • Website URL
    http://melonjs.org/
  • Twitter
    melonjs

Profile Information

  • Gender
    Male
  • Location
    Singapore

Recent Profile Visitors

2,661 profile views
  1. me.Renderer is just a base class for both the Canvas and WebGL renderer to prevent duplicated code as half of it is anyway common to both. as for the setColor() methods, this is used to defined the current fill and stroke rendering color and is defined here for the canvas renderer : https://github.com/melonjs/melonJS/blob/master/src/video/canvas/canvas_renderer.js#L571-L586 and there for the WebGL one : https://github.com/melonjs/melonJS/blob/master/src/video/webgl/webgl_renderer.js#L591-L603 reason of this one not being in the base Renderer class is that, as you can see, the implementation is different based on the target renderer. hope this helps !
  2. obiot

    Passing Closed arguments to Timer

    FYI, I just added it to the current 7.0 version : https://github.com/melonjs/melonJS/commit/97d6a2eb1dd8d788112b40c6f92869e0b25b5b39 test build available below if you want to give it a try : https://melonjs-builds.s3.amazonaws.com/index.html?prefix=artifacts/master/2506/build/
  3. obiot

    Page zoom breaks inventory

    that's disappointing.... Would you mind trying with the the latest 7.0 build ? https://melonjs-builds.s3.amazonaws.com/index.html?prefix=artifacts/master/2503/build/ there is no api change between 6.4 and 7.0 that will impact you (so except maybe from the plugin it should work out of the box) also I added a me.video.renderer.updateBounds() function that you can call yourself (cleaner than a private variable) and that will update the internal cache position on the parent container. if just replacing the lib does not do anything, try calling the function from the console before/when opening the UI
  4. obiot

    Passing Closed arguments to Timer

    to keep it under my radar : https://github.com/melonjs/melonJS/issues/977
  5. obiot

    Page zoom breaks inventory

    the other issue with browser zooming is that it does not trigger any event and that melonJS is "caching" the parent relative position, see below and only recalculate it on a resize event : https://github.com/melonjs/melonJS/blob/master/src/video/video.js#L358-L367 therefore when one zoom in or out pointer coordinates are thereof off as the cached value is not correct anymore..... a quick way around it for now could be for you to set canvasOffset to null when the end user opens the UI, by doing " me.video._canvasOffset = null; " this is certainly a bit hackish, and I will probably rather add a method like "updateBoundingClientRect()" or something (that can be called from somewhere we can detect a zoom), but at least it can help validate my assumptions (if you don't mind testing it)
  6. obiot

    Passing Closed arguments to Timer

    Indeed this is a valid request and to be honest i don’t recall why arguments passlng has not been included when we implemented these functions, as this is indeed supported by the global « standard » ones. i’m glad that you found a way to make it work for you (passing arguments to bind was another one), but i’ll look anyway into adding it to our setTimeout and setInterval methods. Thanks !
  7. obiot

    Page zoom breaks inventory

    so I tried this morning, but I'm not getting how to actually zoom in or out the browser with the game going fullscreen when starting, and the browser switching back to the main screen (score/$ dashboard, screen "return to game/how to play/etc...), how do you actually zoom ?
  8. thanks for the feedback, but coming from the Unity word, isKinematic is kind of well know as they define the same property. Now admittedly the use of isKinematic has been slightly abused in melonJS to also apply to pointer event as well (if this is what you mean), where it should be limited to physic interactions/motions.
  9. obiot

    Page zoom breaks inventory

    Hi, did it help ?
  10. obiot

    Entity - set second bounding box

    y-order sorting is a way to cheat with sprite draw sorting, especially in isometric games, so that (simply put) things at the bottom of the screen are properly overlapping thing at the top if you google it (game y-order sorting) you'll find lots of discussion about it, vs z-ordering and with some examples and pro&cons. About changing colour, using the latest (6.4.0) version of melonJS and WebGL (tinting is not yet available with the Canvas Renderer), you can use the sprite tinting features : http://melonjs.github.io/melonJS/docs/me.Renderable.html#.tint (note that in the 6.x release cycle, WEBGL is not the default, you will have to force it in the video init method at least by specifying `renderer : me.video.AUTO`, this will change in the 7.x release as WebGL will now be the default). about hovering, you can use the `pointerEventer` and `pointerLeave` event (http://melonjs.github.io/melonJS/docs/me.input.html#.registerPointerEvent), see as well an example of a hover feature in the GUI example : https://github.com/melonjs/melonJS/blob/master/src/renderable/GUI.js As for the bounding box, I did not really "deeply" think about your issue, but yeah definitely, on top of the y sorting (if that helps) you should really consider upgrading to the latest version if possible. the changelog is quite huge since the 5.1.0 version : https://github.com/melonjs/melonJS/blob/master/CHANGELOG and except for all utility function that were moved under the me namespace, mostly all API changes since then were implemented in a backward compatible fashion, so updating should be relatively smooth : https://github.com/melonjs/melonJS/wiki/Upgrade-Guide. hope this all helps ! and yes I would love to try your games, will send you an email right after, thanks 😛
  11. obiot

    Boiler Plate Grunt for Self Hosting

    FYI I just finished replacing grunt by rollup to create our melonJS bundle. its pretty cool actually, and I can now truly external dependencies as they are and "bundle" at build time ! https://github.com/melonjs/melonJS/blob/master/rollup.config.js
  12. obiot

    Page zoom breaks inventory

    Hi, sorry for the long delay in replying, did you fix your issue ? there are actually 3 events you could subscribe to (also triggered in the following sequence): WINDOW_ONRESIZE : http://melonjs.github.io/melonJS/docs/me.event.html#.VIEWPORT_ONRESIZE (that actually follow the standard "DOM" size/orientation change event) VIEWPORT_ONRESIZE : http://melonjs.github.io/melonJS/docs/me.event.html#.VIEWPORT_ONRESIZE CANVAS_ONRESIZE : http://melonjs.github.io/melonJS/docs/me.event.html#.CANVAS_ONRESIZE so assuming all you "need to know" is when the window is being resize, you can then do : me.event.subscribe( me.event.WINDOW_ONRESIZE_CHANGE, function resizeMyUI() { // do something amazing } );
  13. obiot

    melonJS 6.4.0

    Add to what ? Can you be more specific? Thanks.
  14. obiot

    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
  15. obiot

    function of the Sprite Object not recognized

    Hi, since the 6.0.0 version we sandboxed all previous extensions under our me namespace : https://github.com/melonjs/melonJS/wiki/Upgrade-Guide#5xx-to-600 As a consequence the clamp method is since then only available through me.Math.clamp() http://melonjs.github.io/melonJS/docs/me.Math.html#clamp rather do : pos.x = me.Math.clamp(val, min, man) should fix your issue.