Guide de référence ActionScript® 3.0 pour la plate-forme Adobe® Flash®
Accueil  |  Masquer la liste des packages et des classes |  Packages  |  Classes  |  Nouveautés  |  Index  |  Annexes  |  Pourquoi existe-t-il du contenu en anglais ?
Filtres : AIR 30.0 et versions antérieures, Flash Player 30.0 et versions antérieures, Flash Lite 4
Flex 4.6 et versions antérieures, Flash Pro CS6 et versions antérieures
Masquer les filtres
flash.display3D 

Program3D  - AS3

Packagesx

Niveau supérieur
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Eléments du langage

Constantes globales
Fonctions globales
Opérateurs
Instructions, mots clés et directives
Types spéciaux

Annexes

Nouveautés
Erreurs de compilation
Avertissements du compilateur
Erreurs d’exécution
Migration vers ActionScript 3
Jeux de caractères pris en charge
Balises MXML uniquement
Eléments XML de mouvement
Balises Timed Text
Liste des éléments déconseillés
Constantes d’implémentation d’accessibilité
Utilisation des exemples de code ActionScript
Informations juridiques
Packageflash.display3D
Classepublic final class Program3D
HéritageProgram3D Inheritance Object

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 11, AIR 2

La classe Program3D représente une paire de programmes de rendu (également appelés shaders) téléchargés dans le contexte de rendu.

Les programmes gérés par un objet Program3D permettent de contrôler l’intégralité du rendu de triangles au cours d’un appel de drawTriangles() de Context3D. Téléchargez le pseudo-code binaire dans le contexte de rendu à l’aide de la méthode upload. (Une fois le téléchargement effectué, le programme dans le tableau d’octets d’origine n’est plus référencé ; la modification ou la suppression du tableau d’octets source ne modifie pas la liste de triangles.)

Les programmes sont toujours composés de deux parties liées : un programme de sommets et un programme de fragments.

  1. Le programme de sommets opère sur les données définies dans les objets VertexBuffer3D, et est chargé de projeter les sommets en espace de clip et de transmettre toutes les données de sommets requises, telles que la couleur, au shader de fragments.
  2. Le shader de fragments opère sur les attributs qui lui sont transmis par le programme de sommets, et produit une couleur pour chaque fragment rastérisé d’un triangle, ce qui résulte en couleurs de pixel. Notez que les programmes de fragments disposent de plusieurs noms dans la documentation de programmation 3D, notamment shaders de fragments et shaders de pixels.

Désignez la paire de programmes à utiliser pour les opérations de rendu suivantes en transmettant l’occurrence de Program3D correspondante à la méthode setProgram() de Context3D.

Vous ne pouvez pas créer d’objet Program3D directement ; utilisez plutôt la méthode createProgram() de Context3D.

Eléments de l’API associés



Propriétés publiques
 PropriétéDéfini par
 Inheritedconstructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet.
Object
Méthodes publiques
 MéthodeDéfini par
  
Libérez toutes les ressources associées à cet objet.
Program3D
 Inherited
Indique si la propriété spécifiée d’un objet est définie.
Object
 Inherited
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre.
Object
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l’objet spécifié.
Object
  
upload(vertexProgram:ByteArray, fragmentProgram:ByteArray):void
Télécharge une paire de programmes de rendu exprimés en pseudo-code binaire AGAL (Adobe Graphics Assembly Language).
Program3D
 Inherited
Renvoie la valeur primitive de l’objet spécifié.
Object
Détails de la méthode

dispose

()méthode
public function dispose():void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 11, AIR 3

Libérez toutes les ressources associées à cet objet. Après la suppression d’un objet Program3D, l’appel de la méthode upload() et le rendu à l’aide cet objet échouent.

upload

()méthode 
public function upload(vertexProgram:ByteArray, fragmentProgram:ByteArray):void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 11, AIR 3

Télécharge une paire de programmes de rendu exprimés en pseudo-code binaire AGAL (Adobe Graphics Assembly Language).

Le pseudo-code du programme peut être créé à l’aide des outils 3D hors ligne de Pixel Bender. Il peut également être créé de façon dynamique. La classe AGALMiniAssembler est une classe d’utilitaire qui compile les programmes de langage d’assemblage AGAL en pseudo-code binaire AGAL. Cette classe ne fait pas partie du moteur d’exécution. Lorsque vous téléchargez les programmes de shader, le pseudo-code binaire est compilé en langage de shader natif pour le périphérique actif (par exemple, OpenGL ou Direct3D). Le moteur d’exécution valide le pseudo-code binaire lors du téléchargement.

Les programmes s’exécutent chaque fois que la méthode drawTriangles() de Context3D est invoquée. Le programme de sommets est exécuté une fois pour chaque sommet de la liste des triangles à tracer. Le programme de fragments est exécuté une fois pour chaque pixel sur une surface du triangle.

