Help Explaining on Flowlab Part 5 - Materials

This is a fairly new asset, though still one found confusing by me. After my account was upgraded from flash to HTML 5, that was one of the few new items to come to flowlab. I was just curious however, to how this could become useful. What I want is the usual. It has not bothered me as much as the others, but I am just curious to know what this does. This is for everyone’s benefit as well as my own and I hope everyone keeps updated with this series and learns from this. What I simply want to know is What it does, how to use it, and what is it good for and maybe a quick example as well. Nothing Major in this one but still quite helpful. Links for Part 1 - 4 will be bellow. It covers Rayasting, Extracting, Enabled and Ease. As Always, I shall call out @Superstargames , @“JR 01” @seamothmaster45 and @todorrobot and @“Johnny boy” .

Part 1: http://forum.flowlab.io/discussion/8420/help-explaining-on-flowlab-part-1-raycasting#latest
Part 2: http://forum.flowlab.io/discussion/8421/help-explaining-on-flowlab-part-2-extractors#latest
Part 3: http://forum.flowlab.io/discussion/comment/37281#Comment_37281
Part 4: http://forum.flowlab.io/discussion/comment/37336#Comment_37336

Material is a away to change the physics of an object on demand as a behavior. This could be useful to make clones of the same object have different physics in different situations.

For example I am using it along with a recast to make platforms only bouncy on one side.

I also use it to make normal floor blocks bouncy if they are touching green slime, which makes it far easer to code then several of the alternative ways of doing these things

This isn’t the most useful block in existence but given the right situation this one fulfills its purpose quite well

Material should be self-explanatory. It changes some of the properties of the object depending on the input activated and the value of the number. For the material behavior, the properties that can be changed are friction, bounce, and density. That’s pretty much it.
Let’s say that an object has a friction of 50 (default). Then the object moves to a friction level of 0 (basically making a slippery effect that is so strong, you cannot stop). In order for that to work, the number 0 must be inputted into the friction input. To switch back to a friction strength of 50,the number 50 must be inputted into the friction input. All of these rules apply with density and bounce, but instead they work for density and bounce.
I never used material before, so I never experimented with what it could be used for. I think it could be used to change the properties of an object as a result of a certain event. For example, if a piece of snow lands on a grass tile. When the snow lands on the grass, the grass could change its friction from 50 to 20 to give it an ice effect. If the snow is removed (and the grass tile detects it), the grass could change its friction from a 20 back to a 50.

I might also add how each property works. Friction determines how much friction this object exerts on other objects, or how much friction this object can receive. Bounce determines how strong this object bounces off of other objects or vice versa. Density appeared in the HTML transfer, so it is newer. Density affects an objects density. Density only appears in movable objects. I am not entirely sure what density does, but based on my own knowledge with the real world, it could allow an object to float or stand on objects of a greater density.

I think between @“my_name (<_>)” and @Superstargames all of it is covered

This ones pretty easy and useful

Its basically lets you control more of the objects settings. Each input uses a 0 to 100 scale that updates the object settings.

The object will reset its settings if the level is loaded/reloaded. But any inputs change the object, change any property at any time.

I mostly use it to control the friction, but I’m sure there are many ways to use all its propertys. Such as making 1 object for the ground and walls. If the player touches the side, then set its friction to 0 and the player will slide down it.

I made a small example when the behavior was released, play around with and you’ll get the idea.
https://flowlab.io/game/play/1340993

@“my_name (<_>)” Thank you, for that very down to earth definition. That really helped shead some light onto this. @Superstargames thank you for going into more detail explaining all their functions and @“JR 01” for summing everything up with an example and a basic definiton of it. Thank you, all, Part 6 Out Soon!