答案 0 :(得分:0)
您可以将每张图片放在单独的Layer上,并告诉您的“橡皮擦画笔”使用LayerMask忽略要删除的图层后面的图层。当用户点击图像时,它会删除第一层图像的一部分,但只留下图像。
归功于来自here的声明:
LayerMask,或计算机科学中的任何“掩码”,是一个使用的整数 它的32位代表不同的标志。虽然它是一个整数,但是 价值并不意味着任何有用的数字。重要的是哪个 标志打开或关闭。
在LayerMask的情况下,每个标志(每个位)代表一个层。
每个GameObject
的检查器顶部都可以选择图层,您可以在那里添加和命名图层,还可以选择查看它们的不同组合(参见图片)。
答案 1 :(得分:0)
如果你想在单个平面上有2个纹理: - 使用3个纹理(背景,前景,蒙版)制作自定义着色器 - 然后你可以用灰度颜色绘制到那个蒙版纹理,着色器根据蒙版颜色淡化2个纹理(例如,如果颜色是全白,只有前景是可见的)
或者,如果您想在单独的纹理平面后面放置3D对象(并且您只需要擦除现有纹理,而不是将相同的图案绘制回来) - 可以使用任何支持alpha的默认纹理 - 只需在材质中绘制MainTexture,使用颜色绘制alpha 0使区域透明 - 纹理需要在导入器设置中启用[x]读/写以允许在其上绘图
一些相关链接:
统一文档的基本像素图示例:http://docs.unity3d.com/ScriptReference/RaycastHit-textureCoord.html
旧的演示场景,绘制到纹理并使用溶解着色器:http://unitycoder.com/blog/2011/08/10/painting-holes-with-shader-v2-0/
搜索统一混合2纹理与面具,统一绘制到纹理等,以找到更多的例子&着色器。