Les "variables" utilisées par un programme de shaders sont appelées registres. Les registres suivants sont définis :

NomNombre par programme de fragmentsNombre par programme de sommetsRôle
Attributsans objet8Entrée de shader de sommets ; à lire à partir d’un tampon de sommets spécifié à l’aide de Context3D.setVertexBufferAt().
Constante28128Entrée de shader ; à définir à l’aide de la famille de fonctions Context3D.setProgramConstants().
Temporaire88Registre temporaire pour le calcul, non accessible en dehors du programme.
Sortie11Sortie de shader : dans un programme de sommets, la sortie correspond à la position de l’espace du clip ; dans un programme de fragments, la sortie est une couleur.
Variation88Transférez les données interpolées entre les shaders de sommets et de fragments. Les registres de variables du programme de sommets sont appliqués en tant qu’entrée au programme de fragments. Les valeurs sont interpolées en fonction de la distance par rapport aux sommets du triangle.
Echantillonneur8sans objetEntrée de shader de fragments ; à lire à partir d’une texture spécifiée à l’aide de Context3D.setTextureAt()

Un programme de sommets reçoit l’entrée à partir de deux sources : les tampons de sommets et les registres de constantes. Spécifiez les données de sommet à utiliser pour le registre d’attributs d’un sommet particulier à l’aide de la méthode setVertexBufferAt() de Context3D. Vous pouvez définir jusqu’à huit registres d’entrée pour les attributs de sommet. Les valeurs d’attributs de sommet sont lues à partir du tampon de sommets pour chaque sommet dans la liste de triangles et placées dans le registre d’attributs. Spécifiez les registres de constantes à l’aide de la méthode setProgramConstantsFromMatrix() ou setProgramConstantsFromVector() de Context3D. Les registres de constantes conservent la même valeur pour chaque sommet dans la liste de triangles. (Vous pouvez uniquement modifier les valeurs de constante entre les appels à drawTriangles().)

Le programme de sommets est chargé de projeter les sommets du triangle dans l’espace de clip (zone d’affichage canonique entre ±1 sur les axes x et y et 0-1 sur l’axe z) et de placer les coordonnées transformées dans son registre de sortie. (En règle générale, la matrice de projection appropriée est fournie au shader dans un ensemble de registres de constantes.) Le programme de sommets doit également copier tous les attributs de sommet ou les valeurs calculées requis par le programme de fragments dans un jeu spécial de variables appelé registre de variables. Lorsqu’un shader de fragments s’exécute, la valeur fournie dans un registre de variables est interpolée de façon linéaire en fonction de la distance du fragment en cours à partir de chaque sommet du triangle.

Un programme de fragments reçoit l’entrée à partir des registres de variables et à partir d’un jeu de registres de constantes indépendant (défini avec setProgramConstantsFromMatrix() ou setProgramConstantsFromVector()). Il est également possible de lire les données de texture téléchargées à partir du contexte de rendu à l’aide des registres de l’échantillonneur. Spécifiez la texture à laquelle accéder avec un registre d’échantillonneur particulier à l’aide de la méthode setTextureAt() de Context3D. Le programme de fragments est chargé de définir son registre sur une valeur de couleur.

Paramètres

vertexProgram:ByteArray — Pseudo-code AGAL pour le programme de sommets. L’objet ByteArray doit utiliser le format petit-boutiste.
 
fragmentProgram:ByteArray — Pseudo-code AGAL pour le programme de fragments. L’objet ByteArray doit utiliser le format petit-boutiste.


Valeur émise
TypeError — Erreur de pointeur nul : si vertexProgram ou fragmentProgram est null.
 
Error — Objet supprimé : si l'objet Program3D a été supprimé, soit directement par un appel à dispose(), soit indirectement en appelant la méthode dispose() de l'objet Context3D, soit parce que le contexte de rendu a été supprimé en raison d'une perte de périphérique.
 
ArgumentError — Programme AGAL trop petit : lorsque la longueur de l'un ou l'autre tableau de codes de programme est inférieure à 31 octets. Il s'agit de la taille du pseudo-code binaire du shader d'un programme à une instruction.
 
ArgumentError — Le programme doit être petit-boutiste : si l'un ou l'autre des tableaux d'octets de code de programme n'est pas petit-boutiste.
 
Error — Echec de la compilation du shader natif : si la sortie du traducteur AGAL n'est pas un programme de langage de shader natif compilable. Cette erreur est uniquement renvoyée dans les lecteurs commercialisés.
 
Error — Echec de la compilation du shader natif OpenGL : lorsque la sortie du traducteur AGAL n’est pas un programme de langage de shader OpengGL compilable, et inclut des diagnostics de compilation. Cette erreur est uniquement renvoyée dans les lecteurs de débogage.
 
