立命館大学アート・リサーチセンター『ゲーム展TEN』で『リアル・タイム・マシーン展』が紹介されてます

「ゲーム展TEN」開催中 ~ 立命館大学ゲーム研究センター: Ritsumeikan Center for Game Studies(RCGS)


立命館大学アート・リサーチセンターで、「(おもに国内の)デジタルゲームを扱った企画展」そのものの歴史や系譜、展望を扱った企画展『ゲーム展TEN』が開催されていて(1/29から公開されていて2/14まで)、僕の2005年の個展『リアル・タイム・マシーン展』も紹介してもらっている。去年の秋に井上明人さんに声をかけていただき、ゲーム研究センターの研究者の方々に取材してもらっていて(文化庁のメディア芸術に関するアーカイビングの一環だそう)、そのときに「できれば『ゲームの企画展についての企画展』をやりたいんですよね」という話をきいてそれは見てみたいですねーという話をしていたところ、実現かなったようでまずはめでたい。

扱われている企画展については、おそらく個別のゲームや作家にフォーカスした展示は避け、デジタルゲームというカテゴリ自体を扱う展示に絞るというような基準で選ばれているものだと思うんだけど、『東京藝術大学ゲーム学科(仮)展』があるなら、奥田栄希さんの『悲しいゲーム展』とか、METEORの『わたしのファミカセ展』とかはあってもよかったのでは…というか僕のだけ浮いてるのでは…と思った。「デジタルゲームをめぐる保存や利活用」という観点でいうと『パックマン展』は取材したほうがよかっただろうし(展示してないだけで取材はしてるのかもしれないですが)、ただ範囲を広げるときりがないというのもよくわかるので難しい。ちょっと展示期間中に立命館に行って展示が見られるかわからないけど、『ゲーム展TEN』のキュレーションの意図が現地で伝わるものになってるといいな。


せっかくいい機会なので、個展関係の記事をこのブログにインポートしておいた(Work in progressはいま公開するのはかなり恥ずかしいな…ミュージックバトンとか書いてあるよ)。

当時に近いかたちとしては、いちおう http://realtimemachine.sakura.ne.jp/collisions/works/exhibition に残っている。というかこのさくらのレンサバ自体がこの展示のため(『PONG-ED』でボールの位置情報を中継するソケットサーバスクリプトを置いてた)に借りたとこだった。

あとはこの個展の作品の原型である実験映像『プロジェクト:ビデオ同期』シリーズ。当時シェアハウスしてた友人らとしていた「オリジナル基板と移植版に同じコントローラつないでゲームすれば移植度がわかるのでは?」というバカ話を実際にやってみたら、移植度うんぬんというより純粋に体験として面白かった、というのがこの一連の活動の原点かな。

当時のmixiの日記とかを振り返っていて思い出したけど、女子美の助手が終わるころガビンさんから「個展とかやらないの〜(やれ)」という背中押しを何度もされていて(ガビンさんに誘われて仕事をやめて短任期の非常勤助手をはじめて、その後のことも決まってなかったので)、でも作品制作そのものもやったことないのでぼんやりしたまま任期も終わり30歳にもなってしまったところ、ギャラリー企画展に次の作家を探していたクキモトさん(当時藝大先端にいた)にガビンさんが僕をつないでくれて、結果なにか制作せざるをおえなくなった、という経緯だった。まあでもやっぱり追い詰められてでも個展としてやっておいたおかげで今回のように13年を経て紹介してもらえるような機会もあったわけでよかったなと。


pdfのページを一覧する画像を作ってgyazoに投げるautometorサービス

scansnapでスキャンしたメモがまとまったpdfとか、pdf開かなくても全ページまとまった画像になってるといいなーと思ったのでつくった。

imagemagickとuiureo/gyazo-cliが必要。gyazoのcliはGO製のTomohiro/gyazo-cliもあるみたいだけど前者は--quietがあったのでそっちで。

montage(画像を連結するimagemagickのツールのひとつ)はノーオプションだとサムネイルサイズの画像を作ってしまうので、入力画像をそのまま連結する-mode concatenateにする(参考:Combine multiple images using ImageMagick - Super User)。

こういうのができる。

論文とか自炊した本とかページ数が多いpdfだとgyazoに画像がでかすぎると怒られるので、最初の数ページだけにするとか、ほかにも工夫のしがいがありそう。


Scrapboxをアウトライナーぽく使う人むけのuserScript/Style

とりあえず不満だったとこに対応したやつ

行の付加情報用の文字修飾UserStyle

noteのあるアウトラインを持ってきたりするときに、強弱がなくてごちゃごちゃするのでほしかった。

1
2
3
4
5
code:style.css
.deco-\~ {
font-size: 0.8em;
color: #999;
}

