游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4095|回复: 12

模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人原

[复制链接]

12

主题

525

帖子

525

积分

高级会员

Rank: 4

积分
525
发表于 2007-1-26 22:13:00 | 显示全部楼层 |阅读模式
模拟飞行空降-----模拟飞行的模拟空气动力学 一
此文献给本论坛的各位,看着各位吵架中,不知不觉地还喜欢上了这论坛,也真是厉害,吵架吵出花来的还真是少有,都出马甲了,不过比起其他论坛的吵架之风真是文气,毕竟都是读书人,翩翩不失君子之风,不会说些什么失体之话。不过大家吵归吵,技术仍然让大家提高,许多学贴也照样发,在加上一些友情客串的热心人,真学了不少东西,(要感谢蜜蜂巢,出此文之初缘于他写的OPENGL的入门基础),本人说话比较损人,可能和以前学过心理学有关系,能看到人的内心深处,有时候都觉得很过分,出此文献给大家,希望大家见谅。 此文并非有什么高升的数学知识,对大家只能算是个引导,本人对空气动力学了解也不是很多,但是我觉得如果既然是写游戏,只要能够模拟出飞行的效果就行了,真正的玩家实际上很少有机会体会蓝天翱翔的感觉,如果有人第一次玩你的飞行游戏的话,那么恭喜你,即使你把开飞机做得和开极品飞车一样,他也不会怀疑,还可能会想:如果我把我的汽车方向盘改成摇杆,那么我肯定是一个优秀的飞行员。
好了,我也是废话比文化还多,开始正题吧。
在模拟飞行中,空气动力学是主要的计算方法,其中涉及到的许多方面的知识我们可以忽略,只取其中最重要的,如图所示:
我们先不考虑它是一架飞机,而是一张飞机图片,我们给它定位一个坐标(x,y),那么如果它的飞行状态就由这个坐标控制plane.x 和 plane.y ,那么这架飞机的移动就是plane.x=plane.x+A 和 plane.y=plane.y+B ,因此,我们只要控制着A的数值那么就是飞机的升和降,从坐标中定义的坐标看出,+A是爬升,-A是下降,而B中,因为飞机不可能后退,那么它肯定是个正数,它代表着飞机的速度。好了现在有了大概的数值那么我们来定义它们的最大限度和最低限度(不这么做的话,你的飞机要不就象火箭,要不就象蜗牛),我要做的是模拟飞行空降,那么不考虑太大的环境,先重实际来看,一架客机降落的瞬间速度和F1方程式赛车的最大速度是一样的,就是300km左右,降落距离和高度我们得以最佳路线来考虑,假设是3000尺高度3000米距离,正方形的降落方法对角线是45度,这个角度太高,会插地上的,应该小于30度,那么距离应该是高度的一倍以上,那么我们就定为高度3000尺,距离6000米,太远了,1500尺,3000米正好,速度300km还有个飞机仰角,30度-45度之间,值,我们就以这个数据是标准数据。1500尺飞多长时间?1500/(300*1000)=18秒(过程略)太快了,火箭,实际上这个速度是参照速度可以改变的,游戏中,3分钟飞到正好,那么我们来算A的最小值1500/180=8.3左右,就是说,地图2000大小,一秒移动8.3的象素,OK。基本数据都出来了,那么开始最重要的分析,飞机移动计算。
写不动了,改天在写,以上所有数据是经过java测试过的(学习java中),等我把其他的数值计算好了再贴给大家。
[em5] [em5] [em5] [em5] [em5] [em5] [em5]

12

主题

525

帖子

525

积分

高级会员

Rank: 4

积分
525
 楼主| 发表于 2007-1-26 22:19:00 | 显示全部楼层

Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人

上面数值修正,最后的时间计算中,
--------------------------------------
那么我们来算A的最小值1500/180=8.3左右,就是说,地图2000大小,一秒移动8.3的象素,OK。基本数据都出来了,那么开始最重要的分析,飞机移动计算。
--------------------------------------
应该是
1500/3600=0.4 左右,即一秒钟移动0.4象素。

6

主题

396

帖子

396

积分

中级会员

Rank: 3Rank: 3

积分
396
发表于 2007-1-26 22:26:00 | 显示全部楼层

Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人

支持!
不过我觉得名字上有点误差,我怎么觉得是刚体运动呢?

12

主题

525

帖子

525

积分

高级会员

Rank: 4

积分
525
 楼主| 发表于 2007-1-26 22:29:00 | 显示全部楼层

Re: Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本

mousesure: Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人原传)

支持!
不过我觉得名字上有点误差,我怎么觉得是刚体运动呢?

钢体运动好象是两个以上的物体发生碰撞才是刚体运动,这个不发生碰撞,接触到地面就死翘翘了。以后会说控制和运动方面的,主要是飞行模拟操作感。

270

主题

6442

帖子

6446

积分

论坛元老

Rank: 8Rank: 8

积分
6446
发表于 2007-1-26 23:10:00 | 显示全部楼层

Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人

楼主的文章好,我要好好学习,新游戏正要做模拟空战的关卡,参考参考!

32

主题

1259

帖子

1351

积分

金牌会员

Rank: 6Rank: 6

积分
1351
发表于 2007-1-26 23:18:00 | 显示全部楼层

Re: Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本

游戏之家站长: Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人原传)

楼主的文章好,我要好好学习,新游戏正要做模拟空战的关卡,参考参考!


你不需要这个牛X的人写例子吗,你服吗?

15

主题

2093

帖子

2093

积分

金牌会员

Rank: 6Rank: 6

积分
2093
发表于 2007-1-26 23:29:00 | 显示全部楼层

Re: 模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人

那个……LZ想说什么??

270

主题

6442

帖子

6446

积分

论坛元老

Rank: 8Rank: 8

积分
6446
发表于 2007-1-27 00:06:00 | 显示全部楼层

Re: Re: Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一

Devil: Re: Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人原传)



你不需要这个牛X的人写例子吗,你服吗?


向AZURE学习! [em17]

6

主题

396

帖子

396

积分

中级会员

Rank: 3Rank: 3

积分
396
发表于 2007-1-27 01:04:00 | 显示全部楼层

Re: Re: Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一

jyc8778: Re: Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人原传)


钢体运动好象是两个以上的物体发生碰撞才是刚体运动,这个不发生碰撞,接触到地面就死翘翘了。以后会说控制和运动方面的,主要是飞行模拟操作感。

好,期待下文

12

主题

525

帖子

525

积分

高级会员

Rank: 4

积分
525
 楼主| 发表于 2007-1-28 01:24:00 | 显示全部楼层

Re:模拟飞行空降-----模拟飞行的模拟空气动力学 一 (本人

难到飞机撞到东西还会弹来弹去的吗?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-26 09:22

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表