Back to the Shapespark home page

Javascript api documentation

Hello Everyone,
My name is Harsh. I am new to Shapespark and looking at the demo version of Shapespark, I am very excited.
This is one awesome piece of work.
I am very interested in Customization. There is a lot of information on this but it is spread across and in some cases, are undocumented.
For ex. what are the function/events/properties of the viewer object returned by WALK.getViewer() call?
I could have inspected the code in a browser but since I am on a demo version now, I cannot upload a scene with body-end.html.
is there a place where I can look at all the function/properties of viewer, material etc?

thanks in advance!

The public viewer functions are documented here:
This document also includes example scenes and customization files (body-end.html) that can help you get started.

Hi Jan,
Thanks for the quick reply. I have gone through many many threads here but could not find the answers I am looking for.
For example, I know that a material has following properties…
material.emissive = true;
material.emissionStrength = 5;

but is this the complete list? is a great place, but it does not all the information…

thanks again

Properties listed at are part of the public API, we ensure not to change them in backward incompatible way, so new Shapespark releases will continue to work with your customizations. Shapespark JavaScript API is quire limited compared to for example game engine APIs.

There are many more properties of materials or other scene objects, which we treat as internal. Often in this forum when someone has a specific customization that cannot be delivered with the existing public API, we write some way to achieve it with internal APIs. This is probably not the best approach. Anyway, Shapespark is mostly used by 3D artists without programming knowledge and we don’t have plans to expose full game-engine like API for all the internal structures. It will too much limit our abilities to make improvements to these internals.

The door to do specific customizations are kept open. that is reasonable!
I appreciate the quick reply.