Open Dag Informatica (28 nov 2003) 3D Graphics Workshop Dr. Erwin M. Bakker Ing. Ernst Lindoorn Leiden Institute of Advanced Computer Science Leiden University.

Slides:



Advertisements
Verwante presentaties
Het maken van presentaties voor op de computer.
Advertisements

Hoe zet ik een LP over op een CD? Presentatie voor de CWG op 16 augustus 2007 door Herman van der Lelie.
De Altijd meteen aan de slag
KINN 2010 •OOP •O Object •O Georiënteerd •P Programmeren.
Beginnen met PowerPoint Ga nu naar dia 2.
Informatieanalyse en databaseontwerp Practicum 2 Welkom bij het practicum IID: Query’s, Orde in de Chaos.
Een tablet voor elke docent……
Programmeren van een humanoid robot
Httpd.conf Aanpassen van het Apache 2 configuratiebestand om mod_rewrite via.htaccess toe te staan.
Les 4 cursus WordPress. Wat gaan we doen (1) 1. Importeren via Word problemen 2. Alle pagina’s en berichten verwijderen, incl prullenbak leegmaken 3.
Instructie Programmeren Task 1 5JJ70. Task 1.1: Hello World •Klik naast de laatste accolade in de grijze kantlijn om een breakpoint neer te zetten, anders.
Video Verwerking Movie Maker
Walk-in Pinnacle 14.
Hoera! De Computer doet het weer!
DIA-OPMAAK (1) Dia-indeling H van Breugel A van der Coelen.
Workshop harde schijf indelen
Inleiding programmeren in C++ Life Science & Technology 19 januari Universiteit Leiden.
Maak zonder weerstand je proefwerk natuurkunde!
Base: bewerkingen 2 soorten - Oplopend- Aflopend.
om deze presentatie uit te voeren
Instructie Programmeren Task 1 5JJ70. Task 1.1: Hello World Klik naast de laatste accolade in de grijze kantlijn om een breakpoint neer te zetten, anders.
Het levensboek.
Klik in de berichtenbalk op Bewerken inschakelen,
1 Datastructuren Introductie tot de programmeeropgaven in C++ Jan van Rijn
Oudere software op een nieuwe PC De andere manier is het gebruik van virtual p.c. Het gebruik van virtual pc heeft als voor/nadeel het standaard operatings-
LauwersCollege Buitenpost Java Applet programma dat op een website zichtbaar is Java Application programma dat zelfstandig werkt Javascript Scripttaal.
Microsoft Word Liesbeth Van Raemdonck. Word openen Klik op de ‘start’-knop, links onderaan Klik op Programs Kies voor MS Word.
Om willekeurig welke site en welk werk dan ook overzichtelijk te houden, moeten er eerst (sub)directories gemaakt worden: Bijeenkomst 2 online journalistiek.
KINN 2010 OOP O Object O Georiënteerd P Programmeren.
Starten met PHP Dynamischer bouwen. PHP is een een scripttaal waarmee de server pagina’s in elkaar kunt laten zetten. Het verschil met HTML: Een php pagina.
Visual Basic.NET voor studenten De VB- ontwikkelomgeving Hoofdstuk 2.
Wegwijs in Bel-first Handleiding voor het gebruik van deze databank en het opslaan van informatie eruit.
Hoe maak ik een PowerPoint-presentatie?
Sketchup 2014 Les 9.
Zet de telefoon aan en voer je pincode in.
© 2012 Microsoft Corporation. Alle rechten voorbehouden. Een Lync-vergadering plannen Als u Outlook gebruikt, kunt u een Lync-vergadering plannen met de.
Kies Hoe en wanneer installeren Wat is het doel Hoe werkt het (7 schermen)
tircms02-p les 1 Operating Systems practicum
© imec 2000 © imec 2001 MAX+PLUS II Installatieprocedure.
Handleiding LoGiApp tbv Riwo Transport
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Maak, uitgaande van een MIDI file, een (klein) programma.
1. Starten Zet de telefoon aan en voer je pin code in Als dit scherm verschijnt klik dan vervolgens op de Boordcomputer Icoon 2.1 Inloggen Log in door.
Tircms03-p les 1 C++ voor C-kenners Voor Technische Informatica.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Een embedded systeem: ARM bord.
CsvSteekproef Hoe en wanneer installeren Wat is het doel Hoe werkt het (5 schermen)
Nu is het plan om een map op een van de 2 computers te plaatsen en die te simpel te delen naar die andere computer ook wel SFS (Simple File Sharing) genoemd.
Let’s go! ›Beginnerspresentatie ›Starten met prospero ›Verschil CMS en web navigator ›Nieuwe content > nieuwe folder aanmaken ›Bestanden uploaden ›Linkobject.
Wikimedia Les 1. Wat is Wikimedia? Weten we het nog?
Hoe maak ik een PowerPoint presentatie?
Efficiënt werken met Adlib voor eindgebruikers
Inloggen >> Gegevensaanlevering en controle in Peridos In Release 3.3 van Peridos is er een nieuwe module gebouwd voor het aanleveren en bekijken van gegevens.
Een enquête maken met Google Docs Je gaat leren hoe je een enquête kunt maken in Google Docs met een Formulier. De link kun je vespreiden zodat de vragenlijst.
C++ Les 1: introductie. Programmeren Programma’s scripts Websites libraries (Sound, GUI, netwerking…)
Na de praktijk, de theorie.. Zoals een gehaktmolen 1.Je stopt er iets in. 2.Je hoeft niet te weten wat er binnenin gebeurt. 3.Het resultaat verschijnt.
IF() ELSE() LES 4: VOORWAARDEN. BOOL Een variabele die slechts 2 mogelijke waarden kan hebben: true(waar) of false(niet waar) duid je aan met bool bool.
SharePoint Alles over versiebeheer In de Private en Public cloud.
1 De werkomgeving van autocad instellen nadat we het programma geopend hebben. Klik rechtsonder op workplace switching.
How to use a Imac.
Expeditie Bestandsbeheer
Auvesta Affiliate validatie
BEGINNERs EV3 PROGRAMMeer Les
SharePoint Versiebeheer
Tinpro015b-les 1 C++ voor C-kenners Voor Technische Informatica.
Bridge spellen naspelen met Wbridge5
Bridge spellen naspelen met Wbridge5
Grafiek Generator Monitor de Bibliotheek op school
Uitleg Toverdoos 2007 via deze presentatie, D. van Hunnik
Hoe maak je een eyecatcher
FSC_LES_201904A_WindowsVaardigheden
Transcript van de presentatie:

