FTD研ログ置き場2

Last-modified: 2021-12-17 (金) 20:56:36

概要

FtD_JP Discordの研究所のログ倉庫。
まとまってないこともあるが、重要な検証データが含まれているので移していく場所その2。

割と体裁を気にせずどんどん移そう!
研究所以外でも良い情報があればぜひ。

その1はこちら

ホイール反動推進

2020/11/2
別ビークルにホイールを当てるとホイール側にベクトルが発生するので、サブビークルにホイールを当てて進む
wheel1.jpg
wheel2.jpg
ただしなぜかベクトルが置き去りになったりするので安定しない

ドッキングステーション推進

202011/2
ドッキングステーション推進なんてのも有る。
ミソはサブコンストラクトが2個有ることですかね


ドッキングステーションに係留されたビークルは係留先との当たり判定がない。しかし。
全く関係ないビークルとの当たり判定は有る。
そしてその全く関係ないビークルと係留先との当たり判定も有る。
組み合わせる。
ドッキングステーションの謎引力を回収することができる
飛ぶ。


わからん・・・
全く関係ないビークルってなんでしょ


ドッキングする・されるの関係にないビークルです。

無限の速度を出す

2020/12/23

https://brilliantskies.customercase.com/forums/bug-tracker/ideas/217400-something-is-wrong-with-the-air-drag
ここで指摘されてるんですが、
1年前は200m/sを超えると抵抗がそれ以上増えなくなって、
抵抗と推力が釣り合うことなく無限に速度が伸びていたんですね


今はこれが300m/sに緩和されています
つまり300m/sを超える推力を出せれば無限の速度が出せる
※ただし速度制限のない推進器に限る


300m/sの数値はVehicleDragModuleクラスのSetLocalVelocitiesで確認しました
たぶんこれ


300m/s超えられるのは後ろ向きカスジェを除くと
エルロン・エアロラダー・ウイング・ハイドロフォイルあたりでしょうか
無制限に速度増やすと制御できないのでブレボかLUAで速度PID(!)を積むことになると思います
ちょっと時間がとれれば組んでみます


後、ヘリブレもじゃない?

Topspeedによる速度制限を回避する方法2つ

2020/12/31

推進・制御まとめ#topspeed
topspeedは、そのスラスタで出せる最大速度ではない。
例えばジェットエンジンの場合、
topspeedの150m/sでは推力は28.6%まで低下するがまだまだ残っており、
topspeedの2倍の300m/sでやっと0.3%と、ほぼ0になる。


理論にはtopspeedの2倍まで速度が出せる。
なんだけど、これ突破する方法思いついてしまったので貼っておきます
スモールジェットのみで333 m/s
268650_20201231102102_1.jpg
なるほど、偏向推力で前方向に推力出してるのか


プログラム上での速度制限は、ビークル速度ではなくスラスタの方向の速度成分だけを取ってるんですね。
なぜなら、高速のときに姿勢制御用のスラスタの効きが悪くなったら困るからです。
なので推力偏向15°かけて対称に設置することでジェット君はほぼ0m/sの気持ちで推力を出してくれるんですね。
sin15°=26%分の推力で前に進むことができます。これは高速だと普通に設置するより有利です。
もちろん、左右の推力が微妙に増減するのでバランスはちょっとシビアですが。


ヨーアングルだけでなく、ピッチアングルも15°傾けたらもうちょっと速度上がるかも?
スピブロ使うならピッチも組み合わせるといいすね


偏向角度を設定する方法とはまた別の、速度制限を突破する方法を見つけたかもしれない
もうちょっと調整したら公開する
2020-12-31_12_59_14.jpg
どうやら特定の向きで特定角度に傾けたスピブロ上に推進装置を置いても速度制限を突破できるみたいです
これと偏向角度の設定を組み合わせるともっと速度が出せそうです


速度に応じて推進機の角度を変えて最高の推進効率を出し続ける可変機とか作ったら面白そうではありますね


ジェットだと102.394m/sから300m/sにかけて0→71.656度に角度変更したほうがいい感じかな?
偏向なしだと確かに71.7度ですね 一致一致


前進してる推進機に角度つけると速度下がるってこと?


スラスタの速度制限は、ビークルの速度のうちスラスタブロックの方向の成分を参照するので
スラスタをスピンブロックで傾けると倍率が高くなる。
その代わり推力の前方への成分が減るのでうまいことバランスを取ろうねという話ですね。
推力偏向はブロックの向きを変えないので倍率そのままに前方への成分を増やすことができてお得、って感じでしょうか。


とりあえず最適化用グラフ
https://www.desmos.com/calculator/zzbydtq1kx
弧度法分かりにくいだろうし、度数法に書き直したやつ置いときます

推力偏向の方向はbで指定します
b=0:推力偏向なし
b=1:推力偏向ヨー15°
b=2:推力偏向ヨー15°ピッチ15°

現在速度の値はvで指定します
200m/sならv=200
紫のグラフが動くと思います

グラフの最大値のx座標が
進行方向とスラスタブロックのなす角(同じ方向なら0°、直角なら90°)
y座標が最終的な出力倍率ですね

b=1, v=200m/sならおよそ69.4°で46.1%の出力が最大値になってるはずなので
スピブロで調整してもらえばOK

ちなみにtの値は制限速度:topspeedを変更できます
他のスラスタ、例えばPropellarならt=100m/sにするかんじ


実用上は角度可変にしなくても手動で固定の方が安定するかも・・・
バランス取りが意外と繊細なので気を付けてくだしあ
仕様上左右の推力が特にターン時つりあわなくなるんで
推力中心をちゃんと重心に通してないと左右にフラフラorヨーが収まらなくなる現象のどちらかが発生します

透視カメラ・レーダー

2020/12/26

昔トラッカーにあったバグ、現行のカメラにも適用できそうなのでやっておきました
グリッドキャストで20個まで探査だと思うから
先に20個のガラスに光線を当てることで見えていると錯覚させる
tousi1.jpg
…報告したら潰れるやつかな?


