我是Arrayfire的新手,正在寻找像2D纹理采样这样的方法。
float uvInit[] = { 0, 0, 1, 1, 1, 0, 0, 1 };
array uv = array(4, 2, uvInit, f32);
float texInit[] = { 1, 2, 3, 4 };
array tex = array(2, 2, texInit, f32);
array color = ???????;
// color should be 1d array { 1, 4, 3, 2 },
// e.g. { tex(0, 0), tex(1, 1), tex(1, 0), tex(0, 1) }.
搜索文档但没有找到这样的东西,我什至无法使用数组元素索引数组......
array s = ..., g = ...;
gfor(seq i, ...) {
auto x = g(0, i); // take an element from g.
s(x); // ERROR: no matched function.
}
在 ArrayFire 中插值的最接近的兄弟是下面页面中列出的函数。
http://arrayfire.org/docs/group__approx__mat.htm
如果你不熟悉ArrayFire/indexing,我强烈建议你阅读文档教程。
http://arrayfire.org/docs/indexing.htm
整个教程列表(可能并不全面,但是一个很好的入门(在以下 URL 中给出。
http://arrayfire.org/docs/usergroup0.htm