플랫폼의 가시성을 배경과 차별화


15

배경이 끊임없이 색상을 변경하는 2D 무한 러너 유형 게임이 있습니다. 한편 플랫폼의 색상은 동일하게 유지됩니다. 이런 식으로 플랫폼이 일정 시점 (색상이 배경색과 같을 때)이 플레이어에게 보이지 않게됩니다.

이 문제를 어떻게 단결하고 창의적이고 짧고 확실하게 피할 수 있습니까?

추신 : 나는 그것에 광택 소재를 추가하려고했지만 작동하지 않았습니다 .

답변:


20

오래된 트릭-새로운 모습 :

실시 예 1

정의 된 선을 유지하는 데 도움이되는 색상 레이어를 플랫폼에 추가하십시오.

실시 예 2

선 또는 기타 그래픽의 솔루션은 다양 할 수 있지만 원칙은 동일합니다. 선택한 색상은 원하는만큼 미묘하거나 뚜렷 할 수 있습니다.


내 인생에서 가장 잘 생긴 대답은 .. 나는 여기서 인생을 말하고 싶지만 우리는 그것이 거짓말 인 것을 알고 있습니다. i1.memy.pl/obrazki/8f68408024_no_life.jpg
ZenVentzi

1

이것은 무한 러너이므로 배경색이 절차 적으로 생성된다고 가정합니다. 알고리즘을 잘 모르겠지만 해당 색상 출력을 사용하여 범위를 제한하십시오.

  1. 가능한 배경색 옵션으로 플랫폼 색상을 제외시킬 수 있습니다 (그러나 배경이 약간 다르고 구분하기 어려울 수 있음). 예 : IF backColor = platformColor THEN GetNextBackgroundColor (). 이를 위해 'IsColorSimilar (color1, color2)'함수를 만들 수도 있지만 더 어렵습니다.

  2. 알려진 유효한 배경색 목록을 사용하고 순환하십시오.

  3. 두 가지 색의 '스타일'이 다릅니다. 플랫폼이 밝고 밝을 수 있으며 배경색을 불포화 색으로 제한합니다. 색상을 나타내는 전통적인 RBG 방식에서 벗어나 HSL과 같은 모델로 이동해야합니다.

색상 작업을위한 훌륭한 Unity 애드온은 ColorTools입니다. 비용은 $ 10이지만 그만한 가치가 있습니다. https://www.assetstore.unity3d.com/en/#!/content/21966

생성 된 배경색의 채도를 낮추기위한 Desaturate () 및 두 색이 서로 너무 일치하는지 확인하는 IsSimilar ()와 같이 찾고자하는 색상을 생성하는 메소드가 있습니다.

약간의 검색으로 인터넷의 다른 라이브러리에서 다른 유사한 기능을 무료로 찾을 수 있습니다.

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