Blend4Web

Blend4Web
Deweloperzy Triumph spółka z ograniczoną odpowiedzialnością
Wersja stabilna
18.05 / 6 czerwca 2018 ; 4 lata temu ( 2018-06-06 )
Napisane w JavaScript , Python , C , C++
Typ Silnik 3D
Licencja GPLv3 lub komercyjne
Strona internetowa www.blend4web.com _ _

Blend4Web to darmowa i otwarta platforma do tworzenia i wyświetlania interaktywnej grafiki komputerowej 3D w przeglądarkach internetowych .

Przegląd

Framework Blend4Web wykorzystuje Blendera do edycji scen 3D. Renderowanie zawartości opiera się na WebGL , Web Audio , WebVR i innych standardach sieciowych bez użycia wtyczek .

Jest objęty podwójną licencją i jest rozpowszechniany na wolnej i otwartej licencji GPLv3 oraz licencji niewolnej ; kod źródłowy jest hostowany na GitHub .

Scenę 3D można przygotować w Blenderze, a następnie wyeksportować jako parę plików JSON i binarnych do załadowania w aplikacji internetowej . Można go również wyeksportować jako pojedynczy, samodzielny HTML , w którym spakowane są wyeksportowane dane, interfejs GUI odtwarzacza internetowego i sam silnik. Opcja HTML jest uważana za najprostszą. Wynikowy plik, który ma minimalny rozmiar 1 MB , może zostać osadzony na stronie internetowej przy użyciu standardowego elementu HTML iframe . Aplikacje internetowe obsługiwane przez Blend4Web można wdrażać w społecznościowych , takich jak Facebook .

Łańcuch narzędzi Blend4Web składa się z bibliotek JavaScript , dodatku Blender oraz zestawu narzędzi do poprawiania parametrów scen 3D, debugowania i optymalizacji .

Opracowany przez moskiewską firmę Triumph w 2010 roku Blend4Web został publicznie udostępniony 28 marca 2014 roku.

Pod koniec 2017 roku założyciele projektu Yuri i Alex Kovelenov opuścili firmę Triumph, aby rozpocząć prace nad nowym frameworkiem WebGL Verge3D .

W październiku 2019 roku ogłoszono „Absolutnie nowy Blend4Web”, który ma ułatwić tworzenie aplikacji 3D i dodać nowy rynek, na którym ludzie mogą oferować swoje modele 3D.

Cechy

Ramy zawierają szereg komponentów zwykle spotykanych w silnikach gier , w tym pozycyjny system audio , silnik fizyczny ( fork Bulleta przeniesiony do JavaScript ), system animacji i warstwę abstrakcji do programowania logiki gry.

Do jednego obiektu można przypisać do 8 różnych typów animacji, w tym animację szkieletu i poszczególnych wierzchołków . Szybkość i kierunek animacji (odtwarzanie do przodu/do tyłu), a także parametry systemu cząstek (rozmiar, prędkość początkowa i liczba) można zmieniać za pomocą interfejsu API .

Wśród innych obsługiwanych funkcji są dynamiczne ładowanie i rozładowywanie danych sceny, symulacja rozpraszania podpowierzchniowego oraz oświetlenie oparte na obrazie .

Istnieją gotowe opcje renderowania rozszerzonych środowisk zewnętrznych, w tym interakcja liści z wiatrem, woda, atmosfera i symulacja światła słonecznego. Jednym z przykładów pokazujących te efekty jest demo technologiczne „The Farm” , które zawiera również wielu animowanych postaci niezależnych oraz możliwość chodzenia, interakcji z obiektami i prowadzenia pojazdu w trybie pierwszoosobowym .

Oparty na interfejsie API WebGL obsługującym wiele przeglądarek , Blend4Web działa w większości przeglądarek internetowych , w tym mobilnych. Istnieją pewne zastrzeżenia dotyczące przeglądarek z eksperymentalną obsługą WebGL, takich jak Internet Explorer . Istnieją również aplikacje opracowane z myślą o Tizen , takich jak smartwatch Samsung Gear S2 .

Inne funkcje obejmują grupowanie wywołań losowania, określanie powierzchni ukrytych , symulację fizyki wątków i symulację oceanu.

W wersji 14.09 Blend4Web wprowadził możliwość dodawania interaktywności do scen 3D za pomocą wizualnego narzędzia programistycznego. Narzędzie przypomina edytor logiczny BGE, ponieważ wykorzystuje bloki logiczne umieszczone w Blenderze. Odtwarza ścieżki animacji autorstwa artysty, gdy użytkownik wchodzi w interakcję z predefiniowanymi obiektami 3D.

Od wersji 15.03 Blend4Web obsługuje dołączanie elementów HTML (takich jak okna informacyjne) do obiektów 3D („adnotacje”) i kopiowanie obiektów w czasie wykonywania („instancja”).

Obsługiwane są następujące efekty przetwarzania końcowego : poświata, poświata , głębia ostrości , promienie zmierzchu , rozmycie w ruchu i okluzja otoczenia w przestrzeni ekranu .

Rzeczywistość wirtualna i rzeczywistość rozszerzona

rzeczywistości wirtualnej są obsługiwane od końca 2015 roku. W szczególności wyświetlacz montowany na głowie Oculus Rift działa na eksperymentalnym interfejsie API WebVR .

Oprogramowanie obejmuje teraz także wstępną obsługę gamepadów , opartą na API Gamepada.

dodano możliwość tworzenia treści w rozszerzonej rzeczywistości . System oparty jest na otwartej bibliotece śledzącej ARToolKit i wykorzystuje protokoły WebRTC .

Począwszy od wersji 17.08, śledzenie palców jest obsługiwane przez urządzenie Leap Motion .

Integracja Blendera

Dodatek Blender jest napisany w Pythonie i C i może być skompilowany dla platform Linux x86/x64, OS X x64 i MS Windows x86/x64 .

Specyficzny profil Blend4Web można aktywować w ustawieniach dodatku. Po przełączeniu na ten profil interfejs Blendera zmienia się tak, że pokazuje tylko ustawienia związane z Blend4Web.

Blend4Web obsługuje zestaw funkcji specyficznych dla Blendera, takich jak edytor materiałów węzłów (narzędzie do programowania wizualnych shaderów ) oraz system cząstek . Istnieje podstawowa obsługa edytora animacji nieliniowych (NLA) Blendera do tworzenia prostych scenariuszy.

GLSL Blendera w czasie rzeczywistym , którego użytkownicy powinni używać w celu umożliwienia edycji WYSIWYG .

Godne uwagi zastosowania

NASA opracowała interaktywną aplikację internetową o nazwie Experience Curiosity , aby uczcić trzecią rocznicę lądowania łazika Curiosity na Marsie . Ta aplikacja oparta na Blend4Web umożliwia obsługę łazika, sterowanie jego kamerami i ramieniem robota oraz odtwarzanie niektórych ważnych wydarzeń z misji Mars Science Laboratory . Aplikacja została zaprezentowana na początku sekcji WebGL na targach SIGGRAPH 2015.

Experience Curiosity zostało przeniesione do Verge3D dla Blendera w 2018 roku z kilkoma ulepszeniami wydajności i poprawkami błędów.

General Motors w Zjednoczonych Emiratach Arabskich umieścił na swojej stronie internetowej działający konfigurator Chevroleta Camaro 3D.

Greenpeace stworzył interaktywne infografiki 3D, aby wesprzeć kampanię Greenpeace Detox w Rosji. Tallink zaprezentował interaktywną prezentację 3D swojego statku MS Megastar , aby umożliwić odwiedzającym przeglądanie szczegółów statku.

Zobacz też

Linki zewnętrzne