2024-11-01ãã1ã¶æéã®è¨äºä¸è¦§
ã¯ããã« ã©ãããåéã§ãã ä»åã¯Bluetoothããã¤ã¹ã¨Unityéã§éä¿¡ãè¡ã£ã¦ã¿ã¾ããã ãã ãUnityã§ã®Bluetoothã«é¢ãã¦ã¯OSåºæã®åé¡ãå¤ãããã®ã¾ã¾ã®Unityä¸ã ãã§BLEãå®çµããããã¨ã¯ã§ãã¾ããã§ãããããã«é¢ãã¦ã¯æ§ã è¨äºãæ¢ãã¾ãããä»â¦
ã¯ããã« ã©ãããåéã§ãã WebGL(UnityRoom)ã ã¨ããã«ããã¬ã¤ã²ã¼ã ãã©ã®ããã«ä½ãã®ãæ°ã«ãªã£ãã®ã§ãã£ã¦ã¿ã¾ããã çµè«ããè¨ãã¨ãPhoton Fusionãããã©ã«ãã§WebGLã«ã対å¿ãã¦ããã注æç¹ãé¤ãã¦ã»ã¨ãã©è©°ã¾ãæã¯ããã¾ããã§ããã (è¨â¦
ã¯ããã« ã©ãããåéã§ãã é常ã®Physics.Raycastã¯UIãããããæ¤ç¥ãã¦ããã¾ããããã®ãããUIããã£ã¦ã貫éãã¦å¾ãã®ãªãã¸ã§ã¯ãã«Rayãå½ãã£ã¦ãã¾ãã¾ãã å¾æ¥ã®uGUIã§ãããã§ãããuGUIã¯ãã®è¨äºã®ããã«EventSystemã§ãããã¯ãããã¨ãâ¦
ã¯ããã« ã©ãããåéã§ãã UI Toolkitã使ã£ã¦ãã¦uGUIã«ãã£ãã°ãªããã¬ã¤ã¢ã¦ããã§ããªãï¼ã¨ããåé¡ããã£ãã®ã§ãä»åã¯èªåã§å®è£ ãã¾ãã uxmlãæ¸ãã¦è§£æ±ºããè¨äºããã£ãã®ã§ãããUI Builderã ãã§è§£æ±ºã§ãã¾ããã å®è£ æ¹æ³ UI Builder Griâ¦
ã¯ããã« ã©ãããåéã§ãã å æ¥ãMeta XR SDKã®MRæ©è½ããã±ã¼ã¸ã§ããMRUK(Mixed Reality Utility Kit)ã«ã¢ãããã¼ããæ¥ã¾ããã é¢ç½ãããªæ©è½ãããã¤ã追å ããã¦ããã®ã§ãã£ã¦ã¿ã¾ããã âãªãªã¼ã¹ãã¼ã developers.meta.com Environment Raycaâ¦
ã©ãããåéã§ãã ååã®è¨äºã®ç¶ãããã§ãåå¾ãããªãã¸ã§ã¯ãã®æ å ±ãUIToolkitã®UIã«è¡¨ç¤ºããæ¹æ³ã解説ãã¾ãã donabenabe.hatenablog.com å®è£ Rayã§åå¾ããEntityæ å ±ãæµã public partial class ECSPlayerInput : SystemBase { public Observaâ¦
ã¯ããã« ã©ãããåéã§ãã Unity ECS (DOTS)ã§ã¯å¾æ¥ã®ããã«ã«ã¡ã©ããRayãé£ã°ãã¦ããªãã¸ã§ã¯ãã®åå¾ããããã¨ã¯ã§ãã¾ãããã¨ããã®ãMonoBehaviourã§ããã«ã¡ã©ããã®Raycastã¨ECSã§çæããããªãã¸ã§ã¯ãã移åãããªãã¸ã§ã¯ãã¯ç´æ¥åç §ãâ¦
ã¯ããã« ã©ãããåéã§ãã éçºã§AR Foundationã使ããã¨ã«ãªã£ãã®ã§ãããUnity6ã§è¥å¹²UIãè¨å®ãå¤ãã£ãã®ã§ã¡ã¢çã«è¨äºãæ¸ãã¾ããã ã¯ããã« AR Foundationã®ã»ããã¢ãã AR Foundationã®ã¤ã³ãã¼ã XR Pluginè¨å®ã®å¤æ´ URPã®è¨å®å¤æ´ å¹³é¢ã«â¦
ã¯ããã« ã©ãããåéã§ãã UI Toolkitã§ã©ã³ã¿ã¤ã å¦çã«åãã¦ã¤ãã³ãã®ç»é²ãå¤å¤æ´éç¥ã®æ¹æ³ã調ã¹ã¾ããã ã³ã¼ã«ããã¯ãè¨å®ãã UIè¦ç´ ã®ãã¦ã¹æ¼ä¸ã®ã¤ãã³ãã®ã³ã¼ã«ããã¯ãè¨å®ããã«ã¯ä»¥ä¸ã®ããã«ã§ãã¾ãã VisualElement myElement = neâ¦
ã¯ããã« ã©ãããåéã§ãã ä»ã¾ã§æ°ã«ãªã£ã¦ããã©è§¦ã£ã¦ãªãã£ãUI Toolkitã触ã£ã¦ã¿ã¾ããã Unity6ã«ãªã£ã¦ä»¥åãã使ãããããªããæ©è½ãä»å¾æ´ã«å¢ããããã§ãã å 容ã¯ä»¥ä¸ã®åç»ã¨ã»ã¼åãã§ããããã©ã¹ã¢ã«ãã¡ã§ãã£ã¦ã¿ããã¨ãæ¸ãã¦ã¾ãâ¦
ã¯ããã« ã©ãããåéã§ãã é½å¸éçºã·ãã¥ã¬ã¼ã·ã§ã³ã²ã¼ã ãä½ãã·ãªã¼ãºä¸åç®ã¯ä½æ°ããéã稼ãã§ãã®ãéã使ãã¨ããæµããçã¿åºãã¾ãã çµæ¸ãåã ãããç¥ã£ãã®ã§ãã³ã¼ããæ¸ãæãã¾ããã donabenabe.hatenablog.com ä½æ°ããã®ãè²·ã éâ¦
ã©ãããåéã§ãã ECSã§Entityã¯åå¾ã§ãã¦ãã³ã³ãã¼ãã³ãã«ã©ããã£ããã¢ã¯ã»ã¹ã§ãããã ï¼ ã¨ããåé¡ã«ç´é¢ããéã«ComponentLookupã使ãã¾ãã èªåã¯ãããç¥ããªãã¦è¦å´ãã¾ããã ã¾ãã¯ã³ã¼ããã覧ãã ããã public partial struct Citizeâ¦
ã¯ããã« ã©ãããåéã§ãã ç§ã¯ç¾å¨ã¾ã§ããã¤ãã®ããã«ã½ã³ã«åºå ´ããè³ãé ãããããã¾ããã ã¤ãå æ¥ãHackUã«åå ããæåªç§è³ãããã ããã¨ãã§ãã¾ããã ãã¡ãæåªç§è³é ãã¾ããï¼ï¼#hacku #openhacku2024 https://t.co/jie7uL1T2oâ åé (@â¦
ã©ãããåéã§ãã UnityECSã§ã®ç©çã·ãã¥ã¬ã¼ã·ã§ã³ã§ã¯Physicsã¨ããã©ã¤ãã©ãªã使ç¨ããã¾ãã youtu.be 以ä¸ãã¤ã³ãã¼ã - com.unity.physics ãã®Physicsã使ç¨ãã¦ãã¬ã¤ã¤ã¼ã«ä¸çªè¿ããªãã¸ã§ã¯ãåå¾ãå¾æ¥ã®Physicsã®ããã«è¡ãããã¨æã£ãã®â¦
ã©ãããåéã§ãã ããã«ã½ã³ã®ä½åå¶ä½å ã§ãã«ãã¹ã¬ããã§åä¿¡å¾ ã¡ã®å¦çãä½ã£ãã®ã§ããããã®ä¸ã§ãGraphics device is null.ãã¨ããã¨ã©ã¼ãåºã¦ã¢ããªãè½ã¡ãã¨ããã±ã¼ã¹ã«ééããã®ã§ããã®è§£æ¶æ³ã«ã¤ãã¦æ¸ãã¾ãã UniTaskã®RunOnThreadPooâ¦
ã¯ããã« ã©ãããåéã§ãã ååã«å¼ãç¶ããé½å¸éçºã·ãã¥ã¬ã¼ã·ã§ã³ã²ã¼ã ãUnityECSã§å®è£ ãã¦ãããã¨æãã¾ãã ååãæ¸ãã¾ããããç¾ç¶ææ¢ãã§è¨äºãæ¸ãã¦ããã®ã§ãããè¯ãå®è£ ãã§ã次第ãè¨äºãæ´æ°ãã¦ããã¾ãã ååã®è¨äºã¯ãã¡ã donaâ¦
ã¯ããã« ã©ãããåéã§ãã æ¨å¹´æ£å¼ãªãªã¼ã¹ã¨ãªã£ãUnityECSããã£ã¦ã¿ããã¨æã£ãã®ã§ãããè²ã è¨äºãæ¢ãã¦ãå®éã«ã²ã¼ã ãä½ã£ã¦ãããã®ã¯å°ãªãã£ãã®ã§ãå®éã®ã²ã¼ã ãä½ããªããè¨äºãæ¸ãã¦ãããã¨æãã¾ãã ãã¡ãã®å 容ã¯IwakenLab Techâ¦
ã¯ããã« ã©ãããåéã§ãã ããã«ã½ã³ã§PCã§ç¨æããæ©æ¢°å¦ç¿ãµã¼ãã¼ã«Meta Quest3ããã¢ã¯ã»ã¹ãéä¿¡ãè¡ãå¿ è¦ããã£ãã®ã§ããã®éã®ãã¨ãã¡ã¢çã«è¨äºã«ãã¾ããã ä»åã¯Pythonå´ã§ãµã¼ãã¼ãç«ã¦ãUnityå´ãã¯ã©ã¤ã¢ã³ãã¨ãã¦ã¢ã¯ã»ã¹ããTCPéâ¦
ã¯ããã« ã©ãããåéã§ãã ä»æ¥ã¯æè²å±æ±ºåã ã£ãã®ã§ãããããã§Unity as a Library(UaaL)ã使ç¨ãã¦ãããã¼ã ããããããããã°ãã£ã¦ã¿ããã£ããã©è§¦ãã¦ããªãã£ããªã¨æããéã«èª¿ã¹ã¾ããã ãããã³ã³ãã¹ãå¾ã§ç²ãã¦ããã®ã§å®è£ ãã¦è©¦ãã®â¦
ã¯ããã« ã©ãããåéã§ã ãã£ã©ã¯ã¿ã¼ã«ãªã¼ã©ãåºãããã£ãã®ã§ããã£ã¦ã¿ã¾ããã ã¨ãã§ã¯ãã¢ã»ãã Unityå ¬å¼ãåºãã¦ããã¯ãªãªãã£ã®é«ãç¡æã¨ãã§ã¯ãã¢ã»ãããããã®ã§ããããæ¹é ãã¦ããã¾ãã assetstore.unity.com ãµã³ãã«ã·ã¼ã³ã§ã¨ãâ¦
ã¯ããã« ã©ãããåéã§ãã ç¾å¨å¶ä½ä¸ã®VRã²ã¼ã ã§ãã¤ã¹ã³ã¢ã©ã³ãã³ã°ãå¿ è¦ã ã£ãã®ã§ããã®éã®å®è£ ã®ã¡ã¢çã«è¨äºã«ãã¾ããã ä½é¨ã®ãµã¤ã¯ã«ãæ©ãããããã«ååã®ä¿åæ©è½ã¯å®è£ ãã¦ãã¾ããã ä½ã£ããã® â»æ¬çªã®ã²ã¼ã ã§ã¯ãã£ã¨æ°æã¡ããæ¼â¦
ã¯ããã« ã©ãããåéã§ãã ç¾å¨å¶ä½ä¸ã®VRã²ã¼ã ã§ã¹ã³ã¢UIãç»é¢ä¸ã«ããã®ã§ããããªãã¨ãªãã¹ã³ã¢ãå¢å ãã¦ããæ°æã¡ãããå°ãªããªï½ï½ã¨æããã®ã§ãã«ã¦ã³ãã¢ããã«åããã¦ã¢ãã¡ã¼ã·ã§ã³ãããããã«ãã¾ããã ãã£ããä½ã£ããã® æ°å¤å¤åâ¦
2024/11/30è¿½è¨ å®éã«Unityã§BLEãè¡ã£ãè¨äºãæ¸ãã¾ããï¼(çµå±ç´æ¥UnityC#ã§è¨è¿°ãããã¨ã¯ã§ãã¾ããã§ããã) donabenabe.hatenablog.com ã¯ããã« ã©ãããåéã§ãã éçºã§Unityã§BLEéä¿¡ããããã£ãã®ã§ãã¾ãBLEã«ã¤ãã¦èª¿ã¹ã¾ããã Quest3ã»ãâ¦
ã¯ããã« ã©ãããåéã§ãã ååã«å¼ãç¶ãæè¿æãã£ãç»åãã¼ãé¢é£ãTextureã¯Read/Write(readable)ã¨mipmapã®è¨å®ã«ãã£ã¦ç¢ºä¿ãããã¡ã¢ãªãã¼ãã«å·®ãçã¾ããã®ã§æ³¨æãå¿ è¦ã§ãã ã¯ããã« Memory Profiler Read/Write Texture Importer UnityWebâ¦
11/5追è¨ããã¡ã誤ã£ãæ å ±ãå«ãã§ããããä¿®æ£ãããã¾ããã ã¯ããã« ã©ãããåéã§ãã ç»åãã¼ãã¯æ®æ®µã²ã¼ã ãéçºãã¦ããã¨ä½æ°ãªã使ç¨ãã¦ããããå®ã¯çµæ§éãå¦çã ã£ããããã ä¾ãã°ãã«ã¼ãã²ã¼ã ã¢ããªã§ã«ã¼ãä¸è¦§ãéããç¬éã«ã«ã¯â¦
ã¯ããã« ã©ãããåéã§ãã æè¿ãMessage Pipeã使ç¨ããããã¸ã§ã¯ãã«åºä¼ã£ãã®ã§ãããMessage Pipeããªããã ã£ãã®ã§ãä»åã¯åå¼·ãã¦ãUIã§ãã使ç¨ãããMVPãã¿ã¼ã³ãMessage Pipeã¨VContainerãå©ç¨ãã¦ã§ããªãããã£ã¦ã¿ã¾ããã ã¯ããã« Meâ¦
ã¯ããã« ã©ãããåéã§ãã ä»ã¾ã§VRã§ãã«ããã¬ã¤ã²ã¼ã ãä½ãéãã¾ã¨ããªãã¥ã¼ããªã¢ã«ãå°ãªãã£ãããããªããªããã¼ãã«ãé«ãã£ããããä»å¹´ãMetaãå ¬å¼ã®è¨äºã¨Building Blocksã«ãã«ããã¬ã¤ç¨ã®ãã®ã追å ããã Photon Fusionã«ããVRãã«ãâ¦
ã¯ããã« ã©ãããåéã§ãã 10æåæ¬ã«Metaãå ¬å¼ã§Questã®UIãã¶ã¤ã³ã«é¢ããããã¥ã¡ã³ããå ¬éãã¾ããã ããã§ä»åã¯ããã¥ã¡ã³ããããã£ã¨ç´¹ä»ããUnityã§ã®ä½¿ç¨æ¹æ³ã«ã¤ãã¦è§£èª¬ãã¾ãã Meta Horizon OS UI Setã¨ã¯ï¼ å ¬å¼ã®UIã»ãã解説ããå¼ç¨â¦