25,182 reputation
33276
bio website seanmiddleditch.com
location Redmond, WA
age 31
visits member for 3 years, 5 months
seen 1 hour ago

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.


1d
reviewed Close How to create a raster tiff (dem / heightmap) from a mesh of xyz points?
1d
reviewed Close Normal Mapped Models Render with render target background color acting as transparency and lighting Problem
1d
reviewed Leave Open Can Box2D be used for collision-detection only (not simulating physics)?
1d
reviewed Close Framerate dependent movement
1d
reviewed Close Sprite position on Android
1d
reviewed Close How can I implement a futuristic “barrier field” that reacts to hits?
1d
reviewed Close Tile map only rendering 1 layer when it should be 3
1d
reviewed No Action Needed Sweep and prune vs quad tree when all objects are dynamic (moving)
1d
reviewed Leave Closed Why are MVC & TDD not employed more in game architecture?
2d
comment Applying inputs on server from client
Post separate questions separately. Also, check out the publicly available network architecture for Valve's Source, Epic's Unreal, or id's Quake; they all do things differently, indicating that there are multiple ways to solve the same set of problems.
Nov
19
comment Stat Multipliers: from Base Value or Iterative
D&D 3rd ed. uses the second approach, as one data point. It's largely a balance thing. Another option (partially also used by D&D) is to just not even allow stacking (D&D allows stacking of bonuses but only if they're from different categories, e.g. you can get both an "enhancement" bonus to a stat and a "natural" bonus to a stat but you can't have two stacked "enhancement" bonuses to the same stat, and any time two such bonuses are applicable you just take the bigger one).
Nov
8
awarded  Great Answer
Oct
26
comment In OpenGL, what is “zero state” rendering?
"zero overhead" OpenGL in no way replaces VBOs, though. Nothing has replaced VBOs, at least not in the common case. They're how you upload per-vertex data to a GPU. Nothing new there. There are a handful of techniques you can pull off without any vertex data; maybe she meant that? The term is not in common use, though. She may have just misspoke or misunderstood what you were talking about.
Oct
26
comment OOP design, keeping track of entities
@Mixerman123: you can. The service locator could be global or an object you pass in to your managers so they can use it. There's pros and cons to every approach; pick whichever seems to make the most sense to you or which seems easiest. It sounds like you're suffering from design paralysis. Just pick something and go. If you end up disliking it, you can always refactor later (though be wary of ending up in a loop of constantly refactoring old code that doesn't strictly need it instead of writing necessary new code).
Oct
25
comment OOP design, keeping track of entities
I don't see a new question that hasn't already been asked. What part are you still stuck on? If you're looking for the "best" way, you're out of luck; there never has been and never will be a "best" way to structure code.
Oct
25
answered OOP design, keeping track of entities
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