Permettez-moi de décrire le "champ de bataille" de ma tâche:rendu de texte avec Direct3D
- audio/vidéo multi-chat room avec plus de 1M utilisateurs;
- Convertisseur Direct3D personnalisé;
Ce que j'ai besoin de mettre en œuvre est une fonctionnalité TextOverVideo. Le texte lui-même passe par le réseau et doit être rendu du côté du destinataire avec le rendu Direct3D. AFAIK, il est couramment utilisé dans le développement de jeux pour créer votre propre texture avec des lettres/chiffres et dessiner ces éléments. Parce que notre application doit supporter de nombreuses langues, nous devrions utiliser une norme. C'est pourquoi j'ai travaillé avec l'interface ID3DXFont mais j'ai découvert quelques limitations insatisfaites.
Ce que j'ai rencontré est un manque d'évolutivité. Par exemple. si l'utilisateur redimensionne la fenêtre vidéo, je dois recréer D3DXFont avec le nouveau D3DXFONT_DESC pendant qu'il fait cela. Je pense que c'est inacceptable. C'est pourquoi la seule solution que je vois (en raison de mes compétences) est en quelque sorte rendre le texte à une texture et donc dessiner sprite avec mise à l'échelle, traduction, etc
Donc, je ne suis pas sûr si je vais dans le bon direction. S'il vous plaît aider avec des conseils, de l'expérience, de la littérature, des sources ...
Merci beaucoup pour votre réponse! "Inacceptable" - Je voulais dire que créer D3DXFont demande beaucoup de ressources et que les performances sont cruciales pour notre logiciel. Mais si je vous ai bien compris, les solutions possibles numéro 2 et 3 sont encore plus mauvaises. ID3DXRenderTarget-oui, j'ai pensé à ça comme ça. Mais je ne pourrais pas trouver assez d'exemples de comment l'utiliser. Ce dont j'avais peur - c'est que quelqu'un me disait "Hey, N'utilisez PAS D3DXFont! Ses performances sont les pires! ID3DXRenderTarget EST la solution!" Dites-moi s'il vous plaît, devrais-je passer à l'approche D3DXFont ou approfondir la technique ID3DXRenderTarget? – Dalamber
@Anton: J'ai mis à jour ma réponse. – SigTerm
Merci encore! J'apprécierais si vous pouvez me donner un exemple de comment rendre ID3DXFont à une texture. * SCRATCH * Trop peu d'informations sur ID3DXRenderTarget. Merci d'avance! Btw, j'ai essayé de recréer la police dynamiquement pendant le redimensionnement et oui - l'utilisation du processeur pendant le redimensionnement est relativement élevé. – Dalamber