.[ ČeskéHry.cz ].
Vypsání bodů na obrazovku

 
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
Hanz...SDL



Založen: 19. 11. 2009
Příspěvky: 24

PříspěvekZaslal: 20. listopad 2009, 23:03:31    Předmět: Vypsání bodů na obrazovku Odpovědět s citátem

Chtěl bych se vás zeptat jak ve hrách vykreslujete body(skóre) na obrazovku?? já to vykresluju ve svý hře pomocí SDL_ttf.h, ale zdá se mi to takový neohrabaní vykreslovat každej bod zvlášt...jaký na to máte názory a jak vykreslujete body(skóre) vy??

Díky za všechny odpovědi...
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: 20. listopad 2009, 23:05:00    Předmět: Odpovědět s citátem

Co myslíš tím "každý bod zvlášť"?
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Hanz...SDL



Založen: 19. 11. 2009
Příspěvky: 24

PříspěvekZaslal: 21. listopad 2009, 07:55:43    Předmět: Odpovědět s citátem

if (pocet_bodu == 0) {
body = TTF_RenderText_Solid(font, "0 bodu", col);
if (body != NULL) {
SDL_BlitSurface(body, NULL, screen, &rect_bodu);
SDL_FreeSurface(body);
}
}

if (pocet_bodu == 1) {
body = TTF_RenderText_Solid(font, "1 bod", col);
if (body != NULL) {
SDL_BlitSurface(body, NULL, screen, &rect_bodu);
SDL_FreeSurface(body);
}
}

atd. až do 62...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MD



Založen: 29. 07. 2007
Příspěvky: 437
Bydliště: Praha

PříspěvekZaslal: 21. listopad 2009, 09:39:42    Předmět: Odpovědět s citátem

Jedna z moznosti:
kód:
char buff[32];
sprintf_s(buff, "%i bodu", pocet_bodu);
body = TTF_RenderText_Solid(font, buff, col);

[OT]Doufam, ze jsem se teda nechytil na nejakej povedenej zertik Wink [/OT]
Jinak pokud chces mit spravne cestinu "bodu, bod, body", tak to jeste rozdel na tyto 3 pripady pomoci ifu.
Poznamka, kdyby tve C/C++ neznalo sprintf_s, tak postaci sprintf.
_________________
- play with objects - www.krkal.org -
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
rezna



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

PříspěvekZaslal: 21. listopad 2009, 09:56:37    Předmět: Odpovědět s citátem

PRESUNUTO: do 3D API, kam to patri jakozto graficky problem

P.S. autore - mame tu tag CODE - viz prispevek od MD Wink
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Hanz...SDL



Založen: 19. 11. 2009
Příspěvky: 24

PříspěvekZaslal: 21. listopad 2009, 10:58:19    Předmět: Odpovědět s citátem

MD napsal:
Jedna z moznosti:
kód:
char buff[32];
sprintf_s(buff, "%i bodu", pocet_bodu);
body = TTF_RenderText_Solid(font, buff, col);

[OT]Doufam, ze jsem se teda nechytil na nejakej povedenej zertik Wink [/OT]
Jinak pokud chces mit spravne cestinu "bodu, bod, body", tak to jeste rozdel na tyto 3 pripady pomoci ifu.
Poznamka, kdyby tve C/C++ neznalo sprintf_s, tak postaci sprintf.


jj díky moc...se sprintf_s to nešlo ale s sprintf to jde v pohodě...tohle mi ušetřilo cca 1000 řádků Wink Wink
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Tutchek



Založen: 28. 07. 2007
Příspěvky: 140
Bydliště: Praha -Pankrác

PříspěvekZaslal: 21. listopad 2009, 11:14:57    Předmět: Odpovědět s citátem

Hanz...SDL napsal:
jj díky moc...se sprintf_s to nešlo ale s sprintf to jde v pohodě...tohle mi ušetřilo cca 1000 řádků Wink Wink


kód:
if (pocet_bodu > 1000) {
body = TTF_RenderText_Solid(font, "Moc bodu", col);
if (body != NULL) {
SDL_BlitSurface(body, NULL, screen, &rect_bodu);
SDL_FreeSurface(body);
}
}

_________________
Nemarni čas u kompu, pojď si zaběhat do lesa

function god_exists() { return false; }
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
franz



Založen: 30. 07. 2007
Příspěvky: 1325

PříspěvekZaslal: 21. listopad 2009, 12:17:20    Předmět: Odpovědět s citátem

ještě abys obešel skloňovaní lze "%i bodu" nahradit třeba "body: %i"
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Hanz...SDL



Založen: 19. 11. 2009
Příspěvky: 24

PříspěvekZaslal: 21. listopad 2009, 12:29:55    Předmět: Odpovědět s citátem

franz napsal:
ještě abys obešel skloňovaní lze "%i bodu" nahradit třeba "body: %i"


jj dík za radu...ale už to mám udělaný že to skloňuju... Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
rezna



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

PříspěvekZaslal: 21. listopad 2009, 14:16:21    Předmět: Odpovědět s citátem

ad sprintf_s - nepodelil ses co mas za kompiler Wink - ty _s verze jsou M$VC++ specific - existuje taky treba snprintf - o tom jaky je v nich rozdil se doctes treba na googlu...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Hanz...SDL



Založen: 19. 11. 2009
Příspěvky: 24

PříspěvekZaslal: 21. listopad 2009, 15:01:48    Předmět: Odpovědět s citátem

používám C::B...a sprintf znám ale nějak mě to nenapadlo ho použít... Smile
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
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