Quantcast
Viewing all articles
Browse latest Browse all 388

Using dynamic texture on imported mesh

Dear All,

 

Below is the code listing to try out the dynamic texture on imported mesh, but kind of fail on the "targetMesh".

It only works when I'm using Plane mesh "newPlane" produced from the code using BABYLON.Mesh.CreatePlane.

Am I missing something here?

BABYLON.SceneLoader.Load("", "plane.babylon", engine, function (newScene) {

        newScene.executeWhenReady(function () {

            var canvas = engine.getRenderingCanvas();

            //newScene.activeCamera.attachControl(canvas);

            // This creates and positions a free camera (non-mesh)
            var camera = new BABYLON.FreeCamera("camera1", new BABYLON.Vector3(0, 5, -125), newScene);
            camera.setTarget(BABYLON.Vector3.Zero());
            camera.attachControl(canvas, true);
            newScene.activeCamera = camera;

            //now here I want to select some meshes from the active scene

            var targetMesh = newScene.getMeshByName('plane');

            if(targetMesh) {

                // debugger;

                // Create new standard material
                var stdMat = new BABYLON.StandardMaterial('Material', newScene);
                stdMat.alpha = 1;
                stdMat.backFaceCulling = true;
                stdMat.specularPower = 64;
                stdMat.useSpecularOverAlpha = true;
                stdMat.useAlphaFromDiffuseTexture = false;

                // emissive definitions;
                stdMat.emissiveColor = new BABYLON.Color3(0.00, 0.00, 0.00);
                // ambient definitions;
                stdMat.ambientColor = new BABYLON.Color3(0.00, 0.00, 0.00);
                // specular definitions;
                stdMat.specularColor = new BABYLON.Color3(1.00, 1.00, 1.00);

                var dynTexture = new BABYLON.DynamicTexture("Dynamic texture", 1024, newScene, true);
                dynTexture.uScale = 1;
                dynTexture.vScale = 1;
                dynTexture.coordinatesMode = 0;
                dynTexture.uOffset = 0;
                dynTexture.vOffset = 0;
                dynTexture.uAng = 0;
                dynTexture.vAng = 0;
                dynTexture.level = 1;
                dynTexture.coordinatesIndex = 0;
                dynTexture.hasAlpha = false;
                dynTexture.getAlphaFromRGB = false;

                // set stdMat diffuse texture
                stdMat.diffuseTexture = dynTexture;

                // draw text
                dynTexture.drawText("Eternalcoding", null, 100, "70px Segoe UI", "red", "#555555");

                // set sub mesh material
                targetMesh.material = stdMat;

                // calculate mesh size
                var vectorsWorld = targetMesh.getBoundingInfo().boundingBox.vectorsWorld;
                var size = vectorsWorld[1].subtract(vectorsWorld[0]).length(); // distance between summit 0 and summit 1

                // New Plane
                var newPlane = BABYLON.Mesh.CreatePlane("New Plane", size, newScene, false);
                newPlane.scale = 0.5;
                newPlane.position.z = targetMesh.position.z;
                newPlane.position.y = targetMesh.position.y;
                newPlane.position.x = targetMesh.position.x+(size/2);

                // newPlane.parent = targetMesh;
                // set sub mesh material
                newPlane.material = stdMat;

                stdMat.diffuseTexture.update();
            }

            engine.runRenderLoop(function() {
                newScene.render();
            });

        });
});

Here is the "plane.babylon"

