.[ ČeskéHry.cz ].
Freetype vykresleni textu

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> C / C++
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Standalf



Založen: 29. 01. 2008
Příspěvky: 32
Bydliště: Děčín

PříspěvekZaslal: 27. září 2008, 22:26:40    Předmět: Freetype vykresleni textu Odpovědět s citátem

Ahoj, mam nasledujici problem. Uz driv jsem potreboval pouzit nejaky vykreslovani textu, tak jsem si vzal lekci 43 z NeHe tutorialu, verze LINUX / SDL a jenom pridal ty 2 freetype project soubory a trochu poupravil.

Pak jsem to vesele pouzival a fungovalo to. Tu hru jsem prepisoval do OOP z vice duvodu potrebovala prepsat a vylepsit, ale kdyz tam includuju 2 freetype soubory a pak pouzivam print(...), tak mi to nic nevykresli, ale co je zajimavy ani mi to nehodi chybu... Shocked

Mam dojem, ze nekde mozna zapomenu nejakej klicovej prikaz, ale co se tyce FreeType.h a FreeType.cpp, na nich jsem nic nezmenil.

Nenapada nekoho neco?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
pcmaster



Založen: 28. 07. 2007
Příspěvky: 1827

PříspěvekZaslal: 28. září 2008, 01:30:56    Předmět: Odpovědět s citátem

A normalne ti to nieco vykresli? Myslim pomocou FreeType? Skusal si to debuggovat (spustit ako debug a krokovat, ci ti tam lezu rozumne hodnoty)? Vytvoria sa ti display listy spravne?
_________________
Off-topic flame-war addict since the very beginning. Registered since Oct. 2003!
Interproductum fimi omne est.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Standalf



Založen: 29. 01. 2008
Příspěvky: 32
Bydliště: Děčín

PříspěvekZaslal: 28. září 2008, 08:05:06    Předmět: Odpovědět s citátem

No koukal jsem, co je za hodnoty, ale nevim jestli jsou spravny, protoze jsem se freetype neucil. Pomoci freetype jsem jinak nic nezobrazoval,
ale predtim pouzivam zobrazovani 2D textur. Jasne, ze me napadlo ze by freetype text byl az pod tim, ale kdyz jsem textury odstranil, stene jsem nic nevidel....

Pred pouzitim textu davam jako nastaveni barvy:

glColor3ub(0xff,0xff,0xff);

Tady jsou hodnoty objektu freetype po inicializaci - menu_font.init("arial.ttf", 22):

Name Value Type
kód:

menu_font {h=22.000000 textures=0x089fa398 list_base=0 }   freetype::font_data
{
         h   22.000000   float
+      textures   0x089fa398   unsigned int *
      list_base   0   unsigned int
}

Ve slozenych zavorkach ukazuju co je v jednotlivych clenech struktury.

Problem je v tom, ze tohle neni kod jako takovej, jen vypis sledovani z debuggeru. Klidne to dam do tagu, jestli ti to pomuze vymyslet reseni.


Naposledy upravil Standalf dne 28. září 2008, 10:39:42, celkově upraveno 1 krát
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
rezna



Založen: 27. 07. 2007
Příspěvky: 2156

PříspěvekZaslal: 28. září 2008, 10:06:22    Předmět: Odpovědět s citátem

MODERATOR:
1) je tu tag CODE pro psani kousku zdrojaku
2) pokud chces postnout vic zdrojaku pak http://nopaste.ceske-hry.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 28. září 2008, 17:36:28    Předmět: Odpovědět s citátem

Problém bych viděl v tom, že jsi nastavil nějaké stavy v GL a nevrátil jsi je na defaultní hodnoty. Např. když při kreslení modelu vypneš textury, budou vypnuty i při kreslení textu, tzn. nejde kusy kódu z různých projektů skládat za sebe a doufat, že to bude fungovat. Je potřeba si zjistit, s jakými stavy pracuje NeHe kód a podle toho ho buď přepsat nebo tomu přizpůsobit zbytek projektu. Shadery pak umí některé stavy obejít nebo je ignorují.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Standalf



Založen: 29. 01. 2008
Příspěvky: 32
Bydliště: Děčín

PříspěvekZaslal: 28. září 2008, 18:07:47    Předmět: Odpovědět s citátem

Proc se mam ucit Freetype, kdyz potrebuju vykreslit Ahoj? V tom nevidim logiku. Proste vezmu example, skompiluju a funguje. Teda spis fungovalo mi to v jinym projektu...

Jasne, ze kdyz predtim vykresluju nejaky 2D textury, zkontroluju ty funkce jestli je neprenastavuju... Neco takovyho jsem mel na mysli, jenze jsem nevedel co vsechno bych mel podezrivat...

EDIT: Porovnaval jsem zbezne s projektem, kde to funguje, ale niceho jsem si nevsiml. Zkusim udelat projekt co bude jenom vykreslovat freetype text, pak si snadno vsimnu kde delam chybu.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ladik-BigBoss



Založen: 28. 07. 2007
Příspěvky: 162

PříspěvekZaslal: 28. září 2008, 22:49:30    Předmět: Odpovědět s citátem

ty se nemusis ucit Freetype...
ale musis se podivat na rozhrani pro to co chces udelat a zjistit si jak ovlivnujes knihovnu, kterou Freetype pouziva.
kopirovani examplu bez rozmyslu nevede vetsinou k dobrym vysledkum... a NeHe neni prevratne kvalitni zdroj a dnes u GL2 a prichazejiciho GL3 zacina byt primo nevhodny...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovi WWW stránky
Standalf



Založen: 29. 01. 2008
Příspěvky: 32
Bydliště: Děčín

PříspěvekZaslal: 29. září 2008, 07:17:09    Předmět: Odpovědět s citátem

Ja neverim tutorialum NeHe. Ja verim sobe, tim chci rict vecem, co mi fungovaly. NeHe byl zdroj informaci, vzal jsem example, laboroval a pak pridal do staryho projektu a fungoval.

Jediny co tedka musim zjistit je to, jestli se to s necim nebije v tomhle novym projektu. Ale primo freetype za to podle me nemuze, protoze to je porad stejny.

Nerikej mi, ze kdyz vis, ze jsi neco nekde resil ze se na to nepodivas a pak neskopirujes...
Uz se cejtim trapne, porad se opakovat. Kdybych rekl, ze je to kus kodu ze stary hry, tak byste nemeli ani predstavu co a jak. Kdyz reknu ze prvni zdroj byl NeHe, tak vite ne?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Houp



Založen: 28. 07. 2007
Příspěvky: 672

PříspěvekZaslal: 29. září 2008, 09:06:42    Předmět: Odpovědět s citátem

a nevykresluješ třeba mimo obrazovku? nedáváš špatně y-novou souřadnici (u freetype z nehe je bod 0, 0 v levém spodním rohu)

Já ten kód používám několik let a žádný problém se nikdy neobjevil. => chybu si si musel nasekat někde sám
_________________
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 29. září 2008, 14:06:17    Předmět: Odpovědět s citátem

Stejně ten NeHe kód není nijak úžasnej a nedodržuje některá typografická pravidla a metriky fontu a vůbec, ani ten OpenGL kód se mi nelíbí. Wink

Samozřejmě nikdy není na škodu se ten FreeType naučit, že. Wink
http://www.freetype.org/freetype2/docs/tutorial/step1.html
http://www.freetype.org/freetype2/docs/tutorial/step2.html
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> C / C++ Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna