ホーム » クリエイターズガイド » CasperVendorの見た目の改造入門

CasperVendorの見た目の改造入門

CasperVendorって改造できるの?

できます。
ベンダー本体の見た目(色・形・面の配置)は自由に作り変えられます。
中の売買や管理のしくみ
はスクリプトにおまかせでOK。

必要なのはこの3つだけ:

  • ベンダー本体スクリプト
  • MAPPINGノートカード(設定表)
  • BACK_SOONVENDER_OFFLINE の画像(在庫切れ・オフラインの表示)

ポイント:オブジェクトの形は自由(1個のプリムでも、メッシュでも、リンクセットでもOK)

どこまで自由?(色・形・Liの考え方)

  • 色や形:テクスチャやメッシュ次第で自由。デフォルトの帯をやめて縦の細いパネルにしてもOK。
  • 制限
    • 1プリムは最大8フェイス(マテリアル)まで。
    • 「ボタンの数」はフェイス数では制限されない(1つの面の上に、何個でも“押せる四角”を置ける)。
  • Li(ランドインパクト)
    • 余計なプリム・無駄なマテリアルを増やすとLiが上がりがち。
    • 少ないボタンなら「ボタン用の面を分ける」のが設定ラク。
    • ボタンが多いなら「1枚の面にボタンの四角を並べる」ほうがマテリアル節約。

「MAPPING」ノートカードを理解しよう

この1枚にすべての割り当てを書きます。

重要なのは基本の書式と行です。行がボタンの割当になります。そのため、使わないものを削除ではなく「NONE」にすることが重要になります。

書式:
プリム指定, フェイス番号, <Umin, Vmin, Umax, Vmax>
  • プリム指定 … ルートプリムの場合は__ROOT__ 、子プリムの場合はオブジェクト名
  • フェイス番号 … 面選択時に表示される番号
  • <…> の数値 … 面の中の位置(0〜1)。その面のすべてをボタンにする場合は、左下が(0,0)、右上が(1,1)になります。1つの面で複数のボタンを割り当てる場合は、同梱されているMapping Helperスクリプトを使うことで、簡単に割り出せます。

「MAPPING」ノートカードは2部構成です:

(A) [TEXTURES](画像を出す面の指定)

  • 13行の固定表。7行目がメイン画像
  • 使わない行は消さずに NONE のまま。

例(単品商品。メイン画像はルートプリムの face=1):

[TEXTURES]
NONE
NONE
NONE
NONE
NONE
NONE
__ROOT__,1   ; 7行目=Main texture panel(商品画像)
NONE
NONE
NONE
NONE
NONE
NONE

(B) [BUTTONS](押せる“ホットゾーン”の指定)

  • 1〜13行目:上の商品テクスチャ面をクリックできるようにするための設定です。(単品なら7行目だけ <0,0,1,1> で全面クリック)
  • 14行目以降:機能ボタン(PageLeft, Admin, Help, Demo, Gift…など)
  • 順番(行番号)で機能が決まっているので、使わない行も消さずに 「NONEにする。

1つのオブジェクト(単プリム)で動かす最短レシピ

やりたいボタン:ロゴ/Help/Demo/Gift(4つ)

作り方は2通り(どっちでもOK)

方式A:ボタン用に面を分ける(いちばん簡単)

  • 面の割り当て例
    • face=1:商品画像
    • face=2:ロゴ
    • face=3:Help
    • face=4:Demo
    • face=5:Gift

[TEXTURES]

[TEXTURES]
NONE
NONE
NONE
NONE
NONE
NONE
__ROOT__,1
NONE
NONE
NONE
NONE
NONE
NONE

[BUTTONS](抜粋の考え方)

[BUTTONS]
; 1〜6:未使用(消さずにNONE)
NONE,0,<0,0,1,1>
...(略)

; 7:メイン画像の全面クリック(支払いなど基本動作)
__ROOT__,1,<0,0,1,1>

; 8〜13:未使用(消さずにNONE)
NONE,0,<0,0,1,1>
...(略)

; 14以降:機能ボタンの“決まった行”に割り当てる
; (行番号=機能は固定。あなたのベンダー型で確認して当てはめる)

__ROOT__,2,<0,0,1,1>  ; Admin/ロゴの行(オーナーで管理、一般はヘルプ動作のことも)
__ROOT__,3,<0,0,1,1>  ; Help の行
__ROOT__,4,<0,0,1,1>  ; Demo の行
__ROOT__,5,<0,0,1,1>  ; Gift の行

こうすると座標を悩まない。各ボタン面は <0,0,1,1>(面ぜんぶが押せる)

方式B:1枚の面に四角でボタンを並べる(面を節約)

  • 例:face=7 をUI面にして、上側にボタンを横並び
__ROOT__,7,<0.04,0.84,0.22,0.98>  ; ロゴ
__ROOT__,7,<0.26,0.84,0.44,0.98>  ; Help
__ROOT__,7,<0.48,0.84,0.66,0.98>  ; Demo
__ROOT__,7,<0.70,0.84,0.88,0.98>  ; Gift

テクスチャの回転0・繰返し1×1にしておくと、座標が直感どおりに動きます。

“どの行がどの機能?”はこうやって一発特定

機能ボタン(14行目以降)は行番号で役割が固定ですが、ベンダーの種類で並びが少し違うことがあります。
いちばん早いのは実機テスト

  1. ベンダーを複製してテスト用に。
  2. [BUTTONS]7行目(画像全体)以外をいったん NONE,0,<0,0,0,0>
  3. 14行目以降を1行だけ有効にして、小さな四角(<0.05,0.05,0.20,0.20>)を置く。
  4. 自分(オーナー)と一般権限で押して何が起きるかメモ(設定メニュー/Help/Demo配布/GiftUI など)。
  5. 1行ずつ繰り返し → 対応表が完成
  6. 本番の配置(方式A or 方式B)に割り当てるだけ。

間違えやすいポイント

  • 行は消さない:順番=機能。未使用は NONE にする。
  • 当たり判定の重なり:同じ面で四角が重なると、どれが反応するか分かりにくい。重ねない
  • UVがズレる:UI面は回転0・繰返し1×1、テクスチャを反転させない。
  • ロゴの二重動作:ロゴ(Admin)行はオーナーで管理メニュー、一般でヘルプ的に動く実装が多い。挙動は実機で確認。

EasyModとMapping Helperを活用しよう

vendorと一緒に「CUSTOMISATION GUIDE AND TOOLS 」が入ってます。
EasyModは、改造するための手がかりになります。すべてのボタンが入ってる状態です。また、Mapping Helperをつかえば、1つの面で複数のボタンを配置するときの数値を指示に従うだけで作れます。

  • Mapping Helper:面をポチポチ選ぶだけでMAPPINGノートカードを自動作成
  • EasyMod初心者向けの外見調整ツール
  • Wikiのカスタマイズ説明は「手で中身を触る人向けの原理書」。
    困ったらHelperで作る → 必要ならノートカードを少し手で直す
    、でOK。

これさえ守れば大丈夫(超要約)

  • 本体+MAPPING+2画像で動く。
  • オブジェクトの形は自由
  • 行番号=機能(消さずに NONE)。
  • 単品なら[TEXTURES]の7行目が商品画像
  • [BUTTONS]の7行目で画像全面クリック、機能ボタンは14行目以降に割り当て。

あなたの疑問、少しは解消できましたか?

✅ 参考になった!
❌ 少しわかりにくかったかも…
ありがとう!次に活かすね♡
目次