2008-02-01から1ヶ月間の記事一覧

curses練習

pythonでcursesの練習を作ってみた。 padとstdscrを混ぜて使って画面が更新されないのに2時間くらいはまる。 cursesデバッグしにくいよ。 いまいち勝手がわからない。 #!/usr/bin/python # -*- coding:utf-8 -*- import curses import locale import os # …

w3mにコマンドを作ってみた

CUI

カーソルのある行を第1行になるようにスクロールするという機能 (vimで言うところのz > t) が欲しくて私家版w3mをビルドするついでに自前のFUNCTIONを見よう見まねで追加してみた。 すでにありそうな気もするが… main.cのCENTER_Vを改造。 CENTER_Vの次あた…

やっとmltermの謎がとけた

ここのところktermやxtermではkinput2が動くのにmltermでは動かないという 症状にずっと悩まされていたのだが、 ついに謎が解けた。 mltermは、システムにロケールja_JP.eucJPが無いと日本語入力が使えなかったんだよw たとえshellがeuc-JPじゃなくても。 最…

久しぶりに環境を整備してみる

某記事を読んだら激しくタイル型ウィンドウマネージャに戻りたくなってきたので環境を整備しだした。 まずはcygwinインストール。 いいのか悪いのかわからないがいつもそうするので cygwinの/home/userをC:\Documents and Settings\userからのシンボリックリ…

トゥーン風味

PhongとかBlinnをとばしてトゥーンをやってみた。 意外と簡単。 トゥーン用テクスチャを動的に生成したり 陰の合成をグレイスケールの乗算じゃなくて PhotoShopの焼き込みみたいな合成ができるとよろしいかもしれない。 さらにはシャドウが欲しいところであ…

少しずつ試してみる

最小限のシェーダ vertex shader void main(){ gl_Position = ftransform(); gl_FrontColor = gl_Color; }頂点シェーダではgl_Position(スクリーン座標に変換された頂点座標。vec4)を出力するのは必須。 gl_FrontColorはフラグメントシェーダのgl_Colorに渡…

GLSL開始

glewpyのサンプルから vertexShaderとfragmentShaderのソースだけを変更して試すベースを作成。 これからGLSLの中身に入る。 #!/usr/bin/env python # -*- coding:utf-8 -*- import sys from OpenGL.GL import * from OpenGL.GLU import * from OpenGL.GLUT …

vc8とglewとpython2.5とpyopenglがインストール済みの環境でglewpyを動かす手順

pyrexのインストール http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/ からちょっと古い Pyrex-0.9.4.1.tar.gz をゲットしてきて解凍。 DOSプロンプトで中に入って、 > setup.py install glewpyのインストール glewpy-0.7.4.tar.gz を解凍。 DOS…

PyOpenGLでGLSL

http://glewpy.sourceforge.net/ を動かすのに成功。 かなり頓挫しかけでCでやろうかと思ったのだが、 いちおうvertex shaderとfragment shaderの動作まで確認できた。

今日はちまちまモデリング

なんていうか途中でやる仮レンダリングのクオリティがいまいちだと 士気に関わりますな。 よいトゥーンレンダラがついたソフトでモデリングしないと、 テンションを維持するのがより困難になる感じだ。 アニマスとかLightWaveの利点はその辺にあるような気が…

透過に対応

思ったより大変だ(画像のほっぺのぐるぐるが透明ぶぶん)まずmqo形式の透明は、 模様画像にアルファチャンネルがついているもの(pngとかtgaで)と、 透明にグレイスケール画像(とは限らないが)を指定する2種類がある。ひとつめに対応するのは簡単で、 glEnabl…

mqoを読み込むサンプルを作ってみた

wxPythonでmqoビューワみたいのを作ってみた。操作はメタセコ風味。 去年書いたソースを切り貼りして作ったので一部余計に手間取ってしまったがほぼ完成。 透過テクスチャ以外の部分は予定していたところまでできたので公開してみる。 ソースはさすがに長く…