Director: load shockwave.

Ciao a tutti,
volevo sapere se è possibile con Director far caricare dinamicamente un docuento Shockwave all’interno di un altro documento Shockwave e scaricarlo. Un po' come il loadMovie e unloadMovie per gli swf di Flash.

Grazie

 Davide978, N.D.

Devi usare le MIAW, imposti le varie impostazioni per togliere i bordi, la barra del titolo ecc. ed il gioco è fatto.

 goku, N.D.

Come creare, definire e chiudere una finestra secondaria allÂ’interno di un Movie di Director: MIAW.

Director permette di creare e visualizzare contemporaneamente più finestre contenenti Movie personalizzati mentre il Movie principale è in esecuzione.
Per realizzare una nuova finestra detta anche “MIAW” (Movie In A Window), bisogna eseguire questi semplici passi dopo aver creato il movie principale:
1) Creare e definire il movie da riprodurre nella nuova finestra (per default le dimensioni di questo movie imposteranno le dimensioni della nuova finestra).
2) Inserire in questo nuovo Movie (che andrà a finire nella finestra secondaria) tutti gli elementi, le informazioni e gli script di cui abbiamo bisogno, tenendo conto che le istruzioni e le informazioni possono influire e modificare anche la finestra principale (quella chiamante).
3) Inserire sullo sprite del bottone di apertura della finestra:

on mouseUp me
window("Nome_del_filmato").visible = TRUE
open window "Nome_del_filmato"
end

4) Per chiudere la finestra usare il comando Forget
Se lo associamo ad uno sprite bottone di chiusura:

on mouseUp me
forget window "Nome_del_filmato"
end

Forget è un comando potentissimo perché chiude la finestra e blocca l'esecuzione del nuovo filmato.
Usando il comando Close invece la finestra sarà chiusa ma il filmato rimane in fase di riproduzione nella RAM con il conseguente rallentamento di tutto il lavoro (soprattutto se sono più filmati).

Tuttavia il comando Close funziona così:
on mouseUp me
close window "Nome_del_filmato"
end


Saperne di più...
Molto spesso conviene utilizzare una variabile globale per creare una finestra che sia indipendente dal suo contenuto (e quindi dal movie), allora scriveremo il seguente script sul bottone di apertura:

on mouseUp me
global wNomevariabile
wNomevariabile = window ("Nome_del_filmato") -- imposta il riferimento nella variabile
open wNomevariabile -- apre la finestra
wNomevariabile.moveToFront() -- con moveToFront siamo anche sicuri che la finestra compaia in primo piano.
end

Per chiudere la finestra usare questo script sullo sprite di chiusura:

on mouseUp me
global wNomevariabile
forget wNomevariabile
end


Per cambiare il contenuto utilizzando la stessa finestra secondaria, bisogna usare la proprietà Filename.
Filename la usiamo quindi per cambiare il nome del movie che verrà riprodotto nella finestra (in tempo reale).
Semplicemente così:

wNomevariabile.filename = "Nome_del_filmato2"

------------------------------------------------------------
Tratto da: http://www.001design.it/forum_italiano/thread.php?id=63

 Pablito, N.D.

Scusate il ritardo!

...ho letto solo ora il messaggio.

Grazie comunque per le informazioni, ma forse non mi sono spiegato bene.
Intendevo dire se è possibile caricare all’interno della stessa finestra (del browser) e nello stesso oggetto shockwave 3d, un altro oggetto shockwave 3d. Non so se avete presente la funzione “loadmovie” di flash, carica un file.swf all’interno di un altro file.swf (sempre nella stessa finestra del browser) in maniera dinamica.

Grazie ancora

 Davide978, N.D.

Hai provato con i cast esterni, inserisci l'elemento nel cast per utilizzarlo in modo dinamico all'occorrenza http://www.001design.it/forum_italiano/thread.php?id=639

 goku, 12 May 2011

Ciao Davide,
scusami se cerco di capire, ma forse il problema è risolvibile facilmente.

Usando allÂ’interno del tuo Movie di Director un semplice play movie X non risolvi il problema?
Nel senso che play movie X puoi usarlo tranquillamente per passare da un Movie allÂ’altro di Director, caricando volta per volta il Movie che serve, e questo funziona naturalmente anche dopo lÂ’esportazione in shockwave.

Alternativamente puoi usare un semplice member change per sostituire dinamicamente gli elementi del Cast.
Come sostituire lo Sprite presente su un Canale dello Score con un Cast member specificato.
Associa al frame dove deve avvenire la sostituzione il seguente codice:

on exitFrame me
sprite(1).member=member(10).member
end

-- Dove sprite(1) è lo sprite posizionato sul primo canale dello Score.
-- 10 è il numero di cast member che sostituirà lo Sprite presente sul Canale n.1 degli Sprite.


In Director l’equivalente del movieClip di Flash è il Film Loop, ma non è altrettanto controllabile, praticamente non viene mai usato. Personalmente non vedo altre possibili soluzioni e spero di essere stato utile.

Nel caso il gergo non fosse chiaro, puoi trovare ai seguenti link quello usato per Director:
http://www.001design.it/forum_italiano/thread.php?id=62
http://www.001design.it/forum_italiano/thread.php?id=71
http://www.001design.it/forum_italiano/thread.php?id=63

 Pablito, N.D.

Grazie per i consigli,

mi avete dato un quadro abbastanza chiaro,
e che volevo capire fin dove si spinge Director nell'ambito della programmazione 3D.

comunque, così, giusto per
e che ho fatto http://afterway.com in flash, ed ero curioso di vedere se, e come, si potrebbe estenderlo in Director, magari a livello di navigazione in ambienti 3D, collegando le coordinate flash con quelle Shockwave 3D.

Però ammetto che devo "masticare" ancora molto Director e soprattutto Lingo, prima di vedere "cosa si può tirare fuori dal cilindro".


Ciao

 Davide978, N.D.
001design.it ® è un marchio registrato.
© 2004-2017 Molfese Paolo - P.Iva: 03430820617 - All rights reserved | Tutti i diritti sono riservati.