Relativistic and non euclidean space rendering

The Portal series built a full game concept out of non euclidean spaces. Besides being great games, I think it is fascinating how true the tagline “Now you’re thinking with portals” is.

Here are two interesting experiments putting the person in different spaces than we are used to due to real world conditions. This video by Varun Ramesh demonstrates a non-euclidean ray tracer:

This other video by the MIT Game Lab demonstrates OpenRelativity, a Unity toolkit allowing simulation of navigation at relativistic speeds, used for the prototype game A Slower Speed of Light:

Update: Sylvain mentioned in comments that Carl Sagan explains those effects in the following video:

Statistics of the gaming hardware and software

If you need figures or maybe just an idea of what hardware and software the gaming public is using, it’s all out there, gathered and published by the big boys:

Quick change list overview script

A part of my daily routine when arriving at the office in the morning is a quick overview of the code changes since the previous day. It’s not a full blown code review, I only rapidly look at the most important parts of the code base, but I make a point of doing it every day. It allows me to stay informed and notice if something is wildly going in the wrong direction.

This is something I do every day, so it has to be quick and simple. I don’t want to have to open three windows, ctrl-select and right click all over the place. Especially since, like I said, it’s the morning, meaning my neurons are still not talking to each other much yet. I need something dead simple.

Here is a short command line shell script I wrote for doing just that: show me the changes since the previous working day. It uses date with some fancy options to figure weekdays, as well as colordiff and less for comfortable reading. Just launch it from the terminal, and there you have all the changes ready to be scrolled. Feel free to use it if you find it useful.

#!/bin/sh

argn=$#
if [ $argn -lt 1 ]
then
    echo "Usage: $0 <paths>"
    exit 1
fi

(
dateRequest="yesterday"
startDate=`date --date="$dateRequest" +"%F"`
startDay=`date --date="$dateRequest" +"%u"`

if [ $startDay -gt 5 ]
then
    dateRequest="last Friday"
    startDate=`date --date="$dateRequest" +"%F"`
    startDay=`date --date="$dateRequest" +"%u"`
fi

echo "Changes since $startDate:";echo;echo

for d in $@
do
    echo "$d"
    svn log -r{"$startDate"}:HEAD "$d"
    svn diff -r{"$startDate"}:HEAD "$d" -x --ignore-space-change | colordiff
done
) | less -R

Using a ti-83 / ti-84 calculator as an intervalometer

In this article on Instructable is explained how to turn a ti calculator into an intervalometer for a DLSR, by simply using its communication cable and writing a little script: Turn a TI Graphing Calculator into an Intervalometer and Create Time Lapse Videos.

The author tested it with a ti-83+ and a Canon Rebel, but ti-84, ti-89 and other cameras are also discussed in the comments. Other combinations can be found all over the web.

Billboards and particle rendering

Geeks3D recently posted a couple of posts on billboards rendering using vertex shader or geometry shader, and particle rendering performance when using point sprites or geometry shader.

Real time stereo ray tracing engineer position in Tokyo

I have retweeted this already, but information tends to get buried pretty quickly on Twitter so I put it here. Syoyo, a real time ray tracing enthusiast, is looking for a talented ray tracing engineer to join his company, Light Transport.

Given their existing technology (interactive to real time ray tracing, interactive shader editing with JIT compilation) and their current focus on the Oculus DK2, I can let you imagine how exciting this position is.