跳到主要內容

發表文章

目前顯示的是 一月, 2009的文章

PV3D2.0 Snippets Panel for Flash

是否一直記不住PV3D類別的使用方法呢?
來安裝這個PV3D Snippets Panel
下載後解壓縮檔, 即是.mxp格式
點二下安裝該外掛,重新啟動FlashCS3或是CS4
在windows裡的other Panel即可找到該面版

有一系列的PV3D類別, 點一下你需要的, 再按下copy to clipboard
再到影格貼上就會有程式碼了, 真是方便呀
如果想要該面版的原始碼,可以到http://gotoandlearn.com下載
該作者有分享

AdobeCS4繁體中文式用版下載

在adobe的官網, 可以下載一系列的CS4試用版本
但就是找不到繁中版。

經由友站的介紹, 繁中版在英文的adobe站是找不到的


要把語系切到韓語www.adobe.com/kr找有繁中版。
這個還真的是!@#&U%(@#%。
看不懂韓語沒關係,
下載時的語言只要選擇最後一個就是繁中版的。

安裝好後, ya是的, 繁中版的DreamweaverCS4。
有圖有真相。

其他系列的軟體也是一樣的下載方式,就可以繁體中文版了。

2009.02.05更新, 感謝菜鳥梅子同學提供的資訊
在英文的官網, 下載試用版, 選擇韓語版, 不用懷疑。
安裝好了, 就會是繁體中文版了。
這個還真讓我無言。

Queasy Tools Panel v1.5.0

身為Flash的使用者, 這個組件奶小茶我100%推薦呀。
他是安裝在Flash CS3/CS4的組件面版外掛, 透過該面版的功能
可以幫你快速的完成一些煩人的步驟。

1.快速使用Easing的方式建立影格上的Tween動畫,。
2.圖層可視開關。
3.Library裡的JPG smooth功能開啟。
3.對齊場景左上角。
4.自動大小寫。
5.拷貝座標位置。
6.快速翻轉。
下載該.mxp, 使用Adobe Exchange Manager開啟即可
再重新啟動Flash CS3, 在windowls裡,選擇其他面版就可以找到。

Mockups For Desktop

一個很有趣的桌面拉Layout應用程式
http://www.balsamiq.com/products/mockups/desktop#download
使用Adobe AIR所開發的桌面應用程式,
有許多現成的小工具能直接托拉置放。
不知道對企劃大大們還有設計大大們在設計時會不會有幫助。
我覺得還滿有趣的軟體
線上youtube影片檔。
http://tw.youtube.com/watch?v=zLysy3IPfFI

新案上線_資生堂心機專館

美美的資生堂心機美人又來了
今年度換了心機代言人
依然是美麗閃閃呀。
這次的專案為了讓底圖能附合每位使用者的解悉度,
還不能被切到, 也不能變型, 所以寫了一個類別來專門除處這樣的需求。
http://mq.shiseido.com.tw/#/newsproduct200901/
點選網址後, 進入單元裡的四位Model主圖, 可以試著縮放Browser的大小
圖片都可以自動的縮放。




也分享奶小茶我所寫的程式碼:

<br />Stage.scaleMode = "noScale";<br />Stage.align = "TL";<br />import milkmidi.utils.ResizeObject;<br />var resizeObj:ResizeObject = new ResizeObject();<br />/*<br />resizeObj.addResizeTarget(目標物件:Movieclip, x軸的對齊:Number, y軸的對齊:Number, 縮放方式:String);<br />目標物件:要對什麼可視物件做縮放, as2只有MovieClip可以。<br />x軸的對齊:0表示對齊畫面左邊,0.5畫面中正間,1畫面的右邊。<br />縮放方式有三種:<br />RESIZE_FULL:自動滿版。<br />RESIZE_WIDTH:以寬度為主。<br />RESIZE_WIDTH:以高度為主。<br />*/<br />resizeObj.addResizeTarget(this.keyVisual_mc, 1, 0, ResizeObject.RESIZE_WIDTH);<br /><br />/*設定最小寬、高, 當小於該值時就不在縮小*/<br />resizeObj.setMinSize(800, 800);<br />
SourceCodeDownload

