buffer

사용되지 않는 항목 표시

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

버퍼는 메모리의 고정 크기 변경 가능 블록을 나타내는 개체입니다.버퍼 라이브러리는 전역 buffer 내에서 모든 기능을 제공하는 버퍼 개체의 생성 및 조작 함수를 제공합니다.

버퍼는 낮은 수준의 이진 데이터 저장 구조로 사용되도록 의도되었으며, string.pack()string.unpack()의 사용을 대체합니다.사용 사례에는 기존 바이너리 형식 읽기 및 쓰기, 더 컴팩트한 형태의 데이터 작업, 고정 길이 정수 및 부동 소수점과 같은 네이티브 메모리 유형의 일반적인 작업이 포함됩니다.

커스텀 이벤트를 통해 버퍼를 보내는 것을 포함하여 Roblox API를 통과할 때 버퍼 개체의 정체성이 유지되지 않고 대상에 복사본이 전달됩니다.다른 제한과 마찬가지로, 동일한 버퍼 개체는 여러 Actor 스크립트(평행 Luau)에서 사용할 수 없습니다.

많은 함수가 버퍼의 시작부터 바이트 오프셋을 허용합니다.버퍼 메모리 블록의 시작에서 0의 오프셋은 첫 번째 바이트에 액세스합니다.모든 오프셋, 카운트 및 크기는 음의 정수가 아닌 양의 정수여야 합니다.읽기 또는 쓰기 작업에서 액세스하는 바이트가 버퍼 메모리 밖에 있으면 오류가 발생합니다.

정수와 부동 소수점으로 작동하는 및 메서드는 작은 끝 인코딩을 사용합니다.

요약

함수

함수

create

요청된 크기의 버퍼를 생성하여 모든 바이트를 0로 초기화합니다.크기 제한은 1GB 또는 1,073,741,824바이트입니다.장치의 메모리가 부족하면 더 큰 버퍼가 할당되지 않을 수 있다는 점을 염두에 두십시오.

매개 변수

size: number

버퍼의 크기.

반환

fromstring

문자열의 콘텐츠로 초기화된 버퍼를 생성합니다. 버퍼의 크기는 문자열의 길이와 같습니다.

매개 변수

str: string

반환

tostring

버퍼 데이터를 문자열로 반환합니다.

매개 변수

반환

바이트 단위의 버퍼 크기를 반환합니다.

매개 변수

반환

readbits

버퍼에서 특정 bitCount 부터 0 까지 범위의 비트를 읽어 무표정 정수로 변환하여 버퍼에 저장합니다. Reads a range of bits into an unsigned integer from the buffer based on a specific integer from to 32, inclusive.예를 들어:

비트 너비 0 는 비트 수가 동적인 일반화된 경우에만 오류가 발생하지 않도록 지원되며, 0비트 읽기는 0 로 반환됩니다.또한 버퍼의 최대 크기가 1GB이므로 bitOffset 는 다른 버퍼 함수의 바이트 오프셋처럼 32비트 정수 숫자로 처리할 수 없습니다.

매개 변수

bitOffset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

bitCount: number

읽음정수 비트 수를 계산합니다. 이 값이 에서 까지 범위에 포함되지 않으면 오류가 발생합니다.

반환

readi8

오프셋에서 바이트를 다시 해석하여 8비트 부호 된 정수로 데이터를 읽고 숫자로 변환합니다. Reads the data from the buffer by reinterpreting bytes at the offset as an 8-bit signed integer and converting it into a number.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

반환

readu8

오프셋에서 바이트를 다시 해석하여 8비트 부호 없는 정수로 데이터를 읽고 숫자로 변환합니다. Reads the data from the buffer by reinterpreting bytes at the offset as an 8-bit unsigned integer and converting it into a number.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

반환

readi16

오프셋에서 바이트를 재해석하여 16비트 부호 된 정수로 데이터를 읽고 숫자로 변환합니다. Reads the data from the buffer by reinterpreting bytes at the offset as a 16-bit signed integer and converting it into a number.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

반환

readu16

오프셋에서 바이트를 재해석하여 16비트 부호 없는 정수로 데이터를 읽고 숫자로 변환합니다. Reads the data from the buffer by reinterpreting bytes at the offset as a 16-bit unsigned integer and converting it into a number.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

반환

readi32

오프셋에서 바이트를 재해석하여 32비트 부호 있는 정수로 데이터를 읽고 숫자로 변환합니다. Reads the data from the buffer by reinterpreting bytes at the offset as a 32-bit signed integer and converting it into a number.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

반환

readu32

오프셋에서 바이트를 재해석하여 32비트 부호 없는 정수로 데이터를 읽고 숫자로 변환합니다. Reads the data from the buffer by reinterpreting bytes at the offset as a 32-bit unsigned integer and converting it into a number.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

반환

readf32

버퍼에서 바이트를 재해석하여 오프셋에서 32비트 부동 소수점 값으로 데이터를 읽고 숫자로 변환합니다.부동 소수점 값이 NaN (숫자가 아닌)를 나타내는 모든 비트 패턴과 일치하면 반환된 값이 다른 조용한 NaN 표현으로 변환될 수 있습니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

