Comment pouvez-vous tirer de texte en DirectX 11?
En DirectX 10, vous pouvez utiliser les polices de l'interface fournie par D3DX10. En DirectX 11, vous êtes supposé utiliser DirectWrite. Mais il semble que DirectWrite ne parle pas nativement pour Direct3D? Est-il quelque chose de base que je suis absent? Comment pouvez-vous tirer de texte simple avec DirectX 11?
OriginalL'auteur Darkenor | 2011-04-18
Vous devez vous connecter pour publier un commentaire.
Édition 2014:
Comme l'a fait remarquer dans un commentaire, le lien de RasterTek tutoriels ne fonctionne plus, voici un lien vers Webarchive de RasterTek fournis par RadioSpace.
Le deuxième point de l'original de la réplique n'est plus valide, car son désormais possible de partager D3D11 backbuffer avec Direct2D et à travers elle de dessiner du texte avec DirectWrite.
Modifier 2017:
RasterTek est toujours en cours d'exécution: le rendu des polices dans D3D11
je sais à propos de deux optionsfaire votre propre moteur de rendu des polices voir Rastertek DX11 tutoriel
deuxième option concerne directement écrire exige le partage du backbuffer entre d3d11 et d3d10.1 les appareils et l'utilisation de dwrite + d2d + d3d10.1 pour rendre l'interface graphique et l'd3d11 appareil pour le rendu 3d de la géométrie et de les intégrer tous dans le backbuffer voir le post de DieterVW sur ce fil
À ce moment dwrite et d2d ne pas accepter la surface créée avec d3d11 appareil pour le rendu. Mais j'espère que MS va le faire si tôt.chaque fois que je vois ces vieux rastertek liens je pleure. voici un lien vers le webarchive
merci de remarquer que le lien ne fonctionne plus
merci pour la mise à jour de votre réponse, j'ai été à la recherche pour le D3D11/dxWrite des trucs, mais cela m'avait fait mettre sur le dos du brûleur jusqu'à la fin de semaine peut-être pas aussi gênant que précédemment pensé
OriginalL'auteur Zee
J'ai récemment converti une application DirectX 10 sur DirectX 11 et suis tombé sur ce post en cherchant la même réponse. Le Rastertek tutoriel mentionné par Zeela est bon, mais j'ai continué à chercher et a trouvé FW1FontWrapper. Après seulement 30 minutes, je viens de finir de l'intégrer dans mon projet et il semble fonctionner parfaitement. La section de téléchargement fournit les versions x86 et x64 de paquets, y compris l'en-tête, la bibliothèque et les DLL. Je suis juste faire une simple sortie de texte, donc je ne peux pas en dire beaucoup au sujet de l'API, sauf que pour ce que j'ai fait (la sortie d'images par seconde), il a seulement pris environ 5 lignes de code (y compris la création/libérant l'objet wrapper). Basé sur ses échantillons, il semble à fournir beaucoup plus d'options que ce que je suis en utilisant jusqu'à présent.
OriginalL'auteur Tim Coolman
Il y a un
SpriteFont
classe dans le DirectXTK bibliothèque qui peut rendre le texte d'un sous directx11 contexte de périphérique.OriginalL'auteur Daemin
Utilisation DirectWrite , il supporte la haute qualité de rendu de texte, indépendants de la résolution des polices vectorielles, et plein de texte Unicode et la mise en page de soutien.
OriginalL'auteur Faisal