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

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

11

08.10.2008, 18:59

Für deine Zwecke sollte GGO_METRICS reichen. Und die Matrix braucht natürlich noch Werte.

Zitat


Ich hab's mit "GetCharWidth" gemacht, klingt ja irgend wie auch logisch oder?! Wink


wglUseFontBitmap verwendet allerdings GetGlyphOutline! :p
@D13_Dreinig

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

12

10.10.2008, 18:32

Noch mal ne' Frage zu den Bitmap-ed Fonts:

wenn der Ursprungspunkt der zu zeichnenden Textes auserhalb des Bildschirms liegt wird der Text nicht mehr angezeigt.
Warum ist das so und wie kann man es verhindern?

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

13

10.10.2008, 18:35

Wieso sollte man etwas anzeigen was außerhalb der Anzeigefläche liegt?
@D13_Dreinig

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

14

10.10.2008, 18:50

Na ganz einfach: schau dir doch mal den Bildschormschoner von Windows an in dem man einen eigenen Text angeben kann.
Da bewegt sich der Text von links nach rechts und erscheind nicht erst wenn der Ursprungspunkt auch im Bildschirm ist ;)

Also mit Ursprungspunkt des Textes meine ich die linke Seite an dem der Text beginnt.

Etwa so:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
Bildschirm
------------------
|                |
|                |
| *TEXT          |
|                |
|                |
|                |
------------------

* soll der Ursprungspunkt sein
(wenn der auserhalb des Bildschirms ist verschwindet der Text - blöd oder?)

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

15

10.10.2008, 23:05

Achso, das ist richtig. Der Trick is zuerst eine Rasterposition innerhalb des Vieports zu setzen und dann mit glBitmap an die korrekte Position zu verschieben:

C-/C++-Quelltext

1
2
3
glRasterPos2i( 0, 0 );
glBitmap( 0, 0, 0, 0, -10, -10, NULL ); 
Print( "Hallo" );
@D13_Dreinig

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

16

11.10.2008, 12:06

Cool danke :D
Funktioniert jetzt!

Allerdings habe ich nur noch ein einziges Problem mit den Fonts (ich vermuuute dass das was mit den Bitmaps zu tun hat)
Und zwat wird der Font nicht angezeigt wenn ich eine Texture zuvor geladen habe und danach erst den Font.
Liegt das an irgend welchen Texture- Parameter Einstellungen oder Eigenschaften?

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

17

11.10.2008, 12:37

Also wenn ich meine Texturen mit

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);

erstelle, und nicht mit den MipMapping Eigenschaften:

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR_MIPMAP_LINEAR);

dann ist der Font zu sehen, aber wenn ich MipMapping verwende ist der Font nicht zu sehen :?

Ich hab' auch schon versucht die MipMapp Eigenschaften wieder auszuschalten aber das will mir aus irgend einem Grund nicht gelingen:

glEnable(GL_TEXTURE_2D);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);

Das scheint nichts zu nutzen ?!

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

18

11.10.2008, 13:07

Vermutlich hat der Font einfach keine Mipmaps?
@D13_Dreinig

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

19

11.10.2008, 13:44

ja, schon klar. Aber warum lässt sich das Mipmapping nicht richtig deaktivieren?

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

20

11.10.2008, 14:01

Fragen über fragen. Schalt sie doch garnicht erst an! ;)
@D13_Dreinig

Werbeanzeige