Procedurell stad. Projekt i kursen TNM022 Procedurella metoder för bilder. Tobias Heldring, tobhe335 2011-02-09



Relevanta dokument
Procedurell grottgenerator och eld i GLSL. Marcus Widegren

Bygga hus med LECA-stenar

a), c), e) och g) är olikheter. Av dem har c) och g) sanningsvärdet 1.

Senaste revideringen av kapitlet gjordes , efter att ett fel upptäckts.

1. Jag upplever att min utbildning håller god kvalitet. NE och MÅG 1 Inte alls Stämmer helt 11 6

Kursutvärdering. Samhällskunskap A

Floorlamp "Trefot" Articelnr:

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Kursutvärdering Ämne: SO Lärare: Esa Seppälä/Cecilia Enoksson Läsåret Klass: SPR2

KÄNN DIN PULS OCH FÖRHINDRA STROKE. Några enkla regler för hur du mäter din puls. Det här är en folder från Pfizer och Bristol-Myers Squibb

PM Riksläger 2016 Allmän information Kontrol markering: Kontrol Definition: Kartritare: Banläggare: Observera!

Kv. Ogräset. Martin Stenmarck,

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

Tentamen i Sannolikhetslära och statistik (lärarprogrammet) 12 februari 2011

Vid köp av fem eller fler kartor ges 10 SEK rabatt per karta. Övningarna sitter ute:

Fortsättningskurs i programmering F 2. Algoritmer i Programutveckling Hugo Quisbert Problemexempel 1

Matematik 92MA41 (15hp) Vladimir Tkatjev

Skriv ut korten. Laminera dem gärna. Då håller de längre och kan användas om igen. Klipp ut dem och lägg de röda respektive de gröna i var sin ask.

Procedurella Grottor TNM084. Sammanfattning. Alexander Steen

HANDLEDNING/METODIK En del av mig själv Filmade självporträtt för intagna på anstalter och institutioner En jagstärkande workshop

1. Skriv = eller i den tomma rutan, så att det stämmer. Motivera ditt val av tecken.

Uppgift 1 ( Betyg 3 uppgift )

Helsingborgs Sportgymnasium. Kvalitetsredovisning för läsåret Ansvarig: Stefan Krisping

ABF Stockholm. Vuxenutbildning - Våren 2010

8-4 Ekvationer. Namn:..

Så fyller du i blanketten!

Tentamen IE1204 Digital design

Virkade raggsockor By: Pratamedrut

Enkätresultat för vårdnadshavare till elever i Montessori Friskola Gotland hösten Antal svar: 13

Slutrapport för Pacman

Enkätresultat för vårdnadshavare till elever i Bladins Intern School of Malmö i Malmö hösten Antal svar: 19

Vardagsord. Förstår ord som fler än, färre än osv. Har kunskap om hälften/dubbelt. Ex. Uppfattning om antal

Slutrapport för JMDB.COM. Johan Wibjer

Konsten att bestämma arean

Fotoutmaning 1. STILLEBEN (Inomhus) Välkomna till Järbo Garns fotoutmaning med inriktning stickat och virkat - Maja här!

Bättre överblick, ännu bättre vård. Sammanhållen journalföring. Nya möjligheter för vården att få ta del av dina uppgifter.

Pedagogisk dokumentation i förskolan hur kan vi vidareutveckla detta med hjälp av digitala verktyg? Vecka 44 Pedagogiskt Center

KVALITETSINDIKATORER PÅ 1177.se

Vad är bra mat, egentligen? När forskningsrönen utvecklas till konkreta verktyg för hela familjen.

VAD HÄNDE MED HUNDEN? av Paula Rehn-Sirén (Tel: )

Återuppbyggandet. JOHAN Ny stadsplan? Ska det vara nödvändigt? AMANDA Kan vi inte bara bygga upp våra hus igen på tomterna där dom stod?

Bättre överblick, ännu bättre vård.

Abstrakt algebra för gymnasister

För dem som är på behandling Detta är en översättning av en publikation godkänd av NA-gemenskapen.

viktigt att ni, var och en, behåller era egna enkäter så att ni kan följa er egen utveckling.

Valet 2010 på facebook!

Kursutvärderingsformulär

Några övningar att göra

75059 Stort sorteringsset

Problemet löd: Är det möjligt att på en sfär färga varje punkt på ett sådant sätt att:

Procedurell renderingsmotor i Javascript och HTML5

L A B R A P P O R T 1

Sammanställning av studerandeprocessundersökning GR, hösten 2010

Optimering av ett värmeverk

