Pierre Glibert

  • Content count

  • Joined

  • Last visited

About Pierre Glibert

  • Rank
    Advanced Member

Contact Methods

  • Website URL
  • Twitter

Profile Information

  • Location
  1. GLTF loader error

    Hello everyone I have a bug when I try load a GLTF with Babylon 3.1.1 : The gltf file is working on sandbox and there is no error in network. I can't create a PG for this ... ( it's working here : http://www.babylonjs-playground.com/#WGZLGJ ) Can you help me please ? Thanks ps : I download the loader today ... Perhaps the last ts compilation created an error ...
  2. thanks @Deltakosh. I will write a new post because i see some trouble on gltf render
  3. The bug persist ... It's weird because sometimes it show nothing and show me this in console : " Please provide a valid .babylon file. " Or it render the model but not with all textures... or this :
  4. Hi everyone I read this about gltf : https://pissang.github.io/qtek-model-viewer/ and test it with "Adam head " : https://sketchfab.com/features/gltf The render system is the same than Sketchfab for post processes. It's really cool because when there is no animations, the engine calculate step by step a better render quality. Post processes like ambiant occlusion look really great and not drop fps. This allow us to run scene with 60fps with animation and to return a beautiful image when all meshes are fixe. All post processes and shadows seem to be calculate with a rough noise at the beginning and with more precision at the end. ( It's look like a trick to get more performance ...) So, I open this post to discuss about that and to see if it will be a great idea to add it in Babylon What do you think ? Have a nice day ! PS : I ask this because I'm working on this :
  5. Hello everyone I read something this morning : https://github.com/pissang/qtek-model-viewer. So, I decided to test it with " Adam head " ( https://sketchfab.com/features/gltf) on https://pissang.github.io/qtek-model-viewer/editor/ I saw that it run with postprocesses perfectly on Sketchfab and QTEK-model-viewer but not on Babylon sandbox WITHOUT postprocesses ... (4fps ) When I inspected, I saw that response of GPU is 10x bigger on babylon than QTEK-model-viewer ... • QTEK-model-viewer (with occlusion and glow posprocesses): • Babylon sandbox (without postprocesses): @Deltakosh, maybe you can easily test it with this model as a reference to find where our favorite engine drop I hope this post will help you. have a nice day, Pierre. EDIT : Tested with battle " damaged helmet " : • QTEK-model-viewer ( without postprocesses ) : • Babylon sandbox (without postprocesses): With this model, frames rate is the same "Adam head" work with PBRSpecularGlossinessMaterial and "damaged helmet" with PBRMetallicRoughnessMaterial. You can see it when you click on the mesh in GLTF viewer ( qtek-model-viewer )
  6. AssetManager & sceneOptimizer contribution

    Hi @Deltakosh & @Sebavan Thanks for your reply. I'm happy you like it I'm ok for the point 1 & 2 and I will correct this. 1. setHardwareScalingLevel : for the "engine.setHardwareScalingLevel()", you can already specify it in grade parameter > renderSize > devicePixelRatio : doc : https://github.com/pierreglibert/Extensions/tree/master/gradingSceneOptimizer#custom-optimization-parameters- parameter : https://github.com/pierreglibert/Extensions/blob/master/gradingSceneOptimizer/ts/gradingSceneOptimizer.ts#L227 function : https://github.com/pierreglibert/Extensions/blob/master/gradingSceneOptimizer/ts/gradingSceneOptimizer.ts#L386 But in my case, I put 2 and you 0.5 for the high density pixel devices ... Do you prefer 0.5 ? I can change it if you want Also, if you prefer "HardwareScaling" than "devicePixelRatio" or "devicePixelDensity" ... say me 2. addUI : I will remove it. It was for the demo. PS : Like I said in a previous post, I'm working on a bigger 3D project. That will be a really good opportunity to test it in depth before move it into the core
  7. AssetManager & sceneOptimizer contribution

    Hi @Deltakosh , Here we go ! The new GradingSceneOptimizer alpha version is here : Demo : https://playground.babylonjs.com/#9IXPB8#7 ( Open console to see what it append ) Doc : https://github.com/pierreglibert/Extensions/tree/master/gradingSceneOptimizer ( Read it to know more about it ) Some BAAAD tricks I did for the alpha version : 1. Particles : I added "originalEmitRate" property on the particle system to keep the original emit rate. https://github.com/pierreglibert/Extensions/blob/master/gradingSceneOptimizer/ts/gradingSceneOptimizer.ts#L324 Do you think it's possible to add it ? 2. Textures & RenderTargetTextures : You said me that about "CreateResizedCopy" : "scale is a destructive operation. It will rescale the container by creating a new one". So, I added "originalTexture" property on texture to keep the original texture in memory. https://github.com/pierreglibert/Extensions/blob/master/gradingSceneOptimizer/ts/gradingSceneOptimizer.ts#L598 For example, whit it, it's possible to do that : scale texture from 1024px to 256px for a low grade and resize it to original (1024) for the best quality grade without reload. Do you think it's possible to integrate it ? Or is it a bad idea for memory reason ? The other solution, it's to reload texture if we need to enlarge it ... But we need to wait the reload. Wrong shadows : Sometimes there is blur, sometimes not : https://playground.babylonjs.com/#9IXPB8#7 https://github.com/pierreglibert/Extensions/blob/master/gradingSceneOptimizer/ts/gradingSceneOptimizer.ts#L352 What do you think about GradingSceneOptimizer ? We will talk about performance later Thanks in advance for your time Pierre.
  8. AssetManager & sceneOptimizer contribution

    Hi @Deltakosh Sorry for the late post, I have full works at this moment ^^. I write the doc for the new optimizer here : https://github.com/pierreglibert/Extensions/tree/master/gradingSceneOptimizer I will do the demo tomorrow and add comments on the next post. I hope you enjoy. Have a nice day, Pierre.
  9. AssetManager & sceneOptimizer contribution

    Hi @Deltakosh I did a PR for the new grading scene optimizer : https://github.com/BabylonJS/Extensions/tree/master/gradingSceneOptimizer I will create the demo when the PR will accepted. I will do a bigger description for the next post with the demo. I have some questions and comments to do . Have a nice day, Pierre. ps : how can I call an extension in a playground ? thanks.
  10. AssetManager & sceneOptimizer contribution

    Hi @Deltakosh I will put the new grading scene optimizer in Extension repo very soon. I tested it with a little scene, so ... I will test it on a project that I'm doing ( on a bigger scene ). Of course, It's an alpha version at this moment ^^. One bonus for you : demo.mp4
  11. AssetManager & sceneOptimizer contribution

    Ok good ! I have a mistake with useBlurExponentialShadowMap. Shadows are everywhere on spheres. here the playground https://playground.babylonjs.com/#S3YG63#3 Thanks
  12. AssetManager & sceneOptimizer contribution

    Hi @Deltakosh , Thanks again for all your answers. I have others problems with renderTargetEnabled and shadows : 1) Poisson shadow look different if all others shadows type are false... 2) renderTargetEnabled destroy or make disappear shadows ... I made a playground for that : https://playground.babylonjs.com/#S3YG63#1 I hope it's not a big bug ... Pierre.
  13. AssetManager & sceneOptimizer contribution

    Thanks for your answers, it's clear Here, the playground https://playground.babylonjs.com/#95UJ4P#5 Uncomment the 42th line to see the RTT disappears EDIT : - RTT.scale() not working too ... - Material.DiffuseTextureEnabled = false not disable diffuse channel ... ( same thing with others channels like bump ) - Normally with RTT.scale(), can I scale to 0.5 first and rescale to 1 later without degradations ?
  14. AssetManager & sceneOptimizer contribution

    hi @Deltakosh , I see that 'textureTools.CreateResizedCopy' create a BABYLON.renderTargetTexture if I copy a BABYLON.Texture. That's why I had a bug with scene.renderTargetEnabled = false ... My texture disappeared ^^ so ... some questions : 1) What's the difference between the both ? ( performance, dynamics/static textures, ... ? ) 2) Do you think that will be good to add a condition on 'textureTools.CreateResizedCopy' ? If ( instance of renderTargetTexture ) ... return renderTargetTexture. else ( instance of texture ) ... return texture. Have a nice day, Pierre.
  15. AssetManager & sceneOptimizer contribution

    Hi @Deltakosh I have some others questions and remarks ... 1) About particules : Is it possible to not render particules without 'stop' function ? ( like particulesSystem.isVisible = false ) The stop function don't stop immediatly the render of particules. 2) About textureTools : I have a problem with textureTools.CreateResizedCopy. I need to know if the textures are loaded before to resize ... Here an example of what I'm looking for : https://playground.babylonjs.com/#7BI0R2#2 EDIT : FOUND : https://playground.babylonjs.com/#7BI0R2#3 3) About bump textures I saw that renderTargetsEnabled disable bump ... So, I think that it's not important to disable bumpTexture for this version. EDIT : In fact, it disable diffuseTexture too ... is it normal ? EDIT : It's on my side. It's working here : https://playground.babylonjs.com/#95UJ4P Have a nice day, Pierre.