Unity¤Ë´ØÏ¢¤¹¤ëµ­»ö¤Ç¤¹

Àß·×


¡¡Oculus Integration ¥¢¥»¥Ã¥È¤Îµ¡Ç½¤òÍøÍѤ·¤Æ¡¢VR ¶õ´Ö¤Ë¥Ü¥¿¥ó¤òÀßÃÖ¤·¡¢
¥³¥ó¥È¥í¡¼¥é¡¼¤ÎÀèü¤«¤é Ray ¤òȯ¼Í¤·¤Æ¡¢Ray ¤¬Åö¤¿¤Ã¤¿°ÌÃ֤ˤ¢¤ë¥Ü¥¿¥ó¤ò²¡¤»¤ë¤è¤¦¤Ë¤¹¤ëµ¡Ç½¤ò¼ÂÁõ¤·¤Þ¤¹¡£

¡¡Ä̾ï¤Î¥²¡¼¥à¤È°Û¤Ê¤ê¡¢VR ¶õ´Ö¤Ç¤Ï UI ´ØÏ¢¤ò¶õ´ÖÆâ¤Ëɽ¼¨¤µ¤»¤¿Êý¤¬¥²¡¼¥à¤ÎÎ׾촶¡¦VR ¤ÎÆÃÊÌ´¶¤¬½Ð¤Þ¤¹¡£

¡¡º£²ó¤Ï¤½¤ÎÀè¶î¤±¤È¤·¤Æ¡¢VR ¶õ´Ö¤Ë UI ¤Î¥Ü¥¿¥ó¤òɽ¼¨¤µ¤»¤Æ¡¢¤½¤Î¥Ü¥¿¥ó¤ò¶õ´ÖÆâ¤Ç²¡¤¹µ¡Ç½¤òÀ߷פ·¤Þ¤¹¡£
¿¤¯¤Îµ¡Ç½¤Ï Oculus Integration ¥¢¥»¥Ã¥È¤Ë¤è¤Ã¤ÆÊ䤦¤³¤È¤¬¤Ç¤­¤Þ¤¹¤Î¤Ç¡¢Â­¤ê¤Ê¤¤Éôʬ¤òÊäŶ¤·¤Æ´°À®¤µ¤»¤Þ¤¹¡£

¡¡Ãʳ¬Åª¤Ë¼ÂÁõ¤ò¹Ô¤Ã¤Æ¤¤¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢Àß·×¼ê½ç¤ò¤Þ¤È¤á¤Æ¤ª¤­¤Þ¤¹¡£


¡¡¡¦¥×¥ì¥¤¥ä¡¼¤Îµ¡Ç½
¡¡¡¡¡¡¡¡=>¡¡Oculus Integration ¥¢¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë OVRPlayerController(OVRCameraRig) ¥×¥ì¥Õ¥¡¥Ö¤òÍøÍѤ¹¤ë
¡¡¡¡¡¡¡¡¡¡¡¡VR ¶õ´ÖÍѤΥ«¥á¥éµ¡Ç½¤â´Þ¤Þ¤ì¤ë
¡¡
¡¡¡¦Ray ¤òȯ¼Í¤¹¤ëµ¡Ç½
¡¡¡¡¡¡¡¡=>¡¡Oculus Integration ¥¢¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë UIHelper ¥×¥ì¥Õ¥¡¥Ö¤È¡¢¤½¤ÎÃæ¤Ë¤¢¤ë¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÍøÍѤ¹¤ë
¡¡¡¡¡¡¡¡¡¡¡¡OVRPlayerController(OVRCameraRig) ¤Îµ¡Ç½¤âÍøÍѤ·¤Æ¡¢VR ÍѤΥ³¥ó¥È¥í¡¼¥é¡¼¤«¤é Ray ¤òȯ¼Í¤¹¤ë

¡¡¡¦Ray ¤òǧ¼±¤¹¤ëµ¡Ç½
¡¡¡¡¡¡¡¡=>¡¡Canvas Æâ¤Î¥Ü¥¿¥ó¤ò Ray ¤¬Ç§¼±¤Ç¤­¤ë¤è¤¦¤Ë¡¢Oculus Integration ¥¢¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë OVR Raycaster ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÍøÍѤ¹¤ë

¡¡¤³¤Î¾¤Ë¡¢¥Ü¥¿¥ó¤Ë¥¢¥¿¥Ã¥Á¤¹¤ë¥¹¥¯¥ê¥×¥È¤È¡¢Canvas ¤Îɽ¼¨À©¸æ¤ò¹Ô¤¦¥¹¥¯¥ê¥×¥È¤ò¼«ºî¤·¤Þ¤¹¡£

¡¡½çÈ֤˼ÂÁõ¤ò¤·¤Æ¤¤¤­¤Þ¤¹¤Î¤Ç¡¢Á´ÂΤÎή¤ì¤ò¥¤¥á¡¼¥¸¤·¤Ê¤¬¤éÀ©ºî¤ò¹Ô¤Ã¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£



¥²¡¼¥à¤ÎÉñÂæ¤ò½àÈ÷¤¹¤ë


¡¡¥×¥ì¥¤¥ä¡¼¤Ê¤É¤òÀßÃÖ¤¹¤ë¤¿¤á¤ÎÃÏÌÌÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Þ¤¹¡£

¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Î¶õ¤¤¤Æ¤¤¤ë¾ì½ê¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢3D > Plane ¤òÁªÂò¤·¤Þ¤¹¡£

¡¡¥µ¥ó¥×¥ë¤È¤·¤ÆºîÀ®¤¹¤ë¤Î¤Ç¡¢¤È¤¯¤Ë¥µ¥¤¥º¤Ê¤É¤âÄ´À°¤»¤º¤È¤âÌäÂꤢ¤ê¤Þ¤»¤ó¡£


OVRPlayerController ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÇÛÃÖ¤·¡¢ÀßÄê¤ò¹Ô¤¦


¡¡Oculus Integration ¥¢¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¥×¥ì¥Õ¥¡¥Ö¤ò³èÍѤ·¤Þ¤¹¡£
²¼µ­¤Î¥Õ¥©¥ë¥À¤Ë¤¢¤ë OVRPlayerController ¥×¥ì¥Õ¥¡¥Ö¤ò¥Ò¥¨¥é¥ë¥­¡¼¤Ë¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤ÆÀßÃÖ¤·¤Þ¤¹¡£

Assets/Oculus/VR/Prefabs/OVRPlayerController.prefab


¡¡¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï OVRCameraRig ¤È¤¤¤¦¥«¥á¥é¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤â¤Õ¤¯¤Þ¤ì¤Æ¤¤¤ë¤¿¤á¡¢
Main Camera ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ïºï½ü¤¹¤ë¤«¡¢Èó¥¢¥¯¥Æ¥£¥Ö¤Î¾õÂ֤ˤ·¤Æ¤ª¤­¤Þ¤¹¡£

¡¡OVRPlayerController ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë Rigidbody ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤È CapsuleCollider ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÄɲä·¤Þ¤¹¡£
Rigidbody ¤Ï Constraints ¤ÎÀßÄê¤Î Rotation ¤ÎÉôʬ¤Ë¤¹¤Ù¤Æ¥Á¥§¥Ã¥¯¤òÆþ¤ì¤Æ¤ª¤­¤Þ¤¹¡£
¥³¥é¥¤¥À¡¼¤Î¥µ¥¤¥º¤ÏŬµ¹Ä´À°¤·¤Æ¤¯¤À¤µ¤¤¡£

OVRPlayerController ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁüÎã



¡¡¤Ê¤ª¡¢¼«ºî¤Î PlayerController ¤Î¾ì¹ç¤âºî¤êÊý¤ÏƱ¤¸¤Ç¤¹¡£


¼«ºî¤Î OVRPlayerController ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁüÎã





¡¡¤Ä¤Å¤¤¤Æ¡¢ÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£
OVRPlayerController ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òŸ³«¤·¤Æ³¬ÁØÆâ¤ò¸«¤ì¤ë¾õÂ֤ˤ·¤Þ¤¹¡£

