DADIU Produktion. en introduktion til Source for DADIU programmører. Bo Bendtsen Lasse Laursen 23.

Størrelse: px
Starte visningen fra side:

Download "DADIU Produktion. en introduktion til Source for DADIU programmører. Bo Bendtsen [bobend@diku.dk] Lasse Laursen [gazoo@diku.dk] 23."

Transkript

1 DADIU Produktion en introduktion til Source for DADIU programmører Bo Bendtsen Lasse Laursen 23. august 2006 Vejleder: Jon Sporring

2 Indhold 1 Forord Definition af termer DADIU Dolores Produktions forløb Praktiske forhold Arbejdspladsen og roller Konflikter og problemer Hvad er Source? Kilder til Source Klient-server-design Entiteter Input/Output systemet Hammer Arbejde i Source Partiel eller fuldstændig konvertering Programmering i Source Ungarsk notation Konkrete tips til programmering i Source Entiteter Tilstande og funktioner Entiteter og Data Descriptions Input/Output Source AI Think-funktioner States, schedules, tasks & conditions Interessante funktioner i Sources AI Gennemgang af en entitet QC-Scripting En rekvisitmodel En NPC model Materialer og teksturer Lydsystemet i Source Soundscripts Soundscapes Ambient_generic Response System Source konsollen Optimering af spillet og dets baner

3 4.9.2 Fintuning af forskellige aspekter ved motoren Manipulation af selvdefinerede konsolvariabler Tilgang til banens entiteter Afprøvning og debugging af Source AI Scripts og ressourcer Ressource-mapper Scripts-mapper GCF-filer og decompiling Afsluttende bemærkninger 48 A Nyttigt Software 50 B Kildekode til base NPC klassen 52 C Billeder fra Dolores 55 D Designdokument 58 Litteratur 59 2

4 1 Forord Videnskabelig arbejde forløber i den ideelle verden tilnærmelsesvis med, at man på grundlag af teoretisk viden efterprøver en idé og dokumenterer resultatet. Forløbet, der førte til denne rapport, passer ikke med denne beskrivelse. DADIU er det nye, danske spilakademi. DADIUs mål er at uddanne mennesker på tværs af faggrupper i at producere computerspil. Forfatterne til rapporten, du nu læser, deltog i en DADIU-spilproduktion, der blev afholdt i marts måned Det specielle ved situationen var, at vi som forfattere ikke havde nogen videre teoretisk eller praktisk viden om spilproduktion og slet intet kendskab til den udleverede spilmotor. Denne rapport er paradoksal i den forstand, at vi har skrevet den til os selv - og fremtidige studerende. Den skulle gerne svare på nogle af de spørgsmål, vi havde, før vi gik i gang med spilproduktionen. Source SDK er navnet på værktøjspakken, der i skrivende stund bliver brugt i DADIU-regi. Det er en spilmotor, der er blevet brugt til succesfulde kommercielle spil som f.eks. Half-Life 2. Source SDK et består af en række værktøjer og en delvist åben kildekode. Desværre er den eksisterende dokumentation til Source i bedste fald mangelfuld og lidet pædagogisk. Det er det forhold, der har motiveret os til at skrive en introduktion til Source foruden en beskrivelse af selve spilproduktionen. Vi håber at kunne dokumentere forståelse af stoffet, og formidle nogle af de erfaringer vi gjorde til fremtidige programmører på DADIU produktionerne. Denne rapport er ikke en komplet dokumentation af Source. Da rapporten bygger på vores praktiske erfaringer og tydning af tilgængelige dokumentation, ved vi, at den ikke belyser alle aspekter af motoren. Den svarer heller ikke på alle de spørgsmål, der måtte komme gennem en spilproduktion. Men vi håber, den kan bruges til at skabe overblik over motoren og de opgaver, der kan forekomme i en spilproduktion. En stor del af spilproduktion for programmørerne ligger i at finde ud af, hvordan forskellige spilmekanikker før er blevet implementeret i Source og få hele spillet til at spille, før deadlinen. Det er i langt højere grad en praktisk opgave, end de teoriske opgaver vi er vant til i universitetsverdenen. Rapporten har vi valgt at opdele i tre dele - den første del (kapitel 2) beskriver DADIU-spilproduktionsforløbet. Den anden (kapitel 3) er en overordnet introduktion til Source, opbygningen og organisation. Og den tredie og sidste (kapitel 4) går mere i dybden med udvalgte aspekter. Den sidste del er meget programnær, og bør ikke læses fra ende til anden. Underkapitlerne kan læses efter behov, mens man arbejder med Source. Rapporten bliver som nævnt meget programnær, og forudsætter derfor, at læseren kan bruge C++. Vi har valgt at bruge engelske fagtermer, hvor vi mente, at danske oversættelser ville forvirre mere end gavne. I det efterfølgende afsnit findes en 3

5 oversigt over termer og forkortelser. 4

6 1.1 Definition af termer Følgende er en liste af termer som vi benytter løbende i denne rapport: AI - Forkortelse af Artificial Intelligence. Kunstlig Intelligens. Brush - Et geometrisk objekt i verdenen. Der skelnes mellem to forskellige typer brushes i Hammer. World brushes som er et solidt objekt der ikke kan flyttes eller tilintetgøres i selve spillet. Brush-entiteter som er entiteter knyttet til volumen, som brushen udspænder. Bumpmapping - En teknik der giver en tekstur yderligere detaljer uden at gøre formen på overfladen den ligger på mere kompleks. Teknikken giver en plan overflade en slags dybde. Klient-entitet - En entitet der bliver afviklet på klientsiden af Source motoren. NPC - Forkortelse af non-player character. En figur i spillet der ikke bliver kontrolleret af spilleren. Path-finding - Direkte oversat betyder dette sti-søgning. Udtrykket bruges ofte i en algoritmisk forbindelse, hvor formålet er at finde fra et punkt frem til et andet i f.eks en virtuel verden. SDK - Forkortelse for Software Development Kit. Server-entitet - En entitet der bliver afviklet på serversiden af Source motoren. Spekular refleksion - En del af Phongs lysmodel, der benyttes til visuelt at efterligne lys. Trigger - Udløser. Bliver brugt i sammenhæng med entiteter, til at informere om tilstandsændringer. Wiki - En wiki et internetværktøj til i fællesskab at se og vedligeholde en hjemmeside. 5

7 2 DADIU DADIU[2] - Det Danske Akademi for Digital Interaktiv Underholdning - er et samarbejde mellem ni kandidatuddannelser og tre kunstskoler spredt ud over hele danmark. Formålet er at uddanne mange forskellige faggrupper i at lave computerspil. En grov opdeling af faggrupperne ville være de organisatoriske, de kreative og de tekniske. DADIU-forløbet består dels af fagspecifik undervisning på de deltagende uddannelser, en gennemgang af fællespensum i DADIU-regi og to fællesproduktioner. Fællespensum foregår som 3 ugers fællesundervisning på tværs af faggrupperne. Målet er at give deltagerne en basal indsigt i de andre faggruppers arbejde og skabe et fælles sprog. De to produktioner bliver løst i hold sammensat af folk fra de forskellige uddannelsessteder. Alle faggrupper, der befinder sig i en kommerciel produktion, er tilstede i dette forløb. Dette skal sikre, at det færdige projekt er en afrundet og realistisk produktion, dog i mindre størrelsesforhold. Der skal laves en spilbar prototype. Det har hvert deltagende hold fire ugers præproduktion og fire ugers reel produktion til. Først og fremmest er det de tværfaglige udfordringer og kulturforskellene mellem uddannelserne, der gør DADIU-produktioner mere realistiske end de opgaver, folk ellers løser på deres respektive uddannelser. Der er også rigelig udfordring til de forskellige faggrupper, dog er fokus væsentlig mere praktisk end teoretisk. Opgaverne, som nogle deltagere, især også datalogerne, vil blive stillet overfor i sådan en produktion, vil i visse tilfælde være mindre fagligt relevante end andre. DIKU er ny deltager i DADIU, så det var første gang, der var DIKUstuderende med i en DADIU-produktion i marts Som DIKU-studerende betød det, at vi ikke havde fået direkte spilorienteret undervisning eller deltaget i mere end en trediedel af fællespensumet. Fællesproduktionen marts 2006 var DADIUs første årgangs anden og afsluttende produktion. Til den første produktion blev der brugt et udviklingsværktøj, der hed Virtools[9], men det var der ikke stor tilfredshed med og de færdige produktioner kunne ikke frit distribueres. Så værktøjspakken blev skiftet ud med Valves Source, der ikke lider under den samme restriktive distributions aftale. Dog skal man eje Valve Softwares spil, Half-Life 2 - som Source oprindeligt er udviklet til - for at kunne spille DADIU-produktionerne. Half-Life 2 er et populært og anmelderrost første-persons-skydespil. Det har et delvist åbent SDK og bliver i forvejen brugt til mange hobbyproduktioner i form af modifikationer til originalspillet (se afsnit 4.1). 6

