Questo forum utilizza i cookie
Questo forum fa uso di cookie per memorizzare le informazioni di login se sei registrato o sulla tua ultima visita se non lo sei. I cookie sono piccoli documenti di testo memorizzati sul vostro computer; i cookie impostati dal forum possono essere utilizzati solo su questo sito e non costituiscono rischio per la sicurezza. I cookie su questo forum anche monitorare gli argomenti specifici che hai letto e l'ultima volta che li hai letti. Si prega di confermare se accettare o rifiutare i cookie impostati.

Un cookie verrà memorizzato nel browser indipendentemente dalla tua scelta per evitare che ti venga posta nuovamente questa domanda. Sarai in grado di modificare le impostazioni dei cookie in qualsiasi momento tramite il link in fondo alla pagina.

Benvenuto, Visitatore
Devi registrarti prima di poter scrivere nel forum.


  

Password
  





Utenti online
Al momento ci sono 10 utenti online.
» 0 utente(i) | 10 visitatore(i)

problema teleport verticale.
#1
Sto cercando di realizzare un TP tra un piano e l'altro di un appartamento tramite il semplice gesto di sedersi da parte dell'avatar su un oggetto.

L'idea di base consiste nell'impostare un vettore di coordinate nell' attributo "position" dell'elemento <origin> in modo da modificare l'offset della posizione in cui si trova l'avatar quando si siede.

Codice:
...
<object path="chair.dae">
  <action caption="Seat" trigger="click" range="3.0">

    //dovrebbe spostare l'avatar di 4mt in Y, ma viene ignorato
    <origin position="0.0 4.0 0.0" yaw="0" />

    ....
  </action>
</object>
...

Facendo qualche prova sono riuscito a far sì che l'avatar effettivamente venga traslato, ma solo nelle coordinate X e Z (che corrispondono agli assi orrizontali del piano) ma se provo a fare la stessa cosa con l'asse y questo non succede, sia che si tratti di piccoli spostamenti, cioè quelli che sarebbero necessri per adattare l'altezza di chi si siede all'altezza della sedia/sgabello/poltrona sia che si tratti di grandi spostamenti (di qualche metro, quel tanto per attraversare il piano di un appartamento).

Qualcuno ha fatto qualche prova in questo campo?
Cita messaggio
#2
Avevo provato a fare un paio di script tempo fa ma la documentazone sul linguaggio e' quantomeno scarsa.
Oltre a questo non si trovamo molti esempi di script in giro sui vari siti ed e' difficile fare dei confronti, cosi' a occhio lo script che hai scritto e' corretto ma bisogna sempre vedere a cosa cavolo riferiscono loro quei parametri.
Puo' essere che i parametri debbano comunque cadere allì'interno dell'oggetto.. se tu metti la y in un punto piu' alto dell'altezza complessiva dell'oggetto puo' darsi che non ne tenga conto considerandolo come un errore.
Ad esempio in questo script mette la y a 0.35 m per far si che l'animazione parta dalla seduta del divano:
[Only registered and activated users can see links Click here to register]

Penso pero' che tu abbia gia' provato valori piu' piccoli e se non si muove neanche cosi' potrebbe essere un baco e l'unica e' chiedere spiegazioni sul loro account facebook che pare quello dove rispondono piu' in fretta:
[Only registered and activated users can see links Click here to register]
DON'T PANIC

The doctor is IN (psychiatric help 5c)
Cita messaggio
#3
Innanzitutto grazie per i link, stasera non posso proprio dedicarmici ma domani proseguo nelle prove, se non sarà un sit sarà un evento di prossimità ma qualcosa devo(voglio) trovare.

Per quanto riguarda i valori dei parametri, le coordinate sono locali (le origini sono il 'pivot' dell'oggetto, o quasi) ma, almeno sul piano orizzontale non ci sono limiti predefiniti (TP che mi spostano svariati metri fuori dall'appartamento, facendomi restare sospeso nel nulla funzionano perfettamente.

Purtroppo non ho mai avuto un account facebook...e non so se ho voglia di farlo costretto SOLO da questo motivo. Nell'office-hour di ieri lo staff di Twinity ha detto che leggerà con maggior attenzione il [Only registered and activated users can see links Click here to register] (che al momento è piuttosto abbandonato a se stesso) , se mi va male proverò a postare qualche domanda lì.

Ancora grazie per l'aiuto. : )
Cita messaggio
#4
Avendo qualche minuto libero ho fatto una ricerchina veloce in rete ed ho trovato questo

[Only registered and activated users can see links Click here to register]

Dove ci sono le specifiche del TWML – Twinity Markup Language

Lo inserisco anche come allegato qui nel forum in caso ci fossero problemi di download dal sito ufficiale

Spero possa essere di aiuto Smiley
Aggiungo anche il sito diretto

[Only registered and activated users can see links Click here to register]


Allegati
.pdf   twml_specification.pdf (Dimensione: 1.11 MB / Download: 1)
"Ogni volta che achievement viene tradotto come archivio un gattino muore. E nel trade di Crushridge, per la cronaca, è una strage di gattini." (cit.)
Cita messaggio
#5
Grazie per il link al file delle specifiche twml, era proprio basandomi su quello ho visto questo strano comportamento sulla gestione delle coordinate y per le sedute.

A quanto pare però le specifiche non sono del tutto esatte, almeno per quanto riguarda l'offest delle sedute, in quanto pare proprio ignorare il valore dell'altezza, e al suo posto definisce un punto fisso e non modificabile situato a circa 0.5mt dalla base inferiore dell'oggetto (punto che si accorda con la posa seduta dell'avatar).

Non potendo agire sulle y ho pensato ad un workaround.
In pratica ho creato due sedute (i due cubi nello snapshot) una alle origini degli assi (cubo verde) e una a 3.10mt sopra di essa (cubo arancio), 3.10mt corrisponde alla distanza tra un piano e l'altro, tenendo conto anche dello spessore del soffitto/pavimento.

[Immagine: tpdownsnap.jpg]

Dopodichè le ho importate in twinity come unico oggetto associandolo al classico .twml per le sedie.

Il risultato è che quando sono al piano superiore, posso cliccare sulla seduta sul pavimento, ma la posizione che effettivamente raggiungo è quella della seduta posta al piano sottostante, realizzando così un TP dal piano superiore a quello inferiore.

Per realizzare un tp inverso (da un piano a quello sopra) la procedura è la stessa, ma si deve avere l'accortezza di piazzare una delle due sedute 3.10 mt SOTTO le origni degli assi prima generare il .dae, in questo modo ci si assicura che il punto di arrivo, quando ci si siede, sia la seduta più in alto (quindi quella alle origini degli assi).

[Immagine: tpupsnap.jpg]

Una volta importati sarà sufficiente fare il 'place' per entrambi sul piano che si intende usare come arrivo e automaticamente si avrà una coppia di TP per spostarsi tra uno o più piani senza dover ricorrere a strane combinazione di tasti e sopratutto senza perdere tempo a spiegarli ai newbie. ^_^
Cita messaggio
#6
Caspita... ottimo trucchetto.

Effettivamente il linguaggio di Twinity presenta parechie limitazioni e i comandi implementati spesso non funzionano perfettamente.
DON'T PANIC

The doctor is IN (psychiatric help 5c)
Cita messaggio


Vai al forum:


Utenti che stanno guardando questa discussione: 1 Ospite(i)