当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash教程:纯AS打造3d小方块【代码解释】

Flash动画制作
Flash实例教程:制作圣诞节祝福贺卡
Flash相册图片加载完毕等比缩放的类
Flash as教程:逼真的瀑布特效动画
Flash CS4入门教程:给任意照片添加雪景动画
Flash入门实例:新年快乐镜面跳动字动画
Flash新手鼠绘(4):鲜艳欲滴的樱桃
Flash新手鼠绘(5):梅花花瓣的制作
Flash 制作晃动光线文字特效
flash中影片剪辑的排列顺序控制和拖拽效果
利用AS脚本功能实现图片模糊变清晰
Flash动画制作实例:单个背景循环移动动画
Flash动画技巧:绘制小鸡的动画效果
Flash实例教程:制作蒸汽烟雾飘飘动画
Flash实例教程:制作庆祝春节的烟花动画
Flash技巧:羽化遮罩制作好看图片切换动画
Flash简单制作星球大战文字动画特效
Flash技巧:运用图层简单实现传统数字动画效果
Flash CS3教程:将工程转换到视频格式

Flash动画制作 中的 Flash教程:纯AS打造3d小方块【代码解释】


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 69 ::
收藏到网摘: n/a

[友情提示]看不到动画效果的朋友请去这里观看:

http://bbs.ruanchen.com/"_cx" VALUE="14552">

其实也不算什么教程,只是代码的解释~我尽量写的详细一些~

其实这个效果只有这些代码而已~把代码贴到第一帧就可以了~

好,下面开始:

stop();
//这个stop是让FLASH播放在这一帧停下来,但对代码的运行没有影响~其实不用也没关系
angle=-0.03;
dot_x=Stage.width/2;
dot_y=Stage.height/2;
p=70;
d=300;
//先初始化一下变量~angle是立方体每次转过的角度,dot_x和dot_y定义了空间的原点,p是立方体边长的一半,d是眼
//睛距离屏幕的像素
sx=new Array(-p,p,p,-p,-p,p,p,-p);
sy=new Array(-p,-p,-p,-p,p,p,p,p);
sz=new Array(-p,-p,p,p,-p,-p,p,p);
//这三个数组储存了立方体八个点的实际坐标
tempx=new Array(8);
tempy=new Array(8);
//这两个数组用来存储立方体8个点在屏幕上的坐标
function r(){
for(i=0;i     temp_x=sx*Math.cos(angle)-sz*Math.sin(angle);
     temp_z=sx*Math.sin(angle)+sz*Math.cos(angle);
//这个是用来计算立方体在转动时八个点的坐标
  sx=temp_x;
  sy=sy;
  sz=temp_z;
//要这样赋值一下~否则立方体会越转越长
  tempx=(sx/(sz+d))*d+dot_x;
  tempy=(sy/(sz+d))*d+dot_y;
//这个是用来将立方体的实际坐标转化成屏幕的坐标,不懂的可以参考一下计算机图形学的书

}
    _root.createEmptyMovieClip("lines", 1);
    lines.lineStyle(1, 11111111, 100);
    lines.moveTo(tempx[0],tempy[0]);
    lines.lineTo(tempx[1],tempy[1]);
    lines.lineTo(tempx[2],tempy[2]);
    lines.lineTo(tempx[3],tempy[3]);
    lines.lineTo(tempx[0],tempy[0]);
    lines.lineTo(tempx[4],tempy[4]);
    lines.lineTo(tempx[5],tempy[5]);
    lines.lineTo(tempx[6],tempy[6]);
    lines.lineTo(tempx[7],tempy[7]);
    lines.lineTo(tempx[4],tempy[4]);
    lines.moveTo(tempx[1],tempy[1]);
    lines.lineTo(tempx[5],tempy[5]);
    lines.moveTo(tempx[2],tempy[2]);
 &n