Samuel Girardin

Members
  • Content count

    227
  • Joined

  • Last visited

  • Days Won

    2

Samuel Girardin last won the day on February 4 2016

Samuel Girardin had the most liked content!

1 Follower

About Samuel Girardin

  • Rank
    Advanced Member

Contact Methods

  • Website URL
    http://www.visualiser.fr
  • Twitter
    samuelgirardin

Profile Information

  • Gender
    Male
  • Location
    France

Recent Profile Visitors

1,928 profile views
  1. What's your prefered physics engine these days?

    @BitOfGold Hi, sometimes my english is bad, could you be more precise and explain me this : 'It maybe will miss important elements in a game like collision events and trigger (collision only) bodies' . Are you talking about object callback when collision occurs ? thx sam
  2. New Physics Engine Progress

    @Deltakosh I ve started that : https://github.com/samuelgirardin/Documentation/blob/master/content/extensions/EnergyJS/EnergyJS.md I m not sure where you want to put it ?
  3. New Physics Engine Progress

    I only use emscripten to produce asm or wasm. The workflow ia exactly the same. I just have to add a specific flag to the compiler to emit asm or wasm. For the moment webassembly was just a test case. About your link, could be useful for heavy math calculation, but Javascript vm are more and more optimized.. Webaasembly is really useful to port existing c++ library to browsers. @Jerome
  4. New Physics Engine Progress

    Thanks guys. A blog post about wasm perf by Alon Zakai https://hacks.mozilla.org/2017/03/why-webassembly-is-faster-than-asm-js/
  5. New Physics Engine Progress

    @Deltakosh , I'm going to work on a doc page this week. Another thing, I ported energy.js to webAssembly, it works pretty well : file size is half than the asm.js version, performances are 5-10% better in FF or Chrome. Edge (40.15063.0.0) is far behind, (still alpha support of webAssembly ?). Edit : about Edge, I test the new release in Preview build 16299 , performances are equivalent to ff and chrome. Asm.js version runs almost equally in the 3 browsers. Here is 2 perf tests, asm.js and webassembly. Launch the page clic on the scene and press S, You have to wait all red boxes become gray. Its about 21000ms on my i3 for asm.js and 19000ms for webAssembly. asm.js test webAssembly test Can someone test those demos and confirm webassembly is faster than asm in this particular test ? sam
  6. New Physics Engine Progress

    Hi, Few news about energyJS, It's still in dev. Here is a quick very alpha preview with examples. This is not a bjs plugin version. @RaananW worked one year ago on the plugin. We need to talk about that, For the moment it reproduces more the c inteface of ODE c++ project(http:// www.ode.org). It's quite usefull, ODE documentation is really good, and I kept all the method name. Energyjs is port of Open dynamic engine to JS with EMSscripten (http://kripken.github.io/emscripten-site/) . Tuto1_friction Tuto2_friction2 Tuto3_bounce Tuto4_rolling_friction Tuto5_rolling_friction2 Tuto6_contact_cfm_erp Tuto7_contact_cfm_erp2 Tuto8_motion Tuto1_auto_disable_body WoodMachine BallJoint Trimeshes Vehicle (maybe you need to refresh the html page - loading is async and I forgot to fix that,, same for v+trailers) Vehicle+trailers (arrow key to control the vehicle, d to flip the vehicle) It's only cpu dependent, maybe a little more faster than oimo and canon. Really well documented on ODE's part. You may have a TOTAL_MEMORY bug, search '167108864' in js/energy.js and increased this value. This is just a start. I will publish this week the the typescript dev commented on github .
  7. Getting controls in GUI

    @Deltakosh I hope there is no missunterstanding with my post. I was totally shocked by this 'lamenta...' . Je voulais être grossier au début. Mais ce n'est ni le lieu, ni la manière d'être ici. Bref des baffes se perdent.
  8. Getting controls in GUI

    lamentably short tutorial ... anyway, maybe something like this : var screen = BABYLON.GUI.AdvancedDynamicTexture.CreateFullscreenUI("UI"); screen._rootContainer.getChildByName("whaturlookingfor")
  9. Positioning geographic coordinates to model

    @m.ali It actually works. Here is a castel : maps I get quickly the lat/loncoordinates of the 8 towers. Here is the playground : https://www.babylonjs-playground.com/#4E3KJK#5
  10. Positioning geographic coordinates to model

    hi @m.ali hi you can try that : https://www.babylonjs-playground.com/#4E3KJK#2 It comes from BING map API. Works like a charm. var levelOfDetail = 18 //between 1 and 22 give your lat long in pixel in map tile. You can use that //to got some correct 2d value for positionning your object // 1 is 782715170 meters/pixel // 22 is 0.0373 meter/pixel // 18 p1.subtract(p2) give me something like (-15,68) , you can work with that // 20 more precise give (-60 , 272) . var a= LatLongToPixelXY(50.030462313669034, 26.467167212377877,levelOfDetail) ; var b = LatLongToPixelXY(50.03022756277145, 26.467086619328583,levelOfDetail) ; console.log(b.subtract(a)) ; var clip = function (n, minValue, maxValue) { return Math.min(Math.max(n, minValue), maxValue); } var mapSize = function(levelOfDetail) { return 256 << levelOfDetail; } var MinLatitude = -85.05112878; var MaxLatitude = 85.05112878; var MinLongitude = -180; var MaxLongitude = 180; var LatLongToPixelXY=function(latitude, longitude, levelOfDetail) { latitude = clip(latitude, MinLatitude, MaxLatitude); longitude = clip(longitude, MinLongitude, MaxLongitude); var x = (longitude + 180) / 360; var sinLatitude = Math.sin(latitude * Math.PI / 180); var y = 0.5 - Math.log((1 + sinLatitude) / (1 - sinLatitude)) / (4 * Math.PI); var mapsize = mapSize(levelOfDetail); var pixelX = clip(x * mapsize + 0.5, 0, mapsize - 1); var pixelY = clip(y * mapsize + 0.5, 0, mapsize - 1); console.log("x",pixelX) ; console.log("y",pixelY) ; console.log("____________") ; return new BABYLON.Vector2(pixelX, pixelY); }; sam
  11. GUI - Input TextBlock

    Hi, @royibernthal I need for a project to enter only number . , backspace and enter. Maybe it can help you to implement your own. https://www.babylonjs-playground.com/#XCPP9Y#158
  12. GUI - isHitTestVisible

    @deltakosh I think you bug in your fix , you have deleted the if statement in _processPicking (button.ts) if (!this.contains(x, y)) { return false; } https://www.babylonjs-playground.com/#XCPP9Y#156 , only one event is fired
  13. GUI - isHitTestVisible

    public _processPicking(x: number, y: number, type: number): boolean { if (!this.contains(x, y)) { return false; } // new if (!this.isHitTestVisible) { return false; } in button.ts the if on isHitTestVisible seems to fix my problem. I'm quite sure that's a dirty solution
  14. GUI - isHitTestVisible

    That works if the button is a child of a container (rectangle for ie), and this last with isHitTestVisible set to false : https://www.babylonjs-playground.com/#XCPP9Y#153 On the first case, even if the button is at the top level (child of the advanced texture), isHitTestVisible is not take into account. It looks like it's missing loop through the childrens. @Deltakosh any idea ?
  15. GUI - isHitTestVisible

    Hi, Does it work as it should do ? https://www.babylonjs-playground.com/#XCPP9Y#152 One button, property isHitTestVisible set to false, the button is still clickable ? Is that normal ? I was expecting the opposite.