[過去ログ] Delphiゲームプログラミング相談室 (976レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
280(1): 272@眠 [sage] 03/05/18 05:59 ID:GM64wXCS(1/2) AAS
>>270 >>275275(2): 268 [sage] 03/05/18 00:57 ID:RcPQLtqQ(1) AAS
4分割は新鮮でしたが、
(0,0)-(1,3) が 5 になるのですけど。
x0 = 0;
y0 = 0;
x1 = 1;
y1 = 3;
xq0 = 0;
yq0 = 0;
xq1 := (1 * 2) + (3 mod 2) = 3;
yq1 := 3 * 2 = 6;
xlen := Abs(3)+1 = 4;
ylen := Abs(6)+1 = 7;
hexlen := Sqrt(4*4 + 7*7) / 2 + 1 = 5.03;
昔のソース見たら、やはり Sqrt を使った >>274274(1): 272 [sage] 03/05/17 16:16 ID:LhaqdzNz(4/4) AAS
>>272 また訂正。 何やってるんだ俺は……。(恥)
xq0 := (x0 * 2)+(y0 mod 2); yq0 := y0 * 2;
xq1 := (x1 * 2)+(y1 mod 2); yq1 := y1 * 2;
xlen := Abs(xq1-xq0)+1; ylen := Abs(yq1-yq0)+1;
hexlen := Sqrt( xlen*xlen + ylen*ylen ) / 2 + 1;
の方法だった…。
よく、動いていたな〜。 この直線距離は単なる目安だったからかも。
それで、やっと”コマを動かす距離”を出せましたわ…。 コレでいいはず。
xlen := Abs(x1-x0); ylen := Abs(y1-y0);
if xlen <= (ylen div 2) then hexlen := ylen
else hexlen := xlen + ylen - (ylen div 2);
0 1 2 3 4
1 2 3 4 5 ← 1つずらしレンガ状の移動距離を…
2 2 3 4 5
3 3 4 5 6
0 1 2 3 4
1 2 3 4 5 ← 整えるとこうなる。
2 2 3 4 5
3 3 4 5 6
281: 272@眠 [sage] 03/05/18 06:05 ID:GM64wXCS(2/2) AAS
>>279279(1): 268 [sage] 03/05/18 05:00 ID:enzpE3WK(1) AAS
>>277
移動させるときはリアルタイムストラテジースレにあるA*アルゴリズムを考えています。
なんか、ちんぷんかんぷん。
654444456
543333456
543222345
432112345
432101234
432112345
543222345
543333456
654444456
654444456
543333456
543222345
432112345
432101234
432112345
543222345
543333456
654444456
経路探索は、ちゃんとやっていたんですけどね。(笑)
ちゃんと消費移動量出して。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.038s