ここのサンプルプログラムについて質問があります。
一つ目はActMain関数の中の
// 1/60秒立つまで待つ
while( GetNowCount() - FrameStartTime < 1000 / 60 ){}
// 現在のカウント値を保存
FrameStartTime = GetNowCount() ;
これの意味を教えて欲しいです。
二つ目はCharMove関数の中の
// 先ず上下移動成分だけでチェック
{
// 左下のチェック、もしブロックの上辺に着いていたら落下を止める
if( MapHitCheck( *X - hsize, *Y + hsize, &Dummy, &MoveY ) == 3 ) *DownSP = 0.0F ;
// 右下のチェック、もしブロックの上辺に着いていたら落下を止める
if( MapHitCheck( *X + hsize, *Y + hsize, &Dummy, &MoveY ) == 3 ) *DownSP = 0.0F ;
// 左上のチェック、もしブロックの下辺に当たっていたら落下させる
if( MapHitCheck( *X - hsize, *Y - hsize, &Dummy, &MoveY ) == 4 ) *DownSP *= -1.0F ;
// 右上のチェック、もしブロックの下辺に当たっていたら落下させる
if( MapHitCheck( *X + hsize, *Y - hsize, &Dummy, &MoveY ) == 4 ) *DownSP *= -1.0F ;
// 上下移動成分を加算
*Y += MoveY ;
}