海外でも人気キャラのソニックなどを生み出したゲームメーカー・セガが、2020年1月から開始したという数学に関する社内勉強会の資料を今年6月15日に一般公開した。その内容は、高校数学や大学で学ぶ線形代数といったもの。
セガのTwitter公式アカウントでは「数学はゲーム業界を根から支える重要な役割を担っているんです」とコメントしており、高校や大学で学ぶ数学の知識がゲーム開発の現場では当たり前のように使われているということだろう。
そこで疑問なのが、具体的に数学のどのような知識がどのように使われているかということ。そしてセガがわざわざ社内勉強会の資料を一般公開した意図は何なのだろうか。そこで今回はゲーム雑誌「ゲーム批評」の元編集長で、現在はNPO法人「国際ゲーム開発者協会日本」の事務局長を務めるゲーム教育ジャーナリスト・小野憲史氏に話を聞いた。
数学は主にプログラミングに使われると小野氏は説明する。
「例えば往年の名作である『ゼビウス』や『テトリス』といった2Dのゲームと、現在の主流になっている画面に奥行きがある3Dのゲームに分けたときに、使われる数学分野は異なります。
2Dのゲームで主に用いられるのは、物体の動きの表現。画面にX軸とY軸しかないので、基本的には中学で習う一次関数や二次関数ですみますが、途中で速くなったり遅くなったりする動きを表現する際は、微分・積分や三角関数などの高校数学も使われます。
3Dのゲームになると、奥行きを表現するのでX軸とY軸に加えてZ軸の概念も加わりますよね。そこで、物体のリアルな動きや回転を表現するために、微分・積分の他に行列や線形代数といった、より高度な数学分野が必要になってくるんです」(小野氏)
そして、ゲーム制作において数学知識を必要とするのはプログラマーだけではないという。
「ゲーム制作に携わる役職はプログラマーのほかにも、CGデザイナー、グラフィックデザイナーなどのアーティスト、ゲームデザイナー(ゲームプランナー)などがいます。ゲーム制作を積み木での城作りにたとえると、積み木そのものを作るのがプログラマーで、積み木に色を塗るのがアーティスト。そして積み木を組み合わせて城の形を作るのがゲームデザイナーです。
例えば、スマホなどのソーシャルゲームの『ガチャ』と呼ばれるシステムに代表されるようなクジの仕組みは、数学の確率論と統計によってデザインされています。他にはロールプレイングゲームでキャラクターがフィールドを歩いているときにモンスターに遭遇する確率もそうですね。
プログラマーはあくまで“確率を設定できる”という積み木のパーツを作るだけなので、具体的にどんなパラメータに設定するかはゲームデザイナーの仕事になります。その確率の設定を少し変えるだけで、そのゲームが何時間かけてクリアするものなのかなどの全体像が変わってきますよね。ですからゲームデザイナーといえど、最低でも確率・統計に関する知識は必要になってくるといえるわけです。
アーティストも同様に数学の知識が求められます。例えば、同じ車でも昼間か夕方かによって見え方って変わりますよね。光源や時間帯で色の見え方が変わるようにシミュレーションするには、高度な数学の知識が必要です。そのためプログラマーとアーティストの橋渡しをするテクニカルアーティストと呼ばれる役職が注目されています。このようにアーティストといえども数学とは無縁でいられなくなりつつあります」(小野氏)
では、ゲーム制作チームは全員が数学の知識をある程度持っていないといけないのだろうか。