Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Flash中获取最后渲染的屏幕光栅_Flash_Actionscript 3_Rendering - Fatal编程技术网

在Flash中获取最后渲染的屏幕光栅

在Flash中获取最后渲染的屏幕光栅,flash,actionscript-3,rendering,Flash,Actionscript 3,Rendering,在AS3中是否有方法访问舞台的最后一次渲染?渲染结果是否缓存在可访问的位置?我特别不能自己将舞台重新渲染为位图,因为这太昂贵了,这就是我尝试使用最后一次渲染的原因 我之所以需要这个,是因为我试图在屏幕的特定范围内进行一些热失真效果,而在2D中进行这项工作的标准方法是使用位移贴图抖动原始图像。当然,我也愿意接受在Flash中进行热变形的其他想法。我99.9%肯定你不能。我以前从来没有听到有人提到过那件事。不过这将是一个很棒的功能。抱歉,我知道这没有什么特别的帮助。我很确定我们没有访问此功能的权限(

在AS3中是否有方法访问舞台的最后一次渲染?渲染结果是否缓存在可访问的位置?我特别不能自己将舞台重新渲染为位图,因为这太昂贵了,这就是我尝试使用最后一次渲染的原因


我之所以需要这个,是因为我试图在屏幕的特定范围内进行一些热失真效果,而在2D中进行这项工作的标准方法是使用位移贴图抖动原始图像。当然,我也愿意接受在Flash中进行热变形的其他想法。

我99.9%肯定你不能。我以前从来没有听到有人提到过那件事。不过这将是一个很棒的功能。抱歉,我知道这没有什么特别的帮助。

我很确定我们没有访问此功能的权限(尽管我不知道为什么)。我知道flash只会在一帧到另一帧之间重新绘制舞台的变化。您可以通过右键单击Flash调试播放器并选择“显示重画区域”来查看这一点

你可以试着看看人们在用和做什么。以下是一些例子:


这些示例似乎运行良好,速度很快,尽管它们的舞台尺寸很小。

您无法访问光栅,但有一个解决方法

不要让应用程序精灵(或MovieClip)坐在舞台上,而是将应用程序精灵绘制到位图上,并将其放置在舞台上。这样,只能渲染一次,但可以从上次渲染访问位图


缺点是Flash会在每一帧中渲染所有应用程序精灵(而不仅仅是脏矩形)。

如果您不介意使用Flash Player 10,您可以尝试定制 附加到要扭曲的舞台或显示器对象的像素弯曲过滤器


但是,如果Flash像为标准过滤器那样在封面下创建缓存位图,那么性能不会比创建自己的位图更好

+1,我担心这一点,不幸的是预渲染对于我的情况不是一个好的选择(非常注重性能)。