ゲーム業界

ゲーム業界のAIプログラマの仕事

更新日:

こんにちは、だぶる(@double_bookmark)です。

職業プログラマといっても多種多様で、料理人が和風、洋風と分かれるようにプログラマも数えきれないくらいに分類されます。

ゲームプログラミングは一般的なプログラマとは大分かけ離れたマイナーな職業です。

 

最近よく聞く「AI」はゲームプログラムでは一般的で敵の動きをよりリアルに、理不尽ではないように動かすために日々研究がされています。

 

AIに特化したAIプログラマについて紹介します。

AIとは

AIはArtificial Inteligenceの略で、日本語は人工知能と言われています。

最近のAI

一般的なAIで連想されるのは機械学習、ディープラーニングを用いたものでAppleの「Siri」が有名です。

これらの技術はまだゲームに活用されている事例は少ないです。

ゲームのAIとは

  • 判断、意思決定を行うAI
  • 移動を行うAI

判断、行動を行うAI

一般的なゲームで敵に見つかったら即座に攻撃されると思います。

攻撃方法も銃だったり、魔法だったり敵の種類によってはいろいろあります。

 

銃などの飛び道具のゲームであればその場で打ち続ける敵であれば簡単に倒せますが面白くないと判断されます。

リアルな銃撃戦であれば物陰に隠れてチマチマ撃ってくるのが普通です。

 

一般的なことをサラっと書きましたが

  • 攻撃バリエーションはいくつ?
  • 攻撃バリエーションを切り替える条件は?
  • 理不尽にならないように銃や魔法の使用回数に制限が入るのか?
  • 制限された時の挙動は?
  • 物陰に隠れるためにはどんな情報が必要?
  • 物陰もプレイヤが移動したら安全でなくなるので新しい場所を探す必要がある

考えるべき項目は多数あります。

一般的なゲームは列挙すると数千行にも及ぶ項目を考慮することになります。

 

今説明したものは「判断」「行動」も制御していきます。

銃を撃つという行動だけでも

  1. プレイヤの方を向くアニメーションを流す
  2. 銃を持ち上げるアニメーションを流す
  3. 銃を撃つアニメーションを流す
  4. 銃弾を時々外れるようにブレながら発射する
  5. 発射時にマズルフラッシュと銃声を出す

AIプログラマは「判断」「行動」で組み合わせ爆発を起こす膨大な作業量を効率よくプログラミングしていくことを日々研究、実践しています。

移動を行うAI

上の判断、行動を行うAIに含まれるAIですが、求められていることが非常に複雑で別分類に扱われます。

 

人が何気なくやっている移動を表現するのは非常に難しいです。

障害物が目の前にあることは人なら目で見て判断しますが、AIは目がないので代わりの情報を与える必要があります。

目と同じ情報を与えて解析させることが出来れば簡単なのですがCPU、メモリ、時間が足りないので予めデータとして作っておいた歩ける場所の情報を与えたりします。

  • 移動情報も大きな岩が降って塞がれたらどうする?
  • ジャンプしたら移動出来る場所はどう表現する?
  • 爆弾が置いてある場所は怖いから遠回り出来ないか?
  • 走ると曲がり切れない細い道はどのくらい手前からどれだけ減速する?

移動も考えるだけで頭が痛くなるくらい考えるべきことがあります。

歩ける場所の情報、隠れられる場所の情報など、事前に作る必要のあるデータが多いです。

なのでツールの作成、ワークフローの整備なども必要でこの分野だけで専任のプログラマを用意します。

まとめ

AIプログラマは敵の動きを作るプログラマで、ゲームの面白さの根底を作ります。

やりがいは非常にあると思いますが、最新の技術を取り込む技術力だったり、膨大な作業に飲み込まれないメンタルが必要です。

 

-ゲーム業界
-, ,

Copyright© Book Marker , 2018 All Rights Reserved Powered by AFFINGER4.