• No results found

Implementation av en 3D applikation i Macromedia's Director

N/A
N/A
Protected

Academic year: 2021

Share "Implementation av en 3D applikation i Macromedia's Director"

Copied!
17
0
0

Loading.... (view fulltext now)

Full text

(1)

2006:037 HIP

E X A M E N S A R B E T E

Implementation av en 3D applikation i Macromedia's Director

för Pan Vision Studio

Christoffer Rosenvik

Luleå tekniska universitet Högskoleingenjörsprogrammet

Datorspelutveckling Institutionen för LTU Skellefteå

(2)

Abstract

This 3d navigation application is a part of a project that helps the user to learn and find the right position on a map with many exercises, the user has a compass nearby that he/she can use to find the position that requires to get the right answer on that particular exercise.

Macromedia's Director is used for the creating of the program, where Lingo has a importent part as the script language for the scenes in Director. A 3D scene is build up with codes in Lingo, a few 3d models and serveral overlays are created and displayed on the screen.

Different kind of textures from pict files are is representing the overlays and put on the 3D models.

That give the user a more pleasant experience when going through the exercises that helpes the user when he/she is going to navigate on a boat at sea.

(3)

Sammanfattning

Jag har haft en uppgift som jag fick av företaget Pan Vision Studio som har sin studio på Östermalm i Stockholm. De arbetar med att skapa en kurs för att hjälpa folka att skaffa sitt

förarintyg av båt. Så istället för att gå på olika kvällskurser i veckan så går det nu lätt att lära sig allt man behöver kunna om segling framför datorn i vardagsrummet.

I kursen kan man lära sig allt från att kunna lägga ut olika kurser med sin båt till att lära sig olika väjningsregler.

Min uppgift i detta projekt var att sammanställa olika navigationsövningar som användaren kan träna på. Den kunskapen behövs när man ska navigera ute på vattnet. Med dessa övningar i datorn ska det bli lättare och roligare att testa sina kunskaper om navigation på vattnet.

Genomförande

För att kunna komma fram till ett bra resultat och att det skulle passa in i det övriga projektet så blev den rätta utvecklingsmiljön Macromedias Director MX 2004. Denna utvecklingsmiljö

använder Lingo som scriptspråk och att det finns möjligheten att kunna lägga in olika 3D modeller, texturer, kod och andra members i en och samma 3D cast. Objekten i casten kan när som helst anropas och användas i scenen.

Resultat

Med all den tid som jag har lagt ner på arbetet så känner jag mig nöjd. Det har varit roligt att få vara med och bidragit med en liten del i företagets stora projekt.

Med hjälp av all bakgrunds information om navigation och kompassen som tillges i teori-delen i kursen som finns med i programmet så ska användaren försöka hitta sin postion på sjökortet, klicka på rätt svar och sedan gå vidare.

För att hitta det rätta svaret har användaren en kompass, karta till hjälp för navigering i ute på vattnet. Om användaren besitter den rätta kunskapen av navigation så ska det inte vara några större problem att hitta det rätta alternativet och sedan klicka sig vidare till nästa övning. Alla dessa övningar ska ha ett enkelt gränssnitt och passa alla datoranvändare oavsett hur stor datorvana han/hon besitter sedan tidigare.

Slutsats

Det har varit ett roligt och givande projekt som man har deltagit i. Eftersom jag inte har haft

Macromedias Director som utvecklingsmiljö tidigare så har det också medgjort att man har fått mer kundskap inom den utvecklingsmiljön och har upptäckt hur stora delar av syntaxen för Lingo kan se ut. Har även lärt mig att förstå hur det går till att få olika members i casten att fungera med

varandra.

(4)

Innehållsförteckning

1 Inledning 5

1.1 Bakgrund 5

1.2 Syfte och mål 5

1.3 Avgränsningar 6

1.4 Disposition 6

2 Teoretisk bakgrund 7

2.1 Macromedia's Director 7

2.2 Beståndsdelar i Director 7

2.3 3DPI 8

2.4 Bakgrund hur övningarna kommer att utföras 8

2.4.1 Upplägg för övningarna 8

2.4.2 Lösning av en övning 8

3 Genomförande 9

3.1 Tidigare kunskap om Director 9

