复制粘贴:
一般来说,画面上较小、活动较灵活的东西是用精灵来呈现的,比如一般的人物、子弹。
FC机能限制,8x8的精灵(sprite, 活动块)最多64个,一条扫描线上最多8个。
有的模拟器可以设置为不限制一条扫描线上的精灵数量,但精灵总数是跟软件相关的,通过DMA写精灵数据时,就写一个page(4x64=256 bytes),游戏程序不会往RAM里多写数据,所以模拟器没法随意干预一个游戏的精灵总数上限。
因为精灵有数量限制,所以当想画的精灵多时,有些就画不上。
对此,游戏程序中相对妥善的处理是,当精灵数量较多时,隔帧交替显示,一帧显示A,下一帧显示B,再下一帧显示A……这样,A和B看上去就是闪烁的了。如果不这么处理,就可能出现持续看不到A或持续看不到B,这可能比闪烁要糟糕。
一般来说,画面上较小、活动较灵活的东西是用精灵来呈现的,比如一般的人物、子弹。
FC机能限制,8x8的精灵(sprite, 活动块)最多64个,一条扫描线上最多8个。
有的模拟器可以设置为不限制一条扫描线上的精灵数量,但精灵总数是跟软件相关的,通过DMA写精灵数据时,就写一个page(4x64=256 bytes),游戏程序不会往RAM里多写数据,所以模拟器没法随意干预一个游戏的精灵总数上限。
因为精灵有数量限制,所以当想画的精灵多时,有些就画不上。
对此,游戏程序中相对妥善的处理是,当精灵数量较多时,隔帧交替显示,一帧显示A,下一帧显示B,再下一帧显示A……这样,A和B看上去就是闪烁的了。如果不这么处理,就可能出现持续看不到A或持续看不到B,这可能比闪烁要糟糕。