適用於 Adobe® Flash® Platform 的 ActionScript® 3.0 參考
首頁  |  隱藏套件和類別清單 |  套件  |  類別  |  新增內容  |  索引  |  附錄  |  為什麼顯示英文?
篩選: AIR 30.0 和更早版本, Flash Player 30.0 和更早版本, Flash Lite 4
Flex 4.6 和更早版本, Flash Pro CS6 和更早版本
隱藏篩選
flash.display3D 

Program3D  - AS3

套件x

最上層
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

語言元素

全域常數
全域函數
運算子
陳述式、關鍵字和指令
特殊類型

附錄

新增內容
編譯器錯誤
編譯器警告
執行階段錯誤
移轉至 ActionScript 3
支援的字元集
僅限 MXML 標籤
移動 XML 元素
Timed Text 標籤
不建議元素清單
AccessibilityImplementation 常數
如何使用 ActionScript 範例
法律聲明
套件flash.display3D
類別public final class Program3D
繼承Program3D Inheritance Object

語言版本: ActionScript 3.0
執行階段版本: Flash Player 11, AIR 2

Program3D 類別代表一對上傳到顯示內容的顯示程式 (又稱為「著色器」)。

Program3D 物件管理的程式會控制 Context3D drawTriangles() 呼叫期間,三角形的整個顯示。使用 upload 方法即可將二進位位元組碼上傳到顯示內容 (上傳之後,就不再參考原始位元組陣列中的程式;變更或捨棄來源位元組陣列並不會變更程式)。

程式一律由兩個連結的部分組成:一個頂點和一個片段程式。

  1. 頂點程式會在 VertexBuffer3D 物件中定義的資料上運作,並且負責將頂點投射到片段空間,以及將任何必要的頂點資料 (例如顏色) 傳遞到片段著色器。
  2. 片段著色器會在由頂點程式傳給它的屬性上運作,並且會為三角形的每個點陣化片段產生顏色,進而產生像素顏色。請注意,在 3D 程式設計文獻中,片段程式有好幾個名稱,其中包括片段著色器和像素著色器。

透過將對應的 Program3D 實體傳遞到 Context3D setProgram() 方法,可指定哪個程式配對要用於後續顯示作業。

您無法直接建立 Program3D 物件,請改用 Context3D createProgram() 方法。

相關 API 元素



公用屬性
 屬性定義自
 Inheritedconstructor : Object
類別物件的參照或是特定物件實體的建構函數。
Object
公用方法
 方法定義自
  
釋放與這個物件關聯的所有資源。
Program3D
 Inherited
指出物件是否有已定義的指定屬性。
Object
 Inherited
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。
Object
 Inherited
指出指定的屬性是否存在,以及是否可列舉。
Object
 Inherited
為迴圈作業設定動態屬性的可用性。
Object
 Inherited
傳回代表此物件的字串,根據地區特定慣例進行格式化。
Object
 Inherited
會傳回指定之物件的字串形式。
Object
  
upload(vertexProgram:ByteArray, fragmentProgram:ByteArray):void
上傳一對以 AGAL (Adobe Graphics Assembly Language) 位元組碼表示的顯示程式。
Program3D
 Inherited
會傳回指定之物件的基本值。
Object
方法詳細資訊

dispose

()方法
public function dispose():void

語言版本: ActionScript 3.0
執行階段版本: Flash Player 11, AIR 3

釋放與這個物件關聯的所有資源。處置 Program3D 物件後,透過這個物件呼叫 upload() 和顯示都會失敗。

upload

()方法 
public function upload(vertexProgram:ByteArray, fragmentProgram:ByteArray):void

語言版本: ActionScript 3.0
執行階段版本: Flash Player 11, AIR 3

上傳一對以 AGAL (Adobe Graphics Assembly Language) 位元組碼表示的顯示程式。