3.2 Grafik 9

3.3 Klasser i Lingo 10

3.3.1 Klassen changeScene 10

3.3.2 Klassen 3d 11

3.3.3 Klassen 3dSprite 12

3.3.4 Klassen movieScripts 12

3.3.5 Klassen cImageToTexture 12

3.3.6 Klassen cImageOnScreen 12

3.3.7 Klassen cTextToTexture 13

3.3.8 Klassen cTextOnScreen 13

4 Resultat 14

4.1 Vad som är lika i varje övning 14

4.2 Hur övningarna skiljer sig från varandra 14

5 Diskussion 16

5.1 Slutsats 16

5.2 Problem 16

5.3 Vad som kan förbättras 16

6 Referenser 17

(5)

1 Inledning

1.1 Bakgrund

Jag har haft möjligheten att få arbeta på Pan Vision Studios med deras kommande produkt som är en hel kurs för att ta sitt förarintyg av båt. Mer information om kursen finns att hämta på

www.sjoassistans.se

Macromedias Director MX 2004 kommer att agera som utvecklingsmiljö för mitt arbete. Det var sedan länge bestämt bestämt av företaget. Resten av kursen som Pan Vision Studio hade utvecklad är redan utformad i Director så det är passande att använda samma utvecklingsmiljö. Det går att lägga in övningarna som en del i den större applikationen som innehåller hela förarintygkursen.

Att använda samma utvecklingsmiljö gör det också lättare för programmerana i företaget att förstå och sätta sig in i min kod och mitt upplägg om de skulle vilja ändra nått i min applikation. För jag utformar mitt projekt efter deras önskemål och värderingar. Det är för deras skull jag skapade denna applikation som innehåller navigerings uppgifter och som de senare kan ha nytta av, i den stora kursen om att ta ett förarintyg av båt.

1.2 Syfte och mål

Målet för projektet är att skapa en 3D applikation i Director som används till några navigations övningar. Denna applikation ska vara en del av innehållet av ett annat projekt.

Applikationen i 3D med olika övningarna ska vara en enkel och tydlig för användaren att förstå, det gäller att lyckas med ett bra gränsnitt. Det ska inte vara några stora problem för olika användare att sätta sig in i. Oavsett ålder och datorvana ska det vara enkelt att följa instruktionerna och kunna svara på övningarna.

Det ska vara ett snyggt, stilrent och enkelt gränssnitt i 3D applikation. Detta gör att en oerfaren användare kan enkelt förstå och sätta sig in i problemet. 3D världen som finns tillgänglig gör att användaren kan känna att han/hon verkligen befinner sig på i båt, som om det vore i verkligheten.

För det kommer stunder då han/hon ska kunna använda de kunskaper han/hon fått ute på sjön och kunna dra nytta av dessa, fast det skadar dock inte om det är roligt att lära sig dessa kunskaper Det ska inte vara några svårigheter att använda knapparna som finns tillgängliga och inte heller att läsa av kompassen. För att sedan kunna räkna ut det rätta svaret bland de olika alternativen.

Det ska också vara enkelt att se om alternativet är rätt, så när frågan rättas så ska det rätta svaret komma visas på ett som gör det lätt att se om man har klarat av uppgiften eller inte. Det gör att det kanske går lättare på nästa fråga. För då vet man om man har tänkt rätt.

(6)

1.3 Avgränsningar

Min arbete är begränsad för att kunna hinna med just det viktigaste elementen i applikationen, för det finns alltid risk att programmet blir för stort och att tiden som jag fått inte räcker till.

Jag kommer inte i min rapport ta upp något om hur den stora förarintygskursen är uppbyggd, för det har aldrig varit min sakliga huvuduppgift, utan kommer koncentrera mig på att beskriva hur jag har gått till väga att lösa min uppgift.

Inte heller kommer det finnas någon större information om hur 3D objekten eller de andra bilderna är skapade innan de importerades som en av de members i casten. För denna informationen har inte jag fått tillgång till, utan jag har fått objekten och bilderna direkt från servern. Det har varit grafiker anställda av företaget som har suttit med dessa filer och sedan lagt in de på servern. Då är det bara för mig att hämta och importera dessa med director till casten som jag sedan använder till min applikation.

