当我调试我的程序stage.stage3Ds为空(长度为0)时,当我尝试将其用于编程时,这给了我一个错误。当我将一个新的Stage3D推送到stage.stage3Ds然后使用requestContext3D()函数时,我从未得到允许我继续使用程序的context3d_create事件
答案 0 :(得分:2)
在Adobe AIR Application Descriptor XML file中,设置以下元素:
<renderMode>direct</renderMode>
<depthAndStencil>true</depthAndStencil>
指定是否使用图形处理单元(GPU)加速, 如果当前计算设备支持。
为了利用AIR for Flash利用Flash内容的GPU加速 移动平台,Adobe建议您使用renderMode =“direct” (即Stage3D)而不是renderMode =“gpu”。 Adobe正式发布 支持并推荐以下基于Stage3D的框架: Starling(2D)和Away3D(3D)。有关Stage3D和。的更多详细信息 Starling / Away3D,请参阅http://gaming.adobe.com/getstarted/。
表示应用程序需要使用深度或 模板缓冲区。在处理3D时,通常使用这些缓冲区 内容。默认情况下,此元素的值为false以禁用 深度和模板缓冲区。这个元素是必要的,因为 在任何内容之前,必须在应用程序启动时分配缓冲区 负荷。
此元素的设置必须与传递的值相匹配 Context3D.configureBackBuffer()的enableDepthAndStencil参数 方法。如果值不匹配,则AIR会发出错误。
此元素仅在renderMode = direct时适用。如果 renderMode不等于direct,ADT抛出错误118: