Anim8tor exporter script
From Legacy Roblox Wiki
This is Gamer3D's Anim8or script for exporting to the Roblox *.mesh format. With this update, the exporter officially works.
Install Instructions
Open Anim8or. Use the menu bar in the following sequence: File->Configure Set the Scripts text bar to the folder you want scripts to be in. Place this script (as a .a8s file) in the folder.
Script
/* Description: Add this to your Anim8or scripts directory and start Anim8or. */ #plugin("object", "export", "Roblox Mesh", ".mesh"); #file($output, "text"); #return($result); file $output; int $result; object $obj; shape $shape, $shapes[1], $childShapes[1]; tridata $data; material $mat; int $numFaces; point3 $point, $normal, $color; point2 $uv; int $i; int $j; int $index, $mIndex; int $count; float $gCol; string $nm; string $newName; float4x4 $tMatrix; $nm = $output.GetRoot(); $obj = project.curObject; $output.print("version 1.00\n"); $obj.GetShapes($childShapes); $shapes.size = 0; while($childShapes.size > 0) { $shapes.push($childShapes.pop()); } while($shapes.size > 0) { $shape = $shapes.pop(); $shape = $shape.ConvertToMesh(); $data = $shape.GetTriangleData(); $numFaces = $data.GetNumTriangles(); $tMatrix = $shape.GetGlobalTransform(); $output.print("%d\n",$numFaces); for $i = 0 to $numFaces - 1 do { for $j = 0 to 2 step 1 do { $index = $data.GetIndex(($i*3)+$j); $point = $data.GetPoint($index); $point = $tMatrix.Project($point); $normal = $data.GetNormal($index); $uv = $data.GetTexCoord($index); $output.print("[%.6g, %.6g, %.6g]", $point.x, $point.y, $point.z); $output.print("[%.5f, %.5f, %.5f]", $normal.x, $normal.y, $normal.z); $output.print("[%.5f, %.5f, 0]", $uv.x, $uv.y); } } } $result = 1;