我正在寻找关于如何在Canvas组件上创建一个黑色方形形状的图像的逐步解释。
其次,我会寻找一种方法,使图像上的图像像素或点在玩家走过的地方变成白色。我不知道这是如何完成的。 Texture2D和SetPixels是我目前正在研究的主题。
这将是一个小型地图显示器的相机。像RTS游戏中的迷雾往往会像Command&以征服泰伯利亚黎明为例。
后来编辑和/或添加:
我在另一个论坛上得到了这个帖子的代码,我可以在Unity的启动事件上将SetPixel设置为Color.Clear,但不知道如何让它在Update上继续工作。 Color.Clear用于黑色图层或黑色纹理,以便在设置像素时显示下方的小地图(小地图相机)。它在Start() - 事件上绘制一条线。
当我与玩家角色走路时,我曾希望它能清除小地图。我不知道如何使线连续。我仍然有点想出这个问题的过程。如果您有关于此问题的提示,可以根据需要与我分享。
http://answers.unity3d.com/questions/244417/create-line-on-a-texture.html
答案 0 :(得分:1)
我将如何实施它的非常广泛的描述:
创建一个单独的正交相机,从地图上颠倒查看。这将是一个迷你地图相机。现在它只是渲染你已经看到的同一个世界。如果我要做一个粗略的原型,那就足够了。
使所有现有渲染器仅渲染到原始相机中,无论是渲染还是游戏对象层。现在minimap相机什么都没显示。
对于小地图中所需的所有游戏对象,使用只显示在小地图相机中的渲染器创建子对象。现在minimap只看到这些对象;你可能想要使用带有特殊图标的精灵渲染器。
在屏幕上的适当位置渲染迷你地图相机。或者,将其渲染为纹理并在UI系统内的RawImage中使用纹理。
这不是最好的解决方案,但实施起来很快,而且对于很多用例来说已经足够了。