8 2.1 Dolores Dolores[3] er titlen på vores holds spilproduktion. Vi vil igennem rapporten hovedsageligt tage udgangspunkt i de erfaringer, vi gjorde os på vores hold. Vi vil dels prøve at give et indblik i, hvordan vi oplevede produktionen og bruge det som enkelte eksempler i vores tekniske introduktion til Source. Holdet bestod af: 1 instruktør, Jan Rahbek 1 spildesigner, Henrik Bennetsen 1 projektleder, Hans von Knut Skovfoged 2 grafikere/designere, Rune Hauberg Brimer (Lead Artist) og Susanne Møller Nielsen 1 lyddesigner, Frans Galschiøt Quaade 2 animatorer, Karsten Madsen og Jeppe Sandholt 3 programmører, Anders Thaulow og denne rapports forfattere; Bo Bendtsen og Lasse Laursen. Vi vil i afsnit 2.4 komme mere ind på, hvad de enkelte roller dækker over. 2.2 Produktions forløb Præproduktionen startede som nævnt fire uger før selve produktionen. Her var det instruktøren, spildesigneren, projektlederen og Lead Artist ens opgave at få på plads, hvilket spil de ville lave, hvordan historien og rammen skulle være, hvordan det skulle se ud og desuden lave en produktionsplan for at sikre et afrundet og spilbart slutprodukt. Designdokument, manuskript, concept art og produktionsplan blev udarbejdet i februar. Som programmører forberedte vi os ved at se på de praktiske forhold (se afsnit 2.3) og sætte os ind i Source. Det sidstnævnte gjorde vi ved at søge efter dokumentation og tutorials (se litteraturlisten og f.eks. My First Mod på Valves wiki[6]). Vi havde også en række møder med projektlederen, spil- og lyddesignerne så vi kunne få en overordnet idé om, hvilke udfordringer vi kunne forvente i marts. Produktionen løb igennem hele marts. Vi havde aftalt en almindelig arbejdsuge fra ni til sytten, mandag til fredag. Hver dag blev indledt med et morgenmøde. Morgenmødet blev brugt til at fortælle hinanden, hvad man lavede, og hvor langt man var med sine opgaver. Det var især projektlederen, der styrede mødet og sikrede sig, at folks opgaver overholdt produktionsplanen. Udover at møderne opfyldte et praktisk behov for kontrol med produktionsplanen, var de også meget motiverende, fordi man kunne høre, 7

9 at det gik i den rigtige retning på alle fronter. Selve arbejdsgangen foregik meget selvstændigt. Vi sad i det samme lokale, så hvis man havde brug for at snakke med nogen fra de andre faggrupper, spurgte man bare. Den flade stuktur vi havde på holdet, i modsætningen til en hierarkisk struktur, førte til et meget naturligt samarbejde. Vi spiste frokost i fællesskab og brugte også spisepausen til hyggelige, uformelle møder. Ikke alle faggrupper var med i hele produktionen. Vores animatorer deltog kun i de to midterste uger. Derfor var meget af planlægningen og pipeline en tilrettelagt efter hvornår, de var tilgængelige. Det var ikke de store dramaer, der prægede hverdagen. Vi arbejdede fremad mod deadlinen og da vi nærmede os den, arbejdede vi endnu mere. Ellers var den daglige rutine kun afbrudt af spiltest og besøg af DADIU og branchefolk. Mod slutningen af forløbet blev visse ressourcer, der ikke kunne deles, flaskehalse. Det krævede mere koordination og ledelse. Projektlederen sørgede for at optimere udnyttelsen af de kritiske ressourcer. Der var dog mod afleveringsfristen konflikter, der blussede op, som ikke blev bilagt. Det førte heldigvis ikke til nedbrud i selve produktionen, men lagde lidt en dæmper på det gode humør. Under projektforløbet blev der udarbejdet et designdokument (bilag D). Projektlederen stod hovedsageligt for dette dokument, men det var tanken, at de forskellige faggrupper hver skulle lave et afsnit. Da designdokumentet skulle færdiggøres var programmørernes arbejde med spillet langt fra slut. Vi vurderede, at hvis vi skulle skrive et afsnit til designdokumentet, ville vi ikke kunne nå at få spillet færdig i den tilstand, vi ønskede. Vi står ved vores prioritering af selve produktet, i retrospekt må vi sande, at det var en fejl udelukkende at lade vores projektleder skrive vores afsnit. Hvis vi havde prioriteret programmørnotaterne i designdokumentet minimalt, ville det have gjort en verden til forskel. Det var heldigvis ikke dårligt humør og konflikter, der prægede produktionen, tværtimod var det god stemning og engagement, der bedst beskrev vores produktionshold. Det færdige spil var et, vi alle var glade for. I bilag C er der billeder fra spillet, der i øvrigt kan hentes fra hjemmesiden: [3]. 2.3 Praktiske forhold Formålet med dette afsnit er at videregive nogle gode råd om de praktiske forhold, der er ved en DADIU-produktion. Som programmør på et DADIUprojekt forventes det, at du supporterer og vedligeholder de maskiner, holdet arbejder på. Eller i det mindste at stå for kontakten med det personale, der har ansvaret. Der er flere ting, man bør gøre for at forberede sig på projektarbejdet: Man kan sikre sig, at der er fungerende maskiner, og at de har installeret det software produktionsholdet har brug for. Man kan se en liste 8

10 i appendiks A over noget af det software, vi gjorde brug af til vores produktion. Vi fandt det uundværligt at have et versioneringsystem. Vores valg faldt på Subversion (SVN) der stort set gnidningsfrit kan integreres i Microsoft Windows Explorer med TortoiseSVN. Det er ikke nok at programmørerne kan bruge SVN, de bliver nødt til at sætte sig nok ind i systemet til at kunne lære resten af holdet at bruge det. Der findes et par gode manualer på nettet: [16] og [7]. Husk Murphys lov! Sørg for at der dagligt bliver lavet backup af serveren med versioneringssystemet. Husk at fortælle resten af holdet at det er kun er de ting, der er committed til versioneringssystemet, der bliver taget backup af. Under forløbet brugte hele holdet en wiki til at samle alle informationer om projektet. Og vi brugte siden til at koordinere og dokumentere vores arbejdsindsats og til at oprette en vidensdatabase. Det er værktøj, der skal være oppe at køre allerede fra dag et i præproduktionen. (I vores gruppe havde spildesigneren allerede sat en wiki op til holdet.) Alle fire punkter ligger udenfor programmørernes opgaver til selve spilproduktionen, men de er kritiske og skal løses. Og programmører er dem, der er bedst kvalificerede til at løse de opgaver på et DADIU-hold. 2.4 Arbejdspladsen og roller I det forrige afsnit (2.2) skitserede vi produktionsforløbet og den flade struktur vi havde i vores gruppe. Formelt set var spildesigneren, instruktøren og projektlederen den øverste ledelse i gruppen. Så længe det gik, som det skulle, havde folk selv lov til at bestemme over, hvordan de arbejdede. Det var kun de få gange, planen var ved at skride, at folk påtog sig deres lederroller og gav deciderede ordrer. Det førte til enkelte konflikter. Nogle handlede grundlæggende om forskellig prioritering, men de overskyggede ikke den fælles vilje til at lave et færdigt og afrundet produkt. Andre bundede i kreativ uenighed, for det meste pga. miskommunikation. Den sidste type konflikter, vi vil se lidt mere på, er nogle af de tværfaglige konflikter, vi oplevede. Næsten alle de delelementer af spillet, der blev lavet, krydsede ind over programmørernes fagområde. Når de færdige ressourcer - lyd, grafik, animation, baner osv. - skulle ind i selve spillet, var det programmørerne, der for det meste lavede den sidste efterbehandling. I vores produktion var programmørerne den højeste autoritet, omkring hvad der var teknisk muligt, og hvor meget arbejde, det ville kræve. Et konkret eksempel var lydsystemet. Lyddesigneren havde skitseret et avanceret system, der bl.a. skulle kunne væsentligt mere end Sources eksisterende system. Det ville bestemt være 9

11 muligt at implementere, men vi vurderede, at det ville tage alle de programmørressourcer, vi havde, hvis ikke mere. Men så ville vi ikke have kunnet lave noget andet. Dette er også et godt eksempel på, hvor smidig vores flade stuktur var: Lyddesigneren og programmørerne tog diskussionen direkte med hinanden og fandt frem til praktisk mulige løsningsforslag. På vores hold var vi meget heldige med, at alle faggrupperne var fleksible nok til at krydse indover hinandens faggrænser. Det betød f.eks., at vores spildesigner stod for det meste af bane-implementationen, at vores lead artist selv fandt ud af de fleste tekniske krav for modeller til Source og at vores projektleder og instruktør lavede nogle af de trivielle teksturer og banedesign. Denne fleksibilitet gjorde, at alle folk hele tiden hjalp til, også selvom alle opgaverne ikke altid lå i deres ansvarsområde. De tværfaglige udfordringer var dem, der gav os allermest i DADIUforløbet, og det bør betrages som et af de vigtigste aspekter for at deltage i et sådan projekt. 2.5 Konflikter og problemer Vores hold oplevede en række problemer under selve spilproduktionen (se afsnit 2.2 og 2.4). Fra forfatternes perspektiv var vores problemer minimale i forhold til nogle af problemerne de andre DADIU-hold oplevede. I dette kapitel vil vi nævne nogle af problemerne, som andre grupper oplevede i deres produktionsforløb for at fremhæve, at det mere er reglen end undtagelsen, at der opstår problemer. De er kun medtaget for at skabe et mere alsidigt billede af, hvilke udfordringer et DADIU-forløb kan indeholde. I en enkelt gruppe var der folk i ledelsen, der faldt fra mellem præproduktionen og selve produktionen. Det kan give stor turbulens og uro i en gruppe, når der pludselig skal hyres en ny person til jobbet udefra. Der kan nemlig være forskel på motivationen til et betalt job og et uddannelsesprojekt. Der var også grupper der havde problemer med faglig fleksibilitet og kommunikation. Det er meget vigtigt, at kommunikation ikke kun går fra ledelse og ned til fodfolket. Man bliver nødt til at være villig til at lytte til hinanden og stole på hinandens faglighed, hvis der ikke skal opstå uløselige problemer. Fordomme om, at kunstnere er nogle følsomme gemytter, der ikke vil gå på kompromis med deres kunstneriske ambitioner, gik også i opfyldelse i visse grupper. Det er en balancegang mellem, hvornår man skal stå ved sine ambitioner, eller hvornår man skal kill your darlings. Designvalg, kreative og tekniske kan også vise sig at være beskæmmende for det færdige produkt. Der er ikke andet at sige til det, end 10