¡¡OVRPlayerController > OVRCameraRig > TrackingSpace > LeftHandAnchor > LeftControllerAnchor ¤Î
»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ¡¢OculusTouchForQuestAndRiftS_Left ¥â¥Ç¥ë¤òÄɲä·¤Þ¤¹¡£

OculusTouchForQuestAndRiftS_Left ¥â¥Ç¥ë¤Î¥Ñ¥¹
Assets/Oculus/VR/Meshes/OculusTouchForQuestAndRiftS/OculusTouchForQuestAndRiftS_Left.fbx



¡¡¤ª¤Ê¤¸¤è¤¦¤Ë¡¢OVRPlayerController > OVRCameraRig > TrackingSpace > RightHandAnchor > RightControllerAnchor ¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ
OculusTouchForQuestAndRiftS_Right ¥â¥Ç¥ë¤òÄɲä·¤Þ¤¹¡£

OculusTouchForQuestAndRiftS_Right ¥â¥Ç¥ë¤Î¥Ñ¥¹
Assets/Oculus/VR/Meshes/OculusTouchForQuestAndRiftS/OculusTouchForQuestAndRiftS_Right.fbx


¥Ò¥¨¥é¥ë¥­¡¼²èÁü



¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


¥ï¡¼¥ë¥É¶õ´Ö¤Ë Canvas ¤òÀßÃÖ¤·¤ÆÀßÄê¤ò¹Ô¤¦


¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Ë Canvas ¤òºîÀ®¤·¤Þ¤¹¡£°ì½ï¤Ë EventSystem ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬ºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢
EventSystem ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¥Ò¥¨¥é¥ë¥­¡¼¤«¤éºï½ü¤·¤Æ¤¯¤À¤µ¤¤¡£¸åÄøÊ̤Υ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤è¤êÂåÍѤ·¤Þ¤¹¡£

¡¡¤½¤Î¤Þ¤Þ¤Ç¤Ï VR ¶õ´Ö¤ËÂбþ¤·¤Ê¤¤¤¿¤á¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£


¡¡
¡¡RenderMode ¤ò World Space ¤ËÊѹ¹¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢VR ¶õ´ÖÆâ¤Ë Canvas ¤¬ÇÛÃÖ¤µ¤ì¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¥µ¥¤¥º¤¬Â礭¤¯¤Ê¤ë¤¿¤á¡¢Scale ¤ò¾®¤µ¤¯¤·¤ÆÄ´À°¤·¡¢Ç¤°Õ¤Î°ÌÃÖ¤ËÀßÃÖ¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡EventCamera ¤Ë¤Ï OVRPlayerController > OVRCameraRig > TrackingSpace > CenterEyeAnchor ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
CenterEyeAnchor ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï Camera ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤ì¤ò Canvas ¤òÉÁ²è¤¹¤ë Camera ¤Î¾ðÊó¤È¤·¤ÆÍøÍѤ¹¤ëÀßÄê¤Ë¤·¤Þ¤¹¡£
ºÇ¸å¤Ë Graphic Raycaster ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò Remove ¤¹¤ë¤«¡¢Èó¥¢¥¯¥Æ¥£¥Ö¤Î¾õÂ֤ˤ·¡¢Âå¤ï¤ê¤Ë OVR Raycaster ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤·¤Þ¤¹¡£
¤³¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï Oculus Integration ¥¢¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤â¤Î¤Ç¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢VR ¶õ´ÖÆâ¤Ç¤Î Ray ¤ò´¶ÃΤǤ­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£


¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



Scene ¥Ó¥å¡¼²èÁü


¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


Canvas Æâ¤Ë Button ¤òºîÀ®¤·¡¢ÀßÄê¤ò¹Ô¤¦


¡¡Ä̾ï¤Î UI ¤òºîÀ®¤¹¤ë¤Î¤ÈƱ¤¸¤è¤¦¤Ë¡¢Canvas ¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ Button ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Þ¤¹¡£
¤³¤Î Button ¤Ë Ray ¤òȯ¼Í¤·¤Æ¡¢Ray ¤¬Åö¤¿¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ë¡¢Button ¤ò¥¯¥ê¥Ã¥¯¤µ¤»¤Æ Button ¤ËÅÐÏ¿¤µ¤ì¤¿¥¤¥Ù¥ó¥È(¥á¥½¥Ã¥É)¤ò¼Â¹Ô¤·¤Þ¤¹¡£

