XNA-peliohjelmointiympäristö
|
|
- Sinikka Kähkönen
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 XNA-peliohjelmointiympäristö Timo Maaranen Helsinki HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
2 Tekijä Författare - Author Timo Maaranen Työn nimi Arbetets titel - Title XNA-peliohjelmointiympäristö Oppiaine Läroämne Subject Tietojenkäsittelytiede Työn laji Arbetets art - Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages Seminaarityö sivua Tiivistelmä Referat - Abstract Tämä kirjoitus esittelee XNA-peliohjelmointiympäristön pääpiirteet yleisellä tasolla. ACM Computing Classification System (CCS): A.1 [Introductory and Survey], K.8.0 [General] Avainsanat Nyckelord - Keywords XNA, peliohjelmointiympäristöt, ohjelmistotuotanto Säilytyspaikka Förfaringsställe Where dopisited Muita tietoja Övriga uppgifter Additional information
3 ii Sisältö 1 Johdanto 1 2.NET-ohjelmistokehys 2 3 XNA-ohjelmistokehys XNA-ohjelmistokehyksen palvelut ja luokkakirjastot XNA-ohjelmistokehyksen arkkitehtuuri Pelisilmukka ja peliohjelman elinkaari Animaatio ja ajoitus Pelikomponentit Pelipalvelut Sisällön piirto XNA Game Studio 2.0 -kehitysympäristö Työkalut XACT-työkalu Peliohjelman ajaminen Xbox 360 -pelilaitteella XNA Framework Remote Performance Monitor for Xbox 360 -työkalu Sisältöputki Sisältöputken komponentit XNA Creators Club Online -yhteisö 17 Lähteet 18
4
5 1 1 Johdanto Pelien tuotanto on kasvava viihdeteollisuuden ala. Pelit monimutkaistuvat ja niiden tuotantoon kokonaisuudessaan käytetään yhä enemmän henkilötyötunteja. Suurten projektien lisäksi pienten ja suhteellisten yksinkertaisten pelien tuotantomäärät ovat kasvussa. Näitä tuotetaan niin ammattimaisesti kuin myös harrastelijamaisesti. Yhä useamman unelmana on tehdä pelejä, mutta mukaan pääseminen ei välttämättä ole kovin helppoa. Työkalut ja kehitysympäristöt eivät välttämättä ole halpoja, ja niiden käytön oppiminen on vaikeaa ja työlästä. Pelien ohjelmointiin on aina kuulunut se periaate, että peliä ajavasta alustasta on pyritty ottamaan kaikki hyöty irti, vähän pelin suunnittelusta riippuen. Pelialustojen nopea kehitys on osittain vähentänyt tätä tarvetta, sillä monet pelit voidaan toteuttaa käyttämättä aivan kaikkea alustan laskentatehoa. Ohjelmakoodin optimoinnin sijaan aikaa kannattaisi monesti käyttää itse pelin suunnitteluun, mikä on monessa tapauksessa loppukäyttäjälle, eli pelaajalle, huomattavasti tärkeämpää kuin pelin sisäisen toteutuksen yksityiskohdat. Pelin mekaniikka, käyttöliittymän toimivuus sekä pelaajan yleinen tuntuma pelistä määrittelee pitkälti sen, kuinka hyvänä pelinä peli koetaan. Edellä mainitut syyt ovat osaltaan vaikuttaneet siihen, että erilaiset laitteistoriippumattomat, ajonaikaisissa ympäristöissä toimivia virtuaalikoneita hyödyntävät ja muistinhallintaa automatisoivat ohjelmointikielet ovat yleistyneet myös peliohjelmoinnissa. Niiden avulla erityisesti yksikertaisempien pelien ohjelmointitaakkaa on voitu helpottaa. Samalla peliohjelmistoihin jäävien virheiden määrää on saatu pienemmäksi, koska esimerkiksi yleiset muistivuodot eivät ole yhtä tavallisia muistinhallintaa automatisoivissa kielissä. Toisaalta virtuaalikone mahdollistaa peliohjelmiston helpomman siirrettävyyden muille alustoille, mikä potentiaalisesti laajentaa asiakaskuntaa huomattavasti.
6 2 Eräs näitä periaatteita hyödyntävä pelinkehitysympäristö on Microsoftin kehittämän.netohjelmistokehyksen (.NET Framework) päälle rakennettu XNA-ohjelmistokehys (XNA Framework) [Mic08a]. Yhdessä XNA Game Studio -kehitystyökalujen kanssa XNAohjelmistokehys muodostaa XNA-pelinkehitysympäristön, joka tarjoaa mahdollisuuden kehittää pelejä Windows ja Xbox 360 -pelialustoille pienellä tai olemattomalla taloudellisella panostuksella ja suhteellisen vähäisellä opettelulla. 2.NET-ohjelmistokehys.NET-ohjelmistokehyksen dokumentaatiosta [Mic08b] selviää, että.net-ohjelmistokehys on tarkoitettu helpottamaan sovellusten kehitystä erityisesti Windows-alustalle, mutta se on käytössä myös monissa pienemmän mittakaavan laitteissa, kuten matkapuhelimissa..netohjelmistokehys koostuu laajasta luokkakirjastosta ja ajoympäristöstä (Common Language Runtime, CLR). CLR-ajoympäristö suorittaa sovellukset virtuaalikoneessa, joka kääntää ajonaikana esikäännettyä ohjelmakoodia (Microsoft Intermediate Language, MSIL) alustalle sopivaksi binäärikoodiksi. Sovellus voidaan kirjoittaa monilla eri ohjelmointikielellä, mutta suosituin lienee C# (C-sharp), mitä käytetään myös pääasiassa XNApeliohjelmointiympäristössä. Kuvassa 2.1 havainnollistetaan.net -ohjelmistokehyksen toimintaa..net-ohjelmistokehyksestä on olemassa useita eri versioita. Xbox 360 -pelikonsolissa on.net Compact Framework 2.0 -ohjelmistokehys, mikä on normaalin.net Framework 2.0 -ohjelmistokehyksen supistettu versio. Tämä täytyy ottaa huomioon, kun peliohjelmistoa kehitetään XNA Game Studio -kehitysympäristössä, sillä kaikki.net-ohjelmistokehyksen tarjoamat palvelut eivät ole käytössä supistetussa versiossa.
7 Kuva 2.1: Kuvassa havainnollistetaan sovelluksessa käytetyn ohjelmointikielen käsittelyn etenemistä varsinaiseksi alustan konekieleksi. [Wik08] 3
8 4 3 XNA-ohjelmistokehys Tässä luvussa ja sen aliluvuissa esitetyt tiedot perustuvat XNA-ohjelmistokehyksen dokumentaation [Mic08a]. XNA-ohjelmistokehys perustuu.net-ohjelmistokehykseen laajentaen sitä erityisesti peliohjelmistoissa yleisesti käytettävillä luokilla ja palveluilla. XNA-ohjelmistokehys sisältää kokoelman luokkia, joita käyttämällä voidaan vähentää peleissä usein käytettyjen komponenttien uudelleen kirjoittamisen tarvetta. Lisäksi luokat piilottavat laitteistokohtaiset yksityiskohdat ja eroavaisuudet muutamaa poikkeusta lukuun ottamatta. Tämä helpottaa ohjelmointityötä ja erityisesti ohjelmakoodin yhteensopivuutta eri alustoilla. Xbox 360 -alustalla XNA -ohjelmistokehyksen perustana on.net Compact Framework 2.0 ja Windows-alustalle perustana on.net Framework 2.0. Vaikka yleensä peliohjelmistoissa käytettynä näiden ohjelmistokehysten erot eivät juuri tule esille, se tulee silti huomioida erityisesti, jos haluaa yhteensopivuuden säilyvän alustalta toiselle. 3.1 XNA-ohjelmistokehyksen palvelut ja luokkakirjastot XNA-ohjelmistokehys luo sitä käyttävälle pelille ympäristön, jossa on monia hyödyllisiä palveluita ja luokkakirjastoja. Tärkein palvelu on pelisilmukka, joka automatisoi pelilogiikan päivityksen ja piirtorutiinien kutsumisen. Muita hyödyllisiä palveluita on esimerkiksi pelikomponentit (game components) ja pelipalvelut (game services). Luokkakirjastot sisältävät myös runsaasti ohjelmointityötä yksinkertaistavia työkaluja, kuten matemaattisia operaatioita, pelin sisällön käsittelyä ja pelaajan vuorovaikutuksen hallintaa yksinkertaistavia luokkia. Sisällön piirtoon liittyvät luokat ovat kattavat ja joustavat. Taulukossa 1 on listattu XNA-ohjelmistokehyksen luokkakirjastojen nimiavaruudet ja niiden sisältämien luokkien pääasialliset toiminnot.
9 Nimi Microsoft.XNA.Framework Microsoft.XNA.Framework.Audio Selitys Sisältää usein käytetyt luokat kuten ajastimet ja pelisilmukat. Sisältää matalan tason ohjelmointirajapinnan metodit, joilla avataan ja käsitellään XACTtyökalulla tuotettuja äänitiedostoja. Microsoft.XNA.Framework.Content Sisältää ajonaikaiset sisältöputken Microsoft.XNA.Framework.Design Microsoft.XNA.Framework.GameServices Microsoft.XNA.Framework.Graphics Microsoft.XNA.Framework.Graphics.Packe dvector Microsoft.XNA.Framework.Input Microsoft.XNA.Framework.Net Microsoft.XNA.Framework.Storage komponentit. Tarjoaa yhdenmukaistetun tavan muuttaa oliotyyppejä toisiksi oliotyypeiksi. Sisältää luokkia, jotka toteuttavat erilaisia pelaajiin liittyviä palveluita. Nämä palvelut keskustelevat joko suoraan pelaajan kanssa, pelaajan tietojen kanssa, tai muutoin kuvastavat pelaajan tekemiä valintoja. Sisältää matalan tason ohjelmointirajapinnan, joka mahdollistaa alustan grafiikkaprosessorien ohjelmoimisen. Sisältää luokkia, joilla voidaan muuttaa tietotyyppejä kompaktiin binäärimuotoon ja kompaktista muodosta takaisin laajennettuun muotoon. Sisältää luokat, jotka saavat syötteet näppäimistöltä, hiireltä ja Xbox 360 -peliohjaimelta. Sisältää luokat, jotka toteuttavat tuen monenlaisille verkko-ominaisuuksille, kuten Xbox LIVE ja moninpeli. Sisältää luokkia, joiden avulla tietotyyppejä voidaan muuttaa bittivirroiksi ja takaisin, sekä kirjoittaa ja lukea bittivirtoja massamuisteilta. Taulu 3.1: Taulukossa on listattu XNA-ohjelmistokehyksen luokkakirjaston nimiavaruudet ja näiden sisältämien luokkien tehtävät ja tarjoamat palvelut pääpiirtein. [Mic08a] 5
10 6 3.2 XNA-ohjelmistokehyksen arkkitehtuuri XNA-ohjelmistokehyksen käyttö perustuu malliin, jossa XNA-ohjelmistokehys yksinään muodostaa ajettavan peliohjelman rungon. Tämä runko ei sinänsä ole mielenkiintoinen peliohjelma, sillä se ei tee mitään ulospäin näkyvää. Varsinainen peli tuleekin rakentaa tämän rungon päälle laajentaen sen toiminnallisuutta. Tämä tapahtuu siten, että pelin pääluokka perii Microsoft.XNA.Framework.Game -luokan. XNA-ohjelmistokehys tarjoaa Game-luokan kautta käytössä olevan pelisilmukan, joka kutsuu automaattisesti Game-luokan Initialize-, Update- ja Draw-metodeja. Peliohjelman tulee korvata (override) nämä metodit ja suorittaa kaikki pelin toiminnallisuus näistä käsin. Update-metodi on vastuussa pelilogiikan päivityksestä. Draw-metodi on vastuussa pelin sisällön piirtämisestä. Initialize-metodin vastuulla on suorittaa tarpeelliset alustukset ennen ensimmäistä Update- ja Draw-metodien kutsua. 3.3 Pelisilmukka ja peliohjelman elinkaari Peliohjelman käynnistyy, kun kutsutaan luokan Game metodia Run. XNA-ohjelmistokehys hoitaa tämän kutsun. Kutsu käynnistää pelisilmukan, joka ensimmäisenä kutsuu pelin pääluokan Initialize-metodia. Tämän jälkeen kutsutaan Update-metodia ja viimeisenä Drawmetodia. Peliohjelman suoritus lakkaa, kun luokan Game metodia Exit kutsutaan.
11 7 XNA-ohjelmistokehys tarjoaa kaksi eri tapaa, jolla pelisilmukka kutsuu peliohjelman päivitys- ja piirtorutiineja. Oletuksena pelisilmukka kutsuu Update- ja Draw-metodia tietyin aikavälein, joka on säädettävissä. Oletuksena aikaväli on 1/60 sekuntia, ja ajan voi säätää muuttamalla luokan Game kentän TargetElapsedTime arvoa. Kun viimeisimmästä Updatemetodin kutsusta on kulunut asetettu aika, XNA-ohjelmistokehys kutsuu Update-metodia. Jos metodikutsun paluun jälkeen aikaa on vielä jäljellä seuraavaan Update-metodikutsuun, pelisilmukka kutsuu Draw-metodia. Jos tämän kutsun paluun jälkeen aikaa on vielä jäljellä, pelisilmukka nukkuu, kunnes on seuraavan Update-metodikutsun aika. Jos Updatemetodikutsu kestää pidemmän aikaa kuin kutsujen välinen aika, pelisilmukka asettaa luokan GameTime kentän IsRunningSlowly arvoksi TRUE ja kutsuu Update-metodia uudestaan niin useasti kuin kuluneessa ajassa on oletettavissa asetetulla aikavälillä. Tällaisissa tapauksissa peliohjelman tulee reagoida tilanteeseen esimerkiksi keventämällä Update-metodissa tehtäviä toimenpiteitä. Kun Update-kutsut on suoritettu ja aikaa on taas jäljellä seuraavaan kutsuun, Draw-metodia kutsutaan jälleen. Toinen tapa kutsua Update- ja Draw-metodeja on kutsua niitä sarjassa niin usein kuin mahdollista. Tämä tapahtuu asettamalla luokan Game kentän IsFixedTimeStep arvoksi FALSE. Tällöin kentän TargetElapsedTime ei ole merkitystä. 3.4 Animaatio ja ajoitus Pelisilmukan päivitystapa vaikuttaa oleellisesti siihen, kuinka peliohjelman tulisi huomioida kuluva aika. Jos käytössä on oletuksena oleva kiinnitetty pelisilmukan päivitys, peliohjelma voi olettaa, että Update-metodia kutsutaan aina sovituin ajanjaksoin. Kaikki peliohjelman suorittama animaatio ja ajoitus voidaan tällöin perustaa tähän oletukseen ja asetettua päivitysaikaa voidaan suoraan käyttää kuluneena aikana. Jos sen sijaan Update-metodia kutsutaan niin usein kuin mahdollista, aikavälit sen kutsujen välillä voi vaihdella suurestikin. Tällöin animaatio ja ajoitus tulee perustaa GameTime-luokan kenttään ElapsedGameTime. ElapsedGameTime sisältää kunkin Update-metodin kutsun yhteydessä ajan, joka on kulunut edellisestä Update-metodin kutsusta.
12 8 3.5 Pelikomponentit Pelikomponentit ovat pelin pääluokkaan rinnastettavia ohjelmakomponentteja, joilla on omat Intialize-, Update- ja Draw-metodit. Pelikomponentit tarjoavat modulaarisen tavan lisätä toiminnallisuutta peliohjelmaan. Niiden avulla peliohjelmiston arkkitehtuuria voidaan myös selkeyttää. Ideaalitapauksessa pelikomponentti hoitaa jonkin suurehkon kokonaisuuden päivittämisen. Tyypillisesti pelikomponentti hoitaa esimerkiksi pelin vihollisyksikköjen tekoälyn päivittämisen. Pelikomponentit eivät sovellu käytettäväksi runsaslukuisina pienten osa-alueiden hoitamiseen, sillä tämä voi hidastaa pelisilmukan kiertoaikaa, johtuen pelikomponenttien käsittelytavasta. Pelikomponentit voidaan jakaa kahteen luokkaan sen mukaan, suorittaako pelikomponentti sisällönpiirtoa vai ei. Pelikomponentit, jotka eivät suorita sisällön piirtoa, perivät luokan GameComponent ja korvaavat tämän luokan Initialize- ja Update-metodit. Sisällönpiirtoa suorittavat pelikomponentit perivät DrawableGameComponent luokan ja korvaavat sen Initialize-, Update-, ja Draw-metodit. Sisällönpiirtoa suorittaville pelikomponenteille voidaan määrätä piirtojärjestys DrawableGameComponent.DrawOrder-kentillä. Pelikomponentit rekisteröidään metodilla Game.Components.Add-metodilla. Tämän jälkeen pelisilmukka kutsuu rekisteröityjen pelikomponenttien Initialize-, Update-, ja Draw-metodeja automaattisesti pääluokan vastaavien metodien rinnalla. 3.6 Pelipalvelut Pelipalvelu on mekanismi, jolla olioiden välisiä vuorovaikutuksia voidaan hoitaa keskitetysti ilman tiukkoja olioiden välisiä sidoksia. Pelipalvelussa oleellisessa osassa on välittäjä, joka tässä tapauksessa on Game.Services-luokka. Välittäjälle rekisteröidään olioita, jotka toteuttavat tiettyjä palveluita. Tämän jälkeen ne oliot, jotka tarvitsevat näitä palveluita, voivat pyytää haluamaansa palvelua välittäjältä. Näin palvelun käyttäjällä ei tarvitse olla suoraa viittausta palvelua tarjoavaan olioon. Riittää, että palvelua tarvitseva tietää palvelun tyypin.
13 9 Palvelun tyyppi määritellään rajapinnan (interface) kautta. Palvelua tarjoava luokka toteuttaa tämän rajapinnan. Tästä luokasta luodaan instanssi ja syntynyt olio rekisteröidään Game.Services-luokkaan Services.AddService-metodilla antamalla parametreina viittaus palvelua tarjoavaan olioon sekä sen toteuttamaan rajapintaan. Kun jokin toinen luokka tarvitsee kyseisen rajapinnan toteuttavaa oliota, se pyytää sitä Game.Services-luokalta Services.GetService-metodilla, jolle se antaa syötteenä palvelun tunnisteena toimivan rajapinnan. Metodi palauttaa viittauksen palvelun toteuttavaan olioon ja palvelu on tämän jälkeen käytössä rajapinnan kautta. 3.7 Sisällön piirto Graphics-nimiavaruus tarjoaa kattavan luokkakirjaston ja rajapinnan pelin visuaalisen sisällön käsittelyyn ja piirtoon. Sen tarjoama piirtotapa perustuu perinteisiin kolmiulotteisiin rautalankamalleihin (mesh), pintakuvioihin ja valaistuksiin. Piirtoprosessi muistuttaa Microsoft DirectX-rajapintaa, mutta rajapinta on sitä yleisemmällä tasolla varjostinohjelmia lukuun ottamatta. Lähes kaikki piirto perustuu efekteihin, jotka määritellään Effect-luokan avulla. Effectluokkaan määritellään varjostinohjelmia, jotka suorittavat varsinaisen piirron. Piirron yhteydessä haluttu efekti kytketään päälle, ennen kuin rautalankamallin piirto suoritetaan, jolloin piirretty rautalankamalli piirretään päälle kytketyn efektin sisältämillä varjostinohjelmilla. Varjostinohjelman voidaan kirjoittaa joko matalan tason shader assembly language -kielellä (ASM) tai korkean tason high-level shader language -kielellä (HLSL). Windows-alustalla tuetut varjostinohjelmamallit ovat Shader Model 1.x, 2.x ja 3.0. Xbox 360 -alustalle tuetaan malleja 2.0 sekä laajennettua versiota mallista 3.0. Varjostinohjelmia kirjoittaessa kohdealustan ominaisuudet tulee ottaa huomioon, ja erityisesti Windows-alustalla on varauduttava siihen, että tuetut varjostinmallit voivat vaihdella käyttäjien laitteistojen välillä.
14 10 Varjostinohjelmat voidaan kirjoittaa esimerkiksi erilliseen tiedostoon, josta ne ladataan ja käännetään ennen piirtoa. Varjostinohjelmatiedosto voi sisältää useita erilaisia verteksivarjostimia ja pikselivarjostimia sekä tekniikoita (technique). Tekniikoihin määritellään, mitä varjostinohjelmia kyseisessä tekniikassa käytetään. Tekniikkamäärittely voi sisältää myös useita pyyhkäisyjä (pass). Pyyhkäisyjen avulla piirto voidaan jakaa osiin niin että sisältö, tai määritelty osa sisällöstä, piirretään useaan kertaan erilaisilla varjostinyksikkökombinaatioilla ennen kuin tulos piirretään ruutuun. Graphics-nimiavaruuden sisältämä SpriteBatch-luokka tarjoaa vaihtoehtoisen tavan piirtää sisältöä, erityisesti silloin kun kolmiulotteisuutta ei tarvita. SpriteBatch-luokan avulla kaksiulotteisia kuvia voidaan piirtää hyvin pienellä ohjelmointityöllä. Piirron yhteydessä kuvia voidaan myös esimerkiksi kiertää ja skaalata. SpriteBatch-luokalla voidaan piirtää myös perinteisen kolmiulotteisen piirron yhteydessä, joten se tarjoaa kätevän tavan piirtää pelin näkymään erikoistehosteita, kuten partikkeleita muodostettuja savu- ja tulitehosteita yms. 4 XNA Game Studio 2.0 -kehitysympäristö Tässä luvussa ja sen aliluvuissa esitetyt tiedot perustuvat XNA-ohjelmistokehyksen dokumentaation [Mic08a]. XNA Game Studio -kehitysympäristö on työkalukokoelma pelien kehittämiseen XNA Framework -ohjelmistokomponenttikirjastoa käyttäen Windows ja Xbox 360 -alustoille. XNA Game Studio perustuu Microsoft Visual Studio -työkaluihin, ja se on erityisesti suunnattu harrastajille ja opiskelijoille. Kehitysympäristön työkalut ovat ilmaisia ja ainoastaan Visual C# 2005 Express Edition -ohjelmistokehitysympäristö vaatii ilmaisen rekisteröitymisen. Pelien kehitys Windows-alustalle on täysin ilmaista, mutta Xbox 360 -alusta vaatii XNA Creators Club -jäsenyyden. XNA Creators Club -jäsenyys on maksullinen ja sen avulla peliohjelmia voi ajaa Xbox 360 -alustalla ja jakaa toisille XNA Creators Club -jäsenille. Microsoft DreamSpark -kampanjan myötä opiskelijoilla on mahdollisuus saada XNA Creators Club -jäsenyys vuodeksi ilmaiseksi [9St08].
15 11 XNA Game Studio -kehitysympäristössä voi kehittää kaupallisia pelejä Windows-alustalle, mutta toistaiseksi kaupallisten pelien kehitys Xbox 360 -alustalle ei onnistu. Tilanteeseen on kuitenkin ilmeisesti tulossa muutos lähiaikoina. 4.1 Työkalut XNA Game Studio 2.0 -kehitysympäristö sisältää XNA Framework -ohjelmistokomponenttikirjastoa käyttävän pelin kehittämisessä tarvittavat oleelliset työkalut. Työkalut asennetaan jonkin Visual Studio ohjelmistokehitysympäristön version päälle, jolloin ne integroituvat osaksi tätä. Visual C# 2005 Express Edition -ohjelmistokehitysympäristö on ilmainen vaihtoehto kehitysympäristöksi, johon työkalut voi integroida. Osa työkaluista on huomaamattomasti integroitu valittuun kehitysympäristöön. Nämä ohjaavat peliohjelmistoprojektin hallintaa monella tavoin, kuten helpottavat kääntämistä ja peliohjelman ajamista sekä peliresurssien hallintaa. Selkeästi erillisiä työkaluja ovat mm. XNA Game Studio Device Center, jolla hallitaan yhteyksiä Xbox 360 -pelilaitteisiin, XACTtyökalu sekä XNA Framework Remote Performance Monitor for Xbox 360 -työkalu. Xbox 360 -pelilaitteelle on myös XNA Game Studio Connect -työkalu, jonka avulla peliohjelmia voi ajaa kyseisellä laitteella kehitysympäristöstä käsin yhdessä XNA Game Studio Device Center -työkalun kanssa.
16 XACT-työkalu XACT-työkalua (Cross Platform Audio Creation Tool) käytetään ääninäytteiden organisointiin sekä äänitehosteiden ja musiikin suunnitteluun. Sen tarkoitus on mm. helpottaa äänisuunnittelijan ja ohjelmoijan työnjakoa ja yhteistyötä. Sen avulla äänisuunnittelija voi koota ääninäytteitä aaltopankeiksi (wave bank) sekä määritellä ohjeita äänien soittamista varten äänipankkeihin (sound bank). Aaltopankki on tiedosto, joka sisältää useita eri äänitiedostoja. Äänipankki taas sisältää ohjeita äänitiedostojen soiton ajoituksesta ja taajuuksista, eli eräänlaisia nuottisekvenssejä. Äänisuunnittelija voi esimerkiksi koostaa äänipankkiin äänitehosteita, jotka kostuvat useammasta eri ääninäytteestä, ja määritellä niille variaatioita. XACT-työkalu tarjoaa äänisuunnittelijalle myös mahdollisuuden testata äänitehosteita ja musiikkia Xbox 360 -laitteistolla XACT Auditioning Utility -työkalun avulla, joka yhdistää XACT-työkalun Xbox 360 -laitteeseen. Tämä mahdollistaa äänitehosteiden ja musiikin toiston toimivuuden tarkastelun kohdealustassa. XACT-työkaluun kuuluu oleellisena osana myös ohjelmointirajapinta, jonka kautta aaltopankit ja äänipankit on helppo avata ja toistaa pelisovelluksessa. Koska variaatiot ovat määritelty etukäteen, ohjelmoijan työ helpottuu. Äänisuunnittelija on voinut tehdä muuttujamäärityksiä, joiden avulla ohjelmoija voi muuttaa dynaamisesti äänien toistoon liittyviä parametreja peliohjelmasta käsin ajon aikana. 4.3 Peliohjelman ajaminen Xbox 360 -pelilaitteella Peliohjelman ajaminen Xbox 360 -pelilaitteella vaatii ilmaisen Silver Xbox Live -jäsenyyden, maksullisen XNA Creators Club -jäsenyyden ja kiintolevyllä varustetun Xbox 360 -pelilaitteen. Yhteys Xbox Live -verkkopalveluun täytyy olla myös auki koko prosessin ajan.
17 13 Xbox 360 -pelilaite kytketään lähiverkkoon XNA Game Studio -kehitysympäristön sisältävän tietokoneen kanssa ja niin että ne ovat samassa aliverkossa. Tämä jälkeen Xbox 360 -pelilaitteelle asennetaan ilmainen XNA Game Studio Connect -ohjelma Xbox Live Marketplace -kauppapaikasta ja ohjelma käynnistetään. XNA Game Studio Connect asetetaan vastaanottavaan tilaan ja ohjelman tulostama avainkoodi kopioidaan. Tämän jälkeen kehitysympäristöstä käynnistetään XNA Game Studio Device Center -työkalu, johon avainkoodi syötetään. Nyt yhteys on valmis ja peliohjelma voidaan lähettää kehitysympäristöstä ajettavaksi Xbox 360 -pelilaitteelle. 4.4 XNA Framework Remote Performance Monitor for Xbox 360 -työkalu XNA Framework Remote Performance Monitor for Xbox 360 -työkalu on pelisovelluksen suoritustehon tarkkailutyökalu Xbox 360 -pelilaitteelle. Sen avulla voidaan kerätä monenlaista tietoa suoritustehosta ja suorituksen kulusta suoraan CLR-ajoympäristöstä. Kerätty tieto voidaan näyttää kehitysalustana käytetyssä PC -tietokoneessa, joka on yhdistetty Xbox 360 -pelilaitteeseen lähiverkon välityksellä. Kerätty tieto sisältää esimerkiksi tietoja poikkeuksissa, roskien kerääjän tilasta, JIT-kääntäjän toiminnasta, säikeistä, yms. Nämä tiedot voivat olla hyvin tärkeitä erityisesti peliohjelmiston virheiden etsinnässä sekä optimoinnissa.
18 Sisältöputki Sisältöputki (content pipeline) on XNA Game Studio -ohjelmistokehitysympäristön ja XNAohjelmistokehyksen tapa käsitellä pelin sisältöä. Se koostuu pelin sisällölle tietyssä järjestyksessä suoritettavista toiminnoista. Sisältöputki suorittaa ensimmäiset toiminnot projektin kääntämisen aikana ja viimeiset ajonaikana, kun sisältöä ladataan. Putki koostuu erilaisista käsittelyvaiheista, joissa kussakin sisällölle tehdään tiettyjä ennalta määrättyjä muunnoksia. Sisältöputken muunnosvaiheet muunnosjärjestyksessä ovat sisällön tuonti, sisällön käsittely, sisällön kääntäminen ja sisällön lataus. Kutakin muunnosvaihetta hoitaa sisältötyyppiin sidottu komponentti, jotka ovat sisällöntuojat (importers), sisällönkäsittelijät (content processors), sisällönkääntäjät (content compilers) ja sisällönlataajat (content loaders). Kukin vaihe saa syötteenä edellisen vaiheen tulosteen. Kuvassa 5.1 havainnollistetaan sisältöputken eri vaiheita sekä vaiheiden syötteitä ja tulosteita.
19 15 Kuva 1.1: Kuvassa havainnollistetaan pelin sisällön käsittelyn vaiheita sisältöputkessa. Sisältöputken oletustoteutukseen sisältyvät komponentit osaavat käsitellä joitain oleellisimpia tiedostomuotoja. Usein kuitenkin pelinkehittäjä haluaa käyttää tiedostomuotoja, joita perustoteutus ei tue. Sisältöputken arkkitehtuurissa tämä on otettu huomioon, sillä sisältöputkeen voi lisätä tuettuja tiedostomuotoja lisäämällä siihen omia komponentteja. Tämä mahdollistaa sen, että sisältöputki pystyy käsittelemään mielivaltaisessa muodossa olevia tiedostomuotoja, kun vain sopivat komponentit on ohjelmoitu.
20 Sisältöputken komponentit Sisällöntuojan tehtävä on ladata pelin sisältö lähdetiedostosta projektin käännösvaiheessa ja muuttaa se tiedoston sisältöä vastaavaksi olioksi. Olio voi perustua Content Document Object Model -malliin (Content DOM), johon sisältyy vahva määritys pelin sisällölle, kuten esimerkiksi rautalankamalleille, vertekseille ja pintakuviointikuville (texture). Toisaalta olion sisältämä tieto voi olla täysin itse määritelty. Sisällön tuoja voi käyttää väliaikaistiedostoja muunnettujen lähdetiedostojen säilyttämiseen. Väliaikaistiedostot ovat XML-muodossa ja niiden tarkoitus on helpottaa virheiden etsintää sekä nopeuttaa projektin tulevia käännösprosesseja. Sisällönkäsittelijä ottaa syötteenä sisällön tuojan muodostaman olion ja muodostaa siitä olion, jota peliohjelma voi käyttää ajon aikana. Sisällön käsittelijä määrittelee myös, kuinka luotu olio tallennetaan bittivirraksi. Jos sisällön tuoja antaa tulosteena Content DOM -muotoisen olion, se voidaan käsitellä suoraan sisältöputken kirjastoluokilla. Jos taas sisällön käsittelijän muodostama olio on itse määritelty, sisällön käsittelijän tulee määritellä myös, kuinka se tallennetaan bittivirraksi. Sisällönkääntäjä saa syötteenä sisällön käsittelijöiden tuottamat bittivirrat. Jokainen pelin sisältöosanen on muutettu sitä vastaavaksi bittivirraksi, ja sisällön kääntäjän tehtävä on pakata nämä bittivirrat XNA-ohjelmistokehyksen omaan sisäiseen pakattuun tiedostomuotoon. Tämä prosessi on suljettu, joten sitä ei pysty muokkaamaan laajennoksin. Sisällönlataaja lataa pelin sisällön ajon aikana muistiin luoden niistä olioita, joita sisällön käsittelijä määritteli projektin käännösvaiheessa. Kun oliot on luotu, ne ovat suoraan käyttövalmiina ilman erillisiä käsittelyjä.
21 17 5 XNA Creators Club Online -yhteisö XNA Creators Club Online -yhteisö [Mic08c] on XNA-pelinkehitysympäristöä käyttäville pelinkehittäjille perustettu yhteisö. Yhteisö rakentuu yhteisön www-sivujen ympärille. Yhteisön www-sivut sisältävät monenlaisia tukipalveluja pelinkehittäjille. Sivuilta löytyy mm. tietoa tapahtumista ja kilpailuista, uutisia yhteisöön ja työkaluihin liittyen, keskustelupalsta liittyen yleisiin sekä teknisiin asioihin ja monenlaisia artikkeleita aiheista kuten työkalujen käytöstä ja peliohjelmoinnin yksityiskohdista. Käytännössä kaikki, mitä aloitteleva XNApelinkehitysympäristön käyttäjä tarvitsee, löytyy tältä sivustolta, joten se on hyvä aloituspaikka kaikille XNA-pelinkehitysympäristöstä kiinnostuneille.
22 18 Lähteet 9St08 9Star Research, Inc., Microsoft DreamSpark, [ ] Mic08a Microsoft Corporation, XNA Developer Center, [ ] Mic08b Microsoft Corporation,.NET Framework Developer Center, [ ] Mic08c Microsoft Corporation, XNA Creators Club Online, [ ] Wik08 Wikipedia,.NET, [ ]
Selainpelien pelimoottorit
Selainpelien pelimoottorit Teemu Salminen Helsinki 28.10.2017 Seminaaritutkielma Helsingin yliopisto Tietojenkäsittelytiede ! 1 HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta
Lisätiedotarvostelija OSDA ja UDDI palveluhakemistoina.
Hyväksymispäivä Arvosana arvostelija OSDA ja UDDI palveluhakemistoina. HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto Fakultet/Sektion Faculty/Section Laitos Institution
Lisätiedot.NET ajoympäristö. Juha Järvensivu 2007
.NET ajoympäristö Juha Järvensivu juha.jarvensivu@tut.fi 2007 Käännösprosessi C# lähdekoodi C# kääntäjä CILtavukoodi JITkäännös Ajettava natiivikoodi Kehitysympäristössä ohjelmoijan toimesta Ajonaikana.NET
LisätiedotWindows 8.1:n vaiheittainen päivitysopas
Windows 8.1:n vaiheittainen päivitysopas Windows 8.1:n asennus ja päivitys Päivitä BIOS, sovellukset ja ohjaimet ja suorita Windows Update Valitse asennustyyppi Asenna Windows 8.1 Käy Samsungin päivitystukisivust
LisätiedotAndroid ohjelmointi. Mobiiliohjelmointi 2-3T5245
Android ohjelmointi Mobiiliohjelmointi 2-3T5245 Mikä on Android? Linux kernelin päälle rakennettu, Googlen kehittämä sovelluspino mobiilisovelluksiin Erillinen versio puhelimelle ja taulutietokoneille
LisätiedotConcurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo
Concurrency - Rinnakkaisuus Group: 9 Joni Laine Juho Vähätalo Sisällysluettelo 1. Johdanto... 3 2. C++ thread... 4 3. Python multiprocessing... 6 4. Java ExecutorService... 8 5. Yhteenveto... 9 6. Lähteet...
LisätiedotJärjestelmäarkkitehtuuri (TK081702)
Järjestelmäarkkitehtuuri (TK081702) yleistyvät verkkopalveluissa Youtube Google... Avaavat pääsyn verkkopalvelun sisältöön. Rajapintojen tarjoamia tietolähteitä yhdistelemällä luodaan uusia palveluja,
LisätiedotUutta Remote Support Platform 3.0 -versiossa
Uutta Remote Support Platform for SAP Business One Asiakirjaversio: 1.0 2012-10-08 Kaikki maat Typografiset merkintätavat Kirjasintyyli Esimerkki Näytöstä lainatut sanat tai merkit. Näitä ovat kenttien
LisätiedotYlläpitodokumentti. Boa Open Access. Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Ylläpitodokumentti Boa Open Access Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Ilmari
LisätiedotCUDA. Moniydinohjelmointi 17.4.2012 Mikko Honkonen
CUDA Moniydinohjelmointi 17.4.2012 Mikko Honkonen Yleisesti Compute Unified Device Architecture Ideana GPGPU eli grafiikkaprosessorin käyttö yleiseen laskentaan. Nvidian täysin suljetusti kehittämä. Vuoden
LisätiedotBlueJ ohjelman pitäisi löytyä Development valikon alta mikroluokkien koneista. Muissa koneissa BlueJ voi löytyä esim. omana ikonina työpöydältä
Pekka Ryhänen & Erkki Pesonen 2002 BlueJ:n käyttö Nämä ohjeet on tarkoitettu tkt-laitoksen mikroluokan koneilla tapahtuvaa käyttöä varten. Samat asiat pätevät myös muissa luokissa ja kotikäytössä, joskin
LisätiedotDart. Ryhmä 38. Ville Tahvanainen. Juha Häkli
Dart Ryhmä 38 Ville Tahvanainen Juha Häkli 1.LYHYESTI Dart on luokkapohjainen, yksiperintäinen, puhdas olio-ohjelmointikieli. Dart on dynaamisesti tyypitetty. Sovellukset on organisoitu modulaarisiksi
LisätiedotMaiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi)
Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Tietokannan hallinta-opintojakson selvitysraportti Huhtikuu 2010 Mediatekniikka ICT/Teknologia Tämän teosteoksen käyttöoikeutta koskee Creative
LisätiedotELM GROUP 04. Teemu Laakso Henrik Talarmo
ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................
LisätiedotEMVHost Online SUBJECT: EMVHOST ONLINE CLIENT - AUTOMAATTISIIRROT COMPANY: EMVHost Online Client sovelluksen käyttöohje AUTHOR: DATE: 15.03.
EMVHost Online SUBJECT: COMPANY: COMMENTS: AUTHOR: EMVHOST ONLINE CLIENT - AUTOMAATTISIIRROT NETS OY EMVHost Online Client sovelluksen käyttöohje NETS OY DATE: 15.03.2011 VERSION: 1.0 1 SISÄLLYS SISÄLLYS...
LisätiedotDumpDbox-ohjelmiston asennus- ja käyttöohjeet Sisällys
DumpDbox-ohjelmiston asennus- ja käyttöohjeet Sisällys 1. Esittely... 2 2. Asennusohjeet... 2 3. Yleiskuva ohjelmistosta... 3 4. Tietojen siirtäminen D-Boxin avulla... 4 4.1. Piirturitiedostojen siirtäminen...
LisätiedotTämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:
Dokumentaatio, osa 1 Tehtävämäärittely Kirjoitetaan lyhyt kuvaus toteutettavasta ohjelmasta. Kuvaus tarkentuu myöhemmin, aluksi dokumentoidaan vain ideat, joiden pohjalta työtä lähdetään tekemään. Kuvaus
LisätiedotJAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?
JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: http://java.sun.com/docs/books/tutorial/index.html Vesterholm, Kyppö: Java-ohjelmointi,
LisätiedotAS-0.1103 C-ohjelmoinnin peruskurssi 2013: C-kieli käytännössä ja erot Pythoniin
AS-0.1103 C-ohjelmoinnin peruskurssi 2013: C-kieli käytännössä ja erot Pythoniin Raimo Nikkilä Aalto-yliopiston sähkötekniikan korkeakoulu - Automaation tietotekniikan tutkimusryhmä 17. tammikuuta 2013
LisätiedotValppaan asennus- ja käyttöohje
Versio Päiväys Muokkaaja Kuvaus 0.9 16.2.2006 Tuukka Laakso Korjattu versio 0.1 Antti Kettunen Alustava versio Sisällysluettelo 1 Johdanto...2 2 Valppaan asennus...3 2.1 Valppaan kääntäminen...3 2.2 Valmiiksi
Lisätiedot4.12.2005. SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T
SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T SEPA: REFAKTOROINTI 2 (9) SEPA: REFAKTOROINTI 3 (9) VERSIOHISTORIA Version Date Author Description 0.1 2.12.2005 Erik Hakala Ensimmäinen
Lisätiedot11/20: Konepelti auki
Ohjelmointi 1 / syksy 2007 11/20: Konepelti auki Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/11 Tämän luennon
LisätiedotMaastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla
Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Viimeksi muokattu 5. toukokuuta 2012 Maastotietokannan torrent-jakeluun sisältyy yli 5000 zip-arkistoa,
LisätiedotVisma Liikkuvan työn ratkaisut
Visma Liikkuvan työn ratkaisut Päivitysohje Pääkäyttäjän opas Visma Software Oy pidättää itsellään oikeuden mahdollisiin parannuksiin ja/tai muutoksiin tässä oppaassa ja/tai ohjelmassa ilman eri ilmoitusta.
LisätiedotTyön laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages
Tiedekunta/Osasto Fakultet/Sektion Faculty Laitos Institution Department Tekijä Författare Author Työn nimi Arbetets titel Title Oppiaine Läroämne Subject Työn laji Arbetets art Level Aika Datum Month
LisätiedotF-Secure KEY salasanojenhallintaohjelman käyttöönotto PC -laitteella
F-Secure KEY salasanojenhallintaohjelman käyttöönotto PC -laitteella 1 F-Secure KEY F-Secure KEY on palvelu, joka tallentaa turvallisesti kaikki henkilökohtaiset tunnistetiedot, kuten salasanat ja maksukorttitiedot,
LisätiedotAmazon Web Services (AWS) on varmaankin maailman suosituin IaaS-tarjoaja. Lisäksi se tarjoaa erilaisia PaaS-kategoriaan kuuluvia palveluita.
1 2 Amazon Web Services (AWS) on varmaankin maailman suosituin IaaS-tarjoaja. Lisäksi se tarjoaa erilaisia PaaS-kategoriaan kuuluvia palveluita. 3 4 Region vastaa palvelun fyysistä sijaintipaikkaa (AWS
LisätiedotVisma Liikkuvan työn ratkaisut Päivitysohje. Pääkäyttäjän opas
Visma Liikkuvan työn ratkaisut Pääkäyttäjän opas Visma Software Oy pidättää itsellään oikeuden mahdollisiin parannuksiin ja/tai muutoksiin tässä oppaassa ja/tai ohjelmassa ilman eri ilmoitusta. Oppaan
LisätiedotAika/Datum Month and year Kesäkuu 2012
Tiedekunta/Osasto Fakultet/Sektion Faculty Laitos/Institution Department Filosofian, historian, kulttuurin ja taiteiden tutkimuksen laitos Humanistinen tiedekunta Tekijä/Författare Author Veera Lahtinen
LisätiedotKoht dialogia? Organisaation toimintaympäristön teemojen hallinta dynaamisessa julkisuudessa tarkastelussa toiminta sosiaalisessa mediassa
Kohtdialogia? Organisaationtoimintaympäristönteemojenhallinta dynaamisessajulkisuudessatarkastelussatoiminta sosiaalisessamediassa SatuMariaPusa Helsinginyliopisto Valtiotieteellinentiedekunta Sosiaalitieteidenlaitos
LisätiedotPedacode Pikaopas. Java-kehitysympäristön pystyttäminen
Pedacode Pikaopas Java-kehitysympäristön pystyttäminen Pikaoppaan sisältö Pikaoppaassa kuvataan, miten Windowstyöasemalle asennetaan Java-ohjelmoinnissa tarvittavat työkalut, minkälaisia konfigurointeja
Lisätiedotsivu 1 Verkkopäätteen muuttaminen Anvian uuteen tekniikkaan Ohje käy seuraaviin verkkopäätteisiin
sivu 1 Verkkopäätteen muuttaminen Anvian uuteen tekniikkaan Ohje käy seuraaviin verkkopäätteisiin Zyxel Prestige 645 ISP Zyxel Prestige 645 WEB Zyxel Prestige 645R Zyxel Prestige 645 Ennen aloitusta tarkista,
LisätiedotOhjelmistopäivitysohje
Johdanto Topfield-vastaanottimet toimitetaan testatulla, vakaasti toimivalla ja helppokäyttöisellä ohjelmistolla varustettuina. Päivitämme ohjelmistoja kuitenkin ajoittain lisäämällä ja parantamalla niiden
LisätiedotXNA grafiikka laajennus opas. Paavo Räisänen. www.ohjelmoimaan.net. Tämän oppaan lähdekoodit ovat ladattavissa näiden sivujen Ladattavat osiossa.
XNA grafiikka laajennus opas Paavo Räisänen www.ohjelmoimaan.net Tämän oppaan lähdekoodit ovat ladattavissa näiden sivujen Ladattavat osiossa. Tätä opasta saa vapaasti kopioida, tulostaa ja levittää ei
LisätiedotLuku 7 Uusien Mallien Tiedostot
Luku 7 Uusien Mallien Tiedostot Kaikki ZoomTextin asetukset voidaan tallentaa ja palauttaa käyttämällä mallitiedostoja. Mallitiedostot kontrolloivat kaikkia ZoomTextin toimintoja mukaan lukien suurennustasot,
LisätiedotC++ Ohjelmoijan käsikirja. Johdanto
Johdanto C++ Ohjelmoijan käsikirja Johdanto Tervetuloa Inside C++-kirjan pariin. Tämä on opaskirja standardi C++:n käyttöön. Käsittelemme kirjassa kaikki syntaksin, kieliopin, olio-ohjelmoinnin ja standardikirjastojen
LisätiedotNimettömien tietojen lähettäminen Lenovolle
Nimettömien tietojen lähettäminen Lenovolle Sisältö Nimettömien tietojen lähettäminen Lenovolle... 1 Harmony... 1 Lenovo Companion 3.0... 2 Lenovo Customer Engagement Service... 3 Lenovo Experience Improvement
LisätiedotWebforum. Version 14.4 uudet ominaisuudet. Viimeisin päivitys: 2014-12-6
Webforum Version 14.4 uudet ominaisuudet Viimeisin päivitys: 2014-12-6 Sisältö Tietoja tästä dokumentista... 3 Yleistä... 4 Yleistä & hallinnointi... 5 Dokumentit... 5 Perättäinen tarkistus- ja hyväksymisprosessi...
LisätiedotCODEONLINE. Monni Oo- ja Java-harjoituksia. Version 1.0
CODEONLINE Monni Oo- ja Java-harjoituksia Version 1.0 Revision History Date Version Description Author 25.10.2000 1.0 Initial version Juha Johansson Inspection History Date Version Inspectors Approved
LisätiedotKahoot! Kirjautuminen palveluun. Sinikka Leivonen
Kahoot! Kahoot! on internetselaimessa toimiva sovellus, jonka avulla voit pitää pieniä testejä/kokeita tai kysellä mielipiteitä. Testeihin liittyy myös pelillisyys, sillä eniten pisteitä saanut voittaa.
LisätiedotAction Request System
Action Request System Manu Karjalainen Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 25.10.2000 Action Request System (ARS) Manu Karjalainen Ohjelmistotuotantovälineet
LisätiedotNäin saat 365 päivän ajalta Freshest Data sisältöä NavionicsWeb Store nettikaupasta
Näin saat 365 päivän ajalta Freshest Data sisältöä NavionicsWeb Store nettikaupasta April 2012 Näin pääset alkuun: Tämä dokumentti kuvaa kuinka saat Navionics Freshest Data päivityksen ensimmäistä kertaa.
Lisätiedot! #! %! & #!!!!! ()) +
! #! %! & #!!!!! ()) + Tiedekunta/Osasto Fakultet/Sektion Faculty Humanistinen tiedekunta Laitos Institution Department Taiteiden tutkimuksen laitos Tekijä Författare Author Matti Pesonen Työn nimi Arbetets
LisätiedotMaailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan
Maailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan Pro gradu -tutkielma 31.1.2012 Helsingin yliopisto Humanistinen tiedekunta Filosofian, historian,
Lisätiedot15. Ohjelmoinnin tekniikkaa 15.1
15. Ohjelmoinnin tekniikkaa 15.1 Sisällys For-each-rakenne. Lueteltu tyyppi enum. Override-annotaatio. Geneerinen ohjelmointi. 15.2 For-each-rakenne For-rakenteen variaatio taulukoiden ja muiden kokoelmien
Lisätiedoterasmartcardkortinlukijaohjelmiston
erasmartcardkortinlukijaohjelmiston asennusohje Sisällysluettelo 1. erasmartcard... 2 2. erasmartcard-ohjelmiston normaali asennus... 3 2.1. Ennen asennusta... 3 2.2. Asennus... 3 3. Muut asennustavat...
LisätiedotETAPPI ry JOOMLA 2.5 Mediapaja. Artikkeleiden hallinta ja julkaisu
ETAPPI ry JOOMLA 2.5 Artikkeleiden hallinta ja julkaisu ETAPPI ry JOOMLA 2.5 Sivu 1(16) Sisällysluettelo 1 Joomla! sivuston sisällöntuotanto... 2 2 Artikkeleiden julkaisu sivustolla... 4 3 Artikkelin julkaisemista
Lisätiedoterasmartcard-kortinlukijaohjelmiston asennusohje (mpollux jää toiseksi kortinlukijaohjelmistoksi)
erasmartcard-kortinlukijaohjelmiston asennusohje (mpollux jää toiseksi kortinlukijaohjelmistoksi) Sisällysluettelo 1 erasmartcard 3 2 erasmartcard-ohjelmiston normaali asennus 4 2.1 Ennen asennusta 4 2.2
LisätiedotOhjelmointi 1 / syksy /20: IDE
Ohjelmointi 1 / syksy 2007 10/20: IDE Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/8 Tämän luennon rakenne
LisätiedotPurot.net Wiki. Tutkielma. Paavo Räisänen. Centria Ammattikorkeakoulu 24.10.2012
Purot.net Wiki Tutkielma Paavo Räisänen Centria Ammattikorkeakoulu 24.10.2012 Sisällysluettelo 1: Esittely 2: Perustaminen 3: Uuden sivun luonti 4: Kuvien lisääminen 5: Linkin lisääminen 6: Lopuksi 1:
LisätiedotVisual Basic -sovelluskehitin Juha Vitikka
Visual Basic -sovelluskehitin Helsinki 30.10.2000 Seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Visual Basic sovelluskehitin Seminaari: Ohjelmistotuotantovälineet Tietojenkäsittelytieteen
LisätiedotOhjelmistojen mallintaminen, mallintaminen ja UML
582104 Ohjelmistojen mallintaminen, mallintaminen ja UML 1 Mallintaminen ja UML Ohjelmistojen mallintamisesta ja kuvaamisesta Oliomallinnus ja UML Käyttötapauskaaviot Luokkakaaviot Sekvenssikaaviot 2 Yleisesti
LisätiedotOsoitin ja viittaus C++:ssa
Osoitin ja viittaus C++:ssa Osoitin yksinkertaiseen tietotyyppiin Osoitin on muuttuja, joka sisältää jonkin toisen samantyyppisen muuttujan osoitteen. Ohessa on esimerkkiohjelma, jossa määritellään kokonaislukumuuttuja
Lisätiedot812341A Olio-ohjelmointi Peruskäsitteet jatkoa
812341A Olio-ohjelmointi 2106 Peruskäsitteet jatkoa Luokkakohtaiset piirteet n Yhteisiä kaikille saman luokan olioille n Liittyvät luokkaan, eivät yksittäiseen olioon n Kaikki ko. luokan oliot voivat käyttää
LisätiedotKehitysohje. ETL-työkalu. ExtraTerrestriaLs / Aureolis Oy
Kehitysohje ETL-työkalu Versio Pvm Tekijä Kuvaus 0.1 15.1.2005 Timo Sallinen Ensimmäinen versio 0.2 26.1.2005 Timo Sallinen Täydenetty pohjaa 0.3 06.02.2005 Mika Suvanto Pieniä täydennyksiä ja oikolukua
LisätiedotLumon tuotekirjaston asennusohje. Asennus- ja rekisteröintiohje
Lumon tuotekirjaston asennusohje Asennus- ja rekisteröintiohje 1. Sisältö 1. Asennuspaketin lataaminen 4 2. Zip-tiedoston purkaminen ja sovelluksen asentaminen 4 3. Sovelluksen rekisteröiminen 7 4. Sisällön
LisätiedotAlkuun HTML5 peliohjelmoinnissa
Paavo Räisänen Alkuun HTML5 peliohjelmoinnissa www.ohjelmoimaan.net Tätä opasta saa vapaasti kopioida ja levittää ei kaupallisissa tarkoituksissa. Sisällysluettelo 1: Alkusanat 2: Alkuun 3: Pelinäkymä
LisätiedotELOKUVATYÖKALUN KÄYTTÖ ANIMAATION LEIKKAAMISESSA. Kun aloitetaan uusi projekti, on se ensimmäisenä syytä tallentaa.
ELOKUVATYÖKALUN KÄYTTÖ ANIMAATION LEIKKAAMISESSA Kun aloitetaan uusi projekti, on se ensimmäisenä syytä tallentaa. Projekti kannattaa tallentaa muutenkin aina sillöin tällöin, jos käy niin ikävästi että
LisätiedotKontrollilaitteet. Arsenaali
Arsenaali Kontrollilaitteet Tietokonepeleissä käytettäviä kontrollilaitteita on valtava määrä Kaikilla alustoilla, joilla pelejä pelataan on jokin vakio kontrolleri PC: Hiiri ja näppäimistö Konsolit: Controller
LisätiedotMatopeli C#:lla. Aram Abdulla Hassan. Ammattiopisto Tavastia. Opinnäytetyö
Matopeli C#:lla Aram Abdulla Hassan Ammattiopisto Tavastia Opinnäytetyö Syksy 2014 1 Sisällysluettelo 1. Johdanto... 3 2. Projektin aihe: Matopeli C#:lla... 3 3. Projektissa käytetyt menetelmät ja työkalut
LisätiedotBrother ScanViewerin opas ios- / OS X -järjestelmille
Brother ScanViewerin opas ios- / OS X -järjestelmille Versio 0 FIN Kuvakkeiden selitykset Tässä käyttöoppaassa käytetään seuraavaa vinkkimerkintää: VINKKI Vinkit kertovat, miten eri tilanteissa voi toimia
LisätiedotKuva 1. Jokaisen tavallisen kuvan tasotyökalussa näkyy vain yksi taso, tässä nimellä tausta.
Gimp alkeet XII 9 luokan ATK-työt/HaJa Sivu 1 / 6 GIMP:in tasotyökalu Lue ensin nämä ohjeet! Harjoitus lopussa! GIMP:in tasotyökalu on nimensä mukaisesti työkalu, jolla hallitaan tasoja, niiden läpinäkyvyyttä,
LisätiedotNero 7:n Windows Vista TM -tuki
Nero 7:n Windows Vista TM -tuki Nero AG Sivu 1 Tietoja tekijänoikeudesta ja tavaramerkistä Tämä opaskirjanen ja sen sisältö on Nero AG:n omaisuutta ja suojattu tekijänoikeudella. Kaikki oikeudet pidätetään.
LisätiedotLinux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat
Linux rakenne Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat Linux ydin Ytimen (kernel) päätehtävä on tarjota rajapinta
LisätiedotANVIA ONLINE BACKUP ASENNUSOPAS 1(7) ANVIA ONLINE BACKUP ASENNUSOPAS 1.0
1(7) ANVIA ONLINE BACKUP Asioita, jotka tulee huomioida ennen asennusta! Koska palvelu sisältää myös sharing-ominaisuuden, on asiakas itse vastuussa millaisia tiedostoja palvelimelle varmuuskopioi ja kenelle
LisätiedotOhjeet e kirjan ostajalle
1 Ohjeet e kirjan ostajalle 1. Ostaminen ja käyttöönotto 1.1. Näin saat e kirjan käyttöösi Lataa tietokoneellesi Adobe Digital Editions (ADE) ohjelma täältä: http://www.adobe.com/products/digitaleditions/.
LisätiedotTaulukot. Jukka Harju, Jukka Juslin 2006 1
Taulukot Jukka Harju, Jukka Juslin 2006 1 Taulukot Taulukot ovat olioita, jotka auttavat organisoimaan suuria määriä tietoa. Käsittelylistalla on: Taulukon tekeminen ja käyttö Rajojen tarkastus ja kapasiteetti
LisätiedotValintanauhan komennot Valintanauhan kussakin välilehdessä on ryhmiä ja kussakin ryhmässä on toisiinsa liittyviä komentoja.
Pikaopas Microsoft Excel 2013 näyttää erilaiselta kuin aiemmat versiot. Tämän oppaan avulla pääset alkuun nopeasti ja saat yleiskuvan uusista ominaisuuksista. Komentojen lisääminen pikatyökaluriville Pidä
LisätiedotS11-09 Control System for an. Autonomous Household Robot Platform
S11-09 Control System for an Autonomous Household Robot Platform Projektisuunnitelma AS-0.3200 Automaatio- ja systeemitekniikan projektityöt Quang Doan Lauri T. Mäkelä 1 Kuvaus Projektin tavoitteena on
LisätiedotValintanauhan komennot Valintanauhan välilehdissä on ryhmiä ja kussakin ryhmässä on toisiinsa liittyviä komentoja.
Pikaopas Microsoft Project 2013 näyttää erilaiselta kuin aiemmat versiot. Tämän oppaan avulla pääset alkuun nopeasti ja saat yleiskuvan uusista ominaisuuksista. Pikatyökalurivi Mukauta tämä alue niin,
LisätiedotJärjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri
Järjestelmäarkkitehtuuri (TK081702) ja Järjestelmäarkkitehtuuri Sovellukset ovat olemassa Järjestelmien uudistaminen vie yleensä arvioitua enemmän resursseja ja kestää arvioitua kauemmin Migration (Migraatio
LisätiedotOffice 2013 - ohjelmiston asennusohje
Office 2013 - ohjelmiston asennusohje Tämän ohjeen kuvakaappaukset on otettu asentaessa ohjelmistoa Windows 7 käyttöjärjestelmää käyttävään koneeseen. Näkymät voivat hieman poiketa, jos sinulla on Windows
LisätiedotComet pysäköintimittarin asennus ja kytkeminen tietokoneeseesi (Windows XP) USB-kaapelilla.
Comet pysäköintimittarin asennus ja kytkeminen tietokoneeseesi (Windows XP) USB-kaapelilla. HUOM! TÄMÄ OHJE ON COMET LAITTEEN ENSIMMÄISTÄ ASENNUSKERTAA VARTEN. Ladataksesi rahaa Comet pysäköintimittariisi
LisätiedotSolteq Tekso v.4.0. Versiopäivitysohje.
Versiopäivitysohje Sisällysluettelo TEKSON VERSIOPÄIVITYS v.4.0... 3 1.1 Ennen päivityksen ajoa 3 1.2 Käytössä olevan Tekson version tarkastaminen 3 1.3 Päivityksen lataus omalle koneelle 4 1.4 Versiopäivityksen
LisätiedotJypelin käyttöohjeet» Miten voin liittää törmäyksiin tapahtumia?
Muilla kielillä: English Suomi Jypelin käyttöohjeet» Miten voin liittää törmäyksiin tapahtumia? Kun kaksi fysiikkaoliota törmää toisiinsa, syntyy törmäystapahtuma. Nämä tapahtumat voidaan ottaa kiinni
LisätiedotJypelin käyttöohjeet» Ruutukentän luominen
Jypelin käyttöohjeet» Ruutukentän luominen Pelissä kentän (Level) voi luoda tekstitiedostoon "piirretyn" mallin mukaisesti. Tällöin puhutaan, että tehdään ns. ruutukenttä, sillä tekstitiedostossa jokainen
LisätiedotTikon kassamaksujen käsittely
Lokakuu 2012 1 (14) Käyttöohje Lokakuu 2012 2 (14) Sisällysluettelo Johdanto... 3 1. Turvakoodisarjojen käsittely... 4 1.1. Turvakoodisarjan selausnäyttö... 4 1.2. Turvakoodisarjan ylläpitonäyttö... 4
LisätiedotOhje: Tiedostot turvaan ja puhdas Ubuntu alle
Sivu 1/5 Ohje: Tänään törmäsin tilanteeseen, jossa eräällä Ubuntu-peruskäyttäjällä oli ongelmana, että tietokone käynnistyi jatkuvasti uudelleen, oletettavasti käyttöjärjestelmän vioittumisen seurauksena.
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 15.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.3.2010 1 / 56 Tiedostoista: tietojen tallentaminen ohjelman suorituskertojen välillä Monissa sovelluksissa ohjelman
LisätiedotTestausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testausdokumentti Kivireki Helsinki 17.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Anu Kontio Ilmari
LisätiedotKäytin tehtävän tekemiseen Xubuntu 13.04 -käyttöjärjestelmää aikaisemmin tekemältäni LiveUSB-tikulta.
Tehtävänanto - Asenna WordPress ja tee siihen esimerkkisisältöä - Mittaa WP:n tehoa. Vertaile etusivun ja alasivujen nopeutta siihen, että tallennat saman sisällön staattiseksi. Analysoi mittaustulokset.
LisätiedotHome Media Server. Home Media Server -sovelluksen asentaminen tietokoneeseen. Mediatiedostojen hallinta. Home Media Server
2007 Nokia. Kaikki oikeudet pidätetään. Nokia, Nokia Connecting People ja Nseries ovat Nokia Oyj:n tavaramerkkejä tai rekisteröityjä tavaramerkkejä. Muut tässä asiakirjassa mainitut tuotteiden ja yritysten
LisätiedotOhjelmointi 1. Kumppanit
Ohjelmointi 1 Kumppanit November 20, 2012 2 Contents 1 Mitä ohjelmointi on 7 2 Ensimmäinen C#-ohjelma 9 2.1 Ohjelman kirjoittaminen......................... 9 A Liite 11 3 4 CONTENTS Esipuhe Esipuhe 5
LisätiedotSähköposti ja uutisryhmät 4.5.2005
Outlook Express Käyttöliittymä Outlook Express on windows käyttöön tarkoitettu sähköpostin ja uutisryhmien luku- ja kirjoitussovellus. Se käynnistyy joko omasta kuvakkeestaan työpöydältä tai Internet Explorer
LisätiedotValintanauhan komentojen selaaminen Jokaisessa valintanauhassa on ryhmiä ja jokaisessa ryhmässä on joukko siihen liittyviä komentoja.
Pikaopas Microsoft Project 2013 näyttää erilaiselta kuin aiemmat versiot. Tämän oppaan avulla pääset alkuun nopeasti ja saat yleiskuvan uusista ominaisuuksista. Pikatyökalurivi Voit mukauttaa tämän alueen,
LisätiedotTekso. 3.0 version päivitysohje
Tekso 3.0 version päivitysohje Tekso päivitysohje 1 (8) TEKSON VERSIOPÄIVITYS v.3.0 Saamassanne tiedotteessa on linkki Tekson uuteen 3.0 versiopäivitykseen. Lue tämä ohje tarkkaan ennen kun aloitat versiopäivityksen.
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print
LisätiedotMultiBoot. Käyttöopas
MultiBoot Käyttöopas Copyright 2006 Hewlett-Packard Development Company, L.P. Tässä olevat tiedot voivat muuttua ilman ennakkoilmoitusta. Ainoat HP:n tuotteita ja palveluja koskevat takuut mainitaan erikseen
LisätiedotVisma Econet -ohjelmat ActiveX on epävakaa -virheilmoituksen korjausohjeet
1 Visma Econet -ohjelmat ActiveX on epävakaa -virheilmoituksen korjausohjeet Microsoft on julkaissut Office-paketteihin tietoturvapäivitykset. Seuraavat päivitykset aiheuttavat Visma Econet -ohjelmissa
LisätiedotOhjelmoinnin jatkokurssi, kurssikoe 28.4.2014
Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014 Kirjoita jokaiseen palauttamaasi konseptiin kurssin nimi, kokeen päivämäärä, oma nimi ja opiskelijanumero. Vastaa kaikkiin tehtäviin omille konsepteilleen.
LisätiedotTikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0
Toukokuu 2014 1 (11) Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0 Päivitysohje Toukokuu 2014 2 (11) Sisällysluettelo 1. Tehtävät ennen versiopäivitystä... 3 1.1. Ohjelmistomuutosten luku...
Lisätiedot9. Periytyminen Javassa 9.1
9. Periytyminen Javassa 9.1 Sisällys Periytymismekanismi Java-kielessä. Piirteiden näkyvyys periytymisessä. Ilmentymämetodien korvaaminen. Luokkametodien peittäminen. Super-attribuutti. Override-annotaatio.
LisätiedotPäivitysohje Opus Dental
Päivitysohje Opus Dental 7.1.460 1. Päivitysohjelman lataaminen Avaa Opus Dental -internetsivu osoitteessa www.opusdental.com. Klikkaa etusivulta Suomen lippua avataksesi suomenkielisen sivuston. Valitse
LisätiedotSonera Yrityssähköposti. Outlook 2013 lataus ja asennus
Sonera Yrityssähköposti. Outlook 2013 lataus ja asennus Sisältö 1/14 Sonera Yrityssähköpostin käyttöönotto Outlook 2013 -sovelluksella SISÄLLYS Outlook 2013 asennuspaketin lataus... 2 Outlook 2013 asennus...
LisätiedotClassPad fx-cp400 päivitys. + Manager for ClassPad II Subscription päivitys
ClassPad fx-cp400 päivitys + Manager for ClassPad II Subscription päivitys Käyttöjärjestelmän ja Add-in sovellusten päivityksestä Casio suosittelee aina viimeisimmän käyttöjärjestelmän asentamista. Tällöin
LisätiedotGIS-automatisointi ja ohjelmointi/skriptaus. Harri Antikainen
GIS-automatisointi ja ohjelmointi/skriptaus Harri Antikainen Mistä nyt puhutaan? Automatisointi: Mikä tahansa tapa teettää tietokoneella asioita ilman että käyttäjän tarvitsee tehdä muuta kuin laittaa
LisätiedotUML Luokkakaavio 14:41
UML Luokkakaavio UML Olio-ohjelman luokkien pääpiirteet voidaan kätevähkösti esittää ns. UML-luokkakaaviona. Näin usein tehdäänkin esim. suunniteltaessa, millaisia luokkia ohjelmaan on tarkoitus laatia,
LisätiedotTIE PRINCIPLES OF PROGRAMMING LANGUAGES Eiffel-ohjelmointikieli
TIE-20306 PRINCIPLES OF PROGRAMMING LANGUAGES Eiffel-ohjelmointikieli Seminaariesitelmä ryhmä 24 Markku Ahokas Jani Kuitti i SISÄLLYSLUETTELO 1. YLEISTÄ EIFFELISTÄ... 1 1.1 Historia ja tausta... 1 1.2
LisätiedotTIE Principles of Programming Languages CEYLON
TIE-20306 Principles of Programming Languages CEYLON SISÄLLYSLUETTELO 1. YLEISTIETOA KIELESTÄ JA SEN KEHITTÄMISESTÄ... 1 2. CEYLONIN OMINAISUUKSIA... 2 2.1 Modulaarisuus... 2 2.2 Tyypit... 2 2.3 Muita
LisätiedotJärjestelmäarkkitehtuuri (TK081702) Web Services. Web Services
Järjestelmäarkkitehtuuri (TK081702) Standardoidutu tapa integroida sovelluksia Internetin kautta avointen protokollien ja rajapintojen avulla. tekniikka mahdollista ITjärjestelmien liittämiseen yrityskumppaneiden
Lisätiedot