弦而時習之

Zigfu 跨平台的 Kinect SDK

之前和系上老師借了一個多學期的 Kinect 卻只有做完用 Mac 連接 Kinect 並且搭配 Unity3D 的功課,就一直沒有成果。 暑假也即將結束,緊接而來的就是全力投入在畢業製作,不過在此之前,還是得先把答應老師的功課做完。

雖然時間不足以製作一款遊戲,但是將 Zigfu 這款非常好用的工具使用介紹完整的說明,我想多少也算是能夠完成一部份的任務了!


Zigfu 基本上是設計給 Web 使用的,因此目前支援是 JavaScript 和 Unity3D 兩款(Flash 過了半年依舊開發中⋯⋯) 不過 Zigfu 卻替 Mac 使用者解決了一個問題,就是 OpenNI / OpenNI2 的安裝,沒有驅動就無法使用 Kinect 是 Mac 用戶的痛。

不過很可惜的是,目前最新的 Mac 驅動只能順利與 Kinect 溝通一分鐘左右,之後就是當機。 也因此,這系列的文章都是針對 Windows 所說明的,但是成品對 Mac 的支援是確定的,即使會當掉⋯⋯

至於 Zigfu 大致上做了什麼呢? 將驅動程式包裝起來,協助使用者安裝(Windows 使用者需要自己安裝驅動)並且提供 ZDK (SDK) 讓開發者可以用統一的界面,存取 Kinect(官方)、OpenNI、OpenNI2 的 Middleware。

關於 OpenNI / OpenNI 2 的介紹,可以參考這篇文章

使用 Zigfu 的骨架功能

接續上一篇文章的介紹,這一篇文章會針對 Kinect 在遊戲類型應用上最為重要的功能「骨架」來做討論。

在 Zigfu 中,已經提供了 ZigTrackedUser.Skeleton 這個物件讓我們可以存取骨架,與前一篇文章不同的地方在於,我們會用 Zig_UpdateUser 這個方法存取骨架。

Unity3D - 元件化的遊戲製作

這篇文章一部份是寫給同學看的,在做遊戲中似乎挺常使用到的,而這個「特性」如果能夠理解的話,未來同學在製作遊戲應該也是會順利很多,另一方面就是 SITCON 的投稿,大概就是以這個為主軸來討論。

依照網路上的說法,這個概念應該是在 Unity3D 熱門之後,才比較被大眾所熟悉。而我個人是在 2013 年的 COSCUP 在半路大的演講第一次獲得「元件化」的關鍵字,這確實也是一個不一樣的概念。

至於後續如何呢?讓我們一起看下去。 (關於非遊戲的討論,我之後會另外寫文章,這邊以 Unity3D 的 Component 概念為主。)