親父PGがゲームを作り始めるスレッドat GAMEDEV
親父PGがゲームを作り始めるスレッド - 暇つぶし2ch13:親父PG
04/03/30 12:47 nbxm21Tx
>>7
偉そうな事を言える立場ではないですが、書き込みの内容を拝見するに 基本的なプログラムの技術をお持ちだと思いますので、ますはSDKサンプルの
ライブラリを見てDIRECTXの初期化とWINSOWSループあたりを見てみると良いのではないでしょうか?
WINDOWSのサンプルは描画速度はマシン速度(環境)に依存しています。
このままでは定期的な処理ができないので、PeekMessage周りを調べて定期的タイマーで特定の処理を呼び出すようなものを作ってみてはどうでしょうか?

while( WM_QUIT != msg.message )
{
if( m_bActive && m_pd3dDevice != NULL ){
 if ( tTake==FALSE ){
  QueryPerformanceCounter( ( LARGE_INTEGER * )&sTIME );//時間計測開始
  FSP60call();//同期して動かすものはここで
 }
 FSP60nonSYNCcall();//何か出来ることあればやってしまおう
}
 th_GetandPeekMessage( NULL );//Peek Message func
 if( bGotMsg!=TRUE ){
  if( m_bDeviceLost ){
   // Yield some CPU time to other processes
   Sleep( 100 ); // 100 milliseconds
}
if( m_bActive && m_pd3dDevice != NULL ){
 if( FAILED( Render3DEnvironment() ) )SendMessage( m_hWnd, WM_CLOSE, 0, 0 );
 QueryPerformanceCounter( ( LARGE_INTEGER * )&eTIME );// 計測終了
 DWORD wTIME;
 wTIME=( DWORD )16666;
 if ( ( eTIME.LowPart - sTIME.LowPart )>wTIME ){
  tTake=FALSE;
 }else {tTake=TRUE;}//endof if
}
}
私が自作した部分ですが、サンプルのソースに試行錯誤を繰り返しこのような形になりました。


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