안드로이드 : Angry Birds Scaling


11

화난 새에서 스케일링이 어떻게 수행되는지 아는 사람이 있습니까? 내 이미지 / 배경이 항상 화면 크기에 맞게 조정되도록하고 싶습니다.이 게임은 비슷한 효과가있는 것 같습니다. 선호하는 화면 크기를 설정하는 데 매니페스트 설정을 많이 사용하고 있지만 원하는 것을 정확하게 복제하지 못했습니다.

게임이 항상 XY 공간을 표시하고 픽셀 크기에 따라 필요에 따라 축소되도록하는 효과적인 방법이 있습니까?

모든 장치의 모든 항목이 항상 화면에 표시되도록하고 작은 장치에서 물건을 잘라내거나 큰 장치에서 검은 색 공간을 추가하지 않기를 원합니다.

뷰의 크기를 가져 와서 내 스프라이트의 경계로 사용하여 도면 공간을 계산하고 있지만 제대로 작동하지 않는 것 같습니다.

답변:


6

원래 질문에 답하기 위해 Angry Birds는 벡터가 아닌 일반 래스터 그래픽을 사용합니다. .apk (zip 파일)의 압축을 풀고 텍스처를 직접 살펴보십시오.

Angry Birds는 줌 배율을 1.x 이상으로 설정하지 못하도록하여 텍스처의 확대 (확대)를 방지합니다. 또한 다운 스케일링 (최소화) 아티팩트를 피하기 위해 OpenGL 밉 매핑을 사용합니다.


별도의 HD 버전이있는 이유를 설명합니다.
Matthew 읽기

4
  1. 벡터 그래픽을 사용하십시오 . 벡터는 공간의 점 (예 : 개별 픽셀)으로 정의되지 않고 수학 관계로 정의되며 더 작거나 큰 뷰에 쉽게 적용 할 수 있습니다.

  2. 예를 들어 이미지를 압축하거나 늘리지 않으면 서 정확히 동일한 이미지를 4 : 3 비율 화면과 16 : 9 비율 화면에 표시 할 수 없습니다. 따라서 와이드 스크린 16 : 9 장치에 표시 될 4 : 3 장치의 항목을 잘라 내야합니다. Angry Birds와 같은 게임에서 사용자가 누락 된 것을 볼 수있는 패닝은 나쁘지 않습니다.


1

Android 플랫폼에는 다음이 있습니다.

  • 320 * 240 (1.33)
  • 400 * 240 (1.66)
  • 480 * 320 (1.5)
  • 800 * 480 (1.66)
  • 854 * 480 (1.77)
  • 1024 * 600 (1.71)

따라서 게임을 2D로 디자인 할 때는 생각해야합니다. 두 가지 기술적 솔루션이 있습니다.

  • 비율을 선택하고 (1.66이 가장 널리 사용됨) 영화와 같은 검은 색 밴드를 사용하십시오.
  • 축소 할 수없는 경계 상자와 확대를위한 다른 경계 상자를 선택하십시오.

이 상자에 Moblox 및 페인트 레벨에이 방법을 사용합니다. 대부분의 전화기에서 최상의 렌더링을 위해 내 경계 상자의 비율은 1.66입니다. 1.33 또는 1.77 비율의 전화기에는 보이지 않는 배경 요소가 있지만 중심 동작으로 레벨을 설계했습니다. 그래서 플레이어는 신경 쓰지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.