function addActions (mesh)
{
    
    mesh.actionManager = new BABYLON.ActionManager(scene);
    var action1 = new BABYLON.ExecuteCodeAction(BABYLON.ActionManager.OnPointerOverTrigger, function (evt) {
        if (evt.source) {
            if (evt.source._label) evt.source._label.isVisible = true;
        }
    })
    mesh.actionManager.registerAction(action1);
	//
    if (mesh._type == "N") {
        var action2 = new BABYLON.ExecuteCodeAction(BABYLON.ActionManager.OnPointerOutTrigger, function (evt) {
            if ((evt.source) && (evt.source != _selected)) {
                if (evt.source._label) evt.source._label.isVisible = CONFIG.enforceNodeLabels; // && (evt.source._subnode < 100);
            }
        })
    } else {
        var action2 = new BABYLON.ExecuteCodeAction(BABYLON.ActionManager.OnPointerOutTrigger, function (evt) {
            if ((evt.source) && (evt.source != _selected)) {
                if (evt.source._label) evt.source._label.isVisible = CONFIG.enforceServiceLabels;
            }
        })
    }
    mesh.actionManager.registerAction(action2);
	//
	var action3 = new BABYLON.ExecuteCodeAction(BABYLON.ActionManager.OnPickTrigger, function (evt) {
        //alert("olala");
		if (evt.source) selectMesh(evt.source, true);
    })
    mesh.actionManager.registerAction(action3);

}