Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: SDL ttf

Sivun loppuun

Tumpelo [11.02.2006 14:57:24]

#

Piru vieköön kun ei Googlella löytynyt ainuttakaan selkeää esimerkkiä SDL ttf:n käytöstä, ei ainuttakaan joka ei olisi ollut mahdollisimman monimutkainen. -_- Ei edes SDL:n kotisivuilta... Joten, kuinkas sillä onnistuu saada se teksti näytölle, itse olen saanut aikaan tämän verran toimivasti:

TTF_Font * font;
font=TTF_OpenFont("Fonts\\Font1.ttf", 12);

Ja tietysti olen inittänyt ttf:n... Mutta tuosta en ole osannut jatkaa...

Metabolix [11.02.2006 17:24:34]

#

GameDevissä on varsin helpon oloinen artikkeli aiheesta.
http://www.gamedev.net/reference/articles/article1953.asp
Loppupuolella oli esitelty kriittiset funktiot.

Ja muistetaan taas kerran tuhota nekin pinnat SDL_FreeSurface-funktiolla, eli ensin luot tekstipinnan muuttujaan noilla SDL_TTF:n funktioilla, sitten blittaat sen ruudulle ja lopuksi tuhoat.

Tumpelo [11.02.2006 18:08:10]

#

No nyt sain toimimaan, mutta tuo pitäisi vielä muuttaa funktioksi. Muuten onnistuu, mutta en pysty laittamaan funktiota sellaiseksi että joka kerta voi valita tekstinkin mikä tulostetaan...

void Text(SDL_Color Blue, TTF_Font * font, int x, int y, string text);

//Fonttifunktio
void Text(SDL_Color Blue, TTF_Font * font, int x, int y, string text)
{
    SDL_Surface * sText = TTF_RenderText_Solid(font, text, Blue);
    SDL_Rect rcDest = {x,y,0,0};
    SDL_BlitSurface( sText,NULL, Screen,&rcDest );
    SDL_Flip(Screen);
    SDL_FreeSurface(sText);
}

Ilman tuota string juttua toimii, mutta ei se hyödytä jos aina sama teksti tulostuu...

Metabolix [11.02.2006 18:26:19]

#

Funktion text.c_str() käyttö TTF_RenderText_Solid-kutsussa pelastaa =)

Tumpelo [11.02.2006 19:21:08]

#

Metabolix kirjoitti:

Funktion text.c_str() käyttö TTF_RenderText_Solid-kutsussa pelastaa =)

Olipas tyhjentävästi selitetty. :)

Metabolix [11.02.2006 19:30:27]

#

Sitä oppii paremmin, kun joutuu ajattelemaan, mitä neuvot tarkoittavat ja kuinka niitä voi soveltaa ;) Tietenkin saa kysyä lisää, jos nämä kryptiset selitykset menevät hieman yli.

Tumpelo [11.02.2006 19:32:32]

#

Oh, nyt minun täytyy onnitella itseäni, sain tuon homman toimimaan ilman tyhjentäviä selityksiä. =D

Tumpelo [11.02.2006 20:34:49]

#

Hmm, tuolla ei näemmä voi tulostaa numeroita. Kuinkas siis voisi numeroita / numeroita sisältäviä muuttujia tulostaa, tai sitten muuttaa numeroita stringiksi..?

Meitsi [11.02.2006 20:44:02]

#

itoa:lla saa numeron charriksi.

Metabolix [11.02.2006 20:55:50]

#

Ei sotketa mukaan C:n vaarallisia ylivuotofunktioita, jos ei niitä tarvita. Vastahan minä tein tästä C++-esimerkin, ja C++:aa täällä useimmat taitavat käyttää. Keskustelua olisi löytynyt haulla. Aihe 11336. Ja yhdistämällä tämän edelliseen funktioosi saatkin jo melko yleispätevän tulostusfunktion.

Edit: Lähetinpä tuon nyt koodivinkiksi saman tien. https://www.ohjelmointiputka.net/koodivinkit/24882-cpp-muuttujat-tekstiksi-stringstreamilla


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta