From b5358be9ba64727ad8fcbd3a4b02bbb08f71d0c1 Mon Sep 17 00:00:00 2001 From: dexyfex Date: Mon, 26 Feb 2018 02:51:16 +1100 Subject: [PATCH] Fix for model viewer not showing textures on YPT drawables --- Rendering/Renderer.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Rendering/Renderer.cs b/Rendering/Renderer.cs index a35a758..a03195e 100644 --- a/Rendering/Renderer.cs +++ b/Rendering/Renderer.cs @@ -2419,6 +2419,8 @@ namespace CodeWalker.Rendering } + var yptTexDict = (drawable.Owner as YptFile)?.PtfxList?.TextureDictionary; + bool alltexsloaded = true; int missingtexcount = 0; for (int mi = 0; mi < rndbl.HDModels.Length; mi++) @@ -2443,7 +2445,12 @@ namespace CodeWalker.Rendering if ((ttex == null) && (tex != null)) { //TextureRef means this RenderableTexture needs to be loaded from texture dict... - if (texDict != 0) + if (yptTexDict != null) //for ypt files, first try the embedded tex dict.. + { + var dtex = yptTexDict.Lookup(tex.NameHash); + rdtex = renderableCache.GetRenderableTexture(dtex); + } + else if (texDict != 0) { YtdFile ytd = gameFileCache.GetYtd(texDict); if ((ytd != null) && (ytd.Loaded) && (ytd.TextureDict != null))