2007年07月03日

悲しいけれど、センスなんだよね。

IT技術者は、部下に極意を伝授してはならない?


 今までで、『この人、デキる』と思ったゲームプログラマさんが3人いる。過去8年ぐらいゲーム業界にいて、30人以上のゲームプログラマさんと一緒に仕事をしてきて、3人。10人にひとりぐらいは、『この人に任せておけば大丈夫』って思える方がいる。

 私も元、情報処理の学校を出て、業務系プログラマを三年ほどやっていたので、その時に考えていた事なんだけれど、プログラムでなにかの結果を得ようとする場合、コードの書き方なんて何通りもあるのね。簡単に説明すると、”6”という数を得たい場合に、四則演算では”1+1+1+1+1+1”、”2+2+2”、”3+3”、”7-1”、”2*3”、”3*2”、”12/2”……とか、色々あるわけですよ。んでね、上記の例で言うと、加減算つかうのは普通の人、乗算つかえるのは上手い人、除算まで選択肢として持てる人は凄い人。『わざわざ割り算って、ありえなくね?』とか思っちゃったら、それまでの人。場合によっては、割り算をつかうのが早かったり、”12”という値が便利だったりする事がある。プログラムという道具にしか目に行かない人と、道具をつかう状況、材料等まで考慮に入れて、道具を選べる人とで、得られる結果の精度や性能が変わってくる。
 実際の体験談で言うと、あるゲームで、表示画面に対してラスタ演算で波打つような演出を行う必要があったの。例えば主人公がめまいを起こしたとかで、画面をグニャグニャって変形させる演出ね。その時のプラットフォームがPS2で、このマシンで2D絵のゲームをやる場合、表示領域を覆う大きさの板ポリゴンに、テクスチャを貼る感じで絵を表示したりするのね。あるプログラマさんは、その板ポリに直接ラスタ演算で変形かけてたんだけど、PS2のハード性能だと、細かくキレイに湾曲しないの。せめて30フレームぐらいの描画アニメーションをさせようとするなら、もっと精度を低くして、やや角張った湾曲にするしか、この方法では表示できない。演出として、PS2自体の限界性能を超えた結果が欲しかったって事だと思った、その時は。でもそのプログラマさん、一ヶ月ぐらいそんな事を試行錯誤してて、半分ノイローゼ状態になってた。
 その後、別会社で、別タイトルで、PS2にて同じ演出埋め込む機会があった。担当プログラマさんに、『画面グニャグニャってアニメーションさせたいんだけど、PS2で前にやったらキツかったんですよ』って言ったら、『ま、やってみるよ』って。数日経って、様子を見に行くと……キレイに細かくグニャグニャになった画面が表示されてた。驚いて『ど、どうやったんですか?』と訊ねると、『板ポリが細く切ってあって、それをずらしてるだけだよ』と答えが。大きい一枚のポリゴンに波立つ変形させる演算をしているのではなく、小さい単位のポリゴンを動かしている演算をしているとの事。まさに目から鱗だった。青天の霹靂。ブレイクスルー。
 というわけで、まあ、知識と経験と努力でなんとかならない場合もあるよね。自分にはセンスが無いなと思ったら、あまり期待せずに、適度に諦めながらやっていく方が幸せかも。なんだよフォロー無しかよ。
posted by the5thantinomy at 13:58| 東京 🌁| Comment(2) | TrackBack(0) | 雑記 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
”理系脳”と”文系脳”って分類が在るけど
プログラマ(と言うかコンピュータ系)にも
当てはまるよねw

如何にエレガントに実行するかを追及する人と
そのまま叙述してしまう人w

私は多分、理系脳のバグ持ちですがw
Posted by ARIEL at 2007年07月04日 15:27
そして私は理系脳のシナリオライターでしたw

ストーリー構築を、キャラクター情報と時間軸でマトリクス状にまとめるタイプ。
Posted by the5thantinomy at 2007年07月04日 19:38
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]


この記事へのトラックバック