2015-02-06 7 views
1


나는 이상한 문제가있어 알아낼 수 없다.
renderer.material.color를 통해 gameobjects 기본 색상을 변경하려고합니다.
하지만 어떤 이유로 든 일부 색상에서만 작동합니다.
renderer.material.color 이상한 결과가 나옴

이 내 코드입니다 : 내가 스크립트를 테스트 할 때

var color_movement_available = Color(0.17,0.68,0.05,1); 
    var color_movement_available_hover = Color(0.33,1.00,0.17,1); 

그때 나는, 그러나이

case ("movement_available") : 
     renderer.material.color = color_movement_available; 
     break; 

    case ("movement_available_hover") : 
     renderer.material.color = color_movement_available_hover; 
     break; 

처럼에 할당 :

첫째, 나는 색상을 선언 호버링 색상 (분홍색)은 표시되지 않습니다.
인스펙터를 점검했는데, 목표로 한 색상이 정확하게 바뀌 었습니다.
밝은 녹색 (기본 색)의 녹색, 빨간색, 파란색 또는 노란색으로 바꿀 때 예상대로 작동합니다.
다른 색상은 흰색을 생성하고 일부 색상은 변경되지 않습니다.

이 효과를 일으키는 원인이 무엇인지, 아니면 더 나은 방법으로 해결 방법을 알고 있습니까?

은 지금까지 시도하는 것 : (흰색부터) 회색 물질을 초기 basecolor 변경

  • 을 동일한 결과 :

    • 은 (투명/확산으로부터) 확산 물질 렌더러 스위칭 을 또한 , 변화하지

    어쩌면이 색상이 적용되는 방식으로 함께 할 수있는 뭔가가 ...

    환호

    편집 : 스크린 샷 : 또한 Visual clarification 1

    은, 분명히, 같은 색깔과 같은 서로에 가까운 색상 만 어둡게/라이터 나 '

  • +0

    스냅 샷을하시기 바랍니다 material.color. – David

    +0

    편집 된 origanal 포스트를 screencap으로 수정했습니다. – Tuxedomask

    답변

    0

    흰색 생산하는 것들로 표시 개체에 메쉬 렌더러가 있다고 가정합니다.

    는 시도 GetComponent < MeshRenderer>().

    +0

    편집자가'GetComponent (). material.color'를 거부 했으므로'GetComponent (MeshRenderer) .material.color'로갔습니다. 그래도 차이는 없었어. 메쉬 렌더러가이 객체의 유일한 객체이기 때문에'renderer.material.color'는'GetComponent (). material.color'와 같은 것을 반환합니다 ... – Tuxedomask

    관련 문제