0823 : Still hand Tracking

using System.Collections ; using System.Collections.Generic ; using UnityEngine ; using UnityEngine.XR.MagicLeap ; public class Bird_0823 : MonoBehaviour { public enum HandPoses { Ok, Finger, Thumb, OpenHand, Pinch, NoPose }; public HandPoses pose = HandPoses.NoPose; public Vector3[] pos; public GameObject sphereThumb, sphereIndex, sphereWrist, ObjectToPlace; private MLHandTracking.HandKeyPose[] _gestures; bool canIPlace = false ; bool canIGrab = false ; public GameObject selectedGameObject; private void Start () { MLHandTracking.Start(); _gestures = new MLHandTracking.HandKeyPose[ 5 ]; _gestures[ 0 ] = MLHandTracking.HandKeyPose.Ok; _gestures[ 1 ] = MLHandTracking.HandKeyPose.Finger; _gestures[ 2 ] = MLHandTracking.HandKeyPose.OpenHand; _gestures[ 3 ] = MLHandTracking.HandKeyPose.Fist; _gestures[ 4 ] = MLHand...

0817 : Hand Tracking

  * 지난 주 요약 1. 큐브 2. 비둘기 3. 손 트레킹 * 이번 주 할 일 1. 비둘기 밥주기 canIGrab 랑 canIPlace 기능이 뭔지 까먹었어,,. using System.Collections ; using System.Collections.Generic ; using UnityEngine ; using UnityEngine.XR.MagicLeap ; public class HandTrackScript : MonoBehaviour { public enum HandPoses { Ok, Finger, Thumb, OpenHand, Pinch, NoPose }; public HandPoses pose = HandPoses.NoPose; public Vector3[] pos; public GameObject sphereThumb, sphereIndex, sphereWrist, ObjectToPlace; private MLHandTracking.HandKeyPose[] _gestures; bool canIPlace = false ; bool canIGrab = false ; public GameObject selectedGameObject; private void Start () { MLHandTracking.Start(); _gestures = new MLHandTracking.HandKeyPose[ 5 ]; _gestures[ 0 ] = MLHandTracking.HandKeyPose.Ok; _gestures[ 1 ] = MLHandTracking.HandKeyPose.Finger; _gestures[ 2 ] = MLHandTracking.HandKeyPose.O...

0811 : Hand tracking + What is immersive?

  Hand Tracking Key Points 를 시도해봤다.  자꾸 설치 에러가 나서 내 손이랑 기기로 보진 못했지만 시뮬레이터, 그리고 시뮬레이터+기기 에서 잘 작동했으니 괜찮지 않을까. 일단 충전해두고 내일 마저 테스트 해보려 한다. Magic LEap 사에서 올려둔 영상인데 비슷한걸 할 줄 알면 될것 같아서 내일은 이걸 해보려고 한다.요새 코딩을 열심히 안했더니 머리가 굳어서 잘 될지는 모르겠다. 코테 문제라도 풀어봐야 하는데,, https://developer.magicleap.com/en-us/learn/guides/hand-tracking-key-points-unity 작은 큐브들이 점점 차오르는 방의 중심에 있는 경험 은어때가 나를 휘감는 경험 *** ( 고민해보기) 몰입감은 무엇이며 어디에서 오는가? -> 작은 물체들이 흐름을 타고 나를 감싸는? 경험? ->  ?????

0809 : 그동안 작업 내용 정리

  서버에서 데이터를 받아오는걸 유니티 Websocket 클래스로 해보려고 한달 정도 삽질을 했다.  잘 안되는데 주변에 물어볼 사람도 없고 혼자 해결하기에는 시간만 지체될 것 같아 일단 넘어갔다. 1) 연구실이 체인지업 그라운드로 이주한 만큼 중앙에 있는 홀을 잘 사용해 보고 싶어서 저번에 만들었던 Flocking 에 새를 넣어서 건물 안을 나는 새떼를 만들었다.  - 그냥 넣기만 했더니 방향조절이 안돼서 회전하는 것도 구현해줬는데 회전방향(바라보는 방향)을 속도로 하니까 정신없이 빙빙 돌더라. - 사실 원래 속도로 하는게 맞는건데,, 알고리즘이 약간 이상하게 들어가 있다는 생각이 들었다.  - 예전에 읽은 논문 중에 가상의 모델이 실재의 벽에 부딪혀도 아무 인터렉션이 없으면  몰입도가 확 떨어진다는 내용이 있었다. 그땐 잘 안와닿았는데 이제 알거같다. 2)  중앙홀의 미디어월에서 큐브세트가 울렁울렁 하는 미디어아트가 보여진다. 걔가 그럴때마다 큐브가 뿜어져나오는 것 만들어보고 싶어서 가상의 벽을 만들고(10*10*5) 큐브가 쌓이게 했다. - 큐브들이 그 가상공간 안에서 통통 튀어다녔으면 했다. - 별 생각은 없었고 그냥 귀찮아서 큐브 생성 위치를 전부 고정해버렸는데 시작하니까 큐브들이 터지듯 연출돼서 기분이 좋았다. - 이제 그 미디어월쪽에서 큐브들이 쏟아져나오는걸 구현해야 하는데 사실 귀찮아서 많이 미룬것 같다.. 오늘은 꼭 해야지 3)   Plane Extraction이 또 말을 안듣는다. 분명 예전에 연구실에서 성공하고 찍은 영상이랑 사진이 있는데 무슨짓을 해도 여기서는 실행이 안된다,,  Export 해서 기기에 전송하고 눌러봐야지만 실행여부를 확인할 수 있다는 점도 너무너무 화가 난다.  사실 모델 그냥 만들어서 위치 정해주는거는 재미는 있지만 한계도 분명해서 약간 더 공학적으로 접근해 보고 싶었는데 잘 안되서 슬프다,,:(

0713~_ Websocket programming in ML

Websockets & Networking in MAgic Leap 참고자료 1: https://forum.magicleap.com/hc/en-us/community/posts/360023794311-WebSockets-in-Unity?page=1#community_comment_360004665432 참고자료 2: https://medium.com/@sairao1996/solving-websockets-networking-issues-in-magic-leap-unity3d-4d3b2196dff2 UDP socket  Around early August last year Magic Leap One : Creator edition was finally announced. Offering a better field of view, larger compute(because of the Lightpack) and a handy controller with 6DoF tracking, it opened avenue for a large number of applications. Since I have been working at company in San Francisco ( one of the first 6 cities to which magic leap provided shipping), I was lucky enough to test one of these early on when the company bought couple of them. When I started developing applications on it as part of my work, one of the challenges I faced was to get networking and websockets working. The main issue was that everything seemed to work well in Zero Iteration but when I deploye...

Papers 모음

0708_ Unity WebRTC + Paper

  1. WebRTC :  WebRTC (Web Real-Time Communication) is a technology which enables applications to capture and optionally stream audio and/or video media, as well as to exchange arbitrary data between apps without requiring an intermediary. The set of standards that comprise WebRTC makes it possible to share data and perform teleconferencing peer-to-peer, without requiring that the user install plug-ins or any other third-party software. WebRTC는 앱에서 audio, video를 캡쳐하거나 스트림할 수 있도록 하고, 두 앱 사이에서의 데이터 교환을 돕는 기술이다. WebRTC의 구성요소는 데이터를 공유하고 유저 간의 플러그인이나 다른 소프트웨어 없이 영상통화, p2p를 가능하게 한다.  근데 2020.2를 사용해야 하고 MLSDK는 0.25.0을 사용해야 한다고 한다.  2. Content Persistence : Local 1. Attach digital content to the real world  2. persist digital content when you close an app or reboot ML1 3. Share spatialized digital content with other users and devices 3. Transmission Transmission  is a cross-platform solution for connecting devices over a local area network (LAN). Add Transmission t...