¡¡¤Þ¤¿ BoxCollider ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÄɲ䷤ơ¢¥Ü¥¿¥ó¤Ë¥³¥é¥¤¥À¡¼¤òÀßÄꤷ¤Þ¤¹¡£
¥Ü¥¿¥ó¤Î¥µ¥¤¥º¤Ë¹ç¤ï¤»¤ÆÄ´À°¤·¤ÆÀßÄê¤ò¤ª¤³¤Ê¤Ã¤Æ¤¯¤À¤µ¤¤¡£


¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



Scene ¥Ó¥å¡¼²èÁü


¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


Button ¤ÎÀ©¸æ¤ò¹Ô¤¦¤¿¤á¤Î ItemButton ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡Button ¤Ë Ray ¤¬Åö¤¿¤Ã¤Æ¥Ü¥¿¥ó¤ò²¡¤¹¤³¤È¤¬½ÐÍ褿ºÝ¤Ë¡¢¼ÂºÝ¤Ë¼Â¹Ô¤¹¤ë½èÍý¤òÀ©¸æ¤¹¤ë¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£
½èÍý¤ÎÆâÍƤϥܥ¿¥ó¤Ë¤è¤êÊѤï¤ë¤¿¤á¡¢¤Þ¤º¤Ï¥Ü¥¿¥ó¤Î²¡²¼½èÍý¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤«¤ò³Îǧ¤¹¤ë¤¿¤á¤Î¥á¥½¥Ã¥É¤òºî¤ê¡¢
¤½¤ÎÃæ¤Ç¥Ç¥Ð¥Ã¥°¤ò¼Â¹Ô¤·¤ÆµóÆ°³Îǧ¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡¼ÂºÝ¤Ë¥á¥½¥Ã¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤Æ¤¤¤ë¤³¤È¤¬³Îǧ¤Ç¤­¤¿¤é¡¢¥á¥½¥Ã¥É¤ÎÆâÍƤò¥Ü¥¿¥ó¤ò²¡¤·¤¿ºÝ¤Ë½èÍý¤·¤¿¤¤ÆâÍƤ˽ñ¤­Âؤ¨¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£


ItemButton.cs


¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£


Button ¤Ë ItemButton ¥¹¥¯¥ê¥×¥È¤ò¥¢¥¿¥Ã¥Á¤¹¤ë


¡¡Button ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë ItemButton ¥¹¥¯¥ê¥×¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥¿¥Ã¥Á¤·¤Þ¤¹¡£




¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


UIHelper ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÇÛÃÖ¤¹¤ë


¡¡Oculus Integration ¥¢¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë UIHelper ¥×¥ì¥Õ¥¡¥Ö¤ò¥Ò¥¨¥é¥ë¥­¡¼¤Ë¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤ÆÇÛÃÖ¤·¤Þ¤¹¡£
¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È·²¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢Ray ¤òȯ¼Í¤·¡¢¥²¡¼¥à²èÌÌÆâ¤Ë²Ä»ë²½¤µ¤»¤Æ¡¢¥Ü¥¿¥ó¤òÁàºî¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£

Assets/Oculus/SampleFramework/Core/DebugUI/Prefabs/UIHelpers.prefab


¥Ò¥¨¥é¥ë¥­¡¼²èÁü



UIHelper ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ò¹Ô¤¦


¡¡UIHepler ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï»Ò¥ª¥Ö¥¸¥§¥¯¥È¤¬£³¤Ä¤¢¤ê¤Þ¤¹¡£
¤³¤Î¤¦¤Á¡¢LaserPointer ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È EventSystem ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë³Æ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î½¤Àµ¤ò¹Ô¤¤¤Þ¤¹¡£



