일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- displace
- 파이썬 if
- 터치디자이너 파이썬
- TouchDesigner
- 터치디자이너 오퍼레이터
- touchdesigner displace
- ableton live 10
- 터치디자이너 인터페이스
- touchdesigner GPU
- touchdesinger
- 터치디자이너 강의
- 터치디자이너 if
- 터치디자이너 튜토리얼
- 터치디자이너 replicator
- 터치디자이너 참조
- TDableton
- 터치디자이너 Instancing
- 파이썬reference
- 터치디자이너 에이블톤
- 터치디자이너 interface
- 터치디자이너
- particleGPU
- 터치디자이너 list
- 터치디자이너 timeline
- 터치디자이너 클론
- 터치디자이너 reference
- touchdesigner particle
- 파이썬
- 터치디자이너 함수
- 터치디자이너 python
- Today
- Total
목록Unity/유니티VR (12)
caLAB
이전 포스팅에서 VR 디바이스에 캐릭터를 리깅하는 것을 포스팅 하였습니다. 오늘 포스팅에서는 리깅된 캐릭터가 포톤 네트워크 상에서도 동일하게 리깅 되어서 움직이도록 네트워크 작업을 하는 방법에 대해서 정리해보도록 하겠습니다. 우선 포톤네트워크 관련 기본적인 설정이 전부 되어있다고 가정하고 설명하도록 하겠습니다. 포톤 서버 및 룸 접속까지 완성이 된 상태라 가정합니다. 그렇다면 제일 먼저 NetworkSpawned 스크립트를 만들어서 Network 플레이어를 생성하는 것과 관련된 스크립트를 작성합니다. 방에 입장하였을 때 Network Player를 Instantiate하고, 방에 나갈 때 Instantiate 되어 있던 Network Player를 삭제합니다. using System.Collections..
오늘은 VR 캐릭터를 리깅하는 방법에 대해서 알아볼 것이다. 캐릭터를 리깅하는 방법은 IK이다. IK (Inverse Kinematics) 란? 대부분의 애니메이션은 스켈레톤에서 미리 정해진 값에 조인트를 변경하여 회전하는 것으로 실현됩니다. 자식 조인트의 위치는 부모의 회전에 따라 변화하고, 이 때문에 일련의 조인의 종료점은, 각도 및 포함된 개별 조인트의 상대적 위치에 의해 결정됩니다. 이 스켈레톤의 포징(Posing) 기술은 Forward Kinematics (포워드 운동학)이라고 합니다. 그러나 포징(Posing) 조인트가 할 작업을 다른 관점에서 파악하는 것이 중요합니다. (공간에서 선택된 위치, 거기에서 역산하여 조인트의 방향을 종료점이 되는 위치) 효과적인 방법을 찾을 수 있습니다. 오브젝트..
VR 장치가 연결되어 있는지 확인할 수 있는 코드. VR이 장비가 연결되어 있는지 아닌지에 대한 확인을 해서 연결이 안되어 있을 때는 PC로 전환되도록 작업할 수 있도록 구현 중....! using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.XR; public class vrDeviceDetector : MonoBehaviour { private void Start() { var inputDevices = new List(); InputDevices.GetDevices(inputDevices); foreach(var device in inputDevices) { Debug.Log(str..
PC와 VR 장비로 접속하여 position과 rotation을 동기화시키는 것을 구현하였다. 다른 게임에서 생긴 캐릭터 동기화시키는 스크립트 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.XR; using Photon.Pun; using UnityEngine.XR.Interaction.Toolkit; public class networkPlayer : MonoBehaviour { public Transform head; public Transform leftHand; public Transform rightHand; private PhotonView photonView; pri..
컨트롤러 Haptic 기능 넣기 XR controller 스크립트를 보게 되면 아래와 같은 함수가 보인다. public override bool SendHapticImpulse(float amplitude, float duration) { if (inputDevice.TryGetHapticCapabilities(out var capabilities) && capabilities.supportsImpulse) { return inputDevice.SendHapticImpulse(0u, amplitude, duration); } return false; } 이 함수를 호출하게 되면 컨트롤러에 Haptic이 발생한다. 호출하는 코드는 아래와 같다. 파라미터 값이 현재는 0.7f, 2f로 설정 되어 있는데 앞에..
회사 R&D과제로 VR 클럽을 기획하여 진행중이다. 이번에 진행하는 프로젝트의 핵심 기술은 VR클럽에서 VR 유저와 PC 유저가 동시에 인터렉션 할 수 있는 cross device 플랫폼 환경을 만드는 것이 목표이다. 또한, 클럽의 공간을 사운드나 유저의 움직임에 따라서 인터렉션 되는 공간으로 구성하기 위해서 VFX graph를 사용하기로 결정하였고 이를 위해서 hdrp 환경에서의 작업이 필요하다. - VR(Oculus_XR toolkit사용) - Photon Network - hdrp VFX graph 작업은 2020.3.16f1에서 진행중이다. 우선, 포톤네트워크 설치하는 것은 기존에 게시물이 있어서 스킵하겠다. 프로젝트는 vfx graph를 사용해야 되니까. hdrp로 생성해주시길! 이번에 기본 세..
VR같은 경우 가이드가 없을 경우 처음 접하게 되는 사람들은 관리하는 방법이 헷갈리기 때문에 이를 위해서 Oculus Quest Link를 전시에서 활용하는 가이드를 도큐먼트로 정리한다. 이 문서는 개발자를 위해서라기보다는 전시장에서 VR장비를 관리하는 사람들을 위한 문서이다. 개발자가 미리 준비할 것 1. Unity 프로그램 바로가기 만들 것. 2. 링크 케이블 연결 및 공간 설정 해둘 것. 3. 구동할 컴퓨터와 VR장비에 wifi를 연결시켜 둘 것. 4. 이 외 구글 원격데스크탑 및 사이드 퀘스트 다운 받아 둘 것. [관리자를 위한 설명] 1. 바탕화면에 있는 프로젝트 바로가기를 눌러서 유니티 프로젝트 클릭. 2. sidequest를 실행한다. 아래 이미지의 티비 아이콘을 클릭함. (관람객이 보고 있..
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.XR; public class handPresence : MonoBehaviour { public InputDeviceCharacteristics controllerCharacteristics; public List controllerPrefabs; private InputDevice targetDevice; private GameObject spawnedController; void Start() { List devices = new List(); InputDevices.GetDevicesWithCharacteristics(cont..