Ich hab eine Sphere und muss da ringsrum Text ausgeben.
Nun hängt der Text, der links neben der Sphere steht, also auf -x Achse immer in die
Sphere hinein.
Was kann man da machen ?
Kann man Text direkt an die Sphere anpassen, also das der immer direkt drauf liegt ?
Oder kann man den irgendwie so darstellen das er nicht hineinhängt ?
Registriert: Di Sep 06, 2005 18:34 Beiträge: 362 Wohnort: Hamburg
Hi ...
Da fallen mir 2 Wege ein ...
1. du berechnest die Länge des Textes in Koordinaten
2. du schreibst deinen Text von rechts nach links (was aber wohl nicht so schön sein dürfte)
Implementierung von 1 dürfte nicht all zu schwer sein.
Vorausgesetzt jedes Zeichen hat die gleiche Breite kannst du Breite * Textlänge nehmen und deine x-Koordinate entsprechend verschieben ...
Eine automatisierte möglichkeit wird es wohl nicht geben ...
Gruß
Shai
_________________ Der Mensch hat neben dem Trieb der Fortpflanzung und dem zu essen und zu trinken zwei Leidenschaften: Krach zu machen und nicht zuzuhören. (Kurt Tucholsky)
Schwabbeldiwapp, hier kommt die Grütze. (Der Quästor)
1. ist eine gute Idee, aber ich glaub nicht das das so einfach geht, denn meine "Erde" dreht sich ja ....hmmm, also ist ja Links in dem fall nicht immer links, also eine bestimmte Koordinate
Registriert: Di Sep 06, 2005 18:34 Beiträge: 362 Wohnort: Hamburg
dreht sich der text genau mit der Sphere mit? d.h. ist immer an einem best. Punkt auf der Sphere gehäftet?
dann kannste evtl. was mit der normalen machen um den Text auszurichten
normale = Punkt - Mittelpunkt
Mit dem Skalarprodukt zw. Normale und Sichtvektor müsste das gehen
z.B. sowas:
Code:
if (x < 0) // linke seite
x = x - Textlänge * (1 - Normale * Sichtvektor)
else
x = x + Textlänge * ( 1 - Normale * Sichtvektor)
Das wäre n Ansatz der mit jetzt auf die Schnelle einfällt ...
Gruß
Shai
_________________ Der Mensch hat neben dem Trieb der Fortpflanzung und dem zu essen und zu trinken zwei Leidenschaften: Krach zu machen und nicht zuzuhören. (Kurt Tucholsky)
Schwabbeldiwapp, hier kommt die Grütze. (Der Quästor)
he prima, das funktioniert.
Zwar nicht ganz so wie Du es vorgeschlagen hast, aber so ähnlich.
Hab einfach alles was "links" erstellt wird ( unterscheidung anhand der Longitude)
weiter rausgesetzt.
Jetzt hab ich noch ne andere Frage.
Ich mach aber lieber ein neues Thema, denn das hat hiermit nichts zu tun.
ja benutze ich immer noch.
Ich habs noch nicht hinbekommen diese anderen Texturen zu erstellen und zu benutzen.
Bin noch auf der Suche nach einem Beispiel oder so.
Es wird zwar alles erklärt in der Wiki, aber ich weiss wiedermal nicht wie
das ganze der Reihe nach gehen soll.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Habe dazu auch mal ein Programm und eine Unit geschrieben. Diese benutzt praktischerweise für die Texturen auch die glBitmap. Allerdings bin ich derzeit auch dabei das ganze neu zu schrieben.
In der Unit sind auch Klassen enthalten um Polygon und BitmapFonts zu erstellen. Code sieht in etwa so aus.
Die Textur ist deswegen eine getrennte Instanz, da man sich zum Beispiel eine Textur mit einer GUITexture mischen kann und nicht ständig hin und her wechseln muss. Oder zwei bis vier Schriftarten in einer Textur haben kann.
Ach ja. Je nachdem ob du weiche oder Harte Kanten bei deiner Textur haben willst kannst du auch sagen UseBlendFunc := True oder UseAlphaFunc := True. Stehen aber beide standard auf False und du kannst das auch außerhalb setzen.
PS: Das Laden und Frei geben von dem Spaß sollte auch nur einmal am Anfang und am Ende der Anwendung sein. Also nicht ständig neu erstellen.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Das Erstellen kommt bei dir in InitTextures oder so etwas was zum Anfang aufgerufen wird. Die Settings können solche Dinge sein wie Filter oder MipMaps. Wobei ich MipMaps wahrscheinlich auf jeden Fall ausstellen würde.
Kannst Du mir mal ne Schritt für Schritt Anleitung geben wie das mit dem
Text gehen soll ?
Ich hab deinen Font Creator genommen und hab jetzt ne Datei namens Tahoma.tga und Tahoma.ini im Projektverzeichnis liegen und nun ?
Was brauch ich für Variablen ( gloabal ? ) ?
Wie genau erstelle ich die Font und wie gebe ich die aus ?
Bei meinem letzten Versuch war plötzlich meine Sphere ohne Texturen oder so.
Keine Ahnung ob die überhaupt noch da war ?
Das scheint immer zu passieren wenn ich in den glOrtho mode schalte.
ich hab keine Ahnung, da musste Lossy eX fragen.
Mir gehts nur darum das die Buchstaben nnicht mehr in meiner Sphere verschwinden wenn die Links davon stehen.
Anderer seits gehts mir ja auch um den lerneffekt.
Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.