¡¡LaserPointer ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤ê LineRenderer ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£
¡¡
¡¡¤Ê¤ª¡¢½é´üÀßÄê¤Ç LineRenderer ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬Èó¥¢¥¯¥Æ¥£¥Ö¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ï¡¢VR ¥³¥ó¥È¥í¡¼¥é¡¼¤«¤éÆÃÄê¤Î¥Ü¥¿¥ó¤ò²¡¤·¤¿¤È¤­¤À¤±
LineRenderer ¤¬¥¢¥¯¥Æ¥£¥Ö¤Ë¤Ê¤ê¡¢¤½¤Î¸å¡¢²¡¤·¤Æ¤¤¤Ê¤¤´Ö¤ÏºÆÅÙ¡¢Èó¥¢¥¯¥Æ¥£¥Ö¤Ë¤¹¤ë¤¿¤á¤Ç¤¹¡£
¤è¤Ã¤Æ¡¢¤³¤ÎÉôʬ¤Ï¤³¤Î¸å¤ËºîÀ®¤¹¤ë¥¹¥¯¥ê¥×¥È¤ÇÀ©¸æ¤ò¹Ô¤¦¤¿¤á¡¢Èó¥¢¥¯¥Æ¥£¥Ö¤Î¤Þ¤Þ¤Ç¹½¤¤¤Þ¤»¤ó¡£


¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



¡¡Color ¤ÎÉôʬ¤òÀßÄꤹ¤ë¤È¡¢Ray ¤òÅê¼Í¤·¤¿ºÝ¤Ëɽ¼¨¤µ¤ì¤ë¥é¥¤¥ó¤Î¿§¤òÀßÄê¤Ç¤­¤Þ¤¹¡£
½é´ü¤Î¿§¤ÏÇò¤Ç¤¹¤¬¡¢´õ˾¤Ç¤¢¤ì¤Ð¡¢Ç¤°Õ¤Î¿§¤ËÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥°¥é¥Ç¡¼¥·¥ç¥ó¤â²Äǽ¤Ç¤¹¡£

¡¡Materials ¤ÎÇÛÎó¤¬ 1 ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¤¬¡¢Element 0 ¤Ë¤Ï Missing ¤È¤Ê¤Ã¤Æ¤ª¤ê¡¢¥Þ¥Æ¥ê¥¢¥ë¤Î¾ðÊ󤬤¢¤ê¤Þ¤»¤ó¡£
¤³¤Á¤é¤âǤ°Õ¤Î¥Þ¥Æ¥ê¥¢¥ë¤ò¥¢¥µ¥¤¥ó¤·¤Æ¤¯¤À¤µ¤¤¡£¼«ºî¤·¤Æ¤â¹½¤¤¤Þ¤»¤ó¡£¤³¤ÎÀßÄê¤ò¹Ô¤ï¤Ê¤¤¤È LineRenderer ¤¬ÉÁ²è¤ò¹Ô¤ï¤Ê¤¤¤Î¤ÇÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
¤³¤ÎÎã¤Ç¤Ï¡¢Unity ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë Sprites - Default ¥Þ¥Æ¥ê¥¢¥ë¤òÀßÄꤷ¤Æ¤¤¤Þ¤¹¡£


¡¡°Ê¾å¤Ç¡¢LineRenderer ¤ÎÀßÄê¤Ï´°Î»¤Ç¤¹¡£


¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü




¡¡Â³¤¤¤Æ EventSystem ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤ê¡¢OVRInputModule ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡Canvas ºîÀ®»þ¤Ë¼«Æ°Åª¤Ë¥Ò¥¨¥é¥ë¥­¡¼¤ËÄɲ䵤줿 EventSystem ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºï½ü¤·¤Æ¤â¤é¤Ã¤Æ¤¤¤ë¤Î¤Ï¡¢
¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï EventSystem ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¤¿¤á¤Ç¤¹¡£

¡¡OVRInputModule ¥³¥ó¥Ý¡¼¥Í¥ó¥ÈÆâ¤Î Ray Transform ¤ÎÉôʬ¤Ë¡¢Ray ¤òȯ¼Í¤¹¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
¤³¤ÎÎã¤Ç¤Ï¡¢º¸¤Î¥³¥ó¥È¥í¡¼¥é¡¼¤òÍøÍѤ¹¤ëͽÄê¤Ç¤¢¤ë¤¿¤á¡¢OVRPlayerController ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤Ë¤¢¤ë LeftHandAnchor ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥µ¥¤¥ó¤·¤Æ¤¤¤Þ¤¹¡£

