ゲーム製作で必要な数学の知識at GAMEDEV
ゲーム製作で必要な数学の知識 - 暇つぶし2ch123:名前は開発中のものです。
16/01/18 19:11:59.58 7anJAmDg.net
三角関数って要するにベクトルだよね?

124:名前は開発中のものです。
16/01/23 20:43:52.74 2t7EOc+2.net
>>119
いいえ。そんなことで3Dゲーム作れるって思わされてるとしたら相当危ないよ
ゲームエンジンステマの情報操作に踊らされてる
自動化ツールを導入しただけで株で500万儲けた、ってのを真に受けるのと同じ

125:名前は開発中のものです。
16/01/23 22:04:08.75 V6WBH/98.net
>>123
作るものによるのでは?
Unityで大作でもないスマホゲーム作るくらいならガチガチに数学の必要もなくね?
もちろん最低限は必要だが

126:名前は開発中のものです。
16/01/23 22:04:32.06 V6WBH/98.net
>>122
ベクトルと関連するけどベクトルそのものではないかと

127:名前は開発中のものです。
16/01/24 19:04:31.72 YuKcV9Os.net
>>124
そんな内容でよければ、ぶっちゃけ逆に3Dゲームである必要性がないんじゃないの

128:名前は開発中のものです。
16/02/14 19:09:33.74 mruxV8Ta.net
数学の知識より物理の知識のほうが大事だと思うが
3Dゲーム作るにしても微積とベクトルと行列ぐらいでしょ
物理はやばい

129:名前は開発中のものです。
16/02/21 02:34:32.06 97sAvS+x.net
ほとんど速度の足し算と三角関数で方が付く。3Dのライブラリリファレンスには必ず原理が書いてあるけど
役に立てられる場面がどれほどあるか

130:名前は開発中のものです。
16/02/21 14:24:50.79 1+kc5ncD.net
ほとんどゲームエンジンを使う側だからそんなもんで大丈夫だよ
作るとなると QP とか統計とか流体とかいろんな数学が必要になってくるけど

131:名前は開発中のものです。
16/02/21 18:35:49.68 GoPdKY9g.net
>>129
ゲームエンジンを自作しているところって大手だけだろうね
最近はカプコンやナムコバンダイでもUE4使っているし、ゲームエンジンの自作も減っていくのかな?

132:名前は開発中のものです。
16/03/03 01:17:42.18 SQktuLO3.net
× 三角関数なんて大人になったら使わない
○ 弾幕シューティングの製作に三角関数は必須

133:名前は開発中のものです。
16/03/12 13:56:24.16 tgbncP0I.net
リーマン幾何学?なんて使わんよね
ユークリッド空間はそもそも仮想の世界で現実にはない

134:名前は開発中のものです。
16/04/20 15:19:28.90 JmmPint/.net
UnityとUEのどちらが主流になるのかな?

135:名前は開発中のものです。
16/04/20 17:25:05.01 D7uN3v5d.net
ゲーム関連のニュースを見るとUEはコンシューマ向けでは結構使われてる印象
Unityもあるにはあるけどどっちかといえばスマホじゃないか?

136:名前は開発中のものです。
16/04/27 11:29:18.27 x5MZbQSs.net
エンジンに頼るから大手でも似たようなゲームばかりになる
描画回りはいいとしても、当たり判定やオブジェクトの挙動まで
ライブラリ依存ってのはどうなんだ
例えば格ゲーでも上級者だとフレーム単位の挙動とか、
内部的にどういう判定をやってるかという話になる
でもエンジン使うとそういう根っこの部分が似たり寄ったりになる
いくら見た目が違っていても実際に遊んでみると
「これアレと同じじゃん」になってしまう

137:名前は開発中のものです。
16/04/27 11:37:33.55 qjzCq6pY.net
>>135
と言っても各社ごとにエンジン作るのも辛くなっている

138:名前は開発中のものです。
16/04/29 01:24:47.23 KY2fNxpS.net
マシンパワーばかり大きくなるもんな

