2017年12月3日 星期日


同事生日,另一位同事拿出 iPhone 8 Plus 展示了視差濾鏡效果,感覺不錯。很想買一台。但我喜歡 iPhone 8 多過 Plus,就算買也只會是細機,而細機是沒有雙鏡頭,拍不出帶視差數據的照片。我在想,Apple 的濾鏡也只是軟件,能不能在 iPhone 7 Plus 上編寫而達到相同效果呢?結果是可行。

2017年11月29日 星期三

IN117 Team Song


詞:Pacess, Johnson, Mandy

想起那天一同前行 全力一拼衝極限
意識到我唯有去愛 才令世上添新機
交出我心方能完全 朝著我路總未倦
理想方向全力去拼 終可會得到

願為理想 全力去幹不怨命
若遇挫時 仍然毫無懼與驚
若沒跌到 其實也已肯定
若犯錯時 容我 Break Through 再起
能時常懷自信 令你令我添力量
有勇氣創高峰 跨過千百山嶺
讓昨日無數夢 能一一的得到
我發亮尤如耀晚星

想起那天一同前行 全力一拼衝極限
意識到我唯有去愛 才令世上添新機
交出我心方能完全 朝著我路總未倦
理想方向全力去拼 終可會得到

為著理想 誰亦要去起革命
若遇挫時 仍然毫無懼與驚
為著理想 寒夜裡也不間斷
若犯錯時 容我 Let Go 說清
能時常懷自信 令你令我添力量
有勇氣創高峰 跨過千百山嶺
讓昨日無數夢 能一一的得到
我發亮尤如耀晚星

想起那天一同前行 全力一拼衝極限
意識到我唯有去愛 才令世上添新機
交出我心方能完全 朝著我路總未倦
理想方向全力去拼 終可會得到
<Repeat Twice>

停望障礙 忘記過去 終可會衝線

2017年11月26日 星期日

相信自己,隨心出發


應承了同事在十一月內完成某個功能,這兩天努力趕工,但還是徒勞。進度行慢,很多部份都不似預期,很有壓力、很想放棄。承諾了就要做到,但思想混亂,程式更易出錯。怎麼好?畫了一張畫鼓勵自己:「相信自己,隨心出發」。

2017年11月23日 星期四

支持你


這兩天悶悶不樂,有點情緒,想抓點抒發的渠道,於是用畫作來達成。在午飯時間隨手畫了四個公仔,我最喜歡這張。神態鬆容自然,好像有個少女在背後默默支持自己一樣。公仔的造型是一位我很著緊的同事,同時也是為她而繪,希望能支持到她的心靈。

2017年11月19日 星期日

IN117


IN117,誠信網絡 Integrity Network 第 117 班。轉眼間已經畢業了十八個年頭。今日再次相聚,大家繼續成為領袖,生活也有很多轉變。Buddy 的孩子,由當初的小朋友變得婷婷玉立、有的 Buddy 成家立室、有的將近退休、有的已經成為導師。IN117 出產的導師應該是歷屆 IN 之冠。

很懷念當日的衝刺,也懷念自己在 IN 期間的創作。人生第一首 Team Song 歌詞、第一個團體標誌設計、第一輯海報設計、第一套 Team 衫設計。當時我更準備多一套作為紀念。再一次多謝各位 Buddy 的支持。沒有你們,沒有我今日的成就。I am proud of IN117.

2017年11月13日 星期一

在 AR Studio 用腳本播放音效


舊同事在 Facebook 求救,想知道怎樣在 AR Studio 內用腳本播放音效。這個我沒有試過,也想學習一下,於是查看 Facebook 的說明文件。翻來找去,還是不清楚要如何播放音效。示範程式也沒有相關的內容。教學影片又只叫人看文檔。在沒有任何資源下,只好不斷嘗試。AudioSource 沒有屬性及函數,所以不是直接呼叫。而它是基於 Scene 的,所以要從 Scene 著手。找到原來要用 Audio.play(Scene.root.child('audiosource0')); 就會成功。

2017年11月10日 星期五

Robi 技術研究・五


要開發編輯器,得先讓程式讀懂 RM4 檔案內容,變成一個個物件,方便重新組合及排列。

於是,我著手解析 RM4 內的結構,自行編寫匯入程式;可是,這不是件容易的工作,有很多不同的處理。像是如 medit 般有開始的標籤,也有完結的標籤;像 return 是一句都尾;像 block 是有很多不同的參數;要準確讀取,得下很多功夫。於是我在想,PHP 應該有現成的功能去處理自訂 XML,結果找到 xml_parse_into_struct()。

