Avainsanat » c/cpp
Haastattelu: MHGames
Suomipelit.com haastatteli Mika Halttusta, 2000-luvun tärkeää suomipelikehittäjää. Mikan pelinkehitysprojekti, MHGames, ei pidä itsestään suurta meteliä, mutta se on tuottanut pelaajien iloksi toinen toistaan nätimpiä ja aktivoivampia pieniä pelejä, ja vieläpä aina ilmaiseksi. Seuraavilla sivuilla erityisen monisanaiseksi ryhtynyt Mika kertoo meille, mikä on hänestä miellyttävintä ohjelmointia, miten hän on nykytilansa saavuttanut, ja paljon, paljon muuta kiinnostavaa.
Avainsanat: allegro, C#, c/cpp, delirium, enigma, formido, I have no tomatoes, java, jewels, mhgames, ogre, python, qbasic, sdl, those funny funguloids!, ultimate steroids, XNA
Fysiikkaa peliohjelmoijille – Osa 2: Kiihtyvyys ja voimat
Realistinen fysiikan mallinnus on noussut realistisen grafiikan rinnalle tärkeäksi elementiksi peleissä. Tämä artikkelisarja esittelee fysiikan mallinnuksen perusteet 2D- ja 3D-avaruudessa. Keskitymme erityisesti kiinteiden kappaleiden mekaniikkaan. Tämä on artikkelisarjan toinen osa.
Avainsanat: c/cpp, fysiikka, liike, ohjelmointi, peliohjelmointi
OpenGL:n perusteet – Osa 3: Teksturointi
OpenGL on laajassa käytössä oleva käyttöjärjestelmäriippumaton rajapinta 2D- ja 3D-grafiikan piirtoon. Tämä artikkelisarja opettaa sinulle 3D-grafiikan perusteet OpenGL:ää käyttäen. Esimerkeissä käytetään C\C++ kieltä. Tämä on artikkelisarjan kolmas osa.
Avainsanat: 2d, 3d, c/cpp, grafiikka, opengl, perusteet, teksturointi
OpenGL:n perusteet – Osa 2: 3D-grafiikka
OpenGL on laajassa käytössä oleva käyttöjärjestelmäriippumaton rajapinta 2D- ja 3D-grafiikan piirtoon. Tämä artikkelisarja opettaa sinulle 3D-grafiikan perusteet OpenGL:ää käyttäen. Esimerkeissä käytetään C\C++ kieltä. Tämä on artikkelisarjan toinen osa.
Avainsanat: 2d, 3d, c/cpp, grafiikka, opengl, perusteet
OpenGL:n perusteet – Osa 1: Ikkunan luominen
Ennen vanhaan grafiikkaa piirrettiin kirjoittamalla se suoraan näytönohjaimen muistiin. Kun tiettyyn osoitteeseen näytönohjaimen muistissa kirjoitettiin tavu, syttyi vastaavaan kohtaan näyttöä vastaavan värinen pikseli. Ja kun yksi pikseli kerran osattiin piirtää, niin monesta pikselistähän sai aikaan mitä tahansa kuvia. Kaikki kuitenkin muuttui 3D-kiihdytinten myötä. Enää grafiikkaa ei piirrettykään tietokoneen prosessorin avulla, vaan näytönohjaimen prosessorin avulla, joka on varta vasten suunniteltu grafiikan piirtämiseen ja suoriutuu tehtävästä näin ollen jopa 300 kertaa nopeammin vastaavan kellotaajuiseen keskussuorittimeen verrattuna.
Avainsanat: 2d, 3d, c/cpp, gl, grafiikka, ikkuna, ikkunan luominen, opengl, perusteet
Optimointi
Tarkoituksenani on tässä artikkelissa käydä läpi erilaisia optimointitekniikkoja yleisellä tasolla. Artikkelista olen pyrkinyt tekemään suhteellisen kattavan, jopa jossain suhteessa yleissivistävänkin. Kuten mitä tahansa artikkelia lukiessa, kannattaa suhtautua artikkelin koko sisältöön pienellä varauksella. Artikkeli on vain minun näkemykseni optimoinnista ja siihen liittyvistä vaaroista.
Optimoinnilla tarkoitetaan asioiden suorittamisen tehokkaammiksi muuttamista, tai mahdollisimman tehokkaan tavan löytämistä. Ohjelmoinnin alueella tällä tarkoitetaan yleisesti suorituskyvyn parantamista. Huomioitavaa on, että termiä voidaan käyttää myös muihin tarkoitusperiin (reitin optimointi, lineaarinen optimointi…). Tässä artikkelissa puhun kuitenkin pelkästään ohjelmakoodin suorituskyvyn optimoinnista.
LUA:n alkeet
LUA on tehokas, pienet muistivaatimukset omaava ohjelmointikieli. Sitä on käytetty skriptikielenä peleissä kuten Grim Fandago, Baldur’s Gate ja MDK2. Tämä artikkeli tutustuttaa lukijan kieleen lyhyesti ja kertoo kuinka LUA saadaan käyttöön omissa projekteissa.
DirectX 8 – DirectSound
Tämä artikkeli kertoo lukijalle, mikä on DirectSound, mihin sitä käytetään, mihin sitä ei voi käyttää, ja miksi sitä käytetään. Artikkelissa kerron asioita ja esittelen ne lyhyiden ja yksinkertaisten koodinpätkien avustamana, joten asioiden ymmärtäminen ei käy ylitsepääsemättömän vaikeaksi.
DirectX 8 – Direct Input
Tämä artikkeli käy läpi miten Direct Input -rajapintaa käytetään. Artikkeli käsittelee näppäimistön ja hiiren hallinnan ja jättää peliohjainten käytön lukijalle harjoitukseksi jolla varmistetaan, että luettu teksti on varmasti ymmärretty.
Koska kyseessä on opetustarkoitukseen tehty artikkeli, ei kaikki sen sisältämä koodi ole suoraan oikeaan ohjelmaan soveltuvaa ja muutenkin pääasiana on selkeys, ei tehokkuus. Artikkeli on pyritty jakamaan sopivan kokoisiin osioihin ja jokainen läpikäyty asia on pyritty selvittämään mahdollisimman selkokielisesti ilman aiheelle ominaisia monimutkaisia vieraskielestä johdettuja termejä. Artikkelin mukana tulee lähdekoodit esimerkkiohjelmaan, jota analysoiden asiat käydään lävitse. Lähdekoodi esimerkit on testattu Microsoft Visual C++ 6.0 ohjelmointiympäristössä.
Avainsanat: c/cpp, direct input, directx 8, näppäimistö, peliohjaimet, peliohjain
Peliohjelmoinnin peruskäsitteet – Osa 3
Tässä peliohjelmoinnin alkeiskurssin kolmannessa osassa käsitellään pelisilmukkaa, funktioita ja pelin toiminnan ja rakenteen jakamista loogisiin, helosti käsiteltäviin osiin. Samalla tehdään ristinollapelin pääohjelma.