You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Thomas FORGIONE d904a4a472
Corrected makefile (for server to start) and re-enabled collisions
7 years ago
analysis Some commits 7 years ago
js Corrected makefile (for server to start) and re-enabled collisions 7 years ago
server Monster commit 7 years ago
sql Monster commit 7 years ago
static Added, and gitignores 7 years ago
utils Some commits 7 years ago
.gitignore Added, and gitignores 7 years ago README improved 7 years ago
server.js Missing files 7 years ago

3D Interface

A prototype for a user-friendly 3D interface allowing to browse 3D scenes / models written with Node.js.

It is hosted by OpenShift at

Database setup

First you need to configure the database. You can create a postgres database where you want, and you can initialize it by running the script sql/backup.pgsql.

Nodejs configuration

Then, you have to set up nodejs to access to your database. Basically, you have to create a file private.js in the server directory at the root of the repository looking like this :

module.exports.url = ... // the url to connect to your database

module.exports.secret = ... // A secret string used to hash stuff

Compiling the static js files

First, cd to utils/. Here you'll find a script that, as its name suggests, builds all. By default, it minifies the code, but you can pass the option --dev to avoid minifying (which is a quite long operation).

If it worked, you should see lots of files in *.min.js in your static/js directory, and a geo.min.js in your lib (at the root of the repository).

Running the server

As usual with NodeJS, it's quite easy to test. Just ensure you have node installed on your machine, clone this repo somewhere, and then, in the repo do

cd server
npm install
node server.js

Note : you will need to compile the static js files first in order to start the server

You should be able to go to localhost:4000 and see the result.

Please note that some static files (some meshes / textures) are not on this repository (especially the heavy ones).


If you want to dev on this project, the utils/ may help you : it is based on nodemon (that basically restarts the server everytime there is a change in the code) and inotifywait (that basically recompiles everything when there is a modification). To use it, just cd to utils and run (note that it doesn't minify the code since this operation is heavy and too long to redo everytime there is a change).