¡¡Joy Pad Click Button ¤Ç¤Ï¡¢Ray ¤òȯ¼Í¤¹¤ë¥Ü¥¿¥ó¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥Ü¥¿¥ó¤ò²¡¤·¤¿¤È¤­¤À¤±¡¢Ray ¤¬È¯¼Í¤µ¤ì¤Æ¡¢¤½¤Îµ°Æ»¤ò LineRenderer ¤¬ÉÁ²è¤·¤Þ¤¹¡£
¤³¤ÎÉôʬ¤âº¸¤Î¥³¥ó¥È¥í¡¼¥é¡¼¤Î¥Ü¥¿¥ó¤òÍøÍѤ¹¤ë¤¿¤á¡¢Primary Index Trigger (º¸¥³¥ó¥È¥í¡¼¥é¡¼¤Î¿Íº¹¤·»Ø¥È¥ê¥¬¡¼)¤òÀßÄꤷ¤Æ¤¤¤Þ¤¹¡£

¡¡±¦¤Î¥³¥ó¥È¥í¡¼¥é¡¼¤«¤é Ray ¤òȯ¼Í¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢¤É¤Á¤é¤ÎÀßÄê¤â±¦ÍѤËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


MenuController ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡¤³¤Î¤Þ¤Þ¤Ç¤â½èÍý¤ÏÌäÂê¤Ê¤¯Æ°¤­¤Þ¤¹¤¬¡¢Canvas ¤¬É½¼¨¤µ¤ì¤Æ¤¤¤ë¤È¤­¤À¤±¡¢LineRenderer ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬µ¯Æ°¤¹¤ë¤è¤¦¤ËÀ©¸æ¤ò¹Ô¤¤¤Þ¤¹¡£


MenuController.cs


¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£


MenuController ¥¹¥¯¥ê¥×¥È¤ò¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤·¤ÆÀßÄê¤ò¹Ô¤¦


¡¡¿·¤·¤¯¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë¤«¡¢Canvas ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ê¤É¤Î´û¸¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë MenuController ¥¹¥¯¥ê¥×¥È¤ò¥¢¥¿¥Ã¥Á¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡³ÆÊÑ¿ô¤ËÀ©¸æ¤ò¹Ô¤¦¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥µ¥¤¥ó¤·¤ÆÅÐÏ¿¤·¤Þ¤¹¡£

¡¡CanvasObj ÊÑ¿ô¤Ë¤Ï Canvas ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£

¡¡LineRenderer ÊÑ¿ô¤Ë¤Ï¡¢UIHepler ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ë LaserPointer ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
¼«Æ°Åª¤Ë LineRenderer ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¾ðÊó¤¬ÅÐÏ¿¤µ¤ì¤Þ¤¹¡£


¥Ò¥¨¥é¥ë¥­¡¼²èÁü



¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


¼Âµ¡¤Ë¤Æ¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆµóÆ°¤ò³Îǧ¤¹¤ë


¡¡¼Âµ¡ÍѤ˥ӥë¥É¤ò¹Ô¤¤¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡º¸¥³¥ó¥È¥í¡¼¥é¡¼¤Î X ¥Ü¥¿¥ó¤ò²¡¤·¤Æ¡¢Canvas ¤¬É½¼¨/Èóɽ¼¨¤µ¤ì¤ë¤«¤ò¡¢²¿²ó¤«ÀÚ¤êÂؤ¨¤Æ³Îǧ¤·¤Þ¤¹¡£

