C/C++ゲーム製作総合スレッド Part5at GAMEDEVC/C++ゲーム製作総合スレッド Part5 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト362:名前は開発中のものです。 14/03/12 13:43:31.76 KEnJWCWv.net 誤差も何も√( x^2 + y^2 + z^2 )と√(√(x^2 + y^2) + z^2)じゃ違う答えになって当然だし・・・ 363:名前は開発中のものです。 14/03/12 13:49:15.02 DWahuZKR.net うん、一応>>347に書かれてた事を試してみただけ 364:名前は開発中のものです。 14/03/12 21:54:58.99 5WuRlcAH.net >>347はdistanceの二乗使うからsqrtは使わんよ 365:名前は開発中のものです。 14/03/12 21:59:51.24 5WuRlcAH.net あと、ルート二つついてる方は単に式が間違ってるだけだと思う 366:名前は開発中のものです。 14/03/12 22:11:11.81 MjuHudry.net pow(x,2.0)て最適化でx*xになるっけ?一昔前のVCだと駄目だったけど それにdoubleよりfloat使わない? 367:名前は開発中のものです。 14/03/13 10:00:03.12 pSqzCZ7J.net なるほど、342から間違ってたのね、失礼しました 368:名前は開発中のものです。 14/03/13 11:21:45.95 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); // 衝突位置の計算用 } みたいな感じかな? 参考になりました、ありがとうございます 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch