找回密码
 注册
X系列官方授权正版
搜索
查看: 11772|回复: 39

[分享] 戰機靈活度參數調整[NN 需要的]

[复制链接]
发表于 2008-4-27 01:28:04 | 显示全部楼层 |阅读模式
要設定好戰機的相關參數,首先你必須設定戰機的 mass〔質量〕敘述,這個數值取決於你自己認定該戰機的體積大小,戰機越大則你可以加大這邊的數值,反之就減少。
$ z8 j: j6 x7 \, m- r6 U- n  q0 n
戰機的種類有 type = FIGHTER,type = FREIGHTER,其他的還有 type = CAPITAL / CAPITOL / GUNSHIP / GUNBOAT / CRUISER,你可以依據不同的需求給予不同的 mass〔質量〕。
" F2 R  {, P- m! U# I/ a. B
6 T* K/ v, M- ~! ^2 PFL 使用不同的”mass/drag coefficients”給不同大小的戰機,所以我們得調整這些部分。
3 v$ U4 `) b! l8 G5 X' h2 @7 \0 }
要調整的部分為 steering_torque,angular_drag 以及 rotation_inertia,我們以一台小戰機做範例:
: y  z7 \9 w7 a8 F% Y9 S- I$ x6 d7 c  x5 l& z0 {9 j
mass = 75
1 v  v3 _2 s% g+ `! S" U& m7 o  M# bangular_drag = 19000, 19000, 34000* X1 S" x2 d5 ]( }2 d

" W9 V0 n1 w4 b8 e則系數應為 drag〔拖移角度〕除以 mass〔質量〕9 q. b+ Z6 V" }' ~$ }) W+ N
/ Q8 g, j8 r6 l6 |2 }( b4 m
X = 19000/75 = 253.333- r" ?$ A; X& k: V
Y = 19000/75 = 253.333$ Z7 s5 _6 k. _# p
Z = 34000/75 = 453.333
* b' `9 j0 Z, q; z6 k& P1 b4 W% k* b: F: V% O# T- T
我們把上面的數值取整數為:250250450,記得這三組數據為基本數值,經常要使用。
* j1 h: C2 \9 y
/ `$ E3 k1 o& u6 M& G. ^像 Osiris,它的 mass 為 6200,angular_drag = 13014000000, 13014000000, 13014000000/ `: v; {5 [7 h) }$ ]4 D' S& |& E

- {: t8 M# B- X3 u# u所以系數為:
/ T" y( k+ m* s) i8 R  T" |6 e- v: Y3 Y2 I- I
X = 13014000000/6200 = 173520000
- j+ O* G- i; Q: Z) _/ n0 `# Z; B3 tY = 173520000: q) U2 x, r8 d5 y
Z = 173520000# z  o, e) Y3 L9 X& p
/ ^4 y1 u5 ~. {
不需要原地轉動,所以 Z 跟 Y 與 X 一樣。
2 b/ w% g, l# u4 h- b5 ?- P9 e& t: i' k3 h/ {" z4 u0 V
因為 Osiris 與其他戰艦一樣移動緩慢,而且不需要經常轉動,所以我們可以忽視。 ) X! r# d3 O6 x

' [* p* ?+ h" u+ G設定 max_bank_angle 時注意,大型船艦使用 10 小型戰機使用 30-45,超輕型戰機可以使用 60。: C4 |8 u; Z) ~8 v

5 e! j- L+ j1 {* R現在我們可以使用上面的資訊來調整戰機。
# V/ P) T$ t- o8 J, V7 r: L7 z# b% D0 Z0 L1 q2 ~5 ?+ J
angular_drag 是戰機機首往上或下飛行時的阻抗依據,公式如下:
/ U1 `. ]7 w& z* R. L6 v& L- `4 ]3 q) w: l" v& e" M
angular_drag = (mass) x (drag/mass)5 J2 O6 k1 v3 ]" ?
" P" Z) V% X! s0 B( y6 M9 s
解釋如下:
: m. U" B, x+ A. y3 [, W9 I
, a4 d, u( c8 l6 y! I, e, f* ]mass = 80+ T! ]; J8 z% K- u

" p( [, d+ ~6 v$ U- ~: |$ q/ Z所以參照上面得出的基本數值後,算式為:$ @. _9 r% ~& U
9 e1 y9 M5 z% |' s& M
angular_drag = (80x250),(80x250),(80x450) = 20000, 20000, 36000- g- C5 s! u, J; j# Y0 V+ x+ W) L

7 g' k, G; Z$ `2 b: ~因此得出 angular_drag 的固定公式為:' J5 E. r! S; U# `4 i6 r
2 _2 Q! s- O* K- Q
angular_drag = (mass x 250),(mass x 250),(mass x 450)
+ y$ x0 s1 u0 ^. ^7 e6 W) i
% h, r& m* l: T, E2 k2 n1 F# }' H# W) R% ~0 C
現在我們來設定 rotational_inertia,它是影響慣性作用的參數,我們以 15% 來做基準,參照上面得出的數據,公式如下:
) \& m6 P7 i- X5 V
2 Z8 o9 k1 t, L. {rotational_inertia = (20000x0.15),(20000x0.15),(36000x0.15) = 3000, 3000, 5400
- f6 i% Z( E& q2 G/ G( Y) A: i4 M: Q) u' _
而 steering_torque 影響戰機轉向或翻滾,它的公式為:
1 ?" @, a1 J* o( v4 R* C% [  }) K5 s* k5 b4 G4 a6 ]
steering_torque = angular_drag x radians/秒& D- c) `8 ~9 `& S

