- Home /
How to detect collisions with materials?
I've got a simple car game with 3 different surfaces: grass, tar and sand. I have a basic skid smoke system, but I want the color of the skid smoke to change depending on the surface, for example on tar it should be a light grey color, on grass it should be a green/brown color and sand should be a light cream color. I have 3 different options for detecting the collisions for those 3 states and they were a whole lot of box colliders, changing the meshes of all the objects (its a modular setup...) to be separated by the surface type and the last one was to use a tag for each surface type. I tried the tag for each surface type but the issue was most blocks had multiple surface type on it...
So I thought what if I could use the materials for the collisions. Afterall, if unity can separate the mesh faces into different sections for different materials (yes I know this technically isn't unity doing this but it can still 'read' it) then would it be possible to say, when my car is on the grass material, make the smoke green/brown. It makes logical sense to me but I just can't think how to execute it. Could someone please enlighten me on either if this is possible, and if so, how to do it, or if it isn't, then perhaps the next best option?
Thanks, Matthew
Your answer
Follow this Question
Related Questions
Cant get Collisions to work 3 Answers
EXC_BAD_ACCESS (SIGABRT) from Unity::Material::CreateMaterial 0 Answers
How to Get Procedural Materials to work on Unity Tree Creator 0 Answers
Player Skins shop Menu 0 Answers
Materials disappear Android 0 Answers