swat0284 Posted September 27, 2016 Share Posted September 27, 2016 Hello i try to move mesh by this code: var players = []; function Temp(){ for(var i = 0 ; playersCount > i ; i++){ players[i] = new BABYLON.AbstractMesh("s"+i,scene); players[i] = LoadModel(i);//assign loaded mesh to element of array players[i].position = new BABYLON.Vector3(10,1,-10); // i have got Cannot set property 'position' of undefined } } function LoadModel(i){ var model; BABYLON.SceneLoader.ImportMesh("","models/","scene.babylon",scene, function(newMeshes) { model = newMeshes[newMeshes.length-1]; console.log(newMeshes.length); console.log(newMeshes[newMeshes.length-1].name); model.position.x = 50 * i; //i can set position }); return model; } Quote Link to comment Share on other sites More sharing options...
fenomas Posted September 28, 2016 Share Posted September 28, 2016 LoadModel is returning undefined. The function where "model" gets assigned is asynchronous - it doesn't run until the load finishes. The solution is to set the mesh's position inside the onLoad handler. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.