I want to create a specyfic 2d image effect. It consists in modifying a sprite so it looks like it is being zoomed to a point or "absorbed" by that point. I'm not really sure what is the technical name of this effect so I cannot explain it correctly.

Here you can see a video of what I'm talking about, it is the effect when the character absorbs the three glyphs.


What is the name of this effect? How can I implement it with XNA for 2D textures/sprites?

  • \$\begingroup\$ It's worth pointing out that the effect in the video you've linked seems to be a frame-based animation. Although you could certainly do something similar procedurally - with a shader or simply deformed geometry. \$\endgroup\$ Commented Nov 13, 2012 at 10:57
  • \$\begingroup\$ I'm not sure if I understand "frame-based" animation. Could you explain it a bit? I was thinking about creating a grid for the texture and then pulling from some of the vertexs to create this effect. \$\endgroup\$
    – Ed.
    Commented Nov 13, 2012 at 11:06
  • \$\begingroup\$ Ok, i've been looking around and I understand that frame-based animation is the same as common sprite-based animation. The thing is that in that case, it is not a frame-based animation. During the game you collect lots of those glyphs and this effect is used extensively. \$\endgroup\$
    – Ed.
    Commented Nov 13, 2012 at 12:04

1 Answer 1


You could call it texture warping, or simply texture deformation. In XNA you could achieve something like that by transforming the texture's pixels' coordinates. You map the pixels of the texture to a grid, then modify the positions of the grid's vertices. Since the effect in Castlevania is quite unique, you will have to experiment and play around with your own deformation algorithm until you achieve an effect you like.

There's a nice tutorial for a similar technique here: Screen-space deformations in XNA


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .