AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia OpenGL undefinierbare zeichen
Thema durchsuchen
Ansicht
Themen-Optionen

OpenGL undefinierbare zeichen

Ein Thema von EWeiss · begonnen am 30. Jun 2012 · letzter Beitrag vom 2. Jul 2012
Antwort Antwort
EWeiss
(Gast)

n/a Beiträge
 
#1

OpenGL undefinierbare zeichen

  Alt 30. Jun 2012, 23:15
Habe das KaraGL Projekt auf Playliste umgestellt.
Erst jetzt habe ich bemerkt das nach dem abspielen des ersten Titel (alles normal) beim zweiten undefinierbare Zeichen auftreten.
Es sieht so aus als wenn hier in der Scenen an x-beliebiger position ein Gleichheitszeichen gezeichnet wird.
Und 1-3 Chars ersetzt.

Ich finde einfach nicht den ansatzpunkt woran das liegen könnte.
Es gibt einen crosspost auf DGL .. da scheint aber niemand einen Rat für mich zu haben.

Vielleicht hatte ja hier schon mal jemand mit einem ähnlichen problem zu kämpfen.
Im anhang kann man mein problem erkennen. Das "=" Zeichen

Es werden alle Arrays diesbezüglich ordnungsgemäß gelöscht hilf aber alles nichts.
Keine Ahnung wo das Teil herkommt.

gruss

Geändert von EWeiss (11. Jul 2019 um 15:41 Uhr)
  Mit Zitat antworten Zitat
Jens01

Registriert seit: 14. Apr 2009
670 Beiträge
 
#2

AW: OpenGL undefinierbare zeichen

  Alt 1. Jul 2012, 12:15
Versuchs mal mit Textsuite. Das ist eigentlich ganz einfach zu verstehen und läuft stabil.
Achtung: Bin kein Informatiker sondern komme vom Bau.
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#3

AW: OpenGL undefinierbare zeichen

  Alt 1. Jul 2012, 15:55
Mir fehlt hier eine wichtige Information:
Wie renderst du den Text denn genau über OGL?
Hab mir dein "KaraGL" gerade angeschaut, da sind ja aber die Sourcen nicht dabei.
Muss ja auch nicht, aber ich denke, da hat sich irgendwo ein ungültiges Zeichen / Index eingeschlichen, der dann als "=" ausgegeben wird, weil die Fontmap "übergelaufen" ist....oder etwas ganz anderes
Kommt ja ganz drauf an, wie du den Text genau renderst.

Geändert von blackfin ( 1. Jul 2012 um 16:08 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

AW: OpenGL undefinierbare zeichen

  Alt 1. Jul 2012, 17:41
@Jens01

Verwende ich ja aber nicht für CallList
habe keine Informationen darübergefunden das es damit funktioniert.

Delphi-Quellcode:
glNewList(ListsgLyrics + cardinal(cnt), GL_COMPILE);
  if (gLyrics[cnt].translatex < 0.0) then
     glTranslated(gLyrics[cnt].translatex, gLyrics[cnt].translatey, 0);

  for charcnt := 0 to Length(s) -1 do
  begin
    temp := copy(s, charcnt + 1, 1);
     tempc := temp[1];
     lineWidth := lineWidth + gmfLyrics[ord(tempc)].gmfCellIncX;
     glCallList(ListsLyricsFont + ord(tempc));
  end;
glEndList;
Wie soll ich hier die einzelnen Chars die an Calllist "ListsLyricsFont" übergeben werden
mit der TextSuite implementieren.?

@blackfin
Ich benutze wglUseFontOutlines und habe dafür extra nochmal ne neue Funktion geschrieben die einen stinknormalen TFont
anstelle CreateFont verwendet.
Delphi-Quellcode:
procedure GenerateFontLists(Face: PWideChar; Styles: TFontStyles;
  out listsID: GLuint; deviation: single; var gmf: GLYPHMETRICSFLOAT);
var
  CustomFont: TFont;

begin

  CustomFont:= TFont.Create();
  CustomFont.Name:= Face;
  CustomFont.Style := Styles;

  SelectObject(h_DC, CustomFont.Handle);
  listsID:= glGenLists(256);

  wglUseFontOutlines(h_DC, 0, 255, listsID, deviation, (Settings.fontDepth / 100),
    WGL_FONT_POLYGONS, @gmf);

   CustomFont.free;
end;
An der erstellung des Fonts dürfte es auch nicht liegen.
Die habe ich alle Durchgeprüft und bei allen das gleiche.

Was ich jedoch festgestellt habe das dieses Zeichen nichts mit "=" zu tun hat.
Denn nach einem Resitz des Freiraums zwischen den Zeilen positioniert sich mein TextBlock
wieder auf die richtige stelle.

Dann wird mir auch der Text angezeigt der eigentlich an der Stelle von "=" sitzt
aber Riesengroß

Siehe Shot

wenn keine lösung gefunden ab in die Tonne

EDIT:
Hat sich erledigt das Thema trotzdem danke für die Ratschläge.

gruss

Geändert von EWeiss (11. Jul 2019 um 15:41 Uhr)
  Mit Zitat antworten Zitat
Jens01

Registriert seit: 14. Apr 2009
670 Beiträge
 
#5

AW: OpenGL undefinierbare zeichen

  Alt 2. Jul 2012, 10:26
Zitat:
Verwende ich ja aber nicht für CallList
Meinen wir dasselbe Textsuite?
Achtung: Bin kein Informatiker sondern komme vom Bau.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: OpenGL undefinierbare zeichen

  Alt 2. Jul 2012, 14:18
Zitat:
Verwende ich ja aber nicht für CallList
Meinen wir dasselbe Textsuite?
Jo!
Ich verwende das schon seit Jahren
Auf Bitmap Fonts ausgelegt.. Und ich verwende Outline für den LiedText
Ausgenommen FPS. Zeit, Misc da wird TextSuite verwendet.

gruss

Geändert von EWeiss ( 2. Jul 2012 um 14:27 Uhr)
  Mit Zitat antworten Zitat
Jens01

Registriert seit: 14. Apr 2009
670 Beiträge
 
#7

AW: OpenGL undefinierbare zeichen

  Alt 2. Jul 2012, 15:50
Ahh.. hatte das anders verstanden..
Achtung: Bin kein Informatiker sondern komme vom Bau.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz