ð ãã®èšäºã¯ Zenn ã«æçš¿ããå 容ã®ã¢ãŒã«ã€ãã§ãã
Unity ã§ãšãã£ã¿æ¡åŒµãæžããŠãããšã
ããã®èšå®ãã©ãã«ä¿åããã®ãæ£è§£ãªãã ããïŒã
ãšæ©ãå Žé¢ããããããŸãã
ãã®ãšãã«ãŸãåè£ã«äžããã®ã EditorPrefs ã§ãã
bool isOpen = EditorPrefs.GetBool("MyTool_Foldout", false);
ãšãŠãæè»œã§äŸ¿å©ã§ãããäœ¿ãæ¹ãééãããš
ããŒã éçºã§ã¯å°å³ã«äºæ
ãããã API ã§ããããŸãã
ãã®èšäºã§ã¯ã
EditorPrefs ã¯äœã®ããã®ä»çµã¿ãªã®ã
ã©ããªçšéã«åããŠããã®ã
éã«äœ¿ã£ãŠã¯ãããªãã±ãŒã¹
ãæŽçããŠã¿ãŸãã
EditorPrefs ãšã¯äœã
EditorPrefs ã¯ãUnity ãšãã£ã¿å°çšã®èšå®ä¿åæ©æ§ ã§ãã
ãããžã§ã¯ãåäœã§ã¯ãªã
ãŠãŒã¶ãŒïŒãã·ã³ïŒåäœã§ä¿åããã
ããŒãžã§ã³ç®¡çã®å¯Ÿè±¡å€
ãšããç¹åŸŽããããŸãã
ã€ãŸãã
ããã® PC ã§ããã® Unity ã䜿ã£ãŠããèªåã ãã®èšå®ã
ãä¿åããããã®ãã®ã§ãã
ä¿åå Žæã¯ã©ãïŒ
EditorPrefs ã®äžèº«ã¯ãOS ããšã«ä»¥äžã®å Žæã«ä¿åãããŸãã
WindowsïŒã¬ãžã¹ããª
macOSïŒ
~/Library/PreferencesLinuxïŒ
~/.config
ãã®æç¹ã§åããéãã
Git ã«ã SVN ã«ãä¹ããŸãã ã
åããŠãããŠãŒã¹ã±ãŒã¹
1. ãšãã£ã¿ UI ã®è¡šç€ºç¶æ
äŸãã°ã
ããŒã«ãŠã£ã³ããŠã®ééç¶æ
æãããã¿ïŒFoldoutïŒã® ON / OFF
æåŸã«éžæããŠããã¿ã
ãããã£ããèŠãç®ã®ç¶æ ãã¯ãEditorPrefs ãšéåžžã«çžæ§ãè¯ãã§ãã
bool isOpen = EditorPrefs.GetBool("MyTool_Foldout", false);
ãããžã§ã¯ããåãæ¿ããŠãã
ãååãšåã䜿ãå¿å°ããä¿ãŠãŸãã
2. å人åãã®äœæ¥å¹çèšå®
ãããã°è¡šç€ºãæå¹ã«ããã
èªåãªããŒããåãã
ãã°ã詳现衚瀺ã«ããã
ãšãã£ã 人ã«ãã£ãŠå¥œã¿ãåãããèšå® ãé©ããŠããŸãã
ããã ScriptableObject ã§å
±æããŠããŸããšã
ã誰ããå€ããèšå®ã§å
šå¡ã®æåãå€ããã
ãšããäºæ
ãèµ·ããã¡ã§ãã
3. äžæçãªäœæ¥ãã©ã°
äŸãã°ã
ãããã°çšã»ãŒãããŒã¿ã䜿ãã
ãã¹ãçšã¢ãŒãã§èµ·åããã
ãªã©ã
æ£åŒãªä»æ§ã§ã¯ãªãããäœæ¥äžã¯å¿
èŠ
ãšãããã©ã°ã«ã䜿ããŸãã
åããŠããªããŠãŒã¹ã±ãŒã¹
1. ããŒã ã§å ±æãã¹ãèšå®
ãã«ãèšå®
ãããã°æ©èœã®æå¹ / ç¡å¹
ã²ãŒã æåã«åœ±é¿ãããã©ã°
ãããã EditorPrefs ã«å ¥ããã®ã¯å±éºã§ãã
çç±ã¯åçŽã§ã
ä»äººã® EditorPrefs ã¯èŠããªããã ã
ãèªåã®ç°å¢ã§ã¯åçŸããªãããšããå°çãå§ãŸããŸãã
2. å®è¡æïŒRuntimeïŒã§äœ¿ãããŒã¿
EditorPrefs 㯠Editor å°çš ã§ãã
ãã«ãåŸã®ã²ãŒã ã§ã¯äžå䜿ããŸããã
å®è¡æã«å¿ èŠãªããŒã¿ã¯ã
PlayerPrefs
ScriptableObject
JSON / Binary ãã¡ã€ã«
ãªã©ã䜿ãã¹ãã§ãã
ããããèšèšãã¹
ããŒåãé©åœã«æžã
EditorPrefs.SetInt("Debug", 1);
ããã¯ããªãå±éºã§ãã
ä»ã®ããŒã«ãšè¡çªãã
äœã®èšå®ãåãããªããªã
å¿ ã ããŒã«åã»æ©èœåãå«ããã㌠ã«ããŸãããã
ãããžã§ã¯ãåºæã ãšåéããã
EditorPrefs 㯠ãããžã§ã¯ããè·šãã§å ±æ ãããŸãã
åãããŒåã䜿ã£ãŠãããšã
å¥ãããžã§ã¯ãã®èšå®ãæ··ãã
æå³ããªãåæå€ã«ãªã
ãšãã£ãåé¡ãèµ·ããŸãã
å¿
èŠã§ããã°ãApplication.productName ãªã©ãããŒã«å«ããã®ãäžæ¡ã§ãã
ScriptableObject ãšã®äœ¿ãåã
| çšé | æšå¥š |
|---|---|
| ããŒã ã§å ±æ | ScriptableObject |
| å人ã®äœæ¥ç°å¢ | EditorPrefs |
| å®è¡æããŒã¿ | PlayerPrefs / ãã¡ã€ã« |
| äžæçãªUIç¶æ | EditorPrefs |
ã誰ã䜿ãèšå®ãªã®ãïŒã
ãåºæºã«èãããšã倿ãããããªããŸãã
ãŸãšã
EditorPrefs ã¯ã
å°ãã
å人çã§
ãªããŠãå°ããªããããããšå¿«é©
ãããªæ å ±ãä¿åããããã®ä»çµã¿ã§ãã
匷åã§ããã
仿§ããŒã¿ãããŒã å
±éèšå®ãå
¥ãå§ããç¬éã«ç Žç¶» ããŸãã
ãšãã£ã¿æ¡åŒµãæžããšãã¯ã
ããã¯ãèªåã ãã®èšå®ããïŒ
ãšäžåºŠç«ã¡æ¢ãŸã£ãŠèããã ãã§ã
åŸã
ã®ãã©ãã«ãããªãæžãããã¯ãã§ãã