Unityの2D物理エンジンでミニ四駆っぽいものを動かす

ここ最近、Unityを練習でいじっております。

今回はミニ四駆の構造をモデルにして、ギヤを噛み合わせてモーター側から回転を伝え、タイヤを回すことで車(下記画像)を動かす仕組みをテストしてみました。

実際にミニ四駆のギヤと同じ歯数のギヤ画像を用意して、Unityで組み立ててみます。

ギヤの歯数の組み合わせは、僕が小学生の頃よく遊んでいたミニ四駆シリーズタイプ1の作りに習って、パワーギヤとスピードギヤの2パターンを作成しました。

最初の段階で、ギヤの3Dモデルを用意してMesh Colliderを使って3D物理演算でテストしてみたのですが、形状が複雑すぎるのか、僕の経験不足なのかで思うように動いてくれなかった(ギヤが途中で空回りしだした)ので、今回はPolygon Collider 2Dを使って2D物理演算で行うことにしました。

2Dならうまくギヤが噛み合ってくれるようです。

物理演算は2Dでやっていますが、表示上の配置はZ軸も使っております。

2D物理演算はZ軸が使えないので、そのままだとギヤやタイヤの位置がかぶってうまく衝突判定できないのですが、レイヤーを分けることで特定のレイヤー関係だけを衝突判定させることができるようになりました。

フロントのタイヤを回すにはミニ四駆ではクラウン型のギヤを使いますが、2Dではちょっと厳しいので今回はリアタイヤだけを回すようにしています。

作ってみたのはこちらです。
 ・ミニ四駆デモ1

キー操作でギヤが切り替わります。(切り替わらない場合はデモの再生画面を一度クリックしてみてください)
1:パワーギヤ
2:スピードギヤ

スピードギヤの方が速いようです。上り坂もスピードギヤの方が若干速く登っている、、ということはスピードギヤの方がパワーも出ているということですね。

パワーの関係について調べる為に、ギヤの仕組みを少し単純にしてみたものが下記のデモ2です。
 ・ミニ四駆デモ2

こちらもキー操作でギヤが切り替わります。
1:ギヤ比 約3.2:1
2:ギヤ比 約1:1

茶色のギヤの回転が動力源です。

現実の世界だと「ギヤ比3.2:1」の方がパワーが出るのですが、今回の「デモ2」ではスピードが速い「ギヤ比1:1」の方がパワーも出ています。
てこの力までは計算していないのかな?

これを現実の世界に近い挙動にするには、スクリプトで速度制限などして微調整する必要がありそうですね。

以上、Unityの練習でした。Unity面白い!

ABOUT

MY APPLI

サッカーピープル
サッカーピープル

操作のしやすさ最優先の
自由自在なサッカーゲームです
iOS版 / Android版

コロッコトロッコ
コロッコトロッコ

石ころのコロッコを転がしながら
サラリーマンを会社へ運ぶゲームです
iPhone版 / Android版

CATEGORIES

ARCHIVES

TAGS

3Dプリント AIR ANE Arduino Away3D client work DIY Flash Funnel JavaScript Kinect LED openFrameworks PhotoShop Progression Qubicle Unity Xcode アプリ インターバル撮影 カメラ キャラ ゲーム制作 コロッコトロッコ スクリーンセーバー デバッグ フットサル ミニマル ランニング レーザーカッター 事務所 低山部 作品 動物 塗装 展示会 文字 料理 福岡てら子 美食家 街ぶらり 道具 鉄道 電子工作

FEEDS

SNS

--

Arduinoをはじめよう
Arduinoをはじめよう

電子工作が未経験の人にも
分かりやすい入門書

Arduinoをはじめようキット
Arduinoをはじめようキット

上の書籍の内容が
一通り試せるツールセット

Prototyping Lab ―「作りながら考える」ためのArduino実践レシピ
Prototyping Lab

「Arduinoをはじめよう」より
深く掘り下げた内容の実践書

Make: Electronics
Make: Electronics

電子工作の基礎から実践まで