12 at man skal være dygtig og heldig til at træffe de rigtige valg. Det er ikke tid til ombestemme sig mange gange. Der skal sættes realistiske mål. Vores gruppe havde planlagt en minimumsløsning for alle spillets aspekter. Så blev der bygget ovenpå den plan med yderligere indhold og funktioner. På den måde var det lettere at skære fra, når ressourcerne blev knappe. Hvis man ikke følger en lignende fremgangsmåde, kan man risikere at ende med et spil, der helt mangler visse aspekter. I sidste ende afhænger meget af forløbet, og hvor mange problemer man får undervejs, af kemien mellem holdets medlemmer. Det er ikke nok, at folk er fagligt kompetente. DADIU-produktionsforløbet er meget intenst og tidskrævende, så det afhænger af, hvor heldig man er med sin gruppe. Hvis man ikke fungerer godt sammen, bliver det en meget hård opgave at komme igennem. Man skal ikke undervurdere, hvor meget det betyder for projektforløbet, at holdets deltagere lægger vægt på de sociale aspekter. 11

13 3 Hvad er Source? Source er en spilmotor udviklet af Valve Software[8]. Motoren blev udviklet til spillet Half-Life 2 og er siden blevet brugt i andre spil og til et utal af modifikationer af spillene (se afsnit 4.1). Source følger mange af de traditioner, som Quake[10] grundlagde. De har spilstilen tilfælles - første-personsskydespil. Udover det har de også en åbenhed overfor at ændre på spillet tilfælles, bl.a at ændre på reglerne eller spillets design. Source er en ekstrem skalerbar motor med mange kraftfulde komponenter som f.eks. animationssystemer, GUI, kunstig intelligens, netværkskode og fysikmotor. For at få et overblik over hvad spilmotoren Source kan, er det en meget god idé at spille Half-Life 2 igennem. Det giver et rigtig godt indblik i, hvad motorens muligheder er. Når man så ønsker at implementere noget nyt, der i større eller mindre grad ligner noget, man har set i Half-Life 2, har man muligheden for at kigge på ressourcerne (f.eks. kode, såvel som bane - se afsnit ) for at lære, hvordan det er gjort før. Valve har frigivet et SDK til Source. SDK et indeholder en delvist åben kildekode og en samling af værktøjer. En stor del af værktøjet er konverteringsværktøjer, der skal gøre det muligt at importere ressourcer til spilmotorens format. De mest interessante dele af SDK et er kildekoden og leveleditoren Hammer, der gør det muligt at ændre spillet fundamentalt. Source er en meget kraftfuld motor, men det er som tidligere nævnt ikke al kildekoden, der er frigivet i SDK et. Du får ikke lov til at lave din egen eksekverbare main-fil eller til at kigge under motorhjelmen på de grundlæggende grafik- eller fysikmotorer. Source burger den kommercielle Havok[4] pakke til simulering af fysik. Dvs. til at udregne de fysiske objekters opførsel i spilverdenen, når de kastes rundt, eller når modstanderne falder sammen som kludedukker. I resten rapporten vil vi kort komme ind på nogle af de værktøjer, vi brugte i produktionsforløbet, men hovedsageligt vil vi dykke ned i kildekoden og dennes opbygning og design. 3.1 Kilder til Source På trods af at Source ikke er en veldokumenteret spilmotor, findes der en stor brugerbase og et stort fællesskab omkring den. Der er en god chance for, at andre mennesker har forsøgt at implementere et eller andet, som man selv sidder og kæmper med. Vi brugte selv en del tid på at undersøge andre modifikationer, der allerede fandtes og var dokumenterede: [17] og [15]. Selvom det ikke nødvendigvis giver indsigt i de problemer, man selv skal løse, er det stadig meget fornuftigt at få indblik i, hvad andre har forsøgt, og lære af deres erfaringer i Source. 12

14 Valves wiki[6] var den kilde, vi brugte mest. I resten af rapporten vil vi mange gange henvise til sider i denne wiki. På trods af dens mangler er det den eneste officielle, online kilde til Source. 3.2 Klient-server-design Source er bygget efter en klient-server-model. Dette designvalg gennemsyrer hele Source og medfører, at også et single-player-spil vil have en klientog en serverdel. Dvs. at et Source spil kører en serverproces og mindst en klientproces. Det er en åbenlys fordel, hvis man skal lave et multi-player-spil, men hvis man står med et klassisk single-player-spildesign kan det være sværere at acceptere, at man skal sætte sig ind i en klient-server-arkitektur. Der er dog et par fordele ved det; helt åbentlyst er der færre omkostninger ved at få tilføjet mulighed for multi-player til sit spil senere, hvis man allerede har designet sin kode til at understøtte et klient-server-design. Derudover opfordrer det også til pænt kodedesign. Man er tvunget til at tænke sig om pga. det klare snit mellem klient og server. Det betyder dog også, man skal tænke kreativt for at gøre ting, der ikke helt passer ind i interfacet mellem klient og server. Da klient-server-kommunikation skal kunne foregå over nettet, er der visse begrænsninger på, hvad man kan sende mellem de to dele. Alene det at synkronisere de to dele er en stor udfordring. Der er en meget traditionel ansvarsfordeling i Source - det er serveren der vedligeholder den virtuelle verdens tilstand, og klienterne der gør den tilgængelig for brugerne. 3.3 Entiteter Den virtuelle verden, som Source simulerer, består af aktive og inaktive elementer. I Source bliver de aktive elementer kaldt for entiteter, og de inaktive for brushes. Fjender, venner, møbler, våben og triggers er alle sammen entiteter. Det er entiteterne, der introducerer liv i en ellers statisk verden kun bestående af ubevægelig geometri. Entiteterne kan betragtes som byggeklodserne for en interaktiv verden, og samtidig tilbyder de også en uafhængig og nem tilgang til at introducere nye funktioner i Source. Der findes tre hovedtyper af entiteter i Source: Logical Entity - En såkaldt logisk entitet. Denne type entitet har ikke nogen position i verdenen eller nogen visuel repræsentation. Praktisk set har entiteten faktisk en position, men denne er for alle intentioner og formål unødvendig. En logisk entitet eksisterer kun for at kunne modtage input, udføre en given funktion og til sidst sende output afhængig af hvad entiteten skal kunne. Et eksempel på denne slags entitet er en tæller, der tæller det antal fjender, man har nedkæmpet. 13

15 Model Entity - En entitet med en tilknyttet model som visuel repræsentation. Den kan bevæge sig igennem verden og er ofte interaktiv. Et godt eksempel på denne slags entitet er en NPC. Brush Entity - Disse entiteter er skabt fra brushes, og udgør et volumen i spilverden. Ofte bruges disse entiteter som triggers, der bliver aktiveret, når brugere bevæger sig ind i entiteten. En anden funktion ville være døre og elevatorer. Bliver en brush brugt som en entitet, går den fra at være et statisk element til et aktivt element. Omvendt kan man lave modeller om til statiske brushes. Hver af disse kan bruges til samme formål, men der vil ofte være en type, der egner sig bedre end de andre. I det udleverede SDK til Source er kildekoden til mange af entiteterne, som blev brugt til Half-Life 2, også tilgænglige. Desværre er dog ikke alle tilgænglige. F.eks. er lydentiteten evn_soundscape (omtalt i kapitel 4.8) ikke direkte at finde i den udleverede kildekode Input/Output systemet Næsten al dynamik, Source kan levere, er resultatet af, at forskellige entiteter kommunikerer sammen og reagerer på kommunikationen. Kommunikationen, der foregår iblandt entiteterne, er ofte stærkt afhængig af den verden, de befinder sig i. På grund af dette bliver kommunikationen tilrettelagt i Valves level-editor - Hammer - ved at bruge et system ved navn Input/output system, eller forkortet IO System. Alle entiteter i Source kan kommunikere vha. et antal input og output. Dvs. en entitet kan sende et output eller modtage et input fra en anden entitet. Ethvert output kan forbindes med ethvert input, hvilket tillader avanceret og kompleks interaktion mellem forskellige entiteter. Et output bliver som regel sendt afsted når en entitetstilstand ændrer sig, f.eks. hvis der bliver trykket på en knap, en dør er blevet lukket, eller et ur har talt ned. Et input sørger for en tilstandsændring ved en entitet. Når et output, som er forbundet med et andet input, sendes afsted, bliver inputtet aktiveret. Et eksempel på dette kunne være, at spilleren bevæger sig ind i et område, hvilket medfører at et output bliver sendt til en lysentitet. Områdets output var forbundet med lysets tænd -input, og dermed tændtes lyset. Teoretisk set er der ingen begrænsning på antallet af reaktioner, som man kan bygge ind i én lang kæde. Vi vil beskrive selve input/output-systemet nærmere i afsnit

