Prezentace projektu z předmětu PGRF2

Slides:



Advertisements
Podobné prezentace
Číslo projektu CZ.1.07/1.5.00/ Název školy Gymnázium Česká a Olympijských nadějí, České Budějovice, Česká 64 Název materiálu VY_32_INOVACE_FY_2E_PAV_01_Světlo.
Advertisements

Základní škola a mateřská škola Lázně Kynžvart Autor: David Holubec NÁZEV: VY_32_INOVACE_01_INF Vzdělávací oblast: informatika Ročník: 9. Číslo projektu:
Základní škola T. G. Masaryka a Mateřská škola Poříčany, okr. Kolín VY_32_INOVACE_M_10 Tangens Zpracovala: Mgr. Květoslava Štikovcová Číslo projektu: CZ.1.07/1.4.00/
Autor: Předmět: Ročník: Název: Označení: DUM vytvořen: Mgr. Hana Němcová Matematika, seminář diferenciální a integrální počet Osmý ročník víceletého gymnázia.
Využití goniometrických funkcí Řešení pravoúhlého trojúhelníku VY_32_INOVACE_M9F 20.
Název školy ZÁKLADNÍ ŠKOLA, JIČÍN, HUSOVA 170 Číslo projektu CZ.1.07/1.4.00/ Číslo a název klíčové aktivity 3.2 Inovace a zkvalitnění výuky prostřednictvím.
Dopravní modely v SUMP Jitka Ondráčková
Tělesa –Hranol Číslo projektu: CZ.1.07/1.4.00/ Název DUM:
1. KŘÍŽOVKA Pohyb může být posuvný a ….. Veličina s jednotkou m³ 1
SOU a ZŠ Planá, Kostelní 129, Planá Vzdělávací oblast
Lichoběžník VY_42_INOVACE_25_02.
Užití goniometrických funkcí
ZÁKLADNÍ ŠKOLA, JIČÍN, HUSOVA 170 Číslo projektu
ŠKOLA: Městská střední odborná škola, Klobouky u Brna,
Neguj výroky. Urči jejich pravdivostní hodnotu
Evaluace předmětů studenty (Anketky)
Konstrukce trojúhelníku
Pythagorova věta VY_42_INOVACE_04_02.
GONIOMETRICKÁ FUNKCE SINUS
56.1 Goniometrické funkce a jejich vlastnosti I.
Střední odborná škola a Střední odborné učiliště, Vocelova 1338
2. cvičení
Souhrnné otázky, Světelné jevy
NÁZEV ŠKOLY: Základní škola Hostouň, okres Domažlice,
Pravoúhlá axonometrie
Matematická gramotnost Znaky dělitelnosti
SVĚTELNÝ TOK VYZAŘOVANÝ SVÍTIDLEM
Vlastnosti trojúhelníku
Frézování drážek ve šroubovici
Kdo s koho?!.
Sestrojení úhlu o velikosti 90° pomocí kružítka.
VY_32_INOVACE_CH.9.A Název školy: ZŠ Štětí, Ostrovní 300 Autor: Mgr. Tereza Hrabkovská Název materiálu: VY_32_INOVACE_CH.9.A.03_MOLÁRNÍ HMOTNOST.
Abstract Factory.
2.2 Kvadratické rovnice.
AutoCad 2012 Základy kreslení Elipsa
Matematika pro 2.stupeň ZŠ
NÁZEV ŠKOLY: 2. ZÁKLADNÍ ŠKOLA, RAKOVNÍK, HUSOVO NÁMĚSTÍ 3
Goniometrické funkce Tangens Nutný doprovodný komentář učitele.
DOPLNĚK Název školy: Základní škola Karla Klíče Hostinné
Goniometrické funkce Autor © Ing. Šárka Macháňová
ŘEŠENÍ PRAVOÚHLÉHO TROJÚHELNÍKU.
Informatika – Grafika.
Výukový materiál zpracovaný v rámci projektu "EU peníze školám"
Trojúhelníky Názvosloví Obvod Rozdělení Obsah Výšky v trojúhelníku
7 PYTHAGOROVA VĚTA.
Konstrukce trojúhelníku
Číslo projektu CZ.1.07/1.5.00/ Číslo materiálu VY_32_INOVACE_19-12
ZÁKLADNÍ ŠKOLA, JIČÍN, HUSOVA 170 Číslo projektu
Pythagorova věta – příklady
Název školy:  ZÁKLADNÍ ŠKOLA PODBOŘANY, HUSOVA 276, OKRES LOUNY Autor:
(obsah a rozsah pojmu, klasifikace pojmů)
Světelné jevy -shrnutí
Přednášky z Distribuovaných systémů
Název: VY_32_INOVACE_ICT_7B_12B Škola:
Název školy: Základní škola Pomezí, okres Svitavy
Název školy:  ZÁKLADNÍ ŠKOLA PODBOŘANY, HUSOVA 276, OKRES LOUNY Autor:
Výšky v trojúhelníku Procvičení. Výšky v trojúhelníku Procvičení.
PŘEDZKOUŠKOVÁ PREZENTACE
27.1 Vlastnosti a konstrukce lichoběžníků I.
Autor: Mgr. Monika Kysilková
Konstrukce trojúhelníku - Ssu
Množiny bodů v rovině Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Kamila Kočová. Dostupné z Metodického portálu ISSN:  ,
ZÁKLADNÍ TĚLESA V MONGEOVĚ PROMÍTÁNÍ
Funkce v jazyce C = „množina“ operací, která provádí nějakou činnost s různými vstupy odstranění vícenásobného psaní či vkládání téhož kódu a lepší přehlednost.
AUTOR: Mgr. Lenka Štěrbová
Sestrojení úhlu o velikosti 90° pomocí kružítka.
NÁZEV: VY_32_INOVACE_06_07_M7_Hanak
PRAVOÚHLÁ SOUSTAVA SOUŘADNIC
Konstrukce trojúhelníku
Transkript prezentace:

Prezentace projektu z předmětu PGRF2 Téma: Bludiště Miroslav Pokorný

Obsah prezentace Reprezentace světa Řešení kolizí Sprite grafika Nepřátelé a viditelnost

Reprezentace světa „Dvourozměrný“ (není možný pohyb ve vertikální ose) Kolmý (všechny stěny jsou na sebe kolmé) Reprezentace pomocí matice WorldObject[][] staticWorld = new WorldObject[WIDTH][HEIGHT]; [0,0] Width Height 1,0 2,0 0,0 4,0 5,0 3,0 1,1 2,1 0,1 4,1 5,1 3,1 1,2 2,2 0,2 4,2 5,2 3,2 1,3 2,3 0,3 4,3 5,3 3,3 1,4 2,4 0,4 4,4 5,4 3,4 6,0 6,1 6,2 6,3 6,4

Řešení kolizí WorldObject  vlastnost „clip“ (určuje, zda je daný objekt neprůchozí) Hráč na pozici: 2.5;1.5 Pohyb v kladné ose X a Z Kolize může nastat pouze s objektem na [2,2] nebo [3,1] [0,0] Width Height 1,0 2,0 0,0 4,0 5,0 3,0 1,1 2,1 0,1 4,1 5,1 3,1 1,2 2,2 0,2 4,2 5,2 3,2 1,3 2,3 0,3 4,3 5,3 3,3 1,4 2,4 0,4 4,4 5,4 3,4 6,0 6,1 6,2 6,3 6,4 [0,0] Width Height 1,0 2,0 0,0 4,0 5,0 3,0 1,1 2,1 0,1 4,1 5,1 3,1 1,2 2,2 0,2 4,2 5,2 3,2 1,3 2,3 0,3 4,3 5,3 3,3 1,4 2,4 0,4 4,4 5,4 3,4 6,0 6,1 6,2 6,3 6,4

Řešení kolizí (v ose X) Pokud: PoziceX + krok + tolerance > PoziceX možnost kolize Kontrola objektu na pozici [PoziceX + 1][PoziceZ] Pokud objekt není null a zároveň je Clip tak pohyb nebude proveden private double collisionMoveX(double step) { double z = player.getPositionZ(); double x = player.getPositionX(); if (step > 0) { if ((int) x < (int) (x + step + player.STEP/2)) { if ((int) (x + step + player.STEP/2) > WIDTH - 1) return 0; WorldObject next = staticWorld[(int) (x + step + player.STEP/2)][(int) z]; if (next != null && next.isClip()) return 0; } } else { //řešení pro pohyb v ose -X } return step; }

Sprite grafika Na mapování „poloprůhledné“ textury na Quad Quad je nutné rotovat (podle počátku v ose Y) na základě azimutu hráče Vytváří „pseudo“ 3D efekt  2D objekt ve 3D +45°

Problém spritů Dříve vykreslené sprity zakryjí později vykreslené sprity Před vykreslením je nutné seřadit sprity podle vzdálenosti od hráče Aby sprite nezakryly část světa, je nutné je vykreslovat až nakonec

Nepřátelé (viditelnost) Problém, jak zjistit zda může být hráč spatřen nepřítelem? Nepřítel je natočen ve světě pod nějakým úhlem (eAzimut) Nepřítel vidí v zorném úhlu FOV Pokud: α – 0.5*FOV <= eAzimut <= α + 0.5*FOV  Hráč může být spatřen α 90° v dz dx X Z 𝛼= sin −1 𝑑𝑥 𝑣 𝑣= 𝑑𝑥 2 + 𝑑𝑧 2 X Z α = 90°-α α = 90°+α α = 270°-α α = 270°+α α 90° v dz dx 0° 180° 270°

Nepřátelé (viditelnost) [2] Interpolace po přeponě pravoúhlého trojúhelníku Dostatečné množství dělení Pokud při testu objektu na pozici [iX,iZ] se zjistí, že je neprůhledný bude vráceno FALSE, pokud celá interpolace nezjistí neprůhledný objekt bude vrácena hodnota TRUE [0,0] X Z 1,0 2,0 0,0 4,0 5,0 3,0 1,1 2,1 0,1 4,1 5,1 3,1 1,2 2,2 0,2 4,2 5,2 3,2 1,3 2,3 0,3 4,3 5,3 3,3 1,4 2,4 0,4 4,4 5,4 3,4 6,0 6,1 6,2 6,3 6,4 Nepřítel na pozici [2,1] hráče nevidí Nepřítel na pozici [3,4] hráče vidí

Prostor pro dotazy Děkuji za pozornost