«raycasting» 태그된 질문

광선을 사용하여 교차점을 결정하는 기술입니다. 조명 시뮬레이션에 자주 사용됩니다.

4
복셀 게임에서 블록을 선택하기 위해 캐스트 레이
블록으로 만든 Minecraft와 같은 지형으로 게임을 개발 중입니다. 기본 렌더링 및 청크 로딩이 완료되었으므로 블록 선택을 구현하고 싶습니다. 따라서 1 인칭 카메라가 어떤 블록을 향하고 있는지 찾아야합니다. 나는 이미 전체 장면을 투사하지 않는다고 들었지만 해키처럼 들리고 정확하지 않기 때문에 반대했습니다. 어쩌면 어떻게 든 뷰 방향으로 광선을 캐스팅 할 수는 있지만 …

2
복셀 엔진에서 조명을 어떻게 구현할 수 있습니까?
나는 지형 엔진과 같은 MC를 만들고 있는데, 조명이 훨씬 더 멋지게 보일 것이라고 생각했습니다. 페이지에. 지금까지 마인 크래프트의 "고정"조명을 구현하고 싶습니다. 그래서 VertexFormat을 만들었습니다. struct VertexPositionTextureLight { Vector3 position; Vector2 textureCoordinates; float light; public readonly static VertexDeclaration VertexDeclaration = new VertexDeclaration ( new VertexElement(0, VertexElementFormat.Vector3, VertexElementUsage.Position, 0), new VertexElement(sizeof(float) * …
15 c#  xna  lighting  raycasting 

1
화면 가장자리에 화면 밖에있는 개체를 가리키는 화살표를 그리는 방법은 무엇입니까?
이 주제에 설명 된대로 수행하고 싶습니다. http://www.allegro.cc/forums/print-thread/283220 여기에 언급 된 다양한 방법을 시도했습니다. 먼저 Carrus85에서 설명한 방법을 사용하려고했습니다. 두 삼각형 빗변의 비율을 취하십시오 (다른 삼각법에 관계없이 상관없이 계산하는 거리로 포인트 1과 포인트 2를 제안합니다). 그러면 더 큰 삼각형에서 모서리에있는 삼각형의 종횡비 비율이 표시됩니다. 그런 다음 간단하게 deltax에 해당 값을 곱하여 …

3
블록 기반 2D 게임에서 폐색 조명을 어떻게 구현합니까?
게임 내 오브젝트로 차단할 수있는 2D 조명을 갖고 싶습니다. 내 게임에는 하향식보기가 있으며 모든 게임 개체는 사각형으로 표시됩니다. 10x10 월드가 있고 1x1에 라이트를 배치하고 해당 라이트 주위에 벽을 배치한다고 가정하겠습니다. 1x1에서 광원을 볼 수 있기를 원하지만 벽에 의해 막혀 있기 때문에 다른 곳에서는 볼 수 없습니다. 나는 광선이 작동한다는 이야기를 …

1
Unity의 OnCollisionEnter가 표면 법선을 제공하지 않는 이유는 무엇이며 가장 확실한 방법은 무엇입니까?
Unity의 충돌시 이벤트는 충돌이 발생한 충돌에 대한 정보를 제공 하는 충돌 객체를 제공합니다 ( 적중 법선 이있는 ContactPoint 목록 포함 ). 그러나 당신이 얻지 못하는 것은 충돌하는 충돌체의 표면 법선입니다. 설명 할 스크린 샷이 있습니다. 빨간색 선은에서 ContactPoint.normal오고 파란색 선은에서옵니다 RaycastHit.normal. 이것이 단순화 된 API를 제공하기 위해 정보를 숨기는 Unity …

3
3D 공간에서 RTS 클릭 앤 이동을 처리하는 방법은 무엇입니까?
완전한 3D 공간에서 클릭 앤 이동을 어떻게 처리 할 수 ​​있습니까? 간단한 레이 캐스트로 2D 평면을 다루는 것은 쉽지만, 레이 캐스트가 엔드 포인트를 얻을 수있는 엔드 플레인이 없기 때문에 3D에서는 그렇지 않습니다. 두 가지 아이디어가 있습니다. 레이 캐스트를 수행 한 다음 플레이어가 다른 입력 (예 : 마우스)으로 광선의 거리를 선택할 …

1
Roguelike에서 FOV (Field of View) 대칭을 보장하려면 어떻게해야합니까?
나는 Roguelike에서 일하고 있으며,이를 위해 Bresenham 선을 단색 원의 모든 지점으로 플로팅하는 광선 추적 / 캐스팅 FOV 알고리즘을 만들었습니다. 그것은 유물이 없으며 (합리적으로 효율적이지만) 내 중요한 요구 사항이 없습니다 : 대칭 (괴물을 볼 수 있다면 당신도 볼 수 있어야합니다). 다음은 내 코드의 비대칭 동작의 예입니다. 왼쪽 이미지에서 나는 모서리에 서 …

3
협상 충돌 탐지 알고리즘
충돌 감지에는 3 단계가 있습니다. Broadphase : 루프 속도를 높이면 상호 작용할 수있는 모든 대상간에 반복되고 오 탐지가 허용됩니다. 협상 (Narrowphase) : 그들이 충돌하는지 여부, 때로는 오 탐지 여부를 결정합니다. 해결 : 충돌을 해결합니다. 내가 묻는 질문은 협소에 관한 것입니다. 복잡성과 정확도가 다른 여러 알고리즘이 있습니다. Hitbox 교차점 : 이것은 …

2
모든 타일을 반복하거나 건너 뛰지 않고 선으로 교차하는 타일 찾기
나는 며칠 동안이 문제를 쳐다보고있다. 문제를 시각화하는 데 도움이되도록이 그래픽을 조작했습니다. (그래프에서 선이 [1, 1], [1, 2], [2, 2], [2, 3]과 교차하고 [ 3,3]) 선을 따라 각 격자 공간으로 이동하여 격자 공간의 재질이 단단한 지 확인하고 싶습니다. 나는 이미 관련된 수학을 알고 있다고 생각하지만 아직 함께 묶을 수는 없습니다. 경로 …

2
두 모서리가있는 대각선 가시선
지금은 가시 거리에 Bresenham의 라인 알고리즘을 사용하고 있습니다. 문제는 플레이어가 벽을 볼 수있는 가장자리 케이스를 찾았다는 것입니다. 플레이어가 특정 각도에서 다른쪽에 틈이있는 벽의 두 모서리를 볼 때 발생합니다. 내가 원하는 결과는 두 벽 사이의 타일이 유효하지 않은 것으로 표시되는 것입니다. 이 문제를 해결하기 위해 Bresenham의 라인 알고리즘을 수정하는 가장 빠른 …

2
광선 캐스팅을 사용하여 2D 그리드에서 가시선을 구현하는보다 효율적인 방법은 무엇입니까?
2 차원 타일 격자와 시선을 나타내는 대략적인 좌표 구 (플레이어 중심)를 고려하십시오. 목표는 장애물 (즉, 벽) 너머의 시야를 차단하는 것입니다. 시선 영역의 개별 셀이 보이는지 여부를 결정하는 것은 비교적 간단합니다. Bresenham을 사용하여 플레이어에서 대상 셀로 광선을 캐스트합니다 . 플레이어와 대상 사이의 겹치는 셀 중 하나가 장애물 인 경우 대상 셀 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.