🛠️

CICrafter操作マニュアル(2.05)

に公開

0.CICrafterについて

CICrafter(シー・アイ・クラフター)は、UnityやBlenderを使わずに、パーツを組み合わせてクラフトアイテムを作成しアップロードできる非公式ツールです。
また、CICrafter用のパーツはglbなので作成して配布・共有することができます。

今のところWindows専用です。

cluster公式で配布されている「Unityなしでもクラフトアイテム・アクセサリーを作成・アップロードできるツール」 を改造して作成されました。

0.1 起動する

CICrafterはいわゆる野良アプリです。そのため、起動時に各種セキュリティ関連ソフトが起動をストップする場合があります。

  • 「WindowsによってPCが保護されました」というSmartScreenの画面が出た場合は、「詳細情報」>「実行」と操作して実行してください。
  • その他市販のセキュリティアプリに「CICrafter.exe」を監視から除外するなどの設定をしてください。

起動時に求められるアクセストークンはclusterの公式Webサイトのメニューから飛べる「アクセストークン」から取得できます。
こちらの記事を参考に取得してください。

0.2 ためしにアイテムをアップロードしてみる

左上の「パッケージパーツ」と表示されている所をクリックして「直方体」を選びます。

その右にある「追加」ボタンを押します。すると画面右側に赤い立方体が表示されます。

画面左下の「アイテム名」にアイテム名を入れます。

画面左下のエリアを下にスクロールし、サムネイルの「撮影する」を押します。

「アップロード」を押します。


おめでとうございます!アップロード完了です!!

直方体以外にも色々なパーツを追加できます。
それぞれのパーツは色やサイズや配置などを変更できます。
色々試してみてください!

画面上側の「読み込む」にて組み立て済みのアクセサリーを読み込めます。
インストールフォルダ以下の「サンプル」にあるので、試してみてください!

0.3 インストール・アンインストール・アップデート

インストール

ダウンロードしたzipファイルを展開してください。

アンインストール

このフォルダ内にセーブファイルなどを配置していた場合、必要に応じてバックアップしてください。
インストールフォルダに「GlbParts」にパッケージパーツが収められています。必要に応じてバックアップしてください。
最後にzipを展開して作られたフォルダを削除してください。

アップデート

アンインストールした後にインストールしてください。必要に応じて、バックアップしたファイルを復帰させてください。

1.できること、できないこと

1.1 できること

  • GLBファイルをパーツとして読み込めます。

    設定されているテクスチャや頂点色などは無視されます。
    読み込むのは、頂点、面、ノーマル、UV0のみです。

  • 組み合わせるパーツを追加することができます。

    パーツはGLBファイルなので、Blender等でモデリングし追加することができます。

    Blenderでのモデリングと出力の設定について

    Blenderで-Y側を表、+Zを上としてモデリングし、glbの出力で「+Yを上」とすると楽です。
    この設定で出力すると、CICrafterでZの正方向(+Z)が表、+Yが上になります。

  • パーツごとに色、半透明、質感、発光、コライダーを設定できます。

    位置、回転、スケールの設定も可能です。

  • UVを使用するパーツではテクスチャを設定できます。

    256x256のテクスチャを最大で3パーツ分設定可能です。内部で512x512にアトラス化されます。
    512x512のテクスチャは最大で2パーツ分設定可能です。

  • アイテム全体の位置とサイズを調整できます。

    大きく作ってしまった場合や、他のアイテムに合うように位置を調整したい場合などに便利です。

  • ScriptableItem、MovableItem、GrabbableItem、RidableItemとすることができます。

    Grip位置とSeat位置の設定が可能です。
    ScriptableItemのClusterScript(ItemScript)の設定も可能です。
    物理挙動や重力に影響されるアイテムの設定も可能です。

  • ベータアイテムとしてアップロードできます。

    ベータアイテムとすることでPlayerScriptの設定も可能です。

  • SubNode、TextViewを扱えます。

    どちらもアイテム直下にのみ配置できます(今後の拡張未定)。
    SubNodeは位置の設定のみが可能です(今後の拡張未定)。

  • アイテムの形状を自由に回転・拡大して確認できます。

    画面上の見た目そのままで、サムネイルも撮影が可能です。
    背景を透過した状態でファイルに保存もできます。

