Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

28.07.2010, 20:17

DirectX9 - Schrift rendern

Guten Tag allerseits,

ich benötige einen kleinen Denkanstoß beim rendern von Texten in Direct3D 9.
Ich verzweifle nun fast schon seit 1 Woche daran.
D3DXFont will ich nicht benutzen, da in meinem Framework alles von Grund auf neu geschrieben wurde
und es mir um den Lerneffekt geht.

Meine Probleme:
- Was soll man benutzen, Bitmap- oder TrueType Fonts?
- Wie geht man an die Sache ran?
- Man soll die Strings transformieren können, ist das möglich?

Es ist alles in 2D!

2

28.07.2010, 20:38

Bitmapfonts sind Wesentlich einfacher zu benutzen, da TrueType wesentlich Komplizierter is.
Bei Bitmapfonts ist ein Ansatz, die Bitmap und die Offsets der einzelnen Zeichen zu Speichern. Wo liegt dein Problem beim Transformieren.
Ansonsten kannste mich auch in icq adden, mir isses sowieso langweilig.

3

28.07.2010, 22:05

Wie wärs, wenn du mit Bitmap anfängst und später auf TTF umschwenkst oder beides unterstützt?
Bei Bitmapfonts hast du ein Bild auf dem alle Buchstaben drauf sind. Einer Tilemap eigentlich garnicht so unähnlich. Musst nur für jeden Buchstaben noch die Breite speichern oder errechnen.

String transformieren? In welcher hinsicht? Rotieren, skalieren? Warum sollte es nicht möglich sein? ;)

Bitmapfonts sind Wesentlich einfacher zu benutzen, da TrueType wesentlich Komplizierter is.

Was für eine herrliche Aussage. Die musste ich einfach mal zitieren :D

idontknow

unregistriert

4

28.07.2010, 22:13

@Batzer: Naja mit der Verwendung von D3DXCreateTexturFromFileEx schreibst du streng genommen nicht mehr alles von grund auf selber! :). Könnte mir vorstellen, dass die Lade Funktion von ner Textur auch nicht gerade einfach ist! AUßer natürlich man greift wieder auf irgend ne Lib zu.....

5

28.07.2010, 22:36

Ja da hast du wohl Recht :D
Meinte natürlich alles außer das Laden von Texturen, Sounds :P
Eben das Rendern usw.
Habe ja anstatt D3DXSprite zu verwenden auch meine eigene Klasse geschrieben und das wollte ich auch bei den Fonts machen.

@Topic
Haben eigl. bei TTF´s z.B. das "i" immer die gleiche Breite oder muss ich die ausrechnen?
Wnn ja wie? :P
Wollte nämlich die Buchstaben-Anordnung wie bei den TrueTypes machen.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von ».:!Batzer!:.« (28.07.2010, 22:54)


6

28.07.2010, 22:54

http://www.codehead.co.uk/cbfg/
Ich kann dir das empfehlen. Wenn du die Fonts als BFF speicherst, kannst du sie relativ leicht laden. Wie das geht wird in der Help-Datei erklärt.

Hier hab ich ein wenig damit rumgespielt
stɪl traɪ tuː θɪŋk ˈpɒzətɪv

7

29.07.2010, 21:50

Danke für den Link Wollnashorn :)

Ich habe mich entschieden ein eigenes Font Format auszudenken, dazu eine Frage.
Ist es möglich Bilddatein wie z.B. eine PNG datei und die Informationen zu dem Font zusammen in eine einzige Datei zu speichern?

idontknow

unregistriert

8

29.07.2010, 21:54

Theoretisch ja, aber aus der Datei musst dud ann die Bilddatei auslesen und aus den Daten eben das "Bild" generieren. Wäre dann z.b. nen typischer Fall für virtuelle Dateien. Also keine Datei wie du vllt denkst :).

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

9

29.07.2010, 21:54

Ist es möglich Bilddatein wie z.B. eine PNG datei und die Informationen zu dem Font zusammen in eine einzige Datei zu speichern?

Natürlich. Du musst es dann einfach selbst machen.

CBenni::O

1x Contest-Sieger

Beiträge: 1 145

Wohnort: Stuttgart

  • Private Nachricht senden

10

29.07.2010, 22:22

Ich würde kein eigenes Format machen, vor allem nicht, wenn du deine engine auch später an andere weitergeben willst.

Wenn, dann musst du einen Converter+Editor mitgeben, dann kannst du aber auch gleich einen TTF-Loader schreiben/aus dem internet laden ;)

mfg CBenni::O
Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.
42!
Aufräumen kann jeder, nur das Genie überblickt das Chaos!
Metal will never die!
1. Sppro Gamecontest - mein Beitrag

Werbeanzeige