public GameObject CreateBillboard(string path, string name, bool usingHDRP) { GameObject camObject = Instantiate(Resources.Load("Mtree/MtreeBillboardCamera") as GameObject); // create billboard and render it Camera cam = camObject.GetComponent <Camera>(); Billboard bill = new Billboard(cam, gameObject, 512, 512); bill.SetupCamera(); string texturePath = path + name + "_billboard.png"; bill.Render(texturePath); DestroyImmediate(camObject); Mesh billboardMesh = bill.CreateMesh(); // create billboard mesh AssetDatabase.CreateAsset(billboardMesh, path + name + "_LOD4.mesh"); GameObject billboard = new GameObject(name + "_LOD4"); // create billboard object and assign mesh MeshFilter meshFilter = billboard.AddComponent <MeshFilter>(); meshFilter.mesh = billboardMesh; MeshRenderer meshRenderer = billboard.AddComponent <MeshRenderer>(); Texture billboardTexture = (Texture2D)AssetDatabase.LoadAssetAtPath(texturePath, typeof(Texture2D)); // create material Material mat = bill.CreateMaterial(billboardTexture, usingHDRP); meshRenderer.sharedMaterial = mat; AssetDatabase.CreateAsset(mat, path + name + "billboard.mat"); return(billboard); }