반환

readf64

오프셋에서 바이트를 다시 해석하여 64비트 부동 소수점 값으로 데이터를 버퍼에서 읽고 숫자로 변환합니다.부동 소수점 값이 NaN (숫자가 아닌)를 나타내는 모든 비트 패턴과 일치하면 반환된 값이 다른 조용한 NaN 표현으로 변환될 수 있습니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

반환

writebits

()

특정 bitCount 정수에 따라 버퍼에 데이터를 기록하며, 포함되는 경우 0 에서 32 까지입니다.value 은 부호 없는 32비트 숫자로 처리되고 가장 중요한 비트만 bitCount 쓰여집니다.

비트 너비 0 는 비트 수가 동적인 일반화된 경우에만 오류가 발생하지 않도록 지원되며, 0비트 쓰기는 영향을 미치지 않습니다.또한 버퍼의 최대 크기가 1GB이므로 bitOffset 는 다른 버퍼 함수의 바이트 오프셋처럼 32비트 정수 숫자로 처리할 수 없습니다.

매개 변수

bitOffset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

bitCount: number

쓰기에 사용할 정수 비트 수입니다. 이 값이 에서 까지 범위에 포함되지 않으면 오류가 발생합니다.

value: number

서명되지 않은 32비트 숫자. 오직 bitCount 가장 중요한 비트만 기록됩니다.

반환

()

writei8

()

숫자를 8비트 부호 있는 정수로 변환하여 버퍼에 데이터를 기록하고 단일 바이트를 씁니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

범위 [-128, 127]의 정수 숫자입니다.

반환

()

writeu8

()

숫자를 8비트 부호 없는 정수로 변환하여 버퍼에 데이터를 기록하고 단일 바이트를 씁니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

범위 [0, 255]의 정수 숫자입니다.

반환

()

writei16

()

숫자를 16비트 부호 있는 정수로 변환하여 버퍼에 데이터를 기록하고 개별 바이트로 다시 해석합니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

범위 [-32,768, 32,767]의 정수 숫자입니다.

반환

()

writeu16

()

숫자를 16비트 부호 없는 정수로 변환하여 버퍼에 데이터를 기록하고 개별 바이트로 다시 해석합니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

범위 [0, 65,535]의 정수 숫자입니다.

반환

()

writei32

()

숫자를 32비트 부호 있는 정수로 변환하여 버퍼에 데이터를 기록하고 개별 바이트로 다시 해석하여 씁니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

범위 [-2,147,483,648, 2,147,483,647]의 정수 숫자.

반환

()

writeu32

()

숫자를 32비트 부호 없는 정수로 변환하여 버퍼에 데이터를 기록하고 개별 바이트로 다시 해석합니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

범위 [0, 4,294,967,295]의 정수 숫자.

반환

()

writef32

()

숫자를 32비트 부동 소수점 값으로 변환하여 버퍼에 데이터를 기록하고 개별 바이트로 다시 해석합니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

단일 전체 자릿수 부동 소수점 숫자입니다.

반환

()

writef64

()

숫자를 64비트 부동 소수점 값으로 변환하여 버퍼에 데이터를 기록하고 개별 바이트로 다시 해석합니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

정밀도가 높은 부동 소수점 숫자. A double-precision floating-point number.

반환

()

readstring

지정된 offset 에 있는 버퍼에서 길이가 count 인 문자열을 읽습니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

count: number

읽음길이.

반환

writestring

()

문자열에서 지정된 offset 버퍼에 데이터를 씁니다.선택적 count 가 지정되면 문자열에서 오직 count 바이트만 가져옵니다.

매개 변수

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: string

작성할 데이터.

count: number

문자열에서 가져올 바이트 수입니다. 이 값은 문자열 길이보다 클 수 없습니다.

반환

()

copy

()

복사 count 바이트를 시작하여 오프셋 source 에서 오프셋 sourceOffset 에 이르기까지 시작하여 target 에서 targetOffset 에 이르기까지 복사합니다.

sourcetarget 가 동일할 수 있습니다.동일한 버퍼 내에서 겹치는 영역을 복사하면 원본 영역이 임시 버퍼에 복사된 후 해당 버퍼가 대상으로 복사되는 것과 같습니다.

매개 변수

target: buffer

데이터를 복사할 버퍼.

targetOffset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

source: buffer

데이터를 가져올 버퍼.

sourceOffset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

기본값: 0
count: number

복사할 바이트 수. 생략하면 source 데이터가 시작되는 전체 sourceOffset 데이터가 가져옵니다.

반환

()

fill

()

지정된 offset 에서 시작하여 버퍼에 count 바이트를 설정하고 종료합니다.Sets bytes in the buffer starting at the specified to value.

매개 변수

데이터를 쓰기 위한 버퍼.

offset: number

버퍼 메모리의 시작부터 오프셋, 시작하여 0 .

value: number

범위 [0, 255]의 정수 숫자입니다.

count: number

쓰기할 바이트 수. 생략하면 지정된 오프셋 이후의 모든 바이트가 설정됩니다.

반환

()