139:名前は開発中のものです。
16/05/12 12:27:45.58 pnODWVPq.net
ふと思ったが渦巻きの動き出すのは難しい

140:名前は開発中のものです。
16/05/12 13:19:47.06 Gvl2XnOA.net
角度を0-360の間でループさせながら半径を減らしていけばおk

141:名前は開発中のものです。
16/05/12 13:39:46.24 Im8voKVD.net



142:渦巻き画像回転させるだけでしょ?



143:名前は開発中のものです。
16/05/13 14:37:34.43 SlO4cbdv.net
>>139
そうだね
半径をじょじょに圧縮で

144:名前は開発中のものです。
16/05/13 20:40:51.82 /zqJepKo.net
ボイラーの方程式

145:名前は開発中のものです。
16/05/14 11:05:23.46 31yJddOo.net
なんでお湯沸かすんだよ

146:名前は開発中のものです。
16/05/14 12:10:19.81 JjLQnHxu.net
オブジェクト座標 Px, Py
移動量 Vx, Vy
とすると、毎フレーム
  Px += Vx
  Py += Vy
その都度(Vx, Vy)に回転行列をかければ
Pの座標は円軌道になる・・・はず
回転行列のθを毎フレーム小さくしていけば
渦の中心座標を持っていなくても外向きの渦巻になる・・・かもしれない
(ただの思いつき)

147:名前は開発中のものです。
16/05/14 14:17:26.81 It6iCRoq.net
canvas要素の基本的な使い方まとめ
URLリンク(www.h2.dion.ne.jp)
このページ内を、「螺旋」で検索してみ。
8・座標軸変換の章に、渦巻きのコーディングが載っている

148:名前は開発中のものです。
16/06/03 12:43:51.66 bXPH0rp/.net
URLリンク(hooktail.sub.jp)

149:名前は開発中のものです。
16/06/03 12:46:48.44 bXPH0rp/.net
URLリンク(members.jcom.home.ne.jp)

