【Bambu Lab】Blender で好きなモデルを多色造形できるようにする

## Bambu Studio の公開モデルと一般のモデルの違い
Bambu Lab が提供するスライサである Bambu Studio にはユーザーが作ったモデルを公開する機能があり、ここからダウンロードしたモデルの多くはパーツごとに色分けして造形できるようになっています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/29291e14-d780-649e-fb0a-8404ba50fa6c.png)

しかしながらローカルから stl 形式のファイルをインポートすると、インポートしたモデル全体の色しか指定できず細かな色の指定ができません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/d090e92a-187e-1020-d776-2439cba23503.png)

## どうにかして色分けしたい
結論から言うと、色ごとにファイルを分けることで解決できます。
Blenderでモデルを作成した場合、モデルのオブジェクトを分けてもそれを stl 出力すると Bambu Studio では１つのオブジェクトとして認識されます。そのため Blender 上でメッシュを分けたあと、そのメッシュをそれぞれ別のファイルとして出力してやればいいのです。

## やり方
### 1. モデルを Blender にインポート
今回は例としてこちらのりんごのモデルを例に説明します。
https://www.cgtrader.com/free-3d-models/food/fruit/apple-fruit-afa5e664-8ff8-4598-9568-a21c35520ca3

Blender を起動したらまず 画面右の Camera, Cube, Light を delete で削除し、画面左上からダウンロードしたファイルをインポートします。
今回は fbx 形式のファイルをインポートします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/a47d3c84-cc2f-2d5c-bcae-00d7d2c4a16a.png)

インポートできたらモデルにテクスチャを貼ります。
Apple を選択してマテリアルプロパティを開いたらベースカラーの項目から画像テクスチャを選択、Apple_BaseColor.png を選択して適用します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/ddf3e7fa-b9c3-ae28-57e5-dbbaf0312967.png)

これでシェーディングを変えたときに色がつくはずです。

![スクリーンショット 2024-06-15 012244.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/acc92c9f-3920-41e8-6e51-56f322dc53ac.png)

### 2. モデルを滑らかにする
このモデルは遠目だとわかりにくいですが、よく見ると頂点数が少なくカクカクしています。このまま造形するとカクカクしたりんごになってしまうので修正します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/190ac19f-10ce-337a-32f0-172d1889e857.png)

Apple を選択した状態でモディファイアプロパティ (スパナアイコン) を開き、「モディファイアを追加」から「サブディビジョンサーフェス」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/fbaa7420-9233-a5ae-42b5-a1b5aecdbd7e.png)

ビューポートのレベル数とレンダーという項目が出てきます。この値を大きくするほど滑らかになりますが、その分頂点数が増えて重くなるので2か3あたりで十分だと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/d66df77b-de0c-305f-fea1-0b84499393a3.png)

### 3. メッシュを分離する
今回は 葉、茎、実が別の色なのでこの３つに分離します。
TABキーで編集モードに移り、画面上部のタブから「UV Editing」を選択、「UVの選択を同期」(両矢印アイコン)を有効にします。

![スクリーンショット 2024-06-15 014208.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/60482628-9f68-b1e2-24af-cbe571d20820.png)

UV 上でメッシュの選択ができるようになるのでまずは葉のメッシュを選択します。
移動ツールを選択して選択ツールを投げ輪にすると選択しやすいと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/afb35a38-4b78-5208-906d-8d9b736a59ad.png)

選択できたら「メッシュ」->「分離」->「選択」を選びます。これで選択したオブジェクトを別のオブジェクトとして分離できました。
同様にして 茎と実も分離します。
ついでに分離したオブジェクトの名前をわかりやすいものに変えておきましょう。

UV展開がされていないモデルの場合は少々面倒ですがモデルの面から直接選択していくことになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/f7ebd7fe-6ee8-c2b9-cd7c-4cd6546ee30a.png)

### 4. 別ファイルとしてエクスポート
分離したオブジェクトの１つを選択した状態 (青背景にオレンジ文字の状態) でモデルを stl 形式でエクスポートします。
このとき必ず「選択物のみ」にチェックを入れて出力してください。
これを分離したオブジェクト全てに対して行います。

![スクリーンショット 2024-06-15 020541.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/eee3b882-ac95-0624-bcb4-41e4161a0c9a.png)

### 5. Bambu Studio にインポート
Bambu Studio にエクスポートした stl ファイルをインポートします。
このときファイルはすべて一括でインポートしましょう。こうすることで１つのオブジェクトとしてまとめて扱うことができます。
１つのオブジェクトとしてロードするかと聞かれたら「はい」を選択。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/d77ad145-52e2-ae37-db73-3d28c1e2c2cb.png)

オブジェクトが小さすぎる場合、mm単位に変換するかと聞かれるときがありますが、これは「いいえ」を選んでください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/3a0b2782-4289-8cda-aba7-c02c9bba007e.png)

「はい」を選ぶと自動でスケーリングしてくれますが、スケーリングした結果プレートに対して大きすぎると再度スケーリングされて小さくなるようで、オブジェクト間のサイズ関係がぐちゃぐちゃになることがあります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/af1479fa-c989-4ec7-c969-b3abc4e86b50.png)

最後にスケールを調整してエラーを自動修正したら完成です！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3816397/b92dee65-20ad-a7f6-e51a-99e9bc63e7d5.png)