RyanONeill1970

Members
  • Content Count

    14
  • Joined

  • Last visited

About RyanONeill1970

  • Rank
    Member

Contact Methods

  • Twitter
    ryanoneill1970

Profile Information

  • Location
    Ludlow, UK
  1. RyanONeill1970

    New forum

    Discourse is good, but beware of the painful anti-spam which needs monitoring. I tried to use Discourse in two different forums recently and ended up in the spam filter in both and my postings have never been cleared. The reason I ended up in spam was posting DNS data which looked like links, so maybe whitelist any *.babylonjs.com links or keep an eye on the spam folder. My point is, a lot of technical discussion can end up in spam which is unfortunate but it's still a step forward.
  2. RyanONeill1970

    Custom zooming

    I've made progress but it still suffers from changing origin when zoomed in (https://www.babylonjs-playground.com/#8PY6X5#22). I think I need to watch more tutorials as I am missing something. Seeing as I've spent all week on this I think I'll move on to a different problem and give myself a break. If anyone can see what I've done wrong, I'd be very appreciative.
  3. RyanONeill1970

    Custom zooming

    I just noticed all the extra work you did in the playground @sable, did that come out of your head? That's very impressive, would take me quite some time to figure out what is going on there. Thanks again
  4. RyanONeill1970

    Custom zooming

    Thanks @sable , it's mostly working apart from as you say, the jumping around when changing position. I can't get my head around the correction that is needed. If anyone has any input it would be greatly received.
  5. RyanONeill1970

    Custom zooming

    Still not sure why the other example and mine differed so much in GPU performance but I've found the 'go faster' button so it works a lot smoother now. In the call to scene.pick I set fastCheck to true which stopped at the first mesh it hit. pickResult = scene.pick(scene.pointerX, scene.pointerY,null,true); https://www.babylonjs-playground.com/#8PY6X5#17 Am I doing this right? Seems OK now.
  6. RyanONeill1970

    Custom zooming

    I've somehow stumbled onto the right code and not sure how, but it works as expected except for the slowness of the mouse tracking so any thoughts on that would be helpful. Simply using SPS.mesh.setPivotPoint(mouseSphere.position); works as I want it to. New custom zoom is at https://www.babylonjs-playground.com/#8PY6X5#16 To reiterate my speed question 'The mouse tracking drops frames compared to the example I copied it from ( https://www.babylonjs-playground.com/#2FPT1A#68 ) which was far more complex. Am I doing something dumb?'
  7. RyanONeill1970

    Custom zooming

    I have a particle system and some walls ( https://www.babylonjs-playground.com/#8PY6X5#15 ), if you move the mouse around you can see the last mesh touched is tracked by using a red sphere. There is a reason for this, I'm trying to zoom in to the last place that the mouse was so it zooms like a slippy map (Google, Bing, Yahoo maps etc.). A slippy map will zoom on a 2d surface to where the cursor is (for an example, see Google maps) so that it is more intuitive and the origin of the zoom is from that point. I've removed the ArcRotateCameraMouseWheelInput so I can use my own mouse wheel tracking. The walls should remain static with only the particle system expanding. Two questions; I think the zoom is done, but I can't get my head around the next bit which is to translate the SPS mesh step by step as the zoom happens via the last mouse position (mouseSphere in code). I've left a TODO marker in the code where I think this should be handled. The mouse tracking drops frames compared to the example I copied it from ( https://www.babylonjs-playground.com/#2FPT1A#68 ) which was far more complex. Am I doing something dumb? If you want to know what this is for, it's a data visualisation and the walls will consist of labelled axes. Hopefully that makes sense. Regards Ryan
  8. Actually, I'm wrong, it seems to hit the GPU quite hard so I'll try this with the mouse monitoring flag approach.
  9. This works really well and it doesn't suffer from CPU or GPU performance as @jerome thought it might. If I was really wary of performance issues (mobile for example) then maybe mouse / touch events could be captured which would flag that the ray should be checked again. For example, surrounding the scene.pick with the following; SPS.setParticles(); pl.position = camera.position; if ( mouseUpdated ) { mouseUpdated = false; var pickResult = scene.pick(scene.pointerX, scene.pointerY); if (pickResult.hit) { rollover(pickResult); } }
  10. RyanONeill1970

    Scaling a Solid Particle System mesh in one go

    I will of course post my work when finished, hopefully before Christmas.
  11. RyanONeill1970

    Scaling a Solid Particle System mesh in one go

    Thanks @Wingnut, there's a lot of new techniques there I'll need to read up on. It sounds like it might move the culling from the CPU to the GPU.
  12. RyanONeill1970

    Scaling a Solid Particle System mesh in one go

    Thank you Jerome, that looks like I can work with that. I was trying to cheat by bypassing vector creation before. One more question, I'd like to cull the particles that are on the outside of an invisible box in the centre of the screen. For example, zooming in / out with the mousewheel makes them grow or shrink (by scaling them) and also does not draw the particles outside the central box. Is there a preferred method for doing this? Just a few keywords to read up on would be very helpful. Regards Ryan
  13. I have an arc camera attached and have removed the mousewheel zooming from it. Instead I've intercepted the mousewheel event and I'm trying to scale all of the particles via the parent mesh so that the scene stays the same, but the particles all zoom in / out. Before sps.setParticles is called I update the mesh property scalingDeterminant to try and zoom it, but I'm not seeing any effect. I may be doing this completely the wrong way but can't find anyone else scaling the mesh after initialisation (I'm doing it this way to avoid enumerating the particles as I thought it might be more efficient). I've modded a project in the playground so you can see what I'm trying -> https://www.babylonjs-playground.com/#ML2LR9#4 Any advice for a noob? Thanks in advance Ryan
  14. RyanONeill1970

    BABYLONJS APPS on STEAM... and beyond.

    For SSL, have you considered CloudFlare.com? I use it for a few sites and you get free SSL and global caching. You just have to point your name servers at them so they front the traffic for your (it's safe, been using it for years). All free too (and I've run some high bandwidth sites on there).