Away3D 4.0 目前无法与 AIR 3.0 配合使用吗?有修复吗?
我正在使用 AIR SDK 版本 3.0.0.4080 和此版本的 Away3D (https://github.com/away3d/away3d-core-fp11/) 在 Macbook Pro 上的 FDT 5 中构建项目。应用程序描述符文件的 renderMode 设置为 direct。
当 Away3D 4.0 从最新的 playerglobal.swc 构建时,我已经能够与 FP11 一起使用,但当我尝试构建 AIR 项目时,airglobal.swc 似乎略有不同。 Filter3DTaskBase
由于方法参数的差异而引发错误。
参数数量不正确。预计不超过 2 个。
_program3D.upload( 新 AGALMiniAssembler(Debug.active).assemble(Context3DProgramType.VERTEX, getVertexCode(), Debug.active),
protected function updateProgram3D(stage : Stage3DProxy) : void
{
if (_program3D) _program3D.dispose();
_program3D = stage.context3D.createProgram();
_program3D.upload( new AGALMiniAssembler(Debug.active).assemble(Context3DProgramType.VERTEX, getVertexCode(), Debug.active),
new AGALMiniAssembler(Debug.active).assemble(Context3DProgramType.FRAGMENT, getFragmentCode(), Debug.active));
_program3DInvalid = false;
}
以及 AGALMiniAssembler 内:
public function assemble( mode:String, source:String, verbose:Boolean = false ):ByteArray
{
...
据我所知,参数数量是匹配的。我不确定我在这里缺少什么。 我在 Away3D 论坛或 GitHub 上的问题中找不到任何与此相关的信息。
我想知道我的显卡等是否存在更深层次的问题,因为 stage.displayState 的行为也很奇怪,它的行为就像 swf 通过播放器而不是 adl 运行(需要 MouseEvent 更改为全屏)。虽然我已经重新安装了最新的flex sdk和AIR sdk以防万一出现问题。
I'm using AIR SDK Version 3.0.0.4080 and this build of Away3D (https://github.com/away3d/away3d-core-fp11/) building the project in FDT 5 on a Macbook Pro. The app descriptor file has renderMode set to direct.
I have been able to get Away3D 4.0 working with FP11 when it builds from the latest playerglobal.swc but when I attempt to build an AIR project then it appears the airglobal.swc is slightly different. Filter3DTaskBase
throws errors due to differences in method parameters.
Incorrect number of arguments. Expected no more than 2.
_program3D.upload( new
AGALMiniAssembler(Debug.active).assemble(Context3DProgramType.VERTEX,
getVertexCode(), Debug.active),
protected function updateProgram3D(stage : Stage3DProxy) : void
{
if (_program3D) _program3D.dispose();
_program3D = stage.context3D.createProgram();
_program3D.upload( new AGALMiniAssembler(Debug.active).assemble(Context3DProgramType.VERTEX, getVertexCode(), Debug.active),
new AGALMiniAssembler(Debug.active).assemble(Context3DProgramType.FRAGMENT, getFragmentCode(), Debug.active));
_program3DInvalid = false;
}
and within AGALMiniAssembler
:
public function assemble( mode:String, source:String, verbose:Boolean = false ):ByteArray
{
...
As far as I can see, the number of parameters match up. I'm not sure what I'm missing here.
I couldn't find anything about this in the Away3D forums or in the Issues on GitHub.
I am wondering if there is a deeper issue here with my graphics card etc as stage.displayState is behaving strangely as well, it behaves like the swf is running via the player not adl (needs MouseEvent to change to fullscreen). Although I have re-installed the latest flex sdk and AIR sdk in case something had gone wrong there.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我的源路径中还有另一个版本的 AGALMiniAssembler,因为它包含在 ND2D 库中。一旦使用 Away3D 期望的版本,应用程序就会正确编译。
There was another version of AGALMiniAssembler that was in my source path due to its inclusion as part of the ND2D library. Once using the version Away3D expects, the app compiles correctly.