16 3.4 Hammer Som tidligere nævnt er Hammer Valves egen level-editor, der følger med Sources SDK. Bemærk at definitionen level-editor ikke er bred nok til at dække alt det, som Hammer reelt kan bruges til. For at give et indblik i hvor omfattende Hammers indflydelse på et Source-baseret spil er, skal man blot se på Half-Life 2. En stor del af indholdet, der findes i Half-Life 2, er blevet sammensat eller konstrueret i Hammer. Hammer bruges til alt fra at bygge spilverdenens struktur til at definere dets indhold, funktioner og reaktioner. Man vil hurtigt finde frem til, at Hammer spiller en stor rolle i et produktionsforløb. På trods af at denne rapport dækker de mere programmelle aspekter af en produktion i Source, er Hammers involvering så stor, at den ikke kan undgås at benævnes. Dog vil vi ikke komme særlig dybt ned i Hammer, da den er godt dokumenteret i forvejen. En uddybende dokumentation til brug af Hammer i forbindelse med Source kan findes på Valves wiki[6]. 15

17 4 Arbejde i Source Formålet med dette kapitel er at dele vores erfaringer i de områder, vi har beskæftiget os med i Source. I kapitel har vi udledt nogle konkrete tips til at programmere i Source. Derefter uddyber vi de specifikke emner vi har beskæftiget os med. Som nævnt i kapitel 3.2, er Source bygget efter en klient-server-model. Størstedelen af koden, som vi skrev i forbindelse med vores spil Dolores[3], blev sat på serversiden, da spillet ikke implementerer nogen form for multiplayer. Konsekvensen er, at informationerne i denne rapport ikke nødvendigvis gælder for funktionaliteten, der skal implementeres på klientsiden af Source. Vi vil gøre læseren opmærksom de steder, hvor vi ved, der er forskel mellem implementationen på klient- og serversiden. 4.1 Partiel eller fuldstændig konvertering Inden man kaster sig ud i et så omfattende projekt som at skabe et spil i Source, er der en beslutning, man skal tage på forhånd. Enten at skabe en partiel eller en komplet konvertering af Half-Life 2. Dvs. hvor meget af Half-Life 2 man har tænkt sig at genbruge i sit eget spil. Beslutningen kan ændres undervejs, dog er det ikke helt uden omkostninger. Forskellen mellem de to er, om Sources SDK stiller alle Half-Life 2 s ressourcer til rådighed. Ved begge valgmuligheder er der fordele og ulemper. Partiel konvertering Den største fordel ved en partiel konvertering er, at alle Half-Life 2 s ressourcer står til rådighed. Hvis det er første forsøg på at skabe et spil i Source, er det helt klart denne variant, der skal vælges. Intet er mere hjælpsomt end at kunne se, hvad andre har gjort, og hvordan det fungerer. Ulempen er, at det kan virke overvældende, da Half-Life 2 har en meget stor mængde indhold i alle former. Det vil tage tid at forstå, hvordan det hele hænger sammen, og hvordan man kan bruge det til sin egen fordel. Fuldstændig konvertering Man kan også vælge kun at bygge på spilmotoren. Ulempen ved den fuldstændige konvertering er at meget skal laves fra bunden. Alle Half-Life 2 s ressourcer, dvs. lyd, grafik, mange entiteter og NPCer, kan ikke genbruges. De er naturligvis stadig til rådighed som reference, men for at spillet kan kaldes for en fuldstændig konvertering, må kun den grundlæggende spilmotor genbruges. Det er det rette valg hvis man vil lave et spil der er grundlæggende forskelligt fra Half-Life 2. 16

18 4.2 Programmering i Source At spille Half-Life 2 igennem giver et godt overblik over og samtidig indsigt i, hvad der kan lade sig gøre i Source. Men at finde ud af hvordan de forskellige spilmekanikker er implementeret, er dog ikke altid så lige til. Heldigvis er der ofte folk, der har forsøgt noget lignende før. Bl.a. denne hjemmeside [5] indeholder en masse information om diverse funktioner, der ligger skjult i Source Ungarsk notation Valve har valgt at benytte sig af ungarsk notation[12] i deres kodestil. Ungarsk notation benyttes til at hjælpe programmører med at gennemskue, hvilke egenskaber forskellige variabler har. Notationen afslører ofte, hvilken type variabel der er tale om (integer, float, double osv.), og om denne tilhører en klasse. Ydermere har Valve vedtaget den konvention, at klasser, der hører til serversiden, hedder CNavn, mens klasser, der hører til på klientsiden, hedder C_Navn. Begge konventioner anbefaler vi, at man følger for lettere at læse Valves kode Konkrete tips til programmering i Source Vejledningerne (tutorials) der ligger på Valves wiki[6] er et godt udgangspunkt for at lære at programmere i Source. Til gengæld er det svært at opnå en dybere forståelse af de enkelte objekter og funktioner ud fra disse vejledninger. Vi brugte meget energi på at gennemskue den eksisterende kode og finde de funktioner, vi havde brug for. De følgende elementer, funktioner såvel som objekter, er desværre ikke beskrevet i den udleverede dokumentation til Source. Situationerne, som elementerne kan blive benyttet i, er dog så mangfoldige, at de ikke burde undlades. Gennemgangen af de følgende elementer kan ikke betragtes som udtømmende forklaringer, da vi ikke selv har forstand på deres fulde funktionalitet. Listen skal betragtes som et vink om, hvilke vigtige elementer der ikke burde overses. gpglobals Dette objekt indholder diverse globale tilstande og informationer, så som den globale tid i spilverdenen. Vi brugte f.eks objektet til at finde det næste tidspunkt hvor forskellige entiteter skulle fortage beslutninger i spilverdenen. g peffects g_peffects bruges til at visualisere forskellige effekter indenfor spilverdenen, som f.eks. støv- eller lyseffekterne ved pistolaffyring. Et 17

19 eksempel kunne være en af fjenderne fra spillet Dolores som opvivler støv, når den kolliderer med gulvet. devmsg() Denne funktion udskriver en besked til skærmen, når spillet afvikles. Det er yderst nyttigt, når man forsøger af afprøve forskellige dele af sit program. ConVar ConVar er en makro, der gør en variabel tilgængelig fra konsollen i Source. I kapitel 4.9 vil vi uddybe brugen af konsollen. Kort sagt giver denne adgang til en stor mængde af kommandoer og informationer under spillets kørsel. Tilgang til disse variabler under spillets afvikling, gør det nemt at teste og fintune dem. 18

20 4.3 Entiteter Som tidligere nævnt findes der tre overordnede entitetstyper i Source: Logical Entity, Model Entity og Brush Entity. Praktisk set er de tre typer kun vejledende. De giver et godt overblik og hjælper med at afgøre, hvilken type entitet man har brug for. Hver især har entiteterne en klasse, de nedarver fra, der tilbyder funktionalitet specifikt for den type entitet. Logiske entiteter nedarver fra CLogicalEntity, modelentiteter fra CBaseAnimating og brush-entiteter fra CBaseToggle. I tilfælde af at den nye entitet ikke falder i en af de kategorier, som de tre typer tilbyder, er det oplagt at lade den nye entitet nedarve fra CBase- Entity. Denne klasse er absolut basis for entiteter, og det er denne klasse, som de tre typer også nedarver fra. Den reelle nedarvning ses i figur 1. Figur 1: Nedarvning af entitetsklasser i Source. For at opnå et hurtigere resultat, når man er i gang med at lave en ny entitet, er det en mulighed at omskrive en af de eksisterende Half-Life 2 entiteter. I det tilfælde er det oplagt at vælge den entitet i Half-Life 2, der på forhånd kan nogle af de ting, man ønsker. Ulempen ved at vælge en eksisterende entitet er, at koden til denne ikke umiddelbart er til at gennemskue. Derfor er det uden tvivl en fordel selv at sammenkæde en entitet fra bunden. En gennemgang af en meget enkel entitet findes i kapitel Tilstande og funktioner Formålet med dette kapitel er at skitsere nogle af de tilstande en entitet kan indtage, samt vigtige funktioner. Entiteters tilstande i Source Udover de tilstande som en entitet er programmeret til at kunne indtage, kan man betragte en entitet som havende nogle overordnede tilstande i spilverdenen: Før den bliver oprettet, mens den eksisterer, og efter den er blevet slettet. 19

Spil Rapport. Spil lavet i GameMaker. Kevin, Mads og Thor 03-02-2011

Spil Rapport. Spil lavet i GameMaker. Kevin, Mads og Thor 03-02-2011 Spil Rapport Spil lavet i GameMaker Kevin, Mads og Thor 03-02-2011 Indholdsfortegnelse Indledning... 2 HCI... 2 Planlægning / Elementær systemudvikling... 2 Kravspecifikationer... 4 Spil beskrivelse...

Læs mere

Programmering C Eksamensprojekt. Lavet af Suayb Köse & Nikolaj Egholk Jakobsen

Programmering C Eksamensprojekt. Lavet af Suayb Köse & Nikolaj Egholk Jakobsen Programmering C Eksamensprojekt Lavet af Suayb Köse & Nikolaj Egholk Jakobsen Indledning Analyse Læring er en svær størrelse. Der er hele tiden fokus fra politikerne på, hvordan de danske skoleelever kan

