问题标签 [stage3d]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
actionscript-3 - Adboe AGAL 对寄存器感到困惑
我对寄存器有点困惑。
在这篇文章中, http://www.adobe.com/devnet/flashplayer/articles/what-is-agal.html
有两行 AGAL 代码
第一行将计算结果放入运算寄存器,但第二行没有操作运算寄存器,
那么做第一行是什么意思?
我还找到了一个演示:
在vertexShader中,前三行也将reslut放在op中,但第四行alos没有使用它。
那是什么意思?
谢谢
actionscript-3 - Flash MouseMove 性能问题
我的测试用例是绘制两个三角形,然后等待六毫秒。这样做时,它的 fps 为 60。
如果我在舞台上挥动鼠标,则 fps 不稳定。不活动时间会增加,我没有办法减少不活动时间。为什么会这样。
下面是几张截图。
侦察兵的屏幕截图:http: //i.stack.imgur.com/xK0xV.png
GPUView fps 图:http: //i.stack.imgur.com/XO0HQ.png
以及应用程序的代码
flash - 在 AGAL 中,当使用“kil”操作码时,DepthTest 是否会跳过该像素?
假设我正在构建一个游戏,并且有一些瓷砖地图来创建多个图层的世界。该视图将是正交的,基本上只是一个自上而下的世界视图。
我正在考虑使用深度测试来比较从上到下(逐层)绘制的精灵。(注意:我知道这可能不是解决这个问题的最佳方法,但请幽默...)
如果我有一些具有完全透明边缘的字符精灵(精灵周围的键控颜色或零 alpha),我可以在遇到这种情况时在片段着色器中使用“ kil ”操作码以确保 Quad 不呈现精灵透明部分的“洞”?(至少那是我假设会发生的事情)。
我想一个更简单的问题是......'kil'是否会忽略该像素并简单地留下上次drawTriangles()调用之前/之前的任何像素颜色?
actionscript-3 - 我可以使用 AS3 Stage3D AGAL 来实现类似 CUDA 的处理吗?
我有一个程序可以在 320x240 流运行时检测球,但是如果我流更大的分辨率,它会变得太慢。我假设如果我可以使用 GPU 来计算每个像素(以及它们的相邻帧和相邻像素),它会更快。任何人都知道我是否可以使用 AGAL 从 GPU 取回数据?
在排序中,我有下面的循环,通过帧的每个像素,我想在 GPU 上计算最多,以获得更好的性能。
flash - Flash IDE Stage3d 和硬件加速设置
使用 Flash IDE 发布 Stage3D(启用 GPU)项目时,Flash 中有一个用于硬件加速的选项。
我的问题是,如果更改此设置对您的应用程序利用 GPU 的能力有什么影响(如果有的话)?
actionscript-3 - How do I pass barycentric coordinates to an AGAL shader? (AGAL wireframe shader)
I would like to create a wire frame effect using a shader program written in AGAL for Stage3D.
I have been Googling and I understand that I can determine how close a pixel is to the edge of a triangle using barycentric coordinates (BC) passed into the fragment program via the vertex program, then colour it accordingly if it is close enough.
My confusion is in what method I would use to pass this information into the shader program. I have a simple example set up with a cube, 8 vertices and an index buffer to draw triangles between using them.
If I was to place the BC's into the vertex buffer then that wouldn't make sense as they would need to be different depending on which triangle was being rendered; e.g. Vetex1 might need (1,0,0) when rendered with Vetex2 and Vetex3, but another value when rendered with Vetex5 and Vetex6. Perhaps I am not understanding the method completely.
Do I need to duplicate vertex positions and add the aditional data into the vertex buffer, essentially making 3 vertices per triangle and tripling my vertex count? Do I always give the vertex a (1,0,0), (0,1,0) or (0,0,1) value or is this just an example? Am I over complicating this and is there an easier way to do wire-frame with shaders and Stage3d?
Hope that fully explains my problems. Answers are much appreciated, thanks!
ios - ActionScript3.0 - 如何在坐标处获取像素的颜色(uint)?(Stage3D、Flare3D)
问题在标题中:
[ActionScript3.0] 如何获取坐标像素的颜色(uint)?(Stage3D、Flare3D)
我正在使用 Flare3D 库在 iPad2 上渲染 3D 场景。每次重绘屏幕时,我都需要在 768 个不同的坐标处获取颜色值。以前,在简单的舞台 (2D) 上,我只能在转换为指定坐标的 1x1 位图上绘制它,现在它在 stage3D 上不起作用。另外,我有点担心天气会影响性能,因为我真的需要尽可能多地这样做——实际上是每次绘制屏幕时。如果当前显示的屏幕就像某个地方的位图,那就太好了,所以我可以像简单的数组一样访问它……但是,是的,我没有屏住呼吸:)
actionscript-3 - 动作脚本 navigateToURL 不适用于 stage3d
这个简单的代码对我不起作用:
稍后我希望从 flascc 打开 url,但如果这样做可以轻松完成,如果这是因为安全原因,那么还有其他方法可以做到这一点吗?我在名为decision 2 的游戏中看到他们的网址甚至在所有浏览器的调试版flash player + 中也能正常工作。因此,如果 navigateToURL 有效,则必须有其他方法可以做到这一点。
actionscript-3 - context3d.setRenderToTexture() 性能
我目前正在 stage3d 中开发 2D 游戏。性能是惊人的——我得到了 60/60 FPS,有很多精灵在屏幕上移动。
我已经开始实现后处理过滤器:我会将所有内容渲染到纹理而不是屏幕上,对其应用着色器,然后将其渲染回屏幕上。
但是我遇到了重大的性能下降 - 仅使用 setRenderToTexture 和最简单的着色器就可以达到 40 FPS。
也许我以错误的方式渲染它,或者问题是我如何渲染最终纹理。
SWF 大小为 980x600,最终纹理为 1024x1024。
这是我对这个后处理的快速而肮脏的实现:https ://gist.github.com/4616886
我使用 Axel 引擎(http://axgl.org),但代码应该对任何人都易于理解。
Gist 显示了我在 Ax.as 中更改的代码(https://github.com/arkeus/Axel/blob/master/src/org/axgl/Ax.as)
我使用了 AxCache.as 中的几个函数(https://github.com/arkeus/Axel/blob/master/src/org/axgl/util/AxCache.as)
这是我使用的 SPRITE_INDEX_BUFFER - ( https://github.com/arkeus/Axel/blob/master/src/org/axgl/AxSprite.as#L518 )
actionscript-3 - perspectiveLH 和 perspectiveFieldOfViewLH 之间有什么区别,它们都透视到 CVV 还是 NDC?
我对这两个函数有一点困惑,perspectiveLH和 perspectiveFieldOfViewLH
首先我可以推导透视LH中使用的矩阵,即
如果我理解正确,使用此矩阵可以将世界点(WPx,WPy,Wpz)透视到CVV(规范视图体积)或称为NDC(标准化设备坐标)点(CPx',CPy',CPz')
但是在 perspectiveFieldOfViewLH 中使用的矩阵是
我不明白 xScale 和 yScale 是什么意思。
我知道我们可以通过 FOV(视野)设置矩阵,但似乎我的计算不同于 1.0 / Math.tan(fieldOfViewY / 2.0)
如果您需要有关我的计算的更多信息,请查看此链接:
http://blog.csdn.net/popy007/article/details/4091967
抱歉不是用英文写的(也不是我写的)
另外,在这篇文章中的演示代码
http://www.adobe.com/devnet/flashplayer/articles/perspective-projection.html
perspectiveFieldOfViewLH 矩阵工作正常,但如果我将矩阵更改为
projectionTransform.perspectiveLH(800, 600, 0.1, 1000)
然后无法得到任何图表
但是使用普通透视矩阵或 FOV 矩阵应该得到相同的结果吧?
我对 Stage3D 渲染管道也有点困惑,如果使用这些透视图,则会将世界点转换为 CVV 点,这会变形。
Stage3D 是否会在光栅化过程中将变形图恢复正常,或者我需要手动进行。或者我对渲染管道完全错误。
谢谢