並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 63件

新着順 人気順

衝突判定の検索結果1 - 40 件 / 63件

  • 衝突判定編

    ホーム < ゲームつくろー!< 衝突判定編 衝突判定編 ゲームで絶対に必要になるのが「衝突判定」です。ぶつかる物があって、初めて世界が生まれます。ここでは、衝突(Collision)にトコトンこだわってみました。 (本当は自分の学習のためでもあります(^-^;)

    • 楕円同士の接触判定と衝突判定

      ググっても出てこなかったので。 2つの楕円が接している(内接 or 外接)かどうか判定する方法についてです。ついでに衝突判定もできます。 衝突判定だけしたい方 以下で説明する方法でも判定自体はできますが、非常に非効率です。悪いことは言いません。GJK法などを使いましょう。凸同士なので簡単にできます。 どうしても接触を判定したい方 心して読み進めてください。 事の発端 まだそんなにバズってないけど宣伝していいらしいので. AI でも普通のプログラマーでもない優秀なプログラマーたる皆さんは,もちろん楕円が接するか判定する方法を知っていますよね? 私は一昨日実装しました.各位の解法に興味があります.よろしくお願いいたします. — 青い楕円形のぜろ (@0_uda) October 4, 2022 もちろん楕円が接するか判定する方法を知っているので、書くことにしました。 楕円の表現方法 楕円とはい

        楕円同士の接触判定と衝突判定
      • 衝突判定のアルゴリズム

        2 つの図形の衝突判定 (コリジョン判定) のアルゴリズムをまとめます。 図が用意できておらず見難いですが、ご勘弁を。 太字はベクトルを表します。 線分と三角形 線分を p+tl、 三角形を (1-u-v)q0+uq1+vq2 で表します (t, u, v は媒介変数)。 Tomas Moller のアルゴリズム を Cramer の公式で解きます。 0.0≦t≦1.0, 0.0≦u, 0.0≦v, u+v≦1.0 なら交差と判定します。 半直線と三角形 線分と三角形の場合と同様の計算を行います。 0.0≦t, 0.0≦u, 0.0≦v, u+v≦1.0 なら交差と判定します。 点と球 点と球の中心の距離の 2 乗を求めて、 その長さが球の半径の 2 乗以下なら交差と判定します。 線分と球 線分の始点から終点へのベクトルを v、 線分の始点から球の中心へのベクトルを c とします。 v・c

          衝突判定のアルゴリズム
        • UnityのRigidbodyとColliderで衝突判定 - Qiita

          地面が落ちてしまう場合 Rigidbodyは物理演算で動作させるオブジェクトに設定する。壁や床はRigidbodyを付ける必要はない。 地面をすり抜けてしまう場合 アセットや変換したモデルがすり抜けてしまう場合はオブジェクトにColliderが設定されていないのが原因。重力で落下した物体が地面に着地するにはそれぞれに下記のコンポーネントが必要になる。 CubeやSphereなどのプリミティブには最初からColliderが付いている。 落下する物体 物体の形に応じたCollider 重力が設定されたRigidbody 受け止める地面 地面の形に応じたCollider すり抜けて落下していく物体にはPhysics > BoxColliderなどのコンポーネントを設定する。入れ子になっているオブジェクトの場合はそれぞれの子オブジェクトに指定するか、親オブジェクトに指定する。子オブジェクトにCol

            UnityのRigidbodyとColliderで衝突判定 - Qiita
          • Box2DFlashAS3での衝突判定 - FICC LABS

            昨日に引き継ぎBox2DFlashAS3、楽しすぎます。 FICC安藤です。 今回は、もしゲームを作るとなると必要になると思われる「当たり判定」です。 上のサンプルでは3つのルールがあって 1 敵役は星形 2 マウスクリックで左側から玉が飛んでくる 3 玉が敵に当たるとエフェクトを残して玉だけ消す。 今まではMovieClip.hitTest() で毎フレームごとにぶつかってるのがいないか走査してたと思います。 Box2Dではworld内の物は特別なにもしなくてもお互いがぶつかれば反発しあって跳ね返ります。 まぁそういうエンジンですからと言えばそれまでですが、逆にただレンダリングしてるだけだと「いつ何が何とぶつかったか?」がわかりません。 ぶつかった時のイベント等ないかソースを見てみましたがそれっぽいものは見当たらず、 Box2D/Dynamics/Contacts/b2Co

            • ゲームのバグにみるアルゴリズム - 衝突判定

              何を見てもアルゴリズムを考えてしまうのがプログラマの職業病といったところです。 私は結構ゲーム好きなんですが、ついついアルゴリズムを考えてしまうんですね。 バグを発見したときなどは楽しくてたまりません。 そのほつれからプログラムのコードが透けて見えるのです。 本日のターゲットは2001年、匠から発売されたアーケードゲーム「ナイトレイド」です。 ジャンルはシューティングなのですが、変なシステムを採用した、あまり見栄えのしないゲームでした。 このゲーム、非常にマイナーです。多分、名前を聞いて分かる人の方が少数派ですね。 ちなみにプレイステーションに移植されています。 アーケード版公式ページ PS版公式ページ このゲームには非常に致命的なバグがあり一部界隈では有名です。 自機を画面左上に移動させると敵が弾を撃たなくなるのです! なぜこんなことが起こるのでしょうか? 矩形の衝突判定 ところで矩形(

              • Unity実用Tips――衝突判定とCollider、複数Tagの使い方

                Unity実用Tips――衝突判定とCollider、複数Tagの使い方:ゲーム開発初心者のためのUnity入門(13)(1/4 ページ) Unityで3Dゲームを作るまでのいろいろな処理を解説する連載。今回は、本格的なゲームを作るのに必要となる、衝突判定とCollider、複数Tagの使い方など実用的なテクニックを解説する【Windows 10、Unity 5.4に対応。C#のコードを追加】。 Unityで3Dゲームを作るまでのいろいろな処理を解説する本連載「ゲーム開発初心者のためのUnity入門」。前回記事では無数のゲームオブジェクトを動的に作成したが、本格的なゲームを作成する場合は、最初から(静的に)複数の3Dキャラクターやゲームオブジェクトを用意することになるだろう。その場合は、複数のゲームオブジェクトに「タグ」(Tag)付けすると判別しやすくなる。 そこで今回は、キャラクターにタ

                  Unity実用Tips――衝突判定とCollider、複数Tagの使い方
                • Amazon.co.jp: 詳解 ActionScript 3.0アニメーション ―衝突判定・AI・3DからピクセルシェーダまでFlash上級テクニック: Keith Peters (著), 相川愛三 (翻訳): 本

                    Amazon.co.jp: 詳解 ActionScript 3.0アニメーション ―衝突判定・AI・3DからピクセルシェーダまでFlash上級テクニック: Keith Peters (著), 相川愛三 (翻訳): 本
                  • FlashLite1.1での衝突判定 | _level0 - KAYAC Front Engineer Blog

                    どうも、iPhone 3G Sが発表されたはいいものの、FlashLiteの実機テストが出来なくなるので飛びつくか迷っているナカムラです。 ゲーム制作では衝突判定が頻繁に使用されますが、今回はそれでハマった話でも。 衝突というと、AS3ではhitTestObject・hitTestPoint、AS2ではhitTest等、ビルトインメソッドが用意されているので、これらが使える場合は手っ取り早く利用できます。 また、それらに頼らずオブジェクト同士の距離を求める場合は、三平方の定理を用いて var distance:Number; distance = Math.sqrt( Math.pow( mc1.x - mc2.x, 2 ) + Math.pow( mc1.y - mc2.y, 2 ) ); という感じでやるのだと思います。 しかし、FlashLite1.1ではMath関数がサポートされて

                      FlashLite1.1での衝突判定 | _level0 - KAYAC Front Engineer Blog
                    • 自力衝突判定の勘所というか。 | _level0 - KAYAC Front Engineer Blog

                      haraです。 衝突判定、物理計算とかが絡まず、単純に「ぶつかった・ぶつかってない」だけ取りたいなあ、と思ったのですが、参考書などを見てやってみても、なかなかうまくいかないというかすり抜けまくる! ということで、僕は衝突判定がとても苦手です。 taroのエントリによると、Box2Dの衝突判定がいいらしいですが。。そりゃ確かに優秀だしsleepとかできてCPUにもやさしいだろうけど、b2Worldとかb2AABBとか、なんかめんどくせーYO・・ と思っていたら、wonderflにいい感じの衝突判定を利用した作品を見つけました。 向かう方向は適当に、衝突だけ取るみたいなことが そこそこ簡単にできます。 ではでは、動いてるもの同士の衝突判定で、気をつけた方がよさそうなポイントがあったので解説しましょう。 ディスプレイ反映はともかくとして動きの計算はより短間隔で。 コード見ると、1フレームの間に4

                        自力衝突判定の勘所というか。 | _level0 - KAYAC Front Engineer Blog
                      • Amazon.co.jp:ゲームプログラミングのためのリアルタイム衝突判定: Christer Ericson, 中村 達也: 本

                          Amazon.co.jp:ゲームプログラミングのためのリアルタイム衝突判定: Christer Ericson, 中村 達也: 本
                        • [ActionScript 3.0] RDCアルゴリズムによる衝突判定│miscellaneous

                          オブジェクト同士の衝突判定を行う場合、RDCアルゴリズムを使うと総当たりで判定を行うより判定回数をかなり減らすことができる。 (オブジェクトの位置を元に領域をいくつかに分割して、その領域内のオブジェクト同士だけで衝突判定を行うやり方である) Main.as package { import flash.display.*; import flash.events.Event; [SWF(width="500", height="500", backgroundColor="#ffffff")] public class Main extends MovieClip { public var rdc:RDC; public var objects:Array; public function Main() { stage.scaleMode = StageScaleMode.NO_SCALE

                          • unbland.org blog » Blog Archive » 四分木で 2D の衝突判定を最適化

                            今回は四分木 (Quad Tree) について。 オブジェクト同士の衝突判定を行う際、みなさんはどうしていますか? 一番最初に思い付く方法は衝突対象のオブジェクトを配列にでも入れて、総当たりで Sprite#hitTestObject() なんかで判定してしまおうという方法だと思います。この方法でも、対象のオブジェクト数が少なければ特に問題にはなりません。しかし対象のオブジェクト数が多かった場合、総当たりで計算を行うという方法では計算量が膨大になってしまい、とても現実的とは言えません。 Sprite#hitTestObject() などの衝突判定を行う前に、どうにか衝突の可能性があるオブジェクトを限定出来ないか? そんな時には四分木を使えば計算量が減らせます。 概念的には miscellaneous さんの「四分木」エントリーが参考になります。 四分木を構築する方法で一般的(?)なものは

                            • やねうらお-よっちゃんイカ(ry - リアルタイム衝突判定

                              3Dプログラマ必携の書「Real-Time Collision Detection」の訳本が出た。その名も「ゲームプログラミングのためのリアルタイム衝突判定」である。間違いなく良書なので3Dをやるつもりならば迷わず買っておいて損はない。 ちなみに3Dプログラミングをやる上で、一番まとまっている本は「ゲームプログラミングのための3Dグラフィックス数学」だろう。この本で3Dをやるのに必要な知識の大半は得られる。 あとは、3Dゲームのエンジン部分をどう設計するかという問題があるのだが、私は「3D Game Engine Design」(洋書)で勉強した。この著者のEberly氏は数学者であり、この本のなかでは衝突判定についても数学的にかなり詳しく解説がされている。いま買うのであれば、Eberly氏がそのあとに出した「3D GAME ENGINE ARCHITECTURE」(洋書)もセットでお勧め

                                やねうらお-よっちゃんイカ(ry - リアルタイム衝突判定
                              • 衝突判定

                                大学の時に作った衝突判定についてだべった時用のスライド。 発見したのでアップしてみる。スライドの作り方がいま見るとすごく雑い。Read less

                                  衝突判定
                                • 最適な衝突判定を即選択。Collision Detection 早見表【Unity 2018.3 以降】 | VirtualCast Blog

                                  最適な衝突判定を即選択。Collision Detection 早見表【Unity 2018.3 以降】 こんにちは!バーチャルキャストクライアント開発の江口です。最近は主にバーチャルキャストのバグ修正を担当しています。以前、オブジェクトが床を貫通してしまう不具合を修正したときに、Rigidbody の Collision Detection (衝突判定) のモード選びで悩み、多くの時間を使ってしまいました。Unity 2018.3 以降で使用できる4つの Collision Detection モードがまとめて解説されている日本語ページを見つけられなかったので、この機会に一発で適切な Collision Detection を選べるフローチャートを作成しました。 各 Collision Detection の解説 Discrete モード Discrete モードは Rigidbody

                                    最適な衝突判定を即選択。Collision Detection 早見表【Unity 2018.3 以降】 | VirtualCast Blog
                                  • 複雑なオブジェクトの衝突判定(CollisionDetectionクラス) | (SCRATCHBRAIN.BLOG v2)

                                    『Actionscript3.0アニメーション』を読み直しているついでに作ったクラス。 本でも紹介のあるgskinner.comにAS2版について記事があり、それをもとにささささっと(と言いつつ、AS2の知識がほぼなくて、若干手間取ったり)。 下の2つのオブジェクトをドラッグで動かして衝突させてみてください。 今回作った衝突判定クラスで衝突と判定されると、衝突範囲がピンク色に囲まれます。 Download CollisionDetection.as 使い方 1.CollisionDetectionクラスをインポート import net.scratchbrain.geom.CollisionDetection; 2.checkForCollisionメソッド実行 var collisionRect:Rectangle = CollisionDetection.checkForC

                                    • cocos2dx:衝突判定を実装する1回目 | albatrus.com

                                      cocos2dxで衝突判定を実装するシリーズとしてこれから3回に分けてブログに書いていきたいと思います。 この辺りは、自分でもこの一ヶ月近く色々試している部分なんですが、何とか形になる部分が自分の中にありますので、それを紹介したいと思います。 ちなみに、タイルマップを利用した衝突判定を書きますので、もし参考にできるものがあれば幸いです。 第一回目は、cocos2dxで衝突判定をするために必要なメソッドなどの紹介をします。 CCPoint オブジェクトの座標はCCPointクラスで表現されています。 CCPointは下記の方法で作成ができます。

                                        cocos2dx:衝突判定を実装する1回目 | albatrus.com
                                      • ゲームつくろー!- 衝突判定編

                                        ホーム < ゲームつくろー!< 衝突判定編 衝突判定編 ゲームで絶対に必要になるのが「衝突判定」です。ぶつかる物があって、初めて世界が生まれます。ここでは、衝突(Collision)にトコトンこだわってみました。 (本当は自分の学習のためでもあります(^-^;)

                                        • cocos2dでCCSpriteなどの矩形の衝突判定 | 間違いだらけの iPhone 開発備忘録

                                          //!< タッチが行われた位置を取得 CGPoint location = [touch locationInView: [touch view]]; //!< CCDirectorに取得した座標をGL座標(描画に使用するものと同じ座標系)に変換 CGPoint convertedLocation = [[CCDirector sharedDirector] convertToGL:location];

                                          • ボールの衝突判定(ActionScript3.0) - 凹みTips

                                            前回(ボールの放り投げ)を発展させて、複数のボールに対しての衝突シミュレーションを作ってみました。 サンプル: ↑1個つかんで投げるとエネルギーが増えて面白いです。 まずは、準備としてクラスを2つ用意します。 // Ball.as package {     import flash.display.Sprite;     import flash.events.*;     import flash.geom.Point;     class Ball extends Sprite {      ~     } } // Test01.as package {     import flash.display.*;     import flash.events.Event;     import Ball;     public class Test01 extends MovieCl

                                            • X-LABO: 斜面への衝突判定と反射1

                                              この記事のURL http://www.dango-itimi.com/blog/archives/2005/000830.html ついにねんがんの物体斜面衝突反射判定方法をてにいれたぞ! 左図のような真っ直ぐな面にボールがぶつかった時の衝突判定と反射方法は簡単に実現可能です。 しかし右図のような斜面にボールがぶつかった場合の衝突判定と反射方法はどのようにしたら求めることができるのかなあと以前から悩んでおり、自分の中の課題の一つとなっていました。 今回三日ほど山に篭って頭を沸騰させた結果、なんとか実現方法への解を導き出せたので以下にその手順を記します。 成果物はこちら。 黒い点はドラッグ&ドロップして移動することが可能です。斜面にぶつかったボールが等角に反射できている事が確認できると思います。 まずは図による考え方から記します。 我流で考えた方法故、途中とても無駄な処理がある恐れがありま

                                              • 衝突判定処理(Collider)の種類

                                                Unityを触ってちょっとずつ理解したこと9 大抵のゲームはオブジェクト同士がめり込み合わないように当たり判定の処理を行っている。 Unityでは、Colliderという仕組みを使って、オブジェクト同士の当たり判定処理を選択することができる。 Colliderの設定は簡単。プロジェクトビューかヒエラルキビューの当たり判定を行いたいオブジェクトを選択して、メニューのComponentからColliderを選択する。 Colliderの種類は以下の通り。 Box Collider ・・・ 箱状のCollider。処理が軽い。複数個組み合わせることで様々な形状のオブジェクトの当たり判定を行える。 Sphere Collider ・・・ 球体状のCollider。処理が軽い。しかし、様々な形状の対応させることは難しい。 Capsule Collider ・・・ カプセル状のCollider。 Me

                                                  衝突判定処理(Collider)の種類
                                                • [Unity] Unityにおける衝突判定まとめ - Qiita

                                                  Unityは衝突判定を自動的に行ってくれるので、開発者はわざわざ衝突判定のコードを書く必要がありません。 しかし衝突判定でも、物理演算や衝突検出が関わってくると設定で混乱するので、ここで一度簡単にまとめてみることにしました。 ~colliderコンポーネント 衝突判定の形状を示すコンポーネントです。 Materialを設定することで、反発定数などの衝突時の反発の仕方を指定することができます。 Is Trigger チェックがついていると他の物体と衝突した時にOncollison~またはOnTigger~系の関数が呼び出されます。 また、衝突時に発生する反発効果がなくなります。 Rigidbodyコンポーネント 物体に剛体の性質を持たせるコンポーネントです。 Use Gravity チェックをつけると重力の効果が加わります。 Is Kinematic チェックをつけると、物理演算が無効になり

                                                    [Unity] Unityにおける衝突判定まとめ - Qiita
                                                  • 2Dアクションゲームの簡易衝突判定入門 - 土屋つかさの技術ブログは今か無しか

                                                    DXRuby Advent Calender 2013 12日目です。 11日目はfourxzさんのRuby使ったことない人がDXRubyでゲームを作りたいのでIDE3つインストールしましたでした。RubyにはWindows用のまともなIDEは無い物と思い込んでいたので、こんなに選択肢があるとは意外でした。これを機会に、試用してみたいと思います(デバッグトレースをCUIでやる気にはなれなくて……)。 さて12日目です。当初は別のエントリをアップする予定でしたが、DXRuby Advent Calenderのイベントを通じて、「ゲームプログラミング初心者は、意外とこういう所で躓くんじゃないか」と思い、2Dアクションゲームにおける衝突判定、特に、自キャラと障害物との衝突判定について、ざっくりまとめてみることにしました。 あくまで基本概念の説明であり、近代的なゲームプログラミングでは物理演算含め

                                                      2Dアクションゲームの簡易衝突判定入門 - 土屋つかさの技術ブログは今か無しか
                                                    • 撃たれると痛い......衝突判定その2 – PICO-8ゲーム開発入門(11) | AUTOMATON

                                                      PICO-8でプログラミングを1から学ぶ連載、第11回です。前回はこちら。プログラミング経験者の方は、日本語マニュアルを読んで、すぐに創作にとりかかりましょう。作った作品は、ぜひ掲示板へ。 今回は、ビームでNPCをやっつける処理を作って、ついにシューティング・ゲームらしさを獲得します。まずは、そのために必要な下ごしらえから。 ビームを画面外で消す 今までの実装では、撃ったビームは出しっぱなしになっていました。ビームが画面の外に出て行くと表示されませんが、ビームを表す変数は存在し続けます。これは2つの点で問題があります。 1. メモリにビームが溜まっていく ビームを何度も発射すると、beams 配列にビームがどんどん溜まっていきます。PICO-8で扱えるメモリの容量には(わりと小さめの)上限があるので、ゲームを続けていくとメモリがパンクして、エラーになります。 2. 座標値がオーバーフローし

                                                        撃たれると痛い......衝突判定その2 – PICO-8ゲーム開発入門(11) | AUTOMATON
                                                      • 衝突判定 - unity学習帳

                                                        // Use this for initialization void Start () { } float depth; Vector3 worldPosition; // Update is called once per frame void Update(){ if(Input.GetMouseButtonDown(0)){ //Planeメッシュとは無関係の無限な平面を持つアタリ判定 Plane plane = new Plane (Vector3.up,Vector3.zero); //カメラからマウス位置へレイを飛ばす Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); //Planeメッシュから衝突を検出して深度から位置を割り出す if(plane.Raycast(ray,out depth)){ wor

                                                        • Papervision3Dの衝突判定プログラム

                                                          Papervision3DにはhitTestObjectという関数がありますが 回転などを加えると上手く動作してくれないので (自分の使い方が悪いのかもしれませんが...) 自分で衝突判定のプログラムを作ってみました。 衝突判定にはAABBやらOBBなどがあるらしいです。 今回はOBBでのプログラムを書きました。 とてもわかりやすい解説がマルペケつくろーどっとコムさんのサイトにありますので 気になる方は是非見てみてください。 マルペケつくろーどっと込む:衝突判定編 OBBには「各軸の方向ベクトル」を持たせなければならないということなので Cubeクラスを継承した独自のクラスを作成したのでそれも紹介しておきます。 ※当たり判定はブロック同士でしか行っていません。 プログラム説明 ・MultiBlock.as・・・衝突判定を使ったプログラム ・Col_OBB.as・・・OBBによる衝突判定 ・

                                                            Papervision3Dの衝突判定プログラム
                                                          • 衝突判定 hitTestObject hitTestPoint - Murayama blog.

                                                            AS3.0アニメ本も9章に入りました。やっと半分くらいです。 9章のお題は衝突判定。 衝突、ぶつかったかどうかを判定することですね。 これが理解できれば、グラディウス的なシューティングゲームが実装できるかもしれません。 あるいはスターソルジャーか。 メガドライブのサンダーフォース3は隠れた名作でしたね。 ゲームの話は置いといて、衝突の話に入ります。 この章を読むまで知らなかったんですが、 表示オブジェクトの基底クラス(語弊があるかも)であるDisplayObjectクラスでは、 あらかじめ衝突を判定するhitTestObjectメソッドと、hitTestPointメソッドが用意されています。 hitTestObjectメソッドは引数にDisplayObject型のオブジェクトをとります。 つまり、引数に指定したDisplayObjectオブジェクトとの衝突判定を返します。 一方のhitTe

                                                            • MortonOrder+八分木による衝突判定ライブラリ | Blog in a well

                                                              ご無沙汰しております、F22愛好会です。前回の更新から2ヶ月近く経ってしまいましたが、なんとか生きています。 最近ちょこっとThree.jsというライブラリを使ったWebGLに手を出しています。どんなものを作っているかというと、特にゲームなどの形にはなっていないのですが、こんな感じです。 サンプル1:指定空間内を球体がランダムに移動して跳ね返ったりする(座標[0,0,0]から[99,99,99]までの空間内の球体はマテリアルが黒色に変化) サンプル2:指定空間内を球体が重力の影響を受けながら移動して跳ね返ったりする。(Spaceキーで球体追加、Enterキーで球体をランダム加速) 見ての通り、まだThree.jsの基本を確認しているといった段階です。 ところで、この手の大量のオブジェクトの当たり判定を行う時、総当たりで距離を確認するともの凄い処理量が要求されるようになってしまいます。100

                                                              • enchant.jsのTIPS - 継承を利用した衝突判定 - あるくテック

                                                                さらにクラスの面白さを伝えるには? 授業ではenchant.jsを用いたプログラミングを行う上で、クラスを使う便利さをどう伝えるかということなどを昨日の記事に書きました。今日は一歩進んでクラスの継承を利用したらもっと便利でさらに面白いということを書いてみます。 昨日の記事 「もっと」ざっくりとした指示をしたい 昨日の記事では、画面上の白クマが発射した「沢山のボール」vs「沢山の茶クマ」の衝突判定について書きました。 今回は、画面上の白クマが発射した「沢山のボール」vs「沢山の茶クマ(男の子・女の子)」と少し状況が複雑になりました。 ボールのどれか1個と、男の子の茶クマか女の子の茶クマのどちらか1頭が衝突しているかどうかを知るためのプログラムを書くとしましょう。 まず総当たりで判定していく場合は、ボールNo1と茶クマ男No.1が衝突しているかをチェックして、次にボールNo1と茶クマ男No.2

                                                                  enchant.jsのTIPS - 継承を利用した衝突判定 - あるくテック
                                                                • ActionScript入門Wiki - Unity - 衝突判定

                                                                  public class CollisionScript : MonoBehaviour { private void OnCollisionEnter(Collision collision) { } private void OnCollisionStay(Collision collision) { } private void OnCollisionExit(Collision collision) { } } OnCollisionEnter他オブジェクトと衝突した瞬間に呼ばれるメソッドです。 基本的に一衝突につき一回しか呼ばれません。 OnCollisionStay他オブジェクトと触れている間に呼ばれるメソッドです。 触れている間は毎フレーム、メソッドが呼ばれます。 OnCollisionExit衝突した他オブジェクトから離れた瞬間に呼ばれるメソッドです。 基本的に一衝突につき

                                                                  • 実践的な衝突判定(AABB編) - 結果だけでなく過程も見てください

                                                                    自作ゲームに組み込んでいる衝突判定について、整理も兼ねてご紹介します。 説明を簡単にするために2D空間で説明します。 バウンディングボリューム バウンディングボリュームについては、容易に判定可能で実用的ということで 各軸に平行な四角形(以下の図のようなの)を採用します。 このような四角形のことをAABB(axis-aligned bounding box)と言います。 AABBのデータ構造 色々考えられますが、 最小座標とそれぞれの辺の長さ 中心座標とそれぞれの辺の半分の長さ 最小座標と最大座標 ここでは1.を採用します。 データ構造は以下のようになります。 struct AABB { POINT min_; SIZE size_; }; 図にすると以下のようになります。 静止しているAABB同士の衝突判定 上の図でobj1とobj2が衝突する条件を文章で書くと以下のようになります。 ob

                                                                      実践的な衝突判定(AABB編) - 結果だけでなく過程も見てください
                                                                    • OnTriggerEnterとOnCollisionEnterの違い / 衝突判定 - Unityメモ

                                                                      物体同士の衝突の判定には、Collider.OnTriggerEnter()、Collider.OnCollisionEnter()を使用します。 Unity - スクリプトリファレンス: Collider.OnTriggerEnter(Collider) Unity - スクリプトリファレンス: Collider.OnCollisionEnter(Collision) その前に、以下のコンポーネントについて理解しておく必要があります。 ◯◯Coliderコンポーネント 衝突判定の形状を設定するコンポーネントです。 isTrigger isTriggerを設定すると、衝突時に発生する反発効果がなくなります。 RigiBodyコンポーネント RigiBodyコンポーネントはAdd Component > Physicsから追加することができます。 use gravity 重力の計算を取り入れ

                                                                        OnTriggerEnterとOnCollisionEnterの違い / 衝突判定 - Unityメモ
                                                                      • enchant.jsを勉強する2 敵の配置と衝突判定

                                                                        enchant.jsも慣れてきたのでゲームっぽいのを作ってみようかと思います。 使用する画像が増えたのでchara1.gifとchara3.gifとicon.gifをフォルダにコピーして使っています。 *上下に移動する敵を作る。 enchant(); window.onload = function() { var game = new Game(320, 320); game.preload('chara3.gif','chara1.gif'); game.onload = function() { var player = new Sprite(32, 32); player.image = game.assets['chara3.gif']; player.frame = 12; player.x = 20; player.y = 80; var enemy = new Sprite

                                                                        • Unityの衝突判定を数値化して不安定な接触を安定化する(UniRx編) - んななのゲーム開発備忘録

                                                                          Unityの衝突判定を数値化して不安定な接触を安定化する キャラクターが接地しているか判定するときに思った通りにならなくて困ったことはありませんか? 今回の記事ではそんな時に役立つ、接触が不安定な場合でも安定して接触を判定する処理について説明します。 本記事で紹介する接触判定クラスはGithub (https://github.com/nyanya-nnana/CollisionDetector)にソースをあげてあります。 よければ使用してみてください。使用するにはUniRxが必要です。UniRxを使用しないバージョンはコチラで紹介しています。 もし要望等あればお気軽に。 ※ローパスフィルタの数式のとが逆になっていたので修正しました(2017/12/03) 手っ取り早く使いたいという方は次の手順をどうぞ。 UniRxをAsset Store (https://www.assetstore.

                                                                            Unityの衝突判定を数値化して不安定な接触を安定化する(UniRx編) - んななのゲーム開発備忘録
                                                                          • 衝突判定時の飛沫も再現。Mayaで簡単に雨を降らせる無料ツール『Rain Tool』 | CGトラッキング 世界のCGニュースを集めてみる

                                                                              衝突判定時の飛沫も再現。Mayaで簡単に雨を降らせる無料ツール『Rain Tool』 | CGトラッキング 世界のCGニュースを集めてみる
                                                                            • 3D衝突判定(当たり判定)

                                                                              3D空間におけるオブジェクト同士の衝突判定(当たり判定)を行うためのサンプルコードを紹介します。 OBB とは何ぞや? OBB に対する点の再接近点 OBB 対球の衝突判定 OBB 対線分の衝突判定 OBB 対 OBB の衝突判定 3D空間におけるOBBとの衝突判定には、衝突していない要素を見つければよいそうです。その判定方法に分離軸判定というものがありますが、正直に言うとあまり理解していません。 どうやって実装したのかと言えば、「ゲームプログラミングのためのリアルタイム衝突判定」という本に C 言語のサンプルが載っていたので、それを DirectX 用に変更しました。 ですので、詳細な理論はそちらの本に譲りまして、ここでは DirectX で実装可能なコードサンプルの提供と、説明が不足していると思われる部分について補足的に説明を加えることをしたいと思います。 ここでは OBB がなんであ

                                                                              • 人と物のふれあい……衝突判定 – PICO-8ゲーム開発入門(7) - AUTOMATON

                                                                                PICO-8でプログラミングを1から学ぶ連載、第7回です。前回はこちら。プログラミング経験者の方は、日本語マニュアルを読んで、すぐに創作にとりかかりましょう。作った作品は、ぜひ掲示板へ。 2Dプラットフォーマーを作ろう、というのが今年の目標ですが、その前に、見下ろし型の、初代『ゼルダの伝説』風のゲームを作ることにします。横スクロールの2Dプラットフォーマーは、ジャンプや地面との衝突など、難しい処理を含みます。いきなり手をつけるにはハードルが高すぎるので、ワンクッション置きたい思います。 ゼルダのような、1画面ごとにスクロールして広大な世界を冒険するゲームを目標としますが、まずは、上下左右に自由に動ける主人公を作ってみましょう。 上下左右に動けるキャラクター 第4回で作ったプログラムを流用しましょう。ただし、スプライトとコードをすこし修正してあります。コントローラーの入力を受け付ける箇所を、

                                                                                  人と物のふれあい……衝突判定 – PICO-8ゲーム開発入門(7) - AUTOMATON
                                                                                • ゲームつくろー 衝突判定編