ScriptableObject
Unityã§å¥ãªãã¸ã§ã¯ãã®æ å ±ãåå¾ãããæä½ããä¸ã§ãæãç°¡åãªæ¹æ³ã¯Inspectorã«é²åºãã¦åç §å ãã»ãããããã¨ã§ãã ãã ããã®ã¢ããã¼ãã¯ã·ã¼ã³ãåå²ããäºã«ãªãã¨åä»ã§ããUnityã®Sceneã¯å¥ã®Sceneã®ãªãã¸ã§ã¯ãã«å¯¾ãã¦ã¢ã¯ã»ã¹åºæ¥ãªãã®â¦
Unityãæ¨æºæ©è½çã«ã¯é対å¿ãªãã©ã¼ãããã®ãã¼ã¿ãã¤ã³ãã¼ãããéãã¾ãã§å¯¾å¿ãã©ã¼ãããã®ããã«ãã¡ã¤ã«èªä½ãã¢ã»ããã¨ãã¦ä½¿ç¨å¯è½ã«ãããScripted Importerãã¨ããæ©è½ã®ç´¹ä»ã§ãã
ä»åã¯Prefabã«ScriptableObjectãæ ¼ç´ãã話ã§ãã ScriptableObjectã使ãã¨ä½ãè¯ãã®ï¼ SriptableObjectãPrefabã«æ ¼ç´ãã¦ãã¾ãã ãµã³ãã« Tips ScriptableObjectã使ãã¨ä½ãè¯ãã®ï¼ Prefabãã¤ã³ã¹ã¿ã³ã¹åããå ´åãã³ã³ãã¼ãã³ãã®è¤è£½ãè¡ããâ¦
ä»åã¯ScriptableObjectã使ç¨ããComponentãSceneéã§ã®ãã¼ã¿å ±æã«ã¤ãã¦ã§ãããªãããã®è¨äºã¯30åè¿ãæ¸ãç´ãã*1ã¨ããæ°ãä»ãã®è¨äºã§ãå ´åã«ãã£ã¦ã¯æ¶ããããããã¾ããã ScriptableObject ScriptableObjectã¯ã¢ã»ããã§ããã¤ã³ã¹ã¿ã³ã¹ã§â¦
ä»åã¯ããã¿ã³ãæ¼ããéã«é³ãåºãæ¹æ³ãèãããã®ã§ãã³ã³ã«ãæ¸ãã¦ããã¾ããé³ã®å¶å¾¡ã¨ããããã¯ããã¿ã³ãæ¼ããæã«é³ãåºããããã¨ããè¦æãå¶ããçºã®ç©ã§ãã ãã¿ã³ãæ¼ãããé³ãåºã Audio Soureceã¯ã¹ãã¼ã«ã¼ãAudio Listenerã¯è³ Audioâ¦
å æ¥ãã¤ãã«Unityå ¬å¼ã®ããã¹ããã¼ã¹ãªã¢ããã³ãã£ã¼ã²ã¼ã ã®ãã¥ã¼ããªã¢ã«ããã¥ã¼ããªã¢ã«ã ã¼ãã¼ä¸è¦§ã«è¿½å ããã¾ããã ãããã¹ããã¼ã¹ããªã¢ããã³ãã£ã¼ã²ã¼ã ããã¹ããã¼ã¹ãªã¢ããã³ãã£ã¼ã¨è¨ãã°ãç¾ç¶æ¥æ¬è£½ã®ã¢ãã¤ã«ã»ã³ã³ã½ã¼ã«ï¼AAâ¦
GameObjectã«ã¢ã¿ããããã¹ã¯ãªããã®å®è¡é çªã¯ãç¹ã«ä½ãããªããã°å²ã¨ã©ã³ãã ã§ããä»åã¯ãã®è¾ºãã«ã¤ãã¦å°ãæ´çãã¾ãã ã¹ã¯ãªããã®å®è¡é çª ã¹ã¯ãªããã®å®è¡é ãå¶å¾¡ãã Script Execution OrderãGUIã§è¨å® ã¡ã¿ãã¼ã¿ã«ç´æ¥æ¸ãè¾¼ã Defaultâ¦
Unityã¨ãã£ã¿ã¯Prefabã»ScriptableObjectã¨ãã£ãã¢ã»ãããAnimationã®å¶å¾¡çãããã¤ãã®*1æ å ±ãUnityå´ãä¿æãããã©ã¼ãããã«ãã£ã¦ç®¡çãã¾ãã ãããã®æ å ±ã¯ãã·ã¼ã³ã®ä¿åãããEditor>Save Projectãããã¨ãã£ã¿ã®çµäºãçããã¤ãã®è¦å ã§å®â¦
ã¨ãã£ã¿æ¡å¼µã§ã¨ãã£ã¿æ©è½ãæ¡å¼µãã¦ããéããã¼ã¿ãä¿åããããªãäºãå¤ã ããã¾ããããã§ScriptableObjectã大活èºããï¼ããºï¼ãªã®ã§ãããããã¸ã§ã¯ãå ã®ãç¹å®ã®ãã©ã«ãã«æ ¼ç´ãã¨ãã£ãæ±ãã¯å¾®å¦ã«ã¤ã±ã¦ããªãæ°ããã¾ãã åãæã£åãæ©ãâ¦
Unityã®ç¹æ§ã¨ãã¦ãã·ã¼ã³é·ç§»ï¼LoadLevelï¼æã«ãªãã¸ã§ã¯ããç ´æ£ããã¾ãããã®ããããªãã¸ã§ã¯ãã«ãã¼ã¿ãæããã¦ããå ´åã¯ç ´æ£ããã¦ãã¾ãã¾ãã ãããã·ã¼ã³å ã§è§£æ±ºããåé¡ã ãã§ãªããã²ã¼ã ã®é²è¡ã§ã¯å¿ ãã¨ãã£ã¦ããã»ã©ã·ã¼ã³éã®ãã¼ã¿â¦
ã²ã¼ã èµ·åæã«1度ã ãå¦çãè¡ãã¾ãã ãµã³ãã« ä»åã¯è§£å度ãååã«ããå¦çã«ä½¿ç¨ãã¾ããããã¯StartãAwakeã§ãã£ãå ´åããã®ã³ã³ãã¼ãã³ããæã¤ãªãã¸ã§ã¯ããå¼ã°ãããã³ã«è§£å度ãååã«ãªãâ¦ã¨ãã£ãæåã«ãªãããã§ãããªã®ã§1åããèµ·åãâ¦
ç®æ¬¡ ç®æ¬¡ ã¨ãã£ã¿ã¯å¤ãå¿ãã ScriptableSingletonãä½¿ã ææ³ ã¨ãã£ã¿ã¯å¤ãå¿ãã Unityã¨ãã£ã¿ã¯å®ã¯ç©å¿ããæ¿ããã§ãã ä½ãè¨ããããã¨è¨ãã°ãã¨ãã£ã¿ã¦ã£ã³ãã¦çã§ä½¿ç¨ããã¦ããstaticãªå¤æ°ããã²ã¼ã ã®åçæãã³ã³ãã¤ã«æã«å¿ãããã¨â¦
ScriptableObjectã®OnEnableãå¼ã°ããã¿ã¤ãã³ã°ã«ã¤ãã¦ã§ãã PreloadAssetsã«è¨å®ããå ´å ã²ã¼ã èµ·åç´å¾ã«å¼ã°ãã¾ããã·ã¼ã³ã®ãã¼ãããããã¦ããªããããOnEnableã§Findãããã¦ãä½ãåå¾ãããã¨ã¯åºæ¥ã¾ããã ã¡ãªã¿ã«ã¨ãã£ã¿èµ·åæã«ãå¼ã°â¦
ä»åã¯ScriptableObjectãå©ç¨ãã¦ãã¼ã¿ã®å ±æãè¡ãæ¹æ³ãç´¹ä»ãã¾ãã ãã®æ¹æ³ã¯ãFindç³»ãä¸è¦ããã¤ãäºåã«ãã¼ã¿ãå®ç¾©ããäºãå¯è½ãã§ãAwakeãå¼ã°ããåã«ã»ããã¢ãããå®äºããããªãã¸ã§ã¯ãéã»ã·ã¼ã³éã§ãã¼ã¿ãå ±æã§ãããã¨ãã£ãæ±ãâ¦
UIã ã表示ããã·ã¼ã³ãã¥ã¼ã試ãã«ä½ã£ã¦ã¿ã¾ãããå³ä¸ã®ç»é¢ãUIã®ã¿ã表示ããã·ã¼ã³ãã¥ã¼ãå·¦ä¸ãUIã表示ããªãã·ã¼ã³ãã¥ã¼ã§ãã Unityã§UIã®ã¿ã·ã¼ã³ãã¥ã¼ã¨UI以å¤ã·ã¼ã³ãã¥ã¼ã¨ã²ã¼ã ãã¥ã¼ pic.twitter.com/wByCx29Po3 â æ¤¿ (@tsubaki_t1) 20â¦
Unityã§ãã¨ãã£ã¿ããã®ã¿å¤é¨ã¢ã¯ã»ã¹å¯è½ãªã¡ã³ã夿°ããå®ç¾ããæ¹æ³ã®èå¯ - Qiitaqiita.com ã¨ãã£ã¿æ¡å¼µããprivateããªã¡ã³ãã«ã¢ã¯ã»ã¹ãããå¤åä¸çªæ¥½ãªæ¹æ³ã«ã¤ãã¦ã§ãããã®æ¹æ³ã¯Editorå¤ã«ãå¦çãæ¸ããªããã°ãããªãã®ã§è¯ããªãã§ããâ¦
Unity5ã§å¯ã§ãããããããMecanimï¼ã¢ãã¡ã¼ã·ã§ã³ç®¡çã·ã¹ãã ï¼ã«æ°ããStateMachineBehaviourã追å ããã¾ããã ãã®æ©è½ã¯Mecanimã®ã¹ãã¼ãç®¡çæ©è½ã®åã¹ãã¼ãã«æ¯ãèããè¨å®ã§ããæ©è½ã§ããåã¹ãã¼ãæ¯ã«æ¯ãã¾ããè¨å®ãããã¨ã§ãã³ã³ãã¼â¦
æ°ãã坾妿³ã¯ãã¡ã tsubakit1.hateblo.jp --- ããã¥ã¢ã«ã«æ¸ãã¦ãã£ããè¨æ¶ãå¾®å¦ãªã®ã§ãããUnityã®Animatorã¯GameObjectãéã¢ã¯ãã£ãã«ãªãã¨ãªã»ããããã¾ãã ããã§è¨ããªã»ããã¨ã¯ã¢ãã¡ã¼ã·ã§ã³ãæåã«æ»ãã ãçã®çæããç©ã§ã¯ãªããâ¦
ScriptableObjectã¨ã¯ä½ãã¨è²ã ã¨æ©ãã§ãã¾ããããçãã¯ç°¡åã§ããããã¼ã¿ãæ ¼ç´ãããªãã¸ã§ã¯ãã§ããããå°ãè¨ãã°ãUnityããã¼ã¿ãã·ãªã¢ã©ã¤ãºã»ãã·ãªã¢ã©ã¤ãºããã©ã¡ã¼ã¿ãæ ¼ç´ããããã®ä»çµã¿ã§ããè²ã ãªäºãåºæ¥ãå²ã«ç¨éãåããã«ããâ¦
ææ°ç tsubakit1.hateblo.jp ScriptableObjectã使ç¨ããå ´åãScriptableObjectã®ãã©ã¡ã¼ã¿ãæ´æ°ããã¨ãã¼ã¹ã®å¤ãæ´æ°ããã¦ãã¾ãã対çã¨ãã¦å¤ã夿´ããScriptableObjectã使ç¨ããå ´åã¯GameObject.Instantiateã§ä¸åçæãããã®ã使ç¨ããã puâ¦
ããããã°[Unity]Excelã§ãã¼ã¿ã管çãã¦Unity iOS/Androidã§ä½¿ãã¯ã¼ã¯ããã¼ããã¼ã³ã¼ãã£ã³ã°ã§ä½¿ããããã«ããçã§ScriptableObjectãä½ãæ¹æ³ãç´¹ä»ãããä½¿ãæ¹æ³ãç´¹ä»ãã¦ããªãã£ãã®ã§ãç´¹ä»ãScriptableObjectã«ã¤ãã¦ã¯[Unity]ScriptableObjâ¦
Unity-Excel-Importer-Makerã§é ååããµãã¼ãããã 夿°åã¨å ¥åãã¦ããå ´åããã®é ç®ãçµåãã¦é åã¨ãã¦æ±ããUnity-Excel-Importer-Maker[Unity]Excelã§ãã¼ã¿ã管çãã¦Unity iOS/Androidã§ä½¿ãã¯ã¼ã¯ããã¼ããã¼ã³ã¼ãã£ã³ã°ã§ä½¿ããããã«ããâ¦
以åç´¹ä»ãããExcelã§ãã¼ã¿ã管çãã¦ï¼ä¸ç¥ï¼ã¯ã¼ã¯ããã¼ãã«ãå©ããã¾ããï¼ãã®å£°ããã£ãã®ãå¬ããã£ãã®ã§ãããã®ã½ã¼ã¹ã³ã¼ãã使ããé¨åãèªååãããï¼æãªããåç´ï¼ï¼ï¼ããã§ããããç°¡åã«XLSãã¡ã¤ã«ã®ãã¼ã¿ãUnityã«æã£ã¦ããäºãâ¦
Unityã¯ã²ã¼ã åçä¸ã®ãã¼ã¿ãæ®ããªããä¾ãã°Pushãæ¼ã度ã«ã«ã¦ã³ãã+1ãããããã°ã©ã ãçµãããããã·ã¼ã³ã«é ç½®ããã²ã¼ã ãåçåã¯0ã®ã«ã¦ã³ãããã¬ã¤ä¸ã«5ã¾ã§å¢ãããã¨ããããã®å¾åçã忢ããã¦ãã¾ãã¨0ã«éæ»ãã5ããé²è¡ãããã¨ã¯åºâ¦
ã¢ããªãµã¤ãºãæ¸ãã ãã®ï¼ã§ç´¹ä»ããæ¹æ³ï¼StreamingAssetsã«é ç½®ããï¼ã ããã©ãããAndroidã§ã¯è¥å¹²å®å®åº¦ã«é£ããããã§ãããå°ãè¯ãæ¹æ³ãæãã¤ããã[Unity3D]iosã¢ããªãµã¤ãºãç¯ç´ãã http://tsubakit1.hateblo.jp/entry/20120512/1336773155â¦
ååã®å¿ç¨ã§ãExcelã®ä¸èº«ãScriptableObjectã¨ãã¦ä¿æããããã«ãããtsubakit1.hateblo.jpããè¯ãæ¹æ³ããã£ãã®ã§ããã¡ããã©ããã tsubakit1.hateblo.jpExcelã¿ãããªãã¼ã¿ã¨ãã¦å¤§ããå¹çãæªããã©ã¼ãããããã©ã³ã¿ã¤ã ã§å¼ã£å¼µã£ã¦ãããã¨â¦
excelï¼å¥½ãã ããæé«ã«å¹¸ç¦ãªãã¼ã«ã§ããããæ¹ç¼ç´ã¯æé«ã ãããçµµãããã¼ã«ã¨ãã¦ã好ãã ãç»åãD&Dã§è²¼ãä»ããã°ç°¡åã«ã¯ã½éãç»åãæ·»ä»ã§ããããè¤æ°ã®ãã¼ã¸ã«æ¸¡ã£ã¦ç®¡çãã§ãããããå£ããäºã«å®è©ã®ãããã¼ã¸ã§ã³ç®¡çæ©è½ã ã£ã¦ãããâ¦
ScriptableObjectã¯GameObjectã¨éããã²ã¼ã å®è¡æãã®æ å ±ãä¿æãããããããã²ã¼ã å®è¡æã¯ãã¼ã¿ãæ´æ°ãã¦ã»ãããªãå ´åã¯HideFlagsã«DontSaveãæå®ãããã¨ã§å®è¡æã®ã²ã¼ã ç¶æ ãä¿åããªãããã«ãåºæ¥ããããã ï¼ãã ããã¤ã³ã¹ã¿ã³ã¹ãå³ç ´â¦
以åãããªè¨äºãæ¸ãã¦ãããããã£ã¨ScriptableObjectã®ç¨éãè¦ãã¦ããæ°ãããã tsubakit1.hateblo.jp ã¨ããããScriptableObjectã®ã¢ã»ããåï¼Projectãã¥ã¼ã«é ç½®ï¼ããæ¹æ³ãåãã£ãã®ã§ãè¤æ°ã®ã·ã¼ã³ã»ãªãã¸ã§ã¯ãã§å ±æãã¦ä½¿ãã·ãªã¢ã©ã¤ã¶â¦