我把 RM4 內容直接拋給 xml_parse_into_struct(),結果只有第一個 medit 發其內在句子能解讀成功。估計是因為程序把 XML 內第一個標籤當為根,當同一個標籤完結時,程序便會結束。於是的為 RM4 內容外圍包一層 <robi></robi>,結果能解讀出更多內容。不過,還算不上是成功;因為結果中出現很多不知明的部份,而程序也只能解讀到包含日文字參數為止;即是上圖中的「立ち状態?」。研究過後,那些不知明的部份是用 \r\n 引發,於是利用 str_replace() 把它們清除。至於日文字參數方面,則用 mb_convert_encoding() 把原本為 Shift-JIS 的日文編碼轉換為 UTF-8 無國籍碼,問題便得到解決。可是,還是遇到新的問題,程序還未能完整解讀 RM4 內容。追查之下,發現有參數的數值內容包含 << 及 >>,導致 XML 解讀失敗。今次我同樣用 str_replace() 把它們清除。最後,能成功解讀了。

2017年11月9日 星期四

先相信後成真


最近聽到同事的一個回應是「人地做到,我都做到」。不約而同,前拍檔也有跟我這麼說。回顧一下,我是有說這番話,但次數應該不多;為何大家都有相同的感覺?當然,我心底裡一直有這股信念。

兒童時代,不可上街,只能留在家中拼砌樂高積木,砌得膩了,便嘗試模仿、嘗試修改、嘗試創造。建立了只要肯研究,別人能做的事情,我也能做的信念。複製是我的強項,創造也不弱。很多時候,只要有參考,便能造出差不多的東西。學習多了、技術累積了,造出來的東西更加專業。人就應該要不斷學習、不斷成長、不斷進步。突破了界限後,事情變得一般,可以再找新挑戰。

有時,不要小看自己,有信念便能突破難關。我跟一位很夾的同事都有著相同的信念:「先相信後成真」。

2017年11月8日 星期三

Robi 技術研究・四


Robi 的資源及程式都存放在 SD 卡內。香港版內置的 SD 卡有 4GB 容量,但程式連內容則只有約 612MB。當中仍然保留了很多日語音效,相信是沒有使用。單單聆聽日語語音檔,回答「係」這個音,起碼有十款不同的錄音,有長有短、有神氣的、有淘氣的、有消沉的。意味著原來日本版有很多細緻的地方,在香港版都刪除掉,變得很基本。既聲音檔案然沒有用,又沒有拿走檔案;雖然騰出的空間也沒有用處,但感覺十分馬虎。


朋友問 Robi 內置了多少首歌。查看 /voice/Music 目錄,發現有五首歌。當中只有 osouji.wav 及 timer.wav 是廣東話,其他都是日文歌。除此之外,日本版 SD 卡分為三個版本:Robi Heart, Robi Heart 2, Robi Heart 2DX。最後一個版本於 2016 年中推出,賣 9800yen 再加稅,裡面共有六首歌及多了幾支舞。不過,香港只有第一代版本。

朋友又問:「可否自行加入歌曲?」。原本 Robi 沒有這個設計,不過有日本用家把 Robi 的 XML 程式修改,使得能自行加入;但由於沒能加入更多聲控指令,歌曲一是取代原本的,又或者是修改程式,變成隨機出現。我相信還有其他可行性,正在研究編寫網頁版修改程式;畢竟目前只有 Windows 版本,我全家是 Mac 機,要用模擬器才能使用。以下網頁有詳細的 XML 編碼解說:

週刊ロビ 増刊71号:ロビのココロを探る1
週刊ロビ 増刊72号:ロビのココロを探る2
週刊ロビ 増刊73号:ロビのココロを探る3
週刊ロビ 増刊74号:ロビのココロを探る4

2017年11月7日 星期二

把圖片設定為 360 格式

同事為我慶祝生日,我們用了一台 360 影相機拍照。照片經過 WhatsApp 傳送後變成普通相片,上傳到 Facebook 也無法變回 360 照片。這是因為相片中的 360 Metadata 消失了。解決方法是到 https://www.sno.phy.queensu.ca/~phil/exiftool/index.html 下載 ExifTool;它支援 Mac, Windows, Linux。用它補回 Metadata,指令如下:

exiftool -ProjectionType="equirectangular" birthday.jpeg