Friday, March 11, 2011

Programmers Anonymous notes, 11

The future, for a little while anyway is a list of state of the art computer graphics animations from 1988 through the present. Every one pushed the boundaries of what could be done at the time. Game developer Crashproof posted a thoughtful comment on Boing Boing speculating about the future of  computer graphics (emphasis mine):

1. Mobile devices will catch up to a large extent with consoles and gaming PCs -- though speed is limited by wattage, heat, and the need to keep parts tiny and cheap.
2. Technology revolutions in graphics will focus more on content creation than on pure rendering power. It's the art rather than the tech that really makes a game look good now, and that will become increasingly more true -- but authoring is expensive, slow, and a giant pain in the ass. Some clever folks will solve these problems and make boatloads of money.
3. Hardware companies are going to keep trying to push the envelope but the hardware will become more commodity-like anyway. If a $800 video card that requires its own power supply performs 8% better than a $50 video card and has a couple of features that no games will ever actually use... yeah.
4. The current 3D/stereoscopy fad will mostly fizzle out again. Occasional movies and games will use it to good effect, and others will use it as a stupid gimmick, pretty much like always. The Nintendo 3DS isn't going to change the world any more than the Virtual Boy did.
X. Minecraft and the Bit.Trip games and many others show that graphics fidelity/quality/complexity/etc. are not synonymous with game quality or even how *good* the game can look. (Arguably, WoW has always been the same, with an intentionally chosen lo-fi cartoony art style that eases the burden on their graphics engine.) Technology takes the back seat.

Fantastic Dover Computability Book Cover, "Computability and Unsolvability" by Martin Davis. From the big box computing days "when two columns of data could crush a programmer’s head."


The most widely-studied models of computability are the Turing-computable and μ-recursive functions, and the lambda calculus, all which have computationally equivalent power. Other forms of computability are studied as well: computability notions weaker than Turing machines are studied in automata theory, while computability notions stronger than Turing machines are studied in the field of hypercomputation.


WebGL is a Web-based Graphics Library that uses the same ideas as OpenGL, and is maintained by the same company (the non-profit Khronos Group). It extends the capability of the JavaScript programming language to allow it to generate interactive 3D graphics within any compatible web browser.
WebGL is a context of the canvas HTML element that provides a 3D computer graphics API without the use of plug-ins. Google Body is a good example of using WebGL, a website which allows user to navigate through 3D anatomical model of human body.

We talked a while back about the surprising complexity of rock-paper-scissor strategy. Here's a web interface to an intelligent machine player. Don't be discouraged if you don't do well, as the machine has more experience (and uses accurate statistics).

For those with a geometric bent, magnetic ball porn.



Sec Narf sent me several pages of interest:

A link on this Interactive Mathematics page points to a small set of Math in computer games descriptions. Most are examples we've used or touched on, and not difficult. They use standard geometric diagrams, so there are not good hints on what the math looks like translated into code.

The mathematics of rotation is something we've used, but only implemented as code in 2-D. Generally rotation functions are already available, and are called as functions. But the math techniques are worth knowing, and most everyone gets a taste for the 2-D versions in trigonometry. The 3-D versions are very important, used in every physical science. Rotations / translations are represented by matrices, and matrix operations are used to implement rotations / translations  (special cases of linear transforms). This is a large part of the field of linear algebra. We've already done a lot of linear algebra, just not in the formal way it is taught and not using the formal notation and syntax of written math.

The Pac-Man Dossier, by Jamey Pittman, is a small on-line book with more than I thought was known about the history, complex behavior, quirks, and general knowledge of Pac-Man. More here than I thought was known about the game, including more mysteries.

What design and AI lessons can we learn from Namco's seminal Pac-Man? From history through behavior, Gamasutra presents a comprehensive Jamey Pittman-authored guide to the classic game.


Someone made a Minecraft server largely dedicated to classic game characters -- monolithic memorials to 8-bit animatrons. The link minecraft-pixel-art-sculptures is currently broken, but maybe it will get fixed.

No comments:

Post a Comment