12,936 reputation
12858
bio website vectorstorm.org
location Melbourne, Australia
age
visits member for 2 years, 10 months
seen 9 hours ago

Mobygames Profile (not entirely accurate): http://www.mobygames.com/developer/sheet/view/developerId,80048/


Nov
15
answered Why is permadeath essential to a roguelike design?
Nov
14
comment Non-object-oriented game tutorials
@DampeS8N Not disagreeing with the general sentiment, but if the goal is to get high marks on an essay, then I really don't recommend being confrontational about what you interpret your professor's underlying assumptions to be. Particularly based on second-hand expertise.
Nov
12
comment General approach to isometrics
AOE supported a maximum screen resolution of 1024x768. And didn't support 16:9 resolutions at all. My feeling is that good technical choices 15 years ago do not necessarily translate to good technical choices today, so there's only a limited amount of practical wisdom to be gleaned by examining the techniques used in implementing the games from that era. (unlike their designs, which are often still quite relevant)
Nov
10
comment General approach to isometrics
Why does it matter how AOE1/2 does this?
Nov
10
comment How to do pre-loading
When I've done this in the past, we passed the amount of time remaining in the frame into the load() function, and had a heuristic in the load() function which decided whether or not to attempt to load the next file, based on whether or not it thought it had enough time. But all of this is just polish on top of the general concept, and I think it's the concept of splitting up work into small chunks that can be distributed across multiple frames that's the really important thing, here. This doesn't just apply to loading, but to pathfinding, model optimisation, and heaps of other game tasks.
Nov
10
comment How to do pre-loading
Yup. Which is why you don't do it that way if your load is going to take a long time. Instead, you'd set up your load so that it loads progressively, loading just the next little bit each time you call it, until the load is finally completed. That way, you want to call it over and over again from your main loop (or somewhere that's called from the main loop) until the load finishes. And that allows you to keep rendering to the screen, all without adding the complexity of thread management.
Nov
10
comment How to do pre-loading
Lots of different ways to do that. I'm sure that lots of modern games use threads to do the loading in the background. I even worked on a commercial game which used a background thread to do the rendering, while loading happened on the main thread. But honestly, it's just as common (and heaps easier) to just load things one at a time. Load a texture, then go around the main loop again to render a frame. Load the next texture, go around the main loop again. As long as each individual load isn't too lengthy, it's normally not a big problem.
Nov
10
answered How to do pre-loading
Nov
10
comment How to do pre-loading
Yes, threads come into the picture in modern commercial games. But this question isn't really about threads; it's about basic program flow control. I worry that bringing up threads is only going to confuse what is, in essence, an extremely simple issue.
Nov
10
answered How to select a random node
Nov
9
comment Do games use threads?
Worth looking into finite state machines as well, so you don't need a separate copy of that loop for each of your game states.
Nov
8
answered Moving camera, or camera with discrete “screens”?
Nov
8
reviewed Approve suggested edit on Difference between libgdx and andengine
Nov
8
comment Moving CW or CCW?
@Gajoo The ones you asked me about were not the most distant edges from the center of the object. That's why step 2 is in the answer. (See the parenthetical for the reasoning)
Nov
7
comment Moving CW or CCW?
I was tossing up between giving an answer based on this method, and the answer which I gave. I'm glad we have both approaches represented here. This one is conceptually simpler and very elegant, but requires performing line segment intersection tests, which can be tricky to make robust.
Nov
7
comment Moving CW or CCW?
@Gajoo That's the parenthetical point on step 3. Probably shouldn't be parenthetical, since it's really the critical step of the whole process.
Nov
7
comment Moving CW or CCW?
Related: stackoverflow.com/questions/1165647/…
Nov
7
comment Moving CW or CCW?
You start with the most distant edge, and figure out which way is clockwise on that edge. Let's say that edge A is clockwise from vertex 'a' to 'b'. Then if we move to edge B (which has vertices 'b' and 'c'), we know that B is clockwise from 'b' to 'c'. Similarly, edge C is going to be clockwise from 'c' to 'd'. Once we know the correct clockwise direction from one edge (steps 1-3), by continuing in that clockwise direction around the shape's edges we can deduce the correct 'clockwise' direction for every edge, without actually looking at where its edges are located, so concavity is ok.
Nov
7
answered Moving CW or CCW?
Nov
5
comment How can I implement an Iris Wipe effect?
If I caught somebody on my team using the texture approach on iOS, I'd give them a stern talking-to. That sort of large transparency would absolutely murder the frame rate on many of the devices (particularly the iPhone4 and iPad1). But it's probably the best approach on desktop/console.