목록분류 전체보기 (167)
알맹이방
코루틴은 corutine테이블로 사용한다. 스레드들이 동시에 한번에 돌아가는 형태가 아니라 한 번에 한 코루틴만 수행된다. 코루틴의 생성 코루틴은 생성된 코루틴을 표현하는 thread 타입의 값을 반환한다. co = corutine.create(function() print("hi") end) 코루틴의 상태 suspended(중지) --> 다음에 다시 실행할 수 있음 running(실행 중) dead(종료) normal(일반) print(corutine.status(co)) suspended --- resume ---> running ------> dead yield 실행 중인 코루틴을 중지하고 나중에 다시 실행할 수 있는 상태로 바꾼다. co = corutine.create(function() for ..
1. 앉을 오브젝트를 클릭하고 오른쪽 + 버튼을 누른다음, Seat을 검색하여 추가한다. 2. 그럼 이렇게 seat 객체가 추가된다. (저는 4개를 추가하였습니다.) 3. 모델 탭의 이동을 누르고 화살표(기즈모)들이 뜨면 화살표를 당겨서 원하는 위치에 seat 객체를 옮깁니다. (저는 Dragon 위에 올려두었습니다.) 4. 만들기 부분에 아래 화살표를 눌러 "고정식 제약"을 클릭합니다. 5. 그럼 이렇게 초록색 포크같이 생긴 것이 마우스를 따라다닙니다. seat 에 두고 클릭, 그리고 고정시킬 본체에 클릭 하면 고정되어 따라다닙니다. 근데 제가 해본 결과 고정시킬 본체 안에 seat가 완벽하게 들어가있으면 고정식 제약을 사용하지 못하는 것 같습니다. 더 연구가 필요합니다. + 왜 원하는대로 안 되는지 ..
더보기 How to use and add free asset 1. 도구 상자를 찾는다. 사람마다 화면 구성이 다르니 왼쪽 오른쪽 잘 찾아보자. 2. 없다면 "보기" 에서 도구 상자가 클릭되어있는지 확인한다. 3. 필요한 에셋 이름을 검색하고 (영어, 한국어 모두 된다.) 씬에 드래그 앤 드롭한다. 4. 모델링이 탐색기에 추가된 것을 확인한다.
미리 컴파일 된 코드 루아는 실행하기 전에 코드를 미리 컴파일한다. 그래서 루아를 컴파일된 코드 형태로 배포할 수 있다. 컴파일 된 코드 형태로 배포하면 소스 코드의 잘못 수정하는 것을 막을 수 있다. 하지만 악의적으로 변형된 바이너리 코드는 루아 인터프리터나 프로그램까지 죽여버릴 수 있다. load 함수에 이런 일을 처리하기 위한 옵션이 있다. load 함수에는 필수가 아닌 인자 3개가 있는데, 세 번째 인자가 어떤 종류의 청크만 읽을 수 있게 할 것인지 제어하는 역할을 한다. 세번 째 인자에 "t"를 입력하면 텍스트로 된 보통의 소스 코드 형태의 청크만 읽어올 수 있다. "b"를 입력하면 바이너리 형태의 청크만, "bt"를 입력하면 두 형식 모두 읽을 수 있다. C언어로 작성한 코드 C언어로 구현할 ..