リンクをコピーする用にCopy Link%text% [~ %url%]というのを追加して使っている。文字全体をリンクにすると青色ばっかりになってこれまたうるさいので。

選択テキストの検索結果にリンクするUserScript


文字列を選択してScrapbox内検索から発展したもの。Scrapboxのダイナミックリンク楽しいんだけど、行の情報に対するタグ的に使うと一覧性がなくて、検索結果のほうがみたいと思うことが多いのでそうするやつ。個人的にはハッシュ形式のリンククリックの挙動が変えられるなら検索結果のほうにしたい。

1
2
3
4
5
6
7
8
9
code:script.js
scrapbox.PopupMenu.addButton({
title: '検索リンク',
onClick: function (text) {
var projectName = 'YOUR PROJECT NAME';
return '[' + text + ' https://scrapbox.io/'+ projectName +'/search/page?q=' + encodeURIComponent(text) + ']';
}
});

scrapboxを検索して開くalfred workflow

dotimpact/scrapbox-alfred-workflow: scrapbox alfred workflow


ご多分にもれず、情報集約にScrapboxを使い始めて、ちびちびと環境整備をしている。

githubで検索していたら、go製の検索cliをみつけたので、これを呼び出すalfred workflowを書いた。



cliでプライベートprojectにアクセスするためのトークンは、ログインしたブラウザのクッキーが持ってる値を渡せばいいみたい。



授業すると顎が痛くなる

最近気づいたんだけど、授業がおわると口が開かないくらい顎関節症が悪化している。いまのところ慢性化するわけではなく一時的なものなのでまあいいんだけど、講義のあいだ思っている以上に緊張して歯を食いしばっていたりするのだろうか。授業のあと以上に疲労を感じるのもそのせいかな。

授業内容のほうでは課題でプログラム動作中の画面をGIFアニメに録画する仕掛けをサンプルで用意して、GIFアニメをどんどん作ってslackに投稿させるようにしている。これもわりといいかもしれない。ちなみに現時点だと公式でリンクされているGIFライブラリはProcessing Ver.3では使えないっぽくて、ブランチで対応されているこちらのほうを使った。


学生にUSキーボード使いが多い

最近の大学生の傾向なのか、美大生の傾向なのか、それとも芸大生だからなのかわからないけど、授業に自分のマシン(Macbook)を持ってきている学生にUSキーボードを使っている学生がわりと多い気がする。そっちのほうがキートップの印字がすっきりしてていいみたいな好みの問題なのかな。まあ個人の好みなのでいいんだけど、授業で学生のプログラムをかわるがわる指導するような局面だと、ああこっちはUSキーボードかとか、こっちは違ったみたいなコンテキストスイッチの都度切り替えが必要でわりと難儀することがある。

USBデバイスさすと一時的にキーリマップするみたいなデバイスがあるといいなと思ったけど、そういうのないのかな。


静止画の時計

昨年度までは授業のテキストにいちおう「Built with Processing」のコピーを配ってそれ合わせて進める部分もあったんだけど、さすがに古すぎるしコピーを配っても実際のところほとんどリファレンスとしては使ってもらえないので、今年はほとんど紙テキストなし(あとから参加学生対策にslackに参加してすることなどをまとめたプリントは必要だった)で授業をすすめている。テキストくばってもそれを読むよりgoogleで検索してみつかった情報を参照されてしまうのはしょぼーんという感じなのだが、まあ自分も普段はそうするわけだし仕方ないよなと思うことにした。それでいうと本家Processingサイトリファレンスの日本語版こそが必要という話になるのだけど、これはどうにかならないかな…。

で、例年だと図形描画命令を教えたあとは繰り返し構文を使ってみようという授業だったんだけど、今年は変数と条件分岐を先に説明して、時・分・秒を得る命令( hour() / minute() / second() )の値を変数に入れて、そのデータを使って、静止画の時計というか「現在時刻によって変化する画像」を作ってもらう課題を課して取り組んでもらった。変数ってプログラムの授業で教えるときに新概念がいきなりたくさん出てきて難しいわりに単体だと演習で自然に使ってもらうのが難しいなと思ってたんだけど、「時間のデータを変数に格納して使う」という形だと、難しくなりすぎない形で自然に変数を扱うプログラムを書いてもらえる課題になったかなと。


プログラムで描いた絵をプログラムで真似する

授業第3回。今回から実際にProcessingのプログラム演習なんだけど、命令の解説的な座学をしてから個々人が自分でプログラムを書くだけでなくて、受講生同士がお互いのプログラムを意識し合えるような演習にできないものかなと思って、「プログラムで描いた絵を出題して、それを再現するプログラムを描く」という課題を出してやってもらった。

  1. こんな感じのサンプルに、図形描画命令や色を扱う命令で簡単な絵を描くプログラムをつくってもらう。これを「出題プログラム」とする
  2. 出題プログラムでできた画像をslackにアップロードしてどんどん出題してもらう。
  3. 出題した受講生は、今度はslackに流れている出題画像どれかをダウンロードして、こんな感じの「解答プログラム」に画像をドロップし、解答画像を再現するプログラムをつくることに取り組んでもらう。
  4. できあがったら、解答画像としてslackに流す。

