見出し画像

ゲームを作るための必須知識!#01

こんにちは、この記事ではゲームを作ってみたい・興味がある中学・高校生をメインにしっかりと勉強しておいたほうがいい教科や内容を記載しております。
私は現在ゲームを作り始めて半年ではありますが、
中学・高校ともっと勉強しておけばよかったと思う箇所がいくつもあります。
そうならないためにここに書き残していきます!
是非、参考になればいいなと思います!
また、まだまだ私は初心者なのでゲームプログラマーの方も是非見ていただき「これ大事だなぁ」「これも大事だよ」と思うことがありましたら
いいねやコメントを残していただけるとより参考になると思います。

まず第1弾目は
高校で本格的に習う教科
           「物理」
               です。
知っている方もいるかもしれませんが、ゲームは現実世界と似ています。
重力をつければ物体は落ちていきます。(重力をつけないこともできます)
物体に横から力を加えると、加えた逆の方向に行きます。
(右から力を書けると左に行くイメージですね)
その部分はゲームを作るためのアプリである
「ゲームエンジン」(有名なのであればunityやUnrealEngine)
にある機能で補ってくれたり、楽にプログラムを組むことができます。
ですが、

「歩きながらボールを投げた時のボールの速度について」
「1つ目の物体から2つ目の物体に向けての角度や距離を求める」

などは物理的思考や計算が必要となってきます。
この二つは今自分が作っているゲームで必要となった機能
なので上げさせていただきました!
今回は前者の例をとりあげて物理が
どれほど大事かを話していきます!
第2弾目で後者の例を取り上げていきます!

まず、「歩きながらボールを投げた時のボールの速度」についてです。
物理の面でまず考えてみましょう。
プレイヤーは前に5m/sで歩いています。ボールは8m/sで投げます。

プレイヤーが立ち止まってボールを投げたとき
ボールの速度は8m/sです。

プレイヤーが歩きながらボールを投げた時
ボールの速度はプレイヤーの速度を足して13m/sです。

ではプログラミングではどうでしょうか?
ゲームを作る際にプログラミングではボールの速度を8m/sにして
プレイヤーが歩きながらボールを投げたとしても、
ボールは8m/sのまま前に飛んでいきます。
ここが複雑なのですが、プログラムでは別々に運動しているので
それぞれの動きが繋がっていないんですよね....
私はそこで何度もつまずきました....
なのでそこにプレイヤーの歩く速度も加えてあげることで
物理で考えた内容を実際に動かすことができます!

「投げたときのボールの速度=プレイヤーの速度+ボールの速度」

このようにゲームの世界は現実世界と同じようになっている所もあれば、
自分で仕組みを作ってあげないといけない所も
あります。
そのような面から世間で有名になっているゲームなど改めてを見てみると
現実世界とほとんど同じように作られているので
「すごいなぁ」「どう作っているんだろう?」と思いませんか!?
私は実際に作り始めてそういう所に惹かれて
ゲームを楽しく作れています!!

では、第1弾はこれにておしまいです!
次の第2弾では少し難しくなると思いますが是非がんばりましょう!!
        第2弾もお楽しみに!!