현재 XNA에서 2D "웜"복제본을 작업 중이며 기능 중 하나는 "변형 가능"지형입니다 (예 : 로켓이 지형에 닿으면 폭발이 일어나고 지형 덩어리가 사라짐).
현재이 작업을 수행하는 방법은 중앙에 가까워 질수록 점차적으로 빨간색 값이 높은 텍스처를 사용하는 것입니다. 이 "변형"텍스처의 모든 픽셀을 순환하고 현재 픽셀이 터 레인 픽셀과 겹치고 빨간색 값이 충분히 높은 경우 터 레인을 나타내는 색상 배열을 투명하게 수정합니다. 현재 픽셀의 빨강 값이 충분히 높지 않으면 지형 색상을 어둡게합니다 (빨간색 값이 임계 값에 가까울수록 어두워집니다). 이 작업이 끝나면 SetData를 사용하여 지형 텍스처를 업데이트합니다.
나는 이것이 파이프 라인 마구간 등에 대해 읽었을뿐만 아니라 많은 분화구가 동시에 추가되면 상당히 게으르게 될 수 있기 때문에 이것이 그것을하는 좋은 방법이 아니라는 것을 알고 있습니다. 렌더 타겟 "핑퐁 (ping-ponging)"을 사용하여 타겟과 텍스처 사이에서 크레이터 생성을 GPU에서 리메이크하고 싶습니다. 그것은 문제가 아닙니다. 어떻게해야하는지 알고 있습니다. 문제는이 방법을 사용하여 화상 효과를 유지하는 방법을 모른다는 것입니다.
다음은 화상 효과가 지금 보이는 방식입니다.
아무도 비슷한 화상 효과를 만드는 방법을 알고 있습니까 (형성 된 분화구 주위의 가장자리를 어둡게)? 셰이더에 익숙하지 않지만, 필요한 경우 누군가 어떻게해야하는지 정말 감사하겠습니다. 다른 좋은 방법이 있다면 좋을 것입니다.