- PHPが使えるサーバー
- SQLite or MongoDB
詳しくはRequirementsを確認ください。
ローカルで使いたいならXamppにインストールできます。
Cockpitからfreeの方をダウンロードしインストールします。インストールの詳細は省略します。
Collectionを設定します。設定したNameは後ほどUnity側で使います。
「ADD FIELD」をクリックします。
TextのKey
は必ず設定してください。NameにKey
またはkey
を指定してください。
追加したものは下記のようにNameをIDとしてUnity上で取得できます。
[Serializable]
public sealed class TestCockpitModel : CockpitModel
{
public string Text;
protected override void OnDeserialize()
{
Text = GetString("text");
}
}
SelectやTagはOptionsから定数を追加できます。
enum
に変換すると使いやすいです。
[Serializable]
public sealed class TestCockpitModel : CockpitModel
{
public ItemType Select;
public enum ItemType { Item1, Item2, Item3 }
protected override void OnDeserialize()
{
Select = GetSelect<ItemType>("select");
}
}
下記以外にも、GetStrings(key)
などの複数取得系のメソッドもあります。
using System;
using CMSuniVortex.Cockpit;
using UnityEngine;
namespace CMSuniVortex.Tests
{
[Serializable]
public sealed class TestCockpitModel : CockpitModel
{
public string Text;
public long Number;
public Sprite Image;
public bool Boolean;
public Color Color;
public string Date;
public ItemType Select;
public TagType[] Tags;
public enum TagType { Tag1, Tag2, Tag3 }
public enum ItemType { Item1, Item2, Item3 }
protected override void OnDeserialize()
{
Text = GetString("text");
Number = GetLong("number");
Boolean = GetBool("boolean");
Color = GetColor("color");
Date = GetDate("date");
Select = GetSelect<ItemType>("select");
Tags = GetTag<TagType>("tags");
LoadSprite("image", asset => Image = asset);
}
}
}
Addressable対応のCuvClient
を選択した場合、AssetReference
を使えます。
using System;
using CMSuniVortex.Cockpit;
using UnityEngine.AddressableAssets;
[Serializable]
public sealed class CatAddressableDetails : CockpitModel
{
public AssetReferenceSprite Sprite;
public AssetReferenceTexture2D Texture;
protected override void OnDeserialize()
{
LoadSpriteReference("image", asset => Sprite = asset);
LoadTextureReference("image2", asset => Texture = asset);
}
}
Fieldを保存後、取得テストをするので適当に複数のItemを入力します。
Itemを入力後、外部から取得できるようにRolesを設定します。 左下の設定マークをクリック
ROLES & PERMISSIONSをクリック
右下の「ADD ROLE」から先ほど作成したCONTENTのItemsのReadのみを選択して「CREATE ROLE」で作成します。
左メニューのApiをクリックして先ほど作成したRoleを指定します。選択する箇所が分かりづらいです。画像のドロップダウンが表示されている位置をクリックしてください。
設定後、下記のようになります。「REST」をクリックして正常に動作するか確認します。
GET /content/items/{model}テストをします。ここで問題なく取得できるかを確認します。何か動作がおかしい場合は、まずこちらのテストを実行するという事を覚えておいてください。
Unity上に移動しCuvImporter
の必要情報を入力しImportボタンをクリックしてください。取得できれば完了です。Unity側の設定詳細はReadmeをごらんください。
explanation | e.g. | |
---|---|---|
Build Path | アセットを生成するパス | Assets/Generated/ |
Languages | 言語を指定、利用していなくても必ず1つ選択する必要があります。 | English |
Base Url | CockpitのURL | https://devx.myonick.biz/cockpit/ |
Api Key | Rolesに設定したApi Key | API-a92fac21986ac045e143f07c27c60e09f19ae‹ |
Model Name | cockpitのインストール で設定したName | Model |
左下の設定マークから「LOCALES」を選択します。
言語はSystemLanguageの値を設定してください。英語はDefaultにした方が良いのでそれ以外の言語を設定します。
ローカライズしたいItemのLocalize fieldをオンにしてください。
そうするとItemの編集画面に「TRANSLATION」が表示されるようになります。