首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >2d平台物理

2d平台物理
EN

Stack Overflow用户
提问于 2008-12-01 23:22:49
回答 9查看 12.2K关注 0票数 16

这是一个漫长的假期周末,所以我又有了编码错误,并开始玩弄:

Mario http://gfilter.net/junk/tileengine.jpg

我写了一个基本的瓦片引擎,但我以前从未尝试过,我真的很难处理精灵碰撞检测和实现重力的真实物理。

对于任何其他游戏爱好作者,你能给我一些最好的方法的演练吗?

更新:

我想我应该分享一份进度报告:

http://www.youtube.com/watch?v=-RKNQ2UiiLY <--行动中的游戏

它仍然有很多bug,但是碰撞检测基本上是有效的,我已经开始开发一些其他的功能(比如碰撞积木(注意bug)和与敌人交互)。

马里奥仍然像在月球上一样行走,我正在使用这些常量,有什么建议可以让它们更逼真吗?

代码语言:javascript
复制
    const float AirDrag = 1.00f;
    const float GroundFriction = .97f;
    const float Gravity = 0.8f;
EN

回答 9

Stack Overflow用户

发布于 2008-12-01 23:55:38

下载FarseerPhysics引擎,看看它是如何工作的,我认为这是http://www.codeplex.com/FarseerPhysics最好的东西!

票数 5
EN

Stack Overflow用户

发布于 2008-12-02 01:40:36

重力很简单:

代码语言:javascript
复制
const gravity = ... ; // pixels per timestep (eg. video frame) squared
// while in freefall, each timestep:
y_velocity += gravity;
y_pos += y_velocity;

请注意,我玩过的大多数2d平台游戏都没有真实的重力。做任何能让游戏变得有趣的事情!

票数 3
EN

Stack Overflow用户

发布于 2008-12-02 02:30:47

jnrdev可能会有所帮助。它涵盖了瓷砖碰撞/响应和坡度。这不是我见过的最好的代码,但它完成了工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/332585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档