Long-Slow-Distance

Programming Notes with Unity

メニュー

実例から見るアンチパターン ①先駆者のアンチパターン集

時が経つのは早いもので、新卒で大手のゲーム会社に入ってからゲームプログラマとしてやってきてはや10年。(震え
今年で11年目を迎え、フリーになってからはまもなく4年になろうとしている。

その間に色々な会社で良いプロジェクト悪いプロジェクトの両方を経験した。
大手から中小。コンシューマとソーシャル。ちょっとゲーム系じゃない会社も。

関わったプロジェクト数は数えてみると20弱はある。
そのうちまともだったのは5つほどぐらいか。
というか、最初の大手コンシューマを出てからはまともなプロジェクトに入った記憶が無い。

で、ここ5,6年の経験で非常に思うところがあって、

あまりにも酷いプロジェクトが増えている

ので、自分の実例を元にそれをアンチパターンの例として紹介したい。

ネタはそれなりにあるんだけど、残念ながら綺麗にまとめられそうにないので
ブログで何回かの記事に分けて適当に。

先駆者のアンチパターン集

私のに入る前に、これまでに先駆者が残したアンチパターン集の方が
非常によくまとめられているので、ちょっと検索して見つかった物をまとめてみた。


山本一郎氏が語る「プロジェクト炎上のメカニズムと早期発見,行うべき処理の概論」。
ゲーム開発はなぜ炎上するのか
http://www.4gamer.net/games/210/G021014/20130416053/
山本一郎氏が語る、プロジェクト炎上のメカニズムと鎮火法
http://www.atmarkit.co.jp/ait/articles/1304/16/news105.html

いつぞやのUniteで発表されたものだが、あの切り込み隊長ことやまもといちろう氏が残した、
プロジェクト炎上についての講演。

当時読んでいて「わかる、わかる・・・」の連続でしかなかった。
この記事には載っていないが、確かUniteで発表された資料の方では
「プロジェクトの炎上は人が原因」である事を強調していたような気がする。

「プロジェクトは人による」という集大成的な結論を出してくれたような、
個人的にはそんなような意味で取ったが、とてもいい発表だったと思う。


ネイティブ開発アンチパターン
https://www.slideshare.net/Isoparametric/gumi-studyspecial

失敗から学ぶゲーム開発(ドラゴンジェネシス〜聖戦の絆〜の場合)
https://www.slideshare.net/Isoparametric/ss-36266844

ソシャゲがブラウザからネイティブアプリになり始めた時期のものだと思うが、
どちらもよくあるアンチパターンが紹介されている。

ブラウザとネイティブでは全く技術的に畑が違うので、
ノウハウがない所はスキルやマネジメント面が追いつかず炎上プロジェクトが大量に発生した。(よね?)


エターナらないゲーム開発
https://www.slideshare.net/giginet/ss-42415706

個人制作のインディーズの話が中心だが、マネジメントやモチベについて語っている良い資料だと思う。


アンチパターン・プロジェクト編
http://d.hatena.ne.jp/asakichy/20150310/1425939207
ソフトウェア開発 アンチパターンのまとめ
http://yusuke-ujitoko.hatenablog.com/entry/2016/12/10/233910

やたら長いし項目が多いので、本当に細かくプロジェクトのアンチパターンを知りたいなら
この2つがうってつけだと思う。(が、正直やり過ぎ感すごい)

これ以外にももっといいのが沢山ありそうだけど、
大体似ているような気もするのでこれぐらい見ておけば十分な気もする。

アンチパターンの存在意義

そういえば何で我々はこういうのをアンチパターンにしてまとめるのかというと、
至極簡単な理由で「アンチパターンを踏みすぎる人間が多い」からじゃないかと思っている。

「なぜことごとくその悪手を踏むの?」っていうのが本当に多い。
それを回避する為には、アンチパターンから反面教師として学ぶ方が早い、ということなのだろう。

アンチパターン、とは言っているが中身は大体が失敗談だ。
失敗から学ぶのは当たり前の事である。

ゲーム開発のやり方には、当然ながら完璧は存在しない。
完璧な方法など無い中での開発では、アンチパターンを踏まないやり方を覚えていくのが逆に完璧に近くなる。

だからこそ、アンチパターンを知っておくのは重要な事なのである。

(②に続く)

関連記事