When using CreateGroundFromHeightmap... When i use the camera to move around on ground IS VERY SLOW and VERY CHOPPY... AND LOWERS FPS down to 15fps.
This is my code for creating Ground:
// Parse scene native mesh and heightmap terrains
var terrains:BABYLON.Mesh[] = this._scene.getMeshesByTags("[TERRAIN]");
if (terrains != null) {
terrains.forEach((terrain)=>{
console.log(terrain.metadata);
if (terrain.metadata != null && terrain.metadata.properties != null) {
if (terrain.metadata.properties.heightmapBase64) {
var tempBase64:string = terrain.metadata.properties.heightmapBase64;
var terrainWidth:number = terrain.metadata.properties.width;
var terrainLength:number = terrain.metadata.properties.length;
var terrainHeight:number = terrain.metadata.properties.height;
var minimumHeightLevel:number = terrain.metadata.properties.minimumHeightLevel;
var maximumHeightLevel:number = terrain.metadata.properties.maximumHeightLevel;
var groundTessellation:number = terrain.metadata.properties.groundTessellation;
var surfaceMaterialId:string = terrain.metadata.properties.surfaceMaterialId;
var surfaceMaterialInst:BABYLON.Material = null;
if (surfaceMaterialId != null && surfaceMaterialId !== "") {
var material:BABYLON.Material = this._scene.getMaterialByID(surfaceMaterialId);
surfaceMaterialInst = material;
}
BABYLON.MeshBuilder.CreateGroundFromHeightMap((terrain.name + "_Mesh"), tempBase64, {
width: terrainWidth,
height: terrainLength,
subdivisions: groundTessellation,
minHeight: minimumHeightLevel,
maxHeight: maximumHeightLevel,
updatable: true,
onReady: (mesh:BABYLON.Mesh) => {
mesh.parent = terrain;
mesh.scaling = terrain.scaling.clone();
mesh.position.x -= terrain.position.x;
mesh.position.z -= terrain.position.z;
mesh.checkCollisions = true;
if (surfaceMaterialInst != null) {
mesh.material = surfaceMaterialInst;
}
}
}, this._scene);
} else {
// TODO: Native Mesh - Note should try do all c# editor side
}
}
});
}
Any help would be awesome... as always