Scrivo questo post per aiutare magari qualche povero cristo che come me si ritrova a leggere le guida presente sul sito, e si ritrova con certi problemi, magari un po troppo difficili da risolvere per uno che sta iniziando ora con sandy 3d.

Problema riscontrato nella lezione (esempio pratico) pagina 15,16

L'obiettivo del esempio è far ruotare un cubo...
il codice completo totale da scrivere è il seguente:
codice:
import sandy.core.light.*;
import sandy.core.data.*;
import sandy.core.group.*;
import sandy.primitive.*;
import sandy.view.*;
import sandy.core.*;
import sandy.skin.*;
import sandy.util.*;
import sandy.core.transform.*;
import sandy.events.*;


var world:World3D = World3D.getInstance(); // Azione principale del mondo 3D //manca nella guida, senza la variabile non si può creare il mondo... :XD
var rotation:Transform3D = new Transform3D(); // questa riga la trovate nella posizione sbagliata, infatti se provate con la variabile rotation posizionata in createscene, potete impegnarvi quanto volete a scrivere valori e premere sul pulsantino rotate ma non avrete alcun cambiamento.

var l:Light3D = new Light3D (new Vector (100, 0, 0), 500); //manca nella guida  PER APPLCIARE LE LUCI 
World3D.getInstance ().setLight (l);			   //manca nella guida PER APPLCIARE LE LUCI

function createScene( bg:Group ):Void {
    var cube:Object3D = new Box( 50, 50, 50, 'quad' );
    var skin:Skin = new MixedSkin( 0xF28F35, 80, 0, 100, 1 );
	skin.setLightingEnable( true ); // Abilitiamo l'illuminazione per la skin
    cube.setSkin( skin );
	var tg:TransformGroup = new TransformGroup();
    rotation.rot(20,30,0);
    tg.setTransform( rotation );
    tg.addChild( cube );
    bg.addChild( tg );
} 

function init( Void ):Void {
    screen = new ClipScreen( this.createEmptyMovieClip('screen', 1), 200, 200 );
    var cam:Camera3D = new Camera3D( 600, 600 );
    cam.setPosition(0,0,-500);
    world.addCamera( cam );
    var bg:Group = new Group();
    world.setRootGroup( bg );
    createScene( bg );
    
    // Creiamo gli assi di riferimento
    createCoordinateSystem( bg, false, 1 );
    // Associamo la funzione rotate alla pressione del pulsante rotateButton
    rotateButton.onRelease = rotate;
    // Renderizziamo la scena
    world.render();
}
function rotate(){
 	rotation.rot( Number(xStep.text),Number(yStep.text),Number(zStep.text) );
} 
init();
Un ultima cosa molto importante!!! Le caselle di testo che avranno come istanza: xStep;yStep;zStep createle come testo di input, e non come testo dinamico, come dice la guida...