Jump to content


  • Content Count

  • Joined

  • Last visited

About xtreemze

  • Rank

Profile Information

  • Gender
  • Location

Contact Methods

  • Twitter

Recent Profile Visitors

828 profile views
  1. Good feedback, thanks @brianzinn! I did try to make the game more forgiving but based on your feedback I'll increase the difficulty so it feels more rewarding in the end.
  2. Should have a pull request waiting for you now. Hope I did it correctly.
  3. Ah, to be included on the BabylonJS homepage would be an honor! 🤩 I'll get some screenshots together
  4. Thanks everyone for having a look! I've done a lot of work on balancing and improving the feel to increase fun and reduce frustrations. Veteran John Romero says your first 10 - 20 games will suck, and this one still isn't #20 yet. With that in mind, comments that may improve this game, or my approach for future games would be greatly appreciated 😀. Just as well if you see this and wonder how something works, I'd be more than happy to help. You're welcome to give it a try again if you've played before because it's a very different feel since I last updated this post. Play here: https:
  5. This is playable now with proper win and loss states. Enjoy! Play here: https://xtreemze.github.io/defend
  6. Thanks Davrous for taking such a deep look into this. Since it's not feasible I'll mark this as solved as I just wanted to see if it was easily done with the current APIs.
  7. Interesting that there are other possibilities to pass into the BABYLON.Sound constructor. But in this case, if I'm not mistaken, the buffer would not be real-time sound, as it would somehow be buffered/pre-rendered. My intention is to use variables that constantly change per frame to affect specific parameters of the synthesizers so recorded sound would not be an ideal solution. Nonetheless, there would be about 20ms of delay to play with so the sound might still be perceived as immediate. Thanks Davrous! I appreciate you taking the time to have a look.
  8. Thanks, I solved it by delaying the firing of the projectile to give the lookAt function some time to complete. Don't think it's anything wrong with the engine, just too many position queries on the meshes on every frame to measure distances and acquire the nearest target. The delay is not noticeable. Updated: now with generated sound thanks to the WASFX library by @fenomas
  9. Once a ray is created, is it possible to dispose/delete the Ray so it can be cleared by JavaScript garbage collection? For instance, what happens to the Rays that are using a disposed mesh as an origin?
  10. My question is in reference to audio tied to a mesh, so volume and panning are handled by the BABYLON engine. This works great for wav and mp3 audio files but lately I've wanted to use generators like tone.js to generate tones with javascript. It seems that BABYLON audio requires a URL to insert audio into the audio chain but is there any way to use the audio engine in BABYLON with tones generated with tone.js and the web audio API without rendering them to wav or mp3?
  11. Hi everyone, Been away for a while but I've kept practicing with Babylon. This is at a prototype phase with no 3d/sound/artwork. Just pure javascript code for now. Trying to get the mechanics working properly first. One question I have is how the projectile rotationQuaternion is cloned. It seems to follow the lookAt() quaternion from the origin tower even after the quaternion is cloned. How can I ensure that the rotationQuaternion is not linked to the original quaternion it is taken from? This causes problems when a tower shoots a projectile and then rotates to target another enemy.
  12. I updated the game and used this code in case anyone is wondering how the code turned out. window.up = 130; window.forward = 93; const moveCube = function moveCube() { redMesh.lookAt(camera.position); const direction = camera.position.subtract(redMesh.position); direction.normalize(); // Speed control const result = direction.scale(window.forward); // Jump result.y = window.up; const bottomForce = redMesh.position.subtract(new BABYLON .Vector3(0, 2, 0)); redCube.applyImpulse(result, bottomForce); }; window.setInter
  13. Thanks for checking out my game/prototype @Wingnut! I didn't realize it but those cubes do seem like frogs jumping That's a yuge PG you got there! Quaternions are next on my ToDo list so this should be useful for some future projects I'd like to work on once I get the hang of the basics. Thanks for sharing! By the way, I also made a taxi game as one of my first javascript/HTML5 endeavours https://xtreemze.github.io/TAXi/
  14. Thanks @Deltakosh Had to play around with it a bit but I think this is what you were suggesting and it works!: https://www.babylonjs-playground.com/indexstable#UXU2E9 I'm just now learning to calculate two vectors together... I'll apply it to the game soon once I get the force to hit the cube a bit lower than the central position so the cube doesn't fall on it's forward face when it jumps.
  15. Thanks for the quick reply @Deltakosh! I really like the Babylonjs engine you've helped to make and I'm using this little game as a prototype to learn more about it. I will try to use impulse instead but I'm confused with what vectors to use as arguments because the forward face of the camera is irrelevant in this case because the red cube (redMesh) should approach the camera at all times even if the camera is looking away. The game already does this, but I'd like to use physics instead of using locallyTranslate(). It would be more helpful to acquire the forward facing vector of the "e
  • Create New...