Androids Renderscript的文档提升了rsForEach调用

时间:2011-08-25 13:45:12

标签: android renderscript

我有一个关于如何使用rs_script_call_t *参数的Androids Renderscript rsForEach函数的问题。在示例中,仅使用了其他(简单)rsForEach函数,因此对我没有帮助。我想更改我的数组的xStart和xEnd,并尝试使用不同的RS_FOR_EACH_STRATEGY。我知道我要构造一个rs_script_call_t结构并将字段设置为正确的值。但是,任何使用此rsForEach调用的尝试都会产生SIGSEGV和coredump。

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

  • xStart,xEnd,yStart,yEnd,zStart,zEnd值是指什么?指数或指针?
  • 引用的arrayStart和arrayEnd值是什么?指数或指针?
  • 这些的默认值是什么?

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

1 个答案:

答案 0 :(得分:1)

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

例如,对于640x480的分配,您可以定义xStart = 100; xEnd = 200; yStart = 100; yEnd = 200.然后foreach调用将在分配的100x100区域启动。

现在不使用arrayStart和arrayEnd,但是为将来的版本定义了支持分配中的数组维度。

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

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