This is non-intuitive, but in v7 the ${KICAD6_3DMODEL_DIR} variable is automagically pointed to the same thing as ${KICAD7_3DMODEL_DIR}, as long as you don’t have a ${KICAD6_3DMODEL_DIR} variable manually defined. This happens during runtime, not install. This is buried in the documentation here: KiCad | 7.0 | English | Documentation | KiCad
One reason for this scheme is that v7 has a “footprint in design doesn’t match footprint in library” DRC warning, so updating all of the library footprints with KICAD7 variables would have caused anyone opening a legacy design in v7 to suddenly have a bunch of not-helpful DRC warnings until they updated all of the footprints in the design. Rinse and repeat for every other legacy design. V7 doesn’t have a “diff footprint between library and board” so the difference would not have been obvious. V8 has a fancy diff tool for library-vs-design so hopefully this type of discrepancy will be easier to resolve. (That said, I don’t know what the plans for V7-to-V8 library upgrades are).
So your possible solutions are
- make sure you delete any V6 variables, and things should Just Work ™
- add a
${KICAD6_3DMODEL_DIR}variable and set it to the same thing as${KICAD7_3DMODEL_DIR}, but this is essentially what KiCad does under the hood anyway