游戏中的跳帧处理

跳帧的定义是:当游戏实际运行帧数(时间)和理论运行帧数(时间)不同的时候,进行 work()函数的增加循环次数的处理, 也就是取消掉了显示帧.

c代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//画一个帧
void drawFrame(){
 
TIMEVALUE TimeDiff = subtractTime(GetTimeNoW , WorkTime  );//WorkTime为实际游戏工作时间
int difftimes = GetFrame(&TimeDiff); //将时间差转换成帧数
 
while (workframes--){
update_input(); //处理用户操作
work(); //work()和draw()是一个帧的两个先后部分
addFrames(&difftimes ): //diff表示帧的差数.由游戏实际运行帧数-理论运行帧数得到
}
...上下文处理
draw();//显示帧
...上下文处理
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值