dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

C++ Win32 console aplication
Goto page 1, 2, 3  Next
 
dev.gamez.lv Forum Index -> Iesācējiem
View previous topic :: View next topic  
Author Message
kkeemmss



Joined: 04 Jan 2007
Posts: 232
Location: Riga

PostPosted: Thu Jan 31, 2008 4:33 pm    Post subject: C++ Win32 console aplication

Tagad Lasu no www.zuters.com apmacība.
Visada ziņā labs materiāls, bet tur nav nekas rakstīts par grafiku.
Kādā veidā konsolē vis vieglāk iegūst grafiku?
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Thu Jan 31, 2008 6:28 pm    Post subject:

Kādu grafiku? Konsole ir tieši tāpēc konsole, ka tajā nav grafikas. Viss, ko tu tur vari - ir rakstīt dažādus simbolus dažādās krāsās (ascii art).

Ja tu gribi zīmēt kaut ko grafisku, tad jāmeklē cits ceļš. Windows'ā to panāk atverot GUI logu un tajā zīmēt lietojot GDI , DirectX vai OpenGL. Iesācējam tas var nebūt vienkāršākais ceļš. Labāk ir paņemt jau kādu gatavu bibliotēku, kas atver logu un tajā vari darīties, ko vien gribi. Iesaku paskatīties uz SDL. Pamatā tā ir domāta ne tikai loga atvēršanai un grafikas zīmēšanai, bet arī skaņas atskaņošanai, joystiku/peles/klaviatūras nolasīšanai un, izmantojot citas papildbibliotēkas (SDL_mixer, SDL_image, SDL_ttf, SDL_net, ...) var vienkāršā veidā panākt daudzas citas lietas (lasīt dažādus bilžu/audio formātus, izmantot fontus, sūtīt/saņemt informāciju caur tīklu, ...).
Back to top
View user's profile Send e-mail
kkeemmss



Joined: 04 Jan 2007
Posts: 232
Location: Riga

PostPosted: Mon Feb 04, 2008 4:20 pm    Post subject:

Quote:
SDL'am vispār eksistē lielum lielais vairums dažādu noderīgu un ne tik daudz noderīgu bibliotēku visām dzīves situācijām: http://www.libsdl.org/libraries.php Wink


šobrīd gribu uztaisīt C++ tetru, pēc tam kādu labirintu, bet domājot par nākotnes "lielajiem" projektiem:
1 kuras SDL bibliotekas ir tās ko vaidzētu sīkāk apskatīt?
2 kuras ir stipri novecojušas un nav vērts laiku tērēt?
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Mon Feb 04, 2008 6:17 pm    Post subject:

Pirmkārt jau pašu SDL.
Un tad:
SDL_image - ja vajadzīgs ielādēt dažādu formātu attēlus,
SDL_mixer - ja vajadzīgs spēlēt dažādu formātu audio,
SDL_net - darbībai ar tīklu
SDL_ttf - ttf fontu zīmēšanai
SDL_gfx - vienkāršu primitīvu zīmēšanai (līnijas, riņķi, utml)
Back to top
View user's profile Send e-mail
kkeemmss



Joined: 04 Jan 2007
Posts: 232
Location: Riga

PostPosted: Tue Feb 05, 2008 11:28 am    Post subject:

Es jau gandrīz biju gatavs nodoties garām SDL studijām, bet tagad mani mazliet moka viena neskaidrība.
esmu palasijis seno diskusiju par DirectX Vs OpenGl, un gandrīz vairāk sliecos uz DX pusi, Bet SDL jau iekš lesson 1 piemin OpenGL,

Un tad nu kāds varētu mazliet Salīdzināt:
Direct input, Direct audio utt ar iespējām ko piedāvā SDL
Vai un kā SDL iet kopā ar DX

Man vienkārši ir radusies neliela putra galvā...
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Tue Feb 05, 2008 1:21 pm    Post subject:

SDL var izmantot loga atvēršanai un visu renderēt ar DX (vai OpenGL). Ar to nav problēmu. Reku ar fju SDL_GetWMInfo var dabūt loga handli, kurš jāpdod Direct3D inicializācijai.

Galvenā SDL priekšrocība ir cross-platformiskums. T.i. tu vari uzrakstīt softu/spēli, kurš strādās gan uz Windows, gan Linux, gan MacOSX, gan arī uz Symbian telefoniem kautvai. Ja lietosi DirectX, tad gan to nevarēs.

Un ja bāzējies uz DirectX, tad īsti nekādas lielās priekšrocības lietot SDL nebūs. Mierīgi var iztikt bez SDL. Lieto kautvai DXUT, kas tiek lietots DXSDK sampļos, lai atvērtu logu.
Back to top
View user's profile Send e-mail
kkeemmss



Joined: 04 Jan 2007
Posts: 232
Location: Riga

PostPosted: Tue Feb 05, 2008 2:30 pm    Post subject:

Nu ir kaut kāda nojausma kas viņi ir un ko viņi dara Bet kuru tad izvēlēties
izskatās ka izvēle ir starp:
a) SDL (bez OGL/DX) // laikam vieglakais variants
b) SDL (ar OGL) // laiiam advancetakam grafikam
c) SDL (ar DX) // Vai sadam savienojumam ir kautkada jēga?
d) DX ( ar Dinput,Dsound utt)

