Skip to content
This repository has been archived by the owner on Apr 10, 2024. It is now read-only.

Contributing

Mathew edited this page Oct 4, 2021 · 3 revisions

Contributing

Wiki is open for anyone to contribute to. You're welcome to add new pages to it, be responsible.

C++ Naming Convention

Entity Naming Convention
Macro SCREAMING_SNAKE_CASE
Namespace snake_case
Global Function PascalCase
Memeber Function PascalCase
Struct name PascalCase
Class name PascalCase
Enumerator camelCase
Struct Member Field camelCase
Parameter camelCase
Local Variable camelCase
Global Variable Don't

Header Guard Style: CORE_FILENAME_H

Tabs and Indents

God bless tab character. Use spaces

Indent Kind Value
Regular 4
Continuation 4
Label 0
Member of class 4
Member of namespcae 0
Visibility keywords 0

Files & Structure

  • C++ source files go to src/ folder and use .cpp extention
  • C++ header files go to include/core/ folder and use .h extention
  • C++ template implementations go to same folder as .h file they belong to and use .tpp extention
  • Headers and source files use PascalCase for names
  • Every source file must have corresponding header file.
  • Header file might be stand-alone. In this case this has to be specified in comment before header guard.

Table of contents


Architecture


Core Modules

  • Application module
  • Engine module
  • Input module
  • Scene module
  • Network module
  • Math module

Core Components

  • Transform
  • Renderer
  • Camera

Clone this wiki locally