Jump to content

Please. Can we have more physics.


Coffee Pancake
 Share

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

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

Recommended Posts

Simulator physics and the number of updates sent to the client is solely responsible for the way Second Life feels. Movement, running, vehicles, combat games, even simply walking are dependent on it, and wholly responsible for Second Life feeling like treacle at best. This feeling is responsible for a large part of the "Second Life Sucks" impression many people have, creating an instant negative impression from the very first session and causing pain every single day for the rest of an avatars life.

It's impossible to create anything avatar-movement-interactive that feels like an actual game, and while we're all busy declaring "SL ISN'T A GAME" .. we're covering up for the fact we wish it could at least feel like we're interacting with one. Gaming in SL could totally be a thing, it's easily possible to get the aesthetic and interactive elements right (even more so with Animesh approaching).. just so long as nobody moves.

Just a little more time for physics would make a huge difference to literally everything we do in SL that isn't standing still chatting .. imagine if we could actually do more than that!

How about some physics on the client with the havok libs we already have on everyone's desktop for navmesh visualization and mesh uploading.

 

At this point the only reason I can think this has persisted for so long is that no one at the Lab has ever played an actual game. Some one set up a minecraft server, get a few staff on and run around for 20 minutes punching each other and then log into SL.

 

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

1 minute ago, AviNews said:

We had physics on classic avatars, adjustable HUD even. All doesn’t happen with mesh body, only the realistic hand/face/etc. 

timez seem to have changed!  ‘Magine dat, in SL!

I'm not talking about avatar physics, jiggy butts and boobs etc .. Those are still a thing and they work with mesh bodies. 

I'm talking about the physics engine that underpins the entire platform.

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

6 hours ago, CoffeeDujour said:

How about some physics on the client with the havok libs we already have on everyone's desktop for navmesh visualization and mesh uploading.

Client side physics using Havok would shut out all TPVs apart from Firestorm & Catznip though.
As far as I'm aware only FS & Catznip meet the criteria for the Havok sublicense from LL.

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

37 minutes ago, Whirly Fizzle said:

Client side physics using Havok would shut out all TPVs apart from Firestorm & Catznip though.
As far as I'm aware only FS & Catznip meet the criteria for the Havok sublicense from LL.

And even then only on Windows and Mac.

Linux has no Havok enabled client for Second Life (that I am aware of).

Edited by Solar Legion
  • Like 3
  • Thanks 2
Link to comment
Share on other sites

SL viewers could do a lot with viewer-side collision detection. Even without full physics (inertia, friction, etc.).  Viewer side, avatars should detect collisions during animations, and a collision should act like a higher priority animation that stops motion at the  joint that caused the collision. That wouldn't need full Havok, just the collision detection engine. The open source collision engine in Bullet is probably good enough. OpenSim uses Bullet, so there's already some code to look at.

It only needs to know about avatars. Maybe nearby big flat surfaces like walls, floors, and furniture. Probably locked objects only; then you don't have to worry about stationary objects moving.

That would prevent animations from putting limbs through other body parts. When you hugged someone with an big hug, the animation rotates the shoulders, elbows, then the wrists.  The arms would then close until they touched the avatar, then the shoulders would stop rotating. Then the elbows continue to close, until the forearms touch the back of the avatar being hugged. Then they stop. Finally the wrists move, and the hands come in contact with the back of the avatar being hugged, and stop. You'd get a nice hug, whatever the size of the avatar being hugged.

This would improve dancing, combat, and  sex animations. Even idle movement AOs would get better. It doesn't have to be in every viewer to work. With better viewers, you'd get better looking animations. This isn't full physics. It's not even close to modern game character animation technology. It's just applying collisions limits to animations. It's something that could be retrofitted to SL at modest cost.

There's so much that could be done to improve SL, if it had a user base greater than 1% of Minecraft.

(I used to write physics engines.)

Edited by animats
  • Like 4
  • Thanks 1
Link to comment
Share on other sites

On 4/29/2018 at 7:56 PM, CoffeeDujour said:

At this point the only reason I can think this has persisted for so long is that no one at the Lab has ever played an actual game. Some one set up a minecraft server, get a few staff on and run around for 20 minutes punching each other and then log into SL.

3

Seriously!?! 

I've never been in Minecraft with 20 other players in the same place. Is that possible? I mean 20 in a single server? And what kind of lag develops with 20 players?

Doom was a way fun FPS that allowed up to 8 players in a local server based game and it worked really well. That the SL system adds in 40,000+ concurrent players and has some issues isn't surprising.

While Unity is the most popular Cry and Unreal have big advantages. Still, an article on Improbable's blog pointed out,

Quote

 

