Jump to content

Sims and SL engines?


sunnyrio
 Share

You are about to reply to a thread that has been inactive for 1380 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

No no, you have it mixed up! We use the Sim Ant engine.

Really though, the "sim" in Second Life and "sims" in The Sims just happens to be the same shortened version of Simulation/Simulator. Second Life and The Sims use both drastically different engines.

In Second Life's case, a "sim" is short for Simulator, which a simulator can run one or more regions. Simulators handle a majority of stuff you see in world, such as physics and scripts.

What you use is known as the Viewer, which you can actually browse it's source code if you so please: https://bitbucket.org/lindenlab/viewer/src/master/

It is only a coincidence that Electronic Arts and Linden Lab both use "sim" for a shortened word version of software. Sort of like how Orange can be the colour orange, or the fruit orange.

  • Like 2
Link to comment
Share on other sites

12 minutes ago, Chaser Zaks said:

No no, you have it mixed up! We use the Sim Ant engine.

Really though, the "sim" in Second Life and "sims" in The Sims just happens to be the same shortened version of Simulation/Simulator. Second Life and The Sims use both drastically different engines.

In Second Life's case, a "sim" is short for Simulator, which a simulator can run one or more regions. Simulators handle a majority of stuff you see in world, such as physics and scripts.

What you use is known as the Viewer, which you can actually browse it's source code if you so please: https://bitbucket.org/lindenlab/viewer/src/master/

It is only a coincidence that Electronic Arts and Linden Lab both use "sim" for a shortened word version of software. Sort of like how Orange can be the colour orange, or the fruit orange.

Well I'm just going by someone mentioning Electronic Arts during a discussion of the SL engine a few months back, I thought they were involved in the programming.

So.... Can my character look a lot better if the viewer was re-programmed, but the server left as is?

Link to comment
Share on other sites

39 minutes ago, sunnyrio said:

Am I correct in thinking The Sims 3 uses the same engine as SL?  It looks similar, and they're both Electronic Arts I believe?
If so, why haven't we gone to the Sims 4 engine?

A quick search suggests that both The Sims 3 and SL clients use OpenGL, and that The Sims 4 has moved to Metal.

OpenGL might be likened to the brand of paintbrush used by an artist. The brush is used to apply paint to the canvas, but it's the artist that decides the shape, colour and location of the pint blobs.

Apple is deprecating OpenGL on its machines, and Linden Lab (who own Second Life) are investigating what to replace it with. I've no idea what possible replacements they're looking at, nor if they'd also apply any such change to their Windows viewers.

I believe one Linden Lab CEO did previously hold a senior position at Electronic Arts.

Edited by KT Kingsley
Link to comment
Share on other sites

16 minutes ago, KT Kingsley said:

A quick search suggests that both The Sims 3 and SL clients use OpenGL, and that The Sims 4 has moved to Metal.

OpenGL might be likened to the brand of paintbrush used by an artist. The brush is used to apply paint to the canvas, but it's the artist that decides the shape, colour and location of the pint blobs.

Apple is deprecating OpenGL on its machines, and Linden Lab (who own Second Life) are investigating what to replace it with. I've no idea what possible replacements they're looking at, nor if they'd also apply any such change to their Windows viewers.

I believe one Linden Lab CEO did previously hold a senior position at Electronic Arts.

Does Metal run on Windows at all?  I thought it was an Apple invention and I can't see them letting anyone else have it.  I have Sims 4 on Windows, presumably it still uses Open GL.

Anyway I was thinking more of the actual engine than the programming language.

The reasons I said I thought the Sims 3 engine was used in SL was somebody mentioned SL was part owned by Electronic Arts (or they have a deal with them or something), and also the avatars in SL and Sims 3 seem very similar when they move around, and in the way you edit them.  I guess it could just be two people designing something in a similar way, like two makes of cars look similar.

Link to comment
Share on other sites

24 minutes ago, sunnyrio said:

Does Metal run on Windows at all?  I thought it was an Apple invention

Metal is a high level abstraction layer for Vulkan that Apple are providing for its app developers. More developer hand-holding for ease of use than Vulkan itself

Edited by Mollymews
for not of
Link to comment
Share on other sites

21 minutes ago, Mollymews said:
45 minutes ago, sunnyrio said:

Does Metal run on Windows at all?  I thought it was an Apple invention

Metal is a high level abstraction layer for Vulkan that Apple are providing for its app developers. More developer hand-holding for ease of use than Vulkan itself

I think it's the other way 'round, Molly. Metal is Apple's proprietary low overhead graphics architecture. It's named Metal because it allows almost direct access to the underlying GPU hardware, which will soon be entirely Apple designed.