BannerSlide效果

學生提到的問題
Demo效果:
http://www.uniqlo.com/jp/
上方的Banner輪播怎麼製作的呢?
1先製作數字的MovieClip元件, 做好RollOver動畫和RollOut動畫。
2使用Timer來當作自動播放器。

var numberContainer:Sprite = new Sprite(); //下方數字的容器。 numberContainer.y = 375; this.addChild(numberContainer); var itemOfNumber:int = 4; //圖片數量。 var currentIndex:int = 0; //目前播放的索引值。 var timer:Timer = new Timer(3000,0); //Timer,用來自動播放下一張圖片。 timer.addEventListener(TimerEvent.TIMER,onTimer); //偵聽事件。 timer.start(); //啟動Timer。 var ldr:Loader = new Loader(); this.addChildAt(ldr,0); for (var i:int = 0; i itemOfNumber-1){ currentIndex = 0; //因為有自動播放的功能, 避免圖片索引值一直越上加。 } var _currentMC:MovieClip = numberContainer.getChildByName("item" + currentIndex) as MovieClip; _currentMC.gotoAndPlay("over"); ldr.load(new URLRequest("images/" + currentIndex+".png")); //讓現在的數字。 } 補充:2009_2_15, 增加XML版和圖片連結功能, 請重新下載
SourceCodeDownload

Flash 3D physics engine

等候已久的Flash 3D physics Engine出現啦
名稱為:jiglibflash
http://code.google.com/p/jiglibflash/
結合PV3D直接使用, 開心, 不需要再重學。
使用方法也很簡單
在建立PV3D物件後, 再建立對映的Physics物件
如:
new Cube之後
再建立一個JBox來對映
目前支援的碰撞物件有,球體、方塊、Plane。
也支援鏈結的效果。
奶小茶將官方的Demo改寫成自已的Demo。


原始碼:

/* Example Flash 3D Physics version 0.25 with timestep Control by : arrow keys and space bar 3D physics used : jiglibflash (http://code.google.com/p/jiglibflash/) 3D renderer used : Papervision 3D (http://code.google.com/p/papervision3d/) Credits : Muzer Demo by : milkmidi */ package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageQuality; import flash.display.StageScaleMode; import flash.events.Event; import flash.events.MouseEvent; import flash.utils.getTimer; import jiglib.geometry.JBox; import jiglib.geometry.JSphere; import jiglib.math.JMatrix3D; import jiglib.math.JNumber3D; import jiglib.physics.PhysicsSystem; import jiglib.physics.constraint.JConstraintPoint; import org.papervision3d.li…

2009_Portfolio

感謝1/11當天所有到場的朋友
一起來參於分享會,
因為時間的關係, 所以並沒有把全部的作品Demo完。
完整的Demo可以點擊這兒欣賞。

http://portfolio.milkmidi.com/
待有空時, 我再把相關的原始碼整理好讓大家下載學習。
Copwer和D.CAT的分享也是很精彩。
期待下次的分享會。

Flash_加入我的最愛

在製作網站, 想要讓使用者快速的加入我的最愛
在Flash裡要怎麼製作呢?
加入我的最愛的作法, 一定需要使用JavaScript來製作
Flash本身沒辦法, 也不需要有此功能。
透過Flash去呼叫JavaScript來執行加入我的最愛函式即可。
程式碼:

方法1:將整個呼叫JavaScript的函式直接寫在Flash裡
這樣Html裡就不需要加寫JS的函式。
<br />add_mc.addEventListener(MouseEvent.CLICK,onClick);<br />add_mc.buttonMode = true;<br />function onClick(e:MouseEvent):void {<br /> if (Capabilities.playerType == "ActiveX") {<br /> ExternalInterface.call("window.external.AddFavorite", "http://milkmidi.blopspot.com", "milkmidi.com");<br /> } else {<br /> ExternalInterface.call("window.sidebar.addPanel", "milkmidi.com", "http://milkmidi.blopspot.com", "");<br /> }<br />}<br />

