addmesh命令を使って、地面を作り、そこにオブジェクトを置こうとすると、地面を素通りして、落ちていきます。
#include "hgimg3.as"
xs=640 :ys=480
screen 0,640,480
hgini ; HGIMGの初期化
; 床のモデル作成
;
addmesh m_mesh,32,32,16,160,160
setcolor 129,220,192
regobj obj,mdp1,OBJ_GROUND ;地面モデルをオブジェクトとして登録
;仮のマイキャラ
setsizef 16,16 ; モデルのXYサイズ
addbox m_model ; 立方体モデル登録
setcolor 231,156,082
regobj mychr,m_model,OBJ_MOVE|OBJ_STAND|OBJ_GRAVITY
objfloor mychr,8.0
setpos mychr,0,-50,0
; カメラ(自分)の角度と座標をセット
;
setang HGOBJ_CAMERA,0,0,0
setpos HGOBJ_CAMERA,0,-16,60
gsel 0
*main
hgdraw
hgsync 13
goto *main
</PRE>
サンプルのmeshmap4ですとうまくいくのに、「なぜかな〜」といろいろ調べたら、addmeshのmodeを16にして、テクスチャを分割面に繰り返し張ると、素通りすることがわかりました。
#include "hgimg3.as"
xs=640 :ys=480
screen 0,640,480
hgini ; HGIMGの初期化
; 床のモデル作成
;
addmesh m_mesh,32,32,0,160,160
setcolor 129,220,192
regobj obj,mdp1,OBJ_GROUND ;地面モデルをオブジェクトとして登録
;仮のマイキャラ
setsizef 16,16 ; モデルのXYサイズ
addbox m_model ; 立方体モデル登録
setcolor 231,156,082
regobj mychr,m_model,OBJ_MOVE|OBJ_STAND|OBJ_GRAVITY
objfloor mychr,8.0
setpos mychr,0,-50,0
; カメラ(自分)の角度と座標をセット
;
setang HGOBJ_CAMERA,0,0,0
setpos HGOBJ_CAMERA,0,-16,60
gsel 0
*main
hgdraw
hgsync 13
goto *main
</PRE>
ただ、床の模様を繰り返しでテクスチャを張りたいので、mode16で地面を作ることは、できないのでしょうか?