저는 컴퓨터 그래픽에서 XNA와 컬러 이론을 잘 아는 사람들을 위해 빠른 질문을 가지고 있습니다. 나는 타일 게임 (Terraria와 같은 것)을 만들고 있는데, 나는 타일 당 조명을 장면에 적용하는 방법을 궁금해하고 있었다. 이 게임에서는 컬러 조명이 필수이며, 지금 당장 4 차원 2D 배열을 사용하여 전반적인 조명과 3 가지 색상 양을 저장함으로써 그 점을 알게되었습니다. 타일을 그릴 때 특정 타일의 텍스처를 사용하지만 3 색 값과 전반적인 조명을 기반으로 동일한 타일에서 색상을 적용하려면 어떻게해야합니까?XNA에서 2D 타일 맵을 조명하십시오.
는 지금이 내 컬러 발생 기능입니다 : 내가 전혀 올바른 방법으로 이것에 대해 갈거야 경우 색상 이론에서 새로운 인
public Color GetColorAt(int x, int y)
{
byte r = _rMap[x, y]; //Red light
byte g = _gMap[x, y]; //Green light
byte b = _bMap[x, y]; //Blue light
byte mul = _lightMap[x, y]; ///Overall light
return new Color(r * mul, g * mul, b * mul, 1);
}
, 나는 아무 생각이 없습니다. 내 조명 시스템은 셀룰러 알고리즘을 사용하여 인접한 모든 타일로 줄이고 퍼집니다. 각 타일의 색상 값이 감소하면 전반적인 광원 값이 필요합니까?
또한 타일 텍스처와 빛을 블렌딩하여 결과를 얻으려면 더하기 또는 곱하기 또는 다른 계산을 사용합니까?
TL : 1. 위의 코드 블록은 각 타일 사이의 빛이 감소한다고 생각합니까? 2. 빛과 텍스처를 결합하여 빛의 색상 아래에있는 텍스처를 얻으려면 어떻게해야합니까?
어떤 도움을 주셔서 감사합니다. 색상 결합에 대한 경험이 없습니다.
이 질문을하기 전에 수행 한 연구는 무엇입니까? – Sebivor