2009年06月28日
【備忘】JavaScript: 文字欄位浮水印
JavaScript偶爾會寫一點, 但是老是忘東忘西, 也來備忘一下好了。
效果如下:
有浮水印的文字欄位:
<input name="textfield" type="text" value="浮水印自訂文字" style="color: #AAAAAA;" onfocus="if (this.value == '浮水印自訂文字') {this.value = ''; this.style.color='#333333'}" onblur="if (this.value == '') {this.value = '浮水印自訂文字'; this.style.color='#AAAAAA'}" >
另外, Flash也可以這樣玩
...繼續閱讀2009年06月19日
【工具】Papervision3D Collada預覽工具(DaeViewer)
SwirlX3D Viewer
http://www.pinecoast.com/swvdownload.htm
‧優點: 可讀取VRML, X3D, Collada, 3DS, OBJ, PLY, STL等格式
‧缺點: 它可讀取的Collada不一定能被papervision3D接受, 有時是反過來
MAD VERTICES - DAE File Viewer
http://www.madvertices.com/2008/02/dae-file-viewer.html
‧優點: 使用papervision3D建置, 檔案能不能支援一目瞭然
‧缺點: 不能指定檔案
daeviewer (AIR)
http://code.google.com/p/daeviewer/
‧優點: AIR應用, 可拖曳檔案讀取
‧缺點: 操作介面是用slider, 不是我想要的方式
加上先前關注的VizualPV3D雖然已經宣告支援Collada載入功能, 但停留在Alpha版且未釋出, 只好自己先寫一個簡單的小工具了。
*2009-06-23 Update: 就在我嘗試加上動畫預覽功能時, 又找到二個不錯的工具, Papervision3D Previewer 和 Papervision Collada Viewer, 後者因為也是AIR應用所以沒有目錄限制的問題, 而且有動畫播放的功能, 離線時推薦使用~ ...繼續閱讀2009年06月17日
【練習】2D與3D的精準對位
3D的應用不時都會和2D結合, 上一篇的Big and Small有部份是將2D的影像以粒子(particle)等方式置於場景中,一樣有z深度, 也會因為場景的移動而被遮蓋、縮放, 本質上還是MovieClip, 這是2D置入3D畫面的方法; 有時的應用則是需要3D置於2D之上, 因全3D畫面的運算負荷過重, 所以把2D畫面當主軸, 需要時才轉換, 這時候就要用對位的方式, 讓3D物件從2D畫面銜接上來, 聽起來似乎很難, 但其實是很簡單的公式就能達成。
【觀看範例】2D部份是影格動畫, 按下"3D"後隱藏物件並換上3D圖 (隨滑鼠轉動)
公式參考來源: Everyday Flash | demo
...繼續閱讀2009年06月3日
【欣賞】超酷的PV3D作品 - Big and Small
這個作品很巧妙地融合了3D與2D
大部份是3D, 但是畫面意外地柔和
可以看出貼圖的搭配真的很重要, 良好的設計可以讓低面數模型也有驚人的呈現
截圖:
BBC - CBeebies - Big and Small
作品網址:http://www.pluginmedia.net/
作者部落格:Seb Lee-Delisle
...繼續閱讀
2009年05月12日
【工具】PV3D所見即所得編輯工具
寫Flash程式和用介面製作相比,最麻煩的就是無法預覽,每每都得重編來看結果,偏偏Flash IDE或Flex的編譯效能都不是很好,只要改個小地方就要重頭到尾重編一次,程式一多就會很耗時,如果能夠有介面能預覽程式效果不知有多好;尤其是3D程式設計,實際應用裡不可能全3D,常常要和一些平面選單或圖形相結合,可是立體畫面要精準地對位到2D畫面很不容易,primitive貼圖有沒有貼歪、攝影機位置要怎麼拿捏都是困擾…
但是有需求就有供應,真的有高手開發了這樣的工具:VizualPV3D。可以在類似3D編輯軟體的預覽畫面中調整各種參數,雖然現在剛釋出陽春的ALPHA版,但是依設計格局來看顯得很有野心,未來應該還會大幅加強,真的是開發者一大福音阿。
- VizualPV3D
- 連結: www.juxtinteractive.../vizualpv3d/
- 下載: www.juxtinteractive.../vizualpv3d.zip
- 釋出版本: 0.9.084 ALPHA 測試版
- 功能簡介: 目前為全Flash介面、讀取/寫入場景xml、新增/編輯primitive、plane、向量svg、text及貼圖(支援影像檔或打包輸出的swf),燈光(一組)、攝影機調整。
2009年04月26日
【新聞】Google發表open-source 3D瀏覽器外掛&API:O3D
2009年04月20日
【心得】AS3取得當前位址與網域
- root.loaderInfo
- LocalConnection
- ExternalInterface
標籤:Flash,AS3,ExternalInterface,LocalConnection,心得
2009年04月17日
【練習】3D平面拼貼與旋轉
參考:http://www.paultondeur.com/
引用的原因是原文還有一些3D的基礎觀念,值得初學者一看,除了bitmapData切割方式有參考外,其餘程式碼都是另外重寫,主要是延伸PV3D的basicView,basicView已經建立好一組viewport、camera、scene等,不需要再一一建立。
※原始檔須搭配Papervision3D使用
2009年04月16日
【練習】開啟置中小視窗(AS3+JavaScript)
這篇算是【介紹】在Flash中開啟新視窗(AS 2 & 3) 中第二個作法的延伸:開啟置中的小視窗。搭配更完整的javascript語法。
範例如下:
JavaScript函式宣告:(toolbar=no/yes...等參數可以設定小視窗外觀)
function winopen(url,winN,winW,winH){
winX=(screen.width-winW)/2;
winY=(screen.height-winH)/2;
popwin = window.open(url,winN,'left='+winX+',top='+winY+',width='+winW+',height='+winH+',toolbar=no,scrollbars=auto,resizable=no,directories=no,status=no,location=no');
popwin.focus();
}
ActionScript 呼叫:(TARGET.html置換成目標網頁,newwin只是名稱)
var jscommand:String = "winopen('TARGET.html','newwin',180,50);";
var url:URLRequest = new URLRequest("javascript:" + jscommand + " void(0);");
navigateToURL(url, "_self");
一個小小應用。
2009年03月25日
【比賽】Tweetcoding:140個字元的程式,又能做出怎樣的Flash?
Flash程式競賽有越來越微型化的傾向,以前有 4K Game 比賽,先前的 25lines.com 舉辦了25行程式碼的比賽,後來又陸陸續續辦了幾次,參賽作品越來越令人驚豔…25行程式碼看似相當少,但 gskinner 決定舉行一個更短的程式競賽,一下子縮減到限制在140個字元內,這麼少的長度,光是加一句addEventListener就用去了十分之一強,放在文章裡頂多2行,140字元到底能做出什麼?當然做出來的一定不如25lines的成品,但是仍然有程式高手做出很棒的作品,創意五花八門,有的還可以和滑鼠、聲音,甚至攝影機做互動。
比賽規則很簡單:
#tweetcoding: code something cool in <=140 characters of AS3
獎品:Adobe Flash CS4軟體一套
比賽連結:tweetcoding
...繼續閱讀2009年03月11日
【心得】Flash loading的作法與實務
2009年02月28日
【技術】嵌入全畫面的Flash並設定最小高與寬
2009年02月25日
【轉貼】如何成為閱讀空氣達人?
日本財經雜誌《Theory Business》集結企業領導人、藝術創作者、學者等各行各業頂尖人士, 送給年輕上班族突破職場瓶頸的關鍵句,培養「閱讀空氣」的能力:
一、發生意見不同的爭論時,先把那股氣Hold住
年輕人常常沒聽完對方的話,覺得被誤解,就急急辯駁,而不把話聽完,反而留給人不好的印象。
其實,任何會感動大眾的作品,都是以團隊的力量才能完成,不管你多麼有才華、有創意,光靠一個人的本事是無法達成的。因此,不要因為一時的情緒衝動,毀了團隊之間的感情與互信。
...繼續閱讀2009年02月18日
2009年02月1日
【練習】模擬3D視角
| 要如何讓靜態圖移動,看起來像立體空間? 根據道路經驗,隨著車身移動,越遠的景物,越不容易移動;越近的物品,則越快掠過視線。近如電線桿,遠至無限遠,如太陽,彷彿不會移動。 利用這個原理,將圖像上的物件依照深度排列,隨著視角移動,給予不同的位移量,就能夠模擬出簡單的立體效果… |
|
米勒《拾穗》 |
2009年01月18日
2009年01月12日
【心得】用Tweener模擬重力彈跳運動
2009年01月8日
2009年01月1日
【比較】Adobe Flash v.s. Microsoft Silverlight 鹿死誰手?
Adobe Flash不用多解釋,只要有在上網的使用者,一定有接觸過Flash,可能現身為網頁裝飾,可能是個廣告,也可能是個小遊戲;Microsoft Silverlight 則是微軟的產品,中文譯作「銀光」,和Flash同樣是Web前端應用程式,今年又大動作地推出Silverlight 2,大有分庭抗禮的意味。事實上火藥味也早就開始彌漫,對於網頁開發者而言,這二道「光」的較勁遲早會有結果,要不要趁早擁抱Silverlight已經是個值得思考的問題了。
以目前的主流來看,畢竟Flash早在Silverlight出現的十年前就存在了,經過十次以上的大改版,以及為數龐大的背景資源(作品平台、教學網站、類別Package的開發與分享、業界共識),已經是很成熟且不可或缺的應用了,Flash現在正穩坐Web前端多媒體的寶座,誰知道竟然殺出程咬金-微軟。
...繼續閱讀2008年12月20日
【比賽】短短25行程式,可以做出多驚人的Flash?
在Flash中,25行程式碼可以做出什麼作品?特效?遊戲?3D?
答案是都可以!
www.25lines.com在網站上舉辦了這樣一項競賽,Flash裡只有程式碼,也就是包括圖形和互動都由程式包辦,雖然只有短短25行,但是參賽者做出來的成品相當驚人!從近百件投稿裡篩選至12件,然後再進行投票,於12/16公佈了投票結果,勝利者是 Marius Heil 所做的一個文字遊戲 SmilieBounce 25,並贏得了一份 Adobe CS4 Master Collection 做為獎品,看看他的作品完整且具趣味性,相信是最適當的人選了,而其它前十二名的作品也相當不賴,以下依照名次由左至右排列,點圖片可觀看對應的作品:

2008年12月18日
2008年12月13日
【作品】讓網頁裡的多個Flash互相通訊 (使用LocalConnection)
LocalConnection類別,可以在Flash檔之間傳遞訊息,只是功能有所限制,傳送是單向的,一方傳送一方接收,若要雙向溝通,需同時建立二個管道,範例與使用方式可以看官方的教學:
An example of communication between SWF files using LocalConnectionLocalConnection類別的設計是要指定接收端(client),但是不能夠有多個client同時接收訊息,只有一個會收到,所以一旦檔案超過2個,情況就會變得十分複雜。因此在此撰寫了一個可以進行廣播的類別,原理如下:
- 一開始所有的程式嘗試連接同一通道
- 由搶到client權的程式收集所有程式的唯一ID
- 將ID列表傳送至每一個參與程式,並依照每一個ID建立獨立通道
- 每一個程式都取得其它程式的通道資訊,可以開始進行廣播
2008年12月10日
2008年12月9日
【練習】Fash自訂事件的簡易作法
在Flash中,事件驅動是整體架構的核心機制,包括Timeline中影格的交替、按鈕的點擊、游標的移動…等。除了內建的事件(Events),在ActionScript裡,還可以自己定義事件,在開發自己的類別(class)時很有用處,因為有時類別內要載入或定時執行某些動作,但是使用該類別的外部程式,通常不能獲得這些事件資訊,因此需要另外丟出事件…
※ 這次練習旨在以最簡易、快速的方式來實作此需求。 ...繼續閱讀2008年12月8日
【心得】Toshiba Satellite M100 螢幕黑屏問題
將筆電開著一段時間後
突然不預警地變成黑屏(亮黑,不是全黑)
蓋上再打開的招式失靈,按功能鍵也沒有反應
瞬間有點沮喪,竟然是在過保固期後出了問題…
...繼續閱讀






