May, 20 2005 (Fri)
■ Processing入門2005
※解説図はTabletPCでナグリ描き…ないよりはいいかなと
■担当授業のProcessingレクチャーのために「Processing入門」の2005年度版を書きはじめました。去年のものをベースに、Betaバージョンでの変更の反映や、説明の順番などをいじっています。基本的には授業とは無関係にテキストだけ読んでもわかるように書いているつもりです。プログラムをやったことないけど、Processingを使ってみたい、という方がいたら参考に読んでみてください。
- Processing入門2005
- その1 Processingとは/Processingをインストール/Processingをはじめる/直線を描く/曲線を描く/変数をつかう/繰り返し描く
- その2 色をつける/画像を使う/文字を使う/場合分けする/illustratorファイル出力
- その3(予定) 関数/initとdraw/マウスを使う/キーボードを使う/配列(アニメーション)
- その4(よ、予定…) 映像を使う(videoライブラリ)/音声を使う(sonia)
つづきを読む▼
Apr, 29 2005 (Fri)
■ AIExport for Processing 0085 Beta
■
授業 で活用してみようと思って、Processing上の描画をIllustratorのaiファイルに書き出してくれるライブラリ
AIExport を試してみたら、Alphaで作られたライブラリってまるっきりBetaでは動かないんですな。これは。
Processingでつくったプログラムの描画をどんどん紙に印刷させたいんで、まあsaveFrameのビットマップだけでもできなくはないけどちょっと悲しいし、でもAIExportを使うためだけにAlphaを授業で使うというのもシャクだなあ…と思ってなんとかならんかとソース(サイトで公開されている。
Allan William Martin 氏に感謝!)をいじっていたら、なんとか動くようになったので公開しておきます。Processing Betaの形式でimportできます。
■くわしくはこちら。
つづきを読む▼
Apr, 25 2005 (Mon)
■ Processing(BETA)0085リサーチ
■授業で教えなきゃいけないのもあって、Processingベータの変更点やら新命令やらをリファレンスを読みながら書き出してます。なるほどけっこう変わってるなあ。いじってて気がついたことは、
- メインループの構成の変更。従来loop()の中に書いていた記述はdraw()に書くようになり、ループするかどうかを選択できるようになった(loop()/noLoop())。redraw()というrepaint相当の命令も用意されて、イベントドリブンなプログラムが想定されてるっぽい。
- 画面更新のパフォーマンスを最適化するような方策が採られている。従来pixels[]でディスプレイ画像のピクセルを操作すると即座に反映されてたけど、updatePixels()を明示的に呼ぶことで画面に反映されるようになった。updatePixels()は領域の指定もできるので、無駄な書き換えを減らせる。ちなみにPImage(従来のBImageから置き換わった)の内容を書き換えたときも同様で、PImage.updatePixels()を呼び出さないと画像を書き換えたことにならない。これは本家のリファレンスにはぜんぜん書いてないので、過去のプログラムをBETAにコンバートするときに注意。
- OpenGLライブラリのサポートに際して、描画や座標変換に関する命令がよりOpenGLライクになった。3D系の命令(座標変換、カメラ、アトリビュート、光源)はOpenGLのAPIにネーミングもほぼ対応しているみたいなので、GLの入門テキストで勉強したほうがよさそう。
といったところ。目玉のライブラリについてはまだあんまり触ってないけど、VideoライブラリはQuickTimeムービークリップを操作する命令が充実しててけっこう楽しそう。期待のOpenGLライブラリはまだけっこうバギーな感じでおっかない。むしろじつはP3D(Processing専用の3D描画ライブラリ)が結構速くてよくできてるっぽい。2DのプログラムでもP3Dを指定するとOutofMemoryが出なくて問題なく動く場合なんかがあった。
このへんの情報はprocessing.dotimpac.toのwikiのほうにまとめているのでご参照ください&更新歓迎。
つづきを読む▼