Грань состоит из трех точек, как минимум, а дальше создается поверхность из граней, и на нее накладывается тесктурка, как-то так. Подробнее написано тут и тут.
У сферы есть набор граней (sphere.faces) – это то что нам нужно. У каждой грани есть несколько точек, у каждой точки есть три координаты: x, y, z. При создание поверхности мы используем массив граней, а у грани уже массив точек. Чтобы добраться до граней у сферы, как я понял, надо проделать следующее:
sphere.faces.toArray(true)[i].id
- true – означает индексированный массив
- i – это номер элемента
- id – это идентификатор грани
Далее создаем поверхность:
sphere.createSurface([sphere.faces.toArray(true)[i].id], “temp”+i);
- “temp”+i – это уникальное название поверхности
И накладываем текстурку выбранной поверхносте:
sphere.setMaterialToSurface(new FillMaterial(color, 1), “temp”+i);
Исходный код ниже:
package { import alternativa.engine3d.core.Camera3D; import alternativa.engine3d.core.Object3D; import alternativa.engine3d.core.Scene3D; import alternativa.engine3d.display.View; import alternativa.engine3d.materials.FillMaterial; import alternativa.engine3d.primitives.Sphere; import alternativa.utils.FPS; import flash.display.BitmapData; import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import flash.events.Event; import flash.events.MouseEvent; import flash.net.navigateToURL; import flash.net.URLRequest; /** * ... * @author Romano (www.romano.su) */ public class ColorSphere extends Sprite { private var scene:Scene3D; private var view:View; private var camera:Camera3D; private var sphere:Sphere; private var angle1:Number; private var angle2:Number; private var distance:Number = 300; [Embed(source = "../assets/alternativa3d_medium.png")] private var Logo:Class; public function ColorSphere():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); // entry point stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; // Создание сцены scene = new Scene3D(); scene.root = new Object3D(); // Добавление камеры и области вывода camera = new Camera3D(); scene.root.addChild(camera); angle1 = Math.PI / 2; angle2 = 0; // выставляем камеру changeCameraCoords(); view = new View(); addChild(view); view.camera = camera; view.interactive = true; // создание сферы sphere = new Sphere(100, 12, 12); for (var i:int = 0; i < sphere.faces.length; i++) { var color:Number = Math.random() * 0xFFFFFF; sphere.createSurface([sphere.faces.toArray(true)[i].id], "temp"+i); sphere.setMaterialToSurface(new FillMaterial(color, 1), "temp"+i); } scene.root.addChild(sphere); // Запуск счётчика кадров FPS.init(stage); stage.addEventListener(Event.RESIZE, onResize); stage.addEventListener(Event.ENTER_FRAME, onEnterFrame); insertLogo(); onResize(null); } private function changeCameraCoords():void { camera.x = distance * Math.sin(angle1) * Math.cos(angle2); camera.y = distance * Math.sin(angle1) * Math.sin(angle2); camera.z = distance * Math.cos(angle1); camera.rotationZ = angle2 + Math.PI/2; camera.rotationX = angle1 - Math.PI; } private function onResize(e:Event):void { view.width = stage.stageWidth; view.height = stage.stageHeight; } private function insertLogo():void { var logoSprite:Sprite = new Sprite(); logoSprite.addChild(new Logo()); addChild(logoSprite); logoSprite.x = stage.stageWidth - logoSprite.width - 5; logoSprite.y = stage.stageHeight - logoSprite.height - 5; logoSprite.addEventListener(MouseEvent.CLICK, function(event:MouseEvent):void { var request:URLRequest = new URLRequest("http://www.alternativaplatform.com"); navigateToURL(request, "_blank"); }); } private function onEnterFrame(event:Event):void { angle2 += Math.PI / 180; changeCameraCoords(); // Расчёт сцены scene.calculate(); } } }
Тэги: ActionScript 3, alternativa 3d, flash

Продолжай в том же духе. Даже если никто не отвечает, кому-то будет полезно точно, да и наверняка как самому понадобится что-то экспериментальное повторить в реальном проекте — поможет.
как кто то верно заметил, отвечают на вопросы.