커스텀 스크립트 쉐이더로 작성한 쉐이더의 프로퍼티를 유니티C# 스크립트로 게임씬에서 실시간 조절하고싶은데
SetValue를 할 수 있는 함수가 있나요?
안녕하세요!
AnyPortrait의 재질의 쉐이더 프로퍼티를 조절하는 함수들을 다음의 페이지에서 확인하실 수 있습니다.
https://rainyrizzle.github.io/kr/Script/SC_Mesh.html
예를 들어서, "apPortrait portrait"라는 객체의 "_CustomColor"라는 색상 프로퍼티의 값을 "붉은색"으로 변경하고 싶다면 다음과 같이 작성하시면 됩니다.
portrait.SetMeshCustomColorAll(Color.red, "_CustomColor");
재질 프로퍼티를 적용하는 방법에 따라서 다양한 함수 형태가 있습니다.
만약 특정 메시의 재질만 바꾸고 싶다면, 아래와 같이 작성하면 됩니다.
portrait.SetMeshCustomColor(portrait.GetOptTransform("메시 이름"), Color.red, "_CustomColor");
또는 특정 이미지를 가진 모든 메시들을 대상으로 일괄적으로 변경하고자 한다면 아래와 같이 작성하면 됩니다.
portrait.SetMeshCustomColorAll("이미지 이름", Color.red, "_CustomColor");
또한 프로퍼티의 타입별로 다양한 함수들이 제공됩니다.
위 특성을 참고하시어 스크립트 설명 페이지를 보시면 되겠습니다.
다만, 각 스크립트 특성에 따라서 "드로우콜"이 크게 바뀔 수 있습니다.
이에 대해서는 다음의 페이지에서 자세한 설명을 보실 수 있습니다.
https://rainyrizzle.github.io/kr/AdvancedManual/AD_ReduceDrawCalls.html
그리고 커스텀 쉐이더는 아니지만, 저희가 제공하는 메뉴얼 중에, 스크립트로 캐릭터의 재질 속성을 변경하는 예가 있어서 이를 같이 소개합니다.
스크립트 작성 예시를 볼 수 있습니다.
https://rainyrizzle.github.io/kr/AdvancedManual/AD_CharacterCostume.html
문제가 해결되지 않았거나 이 이슈에 대해서 더 궁금한 점이 있다면 댓글을 남겨주세요!
감사합니다.
Eng)
Q. How to control properties of a custom shader with C# script
A. Use the functions of apPortrait introduced on the below page.
https://rainyrizzle.github.io/en/Script/SC_Mesh.html
An explanation of an issue that may increase "draw calls" when changing materials can be found on the following page.
https://rainyrizzle.github.io/en/AdvancedManual/AD_ReduceDrawCalls.html
안녕하세요!
AnyPortrait의 재질의 쉐이더 프로퍼티를 조절하는 함수들을 다음의 페이지에서 확인하실 수 있습니다.
https://rainyrizzle.github.io/kr/Script/SC_Mesh.html
예를 들어서, "apPortrait portrait"라는 객체의 "_CustomColor"라는 색상 프로퍼티의 값을 "붉은색"으로 변경하고 싶다면 다음과 같이 작성하시면 됩니다.
portrait.SetMeshCustomColorAll(Color.red, "_CustomColor");
재질 프로퍼티를 적용하는 방법에 따라서 다양한 함수 형태가 있습니다.
만약 특정 메시의 재질만 바꾸고 싶다면, 아래와 같이 작성하면 됩니다.
portrait.SetMeshCustomColor(portrait.GetOptTransform("메시 이름"), Color.red, "_CustomColor");
또는 특정 이미지를 가진 모든 메시들을 대상으로 일괄적으로 변경하고자 한다면 아래와 같이 작성하면 됩니다.
portrait.SetMeshCustomColorAll("이미지 이름", Color.red, "_CustomColor");
또한 프로퍼티의 타입별로 다양한 함수들이 제공됩니다.
위 특성을 참고하시어 스크립트 설명 페이지를 보시면 되겠습니다.
다만, 각 스크립트 특성에 따라서 "드로우콜"이 크게 바뀔 수 있습니다.
이에 대해서는 다음의 페이지에서 자세한 설명을 보실 수 있습니다.
https://rainyrizzle.github.io/kr/AdvancedManual/AD_ReduceDrawCalls.html
그리고 커스텀 쉐이더는 아니지만, 저희가 제공하는 메뉴얼 중에, 스크립트로 캐릭터의 재질 속성을 변경하는 예가 있어서 이를 같이 소개합니다.
스크립트 작성 예시를 볼 수 있습니다.
https://rainyrizzle.github.io/kr/AdvancedManual/AD_CharacterCostume.html
문제가 해결되지 않았거나 이 이슈에 대해서 더 궁금한 점이 있다면 댓글을 남겨주세요!
감사합니다.
Eng)
Q. How to control properties of a custom shader with C# script
A. Use the functions of apPortrait introduced on the below page.
https://rainyrizzle.github.io/en/Script/SC_Mesh.html
An explanation of an issue that may increase "draw calls" when changing materials can be found on the following page.
https://rainyrizzle.github.io/en/AdvancedManual/AD_ReduceDrawCalls.html