Kweek (pronounced: quake), is quite simply put a Quake rip-off based on my software rasterizer, and thereby combining two courses (Graphics Programming and Network Programming), made in my second year of International Game Architecture & Design.
Due to licensing, I have not submitted any assets or dependencies. This is purely for code demonstration.
The aim of this project was to familiarize myself with multiplayer networking for real-time action games, and though I realize that the implementation holds room for improvement, this project has taught me many of the core ideas and patterns involved in creating a real-time multiplayer experience. Creating the software renderer I learned about basic graphics pipelines, how to maintain a solid architecture for clear data ownership and the creation of a basic scenegraph with a child and parent node hierarchy.
- Custom software rendered pipeline
- Up to 8 players (4v4) online
- Cross-platform, dedicated masterserver
- In-game server browser
- Nvidia PhysX physics
- RakNet networking library
- FMOD Audio library
- Client - Server network model with anticheat protection
- Client-side prediction
- Chat messages, customizable player names
Project date: December 2014