프로젝트 소개
# Not Engine Beta 0.2.0
Not Engine은 OpenGL 기반의 코드 우선 게임 엔진으로, 개발자가 깔끔하고 단순한 코드로 처음부터 프로젝트를 구축할 수 있도록 설계되었습니다. 이 프로젝트는 기여에 열려 있으며, 풀 리퀘스트와 이슈를 환영합니다.
**중요 참고:** 2026-09-25 기준으로 제작자는 명시적으로 다음과 같이 밝힙니다: "이 엔진을 사용하지 마세요. 이건 그냥 쓰레기입니다." 채택을 고려하기 전에 이 경고를 진지하게 받아들여야 합니다.
## 지원 기능
- 스카이맵 렌더링
- PBR(물리 기반 렌더링) 셰이더
- 이벤트 시스템
- OBJ 파일 가져오기
- MTL 머티리얼 가져오기(albedo, roughness, metallic, 노멀 맵)
- 서브메시 지원
- 오디오 재생
## 성능
README에는 버전별 렌더러 최적화 개선을 보여주는 벤치마크 결과가 포함되어 있습니다:
| 버전 | 오브젝트 | 모델 | FPS | VSync |
|---|---:|---|---:|---|
| 0.1.5 | 1,000,000 | `notbox.obj` | 1 FPS | ON |
| 0.1.6 | 1,000,000 | `notbox.obj` | **30 FPS** | OFF |
| 0.1.10 | 1,000,000 | `notbox.obj` | **46 FPS** | OFF |
렌더러 최적화로 성능이 1 FPS에서 30 FPS로 향상되었습니다 — 약 30배 빨라졌습니다. 두 벤치마크 모두 동일한 장면을 사용했습니다.
### 테스트 환경
- CPU: AMD Ryzen 7 7800X3D (16) @ 5.05 GHz
- GPU: AMD Radeon RX 9070 XT [Discrete]
- 해상도: 1280×720
- 모니터: 165Hz
## 빌드
빌드에는 `cmake`, `ninja`(또는 `make`), `glfw3` 개발 패키지가 필요합니다.
### 사전 요구 사항(Linux/Ubuntu)
```bash
sudo apt update
sudo apt install cmake ninja-build libglfw3-dev build-essential
```
### 지침
CMake Presets를 사용하여 구성하고 빌드합니다:
```bash
# 구성 (Ninja Release)
cmake --preset ninja-release
# 코어 라이브러리 빌드
cmake --build --preset ninja-release-notengine
# 데모 실행 파일 빌드
cmake --build --preset ninja-release-all
```
빌드된 데모 실행:
```bash
# 기본 데모
./build/ninja-release/demo
# 장면 파일 렌더링 데모
./build/ninja-release/scene_render
# 벤치마크
./build/ninja-release/benchmark
```
## Blender 익스포터
Blender 장면은 Seno 익스포터를 사용하여 별도의 OBJ 모델, MTL 머티리얼, 텍스처를 하나의 폴더에 담아 Seno v8로 내보낼 수 있습니다. `script/blender_seno/seno_exporter.py`를 Blender 애드온으로 설치한 다음 **File → Export → Seno Scene (folder)** 를 선택하세요.
## 에셋 출처
- 스카이맵: https://ambientcg.com/view?id=DaySkyHDRI001A
## 커뮤니티
저장소에는 스타 히스토리 차트와 기여자 감사 표시가 포함되어 있어 프로젝트를 둘러싼 활발한 커뮤니티를 보여줍니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.