Honest question about graphical engine and WoW

Dear Blizzard,

Thank you for being the amazing company you have been and still are, first of all. Second of all, once more, please fix Reforged. I belive WC3 RoC and TFT deserve it, and even if it’s only a graphical overhaul, it deserves to be at its best. The game definitely can’t be broken, have redundancies or not be optimized overall, be it in Classic or Reforged flavour.

That said, I really wanted to ask something. I hope some blue account reads me and gives me and the community some info on this.

WC3:R looks really good. The graphics are definitely an upgrade from 2002 now in 2022. I mean whoever gets bothered by this, it’s a FACT. You can’t argue with that. Has other issues? Yes. Some of them are brand new in R and not from Classic? Sadly yes.

But the fact remains that Reforged looks very good. I wish it would never ever make my PC drop FPS, make me lower settings or overheat my GPU and crash (honestly), but yes, it looks very nice.

Now my question is because WoW in 2004 was based off WC3’s graphical engine from 2002. Was built on that engine.

Now it’s been almost 2 decades, and though WoW:SL looks much better than Classic, TBC or WotLK, it still looks oldish to me and many.

Hence, I am honestly wondering: If WC3 has been graphically Reforged and 2002’s graphics are updated now, can the same be done with WoW? Can 2004’s graphics be updated with the new engine improvements?

I think this would be greatly beneficial (if implemented properly and paid close attention to) to the release of Dragonflight next year or the year after. Or maybe you’re saving this for a potential World of WarCraft II? I honestly don’t know, nor can you guys at Blizz comment on that right now, clearly, but still…

WC3:R graphics for WoW, is it a thing? Is it possible considering both engines are based off 2002’s WC3 engine? Thoughts? Comments? (Everyone, stay positive please, we are all quite tired of negativity; see it like this: if it brings nothing good or helps in no way, then why say it? There are plenty of complain threads out there, take one of those if you want to vent, please). Thank you a lot, many blessings!

Kind regards,

Diego,
A supporter

Sure, the graphics aren’t bad. Do they belong in this game though? No. Here’s a quote from the OG art director:
“We didn’t want to be Lord of the Rings or standard D&D fantasy. We wanted our characters to be the superhero versions of fantasy characters, rock stars with battle axes, with each one of our heroes and units looking like they could take on a whole army by themselves.”

Overly realistic graphics make this game a lot more difficult to read and a lot more bland than what we had 3 years ago.

As written, this question has to be directly for Blizzard and not any outside technologist. Even on third party WoW servers, because WoW and Reforged have separated 3D asset formats, the current answer is “no” in the very specific technology sense. You may see someone port a Reforged model into WoW, but most likely the model would not have all of its PBR “bells and whistles” to look as good on WoW as it does on Warcraft 3 unless if WoW has support for some of those newer texture layers. And maybe WoW does because I have not kept up on that and WoW’s formats tend to change all the time because there is a constant team behind updating the game and has been for years.

But, to be specific, Warcraft III Reforged models each have 4 texture layers: Diffuse, Normal map, ORMT and Emissive. One way to think of this is that unlike the old 3D graphics where each point on the surface of a model had color - three values of Red, Green, Blue, or Transparency – essentially now each point on the surface of a Reforged model has up to 16+ values. And those values are:

  • Red
  • Green
  • Blue
  • Transparency
  • High Resolution “normal” Surface X
  • High Resolution “normal” Surface Y
  • High Resolution “normal” Surface Z
  • Occlusion value
  • Roughness (affects shine and reflectivity)
  • Metalness (affects shine and reflectivity)
  • % of the Red/Green/Blue to replace with Player’s Color ingame
  • Red “Emissive” glow amount
  • Green “Emissive” glow amount
  • Blue “Emissive” glow amount
    … and another pair of RGB values defining the color of the pixel of the image of some trees and grass in the sunlight that shows in the reflected mirror of a metal surface