使用 Pixel Bender 3D 離線工具可建立程式位元組碼。也可以動態建立它。AGALMiniAssembler 類別是公用程式類別,可將 AGAL 組合語言程式編譯為 AGAL 位元組碼。此類別不是執行階段的一部分。當您上傳著色器程式時,位元組碼會編譯至目前裝置的原生著色器語言 (例如 OpenGL 或 Direct3D)。執行階段會在上傳時驗證位元組碼。

每當叫用 Context3D drawTriangles() 方法時,程式都會執行。在要繪製的三角形清單中,頂點程式會針對每個頂點執行一次。片段程式會針對三角形表面的每個像素執行一次。

著色器程式所使用的「變數」稱為「暫存器」。下列是定義的暫存器:

名稱每個片段程式的數目每個頂點程式的數目目的
特質不適用8頂點著色器輸入;從使用 Context3D.setVertexBufferAt() 指定的頂點緩衝區中讀取。
常數28128著色器輸入;使用函數的 Context3D.setProgramConstants() 系列來設定。
暫時88計算用的暫時暫存器,無法從程式外存取。
輸出11著色器輸出:在頂點程式中,輸出是片段空間位置;在片段程式中,輸出則是顏色。
不同88在頂點和片段著色器之間傳輸插補的資料。頂點程式中的不同暫存器會以輸入形式套用到片段程式。值是根據與三角形頂點的距離來插補。
取樣程式8不適用片段著色器輸入;從使用 Context3D.setTextureAt() 指定的紋理讀取。

頂點程式會從兩個來源收到輸入:頂點緩衝區和常數暫存器。使用 Context3D setVertexBufferAt() 方法,指定哪些頂點資料要用於特定頂點 attribute 暫存器。您最多可以為頂點屬性定義 8 個輸入暫存器。頂點屬性值是從三角形清單中每個頂點的頂點緩衝區讀取,並置於屬性暫存器中。使用 Context3D setProgramConstantsFromMatrix()setProgramConstantsFromVector() 方法,可以指定 constant 暫存器。常數暫存器會保持三角形清單中每個頂點的值都一樣 (您可以只修改 drawTriangles() 呼叫之間的常數值)。

頂點程式負責將三角形頂點投射到片段空間 (x 軸和 y 軸上 ±1 與 z 軸上 0-1 內的標準檢視區域),以及將變形座標放在輸出暫存器中 (通常會提供適當的投射矩陣給一組常數暫存器中的著色器)。此外,頂點程式還必須將片段程式所需的任何頂點屬性或算出的值複製給一組特殊的變數,稱為 varying 暫存器。當片段著色器執行時,不同暫存器中提供的值在線性上會根據目前片段與每個三角形頂點的距離來插補。

片段程式會收到來自不同暫存器和個別常數暫存器 (使用 setProgramConstantsFromMatrix()setProgramConstantsFromVector() 設定) 的輸入。您也可以使用 sampler 暫存器,從上傳到顯示內容的紋理讀取紋理資料。使用 Context3D setTextureAt() 方法,指定要與特定取樣程式暫存器一起存取的紋理。片段程式負責將它的輸出暫存器設定為顏色值。

參數

vertexProgram:ByteArray — 頂點程式的 AGAL 位元組碼。ByteArray 物件必須使用 little endian 格式。
 
fragmentProgram:ByteArray — 片段程式的 AGAL 位元組碼。ByteArray 物件必須使用 little endian 格式。


擲回值
TypeError — Null 指標錯誤:vertexProgramfragmentProgram 為 null。
 
Error — 物件已處理:Program3D 物件已透過呼叫 dispose() 的方式直接處理,或是透過呼叫 Context3D dispose() 的方式間接處理,或是因為裝置損失而處理顯示內容。
 
ArgumentError — AGAL 程式太小:有任一程式碼陣列的長度小於 31 個位元組。這是單一指示程式的著色器位元組碼大小。
 
ArgumentError — 程式必須為 Little Endian:有任一程式位元組程式碼陣列不是 Little Endian。
 
Error — 原生著色器編譯失敗:AGAL 轉譯程式的輸出不是可編譯的原生著色器語言程式。只有在發佈播放程式才會擲回此錯誤。
 
