※ 引述《wyvernlee (废死不可!)》之铭言:
: 3D NES emulator is witchcraft in your browser
: http://www.pcgamer.com/3d-nes-emulator-is-witchcraft-in-your-browser-2/
: 这东西很特殊,简单说是用 3D 的方式来模拟传统的任天堂游戏,
: 有兴趣的可以看一下影片:
: https://www.youtube.com/watch?v=Ti2fwroyP2A
我发现这东西酷到应该另起一篇~这家伙的想法真是天才
开发者想法很有意思~有些部分处理的满厉害的,比如说他让原本画面上的
sprites(拼合动画)做extruding(长出深度)以达到3D效果,但是程式怎么判
断那些要长那些不要长?又长出深度为何?马力欧医生的DEMO他特别转角度
来做示范,除了秀一下3D的惊奇感觉外,其实我们可以看到不是每个物件都
延伸出一样的高度,一开始的设定画面就是如此:
http://imgur.com/7iLXay6
绿方块背景长出高度,但标题却在绿背景长出后再接着长,这边可以看
到它是用动画拼合的单位再做判断的依据,所以胶囊左右的圆弧没长,可能
因为该格算在绿背景的动画拼合里面。
那黑色的部分一律判断深度为0应该是没问题的。也就是遇黑就凹。
让我觉得好奇的是下方马力欧医生和病菌的部分,他怎么知道单单这两
只要长成乐高人,而不是直接长深度而已?1 PLAYER或1990这些字就只有长
深度而已,如何让程式迳自判断?真是有一套。而我自己的猜想,可能是用
角色和背景的区别让程式自己去判断。
FC的限制是,如果是定义成脚色的拼合动画,那垂直分辨率(水平方向)
最多只能有32个像素,像DQ系列他用8*8来定义一个脚色,所以横向最多就
是站四个人,有第五个人站在一起就开始闪烁,闪烁的意思就是,每一个时
间最多同时显示四个8*8的单位,所以用大家轮流不显示达成横向站五个人
的目标;但定义成背景拼合则不在此列,所以后期很多游戏出现超巨大角色
就是通通定义成背景角色,缺点是画面不能再有背景,所以都是全黑的,洛
克人、松鼠大冒险都是这样做的。
http://imgur.com/Hoq5aje
所以我猜也有可能用这样的方式让程式判断谁该长深度,谁该长成乐高人。
或者用动画拼合的FRAME数来决定。
不过以上方式误判的机率都有,这也很符合目前模拟器所展示的结果。
//