Det finns heller inte något utrymme eller tid till att beskriva så väldigt noggrant allt som går att göra med Macromedia's Director MX 2004. Det är alldeles förmycket att beskriva, utan det kommer finnas information om hur jag arbetade med vissa delar i Director och lite kortfattat hur Director fungerar och är uppbyggt.

När väl appliktionen är igång så kommer det finnas ett krav på användaren, att försöka hitta det rätta svaret. Bakgrunds informationen hur man ska gå till väga att hitta det rätta svaret kommer inte heller finnas med i denna rapport utan då hänvisar jag att skaffa den fulla versionen av produkten som innehåller kursen i att ta föarintyg av båt.

1.4 Disposition

Längre fram i rapporten tar jag upp hur och mera noggrant hur jag skapade appliktionen och hur den är uppbyggd med objekt och olika klasser. Information om hur exakt appliktionen fungerar och vad användaren kan göra och har för krav på sig kommer det att gå att läsa om.

Det kommer också finnas detaljer om vilka klasser som jag skapade. Hur jag använde mig av dessa och hur de fungerar inne i casten och sammanverkar med varandra. Det ska visa lite hur jag hade tänkt under tiden med mitt arbete och hur just jag löste problemen som uppstod.

I diskussionen finns det exempel på problem som uppstod under arbetets gång. Det kommer finnas frågor om det finns några sätt som skulle kunna göra programet bättre och göra det mer optimerat.

(7)

2 Teoretisk bakgrund

2.1 Macromedia's Director

Director är en media applikation i sig som använder sig av en film metafor och som sätter användaren som själva producenten av filmen.

Director stöder vektor grafik och 3D interaktion och därmed kan användas till att skapa appliktioner i 3D. Med MX versionen som jag använde till mitt projekt så är det också enkelt att kunna länka ihop med flash animation.

2.2 Beståndsdelar i Director

När en applikation skapas så kommer det finnas en möjlighet för olika members att kunna dras och placeras i scoren. Members kan komma från olika filer och script från casten. Filmen som körs är alltid framebaserad. Det går att programmera vissa delar av framesen som filmen befinner sig på.

Ett av Directors beståndsdelar är att det går att skapa en cast i director där de olika filerna

importeras och sparas. Det ska sedan vara lätt ska kunna använda dessa objekt som hjälp när en scen byggs upp. Script-språken som används är Lingo eller JAVA-script för att det ska kunna gå att programmera en applikation.

Stagen visar hur filmen ser ut i realtime när den sätt igång och spelas upp.

Scoren används till att placera och dra olika members från casten. De visas sedan i stagen när filmen är påslagen. Members i scoren delas in i olika sprites för att det ska bli lättare att programmera filmen i olika framessteps.

Det finns också en property inspector där det går att ställa in flera inställningar på filerna i casten.

Figur 2.1 Visar vilka beståndsdelar en film i director är uppbyggd av

(8)

2.3 3DPI

Jag använde också ett plug-in till Director som heter 3DPI.

Denna lilla program används som en mer avancerad property inspector för de olika 3D members. Det går då att ha en bättre överblick på applikationen och se t.ex. vilka 3D object, overlays och texturer som skapas.

Det går väldigt smidigt att ändra på och modifiera egenskaperna på dessa objekt i runtime. Även finns det möjligheten att få ut Lingo kod för varje egenskap och 3D funktion. Detta var speciellt användbart när nya positioner av alternativen skulle placeras ut.

Figur 2.2 Visar en display av 3DPI

2.4 Bakgrund hur övningarna kommer att utföras

Med hjälp av all bakgrunds information om navigation och kompassen som tillges i teori-delen i förarintyg-kursen så ska användaren försöka hitta sin postion på sjökortet, klicka på rätt svar och sedan gå vidare.

2.4.1 Upplägg för övningarna

Det blev 20 st. olika navigations övningar med tre och ibland fyra olika alternativ beroende på vilken slags övning det är. Alternativen är placerade på en liten förminskad del av ett stort sjökort.

Det finns också en knapp som gör att det går att se en större och förstorad bild av sjökortet. Det stora sjökortet täcker praktiskt taget hela skärmen om den stora kartan visas. Användaren kan ha hjälp att titta på den stora kartan om det skulle underlätta att klara av frågan.