Error — 原生著色器編譯失敗 (OpenGL):AGAL 轉譯程式的輸出不是可編譯的 OpengGL 著色器語言程式,並且包含編譯診斷。只有在除錯播放程式才會擲回此錯誤。
 
Error — 原生著色器編譯失敗 (D3D9):AGAL 轉譯程式的輸出不是可編譯的 Direct3D 著色器語言程式,並且包含編譯診斷。只有在除錯播放程式才會擲回此錯誤。

當 AGAL 位元組碼驗證失敗時,會擲回下列錯誤:

 
Error — 不是 AGAL 程式:標題「魔術位元組」不正確。位元組碼的第一個位元組必須是 0xa0。這個錯誤可代表位元組陣列設定為錯誤的 endian 順序。
 
Error — AGAL 版本不正確:目前 SWF 版本不支援 AGAL 版本SWF 版本 13 的 AGAL 版本必須設定為 1。
 
Error — AGAL 程式類型不正確:AGAL 程式類型識別名稱無效。位元組碼中的第三位元組必須是 0xa1。這個錯誤可代表位元組陣列設定為錯誤的 endian 順序。
 
Error — AGAL 著色器類型不正確:著色器類型代碼不是片段或頂點 (1 或 0)。
 
Error — 無效的 AGAL Opcode 超出範圍:在字符串流中遇到無效的 opcode。
 
Error — 無效的 AGAL Opcode 未實作:在字符串流中遇到無效的 opcode。
 
Error — AGAL Opcode 只允許用於片段程式:在只允許用於片段程式之頂點程式的字符串流中遇到 opcode,例如 KIL 或 TEX。
 
Error — AGAL 來源運算元不正確:兩個來源運算元都是常數暫存器。您必須計算著色器程式之外的結果,然後使用單一常數暫存器將它傳入。
 
Error — 兩個運算元都是間接讀取:兩個運算元都是間接讀取。
 
Error — Opcode 目的地必須全為零:字符的 opcode (例如 KIL) 沒有目的地,並且未設定目的地暫存器的非零值。
 
Error — Opcode 目的地必須使用遮色片:opcode 只產生 3 個組件結果,並且使用時未先套用遮色片。
 
Error — 太多字符:AGAL 程式中有太多字符 (超過 200 個)。
 
Error — 片段著色器類型:片段程式類型 (fragmentProgram 參數的第 6 個位元組) 不是設定為 1。
 
Error — 頂點著色器類型:頂點程式類型 (vertexProgram 參數的第 6 個位元組) 不是設定為 0。
 
Error — 不同的讀取但未寫入:片段著色器讀取不同暫存器,該暫存器從未由頂點著色器寫入。
 
Error — 不同部分寫入:僅部分寫入不同暫存器。必須寫入不同暫存器的所有組件。
 
Error — 片段寫入所有組件:僅部分寫入片段色彩輸出。必須寫入之色彩輸出的全部四個組件。
 
Error — 頂點寫入所有組件:僅部分寫入頂點片段空間輸出。必須寫入之頂點片段空間輸出的所有組件。
 
Error — 未使用的運算元:字符中未使用的運算元未全部設定為零。
 
Error — 僅限在片段程式中使用取樣程式暫存器:在頂點程式中使用紋理取樣程式暫存器。
 
Error — 取樣程式暫存器的第二個運算元:使用取樣程式暫存器做為 AGAL 字符的目標或第一個運算元。
 
Error — 僅允許在頂點程式中間接定址:在片段程式中使用間接定址。
 
Error — 僅限在常數暫存器間接定址:在非常數暫存器中使用間接定址。
 
Error — 間接來源類型:間接來源類型不是屬性、常數或暫時暫存器。
 
Error — 間接定址欄位必須為零:並非所有間接定址欄位均為零,以用於直接定址。
 
Error — 僅限在片段程式讀取不同暫存器:在頂點程式中讀取不同暫存器。不同暫存器只能以頂點程式寫入並以片段程式讀取。
 