So, I have spent a lot more time messing around on Reforged than on WoW. I don’t know exactly if WoW added these same kinds of texture layers. At this point, it might be that WoW already supports them and that the Reforged formats could be ported onto the newer WoW engine if done carefully by some hacky private server. But, if you can imagine from the list of values above, to make each point on the 3D surface more complicated this “PBR” rendering style is used on Reforged. It was not invented specifically for Reforged by any means, but Reforged does customize it in some ways. For any game, when they do something like this because our computers are equipped to deal with “images” and not a pixel grid where each pixel has 16 attributes, essentially to add all these extra values listed above onto a point on the 3D surface what they do is to just keep adding more images to the textures used by the 3D mesh. And each image will have its “Red”, “Green”, “Blue”, and “Alpha” (transparency) color components interpreted to have different meaning – they aren’t really those colors at all – other than that those are the common names used for the 4 numbers stored to that point in the pixel grid.

If we look at the Blizzard MDX model format used on Reforged, we can see that it ignorantly defied its own history during the development of Reforged. In the Warcraft III 2002 game up until 2019, the Blizzard MDX model format that we see on Warcraft III was always labelled as “Version 800” in the binary metadata. This model version was basically always the same; there are hundreds or thousands or perhaps tens of thousands of custom Warcraft III fan-made models on modding websites that are all in the “Version 800” format.
If you look at the history of World of Warcraft as it grew out of that same engine, during the Alpha/Beta of the World of Warcraft there were clients that existed where the models were still in this Blizzard MDX format that we see on Warcraft 3, except that the format was not entirely the same. It made subtle changes and the version number increased. Last time I saw one in the wild, I was looking at an MDX “Version 1300” format file of a Murloc that someone was asking me to possibly port to Warcraft III. The file was from around the year 2005.

The “Version 1300” of the MDX added onto the 3D Geometric groups in this format (called “Geosets”) two new fields called BIDX and BWGT that I do not know the in-house full name for (Blizzard tended to have internal human readable names for the parts of the model data). But we can assume these fields were probably named BoneIndex and BoneWeight. The meaning of the binary structure was that all of the BoneIndex fields tell a vertex of the 3D geometry where to get its animation data from, and all of the BoneWeight fields tell the vertex how much % of that animation data to apply. So you could have a cape that mostly follows Arthas’s shoulder by 90%, but also moves 10% in correspondence with a fake motion that represents the wind or something like that.

It is impossible to express the same animation information in a Warcraft III “Version 800” format file because there was no weighting system. So, a port of a WoW model into Warcraft III in some cases will likely not look as good as it does on WoW and may need human-tweaking. If we look at Warcraft III WoW port models on fan websites, we may find some where complex capes or wings appear to animate in slightly incorrect ways for this reason. There are workarounds, so it’s not as if nobody has made “decent looking” representations of almost the same thing on the Warcraft III 2002 format, I’m just saying that the data as given doesn’t exactly translate to that old format.

So, enter Warcraft III Reforged. A team of guys at Blizzard start working on this game in 2017-2020 and they are not familiar with WoW’s MDX format because WoW has diverged so far to the point that it no longer uses MDX as it had done back in 2005. WoW uses the “M2” format (MDX version 2, presumably) which changed extension after it got to a point where the internal structure would be unrecognizably different, I assume.
The guys doing Warcraft III Reforged, then, began counting this version number in the MDX format upwards again and upgraded it but in a way that clobbers the fundamental meaning of the version numbers because they counted upward from 800 AGAIN but with a different meaning. So, for example, although Reforged did not reach the same “Version 1300” number in their counting, the models of Reforged Beta were originally “Version 900” and then in the Reforged release they are all “Version 1000” but where these version numbers would totally fail to load into WoW’s engine even if you could find a 2005 version of WoW that exactly was built for the “Version 1000” format of the MDX from the first time this version number was increased. If this sounds really confusing and you wonder “Why?” simply think of it as two independent technologies that independently grew up in two places at two different times and have nothing to do with each other, except that they started from the same original code and diverged it into two directions in different ways.

Now, because these two divergent technologies tried to achieve the same goals with the same MDX version numbers, but with two different authors doing the programming 10+ years apart, on the Reforged models that go above “Version 800” into the higher numbers and add new features, the same BoneWeight and BoneIndex information that I mentioned above are encoded not in BIDX/BWGT chunk tags but instead inside a chunk tagged SKIN because the process of rigging a model onto its bones is sometimes called “skinning”. Within this chunk, the same information is bundled as one (both indices and weights) in a format that does not match the first time the “MDX” format was upgraded to have this feature back in 2005.

