Attached Objects & Collisions Misfunctional
-
@iTap-Development Let me explain, so you can feel the urge to be serious instead of flippant.
Try to use words to define "fine" and what you know of how damping works, and what it is. At this stage, I'm pretty much convinced you have no idea how it works or what it is.
-
So, when we made the migration from Box2D to Chipmunk, we kind of fudged the numbers of some stuff to get it as close as possible so that old games were still supported. Eg. we add a force for air resistance on every time step because chipmunk2d doesn't have the idea of air resistance.
From what I understand, you want us to get rid of these complexities... me too! However, in the mean time, you can go into world settings and set friction, air resistance etc to 0, and it should give you the raw effect.
As for the joints, we can deprecate our old behaviours (ie, old behaviours will still work but just not visible) and give you direct access to the different joints that is currently accessible. We're combining a bunch of joints to get that old Box2d feature set, but it sounds like its more of a hassle to work with for you guys.
All this being said, theres a bunch of stuff broken but we want to make our release cycles "fast". In the coming weeks, we will make a thread with all the broken items linked to our public road map, and you guys can vote on which items are higher priority.
P.S It takes me a really long time to read your guys' long posts... if you could keep feature requests and bug reports short and sweet in their own threads that would be a HUUUUGE help to me. You don't need to include details teaching me the history of computer science... just tell me the problem and I'll fix it. I'm also not ignoring you guys, I'm fixing things. I'll ask questions if needed.
P.P.S @Deeeds nice find on that CADisplayLink bug, I saw that before, but haven't gotten around to fixing it yet.
-
@Hamed With all due respect, I've had to explain the foibles of CADisplayLink to about a dozen different programmers over the years. Not one of them has taken me at my word. I've had to give them detailed explanations and provide insights into how and why it's not what they want, or need, for game loops.
As Apple geared up for variable rate display technology, throughout 2013 through 2106, it became much more noticeably variable in its output.
That cocos2D uses date instead of mach time is also bizarre. But that's for another day.
-
@Deeeds by “fine” I meant working normal.
-
@iTap-Development I'm now absolutely convinced you have no idea how damping works, or what it is.
Read here:
https://blurrrsdk.com/documentation/Chipmunk2D/interface_chipmunk_damped_spring.html
Then ride a bike with suspension.
Then press down on the bonnet of a car and let it spring back. Notice what happens.
-
@Deeeds damping effectively reduces the speed/force of a decompressing spring, right?
-
@iTap-Development I want the attached object to work as if it's "screwed" onto the roof of the vehicle.
Like a light bar on a police car, or an antenna on a motorcycle.
I want to be able to swap out these parts interchangeably, or remove them altogether.
If they are there, they need to act as if they are one with the vehicle, like they do in real life.
The fact that weld attach is described to do this and doesn't is what my complaint was about.
I do believe no one has addressed the collisions complaint, but I could very well just be blind, too.
-
@Thecheater887 I think weld works, except it might kinda wobble, but I haven’t used it in a long time.
-
@iTap-Development False.
This is something you might see in a frictionless magical dimension, not a realistic one.
It's even worse when you try to precisely control the vehicles movements.
Move to objects don't help, set velocity and rotate is always off, and then there's this.
-
@iTap-Development said in Attached Objects & Collisions Misfunctional:
I think weld works, except it might kinda wobble,
This is the exact definition of a weld that doesn't work.
-
@iTap-Development said in Attached Objects & Collisions Misfunctional:
damping effectively reduces the speed/force of a decompressing spring, right?
keep googling and reading. You'll get there...
-
@Deeeds I just tried a weld...I thought they had a very slight wobble, but it actually works perfect.
-
@Deeeds maybe you could define/explain damping then?
-
@iTap-Development I have. In our last discussion on this matter. You weren't listening then, you aren't now.
-
-
@Deeeds I am listening, that’s why I asked.
-
@Deeeds you said, “That's not how damping works.
As I said, damping is the force that reduces oscillation. If it was a force coming back from the other object it would (at the very least) sustain oscillations, if not increase them in the perfectness of a physics simulation.”
So explain how it reduces oscillation, and the effect that produces.
And I’m not saying it’s a force pushing back the other way, What I mean is more of an effect of restricting the decompressing of the spring.
-
@iTap-Development said in Attached Objects & Collisions Misfunctional:
@Deeeds you said, “That's not how damping works.
As I said, damping is the force that reduces oscillation. If it was a force coming back from the other object it would (at the very least) sustain oscillations, if not increase them in the perfectness of a physics simulation.”
So explain how it reduces oscillation, and the effect that produces.
And I’m not saying it’s a force pushing back the other way, What I mean is more of an effect of restricting the decompressing of the spring.
@iTap-Development It's clear you've learnt something since last time, and attempting to paint yourself as having been right and being right.
Give up on that. Particularly the bold endeavour to divert to discussion of "effect" as though that's going to somehow obscure your previous claims of these joints being "fine".
-
Can we not?
-
@Thecheater887 Joints are broken.
Helping one person to see that might help all to understand this to be the case.
It's not just the joints and collisions you're discussing that have issues. I've not yet seen a joint in hyperPad respond the way it should and could if it was a correctly implemented utilisation of Chipmunk2D. And there's other peculiar stuff, too. Friction works more efficiently than it should, or traditionally does in Chipmunk2D. Which is even weirder than anything else about the whole setup, and something I'm exploiting.
I'm pretty sure that the values used for error correction and bias in the constraints parent class are "wrong" for the rest of the values used in the hyperPad Chipmunk space setup. This would go a long ways to explaining how the rope behaves weirdly, and somewhat explain the misbehaviour of the spring "joint".
But the spring joint has other problems, too.
The fact that weld and pivot don't work properly is explained by what @Hamed has said he's doing to fake air resistance in Chipmunk. That's causing that lag you're seeing on objects that still have friction and mass, I think. My circumvention of this problem was the complete zeroing of mass and friction for the attached objects and then using them as placeholders for what I actually wanted to do with a proper pin and weld joint.
A limiting mess.
I can't work around the problems in the Spring and Rope setup, so made horrible fake lerps with Move To... but, as I've said before, I haven't had a chance to identify all the issues and detective the problems with physics.
And I no longer need do that, as @Hamed's comments confirmed a suspicion I had, that some things were fundamentally wrong with how Chipmunk was being utilised.