Wprowadzono Zdog 1.0, silnik pseudo-3D dla Internetu wykorzystujący Canvas i SVG

Dostępna wersja biblioteki JavaScript Zdog 1.0, który implementuje silnik 3D symulujący obiekty trójwymiarowe w oparciu o prymitywy wektorowe Canvas i SVG, tj. implementacja trójwymiarowej przestrzeni geometrycznej z rzeczywistym rysowaniem płaskich kształtów. Kod projektu otwarty na licencji MIT. Biblioteka liczy zaledwie 2100 linii kodu i zajmuje 28 KB bez minifikacji, ale jednocześnie pozwala na tworzenie całkiem efektownych obiektów, które swoim charakterem są bliskie efektom pracy ilustratorów.

Celem projektu jest dostarczenie narzędzi, które pozwolą na pracę z obiektami 3D równie łatwo jak z ilustracjami wektorowymi. Silnik inspirowany jest starą grą komputerową Dogz, w którym do stworzenia środowiska 3D wykorzystano płaskie kształty XNUMXD oparte na grafice sprite'ów.

Wprowadzono Zdog 1.0, silnik pseudo-3D dla Internetu wykorzystujący Canvas i SVG

Modele obiektów 3D w Zdog są generowane przy użyciu prostego deklaratywnego API i układane poprzez przyciąganie i grupowanie proste kształty, takie jak prostokąty, okręgi, trójkąty, odcinki linii, łuki, wielokąty i krzywe. Zdog wykorzystuje zaokrąglone kształty, bez wyraźnych wielokątnych nieregularności. Proste kształty są renderowane w bardziej złożone reprezentacje XNUMXD, takie jak kule, cylindry i sześciany. Co więcej, z punktu widzenia dewelopera, kule definiuje się jako punkty, torusy jako okręgi, a kapsuły jako grube linie.

Elementy składowe obiektów przetwarzane są z uwzględnieniem ich wzajemnego położenia i łączenia za pomocą niewidocznych kotwic. Wszystkie właściwości dynamiczne, takie jak przekształcenia, obroty i skale, są operacjami wektorowymi określanymi za pomocą obiektu Vector. W przypadku obiektów obsługiwane są siatki wielokątne.

Źródło: opennet.ru

Dodaj komentarz