Подпись метода ядра Renderscript
Я пишу вопрос, в основном ожидая, что Тим Мюррей или Стивен Хайнс увидят и передадут нам некоторые знания.
Начиная с Honeycomb, в Renderscript было немало изменений, начиная с устаревания реального рендеринга и продвижения к общим вычислениям, некоторых прагм и изменений ядра, и из-за них я запутался в том, что является последним "официальным способом" написания ядра.
Существует два основных способа использования Интернета в виде примеров: пост в блоге или презентации ввода-вывода Google:
void root(const uchar4 *v_in, uchar4 *v_out, const void *usrData, uint32_t x, uint32_t y) {
а также
uchar4 __attribute__((kernel)) root(uchar4 v_in, uint32_t x, uint32_t y) {
будучи отличиями от сети вторая подпись вы должны return
выходное значение. Также есть варианты, где вы можете использовать другое имя метода (вместо root
).
Итак, главный вопрос:
каков последний "правильный" способ определения ядер?
1 ответ
2-й является предпочтительной подписью. Передача по значению позволяет компилятору оптимизировать работу. Вы можете использовать любое имя для ядра. "root" - это наследие графики, которое всегда вызывало бы ее, чтобы обновить экран.
Параметры координат являются необязательными. Вы можете опустить X & Y, если они вам не нужны.