.[ ČeskéHry.cz ].
Problém s menu
Jdi na stránku 1, 2, 3  Další
 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
jatro.m



Založen: 29. 07. 2009
Příspěvky: 89

PříspěvekZaslal: 29. červenec 2009, 13:53:17    Předmět: Problém s menu Odpovědět s citátem

Zdarec borci,

mám takovej problém mám toto menu,


a když měním rozlišení tak se mi to menu posunuje, to není ten problém ale když mám rozlišení 1024x768 a změním ho na 800x600 tak musím změnit i souřadnice umístění textu a pomyslné collisionboxy okolo nich. Jak to řešíte vi? Musím mít pro každé rozlišení podmínku s jinýmy souřadnicemi ? Nebo jak na to? Doufám že se ten text dá pochopit a díky za odpověd.

Dík Játro
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Quiark



Založen: 29. 07. 2007
Příspěvky: 816
Bydliště: Chlívek 401

PříspěvekZaslal: 29. červenec 2009, 14:04:18    Předmět: Odpovědět s citátem

Mi to řešíme třeba takto:

Můžeš pozici těch textů vyjádřit v procentech rozměru obrazovky a při kreslení si vypočítat absolutní pozici podle aktuálního rozlišení. Potom by například pozice uprostřed obrazovky byla 50, 50.

Tohle ve většině případů stačí, pokud bys ale měl třeba nějaký seznam nebo tak a chtěl bys, aby se při větším rozlišení na obrazovku vešlo víc prvků, už to bude chtít něco chytřejšího.
_________________
Mám strach
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
jatro.m



Založen: 29. 07. 2009
Příspěvky: 89

PříspěvekZaslal: 29. červenec 2009, 14:29:01    Předmět: Odpovědět s citátem

Ok, tuším co máš namysli ale jak to udělat s temi čtverci okolo kvuli kurzoru?
proste ty osy x,y pomoci kterych testuju jestli sem na to klik nebo ne?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Ladis



Založen: 18. 09. 2007
Příspěvky: 1537
Bydliště: u Prahy

PříspěvekZaslal: 29. červenec 2009, 15:00:08    Předmět: Odpovědět s citátem

Můj princip je stejný, akorát nepoužívám procenta, ale výchozí rozlišení. takže hra je třeba dělaná pro 800x600, a kdyz zapnu 1024x768, tak probíhá ve vykreslování přepočet, ale interně pracuje s grafikou a "collision boxy" stále v těch 800x600. V případě myši pak samozřejmě musíš stejným způsobem přepočítat její pozici na interní rozlišení tvé hry.
_________________
Award-winning game developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Quiark



Založen: 29. 07. 2007
Příspěvky: 816
Bydliště: Chlívek 401

PříspěvekZaslal: 29. červenec 2009, 15:02:36    Předmět: Odpovědět s citátem

No vždycky si musíš ty procenta převést na skutečné souřadnice na obrazovce a ty potom použít jednak na kreslení, druhak na porovnávání s pozicí kurzoru.

Co se týče velikosti těch tlačítek, tak tu můžeš zadat buď taky v procentech nebo v pixelech. V prvním případě budou na obrazovce zabírat vždy stejné místo, nezávisle na rozlišení, ve druhém případě budou mít pořád stejnou velikost v pixelech, takže při větším rozlišení budou vypadat menší.
_________________
Mám strach
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
jatro.m



Založen: 29. 07. 2009
Příspěvky: 89

PříspěvekZaslal: 29. červenec 2009, 15:27:28    Předmět: Odpovědět s citátem

Dík pánové docela mě to nasměrovalo jenom to dělam nějakyho pul roku tak se na mě nezlobte jestli nemáte nějakej materiál od čeho se odpíchnout?
Jenom vytrhnutyho kus kodu ja si to nejak přeberu Smile
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: 29. červenec 2009, 17:41:32    Předmět: Odpovědět s citátem

Já bych si to menu napozicoval jednoduše: zavedl bych si parametr, ve kterém rohu je počátek souřadnic (v tomto případě vlevo dole) a měl bych to vždy relativně k němu.

Procenta fungují, dokonce jde i velikost vyjádřit v procentech, ale musíš pak navíc řešit, jak pěkně vyhladit obrázky, když jim takhle měníš velikost. Někdy to není pěkný na pohled, rozmazává je to.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
jatro.m



Založen: 29. 07. 2009
Příspěvky: 89

PříspěvekZaslal: 29. červenec 2009, 19:06:44    Předmět: Odpovědět s citátem

