[過去ログ]
3Dゲームの作り方を教えてください (274レス)
3Dゲームの作り方を教えてください http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
1: SSS [] 02/03/02 21:38 ID:L+chEJVO 3Dのゲームを作ってみたいのですがどのようにすればよいか全く分かりません。 そこで皆さんにいろいろと教えてもらいたいのですが、、、、 ツールは一応そろっています。またジャンルは問いません。 さらに参考になるウェブサイト、著作を教えていただければ幸いです。 どうかひとつお願いします。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/1
194: 名前は開発中のものです。 [sage] 2012/10/22(月) 19:40:41.75 ID:eV1WpBwB おわた http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/194
195: 名前は開発中のものです。 [sage] 2013/01/31(木) 22:49:24.38 ID:k0j/GaYd あ http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/195
196: 名前は開発中のものです。 [] 2013/04/14(日) 21:33:44.75 ID:ixjs3x2/ ひでえwww http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/196
197: 名前は開発中のものです。 [sage] 2014/07/22(火) 15:25:50.36 ID:awpbU11o 3Dの起伏のあるポリゴンデータの上を歩かせたいのですが、 キャラの下にあるポリゴンはどうやって特定させるのでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/197
198: 名前は開発中のものです。 [sage] 2014/12/12(金) 18:36:06.03 ID:KBB88Ruk >>197 遅いレスだがぶっちゃけ高校数学のベクトル演算が分かっていることが全て。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/198
199: 名前は開発中のものです。 [sage] 2014/12/15(月) 17:36:08.70 ID:G9FW1L/c >>198 で、具体的にはどうなのでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/199
200: 名前は開発中のものです。 [sage] 2014/12/17(水) 22:36:20.27 ID:ETLrOyMm ……じゃあ教えてあげるよ。 まず地面のポリゴン1つについて考える。3点ABCのうちAを基準にすると、 「ABベクトルに平行で長さが1のベクトルb」 「ACベクトルに平行で長さが1のベクトルc」 「これら2つのどちらとも垂直で長さが1の法線ベクトルn」が導ける。 ただしnの向きは2つ考えられるから、自分が上向きだと思う方にすること。 で、次にキャラのヒット基準になる座標(例えば足元の座標)Pに対して、「APベクトル」が決まる。 ここで「APとbの内積が、0~ABの長
さの範囲」 同様に「APとcの内積が、0~ACの長さの範囲」 なおかつ「APとnの内積が、十分0の近傍にある(これはゲーム内容で調整)」 という条件を満たせば、そのキャラの足元はそのポリゴンの上にあると言える。 ちょっと眠いので細かいところ間違ってたら申し訳ない。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/200
201: 名前は開発中のものです。 [sage] 2014/12/17(水) 22:46:33.28 ID:ETLrOyMm ただね、これくらいの式を立てることが“息をするくらい簡単に”できる人でないと3Dは厳しいと思うよ。 「正解を人に聞いて丸写しすれば問題は解決すると思っている」ウィキペディア脳は、通用しない。 念のため、同人やインディーズでも3Dやってる人なら、四元数とかもっと高度な技術を勉強をしてる。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/201
202: 名前は開発中のものです。 [sage] 2014/12/18(木) 17:09:12.87 ID:BS4A5i3K >>200 その理論も興味深いけど、 オレが知りたいのは、たくさんある地形ポリゴンから、 どうやって、自分の足元付近のポリゴンを割り出すかということ。 まさか全地形データの全ポリゴンを毎回全調査しないよね? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/202
203: 名前は開発中のものです。 [sage] 2014/12/18(木) 21:58:22.54 ID:or1Ep//r 興味深いも何も、上記やその応用以外の判定方法を知ってるなら教えて欲しい (単なる直方体の組み合わせでごまかすとかいうのはなしで)。 たしかに「細かい判定を毎回やったら重いから、大ざっぱな判定で絞っておく」のは 常套手段だけど、自分の足元付近のポリゴンをある程度絞り込めても 最後には正確な判定方法を知ってなきゃどうにもならない。 そのために必須の数式を「興味深い理論」と言っている時点で、未修得だって分かるんよ。 話をはぐらかすよりもまず
高校数学のベクトル演算を学び直す方が先。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/203
204: 名前は開発中のものです。 [] 2014/12/19(金) 02:12:17.20 ID:wfzPpEYF はぐらかすもなにも最初の質問読めないのか http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/204
205: 名前は開発中のものです。 [sage] 2014/12/19(金) 21:23:29.76 ID:DBeCdHTS 質問:漫画の背景の本格的な描き方を教えてください。 回答:透視図法を覚えることが全て。 質問:で? 具体的には? 回答:……しょうがない。消失点を1〜3個決めて〜(以下、詳細な説明)。 質問:興味深い手法だが、自分の求めているものとは違うんだけど。 回答:ってことはこれ知らないんでしょ。知らないと絶対描けないんだけど。 質問:・最初の質問読めないのか。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/205
206: 名前は開発中のものです。 [sage] 2014/12/23(火) 16:19:01.40 ID:o0Pe8QSm 後になって上のやり取りを目にした人のために書き残しておくよ。 3Dゲームのプログラミング=線形代数のプログラミングというのは曲げようのない事実。 どうしても淡白な書き方になるからムッとするのは分かるが こればかりはどうしようもないんだわ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/206
207: 名前は開発中のものです。 [sage] 2014/12/25(木) 12:46:50.17 ID:TKwWH5oK >>202 > まさか全地形データの全ポリゴンを毎回全調査しないよね? そのとおり、無条件ならば全部を調査しますよ ゲームがごまかしの技術ですから、見えない部分は嘘でも良いし、完全にエミュレートする必要が無い。 単純に都合の良いマップを構成する、都合の良いポリゴンを構成する、条件の付け方ですよ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/207
208: 名前は開発中のものです。 [sage] 2014/12/25(木) 13:18:41.61 ID:TKwWH5oK 屋外の地形を作るには、HeightMap を通常は使う。 室内ならば、BSPmapを使う。 HeightMapが碁盤の目のように区切られた平面に高さを加えたもので、 ゴム板のように高さ方向に変形ができると思えばよい。 位置情報は、容易に計算で求められる。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/208
209: 名前は開発中のものです。 [sage] 2014/12/25(木) 15:00:33.15 ID:Nyexk/4i 坂や起伏のある平面は、それこそ1ピクセルごとに高さが変わっていくのに、 そんなのをマップにどうやって写すの? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/209
210: 名前は開発中のものです。 [sage] 2014/12/25(木) 20:43:20.21 ID:qSsfxaQn 質問は「足元のポリゴンの判定法」なのに、足元のポリゴンとは無関係の 高さマップを利用するやり方を答えるのはアリなのか(笑)。 まあゲームとして成立すればいいんだろうけど、あの方法だと2階建て構造とか 球の表面構造には全く対応できないよ。念のため。 >容易に計算で求められる。 この計算を線形代数というわけで。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/210
211: 名前は開発中のものです。 [sage] 2014/12/25(木) 20:44:05.91 ID:qSsfxaQn >>209 高さマップをあらかじめ作成するにも、それを利用してゲーム中に現在の 地形の高さを計算するにも、最低限、線形補間(線形代数の基礎)が必要になるよ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/211
212: 名前は開発中のものです。 [sage] 2014/12/25(木) 21:31:42.56 ID:Nyexk/4i >>210 高さマップなら足元ポリゴン要らないし、代替え案として成り立っているからいいに決まってる。 >>211 なるほど、全部保存しているわけじゃなくて、補間で出すんですね。 ありがとうございます。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/212
213: 名前は開発中のものです。 [sage] 2014/12/25(木) 21:58:50.79 ID:Nyexk/4i と思ったけど、たとえば、らせん階段を登らせるような場合は、 HeighMapじゃ表現できないのでは・・・。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/213
214: 名前は開発中のものです。 [sage] 2014/12/25(木) 22:15:25.99 ID:oCwkEiKl 基本が屋外マップ用だからね。 例えば、橋などの立体交差をさせるには、HeightMapを二つ使う。 扉を通過する時にマップを切り替えるようにする。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/214
215: 名前は開発中のものです。 [] 2014/12/26(金) 06:52:35.57 ID:wf6rfbrV なるほど。Rpg的なマップならこれでほぼカバー出来そうですね。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/215
216: 名前は開発中のものです。 [sage] 2014/12/26(金) 11:38:31.40 ID:wf6rfbrV HeightMapって碁盤の目のようなマップならいいけど、 とがってたり、円形とかだとどうやってマップつくるの? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/216
217: 名前は開発中のものです。 [sage] 2014/12/26(金) 14:31:13.74 ID:11oed3el ポリゴンで良いだろう。 "メタセコイア"で作った、Xファイルで部屋を作る。 "DXライブラリ"で作ればよい。 当たり判定は、モデルと直線の当たり判定を使う。 Xファイルならば、自由形状になる。あとはプログラム次第。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/217
218: あ [sage] 2014/12/26(金) 15:07:14.10 ID:/TLYM1H6 /:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::://ヽ:::::::::::::::| l:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::// ヽ::::::::::::::l l:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::/:::「'ヽ:::::::::::// ヽ:::::::::::| |::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ノl:::ノ l:::::::/ ヽ::::::::|
ノ:::::::::::::::::::::::::::::::::::::::::::::::::::::/ ゙゙ ノ:::/ ,,;;;;;;,, ,,,,ヽ:::::l ):::::::::::::::::::::::::::::::::::::::::::::::/ ノ/ __,'''i: ('''__):::l )::::::::::::::::::::::::::::::::::::::::::::::::::/  ̄ ̄ン:. :「 ̄`ヾ 1:::::::::::::::::::::::「 `┤l:::::::::::::::::l  ̄ , ヽ ̄ l `l:::::::::::::::::::::ヽ :l li:::::::::::::/ ヽ /´ `l | ヽ::::::::::::::::::::
::\_」 lヽ::::/ .l !:-●,__ ノ / ノ:::::::::::::::::::::::::::ノ | l `゙゙ i ,,;;;;;;;;;;;;;;;;;;;;, /ヽ ,/ ヽ::::::::::::::::::::::( l l::::::::.. /.:''/´ ̄_ソ / `ヽ ヽ:::::::::::::::ヽ | l:::::::::::... /::// ̄ ̄_ソ / \ ヴッ!! ヽ:::::::\| l::::::::::::::::... / :::.ゝ` ̄ ̄/ / ヽ ヽ:::l l:::::::::::::::::::..
 ̄ ̄;;'' / ヽ l l;;;;;;:::::::::::::::.....;;;;............;;;;;;''ノ l l l '''''''''''''''''''''''''''''''''''''' ̄l | | http://www.youtube.com/watch?v=z2qK2lhk9O0 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/218