Open Dag Informatica (28 nov 2003) 3D Graphics Workshop Dr. Erwin M. Bakker Ing. Ernst Lindoorn Leiden Institute of Advanced Computer Science Leiden University

Gaming Modelering Architectuur, Design Wetenschappelijke Visualisatie Animaties, Films Medische Visualisatie etc. 3D Graphics Toepassingen

3D Graphics: Hoe doen we dat? OpenGL Punten, lijnen, en vlakken in 3D Objecten uit kippengaas Geef vlakken een kleur Plaats lichten Plaats een camera Bereken wat de camera ziet (rendering)

Het Probleem Wat missen we in dit plaatje?

Textures n Voor een realistische plaatje hebben we op zijn minst textures nodig!

3D Graphics Workshop (A) Een Open GL programma Compileren en executeren (1)Log in op de machine met de gegeven gebruikersnaam en password. (2)Maak op schijf D: van de computer een eigen directory MijnDirectory (bedenk zelf een naam). Ga naar de webpagina en klik op de link Workshop Code. Sla de file 3DWorkshop.zip op in de zojuist gemaakte directory D:\MijnDirectory. (3)Blader (browse) naar de directory D:\MijnDirectory en right-click de file 3DWorkshop.zip. Selecteer Extract here. De file wordt nu in je directory uitgepakt. (4)Blader naar de directory. Daar zie je een file Texture.dsw. Dubbel-klik deze file met je linkermuisknop. Dit opent de Microsoft Visual C++ omgeving waarin we programma’s kunnen schrijven, compileren, en executeren. Selecteer in de dialog-box eventueel Texture.dsp en left-click. (5)Selecteer het menu-item. Het C++ programma wordt nu gecompileerd en er wordt een executable gebouwd. (6)Als het goed is zullen er tijdens het compileren geen fouten optreden en ben je nu klaar om het programma te draaien (executeren). Selecteer hiervoor (je kan ook CTRL gebruiken). Het programma zal nu starten. (7)Je ziet nu enkele kubussen met textures. Door op te drukken kan je de texture aan of uit zetten. Door op te drukken kan je de texture mode variëren : GL_MODULATE, GL_DECAL, and GL_BLEND. Met de kan je navigeren.

