最近遇到一個需求:在user按下某個按鈕後要讓畫面上所有的動態停下來,而且有5個檔案要這樣做,其中幾個元件還頗複雜,因為加了很多效果。顯然,要手動去停止所有MovieClip會做到死,記得之前有看過走訪某個DisplayObjectContainer底下的所有DisplayObject的範例,就是殿堂之路這本書。
2010年9月21日 星期二
簡單談用BitmapData.compare來做手畫路徑比對
有一種遊戲類型,就是電腦指定一個形狀路徑,例如一個圓,或一個方型,然後要使用者去"畫出"這個形狀。畫路徑這個比較常見,就是用一些Flash的繪圖API把路徑畫在Sprite.graphics。那畫完之後要怎麼跟指定的路徑去比對呢?可以把原有路徑(先做好圖,設定visible = false藏起來)以及user畫的路徑的BitmapData取出來,再使用BitmapData.compare去比對兩個BitmapData,就可以去做判斷。
標籤:
BitmapData,
compare
簡單談Embed字型到AS檔
簡單記錄一下Embed字型到AS檔的做法。雖然我們可以直接在主要程式裡Embed字型,可是這樣做的話,每次發佈都要多花時間。我試過光是Embed常用的Ariel的數字,發佈時間就要多5秒,這樣會拖慢開發速度。所以這邊介紹的方法分兩步:1.把Embed字型的AS檔單獨發佈成一個SWF檔。2.要用的時候再去Load這個SWF進來。如此一來,只需要花一次Compile的時間,當有多個地方需要用到這個字型檔的時候,也可以去Load同一個SWF檔。
2010年9月18日 星期六
半個月,還過得去~
真的感謝各方好友的支持~讓我從這個月初就一直有案子做,解除了我對於沒有穩定收入的不安。今天剛好工作告一個段落(雖然這兩天應該多少會有些修改),稍微可以喘口氣。接下來還有一堆東西要K,Android也該認真玩了。
只不過一個人工作雖然自由,但也是超悶的啊~所以不時的會往網基那邊跑,就像今天這樣,要跟我講八卦啊~~還有就是,foursquare也請努力check in,把我這個mayor擠掉吧!!
2010年8月31日 星期二
下一個階段?
今天是在網路基因的最後一天。離開的這件事情對很多同事來說很突然,但其實做這個決定已經半年了。這種事情也不好一天到晚掛在嘴邊,所以到最後才讓大家知道。
原因,很複雜,我也說不太清楚。簡單歸納出一點,就是覺得應該進入下一個階段了。並不是網路基因不好,而是現在的工作沒辦法帶給我太多成就感。人啊~終究還是要靠這種虛幻的情感來支撐下去。
那下一個階段是什麼?這問題我想了半年也沒有很清楚。應該不會再進入網路行銷公司,遊戲公司有考慮過,但應該也不是我想要的。短期之內會先以接案來維持生計吧~所以如果有有趣的互動網站想要外發,歡迎跟我聯絡。
前面講的好像我對自己的人生沒有甚麼目標與規劃。其實我有個最終的理想,既沒有老闆,也沒有付錢要你改改改的客戶,而是自己做出有趣的東西,直接賣給使用者。這樣的機會其實越來越多,智慧型手機的應用程式,還有Adobe AIR,現在有越來越多的平台去達成這樣的目標。接下來除了接案以外,我會先把時間投注在Android開發上面。等累積一點資金,也會開始玩iPhone。AIR最近越來越活絡,所以可能也是個投資的方向。
就是這個樣子啦~~明天開始就要過著不知道下一筆收入會在哪裡的日子了~~
原因,很複雜,我也說不太清楚。簡單歸納出一點,就是覺得應該進入下一個階段了。並不是網路基因不好,而是現在的工作沒辦法帶給我太多成就感。人啊~終究還是要靠這種虛幻的情感來支撐下去。
那下一個階段是什麼?這問題我想了半年也沒有很清楚。應該不會再進入網路行銷公司,遊戲公司有考慮過,但應該也不是我想要的。短期之內會先以接案來維持生計吧~所以如果有有趣的互動網站想要外發,歡迎跟我聯絡。
前面講的好像我對自己的人生沒有甚麼目標與規劃。其實我有個最終的理想,既沒有老闆,也沒有付錢要你改改改的客戶,而是自己做出有趣的東西,直接賣給使用者。這樣的機會其實越來越多,智慧型手機的應用程式,還有Adobe AIR,現在有越來越多的平台去達成這樣的目標。接下來除了接案以外,我會先把時間投注在Android開發上面。等累積一點資金,也會開始玩iPhone。AIR最近越來越活絡,所以可能也是個投資的方向。
就是這個樣子啦~~明天開始就要過著不知道下一筆收入會在哪裡的日子了~~
2010年8月12日 星期四
在Facebook粉絲專頁的Tab上使用FBJS抓取使用者uid,以及一些基本操作
之前寫了一篇使用Facebook Application在粉絲專頁上面加開一個頁籤tab,大概說明了如果要在粉絲專頁做一些進階的操作,可能需要建立一個App.來新增這個Tab。這一篇要接著再來講一些應用,介紹一些粉絲專頁常用的參數、FBJS、FBML,最後想要抓到使用者的uid,因為如果想要知道哪個user在粉絲專頁上做了甚麼,那最基本的就是要抓到uid。
2010年7月31日 星期六
Adobe AIR開發Android Application的流程簡介
發現不常做的步驟,很容易忘記。做個筆記,順便分享一下。
首先,我們要有幾點基礎認知:
1.AIR for Android目前還在Prerelease版階段,還沒有推出正式版。目前每隔一陣子會有新版本,增加一些新的功能。
2.AIR for Android一開始釋出的版本可以在Android 2.1及Android 2.2上面跑,但後面幾次更新就只看到2.2版的Runtime了。
3.AIR for Android的效能比起直接使用JAVA開發仍有一大段差距。將來的版本理論上也只能盡量逼近JAVA的效能而已。
綜合以上幾點,老實說AIR for Android目前也只能拿來玩玩而已,將來即使正式版推出,我想就如Maso在第三屆 PTT Flash 閃光俱樂部分享時一直說的:要使用AIR的話,就應該要去做一些JAVA做不到或不容易做到的事吧。
首先,我們要有幾點基礎認知:
1.AIR for Android目前還在Prerelease版階段,還沒有推出正式版。目前每隔一陣子會有新版本,增加一些新的功能。
2.AIR for Android一開始釋出的版本可以在Android 2.1及Android 2.2上面跑,但後面幾次更新就只看到2.2版的Runtime了。
3.AIR for Android的效能比起直接使用JAVA開發仍有一大段差距。將來的版本理論上也只能盡量逼近JAVA的效能而已。
綜合以上幾點,老實說AIR for Android目前也只能拿來玩玩而已,將來即使正式版推出,我想就如Maso在第三屆 PTT Flash 閃光俱樂部分享時一直說的:要使用AIR的話,就應該要去做一些JAVA做不到或不容易做到的事吧。
2010年7月23日 星期五
使用FlashDevelop來幫自定義的Library產生SWC、ASDoc、以及Fat SWC
Flash程式開發一段時間後,相信大家多少都會開發自己常用功能的Library來使用。一開始當然要先產出source code,一堆.as檔案依照package分別放在適合的資料夾裡。慢慢的,我們可能會想把這一堆檔案包裝成一個SWC檔,不但輕巧方便,也比較快速。現在大部分的Libraries都有提供SWC檔。隨著我們自定義的功能與類別越來越多,我們可能會希望產出一份說明文件,一方面提醒自己,另一方面也讓工作夥伴方便了解這些Lib.的功能,如果要公布出來給大家使用,那就更不可或缺啦。最常見的文件格式,就是ASDoc,也就是如ActionScript 3.0 Client Library for Facebook Platform API,或者Adobe自己官方的ActionScript 3.0 Reference for the Adobe Flash Platform,相信這樣的文件大家並不陌生。這些html當然不是人工刻出來的,只要在source code裡面依照一定的規則加上註解,再經由工具就可以產出。不管是SWC或者ASDoc都有一點歷史了,這篇最主要還要介紹新一點的東西--Fat SWC。從Flash Builder 4開始,code hint不再只有參數的型別,而是連同ASDoc裡的說明都會自動跑出來,減少了程式寫到一半還要去查說明文件的機會。FlashDevelop最新的版本也已經支援,不過我們所使用的Libraries的SWC必須是Fat SWC,也就是包了ASDoc產出的一些XML檔案進去的SWC,這樣開發工具才能把註解抓出來顯示在code hint裡。下面就一項一項來說明如何用FlashDevelop來幫我們產出。
標籤:
ASDoc,
Fat SWC,
FlashDevelop,
SWC
2010年7月20日 星期二
Youtube API簡介,AuthSub認證,以及Browser-base Upload
前陣子研究了一下Youtube API,稍微分享一下心得,讓有興趣的人可以比較好上手。由於已經很久沒寫Server端程式了,所以只能大概介紹一下概念。
首先Youtube API共分幾塊:
Widget:
只要在產生Widget的頁面上輸入一些例如網址、關鍵字等資料,就可以產生Widget的程式碼,就可以直接貼到網頁上使用。目前只有Video Bar與Video Search Control兩種。
Custom Player:
也是一樣輸入一些設定值就可以得到自訂撥放器的程式碼,也可貼到網頁上使用。
Player APIs:
可以使用JavaScript或ActionScript來自己撰寫Youtube撥放器。
Data API:
這部分才是重點了。透過Data API,可以經由認證連結user的Youtube帳號,可以取得影片資料,下評論,上傳影片等等。接下來要介紹的主要是這一塊。
接著我們進入到Youtube API的Getting Started頁面。這一頁就是剛剛介紹四大類API的頁面。左邊攔有一長串相關的文章連結,這邊就稍微介紹哪幾篇重要該看。
首先Youtube API共分幾塊:
Widget:
只要在產生Widget的頁面上輸入一些例如網址、關鍵字等資料,就可以產生Widget的程式碼,就可以直接貼到網頁上使用。目前只有Video Bar與Video Search Control兩種。
Custom Player:
也是一樣輸入一些設定值就可以得到自訂撥放器的程式碼,也可貼到網頁上使用。
Player APIs:
可以使用JavaScript或ActionScript來自己撰寫Youtube撥放器。
Data API:
這部分才是重點了。透過Data API,可以經由認證連結user的Youtube帳號,可以取得影片資料,下評論,上傳影片等等。接下來要介紹的主要是這一塊。
接著我們進入到Youtube API的Getting Started頁面。這一頁就是剛剛介紹四大類API的頁面。左邊攔有一長串相關的文章連結,這邊就稍微介紹哪幾篇重要該看。
2010年7月5日 星期一
使用Embed來加速Flash編譯,並結合到Progression 4專案裡
2011/3/7更新
開發Flash網站時,需要不斷的修改-發佈來測試程式碼,而使用Flash IDE來發佈的話,每次Ctrl+Enter按下去就必須把元件與程式碼都一起重新編譯一次。在CS3以前,除了內嵌影片,這樣發佈倒還很快。但到了CS4,甚至到了CS5,這樣反覆的發佈可能會把開發者逼瘋,因為實在太~慢~啦~。為了加快開發的速度,這陣子找了不少資料,分析比較各種的方法,最後決定採用Embed的方式,將編譯好的元件「嵌進」程式碼,然後在FlashDevelop裡面發佈。在研究的過程中發現,其實沒有一個方法是十全十美的,每個方法都有優點及缺點,最後還是要依照自己開發的習慣來做取捨。以下先分析幾個我找到的方法,說明為何採用Embed,最後看看這方法如何結合到前面使用的Progression 4專案裡。
開發Flash網站時,需要不斷的修改-發佈來測試程式碼,而使用Flash IDE來發佈的話,每次Ctrl+Enter按下去就必須把元件與程式碼都一起重新編譯一次。在CS3以前,除了內嵌影片,這樣發佈倒還很快。但到了CS4,甚至到了CS5,這樣反覆的發佈可能會把開發者逼瘋,因為實在太~慢~啦~。為了加快開發的速度,這陣子找了不少資料,分析比較各種的方法,最後決定採用Embed的方式,將編譯好的元件「嵌進」程式碼,然後在FlashDevelop裡面發佈。在研究的過程中發現,其實沒有一個方法是十全十美的,每個方法都有優點及缺點,最後還是要依照自己開發的習慣來做取捨。以下先分析幾個我找到的方法,說明為何採用Embed,最後看看這方法如何結合到前面使用的Progression 4專案裡。
標籤:
Embed,
Flash,
Progression 4,
SWC
訂閱:
文章 (Atom)