SvFFs Arbetsmodell. Vad? Öva passningsspel, orientera sig, rättvänd/felvänd spelare, spel på rättvänd (med fart)

Gruppträning 2011/2012

Hitta kunder som frilansare

Lennart Carleson. KTH och Uppsala universitet

Mediagymnasiet Nacka Strand. Skolan erbjuder. Inför låsåret 2012/2013 erbjuder vi: Estetiska programmet, estetik och media.

THSP41 - Teknisk kommunikation på spanska II - del 1

Boende enkät Söderby 2:14 hösten 2011

Föreläsning 6: Introduktion av listor

ATTITYDER TILL ENTREPRENÖRSKAP PÅ HÄLSOUNIVERSITETET

Den förlorade sonen:

Välkomna på min rundtur runt Prakticum Borgå.

Träningsprogram för Lidingö Ultra

Självbyggarens hus står på betongplintar

Grupparbete L ÄR ARHANDLEDNING TRO, HOPP & KÄRLEK. Sjömanstatueringar.

Lösningsförslag till tentamen för 1E1601

Resultat för: Stockholms län / Sundbyberg / Fristående / Grillska gymnasiet Sundbyberg / Restaurang- och livsmedelsprogrammet (RL)

varandra. Vi börjar med att behandla en linjes ekvation med hjälp av figur 7 och dess bildtext.

Enkätstudie bland passagerarna på Gotlandia II och Gotland

Fjäderns Bokslut 2015

Drakriddare i Drakar och Demoner Trudvang Skapat av Daniel Falck

UTVÄRDERING. Sammanställning av utvärderingsresultat. Historia /2015 S2ab. Utvärdering Hi2 2014/15" 1

Matematik och modeller Övningsuppgifter

Från sömnlös till utsövd

Att leva med prostatacancer

Mediedjungeln (sas) mediekunskap för barn

Inledning. Antagningsprocess

NollOlles Enkla Delta-Loop för 40-10m ( Artikel SM0O 2012)

VIDEODAGBOKEN. Individuellt Mjukvaruutvecklingsprojekt. En dagbok i videoform online. Robert Forsgren (rf222ce) UD

Copyright 2008 Pausit AB medföljer programvaran pausit. Pausit version 1.2 Användarmanual

För årskurs 1 50 poäng IDH

Förberedelser: Sätt upp konerna i stigande ordningsföljd (första inlärningen) eller i blandad ordningsföljd (för de elever som kommit längre).

Specialkurs SPÅR. utarbetad av. Anne-Marie Folkesson och Centrala Hundägarutbildningssektorn reviderad

Din skattade profil inför 2012

Sammanställning av studentutvärderingen för kursen Estetiska lärprocesser 15 hp, ht 2007

Tutorial Av Marika ioma Lantz för HannasPysselstuga.se

Vad kan vara svårt med en vanlig smartphone?

Här kan du välja befintligt upplägg eller skapa ett nytt. Klicka på edit uppe till höger för att redigera och/eller skapat nytt.

Hur bor unga vuxna som flyttat hemifrån?

1. Hur många timmar per vecka har du i genomsnitt lagt ner på kursen (inklusive schemalagd tid)?

Riksfinal. Del 1: 6 uppgifter Tid: 60 min Maxpoäng: 18 (3p/uppgift) OBS! Skriv varje uppgift på separat papper och lagets namn på samtliga papper.

Reglemente gällande uttagning till Lag-SM samt Lag-SM Version

TRÄNINGSPROGRAM 6 VECKOR

BEDÖMNINGSSTÖD. till TUMMEN UPP! matte inför betygssättningen i årskurs 6

Utvärdering av 5B1117 Matematik 3

Hur bor unga vuxna som flyttat hemifrån?

REFERAT KOMMUNDELSSTÄMMA I MÖLNLYCKE

Transkript:

Procedurell stad Projekt i kursen TNM022 Procedurella metoder för bilder Tobias Heldring, tobhe335 2011-02-09

Sammanfattning Jag har gjort en enkel stadsgenerator med fokus på stadssiluett. Programmet är byggt med c++ och OpenGL och använder sig av GLUT för fönsterhantering. Programmet genererar upp en stad med ett regelbundet vägnät och hus av varierande höjd med en koncentration av höga hus i mitten av staden. Husen i staden innehåller dessutom variation i form av olika husfärg samt takmodeller. Dessa placeras ut dels slumpmässigt och dels med hänsyn till husen höjd.

