Garux / netradiant-custom

The open-source, cross-platform level editor for id Tech based games.
https://garux.github.io/NRC/
Other
299 stars 52 forks source link

shaders for misc_model not displaying in 3d viewport on recent version(s) #37

Closed KillPixelGames closed 4 years ago

KillPixelGames commented 4 years ago

001 002

shader example:

dirt-rock { qer_editorImage textures/e1m2/e1m2_drt1_1_l { } }

Garux commented 4 years ago

This was discussed, in Q3 you normally do not want shader path in the FS root.
So such path in model is understood as relative to model file.
Behavior was introduced here: https://github.com/Garux/netradiant-custom/commit/86904473bb7c350dcf3ba6c676a85cb69be1d814
It enables handling most of models, coming from modelling software w/o path correction business.
In this release https://github.com/Garux/netradiant-custom/releases/tag/20200320 extended _remap of q3map2 will remap given case by hooking up automatic non root path suffix.

KillPixelGames commented 4 years ago

Shaders are still not displayed in the 20200320 build.

Garux commented 4 years ago

Yes, it wont show in this case, i have explained why.
I have no solution idea to please both majority of model users and this special case users.
The only thing, you need to tune to show shaders in editor, is this placeholder shader (check console warnings for substitution info). Or just drop placeholder texture near the model.
Some improvement about this business would be supporting _remap in editor too.

KillPixelGames commented 4 years ago

Ok, I must have misunderstood. So, just for clarity, shaders called with _remap cannot be displayed in editor in recent radiant versions? If so, I'll just revert to an old version.

The only thing, you need to tune to show shaders in editor, is this placeholder shader (check console warnings for substitution info)

This is the info given:

PICO: substituting shader name: None -> models/meshes/hub1/None
PICO: substituting shader name: None -> models/meshes/hub1/None
PICO: substituting shader name: None -> models/meshes/hub1/None
Garux commented 4 years ago

This fixes 'none' thing https://github.com/Garux/netradiant-custom/commit/fbbbd2e7d78de1f9b56f55f419c1fbe252887166 Bitmap has priority over material name, i think this is correct. Both models and game have 'named shader with w/e bitmap name' conception, but model->editor pipe only delivers geometry and bitmaps, there is no model shader->game shader pipe.

This improves _remap use experience https://github.com/Garux/netradiant-custom/commit/7fd32180e2fc39ae99eef0c2f1acf45f4d63d05f I guess you don't want to use actual shader names in fs root anyway, so this looks like solution.