• 한국어
  • Unity URP 에서 스파인캐릭터에 틴트(색상적용)을 넣고 싶습니다.

안녕하세요

캐릭터가 선택 됐음을 표시해주는 효과를 주고 싶습니다.
처음에는 아웃라인을 넣는 것을 생각했습니다만. URP에서 아웃라인 기능이 예쁘게 생기지 않는 다는 것을 알게 되었습니다.

그 다음 캐릭터의 틴트 컬러를 빨간색 등 다른 색으로 바꾸는 방법을 생각해봤습니다.
매터리얼을 수정하면, 그 매터리얼을 사용하고 있는 모든 캐릭터가 색깔이 변하므로 불가했습니다.
매터리얼을 교체하면, 매터리얼을 바꾸는 것은 퍼포먼스에 부담이 있다는 이야기를 들었습니다.

일반적인 스프라이트 이미지에는 SpriteRenderer 컴포넌트에 Color기능이 있고
Sprite 기본 셰이더에도 _RendererColor 같은 기능이 있습니다.

스파인 캐릭터에서도 이런 기능을 사용할 수 있는지 궁금합니다

Related Discussions
...

여기에서 spine-unity 문서를 확인하십시오.
spine-unity Runtime Documentation: Changing Materials Per Instance
문서에서도 언급한 것처럼 Spine Examples/Other Examples/Per Instance Material Properties 예제 장면을 확인할 수 있습니다.

SpriteRenderer의 색상 매개변수 사용 관련: SkeletonAnimationSpriteRenderer가 아니라 MeshRenderer를 사용합니다. SRP 일괄 처리는 다소 예상치 못한 방식으로 작동하므로 시나리오가 스켈레톤 틴팅, 'MaterialPropertyBlocks' 또는 'CustomMaterialOverride'를 통해 미리 생성된 틴티드 머티리얼 버전 설정으로 더 잘 작동하는지 대상 장치에서 테스트하는 것이 가장 좋습니다. 후자는 SkeletonRendererCustomMaterials 구성 요소를 통해 설정할 수도 있습니다.


Please check out the spine-unity documentation here:
spine-unity Runtime Documentation: Changing Materials Per Instance
As also mentioned in the documentation, you can check out the example scene Spine Examples/Other Examples/Per Instance Material Properties.

Regarding using SpriteRenderer's color parameter: Please note that SkeletonAnimation does not use a SpriteRenderer but a MeshRenderer. SRP batching behaves in somewhat unexpected ways, so please best be sure to test on the target device whether your scenario works better with skeleton tinting, MaterialPropertyBlocks or setting a pre-created tinted material version via CustomMaterialOverride. The latter can also be set via a SkeletonRendererCustomMaterials component.