Genomförande Programmet är utvecklat i Microsoft Visual c++ 2008 använder OpenGL för grafik samt GLUT för fönsterhantering. Programmet använder sig även av brusfunktionerna i klassen noise1234, Stefan Gustavsons implementation av Ken Perlins Improved Noise. Staden som genereras har en diameter på 38 längdenheter, husen är 1x1 i bredd och djup och deras höjd varierar från 0,3 till ca 7, där höjden avrundas till hela våningar med våningshöjden 0.3. Hushöjd Husens höjd påverkas av tre olika parametrar. Den första är brus som ger en regelbunden variation i hushöjden. Den andra är att husen får ytterligare höjd adderat beroende på hur nära centrum av staden de är belägna. Den tredje är en slumpfaktor som fördubblar höjden på vissa hus. Hus nära centrum har en större sannolikhet att få höjden dubblerad. Till sist så avrundas husens höjd till en multipel av våningshöjden som är definierad till 0.3 längdenheter. Brus Alla hus får till och börja med standardhöjden 1 längdenhet. Till det adderas ett tvådimensionellt brus för att ge husen en regelbunden variation i höjd. Inparametrarna till bruset är husets koordinater. Dessa divideras var och en med en faktor 7 för att få lagom periodicitet på bruset. buildingheight=1 noise x/7, y/7 Eftersom staden har en diameter på 38 längdenheter befinner sig x och y inom intervallen nedan. 19 x 19,19 y 19

Central höjd Till höjden som fås efter att bruset lagts på adderas ytterligare höjd beroende på hur nära centrum av staden huset befinner sig enligt formeln nedan. buildingheight=buildingheight 3 4 distancefromcenter 1 cityradius Slumpfaktor Till sist används en slumpfaktor för att i vissa fall fördubbla höjden på husen. Hus närmare centrum har större chans att påverkas. Sannolikheten att höjden fördubblas förändras linjärt mellan 0% för hus längst ut i staden till 40% för hus i stadens mitt. Operationen sker när villkoret nedan uppfylls, där randomnumber varierar mellan 0 och 1. randomnumber 0.6 0.4 distancefromcenter cityradius

Till sist avrundas husets höjd till en multipel av våningshöjden som är 0.3 längdenheter Husfärg Husen kan ha tre olika färger. Brun används för att indikera hus med tegelmaterial eller liknande och hus på 4 våningar eller mindre har en 25% chans att bli bruna. För husen som inte tilldelas färgen brun blir hälften ljusgrå och hälften mörkgrå. Färgerna ser inte speciellt naturtrogna ut då det var svårt att få en sån färg på en husmodell som är av enklast möjliga slag, en polygon för varje sida och ingen textur. Det var då svårt att förmedla känslan av en mörk färg som är starkt upplyst. Husform Husen tilldelas även tre olika typer av tak för att ge ytterligare variation till stadsbilden. Taken kan ha formen av en prisma, pyramid eller vara platta. För hus med 6 våningar eller mindre är sannolikheten 25% att få ett prismatak. Dessa tak kan vara vinklade i två olika riktningar där fördelningen mellan de två är hälften hälften. Hus på 13 våningar eller mer har 50% sannolikhet att få ett pyramidtak. Resten av husen har ett platt tak.

Resultat Resultatet kan ses som en bra början på en stadsgenerator men med ett par viktiga aspekter som saknas för att på allvar likna en riktig stadsbild. Höjdskillnaderna hos husen tycker jag på ett bra sätt skildrar innerstadsområdet i en stad av större storlek. De flesta husen är i samma höjd som grannhusen, med ett par undantag som sticker ut samt med höga hus koncentrerade till ett höghusområde. Igenkänningsfaktorn i de olika hustaken gör att tittaren snabbare förstår vad bilden föreställer samt är en början för att visa på den enorma variation som finns i byggnadskonstruktionerna i en riktig stad. De varierande husfärgerna hjälper också till med ytterligare variation även om det faktiska färgerna ser något onaturliga ut. Ett par viktiga egenskaper saknas för att på allvar likna en riktig stad och dessa skulle vara bra förslag för framtida utveckling. Det kanske mest slående är den exakta regelbundenheten i vägnätet som ju är väldigt sällsynt i riktiga städer. Här skulle man vilja har ett mer varierande vägnät. Jag lade en del tid på att försöka rita ett vägnät med hjälp av voronoidiagram och letade bland annat efter kodimplenentation av voronoi men hade svårt att hitta nån som jag kunde köra och som uppfyllde mina behov i det här fallet. Med ett mer oregelbundet vägnät blir det naturligt att införa olika storlek på husen även breddmässigt vilket även det är en bra förbättringspunkt. Till det skulle man kunna införa områden som är tomma t.ex. parkområden.