Zdog 1.0 introduceret, en pseudo-3D-motor til internettet ved hjælp af Canvas og SVG

JavaScript-biblioteksudgivelse tilgængelig Zdog 1.0, som implementerer en 3D-motor, der simulerer tredimensionelle objekter baseret på Canvas- og SVG-vektorprimitiver, dvs. implementering af et tredimensionelt geometrisk rum med faktisk tegning af flade former. Projektkode åben under MIT-licens. Biblioteket har kun 2100 linjer kode og optager 28 KB uden minifikation, men samtidig giver det dig mulighed for at skabe ganske imponerende objekter, der er tæt på resultaterne af illustratorernes arbejde.

Målet med projektet er at levere værktøjer, der giver dig mulighed for at arbejde med 3D-objekter lige så nemt som med vektorillustrationer. Motoren er inspireret af et gammelt computerspil Dogz, hvor flade 3D-former baseret på sprite-grafik blev brugt til at skabe et XNUMXD-miljø.

Zdog 1.0 introduceret, en pseudo-3D-motor til internettet ved hjælp af Canvas og SVG

3D-objektmodeller i Zdog genereres ved hjælp af en simpel deklarativ API og arrangeres gennem snapping og gruppering simple former, såsom rektangler, cirkler, trekanter, linjestykker, buer, polygoner og kurver. Zdog bruger afrundede former, uden udtalte polygonale uregelmæssigheder. Simple former gengives til mere komplekse XNUMXD-repræsentationer såsom kugler, cylindre og terninger. Fra udviklerens synspunkt er sfærer desuden defineret som punkter, tori som cirkler og kapsler som tykke linjer.

Komponenterne i objekter behandles under hensyntagen til deres relative positioner og holdes sammen af ​​usynlige ankre. Alle dynamiske egenskaber, såsom transformationer, rotationer og skalaer, er vektoroperationer, der er specificeret ved hjælp af et vektorobjekt. Polygonmasker understøttes for funktioner.

Kilde: opennet.ru

Tilføj en kommentar