State of Game Engines

I think any one that has been around Second Life™ for any time and taken a look at the engine driving SL realizes the current batch of game engines in the gaming world far exceed the capabilities of Second Life. To get an idea of where the art of games engine design is take a look at Game Thirst’s Count Down of the top 5 game engines.

If you are not that into the tech of game engines you may be wondering if Second Life will ever catch up. Well, probably not, which begets the question: why not? 

SL tech is improving. The visual quality took several steps forward with the release of the Materials System. Performance is improving with the advancements Monty Linden is adding to the HTTP communication channels. Rez times are dropping as Andrew Linden changes the Interest List. Game controls are changing, which we will see when the Advanced Experience Tools get released. Even with all we have recently seen released and the things the Lindens hint are in the works, SL is never going to be as technically impressive as the Unreal game engine. They serve different purposes.

There is a reason for my saying SL will never catch up to Unreal. The reason is: us. We are not professional game designers. Well, most of us aren’t. Some professional game designers do come into play and design things. Professionals other than game designers do use SL, for instance architects and educators. So, some of us are professionals, but the majority of SL users are not game design professionals.

New users to SL are said to be intimidated by the user interface, 3,000+ controls (has anyone counted lately?). If we started adding in the features included in Unreal… can you spell ‘overwhelming’? I doubt anyone has even attempted to count the number of controls and settings in the Unreal development environment. I’ve played with it when I was thinking we might move the Myst games to that platform. It is impressive. The need to serve amateur designers is one philosophical reason that SL will never have all the features of Unreal. SL is intended for use of non-professionals that need a simplified interface.

In SL we have had the ability to use most of the tools professional game designers use; 3DS, Blender, Maya, and others for over a year. So, we could build pretty much everything one sees in games designed with the Unreal engine, like; Infiltrator. See the video below. (March 2013) But, we don’t… yet.

Making something like Infiltrator in SL is currently not possible. We can make the buildings, the characters… mostly, the clothes, and most of what you see in the demo video. We can even make most of the particle effects. What we can’t do is have the action displayed in the video; fast moving characters and massive explosions with shrapnel flying everywhere amid great balls of flame.

The reason is the demo is made on a game console using an engine designed and optimized for it. Game consoles are designed solely for game play. Everything in the computer is optimized and designed with game play in mind. Also, everything in the game is designed for the console; the game engine, textures, models… everything. All of that is optimized by professionals working to circumvent the limitations of the system. The demo is made by artists that avoid anything that might not show perfection. The demo is somewhat a slight-of-hand magic trick… you don’t get to look behind the curtain.

In SL many of the clothing designers are still working on how to get clothes to fit well, I am. Most haven’t even considered how their clothes may affect SL performance, I have… but I haven’t decided how well I’m doing.

It seems the Lab gives us what they believe the majority of SL users can handle without overloading the system. We like to design stuff. Game play is secondary. For those using Unreal, game play is primary. Different philosophies and criteria with different end results.

I think that means we never will see SL at the level of a game running on a console using the Unreal engine.

Oculus Rift or Oculus VR

We believe and have many good reasons to think Second Life is getting an interface for the Oculus Rift. After all the CEO is telling us they are working on it and we have seen images of him using an OR headset… pretty sure bet.

Bloggers in the community are divided on how that will or won’t affect SL and how it will or won’t affect games in general. In most of the rest of the gaming world designers have realized what the Rift is going to do for the immersive quality of their games. They are excited. Gaming bloggers and journalists in those communities lag behind the designers in realizing what the Oculus Rift headsets will provide. Thus the general gaming community is also divided as what the affect will be.

The Oculus Rift is not going to add load to the SL servers. At least I’m pretty sure it won’t. As far as I know this is solely a viewer side tech. Your video card is going to have to work harder. But, there is no extra geometry or textures to download nor any additional updates on what other avatars are doing. You viewer already has all that information. It just has to generate twice as many images. So, it looks like a performance issue for the ones using the Rift and no one else.

I don’t see where the Rift is going to provide any new tech to Linden Lab. It is after all just another display device. But, the thought needed to figure out how to implement it may lead to new ideas and ways of doing things. Only time will tell. But, I don’t see the Rift pushing the Lab’s tech forward.

I do see it pushing the SL users forward. That is a large community with a lot of inertia. Penny Patton has been stressing building with artistic proportion and correct/realistic scale for some time. I and others have been supporting the idea. Almost exactly 2 years ago I published: Second Life Camera Position Tips a Patton concept for improving SL. Only now are we starting to see more and more people pick up on the ideas Penny has been and still expresses. Also see: #SL Crusade for Good Looks.

