Actionscript 3 Flash Player 11中的Stage3D不';t显示
我正在尝试使用Stage3D API在ActionScript3.0中编写一个3D游戏。我复制了Actionscript 3 Flash Player 11中的Stage3D不';t显示,actionscript-3,flash,viewport,mxmlc,stage3d,Actionscript 3,Flash,Viewport,Mxmlc,Stage3d,我正在尝试使用Stage3D API在ActionScript3.0中编写一个3D游戏。我复制了frameworks/libs/player/11.0目录中的playerglobal.swc,并修改了frameworks/flex-config.xml文件,将目标播放器更改为11.0.0,将swf版本更改为13 当我使用mxmlc编译ActionScript 3.0文件时,我设置了选项-target player=11.0.0和-static link runtime shared librar
frameworks/libs/player/11.0
目录中的playerglobal.swc
,并修改了frameworks/flex-config.xml
文件,将目标播放器
更改为11.0.0
,将swf版本
更改为13
当我使用mxmlc
编译ActionScript 3.0文件时,我设置了选项-target player=11.0.0
和-static link runtime shared libraries=true
。现在,在导入com.adobe.utils.AGALMiniAssembler
或flash.display.Stage3D
时,我在编译时没有遇到错误,所以我假设这没有问题
我在Opera中运行编译后的SWF文件,我使用的是今天公开发布的最新Flash播放器(版本11.0.1.152)(cheers;D)。玩家似乎没有问题,因为我可以扮演僵尸大亨。但是,当我播放SWF文件时,Stage3D不会显示;但是附加到舞台的所有其他显示对象都会显示
我相信我的配置或代码可能存在一些问题,但我无法准确指出。我使用的代码只是从中复制的。我认为视口有一些问题,所以我简单地替换了stage.stage3Ds[0]。viewport=新矩形(0,0,980,570)代码>带有stage.stage3Ds[0].x=0;stage.stage3Ds[0].y=0代码>。也许,这就是问题的原因
我一直在网上寻找解决方案,但似乎找不到。任何帮助都将不胜感激。但是请注意,我不希望使用Away3D这样的框架,因为我希望使用低级功能(我更喜欢编程)。如果您想了解更多详情,请询问。@Miha-谢谢您回答我的问题。我将wmode
参数设置为direct
,它就像一个符咒。显然,Stage3D API不能在透明
、不透明
或窗口
模式下工作。如果有人遇到类似的问题,下面是我解决问题的HTML代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"\>
<title>Hello Stage3D!</title>
</head>
<body>
<object width="800" height="600" data="HelloStage3D.swf">
<param name="wmode" value="direct"/>
</object>
</body>
</html>
你好,舞台3d!
要使用Stage3D API,必须将wmode
参数设置为direct
。没有别的办法。第9行是必需的。*确保您拥有最新的playerglobal.swc。此外,如果您以html格式观看flash电影,您可以检查wmode参数()是否正确。@Miha-谢谢。将wmode
参数设置为direct
解决了问题。