Goluwa는 게임 엔진, 프레임 워크, FFI를 활용하는 Luajit로 작성된 유틸리티 및 실험 모음입니다.
Goluwa는 4 개의 디렉토리로 나뉩니다. core > framework > engine > game . 뒤로 이동하면 각 디렉토리는 이전 디렉토리에 따라 달라 지므로 엔진 디렉토리를 삭제하면 게임 디렉토리가로드되지 않습니다.
Core/lua/boot.lua를 사용하여 Luajit | .exe 만 다운로드하여 시작하는 쉘 및 파워 쉘 스크립트
다른 바이너리 다운로드, Goluwa 업데이트 및 Goluwa 출시를 담당합니다. 대부분 LUA이지만 일부 도우미 기능은 Shell과 PowerShell을 사용합니다.
외부 공유 라이브러리에 명시적인 종속성이없는 베어 본 프레임 워크가 포함되어 있습니다. 그러나 ssl libressl을 사용합니다.
SDL, OpenGL, Openal 등을 사용하는 기본 프레임 워크는 아무것도 구현하지 않습니다. 2D 또는 3D, 게임 수학 라이브러리, 고급 소켓 라이브러리, 2D 렌더링 라이브러리 등의 렌더러가 있습니다.
엔진에는 3D 렌더러, 소스 엔진 자산 호환성, 증기 통합, 제로 레인 통합, 네트워킹, 엔티티, GUI, 마크 업 언어 등이 포함되어 있습니다.
게임 폴더에는 Goluwa, Goluwa, Chatsounds, Chatbox, Sc
Luajit에 모든 코드를 작성하는 동안 ThirdParty C 라이브러리를 사용합니다. 내 목표는 Luajit에서 C 또는 C ++ 대신 FFI로 접착제 코드 만 쓰는 것입니다.
core HTTPS 요청에 대한 Libressl 이외의 것에 대한 규모에 따라 크게 의존하지 않습니다.
framework Assimp, Libarchive, SDL 등과 같은 일부 미디어 중심 라이브러리에 달려 있습니다.
docker 설치되었다고 가정하면이 빌드를 실행할 수 있습니다.
./goluwa build " * " 그런 다음 구축 된 바이너리는 */bin/linux_x64/. 폴더.
그러나 나는 아직 Windows와 Mac에 이것을 만들 수있는 좋은 방법을 찾지 못했습니다. 이론적으로 과거에 일한 사전 빌드 바이너리를 사용할 수 있습니다.
OSX와 Windows를 지원하고 싶지만 Windows 및 OSX 머신 부족으로 인해 우선 순위가 낮습니다. 나는 VM에서 Goluwa를 테스트하고 친구에게 물어 보려고 노력하지만 그것은 내가 할 수있는 한 많은 것입니다.
Luajit에 모든 것을 쓰면 몇 가지 도전이 있습니다. 특히 집중적 인 영역에서 JIT 컴파일블 코드를 작성하려고하지만 피하려고하는 못생긴 코드에 의지하지 않으면 항상 쉬운 것은 아닙니다.