From 77b41e7ebfe22ff10bbda4fc8beb997bf7d24689 Mon Sep 17 00:00:00 2001
From: Quaternions <krakow20@gmail.com>
Date: Wed, 29 Jan 2025 12:40:35 -0800
Subject: [PATCH] tweak get_texture_description

---
 lib/rbx_loader/src/rbx.rs | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/lib/rbx_loader/src/rbx.rs b/lib/rbx_loader/src/rbx.rs
index 5eccf54..37e3881 100644
--- a/lib/rbx_loader/src/rbx.rs
+++ b/lib/rbx_loader/src/rbx.rs
@@ -406,16 +406,13 @@ enum RobloxBasePartDescription{
 	Wedge(RobloxWedgeDescription),
 	CornerWedge(RobloxCornerWedgeDescription),
 }
-fn get_texture_description<AcquireRenderConfigId>(
+fn get_texture_description<'a>(
 	temp_objects:&mut Vec<rbx_dom_weak::types::Ref>,
-	acquire_render_config_id:&mut AcquireRenderConfigId,
-	dom:&rbx_dom_weak::WeakDom,
+	render_config_deferred_loader:&mut RenderConfigDeferredLoader<&'a str>,
+	dom:&'a rbx_dom_weak::WeakDom,
 	object:&rbx_dom_weak::Instance,
 	size:&rbx_dom_weak::types::Vector3,
-)->RobloxPartDescription
-	where
-		AcquireRenderConfigId:FnMut(Option<&str>)->model::RenderConfigId,
-{
+)->RobloxPartDescription{
 	//use the biggest one and cut it down later...
 	let mut part_texture_description:RobloxPartDescription=[None,None,None,None,None,None];
 	temp_objects.clear();
@@ -433,7 +430,7 @@ fn get_texture_description<AcquireRenderConfigId>(
 			decal.properties.get("Color3"),
 			decal.properties.get("Transparency"),
 		) {
-			let render_id=acquire_render_config_id(Some(content.as_ref()));
+			let render_id=render_config_deferred_loader.acquire_render_config_id(Some(content.as_ref()));
 				let normal_id=normalid.to_u32();
 				if normal_id<6{
 					let (roblox_texture_color,roblox_texture_transform)=if decal.class=="Texture"{
@@ -747,7 +744,7 @@ pub fn convert<'a>(
 								physics_data=Some(value);
 							}
 						}
-						let part_texture_description=get_texture_description(&mut temp_objects,&mut acquire_render_config_id,dom,object,size);
+						let part_texture_description=get_texture_description(&mut temp_objects,&mut render_config_deferred_loader,dom,object,size);
 						let union_deferred_attributes=UnionDeferredAttributes{
 							asset_id,
 							mesh_data,