作者erspicu (.)
看板Emulator
标题[闲聊] 用C#自撰的GameBoy模拟器
时间Sun Dec 7 03:35:00 2014
https://dl.dropboxusercontent.com/u/61164954/project/AprGBEmu/index.htm
//-------------------------------------------------
2014/12/14更新
版本说明
1.新增支援zip rom档开启
2.支援游戏手把按钮输入
3.设定介面完成
4. shift + p 游戏撷图
5.实作 scale2x , scale3x , scale4x 游戏画面放大filter
( 由於没使用游戏引擎去硬体rendering处理,因此放越大越耗用计算资源,
4x的情况可能会些许lag).
6.游戏可以选择黑白或是模拟老GB经典绿的颜色画面.
7.介面修改.
关於scalex放大
https://dl.dropboxusercontent.com/u/61164954/project/AprGBEmu/scalex.htm
//-------------------------------------------------
给对想自己写模拟器有兴趣的人参考看看
但如果单纯想玩游戏 找别款比较适合
目前成熟度还不是很高 能跑的游戏应该还不是很完整
网友有兴趣的可以跑看看
估计太旧的电脑跑起来可能会LAG点
PS.今年刚好也是任天堂25周年生日哩..真巧
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.70.74.143
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Emulator/M.1417894505.A.FE1.html
※ erspicu:转录至看板 C_Sharp 12/07 03:36
※ 编辑: erspicu (61.70.74.143), 12/07/2014 03:38:04
1F:推 conpo: 感谢分享 12/08 12:22
2F:推 os653: 请问GB的Sprite是怎麽画出来的?可以在任何时间点在任何位 12/08 12:58
透过oam跟title组出来
3F:→ os653: 置画出来吗?还是要跟显示装置同步? 12/08 13:00
对玩的人来看的确是在任何时间任何在萤幕上的位置都可以显示
但实际上Sprite的显示只能在LCD於特定的状态时期下显示出来
基本上我是在HBlank阶段去做这件事情
如果OAM刚好把Sprite定位到那时候在处理的扫描线
就在那时候把那Sprite跟线交集到的部分丢到buffer内
最後144条线处理完 在VBlank的阶段把整张图丢出来
※ 编辑: erspicu (61.70.74.143), 12/08/2014 21:45:56
4F:推 os653: 所以游戏作者只需要把Sprite读到OAM,其他都不用管了是吗? 12/09 18:02
建构出sprite的两个要素title(算vram的一部分)跟oam都只能在特定的lcd阶段才能写入,
基本上正确把把OAM属性写入後,剩下的就都硬体去显示了,
但正确把OAM跟title在写入,这就必须要设计者自己去负责了.
※ 编辑: erspicu (61.70.74.143), 12/10/2014 01:13:14
5F:推 os653: 了解罗,感谢。看来写PC游戏还是比写console游戏简单很多 12/10 07:52
6F:→ erspicu: 新版下周前应该会放出 功能完整很多 12/10 14:53
请自行追官网
※ 编辑: erspicu (60.248.56.185), 12/10/2014 14:55:40
※ 编辑: erspicu (61.70.74.143), 12/14/2014 14:22:36