Popular Content

Showing content with the highest reputation since 06/20/2018 in all areas

  1. 9 points

    Dancing in tracksuit pants

    Another demo with fabric animation. Just some dude who's doing some cool dance moves. https://punkoffice.com/tracksuit/
  2. 8 points

    Babylon objects shop

    Hello, I propose you here a shop to download models 3d for Babylon. Each download contains a .max file (for 3ds max) a .babylon file and all the textures. The models are ready to use and you can do whatever you want. The modeling is medium poly and are designed to be usable in a game. I would complete the shop from time to time. I also plan to add free templates later and you will have later, also the opportunity to add models in the shop either free or for sale. I hope it will be useful. Do not hesitate if you have any questions. Link of the store
  3. 8 points

    Playground saved scenes hosed

    Thank you guys..I was a fun wake up for me 6am: my inbox full of alerts, 2 issues created on the repo. I jumped naked from my bed to my office 6:30am: Issue seems to come from the snippet server not able to communicate anymore with our azure SQL server. 6:45am: Ok the SQL server is forcefully refusing all incoming requests. 7am: Even with no firewall, all incoming connections are rejected. Opening a ticket. I have to pay to get support. Closing the ticket 8am: My daughter woke up. I need to dress and to stop my investigation but seems related to a hard limit linked to the subscription I'm using (Free) 9am: Ok my daughter is at school, let's go back to business 9:15am: Bumping the SQL Server instance to a bigger subscription. Problem solved
  4. 6 points

    geometry Builder product design

    full design bu GeometryBuilder | size :GB model size = 50 kb with html - main .obj model size = 65 MB https://demos.5kb.me/Revival/index4.html
  5. 6 points

    Links to Models for Importing

    You can now see which models are available for downloading http://doc.babylonjs.com/resources/meshes_to_load
  6. 6 points

    my babylonjs playground setup

    enjoy! β›³ http://www.babylonjs-playground.com/#8E64CV
  7. 5 points
    The Leftover

    Real-time 3D flight display

    Last week, I discovered that real-time aircraft flight data is available through an open API. Two, in fact. Already having a city, I decided show overflights. I put in a five-minute delay to permit me to smooth the data but this is almost real-time. Video shows FedeX coming into SFO over San Francisco. This is not very zoomy but it feels signficant. I am not entirely sure what to do with it. http://www.brianbutton.com/babylon/MonoPlane.mp4 Airplane model was built out of cardboard, dowels, plywood and rubber bands. https://www.babylonjs-playground.com/#H3Z6J1#7
  8. 5 points

    Lamps on Babylon / Open Contest!

    https://www.babylonjs-playground.com/#MU17PR#72 Ok Challenge time, I would like to see how others would handle the shadows and optimization for this. Cause I have to get on to other things now...
  9. 4 points

    Shrink wrapping

    hey @Johnny80 i write algorithm about that in geometryBuilder but for release that i need time it is not soon may be 2 mounth
  10. 4 points

    Perplexus Level 46

    Level 47
  11. 4 points


    @enpu - Awesome, sounds really handy. Saying that, I have no intention of using another engine/framework with Panda Editor. Panda is absolutely awesome and in my opinion, the most straight forward, easy to get into and fun engine/framework on the market - thanks to all the hard work you're putting in! Looking forward to the release
  12. 4 points

    Text as polygon mesh

    https://www.babylonjs-playground.com/#XWVXN9#53 Yay, finally got that chrome-like reflecto-shader fired-up on the text. Coooool. wheelPrecision and minZ set REAL LOW, so mousewheel-in and check out the hi-rez fractal-pic (refMap). Slide-around with control-drag, of course. Awfully danged pretty. The texture MIGHT need a 50% uOffset or something. More fractal patterns seen when text is viewed from ends... than when viewed head-on (after animation completes). Panorama version #55 definitely has a texture mapping issue. Still looks cool, though. Studying. #56 is nice, too... had to set the pivot point to boundingbox center. Note: sps.setParticles(); in line 142 area... is not-needed. The setTimeout is unnecessary, too. Only tmesh.material = shaderMaterial; is necessary. Internet Explorer highly-dislikes this... ()=> ...in lines 170 &171. So, here's a version that works for IE. (I probably have some compatibility mode incorrectly set in my IE.)
  13. 3 points
    Hello ! As I'm currently playing with some unsigned integer textures, I would love to see BabylonJS support them. I'll do a PR as soon as possible, adding some (all ?) constants about internal formats (for instance Engine.TEXTUREFORMAT_RGBA_INTEGER) and texture types (for instance Engine.TEXTURETYPE_UNSIGNED_SHORT), and updating the function to retrieve the internal sized format in order to be able to return new values as gl.RGBA16UI. Does it seem ok for you ? Moreover, we're still using Engine.TEXTURETYPE_UNSIGNED_INT to refer to both gl.UNSIGNED_INT (only available for depth textures in WebGL 1) and gl.UNSIGNED_BYTE texture types. I think we need to do a breaking change because gl.UNSIGNED_INT is now a valid texture type for unsigned integer textures in WebGL2 like RGBA32UI textures. Valid combinations of internal format, type and internal size format are listed here in table 3.2. Color-renderable and texture-filterable formats are listed here in table 3.13. This info is also gathered here. And this is a bit less exhaustive in WebGL 2 Specs. [EDIT] With WebGL2, specify the internal sized format will be necessary as some combinations of format and type don't lead to a unique internal sized format. For this purpose, we'll need to add internal sized formats as constants in BABYLON.Engine and we won't lean on _getRGBABufferInternalSizedFormat() function anymore. However, only a few combinations fail to give a unique result: - RGBA format + UNSIGNED_BYTE type - RGBA format + UNSIGNED_INT_2_10_10_10_REV type - RGBA format + FLOAT type - RGB format + UNSIGNED_BYTE type - RGB format + HALF_FLOAT type - RGB format + FLOAT type - RG format + FLOAT type - RED format + FLOAT type So we could just ignore them and return a default value in these cases, for now. [EDIT 2] Current type constants: private static _TEXTURETYPE_UNSIGNED_INT = 0; private static _TEXTURETYPE_FLOAT = 1; private static _TEXTURETYPE_HALF_FLOAT = 2; Suggested new type constants: private static _TEXTURETYPE_BYTE = 0; private static _TEXTURETYPE_UNSIGNED_BYTE = 1; private static _TEXTURETYPE_SHORT = 2; private static _TEXTURETYPE_UNSIGNED_SHORT = 3; private static _TEXTURETYPE_INT = 4; private static _TEXTURETYPE_UNSIGNED_INT = 5; private static _TEXTURETYPE_FLOAT = 6; private static _TEXTURETYPE_HALF_FLOAT = 7; private static _TEXTURETYPE_UNSIGNED_SHORT_4_4_4_4 = 8; private static _TEXTURETYPE_UNSIGNED_SHORT_5_5_5_1 = 9; private static _TEXTURETYPE_UNSIGNED_SHORT_5_6_5 = 10; private static _TEXTURETYPE_UNSIGNED_INT_2_10_10_10_REV = 11; private static _TEXTURETYPE_UNSIGNED_INT_24_8 = 12; private static _TEXTURETYPE_UNSIGNED_INT_10F_11F_11F_REV = 13; private static _TEXTURETYPE_UNSIGNED_INT_5_9_9_9_REV = 14; private static _TEXTURETYPE_FLOAT_32_UNSIGNED_INT_24_8_REV = 15; NOTE 1: As every user should use the public constants and not directly the private numbers the constants are bound to, we should be allowed to modify the order (FLOAT will be defined by 6 instead of 1 for instance). If you do not want to change the order of the three first constants already defined, just say it. NOTE 2: UNSIGNED_INT will not refer to UNSIGNED_BYTE anymore. Breaking change. [EDIT 3] Current format constants: private static _TEXTUREFORMAT_ALPHA = 0; private static _TEXTUREFORMAT_LUMINANCE = 1; private static _TEXTUREFORMAT_LUMINANCE_ALPHA = 2; private static _TEXTUREFORMAT_RGB = 4; private static _TEXTUREFORMAT_RGBA = 5; private static _TEXTUREFORMAT_R = 6; private static _TEXTUREFORMAT_RG = 7; NOTE 1: No 3 ? Did I miss something ? NOTE 2 : I personally guess TEXTUREFORMAT_R is not a good idea for 3 reasons: - It's confusing for people already used to WebGL who know it's gl.RED and not gl.R - It doesn't seem really instructive for beginners who will think R is the good naming - Beginners generally don't play with texture formats and types That's why I suggest to create and use TEXTUREFORMAT_RED in the future. And keep TEXTUREFORMAT_R for retrocompatibility. But once again, it's only a suggestion. Suggested new format constants: private static _TEXTUREFORMAT_ALPHA = 0; private static _TEXTUREFORMAT_LUMINANCE = 1; private static _TEXTUREFORMAT_LUMINANCE_ALPHA = 2; private static _TEXTUREFORMAT_RED = 3; private static _TEXTUREFORMAT_R = 3; private static _TEXTUREFORMAT_RG = 4; private static _TEXTUREFORMAT_RGB = 5; private static _TEXTUREFORMAT_RGBA = 6; private static _TEXTUREFORMAT_RED_INTEGER = 7; private static _TEXTUREFORMAT_R_INTEGER = 7; private static _TEXTUREFORMAT_RG_INTEGER = 8; private static _TEXTUREFORMAT_RGB_INTEGER = 9; private static _TEXTUREFORMAT_RGBA_INTEGER = 10; NOTE 1: Once again, we should be allowed to change the order of the first constants as nobody should use the private numbers directly.
  14. 3 points
    @V!nc3r You beat me to it! I guess I don't need to build a PG scene now.πŸ˜€ But perhaps this code snippet will provide an example just loading images,,, or whatever you wish. @Temechon helped me on this forum 3 years ago now... he helped me allot with managing assets and GUI elements using his bGUI.js extension.πŸ™‚ DB
  15. 3 points
    Cryptovoxels is my ethereum virtual world. You can buy parcels of land in the world, then build shops and stores using the in world voxel tools. I started this project in babylon.js about 3 months ago and sold the first parcels of land last week. A video of the editing tools: The world is multiuser, I use websockets + a node.js server (using babylon on the server side) so that you can see other players as they explore the world. The voxel engine uses a greedy mesher with ambient occlusion to generate the meshes, and then a custom fragment shader to do the texture lookup in a texture atlas. The performance is really good on mobile, and it works well in VR as well (mobile VR and desktop). Babylon.js has been really awesome to work with, the typescript bindings are great and the playground has helped me out heaps. I also created a .docset file for browsing the documentation using Dash on os x. Glad to be part of babylon.js community!
  16. 3 points
    Seriously, uncheck the Screenshots box.
  17. 3 points
    Hi guys! There is a "odd thing" that @Arte and I created, once. It uses a complex stackPanel swap-out method to accomplish a mousewheel-active, slider-drag-active, scrolling dialog/listview. https://www.babylonjs-playground.com/#08KEYA#32 Not sure if useful or on-topic, but I thought I would pass it along. Be well, guys. Oh yeah, there's another terrible example/attempt... https://www.babylonjs-playground.com/#11JINV#44 Phew... talk about taking the long bus to school. Perhaps smarter to make a giant plane-o-text, position it at 1000x 1000z. Light it and scroll a 2nd camera across it, create a renderTargetTexture from THAT 2nd camera, and feed that RTT to another plane's material. Put the plane inside the picture frame. Done. That PG series eventually became "the sparkle-fonts test". Goofy fun.
  18. 3 points

    The Wingnut Chronicles

    Though I would give you an explanation. Here is your box with a diagonal plane added. Note that the plane is a rectangle as one side lies along the edge of the box (size 10) and the other side is a diagonal of a face of the box (size 10 * sqrt(2) approx = 14.14) After rotation of PI/4 about the x axis the plane is horizontal. Now you want to rotate the box about the Y axis so that the corner of the plane indicated by the yellow arrow is on the Z axis pointed to by the red arrow. Looking down on the plane The yellow corner needs to be rotated about the Y axis through the angle marked in white. Since this angle is in a rectangle it cannot be PI/4. Good old trigonometry gives the angle as atan(5/(5 * sqrt(2) ) approx = 0.615479708670387 When you want it in the form PI/a then a = PI/0.615479708670387 = 5.10429931211954 = 5.1 to 1 dec place. So for the second rotation you need box.rotate(BABYLON.Axis.Y, Math.PI/5.10429931211954, BABYLON.Space.WORLD); or in approximation box.rotate(BABYLON.Axis.Y, Math.PI/5.1, BABYLON.Space.WORLD); Here is a PG https://www.babylonjs-playground.com/#M3AQS#3 You can take out the comments to see the effects and the animation. Mmmmm keep thinking I was going to tell you something earlier - couldn't have been important.
  19. 3 points
    Q1 : I guess there's a misunderstanding about what is the bounding sphere of a mesh here, of any mesh (a sphere or a box, or anything). The bounding sphere is simply the sphere embedding the mesh bounding box ! In the particular case where the mesh itself is a sphere, well, it is contained in a bounding box greater than it, this bounding box being contained in its bounding sphere greater than the bounding box. That's why the bounding sphere radius is always greater than the contained spherical mesh radius. If you want a better explanation, please have a read at the part starting by "As you may know, a mesh -so a solid particle- is inside its bounding ..." here : http://doc.babylonjs.com/how_to/solid_particle_system#particle-intersections In the case of spherical mesh the ratio between the bounding sphere radius and the contained sphere radius is sqrt(3)
  20. 3 points


    I am very excited to see work to be done on the editor side, I am using Panda2 mainly because it is something I can code by hand and is convenient to use, not too big, I need that hand made coding precision because I am interfacing a lot... personally I am not into visual editor, so please add as much as possible editor functions and you'll make me happy ^^ (hope to see a quick jump to function/classes definition )
  21. 3 points
    V 2.2.0, Improvement. We can now add: - Sound/music area defined by the radius of a half sphere. - Water area and change some options. - Collision wall : to create invisible barriers if you want to prevent access to a certain place of your scene. - Portals to go from one scene to another. Portal information is saved in metadata to reuse them in your own game with your own teleportation system. Enjoy.
  22. 3 points
  23. 3 points

    Best way to do a 90 deg Extrude

    https://www.babylonjs-playground.com/#WGTQ6E#9 Solved... Now I need to figure out how to fix the shading. https://www.babylonjs-playground.com/#WGTQ6E#11
  24. 3 points

    The Wingnut Chronicles

    Following on from your post in New GUI control: The Grid - I thought I would help you learn more about matrices. The term matrix in Latin meant a womb or female breeding animal. In printing the rows and columns of letters were safely contained as a matrix before giving birth to the printed page. Now all the numbers you need to reproduce a mesh at the right position, rotation and scale are stored in the WorldMatrix. Hopefully you will now be able to find matrices all warm, cuddly and motherly, they are after all, literally, the matriarchs of mathematics πŸ‘΅πŸ˜€ A source
  25. 3 points

    Debug Body Colors plugin for Arcade Physics

    https://github.com/samme/phaser-plugin-debug-body-colors Colors Arcade Physics bodies by collision state (blocked, touching, embedded).