2009年07月9日
【心得】技術 vs 創意
好久沒有玩點基礎的東西了, 有時候會想: 技術和創意成正比嗎? 實際體驗後的結論是: 不見得。新奇的技術會讓使用者產生新鮮感, 但是不見得能傳達出正確的核心想法, 很多優良的海報型廣告, 光靠一個靜態畫面就能吸引目光、展現訴求, Flash多了動態, 照理說可以表達出更多東西, 可是有時卻是相反, 有些網站技術超群, 看了之後總是: 哇 好炫! 怎麼做的?有趣。卻反而使人轉移焦點, 關掉網站後, 連網站內介紹的是什麼都忘了, 當目光不是放在網站的內容(what)而是技術(how), 這樣就很可惜了。創意和技術就好比是電影的劇情與特效, 有劇情沒特效可以是小品, 沒有劇情空有特效卻很空虛, 要怎麼拿捏很重要。過與不及都不算好, 就好像太過華麗的文案會讓使用者一頭霧水; 太多物件的畫面會讓視覺失焦, 技術面也是一樣的道理。
並不是說技術不重要, 何況身為一個技術人員, 技術面當然是越深越好, 但是如果能把簡單的技術玩得有趣也很是厲害, 舉例來說, 最基本的beginGradientFill()函式, 稍微改變一下focalPointRatio和旋轉填色方向, 就多了些動態變化, 可以做動態背景或者3D的貼圖, 用法很有創意空間。
不過創意不是說有就有, 若要能把技術玩到深入, 必須要對技術本身有所瞭解才能玩得巧妙, 但是當懂得越多, 反而很容易從技術面發想、或為了技術而技術, 陷入劃地自限的局面。難怪腦力激盪很重要, 不同領域的腦袋湊在一起, 東拉西扯天馬行空, 更能冒出嶄新的想法。
我的個人認知是:「最好的技術, 是讓人感受不到技術的存在。」少了技術的支援時, 可能讓人覺得卡卡的不順暢, 但是加進去後, 也應該讓人覺得本應如此, 感受最深的依然是內容, 所以即使是我個人網誌的一小篇文章, 也常會添加點JS或CSS來輔助, 同時又想盡量做到毫無痕跡, 讓人感受不到任何程式的運作。存在但又不存在, 這是我一直以來追求的境界。
程式原始碼:
stage.addEventListener (MouseEvent.MOUSE_MOVE, redraw);
stage.addEventListener (MouseEvent.CLICK, changeColor);
var fillColor:int = 0x0000FF;
function redraw (e=null):void {
var mouse:Point = new Point (mouseX, mouseY);
var center:Point = new Point (stage.stageWidth * 0.5, stage.stageHeight * 0.5);
var matrix:Matrix = new Matrix();
matrix.createGradientBox (stage.stageWidth * 2, stage.stageHeight * 2, Math.atan2 (mouseY-center.y, mouseX-center.x), -center.x, -center.y);
graphics.clear ();
graphics.beginGradientFill (
GradientType.RADIAL,
[fillColor, 0x000000],
[1, 1],
[0x00, 0xFF],
matrix,
SpreadMethod.PAD,
InterpolationMethod.RGB,
Point.distance(mouse, center) / stage.stageWidth
);
graphics.drawRect (0, 0, stage.stageWidth, stage.stageHeight);
graphics.endFill ();
}
function changeColor (e=null):void {
fillColor = 0xFFFFFF * Math.random();
}
changeColor ();
redraw ();
P.S. focalPointRatio的意思是填色中心點離圓心距離和半徑的比值。

引用URL

很認同以上說法耶...