【無料】CSEmulator V2(ClusterScriptをUnity上で再生できるようにするやつ)
- ダウンロード商品無料版(ver2.75)¥ 0
- ダウンロード商品かおもにヨーグルトと牛乳を買ってあげる(内容は無料版と同じ)¥ 300
- ダウンロード商品旧版¥ 0無料ダウンロードKaomoLabCSEmulator200-250.zip(81.5 MB)無料ダウンロードKaomoLabCSEmulator251-260.zip(10.4 MB)無料ダウンロードKaomoLabCSEmulator261-270.zip(11.7 MB)無料ダウンロードKaomoLabCSEmulator271.zip(1.23 MB)無料ダウンロードKaomoLabCSEmulator272.zip(1.23 MB)無料ダウンロードKaomoLabCSEmulator273.zip(1.23 MB)無料ダウンロードKaomoLabCSEmulator274.zip(1.23 MB)
今(CCK2.32.0.1)のところ、ClusterScript(https://docs.cluster.mu/script/index.html) は、Unity上で再生できません。 これを再生できるようにした非公式のUnityアセットです。 CCK2.32.0(ベータ機能含む)に対応。 UniVRM v0.61.1必須。 Post Processing 2.3.0必須(以上でもたぶん動く) コンポーネントとか本当にめちゃくちゃ色々いじるので、 導入は自己責任でお願いします…。 旧版(V1)はこちら https://vkao.booth.pm/items/4769516
導入方法
・★UniVRM v0.61.1が必要です★ https://github.com/vrm-c/UniVRM/releases/tag/v0.61.1 よりunitypackageをダウンロードしてインポートしてください。 ・★PostProcessing 3.2.2が必要です★(cluster推奨バージョン) https://creator.cluster.mu/2020/04/01/howto-postprocessing/ を参考にインストールして下さい。 ・CSEmulator1xx系をお使いの方はまずアンインストールしてください。 方法は商品画像を参照してください。 ・ダウンロードしたzipファイルを展開します。 ・「KaomoLabCSEmulator275.unitypackage」をプロジェクトにインポートします。 ・再生ボタンを押すとClusterScriptが動きます。 CSEmulator1xx系で使用していた「KaomoLabCSEmulator」は不要です。
使い方
・上部メニュー>Window>かおもラボ>CSEmulator にて設定画面を表示できます。 ・上部メニュー>Window>かおもラボ>CSEmulatorOscMonitor にて、プレビュー中に受信したOSCのデータを確認できます。 ・上部メニュー>Window>かおもラボ>CSEmulatorStateWatcher にて$.stateの値を確認できます。 ・purchase周りのテストを行う場合は、設定画面で商品名と商品ID(clusterのwebサイトのワールド内課金商品詳細でコピーできるID)を追加してください。 (商品画像みたいにしてください) ※非公開商品の挙動は、テストスペースではなく通常スペースでの挙動に寄せてます(CCK2.21.0.2現在) ・$.state._pauseFrameに値を入れると、プレビューを一時停止させることができます。 このキー名は設定画面で変更できます。 ・★WorldItemTemplateIdを使わず★に$.createItemで生成したい場合は、 プレハブの「Item」が付いているGameObjectに、「CSEmulatorPrefabItem」コンポーネントを追加します。 UUIDには$.createItemで指定するIDを指定してください。 (商品画像みたいにしてください)
主な未対応機能や既知のバグ
後述の「よくある質問」もご覧ください。 バグや怪しい挙動、他にも何かありましたら、X(twitter)やclusterの方などで連絡ください。 ▼Shape系コンポーネント ・raycast系関数にのみ対応しています。 ▼ClusterScript ・ItemHandle/PlayerHandle.send (v2.65より)流量制限していません。 ・callExternal (v2.71より)流量制限していません。 ・computeSendableSize (v2.17より)特定の条件で数値が小さく計算されます。 ▼ApiAudio ・value (v1より)1以上の場合も1と同等の扱いです。 ▼PlayerScript ・setPlayerStorageData (v2.53より)サイズ制限を行いません。 ・isVr (v2.39より)true時の特殊な挙動に対応していません。 ・computeSendableSize (v2.59より)特定の条件で数値が小さく計算されます。 ▼スクリプト以外 ・ScriptableItemではないItemをGrabしても正面で固定されない。 ・RidableItemのGrip系に対応していません。 ・UseMovingPlatform時に三人称視点で回転する床に乗った場合、プレイヤーが追従せずにカメラが追従してしまう。 ・HUDv2時にFキーでインタラクトできません。
よくある質問
・OSCの受信はデフォルトでポート9001を指定しています。 clusterがデフォルトでポート9000を利用しているため、これに衝突しないようにしています。 必要に応じてOSCアプリケーションの設定を変更してください。 ・PlayerHandle系やプレイヤーの物理挙動系(よじ登りや動く床など)の動作確認は参考程度でお願いします。 ・raycastのrayが見えないことがある。 ディスプレイの画面更新が追いついていないのかもしれません。 設定画面でFPSの制限を30にしてみてください。 ・$.setVisiblePlayersの処理にてGameObjectのLayer:3を使用しています。 ・$.onReceiveでメッセージが受信できません。 「メッセージ[PlayerHandle>xxx]は受け取れません。」というようなワーニングがログに出ているかもしれません。 そのような場合は、$.onReceiveのoptionsを確認してください。 ・Itemの物理挙動がcluster上のそれと異なる。 詳細調査中です。cluster上の方が抵抗が少ない? ・$.getOverlapsでプレイヤーが範囲内にいる時に取得できるHandleの数が違う。 よく分からないけどclusterの方が多い。 ・CharacterItemをsetPositionで動かした場合、接地していないと、重力表現の影響で下方向に振動する。 プレビュー再生の時に振動します。cluster上では振動しないようです。 ・LayerをVenueLayer0などにしたら色々動かなくなった。 CCKのプレビューの矢印アバターのレイヤーは「24:Audience」です。「16:OwnAvatar」などとはCollision Matirxの設定が違うので確認してみてください。 ・「You are trying to create a MonoBehaviour using the 'new' keyword.」 っていうWarningが出る。 中で行ってるあれこれの影響です。 動作自体には影響ない(はず)です。 ・onUseとかonInteractが動かなくなった。 追加した覚えのない「UseItemTrigger」や「InteractItemTrigger」があったら削除してください。 上記の処理を拾うために、内部で「UseItemTrigger」や「InteractItemTrigger」を追加しています。 再生終了時にそれらが削除されずに残っていることがあるかもしれません。 残っていた場合は処理が競合し、onUseとonInteractは動かなくなります(これ自体はClusterScriptの仕様です、たぶん)。
やりたいことリスト
・ClusterScript Log Consoleに対応させる。 ・ダミーのプレイヤーをスポーンさせる。 ・両手持ち。
利用規約
改変可です。 (バグとかあったらできるだけ直したいので、教えてほしいです!) そのものの再配布は禁止です。 特定個人・団体への誹謗中傷や、政治・宗教活動、公序良俗に反する利用は禁止です。
免責事項
本データを使用し発生した損害・損失等につきまして、当方(かおも)は責任を負わないものとします。
連絡先
▼X(Twitter) https://twitter.com/vkaotech ▼cluster https://cluster.mu/u/vkao ▼販売ページ https://vkao.booth.pm/
更新履歴
2025.04.09 v2.75 ・商品付与APIに対応。 ・PlayerScriptのユーザ位置取得APIに対応。 ※現時点では自身のPlayerIdのみ扱えるため、自身の位置のみ取得できます。 ・ボイス音量フィルタAPIに対応。 ※現時点では自身のPlayerIdのみ扱えるため、何も起きません。 2025.04.01 v2.74 ・(v2.73にて発生)エラーが発生し、ワールドアップロード等に失敗する問題に対応。 2025.03.31 v2.73 ・外部通信機能Endpointの複数化に対応。 2025.03.12 v2.72 ・(v2.65より発生)PlayerScript.sendToの想定していない回数制限を削除。 2025.03.10 v2.71 ・$.callExternalの実行回数制限を削除、およびrequestの容量制限を100kBに変更。 ※流量制御による制限には対応していません。 2025.02.25 v2.70 ・PlayerHandleおよびPlayerScriptのgetAvatarProductId、getAccessoryProductIdsに対応。 2025.02.11 v2.69 ・PlayerScript.oscHandle他に対応。 2025.01.28 v2.68 ・$.onCommentReceived、$.getLatestCommentsに対応。 ・Commentを追加。 ※設定画面でコメント送信が可能です。 2025.01.21 v2.67 ・ItemId/PlayerId.typeが設定されていなかった問題に対応。 ・$.onReceiveのoptionsでplayerを設定していない場合の挙動を修正。 ・$.onReceiveでメッセージが受信できなかった場合にログ出力する機能を追加。 ※設定画面でON/OFFが可能です。 ・Quaternion#axisAngle、#euler、#fromToRotation、#lookRotationを追加。 ・Quaternion.toAxisAngleを追加。 ・AxisAngleを追加。 2024.12.24 v2.66 ・$.onGiftSentに対応。 ・Sendableでのundefinedの扱いを変更。 2024.12.17 v2.65 ・send系の流量制限を撤廃。 ※cluster上での流量制限は存在していますが、通常利用ではほぼ制限に掛からないと考えています。 2024.12.11 v2.64 ・$のowner操作系に対応。 ・MaterialHandle.setXxx系のオーバーロードに対応。 2024.12.10 v2.63 ・内部のライブラリを更新。 ・setEnable(false)で開始したPlayerLocalUIのonButtonが反応しない問題に対応。 ・ClusterScriptErrorの各プロパティが設定されていない問題に対応。 ・Object初期化時に変数をキー名で使うとエラーとなる問題に対応。 ・$.onXxx系コールバック内でデフォルト引数を使用するとエラーとなる問題に対応。 ・日本語変数名などで特定の文字を使用するとエラーとなる問題に対応。 2024.12.02 v2.62 ・Vector4、Colorを追加。 ・_.onStartを廃止。 2024.11.26 v2.61 ・CCK2.28.1でのPlayerScriptへのAPI追加に対応。 2024.11.23 v2.60 ・$.groupStateに対応。 ・$.createItemのasMemberに対応。 2024.11.11 v2.59 ・$.getGrabbingPlayer/$.getRidingPlayerに対応。 ・PlayerHandle.send、_.sendToの容量確認および_.computeSendableSizeに対応。 ・send直後に自身相当をdestroyした場合にsendされない問題に対応。 2024.10.29 v2.58 ・$.onSteer系に対応。 ・RidableItem.AvatarOverrideAnimationに対応。 2024.10.21 v2.57 ・UnityComponent.onClickに対応。 ※PreviewOnlyプレハブの関係で、PlayerLocalUIのCanvas.sortingOrderを+1001しています。 ・HitObjectの機能移行に対応。 ・PlayerLocalObject関係の機能で、Item以下のオブジェクトが取得できていなかった問題に対応。 ・Handle系のオブジェクトを、instanceofで判定できていなかった問題に対応。 2024.10.19 v2.56 ・CameraHandle.setPosition/setRotationに対応。 2024.9.30 v2.55 ・UnityComponent.play/stop、setXxx系に対応。 ・CameraHandle.setPosition/setRotationを空実装。 2024.09.17 v2.54 ・$.isEventに対応。 ・PlayerHandle.getEventRoleに対応。 ・ライセンス表記を追加。 2024.09.11 v2.53 ・Unity Component Bindingsに対応。 ・PlayerStorageに対応。 ・PlayerScript.playerLocalObject()に対応。 2024.09.04 v2.52 ・set/clearVisiblePlayersに対応。 ※内部でLayer:3を使用してます。 ・しゃがみ機能に対応。 2024.08.31 v2.51 ・CCK2.21.0.2のワールド内課金機能関連機能に対応。 2024.08.27 v2.50 ・raycast系のrayを可視化する機能を追加。 raycastを行ったフレームでのみ描画されます。 通常時は緑、ヒットするとマゼンダで描画されます。 ・(v2.49より)ClusterScriptを設定していないItemをインスペクタに表示するとエラーとなる問題に対応。 2024.08.20 v2.49 ・_.isXxx系に対応。 ・$.state.__pauseFrameに値を入れると一時停止できる機能を追加。 ・$.stateの値を一覧する機能を追加。 2024.08.17 v2.48 ・_.showButtonで$.onUseとUseItemTriggerが抑制されない問題に対応。 ・_.showButtonがisVr時に無効になるように変更。 2024.08.13 v2.47 ・UseCustomClippingPlanesに対応。 ・$.state.xxx = undefinedを無視するように変更。 2024.08.07 v2.46 ▼$.send()のargに、PlayerHandleを配列やオブジェクトで含めた場合に発生していた問題に対応 ・requestTextInput()で送り先のアイテムが、send元のアイテムになる ・各種実行制限がsend元基準で行われる ・sendした場合のsenderが、send元のアイテムになる ※ここで言うsend元のアイテムとは、現在の$ではなく、$.sendしたときの$です ・setPostProcessEffectsを実行しようとするとエラーとなる。 ・addForce系が正常に動かないことがある。 2024.08.06 v2.45 ・CameraHandle.setThirdPersonAvatarScreenPosition()に対応。 ・$.createItem()で無効なWorldItemTemplateIdが指定された時に例外とならなかった問題に対応。 2024.08.05 v2.44 ・x.worldItemReference()に対応。 ・WorldItemTemplateIdによる$.createItemに対応。 ※WorldItemTemplateIdを使う場合は、CSEmulatorPrefabItemの追加は不要です。 ・CCKComponentへの参照時に極力interfaceを使うように変更。 2024.07.21 v2.43 ・raycast系関数を各種Shapeに対応。 ・(v2.42より)$.onXxx系関数を呼んだ場合に、不正確なWarningが出ていた問題に対応。 2024.07.20 v2.42 ・onTextInput、onReceiveを複数回実行した場合にエラーとなってしまう問題に対応。 ・SpawnPointのrotationのYに0以外を指定した場合に、アバターや視点が正常ではなかった問題に対応。 2024.07.15 v2.41 ▼PlayerScript ・setHumanoidPoseOnFrameに対応。 ・setHumanoidBoneRotationOnFrameに対応。 ・HUDv2でのGrab時の挙動に対応。 ・三人称視点で、視点の回転にプレイヤーが追従する問題に対応。 ・HumanoidPose.centerPositionで移動させた場合に、三人称視点でアバターの位置が正面方向以外で正しくならない問題に対応。 2024.07.12 v2.40 ・プレビュー開始時のCCKの一部処理を抑制する機能を追加。 具体的には「package一覧の取得に成功しました」の処理。 CCKのPackageInstallerと、Unity上でVRを使って確認する機能に影響が出ます。 必要に応じてOFFにして再起動してください。 2024.07.11 v2.39 ・CCK2.18.0の各種機能に対応。 一部未対応。 2024.07.08 v2.38 ・各種距離制限の撤廃に対応。 2024.06.10 v2.37 ・視点カメラにCameraOnlyが表示されるように調整(公式対応まで暫定)。 ・三人称視点の視点調整時にCameraOnlyを無視するように変更。 2024.06.09 v2.36 ・起動時に三人称視点で開始できるように変更。 ・マウス操作感度の上限を超えて変更する機能を追加(2.15あたりがよさそう)。 ・文法エラー等の時に、行数が確認できない問題を緩和。 2024.05.31 v2.35 ・SetPosition/SetRotationで慣性がリセットされない問題に対応。 ・MovingPlatformがONの時にまれに発生するエラーに対応。 2024.05.10 v2.33 v2.34 ・v2.32にて、三人称視点変更時にまれに発生していたPostProcessLayerのエラーに対応。 ・アップロード時にエラーとなる問題に対応。 2024.05.08 v2.32 ・WorldRuntimeSetting.UseMantlingに対応。 ※よじ登るアニメーションに対応していません。 緩和策として、よじ登り後0.5秒は次のよじ登りを行えないようにしています。 ・三人称視点に切り替える機能を追加。 ※実装の都合上、プレビュー開始時は常に一人称視点に戻ります。 2024.05.07 v2.31 ・$.stateに入れたobjectの配下にある、array等の自己変更メソッドが正常に動かない問題に対応。 2024.04.23 v2.30 ・トップレベルに記述できない処理に対してwarningを出す機能を追加。 2024.04.23 v2.30 ・トップレベルに記述できない処理に対してwarningを出す機能を追加。 2024.04.19 v2.28 v2.29 ・v2.27に生じていたDefaultレイヤーとの複数衝突とプレイヤーのジャンプ時の問題に対応。 2024.04.18 v2.27 ・ItemHandle.sendのargにundefinedを指定した時、メッセージを送らない挙動に対応。 ・プレビューのプレイヤー関連 ・OwnAvatarレイヤーのコライダーを追加。 ・カプセルコライダーのサイズの変更機能を追加。 2024.04.05 v2.26 ・WorldRuntimeSetting(動く床に追従する挙動)に対応。 2024.03.28 v2.25 ・PlayerHandle.setHumanoidPoseに対応。 2024.03.26 v2.24 ・PlayerHandle.setHumanoidPoseの引数の追加のみに対応。実装は未対応。 2024.03.20 v2.23 ・CCK2.9.0のFogSettingsの挙動変更に対応。 2024.03.19 v2.22 ・$.materialを追加。 2024.03.16 v2.21 ▼PlayerHandle.setPostProcessEffects ・初期状態で主にDepthOfFieldが掛かってしまっていた問題に対応。 ・回数制限と距離制限に対応。 2024.02.29 v2.19 v2.20 ・PlayerHandle.setPostProcessEffectsを追加。 2024.02.06 v2.18 ・PlayerHandle.idfcを追加。 ・$.getPlayersNearで同一プレイヤーが複数含まれないように変更。 2024.01.31 v2.17 ・$.computeSendableSizeを追加。 ・ItemHandle.sendのサイズ制限(ソフトリミット)に対応。 ・$.callExternalの制限で毎秒100回を選べるように変更。 2024.01.16 v2.16 ・$.onStartを追加。 ※クラフトアイテム及びワークラワールドでのonStartの挙動には対応していません…! 2024.01.12 v2.15 ・$.itemTemplateIdが$.Item…となっていた問題に対応。 ・$とPlayerHandleのJSON.stringifyで欠けていた値を追加。 ・playerがワープした後でも$.getOverlapsに判定が残る問題に対応。 2023.12.24 v2.14 ・callExternalに回数制限(切替可)と文字数制限を追加。 ・PlayerHandleのメタ情報系にデフォルト値を追加。 ・instanceofでClusterScriptErrorを判定できない問題に対応。 ・FPS制限がonUpdateに対して有効でない問題に対応。 2023.12.20 v2.13 ・インポート後にエラーが出て再生できなくなる問題に対応。 2023.12.20 v2.12 ・外部通信機能に対応。 ・各種メタ情報の取得に対応。 ・プレビュー終了時にエラーが出る問題に対応。 ・$.stateから得られる値が浅いコピーだった問題に対応。 2023.12.06 v2.11 ・TextInput系の関数を実装。 ・SubNodeのsetText系の関数を実装。 ※上記関数にある各種制限は未対応です。 2023.10.25 v2.10 ・左Shiftでダッシュ、左Altで歩けるようになりました。 ・$.getItemsNearで自身が取得できてしまう場合がある問題に対応。 2023.10.15 v2.09 ・CSEmulatorPrefabItemにItemTemplateIdを入力していた場合、静的配置でも$.destroyできるように変更。 ・一部クラスをJSON.stringifyした時にエラーが発生する問題に対応。 ・$.createItemが制限されていない問題に対応。 2023.10.12 v2.08 ・RigidbodyのないItemが$.onCollideを検出できていた問題に対応。 ・$.onCollideでプレイヤーが取得できない問題に対応。 ・$.onCollideでSubNodeへの衝突が正しく取れない問題に対応。 ・$.getOverlapsの対象が$.destroyした場合などにエラーが発生する問題に対応。 ・非アクティブなSubNodeが$.getOverlapsの判定に残る問題に対応。 ・$.raycast系でPlayerHandleが取得できない問題に対応。 2023.10.09 v2.07 ・onUpdate中に$.destroyするとエラーが発生する問題に対応。 ・$.destroyされたitemのメッセージをonReceiveで受けるとエラーが発生する問題に対応。 ・ItemHandle.sendが他の操作と回数制限を共有している問題に対応。 ・ClusterScriptErrorでstackを取得できない問題に対応。 ・$.stateに対応していない値を入れた場合の挙動を修正。 2023.10.03 v2.06 ・★v2.04発生★HumanoidPose.centerXxxxが正しく反映されない問題に対応。 ・VRMモデルのn人称視点やGrab時の向きに対応。 >これによりPlayerHandle.getRotationが正しくなります。 >CSEmulatorのWindowにて視点の切り替えができます(VRMモデルの動きのみに対応。実際の視点には未対応) 2023.10.01 v2.05 ・★v2.04で発生★PlayerHandle.setHumanoidPose(null)が動かなかった問題に対応。 ・Vector3.crossが動かなかった問題に対応。 ・一部のエラーでスタックトレースが出るようになりました。 2023.09.29 v2.04 ・$.getOverlapsのSubNode判定あたりで色々あった問題に対応。 ・VRMモデルが手を上げられるようになりました&走ります。 ・$.addImpulsiveForceAtを追加。 2023.09.26 v2.03 ・PlayerHandleのsetGravityが正常に動作しない問題に対応。 >onInteractでsetGravityをして、そのitemを連打するなどで発生。 ・ItemHandleとPlayerHandleの実行回数を制限する機能に対応。 ・デバッグモード追加。$.logに情報が追加されます。 [シーン上のフルパス][プログラム上の位置(行位置.文字位置)]メッセージ 2023.09.24 v2.02 ・ItemHandleとPlayerHandleにある距離の実行制限に対応。 ・初期ポーズをT-Poseから腕を下におろしたポーズに変更。 2023.09.23 v2.01 ・PlayerHandle.addVelocityに対応(ジャンプ台で使うあれです)。 ・複雑なオブジェクトを単体で$.logした時にいい感じの表示になるように変更。 ・$.getItemsNearで子のみにShapeがある時などに取得できない問題に対応。 ・ItemHandle.sendでItemHandleを送った場合に発生する問題に対応。 2023.09.22 v2.00 ・公開。