- 1 名前:名前は開発中のものです。 mailto:sage [2014/01/16(木) 00:00:31.27 ID:w6WW3hAo.net]
- ゲーム製作におけるC/C++全般に関するスレです。
元スレ DXライブラリ 総合スレッド その17 toro.2ch.net/test/read.cgi/gamedev/1383795645/ 前スレ C/C++ゲーム製作総合スレッド Part1 toro.2ch.net/test/read.cgi/gamedev/1337516528/ C/C++ゲーム製作総合スレッド Part2 toro.2ch.net/test/read.cgi/gamedev/1351015269/ C/C++ゲーム製作総合スレッド Part3 toro.2ch.net/test/read.cgi/gamedev/1357899040/ C/C++ゲーム製作総合スレッド Part4 toro.2ch.net/test/read.cgi/gamedev/1376262450/
- 308 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 00:21:58.27 ID:C0+dE/Sc.net]
- レス番号と根拠を述べない限り、お前は意味不明なことをいってる糖質にしか見えないが?
追い詰められて苦し紛れに「バーカ」とか「アーホ」と一行レスで煽ってるだけじゃんw
- 309 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 00:24:33.75 ID:GqQre2H1.net]
- つ鏡
- 310 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 00:28:32.27 ID:C0+dE/Sc.net]
- ほら、何も反論できないだろ?突然「単発で自作自演をして、うんぬん」と人を批判するが
「どのレスがそうなんですか?」と聞き返されて「お前馬鹿だろw」「つ鏡」などと 意味不明な返答を繰り返す。 わかったら、敗者は立ち去られよ
- 311 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 00:31:28.03 ID:X9SC3wUQ.net]
- 皆何と戦っているのん・・・
- 312 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 01:44:30.85 ID:Vx2VozQo.net]
- ……単発で自演って日付またいだからID変わっただけだろうに……。
- 313 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 08:06:01.61 ID:PSYFRGtR.net]
- 結局275はどういうことなの
- 314 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 09:53:27.60 ID:tPkg4yd1.net]
- ★フレームレート(fps)の方法には幾つか種類がある
@固定fpsで、リミッターにより fpsの上限で固定してしまうもの。 AV-SYNCによって固定する、ゲーム機などであり確実に固定する。 B可変fpsにし、fps値が変化しても同じ速度で挙動するもの。 ゲームエンジンが 一般的にゲームループを形成しており、 ループの回転数(fps)を計測する。 PCの処理速度が不安定であり、状況により常に変動している。 ゲーム内では処理の負荷変動に関係なく処理速度を一定にしたい。 @固定fps方法、設定のfpsを越えないように上限値を決める方法、 単純な解決方法です。設定fpsを下回る場合は処理落ちになる。 AV-SYNC方法、これはリミッターと同じですが、 画面の同期にハード的に合わせてリミッター処理します、 ですから、設定fpsが常に安定している。しかし、 画面同期が変更されると困る。ゲーム機などに多い。 B可変fps方法、これはゲームループの回転速度に反比例して ゲーム内の速度を制御します。よって、fpsが変化しても ゲームの速度に影響がありません。こうすると 非力PCでもささやかに動き、高級PCでも豪華に動く。 また、以上の組合せの方法もあり、条件によって選択が違ってくる。
- 315 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 09:55:48.75 ID:xv4QLBh4.net]
- ティアリングと絡めて
- 316 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 15:47:21.74 ID:C0+dE/Sc.net]
- ガッシ、ボッカ、マルチスレッド・ボーイは逃走した(スイーツ)
- 317 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 16:31:15.28 ID:cTFUFLMT.net]
- >>307
「ゲームプログラマーになる前に覚えておきたい技術」のページ127から140を読んでもらいたい 図書館にあると思う
- 318 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 19:20:22.65 ID:vzxofO6Y.net]
- >275は、>279から推測すると
おそらく画面描画の単位としてのフレームと、処理の単位としてのフレームを混同してる
- 319 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 20:06:53.16 ID:C0+dE/Sc.net]
- フハハハハハハハハ
- 320 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 20:50:35.38 ID:YGGwUpNn.net]
- >>309
死ね
- 321 名前:名前は開発中のものです。 mailto:sage [2014/03/08(土) 23:21:33.13 ID:Sq36ONOT.net]
- 格闘ゲームは60fpsじゃないと古参のファンに叩かれるそうな
- 322 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 00:09:52.59 ID:IyeEnt/7.net]
- このスレは熱いな
- 323 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 00:18:56.78 ID:zp5zMRCB.net]
- ゲ製にしては良い流れだ
- 324 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 00:35:14.60 ID:UV7RBW8A.net]
- なんにせよゲーム内時間の指標となる数値は必要だよね?描画は別としてね
昔に作ったやつは特に深く考えることなく60FPS基準にしてて、 「このエフェクトは1秒間かけたいから設定値は60(フレーム)にしよう」 とかやってたけど、ゲーム内の時間と描画を切り離して考えてなかったから 倍速にしたいときにFPS120にして1フレごとフレームスキップするとか トンチンカンなことやってたんだよね (FPS設定値が描画回数と一緒にゲーム内の速度に影響してしまってた) 設定値は素直に、ゲーム時間としては「再生速度 * 秒数(ミリ)」で設定して 描画としてFPS(描画/秒)を使うべきだねぇ
- 325 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 10:22:07.75 ID:zp5zMRCB.net]
- それ、具体的には、デルタタイム(前回更新からの時間差分)を使うのが
一般的だと思うぞ。 もっと原始的にやるなら、画面が50FPSだとキリがよくて、ロジック側もループ回数で 単純計算しやすいかなとは思うんだけど、その延長線上の考え方として マルチスレッドで秒間100回更新するというのは止めたほうがよいね。
- 326 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 12:52:15.87 ID:n5K2fLn8.net]
- 普通のHDMIとかパネルの駆動が60Hz辺りなんだから
EU圏のゲーム機でもなきゃわざわざ50を選ぶ理由ないけど ロジックを高速にするならゲームパッドのサンプリング周期も考慮した方がいいかもね マウスも非常に速いのあるけど画面とは綺麗な整数倍にならないし
- 327 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 13:48:11.02 ID:hgm9uEQE.net]
- シングルスレッドのかずき君は去ったようだ
- 328 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 15:16:30.96 ID:a5thyH8B.net]
- います!
- 329 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 15:55:13.60 ID:UV7RBW8A.net]
- >>317
ネトゲとかアクションじゃない限り、ゲーム内時間は現実のデルタタイムに 影響されないようにした方が混乱しないんじゃね? Unityのチュートリアルなんかだと、「移動距離 = Δ * speed」みたいなやり方を見るんだが、 俺達みたいに自分でゲームループを制御する場合は、ゲーム内時間とリアル時間を結びつけるために ループ内でSleep入れて、ゲーム内の「最小単位時間」は常に同一になるように調整した方がわかりやすいと思う
- 330 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 16:30:12.84 ID:zp5zMRCB.net]
- ではその場合、画面が60FPSで更新されるとして、
常に17msの倍数でウェイトやアニメーションを行うことになるな。 別にそれはそれで単純でよいが、海外のゲームエンジンとかライブラリだと デルタタイムでタイムライン処理するのがデファクトな印象ではある。
- 331 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 17:36:09.54 ID:UDo1KJJD.net]
- ここ日本
- 332 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 18:05:51.13 ID:zp5zMRCB.net]
- UnityとかFlashもタイムラインだし、デファクトに則るのが良いと思うが、
フレームワーク・ライブラリ整備されている前提でないと むしろ手間かかるというのはあるな SDLやDXライブラリでそのままでゴリゴリ書いちゃってるような状況なら 原始的な手法がいんじゃまいか
- 333 名前:名前は開発中のものです。 [2014/03/09(日) 22:16:48.95 ID:ai4yRe81.net]
- 時間固定で動くゲームって今ほとんどないんじゃない?
3Dのゲームは大概処理落ちするとコマ送りになる気がするけど
- 334 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 22:24:11.30 ID:7BkgnOpl.net]
- 通信対戦なら時間基準しかない
- 335 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 22:29:21.55 ID:YCVyyaL7.net]
- 同人ならまだまだ普通にー、って感じじゃない?
- 336 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 22:49:06.01 ID:LHzx02pP.net]
- 自称プロの方ですか。
プロのくせに2chってキモイんで巣にお帰りください
- 337 名前:名前は開発中のものです。 mailto:sage [2014/03/09(日) 23:27:17.89 ID:YCVyyaL7.net]
- >>328
どこにプロ要素があったのか
- 338 名前:名前は開発中のものです。 mailto:sage [2014/03/10(月) 01:04:03.22 ID:eMnEQH7w.net]
- コミュ障の有段者かな?
- 339 名前:名前は開発中のものです。 mailto:sage [2014/03/10(月) 18:57:16.49 ID:u260dUyO.net]
- 円や矩形の当たり判定を使わずに3Dのメッシュとメッシュの当たり判定をする方法ってある?
- 340 名前:名前は開発中のものです。 mailto:sage [2014/03/10(月) 19:30:37.53 ID:a4AxYrFN.net]
- >>331
もう少しくわしく なぜその方法ではダメなの? どのような目的の為にその他の方法が必要なの?
- 341 名前:名前は開発中のものです。 mailto:sage [2014/03/10(月) 21:01:01.03 ID:Y7tUpY4E.net]
- 着地判定じゃね
- 342 名前:名前は開発中のものです。 mailto:sage [2014/03/10(月) 21:12:38.72 ID:gaJAPo5e.net]
- あるも何も三角形を総当たりで判定するだけでしょ。
いったい何が聞きたいのかさっぱり分からない。
- 343 名前:名前は開発中のものです。 mailto:sage [2014/03/10(月) 23:29:14.20 ID:Y7tUpY4E.net]
- 単に効率的な手法が聞きたいんでしょ
何が聞きたいのかわからないってアスペかよ
- 344 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 03:02:43.10 ID:IY9eaK2H.net]
- 効率的な手法=点・円・矩形の当たり判定じゃまいか
バーカバーカ
- 345 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 03:58:39.95 ID:UoOeSCjv.net]
- >>336
いや、色んな当たり判定の取り方有るよ。 それに円、球、円柱などの単純図形による近似判定って処理が軽いだけで、 厳密な当たり判定を取りたい時の手法としては効率的ではないし。 凸包を使う方法とか、xyzそれぞれのベクトルの射影を取る方法とか、調べてみると面白い。
- 346 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 12:42:21.97 ID:IY9eaK2H.net]
- 効率的な手法=処理が軽い
精度の高い手法=厳密な当たり判定
- 347 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 15:13:17.06 ID:7WRcbbN4.net]
- 効率的な手法で精度の高い手法 = 俺らの目標
- 348 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 15:17:28.37 ID:0J+S+2q7.net]
- 妄想の間違いでは
- 349 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 15:18:30.63 ID:1Bb7Oz5Q.net]
- では、球と球の当たり判定の計算式を述べよ
- 350 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 15:37:28.53 ID:7aEkrhcX.net]
- b1{x, y, z, r}
b2{x, y, z, r} diff.x = abs( b1.x - b2.x ) diff.y = abs( b1.y - b2.y ) diff.z = abs( b1.z - b2.z ) distance = sqrt( sqrt( diff.x^2 + diff.y^2 ) + diff.z^2 ) distance > b1.r + b2.r → no collision distance = b1.r + b2.r → contact distance < b1.r + b2.r → collision
- 351 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 15:55:58.02 ID:AQe4Fl77.net]
- 数学的に >>324 が正解です、
しかしながら、プログラミングとしての最適化されていない。 最適化された解を述べよ、 ( 処理速度向上させよ )
- 352 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 15:59:16.47 ID:AQe4Fl77.net]
- 訂正、 >>324 じゃなくて、>>342 です
- 353 名前:名前は開発中のものです。 [2014/03/11(火) 17:31:22.65 ID:7aEkrhcX.net]
- あー、どうせ2乗するなら abs() が不要か
平方根の最適化はコンパイラに任せるとして、 distance = sqrt( sqrt( diff.x * diff.x + diff.y * diff.y ) + diff.z * diff.z ) とかじゃダメ?
- 354 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 18:11:28.23 ID:vsKfw8ZM.net]
- わからんけど、俺ならとりあえず diff.x > b1.r + b2.r の時点で弾くかな。
diff.y と diff.z も同様。
- 355 名前:名前は開発中のものです。 [2014/03/11(火) 21:03:50.46 ID:Xqo2QxT0.net]
- distanceはsqrt(diff.x^2+diff.y^2+diff.z^2)
sqrtは重いからsqrt使わずにdistance^2と(b1.r+b2.r )^2を比較する
- 356 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 21:15:28.25 ID:OqfIz8Zt.net]
- 標準Cライブラリのmath.hってそんな重いの?
平方根くらいええやん
- 357 名前:名前は開発中のものです。 [2014/03/11(火) 21:49:57.82 ID:Xqo2QxT0.net]
- 今はcpuに命令あるはずだからそれなりに高速だとは思うけど、四則演算と比べれば当然遅い
ちなみ平方根の計算自体は近似値求める計算だから結構でかいよ
- 358 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 22:49:56.48 ID:Fzxm+mum.net]
- どの道その距離は後で衝突箇所(衝突時間)を求める時に必要になるから
計算して返すようにしておいた方がいいよ
- 359 名前:名前は開発中のものです。 mailto:sage [2014/03/11(火) 23:13:25.82 ID:P/1Z0pOf.net]
- 平方根なんてほんとにCPU命令にあるのかと思って調べたら本当にあるんだな
www.intel.com/content/dam/doc/manual/64-ia-32-architectures-optimization-manual.pdf topsecret.hpc.co
- 360 名前:.jp/wiki/index.php/%E5%89%B2%E3%82%8A%E7%AE%97%E3%81%AF%E9%81%85%E3%81%84
しかも割り算一回分レベルの速さ 割り算も遅いので遅いと言えば遅いんだろうけど、これならそれほど頑張って避けなくてもいい気もするね [] - [ここ壊れてます]
- 361 名前:名前は開発中のものです。 [2014/03/12(水) 10:35:51.84 ID:DWahuZKR.net]
- int i;
double dSqrt, x, y, z; long T, E; x = y = z = 1.0; T = clock(); for (i = 0; i<100000000; i++){ dSqrt = sqrt(pow(x, 2.0) + pow(y, 2.0) + pow(z, 2.0)); } E = clock() - T; printf("√( x^2 + y^2 + z^2 ) = %1.5f [%1.5f] sec\n", (float)dSqrt, (float)E / CLOCKS_PER_SEC); T = clock(); for (i = 0; i<100000000; i++){ dSqrt = sqrt(sqrt(pow(x, 2.0) + pow(y, 2.0)) + pow(z, 2.0)); } E = clock() - T; printf("(√(√(x^2 + y^2) + z^2) = %1.5f [%1.5f] sec\n", (float)dSqrt, (float)E / CLOCKS_PER_SEC); getchar(); return 0; 実行結果 √( x^2 + y^2 + z^2 ) = 1.73205 [0.60800] sec (√(√(x^2 + y^2) + z^2) = 1.55377 [1.18600] sec 計算結果はゲームで使うなら誤差の範囲かな? 単純に sqrt 2回使えばほぼ 2倍の時間掛かるんで衝突判定するオブジェクトの数に拠りけり 秒間1億に近いから他の処理の重さと併せて考慮する感じだと思う
- 362 名前:名前は開発中のものです。 [2014/03/12(水) 13:43:31.76 ID:KEnJWCWv.net]
- 誤差も何も√( x^2 + y^2 + z^2 )と√(√(x^2 + y^2) + z^2)じゃ違う答えになって当然だし・・・
- 363 名前:名前は開発中のものです。 mailto:sage [2014/03/12(水) 13:49:15.02 ID:DWahuZKR.net]
- うん、一応>>347に書かれてた事を試してみただけ
- 364 名前:名前は開発中のものです。 [2014/03/12(水) 21:54:58.99 ID:5WuRlcAH.net]
- >>347はdistanceの二乗使うからsqrtは使わんよ
- 365 名前:名前は開発中のものです。 [2014/03/12(水) 21:59:51.24 ID:5WuRlcAH.net]
- あと、ルート二つついてる方は単に式が間違ってるだけだと思う
- 366 名前:名前は開発中のものです。 mailto:sage [2014/03/12(水) 22:11:11.81 ID:MjuHudry.net]
- pow(x,2.0)て最適化でx*xになるっけ?一昔前のVCだと駄目だったけど
それにdoubleよりfloat使わない?
- 367 名前:名前は開発中のものです。 [2014/03/13(木) 10:00:03.12 ID:pSqzCZ7J.net]
- なるほど、342から間違ってたのね、失礼しました
- 368 名前:名前は開発中のものです。 mailto:sage [2014/03/13(木) 11:21:45.95 ID:pSqzCZ7J.net]
- >>357
一応検証の為に pow(x, 2.0) と x*x の比較したら最適化されないみたいです(VC++2013) √( x^2 + y^2 + z^2 ) [4.25600] sec √(x * x + y * y + z * z) [0.61000] sec これまでのを総合すると、 float dist2 = x * x + y * y + z * z; float rr = (r1 + r2) * (r1 + r2); if (dist2 > rr) { // no collision } else { // touch or collision float dist = sqrt(dist2); // 衝突位置の計算用 } みたいな感じかな? 参考になりました、ありがとうございます
- 369 名前:名前は開発中のものです。 mailto:sage [2014/03/13(木) 20:12:09.07 ID:U+Ob+Zph.net]
- doubleよりfloatが何故か遅いっていう噂があるね
- 370 名前:名前は開発中のものです。 mailto:sage [2014/03/13(木) 20:37:28.97 ID:gJhIi0KX.net]
- どうせ/fp:preciseのままだからだろ
- 371 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 02:04:37.56 ID:lh5cPZ7H.net]
- とあるゲームのソースを見たところ
playMIDI TextOut ReleaseMIDI など出てきたんですけどこれはygs2kで間違いないですかね? ygs2kってゲ製では有名なんですか?
- 372 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 02:30:50.42 ID:3y1QMR7E.net]
- そうです
- 373 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 09:20:59.03 ID:9NF5k3Jb.net]
- わたしが
- 374 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 14:07:07.29 ID:lh5cPZ7H.net]
- ヴェルタース
- 375 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 14:14:31.86 ID:h6Za+Db1.net]
- >>362
言ってることが支離滅裂。 なぜ、その名前だけでそのライブラリに行きつくのか。 ついでに言えば全然有名じゃないし。なんでゲ製でなの?
- 376 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 14:58:29.14 ID:FYDjzZLC.net]
- やねうらお氏は10年前に亡くなりました
- 377 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 16:20:04.97 ID:PgHQYT7S.net]
- 知ってる人は多そうだけど、使ってるひとってどれくらいいるんだろう?的な
- 378 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 17:08:57.60 ID:h6Za+Db1.net]
- >>367
ああ、彼のライブラリなのか。 結局、3Dは出来なかったな。能力的にも年齢的にも無理があったのだろうが。
- 379 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 17:24:30.81 ID:rzf5NJ5V.net]
- 新聞でやねうら王の名前みて吹いた
- 380 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 19:43:09.80 ID:DtHIrGu2.net]
- 3Dはのんびり開発してるとバージョン変わって台無しだから不毛
- 381 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 20:00:10.92 ID:fItnBM/L.net]
- 3DというかMSがな
- 382 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 20:13:58.33 ID:dxeJpeDA.net]
- 今でも、DirectX7 使えるよ
- 383 名前:名前は開発中のものです。 mailto:sage [2014/03/15(土) 20:44:18.33 ID:7h3u1dFN.net]
- DirectX11は長生きするんじゃない?つっかえねーテッセレータと共に
- 384 名前:名前は開発中のものです。 mailto:sage [2014/03/16(日) 02:00:01.53 ID:/lXYe85Y.net]
- 超長生きしたのって7と9だっけ?
- 385 名前:名前は開発中のものです。 mailto:sage [2014/03/16(日) 12:04:58.86 ID:45D5Boh6.net]
- プログラムというより物理の話で申し訳ないんだけど、レースゲームで壁とぶつかった時の速度の計算ってどうしてる?
- 386 名前:名前は開発中のものです。 mailto:sage [2014/03/16(日) 12:46:48.57 ID:9fplCkXk.net]
- 速度x0.5
方向は壁の法線方向に対して対称(反射) ※リアルさを求めるなら壁から加わる力から加速度をもとめるべき
- 387 名前:名前は開発中のものです。 mailto:sage [2014/03/16(日) 13:08:18.40 ID:DbQzKXx2.net]
- 壁にぶつかったら爆発→リトライ
- 388 名前:名前は開発中のものです。 mailto:sage [2014/03/16(日) 14:37:04.76 ID:e720CN4J.net]
- レースゲームなら>>377でいい気がするね
ただ、簡易スマートボール作ろうとしたときに>>377のやり方やってたら 曲面の壁に沿って滑らかに滑ってくれなくてエターなった思い出があるわ
- 389 名前:名前は開発中のものです。 [2014/03/16(日) 15:00:37.43 ID:a7Z/sEsx.net]
- 物理エンジン任せ
- 390 名前:名前は開発中のものです。 mailto:sage [2014/03/16(日) 18:55:21.70 ID:uPQCf7iI.net]
- どうしてるの前にどうしたいを述べるべき
ガツガツと壁を削りながらアグレッシブに攻めるゲームにしたいのか スピンしてほぼ停止状態からやり直させるのか ある程度の傾斜なら斜めに傾いたまま突っ走るロデオか
- 391 名前:名前は開発中のものです。 mailto:sage [2014/03/17(月) 00:57:39.15 ID:VY0wetv0.net]
- 内積使えよ
- 392 名前: ◆UxQ8uxJMok [2014/03/17(月) 01:35:41.18 ID:kdQ7tXJG.net]
-
>>182 :名前は開発中のものです。:2014/02/04(火) 00:23:08.29 ID:J1FJfMJW > スレッドの主旨を考えてくれ。どっかのスレみたいに株の話をされても困る おぃ、>>182ID:J1FJfMJW 手前ェは、一族根絶やし肉だるま処刑uni.2ch.net/test/read.cgi/entrance2/1369909044/119リスト入りだ。
- 393 名前:名前は開発中のものです。 mailto:sage [2014/03/17(月) 07:06:23.16 ID:Do9zcgcc.net]
- >>381
壁とぶつかりながら進む方 一応ライブラリ使えば球体とコースの当たり判定と交点を求めることは出来るんだけど、アクセルを踏み続けると当たってる時でも加速するし、減速する処理を書くと当たり続けて減速しすぎちゃうし・・・
- 394 名前:名前は開発中のものです。 mailto:sage [2014/03/17(月) 09:41:07.08 ID:rpSVpHyC.net]
- www.euclideanspace.com/threed/games/examples/cars/index.htm
ここまでは理解していると思うので、 挙動をどうするか決めておいて そのようになるようにコードを書いてゆくのでしょう
- 395 名前:名前は開発中のものです。 mailto:sage [2014/03/17(月) 19:26:01.22 ID:U3cX2N0O.net]
- >>384 その辺は真面目なシム系のゲームを作
- 396 名前:驍フでなければ、
>>377 にあるようなゲームならではの調整が必要になるケースだと思うよ 壁に接触してから〇秒間は加速性能を〇〇%落とすとか、 壁から離れるような方向に謎の力が加わるとか やってみて理想のゲーム性に近づくようにいろいろ試してみるしかないかと [] - [ここ壊れてます]
- 397 名前:名前は開発中のものです。 mailto:sage [2014/03/18(火) 20:52:56.02 ID:CMOj/Jcf.net]
- ttp://homepage2.nifty.com/natupaji/DxLib/dxprogram.html#N4.5
このスムーズに動くマップスクロールですが、最初にマップを動かしてからキャラを描画する形で ソースが書かれています。 これを、画面端で、キャラだけ動いてカメラ画面(マップ)が動かないようにしたい場合、 画面を滑らかに動かすのではなく、キャラを滑らかに動かすような処理に ソースを変更するしかないでしょうか?
- 398 名前:名前は開発中のものです。 mailto:sage [2014/03/18(火) 20:53:36.58 ID:CMOj/Jcf.net]
- ttp://homepage2.nifty.com/natupaji/DxLib/dxprogram.html#N4
アドレスはこちらでした。
- 399 名前:名前は開発中のものです。 mailto:sage [2014/03/18(火) 22:13:14.48 ID:anUGUjWa.net]
- うむ、それしかないと思うよ
- 400 名前:名前は開発中のものです。 mailto:sage [2014/03/19(水) 01:58:11.08 ID:tk/WX1Vm.net]
- >>387
リンク先をチラ見した程度じゃ、何をやってるか正しく把握してないし、 >>387の言わんとしてることもイマイチ分かりかねてるが、 方法としては、 昔ながらRPGみたく、 キャラの位置が画面端に近づいたら画面全体じゃなくて、キャラのみを移動にする方法や 完全にどこの位置でもキャラを移動させる方法、画面端(移動制限をしっかり)して描画に十分な余白 の3通りぐらいはあると思うよ。 他にも3D系のだと、画面端に近づくと縮尺が変わってとかもあるけど。
- 401 名前:名前は開発中のものです。 mailto:sage [2014/03/19(水) 04:13:25.51 ID:GLn+gVin.net]
- 色々な表現方法があるのだが、比較的応用のききやすい方法を。
こんな事言って、例のkなんとかさんが激おこしないことを祈る。 >>387 現実世界で言うところの、スポーツ中継におけるTVカメラのようなものを想像して欲しい。 例えばマラソン中継。ランナーは常に走っているけど、カメラも同じ方向に動いている。 あるいは野球中継。ホームランボールをTVカメラが追いかけて、常に画面の中央にあるように撮影する。 被写体の動きに合わせてカメラを動かすことで、視聴者には被写体は停止し、背景が流れていくように見える。 カメラを動かすのをやめれば、逆に背景は停止し、被写体は移動する。やがて画面の外に消えてゆくだろう。 これをまとめると (1)キャラクターは、画面表示に関わらず常に動かせ。 (2)マップは、画面表示に関わらず座標を動かしてはならない。 (3)カメラの位置は、状況に合わせて移動させろ。 ということになる。
- 402 名前:名前は開発中のものです。 mailto:sage [2014/03/19(水) 16:07:40.13 ID:UvHVMI/M.net]
- 387の質問はサンプルソースをどうするかって話だから
その答えだと根本から作りなおせって事になるんじゃない?
- 403 名前:名前は開発中のものです。 mailto:sage [2014/03/19(水) 16:41:44.59 ID:pluZ/2gm.net]
- まあ答えとしては>389に言われちゃってるしな
- 404 名前:名前は開発中のものです。 mailto:sage [2014/03/19(水) 17:00:07.58 ID:o8V0VZ6P.net]
- そのサンプルだと滑らかに動くスクロール処理をキャラじゃなくてカメラビューの方に入れてるね。
ぶっちゃけサンプルとしてはどうかと思うぞ。 キャラとカメラ両方に入れるか、キャラに入れるか。この二択でしょ。Dxlibの作者もなんでこんな 初心者いじめのようなサンプルを書いたんだろw
- 405 名前:名前は開発中のものです。 mailto:sage [2014/03/19(水) 22:07:24.67 ID:rw0JuaTm.net]
- 俺こそが世界の中心!
- 406 名前:名前は開発中のものです。 mailto:sage [2014/03/20(木) 17:23:48.20 ID:XEsROipC.net]
- C++とかで「グローバル宣言なるべく使うな」って言うけど、どうやって変数のデータを保持するの?
- 407 名前:名前は開発中のものです。 mailto:sage [2014/03/20(木) 17:51:07.52 ID:
]
- [ここ壊れてます]
- 408 名前:yGIdDx3B.net mailto: 手元の入門書を開いてみてくれ。
「関数」のページに、おそらく「引数(ひきすう)」という項目が書かれてると思う。そこを読むんだ。 [] - [ここ壊れてます]
|

|