Blizzard_NamePlates customization/performance
I'm sure some of you already customized the new nameplates, just curious how everyone's doing it.
I've hooked: 1. DefaultCompactNamePlateFrameSetupInternal for all my modifications (textures, an additional icon for elite mobs, level text and changing positions/size) 2. NamePlateDriverFrame.UpdateNamePlateOptions for correcting castbar spell icon size and castbar height (this sucks, because all nameplates are updated twice, but replacing the function (instead of hooking it) doesn't change performance at all) And I also replaced frame.nameChangedCallback with a custom function to set level and show/hide the elite indicator and call the original callback afterwards. Everything is working fine but I when there's a large amount of namplates on the screen and I move the camera (this doesn't happen when I'm not moving it) the FPS drop from 100 to ~30. Without any modifications they drop to ~40. (I tested this in ICC - when you go to Professor Putricide a massive amount of cockroaches spawn, but it can also be tested in Gundrak right before the first boss or everywhere else where 30 nameplates can be shown at the same time, because that's the cap). Instead of hooking DefaultCompactNamePlateFrameSetupInternal and replacing NamePlateDriverFrame.UpdateNamePlateOptions I also tried to replace the objects SetSize/Setpoint/etc. with a dummy function - that doesn't seem to impact the performance at all, it only makes the "Larger Nameplates" option unusable. I can post the code if anyone is interested, but most of it is just replacing textures and moving stuff around, I'm more interested if it's just me having those issues (because I hooked the wrong functions), or if it's currently a common problem with Blizzard's new nameplates. |
Relevant discussion of the past: http://www.wowinterface.com/forums/s...ad.php?t=46740
Basically, when you move an element (SetPoint) constantly it's a big performance drop, which you only ever really see with nameplates (as every other UI element is static). In that thread we/they concluded that hiding the frame(s) prior to moving it then showing it again when done moving would result in a much better performance, and no visual difference. Once I have access to the beta, taking a look at the nameplates will definitely be one of my top priorities. |
Quote:
Quote:
|
|
Quote:
|
Quote:
I also just did a test on live, with 170 visible nameplates and moving my camera around my FPS only go down to ~80 and it doesn't matter if I enable outline or not. Maybe it's related to the animations that are tied to the nameplates now, or they just aren't yet optimized and that's the reason why they are capped at 30. |
Quote:
Your best bet would be to report the issue ingame. |
Isn't the reason it's capped at 30 now that nameplates have attributed unit IDs? Someone mentioned this in another thread related to Legion, that you'll be able to get information about a given unit on screen from using nameplate1, nameplate2, .., nameplate30 as the unit token.
|
Quote:
Quote:
|
There appears to be a bug with the Blizzard nameplates where the buff/debuff icons won't always get updated when the nameplate is recycled. I can see it most clearly when going to the Orgrimmar training dummies (where there are lots of people), turning both friendly and unfriendly nameplates on, loading up a dummy with debuffs, and then running around. Eventually you start seeing your debuff icons on friendly player nameplates. Happens even after relog with no addons.
|
ah! good, i was worried my experiments had tainted something.
well not good but... you know what i mean. having not dug too much into the source I've just been making style adjustments via: Lua Code:
|
The standard Blizz nameplates seem much better with today's build 21737. My FPS used to drop by 10-15 with around 20 nameplate on screen. I'm losing around 1-3 FPS now.
|
Quote:
|
You mean someone finally sniffed into one of our threads and fixed it?
|
Quote:
|
There is currently an issue with custom fonts, resulting in big fps drops (around 30~) while rendering moving nameplates.
I also tryed to animate the healthbar textures, which looks pretty sick....unfortunately there are also fps drops =( |
Have you animated the healthbars like oUF_Smooth?
https://github.com/adampoit/ouf-ambr...nts/Smooth.lua Imo that is the best thing you can do. Only one OnUpdate handler for all bars you want to smooth. |
Quote:
Edit: bar smoothin' isn't an issue so far! |
Quote:
If you have separate textures and you're doing a bunch of SetTextures it'll be much slower. |
Quote:
|
All times are GMT -6. The time now is 08:28 PM. |
vBulletin © 2024, Jelsoft Enterprises Ltd
© 2004 - 2022 MMOUI