Page 1 of 1

Rubikon : Valve's physics engine for Source 2

Posted: Mon Mar 09, 2015 9:29 pm
by RBD
Could someone (Dirk? :wink:) please point us to more detailed information about Rubikon, Valve's physics engine for Source 2?
Thanks.

Re: Rubikon : Valve's physics engine for Source 2

Posted: Mon Mar 09, 2015 11:37 pm
by Dirk Gregorius
Rubikon is our custom rigid body engine we use in Source 2 now. There aren't really any secrets there. What are you questions?

Re: Rubikon : Valve's physics engine for Source 2

Posted: Tue Mar 10, 2015 2:15 am
by H3g3m0n
Dirk Gregorius wrote:Rubikon is our custom rigid body engine we use in Source 2 now. There aren't really any secrets there. What are you questions?
I would be interested to know if it's has (or is getting) Vulkan support, or any other GPGPU stuff.

Re: Rubikon : Valve's physics engine for Source 2

Posted: Tue Mar 10, 2015 2:21 am
by Dirk Gregorius
No, everything is running on the CPU. Physics is a big part of gameplay, so I don't see any physics simulation running on the GPU in the near future.

Re: Rubikon : Valve's physics engine for Source 2

Posted: Tue Mar 10, 2015 1:40 pm
by RBD
The engine has been referred to for a while, but I haven't yet come across much information, and since Source 2 is now official, I was thinking maybe there would be some doc on Rubikon somewhere. I thought I'm not looking in the right places or perhaps just need to be more patient.
Sorry to bother, just curious in general. Possibly just some high level info then, if there is a URL with an overview of the engine components, or simply Rn* rigid and soft body shapes and joint types, etc. (but no need to list here)

I wasn't privy to your GDC contact solving talk last week, but appears some info might have been provided (e.g. no box primitive, use RnHull).

I understood that Source 2's physics would still be optionally augmented with PhysX (now apparently free to all with source code BTW) for extra SFX, or is that title specific?

Thank you.

Re: Rubikon : Valve's physics engine for Source 2

Posted: Tue Mar 10, 2015 5:18 pm
by Dirk Gregorius
I gave three talks over the last three years at GDC which describe essentially the Rubikon collision pipeline. I am thinking to give a talk on mesh and continuous contacts next year and then close with a talk about the solver following this. The solver is essentially SI with post-projection, but there are some nice implementation details I would like to share (e.g. central friction, quaternion constraints, etc). Sergiy gave a talk about physics debugging at GDC in 2014 which also shares a bunch of information about Rubikon.

Personally I think we miss actually more talks about physics authoring. The technical information is all out there. E.g. we have a complete Maya integration which we used to bake a bunch of the destruction shots in the VR demo. These large scale shots were a great stress test for the engine.

Some classes in Source 2 have PhysX in their name which I agree might be misleading, but Source 2 doesn't use any PhysX.

Here is the link to the 2014 and 2015 talks (both Sergiy and me):
http://box2d.org/downloads/

You can download my 2013 talk from Google here:
https://code.google.com/p/box2d/downloads/list

Cheers,
-Dirk

Re: Rubikon : Valve's physics engine for Source 2

Posted: Tue Mar 10, 2015 6:39 pm
by RBD
Excellent, thank you for the link to the GDC talk PDFs, that's perfect.

Yes, I mistakenly made assumptions from all of those "PhysX" names, thanks for clarifying.

Re: Rubikon : Valve's physics engine for Source 2

Posted: Wed Jul 06, 2016 1:24 pm
by Yavga
Bumping an old topic but the question seems relevant.

I cannot really find anything on "Rubikon's fluid simulation" in Source 2.

I was wondering if, to any extend, the second Source engine is able to handle realistic fluid simulation.

Re: Rubikon : Valve's physics engine for Source 2

Posted: Wed Jul 06, 2016 5:47 pm
by Dirk Gregorius
We have basic buoyancy and some tricks, but not a full fluid solver with rigid body coupling. I am not seeing any uses cases for this at the moment.