This repository has been archived by the owner. It is now read-only.
YUME is a technological platform for developing web based 3D applications.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
locales
public
routes
src
test
views
.gitignore
.jshintrc
.project
.tern-project
Gruntfile.js
LICENSE
README.md
app.js
package.json

README.md

YUME

Built with Grunt

YUME is a technological platform for developing web based 3D applications. Its technology stack consists of many popular frameworks like node.js, express or three.js. The goal of this project is to provide a foundation for all kinds of 3D-based web applications (especially games). YUME is written in JavaScript.

Why should i use YUME?

Developing a complex 3D application is a hard challenge. If you want to create a real product, working just with three.js or an other 3D library is sometimes insufficient. YUME integrates different frameworks to create one comprehensive platform with many useful features.

  • Node.js and its modules provide server side features to meet multiplayer or storage requirements (accounts, highscores etc.).
  • Express provides features for creating server side web applications. Games can benefit of templating, sessions, authentication, compression, caching and more.
  • Three.js is a great library for developing 3D content based on WebGL.
  • Browserify guarantees modular programming style and robust dependency management.
  • Grunt is our internal task runner and build tool.
  • Bootstrap provides a basic HTML/CSS template.
  • Less simplifies styling.

The demo-application shows different features of YUME.

  • stage loading and changing (via loading screen)
  • advanced First-Person Controls
  • UI elements (e.g. modal dialogs for menus, inventory etc.)
  • interaction system for First-Person adventures or shooters
  • simple collision detection
  • i18n (text files for each local)
  • basic animation system
  • elementary audio system based on WebAudio
  • savegame and settings managers
  • topic-based publish/subscribe
  • post-processing with some exemplary shaders
  • simple particle system
  • some game entities for AI programming (state-driven agents, steering behaviors, graphs etc.)

Documentation

Check out the official documentation for more information.