|
dev.gamez.lv Latvian Game Developers Community
|
View previous topic :: View next topic |
Author |
Message |
kkeemmss
Joined: 04 Jan 2007 Posts: 232 Location: Riga
|
Posted: Mon Nov 26, 2007 12:45 pm Post subject: C builder |
|
Priekšinieki lieto C builderi. Mans uzdevums būtu ar šo lietu nedaudz tuvāk iepazīties. tā nu nolēmu nelielu labirintu uztaisīt.
iekš Q basic rakstiju:
Line (x1,y1)-(x2,y2),,
bet šķiet ka C++ tā lieta tik vienkāši nenotiks.
Ok uz formas uzlieku paint box bet neizdodas iebraukt kā šamā kaut ko darīt.
kāds būtu vienkāršākais variants kā sākt zīmēt? |
|
Back to top |
|
|
bubu Indago Uzvarētājs
Joined: 23 Mar 2004 Posts: 3223 Location: Riga
|
Posted: Mon Nov 26, 2007 12:59 pm Post subject: |
|
Ja nemaldos, tad C++ Builderis bija diezgan līdzīgs Delphiem. Tiem varēja formas (vai gandrīz jebkura cita komponenta) pikseļiem tikt klāt caur Canvas klasi. Tb form1->Canvas->... un tur skaties visas metodes.
Es jau vispār ieteiktu builderi mest miskastē (ja vien nevajag GUI taisīt) un ņemt Visual C++ Express 2k8 un lietot kopā ar SDL. |
|
Back to top |
|
|
snake5 Indago dalībnieks
Joined: 27 Jun 2007 Posts: 2590
|
Posted: Mon Nov 26, 2007 4:28 pm Post subject: |
|
vispār tas builderis izskatās nestandarta c++'ā veidots..
un, msvc2k8 nav manāmas atšķirības no msvc2k5.. _________________ "There are two choices here: "looks good" and "realism"." -- Paul Nettle |
|
Back to top |
|
|
bubu Indago Uzvarētājs
Joined: 23 Mar 2004 Posts: 3223 Location: Riga
|
Posted: Mon Nov 26, 2007 6:38 pm Post subject: |
|
Jā šņake, tu jau nu būsi īstais, kas zinās cik standartiskā C++ builderis veidots. |
|
Back to top |
|
|
snake5 Indago dalībnieks
Joined: 27 Jun 2007 Posts: 2590
|
Posted: Mon Nov 26, 2007 8:31 pm Post subject: |
|
fuu, skatos googlē, būšu tiešām kautko sajaucis..
un..
nevajag uzreiz tā, es jau neteicu, ka es to droši zinu
nevajag man mest mīkstinājuma zīmes kur pagadās
nevis šņake, bet snake vai snake5
cerams, ka nevajadzēs tev dot kādu piemēru lai labāk saprastu problēmu.. _________________ "There are two choices here: "looks good" and "realism"." -- Paul Nettle |
|
Back to top |
|
|
kkeemmss
Joined: 04 Jan 2007 Posts: 232 Location: Riga
|
Posted: Tue Nov 27, 2007 10:55 am Post subject: |
|
Snake of topika masters
bet anyway paldies ka meigini palīdzēt.
jā līnijas apļus un krāsotus laukumus sapratu kā zīmēt.
daduz sareždžītāk bus izveidot kaut kādu objektu sistēmu, lai kolision noteiktu. vai ir kādas idejas kurā virzienā meklēt? |
|
Back to top |
|
|
Kamazs Guru
Joined: 17 Jan 2003 Posts: 829 Location: The glorious ancient city of Loja
|
Posted: Tue Nov 27, 2007 11:29 am Post subject: |
|
Man jau liekas objektu sistēma un kolīzijas ir tāpat kā jebkurā 2D spēlē, atšķirsies tikai, droši vien, vizualizācija un game-loop.
Glabā objektu koordinaatas, ātrumus, izmeerus un citus parametrus atmiņā noteiktā struktūrā un, kad nepieciešams, izrēķini kolīzijas pēc kāda vien algoritma vēlies (imo kaut vai visvienkāršakā dot in a box). _________________ ...un es uzskatu, ka Fallout ir etalons |
|
Back to top |
|
|
bubu Indago Uzvarētājs
Joined: 23 Mar 2004 Posts: 3223 Location: Riga
|
Posted: Tue Nov 27, 2007 11:29 am Post subject: |
|
Nu tas skatoties, ko tu gribi tur izveidot ar to visu...
Vienkāršākajā gadījumā katram objektam pietiks ar aaboksi - tas ir taisnstūris, kura mals ir paralēlas koordināšu asīm (x un y), kā arī šis taisnstūris sevī pilnībā ietver konkrēto objektu. Un un kad vajadzēs noskaidrot kolīziju, tad vienkārši pārbaudi vai divu objektu bokši pārklājas - ja jā, tad vari pieņemt, ka notikusi kolīzija. Ja vienlaicīgi nav daudz objekti jākustina, tad šis ir vienkāršākais risinājums. |
|
Back to top |
|
|
kkeemmss
Joined: 04 Jan 2007 Posts: 232 Location: Riga
|
Posted: Fri Jan 04, 2008 12:10 pm Post subject: |
|
C builderi bumbiņu pa laukumu izdevās padzenāt, un nolēmu tomēr visual studio 2005 sākt pētīt.
Nesmejieties, bet man īsti neizdodas iebraukt tai WinMain un WinProc mesage loopā.
Ja pareizi saprotu, tad katram logam loga formai ir savs hendlis, WinMain funkcijai un WinProc funkcijai atkal ir savi hendli, kurus tad arī lieto lai msages sutitu, un vispār kaut ko daritu.
sobrīd lasu sitadu materiālu:
http://www.directxtutorial.com/Tutorial9/A-Win32/dx9A1.aspx
Vai varbut vaidzeja sakt ar Win32 konsoles aplikaciju?
(Iepriekšējā pieredze ir Qbasic un Game maker) |
|
Back to top |
|
|
snake5 Indago dalībnieks
Joined: 27 Jun 2007 Posts: 2590
|
Posted: Fri Jan 04, 2008 12:51 pm Post subject: |
|
hmm
tu jau dari pareizi
http://www.directxtutorial.com/Tutorial9/A-Win32/dx9A1.aspx
no šī sāc
visu lasi līdz rodas skaidrība, ej uz nākamo!
un vēl - tāds sīkums, ka manuprāt neesi izlasījis requirementus tam tutoriālim
vajag normālas zināšanas C++'ā (drīzāk jau tikai C, pēc satura spriežot)
esi izvēlējies labu tutoriāli, to pašu, ar kuru es sāku
bet DX kā tāds ne visiem liekas viegls.. _________________ "There are two choices here: "looks good" and "realism"." -- Paul Nettle |
|
Back to top |
|
|
bubu Indago Uzvarētājs
Joined: 23 Mar 2004 Posts: 3223 Location: Riga
|
Posted: Fri Jan 04, 2008 1:51 pm Post subject: |
|
kkeemmss wrote: | Vai varbut vaidzeja sakt ar Win32 konsoles aplikaciju? |
Atkarīgs no tā, ko gribi panākt ar savu programmu.
Ja nav vajadzīgs nekāds GUI vai 2D/3D grafika, tad pilnīgi pietiek ar konsoli.
Ja vajag to kautko grafisku, tad neiztikt bez tā WinProc. Taču silti iesaku nerakstīt savu WinProc un nekādu WinAPI messagu apstrādi. Mūsdienās tikai retais programmē tīrā winapī. Ir daudzas ļoti labas gatavas bibliotēkas, kas visu winapi nowrapo ērtā un viegli lietojamā interfeisā. Ja vajag GUI, tad der paskatīties uz wxWidgets, QT, GTK+. Ja vajag tīri 2d/3d logu renderēšanai tad DX'am vari izmanto DXSDK līdzi nākošo DXUT. OpenGL'am vari paskatīties uz GLFW, FreeGLUT vai SDL.
WinMain pēc būtības ir funkcija, ar kuru sākas programmas darbība. T.i. palaižoties GUI programmai Windows pats izsauks tavu WinMain fukciju. Un šī funkcija īstenībā var saukties kā vien tu gribi (galvenais linkera opcijās pareizo norādīt). Es personīgi savas C++ programmas (arī GUI'skās) rakstu izmantojot veco labo main funkciju kā sākuma funkciju programmai. Tā ir ērtāk un pierastāk. |
|
Back to top |
|
|
snake5 Indago dalībnieks
Joined: 27 Jun 2007 Posts: 2590
|
Posted: Fri Jan 04, 2008 3:01 pm Post subject: |
|
GUI programmas labums - sākumā nav neviena loga
var veidot to pašu konsoles logu, var arī smukāku winapi stila konsoles logu..
var visādi
/*posta daļa autoram var nepalīdzēt*/
bubu:
ja var ar main funkciju, tad varbūt var arī pamainīt argumentus tai pašai WinMain?
es hPrevInstance un nCmdShow nelietoju..
btw..
linkera opcijas visas izskatīju
atradu iespēju nomainīt un pamēģināju nomainīt entrypointu
bet argumentus pielikt neizdevās
/*beigas*/
vispār es uzskatu, ka topika autoram būtu jāzina vienkāršākās lietas pagaidām
ja directx lietots, tad sākumā vairāk par pointeriem, struktūrām, datu tipiem, makrosiem, dubultpointeriem, koda sintaksi (labu), castiem (kautvai tikai explicitajiem), etc., īsāk sakot - tikai C, jo DX strādā arī ar C
labs tutoriālis: http://yy.lv/upload/down.php?f=94414
(zip, iekšā pdf - var vajadzēt kādu pdf readeri) _________________ "There are two choices here: "looks good" and "realism"." -- Paul Nettle |
|
Back to top |
|
|
Kamazs Guru
Joined: 17 Jan 2003 Posts: 829 Location: The glorious ancient city of Loja
|
Posted: Fri Jan 04, 2008 5:16 pm Post subject: |
|
Kāpēc C? Ja nemaldos, C nav vienkāršāks par C++, tieši otrādi. C++ ir modernāks.
Neviens jau nespiež uzreiz tās visas advancētās OOP lietas izmantot, bet iesācējam, imo, C++ būtu pareizāka izvēle. C pēc sajūtas liekas tāds mazliet vecišķs un noteikti ne vieglāks. Ņemot vērā backward compatibility, imo, tas ir gandrīz tas pats, kas C, tikai ar vairāk iespējām. _________________ ...un es uzskatu, ka Fallout ir etalons |
|
Back to top |
|
|
snake5 Indago dalībnieks
Joined: 27 Jun 2007 Posts: 2590
|
Posted: Fri Jan 04, 2008 5:25 pm Post subject: |
|
nu es viņam nelūdzu pāriet uz C
bet saku, ka pagaidām viņam vajag zināt tikai to, kas ir iekš C
lietojot d3d - pašos sākumos - nekādu spēli vēl netaisot neviens C++ labums nav īsti bijis vajadzīgs
vienīgi tur varbūt kāds sīkums.
bet neuzskatu, ka sākumā būtu jāpiebāž galva ar OOP, ja par pointeriem nav normālu pamatzināšanu!
tomēr, tikai manas domas.. _________________ "There are two choices here: "looks good" and "realism"." -- Paul Nettle |
|
Back to top |
|
|
elvman Indago Uzvarētājs
Joined: 09 Apr 2003 Posts: 1278 Location: Kuldiga
|
Posted: Fri Jan 04, 2008 5:50 pm Post subject: |
|
Nu es gan nepiekristu, ka C++ ir vienkāršāks par C. Jā, sarežģītus uzdevumus C++ izdarīt ir ātrāk, bet pati valoda sevī ietver daudz vairāk dažādu nosacījumu utt. (template, class ...). Iesācējiem jau vispār ir grūti iebraukt, kas ir klase un kas objekts, taka iesācējiem gan vieglāk iemācīties tomēr būs pliku C (arī augstskolās sāk mācīt C un tikai pēc tam ķeras pie C++, un, manuprāt, tas ir pareizi). _________________ long time; /* know C */ |
|
Back to top |
|
|
|
|
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
|