更改 C# 脚本以从 png 文件生成地图
Changing C# script to generate a map from a png file
在 Unity3d 中,我下载了一个名为 Cubiquity 的资产,其中有一个示例脚本可以扫描黑白迷宫的 png 文件并从中构建 3d 迷宫。我想知道的是如何更改脚本以查找颜色而不仅仅是黑色和白色?或者是否有替代此方法的方法可能更容易?
这是示例脚本
该脚本只是对 GetPixels(链接脚本中的第 67 行)的颜色的红色进行采样:
bool isWall = mazeImage.GetPixel(x, z).r < 0.5; // A black pixel represents a wall
因此,如果您希望它测试颜色,您可以将其更改为如下内容:
Color color = mazeImage.GetPixel(x, z);
然后您可以 运行 您的 if 语句或任何您想做的事情。
if(color.r > 0)
Debug.Log("Colour is red");
if(color.g > 0)
Debug.Log("Colour is green");
if(color.b > 0)
Debug.Log("Colour is blue");
在 Unity3d 中,我下载了一个名为 Cubiquity 的资产,其中有一个示例脚本可以扫描黑白迷宫的 png 文件并从中构建 3d 迷宫。我想知道的是如何更改脚本以查找颜色而不仅仅是黑色和白色?或者是否有替代此方法的方法可能更容易?
这是示例脚本
该脚本只是对 GetPixels(链接脚本中的第 67 行)的颜色的红色进行采样:
bool isWall = mazeImage.GetPixel(x, z).r < 0.5; // A black pixel represents a wall
因此,如果您希望它测试颜色,您可以将其更改为如下内容:
Color color = mazeImage.GetPixel(x, z);
然后您可以 运行 您的 if 语句或任何您想做的事情。
if(color.r > 0)
Debug.Log("Colour is red");
if(color.g > 0)
Debug.Log("Colour is green");
if(color.b > 0)
Debug.Log("Colour is blue");