RenderScript 할당 생성 함수

개요

아래 함수를 사용하여 스크립트에서 할당을 만들 수 있습니다.

이러한 함수는 호출 가능 함수에서 직간접적으로 호출될 수 있습니다. 일부 제어 흐름 경로로 인해 RenderScript 커널 함수에서 이러한 함수가 호출될 수 있는 경우 컴파일러 오류가 생성됩니다.

요약

함수
rsCreateAllocation 지정된 유형의 rs_allocation 객체를 만듭니다.
rsCreateElement 지정된 데이터 유형의 rs_element 객체 생성
rsCreatePixelElement 지정된 데이터 유형 및 데이터 종류의 rs_element 객체를 만듭니다.
rsCreateType 지정된 요소 및 도형 속성으로 rs_type 객체를 만듭니다.
rsCreateVectorElement 드림 지정된 데이터 유형 및 벡터 너비의 rs_element 객체를 생성합니다.

함수

rsCreateAllocation : 지정된 유형의 rs_allocation 객체를 생성합니다.

rs_allocation rsCreateAllocation(rs_type type); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation(rs_type type, rs_allocation_mipmap_control mipmap, uint32_t 사용, void* ptr); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation(rs_type type, uint32_t 사용량); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_char4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_double4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_float4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_half4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_int4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_long4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_short4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uchar4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_uint4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ulong4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort2(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort2(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort3(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort3(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort4(uint32_t dimX); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort4(uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_allocation rsCreateAllocation_ushort4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
매개변수
type할당 유형
사용량할당 사용 플래그
밉맵
사용
득점
밝기 X
어두움
어두움

지정된 Type 및 사용법의 rs_allocation 객체를 만듭니다.

RS_ALLOCATION_USAGE_스크립트와 RS_ALLOCATION_USAGE_GRAPHICS_TEXTURE는 RenderScript 스크립트 내에서 생성된 Allocation에 유일하게 지원되는 사용 플래그입니다.

또한 rsCreateAllocation_ 래퍼 함수를 사용하여 중간 rs_element 또는 rs_type 객체를 만들지 않고 스칼라 및 벡터 숫자 유형의 Allocation을 직접 만들 수도 있습니다.

예를 들어 rsCreateAllocation_int4()는 지정된 측정기준의 int4 데이터 유형 Allocation을 반환합니다.

rsCreateElement : 지정된 데이터 유형의 rs_element 객체를 만듭니다.

rs_element rsCreateElement(int32_t data_type, int32_t data_kind, bool isNormalized, uint32_t vecSize); API 수준 24에 추가되었습니다.
rs_element rsCreateElement(rs_data_type data_type); API 수준 24에 추가되었습니다.
매개변수
데이터 유형요소의 데이터 유형
데이터_종류
isNormalized
벡터 크기

지정된 데이터 유형의 rs_element 객체를 만듭니다. 요소의 데이터 종류는 RS_KIND_USER로 설정되고 vector_width는 1로 설정되며 벡터가 아님을 나타냅니다.

rsCreatePixelElement : 지정된 데이터 유형 및 데이터 종류의 rs_element 객체를 만듭니다.

rs_element rsCreatePixelElement(rs_data_type data_type, rs_data_kind data_kind); API 수준 24에 추가되었습니다.
매개변수
데이터 유형요소의 데이터 유형
데이터_종류요소의 데이터 종류

지정된 데이터 유형 및 데이터 종류의 rs_element 객체를 만듭니다. 요소의 벡터 너비가 벡터가 아님을 나타내는 1로 설정됩니다.

rsCreateType : 지정된 요소 및 도형 속성으로 rs_type 객체를 만듭니다.

rs_type rsCreateType(rs_element 요소, uint32_t dimX); API 수준 24에 추가되었습니다.
rs_type rsCreateType(rs_element 요소, uint32_t dimX, uint32_t dimY); API 수준 24에 추가되었습니다.
rs_type rsCreateType(rs_element 요소, uint32_t dimX, uint32_t dimY, uint32_t dimZ); API 수준 24에 추가되었습니다.
rs_type rsCreateType(rs_element 요소, uint32_t dimX, uint32_t dimY, uint32_t dimZ, 부울 밉맵, 부울 화면, rs_yuv_format yuv_format); API 수준 24에 추가되었습니다.
매개변수
요소유형과 연결할 요소
밝기 XX 차원에 따른 크기
어두움Y 차원에 따른 크기
어두움Z 차원에 따른 크기
밉맵유형에 밉맵 체인이 있는지 나타내는 플래그
얼굴유형이 큐브맵인지 나타내는 플래그
yuv_format유형의 YUV 레이아웃

지정된 요소 및 도형 속성으로 rs_type 객체를 만듭니다.

dimX는 X 차원의 크기를 지정합니다.

dimY가 있고 0이 아닌 경우 Y 차원이 있고 크기를 나타냅니다.

dimZ가 있고 0이 아닌 경우 Z 차원이 존재하고 크기를 나타냅니다.

mipmaps는 LOD (정밀도)의 존재를 나타냅니다.

faces는 큐브맵 면이 있음을 나타냅니다.

yuv_format은 연결된 YUV 형식 (또는 RS_YUV_NONE)을 나타냅니다.

rsCreateVectorElement : 지정된 데이터 유형 및 벡터 너비의 rs_element 객체를 만듭니다.

rs_element rsCreateVectorElement(rs_data_type data_type, uint32_t vector_width); API 수준 24에 추가되었습니다.
매개변수
데이터 유형요소의 데이터 유형
벡터_너비벡터 너비 (2, 3 또는 4)

지정된 데이터 유형 및 벡터 너비의 rs_element 객체를 만듭니다. vector_width 값은 2, 3 또는 4여야 합니다. 요소의 데이터 종류는 RS_KIND_USER로 설정됩니다.