無限を表現できないコンピューター
今回は物理演算の話
--------------------------
1枚のCGグラフィックスがあります。
これがすべてで、
これが完成形です。
皆さまには
この作品を楽しんで頂きたいと思っています。
これがコンピューターの世界
つまり、
見せている部分、ほしい部分、などは細部までこだわり、
見えていない部分、いらない部分は見せない。
見せない=省略。
コンピューターの世界ではあたりまえ。
まずはこの言葉をしっかりと認識してください。
--------------------------
上記のCGグラフィックスの全体を見せるとこうなる。
いらない部分(使わない部分、あるいは見えない部分)がいかに省略されているかわかる。
--------------------------
コンピューターの世界は省略されるが当然。
なぜなら、無限にやることは不可能だから。
実世界では無限に広がりがあるが、
それをコンピューターで表現することは不可能。
結局、有限であり、架空ってこと。
実世界には勝てないってこと。
--------------------------
なぜ省略するのか
それは、
①人が待てないから。
②メモリー(記憶装置)が有限であるから。
③だいたいでええねん。
(あいまいさも必要な世界、もしくは、バカ正直でなくてもいい世界だから)
--------------------------
①人が待てないから
この理由が一番あるかな
コンピューターは疲れ知らずで24時間365日計算し続けることができます。
しかし、計算結果が出るまでしびれを切らしてしまうのが人間。
または、超高速で計算結果を出さないといけない場合があるから。
レンダリングにかかる時間はいったん無視して話を進めます。
こういうアレだね。
私たちの身近なところで例に挙げるなら、
PS5などの高速で動くゲームモノ。
特にレースゲームのように1/1000秒以下で計算して結果を反映させないといけない。
※実際にどれぐらいの速度で計算して表示させているかなどの詳細はわかりません。
つまり、待てないんだ。
1コマの画像を作るのに、1/100秒も計算にかかっていたらそれはスロー描写になる。
おそらくね。
だから、計算を省略するんだ。
計算を省略する目的は
超高速で計算結果を出して描写に反映させること。
そのための手段として、
①(車ゲーの場合)クラッシュなど、複雑な計算が必要になった場合は計算を簡略。
デメリットは計算を簡略するので物理の法則に従わず不自然さが出る。
②ゲームの特性上計算範囲外(守備範囲外)を設けて、リソースを節約する。
デメリットは守備範囲外に出くわしたときの動きが気持ち悪くなる。バクにも見える。
物理の法則に従わず。
③守備範囲内にあるものに計算リソースをたくさん割り当てて計算精度を出す。物理の法則を細部まで表現する。
デメリットは守備範囲が狭すぎると結果として制作側の意図が伝わりにくくなる。
などがあるかなあ。
特に②の部分は計算速度に大きくかかわるし、なにより(リソース)メモリーは有限だから。
③はクリエーターや設計者のこだわりを見せたい部分。
だからこそ、いわゆるいらない部分をたくさん省略して、③につぎ込みたいんだよ。
③を詰めれば煮詰めるほど、守備範囲外のものが”いい加減”になってくるのはある意味しょうがないんだよ。拾うものあれば捨てるものある。
これがコンピューターの世界。
コンピューターは有限なんだよ。
待てないのは人
計算結果を超高速で出すには省略や簡略があたりまえ
有限である以上、捨てることも必要
諸々の省略がバレないようにゴマカシをする天才でもある
ここらへんに精通して実行できるエンジニアは超優秀だよ。
エンジニアの名誉のために一言
バクじゃないから。
計算のはしょり方が大胆だったかもしれないケド。