Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Fuzzy Avatars Solved! Please re-upload your avatar if it was fuzzy!

Uhh, Hero Engine?

124

Comments

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by SpottyGekko

    There's a very good reason why there are specialist companies that focus on developing game engines. It's not a trivial effort, and requires a level of technical expertise that's probably overkill when you're building a game. And the constantly changing hardware landscape and new DX-spec releases means that the engine development can never stop, otherwise it becomes outdated. There's always room for performance improvement, new features, etc.

    We have no idea what BW did with the beta version engine source code they bought originally. But I'd imagine that it's highly unlikely that BW created a substantial "game engine division" to continue developing, expanding and improving the incomplete Hero source code that they bought back in 2005.

    Skills that are overkill if you just want to make a game can suddenly become absolutely essential if you want to make a good game.

    We do know that EA heavily modified the game engine.  You pretty much have to do unless you're fine with your game being horribly unoptimized in addition to being either a generic clone or a buggy mess.  How did they internally choose who would optimize the game engine--or for that matter, which segments of code they would consider to be technically part of the game engine?  I don't know.  But I'd imagine that they didn't just pick people at random and end up with artists coding a game engine.

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by SpottyGekko
    Originally posted by Gdemami

    Oh dear...

    How do you make a game without a set of code you one calls an engine? :)

    Yes, that seems to be a very serious dilemma...

    But there is a solution to that seemingly insurmountable problem: You license somebody else's engine !

    If you license a game engine without having the capability to modify it yourself as needed, then you're basically using the trial version of a game engine.  That's not likely to end well if you're trying to make an AAA game.  Actually, it's not terribly likely to end well if you're making a small-budget indie game, either.

    If you license a game engine, get access to the full source code, and then heavily modify it to fit your game, then it's your own game engine, and not necessarily all that similar to the engine that you originally licensed.

    As for changing game engines, that has to be done periodically.  If you have a 2D game engine designed to draw 2D sprites and then want to make a 3D game, it may be easier to scrap your game engine entirely and start over than to try to modify it.  (Actually, you probably come kind of close to doing that, but grab a bunch of selected small portions of the previous engine that do things that you still need.)  The move from a fixed function pipeline to programmable shaders brought a similar shift.  So did the move to doing more geometry computations on the GPU.  That last one, incidentally, seems to be a shift that a lot of companies are unwilling to make, as DirectX 9.0c dates to before that transition.

  • KarteliKarteli Providence, PAPosts: 2,646Member

    The final result is all what customers see though Quizzical.  How EA filled in the missing parts is undefined.  But what can be observed is that EA filled "it" in, such that the game plays great when nobody is around (80 fps) on a mediocre machine.  Then worse (20 fps) when more than 16 players around.  Then abyssmal when 40 players around around (1-2 fps) .. crashing eventually if more show up.

     

    The crash part might be to other coding horrors, who knows.  It happens though, eventually if a player stays in a populated area for long.  Time til crash is shorter if heavily populated (depends on total computer memory, in my observation - low memory = quick crash, huge memory = crash down the road).  Data gets muddled though when trying to evaluate this phenominum on the fleet, since sectioning was implemented to break the fleet into hundreds of instances.  So the fleet is populated heavily (max 200'ish) but separated in groups.  The memory leak is observable on planets, however.

     

    On superior machines, those fps stats go up, but from what I've seen, not linearly.  A machine 100% better gives 30% more frames under load than a mediocre machine, 200% better gives 50% better than a mediocre machine.  I know this because I've played on my friends computer and they all have diminishing returns.  Even a 5 thousand top of the line balls-out computer still chokes when confronted with large player masses in SWTOR.  Lag, burps, pauses, gags, low frame rate (to my eyes, < 24 fps), you name it.

     

    But it's not to say a really good computer couldn't make the game enjoyable .. because it can.  But it is unreasonable for EA to require players to buy top notch computers, defragment their game, install flash drives, remove all unnecessary process's, including virus scanners just to play the game.  Other games don't require molestation of systems just to get a game to run fine - other games run far better on even worse systems than being played by SWTOR.

     

    Something that EA did causes these problems.  Demo's for Hero exist, they do not have SWTOR's problems ..

     

    Regardless of how EA "filled in" what they needed from the original Hero Engine, regardless of the methods they used, regardless of their design plans .. the end result is significantly lackluster.  And not very worthy of the Star Wars brand label.

     

     

    Want a nice understanding of life? Try Spirit Science: "The Human History"
    http://www.youtube.com/watch?v=U8NNHmV3QPw&feature=plcp
    Recognize the voice? Yep sounds like Penny Arcade's Extra Credits.

  • SpottyGekkoSpottyGekko RotterdamPosts: 3,845Member Uncommon
    Originally posted by Quizzical
    Originally posted by SpottyGekko

    There's a very good reason why there are specialist companies that focus on developing game engines. It's not a trivial effort, and requires a level of technical expertise that's probably overkill when you're building a game. And the constantly changing hardware landscape and new DX-spec releases means that the engine development can never stop, otherwise it becomes outdated. There's always room for performance improvement, new features, etc.

    We have no idea what BW did with the beta version engine source code they bought originally. But I'd imagine that it's highly unlikely that BW created a substantial "game engine division" to continue developing, expanding and improving the incomplete Hero source code that they bought back in 2005.

    Skills that are overkill if you just want to make a game can suddenly become absolutely essential if you want to make a good game.

    We do know that EA heavily modified the game engine.  You pretty much have to do unless you're fine with your game being horribly unoptimized in addition to being either a generic clone or a buggy mess.  How did they internally choose who would optimize the game engine--or for that matter, which segments of code they would consider to be technically part of the game engine?  I don't know.  But I'd imagine that they didn't just pick people at random and end up with artists coding a game engine.

    Not even EA/BW could've gone that far wrong image

     

    We know BW had extensive experience with developing code libraries (engines) for their single-player games. Good ones. Some of those engines were even used by other companies. So they had people that had the necessary skillsets to build engines for 2D and 3D SPG's.

     

    They most likely dropped the (incomplete) source code that they had bought from Simutronics on those poor techies and said: "Here's the code for an 85% completed MMO game engine. You have 6 months to get to know it inside out. After that, we expect you to make it sing and dance. Oh btw, there's 140,000 lines of code and little to no documentation, but that shouldn't be a problem for you, correct ? You're all pro's at doing SPG engines, so how hard can this be ?..."

     

     

  • ignore_meignore_me Apple Valley, CAPosts: 1,987Member
    Originally posted by Gdemami

     


    Originally posted by ignore_me

    Ok. So given that explanation, what is your best guess as to why the game cannot support a decent number of characters on screen at one time? Serious question.

     

    No idea. I am not working at BW :)

    It can be just anything and it isn't easy to analyze and track down either.


    ie. CCP fucked up game performance with one of their expansion and never really found the issue. It took them like 2 years to get the performance somewhat back on track but iirc, it is still no way near how the game was before the expansion.

    hmm interesting :)  well then it makes sense to deduce that if the engine is not responsible, then subsequent work on the game is why the game is unable to perform like its peers. Someone early on reported that the number of calls to the server are crazy high for SWTOR. Any thoughts on that?

     

    Survivor of the great MMORPG Famine of 2011

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by Karteli

    The final result is all what customers see though Quizzical.  How EA filled in the missing parts is undefined.  But what can be observed is that EA filled "it" in, such that the game plays great when nobody is around (80 fps) on a mediocre machine.  Then worse (20 fps) when more than 16 players around.  Then abyssmal when 40 players around around (1-2 fps) .. crashing eventually if more show up.

     

    The crash part might be to other coding horrors, who knows.  It happens though, eventually if a player stays in a populated area for long.  Time til crash is shorter if heavily populated (depends on total computer memory, in my observation - low memory = quick crash, huge memory = crash down the road).  Data gets muddled though when trying to evaluate this phenominum on the fleet, since sectioning was implemented to break the fleet into hundreds of instances.  So the fleet is populated heavily (max 200'ish) but separated in groups.  The memory leak is observable on planets, however.

     

    On superior machines, those fps stats go up, but from what I've seen, not linearly.  A machine 100% better gives 30% more frames under load than a mediocre machine, 200% better gives 50% better than a mediocre machine.  I know this because I've played on my friends computer and they all have diminishing returns.  Even a 5 thousand top of the line balls-out computer still chokes when confronted with large player masses in SWTOR.  Lag, burps, pauses, gags, low frame rate (to my eyes, < 24 fps), you name it.

     

    But it's not to say a really good computer couldn't make the game enjoyable .. because it can.  But it is unreasonable for EA to require players to buy top notch computers, defragment their game, install flash drives, remove all unnecessary process's, including virus scanners just to play the game.  Other games don't require molestation of systems just to get a game to run fine - other games run far better on even worse systems than being played by SWTOR.

    Drawing more stuff is more taxing on hardware.  Having to draw more players means you get lower frame rates.  That's just how 3D graphics works.  If a 3D game engine runs just as well when it has to draw 50 players as when it has to draw one, then it's doing something seriously wrong when it's only drawing one.

    Taking a while to eventually crash sounds like memory leaks.  Check Task Manager to see how much system memory the game uses when you first load it, and then watch as it changes over the course of a few hours.  If it's steadily going upward (well, there will be lots of jumps and drpos, but I mean a general long-term upward trend), then that's memory leaks.  That's the fault of whatever portion of code uses memory but fails to free it up when it is done, and that could be anywhere in the code base.

    If doubling the number of players causes worse problems than merely cutting your frame rate in half, then that sounds like you're running out of video memory.  If a game tries to buffer so much stuff that you run out of video memory, then it has to use system memory as extra.  That means passing through the PCI Express bus, which offers only a small fraction of the bandwidth of video memory in any respectable gaming card--and it already needs a good chunk of that bandwidth for other purposes besides using extra video memory.  For a GPU to access system memory is also much higher latency than dedicated video memory.

    If you're going out of your way to use higher resolution textures and running out of video memory as a result, then that's a classic PEBCAK.  If that still happens at the lowest resolution textures available and you have 1 GB or more of video memory and still get an abrupt drop in performance when too many players are nearby at once (not necessarily on the screen; a game has to buffer data for things that are behind you, as the camera could spin around very quickly), then it's more perplexing.

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by SpottyGekko
    Originally posted by Quizzical
    Originally posted by SpottyGekko

    There's a very good reason why there are specialist companies that focus on developing game engines. It's not a trivial effort, and requires a level of technical expertise that's probably overkill when you're building a game. And the constantly changing hardware landscape and new DX-spec releases means that the engine development can never stop, otherwise it becomes outdated. There's always room for performance improvement, new features, etc.

    We have no idea what BW did with the beta version engine source code they bought originally. But I'd imagine that it's highly unlikely that BW created a substantial "game engine division" to continue developing, expanding and improving the incomplete Hero source code that they bought back in 2005.

    Skills that are overkill if you just want to make a game can suddenly become absolutely essential if you want to make a good game.

    We do know that EA heavily modified the game engine.  You pretty much have to do unless you're fine with your game being horribly unoptimized in addition to being either a generic clone or a buggy mess.  How did they internally choose who would optimize the game engine--or for that matter, which segments of code they would consider to be technically part of the game engine?  I don't know.  But I'd imagine that they didn't just pick people at random and end up with artists coding a game engine.

    Not even EA/BW could've gone that far wrong image

     

    We know BW had extensive experience with developing code libraries (engines) for their single-player games. Good ones. Some of those engines were even used by other companies. So they had people that had the necessary skillsets to build engines for 2D and 3D SPG's.

     

    They most likely dropped the (incomplete) source code that they had bought from Simutronics on those poor techies and said: "Here's the code for an 85% completed MMO game engine. You have 6 months to get to know it inside out. After that, we expect you to make it sing and dance. Oh btw, there's 140,000 lines of code and little to no documentation, but that shouldn't be a problem for you, correct ? You're all pro's at doing SPG engines, so how hard can this be ?..."

    3D rendering doesn't care whether the game is online or single-player.

    Having a lot of the code base undocumented could be more problematic.  But I'd think that they document code as they write it, as trying to come back and add comments to what you did a year ago isn't likely to end well.  Maybe there were placeholder sections in the code that weren't documented because they weren't properly written?

    How much documentation you need varies wildly.  Some code is very straightforward, and you can safely have a couple of lines of comments to explain what some function does and then a couple hundred lines of code with no further documentation.  Other things are very complicated, and call for more comments than proper code.

  • KarteliKarteli Providence, PAPosts: 2,646Member
    Originally posted by Quizzical
    Originally posted by Karteli

    The final result is all what customers see though Quizzical.  How EA filled in the missing parts is undefined.  But what can be observed is that EA filled "it" in, such that the game plays great when nobody is around (80 fps) on a mediocre machine.  Then worse (20 fps) when more than 16 players around.  Then abyssmal when 40 players around around (1-2 fps) .. crashing eventually if more show up.

     

    The crash part might be to other coding horrors, who knows.  It happens though, eventually if a player stays in a populated area for long.  Time til crash is shorter if heavily populated (depends on total computer memory, in my observation - low memory = quick crash, huge memory = crash down the road).  Data gets muddled though when trying to evaluate this phenominum on the fleet, since sectioning was implemented to break the fleet into hundreds of instances.  So the fleet is populated heavily (max 200'ish) but separated in groups.  The memory leak is observable on planets, however.

     

    On superior machines, those fps stats go up, but from what I've seen, not linearly.  A machine 100% better gives 30% more frames under load than a mediocre machine, 200% better gives 50% better than a mediocre machine.  I know this because I've played on my friends computer and they all have diminishing returns.  Even a 5 thousand top of the line balls-out computer still chokes when confronted with large player masses in SWTOR.  Lag, burps, pauses, gags, low frame rate (to my eyes, < 24 fps), you name it.

     

    But it's not to say a really good computer couldn't make the game enjoyable .. because it can.  But it is unreasonable for EA to require players to buy top notch computers, defragment their game, install flash drives, remove all unnecessary process's, including virus scanners just to play the game.  Other games don't require molestation of systems just to get a game to run fine - other games run far better on even worse systems than being played by SWTOR.

    Drawing more stuff is more taxing on hardware.  Having to draw more players means you get lower frame rates.  That's just how 3D graphics works.  If a 3D game engine runs just as well when it has to draw 50 players as when it has to draw one, then it's doing something seriously wrong when it's only drawing one.

    Taking a while to eventually crash sounds like memory leaks.  Check Task Manager to see how much system memory the game uses when you first load it, and then watch as it changes over the course of a few hours.  If it's steadily going upward (well, there will be lots of jumps and drpos, but I mean a general long-term upward trend), then that's memory leaks.  That's the fault of whatever portion of code uses memory but fails to free it up when it is done, and that could be anywhere in the code base.

    If doubling the number of players causes worse problems than merely cutting your frame rate in half, then that sounds like you're running out of video memory.  If a game tries to buffer so much stuff that you run out of video memory, then it has to use system memory as extra.  That means passing through the PCI Express bus, which offers only a small fraction of the bandwidth of video memory in any respectable gaming card--and it already needs a good chunk of that bandwidth for other purposes besides using extra video memory.  For a GPU to access system memory is also much higher latency than dedicated video memory.

    If you're going out of your way to use higher resolution textures and running out of video memory as a result, then that's a classic PEBCAK.  If that still happens at the lowest resolution textures available and you have 1 GB or more of video memory and still get an abrupt drop in performance when too many players are nearby at once (not necessarily on the screen; a game has to buffer data for things that are behind you, as the camera could spin around very quickly), then it's more perplexing.

    SWTOR doesn't use complex polygon counts.  It's very low compared to other games.  Not to mention every race is "human" and moves like a human so there is nothing different there.  Aion has complex polygons in their equipment, to contrast (ie armor very detailed, real-like, sways with motion) .. plus has particle effects to augment it's usage by a player.  Different races add to the complexity in Aion. [I'm using Aion  because I think that's a good example of how to do a graphics engine, not endorsing the quality or longevity of the game]

     

    SWTOR's character creation is very lean.  Not many styles to choose from, limited options, avatar heights and builds come in fixed predetermined sizes.

     

    The crashes are because of SWTOR.  I've had no problems with other games on the same computer.

     

    I guess you didn't get what I was saying about frame rates.  Even the top of the line computers can't play SWTOR smoothely.  If the software is swamping the video card with data then this is a problem.

     

    I understand your theoretical approach, but you also need practical data to complete your research.  Play SWTOR, you'll understand more about gripes.  Theory can only take you so far, about how SWTOR should function. [said because of a previous post .. if I'm wrong, correct me with my apologies]

    Want a nice understanding of life? Try Spirit Science: "The Human History"
    http://www.youtube.com/watch?v=U8NNHmV3QPw&feature=plcp
    Recognize the voice? Yep sounds like Penny Arcade's Extra Credits.

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by ignore_me
    Originally posted by Gdemami

     


    Originally posted by ignore_me

    Ok. So given that explanation, what is your best guess as to why the game cannot support a decent number of characters on screen at one time? Serious question.

     

    No idea. I am not working at BW :)

    It can be just anything and it isn't easy to analyze and track down either.


    ie. CCP fucked up game performance with one of their expansion and never really found the issue. It took them like 2 years to get the performance somewhat back on track but iirc, it is still no way near how the game was before the expansion.

    hmm interesting :)  well then it makes sense to deduce that if the engine is not responsible, then subsequent work on the game is why the game is unable to perform like its peers. Someone early on reported that the number of calls to the server are crazy high for SWTOR. Any thoughts on that?

    The basic rule is that anything that could be used to cheat if the client changes it arbitrarily (e.g., your current health) has to be verified server-side.  Anything that cannot be used to cheat if the client changes it arbitrarily (e.g., the color of your armor) should be done entirely client-side.  The details of what needs to be done on the server will vary wildly from one game to the next.  As such, I'd think that even a highly polished game engine available for license would have mostly placeholders for network code, and rely very heavily on the game coders to fill in the details.

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by Karteli
    Originally posted by Quizzical

    Drawing more stuff is more taxing on hardware.  Having to draw more players means you get lower frame rates.  That's just how 3D graphics works.  If a 3D game engine runs just as well when it has to draw 50 players as when it has to draw one, then it's doing something seriously wrong when it's only drawing one.

    Taking a while to eventually crash sounds like memory leaks.  Check Task Manager to see how much system memory the game uses when you first load it, and then watch as it changes over the course of a few hours.  If it's steadily going upward (well, there will be lots of jumps and drpos, but I mean a general long-term upward trend), then that's memory leaks.  That's the fault of whatever portion of code uses memory but fails to free it up when it is done, and that could be anywhere in the code base.

    If doubling the number of players causes worse problems than merely cutting your frame rate in half, then that sounds like you're running out of video memory.  If a game tries to buffer so much stuff that you run out of video memory, then it has to use system memory as extra.  That means passing through the PCI Express bus, which offers only a small fraction of the bandwidth of video memory in any respectable gaming card--and it already needs a good chunk of that bandwidth for other purposes besides using extra video memory.  For a GPU to access system memory is also much higher latency than dedicated video memory.

    If you're going out of your way to use higher resolution textures and running out of video memory as a result, then that's a classic PEBCAK.  If that still happens at the lowest resolution textures available and you have 1 GB or more of video memory and still get an abrupt drop in performance when too many players are nearby at once (not necessarily on the screen; a game has to buffer data for things that are behind you, as the camera could spin around very quickly), then it's more perplexing.

    SWTOR doesn't use complex polygon counts.  It's very low compared to other games.  Not to mention every race is "human" and moves like a human so there is nothing different there.  Aion has complex polygons in their equipment, to contrast (ie armor very detailed, real-like, sways with motion) .. plus has particle effects to augment it's usage by a player.

     

    SWTOR's character creation is very lean.  Not many styles to choose from, limited options, avatar heights and builds come in fixed predetermined sizes.

     

    The crashes are because of SWTOR.  I've had no problems with other games on the same computer.

     

    I guess you didn't get what I was saying about frame rates.  Even the top of the line computers can't play SWTOR smoothely.  If the software is swamping the video card with data then this is a problem.

     

    I understand your theoretical approach, but you also need practical data to complete your research.  Play SWTOR, you'll understand more about gripes.  Theory can only take you so far, about how SWTOR should function.

    How many vertices a model has typically has little effect on how much video memory you need.  (Incidentally, I hate calling it "polygon counts" even if that's a common term, both because 2D primitives invariably triangles for modern 3D graphics; lines, points, and patches aren't even polygons; and because vertices, not facets, are what is buffered and processed more directly.)  Buffering the textures is likely to take at least an order of magnitude more space than buffering the vertex data and possibly much more than that even.

    One project I'm working on currently buffers exactly 656 bytes of vertex and index data.  Total.  For the entire game.  Internal overhead for keeping track of which buffer is where probably adds some to that, but it still amounts to a rounding error for any modern video card.  Admittedly, that's because tessellation means you need a lot less vertex data.

    Particle effects can be implemented in a lot of different ways, though a DirectX 9.0c game doesn't have access to the modern, efficient things.  Even so, the inefficiencies forced by trying to do particle effects with an archaic graphics API are more about putting unnecessary load on the CPU and passing data from the CPU to the GPU than wasting video memory.  Particle effects likely don't have any textures associated at all, so the video memory needed to store them amounts to a rounding error.

    The only way that character creation options are likely to affect video memory capacity needed much is if it's so restrictive that it allows the game to use the same textures for a lot of different players.  That way, rather than having to load a separate set of textures for every single player, you could load some textures once and grab the same texture when drawing several different players each frame.  That's what games commonly do for NPCs, and is the reason why you get identical centuplets in so many games.  Is SWTOR's character creation really that restrictive?  I'm skeptical.

    -----

    As I said above, a game consistently taking a while to crash, with more memory meaning it takes longer before it crashes, is characteristic of memory leaks.  And yes, memory leaks are a problem of a particular program.  But the leaks could be anywhere in the program, from loading textures to handling the chat box to network code to drawing one particular type of background object to anything else.  Or they could be in several different places.  That really tells you nothing about whether the engine itself is the problem or somewhere else in the code base.

    -----

    Your last paragraph basically mounts to, "This game is awful.  You should play it."  :)

  • KarteliKarteli Providence, PAPosts: 2,646Member
    Originally posted by Quizzical
    Originally posted by Karteli
    Originally posted by Quizzical

    Drawing more stuff is more taxing on hardware.  Having to draw more players means you get lower frame rates.  That's just how 3D graphics works.  If a 3D game engine runs just as well when it has to draw 50 players as when it has to draw one, then it's doing something seriously wrong when it's only drawing one.

    Taking a while to eventually crash sounds like memory leaks.  Check Task Manager to see how much system memory the game uses when you first load it, and then watch as it changes over the course of a few hours.  If it's steadily going upward (well, there will be lots of jumps and drpos, but I mean a general long-term upward trend), then that's memory leaks.  That's the fault of whatever portion of code uses memory but fails to free it up when it is done, and that could be anywhere in the code base.

    If doubling the number of players causes worse problems than merely cutting your frame rate in half, then that sounds like you're running out of video memory.  If a game tries to buffer so much stuff that you run out of video memory, then it has to use system memory as extra.  That means passing through the PCI Express bus, which offers only a small fraction of the bandwidth of video memory in any respectable gaming card--and it already needs a good chunk of that bandwidth for other purposes besides using extra video memory.  For a GPU to access system memory is also much higher latency than dedicated video memory.

    If you're going out of your way to use higher resolution textures and running out of video memory as a result, then that's a classic PEBCAK.  If that still happens at the lowest resolution textures available and you have 1 GB or more of video memory and still get an abrupt drop in performance when too many players are nearby at once (not necessarily on the screen; a game has to buffer data for things that are behind you, as the camera could spin around very quickly), then it's more perplexing.

    SWTOR doesn't use complex polygon counts.  It's very low compared to other games.  Not to mention every race is "human" and moves like a human so there is nothing different there.  Aion has complex polygons in their equipment, to contrast (ie armor very detailed, real-like, sways with motion) .. plus has particle effects to augment it's usage by a player.

     

    SWTOR's character creation is very lean.  Not many styles to choose from, limited options, avatar heights and builds come in fixed predetermined sizes.

     

    The crashes are because of SWTOR.  I've had no problems with other games on the same computer.

     

    I guess you didn't get what I was saying about frame rates.  Even the top of the line computers can't play SWTOR smoothely.  If the software is swamping the video card with data then this is a problem.

     

    I understand your theoretical approach, but you also need practical data to complete your research.  Play SWTOR, you'll understand more about gripes.  Theory can only take you so far, about how SWTOR should function.

    How many vertices a model has typically has little effect on how much video memory you need.  (Incidentally, I hate calling it "polygon counts" even if that's a common term, both because 2D primitives invariably triangles for modern 3D graphics; lines, points, and patches aren't even polygons; and because vertices, not facets, are what is buffered and processed more directly.)  Buffering the textures is likely to take at least an order of magnitude more space than buffering the vertex data and possibly much more than that even.

    One project I'm working on currently buffers exactly 656 bytes of vertex and index data.  Total.  For the entire game.  Internal overhead for keeping track of which buffer is where probably adds some to that, but it still amounts to a rounding error for any modern video card.  Admittedly, that's because tessellation means you need a lot less vertex data.

    Particle effects can be implemented in a lot of different ways, though a DirectX 9.0c game doesn't have access to the modern, efficient things.  Even so, the inefficiencies forced by trying to do particle effects with an archaic graphics API are more about putting unnecessary load on the CPU and passing data from the CPU to the GPU than wasting video memory.  Particle effects likely don't have any textures associated at all, so the video memory needed to store them amounts to a rounding error.

    The only way that character creation options are likely to affect video memory capacity needed much is if it's so restrictive that it allows the game to use the same textures for a lot of different players.  That way, rather than having to load a separate set of textures for every single player, you could load some textures once and grab the same texture when drawing several different players each frame.  That's what games commonly do for NPCs, and is the reason why you get identical centuplets in so many games.  Is SWTOR's character creation really that restrictive?  I'm skeptical.

    -----

    As I said above, a game consistently taking a while to crash, with more memory meaning it takes longer before it crashes, is characteristic of memory leaks.  And yes, memory leaks are a problem of a particular program.  But the leaks could be anywhere in the program, from loading textures to handling the chat box to network code to drawing one particular type of background object to anything else.  Or they could be in several different places.  That really tells you nothing about whether the engine itself is the problem or somewhere else in the code base.

    -----

    Your last paragraph basically mounts to, "This game is awful.  You should play it."  :)

     

    Try it out, it's a free download.  See for yourself.  Like I said, theory can only take you so far.  A bad character customization and graphics engine must be experienced.

     

    Well it's Star Wars :-)   What could possible go wrong?

     

    I'd love to hear your take on theory afterwards :-D

    Want a nice understanding of life? Try Spirit Science: "The Human History"
    http://www.youtube.com/watch?v=U8NNHmV3QPw&feature=plcp
    Recognize the voice? Yep sounds like Penny Arcade's Extra Credits.

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by Karteli
    Originally posted by Quizzical

    Your last paragraph basically mounts to, "This game is awful.  You should play it."  :)

     

    Try it out, it's a free download.  See for yourself.  Like I said, theory can only take you so far.  A bad character customization and graphics engine must be experienced.

     

    Well it's Star Wars :-)   What could possible go wrong?

     

    I'd love to hear your take on theory afterwards :-D

    I've only got 33.4 GB of free space, and would rather not come close to filling that up.  And that's after I uninstalled some stuff to make room for Guild Wars 2.

    "Character creation is fairly restrictive compared to most MMORPGs" is a long way from "character creation is so restrictive that your character uses the same textures as everyone else".  Wearing a graphically different armor?  Different textures.  Wearing the same armor colored differently?  Probably different textures.

  • SpottyGekkoSpottyGekko RotterdamPosts: 3,845Member Uncommon
    Originally posted by Quizzical
    Originally posted by SpottyGekko
    <snip> 

    We know BW had extensive experience with developing code libraries (engines) for their single-player games. Good ones. Some of those engines were even used by other companies. So they had people that had the necessary skillsets to build engines for 2D and 3D SPG's.

     

    They most likely dropped the (incomplete) source code that they had bought from Simutronics on those poor techies and said: "Here's the code for an 85% completed MMO game engine. You have 6 months to get to know it inside out. After that, we expect you to make it sing and dance. Oh btw, there's 140,000 lines of code and little to no documentation, but that shouldn't be a problem for you, correct ? You're all pro's at doing SPG engines, so how hard can this be ?..."

    3D rendering doesn't care whether the game is online or single-player.

    Having a lot of the code base undocumented could be more problematic.  But I'd think that they document code as they write it, as trying to come back and add comments to what you did a year ago isn't likely to end well.  Maybe there were placeholder sections in the code that weren't documented because they weren't properly written?

    How much documentation you need varies wildly.  Some code is very straightforward, and you can safely have a couple of lines of comments to explain what some function does and then a couple hundred lines of code with no further documentation.  Other things are very complicated, and call for more comments than proper code.

    But there's a lot more to it than just 3D rendering, not so ? Otherwise all SPG's would offer an online multiplayer option as standard.

    As for code comments and documentation, this quote is from the HeroEngine blog:

    “It’s not productized yet,” we told Gordon.  “There are whole sections of code that is only roughed in and not optimized for performance or security.  And there are very few comments and very little documentation.”

    That doesn't sound encouraging. There are often many ways to reach a certain goal in a piece of code. Different programmers will often solve the same problem differently. Trying to figure out why someone did something that way instead of this way can be a very time consuming exercise. Doubly so if you're not entirely sure what they were trying to achieve in the first place.

  • KarteliKarteli Providence, PAPosts: 2,646Member
    Originally posted by Quizzical
    Originally posted by Karteli
    Originally posted by Quizzical

    Your last paragraph basically mounts to, "This game is awful.  You should play it."  :)

     

    Try it out, it's a free download.  See for yourself.  Like I said, theory can only take you so far.  A bad character customization and graphics engine must be experienced.

     

    Well it's Star Wars :-)   What could possible go wrong?

     

    I'd love to hear your take on theory afterwards :-D

    I've only got 33.4 GB of free space, and would rather not come close to filling that up.  And that's after I uninstalled some stuff to make room for Guild Wars 2.

    "Character creation is fairly restrictive compared to most MMORPGs" is a long way from "character creation is so restrictive that your character uses the same textures as everyone else".  Wearing a graphically different armor?  Different textures.  Wearing the same armor colored differently?  Probably different textures.

    Same textures.  But the nice gear has a glowing dot.

     

    Your theory is nice, but I'm failing to take you seriously as a result of your hesitation to even install the game you analyze.

     

    Buy an external drive .. Terabyte = $100.

     

    Have a DVD burner?  They are cheap .. burn the excess files you have to DVD disk. [I'd say Blu-Ray burner, but it sounds like you don't have the money, and Blu-Ray is a bit expensive.]

     

    Go through your harddrive and delete stuff!  If you have insurmountable stuff you can't delete or won't go away, reinstall your OS.

     

    You seem talented enough.  Don't make freeing up storage space your kryptonite.

     

     

     

    Want a nice understanding of life? Try Spirit Science: "The Human History"
    http://www.youtube.com/watch?v=U8NNHmV3QPw&feature=plcp
    Recognize the voice? Yep sounds like Penny Arcade's Extra Credits.

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by Karteli
    Originally posted by Quizzical
    Originally posted by Karteli
    Originally posted by Quizzical

    Your last paragraph basically mounts to, "This game is awful.  You should play it."  :)

     

    Try it out, it's a free download.  See for yourself.  Like I said, theory can only take you so far.  A bad character customization and graphics engine must be experienced.

     

    Well it's Star Wars :-)   What could possible go wrong?

     

    I'd love to hear your take on theory afterwards :-D

    I've only got 33.4 GB of free space, and would rather not come close to filling that up.  And that's after I uninstalled some stuff to make room for Guild Wars 2.

    "Character creation is fairly restrictive compared to most MMORPGs" is a long way from "character creation is so restrictive that your character uses the same textures as everyone else".  Wearing a graphically different armor?  Different textures.  Wearing the same armor colored differently?  Probably different textures.

    Same textures.  But the nice gear has a glowing dot.

     

    Your theory is nice, but I'm failing to take you seriously as a result of your hesitation to even install the game you analyze.

     

    Buy an external drive .. Terabyte = $100.

     

    Have a DVD burner?  They are cheap .. burn the excess files you have to DVD disk. [I'd say Blu-Ray burner, but it sounds like you don't have the money, and Blu-Ray is a bit expensive.]

     

    Go through your harddrive and delete stuff!  If you have insurmountable stuff you can't delete or won't go away, reinstall your OS.

     

    You seem talented enough.  Don't make freeing up storage space your kryptonite.

    I don't have a hard drive.  I have a 120 GB SSD, and no hard drive.  And I have other things to do besides playing a game that I have no interest in to try to figure out why it runs poorly.

  • KaiserPhoenixKaiserPhoenix ViennaPosts: 59Member

    Games on Hero Engine look quite different

    http://www.youtube.com/watch?v=kZA9JCbVnzY

    I think HE is a lot more appropriate for cartoon look shader games, but obviously not (yet) to create realistic worlds.

     

     

     

     

     

    most of those hero engine games in this video look like Playstation 2 games with little higher resolution.

  • KarteliKarteli Providence, PAPosts: 2,646Member
    Originally posted by Quizzical
    Originally posted by Karteli
    Originally posted by Quizzical
    Originally posted by Karteli
    Originally posted by Quizzical

    Your last paragraph basically mounts to, "This game is awful.  You should play it."  :)

     

    Try it out, it's a free download.  See for yourself.  Like I said, theory can only take you so far.  A bad character customization and graphics engine must be experienced.

     

    Well it's Star Wars :-)   What could possible go wrong?

     

    I'd love to hear your take on theory afterwards :-D

    I've only got 33.4 GB of free space, and would rather not come close to filling that up.  And that's after I uninstalled some stuff to make room for Guild Wars 2.

    "Character creation is fairly restrictive compared to most MMORPGs" is a long way from "character creation is so restrictive that your character uses the same textures as everyone else".  Wearing a graphically different armor?  Different textures.  Wearing the same armor colored differently?  Probably different textures.

    Same textures.  But the nice gear has a glowing dot.

     

    Your theory is nice, but I'm failing to take you seriously as a result of your hesitation to even install the game you analyze.

     

    Buy an external drive .. Terabyte = $100.

     

    Have a DVD burner?  They are cheap .. burn the excess files you have to DVD disk. [I'd say Blu-Ray burner, but it sounds like you don't have the money, and Blu-Ray is a bit expensive.]

     

    Go through your harddrive and delete stuff!  If you have insurmountable stuff you can't delete or won't go away, reinstall your OS.

     

    You seem talented enough.  Don't make freeing up storage space your kryptonite.

    I don't have a hard drive.  I have a 120 GB SSD, and no hard drive.  And I have other things to do besides playing a game that I have no interest in to try to figure out why it runs poorly.

    I don't understand.  You like talking about graphics engines and their implementation, but you don't like to see how your ideas turned out?

     

    This is disasterous for game makers.  Maybe that idea was why SWTOR turned out so bad? ??

     

    .. you know because designers liked talking about theory so badly, but hated to actually see what become of their game?

     

    WTF

    Want a nice understanding of life? Try Spirit Science: "The Human History"
    http://www.youtube.com/watch?v=U8NNHmV3QPw&feature=plcp
    Recognize the voice? Yep sounds like Penny Arcade's Extra Credits.

  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by Karteli
    Originally posted by Quizzical

    I don't have a hard drive.  I have a 120 GB SSD, and no hard drive.  And I have other things to do besides playing a game that I have no interest in to try to figure out why it runs poorly.

    I don't understand.  You like talking about graphics engines and their implementation, but you don't like to see how your ideas turned out?

     

    This is disasterous for game makers.  Maybe that idea was why SWTOR turned out so bad? ??

     

    .. you know because designers liked talking about theory so badly, but hated to actually see what become of their game?

     

    WTF

    I certainly do want to see how my ideas turn out.  But SWTOR has little in common with my ideas.

    I want to have all textures generated on the CPU rather than loaded from a hard drive.  That way, I can let the end user scale the resolution up or down arbitrarily to fit his hardware.  That also enables very fast loading times (e.g., drop everything but the programs from video memory and reload it in ~1 second), which makes a seamless world trivial to implement.  And I want the game world to be not merely seamless, but round, because "you have reached the end of the world" is a different kind of seam--and an obnoxious one.  A round world means it can be day on one side and night on the other simultaneously, and where it is day or night should slowly move as time passes.

    Also, I want all animations to be procedurally generated.  And with heavy use of tessellation, to make everything look smooth unless it's intentionally blocky.  Offload as much work onto the video card as is practical, so that particle effects may actually increase performance, due to not having to run more demanding fragment shaders for fragments that would have been behind the particles.

    I want an extremely versatile character creator, that doesn't merely require a player to choose from set options created by the game designers.  How many arms do you want, and where do you want them placed?  What shape do you want them?  Legs?  Wings?  What do you want your torso shaped like?  Do you want antennae, horns, or a tail?  How many of which, and where?  Or more generally, pick a shape, adjust the parameters to your liking, and stick it wherever you want.  What colors should everything be, and which texture types from what the program knows how to generate?  And then the program could animate the character to run around--or gallop or fly or slither or whatever.

    And with everything procedurally generated, the data for an entire species should take on the order of several KB.  That's for an entire species, not just a single character, and there could be many characters of the same species that look somewhat similar but meaningfully different.  Every tree should be different from every other.  So should every rock.  Because I don't like identical centuplets.  A species that a player creates for his own character could be used for monsters as well.  And with only several KB of storage needed per species, one could have a hundred thousand different species each independent from all others and still keep the game download under 1 GB.

    Does that sound like SWTOR to you?  It may sound wildly impractical to you.  But if I can do it, then it's practical for me.  I've already implemented some of the things above, and think that I can do most or all of the rest.

  • KarteliKarteli Providence, PAPosts: 2,646Member
    Originally posted by Quizzical
    Originally posted by Karteli
    Originally posted by Quizzical

    I don't have a hard drive.  I have a 120 GB SSD, and no hard drive.  And I have other things to do besides playing a game that I have no interest in to try to figure out why it runs poorly.

    I don't understand.  You like talking about graphics engines and their implementation, but you don't like to see how your ideas turned out?

     

    This is disasterous for game makers.  Maybe that idea was why SWTOR turned out so bad? ??

     

    .. you know because designers liked talking about theory so badly, but hated to actually see what become of their game?

     

    WTF

    I certainly do want to see how my ideas turn out.  But SWTOR has little in common with my ideas.

    I want to have all textures generated on the CPU rather than loaded from a hard drive.  That way, I can let the end user scale the resolution up or down arbitrarily to fit his hardware.  That also enables very fast loading times (e.g., drop everything but the programs from video memory and reload it in ~1 second), which makes a seamless world trivial to implement.  And I want the game world to be not merely seamless, but round, because "you have reached the end of the world" is a different kind of seam--and an obnoxious one.  A round world means it can be day on one side and night on the other simultaneously, and where it is day or night should slowly move as time passes.

    Also, I want all animations to be procedurally generated.  And with heavy use of tessellation, to make everything look smooth unless it's intentionally blocky.  Offload as much work onto the video card as is practical, so that particle effects may actually increase performance, due to not having to run more demanding fragment shaders for fragments that would have been behind the particles.

    I want an extremely versatile character creator, that doesn't merely require a player to choose from set options created by the game designers.  How many arms do you want, and where do you want them placed?  What shape do you want them?  Legs?  Wings?  What do you want your torso shaped like?  Do you want antennae, horns, or a tail?  How many of which, and where?  Or more generally, pick a shape, adjust the parameters to your liking, and stick it wherever you want.  What colors should everything be, and which texture types from what the program knows how to generate?  And then the program could animate the character to run around--or gallop or fly or slither or whatever.

    And with everything procedurally generated, the data for an entire species should take on the order of several KB.  That's for an entire species, not just a single character, and there could be many characters of the same species that look somewhat similar but meaningfully different.  Every tree should be different from every other.  So should every rock.  Because I don't like identical centuplets.  A species that a player creates for his own character could be used for monsters as well.  And with only several KB of storage needed per species, one could have a hundred thousand different species each independent from all others and still keep the game download under 1 GB.

    Does that sound like SWTOR to you?  It may sound wildly impractical to you.  But if I can do it, then it's practical for me.  I've already implemented some of the things above, and think that I can do most or all of the rest.

    The only way to know is to play SWTOR.  Download it, it's free

    Want a nice understanding of life? Try Spirit Science: "The Human History"
    http://www.youtube.com/watch?v=U8NNHmV3QPw&feature=plcp
    Recognize the voice? Yep sounds like Penny Arcade's Extra Credits.

  • Kingmob23Kingmob23 LondonPosts: 77Member
    A recent episode of Monte's Minute on Gamebreaker had an interesting discussion on the hero engine and SWTOR http://www.gamebreaker.tv/video-game-shows/did-the-hero-engine-kill-swtor/
  • QuizzicalQuizzical Posts: 14,776Member Uncommon
    Originally posted by Kingmob23
    A recent episode of Monte's Minute on Gamebreaker had an interesting discussion on the hero engine and SWTOR http://www.gamebreaker.tv/video-game-shows/did-the-hero-engine-kill-swtor/

    He talks some about game engines in the abstract, but there's nothing specific to the Hero Engine there.

  • KeyloggerKeylogger Bumblefuck, TNPosts: 250Member

    Basically some shitty company with a bunch of hackjob coders not fit to float around the rim of the bowl over at sourceforge sold an alpha version - a very alpha version, of a 3D render to a very large company to use in development of a very important IP.

    It didn't go well, except for the company who sold alpha software for tons, and tons, and tons of money.

  • FromHellFromHell NY, NYPosts: 1,311Member
    I remember the game on release when antialising was not even working, it looked ugly as hell and the giant size lego block shadows on top of that? It was so horrible I couldn´t believe my eyes. Then the low res textures.. man this game was looking like an early alpha. They fixed some problems now, but this disastrous first impression will not be forgotten.

    Secrets of Dragon?s Spine Trailer.. ! :D
    http://www.youtube.com/watch?v=fwT9cFVQCMw

    Best MMOs ever played: Ultima, EvE, SW Galaxies, Age of Conan, The Secret World
    http://www.youtube.com/watch?v=T2X_SbZCHpc&t=21s
    .


    .
    The Return of ELITE !
    image

  • SouldrainerSouldrainer Elmer, NJPosts: 1,857Member
    Originally posted by FromHell

    Hero Engine is on DX9,

    This inherently makes it a bad choice to start with, considering that some MMOs started running on Dx11 in 2008. 

    Error: 37. Signature not found. Please connect to my server for signature access.

  • KeyloggerKeylogger Bumblefuck, TNPosts: 250Member


    Originally posted by FromHell
    I remember the game on release when antialising was not even working, it looked ugly as hell and the giant size lego block shadows on top of that? It was so horrible I couldn´t believe my eyes. Then the low res textures.. man this game was looking like an early alpha. They fixed some problems now, but this disastrous first impression will not be forgotten.


    It runs and at times looks about like I would expect it to now, but it's obviously not using much of my texture ram and 90% of the terrain looks like something from 2004 or so. The high resolution textures are disabled permanently I guess regardless of what the settings say.

Sign In or Register to comment.