ゲームエフェクトデザイナーのブログ (新)

レポート記事とかUE4のマテリアルとか。C#とかも触ったり。

中学レベルで必要な知識について

私が通った高校は美術科だったため、全授業の半分ほどが美術関連であり、数学は「数I」と+αくらいしかなかったと思います。その上で授業をサボるわ寝るわで全く学習せず、専門学校はデザインの学校で普通学科の授業は全く無かったため、社会人になってから今までの学力は完全に中卒レベルでした。。

そのためネットで出てくる数式を見たときに、使われている記号は全て意味が分からず、数式を見るとアレルギー反応が起こりました。この記事を書く数週間前までは「サイン(sin)」と「コサイン(cos)」が角度なのか長さなのか何を表すのかさえも知らなかったくらいで。

しかしここ数年、UE4でシェーダーに触れるようになり、3Dソフトで少しばかりスクリプトを触るようになり、HoudiniでVOPを触り始め、やがて「行列をちゃんと理解したい」と思い始めました。行列の理解のためには三角関数の理解が必要らしい‥ということで、sinとcosの学習に入っていきました。

いざ学習を始めてみるとこれまでモヤモヤしていたところが晴れていき、また「必要なところだけをピンポイントで学習することも可能だ」と手応えが出てきています。

3DCGで覚えておきたい高校以上の数学


アーティストが3DCGのためにひとまず覚えていく数学としては、以下のあたりなのかなと思っています。高校数学を1から順にやっていく必要はないのかなと。

三角関数(sinとcos) ‥ 結構すぐわかる。大丈夫
ラジアン ‥ 単位としてだけ覚えておけば良い。大丈夫
・座標とベクトル ‥ 思いのほか奥が深い。ここは地道かも‥
内積外積 ‥ できることを知るだけなら簡単だけど‥
・行列 ‥ 中身の意味を理解したいので地道に学習中


ただし「中学校までで習う知識が身についている」という前提条件があるかと思います。習う全ての要素が必要ではないと思うのですが、こちらについては後述します。

この記事を書いている時点ではまだベクトルと行列に入り始めたあたりなので、その後にどんな知識が必要になってくるのかは分かっていませんが。。

さて、学習を始めてすんなりと身に付けていけたら楽でしょうけれども、三角関数や行列について調べていてとにかく感じるのが「ネットの解説はどれもこれも分かりづらい‥!」でした。ブログ記事やYouTubeの動画で大量の解説が見つかりますが、大半の解説はそれまでに授業で習うことを習得済みとした前提で解説しているでしょうから分からないのも当然なことでしょうし、式だけがあり図解が無かったりするとイメージができなかったりします。

そこで、いきなりピンポイントで学習する際にカバーできるような記事を書きたいと思ったのが本シリーズの動機になります。

中学までで必要な数学の要素


三角関数に入る前に「中学の数学すらも怪しい」という方もおられると思います。

私自身そうだったので、今年に入ったあたりで中学数学をざっとですが見直しました。
その時のブログ記事がこちらです。

eboard」ではなくともYouTubeで検索すると大量に数学の解説動画が出てきますが、中学数学全てをちゃんと網羅していることと解説がとても分かりやすいこと、どこまで進めたかもリストから確認しやすいことから「eboard」はおすすめです。

ただ、中学数学の全ての要素が必要かというと何とも答えられないのですが、今のところ「因数分解」は飛ばしていいのかなと思っています。使わないとすぐ忘れますし。。

中学までの数学で押さえておくべきポイントは以下のあたりでしょうか。

・四則演算(足す、引く、掛ける、割る)
 計算の順番とか -( -A )が +A になるとか

・分数の計算
 「通分」と「約分」を知っていればOK
 分数の割り算を掛け算に変換する方法を知っていればOK

・等式の変形
 a = b + c を b = c - a に移項したり、両辺に同じ値を掛けたり割ったり

・式の展開
 3 ( a + b ) を 3a + 3b にしたり
 ( a + b )^2 ※2乗 を a2 + b2 + 2ab にしたり

・ルート(√ / 平方根)
 何かを2乗すると2になるのがルート2ということを知っていればOK
 √40 を 2√10 にしたりも知っておいた方が良いかも

三平方の定理
 ルートの理解が必要になり、三角関数の辺りでも知っていると便利

・パイ(π / 円周率)とは何か
 円周の長さと円の面積を求められることだけ知っていればOK


パイはよく分からないままでも大丈夫かなとは思いますが、後にラジアンで出てくるのでパイという記号の存在と何を求められるのかだけは知っておくと良いかと思います。

それよりも大事だと思うことに「割り算の考え方」とか「割合」があると考えていて、そのあたりを続けて記事にしていきたいと思います。