1.2 できないこと

  • HumanoidAnimationList、ItemMaterialSetList、ItemAudioSetListには対応していません(対応未定)。
  • 各種Shapeコンポーネントには対応していません(対応未定)。
  • アクセサリのアップロードにはAcCrafterで対応しています。

2.画面の構成

(1)パーツ一覧ペイン
(2)パーツ設定ペイン
(3)アイテム設定ペイン
(4)3D操作ペイン

2.1 パーツ一覧ペイン

アイテムに追加されているパーツを管理するペインです。
CICrafterでの「パーツ」とは、アイテムを構成する3D形状の1つを指しています。

パーツ名をクリックするとパーツが選択状態となりパーツ設定ペインでパーツの配置や形状を変更できます。

一つのアイテムに追加できるパーツは128個ですが、クラフトアイテムのポリゴン数上限に注意してください。

2.1.1 パーツを追加する

パーツを追加するには、パーツ一覧ペインにて行います。

左側のドロップダウンリストをクリックすると、追加できるパーツの一覧が表示されます。

追加したいパーツを選択し、右側のボタンを押下することでパーツを追加できます。

パッケージパーツ

CICrafterのインストールフォルダにある「GlbParts」フォルダ以下にある「パッケージパーツ」を追加できます。
各パーツの本体はGLBファイルです。読み込み時の各種制限についてはこちらを確認してください。
各パーツのサムネイルは初回読み込み時に自動で作成されます。

フォルダ名とファイル名に以下の制限があります。

  • 後述の機能により、名称に半角ハイフン「-」を使用することはできません。
  • 名称を日本語名と英語名の両方に対応させる場合、半角ハイフン「-」で繋いで記述してください。
    例)立方体のパーツの場合。「立方体-Cube.glb」というファイル名にすると、日本語時には「立方体」、英語時には「Cube」と表示されます。

GLBファイル(単色)

GlbPartsファルダ以外の場所にあるGLBファイルを読み込み、その形状をパーツとして扱えるようにします。
頂点、面、ノーマルのみ読み込みます。設定されているテクスチャや頂点色などは無視されます。

厚さが0のパーツは、CICrafter上で厚みをつけることができます。Blender等で厚さ0のGLBファイルを作成する場合は以下の制限に注意してください。

  • CICrafter上(Unity上)での頂点のZ座標値がすべて0になるようにしてください。
  • 面の表は、CICrafter上(Unity上)でのZの正方向にしてください。
  • 面を構成していない頂点を作らないでください。
Blenderでのモデリングと出力の設定について

Blenderで-Y側を表、+Zを上としてモデリングし、glbの出力で「+Yを上」とすると楽です。
この設定で出力すると、CICrafterでZの正方向(+Z)が表、+Yが上になります。

GLBファイル(256テクスチャ・512テクスチャ)

GlbPartsファルダ以外の場所にあるGLBファイルを読み込み、その形状をパーツとして扱えるようにします。
頂点、面、ノーマル、UV0のみ読み込みます。設定されているテクスチャや頂点色などは無視されます。
パーツ設定ペインで各種テクスチャを設定できます。JPEGおよびPNG形式のテクスチャに対応しています。

256テクスチャのパーツは、合計で3パーツまで追加できます。
512テクスチャのパーツは、合計で2パーツまで追加できます。

厚さが0のパーツは、CICrafter上で厚みをつけることができます。Blender等で厚さ0のGLBファイルを作成する場合は以下の制限に注意してください。

  • CICrafter上(Unity上)での頂点のZ座標値がすべて0になるようにしてください。
  • 面の表は、CICrafter上(Unity上)でのZの正方向にしてください。
  • 面を構成していない頂点を作らないでください。
Blenderでのモデリングと出力の設定について

Blenderで-Y側を表、+Zを上としてモデリングし、glbの出力で「+Yを上」とすると楽です。
この設定で出力すると、CICrafterでZの正方向(+Z)が表、+Yが上になります。

直方体

