回転はちょっと難しく感じます。が、数式で表すには、質点の移動の式(ニュートンの運動方程式)と同じ形で表すことができます。オイラーの運動方程式と呼ばれるものです。 回転の運動とは、どんな量であらわされるのか。質点の移動と対応させてみます。
クォータニオンとは クォータニオンとは、一体、なんでしょう? 数学的には、結構、難しいんですが、 Easy3Dを使う皆さんは、そんなことを勉強する必要はありません。 姿勢情報 (回転情報)を格納できる便利なもの、 とくらいに、考えておいてください。 これは、キャラクターや、ボーンに、複雑な姿勢を設定する際に、 とても便利なものなのです。 キャラクターの向きを制御する、実際の手順は、 クォータニオンに、向きたい向きを設定して、 それを、キャラクターの向きとして指定する、ということになります。 以下では、クォータニオンに、どのように向きを設定するかを説明します。 クォータニオンに、向きを設定するやり方は、 大きく分けて、2種類あります。 まず1種類目は、 向きたいベクトルを指定する方法です。 これは、非常に簡単です。 ただ、キャラクターを向かせたい方向を持って
math3d3次元/4次元ベクトルと3×3/4×4の行列、クォータニオン等が用意された3D計算を行う為のC++ライブラリ。 でも、ちょっとメソッドが足りていないような。。。 クォータニオンを作る時に omega = -0.5f * angle とやっていて回転方向が逆になっているのでちょっと注意。 sin(-x) = -sin(x), sin(π/2-x) = cos(x), sin(π-x) = sin(x), cos(-x) = cos(x), cos(π/2-x) = sin(x), cos(π-x) = -cos(x), sin(π/2+x) = cos(x), sin(π+x) = -sin(x), cos(π/2+x) = -sin(x), cos(π+x) = -cos(x), sin(x)^2 + cos(x)^2 = 1
using System; using System.Collections.Generic; using System.Diagnostics; using System.Drawing; using System.Text; using System.Windows.Forms; using Microsoft.DirectX; using Microsoft.DirectX.Direct3D; namespace MDXSample { /// <summary> /// メインサンプルクラス /// </summary> public partial class MainSample : IDisposable { /// <summary> /// ティーポットメッシュ /// </summary> private Mesh _mesh = null; /// <summary>
日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。
今までにあった質問 かなり以前,「『視点を移動するのではなく,物体をぐるぐる回す方法は?』に書いてある方法では思ったとおり回転できない」という指摘を受けました. 確かにそのとおりなんですが,もとより「手抜き」の方法ですし(言い訳),まともな方法が GLUT のサンプルなどに含まれている trackball.c や「宇治社中」さんあたりにあると思ってたんで,そのままにしてました.でも,自分が作っているもので使ってみて思ったとおり回転できないことがあるのはやっぱり面白くなかったので,ひとつまじめに考えてみました. クォータニオンを使ってみる 変換(行列)を累積的に合成するなんてことをするとロクな目にあわない気がしたので,ああいう手を抜いた実装になってたんですが,オブジェクトの「今見えている状態」に対してさらに回転を加えようと思えば,やはり避けて通ることはできません.そこで,回転をクォータニオン
無名の遺跡15 建物が解体された土地を訪れると、時々、塀やコンクリートの基礎などが撤去されずに放置されているのを見かける。 このような過去の痕跡が残されている空き地を、本ブログでは"無名の遺跡"と呼んでいる。 無名の遺跡が生み出される原因の多くは、解体や撤去費用を抑え…
★このページの対象読者 三次元での回転を、CGとかで定量的に取り扱いたい人 オイラー角(Euler Angles)を使っていたら、わけがわからなくなってきた人 カルダン角とオイラー角(Cardan Angles)の見分けが付かない人 ジンバルロックに困っている人 だけど、数学とかメンドクサイことが嫌いな人 サンプルプログラムが欲しい人 ★回転篇: 四元数(しげんすう, quaternion)を使った回転の取り扱い手順だけ説明します (1)四元数の実部と虚部と書き方 四元数とは、4つの実数を組み合わせたものです。 4つの要素のうち、ひとつは実部、残り3つは虚部です。 たとえば、Qという四元数が、実部 t で虚部が x, y, z から成り立っているとき、下のように書きます。 また、V = (x, y, z)というベクトルを使って、 Q = (t; V) とも書くことがあります。 正統的
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く