【第13回】Unityで加工機を実装|未加工ワークを加工して色を変える仕組みを作る

機械設計×ゲーム

前回の記事では、このゲームの目的を「ワークをただゴールへ運ぶ」のではなく、
加工機の能力に合わせて安定供給することへと整理しました。

つまり、

  • スタートからワークが流れてくる
  • コンベアで搬送する
  • ストッパでタイミングを整える
  • 加工機へちょうどよい間隔で投入する
  • 加工済みワークだけをゴールへ送る

という流れです。

ここまで来ると、ようやく
「工場の生産ラインを考えるゲーム」
としての形がかなり見えてきました。

そして今回は、その中心となる

『加工機』

を実際にゲームへ入れる段階です。


今回の修正で大事だったこと

加工機を考えるうえで、まず整理し直したのが
投入タイミングのルールでした。

最初は、「加工周期が2.0秒なら、2秒ごとに入れればいい」
くらいのイメージでしたが、ここは表現をより正確にしました。

正しくは、

加工周期が2.0秒なら、投入“間隔”は2.0秒以上必要

ということです。

たとえば、加工機が1個処理するのに2.0秒かかるのに、
1.5秒ごとにワークが来てしまったら、
必ず後ろが詰まっていきます。

これはかなり重要でした。

つまりこのゲームでは、加工機の前で待てばよいのではなく、
加工機へ入るタイミングそのものを設計する必要があるということです。

この考え方にすると、
ストッパを調整する意味がかなり明確になります。


加工機がBUSY中に、次ワークが投入位置へ来たらNG

今回の仕様変更で、一番分かりやすくなったのがここです。

加工機が動いている最中、つまりBUSY状態のときに、
次のワークが投入位置まで来てしまったらNGにすることにしました。

イメージとしてはこんな感じです。

正常

  • ワークが加工機へ入る
  • 加工機が処理を始める
  • 次のワークはまだ十分後ろにいる
  • 加工が終わった後に次ワークが到着する
  • OK

NG

  • ワークが加工機へ入る
  • 加工機がBUSY
  • その間に次のワークが投入位置まで来てしまう
  • INPUT TIMING NG

このルールにすると、
「加工機の能力を超えて供給してしまった」
という失敗理由が直感的に分かります。

しかもこれは、機械設計や生産技術の感覚としても自然です。

設備が処理できないのに、次を突っ込んでしまった。
これは現場でもすぐに問題になります。


渋滞がスタートエリアまで来たらNG


もう一つ追加したのが、渋滞がスタートエリアまで到達したらNGというルールです。

加工機の前だけでなく、
ライン全体としてワークがさばけなくなり、
上流まで詰まりが広がる。

これは工場ラインとしてかなり分かりやすい異常状態です。

つまり今回の失敗条件は、

  • 加工機がBUSY中に次ワークが投入位置へ到達した
  • 渋滞がスタートエリアまで達した

の2つが、かなり重要なNGになります。
これでゲームとしても、「どこが悪かったのか」が理解しやすくなりました。


速度を4倍くらいにして、見ていて気持ちよくしたい

ここで大きな見直しをしたのが、ゲーム全体のテンポです。

最初に考えていた
「加工時間2.0秒、投入間隔2.2秒」
のような設定は、設備の考え方としては自然です。

でも、ゲームとして画面を見たときに少し遅い。

待ち時間が長く、試行錯誤のテンポも鈍く感じました。

そこで、標準速度を今の4倍くらいにするという方向にしました。

具体的には、

  • 加工機の能力:0.5秒
  • 投入間隔:0.6秒前後

くらいのイメージです。

こうすると、

カチッ → スッ → カチッ → スッ

というテンポでラインが動きます。

これはかなり重要です。

このゲームは、考える面白さだけでなく、
見ていて気持ちいいことも大事だからです。

30秒試運転という設定にしても、
このくらいのテンポなら実時間として長く感じにくい。

むしろ、見ていて爽快です。


NG時は「NG表示 → 強制終了 → すぐ再設計」の方がテンポがいい


今回かなり良いと思ったのが、NGが出たらすぐに運転を止めるという考え方です。
ただし、発生した瞬間に何も見せずいきなりリセットすると、「何が悪かったのか」が分かりません。

なので流れとしては、

  1. NG発生
  2. 時間速度を通常に戻す
  3. 赤い「NG」表示
  4. 問題箇所を赤く点滅
  5. 0.8~1.5秒くらい見せる
  6. 試運転終了
  7. EDITモードへ戻る

という流れがかなり良さそうでした。

ここで大事なのは、コンベアやストッパの配置は消さないことです。

消すのはワークだけ。

設計状態はそのまま残す。

そうすることで、

  • 原因を見る
  • その場で少し修正する
  • すぐ再試運転する

