隠蔽がきつい
情報あつめましょう
探検
HSPで3Dゲーム 【hgimg3編】
■ このスレッドは過去ログ倉庫に格納されています
1名前は開発中のものです。
2012/01/28(土) 17:15:55.46ID:Khp0Nc8u2名前は開発中のものです。
2012/01/28(土) 20:06:50.77ID:Khp0Nc8u hgimg3を触っててわからないのがベクトル関連の命令
fvaddやfvdirなんだけど
fvaddとaddposはどう違うんでしょう?
fvaddやfvdirなんだけど
fvaddとaddposはどう違うんでしょう?
3名前は開発中のものです。
2012/01/28(土) 20:22:29.83ID:Khp0Nc8u hgimg3製レースゲームあり
http://sakura.hippy.jp/meta/
http://sakura.hippy.jp/meta/
2012/01/29(日) 02:53:12.93ID:lnzgPTRJ
あっちでhgimg3の話題禁止ってワケじゃないんだから
わざわざスレ立てる必要なかったんでは?
わざわざスレ立てる必要なかったんでは?
2012/01/30(月) 09:46:59.89ID:eW4XGt0k
ただでさえ情報少ないんだから、絞り込むのも悪くないのでは
あっちは割と関係ない話ばっかりになっちゃってるし
あっちは割と関係ない話ばっかりになっちゃってるし
6名前は開発中のものです。
2012/01/30(月) 18:19:42.59ID:RgdOj4ba adddirってregobjでOBJ_MOVEモードを指定しないと反応しないよね
addposは何も指定しなくても反応するが…
addposは何も指定しなくても反応するが…
7名前は開発中のものです。
2012/01/30(月) 18:47:08.35ID:RgdOj4ba addplateで地面をつくろうと思ったら垂直なプレートしか表示できないみたいだ
水平につくりたいならモデリングするべきか
水平につくりたいならモデリングするべきか
2012/01/30(月) 19:42:39.16ID:n/Br4+xO
回転行列指定できないのか
9名前は開発中のものです。
2012/01/30(月) 20:18:42.51ID:RgdOj4ba x…右が正
y…下が正
z…手前が正
この座標系なんか変だなw なんでyは上が正でないのか?
y…下が正
z…手前が正
この座標系なんか変だなw なんでyは上が正でないのか?
10名前は開発中のものです。
2012/01/31(火) 08:10:43.02ID:20JLJzd8 カメラの方向に対して垂直に左右に動かしたい
ゲームではお馴染みのキー操作なんだけど以下のようにしてみたけどうまくいかない
ジグザグな動きになってしまう
どうやれば左右に動かせるかな?
getang HGOBJ_CAMERA,x,y,z
addpos HGOBJ_CAMERA,sin(y+90.0),,cos(y+90.0)
ゲームではお馴染みのキー操作なんだけど以下のようにしてみたけどうまくいかない
ジグザグな動きになってしまう
どうやれば左右に動かせるかな?
getang HGOBJ_CAMERA,x,y,z
addpos HGOBJ_CAMERA,sin(y+90.0),,cos(y+90.0)
2012/01/31(火) 13:31:40.40ID:hSEGJqW5
sin,cosには角度をラジアンで指定しなくちゃいけないからじゃないかな?
12名前は開発中のものです。
2012/01/31(火) 16:37:52.21ID:yeuM2bWt なるほどラジアンですか
一周が6.2ぐらいなんですよ
それで
addpos HGOBJ_CAMERA,sin(y+1.5),,cos(y+1.5)
とするとマシにはなったけど左右に動かすとジグザクの動きになる
ずばり90度のラジアンを指定しないとうまくいかないね
ちょっとわからない…
一周が6.2ぐらいなんですよ
それで
addpos HGOBJ_CAMERA,sin(y+1.5),,cos(y+1.5)
とするとマシにはなったけど左右に動かすとジグザクの動きになる
ずばり90度のラジアンを指定しないとうまくいかないね
ちょっとわからない…
2012/01/31(火) 16:41:36.45ID:gI3L3Jlu
3.14 * 2
14名前は開発中のものです。
2012/01/31(火) 16:47:35.75ID:yeuM2bWt 90度はπ/2ラジアンだからだいたい1.57ラジアンということで
addpos HGOBJ_CAMERA,sin(y+1.57),,cos(y+1.57)
とするとうまくいきました
しかしこれで正しいかどうかは疑問
addpos HGOBJ_CAMERA,sin(y+1.57),,cos(y+1.57)
とするとうまくいきました
しかしこれで正しいかどうかは疑問
15名前は開発中のものです。
2012/02/01(水) 04:13:45.79ID:LKAKhn/+ 標準でM_PI,rad2deg(),deg2rad()ってマクロがある
mes M_PI
mes rad2deg(1.57)
mes rad2deg(atan(1,0))
mes deg2rad(90)
mes M_PI
mes rad2deg(1.57)
mes rad2deg(atan(1,0))
mes deg2rad(90)
16名前は開発中のものです。
2012/02/01(水) 05:02:10.29ID:LKAKhn/+ >>6
ん?
adddirは一度設定すれば常に加算される
弾なんかは発射時に設定すればいいだけ
addposは実行時だけだから毎回実行する必要がある
>>7
回転させれば良いだけじゃ?
>>2
fvaddはfv配列に対しての加算命令
addposはオブジャクト座標に対して直接加算する
単に使いどころが違うだけで計算結果は同じはず
fvdirは指定した座標を回転させる命令
#include "hgimg3.as"
fvset fv,0.0,deg2rad(45),0;fvにY軸を45度回転設定
fvdir fv,100,0,0;X方向100を回転してfvに代入
title "X="+fv+" Y="+fv.1+" Z="+fv.2+" 角度="+rad2deg(atan(fv.2,fv))
ん?
adddirは一度設定すれば常に加算される
弾なんかは発射時に設定すればいいだけ
addposは実行時だけだから毎回実行する必要がある
>>7
回転させれば良いだけじゃ?
>>2
fvaddはfv配列に対しての加算命令
addposはオブジャクト座標に対して直接加算する
単に使いどころが違うだけで計算結果は同じはず
fvdirは指定した座標を回転させる命令
#include "hgimg3.as"
fvset fv,0.0,deg2rad(45),0;fvにY軸を45度回転設定
fvdir fv,100,0,0;X方向100を回転してfvに代入
title "X="+fv+" Y="+fv.1+" Z="+fv.2+" 角度="+rad2deg(atan(fv.2,fv))
2012/02/01(水) 11:05:07.92ID:fkrWUMU8
18名前は開発中のものです。
2012/02/01(水) 14:21:16.01ID:LKAKhn/+ >>17
regobj apple,mchr,OBJ_MOVE|OBJ_BORDER;リンゴオブジェ作成、自動移動ON | クリップ範囲有効(setborderで設定した範囲より外れると自動削除)
getpos mychr,x,y,z;プレイヤーキャラから座標を収得
setpos apple,x,y,z;作成したリンゴオブジェにプレイヤーキャラの座標をセット
fvset fv,0,0,0.001*rnd(6282);z軸に0.001*rnd(6282)度(ラジアン単位)セット
//fv=0.0, 0.0, 0.001*rnd(6282) ;と同じ事(実際置き換えても動く)だがHSPは64ビット浮動小数点でDirectx8は32ビット浮動小数点」
//後fv系命令で使われる配列は0〜2じゃなく0〜3の4要素( fv(3)には1.0が強制的に代入される )
fvdir fv, 0, -4, 0;Y方向に-4セット(早い話ベクトル)(Z軸が回転させられたX,Y方向がセットされる)
seldir apple:objsetfv fv;リンゴオブジェのdir設定を選択:fv(上で回転させたベクトルをリンゴオブジェのdirにセット)
//setdir apple, fv.0, fv.1 ,fv.2 ;と同等、実際置き換(ry
setevent apple,ev1 ; イベント設定(ev1にはevent_命令で80フレーム後に透明度0%、Z角度を0.2づつ加算する、80フレーム待つが設定されてる)
>adddirは弾の発射には使えますね
ちょっと言い足りないところがあった
adddirは現在オブジェクトのdirに設定されてる値に加算させる命令だから
重ねて使えば加速してく形になる
regobj apple,mchr,OBJ_MOVE|OBJ_BORDER;リンゴオブジェ作成、自動移動ON | クリップ範囲有効(setborderで設定した範囲より外れると自動削除)
getpos mychr,x,y,z;プレイヤーキャラから座標を収得
setpos apple,x,y,z;作成したリンゴオブジェにプレイヤーキャラの座標をセット
fvset fv,0,0,0.001*rnd(6282);z軸に0.001*rnd(6282)度(ラジアン単位)セット
//fv=0.0, 0.0, 0.001*rnd(6282) ;と同じ事(実際置き換えても動く)だがHSPは64ビット浮動小数点でDirectx8は32ビット浮動小数点」
//後fv系命令で使われる配列は0〜2じゃなく0〜3の4要素( fv(3)には1.0が強制的に代入される )
fvdir fv, 0, -4, 0;Y方向に-4セット(早い話ベクトル)(Z軸が回転させられたX,Y方向がセットされる)
seldir apple:objsetfv fv;リンゴオブジェのdir設定を選択:fv(上で回転させたベクトルをリンゴオブジェのdirにセット)
//setdir apple, fv.0, fv.1 ,fv.2 ;と同等、実際置き換(ry
setevent apple,ev1 ; イベント設定(ev1にはevent_命令で80フレーム後に透明度0%、Z角度を0.2づつ加算する、80フレーム待つが設定されてる)
>adddirは弾の発射には使えますね
ちょっと言い足りないところがあった
adddirは現在オブジェクトのdirに設定されてる値に加算させる命令だから
重ねて使えば加速してく形になる
19名前は開発中のものです。
2012/02/01(水) 14:28:09.54ID:LKAKhn/+ fvdir fv, 0, -4, 0;Y方向に-4セット(早い話ベクトル)(Z軸が回転させられたX,Y方向がセットされる)
ここのfvは入力と出力両方の役目が有る
fvに入ってる角度を元に右側で設定されてる移動量(ベクトル)を回転させる
ここのfvは入力と出力両方の役目が有る
fvに入ってる角度を元に右側で設定されてる移動量(ベクトル)を回転させる
2012/02/01(水) 17:55:13.64ID:EsqbMXNK
fvdir fv, -4, 0, 0としても同じになりますよね
単にこのx,yは速度じゃないのかなと…
単にこのx,yは速度じゃないのかなと…
21名前は開発中のものです。
2012/02/01(水) 18:09:58.69ID:LKAKhn/+ 同じじゃない
fvdir fv, -4, 0, 0
ならX方向に-4
ただサンプルのはランダム方向に回転してるから見た目じゃ違いが分からないだけ
fvset fv,0,0,0.001*rnd(6282) を
fvset fv,0,0,0
にして実行してみれば違いが分かる
fvdir fv, -4, 0, 0
ならX方向に-4
ただサンプルのはランダム方向に回転してるから見た目じゃ違いが分からないだけ
fvset fv,0,0,0.001*rnd(6282) を
fvset fv,0,0,0
にして実行してみれば違いが分かる
2012/02/01(水) 18:43:13.01ID:EsqbMXNK
やってみるとわかりました
fvset fv,0,0,0.001*rnd(6282)でzにセットしたラジアン値で
fvdir fv, 0, -4, 0に反映されるというのがわかりにくい
fvset fv,0,0,0.001*rnd(6282)でzにセットしたラジアン値で
fvdir fv, 0, -4, 0に反映されるというのがわかりにくい
2012/02/04(土) 11:39:59.47ID:WQ1CSaRD
ミサイル発射やってみたんですがどうもうまくいかない
はじめの数発だけは正常に動くけど何回もやると初期位置がおかしくなって動きがおかしくなる
次の弾を発射させるときにadddirを終わらせる必要があるんでしょうね
弾のオブジェクトを消滅させるとか
弾の発生のときにregobjして弾が一定距離を飛んだらdelobjって感じ
はじめの数発だけは正常に動くけど何回もやると初期位置がおかしくなって動きがおかしくなる
次の弾を発射させるときにadddirを終わらせる必要があるんでしょうね
弾のオブジェクトを消滅させるとか
弾の発生のときにregobjして弾が一定距離を飛んだらdelobjって感じ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【台湾有事】トランプ氏 電話会談で高市総理に発言抑制を要求か 米メディア報道… ★10 [BFU★]
- 経済誌元編集長「石破氏がコメ増産したからコメが余りまくってるどうしてくれるんだ」高市総理は悪夢の石破政権の尻ぬぐいしてる [バイト歴50年★]
- 中国、日本渡航に再警告 「侮辱や暴行で複数の負傷報告」 [ぐれ★]
- 英検、6級と7級新設へ 基礎レベルの学習に対応 [少考さん★]
- 【インバウンド】香港から大型クルーズ船寄港「日本は安全で楽しい」「人数が少ないと私たちがもっと楽しめる」鳥取県境港 [1ゲットロボ★]
- 【足立暴走男の母親が涙の謝罪】「医師から運転を止められていた」母が語った事件の背景 男は数年前から統合失調症 最近薬を変え… [ぐれ★]
- 【高市速報】トランプ大統領「これ以上日中の対立をエスカレートさせるな」 [931948549]
- VIPでウマ娘
- おさかなさんあつまれえ
- トランプ、高市首相との電話協議で『日中対立「沈静化の必要性」に言及』首相の国会答弁を支持する発言なし [256556981]
- 【悲報】BSフジ・プライムニュースに絶賛出演中の櫻井よしこ女史、高市礼賛で好き勝手言いまくる [126042664]
- 愛のままにわがままに👶は👶🏿だけを傷つけないお🏡
