Bonjour,
Je commence à regarder un peu comment fonctionne l'affichage de texte sous Directx 9. J'ai trouvé dans des bouquins de très bonne explication mais une chose me reste en suspend.
Je désire afficher donc un simple "hello world!".
Voici donc ce que je fais:
1- Création du font :
2- Affichage du texte
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 D3DXCreateFont( g_pD3DDevice, 20, 0, FW_BOLD, 1, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, "Arial", &g_pFont ) ) )
Et donc mon problème est simple, le texte ne s'affiche pas sauf si je mets le flag DT_NOCLIP comme dans le code que je viens de donner. Si je met tout autre chose comme DT_SINGLELINE. Je ne comprend vraiment pas pourquoi. Dans le SDK il dise que DT_NOCLIP dessine sans clipping. Comment puis-je faire pour afficher avec?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 g_pD3DDevice->BeginScene(); // Rendering of scene objects happens here g_pFont->DrawText( NULL, "Hello world!", -1, &rc, DT_NOCLIP, D3DXCOLOR( 1.0f, 1.0f, 0.0f, 1.0f ) ); // End the scene g_pD3DDevice->EndScene();
Merci







Répondre avec citation
Partager