という流れができます。

これはかなりゲームらしいです。


白いワークが、加工後に青色へ変わる

今回の加工機実装で見た目として一番分かりやすいのが、ワークの色変化です。

今回、ワークの色は

  • 未加工:白
  • 加工済み:青

に統一することにしました。

つまり、スタートから流れてくるワークは白い丸。

それが加工機へ入る。
処理が終わる。

すると、青いワークになって出てくる。
これはとても分かりやすいです。

画面を見ただけで、

「このワークはまだ未加工なのか」
「このワークは加工済みなのか」

が一目で分かります。

工場ゲームとしても、加工という変化が視覚的に見えるのはかなり気持ちいいです。


ゴールは「加工済みワーク専用」にする

前回までの流れを踏まえると、ゴールにも意味を持たせたいです。
そこで今回は、ゴールは加工済みワーク専用というルールにしました。

つまり、

  • 白い未加工ワークがそのままゴールへ行ったらNG
  • 青い加工済みワークだけがゴールに入れる

という形です。

これで、加工機を通す意味がさらに明確になります。

単にワークを流せばいいのではなく、
必要な工程を終えた製品だけを出荷する
という、工場らしいルールになりました。


加工機のパラメータはどうするか?

ここで少し将来の話も出ました。

加工機に持たせるパラメータとして、

  • サイズ
  • 能力
  • 付加価値
  • 耐久性(メンテ代)

はどうか、という案です。

これはかなり面白そうでした。

たとえば、

  • サイズ → 占有マス数
  • 能力 → 加工時間
  • 付加価値 → 製品価格
  • 耐久性 → メンテ費用や交換頻度

という形です。

こうすれば、

単純に「速い加工機が最強」にならず、
設備選定の悩みも出てきます。

ただし、ここでChatGPTからの提案もありました。

ChatGPT
ChatGPT

MVPの段階では、能力だけに絞った方がいい

これはかなり納得でした。

今の段階で、利益、品質、付加価値、メンテ費用まで入れてしまうと、
プレイヤーが何を優先すればいいのか分かりにくくなります。

まずは、加工能力を上回らないようにラインを作るという、
いちばん分かりやすい軸で完成させる。

これはMVPとしてかなり正しい方向だと思いました。


今回の加工機で、ゲームの目的がさらに明確になった

今回の仕様を入れることで、
ゲームの目的はかなりシンプルになりました。

白い未加工ワークを、加工機の能力に合わせて投入し、
青い加工済みワークだけをゴールへ送り続ける。

この一文で、かなり分かりやすいです。

コンベアはそのための搬送設備。
ストッパはそのためのタイミング調整設備。
加工機はラインの中心設備。
ゴールは加工済みワークの出荷先。

それぞれの役割がはっきりしてきました。


ゲームループもさらに強くなった

今回の加工機実装によって、ゲームの流れもかなり整理できます。

スタート・加工機・ゴールがある
↓
プレイヤーがコンベアを設計する
↓
ストッパ位置や周期を調整する
↓
試運転する
↓
高速でラインが動く
↓
加工NGや渋滞を確認する
↓
原因を見る
↓
配置や設定を修正する
↓
再試運転する

この流れはまさに、設計 → 試運転 → 問題発見 → 改善です。

第5回で考えていたゲームループが、
かなり具体的なシステムになってきました。


「ワークを運ぶゲーム」から「能力に合わせて投入するゲーム」へ


今回の加工機実装で大きかったのは、
単に新しい設備が増えたことではありません。

ゲームの中心が、「どう運ぶか」から
「設備能力に対してどう投入するか」へ変わったことです。

これはかなり大きいです。

同じコンベアでも、
同じストッパでも、

加工機が0.5秒で処理できるなら、どう合わせるか?

という視点で考えると、
設計そのものがゲームになります。

かなり「機械設計っぽいゲーム」になってきました。


今後はMVP ver.0.1の完成へ

ここまでで、

  • グリッド
  • コンベア
  • ワーク搬送
  • ストッパ
  • 加工機
  • 加工済み状態
  • ゴール
  • NG判定
  • 試運転と改善

という、かなり大事な要素がそろってきました。

そして次の方針としては、付加価値や耐久性はまだ入れず、
まずは能力だけでMVPを完成させることに決まりました。

これはかなり良い判断だと思います。

要素を増やしすぎず、まずは
「加工機へちょうどよいタイミングでワークを供給する工場パズル」
として成立させる。

次回は、その流れを受けて、

【第14回】MVP ver.0.1が見えてきたので、ここまでのゲームをまとめてみた

という感じで、ここまで作ってきた仕組みや面白さを整理する回につなげていきたいと思います。

コメント

タイトルとURLをコピーしました