質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

1410閲覧

unityでwheelColliderの数値を無効化にしたい

ikumi1025

総合スコア2

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2020/07/15 02:56

Unityの質問です。
Wheel Collider内にある、Suspension Distanceの値を常にゼロにするスクリプトを作りたいのですが、
全くアイデアがありません。

ご教授いただきたいです。
よろしくお願いします。

Vertionは、Unity 2018.3.14です。

上の質問に加えて、
Asset Storeからインポートした車にWheel Colliderを加えた時、車がガタガタする動作はどうして起きてしまうのか、わかる方がいらっしゃいましたら
教えていただけると、とてもうれしいです。

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Y0241-N

2020/07/16 00:36

質問をする際は該当のスクリプトを提示する、試したことや調べたことなどがある場合は記載する、また今回であれば「インポートした車」とありますが、これがどんなオブジェクトを指すかはikumi1025さんしか分からないため、明確に何かが分かるように提示する、以上の点を踏まえると回答が付きやすくなります。 現状ですと丸投げに近い形なので、回答は恐らくつかないと思います。
ikumi1025

2020/07/16 01:16

おっしゃる通り、丸投げでした。 ありがとうございます。 修正致します。
guest

回答1

0

ベストアンサー

Wheel Collider内にある、Suspension Distanceの値を常にゼロにするスクリプトを作りたい

どの辺がわからないのかがわからない、特に「常に」っていうのがどういう意味なのかわからないのですが、こんな感じです。

csharp

1using UnityEngine; 2 3public class SetSuspensionDistance : MonoBehaviour 4{ 5 [SerializeField] WheelCollider[] m_wheelColliderArray; 6 7 void Start() 8 { 9 foreach (var wc in m_wheelColliderArray) 10 { 11 wc.suspensionDistance = 0; 12 } 13 } 14} 15

「常に」というのが「実行中に変化してしまうが、それを 0 に瞬時に戻したい」なら、Start() ではなく Update() に処理を書けばよいでしょう。

Asset Storeからインポートした車にWheel Colliderを加えた時、車がガタガタする動作はどうして起きてしまうのか

Suspension Distance を 0 にしてるからじゃないですか?もしくはインポートしたモデルのコライダーを全部取り除いていない、とか。

↓Suspension Distance = 0.3(デフォルト値)の場合
イメージ説明
↓Suspension Distance = 0 の場合
イメージ説明

ちなみにモデルは Realistic Mobile Car Demo を使い、車の挙動は Wheel Collider チュートリアル のやり方をそのままやってます。

タイヤの位置は計算せず手で適当に置いたので、ステアリング時の動きが変かもしれません。
(車は全然詳しくありません)

投稿2020/07/16 08:31

bboydaisuke

総合スコア5275

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ikumi1025

2020/07/16 08:37

ご丁寧にありがとうございます。 データが入っているパソコンがいま手元にないので、実行出来ないのですが、試してみます。 ありがとうございます。 suspensionDistanceに関して 今の私の車の状態だと、suspensionDistanceの範囲で、タイヤがバウンドしてしまってまして、値をゼロにする事が出来たらタイヤが動かなくなると思って、質問させて頂いておりました。 やってみないと分からないのですが、参考にさせていただきます。
bboydaisuke

2020/07/16 13:09

普通の作り方としては、Wheel Collider チュートリアルのような車が動く仕組みにモデルを重ねて表示しているだけです。従ってモデルのコライダーは全部いらないです。アセットストアから持ってきたモデルにコライダーがついてたらいらないので全て消します。モデルはあくまで「絵」であって、コライダーさえ全部取り除けば「モデルがあるから挙動が変」ということは基本的にありません。 これは車じゃなくてもキャラクターモデルでも同じです。 車やキャラクターモデルがない状態で一度挙動を作り、そこに車やキャラクターモデルを追加する、という作り方を身につけないといけません。
ikumi1025

2020/07/20 01:51

ご返事が遅くなり申し訳ございません。 本当に細かくご教授ありがとうございます。 いまやろうとしている車制作の前に、チュートリアルで車を作ったのでだいたいは把握しているつもりなのですが、今回のガタガタは初めてで全く検討がつかないです。 今回の質問は大変情報が少ないと思いましたので、詳細の質問をさせていただきました。 もしお時間あればご協力をお願いいたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問