Calculating the corner pos takes literally 2 lines (or 6 if you count the for-loop).
And whenever the orientation changes, all derived data (rotMat, cornerPos etc) automatically updates. No desyncs! Just with minor overhead.
Calculating the corner pos takes literally 2 lines (or 6 if you count the for-loop).
And whenever the orientation changes, all derived data (rotMat, cornerPos etc) automatically updates. No desyncs! Just with minor overhead.
Linear and angular velocity calculations are done.
It's unbelievable how much easier everything is with Java as compared to Datapacks. No fixed point scaling, no hardcoding every cross product for optimization, multiple ops per line... ❤️
Linear and angular velocity calculations are done.
It's unbelievable how much easier everything is with Java as compared to Datapacks. No fixed point scaling, no hardcoding every cross product for optimization, multiple ops per line... ❤️
I just started developing a server-side mod that I can use as a reference (for figuring out the scaling and other things more easily).
Here's the entity I set up in the past 2 days.
More detailed information:
bsky.app/profile/sili...
(1/6)
I just started developing a server-side mod that I can use as a reference (for figuring out the scaling and other things more easily).
Here's the entity I set up in the past 2 days.
More detailed information:
bsky.app/profile/sili...
(1/6)
(It'll definitely be a regular feature in the next snapshot)
(It'll definitely be a regular feature in the next snapshot)
- Due to calculation inaccuracies, impulses overcorrect, reinforcing the next problem:
- Impulses make it hard for all 4 corners to touch the ground simultaneously. If not all 4 corners do, it can wiggle back and forth
- Due to calculation inaccuracies, impulses overcorrect, reinforcing the next problem:
- Impulses make it hard for all 4 corners to touch the ground simultaneously. If not all 4 corners do, it can wiggle back and forth
Found a TON of bugs and temporarily fixed them, but it's still very jittery and a bit buggy. Not sure what's causing that.
Found a TON of bugs and temporarily fixed them, but it's still very jittery and a bit buggy. Not sure what's causing that.
Call it a hunch 🤔
Call it a hunch 🤔
(Please be a sign error in velocity resolution)
(Please be a sign error in velocity resolution)
Will work on penetration resolution next, so the object doesn't clip into the ground xD.
Will work on penetration resolution next, so the object doesn't clip into the ground xD.
(It currently doesn't update other contacts' values based on the resolved contact. It also doesn't resolve penetrations yet.)
(It currently doesn't update other contacts' values based on the resolved contact. It also doesn't resolve penetrations yet.)
Linear velocity change is calculated correctly for this specific axis (VERY early test).
Angular part and penetration resolution are still missing, and ofc making it work for all other axes. This is just a test to see if the formulas are correct.
Linear velocity change is calculated correctly for this specific axis (VERY early test).
Angular part and penetration resolution are still missing, and ofc making it work for all other axes. This is just a test to see if the formulas are correct.
Also, exam season is over and I've prepared some resolution pseudocode 👀
Also, exam season is over and I've prepared some resolution pseudocode 👀
- Get the TPS (Without worldborder shenanigans)
- Detect pausing/unpausing (And how long)
- Get the TPS (Without worldborder shenanigans)
- Detect pausing/unpausing (And how long)
- Support for lag, different tick rates etc
- Added a daytime storage with leading 0s
- Added event tags for "date changed" and "time changed"
... and MUCH more!
(Full changelog on Modrinth)
Download link in the replies 👇
- Support for lag, different tick rates etc
- Added a daytime storage with leading 0s
- Added event tags for "date changed" and "time changed"
... and MUCH more!
(Full changelog on Modrinth)
Download link in the replies 👇
Here's a sneakpeek:
Here's a sneakpeek:
In an upcoming update for my TimeLib library, time will stay synced even at incredibly low or high tickrates.
You won't be able to tell from the timer that the game isn't running at 20 TPS!
In an upcoming update for my TimeLib library, time will stay synced even at incredibly low or high tickrates.
You won't be able to tell from the timer that the game isn't running at 20 TPS!