直方体のパーツを追加します。
内部的な処理の関係上、BoxColliderではなくMeshColliderを利用しています。

多角柱、UV球、ドーナツ(トーラス)

プロシージャルな多角柱、UV球、トーラスのパーツを追加します。
パーツ設定ペインに、形状に関する設定が追加されます。

SubNode

ClusterScriptの$.subNode()で取得できるSubNodeを作ることができます。
ClusterScriptを利用する場合はアイテム設定ペインにてScriptableItemをONとしてください。

const node = $.subNode("SubNode000");

SubNodeの名称(SubNode000など)を変更したい場合は、SubNodeパーツをクリックし選択した状態で、もう一度クリックすると名称を変更できます。

TextView

ClusterScriptのSubNode.setText()でテキスト表示を行えるようにするTextViewコンポーネントのパーツを追加します。
ClusterScriptを利用する場合はアイテム設定ペインにてScriptableItemをONとしてください。

$.subNode("TextView000").setText("hello cluster");

SubNodeでの名称(TextView000など)を変更したい場合は、TextViewパーツをクリックし選択した状態で、もう一度クリックすると名称を変更できます。

Grip位置、Seat位置

アイテム設定ペインにてGrabbableItemおよびRidableItemをONにした場合に、それぞれのGrip位置、Seat位置として使われる位置を指定するパーツです。
Grip位置は、原点を手にしてZの正方向が奥になるように持ちます。
Seat位置は、体の前面がZの正方向になるように座ります。

2.1.2 パーツの情報を変更する

追加したパーツをどのように扱うかを簡単に設定、一覧できます。
(1)~(3)についてはパーツ設定ペインでも同じ設定を行えます。


(1)外観として使う

このパーツをアイテムの外観として使います。
コライダーの形状として使う場合はOFFにしてください。

(2)コライダーとして使う

このパーツの形状をアイテムのコライダーとして使います。
これらの形状を元に、最終的に凸状(Unityで言うところのConvex)のコライダーを持つアイテムになります。

(3)半透明のパーツにする

このパーツを半透明にすることができます。
半透明にすると、色の設定に「不透明度」が追加されます。

(4)パーツを選択する、名称を変更する

パーツの名称をクリックすると、パーツを選択状態にすることができます。
パーツを選択するとパーツ設定ペインでパーツの設定が行えます。

パーツを選択した状態で、再度パーツの名称をクリックすると、パーツの名称を変更することができます。

(5)パーツメニュー

クリックするとパーツに対して行えるメニューが表示されます。

削除

対象のパーツを削除します。

値をコピー、値をペースト

パーツ設定ペインで指定されている対象のパーツの値を、コピー&ペーストできます。
コピーした値の内、項目名称が同一の値がペーストされます。
位置やサイズ、色などをまとめてコピー&ペーストできるので、同じような形状を持つパーツを複製するときに便利です。

2.2 パーツ設定ペイン

パーツ単体に対して、配置や形状を設定するペインです。
パーツごとに設定できる項目は異なります。

2.2.1 パーツに共通の設定項目

位置

パーツをどこに配置するかを設定します。単位はメートルです。
パーツの基準点が、アイテムの基準点(アイテムを配置する時の中心位置)にある時に(0, 0, 0)となります。
パーツがクラフトアイテムのサイズ上限からはみ出さないように注意してください。

回転

パーツをどれだけ傾けるかを設定します。単位は度(degree、0-360)です。
X軸が+90度か-90度の時に発生するジンバルロックに注意してください。

スケール

パーツをどれだけ拡大縮小するかを設定します。
パーツがクラフトアイテムのサイズ上限からはみ出さないように注意してください。

色-色相

パーツの色相を設定します。値は0-360を取ります。
値を0から増やすと、色が赤>黄>緑と変化していきます。

色-彩度

パーツの彩度を設定します。値は0-1を取ります。
値を0に近づけると、白っぽくなります(彩度が落ちます)。

色-明度

パーツの明度を設定します。値は0-1を取ります。
値を0に近づけると、暗くなります(明度が落ちます)。

色-不透明度

