问题标签 [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.

0 投票
1 回答
244 浏览

flash - 是否应该为使用的每个 Program3D 创建一个新的 VertexBuffer3D 和 IndexBuffer3D?

如果我有几个Program3D对象(每个对象都有自己的Vertex-ShaderFragment-Shader负责它自己的渲染任务),我是否需要实例化一个新对象VertexBuffer3DIndexBuffer3D以便它们存储仅与使用的顶点数据格式相关的数据他们对应Program3D

例如,如果我打算以不同的顶点数据格式定义四边形,例如:

我是否需要创建一个VertexBuffer3DIndexBuffer3D存储格式 A,另一个存储格式B ,另一个存储格式 C?还是可以在同一个格式中混合各种格式VertexBuffer3D,然后巧妙地(或令人困惑!)使用单一格式IndexBuffer3D来绘制三角形?

0 投票
3 回答
954 浏览

actionscript-3 - 我可以使用 Adob​​e 的“Stage3D”来提高我的 2D 应用程序和游戏的性能吗?

我一直在阅读有关Stage3D的一些信息,这将是与 Flash Player 11 一起使用的新 API。

这个 API 会以任何方式提高 2D 渲染(矢量)的性能,还是该库主要用于渲染 3D?

任何有关 Stage3D 将如何影响 2D 矢量渲染性能的信息都非常棒。

0 投票
1 回答
380 浏览

flash - 使用Context3DVertexBufferFormat.BYTES_4时,一个字段的取值范围是多少?

如果我使用字节数组方法填充顶点缓冲区:

然后使用以下格式设置顶点缓冲区属性:

Vertex 属性的字段(在本例中为va0.x、va0.y、va0.z、va0.w )的可能值范围是多少(0 ​​到 255?0.0 到 1.0?等)?写入对象的数据类型是否有所不同ByteArraywriteFloatwriteUnsignedInt)?

0 投票
1 回答
808 浏览

air - 桌面版 Adob​​e AIR 可以运行 Stage 3D 项目吗?

我很好奇 Flash Plahyer 11+ 是否能够为 Web 浏览器提供 Stage 3D 功能。

Adobe AIR 3.1 怎么样?是否也支持 Stage 3D 为桌面平台构建 3D 游戏?

0 投票
2 回答
2034 浏览

air - Stage3D 和 AIR 3

如何通过使用 Stage3D 的 Adob​​e AIR 3 在 Flash Builder 4 中设置项目?

每当我在编译器选项中添加“-swf-version=13”时,都会出现以下错误:

我在 App.xml 文件中启用了 gpu 模式,并且正在使用最新的 Flex SDK (4.6)。

类似的问题在这里被问到:

AIR 3.0 和 Stage3D

但解决方案不再有效!已接受答案中的链接只是令人讨厌地重定向到主页,您甚至无法通过查看 Google 的页面缓存版本来访问它。

也在这里:

http://www.dreaminginflash.com/2011/10/12/adobe-flex-adobe-air-3-alternativa-3d-real-3d-engine/

对我不起作用。

0 投票
2 回答
248 浏览

flash - 矩阵是否可以存在于 AGAL 中的顶点常量以外的顶点寄存器上?

我经常看到将Matrix3D对象作为 AS3 中的顶点常量寄存器传递给Context3D对象的示例。但从未在任何其他类型的寄存器(临时属性)中看到矩阵。

是否有任何方法可以将 Matrix 顶点常量复制到临时寄存器,然后使用其他提供的值(顶点属性或其他常量)操作该 Matrix 临时寄存器的各个字段(例如:用于旋转)?

一个简单的mov dest, source操作可以解决问题吗?

0 投票
1 回答
882 浏览

actionscript - 如何在stage3d中定义投影矩阵而不使用perspectiveFieldOfViewLH方法

我做了这个教程:

http://ltslashgt.com/2011/02/28/molehill-spinning-cube/

有趣的是他没有使用 perspectiveFieldOfViewLH 而是定义了自己的投影矩阵。我是 3d 编程的新手,所以在阅读了投影矩阵的这个解释之后:

http://www.songho.ca/opengl/gl_projectionmatrix.html

我试图实现我自己的矩阵,看看我是否真的理解它:

我得到了黑屏。我所做的只是用这个矩阵交换教程中的矩阵。我试着玩了一段时间,但没有结果。这是教程中的矩阵:

请注意,第一行和第二行是相同的。

0 投票
1 回答
805 浏览

flash - 如何使用 uploadFromByteArray(...) 写入 IndexBuffer3D

我真的不明白我做错了什么,但根据 Adob​​e,这是您uploadFromByteArray(...)在 IndexBuffer3D 对象上使用的方式:

我不明白的是我必须使用哪种写作方法来写我的顶点索引的整数?我试过writeFloat, writeUnsignedInt, writeInt, 甚至writeShort都失败了。我已经将我的 ByteArray 实例设置为ba.endian = Endian.LITTLE_ENDIAN,仍然不行。

在尝试将其上传到我的索引缓冲区之前,我已确保将我的 ByteArray 位置重置为 0,但没有任何显示!

如果我上传一个Vector.<uint>,那就行了!所以我知道问题不在于 AGAL 着色器。

有任何想法吗?

0 投票
2 回答
684 浏览

math - 为什么我的正交投影矩阵不起作用?

我正在尝试使用正交投影渲染位于平面(z = 0)中的一些四边形。在阅读正交投影矩阵的公式后,我确实设置了一个投影矩阵?但我认为我做错了什么。

我的第一次尝试是以下矩阵。W 和 H 是我想要的视口的宽度和高度,在以下示例中为 640x640:

这是我渲染左上角在 (0,0,0) 中的四边形时得到的结果:

不好

由于它是垂直翻转的,我将矩阵更改为:

我获得了 :

更好的


然后我试图移动我的四边形,结果出乎意料。我希望 3D 空间的 X 和 Y 与视口的 X 和 Y 相匹配。然而,当我沿 X 轴移动四边形时,发生了以下情况:

哎哟


沿 Y 轴移动给出了同样出乎意料的结果:

哎哟哎哟


如何修复我的矩阵,使 3D 空间的 X 和 Y 轴与视口的 X 轴和 Y 轴相匹配?提前谢谢了。

0 投票
1 回答
328 浏览

flash - 我们可以在 Flash 中拥有超过 4 个 stage3D 吗?

我似乎找不到比 Flash 提供的初始 4 个 stage3D 更多的方法。

我尝试使用它的构造函数实例化一个新的,然后通过简单地将它推到列表中将它添加到舞台

但这似乎不起作用,因为我的 Event.CONTEXT3D_CREATE 的 eventListener 从未被调用(如果我使用默认的 Stage3D 之一。

有没有人有解决方法或方法来实现这一点?

谢谢