Robloxゲームの作り方で画像やアバター編。
データの一括アップロード
アップできるデータのフォーマット
- 3Dは、 .fbx .obj に対応。
- 画像は .png, .jpg, .tga, or .bmpに対応。
- オーディオは .mp3 .oggに対応。
- ビデオは .webm に対応。
複数のデータを一括アップロード
複数ファイルを一度にアップし、あとでオブジェクトに張り付けていくこともできます。
「表示>アセット管理」を開きます。
ゲームがまだRoblox上に保存されていない場合は保存してください。
アセット管理のパネルが開いたら、画像をひらき、アップロードボタンを押します。
えらんだらインポートが始まるので終わるまで待ちます。
なお、オーディオは1月当たり10個、ビデオは1月あたり3個と制限があります。
IDをクリップボードにコピーし、
ブロックなどに子要素に追加した「Texture」の「Texture」プロパティに張り付けます。
あとはStudsPerTileUとStudsPerTileVでサイズを調節。
画像のアップロード
画像をウェブからアップロードする
robloxのサイトへログイン。
「制作」メニューから「クリエーターダッシュボード」へ移動。
「作品>開発用アイテム」から「Decal」を選ぶとファイルアップロード画面ができます。Decalとは転写紙という意味だそうです。
「ファイルを選択」でファイルを選び、「Upload」でアップします。
アップロード後はモデレータの方のチェックが入ってから公開されるようです。
アップロードしたファイルは「歯車」アイコンから「Configure」で設定を開けます。
設定では詳細情報を書いたり、コメントやコピーの有無をセットできます。
公開をやめるには「アーカイブ」を実行します。アーカイブ後は「復元」でまた公開できます。
アセット販売などについては以下参照ください。
Creator Store | 文書 - Roblox クリエーターハブ
画像をプロパティからアップする
ボックスに張り付ける場合、「Explorer(エクスプローラー)」の「Starter GUI」にまず「Surface GUI」を追加します。
「Surface GUI」のプロパティ「Adornee」で作ってあるボックスの名前を指定しておきます。
「Surface GUI」に「ImageButton」を追加したら、「ImageButton」の設定から「Image」を見つけてクリックします。
あとは「Choose File(ファイル選択)」でファイルを選び、「Create(クリエイト)」で追加できます。
追加後は、ImageLabelやImageButtonにある「Image(イメージ)」プロパティを押すと、以下のようにアップした画像を選択できるようになります。
するとこのように画像が張り付けられています。
「ImageButton」のプロパティで「Rotation(回転)」に数値を入れてリターンキーを押します。
ちょうど180度回転なので下向きの画像となります。
今度は「ImageButton」のプロパティ「Size」を変更します。
X,Yとも{0,100}とあるのを{0,200}、つまり現在の2倍に数値を変更したら以下のように表示も大きくなりました。
画像はライトの影響を受けますが(暗い場合は暗くなる)、ライトの影響を無視させるにはSurfaceGUIのプロパティ「LightInfluence」を0にします。
画像をUIに張り付ける
ブロックではなく画面上に張り付ける手順も大体一緒です。
まず「Home(ホーム)」タブで「UI」を選びます。
UIとはユーザインタフェースのことです。
次に「Screen GUI」を選びます。
次に「ImageLabel(イメージラベル)」を押して追加します。
すると「ImageLabel」が画面上に登場。
設定で「Image」からアップした画像を選びます。
すると、画像が反映されました。
UIで複数の画像を重ね合わせる場合は、「ImageLabel」にある「Zindex」のプロパティで数字を1,2,などの順番で指定します。
Zindexは奥行きの表示順を管理するためのパラメーターになります。
画像関連Q&A
ファイルが追加できない?
ゲームをPublish(パブリッシュ)していないとファイル選択ができません。
パブリッシュとはゲームデータをロブロックスのサーバへアップすることで、これによって画像ファイルなどもロブロックスのサーバ上から管理できるようにするためだと思われます。
また、アップロードした画像がコミュニティ基準違反の場合はエラーとなる場合があります。注意しましょう。
服を作るには?
まず以下のサイトからテンプレートを入手しましょう。画像を名前を付けて保存します。
画像ソフトで変更してスタジオ上で確認できます。
顔を作って販売できる?
Robloxでは顔のデータも販売されています。が、数は少ないです。
外部サイトQuoraでの回答によれば、
「顔を作って売ることはできない」
ということのようです。
顔の販売データがかなり少ないので、おそらく開放されていないことは正しいように思われます。
How to create a face in Roblox - Quora
顔を変更できる?
ただし顔を変更できる写真スタジオのようなゲームがあります。
こちらもQuoraの解答によれば、
「自作のゲーム内に顔データをアップして顔を切り替えることは可能」
ということのようです。
つまりゲームが終われば、その顔のデータはアバターには保持されないということです。
こちらのサイトでは以下のようなスクリプトで変更できるとしています。
local Character = script.Parent
local Head = Character:WaitForChild('Head')
wait(1)
Head.face.Texture = 'rbxassetid://'
Starter face script? ROBLOX (join and be given a face) specific player [closed] - Scripting Helpers
3Dファイルをインポート
3Dデータの作成
まずは3Dファイルをつくります。
ブレンダーは高機能かつ無料なので、操作はやや面倒ですがブレンダーで作ると大抵の機能は使えるともいます。
作ったら「ファイル>エクスポート>Wavefront(OBJ」で出力します。
3Dファイルのインポート
ロブロックススタジオで画面上で右クリックし、Insert Object(オブジェクト挿入)からMeshPart(メッシュパート)を選びます。
作ったメッシュパートを選択すると、右下に「MeshId」の項目があるのでクリック。
すると先ほど作った3Dファイル「〇〇〇.obj」ファイルが選択できるようになります。
その後このようにダイアログがでます。これは図形に位置情報があるけど削除するか?ということです。Yesでよいでしょう。
問題なければこのようにロブロックススタジオ上に3Dデータが出現します。
表示されない?
まずポリゴン数が多すぎるとインポートできないと思います。
ポリゴンというのは3Dを構成する面のデータです。これが細かいほど起伏がスムーズに表現されます。反面、データ量が大きくなったり、表示する処理に時間がかかるようになるため、限度が設けられれています。
実際、あるデータをあプしたら、トライアルポリゴン数が10000以上としてエラーになりました。
そのほか、3Dファイルの解釈はアプリによって多少異なるため、ブレンダーなどでうまく作れたデータが正しく出ない可能性もあると思います。
最初から作りこむというよりは、途中途中で表示が大丈夫か適宜インポートして確認しながら作ったほうがよいでしょう。