219: 名前は開発中のものです。 [sage] 2014/12/27(土) 14:54:17.11 ID:X3RBRQ+u >ポリゴンでいいだろう とりあえず >>197 からの流れを読んでみてよ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/219
220: 名前は開発中のものです。 [sage] 2014/12/27(土) 15:05:05.54 ID:X3RBRQ+u 高さマップとかの技術って、単に2Dゲームのマス目方式の延長だから、 それをそのまま3Dに応用しても「Z階の左からX、上からY」みたいな地形しか表現出来ない。 それじゃ3Dにする意味ないじゃんって思ってしまう。 それに結局、そのマップ自体を事前に用意するのにどうしてもちゃんとした3Dの知識が必要になる。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/220
221: 名前は開発中のものです。 [sage] 2014/12/27(土) 15:18:05.39 ID:X3RBRQ+u もしかして >>213,216 = >>197 なんだろうか。 >>200 で正攻法を教えたら教えたで悪態をつき、 別の人( >>220 )が「(ごまかしの手段だけど)こういうのがあるよ」と教えたら教えたで それだと「○○が表現できない」と不満を言ってるとしたら、もうどうしようもない。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/221
222: 名前は開発中のものです。 [sage] 2014/12/27(土) 15:26:42.30 ID:v84mLfoU 実際のゲームが中身がそうなっている。 見えるポリゴンが複雑に作ってあるが、 当たり判定用のポリゴンが単純で明快に階層化されている。 それが単純で、平面の部屋に分かれており 、ドアで繋がれていて階層化される。 "Quake BSP map" で検索すれば解説がある。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/222
223: 名前は開発中のものです。 [sage] 2014/12/27(土) 15:46:24.94 ID:zXxrlLXJ 高校数学でベクトルをきちっと学んでいた人はこういう場面でもあまり躓かず、 「ベクトル?そんなの何の役に立つんだよwww」と言ってた人は右往左往するわけだな http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/223
224: 名前は開発中のものです。 [sage] 2014/12/27(土) 18:32:12.44 ID:y4MpRBf9 俺は昔からプログラムを趣味でやってたから「何の役に立つんだよ」なんては思わなかったが 普通に数学で躓いていた。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/224
225: 名前は開発中のものです。 [sage] 2014/12/28(日) 01:36:15.10 ID:6/Gy2xn9 別にゲーム作るだけが人生じゃなし、「面倒だから諦めた」 「やってみたが出来なかった」で構わない。それも経験だと思う。 むしろ「それなりの努力が必要」という事実から目を逸らして いつまでも他人を巻き込む方が問題だし、何の為にもならない。 >>222 ちゃんと話の流れを読めば、「何を勉強すればいいかだけ教えれば あとは自主的に勉強する」かどうか、すぐに分かるでしょ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/225
226: 名前は開発中のものです。 [] 2014/12/28(日) 08:16:59.20 ID:atH7vbr7 >>222 bspが空間の再帰分割アルゴリズムなのはわかったけど、それをどう使ってるのかよくわかりません。 FPSのような室内専用? 当たり判定モデルが別途あるのは知ってるけど。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/226
227: 名前は開発中のものです。 [] 2014/12/28(日) 10:18:16.66 ID:31x1GkHd >>226 http://www.yaldex.com/game-programming/0131020099_ch13lev1sec3.html Algorithms in Game Programming http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/227
228: 名前は開発中のものです。 [sage] 2014/12/28(日) 11:38:11.93 ID:31x1GkHd まぁね、答えがひとつでなくて、色々な方法がある。 初心者ならば、単純な方法で行えばよい。 Xファイルか高さマップになるだろう、 そして、DXライブラリを使えば良い。 初心者 : C言語、DXライブラリ、Xファイル。 書籍も出てるし http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/228
229: 名前は開発中のものです。 [sage] 2014/12/28(日) 18:11:27.51 ID:8FdYADaT >>227 結局、こうやってツリーにしておけば、キャラの位置のポリゴンが早く探せるってこと? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/229
230: 名前は開発中のものです。 [sage] 2014/12/28(日) 18:30:55.48 ID:tvPRjwol BSPが、見えるものと、当たり判定の両方を省略して少なくする。 数百の多くの部屋があり、ドアで繋いでいて、 当たり判定は、自分のいる部屋だけを処理すればよい。 見えるものは、自分の部屋からドアを通して見える部屋だけを描画すればよい。 全部の部屋を処理しなくて良いから、処理量が格段に少ない。 BSPが複雑ではあるが、効率よく働く。 現代のCPUやメモリがあれば、BSPを使わなくても実現可能です、昔よりもPCの性能が向上したから。 http://mevius.5ch
.net/test/read.cgi/gamedev/1015072738/230
231: 名前は開発中のものです。 [sage] 2014/12/28(日) 19:44:28.81 ID:8FdYADaT >>230 見えるものってのがよくわからないけど、 見える見えないはカメラからのベクトルで決めるのでは? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/231
232: 名前は開発中のものです。 [sage] 2014/12/28(日) 19:57:46.59 ID:tvPRjwol あなたが部屋にいて、ドアがある。 ドアの向こう側の隣の部屋は見える。 部屋に壁がある、壁の向こう側の部屋は見えない。 この情報は、事前に知ることが出来る、 今あなたがいる部屋から見える部屋は決まっている。 だから、あなたの部屋に見える部屋番号のリストを記録しておく。 それで、PCが描画するのは、 あなたの部屋とドアで隣接する見える部屋番号リストの部屋だけを描画する。 - 別のカメラ最適化の方法として、 カメラ視野角の外側は、見えないから描画し
ない。 見える物体の裏側は、陰になり見えないから描画しない。 - 全部を描画するのでは無く、最適化された必要最低限の描画を行う。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/232
233: 名前は開発中のものです。 [sage] 2014/12/28(日) 20:04:25.73 ID:8FdYADaT >>232 ああ、部屋情報は別途ファイル参照ですか。 BSPツリーで、ドアから見える向こうの部分もわかっちゃうのかと勘違いしまして。 まあでも、結局BSPで空間を分割していくアルゴリズムがなんともまだよくわかりませんがw こんないかにもややこしいことも理解できないとダメなんですね・・・。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/233
234: 名前は開発中のものです。 [sage] 2014/12/28(日) 20:19:06.62 ID:tvPRjwol 部屋の形状が単純な立方体ならば、その場で計算も出来る。 部屋番号をツリー状に組織することで、検索などのデータ処理を速く行える。 これが、巨大な大きいマップになれば有効なだけで、 小さくひとつの部屋だけなら有用性が少ない。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/234
235: 名前は開発中のものです。 [] 2014/12/29(月) 08:35:16.60 ID:h4rdpxTJ ああ、部屋がたくさんあるマップの表示部屋の管理をBSPツリーでやってるってことですか。納得しました! http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/235
236: 名前は開発中のものです。 [sage] 2014/12/30(火) 03:26:05.42 ID:NdLAMzIP 君は、2分木を知ってる? 千個のデータ中から、あるデータを探すのに、 線形探索なら最悪千回かかる 2分木なら、2^10=1,024 だから、10回で探せる なぜなら1回の探索で、半分のデータを切れるから 今、1〜1,000中から、300を探したい場合、 最初に500と比べて、300は500未満だから、 500以上を一気に切れる 次は、250と比べて、300は250以上だから、 250未満を一気に切れる http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/236
237: 名前は開発中のものです。 [] 2014/12/31(水) 15:36:06.93 ID:0ZF0cVIR BSP木は均等な2分木じゃない http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/237
238: 名前は開発中のものです。 [sage] 2015/01/02(金) 21:20:43.44 ID:HcM8qbnJ そもそも3Dでのヒットの取り方が分からない相手に 応用技術を解説しても仕方ないんじゃないのかな。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/238
239: 名前は開発中のものです。 [sage] 2015/01/07(水) 15:51:30.56 ID:VCwCwPth BSPって、空間を再帰的に分割したデータを用意して、 ゲーム上でも自分がどの空間にいるか再帰的に検索するってことでしょ。 つまるところは「ある平面のどちら側にいるかをどうやって判定するの?」って質問に なってしまうわな。やっぱりベクトル代数分かってないと先に進まないんだけど。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/239
240: 名前は開発中のものです。 [] 2015/01/07(水) 21:54:57.87 ID:lEBpx2ib BPS http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/240
241: 名前は開発中のものです。 [sage] 2015/01/08(木) 18:17:22.77 ID:3JV63qZl https://books.google.co.jp/books?id=V6qRPtsiZNoC&pg=PA3&dq=DirectX+%E9%80%86%E5%BC%95%E3%81%8D&hl=ja&sa=X&ei=nTuuVP6mJYuW8QXKpoGoAw&ved=0CBwQ6AEwAA#v=onepage&q=DirectX%20%E9%80%86%E5%BC%95%E3%81%8D&f=false DirectX逆引き大全500の極意: Visual C++2002/2003/2005対応 著者: 鎌田茂雄 434ページからの レイによる衝突判定からを読んで、 ポリゴンモデルの上の歩き方について書いてある。 DirectX9必携 鎌田 茂雄 (
著) : 同じ物です。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/241
242: 名前は開発中のものです。 [sage] 2015/01/09(金) 11:48:22.37 ID:qmU+glKK 衝突判定自体はわかってる 問題は、地面の多数のポリゴンからどうやって足元周辺ポリゴンを割り出すのか 総当たりは遅くなる http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/242
243: 名前は開発中のものです。 [sage] 2015/01/09(金) 12:36:19.08 ID:cpDVhBN/ 通常は、総当りで出来る。 当たり判定に使う、必要最低限のポリゴンなら少ない。 処理が重いのならば、それはポリゴンが多すぎる。 シームレスの巨大マップにしたければ、 部屋に分けてポリゴンをグループ分けする。 自分の所属する部屋の中だけのポリゴングループに対して処理する。 色々な最適化がある、方法はマップの条件によって異なる。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/243
244: 名前は開発中のものです。 [sage] 2015/01/10(土) 07:38:44.87 ID:nNPbjeZG データ構造が判らないとなんとも言えない むしろ判定に都合の良いデータ構造にする。 MAPを格子状に区切ってその格子の順番にポリゴンを格納する。 ?ポリゴンの範囲はは格子よりも小さくしておく(最大のポリゴンを元に格子のサイズを決め手も良い) ?ポリゴン座標の最小値で格納する格子を決定する。例えば(Ax,Ay)、(Bx,By)、(Cx,Cy)なら(Ax,Cy)になりうる。 ?格子ごとに連続してポリゴンを格納してき、インデックスを保存しておく これで判定対象のいる格子と、-x側
の格子、-y側の格子、-x-y側の格子の4つを範囲にあるポリゴンを インデックスを元に参照する。検証は任せたw 自分が実際にやったのは基本1km単位で 各頂点のxy値は1kmの範囲内でランダムになっているメッシュ上の地形データで、 隣接する格子を含めた9つの格子の計18ポリゴンでチェック。 そしてHITした頻度の高いポリゴンから判定するようにインデックスを入れ替える。 建物は各所にグリッド状に配置するので、その全体を判定してHITすれば判定すべき建物と判定。 って感じだったかな。うろ覚えだけどw http://mevius.5ch.net/test/read.cgi/ga
medev/1015072738/244
245: 名前は開発中のものです。 [sage] 2015/01/10(土) 08:31:26.61 ID:Ryzdgy9l >>244 ポリゴンを格子で区切るということは、格子と格子の接合面にあたるポリゴンは 格子の枠に沿った形状でつなげてあるということ? でかい3Dマップも、格子状に分割できるようにポリゴンをつないでいるということ? 格子をまたぐポリゴンはないということ? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/245
246: 名前は開発中のものです。 [sage] 2015/01/11(日) 06:37:53.00 ID:SeJYfhrW 「ポリゴンを格子で区切る」なんて書いたっけ? > 格子と格子の接合面にあたるポリゴンは > 格子の枠に沿った形状でつなげてあるということ? 格子の頂点とポリゴンの頂点が一致するデータ構造でいいなら、そうするのが良いと思う。 > でかい3Dマップも、格子状に分割できるようにポリゴンをつないでいるということ? いくつもの格子を跨ぐポリゴンがあると、 ある格子に掛かるポリゴンがどれだけあるか判定が大変になる。 > 格子をまたぐポリゴンは
ないということ? 跨ぐ前提で話をしている。 ポリゴンは最大で格子と同じサイズまでにすれば 1つのポリゴンは1つの格子と隣接するプラス側の格子に掛かる可能性がある。 これを逆に考えると 1つの格子にはその格子と隣接するマイナス側の格子に登録されたポリゴンが掛かる可能性がある。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/246
247: 名前は開発中のものです。 [] 2015/01/12(月) 01:18:11.06 ID:HlhvcqEy >>244 インデックスを格納した格子の構造体がたくさん? その地形をロードするたびインデックスの並べかえはリセット? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/247
248: 名前は開発中のものです。 [sage] 2015/01/12(月) 15:47:53.77 ID:aAhaXk+Z >>242 >衝突判定自体はわかってる 一応聞くけど、兄さん >>197 や >>202 と同一人物じゃないのかね。 親切に回答している方も、そろそろ「?」ばっかり連発してる質問者が あなたに“全部答えさせようとしている”と気が付いた方がいいんじゃないかな。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/248
249: 名前は開発中のものです。 [sage] 2015/01/15(木) 21:42:30.77 ID:XCAGVc2R それどころかどうせ3Dゲームが完成しない事も想定済み。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/249
250: 名前は開発中のものです。 [sage] 2015/01/16(金) 03:24:54.08 ID:QCVnSEdw ピンポイントで質問が浮かぶような人→たいてい自分で解決出来る。 初心者→何から手を付けていいか分からないから漠然とした質問しか出来ない。 答える方も基礎を学べとしか言いようがない。 気位だけ高い→基礎を学べと言われて逆切れする。 サイコパス→全部答えさせようとする。 …うまく噛み合わないね。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/250
251: 名前は開発中のものです。 [] 2015/01/16(金) 14:55:25.37 ID:1Snv1/Ug 簡単な3Dのゲームを作るなら、DarkBasicが良いと思う。 3Dライブラリを使って、簡単に3Dを扱えるようになっている。 初心者向けで、入門として良い。 サンプルコード( .dbaがソースコードになる。テキストファイル。) http://www1.axfc.net/uploader/so/3393214 ある程度の雰囲気や概要がわかってきたなら、 高度な3D数学や物理を学ぶのが良い。 いきなり、難しい事から始めると、確実に挫折する。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/251
252: 名前は開発中のものです。 [sage] 2015/01/16(金) 22:30:09.87 ID:BdLRVVjH そして、オリジナル3Dライブラリ自作している自分に気がつく。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/252
253: 名前は開発中のものです。 [sage] 2015/01/16(金) 23:13:16.38 ID:603gq/0h モデラーとかアニメーションも http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/253
254: 名前は開発中のものです。 [sage] 2015/01/18(日) 01:31:18.84 ID:OEVWJWuh いきなり難しいことから始めたら挫折するというけど、 難しいことを後回しにしたら挫折も後回しになるだけ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/254
255: 名前は開発中のものです。 [sage] 2015/01/18(日) 02:06:54.61 ID:3/9SdjT+ 例えば、小学校1年生から6年生へいきなり飛び越えても無理、 算数のたし算を知らなくて掛け算や連立方程式を計算できるわけが無い。 3Dの場合は かなりね、専門用語の壁が厚いのです。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/255
256: 名前は開発中のものです。 [sage] 2015/01/18(日) 04:52:53.86 ID:LhlxXUHN 行列やらベクトルの演算やら数学嫌いには拷問だよな http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/256
257: 名前は開発中のものです。 [sage] 2015/01/18(日) 06:00:56.92 ID:Q3Wdh6kS 代数幾何の教科書読み直して理解できるくらいじゃないなら、 3D処理は出来合いのものを使ったほうが良い。つか必ず使わなきゃダメ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/257
258: 名前は開発中のものです。 [sage] 2015/01/18(日) 06:42:47.62 ID:n+Z+LZlo 教科書はよく選んだ方がいいよね。プログラミングのための線形代数、お勧め。 巻頭のグラフ見るだけでも大分イイ! http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/258
259: 名前は開発中のものです。 [sage] 2015/01/19(月) 00:28:48.30 ID:h8qE+fk3 昔のアニメ専門学校の広告でよくあったなあ。 「一から教えるからあなたにも大丈夫!」みたいなノリ。 高い入学費払って半分は中途退学。たまに成功する人もいるんだけど、 じつはそういうのは最初から才能を持ってる。 小1から中3まで算数や数学を順を追ってきちんと学んでも、高校数学で行き詰る人間が約半分。 順を追って学べば全て分かるなら、全ての人間がフェルマーの大定理が解けなきゃおかしい。 本当に勉強したければ、自分が行き詰ったところ、もしくは学
ぶ機会のなかったところからやればいい。 それこそ小1の足し算からやって「俺にもできるかも!?」なんて気分だけ味わうのは時間と金のムダ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/259
260: 名前は開発中のものです。 [sage] 2015/01/19(月) 00:33:40.10 ID:h8qE+fk3 よく「足し算だけ、掛け算だけを解かせるとちゃんとできるのに、 足し算の応用問題を掛け算して解こうとする子供がいる」って話を聞くだろ。 人に勉強を教えると分かるけど、行列やベクトルの演算が分からない人、 まして数学が拷問に思えたり、教科書読んで分からなかったりする人は、 「計算が出来ない」んじゃなくて、「数式の意味や使い方が分からない」んだ。 意味や使い方そのものが分からないのに、ライブラリで何をどうごまかせるんだ。 http://mevius.5ch.
net/test/read.cgi/gamedev/1015072738/260
261: 名前は開発中のものです。 [sage] 2015/01/19(月) 00:43:52.49 ID:rXZoEcs9 3Dモデルを回転させるのに、回転行列を使う。 それを、ライブラリならば、「回転しなさい」というコマンドを使う。 これだけのこと。 四則演算で出来る。 あまり難しく考えてはいけない。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/261
262: 名前は開発中のものです。 [sage] 2015/01/19(月) 04:07:34.69 ID:S9THw46U 数学が判っていれば、本来なら行列を使うところを 一部の計算だけで同じ結果になるケースを見極めて 計算コストを省けるんだけどな。 でもそんな工夫している間にCPUが早くなっているw http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/262
263: 名前は開発中のものです。 [sage] 2015/01/19(月) 15:20:56.05 ID:ZvVYE33q >これだけのこと。 四則演算で出来る。 あまり難しく考えてはいけない。 株に手を出せない人に投資信託を勧めるのと同じ。 本当は複雑で難しいことを、素人でも分かる程度に簡略化して、分かった気にさせる。 「分かった気にさせて、手を出させる」のが狙い。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/263
264: 名前は開発中のものです。 [sage] 2015/01/19(月) 15:36:39.73 ID:ZvVYE33q もう一度言うけど、3Dプログラミングは高卒かそれ以上の線形代数そのもの。 もちろん、昔それに挫折した人や機会がなかった人でも、やる気さえあれば腰を据えてやればいい。 それでできなくても得るものはあるだろう。 でもそこで腰が引けて迂回しようとしても他に道はない。他に道がありますよと言うのは甘言。 同じところをぐるぐる回らされていたと思い知らされるだけ。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/264
265: 名前は開発中のものです。 [sage] 2015/01/20(火) 22:41:28.21 ID:XwYpBp6C GPUって3Dに特化しすぎじゃね? vector3 とか matrix4 とか何で決め打ちなん! もっと任意長のベクトルを流し込んで並列処理するような 汎用性のある枠組みにしたほうが分かりやすいのに。 それで3D特化はシェーダプログラムのほうでやればいい。 そうすればこまごました仕様が一掃されてシェーダが書きやすくなるのに。 シェーダでいろいろなアルゴリズムを試そうと思ったけど ハードウェアの区別と制限がごちゃごちゃに思えて手を出せぬ http://mevius.5ch.ne
t/test/read.cgi/gamedev/1015072738/265
266: 名前は開発中のものです。 [sage] 2015/01/20(火) 22:56:20.52 ID:XwYpBp6C 2008年の時点でこの記事があるな http://www.atmarkit.co.jp/news/200803/06/cuda.html 現在ではどうなってるんだろう? GPUで ray tracing の画像をリアルタイムで描けたりするんだろうか? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/266
267: 名前は開発中のものです。 [sage] 2015/01/20(火) 23:13:07.51 ID:XwYpBp6C DirectX11 にコンピュートシェーダーというのがあるのか! これで汎用アルゴリズムが直に書けるのかな?! テンション上がるわー Unity3D でも使えるんね でも DirectCompute はまだシェーダ言語の一部という感じだが C++ AMP というのを使うと C 言語っぽく汎用的に組めるのかな? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/267
268: 名前は開発中のものです。 [sage] 2015/01/21(水) 02:16:00.24 ID:oMkFY+XG Unity3D でも使えるんね http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/268
269: 名前は開発中のものです。 [sage] 2015/01/21(水) 02:16:36.14 ID:oMkFY+XG ↑ 何なんだよ、その不自然な改行。 おまえらステマ業者って根本的に相手をバカにしてるだろ? http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/269
270: 267 [sage] 2015/01/21(水) 10:22:34.70 ID:yekSsXFj ごめん。普段から言動が不自然と言われるけど うにちのステマ業者じゃないよ ちなみに C++ AMP は unity じゃ使えないのでは? C++ だし。 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/270
271: 名前は開発中のものです。 [age] 2016/03/23(水) 00:01:43.29 ID:SpSehPDt 教えてあげないよん http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/271
272: 名前は開発中のものです。 [] 2017/02/03(金) 02:22:20.30 ID:1Nz75uXE age http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/272
273: 名前は開発中のものです。 [] 2017/02/13(月) 04:25:06.90 ID:KNIkvquG けちんぼしないで http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/273
274: 名前は開発中のものです。 [] 2017/12/31(日) 22:10:44.11 ID:/rN76OKL 簡単にお金が稼げる方法興味ある人だけ見てください。 グーグル検索⇒『来島のモノノリウエ』 JBWBKFVSM6 http://mevius.5ch.net/test/read.cgi/gamedev/1015072738/274
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.019s