10個から既に修正されて20個なんじゃないかなと思ってますが
実用ライン怪しいレベルだけど一応あとで投げておいた方がいいかな
tousi2.jpg
手すりは全部透過するからどれでも行けるのか


https://brilliantskies.customercase.com/forums/bug-tracker/ideas/341672-clairvoyance-visual-camera
Bug trackerに報告→[NOT A BUG]

浮力を2重に稼ぐ

2021/1/11

ヘリウムポンプでギリギリ沈むビークルにラダー(はしご)を詰めると浮く
vuo1.jpg
vuo2.jpg
Buoyancy Volume extra factorは、ポンプが有効な空間に含まれた時に追加で浮力を発生する割合。
一般的には"スキマのある"ブロックのスキマ分の割合が設定されていて、Volume factorとの合計が1になるはず・・・
なのだが割と設定がいい加減なので、2重に浮力を得ることができることが多い。


安くて、軽くて、Water tight属性を持たず、
Volume factorとBuoyancy Volume extra factorの合計が多いブロックなら浮力たくさん!たのしい!


トラスとかで言われてたやつですな。はしごでも出来たのね

リッチテキストのタグを使う

2021/1/17

誰かが言ってた気がするけど見つからなかったので調べた
ホログラムプロジェクタのテキストは、Textmeshを使用しているのでいくつかのタグが使える。
kappa.jpg
画像では、
 <color=#ff000080>K</color> のように書くことで
ff0000で赤、80の部分で不透明度50%を示している。

テキスト内でのある部分だけ色変更、不透明度の指定はタグを用いなければできないっぽい。


https://docs.unity3d.com/ja/2018.4/Manual/class-TextMesh.html
https://docs.unity3d.com/ja/2018.4/Manual/StyledText.html

CRAMの最適なコンパクタ割合

2021/2/7

CRAMってCompactorでDPS上がるんだろか
どうしても上がってる記述が見つからなかったんだけど何か見落としてるんかな


パッキング容量の増加だけだけど、
CRAMは口径サイズに応じた何もしない時間があるのと
パッキングが0.2秒(実際は0.225秒)単位で行われるから
一定割合まではDPS上がるよ


あーなるほど、それは見えてなかったわありがと


CRAMの基本的にDPS(1秒あたりダメージ)・DPM(1マテリアルあたりダメージ)ともに有効ペレット数に比例。
だが有効ペレット数が大きくなると、パック時間が早くなるだけに
リロード時間+パック時間のうち、リロード時間の割合が大きくなってDPSが低下する。

これを緩和するためにペイロード容量を増やす必要があって、
①ファイアリングピースを増やす
②有効ペイロードコンパクタ数を増やす
のどちらか(※口径を大きくすると同じ割合でリロード時間が増えるので×)

って感じか


口径を上げてもリロード時間とパック時間の比は変わらないのでリロード時間3秒で考える。


パック端数を一旦無視して考えると

リロード時間:パック時間
=リロード時間でパックできていたはずの量:パック時間にパックする量
=3×有効ペレット数:ペイロード容量

DPS倍率
=ペイロード容量/(3×有効ペレット数+ペイロード容量)×有効ペレット数
=1/(3/ペイロード容量+1/有効ペレット数)
だから、DPS倍率を最大化するためにはこの分母を最小化すればよく、

ペイロード容量=250×(1+有効コンパクタ数/20) だから

適当に偏微分して
有効コンパクタ数=√6/5×有効ペレット数-20 のときに最適となる。
(ペイロード容量/有効ペレット数=5×√3/√2)

ちなみにバグ考慮すると 有効コンパクタ数=2√30/25×有効ペレット数-20 のとき。
(ペイロード容量/有効ペレット数=10/√3)


これは体積あたりDPSの話なので
設置マテリアルあたりDPSを最適化ならもっとコンパクタ増やす必要があるし、
消費マテリアルあたりダメージはコンパクタ増やしても変わらないので、それに最適化するならもっと少なくてもよい。


体積あたりDPSなら実用上は
0.基本は1000mm
1.ファイアリングピースを心のレギュレーションが許すだけ増やす
2.表示リロード時間を10/√3+3≒8.8秒付近(できれば8.78~8.8)になるようコンパクタ割合を調整
一撃の威力上げるなら調整後にゲージインクリースを追加してもまあOK、って感じで


ブロック組み方の最適な形はこれ>CRAMキャノンコアの作り方
ABAB´ABAB´...Aと伸ばしていくとよい

リングシールドの仕様

2021/2/7

ring1.jpg
このスピンブロック上の木ブロックは、
基部のスピンブロックが、メインオブジェクトにおけるリングシールド範囲外(外周に面してない)だけどもACボーナスを受けている
試してる感じサブオブジェクト内での「もっとも外に面している」ブロックにボーナスですかね


しかし式の0.3乗がきついのでどう頑張っても+24ACくらいまでかなあ
劇的に強くする方法思いつかない


木ダクトに使えばめっちゃ上がるね

ring2.jpg
リングシールドの向きはリングシールドジェネレータの向きで決まる。
ジェネレータの凸マーカーを右手、輪っかのある部分を頭に見立てたとき、頭の前後方向がリングシールドの向きになる。


リングシールドの効果は囲う面積(enclosed area)と接続されているパイプ長さ(pipe length)で決まる。

前後方向に限って説明する。
リングシールド面積 = 囲う面積 + パイプ長さ とすると

追加AC = (前後方向のリングシールド面積の合計 / ビークルの前後方向の投影面積) ^ 0.3 * 12 となる。

左右方向と上下方向にも同様の計算が成り立つ。
また、パワーフラクションで強度を下げることもできる。
0.3乗があるためパワーを下げてもそこまで効果は下がらない。超小型でパワーがカツカツのときにやってみてもいいかも。


