Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Reputation Activity

  1. Like
    Kesshi got a reaction from bghgary in Is Babylon.js for me ?   
    Some time ago i also needed to decide between ThreeJs and BabylonJs for our webgl projects.
    I decided to use BabylonJs because:
    better out of the box experience with a lot of features
    ThreeJs has also a lot of features but often you need to include some plugins for it. This can be an issue later on because some plugins may be no longer supported. BabylonJs is written in Typescript
    In my opinion this alone makes the whole library more stable than ThreeJs. You need to be very carefull if you want to write big libraries like this in pure JS. Very active developement. It feels almost like every day a new awesome feature is added  very very nice community which tries to help everyone
    If you have a problem. Just ask. We try to help. Bugs get fixed very fast after they get reported. If you have a simple project and you need have a fallback for old browsers without WebGL support, than i would go for ThreeJs because of the Canvas renderer.
  2. Like
    Kesshi reacted to Sebavan in rotationY of CubeTexture lost after clone   
    The fix has been deployed: https://github.com/BabylonJS/Babylon.js/pull/4972/commits/cbec960c6dbe05528da1bcd375406b97c9d91671
  3. Like
    Kesshi got a reaction from JackFalcon in Mesh visibility of children   
    Instead of "grandParent.isVisible = false;" you can use "grandParent.setEnabled(false);". This disables/hides the parent and all the children.
  4. Thanks
    Kesshi got a reaction from babbleon in (Earcut was not found) ExtrudePolygon   
    Earcut is no longer included in the babylon.js build. Its optional. You have to include it manually in your project.
    Just download the "earcut.min.js" from here https://github.com/BabylonJS/Babylon.js/tree/master/dist and add it to your project.
  5. Like
    Kesshi reacted to Deltakosh in Babylon.js v3.2 is out   
    It's celebration time!
    I'm so thrilled to announce that Babylon.js v3.2 is now out. Once again this could not have being possible without all of you (contributors, testers, bug hunters, doc writers)!
    Thanks folks! We have a wonderful vibrant community. So feel proud, share it, love it, use it
    Here is the release notes: http://doc.babylonjs.com/whats-new
    The blog will it the social network at 10am PST!
    And the announcement video:
  6. Like
    Kesshi got a reaction from MichaelD in Multiple Textures on same Geom   
    To enable correct alpha blending you should enable "useAlphaFromDiffuseTexture" at your material.
    See line 25: http://www.babylonjs-playground.com/#YDO1F#28
  7. Thanks
    Kesshi got a reaction from JohnK in Uses of CreateScreenshot   
    The way CreateScreenshot is working has changed internally. I think this tutorial was not updated.
    If you want the old behaviour, you have to use CreateScreenshotUsingRenderTarget.
  8. Like
    Kesshi reacted to Deltakosh in Please welcome the TransformNode   
    1. dispose() does not remove the TransformNode from the Scene.: https://github.com/BabylonJS/Babylon.js/blob/master/src/babylon.scene.ts#L3850
    2. dispose() should also dispose all the children: Excellent point! will fix it
    3.getChildTransformNodes() helper just like getChildMeshes(): Yeah! WIll do it as well
  9. Like
    Kesshi reacted to Deltakosh in Please welcome the TransformNode   
    I know this was a big ask from the community so I'm glad to announce that we finally support TransformNode!
    They are node with position / scaling / rotation like any mesh but without all the rendering. So they are just here to add transformation to a hierarchy.
    @JohnKsorry my friend because this could require some update to the doc (even if by itself everything will keep working the same as before)
  10. Thanks
    Kesshi got a reaction from rgalindox in Line width similar to LineRenderer in Unity   
    Lines with a custom width are not possible with WebGL (at least not on windows plattforms).
    You have to simulate it with triangles. You can have a look here: https://mattdesl.svbtle.com/drawing-lines-is-hard
    In my project i created a basic implementation of that technique by creating a custom BabylonJS mesh and a shader.
  11. Like
    Kesshi got a reaction from brianzinn in CreateScreenshotUsingRenderTarget and anti-aliasing   
    You did not devine the number of samples in your PG.
    I fixed it in line 64 here: https://www.babylonjs-playground.com/#HJI09Z#2
    I used 16 samples.
  12. Like
    Kesshi got a reaction from Kjue in pCon.box (furniture space planning)   
    @Deltakosh I talked to our marketing department. We would like to promote our app on your site.
    Could you use the attached image and the following information please?
    Text: pCon.box by EasternGraphics
    Url: http://www.easterngraphics.com/en/products/pconbox.html

  13. Like
    Kesshi reacted to javalang in PBR composer ( node based )   
    I'm happy to announce that the node based PBR Composer is on the road.
    What is PBR Composer ? In short, PBR Composer helps you design and visualize a PBR Material in an efficient way. Parameterizing takes place by dragging and connecting specific nodes from a palette (typically textures, colors and uv-coordinates) to the output node, which represents the PBR Material. A preview panel lets you see all changes in realtime and the corresponding js-sourcecode will be updated as well. The resulting graph  can be downloaded in JSON format for later use. Images can be inserted via preview fileselect dialog and/or Drag&Drop, in latter case the images will be transformed to embedded data-urls so the javascript functions can be reused without dependencies. Different meshes and environment-maps are available to see the material under different geometry and reflective light conditions.
    Motivation for PBR Composer: Due to the complexity of the PBR material (soo many combinations with soo much amazing effects) there is a need of having realtime feedback reflecting the changing parameters. Other than some editor already out using a bunch of parameters in confusing properties panels, nodes lets you to concentrate only on the parameters you need giving a nice overview in form of a graph. Nodes can also be shared and avoids therfore redundancy in the sourcecode. The goal is/was to make the user interface as efficient as possible. The idea for realizing the PBR Composer was inspired from Shader Editor.
    Technical details: PBR Composer is a web application based on dat.gui, w2ui, litegraph.js and of course on BABYLON.js
    TODO: At the moment, PBR Composer is customized for PBR-Glossy materials. The current activity is realizing a function for switching between Glossy and Metallic paradigms.
    Any questions? Let me know...
    PS: PBR Composer is still in alpha stage but will be deployed in beta stage soon
    Here it is te demo ...

  14. Like
    Kesshi reacted to vinhpt in 3D Text in Babylonjs using Vectorize-text   
    I have just build 3D Text meshes in Babylonjs with the help of Vectorize-text.
    Please visit website http://grid.vn/3dtext to play and see the source code.
    but the 3D Text meshes still not correct at the holes, some one can help please??? 
  15. Like
    Kesshi reacted to Deltakosh in Babylon.js v3.0 is almost done   
    Hey team!
    we plan to ship bjs 3.0 on 7/12/2017. Please consider adding what you want before end of this week (7/7) or it will have to wait for a couple of weeks (We will keep the code frozen for one week to do the final validation)
  16. Like
    Kesshi reacted to Deltakosh in New Gui in Babylon   
    Ready to test: http://doc.babylonjs.com/overviews/gui!!!
  17. Like
    Kesshi got a reaction from Sebavan in memory usage increases because of picking   
    ok i put in on my todo list for the next days.
  18. Like
    Kesshi got a reaction from HugoMcPhee in Everything of model is reversed after it is loaded into Babylon   
    This looks like a coordinate system issue to me. By default BabylonJs uses a left handed system but modeling software usally uses a right handed sytem.
    That means your obj is also right handed.
    You can try to enabled the right handed system in BabylonJs before importing the model like this:
    scene.useRightHandedSystem = true;
  19. Like
    Kesshi got a reaction from 8Observer8 in [Solved] Compile error in lib.dom.d.ts with Typescript 2.2.1   
    No, you can just remove the AudioContext interface definition from the babylon.2.5.d.ts file here:
  20. Like
    Kesshi reacted to Deltakosh in Material push mode: The new big optimization   
    Hello team!
    Since the very first version of Babylon.js materials are working in a pull mode. This means that every time a mesh needs to be rendered, its material has to ask the engine about a lot of information in order to compile the best shader possible for the given mesh.
    For instance, here is an incomplete list of states required to compile a shader:
    - Lights affecting the mesh (taking in account inclusion and exclusion lists and masks)
    - Textures and channels (including associated parameters like parallax for bump or reflection mode for reflections)
    - Fog, clip planes, point rendering or wireframe
    - Mesh attributes (does the mesh contains UV? tangent? colors?)
    This leads to a pretty expensive function named Material.isReady.
    Due to the previous reasons, the function is really CPU intensive. Here is for instance the profile of the "materials" playground:

    The highlighted functions are part of the IsReady root function. The scene is extremely simple and you can see that the isReady is taking almost 13% of the CPU time
    While it was ok because of the complexity of the task assigned to this function, I decided recently to change it to a clever model: The push mode.
    When a material is in this mode, instead of asking on every frame for every state, the states will push updates to the material when they change.
    Obviously the performance boost is immense. Look at the same profile with the new mode:

    We are now at 2.51%. On bigger scene like Sponza, this function could take up to 30%:

    And now with the new mechanism:

    ONLY 3%!!!!!!!!!!
    But obviously with such a big change, there will be some bugs.. So please use this thread to report any issue with StandardMaterial.
    If everything is fine, I'll update the PBR to push mode in one or two weeks.
    Associated PR: https://github.com/BabylonJS/Babylon.js/pull/1959/
  21. Like
    Kesshi reacted to Deltakosh in Introducing better shadows with Exponential Shadow Maps   
    Hello team!
    as part of 3.0 version, I'm proud to announce the availability of ESM shadows (Exponential Shadow Maps).
    I updated the great doc done by @Wingnut to take this in account: http://doc.babylonjs.com/tutorials/shadows

    VSM (variance shadow maps) were removed (to keep backward compatibility the properties are still here but they will trigger a warning in the console).
    ESM are great because they can be blurred. Here is an example of all kind of shadows we have now: http://www.babylonjs-playground.com/#20FROK#2
    ESM are great because they allow you to deal with selfshadowing: http://www.babylonjs-playground.com/#1CXNXC#3
    Hope you like it!
  22. Like
    Kesshi got a reaction from c75 in Mesh visibility of children   
    With setEnabled you don't need to care about your children. Even if you add a new children to the parent it will be automatically disabled if the parent is disabled (even if you have several nested children).
    With the visibility you have to manage your children by yourself. If you add a new children you have to check if there parent is an invisible parent and adjust the visibility flag of the child.
  23. Like
    Kesshi got a reaction from c75 in Mesh visibility of children   
    Instead of "grandParent.isVisible = false;" you can use "grandParent.setEnabled(false);". This disables/hides the parent and all the children.
  24. Like
    Kesshi got a reaction from davrous in [Solved] Compile error in lib.dom.d.ts with Typescript 2.2.1   
    No, you can just remove the AudioContext interface definition from the babylon.2.5.d.ts file here:
  25. Like
    Kesshi got a reaction from royibernthal in Why is BJS now mostly Typescript?   
    For me Typescript was also one of the main reasons to use BabylonJs instead of ThreeJs.
    I use BJS for commercial projects. That means i need to deliver robust and reliable code. I would not use plain JavaScript for big projects. Especially if different people working at the same code.
    The type checking, the language features and the IDE support you get with TypeScript (i use VsCode) makes development much easier and faster.
    One example would be refactoring. Lets say you rename a function or you change the data type of a variable. With plain JavaScript its very easy that you miss to adjust some code and later you get a problem in the released project.
    With typescript you will get a compile error right away.
  • Create New...