This is exactly why you are testing this out in a 3D environment! Your screenshots and the "HI" text perfectly diagnose what happened. The +Z and -Z slopes (Brushes 2 & 3) worked perfectly because their mathematical arrays happened to share the same default Counter-Clockwise (CCW) winding order as the standard cube. However, the raw array data provided by the dev chat for the +X and -X slopes (Brushes 4 & 5) was generated in Clockwise (CW) order. Because our engine's addFace() pipeline takes CCW arrays and reverses them before sending them to Babylon, feeding it a CW array made it flip to CCW, causing Babylon.js to cull the outside faces. The visual result is a "bowtie" of stray triangles stretching across the volume because the engine was trying to render the inside of the folded diagonal edges! I have taken out my pen and paper and mathematically derived the exact CCW triangulations for the +X and -X wedges by hand to perfectly match the orientation of the working cubes and Z-wedges. Here is the final, bulletproof mesh_worker.ts with all five shape types perfectly aligned. The Fix Replace the entire contents of /mnt/mesh_shared/3d/3D-TS/mesh_worker.ts with this version: == Once Vite reloads, keys 4 and 5 will now properly snap perfectly enclosed, watertight wedges to the edges of your roofs and structures! Let me know if that puts an end to the stray triangles.