Although it was mentioned at the Warcraft 3 Reforged Blizzcon announcement that one of their programmers had a horrible time trying to shove these Reforged assets into Warcraft III, and then they got a WoW guy on it and he said it was like a “light bulb” moment and he realized “This is how the WoW system started out! I finally get it!” and then copied a bunch of stuff from WoW into the Reforged render mechanisms and got the Reforged model loader going relatively quickly, it is fair still to say that I believe the systems are not the same. If anything, when they said that I believed their mortal ignorance was a tragedy for Planet Earth, because for a moment they admitted the value to society of the original Warcraft III code which they effectively wrote over and replaced with a vastly more complicated system that switches between Reforged and its predecessor so that no other human will ever have the “light bulb” moment that this WoW guy had back then. But that is my bias, wishing the code of Warcraft III were open to the world for modding and education for the same reason people build museums. Unfortunately, in this world, that company is pressured to publish Diablo Immortal instead, just to survive, because it’s so hard to get by financially and there is a real pressure to be like that.

So, this is a really roundabout and technical way for me to explain to you that the formats are not the same, but I am hoping it adds some understanding for you. There is a big technical effort someone would have to do to either format the Reforged assets to put them onto World of Warcraft, or else redefine what World of Warcraft is to make it be able to load the Reforged assets. Redefining what World of Warcraft is would be basically impossible without the original code that only Blizzard has and that they will never share (with good reason). And, reformatting the Reforged assets to put them into the .M2 format for WoW would be very difficult and probably feel like a big waste of time for whoever was doing it – although, if anything, it would be the most likely thing to be even remotely possible. Whether it is possible depends on how extensible the “.M2” format’s latest evolution has become, and as someone who does not mod World of Warcraft, I am relatively ignorant of the full extent of that format today.

However, looking briefly at the result of a Wiki page found in a basic internet search about the format, I hardly find the corresponding inputs anywhere in the format necessary to dictate to the render machine even a normal map texture layer from Reforged. There’s some footnote on the wiki I was looking at that maybe BfA introduced some “waterfall” system with equivalent features, but the guys writing the Wiki don’t even seem to fully know how it works.
Elsewhere, on Reddit, I was able to find some nerds arguing about how Sylvanas in the Heroes of the Storm looks better than on WoW for this same reason, because the WoW version does not have the “normal map” technology and the Heroes of the Storm does. (The “normal map” stuff is one of all those layers used in Reforged that I mentioned above.) The date of the reddit page was 3 years ago, and some people were already complaining that the post was a troll and used the 2008 version of Sylvanas from WoW. So, for all I know, in recent years WoW might have tried to incrementally introduce the same technology as Reforged in some places, but I can’t really speak to that.

Anyway, to make a long story short, it stands to reason that the calculus involved in the PBR reflectance equation might not even be happening on your graphics card in World of Warcraft, so it might simply not be capable of taking the Reforged models as input no matter how much hackery you do. But even if it already does have that and just opts not to use it in many cases, putting Reforged into there would be a big technical undertaking that would probably look out of place.

More likely, the rumors on the street were that rather than putting Reforged art into World of Warcraft, instead the fans of the Warcraft III 2002 game might succeed at trolling Blizzard into making Reforged2 “The Purist Version” where the art of the game is not inspired by WoW, is inconsistent with WoW lore, and is instead internally consistent with the Warcraft III experience and simply targets offering the Warcraft III experience as it was prior to Reforged but with slightly more polygons in each model file.

As someone who mods Warcraft III and at this point simply wishes that I had the Warcraft III game code myself so that I could be inventive and creative without needing to be pushed this way and that by the whims of the corporate leadership’s endless quest for revenue, honestly… I reckon I won’t get much out of a Reforged2 “The Purist Version” mod layered on top of what is already there in Warcraft III, because the ever-increasing complexity of the system can often be worse for modding than some slight graphics improvement.

But, it’s not my place in our world’s social hierarchy to decide the future of this game.

oO? You mean just 48 bits dedicated to that?