ºÇ½ª¹¹¿·¡§ orika_ex_miyako 2024ǯ04·î29Æü(·î) 10:14:36ÍúÎò
¡¡²èÁü¤Î¾ðÊó¤ò¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤Æ´ÉÍý¤Ç¤¤ë¤è¤¦¤Ë¤·¤Æ¤ª¤¯¤³¤È¤Ç¡¢¾ðÊó¤ÎÊÔ½¸¤ò¤Þ¤È¤á¤Æ¹Ô¤¨¤ë´Ä¶¤òºî¤ê¤Þ¤¹¡£
¤Þ¤¿²èÁü¤ò¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËÅÐÏ¿¤·¤Æ¤ª¤¯¤³¤È¤Ë¤è¤ê¡¢¥¹¥¯¥ê¥×¥È¤«¤é¤Î»²¾È¤·¤Æ¤â¤é¤Ã¤¿ºÝ¤Ë¡¢É¬ÍפʾðÊó¤òÄ󶡽ÐÍè¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡
¡¡¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËÅÐÏ¿¤¹¤ë¤¿¤á¤Î²èÁü¤È¡¢¤½¤Î²èÁü¤òÀßÄꤷ¤¿¥Þ¥Æ¥ê¥¢¥ë¤ò¤¤¤¯¤Ä¤«ºîÀ®¤·¤Æ¤ª¤¤Þ¤¹¡£
¡¡²èÁü¤ò»È¤Ã¤¿¥Þ¥Æ¥ê¥¢¥ë¤ÎºîÀ®¼ê½ç¤Ë¤Ä¤¤¤Æ¤Ï¡¢AR¶õ´Ö¤Ë²èÁüÉÕ¤¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¤¹¤ë¤¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡Î㤨¤Ð¡¢¥×¥ì¥¤¥ä¡¼¤Î¾ðÊó¤ä¥¢¥¤¥Æ¥à¤Î¾ðÊó¤Ê¤É¥Ç¡¼¥¿¤ò°·¤¦¾ì¹ç¤Ë¡¢Ê£¿ô¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤Î¤Þ¤È¤Þ¤ê¤È¤·¤Æ´ÉÍý¤Ç¤¤ëÊýË¡¤¬¤¢¤ë¤È°·¤¤¤¬³Ú¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡°Ê²¼¤Î¤è¤¦¤Ë¡¢ÌîµåÁª¼ê¤ä¥µ¥Ã¥«¡¼Áª¼ê£±Ì¾Ê¬¤ò¥Ç¡¼¥¿¤È¤·¤Æ°·¤¦¤³¤È¤ò¹Í¤¨¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
¡ãÌîµåÁª¼ê¤Î¾ì¹ç¡ä
¡¡¡¦ÇØÈÖ¹æ ¡¡¡¦ÆÀ°Õ¤Ê¼éÈ÷°ÌÃÖ ¡¡¡¦ÂÇΨ ¡¡¡¦ÁöÎÏ ¡¡¡¡¡¡¡¡¤Ê¤É
¡ã¥µ¥Ã¥«¡¼Áª¼ê¤Î¾ì¹ç¡ä
¡¡¡¦¥Ý¥¸¥·¥ç¥ó¡¦Ìò³ä(¥´¡¼¥ë¥¡¼¥Ñ¡¼¡¢¥Ç¥£¥Õ¥§¥ó¥À¡¼¡¢¥ß¥Ã¥É¥Õ¥£¥ë¥À¡¼¡¢¥Õ¥©¥ï¡¼¥É) ¡¡¡¦ÂÎ³Ê ¡¡¡¦¥·¥å¡¼¥ÈÎÏ ¡¡¡¦¥É¥ê¥Ö¥ëÎÏ ¡¡¡¦ÁöÎÏ ¡¡¡¡¡¡¡¡¤Ê¤É
¡¡¤³¤Î¤è¤¦¤Ë¡¢£±¤Ä¤ÎÁª¼ê¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤Ë¤¢¤¿¤Ã¤Æ¤ÏÊ£¿ô¤Î¾ðÊó¤¬É¬ÍפǤ¹¤¬¡¢¤½¤ì¤é¤Ï¥Ð¥é¥Ð¥é¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¤Ï´ØÏ¢À¤¬Ê¬¤«¤ê¤Þ¤»¤ó¡£
¡¡¥×¥í¥°¥é¥à¤Ç¤Ï¤³¤Î¤è¤¦¤Ê¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤¿¤á¤Ë¥¯¥é¥¹¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¡¡
¡¡¥¯¥é¥¹¤ÎÌò³ä¤ÏÊÑ¿ô¤ÎÀë¸À¤È¥á¥½¥Ã¥É¤ÎÀë¸À¤¬¹Ô¤¨¤ë¤³¤È¤Ç¤¹¤¬¡¢ÊÑ¿ô¤ÎÉôʬ¤ò¡¢¤½¤ì¤¾¤ì¤ÎÁª¼ê¤Î¾ðÊó¤ò°·¤¦ÃͤȤ·¤ÆÍøÍѤ·¤Þ¤¹¡£
¡¡¤³¤Î¤è¤¦¤Ê´ÑÅÀ¤ÇÁª¼êÍѤΥǡ¼¥¿¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤òºîÀ®¤·¡¢¤½¤ÎÃæ¤Ë´ØÏ¢¤·¤Æ¤¤¤ëÊ£¿ô¤Î¥Ç¡¼¥¿¤òÊÑ¿ô¤È¤·¤ÆÀë¸À¤·¤Æ´ÉÍý¤¹¤ë¤³¤È¤Ç¡¢
£±¤Ä¤Î¥¯¥é¥¹¤ÇÁª¼ê¤Î¾ðÊó¤òɽ¸½¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¡¡ÌîµåÁª¼ê¤òÎã¤Ë¤¹¤ë¤È¡¢¤³¤Î¤è¤¦¤Ê¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£
public class BaseBallPlayerData { public int uniform number; // ÇØÈÖ¹æ ¡¡ public string defensivePositon; // ÆÀ°Õ¤Ê¼éÈ÷°ÌÃÖ ¡¡ public float battingAverage; // ÂÇΨ ¡¡ public float runSpeed; // ÁöÎÏ }
¡¡¤³¤Î¤è¤¦¤Ë¥¯¥é¥¹¤ò³èÍѤ¹¤ë¤³¤È¤Ç¡¢£±¤Ä¤Î¾ðÊó¤ò¹½À®¤¹¤ë¤¿¤á¤ËɬÍפÊÊ£¿ô¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¤³¤Î¹Í¤¨Êý¤ò¥Ù¡¼¥¹¤Ë¡¢º£²ó¤Î¾ì¹ç¤Ë¤Ï¡¢²èÁü´Ø·¸¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤È¡¢¤½¤ì¤ò«¤Í¤Æ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤¹¤ëµ¡Ç½¤òºîÀ®¤·¤Æ¤¤¤¤Þ¤¹¡£
¡¡
¡¡Àè¤Û¤ÉÌîµåÁª¼ê¤Î¥Ç¡¼¥¿¤ò BaseBallPlayerData ¥¯¥é¥¹¤È¤·¤Æɽ¸½¤·¤Þ¤·¤¿¡£
¡¡¤³¤Î¥¯¥é¥¹¤Ë¤ÏÁª¼ê£±Ì¾Ê¬¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£¤Ç¤¹¤¬¡¢Ìîµå¤ä¥µ¥Ã¥«¡¼¡¢¤½¤ì°Ê³°¤Î¤â¤Î¤Î¿¤¯¤Ï¡¢£±¤Ä¤Î¥Ç¡¼¥¿¤À¤±¤Ç¤Ï¾ðÊó¤¬Â¤ê¤Þ¤»¤ó¡£
¾¯¤Ê¤¯¤Æ¤âÌîµå¤Î¾ì¹ç¤Ë¤Ï£¹Ì¾(Áê¼ê¤âɬÍפʤΤǣ±£¸Ì¾)ʬ¤Î BaseBallPlayerData ¤¬É¬Íפˤʤê¤Þ¤¹¡£
¤Ê¤¼¤Ê¤é¡¢BaseBallPlayerData ¤Ë¤Ï£±Ì¾Ê¬¤Î¥Ç¡¼¥¿¤·¤«´ÉÍý½ÐÍè¤Þ¤»¤ó¤Î¤Ç¡¢¤½¤ì¤ò¿Í¿ôʬÍÑ°Õ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤Ìõ¤Ç¤¹¡£
¡¡¤³¤¦¤·¤¿¤È¤¡¢Æ±Ì¾¤Î¥¯¥é¥¹·²¤ò£±¤Ä¤Î¤Þ¤È¤Þ¤ê¤È¤·¤Æ´ÉÍý¤Ç¤¤ëÆþ¤ìʪ¤Î¤è¤¦¤Ê¤â¤Î¤¬¤¢¤ë¤È°·¤¤¤¬³Ú¤Ë¤Ê¤ê¤Þ¤¹¡£
£¹Ì¾Ê¬¤Î BaseBallPlayerData ¥¯¥é¥¹¤ÎÊÑ¿ô¤ò£¹¸ÄÍÑ°Õ¤·¤¿¤Î¤Ç¤Ï´ÉÍý¤·¤Æ¤¤¤ë¤³¤È¤Ë¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
¡¡BaseBallPlayerData ¥¯¥é¥¹£¹Ì¾Ê¬¤ò£±¤Ä¤ÎÊÑ¿ô¤Ç¤Þ¤È¤á¤Æ´ÉÍý¤·¤Æ¤¯¤ì¤ë¤â¤Î¤È¤·¤Æ¡¢C# ¤Ç¤Ï¥³¥ì¥¯¥·¥ç¥ó¤È¤¤¤¦µ¡Ç½¤òÍøÍѤ¹¤ë¤³¤È¤Ç¼Â¸½¤Ç¤¤Þ¤¹¡£
¡¡C# ¤Î¥³¥ì¥¯¥·¥ç¥ó¤Ë¤Ï¡¢List¡¢Dectionary ¤È¤¤¤¦µ¡Ç½¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£(ÇÛÎó¤Ï¥³¥ì¥¯¥·¥ç¥ó¤Ç¤Ï¤Ê¤¤¤Î¤ÇÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£)
¡ã³Æ¥¯¥é¥¹¤ò£±¤Ä¤º¤ÄÀë¸À¡¡¢ª¡¡¤³¤ì¤Ï£±¤Ä¤ÎÊÑ¿ô¤Ë¤Þ¤È¤Þ¤Ã¤Æ¤¤¤Ê¤¤¡ä
¡¡BaseBallPlayerData player0; BaseBallPlayerData player1; BaseBallPlayerData player2; ¡¡¡¡¡¡¡¡¡§ BaseBallPlayerData player8;¡¡
¡¡¡¡¢
¡ã¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤ò»È¤¤¡¢£±¤Ä¤ÎÊÑ¿ô¤ÇƱ¥¯¥é¥¹¤Î°Û¤Ê¤ë¥Ç¡¼¥¿¤òɽ¸½¤¹¤ë¡ä
¡¡List<BaseBallPlayerData> playerList;¡¡¡¡// List
¡¡Unity ¤Ç¤Ï¤³¤Î¤¦¤Á¡¢ScriptableObject ¥¯¥é¥¹¤È List ¤Îµ¡Ç½¤ò³èÍѤ·¤ÆºîÀ®¤Ç¤¤ë¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤È¤¤¤¦µ¡Ç½¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Îµ¡Ç½¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤òºîÀ®¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¡¡¤Ê¤ª¡¢¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤Ï¤¢¤¯¤Þ¤Ç¤âÊ£¿ô¤ÎƱ¥¯¥é¥¹¤Î¾ðÊó¤ò¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤³¤È¤¬¥á¥¤¥ó¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤ò»È¤¨¤Ð¤½¤ì¤¬¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤Ê¤ë¡¢¤È¤¤¤¦¤³¤È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
¤¢¤¯¤Þ¤Ç¤â Unity ¤ÎÍÑ°Õ¤·¤Æ¤¤¤ë ScriptableObject ¥¯¥é¥¹¤È List ¤ò³èÍѤ¹¤ë¤³¤È¤Ç¥Ç¡¼¥¿¥Ù¡¼¥¹¤òºîÀ®¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¤³¤ÎÉôʬ¤Îǧ¼±¤ò´Ö°ã¤¨¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
»²¹Í¥µ¥¤¥È
MicroSoft
¥³¥ì¥¯¥·¥ç¥ó
¡¡ÃΤé¤Ê¤¤Ã±¸ì¤¬½Ð¤Æ¤¤¿¤È¤¤Ë¤ÏÀѶËŪ¤Ë¡¢¥Í¥Ã¥È¤Ë¸ø³«¤µ¤ì¤Æ¤¤¤ë¸ø¼°¤Î¥Þ¥Ë¥å¥¢¥ë¡¢¤ï¤«¤ê¤ä¤¹¤¯¤Þ¤È¤á¤¿µ»ö¤Ê¤É¤ò¸«¤Ä¤±¤ÆÄ´¤Ù¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë¤¿¤á¤Ë¤Ï¡¢ÀìÍѤΥ¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ÎºîÀ®ÊýË¡¤ò³Ø½¬¤·¤Þ¤¹¡£
¡¡º£²óºîÀ®¤¹¤ë¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ï²èÁü´ØÏ¢¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ëÌÜŪ¤ÇºîÀ®¤ò¹Ô¤¤¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢¥¹¥¯¥ê¥×¥ÈÆâ¤Ë¤Ï¡¢²èÁü´ØÏ¢¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë¤¿¤á¤Î ImageData ¥¯¥é¥¹¤òÍÑ°Õ¤·¤Þ¤¹¡£
¡¡ImageData ¥¯¥é¥¹¤Ï¡¢²èÁü´ØÏ¢¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤Ë¤Þ¤È¤á¤Æ¤¤¤ë¾ðÊ󷲤Ǥ¹¡£
²èÁü¤ÎÄ̤·Èֹ桢²èÁü¤Î¥Þ¥Æ¥ê¥¢¥ë¤Ê¤É¡¢¤³¤ì¤é¤ò£±¤Ä¤Î¥Ç¡¼¥¿·²¤È¤·¤Æ¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¤³¤Î ImageData ¥¯¥é¥¹¤Ï¡¢¥²¡¼¥à¤ËÅо줹¤ë²èÁü¤Î¿ô¤À¤±ÍÑ°Õ¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤ì¤ò´ÉÍý¤¹¤ë¤¿¤á¤Ë List µ¡Ç½¤òÍøÍѤ·¤Þ¤¹¡£
¡¡¤³¤Î£²¤Ä¤Î¾ðÊó¤ò´ÉÍý¤·¤Æ´°À®¤¹¤ë¤Î¤¬¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤½¤Î¤¿¤á¤Ë¥¯¥é¥¹¤È¤·¤Æ¡¢ImageDataSO ¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£
¡¡¤É¤Î¤è¤¦¤Ê¹½À®¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤«¤Ï¥¹¥¯¥ê¥×¥ÈºîÀ®¸å¤ËÀâÌÀ¤ò¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤ò¤·¤Ã¤«¤ê¤È³Ø½¬¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£
¿¿»÷¤ò¤·¤Æºî¤Ã¤Æ¤ß¤¿¤ê¡¢Éü½¬¤ò½Å¤Í¤Æ¤¤¤¯¤³¤È¤Ç¥×¥í¥°¥é¥à¤ÏÍý²ò¤¬¿¼¤Þ¤ê¡¢½èÍý¤Î¥¤¥á¡¼¥¸¤¬¤ï¤¯¤è¤¦¤Ë¤Ê¤ê¡¢½ñ¤±¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡ImageData ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¡¡using ¤ÎÀë¸À¤ÏÉÔÍפǤ¹¡£
¤Þ¤¿¥¯¥é¥¹¤Ï·Ñ¾µ¤·¤Þ¤»¤ó¤Î¤Ç¡¢MonoBehaviour ¥¯¥é¥¹¤Ïºï½ü¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤¿ºÝ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤é ImageData ¥¯¥é¥¹¤Î¾ðÊó¤òÀßÄê¤Ç¤¤ë¤è¤¦¤Ë
[System.Serializable] °À¤ò¥¯¥é¥¹¤Î¾å¤ËÉÕÍ¿¤·¤Æ¤¯¤À¤µ¤¤¡£
ImageData.cs
¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£
¡¡Æþ¤ì»Ò¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥¯¥é¥¹¤Î£±¹Ô¾å¤Ë¤Ï¾åµ¤ÎÀë¸À¤¬¤¢¤ê¤Þ¤¹¡£[ ]¤ÇÀë¸À¤µ¤ì¤¿ÀßÄêÃͤϡÖ°À¡×¤È¸Æ¤Ð¤ì¤ë¾ðÊó¤Ë¤Ê¤ê¡¢ÆÃÊ̤ʰÕÌ£¤ò»ý¤Á¤Þ¤¹¡£
¡¡º£²óÍøÍѤ·¤Æ¤¤¤ë[System.Serializable]°À¤Ï¡¢System¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ëÀßÄêÃͤǤ¢¤ê¡¢¤³¤Á¤é¤òÀë¸À¤¹¤ë¤³¤È¤ÇÆþ¤ì»Ò¥¯¥é¥¹¤Î¾ðÊó¤ò¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ëɽ¼¨¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤³¤ì¤ò½ñ¤Ëº¤ì¤Æ¤·¤Þ¤¦¤È¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ë ImageData ¤¬É½¼¨¤µ¤ì¤º¡¢¥Ç¡¼¥¿¤ò¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤éÅÐÏ¿¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤»¤ó¡£
using System; ¤òÀë¸À¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï [Serializable] ¤È¤À¤±µ½Ò¤¹¤ì¤ÐŬÍѤµ¤ì¤Þ¤¹¡£Àë¸À¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï [System.Serializable] ¤Èµ½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë¤¿¤á¤ËɬÍ×¤Ê ImageDataSO ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈÀìÍѤΠScriptableObject ¥¯¥é¥¹¤ò·Ñ¾µ¤·¡¢[CreateAssetMenu] °À¤òµ½Ò¤¹¤ë¤³¤È¤ÇºîÀ®²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡
¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¡¢»ØÄꤷ¤¿¥Ç¡¼¥¿¤òÊ£¿ô¤Î¥Ç¡¼¥¿¤È¤·¤Æ¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤Æ¤ÎÌò³ä¤ò²Ì¤¿¤¹¤³¤È¤¬²Äǽ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¡¡º£²ó»ØÄꤷ¤Æ´ÉÍý¤·¤¿¤¤¥Ç¡¼¥¿¤Ï²èÁü´ØÏ¢¤Î¥Ç¡¼¥¿¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤ËɬÍפʾðÊó¤Ï°Ê²¼¤Î£²¤Ä¤Ç¤¹¡£
¡¡£±¡¥²èÁü´ØÏ¢¤Î¾ðÊóñ°Ì¤Ç¤Î¥Ç¡¼¥¿(²èÁü¥Ç¡¼¥¿¤ÎÄ̤·Èֹ桢²èÁü¤Î¥Þ¥Æ¥ê¥¢¥ë¡¢¥µ¥à¥Í¥¤¥ë¤Ë»È¤¦²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹ ¡¡£²¡¥²èÁü´ØÏ¢¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë List(¥ê¥¹¥È)¤È ScriptableObject ¤ò·Ñ¾µ¤·¤¿¥¯¥é¥¹
¡¡¤³¤Î¤¦¤Á£±¤ÏÀè¤Û¤ÉºîÀ®¤·¤¿ ImageData ¤¬Åö¤¿¤ê¤Þ¤¹¡£
¤³¤³¤Ç¤Ï£²¤Î¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¡¡ImageDataSO ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¤³¤Î¥¹¥¯¥ê¥×¥È¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢ImageData ¤ò«¤Í¤¿¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥»¥Ã¥È¤È¤·¤ÆºîÀ®¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¡¡[CreateAssetMenu]°À¤ÎÉÕÍ¿¤È¡¢ScriptableObject ¥¯¥é¥¹¤ò·Ñ¾µ¤¹¤ë¤³¤È¤ò˺¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
ImageDataSO.cs
¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£
¡¡½èÍý¤ÎÆâÍƤˤĤ¤¤Æ¡¢½çÈ֤˳Îǧ¤·¤Æ¤¤¤¤Þ¤¹¡£
¡¡£±¡¥²èÁü´ØÏ¢¤Î¾ðÊóñ°Ì¤Ç¤Î¥Ç¡¼¥¿(²èÁü¥Ç¡¼¥¿¤ÎÄ̤·Èֹ桢²èÁü¤Î¥Þ¥Æ¥ê¥¢¥ë¡¢¥µ¥à¥Í¥¤¥ë¤Ë»È¤¦²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹ ¡¡£²¡¥²èÁü´ØÏ¢¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë List(¥ê¥¹¥È)¤È ScriptableObject ¤ò·Ñ¾µ¤·¤¿¥¯¥é¥¹
£±¡¥²èÁü´ØÏ¢¤Î¾ðÊóñ°Ì¤Ç¤Î¥Ç¡¼¥¿(²èÁü¥Ç¡¼¥¿¤ÎÄ̤·Èֹ桢²èÁü¤Î¥Þ¥Æ¥ê¥¢¥ë¡¢¥µ¥à¥Í¥¤¥ë¤Ë»È¤¦²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹
ÍøÅÀ¤Ï¡¢£±¤Ä¤Î ImageData ¥¯¥é¥¹Æâ¤Ë¤Ï£±¤Äʬ¤Î²èÁü´ØÏ¢¤ÎÁ´¥Ç¡¼¥¿¤¬ÅÐÏ¿¤Ç¤¤ë¤³¤È¤Ç¤¹¡£¤½¤Î¤¿¤á¡¢²èÁü¥Ç¡¼¥¿¤ÎÄ̤·ÈÖ¹æÍÑ¡¢²èÁü¤Î¥Þ¥Æ¥ê¥¢¥ëÍѤȤ¤¤¦¤è¤¦¤ËÊÑ¿ô¤ò¸ÄÊ̤˺î¤ëɬÍפϤʤ¯¡¢
ImageData ¤Î id¡¢ImageData ¤Î textureMaterial ¤È¤¤¤¦·Á¤Ç ImageData ¤ò»²¾È¤·¤ÆÍøÍѤǤ¤ëÉôʬ¤Ç¤¹¡£
¡¡Î㤨¤Ð¡¢ImageData.id ¤Èµ½Ò¤¹¤ì¤Ð¡¢¤½¤ì¤Ï¤½¤Î ImageData ¥¯¥é¥¹¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë id ¤ÎÃͤò»²¾È¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¤³¤³¤«¤é¤Ï¥Ô¥ê¥ª¥É¤Ë¤è¤ë»²¾È½èÍý¤¬Áý¤¨¤Æ¤¤¤¤Þ¤¹¤Î¤Ç¡¢¤·¤Ã¤«¤ê¤È½èÍý¤òÆɤ߲ò¤¤¤Æ¤¤¤¤Þ¤·¤ç¤¦¡£
[System.Serializable]¡¡¡¡//¡¡¢«¡¡¥¯¥é¥¹¤Ë System.Serializable °À¤òÉÕÍ¿¤¹¤ë public class ImageData { public int id;¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡²èÁü¥Ç¡¼¥¿¤ÎÄ̤·ÈÖ¹æ public Material textureMaterial;¡¡¡¡//¡¡£³£Ä¶õ´Ö¤ËºîÀ®¤·¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë»È¤¦¥Þ¥Æ¥ê¥¢¥ë¤ÎÅÐÏ¿ÍÑ public Sprite spriteImage;¡¡¡¡¡¡¡¡¡¡//¡¡¥Ü¥¿¥ó¤Î¥µ¥à¥Í¥¤¥ë¤Ë»È¤¦²èÁü¤Î¥¹¥×¥é¥¤¥È¤ÎÅÐÏ¿ÍÑ // TODO ¾¤Ë¤â¤¢¤ì¤ÐÄɲ乤ë }
¡¡¤³¤Î¤è¤¦¤Ë²èÁü´ØÏ¢¤Î¾ðÊó¤ËɬÍפˤʤë¥Ç¡¼¥¿¤ò¥¯¥é¥¹¤È¤·¤Æ¤Þ¤È¤á¤Æ¤ª¤¯¤³¤È¤Ç´ÉÍý¤ÈÍøÍѤ¬Íưפˤʤê¤Þ¤¹¡£
¡¡¤Þ¤¿¡¢´ÉÍý¤¹¤ë¾ðÊó¤òÁý¤ä¤·¤¿¤¤(²èÁü¤ÎÅÐÏ¿¤·¤¿Æü¤Ë¤Á¡¢Ã¯¤Î²èÁü¤«¤ï¤«¤ë¤è¤¦¤Ë̾Á°¤Ê¤É)¾ì¹ç¤Ë¤Ï¡¢
¤³¤Î ImageData ¥¯¥é¥¹Æâ¤Ë ·¿¤ÈÊÑ¿ô¤òÄɵ¤¹¤ì¤Ð¡¢¹¥¤¤Ê¤À¤±Áý¤ä¤¹¤³¤È¤â½ÐÍè¤Þ¤¹¡£
¡¡ImageData ¥¯¥é¥¹¤Ë¤Ï²èÁü´ØÏ¢¤Î¾ðÊó¤ò¤Þ¤È¤á¤ÆÅÐÏ¿¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£
¤³¤Î¥Ç¡¼¥¿¤Ï²èÁü´ØÏ¢£±¤Äʬ¤Ç¤¹¤Î¤Ç¡¢¤â¤·¤âÊ£¿ô¤Î¥Ç¡¼¥¿¤òÍÑ°Õ¤·¤ÆÅÐÏ¿¤·¤¿¤¤¾ì¹ç¡¢
¤³¤Î ImageData ¥¯¥é¥¹¤òÊ£¿ôÍÑ°Õ¤·¤Æ¡¢¤½¤ì¤ò´ÉÍý¤¹¤ë¤¿¤á¤ÎÊÑ¿ô¤¬É¬Íפˤʤê¤Þ¤¹¡£
¡¡¤³¤¦¤¤¤Ã¤¿£±¤Ä¤ÎƱ¤¸¥Ç¡¼¥¿·²¤ò¤Þ¤È¤Þ¤Ã¤¿¤â¤Î¤ò¥³¥ì¥¯¥·¥ç¥ó¤È¤¤¤¤¤Þ¤¹¡£
C# ¤Ë¤Ï¥³¥ì¥¯¥·¥ç¥ó¤ò´ÉÍý¤¹¤ëÊýË¡¤È¤·¤Æ¡¢Dictinary(¥Ç¥£¥¯¥·¥ç¥Ê¥ê¡¼) ¤È List(¥ê¥¹¥È) ¤¬¤¢¤ê¤Þ¤¹¡£
¡¡List ¥¯¥é¥¹¤Ï <T> ¤Ë¥¸¥§¥Í¥ê¥Ã¥¯·¿¡ÊǤ°Õ¤Î·¿¡Ë¤ò»ØÄꤷ¤Æ¡¢Æ±¤¸¥Ç¡¼¥¿·¿¤ò¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤ò»ý¤Ä¥¯¥é¥¹¤Ç¤¹¡£
ÇÛÎó¤È°Û¤Ê¤ê¡¢Í×ÁǤò¼«Í³¤ËÄɲᦺï½ü¤Ç¤¤Þ¤¹¡£(Í×ÁÇ¿ô¤¬²ÄÊѤ¹¤ë)
List ¤Ï¥µ¥¤¥º(Ťµ)¤¬²ÄÊѲÄǽ¤ÊÇÛÎó¤Î¥¤¥á¡¼¥¸¤Ç¤¹¡£
¡¡List ¤òÍøÍѤ¹¤ë¾ì¹ç¤Ë¤ÏÇÛÎó¤ÈƱÍͤ˽é´ü²½¤¬²Äǽ¤Ç¤¹¤¬¡¢List¤Ç¤Ï½é´ü²½»þ¤ËÍ×ÁÇ¿ô¤ÎÀë¸À¤¬ÉÔÍפǤ¹¡£
¡ãÇÛÎó¤Î½é´ü²½¡ä
ImageData[] ImageDatas = new ImageData[3]; // <= Í×ÁÇ¿ô¤ÎÀë¸À¤¬É¬Í×
¡ãList ¤Î½é´ü²½¡¡ä
List<ImageData> ImageDataList = new List<ImageData>(); // <= Í×ÁÇ¿ô¤ÎÀë¸À¤¬ÉÔÍ×
¡ãList ¤Î½é´ü²½¢¡¡¤³¤Á¤é¤Ç¤â½é´ü²½¤Ç¤¤Þ¤¹¡ä
List<ImageData> ImageDataList = new (); // <= Í×ÁÇ¿ô¤ÎÀë¸À¤¬ÉÔÍ×
¡¡¤½¤Î¤¿¤á´ðËÜŪ¤Ë¤Ï¡¢Í½¤áÍ×ÁÇ¿ô¤Î³ÎÄꤷ¤Æ¤¤¤ë¥Ç¡¼¥¿¤ò°·¤¦¾ì¹ç¤Ë¤ÏÇÛÎó¤ò¡¢Í×ÁÇ¿ô¤¬Ì¤³ÎÄê¤Ç¤¢¤Ã¤¿¤ê²ÄÊÑŤǤ¢¤ë¥Ç¡¼¥¿¤Ë¤Ä¤¤¤Æ¤ÏList¤òÍøÍѤ¹¤ë¤è¤¦¤Ë¹Í¤¨¤Æ¤¯¤À¤µ¤¤¡£
»²¹Í¥µ¥¤¥È
.net columnÍÍ
¡Ú½é´ü²½¤ÎÊýË¡¡ÛC#¤ÇÇÛÎó¤ä¥ê¥¹¥È¤ò½é´ü²½¤¹¤ë¤Ë¤Ï¡©
¡¡public ½¤¾þ»Ò¤Ë¤Æ List ¤òÀë¸À¤¹¤ë¤³¤È¤Ç¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¾å¤Ç¥µ¥¤¥º¤ÎÊѹ¹¤¬²Äǽ¤Ç¤¹¡£
¡¡Î㤨¤Ð¥Ç¡¼¥¿¤ò£³¤Äʬºî¤Ã¤ÆÅÐÏ¿¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ç List ¤Î¥µ¥¤¥º¤ò 3 ¤ËÀßÄꤹ¤ì¤Ð
ImageData ¥¯¥é¥¹¤¬ 3 ¤Ä¡¢Element 0 ¡Á Element 2 ¤È¤·¤ÆºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢¤³¤³¤Ë²èÁü´ØÏ¢¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤º¤Ä¡¢¹ç·×£³¤ÄʬÅÐÏ¿¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¡ãImageData ¥¯¥é¥¹¤ò°·¤¦ List¡ä
public List<ImageData> ImageDataList = new ();
¡¡ImageDataSO ¥¹¥¯¥ê¥×¥È¤ò¸µ¤Ë ImageDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Þ¤¹¡£
ImageDataSO ¥¹¥¯¥ê¥×¥È¤ËÍÑ°Õ¤·¤Æ¤¢¤ë ImageData ·¿¤Î List ¤Ç¤¢¤ë ImageDataList ÊÑ¿ô¤¬¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÌò³ä¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£
¡ã¥¯¥é¥¹¤Î¥ê¥¹¥È²½¤Ë¤è¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹ºîÀ®¡ä
¡¡ImageData ¥¯¥é¥¹¤Ï£±¤Ä¤Î¥Ç¡¼¥¿¾ðÊó¤ò°·¤¦¤³¤È¤¬½ÐÍè¤Þ¤¹¡£º£²ó¤Ç¤¢¤ì¤Ð²èÁü´ØÏ¢¤Î£±¤Äʬ¤Î¾ðÊó¤Ç¤¹¡£
¤½¤Î¤¿¤áÊ£¿ô¤Î²èÁü´ØÏ¢¤Î¾ðÊó¤ò°·¤¦É¬Íפ¬¤¢¤ëº£²ó¤Î¤è¤¦¤Ê¾ì¹ç¤Ë¤Ï¡¢¤½¤Îʬ¤À¤± ImageData ¥¯¥é¥¹¤òÄɲ䷤ƺîÀ®¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
¡¡¤½¤ì¤é¤ò´ÉÍý¤¹¤ë¤¿¤á¤Ë ImageData ·¿¤Î List ¤òºî¤ê¡¢¤Þ¤È¤á¤Æ´ÉÍý¤ò½ÐÍè¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤¹¡£
¤³¤³¤ÇÂçÀڤʤ³¤È¤Ï¡¢£±¤Ä£±¤Ä¤ÎÊ̤ÎÊÑ¿ô¤Ë¸ÄÊÌ¤Ë ImageData ¤¬Â¸ºß¤·¤Æ¤¤¤¿¤Î¤Ç¤Ï¤Þ¤È¤á¤Æ´ÉÍý¤·¤Æ¤¤¤ë¤³¤È¤Ë¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
ImageData¤Î¥ê¥¹¥È¤È¤Ï¤¹¤Ê¤ï¤Á¡¢ImageData¤ò¤Þ¤È¤á¤Æ°·¤Ã¤Æ¤¤¤ë¥Ç¡¼¥¿¤Î½¸¹çÂΤˤʤê¤Þ¤¹¤Î¤Ç¡¢¤³¤³¤Ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤ÆÌò³ä¤òÀ®Î©¤µ¤»¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈºîÀ®Á°¤Ë¡¢Project Æâ¤Ë Datas ¤Ê¤É¤Î¥Õ¥©¥ë¥À¤òºîÀ®¤·¤Æ¤ª¤¯¤È´ÉÍý¤·¤ä¤¹¤¯¤Ê¤ê¤Þ¤¹¡£
¡¡Datas ¥Õ¥©¥ë¥ÀÆâ¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤¡¢Create ¢ª Create ImageDataSO ¤òÁªÂò¤·¤Þ¤¹¡£
¥Õ¥©¥ë¥ÀÆâ¤Ë ImageDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥»¥Ã¥È¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£Ì¾Á°¤Ï¤½¤Î¤Þ¤Þ¤ÇÌäÂꤢ¤ê¤Þ¤»¤ó¡£
¥á¥Ë¥å¡¼
Datas ¥Õ¥©¥ë¥À
¡¡¤³¤Î¥¢¥¤¥³¥ó¤Î·Á¤¬°ã¤¦¥Õ¥¡¥¤¥ë¤¬¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤³¤ì¤Ï¥¢¥»¥Ã¥È¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤ë¾ðÊó¤Ç¤¢¤ë¤³¤È¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
¡¡ºîÀ®¤µ¤ì¤¿ ImageDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
ImageDataSO ¥¹¥¯¥ê¥×¥È¤Ë¤ÆÀë¸À¤·¤¿ ImageDataList ÊÑ¿ô¤¬¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ëɽ¼¨¤µ¤ì¤Æ¡¢ Size¤¬ 0 ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¤³¤ì¤¬¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ÎÃæ¿È¤Ç¤¹¡£
¡¡Size ¤ËǤ°Õ¤Î¿ô¤òÆþÎϤ¹¤ë¤È¡¢Æ±¿ô¤Î Element ¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤¬ List ¤Ç´ÉÍý¤¹¤ë ImageData ¥¯¥é¥¹¤Î¾ðÊ󷲤ˤʤê¤Þ¤¹¡£
¡¡ImageDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥»¥Ã¥È¤òÁªÂò¤·¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤é ImageData ¤Ë¥¢¥¤¥Æ¥à¤Î¾ðÊó¤òÅÐÏ¿¤·¤Þ¤¹¡£
¡¡¤Þ¤º¤Ï¥Ç¡¼¥¿¤ò£³¤ÄʬÅÐÏ¿¤·¤Æ¤ª¤¤¿¤¤¤È»×¤¤¤Þ¤¹¡£
ImageDataList ÊÑ¿ô¤Î Size ¤ò 3 ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£Element 0 ¡Á 2 ¤¬²¼¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
¡¡Element ¤È¤Ï List ¤ÎÍ×ÁÇ(Ãæ¿È)¤Î¤³¤È¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢Element £±¤Ä¤¬ ImageData £±¤Ä¤Ë¤Ê¤ê¤Þ¤¹¡£Element ¤ÎÈÖ¹æ¤Ï 0 ¤«¤é»Ï¤Þ¤ê¤Þ¤¹¡£
¡¡°Ê¾å¤Î¤³¤È¤«¤é¡¢£±¤Ä¤Î Element ¤Ë¤Ï£±¤Ä¤Î ImageData ¥¯¥é¥¹¤ÎÆâÍƤòÀßÄê¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¤È¤¡¢ImageData ¥¯¥é¥¹¤Î¾å¤Ë [Serializable] °À¤òÀë¸À¤·¤Æ¤¤¤ë¤Î¤Ç¡¢ImageData ¥¯¥é¥¹¤ÎÆâÍƤ¬¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ëɽ¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
[Serializable] °À¤ò³èÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤é¾ðÊó¤ò£±¤Ä¤º¤Ä¡¢ImageData ñ°Ì¤ÇÅÐÏ¿½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¡¡¤Þ¤º¤Ï id ÊÑ¿ô¤ò 0 ¤«¤éÏ¢ÈÖ¤ÇÀßÄꤷ¡¢Æ±¤¸ÈÖ¹æ¤ò»È¤ï¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡³Æ¿ôÃͤä²èÁü¤ÏǤ°Õ¤Ç¤¹¤¬¡¢No ¤ÎÃͤÀ¤±¤Ï°Û¤Ê¤ëÈÖ¹æ¤ÇÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤Ç¤¤ì¤Ð 0 ¤«¤éÏ¢ÈÖ¤¬ÍýÁۤǤ¹¡£
¤³¤ÎÈÖ¹æ¤Ï¥Ç¡¼¥¿ÍѤθÄÂÎÈÖ¹æ¤È¤·¤ÆÍøÍѤ¹¤ë²ÄǽÀ¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢Æ±¤¸ÈÖ¹æ¤ò½ÅÊ£¤·¤ÆÀßÄꤷ¤Æ¤·¤Þ¤¦¤È¡¢
Ʊ¤¸ÈÖ¹æ¤Î¸ÄÂΤ¬Ê£¿ô¸ºß¤¹¤ë¤³¤È¤Ë¤Ê¤ê¡¢ÈÖ¹æ¤Ë¤è¤Ã¤Æ¥Ç¡¼¥¿¤òÆÃÄꤹ¤ë¤³¤È¤¬½ÐÍè¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
¡¡textureMaterial ÊÑ¿ô¤Ë¤Ï¡¢ºîÀ®¤·¤¿¥Þ¥Æ¥ê¥¢¥ë¤ò¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
¤³¤Î¥Þ¥Æ¥ê¥¢¥ë¤ò£³£Ä¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Þ¥Æ¥ê¥¢¥ë¤ËŬÍѤ·¤Æ¸«¤¿ÌܤòÊѤ¨¤Þ¤¹¡£
¡¡spriteImage ÊÑ¿ô¤Ë¤Ï¡¢¥Þ¥Æ¥ê¥¢¥ë¤ËÅÐÏ¿¤·¤Æ¤¤¤ë²èÁü¤ÈƱ¤¸ Sprite ¥Õ¥¡¥¤¥ë¤Î²èÁü¤ò¥¢¥µ¥¤¥ó¤·¤Æ¤¯¤À¤µ¤¤¡£
¤³¤Î²èÁü¤¬¥Ü¥¿¥ó¤Î¥µ¥à¥Í¥¤¥ë²èÁü¤È¤·¤ÆÍøÍѤµ¤ì¤Þ¤¹¡£
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü(¥µ¥ó¥×¥ë¡£¤³¤Î²èÁü¤Î¤è¤¦¤Ë¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó)
¡¡¤³¤Î¤è¤¦¤Ë¡¢¥Þ¥Æ¥ê¥¢¥ë¤È¥Ü¥¿¥ó¤Î²èÁü¤Î¾ðÊó¤ò£±¤Ä¤Î¥Ç¡¼¥¿Æ⤬¤Þ¤È¤á¤Æ´ÉÍý¤·¤Æ¤ª¤¯¤³¤È¤Ç¾ðÊóƱ»Î¤Î´ØÏ¢À¤¬½ÐÍè¤Þ¤¹¡£
¤½¤ì¤ò id ÈÖ¹æ¤Ç»ØÄꤷ¤ÆÍøÍѤ¹¤ë¤è¤¦¤Ê»ÅÁȤߤˤʤê¤Þ¤¹¡£
¡¡ºîÀ®¤·¤¿¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥»¥Ã¥È¤Ï¡¢¤½¤Î¤Þ¤Þ¤Ç¤Ï¥¹¥¯¥ê¥×¥È¤Ç»²¾È¤·¤ÆÍøÍѤǤ¤Þ¤»¤ó¡£
¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î·¿¤ÎÊÑ¿ô¤òÀë¸À¤·¤Æ¥¢¥»¥Ã¥È¤ò¥¢¥µ¥¤¥ó½ÐÍè¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡´ÉÍý¤ÎÊýË¡¤Ï¤¤¤¯¤Ä¤«¤¢¤ê¡¢º£²ó¤Ïº£¸å¤â¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤¬Áý¤¨¤ë¤³¤È¤òÁÛÄꤷ¡¢
Ê£¿ô¤Î¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò´ÉÍý¤¹¤ë¤¿¤á¤ÎÀìÍѤΥ¯¥é¥¹¤È¤·¤Æ DataBaseManager ¤òÍÑ°Õ¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ï¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤ÆÍøÍѤǤ¤Þ¤¹¤¬¡¢É¬Íפʥǡ¼¥¿¤ò¸«¤Ä¤±¤ë¤³¤È¤¬½ÐÍè¤Ê¤±¤ì¤Ð³èÍѤ·¤Æ¤¤¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤»¤ó¡£
¤½¤Î¤¿¤á¡¢¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤Î¾ðÊó¤ò¸¡º÷¤·¡¢É¬ÍפʾðÊó¤òÃê½Ð¤¹¤ë¤¿¤á¤Î½èÍý¤ò¡¢¥á¥½¥Ã¥Éñ°Ì¤Ç¤Þ¤È¤á¤ÆÍÑ°Õ¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
¡¡¸¡º÷¤¹¤ëµ¡Ç½¤òͤ·¤¿»È¤¤Êý¤òÁÛÄꤷ¤Æ¤¤¤ë¤¿¤á¡¢DataBaseManager ¥¯¥é¥¹¤Ï¥·¥ó¥°¥ë¥È¥ó¥¯¥é¥¹¤È¤·¤ÆºîÀ®¤·¤Æ¤¤¤Þ¤¹¡£
¥·¥ó¥°¥ë¥È¥ó¥¯¥é¥¹¤È¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢³°Éô¤Î¥¯¥é¥¹¤«¤é¤Î¥¢¥¯¥»¥¹¤¬ÍưפǤ¢¤ë¤¿¤á¡¢
ÍøÊØÀ¤Î¹â¤¤¥¯¥é¥¹¤Ëº£²ó¤Î¤è¤¦¤Ê¸¡º÷ÍѤΥ᥽¥Ã¥É¤òºîÀ®¤·¤Æ¤ª¤¯¤È¡¢Èó¾ï¤Ë»È¤¤¾¡¼ê¤Î¤è¤¤¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£
DataBaseManager.cs
¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£
¡¡List¤Ë¤Ï Find ¤È¤¤¤¦¥á¥½¥Ã¥É¤¬ÍÑ°Õ¤µ¤ì¤Æ¤Þ¤¹¡£
List Æâ¤ÎÍ×ÁǤòÀèƬ¤«¤é¸¡º÷¤·¤Æ¡¢»ØÄꤷ¤¿¾ò·ï¤Ë¹çÃפ·¤¿ºÇ½é¤ÎÍ×ÁÇ£±¤Ä¤ò¼è¤ê½Ð¤·¤ÆÌá¤êÃͤȤ·¤ÆÊÖ¤·¤Æ¤¯¤ì¤ë½èÍý¤Ç¤¹¡£
Find ¥á¥½¥Ã¥É¤Ï foreach ʸ¤Çµ½Ò¤¹¤ëÆâÍƤÈƱ¤¸½èÍý¤ò£±¹Ô¤Ç½èÍý¤Ç¤¤Þ¤¹¡£
Find ¤Î¾ì¹ç
/// <summary> /// »ØÄꤷ¤¿ÈÖ¹æ¤Î¥Þ¥Æ¥ê¥¢¥ë¤Î¼èÆÀ /// </summary> /// <param name="dataNo"></param> /// <returns></returns> public Material GetMaterial(int dataNo) { return imageDataSo.imageDataList.Find(x => x.id == dataNo).textureMaterial; }
foreach ¤ÇƱ¤¸½èÍý¤ò½ñ¤¤¤¿¾ì¹ç
foreach (ImageData data in imageDataSo.imageDataList) { if (data.id == dataNo) { return data.textureMaterial; } }
¡¡¤³¤Î£²¤Ä¤Î½èÍý¤ÏƱ¤¸ÆâÍƤˤʤê¤Þ¤¹¡£
ºÇ½é¤Ë¹çÃפ·¤¿Ãͤ¬Âоݤˤʤê¤Þ¤¹¤Î¤Ç¡¢¤Þ¤È¤á¤ÆÊ£¿ô¼èÆÀ¤·¤¿¤¤¾ì¹ç¤ä¡¢¹çÃפ¹¤ë¾ò·ï¤òËþ¤¿¤¹Í×ÁǤ¬Ê£¿ô¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤Î½èÍý¤À¤±¤Ç¤Ï¼ÂÁõ¤Ç¤¤Þ¤»¤ó¡£
»²¹Í¥µ¥¤¥È
Samurai BlogÍÍ
¡ÚC#ÆþÌç¡ÛList¤ÎÍ×ÁǤò¸¡º÷¤¹¤ëFind¤Î»È¤¤Êý(FindAll/FindIndex)
¡¡¿·¤·¤¯Àë¸À¤·¤¿ ImageDataSO ÊÑ¿ô¤Ë¡¢Datas ¥Õ¥©¥ë¥À¤Ë¤¢¤ë ImageDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥»¥Ã¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
¡¡¤³¤ì¤Ë¤è¤ê¡¢¥²¡¼¥àÆâ(¥¹¥¯¥ê¥×¥ÈÆâ)¤Ç¡¢ImageDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ðÊó¤òÍøÍѽÐÍè¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü
¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£
¡¡=>¡¡¼¡¤Ï¡¡AR¶õ´Ö¤Ë¥ê¥¹¥È¤«¤éÁªÂò¤·¤¿²èÁü¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¤¹¤ë¤¡¡¤Ç¤¹¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- ¥×¥í¥°¥é¥ß¥ó¥°
¥³¥á¥ó¥È¤ò¤«¤¯