150:名前は開発中のものです。
16/06/03 18:13:51.22 8m9EzKy0.net
微積分てマジに超難しいよな(´・ω・`;)
高校の時に一通りは教わったはずなんだが
今改めて勉強してみようと関連書籍を読んだがチンプンカンプンだ
もうゲーム抜きでいいから単純に子どもに微積分を教えるような本て無いか?

151:名前は開発中のものです。
16/06/03 19:48:59.06 4tgecC5z.net
>>148
微積分と言っても幅広いからなあ

152:名前は開発中のものです。
16/06/04 06:02:12.38 AWl/lgbO.net
「マンガでわかる微積分」みたいな本を買った事があるが
絵と関連させて分かり易いのは最初の10ページぐらいなんだよな
そこから急に数式の嵐になり、博士みたいな人のセリフだけがただ延々と続くようになる
全然マンガで無くなってしまうのはこの手の本によくある詐欺だよな

153:名前は開発中のものです。
16/06/04 13:46:27.34 EpsIydlx.net
>>148
やさしく学べる微分積分
石村 園子
固定リンク: URLリンク(www.amazon.co.jp)
自分はこれで勉強したけど、本当にやさしいかどうかは疑問に思っている

154:名前は開発中のものです。
16/06/04 14:44:46.19 el/qyZ9m.net
マセマの「すばらしく実力がつく!」シリーズ、比較的、分かり易くてマジお勧め
常微分方程式までやれば、ばね振り子の単振動モデルもマスターできる

155:名前は開発中のものです。
16/06/09 16:29:18.67 jkF0mgR5.net
y=2*x^2+4x+2
微分すると
y=4x+4とか
こんなことで接線が求まるのか、へーと思ってた
曲線に関わるときに必要なのかな

156:名前は開発中のものです。
16/06/09 20:11:09.36 QreYL2R8.net
>>153
お前が漫画やアニメのキャラなら
そのセリフを一通り表示した後に
周りの仲間たちが半笑いのジト汗になるという定番エピソードなんだがなw

157:名前は開発中のものです。
16/06/10 15:49:12.43 cYF7WDOo.net
つまらん高笑いだな
そんなに微分を深く理解しているなら
もっと気の利いた突っ込みしろよ

158:名前は開発中のものです。
16/06/10 17:46:39.19 4sI2VlEI.net
>>155が何か勘違いしてる件

159:名前は開発中のものです。
16/07/02 19:46:49.05 AOKMK2oi.net
test

160:名前は開発中のものです。
16/08/04 14:12:44.43 0v1+A7mD.net
数学スレ参考になる。ちょっと協力したい。よく使うのはこの3つ。
確率(ドロップアイテム、勝率調整に利用)
三角関数のcos、sin(2Dなら主に三角関数を覚えれば何とでもなる)
行列と数列(配列の演算で利用)

161:名前は開発中のものです。
16/08/04 14:27:35.22 Dm03VsH3.net
三角関数で一番使うのatan2な気がするw

162:名前は開発中のものです。
16/08/04 14:44:20.73 0v1+A7mD.net
atan2ってことは、キャラからマウス、敵からキャラ等の角度を求めるってことだよね。
確かに多い。実際使用している・・・ww

163:名前は開発中のものです。
16/08/17 20:45:01.58 42+zcCOM.net
遅いレスだが、3Dでも三角関数、得にatan2()は不可欠だよ
そして毎回のようにatan2(x,y)としてしまう

164:名前は開発中のものです。
16/08/21 11:52:15.17 ftAje09C.net
あるあるw

165:名前は開発中のものです。
16/08/21 17:03:19.68 RT7yk/5g.net
沢山使う人いるね

166:名前は開発中のものです。
16/08/22 19:31:09.93 ChGR6Syh.net
数学で習ったあの三角関数がゲーム制作に関係するのか?
疎い人間にはそれがどういう形で使われるのか予想すら出来ない
例えば具体的にどんな挙動に関係してくるのか、簡単に教えてもらえないかな?
決して自分も使えるようになりたいとかいう話でなくあくまで単なる興味なので
適当な例え話みたいなものでいいんだが

167:名前は開発中のものです。
16/08/22 23:12:54.08 hvxAPb8L.net
4方向しかできない量産型和製RPGなら別に三角関数知らなくても作れるけど、
FPS、シューティングゲームのように、マウスを使ってその先に銃弾を撃つとなると、
atan2の角度を求めるが必要。そして弾が飛んでいく処理で、XY座標にSINCOSを足す必要になる。
応用すると、人物のモデルから、UIまで使えるようにはなるよ。

168:名前は開発中のものです。
16/08/22 23:24:27.06 hvxAPb8L.net
アクションゲームでいう弓矢の放物線の落下イメージだともっと分かりやすいか
SIN180~360度の移動。あとは高さを決めて、毎フレームに180度からの角度のプラス値を加えて終了。

169:名前は開発中のものです。
16/08/23 06:38:27.75 zr05JX5o.net
なるほど、ちょっとだけ解ったような気がする
発射した弾道とか物体の落下とかそういう当たり前のように思える動きも
デジでは作者が一から全て指定しなければならない‥という辺りに
もしかしたら関係してるのかな?

170:名前は開発中のものです。
16/08/23 06:51:01.62 mbUZYZfS.net
まあ、リアルタイムを求められる近年のゲームでは三角関数は多用されているね。
ただ、学生の頃の数学にくらべて可視化しながらプログラミングできるから
とても難しいという訳ではないよ。プログラミングを求められる量は年々増えてるけど、
それはハードウェアの性能が上がるから仕方ないね。でも、慣れてきたらコピペで済む処理も多いよ。

171:名前は開発中のものです。
16/08/23 19:28:09.83 xkUFY9+c.net
>>166
・放物線はsin必要ない
・毎フレーム同じ角度を足すのは弧の挙動で、どう考えても数学的に放物線とは別物
>>168
・リアルタイムか否かと、三角関数が必要か、は何の関係もない
・リアルタイムゲームは昔からある
・三角関数は別に高速化のための手段ではない

172:名前は開発中のものです。
16/08/23 19:31:11.34 zeJrK8DK.net
「数学なんて分からなくても、コピペすればすぐできるぜ!」
~5分後
「わーん、どれをコピペすればいいか分からないよーう」

173:名前は開発中のものです。
16/08/23 21:08:40.60 mbUZYZfS.net
>>169
普通にSIN使うでしょ
リアルタイムに三角関数は関係あるでしょ
てか、高速化とは言ってないし
ゲーム製作で必要な数学のスレなのに、関係ない数学の話しするのやめてくれる?
数学板いってくれよまじで。

174:名前は開発中のものです。
16/08/23 23:47:29.48 WYJZlNDP.net
>>169のどこに「ゲーム制作と無関係の数学」の話が書いてるんだろう
てか君が書いてるのは、野球の1塁と3塁を間違えるレベルだよ
ゴネてごまかせる話じゃない
いったいなぜそんなウソを突き通す必要があるの?
2ちゃんなんだし、さっさと立ち去れば恥かかなくてすむじゃない

175:名前は開発中のものです。
16/08/24 10:36:19.00 AtHOyUTQ.net
今はそういうの一切合切物理エンジンとかライブラリで賄うからなあ

176:名前は開発中のものです。
16/08/24 13:39:12.34 T3amD7uQ.net
>>173
最初からそれが言いたかったんだろ?
だが>>166,168みたいに基本的な数学知識もないことには
>>170がオチですよ、と

177:名前は開発中のものです。
16/09/02 18:44:55.53 xzTHYG0a.net
正直オレも基本的な数学知識が全然無いな
でも出来ればそれをタダの馬鹿と切り捨てないで
もう少し実りのある"教えのres"が有ってもいいんじゃないか?
せっかく立ったこういうスレなんだから
バカにも解り易く何かを享受してみようという奴が顕れるのに期待する

178:名前は開発中のものです。
16/09/03 01:44:27.65 LICsDyTx.net
ただひたすら知ってることを全部書けというなら、みんなブログに書くと思う
誠実な質問なら答えるよ

179:名前は開発中のものです。
16/09/15 09:02:17.48 dggnGspC.net
>>175
馬鹿にも二種類いてな
他人のせいにする馬鹿と自分のせいにする馬鹿

180:名前は開発中のものです。
16/09/18 02:04:10.56 KnG7Uvmw.net
行列演算とか四元数とかネットに詳しいページがいくらでもあるから
やる気のある人ならそこを読めば分かる、というのはある
別に誰が悪いわけじゃないが、適当な質問がないことには

181:名前は開発中のものです。
17/12/31 20:05:16.01 /rN76OKL.net
簡単にお金が稼げる方法興味ある人だけ見てください。
グーグル検索⇒『来島のモノノリウエ』
LH57R8CT11

182:名前は開発中のものです。
18/12/07 23:00:37.81 90zBjKtu.net
数学技術のすごいゲームって何?

183:名前は開発中のものです。
21/01/22 18:40:04.68 jW6f9XlE.net
弾幕シューティングゲームって、自機と自弾、敵機と敵弾それぞれ全部総当たりで判定するんでしょうか

184:名前は開発中のものです。
21/01/24 12:21:10.56 TyxA9jFm.net
やらないとすり抜けるぞ。
つまり、自機や自弾は敵にぶつかるが、敵弾は敵や自弾にはぶつからない(一般論)。

185:名前は開発中のものです。
21/01/24 15:38:02.35 kHpXqmSi.net
じゃあ計算量は単純に積になるんですね
シューティングゲームがゲームの入門に向くって言われている理由の一端が見えた気がします

186:名前は開発中のものです。
21/02/02 13:09:39.67 /gK/BSRL.net
弾幕シューは自機自弾敵機敵弾それぞれの総当たりなんてやらない
自機から遠い敵弾が当たる事なんてあり得ないし逆もそう
だから四分木ってアルゴリズムを使って衝突が発生し得ない弾を計算から除く
総当たりの計算量をO(k^2)からO(log n)まで減らせる

187:名前は開発中のものです。
21/06/28 16:59:10.98 zyj+fT3L.net
>弾幕シューは自機自弾敵機敵弾それぞれの総当たりなんてやらない
これって本当なの?
敵の弾は自機にしか当たらない、と仮定を置くと、
処理時間は O(n^2)でなくて O(n) だと思うんだけど。
ついでに、もし矩形同士の当たり判定だとすると、当たり判定の負荷自体も大きくないから、
ぶっちゃけ、100x100の総当たりで10,000回の当たり判定をしたって、大した負荷にはならないと思うのだが。

もちろん、「複雑な」当たり判定の場合に、事前に判定回数を減らすことについては異議はない。

188:名前は開発中のものです。
21/06/28 18:31:32.57 hyGKQZEf.net
O(n)をO(log n)にできるなら大きな差になり得るな
枚フレーム10000回と枚フレーム7回は全然違う

189:名前は開発中のものです。
21/06/28 20:52:42.15 zyj+fT3L.net
>O(n)をO(log n)にできるなら大きな差になり得るな
これは認めるが、
>毎フレーム10000回と毎フレーム7回は全然違う
ここは 10,000じゃなくて 100 を入れてくれw

190:名前は開発中のものです。
21/06/28 21:43:31.88 GLNT/xTA.net
100が7でも大きな差に見えるけど

191:名前は開発中のものです。
21/06/29 08:48:54.68 5rduNUaF.net
昨日は、上手く説明が書けなかったので反論しなかったが、整理できたぜ。朝風呂ってすげぇなw
ここで考えないといけないのは、ツリー構築コスト。
N個の物体のツリーを作成するのに必要なコストは、O(N logN)だ。(合ってる?)
N個「同士」の当たり判定をする場合、
  総当たり‥‥ O(N^2)
  ツリー‥‥ツリー構築に O(N logN)、当たり判定で O(N logN)。
     総合で O(N logN)になるので、Nが大きい場合はツリーのほうが圧倒的有利
ここまでは、お互いに、大きな認識相違はないと思う。
一方、N個と自機(1個)の当たり判定の場合は、
  総当たり‥‥ O(N)
  ツリー‥‥ツリー構築に O(N logN)、当たり判定に O(1 * logN)。総合でO(N logN)になるはず。
これが、ツリーなんて作らないで総当たりでいいんじゃね?の根拠だ。
(ツリー構築コストのオーダーが間違ってたらすまん)

192:名前は開発中のものです。
21/06/29 08:51:54.02 5rduNUaF.net
つまり、
>毎フレーム10000回と毎フレーム7回は全然違う
この書き方に倣うなら、
総当たりが毎フレーム100回に対して、ツリーは毎フレーム350回+7回、ってこと

193:名前は開発中のものです。
21/07/27 16:16:55.84 xy40X6uH.net
反論が来ないので、自己反論でもするか。
190は、敵が多数vs自機1機の場合だけど、
自機だって、当たり判定が必要な弾を撃つ。
敵100機と自機+弾2発の場合
  総当たり=100*3=300回、ツリー=350+7*3=371回(総当たり有利)
敵100機と自機+弾3発の場合
  総当たり=100*4=400回、ツリー=350+7*4=378回(ツリー有利)
ツリー構築コスト350ってのはツリーに有利に設定した値だけど、
10発も弾を撃てればツリーのほうが確実に有利になる。
(自弾と敵弾の当たり判定が不要なら、総当たりがもうちょい有利になるけど)
とはいえ、10,000回の当たり判定をやったって 1ms~2ms程度(俺の7年前のLetsNoteで計測)
自機がべらぼうに弾を撃つんじゃなければ、どっちでもいいやw

194:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch