【初心者】スレを立てる前にココで質問を【Part25】at GAMEDEV
【初心者】スレを立てる前にココで質問を【Part25】 - 暇つぶし2ch95:名前は開発中のものです。
13/04/07 07:01:31.52 CtpA13/I
rot = 45 // 仰角 左下原点
xn, yn  // 砲台、目標の画面座標
dx, dy  // 砲台の向きとパワー 左下原点   ←これが砲弾の初期ベクトルと一致すると思ったのがそもそもの間違いでした。

引数(rot, x0, y0, x1, y1, var dx, var dy)

// 初期値
g = 400
dt = 0.05    // 画面座標を g * dt するとほぼ砲台ベクトルになる
PI = 3.14159

// 計算
rot = (-1) * signum(x1 - x0) * (90 - rot) - 90

rad = rot * PI / 180 // 角度からラジアンに変換
subx = x1 - x0    // x方向のターゲットとの距離
suby = y1 - y0    // y方向のターゲットとの距離
suby = (-1) * suby  // 座標変換

// 画面座標を砲台比率に調整
subx2 = 80 + subx * 1.3 - sqrt(subx * subx * 0.4)    // x軸上でほぼ当たる
suby = suby * (subx2 / subx)
subx = subx2

// 到着時間(フレーム数)を求める (サンプルのまま)
t = (-1) * (2 * subx * sin(rad)) / (cos(rad) * g * dt) + (2 * suby / (g * dt))
t = sqrt(abs(t))

dx = subx / t             // x方向の移動量を求める
dy = dx / cos(rad) * sin(rad)    // y方向の移動量を求める


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch