2012-11-27 17 views
6

Niedawno odkryłem WebGL, a szczególnie Three.js, który jest najlepszym API, jakie do tej pory znalazłem. Póki co, koduję proste dema, aby wyświetlić trójwymiarowe modele statków kosmicznych z mojego głównego projektu, który jest wszechświatem Sci-Fi.Przeglądarka obiektów 3D w MediaWiki?

Mój cel średniookresowy to udoskonalenie wiki WikiWiki z wyświetlaniem 3D obiektów opisanych na stronach z kamerą orbitującą. Widzę to jako narzędzie do prezentacji zawartości wszechświata, który rozwijamy.

Nie chcę nic nadzwyczajnego lub trudnego do zrobienia per se, wiem, jak to zrobić ze standardowymi plikami Wavefront .OBJ i .MTL, i to wystarcza dla mnie. Ale martwi mnie integracja wiki.

Podstawowym pomysłem byłoby przesłanie najpierw różnych plików (modeli, materiałów, tekstur) w postaci plików wiki wpisywanych przez ich rozszerzenie, a następnie dodanie rozszerzenia do elementu lub szablonu wikicode, aby można było z nich korzystać według ich adresów URL wiki .

Jeśli zatrzymamy się na przykładzie .OBJ/.MTL:
- .MTL będzie wyświetlany jako materiałów zastosowanych na kuli z niektórych obejcts podskakują wokół, aby zobaczyć efekty lustro, z regulowanym otoczenia/tło dla kontrastu,
- .OBJ byłby wyświetlany przez ślepe zastosowanie jego materiałów, również z regulacją otoczenia/tła.

Czy istnieje już takie rozszerzenie lub co najmniej ramy, które można by wykorzystać i rozszerzyć w nim, czy to zależy od mnie, aby się rozwinąć, wiedząc, że prawdopodobnie nie będę miał ani umiejętności, ani czasu?

+0

Co jest warte, jest JMOL, który pokazuje obiekty 3D, ale nie korzysta z WebGL. https://www.mediawiki.org/wiki/Extension:Jmol –

+0

Ciekawe, ale zbyt specjalistyczne dla mnie, chcę wyświetlania statki^-^ –

Odpowiedz

1

Jeśli chcesz tylko wyświetlić modele, możesz chcieć take a look at x3dom. Nie wiem, jakie kroki trzeba by zintegrować z mediawiki.

Z drugiej strony, na wiki WebGL Khronos używamy jakiegoś iframe plugin, aby pozwolić nam umieścić losowe próbki WebGL na wiki.

+0

Dzięki Gman za odpowiedź, przejdę i zobaczę, jakie funkcje dają te miękkie! –

+0

Witam gman, testuję wtyczkę iframe i powinien być odpowiedni do tego, co chcę! –

+0

W ten sposób przekażemy tylko nasze modele/materiały/tekstury do obszaru naszej witryny, zawiniemy je na stronę Three.js do wyświetlenia, używając tego samego skryptu z parametrami do wyświetlania wszystkich modeli, i po prostu dołączamy tę stronę do widget wewnątrz wiki ... –

1

Powinieneś rzucić okiem na Sketchfab. Jest to aplikacja internetowa, w której możesz przesłać swoje modele, a następnie wyświetlić ją bezpośrednio w WebGL. W powyższym linku zobaczysz funkcje osadzania. Nie ma specjalnego kodu MediaWiki, ale istnieje również API, jeśli chcesz.

NB: Działają one jak "Freemium", pierwsze 500Mo są darmowe, po tym trzeba płacić kilka dolarów każdego miesiąca.

+0

Hi @ x4vier Zbiorniki podpowiedź, widziałem, że chodzi tylko o to, że nie jest to model 500Mo, ale 10 x 50Mo, i mogę mieć więcej niż 10 modeli mniej niż 50Mo, więc nie zrobi tego dla mnie. –