If there's a universal thing to derive from this great article, it's:<p>"The point is, most of these ideas are simple and obvious in hindsight, but I had to make a lot of mistakes to find them. It's nearly impossible to coalesce good design decisions straight from the ether. The only reliable method is iteration and trial and error."
This is probably my favorite article I've read on here all year. User experience is so important and so hard and so iterative (and requires so many new sets of eyeballs) that far too many people and organizations call it quits at the 10% mark without ever realizing it -- this is as true in web design as it is in game design. It's great how spending time learning lessons in one can translate into improved performance at the other.<p>Mark Rosewater, lead designer for Magic: The Gathering, likes to talk about how he looks for designers with experience doing things other than designing games because they can bring new perspectives and approaches that can help redefine their game design problems in new ways. I completely agree, and again feel like that same lesson can be applied in reverse—hire great game designers to work on your UX, assuming you can pull them away from their game designing long enough! It'll be good for them and good for you.
While reading about the evolution of the camera and pushing away from the wall (or not) it strongly reminded me of the game Tremulous. The initial alien class is a very short spider that moves very quickly and can walk on walls. When running into a corner the camera does a (user-adjustable speed) rotation. The same happens if you jump into a wall. But in this game the solution seems to be more direct- you are <i>always</i> headed straight for a wall, and there seems to be much less wall-walking as "wall-flinging."
Great post. When I hear people on social media complain about any given game, I think of how the development process of pretty much every single game involves complex situations similar to what's described in the article. Game development is tough!
Wow, I think this is an amazing example of how articles on the web aught to be written. Clean presentation, great typography, entertaining yet not too superfluous prose, and plenty of tasteful illustrations and visualizations. Hopefully this is the start of a new trend.
I love these lengthy write-ups packed full of fantastic commentary and examples but this is an especially good one and must have taken you an age to put together.<p>Thanks for sharing.
Good camera control in games is quite hard. If the camera is third-person, finding a valid place for it is tough in tightly bounded spaces. Letting the camera move through a wall is considered unacceptable today. (Second Life still does this, frequently. They're stuck in the 1990s there.) If the camera is too close to the character in third person, the player can't see what they're doing.
I'm not super interested in the topic, but the way you wrote the article (visual examples, using understandable language, not overwhelming with technical details) is awesome! Tech bloggers everywhere should take note. Overall, very interesting journey.
Great article - I enjoyed it and it makes me want to play more with 3D rendering!<p>The camera placement and black shading work seems excessive - I think it could be simplified by having the camera behave as a physical object that must obey collision rules in the game world.<p>So desired camera lcoation is displacement XYZ relative to the player, but the displacement is reduced by collisions as needed until at the player's location, yielding a first-person view if the player is right next to a wall.<p>Then the only blocking surfaces would be the player avatar itself, which could be rendered transparent as needed.