[過去ログ]
親父PGがゲームを作り始めるスレッド (668レス)
親父PGがゲームを作り始めるスレッド http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
13: 親父PG [] 04/03/30 12:47 ID: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 } } 私が自作した部分ですが、サンプルのソースに試行錯誤を繰り返しこのような形になりました。 http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/13
17: 名前は開発中のものです。 [sage] 04/03/30 13:41 ID:kPTgeVBo >>13のサンプルにちょっとだけ指摘 QueryPerformanceCounterで取ってきた値を1/1000msecとして扱ってるが その値は思いっきり環境依存です 環境によってはバグります あと、LARGE_INTEGERのLowPartのみ比較はやめたほうがいいです QueryPerformanceCounterから取得した値がなぜ64bit値なのか考えましょ あえて荒らしにも反応しとくけど >>16 この程度読みづらいならおまえの能力が低すぎ http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/17
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.016s