Entries in the ‘Flash’ Category:

Flash CS5 的新功能

對於Flash CS5的推出,Stanley真是萬分地期待。今次這個版本,明顯地比CS4更勝一籌! 除了為designer加入了新功能之外,CS5也開始著手改善developers方面的features。Flash,你真是愈來愈成熟了!

Built-in Physics Engine

在CS5中,Flash加入了Physcis Engine的組件,這對於designer來說是一個非常大的喜訊。以前designer要把物件在timeline上模擬真的物理反應,只能逐個keyframe慢慢調整,既花時間又不準確。現在,designer只要把movieclips設定為 “Physics Object”,再設定其他參數,如重量、velocity等等,然後就可以讓CS5 計算物件之間的物理反應,最後為所有Physics Object產生一條timeline。只要把timeline play一下,就可以看到了真正的物理反應!

當然,timeline是不dynamic的,即不能根據user input (如滑鼠標)作出反應。再者,現在應該都未support 3D Physcis,畢竟Flash IDE還是停留在2D的空間呢,不過相信這會是下幾個版本內會發生的事。先看看demo吧:

iPhone Packager

上一篇文章都提過,Flash CS5 可以直接publish出iphone格式執行檔。即代表Flash Developer可以加入iPhone App的開發團隊,在App Store上面賺賺錢了!

FLA會變成XML 格式

Flash終於放棄了用binary的fla檔了!!! 這有甚麼好處!? 如果你曾經做過Flash程式的開發,並且用SVN這些version control的軟件,就會知道有多麻煩了。因為FLA很多時都會被改被save,一save過了,不理有沒有改過東西,FLA檔都會被更新,然後SVN就會當它有更改過,下次commit上SVN時,因為binary檔做不到code diff,因此整個FLA也會上載到SVN server,浪費時間及空間。但當變成XML格式的檔案後,version control就可以發揮功用了!

和Flash Builder結合,而且有更強的Built-in Actionscript Editor

Flash built-in的 Actionscript Editor不好用就人所共知,因此很多人都寧願用其他editor,例如Flash Develop,貪它提供了code hint、auto complete、trace variable等這些好功能。現在Flash CS5終於醒覺了, 這是一個好的IDE至少要有的元素吧!




Flash 能成為RIA界的一哥,”易用易學”是他成功的重要因素。可是如果要讓Flash更成功,我覺得有幾個地方還可以改善的:

設定devlopment framework

Flash的好處是很易用,code 放在哪兒也可以跑得到。但是這卻造就成很多沒有質素的Flash 程式及程式員。Stanley看過了很多不同人做的Flash-based website的source code,很多都爛得可怕…有的code 在timeline,有的code在不知多少層內的movieclip內的keyframe上,trace code 難得要命。如果Flash可以提供一個development framework或一個standard,令每個developer的code structure也差不多,相信會令Flash 的development更加健康。

更多的UI components

Flash 內建的UI components太少了,如果在Flash做form-based的程式,所有UI都要自己寫,太花時間。如果可以把Flex那豐富UI components library也port過來一起用,那是多麼的幸福哦。而且Flash正在開始要攻入手機市場,可以的話,應該要為手機平台做些針對手機使用UI components吧!

我想: 現在寫定一個iPhone UI library for Flash也是差不多時候了!

寫Flash的人有福了

今時今日,作為一個developer真是要學寫Actionscript了。為甚麼? Flash 對各平台的支持愈來愈利害了! 在不久的將來,只要你懂做flash application,你就可以用一個code base,deploy到瀏覽器、桌面、智能手機甚至是普通手機了!

Open Screen Project

open screen project

Adobe 正在進行一個叫 Open Screen Project的項目,它的內容主要是想把Flash Player 可以建立在不同的裝置上,如電視機、桌面電腦、手機等,因此以Open Screen為名,希望可以透過Flash平台包容不同大小的screen device,並且為所有平台提供一致的互動性及用戶體驗。

Open Screen Project 官方網頁: http://www.openscreenproject.org/

Flash Professional CS5 – Packager for iPhone


Flash publish出來的程式也很流暢啊~

另一方面,快將推出的Flash CS5,早前已經表明過會包含iPhone Packager,即是你只要把Flash程序寫好,就可以直接把程序publish到iPhone程式的格式,之後就可以上載到App Store供別人下載。到時候,還需要花時間學習複雜的Objective C 麼? 就算是designer,以後都有機會加入寫手機程式的行列了! 雖然iPhone 的Safari已決定不會讓Flash Player 跑,但有iPhone Packager 卻令我更歡喜!