ok, asi to udelam jak rika eosie jinak nejsou to obrazky ale je to normalni freetype font Smile
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: 29. červenec 2009, 19:28:58    Předmět: Odpovědět s citátem

Jo, u fontů je to ještě horší, pokud obsahují subpixel filtrování. Tam se to pak změnou velikosti nebo jakýmkoliv filtrem zkurví úplně.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
jatro.m



Založen: 29. 07. 2009
Příspěvky: 89

PříspěvekZaslal: 29. červenec 2009, 19:33:20    Předmět: Odpovědět s citátem

no hral sem si si tim a pri glScalef(,,,); kdyz ho zmensim tak vypada normalne a kdyz se zvetsi tak je velkej a zaroven se okolo nej rozmaze to co by bylo u TT normalne strapaty takze to neni tak strasny.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
jatro.m



Založen: 29. 07. 2009
Příspěvky: 89

PříspěvekZaslal: 29. červenec 2009, 19:36:09    Předmět: Odpovědět s citátem

jinak http://red-assault.7u.cz/ (na ty stranky se raci nedivejte sou tezce nedotazeny Smile )
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Quiark



Založen: 29. 07. 2007
Příspěvky: 816
Bydliště: Chlívek 401

PříspěvekZaslal: 29. červenec 2009, 19:56:39    Předmět: Odpovědět s citátem

jatro.m napsal:
jinak http://red-assault.7u.cz/ (na ty stranky se raci nedivejte sou tezce nedotazeny Smile )


ehm... na co je pak ten odkaz? Smile

eo: Freetype fonty jsou asi vektorový, takže zvětšování/zmenšování by mělo v klidu žejo.

jatro.m: Kus kódu nemáme... ale tohle není nic těžkého, pokud jsi to menu naprogramoval aspoň takhle, tak tuhle změnu zvládneš sám.
_________________
Mám strach
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
jatro.m



Založen: 29. 07. 2009
Příspěvky: 89

PříspěvekZaslal: 29. červenec 2009, 20:01:11    Předmět: Odpovědět s citátem

no prece pro srandu Smile ok du se do toho pustit
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
jatro.m



Založen: 29. 07. 2009
Příspěvky: 89

PříspěvekZaslal: 29. červenec 2009, 20:10:35    Předmět: Odpovědět s citátem

tak tady nad tim ted premyslim a to co mi poradil eosie je myslim to stejny co ja delam
citace:

if(sWidth == 1024 && sHeight == 768){
NewGame[0] = 65;
NewGame[1] = 455;

NewGameColl[0] = 154;
NewGameColl[1] = 475;

MPGame[0] = 84;
MPGame[1] = 496;

MPGameColl[0] = 160;
MPGameColl[1] = 509;

Options[0] = 104;
Options[1] = 535;

OptionsColl[0] = 170;
OptionsColl[1] = 551;

Exit[0] = 125;
Exit[1] = 575;

ExitColl[0] = 210;
ExitColl[1] = 590;

MenuText[0] = 62;
MenuText[1] = 300;
}
NewGame[0] = 65;zacatek x
NewGame[1] = 455; zacatek y
a
NewGameColl[0] = 154; konec x
NewGameColl[1] = 475; konec y

takze si to muzu rovnou dodefinovat ze? Porad mi nejak nejde do hlavy s tou absolutni hodnotou a tema procentama Very Happy dneska su natvrdlej Very Happy
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: 29. červenec 2009, 20:42:50    Předmět: Odpovědět s citátem

Quiark napsal:
eo: Freetype fonty jsou asi vektorový, takže zvětšování/zmenšování by mělo v klidu žejo.

Jo, jsou vektorový (nebo křivkový), ale neviděl jsem ještě implementaci v OpenGL, která by používala přímo ty křívky nebo jejich aproximaci pomocí vertexů (free knihovny na to neexistují snad ani). Většinou se text přímo při sázení rasterizuje do bitmapy pro pevnou velikost (obvykle na CPU) se subpixel filtrem (využívá zobrazovací vlastnosti displaye), která se pak na GPU kreslí jako textura s ideálním mapováním 1 texel -> 1 pixel. Samozřejmě můžeš pro jinou velikost rasterizovat celý text znovu, ale to už není moc real-time.
_________________
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 -> 3D API / 3D Enginy Časy uváděny v GMT + 1 hodina
Jdi na stránku 1, 2, 3  Další
Strana 1 z 3

 
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