aboutsummaryrefslogtreecommitdiff
path: root/exporter
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-03-22 19:48:53 +0100
committermetamuffin <metamuffin@disroot.org>2025-03-22 19:48:53 +0100
commit205aca90d6c21f3dd73b576c06f5ab8c1010772a (patch)
tree8a5b58c2b1aca919d94bcdb1fe7d4edb91968ca9 /exporter
parent2ee2f1af847dbc9f1292baefc9fd652167b9103a (diff)
downloadunity-tools-205aca90d6c21f3dd73b576c06f5ab8c1010772a.tar
unity-tools-205aca90d6c21f3dd73b576c06f5ab8c1010772a.tar.bz2
unity-tools-205aca90d6c21f3dd73b576c06f5ab8c1010772a.tar.zst
horrible pptr external files system
Diffstat (limited to 'exporter')
-rw-r--r--exporter/src/bin/debug.rs6
-rw-r--r--exporter/src/bin/gltf.rs2
-rw-r--r--exporter/src/bin/json.rs2
-rw-r--r--exporter/src/bin/material_stats.rs4
-rw-r--r--exporter/src/bin/meshes.rs4
-rw-r--r--exporter/src/bin/textures.rs7
-rw-r--r--exporter/src/bin/typegraph.rs2
-rw-r--r--exporter/src/bin/yaml.rs3
8 files changed, 13 insertions, 17 deletions
diff --git a/exporter/src/bin/debug.rs b/exporter/src/bin/debug.rs
index b1d8d12..56b9c1f 100644
--- a/exporter/src/bin/debug.rs
+++ b/exporter/src/bin/debug.rs
@@ -8,9 +8,9 @@ fn main() -> anyhow::Result<()> {
let node = fs.find_main_file().unwrap().to_owned();
let mut cab = fs.read(&node)?;
- let file = SerializedFile::read(&mut cab, 0)?;
+ let file = SerializedFile::read(&mut cab, node.name)?;
let shared_assets = if let Some(n) = file.find_fs_shared_assets(&fs) {
- Some(SerializedFile::read(fs.read(&n)?, 1)?)
+ Some(SerializedFile::read(fs.read(&n)?, n.name)?)
} else {
None
};
@@ -60,7 +60,7 @@ fn main() -> anyhow::Result<()> {
// serde_json::to_string_pretty(&value.to_json()).unwrap()
// )
}
- eprintln!("{:#?}", file.externals);
+ eprintln!("{:#?}", file.ecx);
if let Some(shared_assets) = shared_assets {
eprintln!("{:#?}", shared_assets);
for ob in shared_assets.objects {
diff --git a/exporter/src/bin/gltf.rs b/exporter/src/bin/gltf.rs
index 544bd6f..b8db13c 100644
--- a/exporter/src/bin/gltf.rs
+++ b/exporter/src/bin/gltf.rs
@@ -14,7 +14,7 @@ use unity_tools::{
classes::{
gameobject::GameObject,
mesh::{Mesh, VertexDataChannel},
- mesh_renderer::SkinnedMeshRenderer,
+ renderer::SkinnedMeshRenderer,
transform::Transform,
},
serialized_file::SerializedFile,
diff --git a/exporter/src/bin/json.rs b/exporter/src/bin/json.rs
index 57a0edc..062d36b 100644
--- a/exporter/src/bin/json.rs
+++ b/exporter/src/bin/json.rs
@@ -14,7 +14,7 @@ fn main() -> anyhow::Result<()> {
let node = fs.find_main_file().unwrap().to_owned();
let mut cab = fs.read(&node)?;
- let mut file = SerializedFile::read(&mut cab, 0)?;
+ let mut file = SerializedFile::read(&mut cab, node.name)?;
for ob in file.objects.clone() {
if let Some(f) = &filter {
if file.get_object_type_tree(&ob)?.type_string != *f && ob.path_id.to_string() != *f {
diff --git a/exporter/src/bin/material_stats.rs b/exporter/src/bin/material_stats.rs
index b853442..9faa581 100644
--- a/exporter/src/bin/material_stats.rs
+++ b/exporter/src/bin/material_stats.rs
@@ -4,11 +4,11 @@ use unity_tools::{assetbundle::AssetBundle, classes::material::Material};
fn main() -> anyhow::Result<()> {
env_logger::init_from_env("LOG");
let file = BufReader::new(File::open(args().nth(1).unwrap()).unwrap());
- let mut bundle = AssetBundle::open(file)?;
+ let mut bundle = AssetBundle::open(file, "samples")?;
let mode = args().nth(2).unwrap();
- for ob in bundle.all_toplevel_of_class("Material").collect::<Vec<_>>() {
+ for ob in bundle.all_toplevel_of_class("Material") {
let mat = ob.load(&mut bundle)?.parse::<Material>()?;
match mode.as_str() {
diff --git a/exporter/src/bin/meshes.rs b/exporter/src/bin/meshes.rs
index dcc8059..e22fac0 100644
--- a/exporter/src/bin/meshes.rs
+++ b/exporter/src/bin/meshes.rs
@@ -13,12 +13,12 @@ use unity_tools::{
fn main() -> anyhow::Result<()> {
env_logger::init_from_env("LOG");
let file = BufReader::new(File::open(args().nth(1).unwrap()).unwrap());
- let mut bundle = AssetBundle::open(file)?;
+ let mut bundle = AssetBundle::open(file, "samples")?;
let mut i = 0;
create_dir_all("/tmp/a").unwrap();
- for ob in bundle.all_toplevel_of_class("Mesh").collect::<Vec<_>>() {
+ for ob in bundle.all_toplevel_of_class("Mesh") {
let mesh = ob.load(&mut bundle)?.parse::<Mesh>()?;
let mut obj = BufWriter::new(File::create(format!(
"/tmp/a/{}_{i}.obj",
diff --git a/exporter/src/bin/textures.rs b/exporter/src/bin/textures.rs
index 56cfc9b..83b0f1d 100644
--- a/exporter/src/bin/textures.rs
+++ b/exporter/src/bin/textures.rs
@@ -9,15 +9,12 @@ use unity_tools::{assetbundle::AssetBundle, classes::texture2d::Texture2D};
fn main() -> anyhow::Result<()> {
env_logger::init_from_env("LOG");
let file = BufReader::new(File::open(args().nth(1).unwrap()).unwrap());
- let mut bundle = AssetBundle::open(file)?;
+ let mut bundle = AssetBundle::open(file, "samples")?;
let mut i = 0;
create_dir_all("/tmp/a").unwrap();
- for ob in bundle
- .all_toplevel_of_class("Texture2D")
- .collect::<Vec<_>>()
- {
+ for ob in bundle.all_toplevel_of_class("Texture2D") {
let mut texture = ob.load(&mut bundle)?.parse::<Texture2D>()?;
if texture.image_data.is_empty() {
texture.image_data = texture.stream_data.read(&bundle.fs)?;
diff --git a/exporter/src/bin/typegraph.rs b/exporter/src/bin/typegraph.rs
index 388f36f..d1e7629 100644
--- a/exporter/src/bin/typegraph.rs
+++ b/exporter/src/bin/typegraph.rs
@@ -19,7 +19,7 @@ fn main() -> anyhow::Result<()> {
let mut edges = BTreeSet::new();
let node = fs.find_main_file().unwrap().to_owned();
let mut cab = fs.read(&node)?;
- let file = SerializedFile::read(&mut cab, 0)?;
+ let file = SerializedFile::read(&mut cab, node.name)?;
for ob in file.objects {
let typetree = if ob.type_id < 0 {
diff --git a/exporter/src/bin/yaml.rs b/exporter/src/bin/yaml.rs
index 26cd04b..afa016a 100644
--- a/exporter/src/bin/yaml.rs
+++ b/exporter/src/bin/yaml.rs
@@ -14,8 +14,7 @@ fn main() -> anyhow::Result<()> {
let node = fs.find_main_file().unwrap().to_owned();
let mut cab = fs.read(&node)?;
-
- let mut file = SerializedFile::read(&mut cab,0)?;
+ let mut file = SerializedFile::read(&mut cab, node.name)?;
for ob in file.objects.clone() {
if let Some(f) = &filter {
if file.get_object_type_tree(&ob)?.type_string != *f && ob.path_id.to_string() != *f {