Vì vậy, tôi đang làm một trò chơi dựa trên gạch và tôi muốn thêm một số bóng giả vào gạch. Nó kinda khó để giải thích vì vậy tôi sẽ làm điều đó với hình ảnh:Làm thế nào tôi có thể tạo hiệu ứng đổ bóng giả?
Hãy nói rằng đây là gạch thế giới của tôi:
Và tôi muốn nó có bóng tối như thế này:
Vì thế giới dựa trên nền, tôi có thể chia tất cả các phần bóng thành hình ảnh riêng biệt:
Nhưng bây giờ tôi không biết làm cách nào để đưa mã này vào. Vâng, thực sự tôi có những ý tưởng, nhưng họ không thể tin được tẻ nhạt và họ không làm việc tối ưu.
Tôi đã thử một đồ sộ nếu-tuyên bố ...
bool ul = adjacentBlocks[0, 0] == Block.Type.Rock; //Upper Left
bool um = adjacentBlocks[1, 0] == Block.Type.Rock; //Upper Middle
bool ur = adjacentBlocks[2, 0] == Block.Type.Rock; //Upper Right
bool ml = adjacentBlocks[0, 1] == Block.Type.Rock; //Center Left
//bool cm = adjacentBlocks[1, 1] == Block.Type.Rock; //CURRENT BLOCK - NOT NEEDED
bool mr = adjacentBlocks[2, 1] == Block.Type.Rock; //Center Right
bool ll = adjacentBlocks[0, 2] == Block.Type.Rock; //Lower Left
bool lm = adjacentBlocks[1, 2] == Block.Type.Rock; //Lower Middle
bool lr = adjacentBlocks[2, 2] == Block.Type.Rock; //Lower Right
if (ml) { texture = "Horizontal"; flipX = false; flipY = false; }
if (mr) { texture = "Horizontal"; flipX = true; flipY = false; }
if (um) { texture = "Vertical"; flipX = false; flipY = false; }
if (lm) { texture = "Vertical"; flipX = false; flipY = true; }
if (ml && ul && um) texture = "HorizontalVertical";
//More if statements I can't be bothered to write
if (ul && um && ur && ml && mr && ll && lm & lr) texture = "Full";
Và một bảng tra cứu đồ sộ ...
var table = new List<TextureBlockLayout>
{
new TextureBlockLayout("Horizontal", false, false, new[,]
{
{ true, true, false },
{ true, true, false },
{ true, true, false }
}),
new TextureBlockLayout("Horizontal", true, false, new[,]
{
{ false, true, true },
{ false, true, true },
{ false, true, true }
}),
new TextureBlockLayout("Full", false, false, new[,]
{
{ true, true, true },
{ true, true, true },
{ true, true, true }
})
};
Nhưng hoặc là tôi đang làm gì đó sai hoặc họ chỉ từ chối làm việc chút nào. Ý tưởng nào?
Ý anh là gì bởi "họ từ chối việc ở tất cả"? – millimoose
Về cơ bản, chúng tạo ra kết cấu bóng hoàn toàn sai. – Dlaor
Được rồi, nhưng vì bạn chưa liệt kê bất kỳ mã vẽ nào, "hoàn toàn sai" không giúp được gì nhiều. – millimoose