REDxEYE / io_texture_VTF

Import-Export > Source Engine texture import
18 stars 4 forks source link

Added MaterialPathResolver as a fallback for GameInfoFile #4

Closed Ganonmaster closed 5 years ago

Ganonmaster commented 5 years ago

MaterialPathResolver acts as an alternative to GameInfoFile. While GameInfoFile works well for Source engine development, we can not assume that all imported files are in a Source game/mod directory, while we can still assume material path structure.

Example use-cases include models and materials folders downloaded from SFMLab, extracted Garry's Mod gma archives. Especially relevant on platforms where few or no Source games are supported natively, and a GameInfo.txt is rarely available. (Linux, macOS)

In addition, the Source engine's inability to deal with case-sensitive filesystems bites me in the ass once more. :cry: I added the option that tries to resolve vmt material names case-insensitively in case we are overriding existing materials. I noticed that the materials created by the MDL importer often differ from VMT names.

Edit: please note that I was unable to test the existing GameInfoFile functionality, so please test before merging. <3