All standard KiCad 3D models come in .vrml AND .step formats exactly for this reason. Kicad searches for a .step with the same name during cad export, and uses the vrml for the internal renderer.
You can even turn that substitution off with the “Substitude similarly named models” option in the cad export dialogue:
If you build your own 3D model for a footprint, its better to just use step. It still will be shown in the 3d Viewer and can be exported for cad use. IIRC the whole VRML ballast will be dropped in the future anyway. (Cant wait for that)