Error — Echec de la compilation du shader D3D9 : lorsque la sortie du traducteur AGAL n’est pas un programme de langage de shader Direct3D compilable, et inclut des diagnostics de compilation. Cette erreur est uniquement renvoyée dans les lecteurs de débogage.

Les erreurs suivantes sont renvoyées lors de l’échec de la validation du pseudo-code AGAL :

 
Error — Pas un programme Agal : si l’en-tête "magic byte" est erroné. Le premier octet du pseudo-code binaire doit être 0xa0. Cette erreur peut indiquer que le tableau d’octets est défini sur le mauvais ordre endian.
 
Error — Version Agal incorrecte : si la version AGAL n’est pas prise en charge par la version SWF actuelle. La version AGAL doit être définie sur 1 pour la version 13 du fichier SWF.
 
Error — Type de programme Agal incorrect : si l’identificateur de type de programme AGAL n’est pas valide. Le troisième octet dans le code binaire doit être 0xa1. Cette erreur peut indiquer que le tableau d’octets est défini sur le mauvais ordre endian.
 
Error — Type de shader Agal incorrect : si le code du type de shader n’est pas un fragment ni un sommet (1 ou 0).
 
Error — Code d’op. Agal non valide en dehors de la plage : si un code d’opération non valide est détecté dans le flux du jeton.
 
Error — Code d’op. Agal non valide non implémenté : si un code d’opération non valide est détecté dans le flux du jeton.
 
Error — Code d’op. Agal uniquement autorisé dans le programme de fragments : si un code d’opération est détecté dans le flux du jeton du programme de sommets qui n’est autorisé que dans les programmes de fragments tels que KIL ou TEX.
 
Error — Opérandes sources Agal incorrects : si les deux opérandes sources sont des registres de constante. Vous devez calculer le résultat à l’extérieur du programme de shaders et le transmettre en utilisant un seul registre de constante.
 
Error — Les deux opérandes sont des lectures indirectes : si les deux opérandes sont des lectures indirectes.
 
Error — Destination code d’op. doit être zéro : si un jeton avec un code d’opération (tel que KIL) qui n’a aucune destination définit une valeur non nulle pour le registre de destination.
 
Error — Destination code d’op. doit utiliser un masque : si un code d’opération qui produit uniquement un résultat de composant 3 est utilisé sans masquage.
 
Error — Trop de jetons : s’il existe un trop grand nombre de jetons (plus de 200) dans un programme AGAL.
 
Error — Type de shader de fragments : si le type de programme de fragments (octet 6 du paramètre fragmentProgram) n’est pas défini sur 1.
 
Error — Type de shader de sommets : si le type de programme de sommets (octet 6 du paramètre vertexProgram) n’est pas défini sur 0.
 
Error — Variable lue mais pas écrite : si le shader de fragments lit un registre de variables qui n’a jamais été écrit par le shader de sommets.
 
Error — Variable partiellement écrite : si un registre de variables n’est que partiellement écrit. Tous les composants d’un registre de variables doivent être écrits.
 
Error — Fragment écrit tous les composants : si la sortie de couleur d’un fragment n’est que partiellement écrite. Les quatre composants de la sortie couleur doivent être écrits.
 
Error — Sommet écrit tous les composants : si la sortie de l’espace de clip d’un sommet n’est que partiellement écrite. Tous les composants de la sortie espace du clip de sommets doivent être écrits.
 
Error — Opérande non utilisé : si un opérande inutilisé dans un jeton n’est pas défini sur zéro.
 
Error — Registre de l'échantillonneur uniquement dans un fragment : si le registre d'un échantillonneur de texture est utilisé dans un programme de sommets.
 
Error — Registre de l'échantillonneur deuxième opérande : si un registre de l'échantillonneur est utilisé comme destination ou premier opérande d'un jeton AGAL.
 
Error — Indirect autorisé uniquement dans un sommet : si l'adressage indirect est utilisé dans un programme de fragments.
 
Error — Indirect uniquement dans un registre de constantes : si l'adressage indirect est utilisé dans un registre sans constante.
 
Error — Type de source indirect : si le type de source indirect n'est pas un attribut, une constante ou un registre temporaire.
 
Error — Les champs d'adressage indirect doivent être définis sur zéro : si tous les champs d'adressage indirect ne sont pas définis sur zéro pour l'adressage direct.
 
Error — Registres de variables uniquement lus dans un fragment : si un registre de variables est lu dans un programme de sommets. Les registres de variables peuvent uniquement être écrits dans des programmes de sommets et lus dans des programmes de fragments.
 
Error — Registres d'attributs uniquement lus dans un sommet : si un registre d'attributs est lu dans un programme de fragments. Les registres d'attributs peuvent uniquement être lus dans des programmes de sommets.
 
