SketchyPhysics3 Release Candidate 1
-
@unknownuser said:
I might not be right. When you wrote that it will retrieve the variable, i thought you could change the variable, like on a control panel slider. it is like two joints controlled with the same name.
Ok, I think I understand. Right now you can only get variables that have been set. That may change at some point.
What var did you want to change?
-
@alienizer said:
@wacov said:
The physics material would be entirely separate from the SketchUp material; so you'd be able to set a box to behave like wood, but it could be painted as steel. These materials would be like templates, with settings you can modify, like density and friction. Maybe a material manager could be implemented? The UI's kinda crowded.
If it's going to work that way, then it'll be perfect, as long as we can make our own material of course. Do you know for sure that's how it'll be, or you're just guessing?
Yes that is more or less how it works. If it was just a matter of setting mass it would be easy, but it also has all the other properties of a material like friction.
Part of the problem is that you need to setup material to material values. So if you have wood and ice you have a wood/wood table and a ice/ice table and a wood/ice table. Then if you add say steel then you need all those plus steel/steel and steel/wood and steel/ice. As you can see it adds up to a lot of tables to fill in. The UI is going to be tricky.
-
@cphillips said:
Yes that is more or less how it works. If it was just a matter of setting mass it would be easy, but it also has all the other properties of a material like friction.
Part of the problem is that you need to setup material to material values. So if you have wood and ice you have a wood/wood table and a ice/ice table and a wood/ice table. Then if you add say steel then you need all those plus steel/steel and steel/wood and steel/ice. As you can see it adds up to a lot of tables to fill in. The UI is going to be tricky.
Why the need for material to material values? If one material has more friction than another one, it shouldn't make any difference what material it comes into contact with, because both material will then be evaluated to simulate the proper friction, say, rock(friction=10) on glass(friction=1) will slide more than rock(friction=10) on rock(friction=10)
-
I dont know. That how the physics engine is setup.
-
I suppose that could be useful; something like rubber could have the same friction value as rock, but it'd stick to glass really well.
-
What I'm really interseted to know is if we can use multiple physics materials in the static mesh... so you could have slippery mud next to rock and sand, all with their own settings. I've noticed that the realism becomes pretty unreliable if you use more than one static mesh in a large model, so that's not really an option.
-
I think the material interaction should not be done using the "material to material" approach. We should use the laws of physics. In real life, what make rubber stick to glass? Well, there is how porous the object is, its flexibility, how smooth it is. That's 3 things I can think of right now. Having settings such as these for each material would simplify the task, and then we would not need to do material to material.
-
Unfortunately, flexible (deformable) geometry is totally impossible with the current engine. You could probably make stuff bounce, but that's it. Bouyancy would be a useful setting, but as far as porous objects... maybe something can increase gradually in density when it enters the bouyancy plane? True fluid simulation has already been ruled out, although some physics engines support it, SU probably can't handle dynamic geometry that complex. I see what you're saying about smoothness though.
I agree with you, but specific settings could come in handy. Maybe there could be a general blanket effect, but with user-defined exceptions? The laws of physics have already been thrown out of the window ... flying cars, anyone?
-
Miss a few days, and get left in the dust... So much can change in a week!
...oh, on mac, after installation, why do I get the message
%(#FF0000)[Error Loading File sketchyphysics.rb
no such file to load -- dl]I must have done SOMETHING wrong... tried it twice to no avail...
-
Here's your flying car Wacov
Well, I suppose we could have only one setting instead of "material to material". What about...
Friction: range from 0% to 100%
The higher the number, the more friction.Say...
Glass will slide very easily on a smooth wood table.
Glass will slide a bit on sand paper.
Glass will not slide at all on Scotch tape.
Sand paper will slide a bit on Scotch tape.So we can say...
Glass.Friction == 1; // because it slides easy on smooth surfaces.
WoodTop.Friction == 3; // About like glass but not as much.
SandPaper.Friction == 30; // because it does slides on smooth surfaces, such as when sanding wood.
ScotchTape.Friction == 100; // because it doesn't slide at all on just about any surfaces.
Now we can calculate how to affect the velocity of an object when it slides on another...
if F1 == F2 then V == F1 else V == Abs(F1-F2);
where...
F1 = friction of the first object.
F2 = friction of the second object.
V the resulting percentage the objects speed should decrease on every frame...Glass --> Glass = 1%
Glass --> WoodTop = 2%
WoodTop --> Glass = 2%
Glass --> SandPaper = 29%
Glass --> ScotchTape = 99%
SandPaper --> ScotchTape = 80%
SandPaper --> WoodTop = 27%
ScotchTape --> WoodTop = 97% -
@unknownuser said:
Miss a few days, and get left in the dust... So much can change in a week!
...oh, on mac, after installation, why do I get the message
%(#FF0000)[Error Loading File sketchyphysics.rb
no such file to load -- dl]I must have done SOMETHING wrong... tried it twice to no avail...
Sorry, I forgot a file. Its attached and I will update the ZIP.
-
I see what you're saying but we're basically stuck with however the physics engine does materials. No way around it, no way to edit the engine, and really no option of changing engines at this point. Sliders in a new window for material config, like you say from 0 to 100%, would be good, but if possible I'd like to be able to set rubber to have high friction against glass, and low against, say, a carpet. The carpet would have quite good friction and the rubber would have very high friction, so if we only used a general system then it wouldn't work realistically. We can't simulate the interaction between the rubber and every fibre in the carpet, so this would be the best solution
-
I see what you mean. But since "material to material" can take a very long time to set up, perhaps we can use my suggestion to at least setup the default settings for "material to material"? It'll be better than all being zero!
-
That's what I mean. A default setting, but with user-controlled exceptions would be perfect; there should be some pre-made templates, say, wood, metal, rubber, glass, stone, fabric, plastic, polysterene, and cardboard... just off the top of my head. This would mean that, as long as people used them, the materials that use exceptions would be cross-compatible between models.
-
First off...Y'all are incredible. It warms my soul to see people so jazzed about something
with so much possibility (and reality in a virtual sense)However...I am still locked in a semi_autocad world and have found the following snafu.
If I import a solid model from Autocad, I think that the program assigns names of group#1, group#2, group#3 to all of the solids.
This seems to cause SP3RC1 to stop working.
However, if I just used the entity info tool and edit out the names it all works.
Anyone else have the same problem....I am introducing my Autocad students (it is in the course title) to workflow and this extra step might actually
be good for them but on the other hand it is maddening when you just want to hook up an xbox controller and throw virtual tomatoes.Keep rockin!
-
@mptak said:
First off...Y'all are incredible. It warms my soul to see people so jazzed about something
with so much possibility (and reality in a virtual sense)However...I am still locked in a semi_autocad world and have found the following snafu.
If I import a solid model from Autocad, I think that the program assigns names of group#1, group#2, group#3 to all of the solids.
This seems to cause SP3RC1 to stop working.
However, if I just used the entity info tool and edit out the names it all works.
Anyone else have the same problem....I am introducing my Autocad students (it is in the course title) to workflow and this extra step might actually
be good for them but on the other hand it is maddening when you just want to hook up an xbox controller and throw virtual tomatoes.Keep rockin!
Ive never had this problem before but throwing virtual tomatoes is a bit of a new one. I hope your joking.
-
@mptak said:
If I import a solid model from Autocad, I think that the program assigns names of group#1, group#2, group#3 to all of the solids.
That shouldnt be a problem. I renamed a few objects like that and they still worked. There might be something else going on. Post a model that fails and I'll take a look.
-
Another "gee whiz!" post:
Gotta say thanks to the creator of SP. I'm amazed. I certainly didn't expect it to be such a well thought out program, and as soon as I played with the realtime simulator I was hooked. Fantastic. Now I get to spend even more time banging my head on the keyboard using sketchup while trying to learn a new, complex tool. My wife won't be as thrilled about the plugin as I am...
EDIT:
Heh, Just got playing with it and already have a question. I created a static ground and a cylinder object, made an end of the cylinder a "thruster" and "launched" it from the ground. After I let off the thrust to let the object fall to the ground, it fell right the ground. Reapplying thrust to arrest the fall bringing it back up to the level of the ground and allowing the object to settle gently onto the plane worked fine.
Did I run up against a limit for object interaction/collision?
-
Collisions can only be detected when an object is interesecting another in the given frame... if an object is moving fast enough to be on one side in one frame, and the other side in the next, no collision will be detected. There's a possiblity of raycast-collision detection being introduced, which will accurately detect collisions between objects at any speed.
-
Good to know. Thanks for the reply.
Advertisement