より複雑なFSM図の設計

(参考:ゲームクリエーターズバイブル
 
実は現代的なゲームを設計する場合、昨日のようなFSM図では力不足といえます。
 
それは、

  • 状態遷移の過程
  • 属性

といったものの記述ができないからです。
 
「状態遷移の過程」というのは、
通常のトークンは状態遷移する場合、その過程を見せることが多いからです。
 
例えば、スーパーマリオ状態でクリボーに衝突した場合、チビマリオとなりますが、
クリボーに衝突した次のフレームに、すぐさまチビマリオになっているわけではありません。
「ぎゅんぎゅんぎゅん」
という音とアニメーションで、小さくなる過程を表示しています。
 
この過程を見せるということはとても重要です。
 
これがあると、プレイヤーに対して、

  • トークンが自然な動きをしている

という視覚的に良い効果を与えることができます。
 
さらに、この「状態変化の過程」で特別な操作感を与える(例えば後ろに吹っ飛ぶなど)と、

という印象を与えることができます。
 
というのは、操作にも変化を与えたほうが直感的に、
「ああ、やられたんだなー」
ということが分かりやすいからです。
 
格闘ゲームにおいて、1つ1つの技が重く感じるのは、
この「過程を見せる」ということが顕著に使われているからですね。
 
プログラム的には「状態遷移の過程を見せる」ことはとても面倒でありますが、
この手間を惜しまないことが良いゲームを作るテクニックではないかと思います。
 
さて、少し脱線してしまいましたが、
要はFSM図に「状態遷移の過程」の記述をしたい、ということです。
 
色々記述方法はあると思いますが、
「状態遷移の過程」は「状態」よりも少し弱い印象があるので、
点線の矩形で記述を行うものとします。
 
続いて「属性」の記述についてですが、、。
長くなってしまったので、次回に。