Away3D - 设置立方体CubeGeometry的皮肤(纯色,贴图)
1,给CubeGeometry设置纯色的皮肤
(注意:这个图片长宽必须是2的次方,最大不能超过2048。长宽可以不一样,程序会自动分割的。)
3,给CubeGeometry六面设置一样的贴图
只需要把最后一个初始化参数tile6设置为false即可。
4,所有源码下载:Amay3DTest5.zip
由于只是设置了颜色,所以如果舞台不添加灯光的话看不出边角的立体效果。
var material:ColorMaterial = new ColorMaterial(0xffffff); // 在三维舞台中创建一个方块 var cube1:Mesh = new Mesh(new CubeGeometry(200, 200, 200), material); _view3D.scene.addChild(cube1);
2,给CubeGeometry六面设置不一样的贴图
默认情况下,如果给立方体设置一张贴图皮肤,那么这个图片是把方块整个包裹起来。所以如果我们想要给立方体各个面设置不同的图片的话,可以把这些图片拼接成一个大图。(注意:这个图片长宽必须是2的次方,最大不能超过2048。长宽可以不一样,程序会自动分割的。)
[Embed(source="assets/cubeTexture2.png")] private var cubeTextureClass : Class; var material:TextureMaterial = new TextureMaterial(Cast.bitmapTexture(cubeTextureClass)); // 在三维舞台中创建一个方块 var cube1:Mesh = new Mesh(new CubeGeometry(200, 200, 200), material); _view3D.scene.addChild(cube1);
3,给CubeGeometry六面设置一样的贴图
只需要把最后一个初始化参数tile6设置为false即可。
[Embed(source="assets/cubeTexture3.jpg")] private var cubeTextureClass : Class; var material:TextureMaterial = new TextureMaterial(Cast.bitmapTexture(cubeTextureClass)); // 在三维舞台中创建一个方块 var cube1:Mesh = new Mesh(new CubeGeometry(200, 200, 200, 1, 1, 1, false), material); _view3D.scene.addChild(cube1);
4,所有源码下载:Amay3DTest5.zip