囲う面積(enclosed area)の判定は、まずリングシールドの直上1マスからスタートする。
このマスが「接続されたパイプで囲われている」ことが判定条件。
ring22.jpg
下の図では、スタートマス(黄色)が赤のパイプ4マスで囲われているので、
囲う面積は1m²となる。
パイプは必ずしも閉じる必要はない。
ring21.jpg
この例では、スタートマスがパイプで囲われていないので、
これはリングシールドとして機能しない。
ring3.jpg
囲う面積の判定は、前後方向に投影して行われるので、
一見囲ってないように見えても囲われている判定が出る。
ring4.jpg
前後から見るとこの通りちゃんと囲われていることが分かる。

リングシールドの効果を受けられないブロック

2021/12/9
トラスなど、ACDeco族のいくつかがリングシールド効果受けないなと思ったら
Water tight属性がないものは「一番外側にある判定」(ShellFlags)を与えられないらしい
なのでこの場合はトラスの内側にあるブロックがACバフを受けます


※注 Shift+Pキーでも「一番外側にある判定」を見ることができる

PACの当たりやすい距離と当たりにくい距離

2021/2/27
pac1.jpg
PACの光線は100本の線分で構成される
1つのパーリンノイズ(波1つ分)を生成し、
それにしたがって狙ったポイントからのズレをちょっとずつ100回足していくことで、波のような形を作っている


周期的な形になるのは、ズレを計算するときに小数部分を使っているからで、
0.0,0.1,...10.0まで0.1刻みで入力していくので(多分)波が10個できる
はじめ23回はズレが徐々に増えていく感じになっている(多分)


射程は固定5200mかあ、前見た時からだいぶ変わってる


で、本日やりたいのは
距離によって命中率が高い部分(節)と低い部分(腹)が存在するって話です

100本の線分のうち、
このように必ず狙ったベクトルと平行になる線分が存在して、
そこが腹で最も命中率が悪くなります
pac3.jpg
とりあえずはっきり見える最初の腹がこれ
予想通りパーリンノイズの引数が整数になるあたり
pac4.jpg
次の腹も1040mだからパーリンノイズの引数0の部分ですね


とりあえず検証用フォートレス投げておきます
腹2つ分まで予想通りだったのでひとますOKとする

上手いこと交戦距離調整できればフォーカス低くても比較的当たるようになるのかな…?


完全に綺麗な節になるわけじゃないんで必ず当たる点ができるわけじゃないですけど
少なくとも距離が520mの倍数のときは最も当たりにくいということは言えますね


pac5.png
PACにも腹と節があるように見えるね、というお話

カスジェエンジンのパーツ共用

2021/3/13
https://brilliantskies.customercase.com/forums/bug-tracker/ideas/349842-1-addon-between-2-cje-apply-to-both-sides
バグじゃないんか...


謎仕様が増えた瞬間であった


共用可能なのは
・エキストラコンプレッサ
・エキストラコンバスタ
・エキストラインジェクタ
ですかね
エキストラインテークはダメだった
他に使えるのあったら教えてください


今もとのトラッカー見てきたら互換性のために残してる仕様でなくせるか話してみるって言ってるね


小カスジェだとこうおいていいのか
cje1.png
すると繰り返しの最小単位は2マス
cje2.png
インテーク・ジェネレータ・コントローラ無視するとスモールコンバスタのPPBが100
エキストラインジェクタを4方向に共用するとコンバスタ0.4x4=1.6個分
最大でエキストラインジェクタの割合を50%まで高められるから平均すると(1+1.6)/2=1.3個分
ということで130PPBが理論値でだいたいそこに漸近する感じですかね
蒸気は触ってないから分からないけどもっと強いんじゃろ...


cje3.jpg
7x7x14 109PPV 440PPM
実用的なサイズだと理論値が遠いから性能は(微妙かもしれない)...
蒸気に対して
・立ち上がりの速さ
・低使用率での燃費
・サイズをビークルに合わせて変えやすい
・一部壊れても性能が低下しにくい
あたりのメリットがあるので人によっては選択肢に入るやもしれない


PPV109だと出来たら(蒸気と比べると)PPM500欲しいなー

燃料エンジンの悲哀

2021/10/15


▼基本PPM
500 power/material


▼パワー
キャブレター +125 power/接続数
インジェクタ +400 power/接続数
(ver3.2.9.7では燃料消費そのままで一律4%パワーアップ)

※インジェクタが強めだが、熱によるパワー低下が以前より強くなっていることに注意。


▼冷却力
シリンダ 0.1
排気管 4
ターボ 4
ラジエータ 3
(3÷シリンダー数の分の冷却力を全てのシリンダーに配分する)


▼平衡温度
発生する熱 = 消費燃料 x 2 = 消費マテリアル x 0.2
平衡温度 = √(発生する熱/冷却力/8)

※この計算だと温度が0~1の範囲になるが、これを100倍したものが℃として表示されている。
本項では簡単のため0~1の範囲で計算する。


▼熱によるパワー低下
シリンダのパワー倍率 = 1 - 温度 / 2

※50%以下になることはない。
低い温度でもパワー低下は以前より大きめ。
それでも冷却はできるだけ均して配置した方がよい。


▼ターボチャージャー
燃料消費は下がらない。キャブレターによるパワーを最大30%上げる。

キャブレターのパワー倍率増加 = 0.3 x (排気ガス量 / 6) ^ 0.35

※たくさんのシリンダに共有されているキャブに繋げるとよい。排気は0.35乗があるので無理に集めなくてもよさそう。
劇的にpower/materialを上げることはできないし、power/volumeはあまりよくない。


▼スーパーチャージャー
燃料消費は下がらない。キャブレターによるパワーを最大40%上げる。

キャブレターのパワー倍率増加 = 0.4 x (1 - エンジン使用率)

※たくさんのシリンダに共有されているキャブに繋げるとよい。
低使用率でpower/volumeが下がる割に、power/materialが上がらない。


▼ラジエータ
燃料消費のペナルティはなくなったが、シリンダーが多くてもメリットはなくなった。
冷却力3を全てのシリンダーに均等に配分する。

排気管が4以上の冷却力を発揮できることを考えると体積効率はちょっと弱め。
ギリギリオーバーヒートしない調整に使うときか、排気管を置けないような組み方では効果を発揮するか?


