|
ShitEngine
基于 C++20 与 SDL3 的轻量级 2D 游戏引擎
|
类 | |
| class | Animation |
| 逐帧动画数据 更多... | |
| class | AnimationComponent |
| 动画组件 更多... | |
| class | AudioManager |
| class | AudioPlayer |
| class | AudioTrack |
| class | AudioTrackGroup |
| class | Behavior |
| 行为基类 —— 用于编写自定义游戏逻辑 更多... | |
| class | BehaviorSystem |
| Behavior 驱动系统 更多... | |
| class | CameraComponent |
| 相机组件,定义"从哪个角度观察世界" 更多... | |
| class | Component |
| 组件基类 更多... | |
| class | Config |
| 配置管理类 更多... | |
| struct | Event |
| 事件基类,所有自定义事件须继承此结构体 更多... | |
| class | EventBus |
| 事件总线,缓冲队列模式 更多... | |
| class | FontManager |
| class | Game |
| 引擎主控类 更多... | |
| class | GameObject |
| 游戏物体类 更多... | |
| class | Input |
| 输入管理类(单例) 更多... | |
| class | Log |
| 日志封装类 更多... | |
| class | Prefab |
| 预制体,可重复生成相同配置的 GameObject 更多... | |
| struct | ProjectConfig |
| 项目配置 更多... | |
| class | Renderer |
| 渲染器,封装 SDL3 绘制 API 更多... | |
| class | RendererComponent |
| 渲染组件基类 更多... | |
| class | RenderSystem |
| 渲染系统 更多... | |
| class | ResourceManager |
| 资源管理器(单例) 更多... | |
| class | Scene |
| 场景类 更多... | |
| class | SceneManager |
| 场景管理器(单例) 更多... | |
| class | Sprite |
| 精灵数据,描述"画什么" 更多... | |
| class | SpriteRenderer |
| 精灵组件 更多... | |
| class | SpriteSheet |
| 精灵图集(sprite-sheet)网格切割器 更多... | |
| class | System |
| System 基类 更多... | |
| class | TextureManager |
| 纹理管理器 更多... | |
| class | Time |
| 时间管理类 更多... | |
| class | TransformComponent |
| 变换组件,决定 GameObject 的位置 / 缩放 / 旋转 更多... | |
| class | Window |
| 窗口管理类 更多... | |
| struct | WindowConfig |
| 窗口配置 更多... | |
类型定义 | |
| using | Json = nlohmann::json |
| using | Vector2 = glm::vec2 |
枚举 | |
| enum class | KeyCode : int { Unknown = SDL_SCANCODE_UNKNOWN , A = SDL_SCANCODE_A , B = SDL_SCANCODE_B , C = SDL_SCANCODE_C , D = SDL_SCANCODE_D , E = SDL_SCANCODE_E , F = SDL_SCANCODE_F , G = SDL_SCANCODE_G , H = SDL_SCANCODE_H , I = SDL_SCANCODE_I , J = SDL_SCANCODE_J , K = SDL_SCANCODE_K , L = SDL_SCANCODE_L , M = SDL_SCANCODE_M , N = SDL_SCANCODE_N , O = SDL_SCANCODE_O , P = SDL_SCANCODE_P , Q = SDL_SCANCODE_Q , R = SDL_SCANCODE_R , S = SDL_SCANCODE_S , T = SDL_SCANCODE_T , U = SDL_SCANCODE_U , V = SDL_SCANCODE_V , W = SDL_SCANCODE_W , X = SDL_SCANCODE_X , Y = SDL_SCANCODE_Y , Z = SDL_SCANCODE_Z , Num1 = SDL_SCANCODE_1 , Num2 = SDL_SCANCODE_2 , Num3 = SDL_SCANCODE_3 , Num4 = SDL_SCANCODE_4 , Num5 = SDL_SCANCODE_5 , Num6 = SDL_SCANCODE_6 , Num7 = SDL_SCANCODE_7 , Num8 = SDL_SCANCODE_8 , Num9 = SDL_SCANCODE_9 , Num0 = SDL_SCANCODE_0 , Return = SDL_SCANCODE_RETURN , Escape = SDL_SCANCODE_ESCAPE , Backspace = SDL_SCANCODE_BACKSPACE , Tab = SDL_SCANCODE_TAB , Space = SDL_SCANCODE_SPACE , Minus = SDL_SCANCODE_MINUS , Equals = SDL_SCANCODE_EQUALS , LeftBracket = SDL_SCANCODE_LEFTBRACKET , RightBracket = SDL_SCANCODE_RIGHTBRACKET , Backslash = SDL_SCANCODE_BACKSLASH , NonUSH = SDL_SCANCODE_NONUSHASH , Semicolon = SDL_SCANCODE_SEMICOLON , Apostrophe = SDL_SCANCODE_APOSTROPHE , Grave = SDL_SCANCODE_GRAVE , Comma = SDL_SCANCODE_COMMA , Period = SDL_SCANCODE_PERIOD , Slash = SDL_SCANCODE_SLASH , CapsLock = SDL_SCANCODE_CAPSLOCK , F1 = SDL_SCANCODE_F1 , F2 = SDL_SCANCODE_F2 , F3 = SDL_SCANCODE_F3 , F4 = SDL_SCANCODE_F4 , F5 = SDL_SCANCODE_F5 , F6 = SDL_SCANCODE_F6 , F7 = SDL_SCANCODE_F7 , F8 = SDL_SCANCODE_F8 , F9 = SDL_SCANCODE_F9 , F10 = SDL_SCANCODE_F10 , F11 = SDL_SCANCODE_F11 , F12 = SDL_SCANCODE_F12 , PrintScreen = SDL_SCANCODE_PRINTSCREEN , ScrollLock = SDL_SCANCODE_SCROLLLOCK , Pause = SDL_SCANCODE_PAUSE , Insert = SDL_SCANCODE_INSERT , Home = SDL_SCANCODE_HOME , PageUp = SDL_SCANCODE_PAGEUP , Delete = SDL_SCANCODE_DELETE , End = SDL_SCANCODE_END , PageDown = SDL_SCANCODE_PAGEDOWN , Right = SDL_SCANCODE_RIGHT , Left = SDL_SCANCODE_LEFT , Down = SDL_SCANCODE_DOWN , Up = SDL_SCANCODE_UP , NumLockClear = SDL_SCANCODE_NUMLOCKCLEAR , KP_Divide = SDL_SCANCODE_KP_DIVIDE , KP_Multiply = SDL_SCANCODE_KP_MULTIPLY , KP_Minus = SDL_SCANCODE_KP_MINUS , KP_Plus = SDL_SCANCODE_KP_PLUS , KP_Enter = SDL_SCANCODE_KP_ENTER , KP_1 = SDL_SCANCODE_KP_1 , KP_2 = SDL_SCANCODE_KP_2 , KP_3 = SDL_SCANCODE_KP_3 , KP_4 = SDL_SCANCODE_KP_4 , KP_5 = SDL_SCANCODE_KP_5 , KP_6 = SDL_SCANCODE_KP_6 , KP_7 = SDL_SCANCODE_KP_7 , KP_8 = SDL_SCANCODE_KP_8 , KP_9 = SDL_SCANCODE_KP_9 , KP_0 = SDL_SCANCODE_KP_0 , KP_Period = SDL_SCANCODE_KP_PERIOD , NonUSBackslash = SDL_SCANCODE_NONUSBACKSLASH , Application = SDL_SCANCODE_APPLICATION , Power = SDL_SCANCODE_POWER , KP_Equals = SDL_SCANCODE_KP_EQUALS , F13 = SDL_SCANCODE_F13 , F14 = SDL_SCANCODE_F14 , F15 = SDL_SCANCODE_F15 , F16 = SDL_SCANCODE_F16 , F17 = SDL_SCANCODE_F17 , F18 = SDL_SCANCODE_F18 , F19 = SDL_SCANCODE_F19 , F20 = SDL_SCANCODE_F20 , F21 = SDL_SCANCODE_F21 , F22 = SDL_SCANCODE_F22 , F23 = SDL_SCANCODE_F23 , F24 = SDL_SCANCODE_F24 , Sleep = SDL_SCANCODE_SLEEP , Wake = SDL_SCANCODE_WAKE , MediaPlay = SDL_SCANCODE_MEDIA_PLAY , MediaPause = SDL_SCANCODE_MEDIA_PAUSE , MediaRecord = SDL_SCANCODE_MEDIA_RECORD , MediaNext = SDL_SCANCODE_MEDIA_NEXT_TRACK , MediaPrev = SDL_SCANCODE_MEDIA_PREVIOUS_TRACK , MediaStop = SDL_SCANCODE_MEDIA_STOP , MediaPlayPause = SDL_SCANCODE_MEDIA_PLAY_PAUSE , LCtrl = SDL_SCANCODE_LCTRL , LShift = SDL_SCANCODE_LSHIFT , LAlt = SDL_SCANCODE_LALT , LGui = SDL_SCANCODE_LGUI , RCtrl = SDL_SCANCODE_RCTRL , RShift = SDL_SCANCODE_RSHIFT , RAlt = SDL_SCANCODE_RALT , RGui = SDL_SCANCODE_RGUI , Mode = SDL_SCANCODE_MODE , Reserved = SDL_SCANCODE_RESERVED , Count = SDL_SCANCODE_COUNT } |
| enum class | MouseButton : int { Left = SDL_BUTTON_LEFT , Right = SDL_BUTTON_RIGHT , Middle = SDL_BUTTON_MIDDLE , XButton1 = SDL_BUTTON_X1 , XButton2 = SDL_BUTTON_X2 , Count = 6 } |
| using Json = nlohmann::json |
| using Vector2 = glm::vec2 |
|
strong |
|
strong |