Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

CoderLearningCode/Sketchbook

Open more actions menu
 
 

Repository files navigation


Live demo

badge badge badge

📒 Sketchbook

Simple web based game engine built on three.js and cannon.js focused on third-person character controls and related gameplay mechanics.

Mostly a playground for exploring how conventional third person gameplay mechanics found in modern games work and recreating them in a general way.

Features

  • World
    • Three.js scene
    • Cannon.js physics
    • Variable timescale
    • Frame skipping
    • FXAA anti-aliasing
  • Characters
    • Third-person camera
    • Raycast character controller with capsule collisions
    • General state system
    • Character AI
  • Vehicles
    • Cars
    • Airplanes
    • Helicopters

All planned features can be found in the GitHub Projects.

Usage

You can define your own scenes in Blender, and then read them with Sketchbook. Sketchbook needs to run on a local server such as http-server or webpack-dev-server to be able to load external assets.

Script tag

  1. Import:
<script src="sketchbook.min.js"></script>
  1. Load a glb scene defined in Blender:
const world = new Sketchbook.World('scene.glb');

NPM

  1. Install:
npm i sketchbook
  1. Import:
import { World } from 'sketchbook';
  1. Load a glb scene defined in Blender:
const world = new World('scene.glb');

Contributing

  1. Get latest Node.js
  2. Fork this repository
  3. Run npm install
  4. Run npm run dev
  5. Make changes and test them out at http://localhost:8080
  6. Commit and make a pull request!

Credits

Big thank you to each of the following github users for contributing to Sketchbook:

About

3D playground built on three.js and cannon.js

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 91.3%
  • CSS 8.6%
  • HTML 0.1%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.