この出題、解答を順番に繰り返しつつslackに流してもらうことでたんに図形描画の命令を試すだけではなくて、求める画像をつくるのにどういう命令が必要なのかも考えてもらえる課題にしたつもり。ちょっと手順が多いとか課題もあったけど、slackで各自が進めている課題の画像が流れるのはプログラムの授業としてはライブ感も出てなかなかいいなと思った。この路線で今後の課題も考えていこう。

あとProcessingの紹介も兼ねてBNNのProcessing関連本を全部授業に持っていってみたんだけどやっぱり持ち運ぶ重さではなくてたいへん疲れた…


Easy6502と『算道』

授業第2回。自分の授業にはじめてゲスト講師を呼ぶというのをやってみた。

BCCKSの仕事でデジティミニミにいるときに、4月から来るようになった新入社員だと紹介された山本ー彰さんが聞いてみると昨年度のメディア芸術祭でアート部門入賞した『算道』の作者だというので、ちょうどいいタイミングだったのもあり紹介してもらって数週後のゲスト講師をお願いすることになった。授業では算道のパフォーマンス(「真または偽」の計算実演)や、メディアアートと現代アートの関係の話などをしていただいた。算道のパフォーマンスは正式には着物ですると聞いてたんだけど今回は着物ではなかった。

算道 | 第19回文化庁メディア芸術祭

僕のほうの講義は、例年だと第2回からProcessingの演習に入っていくんだけど、山本さんの講義に合わせてもうちょっとコンピュータの原理の部分に触れてもらうといいのかなと思ってノイマン型コンピュータの話をしてからEasy6502でCPUとメモリとプログラムの関係を体験するという授業にしてみた。Easy6502はJavaScriptで動く6502エミュレータにビジュアルで状態が表示されるメモリが接続された学習用のバーチャルマシンみたいなもので、メモリにデータを書き込めばメモリ状態部にデータに応じた色でドットが表示されることになるので、ある意味BASICやProcessingと同じようにプログラムの結果をビジュアルに確かめられてわかりやすく、プログラムによってコンピュータの中で起きていることを説明するのには最適なんじゃないかと思った。一瞬でこれでプログラムの授業全部すればいいのでは? と思ったんだけど分岐とかサブルーチンコールとかをアセンブラで教えるのは不毛そう。

授業ではEasy6502そのものではなく、福地健太郎さんがプログラムメモリ部分もビジュアル表示するようにしたバージョン「6502 snake (destructive edition)」を使ってプログラムもメモリ上ではデータの一部であること、プログラム自身がプログラムとしてのデータを書き換えることも可能であることなどを説明して、こういう発想が発展した表現としてのグリッチやゲームのバグ技(ポケモンのセレクトバグやスーパーマリオワールドのTASグリッチ)なども紹介した。プログラムの自己書き換えの話やEasy6502のカラフルなドットでプログラムが示されるあたり「算道」の話にもちょっとつながったかな?


正規表現ワークショップ2016

今年も藝大先端のプログラミング演習講師業の季節。今年度から藝大内での改組やカリキュラム変更があったみたいで例年水曜日午前だった授業が火曜日午前になった。週明けてから月曜中に授業準備をなんとかしないといけないプレッシャーがけっこうある。

といいつつ、今年の授業第1回は去年度とほぼ同じ感じで正規表現を使ってみるワークショップをしてみた。あと授業での情報共有は今年はslackを選択してみたけど、これがうまく働くかはもうちょっと様子をみていきたい。

ことしみんなが作った正規表現:

  • (日米)?安(全)?保(障)?(条約)?
  • /お?(にぎり|むすび)め?し?/g
  • (オ|)?(シャ|サ)レ?(オツ)?(ンティ|ッティ)?
  • /(セ)?(ブン)?(イレ|レ)?ブン?(イレ|レ)?(ない)?/g
  • /(デイ)?(リュ|バ|サ|パ)ッ(ク|グ)/g
  • (キムラ?|きむら?|木村)(タクヤ?|たくや?|拓哉)?
  • コス(パ|プレダンスパーティー|トパフォーマンス)
  • (New)?(スーパー)?(マリオ|ルイージ)(ブラザーズ|サンシャイン|ギャラクシー|USA|64|(3D)?ランド|(3D)?ワールド)?(2|3|U|Wii)?
  • (東京)?(ディズニー)?(ランド|シー)
  • /(も〜っと!)?おジャ魔女どれみ(♯|ドッカ〜ン!|ナ・イ・ショ|16シリーズ)?/g