raycast 예제

월드 스페이스의 “화면”의 예를 들어, 간단한 시계 스크립트를 만들어 봅시다. 새로운 레이캐스팅 방법을 활용하기 위해 사용자가 자신의 손을 볼 때만 표시하도록 합시다. 자습서 소스 파일은 여기에 있습니다. 오늘은 레이캐스팅에 대해 말씀드리겠습니다. 레이캐스팅이라는 용어에 익숙하지 않은 분들에게 시작하기 전에 이 용어에 대해 조금 설명해 드리겠습니다. 이 경우 레이캐스트가 무언가에 부딪히면 본질적으로 실행됩니다. if 문에 대한 조건은 이 예제에서 네 개의 매개 변수를 취하는 Physics.Raycast 생성자로 구성됩니다. 첫 번째 매개변수는 레이캐스트가 시작되는 위치이며 카메라 위치로 지정합니다. 두 번째 매개변수는 레이캐스트가 향하는 방향이며 카메라의 전진 방향으로 지정합니다. 이렇게 하면 우리가 어디를 보든 레이캐스트도 보입니다. 세 번째 매개 변수는 적중 정보 매개 변수입니다. 지정한 변수에 대한 레이캐스트 충돌에 대한 추가 정보를 제공합니다. 이 예제에서는 광선 표시히트 변수라는 비전을 히트 정보 인수로 지정합니다.

즉, 비전 변수에는 레이캐스트가 적중한 물체에 대한 충돌 정보가 포함됩니다. 마지막으로 네 번째 매개변수는 레이캐스트의 길이이며, 레이스트길이로 지정합니다. 시작 함수에 광선길이를 할당했습니다. 공용 변수이므로 다른 광선 길이를 테스트하려는 경우 Inspector에서 수정할 수 있습니다. 유니티와 HTC 바이브를 위한 VR 개발에 대한 소개에서 다음 번에 뵙겠습니다! 이전: 레이캐스팅을 통한 입력. 다음: 몇 가지 유용한 도구. 이 예제는 충돌이 감지될 때마다 광선 길이를 따라 선을 그립니다. http://unity3d.com/support/documentation/ScriptReference/Physics.Raycast.html?from=RaycastHit 이 예제에서는 오브젝트의 현재 위치 위치에서 10단위로 확장된 간단한 레이캐스트를 생성합니다.

이 중 대부분은 상호 작용 예제만큼 실용적이지는 않지만 게임에서 Raycast 입력을 사용하는 방법에 대한 아이디어를 제공 해 줄 수 있기를 바랍니다. 참고: 레이캐스트는 레이캐스트 원점이 Collider 내부에 있는 충돌기를 감지하지 않습니다.스크립팅 또는 애니메이션으로 콜라이더를 이동하는 경우, 레이캐스트가 충돌하기 전에 물리 라이브러리가 업데이트될 수 있도록 하나 이상의 FixedUpdate를 실행하도록 허용해야 합니다. 새로운 위치에 있는 콜라이더. 레이캐스트 적중은 특정 개체와 연결되지 않습니다. 기본적으로 시작 위치, 방향 및 선택적으로 히트 마스크를 제공 (당신이 원하는 / 히트하지 않으려는 것을 필터링하기 위해), 당신은 결국 당신이 필요로 할 수있는 다양한 정보를 포함하는 RaycastHit 레코드를 다시 얻을, 어떤 GameObject되었습니다 포함 교차점 및 노멀과 함께 적중할 수 있습니다. 화면과 디스플레이는 특히 기술 분야에서 작업할 때 매우 친숙한 것들입니다. 게임에서 일종의 플랫 UI를 가질 가능성이 있으며 해당 UI와 상호 작용하는 가장 쉬운 방법 중 하나는 가리키고 보는 것입니다. 바라건대 당신은 당신의 노력에 유용한 위의 예를 찾을 수 있습니다! Unity3D의 레이캐스팅은 2D와 3D의 두 부분으로 나뉩니다. 둘 다 물리 객체입니다. 그들은 그들이 제공하는 방법에 대한 자신의 문서를 가지고; 그러나 각각 3D와 2D는 2D 및 3D 게임 모두에 동일한 게임 오브젝트(라인 렌더러)를 사용합니다.

HTC 바이브 가상 현실 프로그래밍 자습서의 섹션 6에 오신 것을 환영합니다. 이전에는 Raycast 입력 스크립트를 만들어 물건을 보고 가리키고 작업을 수행할 수 있도록 했습니다. 좋은! 그러나 우리는 그것으로 무엇을해야합니까? 예를 들어 배우는 것이 재미 있으므로 이러한 새로운 입력을 어떻게 사용할 수 있는지 확인할 수 있도록 몇 가지 예제를 더 시도해 보겠습니다. 이제 머리와 손을 구별하지만 둘 다에 반응하는 것을 살펴보겠습니다.