ページ 11

ChangeFont関数が重いです。

Posted: 2013年3月21日(木) 20:06
by ブレトン
はじめまして、最近DXライブラリをさわり始めました。
C言語初心者で、まだ色々検証している段階です。(2Dの画像表示のテストで8000個、星(の画像)を降らせるとかやってましたw)

さて、本題なのですが、
メインループで複数のフォントを使用したいのですが、
色々試した結果、メインループ内でChangeFont関数を入れると急激に重たくなることが分かりました。

// メインループ
while( ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 && CheckHitKey( KEY_INPUT_F4 ) == 0 )
{
ChangeFont( "MS ゴシック" ) ;
DrawFormatString( 100, 200, Color, "MS ゴシック" ) ;

ChangeFont( "メイリオ" ) ;
DrawFormatString( 100, 300, Color, "メイリオ" ) ;
}

1回の描画で複数のフォントを表示しても動作が重くならない方法が思いつきません。
どうか助言を助言をお願いいたします。

Re: ChangeFont関数が重いです。

Posted: 2013年3月21日(木) 21:30
by h2so5
CreateFontToHandleを使用してください。
http://homepage2.nifty.com/natupaji/DxL ... tml#R17N10

Re: ChangeFont関数が重いです。

Posted: 2013年3月21日(木) 22:42
by ブレトン
返信ありがとうございます!
別の関数があるとは思いませんでした・・・完全に見落としていました。