2.4.2 Lösning av en övning

För att det ska kunna gå att hitta rätt position, så finns det två pilar för användaren att klicka på. För varje litet klick ska som det trycks på någon av knapparna så roteras världen en grad åt vänster eller höger beroende på vilken knapp som blivit aktiverad. Längst ner i mitten på skärmen så finns det en kompass som visar gradtal och hjälper användaren att navigera. Öarna i världen ska vara relativt lätt att känna igen pga av deras namn. Namnet beskriver hur en ö ser ut.

Användaren har gradtalet från kompassen, öarna på sjökortet och i världen. Allt detta till hjälp för att försöka hitta det rätta alternativet och sedan gå vidare till nästa fråga.

(9)

Innan nästa fråga dyker upp, rättas pågående fråga. Om alternativet man markerat är fel så blir den röd samtidigt som det rätt svaret blinkar grönt. Fast om det alternativ som är markerat är rätt så blinkar det först grönt och sedan kan man gå vidare till nästa fråga.

3 Genomförande

3.1 Tidigare kunskap om Director

Eftersom jag aldrig tidigare har använt Director som utvecklingsmiljö så kändes allt väldigt nytt.

Det är mycket annorlunda att arbeta i Director än att sitta och programmera med bara en kompilator till hjälp som t.ex. i Visual Studio eller Eclipse. Tröskeln var rätt stor. Det kändes då lite tungt i början att sätta sig in i programmet och lära sig director på relativt kort tid.

Jag fick några böcker om Director och scriptspråket Lingo till hjälp. Pan Vision Studio använde director till deras nuvarande projekt och projekt sedan tidigare. Programmerarna på företaget hade mycket erfarenhet av Director och hjälpte gärna till när problem uppstod. Det har varit till stor hjälp.

3.2 Grafik

I detta projekt fick jag inget ansvar över att skapa grafiken utan det gjordes av företagets anställda grafiker. Grafikerna skapade flera shockwave 3D modeller som jag använde mig av. Alla

shockwave 3D modeller representerades av en 3d cylinder. Det som skiljdes cylindrarna åt var att de hade en olika texturer.

Texturerna är placerades inuti 3D cylindern så att den kan användas och utnyttjas i applikationen.

Hela applikation kretsar och är uppbyggd kring just denna 3D modell. De andra objekten som importerades i casten är bilder. De används som overlays eller texturer på andra 3D modeller.

(10)

Figur 3.1 visar hur casten för denna applikation och visar vilka modeller och bilder som är importerade

3.3 Klasser i Lingo

Det som tog mest tid var att skapa alla klasser som behövdes till applikationen. Lingo är som sagt ett scriptspråk och detta medför att det blir lite mer begränsat att programmera i. Klasser och andra viktiga funktioner kommer beskrivas närmare så det blir lite enklare att se hur applikationen är uppbyggd.

3.3.1 Klassen changeScene

Denna funktionen har det största betydelsen i applikationen, den tar in namnet på 3d modellen scenen ska skapas av. Denna modell sätt som den första spriten och befinner sig närmast kameran.

Klassen använder sig av klassen ”3d” när objekten i scenen skapas.

(11)

En extra kamera skapas för att hålla reda på de andra två 3d objekten. Dessa objekt är en 3d cylindern som representerar kompass. Det andra objektet är en 3d sphere som är placerad bakom cylindern för att täcka det stora utrymmet i overlayet. Det går inte att lägga ett overlay bakom ett 3D objekt utan att skymma ett 3D objekt. Lösningen blev då att skapa ytterligare ett 3d objekt och lägga det bakom cylindern för att täcka upp utrymmet.

Flera olika knappar ska finnas med i scenen att hjälpa användaren att klara av uppgiften och därför skapades flera overlay som fick agera knappar. Ett overlay syns längst fram på skärmen och flyttas inte från sin plats som 3D modeller gör, när kameran roteras.

Varje overlay har tilldelas en textur till sitt förfogande. Texturerna är hämtade och skapade av bilder från casten.

Overlayen som är knapparna ser alltid likadana ut i varje scen. Men det är inte alltid att de har samma koordinater i scenen.

De objekt som är skapade som ett overlay är:

- vänster och höger pilarna - markering på kompassen - kartan

- gå vidare knapp

- alla de alternativen i övningen som användaren har att välja på - knappen för att se en större bild på kartan

- den stora kartan som aktiveras med kartknappen

Det som skiljer scenerna åt är att de har olika textur på kartan och även texturen inuti 3D cylinder.

Även alternativen på kartan har olika koordinater för varje övning. Kompass justeras om när scenen skapas för att visa rätt gradantal.

Upplösningen på 3D modellerna och den bästa renderaren sätts också i denna funktion. Renderaren som funkat bäst för denna applikation är DirectX5.2.

3.3.2 Klassen 3d

Konstruktorn i denna klass sätter upp en scen. Tar in namnet på membern av en 3D modell. Den sätts till första spriten i scenen. Ett nytt mått sätts på rektangeln för scenen, Detta är för att scenen bara ska ta upp en viss del i stagen. Scriptet ”3dsprite” programmeras att agera på just denna sprite.

Det finns funktioner som tar in egenskaper för en 3D modell och sedan skapar den modellen i scenen. De modeller som klassen kan skapa är plane, sphere, box och cylinder.

Overlayen skapas också från denna klass. Det krävs flera olika egenskaper för ett overlay. En lista tas in med olika texturer som overlayet ska representera. Positionen på overlayet skickas också in för overlayet kan placeras rätt i stagen.

I klassen går det också att ändra på koordinaterna för just ett specifikt overlay. Sätta vilket overlay som ska vara det rätta svaret. Kolla igenom listan med alla overlays och få ut vilket overlay som innehåller det rätta svaret.

Möjligheten finns att ange grader och namnet på overlayet och skickar in dessa till funktionen så

(12)

roterar just det nämda overlayet dessa grader.

Den stora kartan kan skapas med ett funktionanrop och kan senare plockas bort ett annat.

3.3.2 Klassen 3dSprite

Klassen anropas i endframen av filmen. Det finns en loop som körs genom under hela scenens gång.

Den kollar om muspekaren passerar över något av overlaysen. Det är en timer som uppdateras, det är för att göra det möjligt att byta event och därmed byta texturen när muspekaren passerar just det specifika overlayet.

För att användaren ska kunna klicka på knapparna och det ska hända nått, så måste det finnas en funktion som alltid är tillgänglig i realtid. Varje gång som musknappen blir nedtryckt så kollas det av om musen finns över ett overlay. Beroende på vad det är för typ av overlay. Det blir markerat och avmarkerar alla andra overlays. Byter event och textur. Utför sedan kommandot som just det overlayet har blivit tilldelat.

3.3.3 Klassen movieScripts

Sätter igång själv filmen och anropar funktionen changeScript som i sin tur laddar och bygger upp scenen med en namngiven member.

3.3.4 Klassen cImageToTexture

Texturerna som användes i scenen skapas ofta från denna klass. Konstruktorn tar in vilken scen som texturen ska tillhöra samt kamera och en lista på namnen på alla bilderna från casten som ska

skapas till texturer för just detta objektet.

Listan är för att hålla kolla på olika events som texturen kan befinna sig i. Det ska vara lätt att veta vilken typ av textur som behövs för ändamålet. I klassen finns events som eventEnter, eventLeave, eventSelected och eventWrong.

Att göra så ett objektet ser ut att blinka går också att dra nytta av, det fungerar så att under en viss tid så byter overlayet textur i jämna mellanrum så att det ser ut som att objektet blinkar. Att stanna blinkningen med ett kommando går också.

När en textur ska byggas upp, så skapas först en tom textur. Denna textur sätt med ett värde upphöjt med två. Bild-membern från casten laddas in och kopieras i denna tomma texturen och med hjälp av en copypixel-funktion hämtad från director.

Utrymmet av den tomma texturen som inte fylls ut, sätts som transparant och syns därmed inte alls i scenen. Detta är för att få en klarare och skarpare textur från bilden, annars finns risken att texturen kan se suddig och smetig ut om man inte använder sig av denna funktion.

