Ansicht langsam drehen, je nach Hotspot-Herkunft

  • Hallo krPano-Profis,

    ich habe folgende Situation: Ich habe ein Haus von innen als Pano-Tour erstellt. Ich verwende als Bewegungsmethode für meine Panorama Tour "MERGE|KEEPVIEW|KEEPMOVING", damit der Betrachter immer mit seiner ursprünglichen Blickrichtung auf den Hotspot in das nächste Panorama im Raum kommt. Das funktioniert soweit super, allerdings habe ich ein Panorama, das ich gerne manuell drehen möchte.

    Hier kommt der Betrachter vom Panorama 1 durch den Hauseingang in das Panorama 2. Nun blickt er auf eine Wand direkt vor seiner Nase. Daher möchte ich das Panorama um 90° nach links drehen in Richtung Flur.
    Achtung: Kommt der Betrachter aber aus dem Flur später zurück (von Panorama 3 zu Panorama 2), so würde er auch wieder auf eine Wand blicken. Hier sollte der Blick um 90° nach rechts zur Haustür wandern.
    Folgende Möglichkeiten habe ich im Forum gefunden:

    • linkedscene_lookat auf den beiden Hotspots in Panorama 1 und 3 nutzen: für den jeweiligen Hotspot kann somit eine individuelle Blickrichtung genutzt werden, je nachdem woher der Betrachter kommt. Allerdings wird die Blickrichtung bereits vor dem sanften Übergang ins nächste Panorama "eingestellt", wodurch sich ein unschöner Übergang ergibt, da man sozusagen den Kopf plötzlich in der Szene aus der man kommt noch schnell dreht und dann einen weichen Übergang hat zur Flurszene (Panorama 2) - auch scheint es hier keinen "smooth" Übergang zu geben, sondern man kann nur die Koordinaten eingeben und der Kopf wird sofort gedreht
    • lookto(-120,5,130,tween(easeinoutquad, 5)) in der Szene Panorama 2 nutzen: gefällt mir sehr gut, da der Kopf nach Eintreffen in der Szene langsam gedreht wird - allerdings kann ich hier nur eine feste Richtung angeben, egal woher der Betrachter kommt


    Mögliche Lösung, für die ich nun eure Hilfe bräuchte (bitte möglichst verständlich schreiben, ich bin krPano Anfänger:) ) wäre nun entweder die Hotspot-Übergänge irgendwie "smooth" machen zu können, oder die Szene lookto irgendwie abhängig vom Hotspot zu machen, von dem man kommt.
    Ich hoffe, ich konnte das Problem ausführlich und verständlich darlegen. Falls ihr dennoch Fragen habt, gebt bitte einfach Bescheid! Ich danke euch im Voraus sehr für eure Hilfe, da ich hier einfach alleine nicht mehr weiter komme. Danke!! *love*

  • Hi,

    grundsätzlich sollte sich jede Art von Bewegung skripten lassen, allerdings verstehe ich jetzt nicht was genau du machen möchtest...

    Bzgl. 'lookto irgendwie abhängig vom Hotspot' - man kann die 'Zielrichtung' auch beliebig 'berechnen',

    z.B. hier um 90 Grad nach rechts von der aktuellen Ansicht:

    Code
    lookto(calc(view.hlookat + 90), get(view.vlookat));

    Schöne Grüße,
    Klaus

  • Hallo Klaus, vielen Dank für deine Hilfe.

    Du schreibst, du hast das Problem noch nicht ganz verstanden - dabei bist du mit deinem Lösungsvorschlag schon auf dem richtigen Weg. :)

    Dein Code Beispiel nimmt die Ansicht, aus der man kommt und dreht den Blick um 90° horizontal. Sehr gut! Das Problem, was ich dadurch leider noch nicht lösen konnte ist, dass man die Szene aus zwei anderen Szenen heraus betreten kann (man geht ins Haus hinein oder man verlässt das Haus).

    Daher müsste der Code irgendwie berücksichtigen, woher ich komme und dann entweder 90° dazu rechnen (wie jetzt in deinem Beispiel) oder 90° abziehen (den Kopf also nach links drehen statt nach rechts).
    Ganz klar ausgedrückt müsste der Code für die Szene 2 schauen:
    "Kommt der Betrachter aus Szene 1, so drehe den Kopf mit lookto(calc(view.hlookat + 90), get(view.vlookat));"
    "Kommt der Betrachter aus Szene 3, so drehe den Kopf mit lookto(calc(view.hlookat - 90), get(view.vlookat));"


    Ist so eine Abfrage möglich, von welchem der beiden Hotspots er die Szene betritt und die 90 dann zu addieren oder zu subtrahieren?
    Mit linkedscene_lookat erreiche ich wie im ersten Beitrag von mir schon beschrieben, leider nicht den gewünschten Effekt.Vielen, vielen Dank nochmal für jegliche Hilfe! Ich bin leider kein Programmierer und schaue bei der Code Doku wie ein Schwein ins Uhrwerk *wacko*

    3 Mal editiert, zuletzt von olop01 (20. Februar 2021 um 13:52)

  • Um ehrlich zu sein würde ich mir für ein bezahltes Produkt ein wenig mehr Support wünschen. Die Tutorials die man findet sind über 10 Jahre alt und die Dokumentation ist für Anfänger wesentlich zu technisch. Das ist für mich keine Norm im Jahr 2021. Auch wenn ich eine spezifische Problemstellung habe, so halte ich es aufgrund der oben angegebenen Gründe dennoch nicht für gerechtfertigt, einfach ignoriert zu werden. Zumal es außer einem "Community forum" keinen direkten Support zu geben scheint. Falls ich da falsch liege, korrigiert mich bitte.

  • Die Doku wird ständig mit den neuen Funktionalitäten erweitert und ja, bei den Grundlagen hat sich in den letzten 10 Jahren nicht viel geändert.

    Man kann Zustände wie, letztes Panorama, über welchem Hotspot das neue Panorama geladen wurde usw., in Variablen speichern, das ist nicht nur in krpano möglich, sondern Variablen gibt es jeder anderen Programmiersprache auch.

    https://krpano.com/docu/xml/#events.onblendcomplete
    https://krpano.com/docu/actions/#copy
    https://krpano.com/docu/xml/#action

  • olop01
    Ich empfehle erst mal selbst einen lösungsansatz zu suchen und tests zu machen.
    wenn man nicht weiterkommt, das resultat online stellen und im post verlinken.
    So kann einem viel besser und konkreter geholfen werden.
    Englisch erhöht die chance auf eine antwort, weil es mehr verstehen.

    toosten... du meinst <events onblendcomplete="chk_hs()" keep="true" /> ?


  • toosten... wäre es nicht <events onblendcomplete="chk_hs()" keep="true" /> ?

    https://krpano.com/docu/xml/#events

    Zitat

    These 'named' <events> elements have also a keep attribute (with the default value "false"). That means <events> elements without keep="true" will be automatically removed when an other pano will be loaded.

  • Um ehrlich zu sein würde ich mir für ein bezahltes Produkt ein wenig mehr Support wünschen. Die Tutorials die man findet sind über 10 Jahre alt und die Dokumentation ist für Anfänger wesentlich zu technisch. Das ist für mich keine Norm im Jahr 2021. Auch wenn ich eine spezifische Problemstellung habe, so halte ich es aufgrund der oben angegebenen Gründe dennoch nicht für gerechtfertigt, einfach ignoriert zu werden. Zumal es außer einem "Community forum" keinen direkten Support zu geben scheint. Falls ich da falsch liege, korrigiert mich bitte.

    Da muss ich leider in weiten Teilen zustimmen. Ich fand es gerade als Anfänger auch super schwer, sich zurechtzufinden. Eine Aktualisierung dahingehend seitens Krpano wäre langsam wirklich mal angebracht.

    Fotografie ist belichtete Erinnerung.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!