ベクトルを回転させるには以下のような変換を行います。(2次元)\\ https://ja.wikipedia.org/wiki/%E5%9B%9E%E8%BB%A2%E8%A1%8C%E5%88%97 ある座標系で、あるベクトル$\vec{v}(v_x, v_y)$を原点を中心に、$\theta$ラジアン回転させる。\\ 回転の式は、以下の様になる。(行列を使わないバージョン)\\ \\ $ \begin{eqnarray} \left\{ \begin{array}{l} x\prime = cos\theta \cdot x - sin\theta \cdot y \\ y\prime = sin\theta \cdot x + cos\theta \cdot y \\ \end{array} \right. \end{eqnarray} $ \\ これをベースに、Siv3Dをつかって基準になるベクトルv(0,-1)を回転させるプログラムを作ろう。\\ ます、基準になるベクトルを回転させる関数をつくります。\\ (sin, cosの角度の単位はradianであることに注意!)\\ Vec2 RotateVec(Vec2 _v, double angle);//こっちはアングル(digree) これを使って回転させたベクトルを表示してみよう。\\ 表示部分がこんな感じになれば素敵だと思います。\\ while (System::Update()) { Vec2 vd = rotateVec(v, angle); DrawVec(vd); //右クリックしている間1度ずつ+方向に回す if (MouseR.pressed()) { angle += 1; } //左クリックしている間1度ずつー方向に回す if (MouseL.pressed()) { angle -= 1; } }