2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

AWSIMにアセットを追加してみる

Last updated at Posted at 2023-03-05

今回はUnityのアセットを使ってAWSIMを改造していきます。

今回は以下の順ですすめていきます。この記事の内容は1時間くらいあればできると思います。

  1. unityのasset追加
  2. unityのasset修正、追加変更
  3. autowareとつなげる

アセットを追加する

unityといえばアセットストアですね。他の人が作成したものを無料、有料で購入し自分のプロジェクトに取り込むことができます。

今回はじめに使用するアセットはこちらカラーコーンです。

Unityに追加するというボタンがあるので追加していきましょう。
image.png

Unity側はWindow -> package manager -> package my assetからMyassetにチェックを入れると以下のような画面がみえてきます。一応 中央下の再読込ボタンからreflesh my assetしておきましょう。

image.png

download -> importとボタンを押していき追加していきます。

新しくimportしたアセットのフォルダができていれば成功です。

unityのサポート記事も参考になります: 購入したアセットをダウンロードするにはどうすればいいですか

HDRPを解決する

追加したアセットのprefabを追加するとこんな感じでカラーコーンがでてきます。

Screenshot from 2023-03-05 11-12-51.png

ピンク色ですね。。。おっとこれはマテリアルがHDRPが対応していなかったようなのでHDRPにupgradeしていきましょう。

カラーコーンのmaterialを選択しましょう。
image.png

Edit-> render pipline -> upgrade from build pipline -> upgrade selected materials to HDRP を選択しましょう。(スクショとれなくて画像他のを使用したので右の森は無視してください)

image.png

HDRPにupgradeできました。
image.png

参考までに(こちらはURP用の対応ですが、問題と解決方法は同じです)

もう少し追加していきましょう。今度は宝箱のアセットを追加していきます。

このパッケージのHDRPへのupgradeは先程と同様の手順でやってみましょう。open versionとclose versionがあるようです。どちらも映えますね。
image.png

(ピンク色のpreviewはそのうち直ると思います)コインを調整して、人も少し増やして
image.png

◯フィアシティーっぽくなってきました。お好みで銃も追加しましょう。

こんな感じにセットしてみます。
image.png

この人の手へのtransformがないためstep実行してみると銃はこのままの角度のまま並行移動します。
image.png

人は並行移動しているので頭に銃を移動し、最近はやりのチェーンソーマンのように銃の魔人という設定なら行けそうです(何が?)。

image.png

アセットに工夫をしていきましょう。

もともとのコーンには衝突判定がないので、車両がすり抜けます。衝突判定を追加していきましょう。

衝突判定には様々あり、collisionは通常のボックス、球体、カプセルなどのほかにmeshなどがあります。Previewを見れるので直感的でいいですね。
image.png

AWSIMドキュメントにはmesh collidarとwheel collidarについて記載がありました。

コーンにrigidbodyを追加していきましょう。これを追加すると物理計算が可能になります。重力を有効にして、重さは適当に決めていきましょう。collidarはbox collidarを追加していきます。

※Mesh Collidarを追加したいところですが、kinematic(静的)でないrigidbodyのmesh collidarはUnity5ではサポートしていないとのことなので断念。

Non-convex MeshCollider with non-kinematic Rigidbody is no longer supported since Unity 5.

AddComponnet box collidar , rigidbodyを追加していきましょう。
image.png

もとからあるrigidbodyを設定していないコーンは落ちていきませんが、rigidbodyを設定したコーンは重力にしたがって落ちていきます。
image.png

buildしてみましょう。(build方法はこちらを参考)

autowareを起動して走行してみるとしっかりとconeがunknown objectとして認識されていました。
image.png

追記

lidarはmeshを読み込んでいるようなのでAWSIMとしては衝突判定がなく貫通してしまいますが、Autowareに送信されるpcdはmesh情報をもとに生成しているためAutowareとしては障害物判定されます。

image.png

カラーコーン3つ+っダンボール箱で停止というコースをはしってみましょう。

image.png

こんな感じで避けて走ることができます。
image.png

おわりに

unityのアセットを取り込むことでゲームの内容をガラッとかえることもできます今回は周辺パーツのみをとりこんでいましたが、アセットによっては環境まるごと取り込むこともできます。
いろいろなAWSIM〇〇cityを作ってみましょう。

補足

Unityに詳しくない方はHDRPのrender piplineでハマると思うので、こちらが参考になればと思います。
AWSIMに入れる前に一度サンプルシーンを作成し、HDRPにアセットが適合しそうか試してみると良いと思います。すべてがすべてupgradeできるというわけではなさそうでした。
image.png

HDRP(※)対応のassetであれば問題ないですが、なにも考えずにアセットをimportすると一面ピンクになるのでHDRPに変換しましょう。

※参考 https://unity.com/ja/srp/High-Definition-Render-Pipeline

image.png

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?