Catching Up

It isn’t the Lab that has to catch up with the Unreal Engine. We, the users, are the ones that need to catch up first. Using a 1024×1024 texture on an ear ring is a total amateur’s mistake. Making a pair of boots using 15,000 polygons is another. The whole avatar only uses about 7,000 polygons. Unfortunately we all pay for such people’s learning mistakes. But, that is the cost of freedom and free market principals will solve the problem. But, it takes time.

The Lab is struggling to build a system that delivers over 200 terabytes of content. Most of it created by amateurs and for all practical purposes none of it is optimized. I would be willing to bet some small sum that if we took one or nine of the typically poorly built SL regions and moved them into the Unreal game engine, we would get horrible performance. SL might actually outperform it… or not. Of course if we optimized the content for Unreal then the Unreal engine would blow the SL engine away. But, if we optimized it, SL would perform way better too.

Then there is the user interface, which the Lab struggles to make usable for total noobs to 3D modeling while providing most of the tools a professional 3D modeler would want. Plus we have a mix of ‘players’ and ‘game designers’ using SL at the same time. Their user interface requirements are different. The Lab has to balance those needs too.

My point is: that for the content in SL, the constraints of the delivery system (the Internet), and the user demographics the SL system and engine is likely the best possible… and yes everything can be improved with time, which the Lab is doing. But, don’t expect the Lab to catch up to Unreal 4’s development environment or engine performance. At least not until we users catch up to the level of the Unreal developers.

If you are a designer of anything in Second Life, watch or read some tutorials and improve your skills. We are the ones that can advance the appearance and performance of Second Life the most. As we grow we remove unnecessary load from the servers and viewers.

16 thoughts on “State of Game Engines

  1. Actually your are kinda wrong in most of things.
    The reasson for why SL engine doesnt gets betters is due the lack of prorfessionals behind it. You can ask to any Linden things that are hardcoded into the viewer and they may not be able to answer you (trust me, I experienced that myself). They do not know what others emplyees do before, they do not know how the viewer code works exactly. They lack really a lot of knowledge about the viewer engine. If the viewer graphics engine were completely remade from scratch, we would have a very nice, smooth and high quality viewer. Perfectly stable and easy to spand. Instead, we leave patching old software again and again.

    As a game designer, I can tell you that often game engines like UDK or CryEngine offers not just more wide variety at time to edit everything graphically, but also a lot more of tools that makes everything easier than building in SL. Yes, you are hearing right. Making a mesh for CryEngine or UDK is a way easier than for SL. Less stupid limitations, better control, easy controls, the engines nowday have very comprehensive interfaces that only requires few hours to learn.

    We still, stuck with this old and outdated viewer. Remember that changing the graphics engine wouldnt necessary change the game experience at all. Just could make everything faster, less bugged and easier in general.

    To finish, that demo of Unreal Engine 4 isnt running in a console, and isnt either made for consoles. That demo runs in a single nvidia GTX680 at no less than 60fps (yeah, nice performance!). Is true that some things couldnt be hard to imagine in SL. But the reality is that everything in that demonstration could be implemented. Particles, decals, mesh instancing, dinamyc textures, etc… users can always do things in a simple way using basic tools or in a more professional way using advanced tools. Having avanced tools for particles for SL like for example having deflectors isnt something that necessary everyone need to use but those with the necessary knowledge could take advantage of it. Think like it like with actually happens with scripts. Not everyone knows how to make complex scripts or do some kind of IA, but we have the tools and commands for it. But that doesnt meant that you need to learn all that to do a simple door or light switch.

    • Well, I think you are wrong on several points.

      The Lindens we have access and that have management’s permission to talk about SL is a very small part of the Lab’s staff, about 6 or 7%. Because you have yet to find one that knows what your talking about is not convincing proof. Nor is the hard coding much proof of anything. I have no doubt the Linden’s still deal with more legacy code than newer cleaned up code.

      What was it 3 years ago that the viewer was completely re-written by an outside company? Convincing management to allow another rewrite is going to be difficult. Nor would it make many people happy.

      I have no doubt you are right that Cry and Unreal make design for PROFESSIONALS much easier and inflict fewer restrictions. But, providing that level of freedom to the novices building things for SL would probably allow them to overload the system. Nor are that many people going to learn the complexities of interface that Cry and Unreal present.

      My information said UR4 Infiltrator said it was made with a console. You have other information?

      The Unreal SDK is optimized, or generates optimized code, for a number of platforms including consoles. That information is part of their promo.

      We are going to disagree on the UI. It is possible to create a UI for novices and professionals. But, if one uses a generalized UI that serves both groups neither group is likely to be that happy with it. Maintaining two separate UI’s would slow viewer development and increase complexity with all the problems that brings.

      I’m not at all sure two UI would get that much use. The Lab did research and user testing with a Basic viewer mode, remember? They never provided us much info about what they learned or why they dropped that idea, but they did drop it. That suggests it didn’t work as they hoped.

      Short of your developing a viewer that does the things you suggest can be done, I’ll stand by my thinking. Henri Beauchamp has done that a couple of times now.

      • The easy to use of some game engines wasnt related to “professionals” really. Engines really evolved to a point where it take less time to learn than you think.

        Anyway, asides of all that, the Infriltrator video you can find in the Unreal Engine official page. I saw the video long ago so I cant remember where exactly. But yeah, it runs in a single GTX680 at 60fps. You may head that UDK 4 may be done thinking on next gen consoles wich is true of course, but not that demo exactly. Just think that even all Sony and Microsoft last E3 demos about XBOX One and PS4 were running on PCs with Windows 7. So no possiblity for such demo to run on a console and even less on past gen one that doesnt allow tesselation as well as others effects shown on that video.

        Surely we will see quality like that in the next gen consoles, just pointing that the infoa bout the demo being made in a console was just wrong and was important so people dont get confused by the real quality of things.

      • We’re also missing out other major factor to Rendering Engine that beg differ from between CryEngine / UnrealEngine and Second Life’s. SL are using OpenGL. Others uses DirectX. OpenGL is still behind DirectX and not as stable since it’s still ongoing development. This hinders the progress.

        Linden Lab, however… aren’t “professional” enough behind their codes in most area when comparing other game engines like CryEngine / UnrealEngine. Which I felt this is one of the problems, not just the fact that most designers in SL are incompetent. The Windlight system for sky isn’t even using its full features but only ends up being a ugly hack job to merge with their render system. Even the whole ” Viewer 2.0 ” revision or Viewer 3.0 for that matter… still have old legacy codes slowing down the major progress to catch up with today B, A or AAA games. …That’s being said with their Material shaders in mind, even still.

        There had been few times in a dev meeting where they would reject brilliance ideas because they feared it would be too difficult for newbies; when it’s no harder than writing a LSL script. Ironically.

        Second Life is outdated and a complete mess by many different ways. Not just because of the users.

  2. “Using a 1024×1024 texture on an ear ring is a total amateur’s mistake. Making a pair of boots using 15,000 polygons is another. The whole avatar only uses about 7,000 polygons. Unfortunately we all pay for such people’s learning mistakes. But, that is the cost of freedom and free market principals will solve the problem. But, it takes time.”

    I don’t agree with some of the ideas you reflect above. I don’t believe performance responsibility fall back just onto SL users, basically because i don’t see SL amateur creators turning into professional anytime soon. I believe that SL is, and always will be overall an amateur platform regarding content. I am comfortable with that.

    It’s ok to come here and build and learn some things, and make mistakes too, that’s the fastest way to learn. I think that’s what most SLrs try at some point. Some of them may expect even make money of their creations. Inside the group of those creators who sell, i would say that there is a majority that is focused in make profit, and don’t even consider the performance. I think we agree here. If they remotely suspect how it affect, they don’t care. If you ask me i would say they have some responsibility, but i still believe they don’t have the biggest portion.

    Alternatively, you may find those who are not interest on profit, or even shopping, but in build their own corner to live on. I am pretty sure most of them will not be professional creators.. and wont even care about what that means. They are interested on buy a mainland plot, and build there their vision or home, which may fit, or not your vision of successful home…. because of reason some of them can hurt you if you watch closely, i will dare to say most mainland is ugly and inefficient… and lets better not take a look to the sky. But that’s not their fault either, as they come here to enjoy their experience and nothing else.

    I could keep describing valid examples of inhabitants profiles that overall could fit into SL demographic. My point is, huge group of people consciously or not don’t give a single damn about performance. Some of them wont ever care about it, no matter if the skybox falls because it have too much textures. Some others MAY care if they are educated.

    Due to the SL freedom, amateurish and anarchic nature, i don’t think that can be easily done, and i won’t blame Linden lab for that either. Me loves this nature. But sometimes, when lag kicks and ruin my experience, i find myself thinking how would feel an SL with some more rational limits on what building respect.. because there are some already. I see a lot of limits on what physics respects. I see none on other performance killers: textures. I believe this is not a black/white, freedom/slavery solution, i am sure there are ways to fix this issue and make a better happy SL for… everyone(?). No, i am not that optimistic.

    I wonder if free market principals will solve this problem. I doubt it. But, i have one clear idea: what link all this messy and colorful community of communities, all with different preoccupations, occupations and priorities that over the years failed building a enjoyable low laggy experience…. is LL. I do think it’s only on their hand fix this perpetual problem one way or another, and because of that, they have the biggest responsibility… to tell you the true i am not holding my breath for that either, but i would be happy with little bit better performance.

    • And the last thing i had to see: high quality jewelry for petites, materials ready.. ow! ->

      Like your catch says.. WHAT. EVER

    • I too believe SL will remain an entry point for beginning and novice 3D modelers. I don’t see that ever changing. I do believe the Lab will extend SL and add more features for designers. I think that means more of the tools/features professional 3D modelers use.

      I believe the designers that don’t care about performance are a very small group. Stressing performance and low LI in the market place is a selling point many have learned. The free market provides them the incentive to consider performance factors without fascist rules. We see the free market working in the development of mobile electronics where there is little government involvement or subsidies. On the other side, mass transit in the US is controlled by mountains of government involvement, subsidies and corruption.

      I do believe most designers simply do not know what they are doing, tech-wise. In an artistic sense they are talented and fashion or style knowledgeable. But, that tends to be a right brain activity that mixes poorly with left brain techie thinking. So, I see good 3D modeling and art only ever coming from a very small group of people that can understand art and tech with both left and right thinking.

      Until you have good stats that more people don’t care then don’t know, I’ll go with most don’t know. Since there is a large group of people that complain about SL performance and most of them seem technically illiterate, I see that as proof of ignorance rather a lack of concern.

      We can’t know how many will care once they know, get educated. My experience is that most I’ve seen learn about performance factors do start to design for better performance. There is no good data on WHY they do that. Is it concern for SL’s performance? May be. Is it because they can sell more product and make more money? May be. I think it even likely. But, I have no real data. But, whatever the motivator I see this as an educational problem.

  3. Does not matter about the graphical quality of SL, good or bad, it’s all let down by everything else that does not work well. Who is it that once blogged “SL does everything but badly’. So nice to have materials, so nice to have a massive performance drop just to see it, thats not bad content creation, thats poor hardware compatibility.

    It’s more than likely that when Linden Lab complete their sunshine project i wont notice because im too busy suffering from system wide freezing and sudden crashing.

    • If you visit the areas that Penny Patton has been involved in building, things work amazingly well.

      I see the responsibility being mostly the users. I acknowledge that from time to the Lindens break things. But, SL is performing way better than it did 4 years ago when I came in and I can do more. I only see a few people accepting responsibility and designing efficiently.

      If one does not accept responsibility and puts it all on the Lab… well, then you are at their mercy. You are a victim. If you stop being a victim and accept responsibility, you can change the world.

      • On my personal experience, i consider performance have degraded.

        Granted, teleports are not failing for me anymore, i find conferences and voice quite more reliable, and i rarely crash. Things load faster overall, okey, still blurry stuff and avatars outside SSB regions, but at least things just in front your nose will load faster that what is behind your ass. I can easily appreciate all this improvements, and i value it.

        But what to me really matters and will totally break my experience is worse than ever: FPS drops and constant freezes. This is want i mean when i talk about bad performance.

        P.D. I was able to visit Penny’s Milk & Cream a month ago or so. I enjoyed the sim, witch remembered me a lot to skyrim. But i still had FPS drops on some points. Not as big as on more other popular sims, but still enough to make unable to walk facing certain stuff.

  4. The one important factor that will decid life and death of the Oculus Rift will be its price. Especially on SL. If it costs more than 70 bucks, it will never, ever have any significant inpact on SL. (Even at a lower price I have my doubts)

    • That is your opinion. You may be right. But, the videos on YouTube strongly suggest otherwise, even at $300US.

  5. Can Unreal support dynamically created content in the way that SL does? I have never seen an Unreal game with an in-game “editor”.

    I was under the impression the engine only does static, unchanging environments. (That is, it can only change in pre-determined ways.)

    In the past I’ve always hand-waved SL’s dated graphics with the fact that I don’t seem to see any other engine that allows on-the-fly user content with the degree of fredom that SL does.

    I could be wrong and SL could exist fully as-is on Unreal.

    • I don’t know of any game that allows dynamic creation like SL. Blue Mars and Cloud Party are close. But, I don’t know of an Unreal game that allows creation of dynamic content.

      • The thing is, both CryEngine and Unreal Engine are compilable of having ton dynamic contents… Far more than SL can handle on client side view. Most of the issue are the server side and data traffic. Which CryEngine and Unreal Engine does not address, the developer have to provide that.

Leave a Reply

Your email address will not be published. Required fields are marked *