Att ha möjligheten att byta events används i denna applikation. Det är när muspekaren markerar ett nytt overlay eller att svaret rättas. För då ska texturerna bytas och användaren ska se vilket svar som är det rätta alternativet. Han/hon kommer sedan gå vidare och klicka på pilen längs nere i hörnet som nu också har bytt textur.

(13)

3.3.5 Klassen cImageOnScreen

Denna klass anropar cImageToTexture klassen och skapar en textur i konstruktorn. Ett overlay skapas och använder sig av texturen som cImageToTexture returnerar. En ny position sätt på detta overlay och sedan placeras overlayet inuti scenen. Varje gång som overlayet ska uppdateras så skapas ett nytt objekt som ersätter det gamla overlayet.

3.3.6 Klassen cTextToTexture

Funktionen med denna klass är att hålla reda på olika typer av text som kan läggas in i scenen.

Klassen skaper en textur som sätter alla egenskaper utifrån den textmembern som blir inskickad till konstruktorn. Texten kan ändras och uppdatera i realtid.

En ny tom bild skapas först, räknas och sätts med ett värde upphöjt med två, så att den skapas till en ny textur. Sedan kopieras textfälten in i den redan skapade bilden med en copypixel-funktion inbyggd i Director. När texten uppdateras så tas det gamla objektet först bort och ersätts med den nya texturen med de nya egenskaperna.

3.3.7 Klassen cTextOnScreen

Tar vara på klassen cTextToTexture och från den klassen skapar ett overlay med den nya texturen som skapas från klassen cTextToTexture. Det finns möjlighet att välja vilken kamera som overlayet ska tillhöra och det går även att skala och sätta nya position på overlayet. Så utifrån den nya

texturen så skapas ett overlay som sätts ut i scenen.

(14)

4 Resultat

Övningarna blev klara med alla modeller och klasser. Casten lades ut på servern. Pan Vision Studio har nu dessa navigationsövningar till sitt förfogande och de läggs in i deras förarintygs kurs. Det blev 18 st. navigationsövningar som användaren kan lära sig av innan han/hon åker ut på sjön. Alla övningar skiljer sig lite ifrån varandra fast är uppbyggda på samma sätt.

4.1 Vad som är lika i varje övning

I varje övning så har användaren en kompass med gradtal för att få hjälp med navigeringen. För att rotera världen finns det en vänster och en höger pil som användaren kan trycka på. Varje musklick gör att världen roterar en grad åt höger eller åt vänster beroende på vilken pil som användaren har tryckt på.

En kartaknapp finns där om man tycker att den lilla kartan nere till höger är för liten och vill ha en större karta att använda sig av och därmed få en större överblick. Med ett tryck på kartknappen till höger så kommer den stora kartan upp på skärmen och med ett annat knapptryck från användaren så försvinner den igen.

Flera alternativ finns också alltid markerade på kartan. De är antingen 3 eller 4 till antal. När ett alternativ är markerat så trycker man på knappen längst ner i höger för att bekräfta svaret. Om det skulle vara så att det markerade alternativet är felaktigt så sätts det till rött. Det rätta svaret blinkar alltid grönt oavsett om användaren svarat rätt eller fel. Det är för att kunna visa användaren vilket alternativ som är rätt.

4.2 Hur övningarna skiljer sig från varandra

Det som skiljer övningarna åt är texturen. Det laddas in en ny modell från casten och varje modell har olika typer av textur. Kartan till nere till höger och har de olika alternativen på sig har också olika texturer inför varje övning.

De alternativen som finns på karten måste också byta position inför varje övning. När en ny värld och karta laddas in så justeras också kompassen så att den visar rätt gradtal.

(15)

Figur 4.1: Visar hur en övning ser ut när den laddas in för första gången.

Figur 4.2: Visar hur en övning ser ut efter det att användaren har svarat på frågan men markerat ett felaktigt alternativ.

(16)

5 Diskussion

5.1 Slutsats

Det har varit ett rolig applikation att arbete med. Fast det bara har varit en liten del i ett större projekt. Parallellt med mitt egna arbete så fick jag även som uppgift att agera som betatestare. Jag fick söka efter fel och buggar på deras kommande produkt.

Detta gjorde att jag fick mer insikt och större överblick hur programmet fungerade. Det blev lättare för mig att veta vad som krävdes av min applikation. Idéer på att få till det bästa och enklaste gränssnittet för användaren att hantera.

5.2 Problem

Arbetet har inte varit fritt från problem. Det har dykt upp saker som har tagit tid att lösa och vissa problem som jag tyvärr inte har kunnat lösa alls. Det var framför allt två stora problem som man kan tänka på när en scen i Director ska sättas ihop.

Det första är att tänka på storleken på texturerna. Beroende på vad för grafikkort som sitter i datorn så finns det en maxstorlek texturerna som ska laddas in. Jag använde mig av ett ATI Radeon 9800 Pro grafikkort. Kortet kunde läsa in max storlek på 2048 x 2048 pixlar av varje textur.

Om bilden har större upplösning än vad grafikkortet klarade av, så blir texturen ful och suddig. Så det kan vara värt att kolla upp den största upplösningen på texturer som grafikkort kan klara av.

Det andra problemet som dök upp var renderingen av scenen. Director har stöd för rendering av openGL, DirectX 5.2, DirectX7.0 och software. Alla dessa typer av renderingar har används i några år och då ska de flesta grafikkort på marknaden klara av det utan problem trodde jag.

Men det uppstod problem när applikationen skulle köras på vissa datorer. Grafikkortet vägrade att rendera grafiken i något annat än software rendering. Detta gjorde naturligtvis att grafiken och texturerna blev väldigt pixliga.

Någon lösning till problemet var svårt att hitta, men jag antog att det handlade om dåliga drivrutiner till grafikkortet som i detta fall var ett ATI Radeon 9600. Detta kort ska kunna klara av att rendera i något annat än i software rendering trodde jag. Men det kan också bero på att Director inte stödjer vissa grafikkort så bra som det har tänkt.

5.3 Vad som kan förbättras

Det som kan förbättras är inladdningen av texturerna. Speciellt kartorna kan se lite suddiga ut även om man använder directors copypixel funktion. Även problemet med renderingen kan säkert lösas på ett mycket bättre sätt, men då måste man veta exakt vad felet beror på.

(17)

6 Referenser

Catanese, Paul (2002) Director's Third Dimension: Fundamentals of 3D Programming in Director.

Que, USA, ISBN: 0672322285

Underdahl, Brian; Nyquist, John R; Martin, Robert (2004) Macromedia Director MX 2004 Bible.

Wiley Publishing, Inc, USA, ISBN: 0-7645-6990-2

Epstein, Bruce A. (1998) Lingo in a Nutshell: A Desktop Quick Referens.

O'Reilly & Associates, Canada, ISBN: 1-56592-493-2

Epstein, Bruce A. (1999) Director in a Nutshell: A Desktop Quick Referens.

O'Reilly & Associates, Canada, ISBN: 1-56592-382-0 3DPI (2006) http://www.3dpi-director.com/ (2006-05-25)

Macromedia Director MX 2004 (2006) http://www.adobe.com/products/director/ (2006-05-31)

References

Related documents

Utifrån ett idrottsvetenskapligt forskningsperspektiv, har den här studien valt att orientera sig inom ramarna för ON och träningsberoende (förkortat EA: Exercise

Den nya spårstrukturen har dessutom möjliggjort en mer avancerad högskoleförberedande matematik tidigare på gymnasiet, vilket inneburit att elever kommer i kontakt med

Tanken är att de i mindre grupper om tre till fem elever samlar in löv från olika slags träd.. Övningen kan för äldre elever kopplas

The result might be that certain physical variables get infinite variance or contain formal differentiations of white noise.. The paper gives conditions for well-posedness in terms

Vidare vill författarna betona att det är viktigt att ta i beaktande att individer som ej vidareutbildat sig även eftersträvar kunskap kring ämnen hållbarhet och ekologi, vilket

De tre vanligaste sätten genom vilka dessa ungdomar gör detta är att (1) begränsa personlig information som de delar med sig av, (2) låta bli att använda informationen som

Dessutom för eleven enkla/utvecklade/välutvecklade resonemang om likheter och skillnader inom och mellan några religioner och andra livsåskådningar. Beskrivning

Då användare av de soft front panels som National Instruments själva tillhandahåller ska använda denna prototyp ska- pades panelen med inspiration från deras panel (se 2.2.2.1) för