¡¡Canvas ¤¬É½¼¨¤µ¤ì¤Æ¤¤¤ëºÝ¤Ë¡¢º¸¥³¥ó¥È¥í¡¼¥é¡¼¤Î¿Íº¹¤·»Ø¥È¥ê¥¬¡¼¤ò°ú¤¤¤Æ¤¯¤À¤µ¤¤¡£
¥²¡¼¥à²èÌÌÆâ¤Ë Ray ¤¬È¯¼Í¤µ¤ì¤Æ¡¢¤½¤Îµ°Æ»¤¬¸«¤¨¤ë¤è¤¦¤Ë¤Ê¤ì¤ÐÀ®¸ù¤Ç¤¹¡£
¤½¤Î Ray ¤ò¥Ü¥¿¥ó¤Î°ÌÃÖ¤ÇÅê¼Í¤·¡¢¥Ü¥¿¥ó¤¬²¡¤µ¤ì¤¿¤³¤È¤Ë¤Ê¤ë¤È¡¢¥Ü¥¿¥ó¤Î¥¤¥Ù¥ó¥È¤ËÅÐÏ¿¤·¤¿¥á¥½¥Ã¥É¤¬¼Â¹Ô¤µ¤ì¤Æ¡¢¥Ç¥Ð¥Ã¥°¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£



¡¡°Ê¾å¤Ç´°À®¤Ç¤¹¡£

¥³¥á¥ó¥È¤ò¤«¤¯


¡Öhttp://¡×¤ò´Þ¤àÅê¹Æ¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ÍøÍѵ¬Ìó¤ò¤´³Îǧ¤Î¤¦¤¨¤´µ­Æþ²¼¤µ¤¤

Menu



´ðÁÃ

µ»½Ñ/Ãμ±(¼ÂÁõÎã)

3D¥¢¥¯¥·¥ç¥ó¥²¡¼¥à

2D¤ª¤Ï¤¸¤­¥²¡¼¥à(ȯŸÊÔ)

2D¶¯À©²£¥¹¥¯¥í¡¼¥ë¥¢¥¯¥·¥ç¥ó(ȯŸÊÔ)

2D¥¿¥Ã¥×¥·¥å¡¼¥Æ¥£¥ó¥°(³ÈÄ¥ÊÔ)

¥ì¡¼¥¹¥²¡¼¥à(È´¿è)

2DÊüÃÖ¥²¡¼¥à(ȯŸÊÔ)

3D¥ì¡¼¥ë¥¬¥ó¥·¥å¡¼¥Æ¥£¥ó¥°(±þÍÑÊÔ)

3Dæ½Ð¥²¡¼¥à(È´¿è)

2D¥ê¥¢¥ë¥¿¥¤¥à¥¹¥È¥é¥Æ¥¸¡¼

3D¥¿¥Ã¥×¥¢¥¯¥·¥ç¥ó(NavMeshAgent »ÈÍÑ)

2D¥È¥Ã¥×¥Ó¥å¡¼¥¢¥¯¥·¥ç¥ó(¥«¥¨¥ë¤Î°Ù¤Ë¡Á¡¢¥Ü¥³¥¹¥«¥¦¥©¡¼¥ºÉ÷)

VideoPlayer ¥¤¥Ù¥ó¥ÈϢư¤Î¼ÂÁõÎã

VideoPlayer ¥ê¥¹¥ÈÆ⤫¤é¥à¡¼¥Ó¡¼ºÆÀ¸¤Î¼ÂÁõÎã(ȯŸ)

AR ²èÁüÉÕ¤­¥ª¥Ö¥¸¥§¥¯¥ÈÀ¸À®¤Î¼ÂÁõÎã

AR ¥ê¥¹¥ÈÆ⤫¤éÀ¸À®¤Î¼ÂÁõÎã(ȯŸ)

2D¥È¥Ã¥×¥Ó¥å¡¼¥¢¥¯¥·¥ç¥ó(¥µ¥Ð¥¤¥Ð¡¼É÷)

private



¤³¤Î¥µ¥¤¥ÈÆâ¤ÎºîÉʤϥæ¥Ë¥Æ¥£¤Á¤ã¤ó¥é¥¤¥»¥ó¥¹¾ò¹à¤Î¸µ¤ËÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£

´ÉÍý¿Í/Éû´ÉÍý¿Í¤Î¤ßÊÔ½¸¤Ç¤­¤Þ¤¹