2011-09-11 4 views
0

enter image description here그려지는 분홍색 뒷면 격자 이미지에서 이미지를 올바르게 자르십시오.

위의 이미지를보십시오. 저는 타일 기반 게임을 (레크리에이션으로) 만들고 있습니다. 다른 스프라이트에서는 지형 사각형을 그리드에 배치하기 만 했으므로 아무 문제가 없었습니다. 문제는 여기에서이 캐릭터를 사용하면 그 뒤에 핑크색을 표시하려고 시도한다는 것입니다 (그는 16x16입니다).

저는 System.Graphics를 사용하여 항목을 표시하고 graphics.DrawImage()를 사용할 때이를 잘라냅니다. 특정 색상을 무시하고 투명하게 만들 수있는 방법이 있습니까?

VB.net을 사용하고 있습니다. 모든 .net 답변을 사용할 수 있습니다.

의견의 한 부분 (또는 답변의 추가 점)에 대해 분홍색 격자를 사용하여 스프라이트를 모두 포함하는 방법은 무엇입니까?

답변

1

아마도 이미지를 PNG로 변환하고 배경을 투명하게 만들어야합니다. 그렇지 않다면 비트 맵을 변환 할 수 있습니다.

Public Class Form1 
    Private bmp As Bitmap 

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load 
    bmp = New Bitmap(bitmapFileName) 
    bmp.MakeTransparent(Color.FromArgb(255, 0, 220)) 
    End Sub 

    Private Sub Form1_Paint(ByVal sender As Object, ByVal e As PaintEventArgs) Handles MyBase.Paint 
    e.Graphics.DrawImage(bmp, New Point(32, 32)) 
    End Sub 
End Class 
+0

마지막 질문은 여러 색상을 투명하게 (보라색과 분홍색으로) 만들 수 있습니까 아니면 하나만 만들 수 있습니까? – FreeSnow

+0

@Dade 네, 각 색상에 대해 MakeTransparent 호출을 계속 추가하십시오. – LarsTech