The following RenderScript code does not work as expected.
void root(const uchar4 *v_in, uchar4 *v_out, const void *usrData, uint32_t x, uint32_t y) { float4 f4 = rsUnpackColor8888(*v_in); // unpack the color data *v_out = rsPackColorTo8888(f4); // repack the color data without changing it rsDebug("in ", v_in->x, v_in->y, v_in->z, v_in->w); rsDebug("in ", f4.x, f4.y, f4.z, f4.w); rsDebug("in ", v_out->x, v_out->y, v_out->z, v_out->w); // v_out does not equal v_in!!!!!! Each uchar > 0 is reduced by 1 } void filter() { rsForEach(gScript, gIn, gOut, 0); } This code should just copy the data unchanged but it alters every value not equal to zero! The error seems to be in rsUnpackColor8888 since a color value of 255 is converted to 0.9985 and not 1.0. -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en