Læs mere

Programmering C RTG - 3.3 09-02-2015

Programmering C RTG - 3.3 09-02-2015 Indholdsfortegnelse Formål... 2 Opgave formulering... 2 Krav til dokumentation af programmer... 3 ASCII tabel... 4 Værktøjer... 5 Versioner af ASCII tabel... 6 v1.9... 6 Problemer og mangler... 6 v2.1...

Læs mere

XProtect-klienter Tilgå din overvågning

XProtect-klienter Tilgå din overvågning XProtect-klienter Tilgå din overvågning Tre måder at se videoovervågning på For at skabe nem adgang til videoovervågning tilbyder Milestone tre fleksible brugergrænseflader: XProtect Smart Client, XProtect

Læs mere

Bilag 1: Interviewguide:

Bilag 1: Interviewguide: Bilag 1: Interviewguide: Vores interview guideforskningsspørgsmål Spiller folk på ITU multiplayer, frem for singleplayer? Skaber onlinespil sociale relationer mellem folk på ITU? Interviewspørgsmål Foretrækker

Læs mere

Michael Jokil 11-05-2012

Michael Jokil 11-05-2012 HTX, RTG Det skrå kast Informationsteknologi B Michael Jokil 11-05-2012 Indholdsfortegnelse Indledning... 3 Teori... 3 Kravspecifikationer... 4 Design... 4 Funktionalitet... 4 Brugerflade... 4 Implementering...

Læs mere

HTX, RTG. Rumlige Figurer. Matematik og programmering

HTX, RTG. Rumlige Figurer. Matematik og programmering HTX, RTG Rumlige Figurer Matematik og programmering Vejledere: Jørn Christian Bendtsen og Karl G. Bjarnason Morten Bo Kofoed Nielsen & Michael Jokil 10-10-2011 In this assignment we have been working with

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Institution Uddannelse Fag og niveau Lærer(e) Hold Termin hvori undervisningen afsluttes: maj-juni 2013 HTX

Læs mere

Andreas Lauge V. Hansen klasse 3.3t Roskilde HTX

Andreas Lauge V. Hansen klasse 3.3t Roskilde HTX IT -Eksamen Andreas Lauge V. Hansen klasse 3.3t Roskilde HTX [Vælg en dato] Indhold Indledning... 2 Teori... 3 Hvorfor dette design... 4 Produktet... 4 Test og afprøvning... 9 Konklusion... 10 Indledning

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Institution Uddannelse Fag og niveau Lærer(e) Hold Termin hvori undervisningen afsluttes: maj-juni 2013 HTX

Læs mere

Afsluttende projekt(kom/it): E-learning Hjemmeside om ballonprojekt Af: Kevin, Martin og Sara

Afsluttende projekt(kom/it): E-learning Hjemmeside om ballonprojekt Af: Kevin, Martin og Sara Afsluttende projekt(kom/it): E-learning Hjemmeside om ballonprojekt Af: Kevin, Martin og Sara Roskilde Teknisk Gymnasium Dato 02/04/13 08/05/13 Side 1 af 9 Indhold Problem... 3 Overvejelser... 3 Produkt...

Læs mere

Projekt - Visual Basic for Applications N på stribe

Projekt - Visual Basic for Applications N på stribe Projekt - Visual Basic for Applications N på stribe Mikkel Kaas og Troels Henriksen - 03x 3. november 2005 1 Introduktion Spillet tager udgangspunkt i det gamle kendte 4 på stribe, dog med den ændring,

Læs mere

Girls Day in Science - En national Jet

Girls Day in Science - En national Jet Girls Day in Science - En national Jet Jet Net.dk event Vejledning til Virksomheder Hvorfor denne vejledning? Denne vejledning til virksomheder indeholder ideer til, tips og eksempler på ting der tidligere

Læs mere

Gruppe: 2 Hold: MulB Årgang 2013 Lærere: Merete Geldermann Lützen & Jesper Hinchely

Gruppe: 2 Hold: MulB Årgang 2013 Lærere: Merete Geldermann Lützen & Jesper Hinchely Bannerpage: http://spicegirls.creativefolder.dk/bannerpage/ Landingpage: http://spicegirls.creativefolder.dk/ René Skovgaard Andersen cph-ra73@cphbusiness.dk Stig Hamborg Nielsen cph-sn9@cphbusiness.dk

Læs mere

Roskilde Tekniske Gymnasium. Eksamensprojekt. Programmering C niveau

Roskilde Tekniske Gymnasium. Eksamensprojekt. Programmering C niveau Roskilde Tekniske Gymnasium Eksamensprojekt Programmering C niveau Andreas Sode 09-05-2014 Indhold Eksamensprojekt Programmering C niveau... 2 Forord... 2 Indledning... 2 Problemformulering... 2 Krav til

Læs mere

Introduktion til projekter

Introduktion til projekter Introduktion til projekter v. 1.0.3 Introduktion I dette materiale ser vi overordnet på, hvad projekter egentlig er, hvordan de er skruet sammen og hvilke begreber, som relaterer sig til projekter. Vi

Læs mere

Procesbeskrivelse - Webprogrammering

Procesbeskrivelse - Webprogrammering Procesbeskrivelse - Webprogrammering Indholdsfortegnelse Forudsætninger... 1 Konceptet... 2 Hjemmesiden... 2 Server-side... 3 Filstrukturen... 3 Databasehåndtering og serverforbindelse... 4 Client-side...

Læs mere

Projektarbejde. AFL Institutmøde den 6.10.2005 Pernille Kræmmergaard Forskningsgruppen i Informatik

Projektarbejde. AFL Institutmøde den 6.10.2005 Pernille Kræmmergaard Forskningsgruppen i Informatik Projektarbejde AFL Institutmøde den 6.10.2005 Pernille Kræmmergaard Forskningsgruppen i Informatik Ønske for dagen Jeg håber, at i får et indblik i: Hvad studieprojekter er for noget Hvordan projektarbejdet

Læs mere

Hensigten har været at træne de studerende i at dele dokumenter hvor der er mulighed for inkorporering af alle former for multimodale tekster.

Hensigten har været at træne de studerende i at dele dokumenter hvor der er mulighed for inkorporering af alle former for multimodale tekster. Projekt edidaktik Forsøg med multimodal tekstproduktion På Viden Djurs er der I to klasser blevet gennemført et forsøg med anvendelse af Microsoft Office 365. Hensigten har været at træne de studerende

Læs mere

Design dit eget computerspil med Kodu

Design dit eget computerspil med Kodu Design dit eget computerspil med Kodu I sensommeren var vi to CFU-konsulenter ude i SFO en på Borup Ris Skolens Grønbro-afdeling. Her var vi sammen med børnene for at få erfaringer i arbejdet med platformen

Læs mere

Exceptions i Delphi. Try except

Exceptions i Delphi. Try except Exceptions i Delphi Exceptions er en teknik til at fange fejl under programafviklingen. Ikke programmeringsfejl, men fejl der opstår i forskellige situationer, f.eks. en fil der mangler en fil der er skrivebeskyttet,

Læs mere

Computerspil rapport. Kommunikation og IT. HTX Roskilde klasse 1.4. Casper, Mathias Nakayama, Anders, Lasse og Mads BC. Lærer - Karl Bjarnason

Computerspil rapport. Kommunikation og IT. HTX Roskilde klasse 1.4. Casper, Mathias Nakayama, Anders, Lasse og Mads BC. Lærer - Karl Bjarnason Computerspil rapport Kommunikation og IT HTX Roskilde klasse 1.4 Casper, Mathias Nakayama, Anders, Lasse og Mads BC Lærer - Karl Bjarnason Indledning Vi har lavet et computerspil i Python som er et quiz-spil

Læs mere

Projektplan for DIKU studenterprojekter

Projektplan for DIKU studenterprojekter Projektplan for DIKU studenterprojekter Forfatter: Anders Johansen, Softwareudvikler, Det Kongelige Bibliotek 29. januar, 2007 Projektplan version 1.0 Det Kongelige Bibliotek Postboks 2149, DK-1016 København

Læs mere

Vejledning til Teknisk opsætning

Vejledning til Teknisk opsætning Vejledning til Teknisk opsætning v. 1.0 Adm4you, 2010. Indhold Kort om denne vejledning... 3 Generelt om easyourtime... 3 Installation af databasen... 3 Sikkerhed og rettigheder... 4 SQL Login... 4 Rettigheder

Læs mere

SmartFraming Et vindue til nationale sundhedssystemer. Version 3.0

SmartFraming Et vindue til nationale sundhedssystemer. Version 3.0 SmartFraming Et vindue til nationale sundhedssystemer Version 3.0 Infrastruktur i dagens sundheds IT Det sundhedsfaglige personale benytter sig i dag af en række forskellige systemer i forbindelse med

Læs mere

Visualiseringsprogram

Visualiseringsprogram Visualiseringsprogram Programmering C - eksamensopgave Rami Kaddoura og Martin Schmidt Klasse: 3.4 Vejleder: Karl Bjarnason Roskilde Tekniske Gymnasium Udleveringsdato: 02-03-2012 Afleveringsdato: 11-05-12

Læs mere

INDHOLDSFORTEGNELSE. INDLEDNING... 7 Kristian Langborg-Hansen. KAPITEL ET... 9 I gang med App Inventor. KAPITEL TO...

