社区
图形处理/算法
帖子详情
游戏人物跳跃的通常的算法是什么?
renxu350
2010-12-24 06:55:50
如题,请给个思路,谢谢,,,,,
...全文
545
9
打赏
收藏
游戏人物跳跃的通常的算法是什么?
如题,请给个思路,谢谢,,,,,
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chenxuanying
2010-12-27
打赏
举报
回复
///////////////////////////////// CALCULATE FRAME RATE \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*
///// 计算帧速率和时间间隔
///////////////////////////////// CALCULATE FRAME RATE \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*
void CalculateFrameRate()
{
static float framesPerSecond = 0.0f; // 刷新频率,帧每秒
static float lastTime = 0.0f; // 记录最后一帧
static char strFrameRate[50] = {0}; // 窗口标题
static float frameTime = 0.0f; // 记录最后一帧的时刻
// 获得当前时间
float currentTime = timeGetTime() * 0.001f;
// 记录当前和上一帧之间的延迟
// 为下一帧保存当前帧时刻
g_FrameInterval = currentTime - frameTime;
frameTime = currentTime;
// 记录刷新频率
++framesPerSecond;
// 用最后一次储存的时间减去当前时间,计算时间延迟是否超过一秒,如果没有,那就是我们要的FPS
if( currentTime - lastTime > 1.0f )
{
// 设置 lastTime 为 currentTime
lastTime = currentTime;
// 在窗口标题工具栏处显示当前刷新频率
sprintf(strFrameRate, "Current Frames Per Second: %d", int(framesPerSecond));
// 设置窗口标题
SetWindowText(g_hWnd, strFrameRate);
// 重置每秒刷新频率
framesPerSecond = 0;
}
}
这是我做OpenGL时候写的一段计算时间间隔的函数 希望对你有帮助
renxu350
2010-12-27
打赏
举报
回复
[Quote=引用 4 楼 jameshooo 的回复:]
游戏基本不用定时器,而是不停计算时间间隔,定时器精度太低。
[/Quote]
这个一般怎么实现,能不能稍微说详细一点?
renxu350
2010-12-27
打赏
举报
回复
非常感谢ls各位的回答,
希望大家再给我一点思路,,,,,
dianhui
2010-12-24
打赏
举报
回复
慢慢来,做多了你的想法也就会多起来,建议你买一本Visual C++游戏设计(北京科海电子出版社)那本书先看一下!
其实你说的这个问题并不太难理解,在计算机世界里,任何运动都是通过绘制来体现的,绘制的关键又可以转化成你的绘制刷新频率来设计,而每一次绘制刷新可以通过一个消息响应函数来完成,好了,如何控制消息发送的快慢就靠你怎么样去设计了,你可以用TIMER,也可以用其它定时方法!
renxu350
2010-12-24
打赏
举报
回复
[Quote=引用 4 楼 jameshooo 的回复:]
游戏基本不用定时器,而是不停计算时间间隔,定时器精度太低。
[/Quote]
请教#4楼,能不能配合代码稍微说的详细一点?
jameshooo
2010-12-24
打赏
举报
回复
游戏基本不用定时器,而是不停计算时间间隔,定时器精度太低。
b2b160
2010-12-24
打赏
举报
回复
可以用WM_TIMER,不过游戏一般有自己的一个时间控制.
renxu350
2010-12-24
打赏
举报
回复
请教#1楼能不能说的稍微详细一点?
是不是需要WM_TIMER呢?
b2b160
2010-12-24
打赏
举报
回复
估计就是一个简单的物理引擎,你这个估计就是给一个向上初始速度,然后给一个向下加速度就可以了.至于是否向前移动就看你要求了.
游戏
里的---Change
本文探讨了
游戏
开发中
人物
状态变化的
算法
实现,包括基于循环检查和触发机制的两种状态转换方法,详细阐述了如何通过检测
游戏
人物
的属性来调整其状态,如行走、
跳跃
和站立。
AC “Hello Jimmy” 的辛酸
本文探讨了
游戏
人物
在不同平台间的
跳跃
算法
优化,重点介绍了如何处理
人物
落在平台边缘的情况,以及通过统一逻辑和简化程序来提高准确度的方法。文章还深入分析了递推式在该问题中的应用,并分享了一段C++实现代码。
跳板板
算法
本文详细解析了一种基于平台
跳跃
的
游戏
算法
实现,通过定义平台结构和比较函数,使用C++进行编码,实现了寻找最佳
跳跃
路径的功能。
算法
考虑了平台的高度、长度以及
人物
的
跳跃
能力,确保
游戏
过程的合理性和趣味性。
如何用 Python 实现超级玛丽的
人物
行走和碰撞检测?
本文详细解析了
游戏
开发中
人物
行走、
跳跃
等物理行为的实现原理,包括速度控制、状态判断及碰撞检测
算法
,适用于Pygame框架。通过具体代码示例,展示了如何设定加速度、重力等参数,以及如何通过键盘输入控制角色移动。
一种3D
游戏
碰撞检测解决方案
本文深入探讨了3D
游戏
中碰撞检测的重要性及其挑战,并详细介绍了使用Opcode碰撞检测引擎实现平滑
人物
移动的方法。通过
算法
优化,确保
人物
在场景中自然地移动、
跳跃
和滑动,同时避免穿墙现象,提升
游戏
体验。
图形处理/算法
19,464
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章