Pannellum je besplatna i laka za upotrebu JavaScript biblioteka za kreiranje interaktivnih virtuelnih tura i panoramskih prezentacija u pregledaču, bez potrebe za dodatnim plugin-ovima. Funkcioniše sa HTML5, što omogućava široku kompatibilnost sa modernim pregledačima.
Evo kako možeš izraditi virtuelnu prezentaciju u Pannellum-u:
1. Priprema Panoramskih Fotografija
Prvo ti je potrebna equirektangulska panoramska slika (format od 360° x 180°), obično u JPEG ili PNG formatu. Slike moraju biti pravilno formatirane kako bi izgledale dobro u panoramskom prikazu.
2. Postavljanje Osnovnog HTML Fajla
Napravi osnovni HTML fajl u kojem ćeš integrisati Pannellum.
Primer HTML strukture:
<!DOCTYPE html> <html lang="sr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Virtuelna Prezentacija</title> <!-- Dodavanje Pannellum CSS i JavaScript --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/pannellum@2.5.6/build/pannellum.css"> <script src="https://cdn.jsdelivr.net/npm/pannellum@2.5.6/build/pannellum.js"></script> <style> /* Stil za panoramski prikaz */ #panorama { width: 100%; height: 500px; } </style> </head> <body> <!-- Kontejner za panoramski prikaz --> <div id="panorama"></div> <script> pannellum.viewer('panorama', { "type": "equirectangular", "panorama": "images/panorama.jpg", // Putanja do tvoje slike "autoLoad": true, // Automatsko učitavanje slike "compass": true, // Prikazuje kompas "title": "Virtuelna prezentacija", "author": "Tvoje ime", "yaw": 180, // Početna orijentacija "hfov": 110 // Horizontalno vidno polje }); </script> </body> </html>
3. Objašnjenje Koda
- Pannellum CSS i JS: Dodaješ Pannellum biblioteke direktno preko CDN-a.
- Div Kontejner:
<div id="panorama"></div>
je mesto gde se renderuje virtuelna prezentacija. - Konfiguracija:
type
: Vrsta panorame, obično equirectangular za slike od 360°.panorama
: Putanja do panoramske slike.autoLoad
: Automatski učitava panoramu.yaw
: Početni ugao orijentacije.hfov
: Horizontalni ugao vidnog polja.
4. Dodavanje Hotspot-ova
Hotspot-ovi su interaktivni elementi u tvojoj panorami, poput linkova ili informativnih tačaka.
Primer sa hotspot-om:
pannellum.viewer('panorama', { "type": "equirectangular", "panorama": "images/panorama.jpg", "autoLoad": true, "hotSpots": [ { "pitch": 10, // Vertikalna pozicija "yaw": 150, // Horizontalna pozicija "type": "info", "text": "Ovo je informativni hotspot!", "URL": "https://example.com" // Link ka eksternom sadržaju } ] });
pitch
iyaw
određuju gde će se hotspot pojaviti.type
može biti:- info – prikazuje tekst.
- scene – prebacuje na drugu scenu.
- URL – otvara link ka spoljnjem sadržaju.
5. Kreiranje Više Scena (Virtuelna Tura)
Ako imaš više panorama, možeš napraviti turu sa prebacivanjem između scena.
Primer:
pannellum.viewer('panorama', { "default": { "firstScene": "scena1", "sceneFadeDuration": 1000 }, "scenes": { "scena1": { "type": "equirectangular", "panorama": "images/scena1.jpg", "hotSpots": [ { "pitch": 0, "yaw": 90, "type": "scene", "text": "Idi u Scenu 2", "sceneId": "scena2" } ] }, "scena2": { "type": "equirectangular", "panorama": "images/scena2.jpg", "hotSpots": [ { "pitch": 0, "yaw": -90, "type": "scene", "text": "Vrati se u Scenu 1", "sceneId": "scena1" } ] } } });
Objašnjenje:
scenes
: Objekat sa više scena.firstScene
: Početna scena.hotSpots
: Hotspot za prebacivanje između scena koristitype: "scene"
.
6. Hostovanje Projekta
Za lokalno testiranje možeš koristiti:
python3 -m http.server 8080
Otvaranjem localhost:8080
u pregledaču možeš pregledati prezentaciju.
Za produkciju hostuj fajlove na nekom web serveru (npr. Apache, Nginx).
Zaključak
Pannellum je odličan za izradu interaktivnih virtuelnih prezentacija zahvaljujući svojoj jednostavnosti i mogućnosti dodavanja hotspot-ova i višestrukih scena. Koristiš obične panoramske slike i lako konfigurišeš prezentaciju putem JavaScript-a.
Za detaljnija objašnjenja posetite sajt Pannellium-a
Pannellum is developed on GitHub by Matthew Petroff.