DEVELOPMENT SNAPSHOT #64 — 研究ツリーを読める画面に:開く速さ、つながり、予約できない理由

Contributed by: Takeshi Miyaoka on 土曜日, 10月 24 2026

Last modified on 土曜日, 10月 24 2026

研究の画面を開くと、しばらく何も出てこない。開いたあとも、どの研究がどこにつながっているのか、なぜ予約できないのかが読み取りにくい。今回の開発では、研究管理画面のこうした不満に4つの変更で手を入れました。

開くまでの待ち時間を縮め、関連図を拡大・縮小できるようにし、指した研究の前後を色で分け、予約できない理由をその場に出すようにしています。

開発中のデバッグビルド(2026-10-22)で検証用に撮影した研究管理画面。「密閉動力伝達」を起点に、次に開ける研究と線を緑で強調しています。研究の名前や数値は開発中のもので、今後変わる可能性があります。

開くまでの7秒

研究管理画面は、ボタンを押してから表示されるまでに7秒ほどかかっていました。計測用の記録を入れたデバッグビルドで調べると、時間の大半は関連図の配置計算でした。共通技術の26件の研究について、カードを並べ、線が他のカードや線とぶつからない経路を探す処理です。しかも同じ計算を、画面を作る時と表示した直後の2回行っていました。

線の経路探しでは、一本の線を探している間は他のカードと線が動きません。そこで、同じ区間の当たり判定を一度だけ行って使い回すようにし、塞がっていると分かった組み合わせは先に飛ばすようにしました。候補の選び方と優劣の付け方は変えていません。ゲームから取り出した23通りの配置と、乱数で作った360通りの関連図で、変更前とカードの位置・線の点・行の高さがすべて一致することを確かめています。あわせて、同じ条件の配置は結果を再利用し、表示直後のやり直しをやめました。

計測(デバッグビルド)変更前変更後
画面を作り始めてから表示まで7.14〜7.31秒(3回)1.12〜1.35秒(2回)
関連図の配置計算(2回分の合計)6.41秒(1回)0.64〜0.85秒(2回)

ただし、表示されてから関連図の絵が描き終わるまでには、変更後も開始から3.2〜3.5秒かかっていました。描画の側は今回の変更の対象外で、まだ縮める余地があります。

引いて全体を見る

研究の数が増えると、関連図は画面に収まりません。Ctrl+ホイールで、マウスの位置を中心に拡大・縮小できるようにしました。1段階は1.1倍で、拡大は約1.46倍まで、縮小は約0.39倍か、関連図全体が収まる倍率(最小で約0.1倍)までです。左の時期の帯は大きさを変えず、行の位置だけを合わせます。クリックやホバー、ドラッグでの移動も、拡大後の位置で判定します。

同じビルドで、共通技術の関連図を最小まで縮小した状態。全体の形は分かりますが、文字は読めない大きさです。

前提は金、次は緑

線が交差する関連図では、ある研究の前提がどれなのかを線をたどって探すのが大変でした。カードを指すと(指していなければ詳細欄に出ている研究を起点に)、前提になる直前の研究とその線を金、次に開ける直後の研究と線を緑で太く縁取り、関係しない線とカードを暗く沈めるようにしました。直前・直後のカードには札を付け、起点のカードは白で囲みます。冒頭の画像では、起点の上から金の線が入り、下の2枚に「直後」の札が付いています。

予約できない理由を、その場で

研究を予約しようとして押せない時、これまでは理由を自分で探す必要がありました。関連図のカードには状態を表す色の帯を付け、学校の条件や前提研究など、予約できない理由を短く出すようにしました。条件を満たしていないカードには錠前の札が付き、帯の色の凡例は関連図の上に置いています。

同じビルドで「熱源と動力の基礎」を選んだ詳細欄。学校が稼働しておらず、専門研究定員が0人のため予約できないことが、条件ごとの可否と現在の値で示されています。

詳細欄では、見出しの下に理由の枠を出し、条件ごとに満たしているか、今の値はいくつか、どうすれば満たせるかを並べます。学校の条件が足りない時は「学校・教育配分を開く」から、建設の学校の画面へ直接移れます。

今回の数字について

表の時間は、開発用PCで計測用の記録を入れたデバッグビルドを使い、同じセーブ状態から研究管理画面を開いて測ったものです。回数は変更前3回(配置計算は1回)、変更後2回と少なく、配布するビルドやお使いのPCでは時間が変わります。画像はすべて開発中のデバッグビルドを検証用に撮影したもので、研究の名前・期間・予算などは調整中の値です。

前回の記事:DEVELOPMENT SNAPSHOT #63 — 鉱山は増やさずに:鉱石の行き先と、燃料をつくる人の数

ダウンロードページで、現在公開されているファイルと開発状況を確認する

コメント (0件)

Happa - DEVELOPMENT SNAPSHOT #64 — 研究ツリーを読める画面に:開く速さ、つながり、予約できない理由
https://www.happa.bz/article.php?story=devblog-064-research-window_ja