Warning: Ignoring warnings is bad for you.

Warnings matters.

Programmers might ignore warnings. Both in compilation and in run time.

A warning is not a compilation error, so why are they important?

Think of a warning as increased risk for a horrible crash.

Not only do you want to pay attention to warnings(compilation or run time), you would also want to log warnings yourself. In the case you are developing a framework.

I am working on a new game and my framework works on both the PC and Android.

In the PC version everything worked fine, but in the Android version the collision detection didn’t work.

When I am loading a mesh I am copying its vertex position data so I could use it for collision and physics.

However, on the Android version I was releasing this data in order to save up memory. I also added a method named ‘SetKeep’ to mark a mesh as one that I don’t want to release its physics related data.

I wasn’t working on the Android port of my framework for some time and I completely forgot that I am releasing the collision data on Android but greedily keep it on the PC. That is why it worked on the PC but not on Android.

I just couldn’t understand why my collision data was empty.

A simple log warning mentioning that I am trying to access the collision data without keeping it first would have saved me a lot of time.