저는 삽화 논리를 하고 싶어요.

8997 단어 삽화 논리Unity
삽화 논리를 하고 싶은데... 자동적으로 문제를 풀 수 있는 부분을 만들고 싶어요.
그것으로 삽화 논리를 만들려고 합니다.

화면 준비


뭐, 일단 화면이 있어야 돼.
사이즈 변경해도 괜찮아요.
가운데 바르는 곳은 GridLayout으로 배열한다.

가로세로의 크기에 따라 이곳의 너비를 바꾸면 자동으로 크기를 조절할 수 있다
수평 및 수직 숫자
옆에 있는 Vertical Layout은 수량에 따라 넓이를 늘려줍니다.
Horizontal Layout으로 그 아이에게 오른쪽으로 기대어 그 아이에게 버튼을 만들어
이것은 하나하나의 숫자다.숫자를 표시하기 위해 서브에 텍스트를 추가합니다.
클릭하면 숫자가 됩니다.×취향에 따라.
Vertical 및 Horizontal 을 거꾸로 구성하는 경우도 마찬가지입니다.
그리고 로딩 시 필요한 수량을 복제하여 제작 완료

자동으로 바르면 숫자가 나와야 돼요.



색깔을 고려해야 하기 때문에 한 줄의 숫자는 이렇다.
IllustLineは下記2つのパラメータを持つクラス
    public int count;
    public int drawColor;


###横一列の数の計算
List<IllustLine> line = new List<IllustLine>();
int count = 0;          // 繋がってる数
int dc = 0;             // 塗る色
for (int x = 0; x < width; x++)
{
    // 繋がってる
    if (セルが塗られている状態 && セルの色 == dc)
    {
        count++;
    }
    // 色が変わってる
    else if (セルが塗られている状態 && セルの色 != dc)
    {
        if (dc != 0 && count != 0)
        {
            // リストに数追加
            line.Add(new IllustLine(count, dc));
        }
        count = 1;
    }
    // 繋がってない
    else
    {
        if (count != 0)
        {
            // リストに数追加
            line.Add(new IllustLine(count, dc));
        }
        count = 0;
    }
}
if (count != 0)
{
    // リストに数追加
    line.Add(new IllustLine(count, dc));
}

스스로 문제를 내는 것은 매우 번거롭기 때문에 그림에서 자동으로 제작된다


나는 이 사진을 문제로 본다.

콘셉트는 아래의 사진 모자이크 아이디어.
사진 모자이크 하고 싶어요~중 하나
포토 모자이크 하고 싶어요~ 둘. 간단히 말하면 만들 그림 크기 설정 그림을 그 크기로 줄이기 위해서 픽셀당 크기를 계산합니다 픽셀의 평균 색상 표시 색상에 가까운 색상 설정하기 픽셀로 설정 평균 색상 계산하기 // 1픽셀의 평균 색 계산 private Color GetAvarageColor(Texture2D tex, int startX, int startY, int cellWidth, int cellHeight) { float rrr = 0; float ggg = 0; float bbb = 0; for (int y = startY; y < startY + cellHeight; y++) { for (int x = startX; x < startX + cellWidth; x++) { Color c = tex.GetPixel(x, y); rrr += c.r; ggg += c.g; bbb += c.b; } } rrr /= (float)cellWidth * (float)cellHeight; ggg /= (float)cellWidth * (float)cellHeight; bbb /= (float)cellWidth * (float)cellHeight; return new Color(rrr, ggg, bbb, 1); } 색 차이의 계산 // 색차를 계산합니다. float diff = Mathf.Pow(baseImgCellColor.r - imgColor.r, 2) + Mathf.Pow(baseImgCellColor.g - imgColor.g, 2) + Mathf.Pow(baseImgCellColor.b - imgColor.b, 2); 각 픽셀은 팔레트와 색상 차이를 비교합니다. 최저 색상을 설정하지만, 일정한 차이가 있을 경우, 이 색상을 팔레트에 추가합니다 30사이즈, 벚꽃잎처럼 하얀 11가지 색깔로 만들어 보세요.
연두색으로 황록색을 만들어 봤습니다.

같은 색깔을 100px로 바꿨어요.

이 사이즈면 거의 그림을 재현할 수 있어요.그리고 색깔.

색상은 미리 지정된 것이 아니라 이미지에서 색상을 가져옵니다.


이미지의 평균값이 기존 팔레트와 어느 정도 이상 떨어져 있으면 추가 색상 처리를 수정했습니다.
색깔이 원래의 그림과 많이 다르지 않다.

만약 원화와 점화가 비슷한 색깔이 매우 적다면 색깔도 잘 표현될 것이다


설정을 조정해야 하지만, 몇 개의 색 차이로 새로운 색을 추가해야 합니까?
여기까진 미리 준비한 거야.
자동 문제 푸는 데 하고 싶지만
시간이 있을 때 한가로이 해 보세요.

좋은 웹페이지 즐겨찾기