3,215 reputation
619
bio website
location Seattle, WA
age 43
visits member for 3 years, 5 months
seen Jul 22 at 22:03

Software engineer and long-time dabbler in mathematics; 11th in the Putnams forever ago but I've long since atrophied.


Jun
25
awarded  Pundit
Jun
17
comment How do I make A* agents avoid other agents?
This exactly - there seems to be a very common perception that pathfinding means A*, and that's just not so.
May
29
comment Forcing Non-Pitch Preserving Audio in HTML5, Construct 2
If space is at a substantial premium then you may want to look at whether you'd be able to go with a shorter snippet of music, but I definitely do back this approach too - relying on playback speed to do your pitch control for (essentially) tension-building runs the risk of degrading the quality of your overall audio experience. Your game will just sound better if you can manually craft multiple versions of your music for the different speeds you need.
May
29
comment Forcing Non-Pitch Preserving Audio in HTML5, Construct 2
Not enough data here to be a proper answer, but my best guess is that you're going to have to pick some subset of browsers that you choose to support, confirm that each of them has some form of pitch control (both Mozilla and Chrome, for instance, have extensions that seem at first glance to support this; I haven't checked on at Safari yet), and then build your own polyfill - it's most likely that you won't be able to use Construct 2 for this particular part of your game. One of the hazards of riding the 'bleeding edge'... (which audio shouldn't be, but that's a separate rant!)
May
21
comment Extrapolation breaks collision detection
Well, I'll say 'just because you can find code for something doesn't make it a best practice'. :-) In this case, though, I suspect that the page you've linked to uses the interpolation value to figure out where to display its objects, but it doesn't actually update the object positions with them; you can do that too, just by having a draw-specific position that's calculated every frame, but keeping that position separate from the object's actual 'physical' position.
May
21
comment Extrapolation breaks collision detection
This will take some digesting to fully understand ('interpolation' has seemingly a dozen different meanings and it's not wholly clear on first glance just what you mean by it here), but my first instinct is 'you should not be doing anything to affect your object's position in your rendering routine'. Your renderer should draw your object at the object's given position, and manipulating the object there is a recipe for trouble, since it inherently couples the renderer to the game's physics. In an ideal world, your renderer should be able to take const pointers to game objects.
May
19
answered How do I find the intersection of a ray and a cylinder?
May
19
comment How do I find the intersection of a ray and a cylinder?
If your cylinders are coins, then it sounds like you're mostly interested in clamped cylinders, and particularly the endcaps - is that a fair characterization?
May
14
comment Packaging HTML5 games as applications for iPhone/Android
What part of this fits into the 'off-topic' category? This isn't asking 'which technology to use', it's asking whether a technology exists for something. It's not an abstract 'how to get started' or 'what to learn next'; it's asking a specific, pragmatic question that is exactly the sort of thing that arises in day-to-day development.
May
12
comment How can I improve my collision detection's performance?
Fantastic all around, including a good introduction to the most fundamental optimization here. There are things I'd have said differently, but to my mind this is the archetype of a good answer.
May
7
comment How to reset the world in an infinite runner game to prevent an overflowing float?
@MichaelBuen Nothing says that you have to map 1 unit : 1 meter. If you're traveling 2K meters per second, how much visibility does the player have? Assuminhg that the player's character is Iron Man sized (2m tall) and that that corresponds to ~20 pixels (a fairly tiny thing), that means that you're scrolling 20,000 pixels per second - a good 600 pixels per (30FPS) frame! It would be virtually impossible to have meaningful gameplay at that scale and speed. More likely, you'd represent things at roughly 1m=1pixel, and so you could say e.g. 1 unit = 100m.
May
6
comment Bullets won't shoot out of barrel in top-down shooter
As a small note, there are many ways for cos(x) and sin(x) to both return positive numbers; for instance, cos(pi/4) = sin(pi/4) ~= .707.
May
2
awarded  Organizer
May
2
comment What is this type of camera called?
@AndonM.Coleman Interesting that you should say that - while I recall hearing the version you're mentioning, I don't think I've heard the word used that way in roughly the last decade, as those engines fell out of necessity - but I've heard it used regularly in recent memory to describe this sort of '3d visual for 2d gameplay' look.
May
2
revised What is this type of camera called?
"terminology" tag seems apropos here.
May
1
comment Determine if a set of tiles on a grid forms an enclosed shape
If you have a vertical line running down the center of your board from top edge to bottom, which side of the board is 'enclosed'?
May
1
comment Why is an engine like Unity3D emphasized over a native library like OpenGL for beginners?
This just showed up on Gamasutra, and while it's not directly an answer to this question, it is relevant: gamasutra.com/blogs/ChrisDeLeon/20140426/215519/… - in particular, it will be very hard for a project you build from the ground up w/ OpenGL to be a 'modest' first project.
Apr
29
comment Why is an engine like Unity3D emphasized over a native library like OpenGL for beginners?
@KamikazeSoctsman Again, disagreed here. I'm not saying OGL is useless - far from it! - but in the last decade I've used my OpenGL knowledge only a small handful of times in brief fits and starts. On the contrary, because game graphics engines tend to be so performance-sensitive, in my experience they're one of the least common places for a new programmer to start out. You should know 3d mathematics, absolutely, and you should understand the principles of rendering - but that's a vastly different thing from learning OGL.
Apr
29
comment Why is an engine like Unity3D emphasized over a native library like OpenGL for beginners?
I vigorously disagree that working with 'bare' OpenGL will be more valuable for someone breaking into the games industry. Unity provides an excellent example of a modern, relatively mature game engine; understanding the functionality that it provides (with an eye towards learning how you might provide similar functionality yourself) is an excellent way of understanding the process of game development itself, whereas OpenGL is far from being game-specific in any meaningful sense.
Apr
27
answered How do I calculate the motion of 2 massive bodies in space?