3D Graphics Workshop (B) Een Open GL programma veranderen, compileren en executeren (1)Stop het programma door de twee windows van het programma te sluiten. NB Sluit niet MS Visual C++, want we gaan nu het programma veranderen. (2)Zoek in mycube.cpp naar de functie void drawfloor() en verwijder && false in de test if (is_texture && false). (&& false stond er enkel om te voorkomen dat op de vloer een texture zou worden getekend. Compileer en draai het programma nu opnieuw. (3)Er zijn ook nog andere textures beschikbaar dan enkel texture.rgb. Probeer een van de andere textures: brick.rgb, coke.rgb, wood.rgb, eliteforce.rgb, concrete.rgb, etc. Aanwijzing: de textures worden ingelezen via de statements get_texture("texture.rgb", &texture_id_floor); etc. NB Je kan ook zoeken in de file mycube.cpp op het keyword 3dworkshop. Je komt dan vanzelf bij de plaatsen in de code die we tijdens de workshop willen veranderen.

3D Graphics Workshop (C) Een 3D ‘Stad’ (1)Stop het programma (2)Voeg gebouwen toe door de volgende functie te gebruiken: drawbuilding(int x_offset, int z_offset, int color, int height, int width, int depth). (x_offset,z_offset) geeft de plaatsing van het gebouw ten opzichte van het midden van het vlak. De overige parameters spreken voor zich. In mycube.cpp zie je al enige voorbeelden van de aanroep drawbuilding(…) in het commentaar staan. Haal de comment tekens ‘//’ weg om de statements te activeren. (3)Compileer en executeer het programma. (4)Voeg reclameborden toe. Gebruik hiervoor de functie void drawbillboard(int x_offset, int z_offset, int color, int height, int width, int mode). (x_offset,z_offset) zijn als hiervoor beschreven. Er zijn 3 verschillende animatiemodes (mode = 1, 2, of 3 respectievelijk). Ook van de aanroep drawbillboard(…) kan je weer enige voorbeelden in het commentaar terugvinden. (5)Compileer en executeer het programma. Probeer ook de juiste textures te gebruiken.

Workshop (D) ‘Newave’ (1)Sluit Visual C++ en blader nu naar de directory newave (2)Dubbelklik de file newave.dsw. Hiermee start je opnieuw MS Visual C++ maar nu met het programma newave. (3)Compileer en executeer het programma. (4)Door met je rechtermuisknop op het window met het 3D model te klikken, open je een menu met verschillende opties. Probeer:. Dit toont de kale geometrie van het 3D object zonder enige vorm van shading of texture mapping. (5)Selecteer. Dit toont de normaalvectoren op de driehoekjes waaruit het object is opgebouwd. Deze normaalvectoren worden gebruikt voor het berekenen van de juiste weerkaatsing van het licht. Selecteer om te zien hoe dit werkt. (6)Probeer de andere opties uit het menu. Selecteer als laatste de optie. (7)Verander tenslotte het programma zo dat een van de textures uit het vorige programma te zien is op het 3D model.