假设我有一个Texture2D
包含一个角色的动画片段。该条带的底线具有某种颜色的点,一种颜色在条带的任何其他地方都没有使用,在每个精灵的开始和结束处(意思是,底部有一个点)每个精灵之前和之后的空行。)
我想裁剪每个精灵之间的所有空白行,从而使一个精灵的结尾重叠另一个精灵的开头(意思是,让一个精灵的结束点成为开始下一个点)。 有没有办法自动使用XNA?
基本上,请从这里开始:http://i41.tinypic.com/2wdx53l.jpg(每个精灵之间都有一个空格。)
对此:http://i40.tinypic.com/10ydjde.jpg(每个精灵的开头与前一个精灵的末尾重叠。)
(红点应该位于每对蓝点之间的中间,但你明白了。)
其他信息:
一个。有int[]
包含每个 strip (行)的开头和结尾的X值,以及List<int>[]
包含每个条的
B中。在每个精灵的开始和结束之间的中间还有另一个点,它不会出现在空白行中。
℃。每个条带都需要导出为.png文件(使用包含每个条带的Texture2D数组)。到目前为止,我可以很好地导出框架(裁剪),但是如果有任何方法可以将它们拼接到一个条带上,那就太棒了。
提前致谢,请原谅复杂的措词......
答案 0 :(得分:0)
我不知道为什么你的精灵之间需要这些点,但是如果你知道每个精灵的宽度,那么你只需要有一个Rectangle
,你就可以在你的spritesheet上按顺序移动(我认为你已经有了),并添加精灵宽度减去该点的宽度
通过这种方式,您应该将一个精灵的结束点作为下一个精灵的起点,如您所知。