INDHOLDSFORTEGNELSE. INDLEDNING... 7 Kristian Langborg-Hansen. KAPITEL ET... 9 I gang med App Inventor. KAPITEL TO... INDHOLDSFORTEGNELSE INDLEDNING... 7 Kristian Langborg-Hansen KAPITEL ET... 9 I gang med App Inventor Installation af App Inventor... 10 Trådløs installation... 11 Installation af emulator (Windows)...

Læs mere

Dokumentation af programmering i Python 2.75

Dokumentation af programmering i Python 2.75 Dokumentation af programmering i Python 2.75 Af: Alexander Bergendorff Jeg vil i dette dokument, dokumentere det arbejde jeg har lavet i løbet opstarts forløbet i Programmering C. Jeg vil forsøge, så vidt

Læs mere

Gentofte Skole elevers alsidige udvikling

Gentofte Skole elevers alsidige udvikling Et udviklingsprojekt på Gentofte Skole ser på, hvordan man på forskellige måder kan fremme elevers alsidige udvikling, blandt andet gennem styrkelse af elevers samarbejde i projektarbejde og gennem undervisning,

Læs mere

Lavet af Danni jensen og David Olsen

Lavet af Danni jensen og David Olsen Projekt Delfin Lavet af Danni jensen og David Olsen 19/5-2008 Indholdsfortegnelse. Side 1: Indholdsfortegnelse og forord. Side 2: Kravsliste. Side 3: Use Case Model. Side 4: Formandens aktørbeskrivelse

Læs mere

Indholdsfortegnelse Valg af opgave... 2 Introduktion... 2 Problem... 2 Målgruppe... 2 Afsender... 2 Budskab... 2 Kodning... 3 Effekt...

Indholdsfortegnelse Valg af opgave... 2 Introduktion... 2 Problem... 2 Målgruppe... 2 Afsender... 2 Budskab... 2 Kodning... 3 Effekt... Indholdsfortegnelse Valg af opgave... 2 Introduktion... 2 Problem... 2 Målgruppe... 2 Afsender... 2 Budskab... 2 Kodning... 3 Effekt... 3 Information... 3 Programmering... 3 Design... 4 Brochure... 4 Hjemmeside...

Læs mere

Introduktion. Gruppesnak. Dokumentation

Introduktion. Gruppesnak. Dokumentation Introduktion Opgaven gik ud på at lave et spil, hvor vi selv skulle stå for alt arbejdet, altså programmeringen, figurere, baggrunde og lyde. Der har været forskellige værktøjer og programmer, som vi har

Læs mere

Fang Prikkerne. Introduktion. Scratch

Fang Prikkerne. Introduktion. Scratch Scratch 2 Fang Prikkerne All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/ccwreg to register your club. Introduktion

Læs mere

Filmmanual for tillidsvalgte. Lav dine egne film til Sociale Medier

Filmmanual for tillidsvalgte. Lav dine egne film til Sociale Medier Filmmanual for tillidsvalgte Lav dine egne film til Sociale Medier Indholdsfortegnelse 1: Levende billeder på sociale medier 2: Vigtige overvejelser før du går i gang 3: Lav en simpel film 4: Lav en mere

Læs mere

Løsning af simple Ligninger

Løsning af simple Ligninger Løsning af simple Ligninger Frank Nasser 19. april 2011 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk:

Læs mere

Spørgsmål og svar om inddragelse af pårørende

Spørgsmål og svar om inddragelse af pårørende Spørgsmål og svar om inddragelse af pårørende I Hej Sundhedsvæsen har vi arbejdet på at understøtte, at de pårørende inddrages i større omfang, når et familiemedlem eller en nær ven indlægges på sygehus.

Læs mere

Projektopgave Matematik A. Vejleder: Jørn Bendtsen. Navn: Devran Kücükyildiz Klasse: 2,4 Roskilde Tekniske Gymnasium

Projektopgave Matematik A. Vejleder: Jørn Bendtsen. Navn: Devran Kücükyildiz Klasse: 2,4 Roskilde Tekniske Gymnasium Projektopgave Matematik A Tema: Eksponentielle modeller Vejleder: Jørn Bendtsen Navn: Devran Kücükyildiz Klasse: 2,4 Roskilde Tekniske Gymnasium Dato: 01-01-2008 Indholdsfortegnelse Indledning... 3 1.

Læs mere

af Philip De Skæve Gallere Birk-Jensen

af Philip De Skæve Gallere Birk-Jensen mirc Guide af Philip De Skæve Gallere Birk-Jensen Side 1 Forord Der er mange som har problemer med at komme i gang med IRC, selvom dette er et yderst nyttigt værktøj, når man skal kommunikere. Når der

Læs mere

Komunikation/It C Helena, Katrine og Rikke

Komunikation/It C Helena, Katrine og Rikke HTX Afsluttende projekt E-learning Komunikation/It C Helena, Katrine og Rikke 1.1 01-05-2013 Systemudvikling Indledende aktiviteter Kommunikationsplanlægning for projektet, Laswells fem spørgsmål. o Hvem

Læs mere

DM536. Rapport og debug

DM536. Rapport og debug DM536 Rapport og debug Kilder Vigtig.it (Felix Palludan Hargreaves) http://vigtig.it/dm502/howto_report.pdf http://vigtig.it/blog/teaching/#toc-relevant-tips Peter Schneider-Kamp http://imada.sdu.dk/~petersk/dm536/project2.pdf

Læs mere

KOLLABORATION. Vejledning til elevnøgle, klasse

KOLLABORATION. Vejledning til elevnøgle, klasse Vejledning til elevnøgle, 6.-10. klasse I denne vejledning vil du finde følgende: Elevnøgler forklaret i elevsprog. Vejledning og uddybende forklaring til, hvordan man sammen med eleverne kan tale om,

Læs mere

Microcontroller, Arduino

Microcontroller, Arduino Microcontroller, Arduino Programmerbar elektronik. uc Vi skal lære at lave programmer til uc for at kunne lave el-produkter. Forstå princippet i programmering af en uc og se mulighederne. Programmeringen

Læs mere

Jeg ville udfordre eleverne med en opgave, som ikke umiddelbar var målbar; Hvor høj er skolens flagstang?.

Jeg ville udfordre eleverne med en opgave, som ikke umiddelbar var målbar; Hvor høj er skolens flagstang?. Hvor høj er skolens flagstang? Undersøgelsesbaseret matematik 8.a på Ankermedets Skole i Skagen Marts 2012 Klassen deltog for anden gang i Fibonacci Projektet, og der var afsat ca. 8 lektioner, fordelt

Læs mere

Hvordan håndteres. den svære samtale. i mindre virksomheder?

Hvordan håndteres. den svære samtale. i mindre virksomheder? Hvordan håndteres den svære samtale i mindre virksomheder? 1. Den svære samtale 2. Forberedelse til samtalen 3. Afholdelse af selve samtalen 4. Skabelon til afholdelse af samtalen 5. Opfølgning på samtalen

Læs mere

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4 IT opgave Informationsteknologi B Vejleder: Karl Navn: Devran Kücükyildiz Klasse: 2,4 Dato:03-03-2009 1 Indholdsfortegnelse 1. Indledning... 3 2. Planlægning... 3 Kommunikationsplanlægning... 3 Problemstillingen...

Læs mere

Projekt - Valgfrit Tema

Projekt - Valgfrit Tema Projekt - Valgfrit Tema Søren Witek & Christoffer Thor Paulsen 2012 Projektet Valgfrit Tema var et projekt hvor vi nærmest fik frie tøjler til at arbejde med hvad vi ville. Så vi satte os for at arbejde

Læs mere

Arbejdsrum i ElevIntra

Arbejdsrum i ElevIntra Arbejdsrum i ElevIntra En stærk mulighed Version: Januar 2014 Indholdsfortegnelse Hvad er et arbejdsrum?...4 Dette materiale...4 De mange muligheder...5 Drejebog for kurset...6 Opret dit første arbejdsrum

Læs mere

Succeskriterier og mål for projektet

Succeskriterier og mål for projektet Page 1 of 5 Succeskriterier og mål for projektet Individuelle Lasse Bager: Min personlige målsætning med det her projekt er først og fremmest at lave et projekt at jeg og hele gruppen i sidste ende vil

Læs mere

Indholdsfortegnelse. Hvorfor skal jeg tage backup af min blog? Side 3. Tag backup med UpDraft Side 4. Tag manuelt backup Side 8 - 2 -

Indholdsfortegnelse. Hvorfor skal jeg tage backup af min blog? Side 3. Tag backup med UpDraft Side 4. Tag manuelt backup Side 8 - 2 - - 1 - Indholdsfortegnelse Hvorfor skal jeg tage backup af min blog? Side 3 Tag backup med UpDraft Side 4 Tag manuelt backup Side 8-2 - Hvorfor skal jeg tage backup af min blog? Lige meget om du har opbygget

Læs mere

FUSION Kommentarer fra tidligere studerende fra Designafdelingen:

FUSION Kommentarer fra tidligere studerende fra Designafdelingen: FUSION Kommentarer fra tidligere studerende fra Designafdelingen: Som designer med en arkitektbaggrund har jeg en god og bred forståelse for den kreative arbejdsproces i mange forskellige sammenhænge.

Læs mere

Database for udviklere. Jan Lund Madsen PBS10107

