Physical rewrite

Moderators: Trylon, Paradox

Physical rewrite

Postby Trylon » Mon Nov 26, 2007 1:55 pm

Shorah.

A small update on current work

A while ago I wrote that I found out what the region problem was, and could now fix it.
Also, today, we put out a recent PyPRP version as a stable one.

The main reason for this is what I'm currently working on.
The entire physics system is getting a rewrite.
Besides figuring out the plHKPhysical object to about 90% of total understandability, (and the remaining 10% are though vague, still workable), and rewriting accordingly, I thought it would be time to get rid of those bloody confusing col_flags[0-5] properties.

The structure of col_flags4 and col_flags5 has recently been discovered, col_flags3 turns out to be two virtually unused booleans according to my research, leaving only col_flags0, col_flags1 and col_flags2 (which make up those 10% of not-fully understood plHKPhysiscal code).
And of those three fields, we have now discovered which settings we use most, and for what they are usable.

This calls for a new structure, which I'm currently implementing.

What should you expect:
- Setting collision type no longer through a col_type property, but through the [bounds] button in the logic properties panel.
- Setting movable objects with mass, no longer through logic properties, but through the [actor] button and settings in the logic properties panel in blender.
- A few more settings added to alcscript, and some more settings by default
- No friction by default (through that oh so handy 'no friction' flag), unless you actually specify friction.

- Finally those regions will work right, as they are now scaled correctly as well...

Now, this will mean that the old col_type and col_flags[0-5] properties won't work anymore.
And though I will in all probability provide a migration script, not everyone might want to update their blend files so soon, to comply with the new format.
So, that's where pyprp-stable-0.5 comes in. It's a recent copy, that still supports all the old ways of doing things, for those that don't want to update their ages yet. Once you want to update, grab the latest subversion, and have fun :)

Trylon
One day I ran through the cleft for the fiftieth time, and found that uru held no peace for me anymore.
User avatar
Trylon
 
Posts: 1446
Joined: Fri Sep 28, 2007 11:08 pm
Location: Gone from Uru

Re: Physical rewrite

Postby Aloys » Mon Nov 26, 2007 3:09 pm

I applause the removal of those ever-confusing col_flags. Same thing about the Mass flag. Any flags that can be removed and replaced by a more user friendly interface is a good thing.
However I fear that removing those might potentially remove the access to some rarely-used but actually usefully functions like the kickables-only collisions, or other similar stuff that we have no way of setting easily using blender's interface..

"No friction by default": I suppose you mean object will now actually have a 100% friction by default, right? (unlike the previous behaviour that set slippery collisions by default)

Also I'm not sure I understand the difference between the versions, so just to make sure: today's version (which I don't see on the usual Alcugs direcory) supports the new system of properties? While the version pyprp-stable-0.5 still works the 'old' way but still has the glitch with the regions?
User avatar
Aloys
 
Posts: 1968
Joined: Sun Oct 21, 2007 7:57 pm
Location: France (GMT +1)

Re: Physical rewrite

Postby Trylon » Mon Nov 26, 2007 3:24 pm

Aloys wrote:I applause the removal of those ever-confusing col_flags. Same thing about the Mass flag. Any flags that can be removed and replaced by a more user friendly interface is a good thing.
However I fear that removing those might potentially remove the access to some rarely-used but actually usefully functions like the kickables-only collisions, or other similar stuff that we have no way of setting easily using blender's interface..

I will make sure that you can use alcscript to still set those rarely-used-but-actually-useful functions.
It would help me a lot however, if you could describe a few to me, at least the kickables-only collision, as multiple names go around for similar stuff, and I'd like to make sure it all makes it in.

"No friction by default": I suppose you mean object will now actually have a 100% friction by default, right? (unlike the previous behaviour that set slippery collisions by default)

Yeah, that's what I meant.

Also I'm not sure I understand the difference between the versions, so just to make sure: today's version (which I don't see on the usual Alcugs direcory) supports the new system of properties? While the version pyprp-stable-0.5 still works the 'old' way but still has the glitch with the regions?


there is no "todays version" yet, except my development copy.
I was talking about what I am currently working on.
We endeavour to make sure nothing of much importance breaks before committing it to the trunk.

The new version you should expect soon will use the new properties system, as soon as I fully work it out.
pyprp-stable-0.5 still uses the old way, still has the glitch with the regions, and still uses the old material system.
One day I ran through the cleft for the fiftieth time, and found that uru held no peace for me anymore.
User avatar
Trylon
 
Posts: 1446
Joined: Fri Sep 28, 2007 11:08 pm
Location: Gone from Uru

Re: Physical rewrite

Postby Aloys » Mon Nov 26, 2007 3:47 pm

Trylon wrote:I will make sure that you can use alcscript to still set those rarely-used-but-actually-useful functions.
It would help me a lot however, if you could describe a few to me, at least the kickables-only collision, as multiple names go around for similar stuff, and I'd like to make sure it all makes it in.

Ok I' will do that.

The new version you should expect soon will use the new properties system, as soon as I fully work it out.
pyprp-stable-0.5 still uses the old way, still has the glitch with the regions, and still uses the old material system.

Ok, that clears things up.
User avatar
Aloys
 
Posts: 1968
Joined: Sun Oct 21, 2007 7:57 pm
Location: France (GMT +1)


Return to Scripting Journal

Who is online

Users browsing this forum: No registered users and 0 guests