public void writeExternal(ObjectOutput out) throws IOException {
        out.writeFloat(x);
        out.writeFloat(y);
        out.writeFloat(z);
        out.writeFloat(w);
    }
Writes the quaternion to an {@code ObjectOutput} object.

<p>Used with serialization. Should not be invoked directly by application
code.

@param out the object to write to (not null)
@throws IOException if the ObjectOutput cannot write a float
@see java.io.Externalizable
jme3-core/src/main/java/com/jme3/math/Quaternion.java