[html5] 用canvas作動畫

為了即將要弄的iphone遊戲,實在是不得不要來理解一下html5…
雖然開頭總是一頭霧水,總之還是先把它一部分一部分的拆開來慢慢了解,為了遊戲的需求,canvas理所當然就是我的第一個目標囉~

canvas如他字面意思就是一張畫布,所以想要讓他變成像是flash一樣的動畫就得先為他加上時間軸,我是把它想像成小時候我們有時會畫在書角的小人一樣,當快速翻動時,人,就可以動起來了!
以下是實現時間軸的code:

function init(){
	canvas = document.getElementById("canvas");
	canvas.width  = WIDTH;
	canvas.height = HEIGHT;
	canvas.addEventListener("click",ctxOnClick,false);
	ctx = canvas.getContext('2d');
	//時間軸
	setInterval(drawCanvas, 1000/FPS);
}
 
function drawCanvas(){
	//sceneTime --;
	// console.log(sceneTime);
	for(i=0;i<objarr .length;i++){
		objarr[i].update();
	}
 
	//把canvas清空
	ctx.clearRect(0, 0, WIDTH, HEIGHT);
	for(i=0;i<objarr.length;i++){
		objarr[i].draw();
	}
}

也就是說,每執行一次drawCanvas,就要把canvas清空一次,然後再從「更新過」的objarr陣列中,一一把東西再畫出來。
繼續閱讀

[Titanium]請全部使用英文檔名

話說今天是打算要把EC2上的SVN設好,把Titanium上的專案上傳到SVN以免再發生該死的command+del慘劇。結果很歡樂的commit結束後,想說來執行一次試試看,就出現了這個訊息…

[ERROR] 
[ERROR] Error: Traceback (most recent call last):
  File "/Library/Application Support/Titanium/mobilesdk/osx/1.7.2/iphone/builder.py", line 1238, in main
    execute_xcode("iphoneos%s" % iphone_version,args,False)
  File "/Library/Application Support/Titanium/mobilesdk/osx/1.7.2/iphone/builder.py", line 1012, in execute_xcode
    output = run.run(args,False,False,o)
  File "/Library/Application Support/Titanium/mobilesdk/osx/1.7.2/iphone/run.py", line 39, in run
    sys.exit(rc)
SystemExit: 65

google了很久,有人說是認證壞掉了!
所以我就把key access叫出來又搞了很久 -> 失敗!
(但是必須確認在認證中沒有無用的重複名稱是確定的)
繼續閱讀

[Titanium+Facebook] 在Titanium中始用Graph API來po文,回應,按讚

想要在APP中加入與Facebook互動的功能,最方便的應該就是用Graph API 了!
而Titanium則把這件事情幫我們都準備好了,所以一旦用Titanium.Facebook.loggedIn做完登入的動作後,就可以用Titanium.Facebook.requestWithGraphPath來使用facebook的Graph API。

像是要取得使用者資料:

	Titanium.Facebook.requestWithGraphPath('me', {}, 'GET', function(e) {
		if (e.success) {
			//something...
		else if (e.error) {
			//something....
		}
	});

繼續閱讀