パーツの不透明度を設定します。値は0-1を取ります。
値を0に近づけると、透明になります。

表面の金属感、表面の滑らかさ

パーツの表面の材質感を設定します。値は0-1を取ります。
金属感はUnityでのMetallicで、環境光(ReflectionProbeやSkybox)をどれだけ反射するかを設定します。
滑らかさはUnityでのSmoothnessで、反射がどれだけシャープかを設定します。

発光

上記で設定した色で発光させる割合を設定します。値は0-1を取ります。
0の場合は発光しません。

Albedo、Normal、Metallic/Smoothness、Emissionテクスチャ

256テクスチャパーツの場合、各テクスチャは設定時に256x256に縮小され、縮小された状態で表示されます。
256テクスチャを利用できるパーツは合計で3パーツまでで、各テクスチャは内部でアトラス化され、512x512のテクスチャになります。
JPEGおよびPNG形式のテクスチャに対応しています。半透明のパーツの場合、透過PNGにて透明にできます。

Metallic/Smoothness、Emissionテクスチャは、それぞれ「テクスチャを使用する」をOFFにした場合、数値で材質を指定できます。
Emissionテクスチャの強度を変更することで、テクスチャの模様による発光の強さを調整できます。

Normal、Metallic/Smoothnessなどの各種テクスチャの仕様はUnityの仕様に準拠します。

512テクスチャパーツの場合、各テクスチャは設定時に512x512に縮小され、縮小された状態で表示されます。
512テクスチャを利用できるパーツは合計で2パーツまでです。
JPEGおよびPNG形式のテクスチャに対応しています。半透明のパーツの場合、透過PNGにて透明にできます。

Metallic/Smoothness、Emissionテクスチャは、それぞれ「テクスチャを使用する」をOFFにした場合、数値で材質を指定できます。
Emissionテクスチャの強度を変更することで、テクスチャの模様による発光の強さを調整できます。

Normal、Metallic/Smoothnessなどの各種テクスチャの仕様はUnityの仕様に準拠します。

2.3 アイテム設定ペイン

アイテム全体に対する設定をまとめたペインです。

アイテム名、アイテムサイズ

アイテム名を入力してください。
アイテム名、アイテムサイズ共にクラフトアイテムの制限に注意してください。

アイテムサイズを計算する、確認する

アイテムサイズを自動計算します。
設定したアイテムサイズを、実際の形状と比較して確認することができます。

全体の位置、全体のスケール

アイテム全体で位置を動かしたり、サイズ(スケール)を変更できます。
アイテム全体を回転させる機能は今のところありません。

MovableItem、GrabbableItem、RidableItem、ScriptableItemにする

各種コンポーネントをItemにつけ、それぞれのItemとします。
MovableItemの場合、RigidBodyコンポーネントが追加されます。
ScriptableItemではスクリプトを直接設定できます。

物理演算の影響を受ける、重力の影響を受ける

RigidBodyのisKinematicとuseGravityの設定をします。
RigidBodyコンポーネントが必要になる設定の場合、自動でMovableItemになります。
クラフトアイテムの仕様上、抗力系の値は指定できません。

PlayerScriptを使う

ベータアイテムにするをONにして使用できます。
PlayerScriptスクリプトを直接設定できます。
PlayerScriptを使う場合、自動でScriptableItemになります。

発光強度

パーツで設定した発光がどれだけ強く発光されるかのベースとなる値を設定します。値は0-5を取ります。
パーツごとの発光の設定で不足している時などに、数値を上げます。
ワールドクラフトの光の強さ(Unityで言うところのBloom)が効いているワールドにて、輝くような効果が得られます。
0にするとワールドクラフトでの配置時に真っ黒となるため、1にしておくとよいでしょう。

ベータアイテムにする

ONにするとベータ機能を用いたアイテムとしてアップロードできます。
現在ではPlayerScriptを利用できます。
HumanoidAnimationListおよびItemMaterialSetListには対応していません。
ベータ機能についてはクラフトアイテムの制限ベータ機能を確認してください。

ポリゴン数

