嗨朋友们 我想制作一个简单的游戏应用程序,用户点击汽车,从那一点开车就意味着当用户点击汽车图像时图像变形很小。我知道使用大量图像可以实现一切,并在用户点击汽车图像时获得更改,但我不想使用这么多图像。
对此有什么解决方案,我怎样才能使图像变形..对于我的英文而言,但是,在这里我粘贴了一个闪存游戏的链接,这就是我想要的......
http://www.playgecogames.com/file.php?f=657&a=popup
请尽快回复 感谢
答案 0 :(得分:3)
您不会说这是2D或3D,还是您要使用的技术。
如果您使用OpenGL实现游戏,则相当简单。对象可以由常规网格组成,图像作为纹理映射到网格。当用户点击对象时,您只需要变形网格。
一种简单的方法是在撞击方向上取一个矢量,将最近的顶点移动一个与撞击力成比例的量,然后扇出以使其余的网格变形量减少。通过变形网格,图像纹理将使用您喜欢的所有凹痕或变形进行渲染。
如果你想在没有OpenGL的情况下使用直接图像,可以使用图像重采样来模拟效果。您拥有原始的原始图像,经过“过滤”以构成生成的图像。起初没有变形,因此您逐字复制原始图像。每次用户点击对象时,您都可以在感兴趣的本地区域内使用过滤器或变换添加变形。此函数将以扭曲的方式重新采样源图像,使其看起来像对象已损坏。
如果你查阅一些关于游戏开发的好书,你会发现很多对象碰撞,变形等方法。
答案 1 :(得分:1)
如果您对图像处理技术有所了解,请参阅以下图像访问图像像素: Apple Reference
你也有这样的库,例如:
simple-iphone-image-processing
但是对于你想要做的事情,这可能不是最简单的方法。我建议你根据可能受影响的区域将汽车分成几个图像。然后,每次碰到汽车时,只需更改与损坏区域对应的图像。
答案 2 :(得分:0)
我认为你应该使用cocos2d效果http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide%3aeffects +多个图像。因为玩家踢车后会有很多部件掉落。就像当用户踢侧镜时,您应该在没有侧镜汽车图像的情况下更改汽车图像。
答案 3 :(得分:0)
制作该Flash游戏的人使用了大约4张图像来显示汽车。如果你想让游戏在2d,最简单的方法就是把汽车拉成大约4件(左侧+右侧(左侧的副本)罩和车顶)。
如果你想“真正”变形汽车,你必须使用像openGLES这样的3D引擎。
我真的建议在2d做这件事:)
答案 4 :(得分:-1)
我建议看一下cocos2d游戏引擎。您可以使用效果修改图像,这些效果是使用虚拟网格应用的。在他们的编程指南中查看effects page。