Vulkan-on-Metal is an abstraction layer that allows cross platform development by offering the same API that's already available via Vulkan for Windows and Android. I don't think Apple is providing any support for Vulkan. They want developers coding directly to Metal. I think Microsoft does not offer Vulkan support either, preferring developers code straight to DirectX.

Vulkan is intended as the successor to OpenGL and involves some of the same players.

  • Thanks 2
Link to comment
Share on other sites

1 hour ago, Madelaine McMasters said:

I think it's the other way 'round, Molly. Metal is Apple's proprietary low overhead graphics architecture. It's named Metal because it allows almost direct access to the underlying GPU hardware, which will soon be entirely Apple designed.

yes you are right. I got it mixed up with MoltenVK

 

  • Haha 1
Link to comment
Share on other sites

8 hours ago, sunnyrio said:

Well I'm just going by someone mentioning Electronic Arts during a discussion of the SL engine a few months back, I thought they were involved in the programming.

That one's on me. From a previous conversation:

"And if you think anything in Second Life will work the way you think reliably you're in for a rude surprise. ("It's a computer program, it will work" - I take it you've also never bought anything from Electronic Arts either.)"

Link to comment
Share on other sites

10 minutes ago, NiranV Dean said:

Are we? I thought SL is still using Havok 2010 for physics hence why it runs so bad and has so many bugs (most of which are fixed in later versions)

I'm also not aware of any version updates of the Havok physics engine since version 2012.1. (Which is not a game engine. Neither is Havok AI, what we know as Pathfinding)

Link to comment
Share on other sites

Since Microsoft bought Havok, Havok has been much more opaque. The full documentation for the Havok system used to be on line. Now, the site is just pretty pictures and "send us your email". No idea what pricing, terms, and supported platforms are at this point.

Link to comment
Share on other sites

17 hours ago, Madelaine McMasters said:

I think it's the other way 'round, Molly. Metal is Apple's proprietary low overhead graphics architecture. It's named Metal because it allows almost direct access to the underlying GPU hardware, which will soon be entirely Apple designed.

Vulkan-on-Metal is an abstraction layer that allows cross platform development by offering the same API that's already available via Vulkan for Windows and Android. I don't think Apple is providing any support for Vulkan. They want developers coding directly to Metal. I think Microsoft does not offer Vulkan support either, preferring developers code straight to DirectX.

Vulkan is intended as the successor to OpenGL and involves some of the same players.

Why would people want to have to code for both Vulkan and Metal?  Do Apple not understand standards?

  • Haha 1
Link to comment
Share on other sites

9 hours ago, Theresa Tennyson said:

That one's on me. From a previous conversation:

"And if you think anything in Second Life will work the way you think reliably you're in for a rude surprise. ("It's a computer program, it will work" - I take it you've also never bought anything from Electronic Arts either.)"

Are there so few people in these forums that we talk with the same group each time?
Ok so I assumed you meant both were made by Electronic Arts.  You actually meant they're both rubbish?  It's just if you play the Sims 3, the Avatar looks so similar.

Link to comment
Share on other sites

43 minutes ago, sunnyrio said:

Why would people want to have to code for both Vulkan and Metal?  Do Apple not understand standards?

Apple absolutely understand standards. If you look at mobile market share by profit, Metal is the gold standard. It's on all iPhones. In 2019, Apple garnered 66% of the entire mobile phone industry's profits. Their share has, in some years, exceeded 100% as the rest of the industry suffered losses. As Apple moves to their own silicon, the performance lead of iOS/Metal over the competition will increase. Standards needn't be open.

Apple is not much interested in people who code for multiple platforms. They are focused on getting developers to code for their platform. That focus is effective.

Link to comment
Share on other sites

59 minutes ago, Madelaine McMasters said:

Apple absolutely understand standards. If you look at mobile market share by profit, Metal is the gold standard. It's on all iPhones. In 2019, Apple garnered 66% of the entire mobile phone industry's profits. Their share has, in some years, exceeded 100% as the rest of the industry suffered losses. As Apple moves to their own silicon, the performance lead of iOS/Metal over the competition will increase. Standards needn't be open.

Apple is not much interested in people who code for multiple platforms. They are focused on getting developers to code for their platform. That focus is effective.

That's not what I meant.  A standard is something which everyone uses, not just Apple.  Which is why I have never owned an Apple product and never will.  Incompatible overpriced rubbish.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

11 hours ago, NiranV Dean said:

Are we? I thought SL is still using Havok 2010 for physics hence why it runs so bad and has so many bugs (most of which are fixed in later versions)

far as I'm aware we are on a stable release.  we are gonna need a linden to drop by,  I had asked one in world about it and I was told we are current with the release.

Link to comment
Share on other sites

7 minutes ago, bigmoe Whitfield said:

far as I'm aware we are on a stable release.  we are gonna need a linden to drop by,  I had asked one in world about it and I was told we are current with the release.

How did you come across a Linden in world?

Link to comment
Share on other sites

OK. There should be a simple explanation of this somewhere, but I'm not finding one. So:

How Second Life Works

There's a viewer, a program you run on your computer, and many region servers owned by Linden Lab. The region servers are in a data center in Arizona, USA, so the further you are from Arizona, the more network lag you get. Each region server runs a few regions of Second Life. Usually one per CPU on the region server; more regions per CPU for "Homestead" and "Open Space" regions. There are also some other non-region servers that handle logins, voice, inventory, marketplace, and other things that aren't tied to a single place in the SL world.

There are also "asset servers". These hold files with the textures and meshes for the objects you see. In early versions of SL, the region servers handled that. But now that's all outsourced to machines on Amazon Web Services. There's also a caching system to speed up accesses to commonly used assets; that's a service purchased from Akamai. The whole asset system works just like regular web page serving, with URLs and HTTP.

(The "cloud uplift" you hear about is just moving the region servers from the Arizona data center to leased servers in an Amazon Web Services data center. Things work pretty much the same, but on newer machines with faster networking.)

The viewer talks to the server running the region the avatar is in, adjacent regions within your view distance, and the asset server cache machines. The region servers tell the viewer where everything is, and the asset servers tell the viewer what it looks like. The viewer puts all this information together with a lot of custom code, then calls OpenGL to render it into an image for display.

The region servers, the "sims", are mostly concerned with where things are and what they're doing. They have little information about what they look like. What the sim servers mostly do is this, 45 times a second:

  • Receive info from viewer's keyboards and mice.
  • Receive info from objects entering the region from servers for adjacent regions, and from teleports.
  • Run all LSL scripts in the region that need running.
  • Run the physics engine to handle movement, collisions and such. (This is the Havok part.)
  • Send info about how the world changed on this cycle to all viewers that have asked to be told.

So that's how SL works.

Note the division of labor. The sim servers are concerned with where objects are and what they're doing, but not what they look like. When you teleport to a new region, at first you see something close to the region servers' view of the world - everything is a simple grey object. The region servers tell the viewer where things are, and the viewer fetches the files of textures and meshes needed to make them look good. You get to watch as the files arrive at the viewer and the world starts to look better as textures and meshes come in, first at low resolution and then at higher resolution.

The "look" of SL is done by the viewer, based on the files uploaded when the objects you see were created. So visual improvements to SL mostly involve changes to the viewer. Improvements to motion and scripts involve changes to the region servers.

This may help with understanding what's going on inside SL.

 

 

Edited by animats
Typo
  • Like 3
Link to comment
Share on other sites

31 minutes ago, bigmoe Whitfield said:

far as I'm aware we are on a stable release.  we are gonna need a linden to drop by,  I had asked one in world about it and I was told we are current with the release.

Pretty unlikely that there has been any Havok version update since 2012.1. Upating the physics engine in SL has been pretty troublesome for various reasons in the past. Which is why there always has been a rather extensive test period for new versions before it hit the production grid. I can't remember of any of such testings since 2012.
Probably there is no one left at the Lab who does Havok stuff, since Andrew Linden left LL. The Havok guy at the Lab was Falcon Linden. Haven't heard a thing from him for ages.

Link to comment
Share on other sites

2 hours ago, sunnyrio said:

How did you come across a Linden in world?

Meetings. Lindens aren't as illusive as you may think. They are just people like you and me.

But do take what they say with a grain of salt. One of them told me Godrays were impossible because the Viewer doesn't know where the sun is, at a time we already had realtime shadows for years.. not to mention... lighting... you know that stuff thats completely impossible without some sort of global light source unless you're going for a flat cartoon lighting.

  • Thanks 1
Link to comment
Share on other sites

1 hour ago, NiranV Dean said:

One of them told me Godrays were impossible because the Viewer doesn't know where the sun is,

The server doesn't really know where the sun is, because it's per-viewer and the user can change it. This is a problem for things that should change based on whether it's dark, such as street lights. As for "God rays", someone near me has a "God rays" object in a tiny bit of forest. It looks great in the daytime, but it runs all night and looks like a glowing griefing object at night at distance.

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 1380 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...