{"autoClear":true,"clearColor":[0.0,0.0,0.0],"ambientColor":[0.0,0.0,0.0],"fogMode":0,"fogColor":null,"fogStart":0.0,"fogEnd":0.0,"fogDensity":0.0,"gravity":[0.0,0.0,0.0],"cameras":[{"name":"Camera001","id":"a713edbb-dbb0-4077-a018-06a07e8fb30c","parentId":null,"lockedTargetId":"5523fadc-396d-4b51-b859-4b9df68f56dd","type":"FreeCamera","position":[-202.8126,116.4834,-271.5265],"rotation":[0.0,0.0,0.0],"target":null,"fov":0.6024,"minZ":0.1,"maxZ":10000.0,"speed":1.0,"inertia":0.9,"checkCollisions":false,"applyGravity":false,"ellipsoid":[0.0,0.0,0.0],"autoAnimate":false,"autoAnimateFrom":0,"autoAnimateTo":0,"autoAnimateLoop":false,"animations":[]}],"activeCameraID":"a713edbb-dbb0-4077-a018-06a07e8fb30c","lights":[{"name":"Default light","id":"2baddbc0-0c64-46ee-89ac-aa01cd23c503","parentId":null,"position":null,"direction":[0.0,1.0,0.0],"type":3,"diffuse":[1.0,1.0,1.0],"specular":[1.0,1.0,1.0],"intensity":1.0,"range":3.40282347E+38,"exponent":0.0,"angle":0.0,"groundColor":[0.0,0.0,0.0],"excludedMeshesIds":null,"includedOnlyMeshesIds":null,"autoAnimate":false,"autoAnimateFrom":0,"autoAnimateTo":0,"autoAnimateLoop":false,"animations":null}],"meshes":[{"id":"a2652875-3a25-4d9c-97ab-1d7d038c5f8e","parentId":null,"materialId":null,"isEnabled":true,"isVisible":true,"pickable":false,"pivotMatrix":null,"positions":[-56.0677,0.0,-45.6579,56.0677,0.0,-45.6579,56.0677,0.0,45.6579,56.0677,0.0,45.6579,-56.0677,0.0,45.6579,-56.0677,0.0,-45.6579],"normals":[0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0],"uvs":[0.0,1.0,1.0,1.0,1.0,2.0,1.0,2.0,0.0,2.0,0.0,1.0],"uvs2":null,"colors":null,"hasVertexAlpha":false,"matricesIndices":null,"matricesWeights":null,"indices":[0,1,2,3,4,5],"checkCollisions":false,"receiveShadows":true,"infiniteDistance":false,"billboardMode":0,"visibility":1.0,"subMeshes":[{"materialIndex":0,"verticesStart":0,"verticesCount":6,"indexStart":0,"indexCount":6}],"instances":[],"skeletonId":-1,"showBoundingBox":false,"showSubMeshesBoundingBox":false,"applyFog":true,"alphaIndex":1000,"physicsImpostor":0,"physicsMass":0.0,"physicsFriction":0.0,"physicsRestitution":0.0,"name":"plane","position":[0.0,0.0,0.0],"rotation":[-1.5708,0.0,0.0],"scaling":[1.0,1.0,1.0],"rotationQuaternion":null,"actions":null,"animations":[],"autoAnimate":true,"autoAnimateFrom":0,"autoAnimateTo":100,"autoAnimateLoop":true},{"id":"5523fadc-396d-4b51-b859-4b9df68f56dd","parentId":null,"materialId":null,"isEnabled":true,"isVisible":true,"pickable":false,"pivotMatrix":null,"positions":null,"normals":null,"uvs":null,"uvs2":null,"colors":null,"hasVertexAlpha":false,"matricesIndices":null,"matricesWeights":null,"indices":null,"checkCollisions":false,"receiveShadows":true,"infiniteDistance":false,"billboardMode":0,"visibility":1.0,"subMeshes":null,"instances":[],"skeletonId":-1,"showBoundingBox":false,"showSubMeshesBoundingBox":false,"applyFog":true,"alphaIndex":1000,"physicsImpostor":0,"physicsMass":0.0,"physicsFriction":0.0,"physicsRestitution":0.0,"name":"Camera001.Target","position":[-3.9516,-2.5059,23.297],"rotation":[-1.2479,0.5934,0.0],"scaling":[1.0,1.0,1.0],"rotationQuaternion":null,"actions":null,"animations":[],"autoAnimate":true,"autoAnimateFrom":0,"autoAnimateTo":100,"autoAnimateLoop":true}],"sounds":[],"materials":[],"multiMaterials":[],"particleSystems":null,"lensFlareSystems":null,"shadowGenerators":[],"skeletons":[],"actions":null}

Viewing all articles
Browse latest Browse all 388

Trending Articles