Projekcie telies na canvas v Javascriptu
Kód programu umožňuje vykresliť základné geometrické telesa na canvas:
- jedná sa o čistý Javascript, žiadne ďalšie knižnice nie sú použité
- na telesá sú aplikované základné afinní transformácie
- všetky transformácie [vrátane premietania na priemetňou] sa vykonávajú pomocou maticových operácií
- telesá sú zobrazované cez paralelný [horný rad] i stredovej premietanie [dolnej rad]
- pre lepšiu názornosť sú telesá animovaná pomocou rotácie v troch rozmeroch
- animácie je vykonávaná cez timer nastavený na 30 FPS
- základné parametre telies možno meniť za behu programu pomocou HTML prvkov
Vykresľovanie do priemetne ľahko trpí kvôli efektu, ktorý sa nazýva Z-fight. Počas vykresľovanie polygónov sú primitíva zoradené podľa súradnice Z, čo však nestačí. Ak budete chcieť tento problém odstrániť, je nutné pre každú plochu spočítať jej normálu a zistiť, či je plocha natočená smerom ku kamere alebo od nej. Smer normály sa potom musí zohľadniť počas triedenia primitív.
Galéria
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami
Stiahnuté 177x (2.76 kB)
Aplikácia je vrátane zdrojových kódov v jazyku JavaScript