• Content Count

  • Joined

  • Last visited

  • Days Won


jodo last won the day on December 28 2017

jodo had the most liked content!

About jodo

  • Rank
    Advanced Member

Profile Information

  • Location
    Germany / Regensburg

Recent Profile Visitors

1485 profile views
  1. You can see that the dot products for computeSpecularTerm() are calculated the same. But other then that, all I am saying are speculations, I don't think I can help much to clear that up ;).
  2. I can not prove that the implementation is 100% correct according to reality, but I would say the different relative position of the highlights is due to: 1) Different reflection angle from light as the lights don't have the same direction and position 2) Different light type, which again changes the amount and position of reflection to the camera I tried it out on the Christmas tree bulbs and had the same effect. This "experiment" would be equivalent to using PointLights, I did not have an ambient light which had visible reflections at hand :/. But when using two point lights you get the same relative displacement of the highlights.
  3. @Threedy Yeah, the server side NullEngine() just came out with v3.1 about a month ago (according to the 'what's' file), so you had a much much harder task 6 month ago ; ) I haven't got time yet to go into detailed performance debugging. But I would say it is a network problem and not a physics engine / simulation issue. 10 objects are definitely no problem at all for the physics engine, even on bad hardware. There is almost no CPU used on the Server, but pretty much all of Memory is allocated. (Also, other small test applications are running on it). And it is a really small server (just 1GB of RAM). I am not a network specialist, but I assume decreasing the server update rate could help as well as decreasing the size of each update message. When 10 users are connected, all RAM is used and there is about 800kb/s outgoing traffic. You can see that the ping stays pretty much the same for the first few connections and at some point, just skyrockets to 2000 ms and higher. I assume TCP packages start getting lost while 10*60 new packages are Queuing up per second which quickly stacks up to such a high ping. (Someone please correct me in case I am talking garbage here) ; ). I also assume (yes, lots of assuming here) that using UDP would decrease the network problem, but as we know, it isn't possible with browsers.
  4. Hi Guys! I haven't been active here for quite some time and haven't done anything with Babylon.JS for quite a long time. But after checking out the changelogs, I saw that we can now run Babylon.js Server Side, how awesome is that! So I had to squeeze in some time and implement a proof of concept multiplayer simulation with Client and Server side physics engine. It's quite basic. The Client can control a ball by spinning it forward or backward (with W and S). By changing the camera angle (with A and D) you can change the direction of the impulse. With Space you can jump around. To check out how it behaves with multiple players you can either ask someone to also visit the site at the same time or just open a new tab in your browser. Technical it is rather simple. Server and Client communicate via Websockets. The client applies impulses to it's ball, these parameters for these impulses are sent to the server. The server applies these also and keeps the state for the whole world up to date. Each render loop the server sends the current state to all the clients (ideally 60 Hz). The clients then correct the position, direction and velocity of all objects including their own ball if needed. I haven't tried it out with higher delays, but I would suspect the result will be quite "jumpy". Interpolation for correction and prediction of movement is not (yet) implemented. Added Server Update Rate and Ping to see lags and delay in perspective to these metrics. Here is the code: Here is the Demo: Here is a great article about Server-Client Game Networking techniques: which was somewhat the motivation to implement this proof of concept.
  5. I want the User to be able to connect two Objects with a Line. Therefore I need the hit target on pointerup. I display the virtual line which changes position with moving the cursor (the end of the line is always below the cursor). Thus when the user clicks the hit target is always the virtual line object. Is it possible to get all hit targets (also the ones below) and not just the first one? Or something like a blacklist/whitelist to ignore some interactive elements on the hit test or only test specific objects?
  6. jodo

    DOM Rendering Plugin

    I meant to post this link: Not what I was hoping for, but I will figure something out. Thanks for the help!
  7. I found this plugin: But it doesn't seem to work with the current version anymore. Afterall the last update is 3 years old. Are there any other ready to go plugins/libs to create e.g. DOM input fields when using pixi.js you guys know of?
  8. I like the self destruct button on the TV
  9. I am still going to university... guess that is just an unfair advantage (time wise ; D)
  10. First off, great job and Temechon. I like it! Thanks Vousk-prod., the webcam controll still needs work... ran out of time for further investigationg ; ). For a "smoother" controll there is also a keyboard controll (arrow keys and "o" + "p" for punching) which can be enabled in the top right corner in case anybody is missing this or doesnt have a webcam. On the low number of inputs: I guess the question is, are people not so much interesseted or are they just too short on time. Solutions might be to make a challange only every other month, or to make the challanges "smaller" tasks?
  11. Looks awesome! Reminds me of Age of Empires .
  12. Well, than you are out of luck, there is and will be no way of using UDP with browser and javascript. WebRTC is the closest you can get, which is built upon UDP. But as you already said yourself, it's a quite new and does not have 100% cross browser compatibility.
  13. okay, got it. thanks for clearing my mind!
  14. When looking up all the great things that Varaince Shadow Maps can achive I was wondering which downsides are comming with VSM. And well... it seems to have some light bleeding, other than that I wasnt able to find anything in my research. So I was wondering. Does the depth percission decreese with VSM? Because we are storing depth and depth squared but have the same amout of bits as oposed to only store the depth, which means we store our values with less precision, correct? I know that when checking for shadows in VSM its not just comparing two depth values (I am honest and tell you, I couldnt fully understand the whole math going on with vsm ) but it still seems to me, that the more bits available to store the values, the better?! Would be cool if someone could enlighten me here ; )
  15. jodo


    Wow, great job, look at that LIST! A big thank you to everybody putting time and effort into this project, you guys are awesome