不朽の名作Eyeballエンジン( https://steamcommunity.com/sharedfiles/filedetails/?id=843704664 )がいまだに一番強い気がします
一応ターボ組んではみる


そうか、排気管をまとめる為に伸ばすから排気管がそれほど圧倒的とはいかないのか...
つまりまとめずその場でぶちまける室外機専用エンジンを組めば(おまえは何を言っているんだ)


betaではサブに燃料エンジン置けるから排気だだもれ型も可能性あるかも?


あー、そういえば
とはいえ、サブにあんまり置きたくないなぁ


https://www.desmos.com/calculator/y1vawhzews
おんなじ話をグラフにしただけだけど
とにかく熱ペナが大きくて常に2割引き以下で動かすことになるのがつらいすね

ターボのボーナス30%→50%、スーチャーのボーナス40%→60%くらいにしてもバチは当たらない気がするけど
まあすべてのコンポーネントが平等に強い必要もないからいいかな


やっぱり熱ダウンが弱い原因だったかと納得

蒸気エンジン研究

2021/10/24~2021/10/31

蒸気エンジンのパイプレス接続

steam1.jpg
ボイラーの全ての面から、タービンorピストンに直接蒸気を送ることができる。
※ただし、ラージボイラーコントロールはボイラー能力を持つがタービンやピストンをパイプレス接続できない。


これによりPPVを大幅に稼いだエンジンを作ることができます
PPBB上げるのは難しいですが...
Wikiにもちょこっと載ってるけど初耳っぽい人もいるみたいなのでまとめておきます


※パイプレス接続とパイプによる接続は併用できる

シールドシャフトの変わった使い方

steam2.jpg
シールドシャフト(sealed shaft)の使い方は分かったんだけど
有効な使い方は分からない


そう使うの!?


船体の壁ぶち抜いてスクリューを外に出す時に使うのがメインの目的だと思いますのよ……?


し、しってたし!スクリューの隣にあるもんな...そうだよな...


とは言えスチームエンジンパズル界に一石を投じる可能性もある……あるかな……どうだろ…………
うーん...


実際排気を邪魔せず動力伝達できるシャフトがあると便利なんだけど、
2マス消費するのはうーんですよね

蒸気エンジンのリソースの流れ

[Material]⇒[Steam]⇒[Kinetic Energy]⇒[Power]

1.[Material]⇒[Steam]の最大変換量はBoilerによって決まる
原則として体積あたりたくさんの蒸気を炊けるLボイラーがよい。
パイプレス接続で蒸気を取るときも接続面が広い。
Mボイラーは高さを3に抑えたいときに、SボイラーはPPBB上げるためスキマにねじ込むときに。


2.[Steam]⇒[Kinetic Energy]の最大変換量はPistonによって決まる
原則として体積あたりたくさんの蒸気をシャフトのエネルギーに変換できるSピストンがよい。
Mピストン、Lピストンは体積効率が約半分になってちょっとエネルギーロスが減る。


3.[Kinetic Energy]⇒[Power]の最大変換量はMass(主にWheel)によって決まる
変換できる最大量はMass×3。
それぞれのSパーツのMassが200、Wheelのみ1000 Massを持つ。
言いかえると各パーツが600 Kinetic Energy、Wheelが3000 Kinetic Energyを運用できる。

PPV重視の組み方

1.ボイラーとピストンの比
PPVを上げるときは多段ピストンを採用しない。
このとき、Sピストンは4400 steam/sを消費できるので、
Lボイラーが22.5 material/s = 22500 steam/sを生産することから
Lボイラー:Sピストン≒1:5で置くとよい。

Mボイラーを使用するときはLボイラーの1/3の蒸気生産量なので
Mボイラー:Sピストン≒3:5で置く。

余りの500 steam/sが気になるときはSタービンを1個突っ込んでおく。


2.ホイールの使い方
RPMが180以上になっていればギリギリ180未満になるまでホイールを追加する、でよい。
できるだけ高回転で利用する方がPPVは高くなる。

Sクランクを2つのピストンで共有した場合は、クランク:ホイール+ギアボックス=1:1程度になる。


3.タービンの使い方
主にEnergy(電力)が欲しい場合。
タービンはピストンよりもPPVが低いので、メインとしては使わない方が良い。
ホイールにシャフトジェネレータをつなげて使おう。
ボイラーで余った蒸気の活用としてSタービンをねじ込むのはPPBB確保のためには有効。

2段ピストンの最適な比

ピストン2段型が5:4が最適っていう根拠の式が見つからないんですよね
https://www.desmos.com/calculator/v4ftvjfkdu
というわけで2段ピストンのグラフをぽい


1段目ピストンの割合が(22-√330)/7=0.5477のとき最大値ですね
近い整数比だと1段目:2段目=6:5かな
5:4は経験則から出た値だったのかも

でもグラフから見て分かる通り1:1~3:2程度(割合0.5~0.6)ならば問題なさそうですね
1%程度の差しかない


>5:4は経験則から出た値だったのかも
確かそうです

2段ピストンの基本の組み方

2段型Sピストン、結局この基本2型しかなかった
steam3.jpg
右側の3:2ピストンはパイプレス接続できてコンパクト、PPBBも高い
左側の1:1ピストンはパイプレス接続を使わずに組めて、7x7以上にするとPPBBが3:2ピストンを超える


参考:
https://steamcommunity.com/sharedfiles/filedetails/?id=2591011969
https://steamcommunity.com/sharedfiles/filedetails/?id=2379008358
https://steamcommunity.com/sharedfiles/filedetails/?id=2376298676

蒸気エンジン雑多メモ

2段目で消費する蒸気の合計 / 1段目で消費する蒸気の合計 = 0.6 ...①

①について、1段目も2段目も同じ容積のピストンのとき、
https://docs.google.com/document/d/1HGC4B_pJxXguEiyUwafIF0jorBVaOoKwAGQpsYpoMUo/edit にあるように
2段目のピストン1基の差圧 / 1段目のピストン1基の差圧 = 0.6 x 1段目のピストン数 / 2段目のピストン数
が成り立つ。


①式は例えばLピストンとSピストンでも成り立つ。
Lピストンのsteam容積はSピストンの8倍なので、8個置いたと思って計算するとよい。


①式は実は1段目ピストン、2段目タービンのような構成でも成り立つ。
これが2段目にタービンを持ってくると出力がガクンと下がる理由。


①式は2段目と3段目にも同じ関係が成り立つ。
3段目で消費する蒸気の合計 / 2段目で消費する蒸気の合計 = 0.6


ピストンのとき、
最終段の差圧 / 最終段で捨てる圧力 = 88% : 12%

タービンのとき、
最終段の差圧 / 最終段で捨てる圧力 = 100% : 0%


1 material = 1000 steam
消費した蒸気の4割がkinetic energyになることと①式から、


理論ppm
1段ピストン:400 ppm
2段ピストン:640 ppm
3段ピストン:784 ppm...


段数をむやみに増やしてもPPMはあまり上がらないので、
PPMを上げたいならkinetic lossを減らす方針もあり。
例えば4段Sピストンよりも、3段M→S→Sピストンの方がPPV,PPMともに高くなる。

排気効率化について

上でも書いたが、1段ピストンで使える差圧(Pressure Diff.)は通常10のうち8.8が最大である。
だが、ピストンの排気部に複数の排気管をつけるとこれを超えることができる。
steam4.jpg
排気管1本:約8.8(残り1.2)
排気管2本:約9.4(残り0.6)
排気管3本:約9.7(残り0.3)...
のように、残りの圧力が約1/2ずつになっていく。
steam5.jpg
スチームジェットでも数値は異なるが似たことができる。難点が多いので今回は省略。


複数のピストンから排気をまとめると、つながった排気管の数だけが合計されるので
実質1本で数倍のはたらきをさせることができる。
(下図では、わずか3本で6個のピストンが差圧9.7で動作している)
steam6.jpg
PPV上はそこまで強力ではないが、蒸気が余っているときはPPVを稼げることもある。
PPBB上は非常に強力なテクニック。
Sタービンを入れられないスキマにも入れられるし、そもそも電力が必要ないビークルでも使えるエンジンになる。


これ最後の排気の数はピストン排気を繋げると平均化されるかと思ったけど、そんなことはなくて、出口の数分だけちゃんと全部圧力下がるね
なのでPPBB内にしか排気しない型でも、最後の圧力がっつり下げれます
あ、内部排気だけで0いけた


そうなんす、そこが強い
説明補足助かるー

ピストン2段型だと性能向上5%くらいのはずなんだけど、
PPBB上がるのは当然として、ピストン2つにつなぐとPPVも上がる感じですね


半年前に作成したスチームエンジンをちょっと改修したら、PPBBが166から170に上がりました

APS(アドキャ)研究

アドキャ設計シート

2020/12/25

作り途中だけど
Adv.CannonDesignerSheet_Ver3-1-5-8
https://docs.google.com/spreadsheets/d/1c_D3VVbpV5HLsxeisWDVfh5bWQ9qsedHFz_zdHWqDWs/edit

AP弾(ホロポ除く)は小口径での威力バフがある

2020/12/23

あんまり単純じゃなかった
AP=0.0175x(全部のモジュールのAPモディファイアの平均(弾頭は1として扱う)(モジュールサイズ依存))x速度x弾頭のAPモディファイア係数

KDも3.5にモジュール係数と小口径KD補正がある以外は同じ計算のようだ


んー?KDの計算がわからん


KD=3.5x(全部のKDモディファイア値の合計(弾頭は1として扱う)(モジュールサイズ依存))x速度x弾頭のKDモディファイア係数


書くと長いから500mmを1としたモジュール体積の^0.6と小口径になるほど補正が入ると思って下さい
(ホロ―ポイント弾を除く)
小口径補正はこれ
https://www.desmos.com/calculator/vncwlwg1af

ボリュームモディファイアはこれ
https://www.desmos.com/calculator/4idfcaagbs


速度は反動値=ガンパウダーとレールドローの力の√から計算されてる臭いけど、ちょっと合わない
弾速=6.45x弾頭のスピードモディファイアx√(力/ボリュームモディファイア)…かな?
モジュール複数の時がわからんけど


頭SM x ボディSM平均 x √(212500 x パウダーモジュール比長さ/弾薬モジュール比長さ)
かなぁ

小数点以下の扱い

2020/12/23

アドキャの小数点以下ってどう計算されるんです?


場所による
例えば口径としてならそのまま使用されるし、砲弾なら口径の小数部分は切り捨てされる


50.99mmの20モジュール砲弾作ったとするじゃん?
計算上1019.8mmとなるから1mローダーに入らないはずだけど
口径は小数点以下無視されるので50mm扱いになって、50x20の1000mmとなり1mローダーに入る
が、FP上では四捨五入された51mmと表示される


口径は.99にしておいたほうがちょっとだけお得?


ちょっとだけお得
なんで処理体系合わせてないかは謎

レールガンの精度バフ

2021/10/20

あれ?レールガンの精度バフ強くね?
5%にしただけで精度が0.15->0.11になったんだけど


精度バフって、もしかしてパーセンテージじゃなくて、投入した電力の絶対量で決まるん?


ソース調べてみた
レールの精度バフによる上昇率=1/(1+2x精度に使用したRailDraw/(12500xモジュールモディファイアx口径のモジュール単位での弾体の長さ))


精度に直接掛け算されるからちょっと入れるだけで結構下がるよ
https://www.desmos.com/calculator/h97usudjo5


砲身の長さで計算された精度に割合でかかるから、まぁ、強いと言えば強いけど、砲身めっちゃ長くすれば達成できるのも確か

マルチバレルのクーラーの効果が公式発表より弱い

2021/11/8

今更調べてみたんだけど、FPについてるクールダウン能力はクーラーの2.5個分
Boa Evacuatorのクールダウン能力はクーラーの0.5個分


え、ボアの効果ほんとにそれだけ?
冷却補正0.15ってのは?


前の効果じゃないかな?


あ!発見した
BarrelCountCoolerFactorはバレル1個で1スタートじゃなくて1.05スタートだったのか


これ、バレル6にしてもクーラー効果1.25倍にしかなって無くない?
確かマルチバレルってクーラー効果、6バレルだとペナ2倍食らって結果の効果は3倍って話だったよね?


現状Cooling Limit計算(多分動作見た感じ内部も同じ)が、
1:1.05倍
2:1.1倍
3:1.15倍
4:1.2倍
5:1.25倍
6:1.3倍
ってなってるので1本が強くて6本がだいぶ弱い結果になってまする


一応、実動作もUIと同じなのは確認したので、処理絶対間違ってる


とりあえずクーラーの効果の最終式はこんなんですな
https://www.desmos.com/calculator/jrjcrcj6ze

ウイング推進詳細

2021/11/16

固定ウイング推進

ちなみに、私の先行研究だと、
Wingは速度の絶対値を揚力にする。
という結論が出ておりますね。

それと、海に浸かると推力が増えます。


さて、なんでWing推進が凄いのか解説しましょう
スピブロに乗せて回すと推力が出る。
これはそうなんですがそれだけだとヘリブレのほうが強いです。
同じ直径と体積なら全然ヘリブレ。

でも桁外れの超音速飛行はWingのほうが強い。
なんでかというとWingの揚力が速度の”絶対値”を基準に計算されるところにあります

その特徴をよく表した実験がこれです。
ここまでくれば感のいい人は気がついたと思いますけども速度の絶対値とはWingの移動速度のベクトル長さです。
そこに向きの括りはありません。
wing1.jpg
前後左右はもとより、上下動していても揚力が発生します。
で、ここで揚力が出る向きとは何でしょう。

それはサブコンストラクト上の上に相当する方向です。
この実験ではこのようにして空間向きを合わせています。


はてさて、
じゃあビークルの正面がサブオブジェクトの上なWingを設置したらどうなるでしょうか。

まず前進します。
そうするとその速度に応じて正面方向に推力が発生します。
結果として加速しますね?

言うとおりに、Wing推進だけは加速すれば加速するほど推力が増える特異な性質を持つのです。

実際は速度に比例(多分)して空気抵抗が増加するので加速は止まるんですが、
ある個数以上のWingを設置したときに(ある意味臨界量のようなもの)
空気抵抗の増加より推進力の増大のほうが勝つ点があるわけですね。

そうなるともう文字通り暴走状態。
加速が止まらなくなって無限の彼方へぶっ飛んでいくことになるというわけでございます。


だから理論上はWingがいっぱいなら回さなくとも無限に加速していくんだよね……
なお何して無くても無限に加速していくので逆に止まるのがかなり難しい模様(

まあそれと、
ヨーイングが始まったときに推進力の不均衡が起きて基本的に真っすぐ飛ばない。


まあ思うほど使い勝手は良くないが、
唯一の特性なのでうまいこと使いこなせってところ。
みんな研究しようね♡

ウイングの推力計算

スピンウイング推進の話が出てたので
ウイングの推力計算のめちゃ細かい話、やります

ウイングの推力は「速度」×0.8である。
これはビークル速度ではなく、ウイングの速度を見ているのでスピンブロックに乗せて回転させても効果を発揮する。
ヘリブレードに似ているが、実際の速度を参照しているから半径を大きくすると発生する力も大きくなる。


下の例を見てほしい。スピンブロックは全て30 rad/s で回転させている。
wing2.jpg
1つ目の例
30 rad/s で回しているので、半径1mの時は 1 x 30 = 30 m/s。
30 m/s x 0.8 = 24 kN の力を発生するはずだが実際は28.4kN。
少しずれていることが分かるだろうか。

2つ目の例
半径2mだから 48kN のはずが 57.8kN。
1mの時のほぼ2倍ではあるが、正確な2倍ではない。

3つ目の例
半径1mだが、鉛ブロックを置くことで大幅に推力が上がっている。
ということは...


ペロッ
これはCoM速度が上乗せされていそうな味


その通り!オブジェクト重心の速度も関わってきます
ということでいくつか例を


オブジェクト重心とスピンブロック位置をそろえてオブジェクト重心の速度を0にすると
wing3.jpg
この通り、ウイングの回転半径に綺麗に比例します
1mで24kN、2mで48kN、3mで72kN...

逆に、ウイングの回転半径を0にすると
wing31.jpg
オブジェクトの重心の回転半径に比例することが分かります
1mで23.4kN、2mで46.9kN、3mで70.3kN...

なぜウイングの24 kNと食い違うかというと、
オブジェクト重心の前フレームからの移動距離をもとに速さを計算しているからです
パドルに似ていますね

1フレームに30/40 ラジアン回転するから
頂角θ、等しい辺が 1 の二等辺三角形の底辺の長さは2sin(θ/2)なので
半径1mのときは 1 x 2 x sin(30/40/2) x 40 = 29.3 m/s と計算されます
29.3 m/s x 0.8 = 23.44 kN となり、ぴったり一致します
nit.png

つまりライトブロック使って重心ずらせば実質2ブロックでウィング推進が可能…?


実用上はピストンで重心ずらすのが良さそうですかね
同オブジェクト上の全てのウイングの力が上がるんで意外と強い
wing10.jpg


ここからが今日のお話

ウイングの回転半径1m、オブジェクト重心の回転半径1mならば
速度計算は 30 + 29.3 = 59.3 m/s になるのかと思いきやそうはなりません

下図は実際の発生推力ですが46.6kNとなり
単純合計の24.0 + 23.4 = 47.4kNとは異なります
wing4.jpg
単純合計にならないのは重心の速度ベクトルと、ウイングの速度ベクトルのなす角が0ではないことが原因です。

重心の速度ベクトルは前フレームからの移動方向、ウイングの速度ベクトルは半径と前フレームからの回転角から計算されてるんで
下図のように、1フレームの回転角をθとするとなす角はθ/2になってるんですね。

合成した速度ベクトルの大きさをとってるんで単純合計よりも小さくなります。
これは特にスピンブロックを重ねて1フレームで大きな角回転させたときに顕著になります。

上図から1フレームでの移動ベクトルの大きさを計算すると、倍角の公式を用いて
√(r²θ²+2rRsinθ-2R²cosθ+2R²)ですね
実際の速さはこの40倍です

上の例ならば、
sqrt(1^2x0.75^2+2x1x1x0.75xsin0.75-2x1^2xcos0.75+2x1^2)x40x0.8 = 46.61となり無事ぴったり一致します。
vector.png

ウイング推進ざっくりまとめ

ざっくり使うためのまとめをするとこんなん

ウイング推進
・翼の中でも速度の0.8倍という高い方の倍率を持つ。
・水中で推力5倍なのでハイドロフォイルに匹敵する。

1.固定ウイング推進
既に解説されている通り。
回さないタイプ。

2.スピンウイング推進
・スピンブロックに乗せてヘリブレードのようにして扱うタイプ。
・ヘリブレードと違い実際のウイングの移動距離を見ているので...

・半径を大きくすると推力が大きくなる。
・オブジェクト重心をずらしてやることでも推力が上がる。ビークル重心に影響ない程度に。
・スピンブロックを重ねて回転速度を上げても推力が上がる。実用上は4個まで。

デメリット
・ブロック速度を見ているので、大きく作ると高速で旋回しているとき
外側の推力だけが大きくなり不安定になる可能性がある。

スピンウイング推進は
①エアロラダー推進の最初の速度確保のためにヘリブレードの代わりに使うか、
②水中超音速を出すために使う
のがいいのかなーと個人的に思ってます。

ウイングの推力計算補足

細かいから説明省いたけど、やっぱり必要そうなんで書いときます
Wingが最終的に参照する速度は「速度の絶対値」でも「Wingの前方方向への速度」でもないんです

↑で説明した「合成した速度ベクトル」を「Wing平面へ射影したベクトルの大きさ」です

Wing平面への射影と、Wing方向の成分の違いがややこしいんですけど
平面に射影するか、直線に射影するかの違いです
下図のような感じ 緑が平面への射影、赤が直線への射影
shaei.png
だからスピンウイング推進ではビークルが高速になっても余計な推力は出にくいです

Wing面を回転方向に垂直にして回転させた時もビミョーに推力が出るのは
上の図でも示した通り、回転方向と速度ベクトルが厳密には一致してないからです
kaku.png
重心の移動速度ベクトルをWing平面に投影したベクトルの大きさは
2rsin²(θ/2)となるので、例えば半径1m、角速度30 rad/sならば
2 x 1 x (sin(30/40/2))^2 x 40 x 0.8 = 8.59 kN となり、画像と一致しますね
wing11.jpg

風見安定とウイング

直進安定性とウイングということでもう一つ小ネタ
風見安定の話
FTD研ログ置き場1

風見安定(ヨーの静安定)とはハンドルをまっすぐにすると機体もまっすぐ進むようにする能力のこと。
FtDでもヨーが静安定かどうかは重要で、実はかなりの数のビークルが静安定でない。
一定の舵角を超えると、抵抗が左右対称でも舵を切ってないのに曲がり続けるビークルがけっこうある。

ウイングは旋回しているとき左右の力に差ができるため、
この静安定性を調整してニュートラルに近くすることができる。
ビークルがある程度大きかったらそんなに気にならんけどね!
http://yourei.jp/風見安定

ブレッドボード小技集

主にブレッドボード設計・開発室から。

ACB→ブレッドボードに情報を送る

2019/9/11
まずですね、ブレボに数字を送る方法
これはドライブ値等々の推力司令を使ってしか取得できません
これでヨシ!コンプレックスで送ろう!と思うと、0と1と-1しか送れません

ここで私考えた、どうにかしてACBで細かい数を扱えないか
そしてひらめいたわけですよ

bread5.jpg
”PIDの入力をNONEにしてなおかつIとDを無効にした上で、出力を系統A,B,Cを選んでからFakeSetpointをACBで設定してやることで、ACBの設定値に比例した値がブレボに送れる!”と

小数点以下2桁までで1以下-1以上しか送れないのは少し残念だけど、コンプレックスの100倍データが遅れるのでワイワイ!という

ブレッドボード→ACBに情報を送る

bread6.jpg
You can also build it like this and give every ACB a slightly different range
このように構築して、すべてのACBにわずかに異なる範囲を与えることもできます

if the detection range of the ACBs increases in steps of 0.1, it only take a small change to trigger a different ACB
ACBの検出範囲が0.1ステップで増加する場合、異なるACBをトリガーするにはわずかな変更しか必要ありません

however, it will trigger multiple ACBs at the same time. You could add another row of ACBs to make sure you only trigger the correct one
ただし、複数のACBを同時にトリガーします。 ACBの別の行を追加して、正しい行のみをトリガーするようにすることができます。

bread7.png
This way you can make sure only the correct ACB is activated
これにより、正しいACBのみがアクティブになっていることを確認できます。


What a revolutionary day it is.

コピーアンドペースト

2021/1/17
コンポーネントそのものはコピーできないが、
Maths Evaluatorの中身はテキストなのでクリップボードコピペできる

リッチテキストタグ

2021/1/17
ちなみにリッチテキストタグが使えるのでメモを強調したいときにも便利かも
https://docs.unity3d.com/ja/2018.4/Manual/StyledText.html

bread4.jpg
入力例は

<b><size=100><color=#ff8080ff>クソデカ文字&#9999;</color></size></b>

コメントと該当箇所をリンクでつなげる

2021/3/15
bread3.jpg
コメントの入力にコメントが指してる部分の出力入れちゃう方式
ちゃんと計算できてるかの確認にもなるし、コメントのノードクリックすれば接続されてるとこの色が変わって探しやすいので、
スパゲッティしてきた時に便利そうと思ったので置いときます。

多段output()を用いて加速度や速度を集計する

2021/1/17
output(1)を使えばアウトプット1番の前フレームの出力値を出力できる。
output(2)ならばアウトプット2番の前フレームの出力。
bread1.jpg
a,output(1),output(2)),output(3),output(4)のように書くことで、
当該フレームと4フレーム前までの情報を集計することができる。


これを多段式にすることで、例えば画像なら8フレーム前までの情報をまとめて処理できる。

FromEuler(ピッチ,ヨー,ロール)の使い方

2021/1/21
FromEuler(ピッチ,ヨー,ロール)は回転を表す四元数(クォータニオン・複素数がちょっと複雑になったやつ)をつくる。
四元数 * ベクトル の形でベクトルを回転させることができる。他の演算は定義されてない。
bread2.jpg
よく見たら除算も定義されてたでござる
ベクトル / 四元数

シールドプロジェクタの防御力評価

2021/12/8

シールドプロジェクタの最適な角

求めたかったのは、跳弾確率を考えつつ張った面積に対して角度をつけても無駄にならないような角度
だったんですけど、結局エンジン出力が比例してると自分で書いた通り対出力にも有効でした...


エンジン出力考えるんだったら、パワー消費はシールド強度の2乗に比例だから、強度1が最高ってなるんでは


シールド反射確率も強度+2に比例だから1が一番効率良いと思う


...強度は固定した方がよさそうだね


シールドプロジェクタの防御力評価、純粋に増加分だけ取った
1 / (1 - 跳弾の割合) - 1 の方がいい気がしてきた


ちょっと式変わってます?
コード的にはこっちが正しかったってことなのかな


考え方を少し変更して
1 / (1 - 跳弾の割合) ⇒ 1 / (1 - 跳弾の割合) - 1 になりました

例えば跳弾の割合0.2ならば
1/(1-0.2)=1.25 で、防御力125%と考えていたところを
1/(1-0.2)-1=0.25 で防御力25%増と捉えてるだけです

cosをかける部分が変わったので最適と考えられる角度も変わるんですが、たぶんこっちがいいはず...たぶん


こんな感じになりますね
shield1.png
shield2.png


実用上は、重なってる部分はほぼ無意味になるんで理想的な角度は難しいんですよね


30°で張ればいいとなると有名角なので張るのは楽そう...?


cos30°=√3/2 なので端数が出ちゃいますねー
cos28.36°=22/25 か、
cos32.86°=21/25 が良さそうかも

※注 28.36°で張ると、25m幅のプロジェクタを22m間隔で敷き詰められる

スモークとの比較

投げとこ
smoke1.png
多分スモーク優勢だけど、ビークル速度次第ではシールドが強いパターンもあるかも
スモークの防御面積の評価をどうするかだけど...

https://www.desmos.com/calculator/gryjy7ucwq

半径20mの球を中心からの距離10√2mの平面で切ると半径10√2mの円になる。
この面積は10√2m x 10√2m x π ≒ 628m²
これがほぼ 25m x 25m ≒ 625m² のシールドと同じ面積。

80m/sだとスモーク量が0.4倍になるので、0.1 material/sであれば
2500 smoke x 0.1 material/s x 0.4 = 100 smoke

シールド強度1 ならば 100 x 1 = 100 smoke
距離10√2m、面積25m x 25mのときの消費が44.2 power
500 power/material で換算すると 0.088 material/s


というわけで高速でかつシールド強度1ならばスモークディスペンサよりも有利なパターンがないこともないですね
シールド強度2倍にするとマテリアル消費が実質4倍に対し、
スモークディスペンサはスモーク2倍にしても消費2倍で済むので、高い軽減率を望むならやっぱりスモーク

また、速度が低いならば多分ほとんどのパターンでスモーク


ありがとうございます!やはりスモーク!

リングシールドとの比較

リングシールドの詳細は↑

メインが小さいビークルで、かつサブオブジェクトを活用すると非常に強力なリングシールド。
だがしかし、効果がリングシールド面積の0.3乗比例なので意外と大き目のビークルでも強い。
https://www.desmos.com/calculator/obispyud6a

消費パワーは原則 パイプ長さ x 30 power なので防御面積を考えると非常に小さい。
一概にシールドプロジェクタと比較はできないが...


リングシールド面積/ビークル投影面積=1/4 でも+8ACあるので、
メタルのACが1.2倍になると考えると強度10シールドプロジェクタくらいの効果はあるかもしれない

AP過剰な攻撃がたくさん飛んでくる環境ならあんまり意味ないけども
攻撃を受けきる戦術は専門外なのでわからんちん

帆の研究

ブレッドボード設計・開発室より。

帆の特性

2021/1/31
おや?自機のヨーの情報ってもしやグローバル座標基準?


ヨーはグローバルですね、なんかできそう?


横帆の推力って方角によって変わるので、グローバル座標があれば風向きを考慮した操船ができるなーって思って


風って今固定でしたっけ それなら確かにいけそう
以前帆について調べた時に怪しいなとは思ってたんですが固定っぽいすね
時間たっても変わらーん

https://brilliantskies.customercase.com/forums/bug-tracker/ideas/346591-vehiclesails-force-is-not-correctly-calculated
こういうバグがあるから多分出力弱いと思うけど最適化してみるかー


https://www.desmos.com/calculator/ivuwrjdlfo
https://www.desmos.com/calculator/aouekldsmg
難解だ!


あれ?四角帆と三角帆の帆走特性そんなに変わらない?


ですね
ほぼ全域で四角帆が強いです

三角帆を最適な方向へ向ける

2021/11/22
三角帆のバグが修正されたので再度最適化してみる
ちなみに四角帆は直ってない

https://www.desmos.com/calculator/huf2u1if2k
新・三角帆はだいぶ使いやすく、逆風でもかなり力は出る様子


三角帆の最適化ブレッドボード
相変わらずラグランジュ補間だから式が長い!
sail1.jpg
帆の量1/3、Airタブ禁止できっちり飛ぶようになった

ビークル投げておきます
帆のこういう制御、デフォルトであればいいのにねえ

コメント