• Content Count

  • Joined

  • Last visited

  1. Thank you guys! Exactly what I need. About NodeJS - I alredy took it as a backend server
  2. Thanks for your answers! I really need your opinions. I think I should explain what I want to achieve. Genre: RTS; Multiplayer: Yes; Platform: Web Browser + back-end server; Budget: $10. And my own time. First of all I am making a browser game. I don't need great detailed graphics and awesome shaders (however I will probably write some). Since I told the game will be AI-centric, I want to spend most of time for writing specific decision-making algorithms and rich character model. I don't want to manipulate triangles, vertex- and index-buffers in low level, so I want the engine to have build-in scene graph system. However, I want to have an ability (not obligation) to change low-level details if I want. So, flexibility. I want to collaborate with my friends via VCS (git/mercurial/etc...) and have an ability to run the code easily without magic. So, portability. [This means I don't want to spend a lot of time to run my game server on different machine] I want to increase my experience during development. Not in heavy mathematics of pixels, but in the overall process. And last but not least: I want to achieve fun on process as I always did. I have my evening time, a lot of coffee and enthusiasm and I don't want to lose it. So the question was mostly about "How much time will I waste if I choose mostly-rendering engine like BabylonJS instead of out-of-the-box-engine like Unity and is it worth it?"
  3. Hi guys! I think I need an advice from more experienced colleagues. I am experienced enterprise developer. Last 6 years I worked as senior/lead web developer and mostly wrote on C#/Java/JavaScript. Game development is my hobby and true love so I decided to try out make the game not for me but for others. Concept was done and now I should select a game engine. Something like Banished with different and complex AI model and some features with non-direct control. I want the game to be AI-centric. I planned to make a browser game so the first option was WebGL (ThreeJS, BabylonJS) which I extremely love. But I'm here a bit confused. The market is indie game engine has a few products and one big monster called Unity. Even some AAA-games have Unity under the hood (Cities: Skylines). Wherever I read all these kids writing that Unity is soooooo great and almost any developer must use it for any game. The main reason is something like "If you want to finish the game don't write your own engine". I know this is true because I tried to make my own engine some times and it was horrible and took a lot of time, but is it still true for using a small enginees like BabylonJS? And which cons unity has compared to BabylonJS except well-known poor VCS integration and collaboration problems? Unity is great ready-to-use solution with many out-of-the-box features and out-of-the-box limitations. I don't like limitations. And all those tools of unity (visual designers and so on) is not so applicable to my concept [iMHO]. So, I need your advices, guys. I don't want nor to make a simple game for 5 years not to fight with limitations of game engine to make anything non standard. Thanks and sorry for a long post
  4. Just understood some interesting thing. I don't need full grid for physics simulation, because it will be used just for some relatively small amount of objects, so for them I can use CPU. I need the full grid only for rendering and I can compute it in the fragment shader.
  5. Thank you for your help. Of course, I will start from basic version and adopt parallelization later. But I didn't think about typed arrays. Sounds good.
  6. Thank you all for your answers! I think I will try web worker approach and determine if the speed is sufficient. If not, I will think further. I will post results when it's done
  7. Unfortunately I have to read back the data because I need it for ship physics simulation
  8. I mean I'm not sure that babylon.js will perform all necessary actions fast enough, such as mapping buffers and transport to GPU. These operations may really be the bottleneck of this method, overwhelming the performance improvement of GPU calculations But I'll try of course.
  9. Exactly what I wanted to to do. But the main question is will it be significant faster that web worker version or not.
  10. Hi guys! I'm working on realistic ocean simulation for a browser game at the moment. The best known way to simulate ocean waves is Jerry Tessendorf's method with statistical model. I won't paste any formulas here for simplification, so here is core problem: calculations are expensive and I don't want to compute water heightmap by CPU in browser because the algorithm may be paralleled very well and GPU is able to compute the grid much faster. Is there any way to use GPU computing from babylon.js? I'm thinking about using shader with texture renderTarget to generate heightmap and then use the results in physics simulation in javascript and pass it to the shader material for rendering water surface. Is it worth or not? Can anyone suggest any other methods? Thanks!
  11. Thank you! This is great example! I like Oimo for its speed. Shortcomings like limited body impostors are not very serious. One last problem I have is physics precision as I told before. I'm afraid that I need to implement sort of continuous collision detection by myself.
  12. Thanks for your reply! This is something I wanted to know . And a little one question by the way: How do I avoid situation when small and very fast shell (sphere) just flies through wall and doesn't collide it? I think I should increase physics precision in some way, but I don't understand how to achieve it without big impact on performance?
  13. Hey guys! I'm trying to make some advanced physics in my babylon project. To be more concrete: There is a brick wall and a cannon in front of it. Cannon makes a shot and when the shell collides with wall I want to shatter them. So, for the wall I have two options: Voronoi FractureBreak the wall into bricksAssume I will use second one. According to forums I should break wall mesh into group of bricks with joints and remove some of them if the force is too strong. And this is where the question appears: what is the best option to deal with it? Should I expand oimo/cannon plugin to have more control over joints and ability to add native event listeners for collisions or just use Actions with intersection trigger? For now both plugins hide their world property and just implement plugin interface. Thanks. p.s. I'm new for babylon so it will be great if you could answer more detailed!