Window座標で位置指定

glLoadIdentityだとGL_PROJECTIONで左下が(-1, -1)で右上が(1, 1)であったのを
gluOrth2D(0, window_width, 0, window_height)で調整したらできた(左下原点)。

def printString(text, x, y):
  global fontOffset, window_width, window_height
  glMatrixMode(GL_PROJECTION)
  glPushMatrix()
  glLoadIdentity()
  # 左下(0, 0), 右上(window_width, window_height)に調整
  gluOrtho2D(0, window_width, 0, window_height)

  glMatrixMode(GL_MODELVIEW)
  glPushMatrix()
  glLoadIdentity()
  glRasterPos2f(x, y)
  glPushAttrib(GL_LIST_BIT)
  glListBase(fontOffset)
  glCallLists(text)
  glPopAttrib()
  # 一応行列を復帰。要らんかも
  glPopMatrix()
  glMatrixMode(GL_PROJECTION)
  glPopMatrix()
  glMatrixMode(GL_MODELVIEW)

メモ:変数名の入った文字列から変数の実体にアクセスする

わりとどの言語でもこの手の情報は調べにくいのだが、やっぱりだいぶ手間取った。
__main__とかパッケージ、importの辺りが関連していると思ったんだけど微妙にはずしていてなかなか見つからず。

グローバル名前空間

globals()["HOGE"]

ローカル名前空間

locals()["HOGE"] # 変更禁止らしい。

モジュール名前空間

getattr(Module.Submodule, "HOGE")

http://www.python.jp/doc/nightly/lib/built-in-funcs.html