Pacchetto | flash.display |
Classe | public class Stage3D |
Ereditarietà | Stage3D EventDispatcher Object |
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3 |
Stage3D fornisce una superficie di rendering ad alte prestazioni per il contenuto renderizzato con la classe Context3D
. Questa superficie utilizza la GPU (unità di elaborazione grafica) quando è possibile. Lo stage runtime fornisce un numero fisso di oggetti Stage 3D
. Il numero di istanze varia a seconda del tipo di dispositivo. Nei computer desktop solitamente sono disponibili quattro istanze Stage3D.
Il contenuto disegnato nel riquadro di visualizzazione Stage3D
viene composto con altri oggetti grafici visibili secondo un ordine predefinito. Gli oggetti più distanti sono tutte le superfici StageVideo
. Poi viene Stage3D
, mentre il contenuto costituito dai tradizionali oggetti di visualizzazione di Flash viene renderizzato per ultimo, sopra tutti gli altri. I livelli StageVideo e Stage3D vengono renderizzati senza trasparenza; quindi, un riquadro di visualizzazione oscura completamente gli eventuali riquadri di visualizzazione Stage3D o StageVideo posizionati sotto di esso. Il contenuto dell'elenco di visualizzazione viene renderizzato con la trasparenza.
Nota: è possibile utilizzare la proprietà visible
di un oggetto Stage3D per rimuoverlo temporaneamente dalla visualizzazione, ad esempio quando si riproduce un video utilizzando la classe StageVideo.
Un oggetto Stage3D
viene recuperato dallo stage del player utilizzando il suo membro stage3Ds
. Utilizzate l'istanza Stage3D per richiedere un contesto di rendering associato e per posizionare la visualizzazione sullo stage runtime.
Elementi API correlati
Proprietà | Definito da | ||
---|---|---|---|
constructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto. | Object | ||
context3D : Context3D [sola lettura]
L'oggetto Context3D associato a questa istanza Stage3D. | Stage3D | ||
visible : Boolean
Specifica se questo oggetto Stage3D è visibile. | Stage3D | ||
x : Number
La coordinata orizzontale della vista Stage3D sullo stage, in pixel. | Stage3D | ||
y : Number
La coordinata verticale della vista Stage3D sullo stage, in pixel. | Stage3D |
Metodo | Definito da | ||
---|---|---|---|
Stage3D() | Stage3D | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento. | EventDispatcher | ||
Invia un evento nel flusso di eventi. | EventDispatcher | ||
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento. | EventDispatcher | ||
Indica se per un oggetto è definita una proprietà specifica. | Object | ||
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro. | Object | ||
Indica se la proprietà specificata esiste ed è enumerabile. | Object | ||
Rimuove un listener dall'oggetto EventDispatcher. | EventDispatcher | ||
Richiede la creazione di un oggetto Context3D per questa istanza Stage3D. | Stage3D | ||
Richiede la creazione di un oggetto Context3D per questa istanza Stage3D. | Stage3D | ||
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche. | Object | ||
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate. | Object | ||
Restituisce la rappresentazione in formato stringa dell'oggetto specificato. | Object | ||
Restituisce il valore di base dell'oggetto specificato. | Object | ||
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato. | EventDispatcher |
Evento | Riepilogo | Definito da | ||
---|---|---|---|---|
[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR ottiene lo stato di attivazione del sistema operativo ed entra nello stato attivo. | EventDispatcher | |||
Inviato quando viene creato un contesto di rendering. | Stage3D | |||
[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR perde l'attivazione del sistema operativo e sta entrando nello stato inattivo. | EventDispatcher | |||
Inviato quando una richiesta di contesto di rendering ha esito negativo. | Stage3D |
context3D | proprietà |
context3D:Context3D
[sola lettura] Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3 |
L'oggetto Context3D associato a questa istanza Stage3D.
Questa proprietà è inizialmente null
. Per creare l'istanza Context3D per questo oggetto Stage3D, aggiungete un listener di eventi per l'evento context3DCreate
, quindi chiamate il metodo requestContext3D
. Il listener viene chiamato dopo che è stato creato l'oggetto Context3D.
Implementazione
public function get context3D():Context3D
Elementi API correlati
visible | proprietà |
visible:Boolean
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3 |
Specifica se questo oggetto Stage3D è visibile.
Utilizzate questa proprietà per nascondere temporaneamente un oggetto Stage3D sullo stage. Il valore predefinito di questa proprietà è true
.
Implementazione
public function get visible():Boolean
public function set visible(value:Boolean):void
x | proprietà |
x:Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3 |
La coordinata orizzontale della vista Stage3D sullo stage, in pixel.
Il valore predefinito di questa proprietà è zero.
Implementazione
public function get x():Number
public function set x(value:Number):void
Genera
ArgumentError — se la posizione non è compresa nell'intervallo [-8191..8191].
|
y | proprietà |
y:Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3 |
La coordinata verticale della vista Stage3D sullo stage, in pixel.
Il valore predefinito di questa proprietà è zero.
Implementazione
public function get y():Number
public function set y(value:Number):void
Genera
ArgumentError — se la posizione non è compresa nell'intervallo [-8191..8191].
|
Stage3D | () | Funzione di costruzione |
public function Stage3D()
requestContext3D | () | metodo |
public function requestContext3D(context3DRenderMode:String = "auto", profile:String = "baseline"):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3 |
Richiede la creazione di un oggetto Context3D per questa istanza Stage3D.
Prima di chiamare questa funzione, aggiungete un listener di eventi per l'evento context3DCreate
. In caso contrario, il runtime genera un'eccezione.
Nota importante sulla perdita del dispositivo: la perdita del dispositivo GPU si verifica quando l'hardware della GPU diventa indisponibile all'applicazione. L'oggetto Context3D viene rimosso a seguito della perdita del dispositivo GPU. La perdita del dispositivo GPU si può verificare per vari motivi, ad esempio quando un dispositivo mobile esaurisce la carica della batteria oppure quando un dispositivo Windows entra nella condizione di "blocco schermo". Quando la GPU torna disponibile, il runtime crea una nuova istanza Context3D e invia un altro evento context3DCreate
. L'applicazione deve ricaricare tutte le risorse e ripristinare lo stato del contesto di rendering ogni volta che si verifica una perdita del dispositivo.
Progettate la logica dell'applicazione in modo da gestire la possibilità della perdita del dispositivo e la rigenerazione del contesto. Non rimuovete il listener di eventi context3DCreate
. Non eseguite alcuna azione in risposta all'evento che non deve essere ripetuto nell'applicazione. Ad esempio, non aggiungete funzioni anonime per gestire gli eventi timer, poiché verrebbero duplicate dopo la perdita del dispositivo. Per provare la capacità dell'applicazione di gestire la perdita del dispositivo, potete simulare la perdita del dispositivo chiamando il metodo dispose()
dell'oggetto Context3D.
Nell'esempio illustrato di seguito viene mostrato come richiedere un contesto di rendering Context3d.
if( stage.stage3Ds.length > 0 ) { var stage3D:Stage3D = stage.stage3Ds[0]; stage3D.addEventListener( Event.CONTEXT3D_CREATE, myContext3DHandler ); stage3D.requestContext3D( ); } function myContext3DHandler ( event : Event ) : void { var targetStage3D : Stage3D = event.target as Stage3D; InitAll3DResources( targetStage3D.context3D ); StartRendering( targetStage3D.context3D ); }
Parametri
context3DRenderMode:String (default = "auto ") — Il tipo di contesto di rendering da richiedere. Il valore predefinito è Context3DRenderMode.AUTO , in base al quale il runtime crea un contesto con accelerazione hardware se possibile oppure, in caso contrario, usa l'accelerazione software come alternativa. Utilizzate Context3DRenderMode.SOFTWARE per richiedere un contesto di rendering software. Il rendering software non è disponibile sui dispositivi mobili. Il rendering software è disponibile solo per Context3DProfile.BASELINE e Context3DProfile.BASELINE_CONSTRAINED .
| |
profile:String (default = "baseline ") — (AIR 3.4 e versioni successive) Specifica fino a che punto Flash Player supporta le GPU di fascia bassa. Il valore predefinito è Context3DProfile.BASELINE , che restituisce un’istanza Context3D simile a quella utilizzata nelle versioni precedenti. Per ottenere i dettagli di tutti i profili disponibili, vedere flash.display3D.Context3DProfile .
|
Eventi
context3DCreate: — Inviato quando il contesto di rendering viene completato con successo.
| |
error: — Inviato quando non è possibile creare il contesto di rendering.
|
Genera
Error — Se per l'evento context3DCreate non sono stati aggiunti listener a questo oggetto Stage3D.
| |
ArgumentError — Se questo metodo viene chiamato di nuovo con un context3DRenderMode differente prima del completamento della chiamata precedente.
|
Elementi API correlati
requestContext3DMatchingProfiles | () | metodo |
public function requestContext3DMatchingProfiles(profiles:Vector.<String>):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 12, AIR 4 |
Richiede la creazione di un oggetto Context3D per questa istanza Stage3D.
Prima di chiamare questa funzione, aggiungete un listener di eventi per l'evento context3DCreate
. In caso contrario, il runtime genera un'eccezione.
Nota importante sulla perdita del dispositivo: la perdita del dispositivo GPU si verifica quando l'hardware della GPU diventa indisponibile all'applicazione. L'oggetto Context3D viene rimosso a seguito della perdita del dispositivo GPU. La perdita del dispositivo GPU si può verificare per vari motivi, ad esempio quando un dispositivo mobile esaurisce la carica della batteria oppure quando un dispositivo Windows entra nella condizione di "blocco schermo". Quando la GPU torna disponibile, il runtime crea una nuova istanza Context3D e invia un altro evento context3DCreate
. L'applicazione deve ricaricare tutte le risorse e ripristinare lo stato del contesto di rendering ogni volta che si verifica una perdita del dispositivo.
Progettate la logica dell'applicazione in modo da gestire la possibilità della perdita del dispositivo e la rigenerazione del contesto. Non rimuovete il listener di eventi context3DCreate
. Non eseguite alcuna azione in risposta all'evento che non deve essere ripetuto nell'applicazione. Ad esempio, non aggiungete funzioni anonime per gestire gli eventi timer, poiché verrebbero duplicate dopo la perdita del dispositivo. Per provare la capacità dell'applicazione di gestire la perdita del dispositivo, potete simulare la perdita del dispositivo chiamando il metodo dispose()
dell'oggetto Context3D.
Nell'esempio illustrato di seguito viene mostrato come richiedere un contesto di rendering Context3d.
if( stage.stage3Ds.length > 0 ) { var stage3D:Stage3D = stage.stage3Ds[0]; stage3D.addEventListener( Event.CONTEXT3D_CREATE, myContext3DHandler ); stage3D.requestContext3DMatchingProfiles(Vector.<string>([Context3DProfile.BASELINE, Context3DProfile.BASELINE_EXTENDED])); } function myContext3DHandler ( event : Event ) : void { var targetStage3D : Stage3D = event.target as Stage3D; if(targetStage3D.context3D.profile.localeCompare(Context3DProfile.BASELINE) == 0) { InitAll3DResources( targetStage3D.context3D ); } StartRendering( targetStage3D.context3D );
Parametri
profiles:Vector.<String> — (AIR 3.4 e versioni successive) Un array di profili che lo sviluppatore desidera utilizzare nel suo programma Flash. Quando lo sviluppatore passa l’array di profili a Stage3D.requestContext3DMatchingProfiles, riceve un Context3D basato sul profilo di alto livello contenuto nell’array, secondo le possibilità dell’hardware. Rendermode è impostato su AUTO, per cui il parametro viene omesso.
|
Eventi
context3DCreate: — Inviato quando il contesto di rendering viene completato con successo.
| |
error: — Inviato quando non è possibile creare il contesto di rendering. Se l’hardware non è disponibile, non crea un context3d software.
|
Genera
Error — Se per l'evento context3DCreate non sono stati aggiunti listener a questo oggetto Stage3D.
| |
ArgumentError — Se questo metodo viene chiamato prima del completamento della chiamata precedente.
| |
ArgumentError — Se l’elemento dell’array non è flash.display3D.Context3DProfile.
|
Elementi API correlati
context3DCreate | Evento |
flash.events.Event
proprietà Event.type =
flash.events.Event.CONTEXT3D_CREATE
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3 |
Inviato quando viene creato un contesto di rendering.
La costanteEvent.CONTEXT3D_CREATE
definisce il valore della proprietà type
di un oggetto evento context3Dcreate
. Questo evento viene generato solo dagli oggetti Stage3D in risposta a una chiamata di Stage3D.requestContext3D o in risposta a un ripristino attivato dal sistema operativo di un oggetto Context3D collegato all'oggetto Stage3D. Analizza la proprietà Stage3D.context3D per ottenere il nuovo oggetto Context3D creato.
Elementi API correlati
error | Evento |
flash.events.ErrorEvent
proprietà ErrorEvent.type =
flash.events.ErrorEvent.ERROR
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3 |
Inviato quando una richiesta di contesto di rendering ha esito negativo.
Definisce il valore della proprietàtype
di un oggetto evento error
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto interessato da un errore di funzionamento di rete. |
text | Testo da visualizzare come messaggio di errore. |
Elementi API correlati
Tue Jun 12 2018, 02:44 PM Z