Database for udviklere. Jan Lund Madsen PBS10107 Database for udviklere Jan Lund Madsen PBS10107 Indhold LINQ... 3 LINQ to SQL og Arkitektur... 3 O/R designere... 5 LINQ Den store introduktion med.net 3.5 er uden tvivl LINQ(udtales link): Language-INtegrated

Læs mere

Spørgeskemaer i SkoleIntra

Spørgeskemaer i SkoleIntra Spørgeskemaer i SkoleIntra Brug det indbyggede værktøj, når du vil vide mere! Version: August 2012 Indholdsfortegnelse Spørgeskema kun for skoler med ElevIntra!...4 Spørgeskemaer i SkoleIntra...4 Hvor

Læs mere

Hvordan at snyde på Video Games

Hvordan at snyde på Video Games Hvordan at snyde på Video Games pcfly.info Gennemse artiklen Sådan at snyde på Video Games Snyd kan lade dig vinde et spil, men det vil ikke hjælpe dig med at vinde en kæmpe turnering som World Cyber Games.

Læs mere

Processer og tråde. dopsys 1

Processer og tråde. dopsys 1 Processer og tråde dopsys 1 Motivation.. parallelle processer udnytter hardwaren bedre: Batch operativsystemer (50 erne) hhv. små systemer: Multiprogrammering og time-sharing (fra 60 erne og frem): dopsys

Læs mere

Afstande, skæringer og vinkler i rummet

Afstande, skæringer og vinkler i rummet Afstande, skæringer og vinkler i rummet Frank Villa 2. maj 202 c 2008-20. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Indhold

Læs mere

SOCIAL KAPITAL SAMARBEJDE SKABER RESULTATER TÆLL3R OGSÅ! OM PSYKISK ARBEJDSMILJØ I DETAILHANDLEN LEDER/ARBEJDSGIVER

SOCIAL KAPITAL SAMARBEJDE SKABER RESULTATER TÆLL3R OGSÅ! OM PSYKISK ARBEJDSMILJØ I DETAILHANDLEN LEDER/ARBEJDSGIVER OM PSYKISK ARBEJDSMILJØ I DETAILHANDLEN Læs mere på www.detdumærker.dk TÆLL3R OGSÅ! LEDER/ARBEJDSGIVER SOCIAL KAPITAL SAMARBEJDE SKABER RESULTATER Årets store udsalg skal forberedes, men da medarbejderne

Læs mere

Installationsvejledning SAS Foundation 9.2 SAS Enterprise Guide 4.2. Windows Vista

Installationsvejledning SAS Foundation 9.2 SAS Enterprise Guide 4.2. Windows Vista Installationsvejledning SAS Foundation 9.2 SAS Enterprise Guide 4.2 Windows Vista Oversigt Inden installationen... 3 Udpakning af softwaren... 4 Kopiér licensen ind... 6 Installationen... 7 Yderligere

Læs mere

Bliv opdaget på Internettet! - 10 gode råd til at optimere din hjemmeside til søgemaskiner

Bliv opdaget på Internettet! - 10 gode råd til at optimere din hjemmeside til søgemaskiner Bliv opdaget på Internettet! - 10 gode råd til at optimere din hjemmeside til søgemaskiner Af Henrik Bro og Martin T. Hansen I har måske allerede en flot, og informativ hjemmeside. Og alle jeres kursister

Læs mere

Programmering i folkeskolen

Programmering i folkeskolen Programmering i folkeskolen Danmark har et mål om at være et af verdens førende it-samfund, men virkeligheden er desværre en anden. Kun ganske få unge mennesker har en tilstrækkelig indsigt i den måde,

Læs mere

Arbejdsblad. Indhold. 27. maj 2010 A312. 1 Projektplanlægning 1. 2 Samarbejdet i gruppen 3. 3 Samarbejdet med vejlederne 5

Arbejdsblad. Indhold. 27. maj 2010 A312. 1 Projektplanlægning 1. 2 Samarbejdet i gruppen 3. 3 Samarbejdet med vejlederne 5 Arbejdsblad 27. maj 2010 A312 Indhold 1 Projektplanlægning 1 2 Samarbejdet i gruppen 3 3 Samarbejdet med vejlederne 5 1 Procesanalyse 1 Projektplanlægning I projektarbejdet har vi benyttet Google kalender

Læs mere

Microcontroller, Arduino

Microcontroller, Arduino Microcontroller, Arduino Kompendium til Arduino-programmering i Teknologi. Vi skal lære at lave programmer til uc for at kunne lave el-produkter. Vi skal forstå princippet i programmering af en uc og se

Læs mere

Flere ligninger med flere ukendte

Flere ligninger med flere ukendte Flere ligninger med flere ukendte Frank Villa 14. februar 2012 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her.

Læs mere

klassetrin Vejledning til elev-nøglen.

klassetrin Vejledning til elev-nøglen. 6.- 10. klassetrin Vejledning til elev-nøglen. I denne vejledning vil du til nøglen Kollaboration finde følgende: Elev-nøgler forklaret i elevsprog. En uddybende forklaring og en vejledning til hvordan

Læs mere

Dansk Sportsdykker Forbund

Dansk Sportsdykker Forbund Dansk Sportsdykker Forbund Teknisk Udvalg Sid Dykketabellen Copyright Dansk Sportsdykker Forbund Indholdsfortegnelse: 1 FORORD... 2 2 INDLEDNING... 3 3 DEFINITION AF GRUNDBEGREBER... 4 4 FORUDSÆTNINGER...

Læs mere

7. Håndtering af flerkulturelle besætninger

7. Håndtering af flerkulturelle besætninger 7. Håndtering af flerkulturelle besætninger Mange nationaliteter om bord er blevet almindeligt i mange skibe. Det stiller ekstra krav til kommunikation og forståelse af forskelligheder. 51 "Lade som om"

Læs mere

Sebastian Holtze-Petersen HTX Roskilde 09/02/2014 Jacob Hennecke. IT Applikationsudvikling

Sebastian Holtze-Petersen HTX Roskilde 09/02/2014 Jacob Hennecke. IT Applikationsudvikling IT Applikationsudvikling Præproduktion Vores grundidé stammede fra Sebastians kendskab til en familie hvor et af børnene er diagnosticeret med autisme. Vi fik så ideen at lave en applikation målrettet

Læs mere

Projektarbejde vejledningspapir

Projektarbejde vejledningspapir Den pædagogiske Assistentuddannelse 1 Projektarbejde vejledningspapir Indhold: Formål med projektet 2 Problemstilling 3 Hvad er et problem? 3 Indhold i problemstilling 4 Samarbejdsaftale 6 Videns indsamling

Læs mere

1: Hvilket studium er du optaget på: 2: Hvilke af nedenstående forelæsninger har du deltaget i?

1: Hvilket studium er du optaget på: 2: Hvilke af nedenstående forelæsninger har du deltaget i? 1: Hvilket studium er du optaget på: 2: Hvilke af nedenstående forelæsninger har du deltaget i? 3: Hvis du har deltaget i mindre end halvdelen af kursusgangene bedes du venligst begrunde hvorfor har deltaget

Læs mere

NYT. Få en ny Formular i PakIT Helt gratis

NYT. Få en ny Formular i PakIT Helt gratis NYT April 2004 Tema: Gør det selv: Ny formular Total- er sponsor for en ny webside for amatørkunstnere. Se side 3 Få en ny Formular i PakIT Helt gratis Mangler du en formular til en transportør som US-Mail,

Læs mere

Guide til projektledere: Succesfuld konceptudvikling, kommunikationsstrategi og eksekvering af dit projekt på BetterNow

Guide til projektledere: Succesfuld konceptudvikling, kommunikationsstrategi og eksekvering af dit projekt på BetterNow Guide til projektledere: Succesfuld konceptudvikling, kommunikationsstrategi og eksekvering af dit projekt på BetterNow version 1.0 maj 2012 Indholdsfortegnelse 1. Indledning... 3 2. Definer budskabet

Læs mere

Arbejdsrum - hva' nyt er der egentlig i det?

Arbejdsrum - hva' nyt er der egentlig i det? Arbejdsrum - hva' nyt er der egentlig i det? Et arbejdsrum har vel til alle tider været en form for installation, som kunne omkranse en undervisning? Et rum indeholder muligheder - f.eks. døre, som kan

Læs mere

Kundetilfredshedsundersøgelse Oktober 2015

Kundetilfredshedsundersøgelse Oktober 2015 Kundetilfredshedsundersøgelse Oktober 2015 Introduktion Den 18. september fik alle kunder tilsendt en e-mail med et link til en kundetilfredshedsundersøgelse. 28 % valgte at besvare spørgsmålene, og der

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Institution Uddannelse Fag og niveau Lærer(e) Hold Termin hvori undervisningen afsluttes: maj-juni 2014 HTX

Læs mere

Rollespil Projektsamarbejde Instruktioner til mødeleder

Rollespil Projektsamarbejde Instruktioner til mødeleder Instruktioner til mødeleder Introduktion Med dette rollespil træner I det lærte i lektionen Hjælp en kollega i konflikt. Der skal medvirke to personer, der skal spille henholdsvis Christian og Bente, hvor

Læs mere

Don'ts and do's - når man vil bruge lyd i og omkring undervisningen!

Don'ts and do's - når man vil bruge lyd i og omkring undervisningen! Gode råd er ofte dyre når man vil i gang med innovative pædagogiske tiltag. Erfaringskataloget bygger på Lyduniverslærernes anbefalinger fra deres organisering og implementering af undervisningsforløb,

