Ohm Desai
Ohm Desai

Gameplay/Engine Programmer

Sock Engine

A lightweight 3D game engine made with C++

Overview

Sock Engine is a custom 3D game engine made with C++. The engine is primarily a learning project focused on understanding game engine architecture and graphics programming fundamentals.

Technical Stack

  • Language: C++
  • Graphics API: OpenGL
  • ECS: EnTT
  • Math: GLM
  • Models: Assimp
  • Textures: SOIL2
  • Windowing: GLFW
  • UI: ImGui
  • Build System: Premake5

Features

Rendering

  • OpenGL forward renderer
  • Shadow mapping with PCF filtering
  • Blinn-Phong lighting model with directional lights
  • Model loading via Assimp
  • Multi-texture support
  • Skybox rendering
  • Debug visualization modes

Scene Management

  • Entity-Component-System using EnTT
  • Hierarchical transforms with parent-child relationships
  • Component-based architecture
  • Runtime scene graph management

Editor

  • ImGui-based level editor
  • Scene hierarchy with drag-and-drop
  • Property inspector for components
  • Real-time viewport rendering
  • Debug panels and performance metrics

Core Systems

  • Event-driven input handling
  • Asset management pipeline
  • Shader compilation system
  • Premake5 build system

What's Next?

  • Improved asset management with file system
  • Scene and asset serialization
  • Animation pipeline for skeletal meshes
  • Physics integration with Jolt Physics
  • Audio system with FMOD