SpartanUI

203 - Bring back the animated health/resource bars

What is the enhancement in mind? How should it look and feel?

SpartanUI versions 2.0 through 2.5.2 had really nice animated health/power bar textures.

You can see them in this video: http://www.youtube.com/watch?v=GtWIO4zF0TE

They were removed in 2.6.0 when the unitframe system was replaced with oUF, and they were supposed to be reimplemented shortly thereafter, but it was delayed, and ultimately ended up not happening.

I think it would be really nice if you could find a way to reimplement them.

Name Size MD5
_SpartanBarsTest.zip 541.5 KiB a8f3934fcde6...
User When Change
wutname1 Sep 11, 2014 at 04:49 UTC Changed component from None to PlayerFrames
wutname1 Oct 24, 2013 at 15:24 UTC Changed status from New to Accepted
JTF195 Oct 12, 2013 at 06:22 UTC Changed description:
- !SpartanBarsTest proof of concept
+ plain$What is the enhancement in mind? How should it look and feel?
+
+ SpartanUI versions 2.0 through 2.5.2 had really nice animated health/power bar textures.
+
+ You can see them in this video: http://www.youtube.com/watch?v=GtWIO4zF0TE
+
+ They were removed in 2.6.0 when the unitframe system was replaced with oUF, and they were supposed to be reimplemented shortly thereafter, but it was delayed, and ultimately ended up not happening.
+
+ I think it would be really nice if you could find a way to reimplement them.
JTF195 Oct 12, 2013 at 05:59 UTC

Added attachment _SpartanBarsTest.zip

JTF195 Oct 01, 2013 at 08:28 UTC Changed description:
  What is the enhancement in mind? How should it look and feel?

- SpartanUI v2 had really nice animated health/power bar textures.
+ SpartanUI versions 2.0 through 2.5.2 had really nice animated health/power bar textures.
  You can see them in this video: http://www.youtube.com/watch?v=GtWIO4zF0TE
- I can't remember why they were originally replaced with the static textures currently in use, but I think it would be really nice if you could find a way to re-implement them.
+ They were removed in 2.6.0 when the unitframe system was replaced with oUF, and they were supposed to be reimplemented shortly thereafter, but it was delayed, and ultimately ended up not happening.
+
+ I think it would be really nice if you could find a way to reimplement them.
JTF195 Oct 01, 2013 at 08:12 UTC Create

You must login to post a comment. Don't have an account? Register to get one!

  • 9 comments
  • Avatar of Haghala Haghala Dec 02, 2014 at 01:06 UTC - 0 likes

    Ok, i have done a lot more testing and AnimateTexCoords does not work with oUF with Blizzard own StatusBar it just displays texture wrong when value updates. Blizzard's StatusBar:SetValue() Does not support TexCoords, causing all-in-one files to not display correctly.

    Current way to do it is to use StatusBar:SetStatusBarTexture() and create a StatusBar for each Texture/frame to prevent flickering. (Currently how i do it in SpartanUI: Animated)

    or

    Create a statusbar from scratch using Frame:CreateTexture.

  • Avatar of JTF195 JTF195 Oct 25, 2013 at 19:36 UTC - 0 likes

    @wutname1: Go

    Out of curiosity, how do you plan on implementing it?

    For what it's worth, I think it would be completely feasible to re-implement the original animation system, rather than using the more primative injection-based method

    Last edited Oct 25, 2013 by JTF195
  • Avatar of wutname1 wutname1 Oct 24, 2013 at 15:23 UTC - 1 like

    Ok, So i will be bringing this back into the Core SpartanUI, however not in this current Alpha Build String. This will need to wait until the current update is vetted and out the door.

  • Avatar of JTF195 JTF195 Oct 11, 2013 at 10:55 UTC - 0 likes

    @Haghala: Go

    The update interval you're using may be the same, but the animation seems a little choppy. You also desaturated the textures and are using oUF to color them, which I believe is the culprit behind the lack of 'depth' (They just seem a little bit flat compared to the original ones - maybe it's just the coloration)

    EDIT3: The default animation speed for the castbar in SUI 2.5.2 was 32 fps (1 / 32 = 0.03125). The rest of the bars were 12.5 fps (1 / 12.5 = 0.08). I checked these values using the option you implemented, and they appear to animate more faithfully (the textures still stutter and pop occasionally, but I don't think there's really all that much you can do to fix that) You should create a separate slider for the castbar, and change them to allow you to input the desired framerate, with the defaults set to 32 and 12.5

    The injection-based method works alright, but I'd really like to see if we can re-implement the original animation system somehow.

    My understanding is that the original all-in-one files might be able to be used with the built-in function AnimateTexCoords: https://github.com/tekkub/wow-ui-source/blob/live/FrameXML/UIParent.lua#L3207

    (More info here: http://www.wowinterface.com/forums/showthread.php?t=38813)

    Not sure if that method could possibly give better results. (Granted, it would probably have to be hacked into the main addon code or oUF itself)

    EDIT: I built a very small proof-of-concept addon to test this, and it appears that the built-in function animates horizontally, then vertically, whereas the original SUI function animated vertically first. This causes the bars to animate incorrectly. I'm going to see if I can find a solution.

    EDIT2: I successfully built a proof-of-concept animated bar. (Attached) The older style animation system still works, however the cropping function originally used to make the bars smoothly transition (texture:SetTexCoordModifiesRect) was deprecated in 3.3.5, which is why the whole system was removed in the first place. I'll keep looking for a workaround.

    I also noticed that the original CastBar.blp file had some compression/conversion artifacts. (Even dating all the way back to the SUI 2.0 PublicBeta) I sent Ansu an email to see if he happens to have the original files. Fingers crossed.

    Last edited Oct 14, 2013 by JTF195
    Name Size MD5
    _SpartanBarsTest.zip 541.5 KiB a8f3934fcde6...
  • Avatar of Haghala Haghala Oct 11, 2013 at 10:09 UTC - 0 likes

    Yeah, the original SpartanUI created its own StatusBar api based on Texture that worked diffirent than current oUF/WoW version of StatusBar object. Similar to the orginal my addon cycles texture currently at 50fps where original cycles texture posistion at the same rate. Texture position cycling don't work with StatusBar:SetTexture position due to a bug that causes :SetValue to reset position data when new values are set, cause the full texture to show instead of the positioned data (hence 40 files instead of 40 position datas).

    oUF got support for edge spark but ive yet to tackle the injection for it to work or how to improve the smooth animation for StatusBar.

    and yeah, Original did work more like a resize texture than a statusbar(croping).

    Last edited Oct 11, 2013 by Haghala
  • Avatar of JTF195 JTF195 Oct 10, 2013 at 21:55 UTC - 0 likes

    @Haghala: Go

    I took a look at the code, and it appears you're simply changing the background texture of the bars at the specified interval, correct?

    It works, but the bars don't animate as fluidly as I remember, and the textures no longer have the same "depth".

    Edit: After watching a few more old videos of SpartanUI 2.x, I realized what the major difference is: The textures were anchored to the "current" position of the bar, rather than the ends of the bar. This is most evident on energy/focus bars.

    Examples:

    http://www.youtube.com/watch?v=I-VU0XTFm_w (The rogue's energy bar)

    http://www.youtube.com/watch?v=hLzBBZbeMBk (Focus bar of the pet, starting around 1:30)

    http://www.youtube.com/watch?v=2LFhcO8j_eI (Mana bars)

    Last edited Oct 11, 2013 by JTF195
  • Avatar of Haghala Haghala Oct 08, 2013 at 08:08 UTC - 0 likes

    @JTF195: Go

    wutname1 or anyother author of SpartanUI are free to use my code in the main build, the artwork is from the original SpartanUI so in general i have no right to the art (even tough i had to change the orignal files to go past a bug in how updatetexture/updatevalue works in WoW)

    the current injection based code don't work on party frames.

  • Avatar of JTF195 JTF195 Oct 03, 2013 at 15:55 UTC - 0 likes

    Looks like this has already been done:

    http://www.curse.com/addons/wow/spartanui_animated

    It would be nice if you could merge this back into the main addon package.

  • Avatar of JTF195 JTF195 Oct 01, 2013 at 08:29 UTC - 0 likes

    You can find a list of other issues that have been collecting dust over the years at

    https://code.google.com/p/spartanui/issues/list

  • 9 comments

Facts

Last updated
Sep 11, 2014
Reported
Oct 01, 2013
Status
Accepted - Problem reproduced / Need acknowledged.
Type
Enhancement - A change which is intended to better the project in some way
Priority
Medium - Normal priority.
Votes
0
Component
PlayerFrames

Reported by

Possible assignees