Pacote | flash.display |
Classe | public class Stage3D |
Herança | Stage3D EventDispatcher Object |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
Stage3D fornece uma superfície de renderização de alta performance do conteúdo renderizado utilizando a classe Context3D
. Esta superfície utiliza a unidade de processamento de gráficos (GPU) quando possível. A etapa de tempo de execução fornece um número fixo de objetos Stage3D
. O número de instâncias varia conforme o tipo de dispositivo. Os computadores pessoais geralmente fornecem quatro instâncias Stage3D.
O conteúdo desenhado na janela de visão Stage3D
é composto por outros objetos gráficos visíveis em uma sequência pré-definida. Os mais distantes são todas as superfícies StageVideo
. Stage3D
vem em seguida, com o conteúdo de objeto de exibição Flash tradicional renderizado por último, em cima de todos os outros. As camadas StageVideo e Stage3D são renderizadas sem transparência, assim, uma porta de visualização obscurece completamente quaisquers outras portas de visualizações Stage3D ou StageVideo posicionadas embaixo delas. O conteúdo da lista de exibição é renderizado com a transparência.
Nota: Você poderá utilizar a propriedade visible
de um objeto Stage3D para removê-lo da exibição temporariamente, como ao reproduzir um vídeo que utilize a classe StageVideo.
Um objeto Stage3D
é salvo da etapa Player utilizando seu membro stage3Ds.
Utilize a instância Stage3D para solicitar um contexto de renderização associado e posicionar a exibição na etapa de tempo de execução.
Elementos da API relacionados
Propriedade | Definido por | ||
---|---|---|---|
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | ||
context3D : Context3D [somente leitura]
O objeto Context3D associado a esta instância Stage3D. | Stage3D | ||
visible : Boolean
Especifica se este objeto Stage3D está visível. | Stage3D | ||
x : Number
A coordenada horizontal do Stage3D é exibida na etapa, em pixels. | Stage3D | ||
y : Number
A coordenada vertical do Stage3D é exibida na etapa, em pixels. | Stage3D |
Método | Definido por | ||
---|---|---|---|
Stage3D() | Stage3D | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra um objeto de ouvinte de evento em um objeto EventDispatcher, de forma que o ouvinte receba a notificação de um evento. | EventDispatcher | ||
Envia um evento para o fluxo de eventos. | EventDispatcher | ||
Verifica se o objeto EventDispatcher tem ouvintes registrados para um tipo específico de evento. | EventDispatcher | ||
Indica se um objeto tem uma propriedade especificada definida. | Object | ||
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | ||
Indica se a propriedade especificada existe e é enumerável. | Object | ||
Remove um ouvinte do objeto EventDispatcher. | EventDispatcher | ||
Solicite a criação de um objeto Context3D para essa instância Stage3D. | Stage3D | ||
Solicite a criação de um objeto Context3D para essa instância Stage3D. | Stage3D | ||
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | ||
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | ||
Retorna a representação de string do objeto especificado. | Object | ||
Retorna o valor primitivo do objeto especificado. | Object | ||
Verifica se um ouvinte de evento está registrado nesse objeto EventDispatcher ou em qualquer um de seus ancestrais para o tipo de evento especificado. | EventDispatcher |
Evento | Resumo | Definido por | ||
---|---|---|---|---|
[transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR ganha o foco do sistema operacional e está se tornando inativo. | EventDispatcher | |||
Despachado quando um contexto de renderização for criado. | Stage3D | |||
[transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR perde o foco do sistema operacional e está se tornando inativo. | EventDispatcher | |||
Despachado quando houver falha em uma solicitação de contexto de renderização. | Stage3D |
context3D | propriedade |
context3D:Context3D
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
O objeto Context3D associado a esta instância Stage3D.
Esta propriedade é inicialmente null
. Para criar a ocorrência Context3D deste objeto Stage3D, adicione um ouvinte de evento ao eventocontext3DCreate
e, em seguida, chame o método requestContext3D
. O ouvinte é chamado depois que o objeto Context3D é criado.
Implementação
public function get context3D():Context3D
Elementos da API relacionados
visible | propriedade |
visible:Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
Especifica se este objeto Stage3D está visível.
Utilize esta propriedade para ocultar temporariamente um objeto Stage3D na Etapa. Esta propriedade tem o padrão true
.
Implementação
public function get visible():Boolean
public function set visible(value:Boolean):void
x | propriedade |
x:Number
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
A coordenada horizontal do Stage3D é exibida na etapa, em pixels.
Esta propriedade tem o padrão como zero.
Implementação
public function get x():Number
public function set x(value:Number):void
Lança
ArgumentError — se a posição não estiver no intervalo [-8191.. 8191].
|
y | propriedade |
y:Number
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
A coordenada vertical do Stage3D é exibida na etapa, em pixels.
Esta propriedade tem o padrão como zero.
Implementação
public function get y():Number
public function set y(value:Number):void
Lança
ArgumentError — se a posição não estiver no intervalo [-8191.. 8191].
|
Stage3D | () | Construtor |
public function Stage3D()
requestContext3D | () | método |
public function requestContext3D(context3DRenderMode:String = "auto", profile:String = "baseline"):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
Solicite a criação de um objeto Context3D para essa instância Stage3D.
Antes da chamada desta função, adicione um ouvinte de evento para o evento context3DCreate
. Caso contrário, o tempo de execução lançará uma exceção.
Observação importante nem caso de perda de dispositivo: a perda de dispositivo de GPU ocorre quando o hardware de GPU fica indisponível ao aplicativo. O objeto de Context3D é descartado quando o dispositivo de GPU é perdido. A perda de dispositivo de GPU poderá ocorrer por várias razões, como quando um dispositivo móvel fica sem energia de bateria ou um dispositivo de Windows vai até uma "tela de travamento." Quando a GPU torna-se disponível novamente, o tempo de execução cria uma nova ocorrência Context3D e despacha outro evento context3DCreate
. O aplicativo deverá recarregar todos os ativos e redefinir o estado de contexto de renderização sempre que ocorrer uma perda de dispositivo.
Planeje a lógica de seu aplicativo para tratar a possibilidade de perda de dispositivo e regeneração de contexto. Não remova o ouvinte de evento context3DCreate
. Não execute ações em resposta ao evento que não deverá ser repetido no aplicativo. Por exemplo, não adicione funções anônimas para tratar eventos de cronômetro porque elas seriam duplicadas após a perda de dispositivo. Para testar a manipulação de seu aplicativo de perda de dispositivo, você poderá simular a perda de dispositivo pela chamada do método dispose()
do objeto Context3D.
O seguinte exemplo ilustra como solicitar um contexto de renderização 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 ); }
Parâmetros
context3DRenderMode:String (default = "auto ") — O tipo do contexto de renderização a ser solicitado. O padrão é Context3DRenderMode.AUTO para o qual o tempo de execução criará um contexto acelerado por hardware se possível. Caso contrário, ele retornará ao software. Utilize Context3DRenderMode.SOFTWARE para solicitar um contexto de renderização de software. A renderização do software não está disponível para dispositivos móveis. A renderização de software está disponível apenas para Context3DProfile.BASELINE e Context3DProfile.BASELINE_CONSTRAINED .
| |
profile:String (default = "baseline ") — (AIR 3.4 e superior) Especifica o ponto até o qual Flash Player suporta o GPU de nível mais baixo. O padrão é Context3DProfile.BASELINE , que devolve uma ocorrência Context3D semelhante às usadas em versões anteriores. Para obter detalhes de todos os perfis disponíveis, consulte flash.display3D.Context3DProfile .
|
Eventos
context3DCreate: — Despachado quando o contexto de renderização solicitado é concluído com sucesso.
| |
error: — Despachado quando o contexto de renderização solicitado não puder ser criado.
|
Lança
Error — Se nenhum ouvinte do evento context3DCreate foi adicionado a esse objeto Stage3D.
| |
ArgumentError — se este método for chamado novamente com um context3DRenderMode diferente antes que a chamada anterior tenha sido concluída.
|
Elementos da API relacionados
requestContext3DMatchingProfiles | () | método |
public function requestContext3DMatchingProfiles(profiles:Vector.<String>):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 12, AIR 4 |
Solicite a criação de um objeto Context3D para essa instância Stage3D.
Antes da chamada desta função, adicione um ouvinte de evento para o evento context3DCreate
. Caso contrário, o tempo de execução lançará uma exceção.
Observação importante nem caso de perda de dispositivo: a perda de dispositivo de GPU ocorre quando o hardware de GPU fica indisponível ao aplicativo. O objeto de Context3D é descartado quando o dispositivo de GPU é perdido. A perda de dispositivo de GPU poderá ocorrer por várias razões, como quando um dispositivo móvel fica sem energia de bateria ou um dispositivo de Windows vai até uma "tela de travamento." Quando a GPU torna-se disponível novamente, o tempo de execução cria uma nova ocorrência Context3D e despacha outro evento context3DCreate
. O aplicativo deverá recarregar todos os ativos e redefinir o estado de contexto de renderização sempre que ocorrer uma perda de dispositivo.
Planeje a lógica de seu aplicativo para tratar a possibilidade de perda de dispositivo e regeneração de contexto. Não remova o ouvinte de evento context3DCreate
. Não execute ações em resposta ao evento que não deverá ser repetido no aplicativo. Por exemplo, não adicione funções anônimas para tratar eventos de cronômetro porque elas seriam duplicadas após a perda de dispositivo. Para testar a manipulação de seu aplicativo de perda de dispositivo, você poderá simular a perda de dispositivo pela chamada do método dispose()
do objeto Context3D.
O seguinte exemplo ilustra como solicitar um contexto de renderização 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 );
Parâmetros
profiles:Vector.<String> — (AIR 3.4 e posterior) uma matriz de perfil que o desenvolvedor deseja usar no seu programa flash. Quando o desenvolvedor passa a matriz de perfil a Stage3D.requestContext3DMatchingProfiles, ele obtém um Context3D com base no perfil de nível superior na matriz de acordo com sua capacidade de hardware. O rendermode é definido como AUTOMÁTICO, portanto, o parâmetro é omitido.
|
Eventos
context3DCreate: — Despachado quando o contexto de renderização solicitado é concluído com sucesso.
| |
error: — Despachado quando o contexto de renderização solicitado não puder ser criado. Se o hardware não está disponível, ele não criará um software context3d.
|
Lança
Error — Se nenhum ouvinte do evento context3DCreate foi adicionado a esse objeto Stage3D.
| |
ArgumentError — se este método for chamado antes da chamada anterior ser concluída.
| |
ArgumentError — se o item da matriz não é flash.display3D.Context3DProfile.
|
Elementos da API relacionados
context3DCreate | Evento |
flash.events.Event
propriedade Event.type =
flash.events.Event.CONTEXT3D_CREATE
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
Despachado quando um contexto de renderização for criado.
A constanteEvent.CONTEXT3D_CREATE
define o valor da propriedade type
do objeto de evento context3Dcreate
. Este evento é levantado só por objetos de Stage3D em resposta a um chamada para Stage3D.requestContext3D ou em resposta à redefinição acionada de um OS do Context3D vinculado ao objeto de Stage3D. Inspecione a propriedade Stage3D.context3D para obter o objeto de Context3D recentemente criado.
Elementos da API relacionados
error | Evento |
flash.events.ErrorEvent
propriedade ErrorEvent.type =
flash.events.ErrorEvent.ERROR
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 11, AIR 3 |
Despachado quando houver falha em uma solicitação de contexto de renderização.
Define o valor da propriedadetype
de um objeto de evento error
.
Esse evento tem as seguintes propriedades:
Propriedade | Valor |
---|---|
bubbles | false |
cancelable | false ; não há comportamento padrão a ser cancelado. |
currentTarget | O objeto que está processando ativamente o objeto Event com um ouvinte de evento. |
target | O objeto que está passando por uma falha de operação na rede. |
text | Texto a ser exibido como uma mensagem de erro. |
Elementos da API relacionados
Wed Jun 13 2018, 11:10 AM Z