Læs mere

Funktionsterminologi

Funktionsterminologi Funktionsterminologi Frank Nasser 12. april 2011 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette

Læs mere

Læringsprogram. Talkonvertering. Benjamin Andreas Olander Christiansen Niclas Larsen Jens Werner Nielsen. Klasse 2.4. 1.

Læringsprogram. Talkonvertering. Benjamin Andreas Olander Christiansen Niclas Larsen Jens Werner Nielsen. Klasse 2.4. 1. Læringsprogram Talkonvertering Benjamin Andreas Olander Christiansen Niclas Larsen Jens Werner Nielsen Klasse 2.4 1. marts 2011 Fag: Vejleder: Skole: Informationsteknologi B Karl G. Bjarnason Roskilde

Læs mere

Projekt 2, 3. semester WEBPROJEKT

Projekt 2, 3. semester WEBPROJEKT Projekt 2, 3. semester WEBPROJEKT Aflevering d. 11/10-2013 CPH Business URL: www.thorleifbæk.dk/projekt2/index.php Gruppe 2 Shiko, Thorleif, Pernille og Annemette MUL 3A Indholdsfortegnelse s. 3 Factsheet

Læs mere

Test af It-komponent

Test af It-komponent Test af It-komponent I programmeringssproget Java Programmet Login service Elev: Mads Funch Klasse 2.4 Mat, It, Programmering Skole: Roskilde Tekniske Gymnasium HTX Underviser: Karl Dato: 31-08-2016 Side

Læs mere

Computerspil dokumentation. Dokumentation af spillet Rescue Me

Computerspil dokumentation. Dokumentation af spillet Rescue Me Computerspil dokumentation Dokumentation af spillet Rescue Me Indholdsfortegnelse Formål... 3 Indledning... 3 Design... 4 Planlægning... 5 Fremgangsmåde... 6 Målgruppen... 8 Et lærerigt spil... 10 Styring

Læs mere

RETNINGSLINIER FOR KAMPE SPILLET UDEN DOMMER - opdateret d. 15. marts 2010

RETNINGSLINIER FOR KAMPE SPILLET UDEN DOMMER - opdateret d. 15. marts 2010 RETNINGSLINIER FOR KAMPE SPILLET UDEN DOMMER - opdateret d. 15. marts 2010 Generelle retningslinjer for Referees/referee assistenten der virker ved turneringer hvor der spilles kampe spillet uden dommer:

Læs mere

OrCAD Capture TCL IDE med Eclipse

OrCAD Capture TCL IDE med Eclipse OrCAD Capture TCL IDE med Eclipse OrCAD Capture TCL er et script sprog til at lave applikationer til OrCAD Capture. Eclipse er et gratis udviklingsmiljø med debug muligheder. Denne guide hjælper med at

Læs mere

Analysen er din, og skal kun bruges til, at du kan tænke over, hvordan du oplever dig selv som leder.

Analysen er din, og skal kun bruges til, at du kan tænke over, hvordan du oplever dig selv som leder. Ledelsesstilanalyse Dette er en analyse af den måde du leder på, med fokus på at lede mennesker. Det er vigtigt for din selvindsigt, at du er så ærlig som overhovedet mulig overfor dig selv når du svarer.

Læs mere

Introduktion til Flash

Introduktion til Flash Introduktion til Flash Kaspar Rosengreen Nielsen kaspar@interactivespaces.net Kaspar Rosengreen Nielsen, kaspar@interactivespaces.net 1 Om mig Kaspar Rosengreen Nielsen. Uddannet datalog med sidefag i

Læs mere

It-sikkerhedstekst ST9

It-sikkerhedstekst ST9 It-sikkerhedstekst ST9 Single Sign-On og log-ud Denne tekst må kopieres i sin helhed med kildeangivelse. Dokumentnavn: ST9 Version 1 Juli 2015 Single Sign-On og log-ud Betegnelsen Single Sign-On (SSO)

Læs mere

Online billede filtrering

Online billede filtrering Online billede filtrering Eksamensprojekt 2014 Andreas Lorentzen, klasse 3.4 Roskilde Tekniske Gymnasium Programmering C 09-05-2014 I dette projekt vil jeg demonstrerer en af de mange ting moderne browsere

Læs mere

Museu de Aveiro. af Jeffrey Lai. Februar-April 2010 Praktikophold i Aveiro

Museu de Aveiro. af Jeffrey Lai. Februar-April 2010 Praktikophold i Aveiro Museu de Aveiro af Jeffrey Lai Februar-April 2010 Praktikophold i Aveiro 1 Formålet med mit praktikophold i Aveiro var at lave det lokale museum i 3D, således at man kunne begive sig rundt i museet i den

Læs mere

Den sproglige vending i filosofien

Den sproglige vending i filosofien ge til forståelsen af de begreber, med hvilke man udtrykte og talte om denne viden. Det blev kimen til en afgørende ændring af forståelsen af forholdet mellem empirisk videnskab og filosofisk refleksion,

Læs mere

Specialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6

Specialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6 Side 1 af 6 Indholdsfortegnelse INDHOLDSFORTEGNELSE 1 INTRO 3 STARTEN AF SPECIALISERINGEN 3 ANKOMST TIL SKOTLAND 4 DATABASER 5 NETVÆRK 5 INTERAKTION 5 AFSLUTNING AF SPECIALISERINGEN 5 KONKLUSION 6 Side

Læs mere

Manual til Groupcare: Indhold, formål og brug

Manual til Groupcare: Indhold, formål og brug Manual til Groupcare: Indhold, formål og brug Indledning Groupcare er en elektronisk, internetbaseret kommunikationsform som vi bruger i forbindelse med din DOL-uddannelse. Grundlæggende set er Groupcare

Læs mere

PHP Quick Teknisk Ordbog

PHP Quick Teknisk Ordbog PHP Quick Teknisk Ordbog Af Daniel Pedersen PHP Quick Teknisk Ordbog 1 Indhold De mest brugte tekniske udtryk benyttet inden for web udvikling. Du vil kunne slå de enkelte ord op og læse om hvad de betyder,

Læs mere

Forandringsprocesser i demokratiske organisationer

Forandringsprocesser i demokratiske organisationer Forandringsprocesser i demokratiske organisationer 4 nøgleudfordringer Af Tor Nonnegaard-Pedersen, Implement Consulting Group 16. juni 2014 1 Bagtæppet: Demokratiet som forandringsmaskine I udgangspunktet

Læs mere

Harald Michalsen og Lasse Storr-Hansen

Harald Michalsen og Lasse Storr-Hansen 1 af 9 02MAJ2007 03MAJ2007 06MAJ2007 14MAJ2007 Rettet en fejl i installationsprogrammet. Ny installationer kunne ikke køre igennem og stoppede halvvejs. Rettelsen blev lagt på nettet klokken 16:40 mandag

Læs mere

Nyt i SkoleIntra 5.10

Nyt i SkoleIntra 5.10 Nyt i SkoleIntra 5.10 Sidst ændret den 13 10 2015 Ny loginside Med SkoleIntra 5.10 introduceres et nyt fælles login, som giver single sign on mellem det nye SkoleIntra, det klassiske SkoleIntra og itslearnings

Læs mere

IT SUMMER CAMP 2015. Dato for arr. og. dato for seneste tilmelding. bliver offentliggjort i maj. Ubuntu-Linux, Web-Server, Anvendte Web-Teknologier

IT SUMMER CAMP 2015. Dato for arr. og. dato for seneste tilmelding. bliver offentliggjort i maj. Ubuntu-Linux, Web-Server, Anvendte Web-Teknologier IT SUMMER CAMP 2015 Dato for arr. og dato for seneste tilmelding bliver offentliggjort i maj. uge z, x. / y. 2015 Ubuntu-Linux, Web-Server, og Basal Web-programmering En extensiv indføring i web-programmering

Læs mere

Projekt faglig formidling

Projekt faglig formidling Projekt faglig formidling Fælles projekt mellem kommunikation/it og Matematik Hvad går projektet ud på? Vi er i Kom/IT og matematik startet på et nyt SO projekt, der hedder faglig formidling, hvor at vi

Læs mere

Hvordan vurderer du dit faglige udbytte af modulet i forhold til de opstillede formål?

Hvordan vurderer du dit faglige udbytte af modulet i forhold til de opstillede formål? Hvordan vurderer du dit faglige udbytte af modulet i forhold til de opstillede formål? jeg synes, at det var et rigtigt godt semester med engagerede undervisere og relevant materiale og diskussioner, og

Læs mere

Din personlighedsprofil som iværksætter

Din personlighedsprofil som iværksætter Din personlighedsprofil som iværksætter Stærke personlighedstræk: 6-9 krydser Medium stærkt personlighedstræk: 4-5 krydser Svage personlighedstræk: 1-3 krydser 9 Resultater 8 7 6 5 4 3 Producenten Administratoren

Læs mere

BYFORNYELSE. IT i byfornyelsen elektronisk borgerinddragelse

BYFORNYELSE. IT i byfornyelsen elektronisk borgerinddragelse BYFORNYELSE IT i byfornyelsen elektronisk borgerinddragelse Socialministeriet 2007 Udarbejdet af Laura Larvig Andersen og Jonas Bjørn Whitehorn, Kvarterløft Nørrebro Park, Københavns Kommune Omslagsfoto

Læs mere