|
|
(11 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
| [[Category: Programmeerimine CSharp keeles]]
| | {{db-g7}} |
| | |
| =Mängu üldine kirjeldus=
| |
| | |
| Mängu graafiline pool peaks põhinema Axiom graafika mootoril (http://axiom.codeplex.com/), sisend ning heli (ja mõned asjad ehk veel) XNA komponentidel. Võimalik on täiendavate võrgu ja füüsika komponentide lisamine.
| |
| | |
| =Tiimiga liitumine=
| |
| | |
| Tiimiga liitumiseks pole vaja teha muud, kui lisada oma nimi liikmete loetellu (kui seal veel vabu kohti on), ja lisaks saata ka meil oma kontakt andmetega (vähemalt meili aadress) IT Kolledži meilile "lkermas" (saadetud andmed edastatakse hiljem ka teistele tiimi liikmetele, kuhugi veebi neid välja ei panda).
| |
| | |
| Projektiga seonduvate küsimuste ja probleemide korral võib samuti kirjutada IT Kolledži meilile "lkermas" (üldiselt üritan hiljemalt paari päeva jooksul vastata).
| |
| | |
| Lisaks võib end kohe kirja panna ka all pool toodud projekti alam töödele, mida teha soovitakse.
| |
| | |
| ==Tiimi nime valik==
| |
| | |
| Ideid?
| |
| | |
| ==Axiom'i ülesse seadmine==
| |
| | |
| Järgnevalt on toodud lühike juhend, kuidas Axiom Visual Studio 2010 all käima saada. Vastav materjal on saadaval ka Axiom'i enda lehel ([http://axiom3d.net/wiki/index.php/Basic_Tutorial_0_(Setting_up_your_application,_Windows) Setting up your application]), ent on siiski paar aspekti, mida siin tasuks mainida.
| |
| | |
| Kui pole plaanis Axiom'i lähtekoodist kompileerida, siis võib selle alla laadida projekti lehelt ( http://axiom.codeplex.com/ ) Downloads sektsioonist (fail nimega '''Axiom-0.8.0.0-B2'''). Lisaks on Axiom'i kasutamiseks vajalik, et arvutis oleks installitud '''SlimDX''' (SDK versioon) ja/või '''XNA'''.
| |
| | |
| Seejärel tuleks Visual Studio's luua uus C# Console Application projekt. Loodud projekti kausta luuakse kaust '''PROJECT\PROJECT\bin''' (PROJECT tähistab projektile antud nime). Sellesse kausta tuleb kopeerida meedia kaust Axiom'i pakist asukohaga '''AXIOM\samples\media''' (AXIOM tähistab Axiom'i kausta nime). Lisaks kopeerida kausta '''PROJECT\PROJECT\bin\Debug''' kõik DLL ja XML failid kaustast '''AXIOM\samples\dotnet'''.
| |
| | |
| Visual Studio's tuleb siis Solution Explorer'is teha parem klõps projekti puus '''References''' valikul ning valida '''Add Reference''' ja avanevas aknas liikuda '''Browse''' tab'ile. Seejärel liikuda kausta '''PROJECT\PROJECT\bin\Debug''' ning kasutades Shift ja Ctrl klahve valida kõik DLL failid, välja arvatud '''cg.dll''', '''DevIL.dll''', '''ILU.dll'''.
| |
| | |
| Kui see on tehtud, siis lisada projekti '''Main''' meetodisse Axiom'i tutorial'is ([http://axiom3d.net/wiki/index.php/Basic_Tutorial_0_(Setting_up_your_application,_Windows) Setting up your application]) lehe alumises osas olev kood. Seejuures tuleks kopeeritud koodis kontrollida, et koodi teisel real oleks seatud õige renderdus süsteem. Vastavalt kas siis
| |
| | |
| root.RenderSystem = root.RenderSystems["OpenGL"];
| |
| | |
| või hoopis
| |
| | |
| root.RenderSystem = root.RenderSystems["DirectX9"];
| |
| | |
| kuna Axiom DirectX10't veel ei toeta (seega Windows 7 ja Vista kasutajad peaks valima OpenGL variandi).
| |
| | |
| Lõpuks tuleks '''Main''' meetodiga faili algusesse seada veel järgmised '''using''' laused (need using laused, mis seal algselt on, võib ära kustutada).
| |
| | |
| using System;
| |
| using Axiom.Core;
| |
| using Axiom.Graphics;
| |
| using Axiom.Demos.Configuration;
| |
| using Axiom.Math;
| |
| | |
| Enne programmi käivitamist tuleks kontrollida, et see kompileeritakse '''x86''' arhitektuurile, mitte aga '''x64''' arhitektuuri jaoks (kuna Axiom'i allalaetavad failid on x86 arhitektuuriga). Arhitektuuri valik on Visual Studio üleval ribal käivitus noole ja Debug valiku kõrval.
| |
| | |
| Kui kõik on valmis saab test koodi käivitada. Ekraanile peaks tekkima pilt. Pildi akna sulgemiseks sulgeda konsooli aken.
| |
| | |
| Juhul, kui aga pilti ei teki, tuleks esmalt kontrollida, et SlimDX (SDK versioon) ja/või XNA oleks installitud. Samuti ei tohiks projektini viivate kaustade nimedes olla tühikuid. Kui see ei aita, võib proovida uuendada oma video kaarti draivereid.
| |
| | |
| Kui siiski ei õnnestu pilti ekraanile saada, siis võib pöörduda Axiom'i Tutorial'i lõpus ([http://axiom3d.net/wiki/index.php/Basic_Tutorial_0_(Setting_up_your_application,_Windows) Setting up your application]) toodud foorumi lingile, ning seal arendajatelt abi küsida.
| |
| | |
| ==Mängu komponentide/tööde ülevaade==
| |
| | |
| Siin siis toodud algne ülevaade asjadest, mida mängu juures teha tuleks. Lisaks on igale alam ülesandele üritatud anda ka umbkaudne keerukuse hinnang. Kui on soovi projekti juures mõne loetelust välja jäänud tööga tegeleda, siis võib selle siia lisada.
| |
| | |
| Tabelisse võiks kirja panna, kes millegagi tegeleda soovib. Sama asjaga saaks tegeleda ka mitu inimest, kui need pole just väga väiksed. Lisaks, need kes end progemises veidi kindlamalt tunnevad, võiks muidugi valida raskemaid töid.
| |
| | |
| Kui vaja, siis Wiki's tabelitega töötamisel võib abiks olla järgnev link: http://en.wikipedia.org/wiki/Help:Table .
| |
| | |
| ===Mängu olulisemad komponendid/tööd===
| |
| | |
| {| border="1" | |
| ! scope="col" | Komponendi/töö nimetus
| |
| ! scope="col" | Olulisus ja lühikirjeldus
| |
| ! scope="col" | Oletatav keerukus
| |
| ! scope="col" | Kes mida teeb/teha tahab
| |
| ! scope="col" | Tähtaeg orienteeruvalt
| |
| |-
| |
| ! scope="row" | Baas osa progemine
| |
| | Oluline - alus edasisele tööle.
| |
| | keskpärane/raske
| |
| | Lauri Kermas - hetkel tegelen rakenduse üldise põhja loomisega (loodan selle valmis saada hiljemalt 7. oktoobriks).
| |
| | 07.10 (neljapäev)
| |
| |-
| |
| ! scope="row" | Sisend süsteeemi loomine
| |
| | Oluline - sisend klaviatuurilt ja hiirelt.
| |
| | lihtne
| |
| |
| |
| | 09.10 (laupäev)
| |
| |-
| |
| ! scope="row" | Xbox'i puldi sisend
| |
| | Nõutud ülesandes - sisend puldilt.
| |
| | lihtne/keskpärane
| |
| |
| |
| | 11.10 (esmaspäev)
| |
| |-
| |
| ! scope="row" | Punktiarvestus
| |
| | Nõutud ülesandes - mängijate tapmised/surmad.
| |
| | lihtne/keskpärane
| |
| |
| |
| | 16.10 (laupäev)
| |
| |-
| |
| ! scope="row" | Mudelite loomine
| |
| | Vajalik - tanki 3D mudelid.
| |
| | keskpärane
| |
| |
| |
| | 16.10 (laupäev)
| |
| |-
| |
| ! scope="row" | Heli komponent
| |
| | Valikuline - audio komponent.
| |
| | lihtne/keskpärane
| |
| |
| |
| | 16.10 (laupäev)
| |
| |}
| |
| | |
| ===Mängu täiendavad komponendid/tööd===
| |
| | |
| {| border="1"
| |
| ! scope="col" | Komponendi/osa nimetus
| |
| ! scope="col" | Olulisus ja lühikirjeldus
| |
| ! scope="col" | Oletatav keerukus
| |
| ! scope="col" | Kes mida teeb/teha tahab
| |
| ! scope="col" | Tähtaeg orienteeruvalt
| |
| |-
| |
| ! scope="row" | Objektide osadeks serialiseerimis komponent
| |
| | Valikuline - vajalik andmete saatmiseks üle võrgu.
| |
| | keskpärane
| |
| |
| |
| | 09.10 (laupäev)
| |
| |-
| |
| ! scope="row" | Võrgus andmete vahetamise komponent
| |
| | Valikuline - vajalik andmete saatmiseks üle võrgu.
| |
| | keskpärane/raske
| |
| |
| |
| | 14.10 (neljapäev)
| |
| |-
| |
| ! scope="row" | Võrgu toe integreerimine projekti
| |
| | Valikuline - mängu klient/server kujule viimine.
| |
| | raske
| |
| |
| |
| | 17.10 (pühapäev)
| |
| |-
| |
| ! scope="row" | Mängu sisene menüü
| |
| | Valikuline - lihtsa mängu sisese menüü loomine.
| |
| | keskpärane
| |
| |
| |
| | 17.10 (pühapäev)
| |
| |-
| |
| ! scope="row" | Füüsika lisamine
| |
| | Valikuline - lihtne 3D füüsika.
| |
| | keskpärane/raske
| |
| |
| |
| | 17.10 (pühapäev)
| |
| |-
| |
| ! scope="row" | Graafika efektid
| |
| | Valikuline - täiendav silmailu (nagu näiteks suitsu efektid).
| |
| | keskpärane/raske
| |
| |
| |
| | 18.10 (esmaspäev)
| |
| |}
| |
| | |
| =Komponentide ja tööde pikemad kirjeldused=
| |