Kros platformingums nebutu tas noteicošais faktors, svarīgāk varētu būt kas tad ir vieglāk apgūstams?
Back to top
View user's profile
Kamazs
Guru
Guru


Joined: 17 Jan 2003
Posts: 829
Location: The glorious ancient city of Loja

PostPosted: Tue Feb 05, 2008 2:37 pm    Post subject:

Visvienkāršākais, kas ļauj uzreizi ķerties pie geimpleja realizēšanas, nevis iebraukt grafikā, ir pliks SDL. Vismaz manuprāt. Kaut ko vienkāršāku grūti izdomāt.

Un ja tu gribi sākt ar kaut ko ne pārāk lielu, vienkāršu, 2D, tad pliks SDL ir teh choice imo.

Savukārt SDL+OGL manā skatījumā ir ideāls komplekts -- OpenGL man patīk labāk nekā DirectX (iespējams subjektīvi), liekas arī mazliet vienkāršāks un loģiskāks. Tas ir tad, kad ar plikus SDL tev ir par maz un tu jūti, ka gribi būt mazliet modernāks.

SDL+DX man šķiet bezjēdzīga kombinācija. Tīrs DX -- nu tas ir vēl viens virziens, kurā doties. par to, diemžēl, daudz nezinu
_________________
...un es uzskatu, ka Fallout ir etalons
Back to top
View user's profile Send e-mail Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Tue Feb 05, 2008 3:30 pm    Post subject:

Saproti, ka galvenā atšķirība DX vai OGL izmantošanā ir ātrdarbība - OGL vai DX mācēs izmantot hardwares akselerāciju, lai zīmētu 2d/3d bildes. Pliks SDL pats par sevi strādās tīrā softwarē.
SDL+OGL ir tikpat liela jēga kā SDL+DX. Vienīgā atškirība - pirmais variants tev strādās arī uz ne-Windows sistēmām.

Vieglāk apgūstams noteikti ir, kā jau Kamazs saka, pliks SDL. Sākuma ar to pilnīgi pietiks. Tad, kad gribēsi taisīt, ko lielāku, tad arī skaties uz to GL/DX. Un ja prasi par DX vs OGL, tad manā skatījumā OGL ir vieglāk un ātrāk uzsākams - ne velti ārzemju universitātēs, kur māca geimdevu, par 3d grafikas API parasti māca ar OGL, nevis DX. Es nebūt neapgalvoju, ka DX ir ļoti grūtāks, bet nu katrā ziņā iesācējam vajadzēs lielāku saprašanu, lai to izmantotu.
Back to top
View user's profile Send e-mail
kkeemmss



Joined: 04 Jan 2007
Posts: 232
Location: Riga

PostPosted: Wed Feb 06, 2008 12:17 pm    Post subject:

paldies par padomiem, bet es vēl kavējos konsoles aplikācijā apgūstot pamatus. Uzrakstiju programu kas ar ascii simboliem zime sienas, bet ar WASD kustinu galvenā varoņa simbolu.

problema tāda ka katru nākamo kadru vienkārši uzrakstu uzreiz pēc iepriekšējā. (nav smuki)
smukak būtu ja katru kadru sāktu rakstīt 0,0 punktā pārakstot iepriekšējo, bet jautājums ar kādu funkciju uzstādīt pildspalvas atrašanos?
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Wed Feb 06, 2008 12:34 pm    Post subject:

Pildspalvas?
Tu domā Windows konsolē kursora atrašanās pozīciju? Windows konsoli kontrolē ar konsoles funkcijām: http://msdn2.microsoft.com/en-us/library/ms682073.aspx
Konkrēti kursora pozīciju uzliek ar SetConsoleCursorPosition fju.
Back to top
View user's profile Send e-mail
Tenjou



Joined: 22 Nov 2005
Posts: 275

PostPosted: Wed Feb 06, 2008 2:38 pm    Post subject:

Vēl var mēģināt ar system("CLS").
Back to top
View user's profile
kkeemmss



Joined: 04 Jan 2007
Posts: 232
Location: Riga

PostPosted: Wed Feb 06, 2008 2:50 pm    Post subject:

ok paldies!
CLS bij tieši tas ko man vajag.
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Wed Feb 06, 2008 4:24 pm    Post subject:

Nu gan hakainos risinājumus, Tenjou, tu iesaki. OpenGLā, kad gribi kadru jaunu zīmēt tu varbūt kontekstu reseto, nevis glClear izsauc?
Back to top
View user's profile Send e-mail
Tenjou



Joined: 22 Nov 2005
Posts: 275

PostPosted: Wed Feb 06, 2008 4:55 pm    Post subject:

Lai konsolē notīrītu ekrānu pilnībā vienmēr apmierināja šāds risinājums.
Back to top
View user's profile
Display posts from previous:   
dev.gamez.lv Forum Index -> Iesācējiem All times are GMT + 2 Hours
Goto page 1, 2, 3  Next
Page 1 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group