Following parameters will be considered during evaluation:
- code elegance
- model complexity
- diversity of primitives (Plasm.js)
- execution time
Choose a model (e.g. Pixar Lamp, a chair, Apple iMac/MacPro/MacBook cases, a chess piece, a vehicle, etc.).
Model it in Plasm.js taking care of his details.
Try to reach a trade off between model complexity and code quality.
The delivery is required within Sunday, June 2.
The project must be contained in a directory entitled showcase,
pushed into your repository in cvdlab-cg organization https://github.com/cvdlab-cg/xxxxxx
where xxxxxx is your student ID (matricola).
XXXXXX
|
+- showcase
|
+- code.js
+- data.json
+- node.js
+- snapshot.jpeg
where
XXXXXXis the name of your repository (your matricola)
Four files are required to be delivered: code.js, snapshot.jpeg, node.js, data.json.
The model must be delivered in a file named code.js.
The entire model must be stored in a variable named model,
you have to be able to:
- display the entire model by running
DRAW(model) - cancel the entire model by running
CANCEL(model)
running relative command in the browser console, but
THERE MUST NOT BE a DRAW command in the code.js file.
A screenshot of the model must be provided as 400x300px jpeg format and named snapshot.jpeg.
PAY ATTENTION:
a screenshot of the model you built in Plasm.js environment is required.
Take a look of Plasm.js showcase to fully understand requirements.
A node.js file useful to compute your model via Node.js is required.
Simply use the template below:
- paste the content of
code.jswhere indicated - put you GitHub username where indicated
- put a category for the model where indicated (examples of categories are
devices,biologics,vehicles,fornitures,games,buildings,others, ...)
!(function (exports){
var fs = require('fs');
var plasm_lib = require('plasm.js');
var obj = plasm_lib.plasm;
var fun = plasm_lib.plasm_fun;
var plasm = obj.plasm;
var Plasm = obj.Plasm;
var root = this;
Object.keys(fun).forEach(function (k) {
root[k] = fun[k];
});
var p = new Plasm();
fun.PLASM(p);
var scmodel = (function () {
/*///////////////////////////////////////////
PASTE YOUR CODE HERE
///////////////////////////////////////////*/
return model
})();
exports.author = 'PUT_YOUR_GITHUB_USERNAME_HERE';
exports.category = 'PUT_YOUR_MODEL_CATEGORY_HERE';
exports.scmodel = scmodel;
if (!module.parent) {
fs.writeFile('./data.json', JSON.stringify(scmodel.toJSON()));
}
}(this));A json file data.json of the model is required.
Generate it running the node.js script in Node.js:
$ node node.js
To be able to run Plasm.js in Node.js you should install the plasm.js module:
$ npm install plasm.js
PAY ATTENTION:
DO NOT PUSHnode_modulesFOLDER