[情報] QuakeFlash
噫,剛剛 search title 了一下,發現本版好像沒人貼過這東東
http://cloud.github.com/downloads/mkr3142/QuakeFlash/QuakeFlash.swf
Quake 1 port to Flash 是完整 port,所以你有一代所有完整檔案的話
應該有辦法在 Flash player 裡打完整個 Quake 1 代。
Multiplayer 功能我是沒有試就是了,我也沒有買過 Q1 ... XD
Project Page:
https://github.com/mkr3142/QuakeFlash
和今年初轟動一時的 Quake2 GWT port 比起來最大的不同是,
QuakeFlash 並沒有運用到任何的硬體加速,Quake2 GWT 底層是跑 WebGL
當然是差異很多。
QuakeFlash 背後的技術是 Adobe Alchemy,把 C/C++ 原始碼透過
alchemy, compile 成 AVM2 的 bytecode,直接包成一包 swc,
而 alchemy 是建構在 LLVM 之上,所以這個產出的 bytecode 是 LLVM
最佳化過的,速度會快不少。
這證明了運用 Alchemy,使得 flash 能夠運用許多現成的 C/C++ library,
(特別是 performance critical 的,其他例子還有編碼、加解密 library 等)
速度上到達堪用的程度,是可行的。
==
另一個有用 alchemy 的重要 project 我覺得是這個:
https://github.com/jesses/wck/wiki/box2d-flash-alchemy-port
Box2D 的 C++ 版直接用 alchemy compile 成 AVM2 bytecode,
配合同一個人做的 World Construction Kit,效果相當的不錯:
http://www.sideroller.com/wck/
對 alchemy 熟悉的人或許可以 benchmark 一下,同樣的物理環境模擬
alchemy 版本的 Box2D 快了手工 port 多少?我自己試了一些 demo,大概
知道效能的增加應該不是「非常」可觀就是了;另外因為這與其他手工的
Box2D port 不同,API 長相比較偏向 C++ 的樣子。
==
其實我是在看下面這個的時候才順便看到上面兩個 ...
http://phyzios.net/Lab/Default.aspx
用 lua-alchemy + 上面說的 box2d alchemy & WCK 做成的線上編輯器,
雖然是寫 lua,但底下是跑 flash。但是 lua-alchemy 這個 project
本身的活躍度已經很低:http://code.google.com/p/lua-alchemy/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.3.176
※ 編輯: linjack 來自: 220.130.3.176 (11/16 10:25)
推
11/19 08:40, , 1F
11/19 08:40, 1F