Error — 僅限在頂點程式讀取屬性暫存器:在片段程式中讀取屬性暫存器。屬性暫存器只能以頂點程式讀取。
 
Error — 無法讀取輸出暫存器:讀取輸出 (位置或顏色) 暫存器。輸出暫存器只能寫入而不可讀取。
 
Error — 未寫入即讀取暫時暫存器:之前並未寫入暫時暫存器便加以讀取。
 
Error — 未寫入即讀取暫時暫存器組件:之前並未寫入特定暫時暫存器組件,便加以讀取。
 
Error — 無法寫入取樣程式暫存器:寫入取樣程式暫存器。取樣程式暫存器只能讀取而不可寫入。
 
Error — 寫入不同暫存器:將不同暫存器寫入片段程式。不同暫存器只能以頂點程式寫入並以片段程式讀取。
 
Error — 無法寫入屬性暫存器:寫入屬性暫存器。屬性暫存器是唯讀的。
 
Error — 無法寫入常數暫存器:寫入著色器程式內的常數暫存器。
 
Error — 目標寫入遮色片為零:目標寫入遮色片為零。輸出暫存器的所有組件必須都已設定。
 
Error — AGAL 保留位元應為零:字符中有任何非零的保留位元。這表示建立位元組碼時發生錯誤 (或位元組碼格式錯誤)。
 
Error — 不明的暫存器類型:使用無效的暫存器類型索引。
 
Error — 取樣程式暫存器超出範圍:使用無效的取樣程式暫存器索引。
 
Error — 不同暫存器超出範圍:使用無效的不同暫存器索引。
 
Error — 屬性暫存器超出範圍:使用無效的屬性暫存器索引。
 
Error — 常數暫存器超出範圍:使用無效的常數暫存器索引。
 
Error — 輸出暫存器超出範圍:使用無效的輸出暫存器索引。
 
Error — 暫時暫存器超出範圍:使用無效的暫時暫存器索引。
 
Error — 立方體對應取樣程式必須使用固定:立方體對應取樣程式未將換行模式設定為固定。
 
Error — 不明的取樣程式尺寸:有樣本使用不明的取樣程式尺寸 (僅支援 2D 與立方體紋理)。
 
Error — 不明的濾鏡模式:取樣程式使用不明的濾鏡模式 (僅支援最近鄰點與線性濾鏡處理)。
 
Error — 不明的 MIP 映射模式:取樣程式使用不明的 MIP 映射模式 (僅支援無、最近鄰點及線性 MIP 映射模式)。
 
Error — 不明的換行模式:取樣程式使用不明的換行模式 (僅支援固定與重複換行模式)。
 
Error — 不明的特殊旗標:取樣程式使用不明的特殊旗標。
 
Error — 無法遮蔽輸出色彩:您無法以片段程式來遮蔽色彩輸出暫存器。色彩暫存器的所有組件必須都已設定。
 
Error — 第二個運算元必須是取樣程式暫存器:AGAL 紋理 opcode 必須讓某取樣程式做為第二個來源運算元。
 
Error — 不允許間接定址:在不允許的地方使用間接定址。
 
Error — 拌和必須為純量:拌和時發生錯誤。
 
Error — 無法拌和第二個來源:拌和時發生錯誤。
 
Error — 再次使用的取樣程式必須有相同的參數:處理相同紋理的所有取樣程式都必須使用相同的尺寸、換行、濾鏡、特殊及 MIP 映射設定。
 
Error — 3768:在背景執行期間不會使用 Stage3D API。

詳細資訊

相關 API 元素





[ X ]為什麼顯示英文?
「ActionScript 3.0 參考」的內容是以英文顯示

並非所有「ActionScript 3.0 參考」的內容都翻譯為所有語言。當語言元素未翻譯時,就會以英文顯示。例如,ga.controls.HelpBox 類別並沒有翻譯為任何語言。因此在參考的繁體中文版本中,ga.controls.HelpBox 類別就會以英文顯示。