Multiplayer games aren’t very different. The game loop is split between client and server, with the client dealing with inputs and rendering, and the server performing the world simulation work.

But there is a limit to what can be achieved building games this way. You can only fit so much physics and AI on a single server, and this inevitably leads to compromises in terms of the size of the world, the number of players, or the complexity of the physics or the AI.

 

 

There are people pushing the Unreal engine and building machines designed to support it. But, the limits of custom hardware and network limit the max to 140+/- users per server. These people talk about 'stability' and do not mention lag.

There are things that can improve SL. However, the Havok physics engine is not cheap nor the bottom of the barrel. Replacing it would be a lot of work and the benefit, if any, likely wouldn't justify the effort. Havok is generally listed in every top 'physics engines' list. Its used in some awesome games.

SL's lag issues are legendary. But, there is no single fix as the state of gaming tech is what it is. 

Animats recent suggestions to the Lab for improving region crossing/tp have lead to the recent server updates to improve inter-region communication between servers rolling out as RC this week.

So, while it is easy to say, 'fix physics and all will be great'... it just isn't that easy.

  • Like 1
Link to comment
Share on other sites

31 minutes ago, Nalates Urriah said:

Seriously!?! 

I've never been in Minecraft with 20 other players in the same place. Is that possible? I mean 20 in a single server? And what kind of lag develops with 20 players?

Yes, it totally is. Public mini game servers.

31 minutes ago, Nalates Urriah said:

Doom was a way fun FPS that allowed up to 8 players in a local server based game and it worked really well. That the SL system adds in 40,000+ concurrent players and has some issues isn't surprising.

Doom isn't really a 3D game .. and SL doesn't have 40K users on the same server. Most servers have less than 5 at any given time. 

 

31 minutes ago, Nalates Urriah said:

While Unity is the most popular Cry and Unreal have big advantages. Still, an article on Improbable's blog pointed out,

There are people pushing the Unreal engine and building machines designed to support it. But, the limits of custom hardware and network limit the max to 140+/- users per server. These people talk about 'stability' and do not mention lag.

Planetside 2 manages 2000 per continent. If you haven't played, go give it a go (it's F2P) .. the mayhem really needs to be witnessed. 

31 minutes ago, Nalates Urriah said:

There are things that can improve SL. However, the Havok physics engine is not cheap nor the bottom of the barrel. Replacing it would be a lot of work and the benefit, if any, likely wouldn't justify the effort. Havok is generally listed in every top 'physics engines' list. Its used in some awesome games.

I'm not asking for it to be replaced, I'm asking that it be given it's legs back. There is nothing wrong with the physics engine we have, just how we get to interact with it.

  • Like 2
  • Haha 1
Link to comment
Share on other sites

5 hours ago, CoffeeDujour said:

Planetside 2 manages 2000 per continent. If you haven't played, go give it a go (it's F2P) .. the mayhem really needs to be witnessed. 

Look into Sansar. It's designed for high frame rates (to somewhat reduce the upchuck rate of goggle wearers) and has no region crossings. Once LL gets more of the features implemented, people should be able to create games in it.

Comparing SL to running around in Minecraft? Isn't there a wee bit of difference in the graphics? It's comparing apples to kumquats.

Link to comment
Share on other sites

2 minutes ago, Parhelion Palou said:

Comparing SL to running around in Minecraft? Isn't there a wee bit of difference in the graphics? It's comparing apples to kumquats.

Do not mistake simple texturing and blocky appearance for a simple to render world. Minecraft with a few mods can bring a high end PC to it's knees - It's a genuine feat of software engineering.

Edited by CoffeeDujour
  • Like 1
Link to comment
Share on other sites

Even CAMERA ONLY client side collision would be awesome. It wont affect anyone else and there will be no more clipping into walls for a split second while the viewer waits for the region to tell it to move.

The SL client really is just a 3D dumb terminal.

e2167037bbc727a80a90761cece85b4b.jpg

 

  • Like 2
Link to comment
Share on other sites

On 1.5.2018 at 8:37 PM, Nalates Urriah said:

I've never been in Minecraft with 20 other players in the same place.

I've been in SL with 20 other players in the same place and that is not something I want to try again in a hurry. Is it just as bad in Minecraft?

Link to comment
Share on other sites

On 30.4.2018 at 7:35 PM, animats said:

There's so much that could be done to improve SL, if it had a user base greater than 1% of Minecraft.

But it has! More than 1.5% of Minecraft's user base if we count the alts and bots. ;)

 

Edited by ChinRey
Link to comment
Share on other sites

4 hours ago, ChinRey said:

I've been in SL with 20 other players in the same place and that is not something I want to try again in a hurry. Is it just as bad in Minecraft?

