비디오 게임에서 스킨 적용 가능한 "버튼"을 그리는 가장 좋은 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/7017

  •  08-06-2019
  •  | 
  •  

문제

게임 응용 프로그램에서 스킨 가능 "버튼"을 그리는 방법에 대한 아이디어를 찾고 있습니다.버튼 배경에 벡터가 아닌 고정 스프라이트 이미지를 사용하면 버튼 크기를 쉽게 조정할 수 없습니다.크기 조정 가능한 버튼(예: Windows 버튼 그리기)을 그리는 코드를 작성하면 프로그래머가 개입해야 하며 이로 인해 스키닝이 어려워집니다.또 다른 옵션은 버튼을 9개의 작은 이미지(3x3)로 나누고 모두 늘리는 것입니다. 마치 HTML에서 둥근 모서리를 만드는 것과 비슷합니다.

또 다른 "더 쉬운" 방법이 있나요?가장 좋은 접근 방식은 무엇입니까?

도움이 되었습니까?

해결책

정말로 이 작업을 수행하려면 텍스처 좌표를 사용하는 것이 좋습니다.테이블을 사용하여 HTML에서 늘일 수 있는 버튼/패널 디자인을 만드는 것과 마찬가지로 모서리, 위쪽 늘일 수 있는 영역, 아래쪽 늘일 수 있는 영역, 측면 늘일 수 있는 영역, 중간의 UV 좌표를 정의하기만 하면 됩니다.

XNA 엔진(비록 비공개 소스 엔진임에도 불구하고)에서 구현되는 예는 다음을 참조하세요.http://www.Flatredball.com/frb/docs/index.php?title=SpriteFrame_Tutorial

다른 팁

예.저는 편집자로 일하고 있습니다.XNA용 XAML과 유사한 언어(또는 원하는 경우 OpenLaszlo와 유사한)입니다.따라서 편집기에서 버튼 크기를 조정할 수 있습니다.버튼의 크기는 스타일 시트에 따라 조정될 수도 있습니다.

실제 디자인에서는 버튼의 크기가 모두 동일할 가능성이 높다는 말씀이 맞습니다.하지만 창 앱에서도 텍스트를 수용하기 위해 버튼을 더 넓게 만들어야 하는 경우가 있습니다.

셰이더를 사용하면 가능합니다.텍셀 조회를 수행해야 할 수도 있지만 복잡한 UI에서 삼각형 수가 줄어들 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top