Error — Impossible de lire le registre de sortie : si un registre de sortie (position ou couleur) est lu. Le registre de sortie peut uniquement être écrit, pas lu.
 
Error — Registre temporaire lu sans être écrit : si un registre temporaire est lu sans qu'il n'ait été écrit.
 
Error — Composant de registre temporaire lu sans être écrit : si le composant d'un registre temporaire spécifique est lu sans qu'il n'ait été écrit.
 
Error — Registre de l'échantillonneur ne peut pas être écrit : si un registre de l'échantillonneur est écrit. Les registres de l'échantillonneur peuvent uniquement être lus, pas écrits.
 
Error — Ecriture du registre de variables : si un registre de variables est écrit dans un programme de fragments. Les registres de variables peuvent uniquement être écrits dans des programmes de sommets et lus dans des programmes de fragments.
 
Error — Les registres d'attributs ne peuvent pas être écrits : si un registre d'attributs est écrit. Les registres d'attributs sont en lecture seule.
 
Error — Impossible d'écrire sur le registre de constantes : si un registre de constantes est écrit à l'intérieur d'un programme de shaders.
 
Error — Masque d'écriture de la destination égale à zéro : si le masque d'écriture de la destination est défini sur zéro. Tous les composants d'un registre de sortie doivent être définis.
 
Error — Les bits réservés d'AGAL doivent être définis sur zéro : si l'un des bits réservés dans un jeton n'est pas égal à zéro. Cela indique une erreur lors de la création du pseudo-code binaire (ou un pseudo-code binaire incorrectement formé).
 
Error — Type de registre inconnu : si un index de type de registre incorrect est utilisé.
 
Error — Registre de l'échantillonneur hors limites : si un index de registre de l'échantillonneur incorrect est utilisé.
 
Error — Registre de variables hors limites : si un index de registre de variables incorrect est utilisé.
 
Error — Registre d'attributs hors limites : si un index de registre d'attributs incorrect est utilisé.
 
Error — Registre de constantes hors limites : si un index de registre de constantes incorrect est utilisé.
 
Error — Registre de sortie hors limites : si un index de registre de sortie incorrect est utilisé.
 
Error — Registre temporaire hors limites : si un index de registre temporaire incorrect est utilisé.
 
Error — L'échantillonneur de mappage de cubes doit utiliser le verrouillage : si un échantillonneur de mappage de cubes ne définit pas le mode d'habillage à verrouiller.
 
Error — Dimension d'échantillonneur inconnue : si un échantillon utilise une dimension d'échantillonneur inconnue. (Seules les textures 2D et les textures de cube sont prises en charge.)
 
Error — Mode de filtre inconnu : si un échantillonneur fait appel à un mode de filtre inconnu. (Seuls les modes voisin le plus proche et filtrage linéaire sont pris en charge.)
 
Error — Mode mipmap inconnu : si un échantillonneur utilise un mode mipmap inconnu. (Seuls les modes aucun, voisin le plus proche et mipmap linéaire sont pris en charge.)
 
Error — Mode d'enveloppe inconnu : si un échantillonneur utilise un mode d'enveloppe inconnu. (Seuls les mode d'enveloppe verrouillage et répétition d'enveloppement sont pris en charge.)
 
Error — Indicateur spécial inconnu : si un échantillonneur utilise un indicateur spécial inconnu.
 
Error — Couleur de sortie non masquable : vous ne pouvez pas masquer la couleur du registre de sortie dans un programme de fragments. Tous les composants du registre de couleur doivent être définis.
 
Error — Le deuxième opérande doit être le registre de l'échantillonneur : l'opcode tex AGAL doit avoir un échantillonneur comme second opérande source.
 
Error — Indirect non autorisé : adressage indirect utilisé lorsque cela n'est pas autorisé.
 
Error — Le réagencement doit être scalaire : erreur de réagencement.
 
Error — Réagencement de la 2e source impossible : erreur de réagencement.
 
Error — Deuxième utilisation de l'échantillonneur doit avoir les mêmes paramètres : tous les échantillonneurs qui accèdent à la même texture doivent utiliser les mêmes dimension, habillage, filtre, et paramètres mipmap.
 
Error — 3768 : l’API Stage3D ne peut pas être utilisée lors d’une exécution en arrière-plan.

Informations complémentaires

Eléments de l’API associés





[ X ]Pourquoi existe-t-il du contenu en anglais ?
Certaines parties du Guide de référence ActionScript 3.0 sont en anglais

Tout le contenu du Guide de référence ActionScript 3.0 n’a pas été traduit dans toutes les langues. Si un élément de langage n’est pas traduit, il s’affiche en anglais. Par exemple, la classe ga.controls.HelpBox n’est traduite dans aucune langue. Ainsi, dans la version française du guide de référence, la classe ga.controls.HelpBox apparaît en anglais.