24,997 reputation
23276
bio website seanmiddleditch.com
location Redmond, WA
age 31
visits member for 3 years, 4 months
seen yesterday

I've been programming in C/C++ and an assortment of other languages for over 20 years; professionally for over a decade and a half. Game engine design and architecture is my biggest passion in CS.


Oct
21
answered How does the SDL dynamic API inject itself in statically linked code
Oct
17
comment What is the most efficient container to store dynamic game objects in?
@user50286: feel free to edit the answer with your ideal phrasing or to write your own. I spend most of my day fixing performance mistakes arising from people not thinking about the data structures they use. We have completely banned std::map in any use in the game for these reasons in favor of a flat_map (a sorted array accessed via binary search, which has the same big-O as std::map but has significantly better performance in practice) in those uncommon cases where arbitrary types in a heterogeneous container are truly needed.
Oct
16
answered Proper way to encapsulate components?
Oct
16
revised Proper way to encapsulate components?
make post readable
Oct
14
comment What is the most efficient container to store dynamic game objects in?
@user50286: You should get new books, like Jason Gregory's Game Engine Architecture. Other languages implement map-like types using far more efficient data structures than std::map (e.g., hash tables; usually closed ones) and not a tree. I suggest you read up on "data-oriented design" practices like in BitSquid's packed_array or Mike Acton's talks, both of whom are highly-regarded and accomplished game engineers.
Sep
30
comment Texture R8_FLOAT format?
8-bit floats would have an extremely low precision. Are you sure you want an 8-bit float? DXGI_FORMAT_U8_UNORM is what you want if you do indeed need an 8-bit value (and yes, that's different than an SNORM, in that the former maps [0,256) to [0, 1.0] while the later maps [-128,+128) to [-1.0,+1.0]).
Sep
30
awarded  Explainer
Sep
28
comment How do I maintain game balance while promoting interaction between dead and alive players?
(a) What happens if the Medium is dead? (b) Communication is a poor way to throttle online interplay in a world with TeamSpeak/Mumble/etc. (c) Party games need to strive to keep players in the game (no perma-death) or just be short (Mario Party minigames) or provide some other means for "dead" characters to play and win (Bang! High Noon ghost town rules).
Sep
25
awarded  Nice Answer
Sep
24
comment Java 2d: How to make animation only cycle once, despite control being held down?
@user3750325: there's no always a magic answer, sorry. You're either going to need to add one new flag (there's no way that's "changing the structure too much") or just refactor the input code (which can be a big change, yes, but up-front extra work that reduces total work in the long term is a very good thing).
Sep
23
awarded  Revival
Sep
23
answered SDL2 sprite batching and texture atlases
Sep
23
comment SDL2 sprite batching and texture atlases
> The only flaw with this is that there cannot be any moving parts in the larger texture. What? Why? That doesn't sound right at all.
Sep
22
comment Is it a bad idea to couple action and animation?
@GustavoMaciel: which you desperately want anyway. Quality tools should be near your highest priority for any game project. I do believe there are existing sprite animation tools that allow event hooks, though.
Sep
22
answered Why cap game loop delta-time?
Sep
21
answered Java 2d: How to make animation only cycle once, despite control being held down?
Sep
19
answered Is it a bad idea to couple action and animation?
Sep
16
comment Are Tilesets more efficient than single pictures?
@wondra: compared to "unlimited fps" yes, very much so.
Sep
14
answered Rendering Many Objects in OpenGL4
Sep
10
answered Are Tilesets more efficient than single pictures?