No. It's the exact opposite of what your Second Life experience will lead you to expect. At this point, not having played Minecraft is a bit like not having seen StarWars.

Seriously though people .. Youtube - Planetside2 Zerg - This game has no NPCs. Every combatant is a human player. Vehicles can contain multiple players. The continents are VAST and HUNDREDS of people can be in the same place at the same time. Sure graphics optimization and game limitations have a whole lot to say, but the real star here is the netcode and physics engine.

4 hours ago, ChinRey said:

But it has! More than 1.5% of Minecraft's user base if we count the alts and bots. ;)

But unlike Mincraft, we're not children. We have money and we spend it month after month. A sizable portion of the SL economy ends up paying for server time.

Link to comment
Share on other sites

  • 4 months later...

I have to agree, it'd be great to utilize physics to its fullest thats achievable with havok. There's talk of client improvements, so I would imagine that is in the mix somewhere, with more dynamic fast loading lightweight LOD, and seamless region crossings lol.  :)  Also, if more optimized, the server side could use that extra room to detect more things for collision, and more efficiently moving things, obstacles, elevators, etcetera, which I really want to build lol.

Why not also have more modern SL water?  OpenGL can do some really neat (and even better performing) things with water these days.  Have the diffuse, Normal, and Specular fade out on the water edges for a smooth transition , also add underwater caustics light effect lol, and ability for creators to use the water shader on a prim, so pools & skyboxes water is actually water.

 

 

 

Edited by Macrocosm Draegonne
Link to comment
Share on other sites

On 9/16/2018 at 11:23 PM, Macrocosm Draegonne said:

I have to agree, it'd be great to utilize physics to its fullest that's achievable with Havok. 

Havok may be dead as a product. Microsoft bought them in 2015, and since then, not much has been heard from them. They pulled all the documentation from their web site and hid it behind a Microsoft support portal. Their last press release was three years ago.

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

11 hours ago, animats said:

Havok may be dead as a product. Microsoft bought them in 2015, and since then, not much has been heard from them. They pulled all the documentation from their web site and hid it behind a Microsoft support portal. Their last press release was three years ago.

Basically nobody wants to pay the license fees either right?  Maybe MS will do something cool to enhance it, and make it cheaper.  Is there some alternative that wouldn't break everything in SL to implement it? 

Edit:
Bullet Physics is slightly similar and a lot more capable, in Skyrim SSE 64bit theres no havok 64bit without a crazy license fee, so the author of the most popular physics mod used bullet physics library to make a similar but better implementation of avatar physics.  I believe bulletphysics is opensource and on github, not sure its of any use for SL in particular, but it is interesting and works really well.

Edited by Macrocosm Draegonne
Link to comment
Share on other sites

21 minutes ago, Macrocosm Draegonne said:

Basically nobody wants to pay the license fees either right?  Maybe MS will do something cool to enhance it, and make it cheaper.  Is there some alternative that wouldn't break everything in SL to implement it? 

Edit:
Bullet Physics is slightly similar and a lot more capable, in Skyrim SSE 64bit theres no havok 64bit without a crazy license fee, so the author of the most popular physics mod used bullet physics library to make a similar but better implementation of avatar physics.  I believe bulletphysics is opensource and on github, not sure its of any use for SL in particular, but it is interesting and works really well.

OpenSim uses Bullet physics. They used to use the Open Dynamics Engine, but seem to have switched. OpenSim has some sims running ODE and some running Bullet, and they more or less interoperate.

There are objects in world which depend on quirks of Havok code. Convex hull decomposition has to be done Havok's way, quirks and all, to keep existing objects working. When the SL viewer's mesh uploader shows you the convex hull view, it's not showing you what the simulator has done. It's showing you what the simulator is going to do when it does it exactly the same way. Which is why the Firestorm viewer doesn't even try to show that.

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

39 minutes ago, animats said:

OpenSim uses Bullet physics. They used to use the Open Dynamics Engine, but seem to have switched. OpenSim has some sims running ODE and some running Bullet, and they more or less interoperate.

There are objects in world which depend on quirks of Havok code. Convex hull decomposition has to be done Havok's way, quirks and all, to keep existing objects working. When the SL viewer's mesh uploader shows you the convex hull view, it's not showing you what the simulator has done. It's showing you what the simulator is going to do when it does it exactly the same way. Which is why the Firestorm viewer doesn't even try to show that.

Damn, seems like heart surgery to replace the physics engine lol, I suppose that will have to happen eventually if Havok goes away?  Bonus is physics stuff being updated would be epic.  We'd have more responsiveness and appeal while also decreasing server load?

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 1044 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...