作者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://www.ptt.cc/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
推 conpo: 感謝分享 12/08 12:22
推 os653: 請問GB的Sprite是怎麼畫出來的?可以在任何時間點在任何位 12/08 12:58
透過oam跟title組出來
→ 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
推 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
推 os653: 了解囉,感謝。看來寫PC遊戲還是比寫console遊戲簡單很多 12/10 07:52
→ 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