Packager for iPhone: http://labs.adobe.com/technologies/flashcs5/appsfor_iphone/

作為Flash Developer的一群,這些對我們都是莫大的喜訊,而我自己也很看好這個發展方向。首先,Flash 開發用戶群廣,有programmer又有designer,而且Flash 發展了這麼多年,很多人都已經懂得寫ActionScript,learning curve又低。以手機開發為例,手機型號那麼多,各有不同的OS及screen size,如果還要針對性為每個手機寫一個程式,都不知寫多少個版本才行了,所以很明顯這對手機或其他平台的程式發展必定有利。

另外,Flash open source community也十分活躍。現時已經有很多很好用又利害的library讓我們使用,如3D Engine、Physics Engine等等,因此要做各式各樣的程式或遊戲,在網上找一找已經有很多東西可以用,大大加快程式的開發時間!

雖然好處多多,但我覺得還有一些決問題還是要考慮的。我們都知道Flash Lite其實推出了也有很多年,可是為何Flash Application在手機上還是這樣不普及呢? 其中一個原因可能是以前的手機一開始沒有預載到Flash Lite Player吧,一般用戶又怎會懂去找Flash Lite安裝在手機上呢? 另一個問題,就是根本沒有Flash Application下載。可是,Apple的App Store已經告訴了我們解決辦法,就是讓community的一群也可以參與程式開發,然後放到online store讓人下載。如果Ovi Store或Android Market也可容許Flash Application,相信用戶將可以享受更加多姿多彩的程式吧!

說不定,facebook的restaurant city、開心農場會在不久將來出現在手機上了 =]

My First JigLibFlash Demo

JigLibFlash 是一個ActionScript 3.0 的rigid body physics engine。何謂一個physics engine? 就是說只要你把物件放進一個空間後,然後作簡單的設定,所有物件的碰撞、碰撞後的反應、磨擦力、扭力、吸地心引等影響,全部交給這個physcis engine就好了,你完全不用理會那些複雜的物理及數學問題,大大省卻很多時間呢!

JigLibFlash同時簡也整合了papervision3D、away3D 及 sandy3D的支援,針對不同3D engine的愛好者使用,它提供的API也十分易用易明,令我很欣賞這份細心。

以下這個是Stanley測試時做的demo:

Get Adobe Flash player

>> 放大來看

是否很有趣呢~? 有興趣可以下載source code 來玩玩~ 要用Flash CS4 compile才行哦!
>> JigLibFlash Demo (480kb)

有用連結:
JigLibFlash Startup Guide
JigLibFlash Offical Website
JigLibFlash Documentation

Flash Development Guide

前幾天在公司又搞了我的Flash Sharing Lesson 2: Flash Development Guide。這個presentation的目的,是希望讓沒有Flash基本編程概念的朋友了解如何去展開Flash編程之路。這些內容都是Stanley多年來的心血結晶,尤其是第四部份談到的Best Practices,是我發覺很多人都沒有用心考慮過的問題。如果你覺得做Flash很花時間,不妨在此時細心想想如何可以做得更有效率吧。

下載Flash OOP程式範例 >> flash_sharing_lesson2_demo.zip

Flash 101 – Introduction to Flash and RIA

今天Stanley和同事們介紹了Flash、Flex、Silverlight等RIA技術,以及一些Flash的基本知識。很開心,大家對RIA也頗有興趣,反應不錯,對於Stanley這個RIA支持者來說,可說是非常欣慰了。

說真的,之前兩年裡埋頭於RIA的領域中所得的經驗,真是要說大半天也說不完! 從UI的規劃,以至Class要如何按排,我都有我自己一套非常嚴格的標準! 我看過很多人做過的Flash Site的source code,大部份人都沒有思考過優化的問題。要知道”優化”二字包含甚廣,如performance,work flow,team co-operation,UI structure,coding structure等範疇,programmer都可以著手加以改善,可是到google上找,也沒看到有人能夠深入的探討這樣的問題。那麼,就由我來吧!

今天的Sharing只是一個introduction,是讓聽眾們了解RIA的踏腳石~ 餘下的Sharing還有兩節,一節談優化,一節談Visual Effect Programming。又是時候準備powerpoint了~