方法二:
在html裡寫上JS的函式:
<br /> <script type="text/javascript"><br /> function addFavorite() {<br /> //window.external.AddFavorite(location.href, document.title);<br /> var title = document.…

PV3D2.0 Camera類型切換

PV3D2.0之後的版本
把TargetCamera和FreeCamera整合在一起了
也就是只有一個Camera3D類別
那怎麼切換呢?
var camera:Camera3D = new Camera3D();
camera物件有個target屬性, 指的就是camera的鏡頭要看著誰。
當設定成camera.target = new DisplayObject();
鏡頭就會看著新建立的3D物件座標,就會一直看著0,0,0座標。
就是TargetCamera。
要切換成FreeCamera的話, 就把target屬性設成null即加。


程式碼:
package{ import flash.display.MovieClip; import flash.display.Sprite; import flash.events.MouseEvent; import flash.utils.getTimer; import milkmidi.papervision3d.Trident3D; import org.papervision3d.materials.ColorMaterial; import org.papervision3d.objects.DisplayObject3D; import org.papervision3d.objects.primitives.Plane; //匯入MovieClip類別。 import flash.events.Event; //匯入事件類別。 import org.papervision3d.view.BasicView; //匯入BasicView類別。 public class ToggleCameraType extends Sprite { //A01_BasicDocument類別, 繼承MovieClip。 private var view:BasicView; //宣告view變數為BasicView物件。 private var isTargetCamera:Boolean = true; private var btn:TestButton; public function ToggleCameraType():void{ //建構函式, 該類別被實體化時, 會執行一次。 //可以把要…

Flash10 Pendant

之前是使用PV3D來製作, 這次就直接用Flash10內建的3D來使用即可。
原理是一模一樣的, 其實我偷偷包了二層。
一層管rotationX,一層管rotationZ, 就可以有這樣的效果了。
原始碼

<br />package <br />{<br /> import flash.display.Bitmap;<br /> import flash.display.Sprite;<br /> import flash.events.*;<br /> import flash.filters.ColorMatrixFilter;<br /> import flash.geom.ColorTransform;<br /><br /> [SWF(width="950", height="500", frameRate="47", backgroundColor="#eeeeee", pageTitle="PV3D milkmidi")]<br /> public class PendantDemo extends Sprite<br /> { <br /> [Embed(source="assets/milkmidiDemo.jpg")]<br /> private var Texture:Class; <br /> <br /> private var offsetX :Number = 0.1; <br /> <br /> private var clickForce :Number = 1.6;<br /> private var bounceForce :Number;<br /> private var bounceSpeedAcc :Number = 0;<br /> private var rotationYSpeed :Number;&…

PV3D 控製DAE

這個是之前PV3D官網所提供的Focus DAE模型,
我將其原始碼改成PV3D2.0的程式。
由Flash來控製模型的移動和轉旋。
使用鍵盤的上、下、左、右可以移動車子。
DAE是繼承DisplayObject3D, 所以也有x,y,z等屬性。
DAE裡面可以包含了許多的子系3D物件, 名稱的話, 就是在3D建模時取的名稱,
到了PV3D時會一樣。
所以可以使用getChildByName來取得子系物件
但較麻煩的是DAE包了很多層
以這個Focus.DAE來看
他的架構是:
DAE ---- COLLADA_Scene ------Focus ------ Steer_FR
也就是車身是在第三層
而輪子是在第四層

SourceCodeDown
請用FlashCS4 , 或是Flex, FlashDevelop發怖
FlashCS3不支援Embed Tag
不然就自已改寫一下吧

PV3D2.0基本教學三_材質與物件

PV3D裡的可視物件建置, 都是一個物件, 貼上一個材質, 再被加入至Scene3D物件裡,
然後運算出來。
接下來我們試著建立一個Plane物件, 並貼上色彩材質ColorMaterial。
Plane類別是繼承DisplayObject3D, 所以擁有x,y,z等屬性。
new Plane(材質:MaterialObject3D, 寬:Number, 高:Number,
水平切面數:Number, 垂直切面數:Number);
參數1:材質,只要是任何繼承MaterialObject3D的物件,都可以被當作材質來使用。
參數2:Plane物件的寬度。
參數3:Plane物件的高度。
參數4:水平切面數。
參數5:垂直切面數。
切面數會影響到圖片的品質,切面越高,圖片能呈現的效果越好, 但相對的就需要更多的運算。

ColorMaterial類別。
色材材質, 只能是單一的顏色。
new ColorMaterial(色碼:uint,透明度:Number);
參數1:色碼。
參數2:透明度, 由0完成透明到1不透明。



package { import flash.display.MovieClip; import flash.events.Event; import org.papervision3d.view.BasicView; import org.papervision3d.materials.ColorMaterial; //匯入材質包裡的色彩材質。 import org.papervision3d.objects.primitives.Plane //匯入基本物件包裡的Plane物件。 public class A02_primitives_Plane extends MovieClip { private var view :BasicView; private var plane :Plane; //宣告plane變數, 型別為Plane。 public function A02_primitives_Plane():void { init3DEngine(); initPV3DObject(); } private function init3DEngine():void{ view = new BasicView(0…

PV3D2.0基本教學二

設定PV3D類別檔, 可以參考奶老師的第一篇教學
PV3D2.0基本教學一
PV3D世界是由幾個基本的物件組合而成, 如果你有3D動畫的製作經驗, 應該很好理解,
如果沒有也沒關係, 後面的許多範例會一一介紹到。
Viewport3D:
視圖窗口, 簡單來說可以想像是Flash裡畫布的大小, 也可以理解成算圖的尺寸。
Scene3D:整個3D的場景, 之後建立的3D物件都是被加入至其中。
Camera3D:PV3D的鏡頭, Camera3D是用來拍攝Scene3D的畫面。
BasicRenderEngine:算圖類別, 把所有的數據值結果運算成圖像。
像想一下你座在一台電視機前, 電視機的螢幕尺吋就是Viewport3D的大小
電視台的攝影棚就是Scene3D, 攝影機就是Camera3D, 當電視機收到訊號,
透過訊號轉換將數據運算成圖像, 這個工作就像是BasicRenderEngine類別。
流程即是BasicRenderEngine 運算Camera3D所看到的Scene3D世界,
並將畫面呈現在Viewport3D。
一次要記住四個類別對第一次使用PV3D的使用者可能會有些害怕。
新版本的PV3D 提供了一個整合的視圖類別BasicView。

該類別是繼承Sprite, 所以可以被加入至可視物件容器裡。
BasicView類別已包含了Scene3D,Camera3D,Renderer,Viewport四種物件,
不需要再另外建構。
因為PV3D畫面需要不斷的被更新, 透過Event.ENTER_FRAME事件不斷運算,即可一直更新畫面。
建立PV3D世界的步驟。
1.建立一個類別檔當作文件檔當別使用, 該類別必需是繼承MovieClip或是Sprite。
public class 類別名稱 extends MovieClip
2.匯入PV3D所需的類別。
import org.papervision3d.view.BasicView;
要一次匯入該類別包下的所有類別, 可以使用星號來代示。
import org.papervision3d.view.*;
3.宣告PV3D所需的相關變數
private var view:BasicView;
view變數, 型別為BasicView。
4.建立init3DEngine 函式, 用來初始化BasicVi…

[創意講堂3] 札根 專業 迎向2009

專業人才會不斷磨練本身技能,致死方休,他們追求知識的好奇心永遠不會滿足~ 大前研一
年輕,是札根的時刻,現在的你準備好了嗎~ 張忠謀
2009/1/11 週日 下午, 將有五位精彩的構師分享工作上的專業經驗。
活動網址:http://funwish.net/?p=104
本次創意講堂內容規劃如下(實際內容將依講師群作調整):2009/1/11 週日 下午時間主題講師13:30 開放進場 14:00
~ 14:50
Papervision 3D & Flash CS4
奶綠泡茶吃點心 15:00
~ 15:50
Creation & Creative Web Design
Cowper Wang
聊天哈拉 16:00
~ 16:50
Adobe Flash Catalyst (Thermo)
Jeremy
聊天哈拉 17:00
~ 17:50
Coltrane (Wordpress 2.7)
&
Applications of the Social Network
陳嵩文 / 劉凱新
討論交流