a)首先肯定要準備好3D人體模型,我當時由於時間原因,壓根就沒功夫去學習那些3D開發引擎,去建模,去繪制什麽的。於是在網上狂找,看有沒有開發引擎提供了現成的而且比較好看的3D人體模型。居然真的讓我找到了,就是Poser軟件,我下的是Poser Pro2012,裏面有很多現成的3D人體模型,而且還比較逼真。我用的是Ryan中的Tomo_LowRes:
b)選定模型之後就是要想辦法將3D人體模型導出了,最好是導出成圖片格式,方便後期的加工。這裏Poser Pro2012就提供了這樣的功能,而且不止能導出圖片格式,還可以導出視頻AVI和flash的swf格式,很是好用。由於要做成360度的效果,所以要導出360度角度的圖片。
在Poser的下面有壹個控制當前幀的控制條,在這裏可以設置妳要導出的幀數,對應每壹幀要挪動人體模型到恰當的角度,可以在右側的Transform裏做調整。
做好每壹幀的模型定位後,可以點擊控制條上的播放按鈕,預覽壹下效果,確定可以後再導出圖片;
導出圖片的步驟如下:
1)點擊人體模型上方的小三角按鈕出現壹個子菜單:
2)找到Render Setting,點擊進去設置導出的格式:
3)找到Movie Settings,設置Format成images,然後點Make Movie,選路徑保存即可,壹些導出的格式控制大家可以自己琢磨壹下。
2.在flash中實現鼠標拖拽360旋轉功能
a) 在flash中先新建壹個場景,設置好大小,要與之前導出的圖片大小壹致。然後新建壹個影片剪輯,可以按Ctrl+F8快捷鍵新建,並命名為mc:
b)向mc中導入所有妳剛才從Poser導出的圖片,然後設置第壹幀的動作為stop:
c)然後調到場景界面,將影片剪輯mc拖到場景中:
d)在第壹幀中添加如下的代碼:
var speed:Number=0.1;//速度參數,修改次參數可以調整速度
var long:int=mc.totalFrames;//總幀數
var newX:Number;
var frame:Number=mc.currentFrame;//當前是第幾幀
stage.addEventListener(MouseEvent.MOUSE_DOWN,mdown);
stage.addEventListener(MouseEvent.MOUSE_UP,mup);
function mdown(e:MouseEvent):void {
newX=e.stageX;
stage.addEventListener(MouseEvent.MOUSE_MOVE,mmove);
}
function mup(e:MouseEvent):void {
stage.removeEventListener(MouseEvent.MOUSE_MOVE,mmove);
}
function mmove(e:MouseEvent):void {
if ((frame+(e.stageX-newX)*speed)>=1) {
frame=((frame+(e.stageX-newX)*speed)-1)%long+1;
} else if ((frame+(e.stageX-newX)*speed)>0) {
frame=long+frame+(e.stageX-newX)*speed;
} else {
frame=long-Math.abs(frame+(e.stageX-newX)*speed)%long;
}
newX=e.stageX;
mc.gotoAndStop(int(frame));
}
e)然後就可以Ctrl+Enter看壹下效果啦,如果出現mc沒有定義的情況,就先在場景中選定mc元件,然後在右邊屬性框中添加名稱為mc即可。