Unity3d 在atlas中使用纹理偏移创建带有NGUI的动画精灵

Unity3d 在atlas中使用纹理偏移创建带有NGUI的动画精灵,unity3d,offset,texture2d,sprite-sheet,ngui,Unity3d,Offset,Texture2d,Sprite Sheet,Ngui,在Unity3d中,我从NGUI插件获得了一个带有UISprite组件的游戏对象。 所以我需要使用一个带有纹理的图集来设置UISprite的纹理 现在我希望UiSprite被动画化。不同的框架在地图集本身的精灵表中 我了解到,通过更改偏移量,可以使用精灵表设置某些对象的动画。 我的问题是,如何设置当前纹理而不是整个贴图集的偏移?到目前为止,我只能更改整个地图集的偏移量 是否有可能从地图集或其他地方确定纹理的位置,并以此计算偏移量 我不知道该怎么做。 非常感谢您的任何见解。您实际上不需要手动执行此

在Unity3d中,我从NGUI插件获得了一个带有UISprite组件的游戏对象。 所以我需要使用一个带有纹理的图集来设置UISprite的纹理

现在我希望UiSprite被动画化。不同的框架在地图集本身的精灵表中

我了解到,通过更改偏移量,可以使用精灵表设置某些对象的动画。 我的问题是,如何设置当前纹理而不是整个贴图集的偏移?到目前为止,我只能更改整个地图集的偏移量

是否有可能从地图集或其他地方确定纹理的位置,并以此计算偏移量

我不知道该怎么做。
非常感谢您的任何见解。

您实际上不需要手动执行此操作。方法有点取决于您的场景。如果要播放动画一次或在循环中播放,只需使用组件(添加组件>NGUI>UI>精灵动画)

这允许您创建一组特定的命名和编号精灵。设置正确的前缀、帧率以及是否循环,就可以开始了

但是,即使您想以某种方式手动控制它,也不需要直接使用偏移。通过设置的
spriteName
,可以在运行时动态更改显示的精灵。所以你只需要设定精灵的名字,剩下的就交给NGUI了

如果你想做全面的精灵动画,NGUI可能不是最好的选择。它毕竟是一个GUI框架。其他可供研究的工具包括

  • ,它现在还包括一个UI系统
  • ,其中也有一个免费版本

使用NGUI的精灵动画:

该视频演示了以下内容:

  • 如何将sprite工作表导入NGUI
  • 如何将Unity Sprite(多模式)导入NGUI
  • 创建动画剪辑(精灵动画)
  • 将此动画片段附加到NGUI精灵
  • 我希望这对你有用

    谢谢

    维杰


    dehinrsu@gmail.com

    我已经看过这些选项,但它们不支持我正在使用的SpriteSheet。很不幸,我不得不这样做。你是说你有一个外部精灵表?也就是说,一个不是由NGUI自己的atlas generator生成的?或者让NGUI为您生成atlas。或者开始研究其他二维工具。NGUI并不是真正用于成熟的精灵动画/2D游戏。这是一个用户界面工具。你可以部分到达那里。但这可能不是最好的选择。我得到了一张精灵表,我将它添加到NGUI生成的图集中。然后我将导出单个精灵,并将它们添加到图集中。NGUI不处理开箱即用的外部SpriteSheet。