Android Renderscript 高级 rsForEach 调用的文档

2024-03-26

我有一个关于带有 rs_script_call_t* 参数的 Android Renderscript rsForEach 函数如何工作的问题。在示例中,仅使用另一个(简单的)rsForEach 函数,因此这对我没有帮助。我想更改数组的 xStart 和 xEnd 并尝试不同的 RS_FOR_EACH_STRATEGY。我知道我必须构造一个 rs_script_call_t 结构并将字段设置为正确的值。但是,任何使用此 rsForEach 调用的尝试都会导致 SIGSEGV 和核心转储。

在 rs_script_call 结构中(在 rs_math.rsh 中):

  • xStart、xEnd、yStart、yEnd、zStart、zEnd 值指的是什么?索引还是指针?
  • arrayStart 和 arrayEnd 值指的是什么?索引还是指针?
  • 这些的默认值是多少?

是否有更多文档(或示例)解释如何正确使用 rsForEach 函数和 rs_script_call_t* 参数?


x/y/z/start/end 值是计算脚本正在处理的内存分配的索引。该结构可以将 rsForEach 调用限制为分配的子区域。

例如,对于 640x480 的分配,您可以定义 xStart = 100; x结束 = 200; y开始 = 100; yEnd = 200。然后 foreach 调用将在分配的 100x100 区域上启动。

arrayStart 和 arrayEnd 目前尚未使用,但为未来版本定义,将支持分配中的数组维度。

默认值未定义,您需要在结构中定义自己的值。如果不使用该结构,则 rsForEach 调用将作用于整个内存分配。

在 Honeycomb 中使用此功能时,有一个已知错误会导致崩溃,因此这可能是您的问题。它已在 ICS 中修复。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android Renderscript 高级 rsForEach 调用的文档 的相关文章

随机推荐