現在のアイテムのポリゴン数(Triangle)を確認できます。Renderer用とCollider用のメッシュが同一かどうかの判定も行っています。
ポリゴン数の上限はクラフトアイテムの制限を確認してください。

サムネイル

アップロード時に必要なサムネイルを撮影できます。
サムネイル撮影時は背景色は指定ができます。反射する環境(Skybox)はUnityのデフォルトの空になります。
また、背景を透過状態にしたサムネイルをファイルに保存することもできます。

2.4 3D操作ペイン

それぞれのパーツが実際にどのように配置され、どのように見えるかを確認できるペインです。
サムネイルはこのペインでの見た目で作られます。

視点の変更

マウスのボタンドラッグで、注視点を中心に視点を回転できます。
マウスのボタンドラッグ+Alt+Ctrlキーで、注視点を中心に視点を回転できます。
マウスのボタンドラッグで、視点を平行移動できます。
マウスのボタンドラッグ+Altキーで、視点を平行移動できます。
マウスホイール回転で、拡大縮小できます。

3D操作ペインの右上にあるシーンギズモの軸をクリックすると、それぞれの軸の方向からアイテムを見る視点になります。

パーツの選択

マウスのボタンクリックで、クリックしたパーツを選択状態にできます。
選択状態になったパーツ以外は半透明になります。
選択したパーツは、パーツ設定ペインで編集できます。
選択したパーツをもう一度クリックするか、パーツがないところをクリックすると、全パーツの選択は解除されます。

パーツギズモ

パーツを選択すると、3D操作ペイン上で位置などを変更できるギズモが表示されます。
このギズモは3種類あります。

移動ギズモ

矢印をドラッグすることで、パーツのローカル座標上でのXYZ軸方向にパーツを移動させることができます。
ctrlキーを押下した状態で矢印をドラッグすると、画面サイズに対応したグリッド幅でグリッドにスナップします。
パーツを選択した状態で、Wキーを押下すると移動ギズモに切り替わります。

回転ギズモ

リングをドラッグすることで、パーツのローカル座標上でのXYZ軸を中心にパーツを回転させることができます。
パーツを選択した状態で、Eキーを押下すると回転ギズモに切り替わります。

スケールギズモ

先端のキューブをドラッグすることで、パーツのローカル座標上でのXYZ軸方向にパーツを拡大縮小させることができます。
パーツを選択した状態で、Rキーを押下するとスケールギズモに切り替わります。

ギズモの切り替え

上記のギズモは、3D操作ペインの左上にあるボタンにて切り替えることができます。
回転に対応していないパーツの場合、回転ギズモのボタンを押してもギズモは切り替わりません。

パーツをセンタリング

パーツを選択した状態で、センタリングボタンを押下するか、Fキーを押下すると、そのパーツの原点に視点が移動します。

シーンギズモ

シーンギズモは3D操作ペインの右上にあります。
シーンギズモの軸をクリックすると、それぞれの軸の方向からアイテムを見る視点になります。
各軸で色がついている方向が正方向です。

メニューボタン

セーブ、ロード、ログアウトなどを行えるメニューを表示します。

保存する、読み込む(ファイルへのセーブ・ロード)

拡張子が.cicのテキストファイルにセーブ・ロードを行います。
セーブファイルにはパーツの頂点情報が記録されているため、対応するパッケージパーツをインストールしていなくてもロードすることが可能です。

追加する、作成する(パッケージパーツの追加・作成)

拡張子が.cicpのファイルをパッケージパーツとして取り込めます。
またglbファイルが配置されたフォルダを指定することで、パッケージファイルを作成できます。

ログアウト

アップロード先のアカウントを切り替えるときに使用します。

保存する、読み込むボタン

メニューボタン配下にあるセーブ・ロード機能と同等のボタンです。

元に戻す、やり直しボタン

3D操作ペインの上部にある「元に戻す」ボタンおよび「やり直し」ボタンを押下するか、ctrl+Zキーおよび、ctrl+Yキーを押下することで、パーツ等に行った操作をキャンセルし元に戻す(undo)か、キャンセルした操作のやり直し(redo)を行うことができます。

関連リンク

以上です!
良きクラフトアイテムライフを!

Discussion