프로젝트별 규칙¶
위키 정비 시 프로젝트의 코드·문서·적용 결과를 검토하여 프로젝트별 컨벤션과 핵심 안내를 정리한다. 위키에는 판단에 필요한 요약과 전용 규칙·예외를 두고, 상세 문서의 원본은 해당 프로젝트 저장소로 연결한다.
공통 C++ 파일·프로젝트 구성은 프로젝트 구조와 파일 배치에서 관리한다. 이 분류에는 각 프로젝트의 구체적인 구조·제약·예외·적용 상태를 정리한다.
프로젝트 문서¶
여러 Unity 프로젝트에서 검토할 공통안은 Unity 목차에 두며, 각 프로젝트의 구체적인 폴더 구조·예외·적용 상태는 이 분류에서 관리한다.
- RnimanEngine: 핵심 제약·컨벤션 적용 상태와 주요 원본 문서. 비공개 원본은 접근 권한이 필요하다.
- Material Forge: HTML 기본 컨벤션의 로컬 참고 근거·프로젝트 제약·미반영 상태.
포함할 내용과 원본의 역할¶
- 핵심 소개·제약: 목적·범위와 컨벤션 판단에 필요한 설계·환경 제약만 요약
- 주요 원본 링크: README·개발 안내·설계 등 진입에 필요한 문서만 연결. 추가 상세 문서는 원본 목차에서 탐색
- 공통 규칙의 예외와 프로젝트 제약: 적용할 공통 기준, 달라지는 내용과 이유, 엔진·플랫폼 API와 자원 수명에 관한 제약
프로젝트 문서는 목적·대상 환경·적용 범위를 먼저 밝히고 필요한 내용만 작성한다. 빌드 명령 전체·상세 설계·구현 설명·검증 로그·로드맵 전문은 복제하지 않는다(필수). 현재 안내는 원본의 기본 브랜치 문서로 연결하고, 과거 결정의 근거를 보존할 때만 커밋 고정 링크를 사용한다(권장). 위키 정비 시 확인한 원본 변경 중 관련 요약과 링크에 영향을 주는 내용만 갱신한다(필수). 주제별 문서는 아래 기준에 따라 필요할 때 분리한다. 공통 규칙의 상세 정의는 복제하지 않는다.
관련 문서: 언어 사용과 RAII·스마트 포인터 사용·전달은 코딩과 C++ 소유권·수명, 테스트 대상과 통과 기준은 테스트·품질을 참고한다.
새 프로젝트 문서는 이 목차에 연결하고 현재 적용·계획·미결정을 구분한다.
프로젝트 문서의 확장과 분리¶
적용 범위: 위키의 docs/projects/ 아래 문서 구성. 상태: 채택 · 이유: 작은 문서는 간단하게 유지하고, 내용이 늘어나면 프로젝트 단위로 찾아보고 갱신할 수 있게 한다.
| 상황 | 구성 기준 | 강도 |
|---|---|---|
| 내용이 짧고 한 번에 관리할 수 있음 | projects/<project-name>.md 한 파일로 시작 가능 |
선택 |
| 프로젝트 전용 컨벤션이 많아 독립적인 갱신이 필요함 | projects/<project-name>/ 폴더로 전환하고 필요한 주제부터 분리 |
권장 |
| 프로젝트 폴더 사용 | index.md를 핵심 소개·적용 상태·주요 원본과 하위 규칙 안내의 진입점으로 유지 |
필수 |
| 문서 추가 | 실제 내용이 있는 문서만 만들고 빈 주제별 파일을 미리 나열하지 않음 | 권장 |
| 경로와 링크 | 폴더·파일은 영문 소문자 kebab-case, 링크는 / 구분자의 상대 경로 사용 |
필수 |
| 상세 정의 | 같은 내용을 여러 문서에 복제하지 않고 담당 문서를 링크 | 필수 |
문서 개수보다 포함할 내용의 역할을 제한한다. 프로젝트별 문서 하나를 기본으로 하고 전용 컨벤션이 늘어날 때 분리한다. 원본 저장소의 개발·설계·에셋 문서 구조를 위키에 그대로 재현하지 않는다. 분리 시점을 고정된 줄 수나 파일 수로 정하지 않는다. 한 파일로 충분한 프로젝트는 그대로 유지할 수 있다. 폴더 안에서도 하위 분류는 문서가 더 늘어나 탐색에 도움이 될 때 추가한다.
다음은 확장 구조의 예시이며 현재 존재하는 파일 목록이나 필수 파일 목록이 아니다.
docs/projects/
├─ index.md
└─ example-project/
├─ index.md # 핵심 소개·적용 상태·주요 원본 링크
└─ conventions.md # 늘어난 전용 규칙·예외와 이유
위 구조는 전용 규칙이 늘어난 경우의 예시다. 주제 이름과 분할 범위는 실제 컨벤션 내용에 맞춘다. 실행 안내·설계 상세의 원본이 프로젝트 저장소에 있으면 위키에서 전문을 중복 관리하지 않는다. 원본과 위키의 역할은 적용 기준을 따른다.
이동할 때 확인할 사항¶
- 기존
<project-name>.md를<project-name>/index.md로 옮기고 필요한 절만 주제별 문서로 분리한다. 각 문서에 상위 목차·관련 문서 링크를 둔다. - 이 목차와
mkdocs.yml을 갱신한다. README·공통 문서 등에서 연결한 기존 파일 경로와 절 링크도 새 위치로 수정한다. - 폴더 깊이가 달라진 문서의 상대 링크를 확인하고, 해당 문서와 적용 기준 변경 기록에 이동 이유·범위를 남긴다.
- 로컬 링크와 문서 일관성을 확인하고 루트 README의 사이트 빌드 검증을 수행한다. 현재 명령은 저장소 루트에서
.venv/Scripts/python.exe scripts/build_site.py다.
위 이동·링크 갱신·검증은 필수다. 이 구성 기준의 채택만으로 기존 문서를 일괄 이동하지는 않는다.
변경 기록¶
-
2026-10-16: C++ 분류로 옮긴 소스 배치 문서의 공통 규칙 채택을 반영했다. 구체적인 트리·API·분리·써드파티 도입은 프로젝트별로 결정하며 실제 적용 결과와 구분한다. 네임스페이스는 C++ 명명 문서의 공통 규칙으로 채택하며 실제 루트 이름·모듈 구분은 프로젝트별로 결정한다.
-
2026-10-15: 소스 배치 초안의 안내에 주제별 헤더·구현 동시 배치 기본값과 공개 헤더의 조건부 분리, 여러 프로젝트·써드파티 분류를 반영했다. 분류·도입 방식은 초안이며 기존 채택 범위를 유지한다.
-
2026-10-14: C++ 소스 배치·솔루션 탐색기의 공통 초안을 연결했다. 기존 프로젝트별 구성 기준과 채택 범위는 유지한다.
-
2026-10-07: 사용자 선택에 따라 프로젝트 작업과 위키 정비의 역할을 구분했다. 프로젝트 문서는 위키 정비 시 원본을 검토해 선별한 규칙·제약·예외와 적용 상태를 정리하며, 프로젝트 변경마다 위키를 수정하는 의무를 두지 않는다. 상세 절차는 적용 기준에서 관리한다.
-
2026-09-15: RnimanEngine 참조 초안을 연결하고, 사용자 선택에 따라 프로젝트 문서의 구성·확장·분리 기준을 채택했다. 핵심 요약·전용 규칙·주요 원본 링크를 유지하며 상세 문서 복제를 금지하고, 단일 문서에서 시작해 전용 컨벤션이 늘어날 때 프로젝트별 폴더와 주제별 문서로 분리하도록 정했다. 이동 시 링크·사이트 메뉴·빌드를 확인한다. 기존 파일 배치와 공통 채택 규칙, 프로젝트별 초안 상태는 유지했다.
-
2026-09-14: 사용자 선택에 따라 설계와 프로젝트 구성·빌드의 미작성 목차를 이 문서로 통합했다. 프로젝트마다 달라지는 선택을 모아 최상위 분류를 줄였으며 세부 규칙은 미결정 상태로 유지했다.