; m# x$ M- ]6 ^如果你設定 steering_torque 與上面的 angular_drag 一樣,那麼你的轉向率則為 1 radians/秒〔57 度/秒,意思就是每秒轉向能力為 57 度〕,通常這樣的數值使用在超重型戰機。
. T7 @$ e3 c- W/ m, x% b' _- ?3 o1 Y# z8 h! }
幾個設定建議:0 X* R: X  z2 P+ G, U+ U( S
+ {! R* h3 o! L8 h9 J( X
0.2 radians/秒〔11.4 度/秒,意思就是每秒轉向能力為 11.4 度,使用於戰艦等大型船艦〕
* B- ^- d+ b2 N0 }8 S
% {# y6 W- i1 o' v* ^0.2 radians/秒以上到 1.0 radians/秒〔11.4 度/秒到 57 度/秒,意思就是每秒轉向能力為 11.4 度到 57 度,使用於超重型戰機到一般戰機〕( [* k! W0 C# n1 U5 h- P
% Y4 c* A3 A4 o3 a( a
2.0 radians/秒〔114 度/秒,意思就是每秒轉向能力為 114 度,使用於輕型戰機〕) J% c+ ~/ Z# K. S4 z

! d8 `& R9 {9 E4 m$ a  E' F$ s所以重型戰機可以以下面的方式計算:( P/ N8 v6 _, N. w
* e. R$ |* {1 L; t, c; b
steering_torque = 1.2 x angular_drag
- k1 J2 n4 U  o  i
6 O6 u4 p, c7 v' A+ @然後將上面得到的數值填入 steering_torque 所需的 3 個數值。
+ ~( W/ c5 q5 P) S7 F* k- Q: r1 U2 Y6 W1 Y8 N1 N, z; o
輕型戰機可以以下面的方式計算:
7 C& T. ?  j" o" p4 H, q* |! V# M1 O
" S* o) b, f: P4 [7 {steering_torque = 2 x 20000, 2 x 20000, 2 x 36000 = 40000, 40000, 72000
3 Q( h1 z* O0 H( U' ^, a) [2 W  l
nudge_force 影響戰機在小行星帶巡航時的閃躲靈活性,公式為:& J0 v# H2 d- {: D' n* }+ e! F6 ~
; a4 n/ j/ }/ o' q3 v  X
mass x 300
" U0 C  w2 Q) L) D5 ]: U6 D* I
6 O3 e- |% c. q6 M按上面的範例我們得出:6 `+ x1 X/ E6 o
/ {# t  M: P' I" @# w( Y( C3 ?
nudge_force = 300 x 80〔上面設定的 mass〕= 24000. p; Z8 i( t! D) A  G
# O+ \, O1 }$ N4 J# h, @% _
strafe_force 影響戰機的平移,公式為:: G6 q5 r' f  \0 w# `

6 g$ j2 M: f  E7 j* ?' T7 fnudge_force x 2
# m; N9 v) Q4 V" L1 U; e0 z& Z7 `; ]* b  \) ^, E" G: t
按上面的範例我們得出:% d$ m% n! r$ X" r1 w7 X# g+ Q9 a

2 u+ y8 h/ a* b- r0 d6 N: B5 Rstrafe_force = 24000 x 2 = 480004 s1 ~8 L0 Q2 R
, M0 B7 y5 _) o
strafe_power_usage 可以由你自行設置,大一點的數值給大型船艦,小點的數值給小型戰機,一般用 500 給大型船艦,用 20 給輕型戰機。
) w! O) A* E2 q# ]/ b
. E9 |$ H6 Y; Q如果使用的數值設定在實際遊戲中感到不滿意,試著調整 mass/drag 的數值,然後以上面的公式重新計算,直到滿意為止。
发表于 2008-4-27 08:34:16 | 显示全部楼层
赞扬~
回复

使用道具 举报

发表于 2008-4-27 09:24:36 | 显示全部楼层
研究下...
回复

使用道具 举报

发表于 2008-4-27 10:50:51 | 显示全部楼层
JONG,有一个问题,就是X = 19000/75 = 253.333中的19000是怎么来的?随便可以设定么?
回复

使用道具 举报

 楼主| 发表于 2008-4-27 11:22:18 | 显示全部楼层
原帖由 VengXCne 于 2008-4-27 10:50 发表 + d  X* u6 V. j9 b/ q
JONG,有一个问题,就是X = 19000/75 = 253.333中的19000是怎么来的?随便可以设定么?
# ]8 S2 k" D& J) n
6 }1 ~  ]& _* }4 B
不是,是遊戲裡的平均基準值,這三個數值儘量不要動。
( E/ v2 M0 n8 T/ O9 y9 a0 f
- G6 T0 s* U. Y/ J) _+ F現在就等你的程式了,我要英文介面的,嘎嘎嘎.......................:lol
回复

