Forráskód Böngészése

[Fbx] hmd.animPaths load sub directories with "*"

Tom Spira 4 hónapja
szülő
commit
1f37f8d692
1 módosított fájl, 15 hozzáadás és 6 törlés
  1. 15 6
      hide/comp/Scene.hx

+ 15 - 6
hide/comp/Scene.hx

@@ -370,17 +370,26 @@ class Scene extends hide.comp.Component implements h3d.IDrawable {
 			dirs.unshift(haxe.io.Path.join([ide.resourceDir, path]));
 		}
 
-		for( dir in dirs ) {
-			var dir = dir;
-			if( StringTools.endsWith(dir, "/") ) dir = dir.substr(0,-1);
-			for( f in try sys.FileSystem.readDirectory(dir) catch( e : Dynamic ) [] ) {
+		function loadAnims( path : String, rec : Bool ) {
+			for( f in try sys.FileSystem.readDirectory(path) catch( e : Dynamic ) [] ) {
 				var file = f.toLowerCase();
+				var filePath = path+"/"+f;
 				if( StringTools.startsWith(f,"Anim_") && (StringTools.endsWith(file,".hmd") || StringTools.endsWith(file,".fbx")) )
-					anims.push(dir+"/"+f);
+					anims.push(filePath);
 				if (customFilter != null && customFilter(f))
-					anims.push(dir+"/"+f);
+					anims.push(filePath);
+				if( rec && sys.FileSystem.isDirectory(ide.getPath(filePath)) )
+					loadAnims(filePath, rec);
 			}
 		}
+
+		for( dir in dirs ) {
+			var dir = dir;
+			var recursive = StringTools.endsWith(dir, "*");
+			if( recursive ) dir = dir.substr(0,-1);
+			if( StringTools.endsWith(dir, "/") ) dir = dir.substr(0,-1);
+			loadAnims(dir, recursive);
+		}
 		return anims;
 	}