Page 1 of 10
1
2
3
... LastLast
  1. #1

    WoW's Engine is NOT old or outdated!

    Okay I've seen this one a lot and it really frustrates me so, just like we did when everybody didn't know what the difference between Reskinning/Remodelling/Skeletons was, we're going to sit down and learn some lessons about how vidya jams are made.

    First of we need to understand WHAT an engine is not:

    An engine is not used to make models.
    An engine is not used to make texture.
    An engine is not a static thing that can't be updated.
    An engine is not used to code. (This one is a lie, sort of.)

    An engine IS:

    Used to take models from a pro software like 3DSMax, Maya or AutoDesk etc.
    Used to take textures from a pro software like zBrush or Photoshop etc.
    Used to animate models.
    Used to import and combine all of these things.
    Used to "render" all of these things which is the main limitation of an engine.
    Used to write "scripts" which tell things what to "do" in your game. (See, I lied. Sorry.)
    Used to hold a database of every item, spell, model, sound, AI and functionality ever used in your game.
    Used make new versions of those things that are very specific to your game's gameplay AND
    Used to automate tasks, especially programming tasks, in a way that is "developer friendly" so that you don't need knowledge of C++ to add stuff.

    An engine is the tools you use to put together the puzzle of pre-made pieces that assembles into your game. So it's important, first and foremost, to understand that an engine doesn't affect the QUALITY of your graphics. Whether you're making a next-gen Crysis 5 clones or retro Doom remakes; your tools are, in principal, the same and your engine will get those mdoels and textures into your game one way or another. If Blizzard wanted to they could comepletely overhaul their ENTIRE games graphics to a hyper-realistic or kawaii-anime style. The engine wouldn't even blip on it.

    The reason I bolded the line about rendering is that an engine does actually have SOME limits to how well it can take all of those things and mix them together and put them all into one blob within which you can move around. Renderers do things like shading and texture filtering and all those other things your graphics card boasts about being able to do which you can change in your graphical settings. This doesn't CHANGE the texture or model, it changes how it is displayed to your screen; how much processing it goes through and how much it gets refined before displaying. Everytime a new type of "texture filtering" or "shading" or "lighting" becomes mainstream the WoW Engine has been updated to be able to use those technologies. This is usually one of the bigger changes to make to your engine, not least of all because it had to be tested with literally 100s of graphical cards for them to be considered "officially supported" by the quality assurance team so that they know where the client is to blame and where the user's hardware is the problem.

    What an engine can also help you with is how rapidly/smoothly/efficiently you can place those models, textures and envrionmental objects into your world. Some engines have really cool tools to help you do this. WoW's engine lets you take a graphics tablet and just drag & drop models/terrain into your world and then paint with any textures you have handy right on to the world and can animate and add "logic" to it all, on the fly! How can such a supposedly old engine, one that pre-dates main-stream graphics tablets, do this? Well that's the next thing to understand:

    An engine is never finished. You get it working and then your Designer says "Hey, I can place a Rocket and make it launch and I can place a Shark and make it swim; I can't attach this Rocket to this Shark's back and make the Shark fly" and your Engineer says "Well that's because there's no script for that" and the Designer will usually sit down and write a little script; perhaps recycling the script of that spell they made once for that one fight that did a similar thing, they take a model and select an animation from a drop down box of the animations that model can do and they "equip" the Shark with the Rocket and add "logic" for "flying" until they have the result they imagined.

    Blizzard uses a scripting language called LUA. You've heard of that, it's what your add-ons are made out of and you may even know the limitations of those add-ons/macros. Blizzard doesn't really have those limitations, though. They can do all sorts of cool things with LUA because that's what LUA is designed to do, It bridges the gap between hardcore C++ code and "designer code" which essentially amounts to something like:

    Code:
    // This is not at all what actual LUA looks like but the point is that the code is pretty user friendly compared to other code.
    rocket, shark
    rocket+shark = rocketshark
    make rocketshark = fly
    IF there's a problem with that, the engineers can always open up the nuts and bolts of the engine and change it. That's the really cool thing about programming! If it can't do something then you can just... make it do it. And this isn't a huge problem. You can usually add some small functionality to your engine in a few days with just one engineer on it because that's what engineers are taught to do. They take a crap load of existing code and slot a tiny addition in that doesn't break everything else and BOOM. Your engine just got updated.

    WoW's engine is called WoWEdit. It's made BY Blizzard. They have an entire "Tools" team dedicated to updating that engine every single day. They constantly work with art, gameplay, sound and database designers to add functionality to their engine. This is why Blizzard have never acknowledged that an "old engine" is to blame. WoWs engine IS old but that only makes it more powerful and user-friendly to add stuff to the game. It doesn't limit the game because it's had the chance to be updated so much that it can do more than most engines in the world can with the added advantage of being made SPECIFICALLY to add things for ONE game as opposed to something like Unity engine which is designed to build ANY games.

    So I hope a few people take the time to read this. I can answer questions to an extent if anybody has any. I know a fair amount about engines and I'm sure I'm not the only person this particular line bothers! I'm just sorry I couldn't include visuals because it's really hard to get pictures of WoWEdit and I doubt they'd really help make my point.

  2. #2
    So that's why Blizzard or more specifically the art team said at Blizzcon that the engine is the limiting factor when creating new stuff because if they overdo it (use too many polygons or bones) the engine will crash. Also I didn't see all these bump, specular maps, tesselation and other stuff other engines can do in WoW. You can theoretically change everything within an engine but depending how it was designed in the first place it can take a lot of time and very often it's better to build a new one from ground up.

    WoW's engine is old and outdated (in terms of what it can do at the moment and how efficient it uses resources) and was never created for an MMO. The inefficiency of the engine is the reason why they can't go nuts. The way you write it, it sounds very easy but in reality it is very hard. Even little changes in the code can have huge consequences and is why we still don't have everything other engines can do. Why do they use alpha maps to simulate the semi reflective surface of metal instead of using specular maps? Why do they create textures that suggest a 3D feel instead of using bump or parallax mapping? The engine doesn't support that and it's a lot of work to implement that.

    Look at other engines out on the market and they all scrap lots of things from their engine because creating it from the ground up is easier. WoW's engine is old and not more powerful or more userfriendly than other engines on the market.

  3. #3
    So basically engine is LIKE an language?
    Instead of getting hoped up over a new language its just as optimal to add new "words" to the old language which new language has?

  4. #4
    Quote Originally Posted by lordjust View Post
    and very often it's better to build a new one from ground up.
    This comment makes it seem like you don't know what you're talking about. Iterative design is a thing; if you think that the Blizzard devs aren't constantly refactoring their code whenever they have to go in and touch it to add new features, you need to work with an Agile environment or something. Building a new engine is a monumental undertaking compared to modifying an existing one. Like, you don't think that Unreal is throwing their old engine out and starting brand new whenever they make a new version, do you?

  5. #5
    Quote Originally Posted by lordjust View Post
    So that's why Blizzard or more specifically the art team said at Blizzcon that the engine is the limiting factor when creating new stuff because if they overdo it (use too many polygons or bones) the engine will crash. Also I didn't see all these bump, specular maps, tesselation and other stuff other engines can do in WoW. You can theoretically change everything within an engine but depending how it was designed in the first place it can take a lot of time and very often it's better to build a new one from ground up.

    WoW's engine is old and outdated (in terms of what it can do at the moment and how efficient it uses resources) and was never created for an MMO. The inefficiency of the engine is the reason why they can't go nuts. The way you write it, it sounds very easy but in reality it is very hard. Even little changes in the code can have huge consequences and is why we still don't have everything other engines can do. Why do they use alpha maps to simulate the semi reflective surface of metal instead of using specular maps? Why do they create textures that suggest a 3D feel instead of using bump or parallax mapping? The engine doesn't support that and it's a lot of work to implement that.

    Look at other engines out on the market and they all scrap lots of things from their engine because creating it from the ground up is easier. WoW's engine is old and not more powerful or more userfriendly than other engines on the market.
    You, good sir, seem to know your stuff! And everything you've said is true. Not going to deny it, know full well that WoWs engine DOES have limitations to what it can do and it's a huge amount of effort to get it to do those things and this is, in part, because it's old. Or as you astutely pointed out: "wasn't built to do it that way". But I disagree that it's "usually better to start from ground up", it's very rarely a good idea to do that!! Starting from scratch is a lot harder than just adding new functionality to an engine and that's pretty intense work already.

    Things like including sun-shafts, texture scaling, SSAO lighting, actual-water and completely rebuilding the animation tools for Mists were such huge jobs. The animation tools were specifically failing with such high bone counts because it wasn't built very well from the outset hence the muppet-like models of Pre-Mists. And some of those limitations are actually fine by design; 2D textures are an intended part of that so-called "unique Warcraft aesthetic" and so that is not so much as a limitation as it is a design choice. An engine could be updated to provide a greater level of realism but why do that if you do not want a greater level of realism? Personally I think the texturing they've done in Siege is fantastic, they've gotten really good since they shifted to using zBrush as a department.

    I'd disagree that the engine is less user friendly. I've seen WoWEdit in action and even if you'd never used an engine before you could sit down and use it. It is FANTASTIC. It can't compare to the power of newer engines on a technical level, but in terms of functionality? The advantage of bespoke software shines through here.

    My post was more aimed at a general audience who have no knowledge of game design or game engineering. You can surely appreciate that it's necessary to... round-out the details for the sake of educating the masses. Teach them whole numbers before moving onto fractions, you know?

    - - - Updated - - -

    Quote Originally Posted by Dzudzadzo View Post
    So basically engine is LIKE an language?
    Instead of getting hoped up over a new language its just as optimal to add new "words" to the old language which new language has?
    Exactly! As sephrael points out, iterative design is where you take something that works and make it work better. An engine is a complex and growing thing, being added to constantly as much as the game itself gets new content. So when people suggest that WoW isn't realistic-looking because it has a new engine they're not REALLY right. WoW's engine COULD do a lot more and could be updated to do a lot more but they choose not to add those things because they don't think they're needed. They like how the game looks and whilst they might make occasional changes they would never start from scratch. So a WoW 2 would still be built using the WoW Engine.
    Last edited by thesmall001; 2014-03-06 at 06:29 AM.

  6. #6
    Herald of the Titans Haidaes's Avatar
    Join Date
    Mar 2010
    Location
    BUoE - Bureaucratic Union of Europe
    Posts
    2,968
    Quote Originally Posted by Dzudzadzo View Post
    So basically engine is LIKE an language?
    Instead of getting hoped up over a new language its just as optimal to add new "words" to the old language which new language has?
    The problem is unlike a "language" you can't just add a new word to your dictionary without possibly breaking existing words. This is where the whole concept of "just add this" falls flat on the nose, because adding "Schnitzel" to the english language does not break "steak". Everyone who ever programmed software which isn't just GUI should know that you can't add every kind of feature without changing interfaces (variables, return values, structures) sometimes. The deeper a change is in the code the more of the overlaying code needs to be changed to fit that.

  7. #7
    Quote Originally Posted by Haidaes View Post
    The problem is unlike a "language" you can't just add a new word to your dictionary without possibly breaking existing words. This is where the whole concept of "just add this" falls flat on the nose, because adding "Schnitzel" to the english language does not break "steak". Everyone who ever programmed software which isn't just GUI should know that you can't add every kind of feature without changing interfaces (variables, return values, structures) sometimes. The deeper a change is in the code the more of the overlaying code needs to be changed to fit that.
    Very good points here. You cannot make wholesale changes to an integrated system without breaking the interface in some fashion as you mention.

  8. #8
    Good discussion going on here. Might teach people something useful
    Quote Originally Posted by laserguns View Post
    But do they have data showing how much fun players are having? Because surely that's what counts. You could have a game where only 1% of players can do the top raid but still everybody's having fun, and you could have a game where 100% of the players see everything but they're all bored and whining and quitting. Fun can't be quantified with straight-up data, and trying to use statistics to measure fun is a dangerous logical minefield.
    "The Perfect Raid Design Drawn by me .

  9. #9
    Wow engine is old, outdated and is at it's limits.
    Last edited by Laysson; 2014-03-06 at 08:47 AM.

  10. #10
    Whether it's new or not, it really doesn't compare to new games coming out now. ES:O's graphics are gorgeous and that game's engine purrs like a kitten even during heavy load stress tests, in beta no less. I think I got even better FPS than I do in wow, and my framerates are pretty decent.

    Quote Originally Posted by lordjust View Post
    So that's why Blizzard or more specifically the art team said at Blizzcon that the engine is the limiting factor when creating new stuff because if they overdo it (use too many polygons or bones) the engine will crash. Also I didn't see all these bump, specular maps, tesselation and other stuff other engines can do in WoW.
    Yeah, I don't really understand why Blizzard uses their engine as an excuse for graphics limitations and then claim they don't need to update their engine since they're constantly updating it...

  11. #11
    This is really interesting for me, someone who doesn't about stuff like this.

    Well written, good info

    9/10

    -1 for no pictures
    Quote Originally Posted by Count Zero View Post
    I think MMO-C should be renamed "HJTC-C" - Hyperbolic Jumping To Conclusions Champion.

  12. #12
    Quote Originally Posted by Celista View Post
    Whether it's new or not, it really doesn't compare to new games coming out now. ES:O's graphics are gorgeous and that game's engine purrs like a kitten even during heavy load stress tests, in beta no less. I think I got even better FPS than I do in wow, and my framerates are pretty decent.


    Yeah, I don't really understand why Blizzard uses their engine as an excuse for graphics limitations and then claim they don't need to update their engine since they're constantly updating it...
    WoW is famous for how astoundingly efficient it is. That efficiency may not scale into the upper brackets but it still supports very old setups as well as retaining the ability to capitalize on higher end rigs. Again, I think this comes down to a common misconception which is that "realistic = better graphics" which I just can't agree with when some of my favourite games, aesthetically, are not particular graphical powerhouses. But then, I liked Wii styles more than PS3 or X360 so maybe I'm just a sucker for stylized over photo-realistic rendering.

    And they don't use it as an excuse. They said "we're working on it" and that really only applies to the character models. Making the models was never the hard part, building a new suite of animation tools was the challenge and they did that throughout Cataclysm's development and refined it for and during Mists. This allowed the Art guys to properly import models with bones and animate them in engine.

    Lead Tool Engineer, Monte Krol had this to add:

    "We make a separation between Tools and Engine. Tools produce stuff the Engine consumes. It's really common to refer to "toolchain", which means a sequence of things, like a model coming out of 3dsmax, into a game-ready format (.m2), then added to a creature in WOWEdit. The toolchain then includes the exporter, converter, and WOWEdit itself."

    https://twitter.com/thesmall001/stat...50798766387200

  13. #13
    But it is old.. they have done upgrades over a decade.. so it seems like the graphics have hardly changed for players who have played forever. Also.. don't they use parts of the graphics engine from warcraft 3?

  14. #14
    So it's important, first and foremost, to understand that an engine doesn't affect the QUALITY of your graphics.
    I don't know if I should cry or laugh in front of such absurdities

    Anyway, talking about software aging and modifications or improvements, there is a limit of what you can improve or modify, a limit that is imposed by complexity, time constraints, risks, resources and so on. There comes a time in the life of every software when people would say "OK, that's it, we are starting from scratch". They just can't do that in WoW unless they jump over an expansion

  15. #15
    When people say "engine", they are normally referring to the render part of, the part responsible for the pretty graphics.

    That part of the engine IS old.

    2014. No HDRR. Still using forward rendering instead of deferred.

  16. #16
    Field Marshal Freeaze's Avatar
    Join Date
    Mar 2010
    Location
    Sweden
    Posts
    88
    Quote Originally Posted by Laysson View Post
    Wow engine is old, outdated and is at it's limits.
    Care to elabroate? =)
    Quote Originally Posted by gherkin View Post
    Problem: I have a square peg and a round hole. Peg must fit in hole.
    Solution1: Round off the edges until it fits the desired hole. Solution2: Make the round hole a square.
    People's Perception1: Why didn't you just make both a triangle? Because clearly you're stupid.
    People's Perception2: Obviously you are a moron - rounding edges or making the hole different doesn't change the fact that they didn't fit together in the first place.
    http://eu.battle.net/wow/en/character/alakir/Freeaze/

  17. #17
    Dreadlord Turbotef's Avatar
    Join Date
    Nov 2010
    Location
    Michigan
    Posts
    878
    WoW looks like a complete turd next to FF14, GW2, Rift, and Tera. Still looks great for what it is and can do though. The WoD Character models so far look better than most MMO characters IMO.
    http://us.battle.net/wow/en/characte...nipsoft/simple
    TERA - Lolapetto (Reaper lvl 60) - Akress (Berserker lvl 60, retired)
    FF14 - Nakaress Solatte (lvl 30 Monk, lvl 35 Warrior)
    GW2 - Dilla Donia (lvl 80 Warrior)

  18. #18
    Quote Originally Posted by Mosotti View Post
    I don't know if I should cry or laugh in front of such absurdities

    Anyway, talking about software aging and modifications or improvements, there is a limit of what you can improve or modify, a limit that is imposed by complexity, time constraints, risks, resources and so on. There comes a time in the life of every software when people would say "OK, that's it, we are starting from scratch". They just can't do that in WoW unless they jump over an expansion
    What I said holds true. If you have a texture or model then the engine doesn't... really... CHANGE it. It converts it, sure. It has to render it, if your engine can't filter or multi-sample then YEAH it'll have an impact but it hasn't changed it, only how it is presented has changed.

    Nobody starts from scratch. It is almost NEVER worth starting from scratch. Starting from scratch should ONLY be done if you've engineered yourself into a corner. Minecraft? That engineered itself into the ground by taking short-cuts and using Java and so in that case it made sense to completely re-factorize (which can't even be considered "starting from scratch", really) but that came at a massive cost to Mojang and to their update schedule. WoW would, and should, never do that.

    - - - Updated - - -

    Quote Originally Posted by SodiumChloride View Post
    When people say "engine", they are normally referring to the render part of, the part responsible for the pretty graphics.

    That part of the engine IS old.

    2014. No HDRR. Still using forward rendering instead of deferred.
    True but this is pretty advanced stuff. The average commentor doesn't know about this stuff. They just see an engine as an abstract thing. I took Games Engineering for my Degree and I shit you not there were people on my course who thought the Engine was a piece of Hardware that changed how realistic the graphics were. So close... So far...

    We're trying to educate people on what an engine does and does not do. Saying WoW's graphics are "bad" because of the engine is unfair unless you can justify that by saying "Because I prefer my textures bumpy." The most common misconception being WoW graphics are cartoony because of the engine; which, whilst not unture, is a gross oversight of the design decision to make them that way.

  19. #19
    Quote Originally Posted by Freeaze View Post
    Care to elabroate? =)
    - Games engines and created by coders,
    - Game engines performance are affected by coders skills / languages limits,
    - Engines can be updated / upgraded till a certain limit,
    - WOW engine is at its limits, Blizzard is trying to keep it updated as much as possible till their next game (Titan) using a new game engine build from scratch,
    - If WOW is still popular (and sure it will be), they will give us a WOW 2.0 based on this new engine.

  20. #20
    Quote Originally Posted by Laysson View Post
    - Games engines and created by coders,
    - Game engines performance are affected by coders skills / languages limits,
    - Engines can be updated / upgraded till a certain limit,
    - WOW engine is at its limits, Blizzard is trying to keep it updated as much as possible till their next game (Titan) using a new game engine build from scratch,
    - If WOW is still popular (and sure it will be), they will give us a WOW 2.0 based on this new engine.
    I would say that WoW engine i very well beyond limits it was created in 2001
    They sayed that it uses the base engine from W3 which is engine for RTS.

    I wouldnt mind WoW 2.0 on new engine, really the CPU demands are bit tough (with the CPU listed in minimal/recomended you are unable to play most of 25 Raids and with more playerbase owning really ancient machines it is very limiting)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •