Webbisivu:
http://www.pascalgamedevelopment.com/competitions.php?p=details&c=3
Kertoo millaisia pelejä mm viime vuonna tehtiin
Peliohjelmointia Pascalilla
11
482
Vastaukset
- noi on.
turha taistella tuulimyllyjä vastaan.. c on PAKKO opetella, jos haluaa pelejä tehdä
- _ihmettelijä_
No en minä ainakaan keksi mitään rajoitetta Pascalin kohdalla.
Olisi hieno tietää mikä C :ssa on niin hieno ominaisuus että
se tekee sen ainoaksi oikeaksi pelien teko kieleksi.
(mm pointterit ja oliot yms löytyvät Pascalistakin). - ...
_ihmettelijä_ kirjoitti:
No en minä ainakaan keksi mitään rajoitetta Pascalin kohdalla.
Olisi hieno tietää mikä C :ssa on niin hieno ominaisuus että
se tekee sen ainoaksi oikeaksi pelien teko kieleksi.
(mm pointterit ja oliot yms löytyvät Pascalistakin).nopeus.
- mietippä vähän
... kirjoitti:
nopeus.
Eri kieliä ("tai joidenkin kirjastoja") verrataan sivuilla
http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all&calc=Calculate&xfullcpu=1&xmem=1&xloc=1&binarytrees=1&chameneosredux=1&fannkuch=1&fasta=1&knucleotide=1&mandelbrot=1&meteor=1&nbody=1&nsieve=1&nsievebits=1&partialsums=1&pidigits=1&recursive=1®exdna=1&revcomp=1&spectralnorm=1&hello=1&sumcol=1&threadring=1
Kerroppa mikä testi/testit ovat tärkeimpiä (ja miksi) tässä asiassa.
Useinmitenhan asia on niin että koodaustaito (mm oikein valitut algoritmit juuri oikeassa paikassa merkitsee hyvin paljon)
Yleensähän vain osa koodista on merkityksellistä nopeuden osalta. Pascalit mahdollistavat myös assembler-koodin lisäämisen ohjelman sisään (Eli jos osaat koneen assembler-koodin täydellisesti niin mikään muu kieli ei pysty samaan nopeuteen).
En tosin sousittele assemblerin opiskelua ennenkuin sitä välttämättä tarvitaan (tosi harvoin) - Crashblock
Mielipide tuokin on mutta epäilenpä että
tuskin pystyt tekemään edes tämäntasoisia pelejä.
Esim crashblock:lla on oma kotisivu (tämä on eräs noista peleistä)
http://www.crashblock.com/ - Delphikoodari..
... kirjoitti:
nopeus.
No eiköhän Pascal-ohjelmat ole yhtä nopeita kuin C kirjoitetutkin, mutta C etu on se, että sille on paljon enemmän esimerkkejä ja kirjastoja ym.ym.
- youtube video
Crashblock kirjoitti:
Mielipide tuokin on mutta epäilenpä että
tuskin pystyt tekemään edes tämäntasoisia pelejä.
Esim crashblock:lla on oma kotisivu (tämä on eräs noista peleistä)
http://www.crashblock.com/Pelistä löytyy myös video
http://www.youtube.com/swf/l.swf?video_id=tox2nYljVfg&rel=1&eurl=&iurl=http://i.ytimg.com/vi/tox2nYljVfg/default.jpg&t=OEgsToPDskItiXOrfs3895IWtXt1vsCV&border=0 - mutta teknisesti vaatimaton
youtube video kirjoitti:
Pelistä löytyy myös video
http://www.youtube.com/swf/l.swf?video_id=tox2nYljVfg&rel=1&eurl=&iurl=http://i.ytimg.com/vi/tox2nYljVfg/default.jpg&t=OEgsToPDskItiXOrfs3895IWtXt1vsCV&border=0voihan delphillä pelejä tehdä, mutta jos puhutaan teknisesti vaativista 3d-peleistä niin tuki on alustalle aika olematon... c ei tästä ongelmasta kärsi.
- -___-
mutta teknisesti vaatimaton kirjoitti:
voihan delphillä pelejä tehdä, mutta jos puhutaan teknisesti vaativista 3d-peleistä niin tuki on alustalle aika olematon... c ei tästä ongelmasta kärsi.
Ongelma ei ole se että eikö kirjastoja löydy Pascalille. Mutta ongelma on se että ne on tehty C:llä. Pitäisi siis löytää joku erittäin pätevä ohjelmoija joka olisi kiinnostunut
pelirajapintojen "alapuolisista" asioista (ajureista) ja haluisi ne toteuttaa Pascalilla.
Tällä tavalla niihin saataisiin lisää nopeutta (Näinhän on jo käynyt kääntäjätekniikassa. Esimerkkinä FreePascal. Huomaa että monissa muissa toteutuksissa käytetään C-kielellä tehtyjä kirjastoja) - Daring Apprentice
No Daring Apprentice:ssa on 3D:tä ja verkko-ominaisuutta.
http://daringapprentice.wikispaces.com/ - Mika0800
-___- kirjoitti:
Ongelma ei ole se että eikö kirjastoja löydy Pascalille. Mutta ongelma on se että ne on tehty C:llä. Pitäisi siis löytää joku erittäin pätevä ohjelmoija joka olisi kiinnostunut
pelirajapintojen "alapuolisista" asioista (ajureista) ja haluisi ne toteuttaa Pascalilla.
Tällä tavalla niihin saataisiin lisää nopeutta (Näinhän on jo käynyt kääntäjätekniikassa. Esimerkkinä FreePascal. Huomaa että monissa muissa toteutuksissa käytetään C-kielellä tehtyjä kirjastoja)windows -ympäristössä se, että monet kirjastot on tehty C:llä, EI ole ongelma.
Jos kyse on Microsoftin tekemistä kirjastoista, ne joko tulevat käyttöjärjestelmän mukana tai ovat loppukäyttäjänkin helposti asennettavissa Microsoftin tekemällä (tai lisensioimalla) asennusohjelmalla.
Näihin dokumentit löytyvät msdn:stä netistäkin jos MSDN CD/DVD -editionia ei ole käytettävissä.
Microsoftin tuotteet usein käyttävät stdcall tai safecall -kutsutapaa.
Uudemmat usein interfaceja, joille on Delphissä valmis tuki. Interfacet ainakin windowsissa ovat kieliriippumattomia, joten C:llä koodatut kirjastot toimivat Delphi -ohjelmastakin käsin mainiosti.
3. osapuolen kirjastot eivät välttämättä noudata em. sääntöjä.
näiden osalta katso mukana tulleet .h -tiedostot, ja seuraa kutsutapamäärittelyjä jos ne on tehty C:n #define:ä käyttäen, kunnes löytyy natiivi kutsutapatyyppi.
Jos se puuttuu kokonaan, tulee Delphissä määritellä cdecl;
Jos se on mainittu, tulee Delphissä käyttää alkuperäisen kutsutavan kanssa yhteensopivaa määrittelyä.
Jos C:ssä on määritelty funktio, jossa on vaihteleva määrä argumentteja, on Delphissä tätä varten varargs -direktiivi.
lisätietoja Delphin omasta helpistä löytyy hakusanoilla:
calling conventions
varargs
cdecl
stdcall
safecall
interface
lisäksi netistä köytyy englanninkielisiä artikkeleita, joissa selitetään aika hyvin, mistä on kyse. esim. täältä:
http://rvelthuis.de/articles/articles-convert.html
Tuolta löytyviä ohjeita seuraamalla voi aivan mainiosti ottaa Delphi -ohjelmassa käyttöön C:llä koodattuja kirjastoja.
Joitakin pulmia voi tosiaan tulla vastaan, mutta niihin on löydettävissä ratkaisu.
Delhi on syntaksiltaan huomattavasti C/C -kieliä selkeämpää.
Myös Delphi kääntää aidoksi konekieleksi, joten C/C :n nopeusetu on enemmän myytti kuin tosiasia. Koodaustyyli vaikuttaa kieltä enemmän.
Silloin ku nopeuden suhteen halutaa puristaa se "viimeinenkin pisara", voi Delphissä käyttää assemblerkoodia. ks: asm assembler (Delphin oma help).
Vaikka ei itse kirjoittaisi riviäkään assembleria, on assemblerin osaamisesta muuta hyötyä:
1. Helpottaa debuggaamista, jos ohjelmassa on vaikeasti löydettävä virhe
2. debuggerin avulla voi paitsi etsiä virheitä, myös katsoa, millaista assemblerkoodia Delphi on objectpascalista kääntänyt. Nopeuskriittisissä isissa ohjelmaa voi samaan tarkoitukseen kokeilla eri ratkaisumalleja, ja tutkia debuggerilla, mistä tulee tehokkainta konekielikoodia.
Näin toimimalla haihtuu C/C :n mahdollinen nopeusetu savuna ilmaan.
Myös Windows API:n tuntemuksesta on Delphikoodaajallekin hyötyä, vaikke se aloittelijalle ihan 100% välttämätöntä olekaan.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Riikka vie Suomen kohta ykköseksi työttömyyskisassa
Espanja: 10,5 % Suomi: 10,3 % Ruotsi: 9,3 % Kisa on tiukkaa, mutta Riikalla hyvä draivi päällä. Vasemmistolaisen päämin1622938Miten juhlitte ensi lauantaina?
Se on kalenteriin merkitty juhlapäiväksi, niin sitä kai kuuluu juhlia.2842620Suomen veroaste 5 %-yks liian matala
Palauttamalla kokonaisveroaste 1990-luvun tasolle saadaan hyvinvointivaltion palvelut rahoitettua ilman velan ottoa.681741Kolme neljästä suomalaisesta kannattaa miljonääriveroa
Kertoo vasemmistoliiton teettämä kysely. Veron ulkopuolelle jätettäisiin asunto. "Puolet vastaajista oli sitä mieltä, e431628Kumpaan rahat, mummojen vaippoihin vai Nalle WahIroosille?
JOS siis sinä saisit päättää?381520- 1221276
- 1101194
Ryöstö Punkaharjulla
Punkaharjun k-market ryöstetty tänään keskellä päivää, ketä lie asialla? Poliiseja ainakin pörrää ympäriisee141154Evoluutioon ja alkuräjähdykseen uskominen vaatii todella vahvaa uskoa
Että tyhjästä syntyi ja kehittyi kaikki se mitä näemme ympärillämme.3501075Uudestisyntyminen ei tapahdu kasteessa
Tässä Apostolien tekojen kohdassa näemme, että Filippus julisti hoviherralle ensin evankeliumia ja kuulusteli sitten tar2041063