Skip to main content
GameDev.net gamedev.net
🔒 Locked

FW1FontWrapper kills fps

Started by noatom Oct 7, 2012 at 3:22 PM 1 replies 2.8k views
Original Post
noatom
noatom
So I decided to use FW1FontWrapper for showing some text in my small game.

The function:

[source lang="cpp"]void drawText(ID3D11Device *pDevice, ID3D11DeviceContext *pContext) {
IFW1Factory *pFW1Factory;
HRESULT hResult = FW1CreateFactory(FW1_VERSION, &pFW1Factory);

IFW1FontWrapper *pFontWrapper;
hResult = pFW1Factory->CreateFontWrapper(pDevice, L"Arial", &pFontWrapper);

pFontWrapper->DrawString(
pContext,
L"Text",// String
12.0f,// Font size
100.0f,// X position
50.0f,// Y position
0xff0099ff,// Text color, 0xAaBbGgRr
0// Flags
);

pFontWrapper->Release();
pFW1Factory->Release();
}[/source]


That function gets called every time a frame is being draw!

My game usually runs at 300+ fps,with that function being called every time a frame is being draw it gets down to 3-4FPS!

Any solution?
kunos
kunos
very easy.. do not create the wrapper in every call, just create when the application starts and get rid of it when you close it.

You are not creating a DX device at every frame arent you? Why would you do that with the font wrapper?
noatom
noatom
damn...that was a very dumb question wasn't it? Anyway,works,thx biggrin.png 300 fps are normal...

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.