Skip to content

Replication is a network-replicated 3D game engine that runs on the browser, written from scratch in C++.

Notifications You must be signed in to change notification settings

lineCode/replication

 
 

Repository files navigation

Replication

Replication is a 3D game engine written from scratch in C++.

Features

  • Game Client Runs on the browser via WebAssembly and WebGL
  • Network Replication of Game Objects with client-side prediction and interpolation
  • Fast(ish) Deferred Renderer with support for
    • Global Shadow Mapping (CSM)
    • Skysphere
    • Dynamic Realtime Lighting
    • Post-processing (Bloom, SSAA, Tone Mapping)
    • Transparent and semi-transparent textures
  • Physics Engine for multi-phase collision between different primitive types
    • Static Mesh
    • AABB and OBB
    • Sphere
  • Game object scripting built on WendyScript

Prerequisites

You will need:

- NodeJS / NPM to serve the client side pages and Webpack the client side code
- build-essentials to build the server (C++ 17)
- emscripten toolchain to build the client side engine in WebAssembly

Running

With all those installed, open one terminal instance to serve the client service:

npm install
npm run dev

And open one terminal to build and run the server:

cd server
make
bin/game_server

About

Replication is a network-replicated 3D game engine that runs on the browser, written from scratch in C++.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 91.4%
  • C 7.1%
  • JavaScript 0.8%
  • GLSL 0.4%
  • CWeb 0.1%
  • Makefile 0.1%
  • Other 0.1%