タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

programmingとcollisionに関するmieki256のブックマーク (4)

  • 【C++】3Dモデルを点群化する【内外判定アルゴリズム】 - Qiita

    やりたいこと stlファイルを読み込んで点群データに変換します。具体的には、3Dモデルを含む空間を格子状に分割して、各格子点に対して内外判定を行います。内側と判定された格子点を出力していくことで、点群データを生成します。 ある点Pの内外判定アルゴリズムとして代表的なものに、「Crossing Number Algorithm」があります。このアルゴリズムは点Pから任意の方向にレイと呼ばれる半直線を伸ばし、3Dモデルの表面と交差した回数を元に内外判定を行います。交差回数が奇数回の場合は内部、偶数回の場合は外部と判定されます。計算を簡単にするために、レイは空間のx軸、y軸、z軸のいずれかに平行な方向を取ります。 レイとポリゴンの交差判定 Crossing Number Algorithmでは、点Pから飛ばしたレイと3Dモデルを構成する各ポリゴンとの交差判定が必要になります。ここでは、実装が比較

    【C++】3Dモデルを点群化する【内外判定アルゴリズム】 - Qiita
  • JavaScriptで大量のオブジェクトの当たり判定を効率的にとる - Subterranean Flower Blog

    ゲームなどのコンテンツにおいて、「当たり判定」から逃れることはできません。オブジェクトとオブジェクトが衝突したかどうかという判定は、インタラクティブコンテンツにおいて最も重要な部分になるからです。 当たり判定の実装自体は難しくありません。ですが、素朴な実装ですと、対象となるオブジェクトが大量である場合に、十分なパフォーマンスが出ません。これはオブジェクトの多い、現代的なゲームでしたり、弾幕シューティングなどを作るときに大きな障害となります。 この記事では、大量のオブジェクトの当たり判定を処理する、効率的な方法について紹介します。 まずは素朴に実装してみる 当たり判定の処理を語るには、ある程度ゲームの骨組みのようなものが必要になってきます。もちろんクラスなどを使わないベタ書きでもよいのですが、大変読みにくくなってしまいます。ですので、今回は、まず簡易的なゲームエンジンのようなものを作って、そ

    JavaScriptで大量のオブジェクトの当たり判定を効率的にとる - Subterranean Flower Blog
  • 2線分の交点

    線分AB、CDがあったときに、その交点を求めるには? 要素は2次元空間内に存在するものとします。 解説 線分AB上の任意の点Pは、媒介変数 r を用いて、以下のように表現できます。 P = A + r ( B - A ) ( r は[0~1]の値を取る) ・・・式① 同様に、CD上の任意の点Qも、媒介変数 s を用いて、以下のように表現できます。 Q = C + s ( D - C ) ( s は[0~1]の値を取る) ・・・式② PとQが同一点になる場合の r と s を求めれば、ABとCDの交点は求まったことになります。 というわけで、P = Q を解きます。 P = Q ⇔ A + r ( B - A ) = C + s ( D - C ) X、Yに関する連立方程式にします。 ⇔ Ax + r ( Bx - Ax ) = Cx + s ( Dx - Cx ) Ay + r ( By

  • Life is beautiful: ビル・ゲイツの面接試験―私の場合

    マイクロソフトの採用面接がユニークであることは、「ビル・ゲイツの面接試験-富士山をどう動かしますか」というで一時話題になった。もちろん、私自身もマイクロソフト社で面接官として数え切れないほどのエンジニアの面接を担当し、自分なりに工夫して作り出した試験問題を幾つも用意していた。今日は、その一つを披露して、得意のうんちくを展開しよう。 [問題] 二次元座標上に、それぞれの辺がX軸・Y軸と平行に置かれた長方形Aと長方形Bがあるとする。その時、長方形Aと長方形Bが一部でも重なるかどうかを判断する条件式を書け。フォーマットは、CやJavaなどのコンピューター言語でも良し、単なる数式でも良い。制限時間は30分。ただし、考えていることを声に出し、ホワイト・ボードを使って自分の考えのプロセスを説明しながら解くこと。 もし、これからプロのソフトウェア・エンジニアを目指そうという理科系の学生がこのブログを

  • 1