Kuda Readme The best place to start with Kuda is probably the samples. Viewing these should give you some ideas of things you can do with the Hemi library. You can also open the Kuda Editor to start scripting 3D Worlds using a graphical interface. If you plan to use the editor, however, you'll need to follow the installation instructions below. As you begin to work with the Hemi library, please refer to the API documentation for notes on how to use its different features.
Requirements: The Kuda Editor supports Firefox 9+, Chrome 16+, and IE7, 8, and 9 running Chrome Frame 16+ (http://www.google.com/chromeframe). Mac users can enable WebGL in the developer menu for Safari. The developer menu can be enabled from Safari preferences and the advanced options.
Installation: To run the editor and the samples, you'll need to first install node.js. Follow the instructions for your platform below.
For Windows:
For Mac:
Running the Editor:
Samples: For each sample, open the html file in a browser to view it. You can open the js file to see how the world was created and scripted. If you are using the default configuration of Kuda, a typical address will be: http://localhost:3000/samples/helloWorld/helloWorld.html
Running samples locally You may want to create a separate browser profile or shortcut used just for local development to be safe.
Google Chrome Use a command line flag. On Windows you can create a shortcut that uses the flag Ex. chrome --allow-file-access-from-files
Mozilla Firefox Change local files security policy Go to about:config Set the config parameter security.fileuri.strict_origin_policy to false
AudioHouse - This sample shows how to incorporate audio media such as sound
effects into the Tutorial A house model.
Dollhouse -
FadingWalls - This sample shows how to dynamically set the opacity of an object
using a custom shader and setting material parameters on the
render tick. Some of this functionality will be built into future
versions of Kuda.
FirstAid -
Grandmas -
House
helloWorld - This is a simple hello world sample. It shows how to set up a
simple world, load a model, and move the camera to a viewpoint.
It also shows setting up a message handler.
helloWorld -
Octane
hud - This shows how to create a heads-up-display with multiple pages
that have different configurations. It also shows how to handle
mouse interactions with the HUD elements.
lighting - This sample shows how to use the the texture module, hemi.texture
to skin a house. The skinning shows the effect of sunlight
at five times of the day.
ParticleCurve - This is a demonstration of the Kuda particle system, which works
by setting bounding boxes which the particles will flow through.
The size and color of the particles can be changed with respect to
time by a config obejct.
payload - Complex example of a Editor project with more than 100 behavours.
Pressure - This shows how to set up a very complex script that takes
HouseB advantage of Scenes to organize behavior into logical segments.
It also shows how to set up the manometer, blower door, and
smoke puffer weatherization tools as well as the camera
navigation tool. There is a complex PressureEngine as well as
custom classes and a custom Message type.
pump - Shows using a large amount of KeyFrame animation from COLLADA
shapes - This shows the Kuda simple shape library, which allows for the easy
creation of most common shapes, plus custom meshes through an array
of vertices.
Shared - Allows for multiple simultaneous views of the same scene
Client
tiny_house - This shows a simplified version of using the pressure engine
with a single room and window house. It is known as "Bubba's
Outhouse".
tutoriala - This shows how to hide shapes in a model, animate a model using
its keyframes, animate a model using translators and rotators,
handle mouse clicks, and generate a basic particle effect. It
also uses an HTML button from the web page to interact with the
3D scene.
uvmapping - This shows how to swap textures and perform transforms on them such
as translate and rotate.
WebGLCamp - This was a presentation at WebGL Camp #2 held at SRI. The presentation
Dec2010 uses hemi sprites and camera on a curve.
Kuda Editor: The Kuda Editor provides you with a graphical interface to the Hemi library and allows you to perform much of the same work in a more visual manner. You can:
Documentation: To view documentation for the Hemi library, go to the doc directory and open the index.html file.
Directory Listing (Full install): assets - Your 3D models, images, etc. You should place any assets you create or use in this directory. doc - API level documentation for the Hemi library editor - The graphical Kuda Editor hemi - The Hemi library hext - The Hemi Extensions (Hext) library lib - Third party libraries used by Hext and the Kuda Editor
About Three.js Kuda takes advantage of the Three.js library to provide 3D content through WebGL. We distribute Kuda releases with the latest version of Three.js at the time of that release.