ภาพรวม
คุณสามารถใช้ฟังก์ชัน rsForEach() เพื่อเรียกใช้เคอร์เนลรูทของสคริปต์
ส่วนฟังก์ชันอื่นๆ ใช้เพื่อรับลักษณะของการเรียกใช้เคอร์เนลที่ทำงานอยู่ เช่น มิติข้อมูลและดัชนีปัจจุบัน ฟังก์ชันเหล่านี้ใช้ rs_kernel_context เป็นอาร์กิวเมนต์
สรุป
ประเภท | |
---|---|
rs_for_each_strategy_t | ลําดับการประมวลผลเซลล์ที่แนะนํา |
rs_kernel | แฮนเดิลไปยังฟังก์ชันเคอร์เนล |
rs_kernel_context | แฮนเดิลสำหรับบริบทการเรียกใช้เคอร์เนล |
rs_script_call_t | ข้อมูลการทำซ้ำของเซลล์ |
ฟังก์ชัน | |
---|---|
rsForEach | เปิดใช้งานเคอร์เนล |
rsForEachInternal | (API ภายใน) เปิดใช้งานเคอร์เนลในสคริปต์ปัจจุบัน (พร้อมหมายเลขช่อง) |
rsForEachWithOptions | เปิดเคอร์เนลพร้อมตัวเลือก |
rsGetArray0 | ดัชนีในมิติข้อมูล Array0 สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetArray1 | ดัชนีในมิติข้อมูล Array1 สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetArray2 | ดัชนีในมิติข้อมูล Array2 สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetArray3 | ดัชนีในมิติข้อมูล Array3 สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimArray0 | ขนาดของมิติข้อมูล Array0 สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimArray1 | ขนาดของมิติข้อมูล Array1 สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimArray2 | ขนาดของมิติข้อมูล Array2 สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimArray3 | ขนาดของมิติข้อมูล Array3 สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimHasFaces | มีใบหน้ามากกว่า 1 ใบหน้าสำหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimLod | จำนวนระดับรายละเอียดสำหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimX | ขนาดของมิติข้อมูล X สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimY | ขนาดของมิติข้อมูล Y สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetDimZ | ขนาดของมิติข้อมูล Z สําหรับบริบทเคอร์เนลที่ระบุ |
rsGetFace | พิกัดของใบหน้าสําหรับบริบทเคอร์เนลที่ระบุ |
rsGetLod | ดัชนีในมิติข้อมูลระดับรายละเอียดสําหรับบริบทเคอร์เนลที่ระบุ |
ประเภท
rs_for_each_strategy_t : ลําดับการประมวลผลเซลล์ที่แนะนํา
อาร์เรย์แบบจำกัดที่มีค่าต่อไปนี้
RS_FOR_EACH_STRATEGY_SERIAL = 0 | โปรดใช้พื้นที่หน่วยความจำที่ต่อเนื่องกัน |
---|---|
RS_FOR_EACH_STRATEGY_DONT_CARE = 1 | ไม่มีค่ากําหนด |
RS_FOR_EACH_STRATEGY_DST_LINEAR = 2 | ต้องการใช้ DST |
RS_FOR_EACH_STRATEGY_TILE_SMALL = 3 | แนะนำให้ประมวลผลพื้นที่สี่เหลี่ยมผืนผ้าขนาดเล็ก |
RS_FOR_EACH_STRATEGY_TILE_MEDIUM = 4 | แนะนำให้ประมวลผลภูมิภาคสี่เหลี่ยมผืนผ้าขนาดกลาง |
RS_FOR_EACH_STRATEGY_TILE_LARGE = 5 | แนะนำให้ประมวลผลพื้นที่สี่เหลี่ยมผืนผ้าขนาดใหญ่ |
ประเภทนี้ใช้เพื่อแนะนำวิธีที่เคอร์เนลที่เรียกใช้ควรวนซ้ำเซลล์ของการจัดสรร นี่เป็นเพียงคำแนะนำเท่านั้น การติดตั้งใช้งานอาจไม่เป็นไปตามคำแนะนำ
ข้อกําหนดนี้ช่วยในลักษณะการแคชของเคิร์ดที่ทํางาน เช่น ความเป็นตําแหน่งแคชเมื่อมีการกระจายการประมวลผลไปยังหลายแกน
rs_kernel : แฮนเดิลไปยังฟังก์ชันเคอร์เนล
typedef ของ: void* เพิ่มใน API ระดับ 24
ประเภททึบสำหรับฟังก์ชันที่กําหนดด้วยแอตทริบิวต์เคอร์เนล ค่าประเภทนี้สามารถใช้ในการเรียก rsForEach เพื่อเปิดใช้งานเคอร์เนล
rs_kernel_context : แฮนเดิลสำหรับบริบทการเรียกใช้เคอร์เนล
typedef ของ: const struct rs_kernel_context_t * เพิ่มใน API ระดับ 23
บริบทเคอร์เนลมีลักษณะทั่วไปของการจัดสรรที่วนซ้ำ เช่น มิติข้อมูล นอกจากนี้ยังมีดัชนีของเซลล์ที่ประมวลผลอยู่ในปัจจุบันซึ่งไม่ค่อยได้ใช้ เช่น ดัชนี Array0 หรือระดับรายละเอียดปัจจุบัน
คุณสามารถเข้าถึงบริบทเคอร์เนลได้โดยเพิ่มพารามิเตอร์พิเศษชื่อ "context" ประเภท rs_kernel_context ลงในฟังก์ชันเคอร์เนล ดูตัวอย่างได้ที่ rsGetDimX() และ rsGetArray0()
rs_script_call_t : ข้อมูลการวนซ้ำของเซลล์
โครงสร้างที่มีช่องต่อไปนี้
กลยุทธ์ rs_for_each_strategy_t | ละเว้นอยู่ในขณะนี้ ในอนาคตจะเป็นกลยุทธ์การวนซ้ำเซลล์ที่แนะนํา |
---|---|
uint32_t xStart | ดัชนีเริ่มต้นในมิติข้อมูล X |
uint32_t xEnd | ดัชนีสิ้นสุด (ไม่รวม) ในมิติข้อมูล X |
uint32_t yStart | ดัชนีเริ่มต้นในมิติข้อมูล Y |
uint32_t yEnd | ดัชนีสิ้นสุด (ไม่รวม) ในมิติข้อมูล Y |
uint32_t zStart | ดัชนีเริ่มต้นในมิติข้อมูล Z |
uint32_t zEnd | ดัชนีสิ้นสุด (ไม่รวม) ในมิติข้อมูล Z |
uint32_t arrayStart | ดัชนีเริ่มต้นในมิติข้อมูล Array0 |
uint32_t arrayEnd | ดัชนีสิ้นสุด (ไม่รวม) ในมิติข้อมูล Array0 |
uint32_t array1Start | ดัชนีเริ่มต้นในมิติข้อมูล Array1 |
uint32_t array1End | ดัชนีสิ้นสุด (ไม่รวม) ในมิติข้อมูล Array1 |
uint32_t array2Start | ดัชนีเริ่มต้นในมิติข้อมูล Array2 |
uint32_t array2End | ดัชนีสิ้นสุด (ไม่รวม) ในมิติข้อมูล Array2 |
uint32_t array3Start | ดัชนีเริ่มต้นในมิติข้อมูล Array3 |
uint32_t array3End | ดัชนีสิ้นสุด (ไม่รวม) ในมิติข้อมูล Array3 |
โครงสร้างนี้ใช้เพื่อระบุข้อมูลการวนซ้ำให้กับการเรียก rsForEach ปัจจุบันใช้เพื่อจํากัดการประมวลผลให้เฉพาะเซลล์ชุดย่อย ในเวอร์ชันในอนาคต ระบบจะใช้คำอธิบายประกอบนี้เพื่อแสดงคำแนะนำเกี่ยวกับวิธีที่ดีที่สุดในการวนซ้ำเซลล์ด้วย
ฟิลด์ "เริ่มต้น" จะนับรวมและฟิลด์ "สิ้นสุด" จะไม่นับรวม เช่น หากต้องการวนซ้ำเซลล์ที่ 4, 5, 6 และ 7 ในมิติข้อมูล X ให้ตั้งค่า xStart เป็น 4 และ xEnd เป็น 8
ฟังก์ชัน
rsForEach : เปิดใช้งานเคอร์เนล
void rsForEach(rs_kernel kernel, ... ...); | เพิ่มใน API ระดับ 24 |
void rsForEach(rs_script script, rs_allocation input, rs_allocation output); | API ระดับ 14 - 23 |
void rsForEach(rs_script script, rs_allocation input, rs_allocation output, const void* usrData); | นำออกจาก API ระดับ 14 ขึ้นไป |
void rsForEach(rs_script script, rs_allocation input, rs_allocation output, const void* usrData, const rs_script_call_t* sc); | นำออกจาก API ระดับ 14 ขึ้นไป |
void rsForEach(rs_script script, rs_allocation input, rs_allocation output, const void* usrData, size_t usrDataLen); | API ระดับ 14 - 20 |
void rsForEach(rs_script script, rs_allocation input, rs_allocation output, const void* usrData, size_t usrDataLen, const rs_script_call_t* sc); | API ระดับ 14 - 20 |
พารามิเตอร์
สคริปต์ | สคริปต์เพื่อโทร |
---|---|
อินพุต | แหล่งที่มาของข้อมูล |
เอาต์พุต | การจัดสรรเพื่อเขียนวันที่ |
usrData | ข้อมูลที่ผู้ใช้กําหนดเพื่อส่งไปยังสคริปต์ อาจเป็นค่า Null |
sc | ข้อมูลเพิ่มเติมสำหรับการควบคุมที่ใช้เลือกภูมิภาคย่อยของการแบ่งสรรที่จะประมวลผลหรือแนะนำกลยุทธ์การเดิน อาจเป็นค่า Null |
usrDataLen | ขนาดของโครงสร้าง userData ซึ่งจะใช้เพื่อทําสําเนาข้อมูลแบบไม่เจาะลึก หากจําเป็น |
เคอร์เนล | ตัวระบุฟังก์ชันไปยังฟังก์ชันที่กําหนดด้วยแอตทริบิวต์เคอร์เนล |
... | การจัดสรรอินพุตและเอาต์พุต |
เรียกใช้เคอร์เนลกับการจองอินพุตตั้งแต่ 0 รายการขึ้นไป โดยระบบจะส่งอาร์กิวเมนต์เหล่านี้ต่อจากอาร์กิวเมนต์ rs_kernel หากเคอร์เนลที่ระบุแสดงผลค่า คุณต้องระบุการจัดสรรเอาต์พุตเป็นอาร์กิวเมนต์สุดท้าย การจัดสรรอินพุตทั้งหมดและการจัดสรรเอาต์พุต (หากมี) ต้องมีมิติข้อมูลเดียวกัน
นี่เป็นฟังก์ชันแบบซิงค์ การเรียกใช้ฟังก์ชันนี้จะแสดงผลหลังจากที่งานทั้งหมดเสร็จสมบูรณ์แล้วสำหรับเซลล์ทั้งหมดของการจัดสรรอินพุต หากฟังก์ชันเคอร์เนลแสดงผลค่าใดๆ การเรียกจะรอจนกว่าระบบจะเขียนผลลัพธ์ทั้งหมดไปยังการจัดสรรเอาต์พุต
จนถึง API ระดับ 23 ระบบจะระบุเคอร์เนลโดยนัยว่าเป็นเคอร์เนลที่มีชื่อว่า "root" ในสคริปต์ที่ระบุ และจะใช้การจัดสรรอินพุตได้เพียงรายการเดียว ตั้งแต่ API ระดับ 24 เป็นต้นไป คุณจะใช้ฟังก์ชัน Kernel ใดก็ได้ตามที่ระบุโดยอาร์กิวเมนต์ Kernel ระบบจะนำอาร์กิวเมนต์สคริปต์ออก โดยต้องกำหนดเคอร์เนลในสคริปต์ปัจจุบัน นอกจากนี้ คุณยังใช้อินพุตได้มากกว่า 1 รายการ
เช่น
float __attribute__((kernel)) square(float a) {
return a * a;
}
void compute(rs_allocation ain, rs_allocation aout) {
rsForEach(square, ain, aout);
}
rsForEachInternal : (API ภายใน) เปิดใช้งานเคอร์เนลในสคริปต์ปัจจุบัน (พร้อมหมายเลขช่อง)
void rsForEachInternal(int slot, rs_script_call_t* options, int hasOutput, int numInputs, rs_allocation* allocs); | เพิ่มใน API ระดับ 24 |
พารามิเตอร์
ช่วงเวลา | |
---|---|
ตัวเลือก | |
hasOutput | ระบุว่าเคอร์เนลสร้างเอาต์พุตหรือไม่ |
numInputs | จํานวนการกําหนดอินพุต |
allocs | การจัดสรรอินพุตและเอาต์พุต |
API ภายในสำหรับเปิดใช้งานเคอร์เนล
rsForEachWithOptions : เปิดใช้งานเคอร์เนลพร้อมตัวเลือก
void rsForEachWithOptions(rs_kernel kernel, rs_script_call_t* options, ... ...); | เพิ่มใน API ระดับ 24 |
พารามิเตอร์
เคอร์เนล | ตัวระบุฟังก์ชันของฟังก์ชันที่กําหนดด้วยแอตทริบิวต์เคอร์เนล |
---|---|
ตัวเลือก | ตัวเลือกการเริ่ม |
... | การจัดสรรอินพุตและเอาต์พุต |
เปิดใช้งานเคอร์เนลในลักษณะที่คล้ายกับ rsForEach อย่างไรก็ตาม ฟังก์ชันนี้จะประมวลผลเฉพาะเซลล์ในพาร์ทเนอร์ย่อยของพื้นที่อินเด็กซ์ที่ระบุไว้ในตัวเลือกแทนที่จะประมวลผลเซลล์ทั้งหมดในอินพุต เมื่อระบุพื้นที่ดัชนีอย่างชัดเจนด้วยตัวเลือก คุณไม่จําเป็นต้องจัดสรรอินพุตหรือเอาต์พุตสําหรับการเริ่มใช้งานเคอร์เนลโดยใช้ API นี้ หากมีการส่งการจัดสรร การจัดสรรต้องตรงกับจํานวนอาร์กิวเมนต์และค่าที่ฟังก์ชันเคอร์เนลคาดไว้ การจัดสรรเอาต์พุตจะแสดงอยู่ก็ต่อเมื่อเคอร์เนลมีค่าที่แสดงผลที่ไม่ใช่ void
เช่น
rs_script_call_t opts = {0};
opts.xStart = 0;
opts.xEnd = dimX;
opts.yStart = 0;
opts.yEnd = dimY / 2;
rsForEachWithOptions(foo, &opts, out, out);
rsGetArray0 : ดัชนีในมิติข้อมูล Array0 สำหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetArray0(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
ส่งคืนดัชนีในมิติข้อมูล Array0 ของเซลล์ที่ประมวลผล ตามที่ระบุโดยบริบทเคอร์เนลที่ระบุ
บริบทเคอร์เนลมีลักษณะทั่วไปของการจัดสรรที่วนซ้ำและอินเด็กซ์ที่ไม่ค่อยได้ใช้ เช่น อินเด็กซ์ Array0
คุณสามารถเข้าถึงบริบทเคอร์เนลได้โดยเพิ่มพารามิเตอร์พิเศษชื่อ "context" ประเภท rs_kernel_context ลงในฟังก์ชันเคอร์เนล เช่น
short RS_KERNEL myKernel(short value, uint32_t x, rs_kernel_context context) {
// The current index in the common x, y, z dimensions are accessed by
// adding these variables as arguments. For the more rarely used indices
// to the other dimensions, extract them from the kernel context:
uint32_t index_a0 = rsGetArray0(context);
//...
}
ฟังก์ชันนี้จะแสดงผล 0 หากไม่มีมิติข้อมูล Array0
rsGetArray1 : ดัชนีในมิติข้อมูล Array1 สําหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetArray1(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลดัชนีในมิติข้อมูล Array1 ของเซลล์ที่ประมวลผล ตามที่ระบุโดยบริบทเคอร์เนลที่ระบุ ดูคำอธิบายบริบทได้ที่ rsGetArray0()
แสดงผล 0 หากไม่มีมิติข้อมูล Array1
rsGetArray2 : ดัชนีในมิติข้อมูล Array2 สำหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetArray2(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลดัชนีในมิติข้อมูล Array2 ของเซลล์ที่ประมวลผล ตามที่ระบุโดยบริบทเคอร์เนลที่ระบุ ดูคำอธิบายบริบทได้ที่ rsGetArray0()
แสดงผลเป็น 0 หากไม่มีมิติข้อมูล Array2
rsGetArray3 : ดัชนีในมิติข้อมูล Array3 สำหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetArray3(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลดัชนีในมิติข้อมูล Array3 ของเซลล์ที่ประมวลผล ตามที่ระบุโดยบริบทเคอร์เนลที่ระบุ ดูคำอธิบายบริบทได้ที่ rsGetArray0()
แสดงผลเป็น 0 หากไม่มีมิติข้อมูล Array3
rsGetDimArray0 : ขนาดของมิติข้อมูล Array0 สําหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetDimArray0(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลขนาดของมิติข้อมูล Array0 สําหรับบริบทเคอร์เนลที่ระบุ ดูคําอธิบายบริบทได้ที่ rsGetDimX()
แสดงผลเป็น 0 หากไม่มีมิติข้อมูล Array0
rsGetDimArray1 : ขนาดของมิติข้อมูล Array1 สําหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetDimArray1(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลขนาดของมิติข้อมูล Array1 สําหรับบริบทเคอร์เนลที่ระบุ ดูคําอธิบายบริบทได้ที่ rsGetDimX()
แสดงผล 0 หากไม่มีมิติข้อมูล Array1
rsGetDimArray2 : ขนาดของมิติข้อมูล Array2 สําหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetDimArray2(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลขนาดของมิติข้อมูล Array2 สําหรับบริบทเคอร์เนลที่ระบุ ดูคําอธิบายบริบทได้ที่ rsGetDimX()
แสดงผลเป็น 0 หากไม่มีมิติข้อมูล Array2
rsGetDimArray3 : ขนาดของมิติข้อมูล Array3 สําหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetDimArray3(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลขนาดของมิติข้อมูล Array3 สําหรับบริบทเคอร์เนลที่ระบุ ดูคําอธิบายบริบทได้ที่ rsGetDimX()
แสดงผลเป็น 0 หากไม่มีมิติข้อมูล Array3
rsGetDimHasFaces : การมีใบหน้ามากกว่า 1 ใบหน้าสำหรับบริบทเคอร์เนลที่ระบุ
bool rsGetDimHasFaces(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
คิกรีเทิร์น
แสดงผลเป็น "จริง" หากมีหน้าปัดมากกว่า 1 หน้า หากไม่ใช่จะแสดงผลเป็น "เท็จ" |
หากเคอร์เนลกำลังวนซ้ำภาพลูกบาศก์ ฟังก์ชันนี้จะแสดงผลเป็น "จริง" หากมีมากกว่า 1 หน้า ในกรณีอื่นๆ ทั้งหมด ระบบจะแสดงผลเป็น "เท็จ" ดูคำอธิบายบริบทได้ที่ rsGetDimX()
rsAllocationGetDimFaces() คล้ายกัน แต่จะแสดงผลเป็น 0 หรือ 1 แทนบูลีน
rsGetDimLod : จำนวนระดับรายละเอียดสำหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetDimLod(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลจํานวนระดับรายละเอียดสําหรับบริบทเคอร์เนลที่ระบุ ซึ่งมีประโยชน์สำหรับ MIPMAP ดูคําอธิบายบริบทได้ที่ rsGetDimX()
แสดงผลเป็น 0 หากไม่ได้ใช้ระดับรายละเอียด
rsAllocationGetDimLOD() คล้ายกัน แต่จะแสดงผลเป็น 0 หรือ 1 แทนจำนวนระดับจริง
rsGetDimX : ขนาดของมิติข้อมูล X สําหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetDimX(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลขนาดของมิติข้อมูล X สําหรับบริบทเคอร์เนลที่ระบุ
บริบทเคอร์เนลมีลักษณะทั่วไปของการจัดสรรที่วนซ้ำและอินเด็กซ์ที่ไม่ค่อยได้ใช้ เช่น อินเด็กซ์ Array0
คุณสามารถเข้าถึงได้โดยเพิ่มพารามิเตอร์พิเศษชื่อ "context" ประเภท rs_kernel_context ลงในฟังก์ชันเคอร์เนล เช่น
int4 RS_KERNEL myKernel(int4 value, rs_kernel_context context) {
uint32_t size = rsGetDimX(context); //...
หากต้องการดูมิติข้อมูลของการกําหนดเฉพาะ ให้ใช้ rsAllocationGetDimX()
rsGetDimY : ขนาดของมิติข้อมูล Y สำหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetDimY(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลขนาดของมิติข้อมูล X สําหรับบริบทเคอร์เนลที่ระบุ ดูคําอธิบายบริบทได้ที่ rsGetDimX()
แสดงผลเป็น 0 หากไม่มีมิติข้อมูล Y
หากต้องการดูมิติข้อมูลของการจัดสรรที่เฉพาะเจาะจง ให้ใช้ rsAllocationGetDimY()
rsGetDimZ : ขนาดของมิติข้อมูล Z สําหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetDimZ(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลขนาดของมิติข้อมูล Z สําหรับบริบทเคอร์เนลที่ระบุ ดูคําอธิบายบริบทได้ที่ rsGetDimX()
แสดงผลเป็น 0 หากไม่มีมิติข้อมูล Z
หากต้องการดูมิติข้อมูลของการจัดสรรที่เฉพาะเจาะจง ให้ใช้ rsAllocationGetDimZ()
rsGetFace : พิกัดของใบหน้าสำหรับบริบทเคอร์เนลที่ระบุ
rs_allocation_cubemap_face rsGetFace(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลใบหน้าที่พบเซลล์ที่ประมวลผล ตามที่ระบุโดยบริบทเคอร์เนลที่ระบุ ดูคำอธิบายบริบทได้ที่ rsGetArray0()
แสดงผล RS_ALLOCATION_CUBEMAP_FACE_POSITIVE_X หากไม่มีมิติข้อมูลใบหน้า
rsGetLod : ดัชนีในมิติข้อมูลระดับรายละเอียดสำหรับบริบทเคอร์เนลที่ระบุ
uint32_t rsGetLod(rs_kernel_context context); | เพิ่มใน API ระดับ 23 |
แสดงผลดัชนีในมิติข้อมูลระดับรายละเอียดของเซลล์ที่ประมวลผล ตามที่ระบุโดยบริบทเคอร์เนลที่ระบุ ดูคำอธิบายบริบทได้ที่ rsGetArray0()
แสดงผลเป็น 0 หากไม่มีมิติข้อมูลระดับรายละเอียด