如何在unity3D或c#中将图像分成12个不同的自定义形状

本文关键字:12个 自定义 图像 unity3D | 更新日期: 2023-09-27 18:06:01

我正在开发一款游戏,我从图库中选择图片,然后我需要做的是将其切割成12个自定义形状的部分,然后用作拼图,我需要这12块合并在一起并创建相同的。

编辑:对于那些不理解问题的人,我想要完成的是试图将单个图像分割成不同的部分,然后玩家会找出部分的顺序并制作图像。我希望玩家能够从自己的收藏中添加图片,让游戏更具挑战性并挑战其他玩家。图片会让它更清楚,但由于我没有足够的信用,我在这篇文章中得到了一个,我不知道如何让它在读者的脑海中更清楚。

如何在unity3D或c#中将图像分成12个不同的自定义形状

您正在寻找的可能性是UI组件的屏蔽功能。您可以处理标志Show mask graphics来显示/隐藏相关部分。

您可以使用Graphics.DrawImage从位图中绘制裁剪后的图像到图形对象上。

Rectangle cropRect = new Rectangle(...);
Bitmap src = Image.FromFile(fileName) as Bitmap;
Bitmap target = new Bitmap(cropRect.Width, cropRect.Height);
using(Graphics g = Graphics.FromImage(target))
{
   g.DrawImage(src, new Rectangle(0, 0, target.Width, target.Height), 
                    cropRect,                        
                    GraphicsUnit.Pixel);
}