2024 H1 Physics Recap

Just so you know, these links lead you to the same Pausing Physics in Studio devforum post.

2 Likes

Fixed! thanks a ton!

  • M0bsterLobster
3 Likes

Thanks physics team! Had fun testing and fixing some of these things with APanda

3 Likes

comments be like: wow this is cool but when are you making my entire game and every feature i want in it for me :rage:

4 Likes

Done :slightly_smiling_face: Doubled it to 30,000 studs.

8 Likes

Yooooo dang, thanks a lot!

Hey though since you’re here, i hope im not pushing my luck but is there anything i could do about the 8 thread limit for roblox? Been trying to play around with FFlags to see if i could push the magical thread count over 8 and it seems to no longer boot with values past 9.
I’m asking since im curious if just giving my stuff (this is a different project) more threads would increase performance. Right now im kinda seeing a slight boost from 9 threads compared to 8.

4 Likes

You know there were a lot of optimizations if there is a :pinched_fingers:

But really, thanks for the improvements, let there be more advanced stuff to come.

3 Likes

Recently I find I am in need of a way to add collisions to terrain-like meshes, specifically I need a flat triangle collision primitive. The best solution so far is to use two wedge parts to form a polygon in the desired shape and minimize their width down to 0.001.

Although this works with collisions, raycasts will still pass right through because of how thin the surface is (at least I assume that’s what’s happening when the default camera is not being occluded). It would be beneficial if collisions on very thin wedges behaved as if they had no depth.

Ideally though it would be nice to circumvent the whole double wedge thing and have some kind of “PolygonPart” instance which connects three points with zero depth.

image
image

7 Likes

also i cant seem to post in #bug-reports:engine-bugs is it regular rank locked? i am only a member rank. but good news is the ball push with car think seems to work now so yippee

2 Likes

Lets gooo, my game spawns tons of parts (part of the game) and it was incredibly slow once it hit about ~1k parts, i shall see how much larger the capacity is :slight_smile:

3 Likes

Could we potentially get a custom collision solver instance that has built-in functions like :CircleCollidesCircle, :RectIntersectsRect, :RayIntersectsCube, etc, to have a performant way to do custom collisions?

5 Likes

Simple checks like ray/box can usually be implemented with a little bit of math hidden in a utility module; there’s lots of resources online or in book form to make these (and probably some open-source modules out there in the community). Most of the time the checks are so simple that your Luau implementation will be faster than anything we could provide, because any API we give has the overhead of C++/Luau reflection.

We do want to add broadphaseless collision checks like Part:IsIntersecting(Part) and ways to get contact points between two intersecting parts, which would work for meshes (not just primitive types like boxes). This is much more interesting for you because resolving arbitrary mesh collisions is a lot of heavy math, and it’s best if devs don’t have to reimplement those algorithms themselves.

6 Likes

You could probably get similar results to soft body physics with mesh deformation

1 Like