Warning CS0472 Description

I can’t wrap my head around this warning:

warning CS0472: The result of comparing value type \UnityEngine.Vector3’ with null is always `true’`

…Shouldn’t it always be false? Am I missing something here?

You haven’t shown your actual code. For example:

Vector3 vec;

if (vec != null)

this results in

warning CS0472: The result of
comparing value type
UnityEngine.Vector3 with null is
always true

while

if (vec == null)

correctly results in:

warning CS0472: The result of
comparing value type
UnityEngine.Vector3 with null is
always false

Why is that even important? You should remove the check as it’s pointless. Doing if (vec == null) is the same as doing if (false). Doing if (vec != null) is the same as doing if (true).