体調改善ログ:3大栄養素とビタミン・ミネラル編
前置き
以前に書いた体調まわりの改善について進展があったので、
体調悪化の原因の推定
肉食動物に野菜を食べさせたり草食動物に肉を食べさせたりしたら
では人類の身体が想定している食べ物は何か?
骨格から
まずは骨格から。
犬歯と臼歯があることから、歯の方は肉も野菜も処理できる。
ただ、野菜を処理するには腸の長さが足りない。
進化の分岐から
人類と一番最後に分岐したのはチンパンジーとなる。
チンパンジーもゴリラも身長と消化器の比率は「5〜6倍」
そしてどちらも主食は果実。
人類も同様に果実の摂取には向いてると考えられるものの、
適応と期間から
食性の変更には概ね1万年くらいの適応期間が必要なように見える
最終氷期極大期における人類の食事は主に動物だったと考えられる
身体の反応から
上記から食材の候補としては果実や肉などが考えられるが、
果実は果糖やそれ以外の糖を含み、
肉の大量摂取は腸内環境を悪化させるため、
脂質の大量摂取は身体の炎症の促進などの問題が発生し、
統合
どの食材候補も問題があるように見えるが、
まず果実に関しては現代の果実の糖質が多いだけで本来の果実はも
肉に関しても大量に摂取した場合(
脂質に関しても「オメガ6脂肪酸」と「トランス脂肪酸」
また、上記では出てこなかった食材として魚が考えられる。
直近の分岐であるチンパンジー・ゴリラがどちらも果実を主食とするため人類の主食も果実である可能性は十分に高いが、それだと「わざわざ石器を作ったうえでそれを使う期間が200万年以上(日本に限定しても3万年以上)ある」ことの良い説明が思いつかないので、今のところ自分は肉(+内臓・骨髄・脂肪)が主食であったと判断する。
以上より、食材の摂取としては「果実:少量」「肉:適量」「
ひとまずの結論
というわけで今は「肉:脂=1:1」
以上は主に炭水化物・タンパク質・脂質に関わる検討だったが、
ビタミンやミネラルは何故必要か
そもそもビタミンやミネラルが人体にとって何故重要かというと「
また、この代謝は全体的にバランスよく行われる必要がある。
巷で玉虫色に使われる「バランスの良い食事」
現状のビタミン・ミネラルの把握
では今の自分の身体にはどのビタミン・
一番手っ取り早いのは病院などで計測してもらうことだろう。
ただ、上記の方法はどちらもそれなりにお金がかかるため、
今は文部科学省に食品成分データベース(https://
一般的にはマグネシウムが不足している可能性が高い。
「マグネシウムが多い」とされる食材も注意が必要で、
そのため比率の調整はサプリを使うのが簡単(
自分がオリゴスキャンで計測した限りでは明確に不足していたのは
改めてのまとめ
というわけで、今のところ自分が摂取するものは以下となった。
- 3大栄養素:肉と脂身を摂取(1日100gずつくらい)。
それ以外は少量。 - 肉はなんでも良いが、一応牛肉やラム肉がベストではある
- 脂身はグラスフェッドのものにしてオメガ6脂肪酸を減らす必要が
ある
- ビタミンとミネラル:サプリで摂取
以上の対応で改めて体調が安定して個人開発も進められるようになっ
自分の体調改善に関連した要素のまとめ
概要
原因不明の能力低下(いわゆる不定愁訴)で個人開発などが滞ってたものの、一昨年にある程度の原因がわかってきて去年いっぱいである程度の検証~結果が出たのでそこらへんのまとめ。
問題の流れが「原因→自律神経→症状」という感じで自律神経の悪化を経由するため原因がわかりづらい症状=不定愁訴になっていたが、自律神経に関連する要素を一通り改善すると症状も改善した。
自分の場合、改善に寄与した要素は「糖質」「テストステロン」「栄養素」「瞑想」>「睡眠」「水分・電解質」「アレルギー」「血流」「体温」>「運動」という感じ。これら全ての対処を進めることで一定の改善が見られた。
まだ検証中のところもあるが、そちらの結果が出るのに時間がかかりそうなので現時点での情報を整理してメモしておく。
糖質
まず一番大きかったのは糖質の影響。
検証したところ「1食あたりの糖質が40g以上」でダウン症状が発生し、「20g以上」で自覚できるレベルの体調の悪化(眠気に似た能力全般の低下)が確認できた。そのため、現在は「1食あたり糖質10g以下」を維持するようにしている。これだけでも日中の気だるさはかなり低下した。
さらに「1日の糖質の合計が30g以上」の場合も体調の悪化が発生しているように見えるが、こちらはまだサンプル数が少なく、わざわざ増やす気もないので検証からは外している。
いわゆるGI値は症状の改善には特に影響はなく、単純に糖質の総量によってのみ体調は悪化していた。(数パーセントの変化はあるかもしれないが誤差)
一応、「すこやか茶+賢者の食卓」のように精製された食物繊維(難消化性デキストリン)を大量に摂取すれば糖質が多い食事でもダウン症状が発生しないことは確認済みだが、タンパク質なども同時に摂取するとなんらかの阻害が起こっているのかダウン症状が発生することを確認している。おそらく「糖質+精製された食物繊維」という組み合わせでのみ問題を軽減できそうだが、その場合も大量の口内炎などの問題は発生していたのでダメージをゼロにできているわけではなさげ。ここらへんはサンプル数が少なく、糖質の大量摂取はリスクが高いので検証は保留中。
また、人工甘味料に関しては1年以上試しているがダウン症状などへの影響はなさそう。サッカリンなど古い人工甘味料は問題が確認されているが、最近のもの(アスパルテームなど)は特に反対派からも具体的なデータの提出が見られないので今のところ避けてはいない。(体調はむしろ改善しているし)
テストステロン
同様に影響が大きかったのはテストステロンの低下(LOH症候群)。
症状としては鬱病にかなり似ているのでわかりづらいが、30代以上の男性であれば可能性がそれなりにある病気。(自分はおそらく20代から症状が出始めていた)
チェック自体は以下のようなAMSスコアでできるほか、人間ドックの血液検査のオプションやメンズクリニックなどで実際のテストステロン値を測ることもできる。
男性更年期・LOH症候群セルフチェック|大東製薬工業株式会社
自分の場合は効果の強かった対処などはなく、強いて言えば「サプリ」でやや自覚ができる効果が見られた程度で、あとは「運動」「料理」「メンズクリニックでの注射」などの複合でようやく少しだけ改善された形(漢方薬もいくつか数ヶ月ずつ試したが、自覚できるレベルの改善は見られなかった)。
サプリに関してはマカ・亜鉛などが定番ではあるが、自分の場合は自覚できるレベルの効果は見られず、「テストフェン」や「トンカットアリ」といったサプリでようやく少しだけ効果が出たように感じた程度。
自分が摂取しているのは以下の2つだが、おそらくここらへんは個人差が強いので色々と試すほかなさそう。
栄養素
かなり大雑把なくくりにはなるが、自分の場合(上記の項目も含めて)「経口摂取するもの」での体調の悪化・改善が一番大きいように思う。食事であれサプリであれ。
「マルチビタミン」に関しては検証がかなり昔にはなるが起床時のダルさが一段階解消されたことがあったので、それ以来常用している。「ミネラル」まで入ったものとなると臭いが結構キツいものが多いが、FANCLのものは比較的臭いが抑えられていて摂取しやすいかと思う。
「動物性タンパク質」は上記のテストステロンとの兼ね合いもあり、概ね「肉換算で1日300g」くらい必要な印象。プロテインドリンクやプロテインバーでも摂取はできるかと思うが、「精製された糖質」が血糖値などに悪影響を及ぼしやすいのと同様、「精製されたタンパク質」もアミノ酸プールの飽和などで腹痛(検査で言えば尿アルブミン値の異常)などが発生する可能性がある。(自分は市販ドリンク2~3本で腹痛が発生した)
また、どうも「晩飯での肉の摂取」が翌日の眠気の増大を引き起こしている印象があるが、こちらは現在検証中で結論はまだ出ていない。18時でもまだ遅い印象で、16時あたりまで早める必要がありそうな感触ではある。あるいは単に食物繊維が足りてない可能性もあり、詳細がまだ不明。
瞑想
食事以外の対処で効果が一番大きかったのは瞑想。
古い人間なので瞑想という単語そのものにそれなりの拒否反応はあったが、身体の動かし方に「筋トレ」や「ストレッチ」といった名前がついているように、脳の動かし方に「瞑想」という名前がついているだけなのだと理解したら許容できるようになった。
また、筋トレやストレッチにもさらに種類があるように、瞑想にも種類が色々とあるわけだが、自分にとって効果が大きかったのは「何も思考しないタイプの瞑想」と「"今ここ"を意識するタイプの瞑想」だった。どちらも習得に数ヶ月くらいかかるうえ、「今ここ」の方はよく書籍とかでも見かけるものだが、「今ここ」だと思っていたものが実はあまり「今ここ」じゃなかったりして難易度が高かった。(最終的には呼吸と周囲の音への意識でなんとかできるようにはなった)
さらに言えば瞑想の効果は当日ではなく翌日に出る印象。食事なども含め、当日に効果が出る処置は今のところなし。(瞑想に慣れていればある程度はすぐに戻れるが、すでに体調がある程度改善されている状況でのみ発生)
睡眠
ここからは上記のものより体調改善への体感的な効果が少し下がる。
厳密に言えば睡眠に関しては上記のものと同レベルの影響はあるが、「睡眠というものを過大評価していた」ということへの自戒を込めて1段階下げている。
たとえば退屈な話を聞いて眠くなったからといって睡眠不足なわけではないし、満腹で眠くなったからといって睡眠不足なわけではない。他にも電車で揺られたりした場合など色々とあるが、なんにせよ「眠くなる=睡眠不足」ではない。しかし実際には「眠いから睡眠不足なんだろう」と思ってしまう場面はわりと多く、同じような感じで「頭が回らないから睡眠不足」「うまく動けないから睡眠不足」などと色んな問題を睡眠に押し付けてしまうことが多かった。
実際、「睡眠不足」そのものはそういった問題を引き起こすが、上記のように眠気を伴う症状だったとしても睡眠不足とは無関係なことがある。そこの切り離しが重要。
また、「睡眠不足」は「睡眠時間の不足」とも切り離して考える必要がある。たとえるならば「栄養素の不足」と「食事にかける時間の不足」が別物であることと同様で、時間の大小で効果を計るようなものではなかった。(いつもの睡眠時間との「ズレ」などで体調は実際に変動するが、時間の長さそのものは質を担保しない)
筋肉痛が乳酸で発生するわけではないのと同様、おそらく睡眠の問題も睡眠時間の短さで発生するわけではなく、睡眠時間が短くならざるを得ない状況の方に問題があるように見える。
上記の「マルチビタミンによる起床の改善」や「夜の肉による眠気への悪影響」なども含め、睡眠そのもの以外のあれこれで睡眠まわりが改善・悪化することも珍しくはない。つまり、睡眠の改善において重要なのは睡眠そのものではない可能性が大いにある。
自分の場合は「そもそも長く寝過ぎていたこと」「上記にいくつか挙げたような眠気を誘発する環境が多かったこと」などが問題で、睡眠時間の短縮と眠気を引き起こす環境の変更で一定の改善が見られた。
水分・電解質
もともとは「起床時のこむら返りを防ぎたい」という目的で摂取を増やした電解質まわりだが、わりと体調全般への影響があるように見える。
上記の糖質制限などを行っていると(食事の種類にもよるが)塩分やクエン酸の摂取が減る場合がある。自分は特にそこらへんが顕著だったため、季節を問わず電解質の摂取量を増やさないと起床時にこむら返りを起こすことが多かった。
ただ、電解質系のドリンクやタブレットを摂取するだけではどうにも不十分で、さらに水分の摂取量を「減らす」必要があった。厳密に言えば「水分の摂取量を増やしてみたが、実際には元の量~少し少ないくらいまで減らす」必要があった。
具体的には脱水症状防止のために1日2リットル以上まで一旦増やしてみたが、実際にはこれはダウン症状を引き起こしてしまって良くなかった。現状は1.8リットルくらいで安定している。コップ1杯程度なら前後しても大丈夫だが、2杯ともなるとそれなりに自覚できるレベルの体調の悪化が発生するため、食事による水分も含めてある程度は水分の総量を意識する必要がある。
電解質はドリンクだと水分の量にも影響してしまうので、自分は以下のタブレットで調整している。(吸収効率は高くなくて良いので糖質は不要なのだが、糖質なしで電解質補給ができるものは塩そのものくらいしか見当たらなかったし塩だけだと効果が微妙だった)
アレルギー
自分に甲殻類とハウスダストのアレルギーがあるのはわかっていたし、血液検査でもだいたいそんな感じではあったものの、実際に検証してみたところ「卵」と「乳製品」にもアレルギー反応が出ることがわかった。
いずれも自覚できる症状は腹部の痒み程度なものの、「腹部の皮膚でのみ炎症が起こっていて内臓とかでは炎症が起こっていない」と考えるのは都合が良すぎるかなと思ったので上記の摂取を控えるようにした。
痒みが出る分量としては「市販ハンバーグ大1個」とか「デザート1個」程度でもそれなりに発生するので、基本的にはそもそも摂取しない方向にしている。
血流
いわゆる「身体の重さ」もまた経口摂取するものの影響が大きい印象ではあるが、それはそれとして血流そのものの影響を受けている場合もあった。
たとえば「肩を回すと背中などがゴリゴリ鳴る」のであれば肩甲骨まわりの筋肉が癒着していてスムーズに動いていない=血流が悪化していると考えられるので、いわゆる「肩甲骨はがし」と呼ばれるような「筋肉・皮膚の癒着をはがす動作」を行った方が良い。
どこか1つでもそういう動きづらさがあるのであれば他のところも同様の問題が発生していると考えた方が良いかと思うので、体力さえあれば一通り対処を行うのがベストだと思う。(意外と体力を使うので、まずは自覚できるところを優先する形で)
自分が参考にしているのは以下のチャンネルで、皮膚はがしなど癒着全般の対処などを重視したりしている。
体温
体温が36℃未満の時はやはり身体が重かったり動きづらかった。その対処だけで体調がプラスになったりはしないものの、マイナスは1段階マシになるような感じ。
自分の具体的な対処としては「冷たいものを避ける」のがメインで、あとは食事(唐辛子の追加など)・運動量・代謝・防寒など細かいことを積み重ねる形。
運動
運動は効果がないわけはないと思うのだが、体感的には意外と効果が薄い。自分の場合は上記の通り経口摂取するものによる影響が大きかった。
とはいえ即効性がないだけで長期的には運動は必要な認識。特にテストステロンの対処のために筋トレは継続していく予定。
おわり
というわけで、検証に2年、それ以前の試行錯誤まで含めれば5年以上かけて得られた自分の体調に関する情報をまとめてみた。不定愁訴・自律神経まわりの原因・症状に関しては個人差が大きいのでどの程度他人の役に立つかは不明だが、情報としてないよりはマシかなといったところなのでまとめてみた。
「何故スプラトゥーンはサッカーから学べることが多いのか:競争闘争理論の紹介」
サッカーもスプラトゥーンも「直接的・集団・闘争」である。
この本はサッカーの分類から始まる。
まず最初に分けられるのは「競争」と「闘争」だ。「競争」とは「相手からの妨害を受けず、自分の技術を十分に発揮すること」を目的とした、いわば「自分に勝つ」ゲームである。それに対し「闘争」とは「相手からの妨害があり、自分も相手を妨害でき、そういった影響力を発揮すること」を目的とした「相手に勝つ」ゲームである。サッカーはシュートやドリブルを防ぐなどの妨害があり、スプラトゥーンもキルや塗りなどの妨害があるため、どちらも「闘争」に分類される。
次に分けられるのは「個人」と「集団」だ。これに関しては見ての通り、サッカーは11人同士、スプラトゥーンは4人同士の「集団」闘争となる。
最後に分けられるのは「直接的」と「間接的」だ。例えばテニスやバレーボールはネットで区切られており、相手への干渉は基本的にボールを介してのみ行われる。それに対してサッカーはポジショニングなどボール以外の要素でも大きく干渉が行われる。そのため、テニスなどは「間接的」、サッカーは「直接的」となり、もちろんスプラトゥーンも「直接的」集団闘争に分類される。
つまり、スプラトゥーンにおいてサッカーから学ぶことが多いのは「同じ"直接的集団闘争"に分類されるからだ」と考えられる。
「何故この分類が重要なのか」や「この分類から何が言えるのか」については上記の本に任せるとして、以下ではこの本から導出されたスプラトゥーン用に使える概念を紹介していきたい。
「早く」と「遅く」以外の選択肢はない
この本では「早く」と「ゆっくり」で定義されているが、ここでは「早く」と「遅く」という単語を使っていく。
詳細に関しては本の方に任せるが、簡単に言えば「早く」と「遅く」は以下のような意味を持つ。
- 早く
- ハイリスク・ハイリターン
- 時間をかけないのが理想
- キル狙いの戦闘など
- 遅く
- ローリスク・ローリターン
- 時間を稼ぐのが理想
- 生存重視の牽制など
この本では全ての意志は「早く」か「遅く」かしかないと書いてあり、自分のスプラトゥーンへの応用でも同様に考えている。
チャンスが来たのであれば「早く」行動するのが望ましいが、チャンスがまだ存在していないのであればチャンスを作るために「遅く」行動するのが望ましい。つまり、状況的に「チャンスであれば早く」「チャンスでなければ遅く」という2パターンしか存在しないため、見出しの通り「早くと遅く以外の選択肢はない」という結論になる。「早く」はまだ理解してもらえると思うが、「遅く」については説明が必要かと思うので、それは次の項目で説明する。
ちなみにセオリーは上記の通り「チャンスがないなら遅く行動すべき」だと自分は考えるが、もちろん例外はある。例えばスプラ2の黒クアッドなどで顕著だが「ゾンビステジャンの単騎特攻」というのがある。これは「早い」行動に分類される。ゾンビステジャンによりリスクの方を減らすことでリスク・リターンの配分を良くする有名戦術であり、こうした「早い」行動の方でチャンスを作る動きというのも十分に考えられる。(あとで説明するが、この動きは「遅く」→「早く」の切替を「ゾンビステジャン」によるリスク軽減で行ったと捉えることもできる)
なんにせよほとんどの行動は「早く」か「遅く」かに分類され、どちらでもないものは「ただ単にチャンスについて考えていない行動である」と言える。自分の行動からそういった「どちらでもないもの」を徐々に減らしていくことが上達方法の1つになるかと思う。
チャンスが来るまで「遅く」動く
上記の説明で「遅く」とは「ローリスク・ローリターン」と書いたが、実際のところこの動きで狙うのはチャンス作りであるため「将来的なリターンを狙ったローリスク・ローリターン」というのが正しい。
例えば「味方がアーマーを溜める」「味方の長射程やプレッサーが相手を1枚落とす」といったプラスを待つ動きのほか、「2VS4の状況なので退いたり牽制して4VS4に戻す」といったマイナスをゼロに戻すような動きも含む。それらが達成されるまで「遅く」すなわち「生存しつつ時間を稼ぐ」動きを行うことになる。
「遅く」動く場合、大抵は牽制することになるが、あくまでそれは上記のような「リターン」を想定した動きになる。そのため「味方がアーマーを溜められるようにし、自分はアーマーがついた時に攻めやすい位置取りをする」「味方の長射程に抜いてもらうため、長射程を守りつつその射程圏内に相手が来るようにする」といった明確な目的をもった牽制を行うべきであり「なんか膠着状態になったから牽制だけしておく」という無目的な牽制はできるだけ減らしていくことが望ましい。(せめて「盤面把握の時間が欲しいから牽制」などにしていきたい)
そのため、「遅く」動く場合に重要になるのは「互いの武器編成(スペシャルなども含む)の把握」と「盤面把握」になる。「武器ごとのスペシャル」といった「知識」のほか、「相手の射程の体感的な把握」といった「経験」、さらには「マップを開く癖」といった「能力」など色々なものが必要となってくる。(スプラ3ではマップを開けば相手のスペシャルなどもわかるので多少変わってきそうだが)
そしてこの「遅い」動きで実際に目当てのリターンが得られた場合、「早い」動きに移るかどうかの判断を迫られることになる。
チャンスが来たら「早く」動く
こちらも上記の説明で「早く」とは「ハイリスク・ハイリターン」と書いたが、実際には「リスクを可能な限り減らしたうえでハイリターンを狙う」というのが正しい。
例えば「相手が隙を晒していたのでキルを狙う」「交戦中のところにフォローでキルを狙う」「相手が2枚落ちたのでオブジェクトを進める」「相手が2枚落ちたので相手の防衛地点を先に抑える」などがあり、「遅い」動きに比べるとリスクが相応に高まりはするものの、「遅い」動き以上のリターンが得やすい行動が該当する。
「遅く」動くだけでも一応リターンは得られるかもしれないが、「早く」動くことに比べるとどうしてもリターンが小さくなる。特にヤグラやホコに関しては少しでも進めておくことが結果的にはリスクの低下にも繋がるため、リスクがある程度減ったら「早い」動きをすることが望ましい。ではどの程度リスクが減ったら「早い」動きに移るべきだろうか?
「遅く」と「早く」の切替
「遅い」動きから「早い」動きへ切り替える際の条件とは何か?逆に「早く」から「遅く」への切替は?
これに関しては「正解」と呼べるものはない。これも「闘争」に分類されるゲームの特徴であるが、「競争」においては「いかに正解を選ぶか」が重要であるのに対し、「闘争」においては「選択をいかに正解にするか」が重要となる。つまり、選択した時点では正解かどうかはまだ決まっておらず、結果が出た時点で正解だったかどうかが確定する。そのため、「妥当性」に関してはある程度言えるものの「これが正解」というものは存在せず、どんなに妥当に見える選択だったとしても結果が伴わなければ「正解ではなかった」ということになってしまう。
それでもいくつか考えておけることはある。
たとえば、遅さと早さの切替の判断材料になる「要素」。これに関しては「4VS2になったら数で押し込む動きが強い」ことからわかるように「(局所的な)人数差」がまず考えられるし、「アーマーがついたら押し込みたいし、逆に相手にアーマーがついたらせめてやられないようにしたい」ということから「スペシャルの使用」も考えられる。また、お互いにそれなりにカウントを取ったヤグラで「相手よりカウントリードした」ならそれ以上頑張ってもリードしている事実は変わらず、むしろオールダウンすると相手に逆転の目を与えてしまうから撤退判断を下すという「カウントの状況(十分にカウントを取っているか・リードしているか)」なども考えられるだろう。
これらの要素は「トリガー」、すなわち「それが変化したら早い・遅いの切替の判断が必要になる要素」と捉えることができる。実際に切り替えるべきかどうかはその他の要素とも絡むのでやはり正解は出ないが、なんにせよ「何が起こったら早くと遅くの切替判断をするか」を事前に把握しておくことで切替のチャンスを逃さず、切替の速度も上げていくことができると思う。
早くと遅くを切り替える「タイミング」に関しては上記の通りトリガー=要素の変化によってかなり絞り込めるが、「妥当性」に関しては無数のパラメータがあるため極めて難しい。ざっと列挙するだけでも「味方の武器×4と相手の武器×4のそれぞれの相性」「互いのデス状況」「互いの位置」「互いのスペシャルの溜まり具合」「互いのスペシャルの現状に対する有用性」「自分を含む8人のプレイヤーはそれぞれ攻める意識が強いのか守る意識が強いのか」などが考えられ、さすがに上記のタイミングでこれらをもとに「思考する(時間をかけて判断する)」のは現実的ではない。思考に時間を割いていてはせっかくのチャンスを逃すことにもなりかねない。それ故、事前に情報の整理などはするとしても実際の現場では「直感」など経験をもとにした判断が重要になってくるのではないかと思う。
防衛は「ゴールを守る」ものではない
ここまでは「早く」と「遅く」に関する話だったが、ここからは「ターゲット」についての話になる。
サッカーにおいてもガチヤグラなどにおいても「ゴールを守る」という表現があるが、では「ゴールを守る」には何をすれば良いだろうか?サッカーであればゴールの前に11人全員で並んでゴールを塞ぐべきだろうか?ヤグラであればゴールの周囲に4人が固まるべきだろうか?
そうではない。確かに防衛時の「目的」は「ゴールを守る」ことと言えなくもないものの、「目標」は「ゴール」そのものではない。相手の目標(目指す先)がゴールなのであって、自分達の目標(目指す先)はゴールではなく相手のオブジェクト(サッカーであればボール、ガチヤグラであればヤグラ)である。
つまり、防衛の基本は「相手のオブジェクトを止める」ことになる。ゴールを守ろうとしてオブジェクトとゴールの間で右往左往するのではなく、相手のオブジェクトを止める動きをしなければいけない。それは結果的にオブジェクトとゴールの間での行動になる場合もあるが、あくまで重要なのは「オブジェクトを止めること」であって「オブジェクトとゴールの間に居ること」ではない。
この「目標」すなわち「ターゲット」は攻めと守りで切り替わる。攻めている側は「相手のゴール」がターゲットになるのに対し、守っている側は「オブジェクト」がターゲットになる。また、スプラトゥーンにおいてはルールでも変わり、ガチエリアにはエリアはあれどもゴールはないし、ナワバリに関してはエリアすらない(というか全域が実質的にエリアである)のでゴールをターゲットにできない。ガチエリアの場合はエリアを確保するまではエリアをターゲットとして良いと思うが、抑えの段階ではエリアではなく(相手がエリアに接近するための)ルートがターゲットになるのではないかと思う。ナワバリに関しては明確なオブジェクトがないためターゲットの設定自体が難しく、ナワバリの難しさはそこから来るのではないかと思う。
ちなみに余談だが、本書ではサッカーの弱い守備は「ターゲットを自陣ゴールにしているため」としているが、自分の解釈では「ターゲットを(ボールと自陣ゴールを繋ぐ)ルートにしているため」ではないかと思う。それ故にそのルート上に立っているだけで守備をしている気分になっているのではないか?とスプラのガチヤグラやガチホコをしていて思った。ガチエリアの抑えなどにおいてはその動きでも問題ないのだが、ヤグラやホコの防衛はルートそのものは目標にはならない(手段としてそうなることはあるが)。
そしてサッカーと違い、スプラトゥーンにおいては「オブジェクトがどちらのものでもない状態」というのが頻繁に発生する。サッカーにおいてもボールがフリーになることはあるが極めて短時間であり、スプラトゥーンのように数十秒ものあいだ未確保の状態が維持されるようなことはまずないだろう。
つまり、スプラトゥーンにおいては「攻める時のターゲット」と「守る時のターゲット」の他に「拮抗時のターゲット」というものが存在する。ではスプラトゥーンにおける「拮抗時のターゲット」は何になるのか。攻めと同様に「相手ゴール」になるのか、守りと同様に「オブジェクト」になるのか、それとも第3の選択肢があるのか。
結論から言えば「オブジェクト」になると自分は考えるのだが、守りの時の「オブジェクト」とは少々違うので、もっと細かく見ていこう。
ここで重要になるのは、この本においてターゲットの話は「対象」だけで良かったものの、スプラトゥーンにおいてはさらに「主体」と「動作」がないと区別がつかないということだ。文章的に言えば「目的語」だけでなく「主語」と「動詞」がないと区別ができない。
例えばガチヤグラにおいて攻める時の目的は「オブジェクトが」「ゴールに」「近づく」こととなり、守る時の目的は「味方陣営が」「オブジェクトを」「止める」ことになる。
これに対して拮抗時の目的は「味方陣営が」「オブジェクトを」「確保する」ことになり、守る時の目的とは「動作」が異なる。微妙な違いではあるものの、例えばヤグラにおいて「止める」場合はボムを乗せるだけで達成できたりするが、「確保する」となると本体も接近しないといけないので必然的に必要な手順は変わってくる。
そして「止める」にしても「確保する」にしても、それだけでは不十分だ。「止め続ける」だけでは一向にこちらの攻めに移れないし、「確保してすぐにやられる」状態では一向にカウントが進まない。つまり、「止める」「確保する」だけではなく、その「次」まで考える必要がある。この点について次の項目で詳しく見ていこう。
「次」の考え方
まず、「フェイズ」という単語について先に定義しておこう。(本の中での定義とは違うので注意)
例えばホコを例にすると、攻めが続く流れとしては「相手を排除できたのでホコを運ぶ」↔「相手の防衛とこちらが戦闘になり拮抗状態」という2つのフェイズが交互に繰り返し現れる感じになるかと思う。これらの段階をそれぞれ1つの区切りとし、ここでは「フェイズ」と呼ぶこととする。(本の中でのフェーズの概念と共存させたい場合はステップやステートなどと言い換えた方が良さそうだが、今回は馴染みのあるフェイズという単語を利用する)
ではこのフェイズの概念が何の役に立つかと言えば、上で出た「次」を考えるために必要となる。
例えば「ホコは割ったが、持ったらすぐに攻撃されて運べなかった」というのは特に低ウデマエではよくある現象だろう。これは「ホコを持つ」というフェイズは達成できたが「ホコを運ぶ」という次のフェイズは達成できなかった、と捉えることができる。
重要なのは「フェイズを先に進めること」だ。つまり「ホコを持つ」というフェイズ目標を達成するだけでは不十分で、「ホコを持つ」が達成できたうえで次の「ホコを運ぶ」というフェイズも達成できる状況にすることが重要となる。両方の目標が達成できそうな状況にしてから「ホコを持つ」ことができれば「ホコを運ぶ」こともでき、フェイズが進むことになる。
そのため、攻め・守り・拮抗のいずれの状態であっても「今のフェイズ目標」に加えて「次のフェイズ目標」の達成まで考慮して事前に準備しておくことが重要になる。守りにおいては「止める」だけでなく「戻す」必要があるし、攻めにおいては「確保する」だけでなく「進める」必要がある、ということだ。
ただ、たとえば「ホコを持つ」→「ホコを運ぶ」ができたとしても、その先の「拮抗状態に持ち込む」前にホコ持ちがやられることが往々にしてある。フェイズは1つ進んだがそこで終わってしまい、今度は相手がフェイズを進めやすい状態になる。であれば「次のフェイズ」と言わず「次の次のフェイズ」まで見るべきだろうか?
この部分に関してはなんとも言えない。「1フェイズずつ地道に進めるべきだ」とも言えないし「2フェイズずつ進めた方が相手より1回の進みが多いから有効」とも言えない。これも先程のように「正解がない」ものだ。自分としては1フェイズずつ進めるのが「妥当」ではないかと考えるが、状況によってはそれが「正解」にならない可能性も十分に考えられる。
なんにせよ1つだけ言えるのは「次のフェイズ」まで考えないと一向にフェイズが進まないということだ。攻めの継続であれ防衛の成功であれ拮抗からの起点作りであれ「フェイズを進める」ことができてようやく有効な立ち回りとなる。
エイム練習の是非
今度はスプラトゥーン界隈でよく見かける「エイム練習はするべきか否か」において、この本における視点から考えていきたい。
一般的なエイム練習賛成派の主張は「キルが獲りやすくなる」だ。実際、止まっているマトに弾を当てられない状態では動いている相手にはなおのこと当たらないだろう。「エイム練習だけでキルが獲れる」と主張する過激派も居れば「相手に当てやすくなって困ることはない」という穏健派も居る。
逆にエイム練習否定派の主張は「別にキルは獲りやすくはならない」だ。これも実際には相手は不確かな動きをするわけで、エイムの練習通りにいくことは稀だ。それよりも「キルが獲りやすい状況を作る・狙う」方が重視されるし、キル能力の向上を目指す場合に時間をかけて練習すべきは「エイム」ではなく「相手を動かす方法の把握」だったり「相手を狙いやすい位置の把握とシミュレーション」だという主張がある。
では本書ではどちらが支持されるだろうか。
最初の分類の話で出てきたが、スプラトゥーンは「競争」ではなく「闘争」である。「自分と戦うゲーム」ではなく「相手と戦うゲーム」であり、「技術力」よりも「影響力」が重視されるゲームであり、「エイム力(技術力)」より「盤面操作能力(影響力)」が重視されるゲームである。つまり、「エイムの練習よりも盤面操作の練習の方が重視される」と言える。(詳細については本の方を参照)
もちろん、「盤面を操作するためにエイム能力が重要」というのはありうるし、特にリッターなどにおいてはそれが顕著だろう。ただし、エイム能力が盤面に影響する度合いは武器によって大きく異なり、さらにはキルそのものが盤面に影響する度合いもまた変わってくる。
ここで言う盤面操作能力とは今まで説明してきた「早く・遅くの切替の精度・速度」であったり「フェイズを進める能力」であったりするわけだが、これらの実行に際してエイムが必要な場面も確かにある。しかし同時にエイムが必要ない場面もかなりある。たとえば防衛時に「相手がすでにそこまで入りこんでいるだけで(こちらが実際にダメージをまだ食らっていないのに)イヤ」という風に感じたことがあるだろう。「塗りを取られている側のローラー・ブラスターがうまく動けてない」というのも見たことがあるだろう。「攻撃しようとしたらちょうど相手にアーマーがついて逆にやられた」という経験もあるかもしれない。試合に勝つためにはこういった盤面の操作能力の方がただキルをとるだけの能力より重要となる。エイム能力はキル能力の一部でしかなく、キル能力も盤面操作能力の一部でしかない。そのため、練習することがあったとしてもそれは「盤面操作能力の向上の一環」として行われるべきだろう。
そして、そうなってくると1つ問題が出てくる。「盤面操作」はそもそも「盤面」がないと練習ができないのだ。1人で脳内で行うにしても、まずは実戦のデータがないとどうにもならないだろう。エイムのような「技術力」であれば相手が居なくても練習できるが、盤面操作のような「影響力」の場合は相手が居ないことには練習できない。
ではどう練習するか?となると結局のところ「実戦から学ぶ」しかない。もちろん、闇雲に実戦だけこなせば良いというわけではない。録画などで自分のプレイを客観的に見つつ何が良かったか・何が悪かったかを確認したり、「ここでこうしていたらどうだろう?」という改善案などのアイデアを出す時間は欲しいし、改善案を次の試合で実行するための練習もしたい。つまり、技術の方が重要な「競争」で見られる「練習してから実戦」という流れではなく、「闘争」においては「実戦してから学習」という流れにならざるを得ない。別の言い方をすれば闘争においては「実戦で出た問題を練習でいかに解消するか」というアプローチが重要になる。そのため、盤面操作の学習においてはエイム練習は本当にごくごく一部にならざるを得ない。
ここまで長々と書いてはきたが、以上の「技術力より盤面操作力」というのはあくまでこの本の理論部分だけ踏まえたうえでの結論であり、この本そのものと自分の結論はまた違う。というわけで、最後に「プレイの目的」について書いて今回は終わりとしたい。
ゲームの目的とプレイヤーの目的
「ゲームの目的」は基本的には「勝利」だ。サッカーでもガチマッチでもナワバリバトルでもそれは変わらない。これは「闘争」ゲームにおける基本でもある。
しかし「プレイヤーの目的」は違う。あるプレイヤーは「ただ楽しい時間を過ごしたいから」かもしれないし、あるプレイヤーは「上位に入りたいから」かもしれないし、自分のように「ただ無限に上手くなりたいから」かもしれない。なんにせよほとんどのプレイヤーの目的は「勝利」ではないし、「勝利」ではない方が良いだろうというのが本書の主張であるし自分もそれに賛同する。
つまり、上記のエイム練習に関しても「やりたいならやれば良い」と自分は思う。それで勝率が目に見えて上がるとは思わないしタイマンの勝率が劇的に上がるとも思わないが、「エイムが外れてやるせない気持ちになる」というのはとても理解できるし「スーパーチャクチを落とせると気持ち良い」というのも理解できる。だからそういった「自分の楽しみ」のためになら別にやって良いと思う。つまり、何をするにしてもそれは他人が決めるものではなく当人が「プレイヤーの目的」に応じて決めるものだろう、というのが自分の結論になる。
まとめ
以上の項目の他にも「味方や相手の行動意図をスプラトゥーンでどう汲み取るか(コミュニケーションの問題)」「本の方でのフェイズの扱いとは?」などまだ書いていない内容自体は残っているものの、今回は一旦ここまでとしたい。文章を長くするのが目的なわけでもなければ、自分が本書で学んだことを全て書ききりたいわけでもない。(そのわりに長くなってしまったが)
自分のスプラにおける戦術論そのもの(戦術のレイヤーの話や、そもそも具体的に何をすれば良いのかなど)についてはスプラ3でXに上がる頃にまたいずれ別エントリでちゃんとまとめたいとは思っているが、今回の目的は「サッカーの知識がスプラトゥーンに役に立つ」ということの理由と具体例を示すことであり、それは達成できているのではないかと思う。
というわけで「競争闘争理論」の紹介であった。自分の現在の戦術論のベースを作ってくれた、とても良い本だと思う。
イカ2のナワバリの戦略検討用データ(from stat.ink)
前置き
ナワバリのステージの半数くらいは「中央の確保~維持」が基本戦略になると思うが、「そもそも中央の確保~維持の成功率はどの程度か」「中央の維持が難しい場合、何をすれば勝率が上がるのか」という部分が問題になってくる。
で、それは脳内であれこれ考えるよりも、まずは現実のデータをもとにした方が確実そうだったのでstat.inkのデータを使わせてもらって参考になりそうなデータを計算してみた。
調査対象
今回はstat.inkのデータのうち、「ナワバリ」かつ「プラベではないもの」のデータを対象とした。(プラベの場合は検証や隠れんぼなどがありうるため)
IDの範囲はID:1350000(2018/09/15 21:26)~ID:1514305(2018/10/29 12:30)とした。ガンガゼのステージ改築直後で、途中からムツゴ楼が解禁される。
また、具体的には以下の項目を計算してみた。
散布図
「塗りの合計が90%未満」
→塗られていない部分が多いかどうか
「お互いに塗りが50%未満」
→塗られていない部分を塗れば逆転の可能性があるかどうか
「塗りの差が5%未満」
→細かい塗りやスペシャルでの逆転可能性が高いかどうか
「塗りの差が10%未満」
→前線を上げた状態の維持の難易度が高いかどうか
「塗り合計の平均」
→大きいほど全体的に塗られており、小さいほど塗り残しが存在しやすい
「塗り差の平均」
→大きいほど圧勝しやすく、小さいほど僅差の勝利になりやすい
線グラフ
「塗り%」
→塗り残しの傾向などの把握
「キル数」
→戦闘の多さや牽制合戦の少なさなどの把握
「デス数」
→キル数と似ているが、水没などのアクシデントの把握
「スペシャル発動数」
→打開の多さなどの把握
グラフ
いちおう埋め込んでみたが、おそらくリンク先を新しく開いた方が確認しやすいと思う。
https://o-healer.work/splatoon2/chart.html
https://o-healer.work/splatoon2/chart_stage.html
考察:データ
まずはデータの傾向をいくつか見てみる。
「塗りの合計が90%未満」の試合が多いのは
・「モンガラキャンプ場」
・「海女美術大学」
・「バッテラストリート」
・「ガンガゼ野外音楽堂」
あたり。
モンガラは広い(というか遠い)ので予想通りだが、海女美もおそらく左右のエリアや自陣端が塗られていない試合が多い様子。むしろショッツルがトップ5に入っていないのが意外。
海女美は「お互いに塗りが50%未満」の試合もかなり多めなので、自陣端や左右のエリアをきちんと塗ると勝率が高くなりそうに見える。
逆に「塗りの合計が90%未満」の試合が少ないのは
・「エンガワ河川敷」
・「コンブトラック」
・「ザトウマーケット」
・「フジツボスポーツクラブ」
・「Bバスパーク」
あたり。
これらのステージは「お互いに塗りが50%未満」の試合も少ないので、「塗られていない部分を塗って勝つ」というよりは「前線を上げて勝つ」というステージっぽい?「前線を上げて勝つ」というステージの典型としてはハコフグがあるが、上記5つはいずれも「お互いに塗りが50%未満」の値がハコフグと同程度になっている。
考察:分布図
続いて分布図の方をいくつか見てみる。
「お互いに塗りが50%未満」×「塗りの差が5%未満」のグラフは、右上にいくほど「どちらも50%を越えない試合が多く、僅差の試合が多い」という意味になるので「細かい塗りやスペシャルで逆転しやすいステージ」であると考えられ、逆に左下ほど「普通に前線を押し上げないと勝てないステージ」と考えられる。左下のハコフグはまさにそんな感じだが、右上のアンチョビ・バッテラはちょっと意外な感じがする。
「塗りの差が5%未満の試合」×「塗りの差の平均値」のグラフは左上から右下に線を引いた感じになっている。右下になるほど「塗りの差が少なくなり、実際に差が5%未満の試合が多くなる」=「僅差の試合が多くなる」と言えるが、その中でもタチウオのように右上にはみ出すと「僅差の試合も多いが圧勝する試合もあり、極端な試合傾向になりやすい」と考えられ、逆にアジフライや海女美のように左下にはみ出すと「本当に僅差の試合しかない」という風になっていくと考えられる。
考察:線グラフ
もう片方の線グラフの方も見てみる。
「塗り:合計」をざっと見てみると、一番右寄りなのが「コンブトラック」で、左寄りなのが「モンガラキャンプ場」。つまり、一番塗り残しが少ないステージがコンブで、塗り残しが多いステージがモンガラと考えられる。
「SP発動:敗北側」は「敗北側がスペシャルを溜めて発動する余裕がどれくらいあるか」=「打開のしやすさ」と考える事ができる。そしてやはり「ハコフグ」は左寄りで打開がしづらく、同じくらい「タチウオ」もスペシャルを溜める余裕が少ないステージの様子。
考察:戦略
そして戦略の視点から見てみる。
まず知りたいのは「中央を早めに取りに行くべき」か「自陣をちゃんと塗ってから行くべき」か。これは主に「中央の維持が簡単である(=取り返すのが難しい)」というステージかどうかで判定できる。これはデータ的にはリザルト時の「塗りの差が大きい(押した状態で終わりやすい)」+「塗りの合計が大きい(塗り返すべきところが少ない)」で擬似的に推定できる。
その観点から実際に「塗りの差の平均値」×「塗りの合計の平均値」のグラフを見てみると、右上にある
「ハコフグ倉庫」
は中央を早めに取りに行くべきであり、左下の
「海女美術大学」
は多少塗ってから行っても問題ないかもしれない。
別の角度から言えば「中央を簡単に取り返せる」なら自陣を塗ってからでも問題ない。これは「敗北側のスペシャル発動数」の平均値が高ければ「敗北側がスペシャルを溜める余裕がある」=「中央を取り返しやすい」と捉える事ができる。
この観点から言うと「SP発動:敗北側」を見る限り、やはり「ハコフグ」は中央を取り返しづらいと見る事ができる。また「海女美」の方は平均的なので、ある程度は中央を早めに抑える戦力も欲しいと言える。
まとめ
実際には今回のグラフからもっと色々な解釈ができると思うが、あまりあれこれ書いても雑多になるだけなので今回は基本的な解釈だけを示した。
近々バッテラストリートの構造が変更されるので、その際はまた改めてデータを取り直したい。
説明しよう!ゲームプログラマーになるにはッ!
=前置き=
昔の自分は「ゲームプログラマーになりたい!」と思っても具体的に何をすれば良いのかが分からなかった。
「どの言語を選べば良いの?」「ゲーム業界ではどの言語を使ってるの?」「ゲームライブラリは使って良いの?」「新人に任される作業って何?」などなど事前に知りたい情報が多すぎたし、そこで間違ってしまうと時間がムダになりそうで結局ゲーム作成に乗り出すのには時間がかかってしまった。
さらにいざゲーム作成に乗り出しても「WindowsAPIからゲームライブラリを自作」みたいな困難な作業に直面し、「本当にこれは必要なんだろうか?」と懐疑的になり挫折しそうになった。そして実際にWindowsAPIからやるのは結構な時間と労力のムダだった。
というわけで、昔の自分(のような人)がムダな事をしなくて済むように、あるいは不安を少しでも減らせるように「昔の自分が欲しかった情報」について今の自分が示せる範囲で示そうと思う。
ちなみに今の自分はゲームのプロジェクトに9つ(コンシューマ7つ、スマホ2つ+α)くらい関わった程度のゲームプログラマー。
=Unityで慣れよう=
今ならまずはUnityに慣れよう。
プログラミングそのものの初歩の学習としてもちょうど良いし、ゲーム開発の初歩の学習としてもちょうど良い。スマホゲームであればUnityを扱えればそのまま職に就く事もできるし、場合によってはそのまま個人開発者として食っていく事もできる。さらにコンシューマでもエディタとして使われる会社もあるから、Unityに慣れておけばどう進むにせよムダにはならないと思う。
ちなみにUnity内で使う言語はC#が望ましい。スマホゲームの開発も基本はC#の方が多いし、コンシューマをやる予定があるならC++に近いC#の方が良い。
=できるだけ小さいゲームを作ろう=
で、まずはUnityでできるだけ小さなゲームを作ろう。
意外と小さいゲームを考えるのは難しい。「ゲームを考える」というのはそもそも企画(プランナー)の範疇だし、コンパクトにまとめるのは相応のテクニックが必要になる。なので、まずは別に「面白いものを作ろう」などと思わなくて良い。最初はどっかで見たゲームでも良いし、ゲームと呼べない単純なものでも良い。
それで実際に作ってみると、かなり小さくしたつもりでも考える事が結構出てくるのが分かる。まずはここらへんの作業に慣れていくのが肝心。
=色んなパートに慣れよう=
ある程度慣れたら「タイトル画面」や「メニュー画面」などの一般的なゲームに存在するものを一通り作ってみよう。これも想定よりかなり面倒な事がわかる。場合によっては「今まで作ったものでは上手く追加できない」という事もあるだろう。こういった問題は大抵のゲームで起こるから、これも早めに慣れておいた方が良い。
また、最初のゲームができたら次は別のジャンルのゲームを作ってみよう。これによって「どのゲームでも応用できそうな部分」と「ゲーム固有で考えないといけない部分」が分かってくる。
いくつかゲームが作れたら、その後はどう進むつもりかによって対応が変わる。
スマホゲーム方面に進むつもりなら、このままUnityを使ってあれこれしよう。特にプラグインまわりを作れるようになると良い。
=C++を使おう=
コンシューマ業界(大雑把に言えば3DSとかPS4とかのゲームを作る業界)で働く場合、C++を使えるようになっておこう。
最近は普通のCを使う必要性はかなり薄いし、必要だったとしても新人に回ってくるタイプの仕事ではない。
また、Unityで使うC#は特に携帯ゲーム機などではオーバースペックでまだ使いづらいのでC++がもうしばらくは基本になるだろう。
一応、ツールとしてRubyやPerlが使えると嬉しい場面はある。ただ、これも新人にそれほど期待されるものではないから「個人でゲームを作っててツールが欲しくなった時」に調べて作るくらいで十分だろう。(軽く言ってるけど実際に個人でやろうと思うと結構重い作業になる)
あとはMakefileの書式を知っていると良いのだが、個人開発の規模だと使っても効率はそれほど上がらないので会社に入ってからでも十分だと思う。
なので、基本的にはC++さえ使えればそれで良いと思う。必要とされるレベルは「C++と既存のゲームライブラリで一人で小さいゲームが作れる」くらい。C++そのもののレベルで言えば以下の書籍で「書かれている意味が分かる」くらいのレベル。欲を言えば実践もできて欲しいが、constとかをちゃんと使うのはゲームライブラリの制作時とかだったりするし、全部ちゃんと実践する機会を個人で得るのはわりと難しいのでそこまでムリする必要はない。
一応、最新版は下のものらしいけど、自分は確認してないし上の本でもひとまずは十分だと思う。
=ゲームライブラリは使おう=
C++でゲームを作るならゲームライブラリはできるだけ使おう。
DirectXを直接使っても良いが、基本的には「ゲーム用のコードを他の人が代わりに書いてくれたもの=ゲームライブラリ」の方を使おう。間違っても自分みたいにWindowsAPIを直接使うような事は避けた方が良い。OSに近い部分の動作を理解する事も多少は重要だが、新人に期待される分野ではないしWindows固有の問題などが多かったりして効率は良くない。
大抵のゲーム会社は内製のゲームライブラリを持っているから、直接的な画像表示の操作よりもゲームライブラリを扱う事の方が多い。なので、ゲームライブラリに慣れておく事もそれなりの重要度がある。
ゲームライブラリの導入もそれなりに最初はコストが高い作業だが、ライブラリを自作するよりはずっとマシだと思う。それでも複数のライブラリを導入するとコストが高くなると思うので、「画像の表示」や「サウンドの再生」などが一つにまとまっているライブラリを探すと良い。
C++でやるならまずは2Dのゲームを作るのが良い。3Dだと「XXが表示されない」といった場合に2Dと比べてカメラの設定やシェーダまわりなどの要素が入ってくるためプロでもわりとめんどくさい。
ある程度慣れたら自分でもゲームライブラリを作れるようになると良いが、最初は「ゲームライブラリを作れる<ゲームライブラリに慣れる」という優先度の方が良いと思う。
ゲームに必要な基本要素に関しては以下の本が役に立つかもしれない。内容としては「C++で2Dゲームと3Dゲームを作るための最低限の知識と実践」についての本。最低限のわりにとても分厚いので色々と注意。この内容を一通り網羅するゲームライブラリを探すか、これを元にゲームライブラリから作っていく感じで使えると思う。
=フリー素材も使おう=
ゲームを作る場合、最初は画像や音声などのデータはできるだけフリー素材を使おう。
「画像を自分で作ってグラフィッカーの人の作業を想定できるようになる」という成長パターンを考える事もあるかもしれないが、少なくとも最初はそこまで考える必要はない。新人にはそこまで期待されていないというのもあるし、ここらへんの作業は素人がやると本当に時間がかかるのでゲーム作成の時間自体が圧迫されてしまう。だからまずはできるだけフリー素材でゲームを組み立てよう。素材を入れて「自分が考えたゲームとはなんか雰囲気が違う」となってもまずはフリー素材で我慢しよう。
その他にもラクできる部分はできるだけラクをしよう。実際に会社でやる作業も画像などは他の人が用意するものだ。企画の人に何か提案したりグラフィッカー用のツールを用意するために相手の作業を理解する必要はそれなりに出てくるが、少なくとも最初のゲームを完成させるまでは考える必要はない。相手の事を考える前に、まずは自分に求められている作業をちゃんとこなせるようにしよう。(ちゃんとこなせるようになったら考えていきたいところだが)
=できればVisualStudioも使おう=
コンシューマではVisualStudioを使うのが一般的なので、無料ので良いからできれば慣れておこう。
特に慣れておきたいのは「VisualStudio上でのコーディング〜ビルドのやり方」と「VisualStudioでのデバッグの仕方」あたり。デバッグの方は「ブレイクポイントをおいて値をチェックする方法」や「ハングした時のコールスタックや変数の見方」あたり。
自分はコンソールでのビルド上がりの人間なのであまり詳しい事は言えないけど、コンソールよりはVisualStudioに慣れておいた方が良いと思う。(コンソールも使うのでコンソールの方も余裕があれば慣れておきたい)
=新人に期待されるもの=
基本的には新人には大した事は期待されていない。場合によってはゲーム開発の経験自体も期待されてなかったりするし、大手であればゲーム開発の基礎から教えてもらえるところもある。ただし、プログラミング言語自体は前述のレベルくらいにはC++に慣れている事が期待されていると思う。
具体的に割り振られる作業としては「量産」的なものが多いんじゃないかと思う。アクションゲームでいえば「色んな種類のザコ敵」とか「色んな種類のギミック」とか。RPGでいえば「ストーリーの一部」とか「色んな種類のギミック」とか。1〜2年目でも「アクションゲームのボス」を任される事は珍しくない。
そういう「ゲームの目立つ部分」を任されるのは少々意外かもしれないが、そういう目立つ場所だからこそ上の人がチェックしやすかったり、量産する部分だから慣れによって新人でも品質の向上が見込めたりするのでむしろ妥当な割り振りになる。だから例えば面接とかで「ゲームのどの部分を作りたいですか?」と言われて「(ギミックとか作りたいんだけど目立つ部分だから競争が激しいかなぁ)」などと遠慮する必要はない。むしろ「システムをやりたいです」と言われても新人にいきなり影響の大きい部分は任せづらいからそっちの方が採用されづらかったりする。なので、そこらへんは素直にやりたいパートを言おう。
あとは新人に対しては「わからない事は訊く」というのがわりと期待されている。別の言い方をすれば「早く使い物になる」事が期待されている。確認のために他のプログラマーの時間が数分奪われる事より、わからない部分でダラダラされて数日とか数ヶ月とか成長が遅れる方が全体としては困る。しかし「わからないから訊く」というのは言うほど簡単ではないだろう。とりあえずの目安としては「10分考えてもわからなかった」時に訊くと時間のバランス的には良いし、時間を決めておけばふんぎりもつきやすいのではないかと思う。ただ、考えるだけじゃなくてコードを実際に見て調査する事もあるかと思う。その場合は10分では足りないかもしれないが、それでも1時間以上はかけない方が良いと思う。質問するための文章を事前に考えるようにすると、質問もスムーズにできるし質問を考える過程で答がわかったりするのでお勧め。
これは新人に限らない事ではあるが、「ユーザとしての感覚」はできるだけ大事にして欲しい。初心者の時は「これは使いづらい」「これはわかりにくい」という感覚をちゃんとユーザとして認識しやすいが、会社でプログラマーとして働くにつれてこの感性は劣化していく。本当にびっくりするくらい劣化していく。だから意識して「ちゃんと自分はユーザとしての感覚を持てているか」というのは定期的に確認して欲しいし、一番ユーザに近い新人としてその感覚をできれば開発の方にも役立てて欲しい。
=会社での担当の分担について=
会社でのプログラマーの担当は大まかに「ゲーム」「UI」「システム」「ネットワーク」に分かれると思う。
「ゲーム」はアクションゲームであればさらに「ギミック」「ザコ敵」「ボス」あたりで担当が分かれる(兼任もわりとある)。
「UI」はいわゆる「メニュー」まわりの対応を行い、ゲームに応じて「ゲーム中のゲージ表示」や「ステータス確認」など2Dでの情報表示まわりの対応を一通り担当する。
「システム」は簡単に言えばゲームライブラリを作る。上記のようなゲーム・UIとゲーム機の両方に精通している必要があるため、ある程度の経験者が割り当てられる事が多い。
「ネットワーク」はその名の通り通信まわりを担当する。ゲームのマルチプレイであったり、ゲーム機によっては「すれちがい通信」なども担当するかもしれない。
新人が割り当てられるのは「ゲーム」か「UI」が多いと思う。経歴(大学とか独学とかで学んだ量)によっては他の分野になるかもしれないが。
=コミュニケーション能力の測られ方について=
よく言われる事ではあるが、プログラマーでもコミュニケーション能力はある程度求められる。渡された仕様に沿って作業するだけでなく、モデル・モーション・エフェクト・SE・BGMなどを組み込む都合でグラフィッカーやサウンドの人とやりとりする事がそれなりにある。
そのため、採用の際はここらへんの能力も考慮されるのだが、これは面接でのやりとりだけでなく「集団でゲームを作成した事があるか」や「(ゲームなどに限らず)バイトをした事があるか」も考慮される。自分は「バイトをした事がないから」という理由で落とされかけた事があるので、接客業とかでなくても良いのでなんらかのバイトは経験しておいた方が良いかもしれない。(理想は集団でのゲーム制作経験だが)
ちなみにここでいうコミュニケーション能力とは「明朗快活に自ら話しかける能力」などではなく、「相手が伝えたい事を理解し、相手が欲している内容を理解し、こちらが伝えたい事を的確に伝える能力」を指す。雑談の能力ではなく、「伝わる文章」とかそういう方向の能力。
=その他の細かい事について=
ブラインドタッチとかは別にできる必要はない。毎日プログラミングする事になるから、そこらへんの能力は勝手に上がっていく(3年もすれば普通にできるんじゃないかと思う)。それよりはデバッグなどでムダに時間を取られないように設計能力の方を上げておく方が望ましい。ただ、プロでもバグがそれなりに出るものなので神経質に「バグが0じゃない時があるからダメだ」とか思わなくても良い。あくまで優先順位が「タイピング速度<設計能力」というだけの話。
テキストエディタはだいたい自由なものを選べる。会社によっては秀丸などの購入も検討してくれる。体感的にはEmacsを使ってる人が多い。ちなみに自分はサクラエディタを使っている(マクロの設定や文字コードの変換などがラクで良い)。
仕事してる人の99%は私服。なので面接時に「スーツでなくて良い」と言われたら本当にスーツじゃなくて良いと思う。それでも新卒だとスーツで来る人が多いので、心配でしょうがないなら別にスーツでも良い。ただ、その場合は「次は私服で来ていいからね」と言われるし、転職の際はまずスーツを着ないので「面接の時にしか使わないスーツにお金を払う余裕があるか?」とかで考えても良いかもしれない。
=面談について=
面談で訊かれるのは基本的に「今まで何をしてきたか(大学なら研究内容、開発経験があればその内容や担当パート)」「その会社に応募した理由」「ゲームのどのパートをやりたいか(ゲーム本体、UI、ネットワークなど)」「どのゲーム機での開発がしたいか」「得意な事・不得意な事」「趣味(土日にやる事や興味を持っている事など)」あたり。後は最後に「何か訊いておきたい事はあるか」という質問があったり。
プログラマーを雇う側として期待しているのは「ゲームを作る能力がどの程度あるか」と「一緒に仕事ができるか(コミュニケーション能力に支障がないかなど)」がメイン。あとは実際に雇う時のために「どのパートを希望するか〜どのパートに向いていそうか」あたり。質問は基本的にここらへんを確認するために行われる。
特に新卒であれば「緊張していて当たり前」なので「緊張してロレツが回らない」というのはそれほど悪印象にはならない。ただ、「ロレツが回らないから伝える事そのものを諦める」となると前述のコミュニケーション能力がないと判断されるかもしれないので、どんなに不格好でもちゃんと情報を伝えようとはしよう。
=会社の合う・合わない=
ゲーム会社は転職の多い業界である。なので、「今の会社は合わない」と感じたら普通に転職して良いと思う。だから入る際もそこそこ気軽にいって良いと思う。
「合う・合わない」という言い方だとわかりづらいかもしれないので別の言い方をすると、「今のような働き方をずっとしていく自信があるか?」「上の人達のような生き方を将来する気があるか?」という問いにYesと答えられるか?という事。
新人が転職する場合、「最初のプロジェクト」だけは完遂しておいた方が良いかもしれない。就職情報を見てるとわかるかと思うが、「経験者のみ」という条件はかなり多く、転職を考えるとプロジェクトを途中で放り出すのは結構リスクが高い。
それでも「プロジェクトの終わりまでもたない」と思ったなら転職をお勧めする。肉体的・精神的な負荷で働けなくなっては意味がない。ハズレのプロジェクトはまだ存在し、それで鬱になったり体を壊す人間も居る。新人だとそこらへんの区別は難しいかもしれないが、そういう場合はさっきのように「プロジェクトの終わりまでもつか」「今のような働き方をずっとやっていけるか」とか「他の人達が鬱や不調で離脱してないか」などに気をつけていれば区別できるようになっていくかと思う。
ゲーム関係の人材は慢性的に不足しているので、転職そのものにはさして困らないと思う。(需要と供給の内容=担当パートが一致しない可能性はあるが、それは後からの学習で埋める事もできるし)
一応、ブラックっぽい会社かどうかの見分け方としては「発売延期をするゲームが多い会社か」というのが多少は参考になるかもしれない。「その会社で発売延期が多い」というのは「その会社はマネジメントが上手く設計されていない」という可能性が高いからだ。あくまで目安にすぎないが。他には「離職率が他より高い(継続年数が短い)」とか「大規模リストラがある」とかもあるが、これもまたあくまで目安。実際のところは入ってみないとわからない。(自分もまだそんなに多くの会社を見たことがあるわけではないし)
ちなみに残業そのものは珍しくないが、聞いてた話よりはずっと良いし、そもそも新人はあまり残業するものではない。というか「新人が残業してるのに自分(他の先輩プログラマー)が帰るのは精神的にキツい」とかあるので、急ぎの作業がないなら早く帰ろう。新人の段階で残業が要請されるならブラックを疑おう。
参考までに自分はいま4つ目の会社で、ここ2年くらいは(ROMとかで忙しい時期以外)ほぼ定時で帰宅している。(定時帰宅の方は珍しいかもしれない)
=改めて最低ラインと優先度について=
ここまでの話をまとめると、(コンシューマ向けの)新人に求められる中で一番優先度が高いのは「C++を前述の本の内容が理解できる程度には使える事」。その次にこちらもそこそこ高い優先度で「ゲームを一つでも完成させた経験がある事」。個人的にはこの2つが新人に求められる現実的な最低ラインだと思う。
その次が「コミュニケーション能力」、具体的には「他の人とゲームを作った事がある or バイトをした事がある」という部分。これは最低ラインとまでは言えないが、これらの経験がないと落とされる可能性もあるので注意が必要。
それ以外はほぼ同程度の優先度と言って良い。なので、上記以外の学習は「これはラクにできる」とか「これは楽しめる」とかそういう判断基準で決めて進めていって良いと思う。具体的には「2つ以上ゲームを作る」「ゲームライブラリを作る」「ツールを作る」「VisualStudioが使える」「グラフィックや企画などの作業をした事がある」などは優先度の差異が大してないので、やりやすいもの・やりたいものをやっていけば良い。「やりやすい事をやるのは怠けなのでは?」と思うかもしれないが、「やりやすい事」はわりと「その人の得意な事」である事が多いのでそこまで気にしなくて良い。むしろ「これがやりやすいって事は自分が得意なのはこれなのか」という風に考えて応用していくのが良いと思う。
=それでも不安な人へ=
ここまで色々と書いてきたが、まだ不安な事は多いだろう。というより、情報だけで不安が解消されるのはレアケースとも言える。
ここらへんは経験を重ねていくしかない。前述の通りゲーム業界の人間は転職が多いが、その転職の際もまだこの手の技量の不安はつきまとう。それでも「自分はこれができる」というものを積み重ねていく事で少しずつ不安がマシになっていくのだと思う。
特に「ゲームを一本完成させる」というのは他でも言われている通りとても重要だ。たとえばUnityで一本ゲームが作れれば、それを個人で売る事もできる。つまり「ゲームを一本完成させる」というのは「ゲームを売るまでの最低限の作業が一通りできる」という事だし、「会社に行かなくても食っていける可能性がある」という事だ。まずはこの状態になるのが重要だし、この状態になれれば不安はそこそこマシになるんじゃないかと思う。
=後書き=
もともとはTwitterで「ゲームプログラマーになりたいならすでに行動を始めてるはずだ」という旨の文章を見かけたのが発端で、昔の自分は行動しようにもその方向の妥当性が検証できずにずっと右往左往したうえに紆余曲折していたなぁと思ったので今回みたいな情報を書いてみた。さっきの対偶は「行動を始めてないならゲームプログラマーになりたくない」という事になるが、少なくとも自分はこれに当てはまらなかったのでちゃんと反論的なものを書いておきたかった。
特に自分の場合は作業の優先度が付けられず、何をすべきかの調査で時間がかかったうえ良い情報がなかったので結局迷走する事になってしまった。だから今回のエントリで迷走を避けられる人が一人でも増えれば良いなーと思っている。(WindowsAPIを触る方向は本当に遠回りだった)
いまどきゲームプログラマーになりたいという人がどれくらい居るのかはわからないが、「行動ができない人はこういう事を考えててこういう風に方向を示して欲しいんだ」という意味でも文章は書いておきたかったのでこれはこれで良いのかな。たぶんワナビなら文章を書く人にせよ歌う人にせよ同じように「数をこなすのが良いのか質を考えるのが良いのか」「何か技法を学んだ方が良いのか」「そもそもどんな技法があるのか」「機材とかなんか揃えた方が良いのか」「求められる最低ラインは?」「それぞれの優先度は?」とか似たような感じで方向性や優先度が決められずに迷っている人が多いんじゃないかと思う。優先度や方向性は「すでにできてる人」からしたらわりと自明だけど、初学者にはさっぱりわからないし。他の分野でも「初心者ではわからない自明な優先度」の情報が増えると良いなーと思う。初心者は「どう訊けば良いのか」の段階で躓くものだし。
GW帰郷中のログ
=スマブラ=
さっき書いたとおり、今回はほぼスマブラ、特に「amiibo4体 VS 自分達4人」で遊んでいた。
スマブラのamiiboは当初はとってつけた感があって特に興味がなかったが、実際に戦ってみるとLv.9のCPUよりも遥かに強いし、戦術がある程度教えられるので「硬い前衛を後衛が飛道具でサポートする」みたいな事がamiiboだけで成立する。そしてWiiU版では8人乱闘ができるようになったので、前述のとおりのamiibo4体 VS 自分達4人のチーム戦で楽しむ事ができる。
この遊びの良い点はいくつかあるが、まずは「チーム戦術」が使えるのが挙げられる。プレイヤー側もamiibo側も「前衛・後衛」とか「戦線の維持」とかを考える必要があり、タイマンの時の技術は活かしつつも別の立ち回りが求められる。また、タイマンでは弱いキャラクター(パルテナなど)が活躍できるのも大きい。メタナイトの連続ヒット系の技2つも普通の乱闘で複数人を巻き込むとヘイトが向けられやすかったりするが、amiibo戦では相手をまとめて崖の方に運んだりできて別の活躍ができるのが楽しい。
また、この遊びでは「3人で遊びやすい」というのもある。普通の3人乱闘だと構造的に1人が集中攻撃されたりするが、amiibo戦であれば3対3として普通に遊べる。
あとはストレートに「amiiboを目的を持って育てられて楽しい」というのがある。普通にタイマン用に育ててもそれなりに楽しそうだが、チーム戦術を考えつつ「こいつは前衛にして硬くしつつ、オート回復とかライフスティールで回復させよう」とか「こいつは後衛にして飛道具ばかり使わせたうえで威力を極端に上げておこう」とか考えられる。
その他にも「amiiboの組み合わせを考えるのが楽しい」とか「単純に強いやつの相手が楽しい」とか色々あるが、なんにせよかなり楽しめた。ローカルで2人以上集まれるなら十分にオススメできる。ちなみに、(地形とキャラにもよるが)基本的にこの戦いはムリゲーな感じでプレイヤー側が勝てないので、やるならそのつもりで。
それ以外だと特別乱闘の「スロー&ライフ=10」が短時間で終わりつつも緊張感があって楽しかった。
=amiibo=
前述のとおりスマブラでamiibo戦をする都合で、色んな種類のamiiboを探すこととなった。が、都会だと供給は多いもののそれ以上に需要が多いせいでマリオとかのメジャーどころしか残ってなかった。実家(田舎)だとちょうど棚に並んだタイミングのむらびとがゲットできたり、遠めのスーパー内のちっちゃなゲームコーナーでリトル・マックやキャプテン・ファルコンがゲットできたりしたので、田舎の方がワンチャンありそう。
というわけで、夏にかけて出てくるamiiboも基本的には確保する方向で動く予定。ただ、トロン(4人に当てられるのでわりと強い)を跳ね返しつつ攻めを継続しやすいファルコのamiiboの登場予定がないのがなー。あと予定がないのはダックハントくらいだったはずだし、なんか不遇。
=予定=
体調はようやく中の中くらいまで回復したので、もうしばらく維持に努めたあとは本格的に個人の開発を再開する予定。それでも夏までにゲームを上げるのは難しいと思うけど、年末までには1つ〜2つくらいは上げたいところ。工事の立ち会いとかの影響で家に居る時間が長くなったり、7月頃には1ヶ月くらいの休みが取れるんじゃないかと思うので、時間的には問題ないと思う。




