thrice

Members
  • Content count

    72
  • Joined

  • Last visited

About thrice

  • Rank
    Advanced Member

Contact Methods

  • Twitter
    jasonayre
  1. Hey Delta! I'll try and dig into it again this weekend. Unfortunately I can't just run it without electron ATM because of the way I am loading assets (via the node process) - Ya I wasn't expecting you to be able to reproduce the getQuery issue was more hoping someone knew what it meant, or possibly what it could allude to in terms of the code itself. I will get a profile if I can't figure out what is going on. Honestly the bigger issue is the fact that my go to tool for figuring out what is going on(simply, engine.drawCalls), has been removed, and I am unable to load any of the new instrumentation stuff currently, so I can't even see if my current draw calls matches bumped version draw calls. I had a similar issue in the past IIRC, which I saw the drawCalls spiking after upgrading, so I was able to determine that a large number of the meshes that I load off screen and disable (for the sake of tooltips/hover states), were being loaded in at 0,0,0, which was being covered up, so basically the camera was trying to render hundreds more meshes than it should have been. - The reason I think it may be different this time is the strange webgl error, but IDK. Will try and debug it further when I have time.
  2. highlight layer creating additional draw calls bug

    If however, I add the highlight layer after the scene is going, it won't add the initial draw calls initially. - Additionally, the dispose behavior I cited in the issue is still causing it to trigger, however it does seem semi sporadic, i.e. sometimes the first dispose call after adding the highlight layer triggers the additional draw calls, sometimes it takes a couple disposals. - BUT the important thing to note about all this is: As soon as the additional draw calls are triggered by the 1-2 tries of disposing meshes, even though only 1-2 meshes are being disposed, the draw calls are spiking from 110 to 210ish, everytime, consistently (regardless of the number of meshes destroyed). I.E. there are a bunch of invalid mesh references in the above screenshot, but if Iazy load the highlight layer and trigger the issue, it will look fairly correct, though there will still be an entry for the last disposed mesh. Since I am unable to reproduce on playground, please see my console logging of the behavior below: (the play_game.highlight_manager.rebuildHighlights() method is creating the highlight layer initially). Also note, clearly I have an issue with the mesh id property on the destroyed mesh, but don't think it's related. Also note: both meshes I disposed in this session are either instances or clones. The behavior doesn't appear to be specific to one or the other either, just sometimes takes a couple of disposals before I see the increased draw calls
  3. https://github.com/BabylonJS/Babylon.js/issues/2624 This is still an issue for me. Was unable to reproduce on playground, however adding some additional information, maybe someone will have a clue as to what's going on because as of now I can't really use the highlight layer. When the scene is first loading up (and my meshes are being created for the first time), and a highlight layer is created while this is happening, I see a ton of undefined meshes stored in the highlight layer, which I have no idea where they are coming from. 85 to be exact. (note that at no point am I manually adding any meshes to the highlight layer) - The draw calls are now going from 110 to 220, so there are 110ish additional draw calls being added, even though the highlight layer isn't doing anything. These mesh ids, also don't appear to be valid anymore.
  4. BabylonJS Editor Toolkit - Version 3.1 Alpha

    Looks pretty cool! Will this export shaders then? Also, is it easy enough to pick stuff out of the exported content? i.e., I really mainly would only likely use a tool like this to export materials/shaders. Is it possible to export shaders bought from the unity store, pick them out of the code and bring into project? Because that would be epic. Been converting shaders by hand and it's a huge pain, and I don't even know where to start with the HSGL or whatever shader format the unity ones are in, in terms of converting.
  5. I'm using chromium, app is packaged via electron. So, I can't switch to a diff browser to run it ATM to see if I get different results/debug. I'm going to downgrade back to previous version for now.
  6. Trying to load the debug layer is now throwing
  7. Ah, thanks for the draw call info. I will look into it further.
  8. I'm well aware, I'm simply trying to help out and narrow down what could have changed between versions to cause issues in my project locally.
  9. in 3.5 scene was rending at 60 fps, now I'm stuck around 45 fps as soon as I upgraded to 3.7 Even worse, load time of the scene increased from 28ish seconds to 75 seconds. My only hint is a cryptic webgl warning being thrown WebGL: INVALID_ENUM: getQuery: invalid parameter name but even then, I doubt it's responsible for the 15 fps drop (maybe the initial loading increase, IDK) Any ideas? -- side issue Additionally, I tried looking at drawCalls, as that was my KPI in the past for figuring out why frame rate was so low, and I am met with an unhelpful "drawCalls is deprecated. Please use SceneInstrumentation class" warning, and draw calls returning 0. So I instantiate the instrumentation, and I still don't see draw calls. I would think having that metric easily discoverable is pretty important?
  10. @Arte Don't click this if you have epilepsy (really), but: any example of passing variables to the shader to use as a discard threshold. https://playground.babylonjs.com/#AFUQKR A more practical example on cyos I was working on, I was trying to get a decent looking 2d smoke plane shader working, almost looks decent but not quite: http://cyos.babylonjs.com/#09CV0F-- Point is, I would imagine there is some way to pass the dimension of the sphere in the scene to the shader, and use the discard keyword to cutout the pixels that are not relevant. Whether by redrawing the sphere via the dimension in GSGL, or to recreate the area you want to discard, or what not. Although I'm barely able to understand building 2d shaders at this point, so I'm just the idea guy. I still haven't fully grasped the vertex shader side of things yet, and I'd imagine that would somehow be important as that seems to manipulate the shape. Also it looks like discard doesn't work w/ vertex shader, so IDK.
  11. Transparency in Babylon gUI?

    Containers/controls have an alpha value you can set to < 1 for transparency
  12. I would think theoretically it would be possible to do using shader material / discard keyword, and passing a uniform into the shader with the spheres bounding info. I've done, much much simpler things, using a similar strategy (i.e. discard pixel if color.r < threshold, which I pass to shader). But maybe I'm missing something and/or don't know what the hell I'm talking about (probably both). (Actually, I guess in my situations, I was cutting out the shell of the object, there was no inner material as pictured. That seems much harder now that I think about it)