Script 인터페이스에는 스크립트 조작을 위한 도우미 기능들이 포함되어 있습니다.
관련 샘플 코드
기타 관련 참조 항목
관련 도움말 항목
![]() |
callstack ( ) : string![]() 현재 스크립트 호출 스택을 반환합니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
string |
현재 스크립트 호출 스택입니다. |
![]() |
configure_garbage_collection ( parameters )![]() 가비지 수집기를 구성합니다.
|
parameters : | any(string, number)+ | 가비지 수집 플래그 아래 나열되는 하나 이상의 옵션으로, 각각 해당 옵션에 대해 설정되는 값이 뒤에 붙습니다. + 표기는 지정된 유형의 인스턴스가 1개 이상 있을 수 있음을 나타냅니다. any(...) 표기는 이 항목이 괄호 내에 표시되는 어떠한 유형의 인스턴스도 될 수 있다는 의미입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
예:
stingray.Script.configure_garbage_collection(stingray.Script.MINIMUM_COLLECT_TIME_MS, 0.2, stingray.Script.MAXIMUM_GARBAGE, 0.4)
기타 관련 참조 항목
![]() |
deserialize ( string_rep ) : any(string, number, boolean, table, stingray.Vector3, stingray.Vector3Box, stingray.Matrix4x4, stingray.Matrix4x4Box, stingray.IdString32, stingray.IdString32Box, stingray.IdString64, stingray.IdString64Box)![]() Lua 오브젝트의 불투명 문자열 표현을 다시 데이터로 병렬화합니다.
|
string_rep : | string | 오브젝트로 병렬화할 문자열입니다. |
any(string, number, boolean, table, stingray.Vector3, stingray.Vector3Box, stingray.Matrix4x4, stingray.Matrix4x4Box, stingray.IdString32, stingray.IdString32Box, stingray.IdString64, stingray.IdString64Box) |
병렬화된 Lua 오브젝트입니다. any(...) 표기는 이 항목이 괄호 내에 표시되는 어떠한 유형의 인스턴스도 될 수 있다는 의미입니다. |
참고: 문자열을 serialize() 호출을 통해 생성했어야 합니다. 그렇지 않으면 오류가 발생합니다.
![]() |
exists ( resource ) : boolean![]() 스크립트가 현재 로드되어 있는 패키지에 존재하는지 확인합니다.
|
resource : | string | 필요한 Lua 스크립트의 리소스 이름입니다. |
boolean |
스크립트가 로드되어 있는 리소스에 존재하는 경우 true를 반환합니다. |
관련 샘플 코드
![]() |
index_offset ( ) : integer![]() 간격띄우기는 0 기반 색인화의 경우 0, 또는 1 기반 색인화의 경우 1(기본값)입니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
integer |
Lua 색인의 간격띄우기입니다. |
![]() |
load ( resource ) : fun(nil:any*)?![]() 표준 Lua 함수 loadstring()과 유사하지만, 대신 Lua 스크립트 리소스로부터 스크립트를 로드합니다.
|
resource : | string | 로드하려는 Lua 스크립트의 리소스 이름입니다. |
fun(nil:any*)? |
스크립트가 실행되도록 하는 익명 Lua 함수입니다. fun(...) 표기는 이 함수가 콜론(:) 왼쪽에 나와 있는 유형의 매개변수를 수용하며, 콜론 오른쪽에 나와 있는 유형을 반환한다는 것을 나타냅니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
![]() |
serialize ( data ) : string![]() Lua 데이터를 불투명 문자열 표현으로 직렬화합니다.
|
data : | any(string, number, boolean, table, stingray.Vector3, stingray.Vector3Box, stingray.Matrix4x4, stingray.Matrix4x4Box, stingray.IdString32, stingray.IdString32Box, stingray.IdString64, stingray.IdString64Box) | 직렬화하려는 Lua 오브젝트입니다. any(...) 표기는 이 항목이 괄호 내에 표시되는 어떠한 유형의 인스턴스도 될 수 있다는 의미입니다. |
string |
데이터 오브젝트의 문자열 표현입니다. |
기타 관련 참조 항목
![]() |
set_index_offset ( offset )![]() 0 기반 색인화의 경우 0으로, 또는 1 기반 색인화의 경우 1(기본값)로 간격띄우기를 설정합니다.
|
offset : | integer | Lua 색인의 간격띄우기입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
![]() |
set_temp_byte_count ( s )![]() 엔진이 생성하고 유지 관리하는 임시 오브젝트용으로 얼만큼의 버퍼를 사용 중인 것으로 고려할지 설정합니다.
|
s : | integer | 임시 오브젝트 버퍼의 메모리 크기입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
다수의 임시 오브젝트를 사용하는 함수가 있는 경우 이 호출을 사용하여 임시 버퍼를 재설정하고, 해당하는 모든 오브젝트의 리소스 점유를 풀어줄 수 있습니다. 이 함수는 해당하는 어떠한 오브젝트도 함수 호출 길이를 넘어서까지 유지되는 변수로 내보내지 않습니다. 시스템은 이 변수들을 "리소스 점유 해제" 상태로 간주하기 때문에 이 변수들에는 새 값이 할당될 수도 있습니다.
관련 샘플 코드
![]() |
set_temp_count ( s )![]() 사용되지 않습니다. 대신 set_temp_byte_count를 사용하십시오.
|
s : | integer | 임시 오브젝트 버퍼의 메모리 크기입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
엔진이 생성하고 유지 관리하는 임시 오브젝트용으로 얼만큼의 버퍼를 사용 중인 것으로 고려할지 설정합니다.
다수의 임시 오브젝트를 사용하는 함수가 있는 경우 이 호출을 사용하여 임시 버퍼를 재설정하고, 해당하는 모든 오브젝트의 리소스 점유를 풀어줄 수 있습니다. 이 함수는 해당하는 어떠한 오브젝트도 함수 호출 길이를 넘어서까지 유지되는 변수로 내보내지 않습니다. 시스템은 이 변수들을 "리소스 점유 해제" 상태로 간주하기 때문에 이 변수들에는 새 값이 할당될 수도 있습니다.
![]() |
temp_byte_count ( ) : integer![]() 임시 오브젝트를 포함하고 있는 메모리 버퍼에서 현재 사용 중인 크기를 반환합니다.
|
![]() |
temp_count ( ) : integer![]() 사용되지 않습니다. 대신 temp_byte_count()를 사용하십시오.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
integer |
임시 오브젝트 버퍼의 메모리 크기입니다. |
임시 오브젝트를 포함하고 있는 메모리 버퍼에서 현재 사용 중인 크기를 반환합니다.
![]() |
type_name ( obj ) : string![]() 지정된 오브젝트의 유형 이름을 검색합니다.
|
obj : | any | 유형을 검색하려는 오브젝트입니다. |
string |
오브젝트의 유형 이름입니다. |
이 그룹에 나열되어 있는 상수들은 stingray.Script.configure_garbage_collection()에 인수로 전달될 수 있습니다.
![]() |
ACCEPTABLE_GARBAGE : integer![]() 가비지에 사용될 수 있는 허용 가능한 가용 메모리 비율(0에서 1까지의 숫자, 퍼센트)을 지정합니다.
|
값이 0.1이면 10%를 의미합니다. 따라서 Lua가 20MB의 메모리를 사용 중이라면 2MB의 가비지 사용이 허용됩니다. 이 값이 높을수록 메모리 사용량은 증가하지만 가비지 수집에 필요한 시간은 감소합니다.
기본값은 0.1입니다.
![]() |
FORCE_FULL_COLLECT_GARBAGE_LEVEL : integer![]() 가비지가 너무 많은 가용 메모리를 점유하고 있으면 가비지 수집을 강제로 완전 중지할 수 있습니다.
|
이렇게 하면 게임도 멈춥니다. 따라서 보통은 피하고 싶은 방법이지만 가비지를 발생시키는 런어웨이 프로세스가 있는 경우에는 충돌을 피할 수 있는 방법이기도 합니다. 기본값은 1.0입니다.
![]() |
MAXIMUM_COLLECT_TIME_MS : integer![]() 최대 가비지 값에 도달하는 경우 가비지 수집에 소요되는 시간(밀리초)입니다.
|
기본값은 10입니다.
![]() |
MAXIMUM_GARBAGE : integer![]() 가비지에 사용될 수 있는 최대 가용 메모리 비율(0에서 1까지의 숫자, 퍼센트)을 지정합니다.
|
가비지 양이 이 값에 가까워질수록 각 프레임에서 가비지를 수집하는 데 점점 더 많은 시간이 사용됩니다(최대 수집 시간까지 증가).
기본값은 0.5입니다.
기타 관련 참조 항목
![]() |
MINIMUM_COLLECT_TIME_MS : integer![]() 각 프레임에서 가비지 수집에 사용되는 최소 시간(밀리초)입니다(가비지 압력이 낮은 경우).
|