Roblox - Lua script - Basic Variable(기본 변수)
Lua Script의 특징 장점 직접적으로 인터프리트되지 않고, 바이트 코드로 컴파일되어 루아 가상 머신에서 실행 된다. 문법 배우는데 어려움 없음. 즉 문법이 간단하다. 레지스터 기반의 가상머신은 값들을 과다하게 복사하는 것을 방지, 함수를 구성하는 명령어를 줄일 수 있다. 동종 스크립트 언어 중에서 최강의 속도와 효율을 자랑한다. table 이라는 강력한 연관배열을 지원한다. 데이터 타입이 존재하지만 사용시에는 숫자, 문자열 정도만 구분하면 되며 왠만한 경우는 자동으로 변환을 수행한다. 단점 스크립트 언어라면 모두가 가지고 있는 가비지 콜렉션이 존재. 즉 메모리(사용하지 않거나 제한이 있을경우)를 자동으로 해제함. = 직접적인 메모리 관리의 어려움으로 인해 성능저하 발생할수도. 가벼운 만큼 지원하는 라이브러리가 적다. 루아에서의 변수는 선언이 필요 X ex) count = 0 (variable name) = 값 일반적으로 C/C++ 에서는 변수를 사용하려면 변수의 형(type) 을 선언해주고 사용. ex) int nCount = 0; (type) (variable name) = (type에 맞는 값); 그러한 관점에서 루아에서는 이러한 변수의 형 선언이 필요하지 않다 . 기본적인 변수 선언 후 +연산 출력 등등.. ✋ 주의사항 - 변수선언시 특수문자는 오직 "_" Underbar 만 가능 아래 출력창 보면 정상적으로 출력되는것이 보임. 위와 같이 변수를 사용한다면 전역 (Global)변수로 사용. 전역변수의 단점 - 프로그램을 종료하지 않는 한 영원히 메모리 공간을 점유 함. 잠깐 사용하고 말 변수라면 앞에 local 을 붙여 사용한다면 메모리 관리에 용이함. Freesh (Free + Finish) - 맺음말 전역(Global)변수는 따로 모아서 관리하면 좋을듯.
장점 : 블루 프린트 매크로를 사용하면 실행 핀없이 노드를 만들 수 있다는 것
하지만 ..
This is still a serious oversight in the Engine design.
A child cannot use the macros of a parent for... reasons.
Okay? I'll make a macro library.
A parent cannot use it's own macro library for... reasons.
Therefore: All macros must be made twice.
I thought the whole point of making macros and functions was to cut down on work, not double it. At this point I'm better off copy-pasing these nodes over and over again.