使用道具 举报

发表于 2008-4-27 11:57:33 | 显示全部楼层
三大战机 SABRE EAGLE TITAN1 ?1 g. l5 I) K( B
为什么TITAN的数值设置的这么诧异 那个第三列的数值困扰已久.....
回复

使用道具 举报

发表于 2008-4-27 12:07:52 | 显示全部楼层
看了那篇文章后 我还是没找出三列参数的含义,所有的解释全部都是横向的定义& c+ A0 ?& e: ~8 [+ D- W

$ H5 P2 }0 c, H2 r三列参数难道是指飞船模型本身的三个状态?; E8 c3 L2 ]0 x( X: \# z) P/ o7 P+ @
正常  轻伤  重伤
% h4 i: W: Z7 M不然我实在无法解释TITAN的第三列参数为何如此设置
回复

使用道具 举报

发表于 2008-4-27 12:21:07 | 显示全部楼层
JONG你看这样的是不是正确,文章我还没完全理解...
! C* [" f7 L# ]% J% f5 x
# q; @; _( q" R3 N& q* t/ {angular_drag1 = X * mass& o6 Z$ \& r+ A4 Q
& }. x' f4 x& V+ t; p
rotational_inertia1 = angular_drag1 * 0.155 Q6 v% u& }& o$ ]  W7 N/ R

% Y/ s8 l+ e. Z/ _steering_torque1 = angular_drag1 * 0.2# ~. B& G) q/ `# I

! B- h0 ?1 ^, C' r8 b) cstrafe_force = (nudge_force = 300 x mass) * 2
回复

使用道具 举报

发表于 2008-4-27 12:32:50 | 显示全部楼层
linear_drag = 2.000000 是干啥的?
回复

使用道具 举报

 楼主| 发表于 2008-4-27 13:09:55 | 显示全部楼层
原帖由 kyoking行货 于 2008-4-27 12:07 发表
: ^$ i$ u# |; E; J( j3 G# x看了那篇文章后 我还是没找出三列参数的含义,所有的解释全部都是横向的定义
0 z/ \6 F3 a, w% \  `9 u. T% {( U. @1 F: ^: b6 V1 H. C% x
三列参数难道是指飞船模型本身的三个状态?$ \5 }, [0 U* w/ {  p) T* u
正常  轻伤  重伤6 a2 ]7 f# A  h8 ]6 P
不然我实在无法解释TITAN的第三列参数为何如此设置 ...

& t: {% ^( f$ V2 z( j, s
0 L) b1 K* T. F+ M4 ?5 q如果你指的是縱向三個參數,它們分別是 X,Y,Z的數值。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|DeepTimes.NET 太空游戏站