본문 바로가기

[Lua] Lua랑 C/C++ 사이 통신하는 방법 신조차 모독하는 사상 최대의 인터프리터 luajit 루아51이든 루아지트든 똑같다고는하는데 C++에 임베딩한 후에 뭘 해야할지 잘 모르겠었다 근데 어쩌다보니 땔질좀 하니 뭔가 되긴 하더라 그 내용을 정리해보도록 하겠다 진짜 기본 시작 세팅은 건너뛰었는데, 이부분은 나중에 글 쓸수도 있고 아닐수도 있습니다 기본 작동원리 꽤 중요한 대목이다 전공자라면 수업시간에 함수의 인수는 스택에 쌓인다는걸 배웠을 것이다 루아도 비슷한 느낌으로 스택을 사용한다 C++ 코드로, 루아에 변수를 할당하고싶다고 쳐보자. 그럼 lua_push로 시작하는 함수들을 이용해서 C++에서 계산한 값을 스택에 넣어주고, lua_setglobal같은 함수를 이용해서 스택에서 빼서 lua에 할당해준다. 예를들어보자 lua_pushnumber(.. 더보기
134. NFT 더보기
유니티 인스펙터 에디터를 내 맘대로 갖고놀아보자 일단 유니티 에디터는 MonoBehaviour을 기본으로 작동한다 근데, 이 모노비해비어를 집어넣으면 그 아래쪽에 이렇게 된다 위 처럼 간단한 것들은 [Range(a,b)]같은 애트리뷰트를 집어넣는것 만으로 해결이 되지만 버튼 하나 집어넣는것만 해도 애트리뷰트로는 해결이 안되기 시작한다 따라서 우리는 에디터 스크립트를 써야한다 Editor 요놈이 뭐하는 놈인가 싶을텐데, 역할을 요약하면 "Editor에서 모노비헤비어 인스펙터를 어떻게 보여줄지 처리 해줌" 정도로 생각하면 된다 이 코드를 특수 폴더 Script를 만들어 집어넣게 되면, [CustomEditor(typeof(Platform))] 애트리뷰트로 인해 Platform이라는 타입의 인스펙터를 PlatformEditor의 Editor가 된다 쉽게말해.. 더보기