diff --git a/assets/models/satellite.glb b/assets/models/satellite.bin similarity index 66% rename from assets/models/satellite.glb rename to assets/models/satellite.bin index dcffe82..1e35f14 100644 Binary files a/assets/models/satellite.glb and b/assets/models/satellite.bin differ diff --git a/assets/models/satellite.gltf b/assets/models/satellite.gltf new file mode 100644 index 0000000..971c8ff --- /dev/null +++ b/assets/models/satellite.gltf @@ -0,0 +1,669 @@ +{ + "asset":{ + "generator":"Khronos glTF Blender I/O v4.2.60", + "version":"2.0" + }, + "scene":0, + "scenes":[ + { + "name":"Scene", + "nodes":[ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + } + ], + "nodes":[ + { + "mesh":0, + "name":"case", + "rotation":[ + 0, + 0.3826834261417389, + 0, + 0.9238795638084412 + ], + "scale":[ + 0.2603156268596649, + 0.26031559705734253, + 0.2603156268596649 + ] + }, + { + "mesh":1, + "name":"panel1", + "scale":[ + 0.36444181203842163, + 2.1831600666046143, + 0.013015778735280037 + ], + "translation":[ + 0, + -2.8139500617980957, + 0 + ] + }, + { + "mesh":2, + "name":"Sphere.003", + "rotation":[ + 0.6532815098762512, + 0.27059805393218994, + -0.2705981135368347, + 0.6532815098762512 + ], + "scale":[ + 0.5632755160331726, + 0.4023396968841553, + 0.5632755756378174 + ], + "translation":[ + 0.47120311856269836, + 0, + 0.47120311856269836 + ] + }, + { + "mesh":2, + "name":"Sphere.004", + "rotation":[ + -0.6532815098762512, + 0.27059805393218994, + 0.2705981135368347, + 0.6532815098762512 + ], + "scale":[ + 0.5632755160331726, + 0.4023396968841553, + 0.5632755756378174 + ], + "translation":[ + -0.47120311856269836, + 0, + -0.47120311856269836 + ] + }, + { + "mesh":1, + "name":"panel2", + "scale":[ + 0.36444181203842163, + 2.1831600666046143, + 0.013015778735280037 + ], + "translation":[ + 0, + 2.8139500617980957, + 0 + ] + }, + { + "mesh":2, + "name":"Sphere.001", + "rotation":[ + 0.2705981135368347, + 0.27059805393218994, + 0.6532815098762512, + 0.6532815098762512 + ], + "scale":[ + 0.5632755756378174, + 0.4023396968841553, + 0.5632755160331726 + ], + "translation":[ + -0.47120311856269836, + 0, + 0.47120311856269836 + ] + }, + { + "mesh":2, + "name":"Sphere.002", + "rotation":[ + -0.2705981135368347, + 0.27059805393218994, + -0.6532815098762512, + 0.6532815098762512 + ], + "scale":[ + 0.5632755756378174, + 0.4023396968841553, + 0.5632755160331726 + ], + "translation":[ + 0.47120311856269836, + 0, + -0.47120311856269836 + ] + }, + { + "mesh":3, + "name":"stick1", + "scale":[ + 0.013015778735280037, + 0.6507889628410339, + 0.013015778735280037 + ], + "translation":[ + 0.1952366977930069, + 0, + 0 + ] + }, + { + "mesh":3, + "name":"stick1.001", + "scale":[ + 0.013015778735280037, + 0.6507889628410339, + 0.013015778735280037 + ], + "translation":[ + -0.1952366977930069, + 0, + 0 + ] + } + ], + "materials":[ + { + "doubleSided":true, + "name":"Case", + "pbrMetallicRoughness":{ + "baseColorFactor":[ + 0.7393113970756531, + 0.6047489643096924, + 0.403188556432724, + 1 + ], + "metallicFactor":0.9900000095367432, + "roughnessFactor":0.3068181872367859 + } + }, + { + "doubleSided":true, + "name":"Panel", + "pbrMetallicRoughness":{ + "baseColorTexture":{ + "index":0 + }, + "metallicFactor":0.9545450210571289, + "roughnessFactor":0.1931818127632141 + } + }, + { + "doubleSided":true, + "name":"Metal", + "pbrMetallicRoughness":{ + "baseColorFactor":[ + 0.030757077038288116, + 0.030757077038288116, + 0.030757077038288116, + 1 + ], + "metallicFactor":0.35227280855178833 + } + } + ], + "meshes":[ + { + "name":"Cube.001", + "primitives":[ + { + "attributes":{ + "POSITION":0, + "NORMAL":1, + "TEXCOORD_0":2 + }, + "indices":3, + "material":0 + } + ] + }, + { + "name":"Cube.002", + "primitives":[ + { + "attributes":{ + "POSITION":4, + "NORMAL":5, + "TEXCOORD_0":6 + }, + "indices":7, + "material":1 + }, + { + "attributes":{ + "POSITION":8, + "NORMAL":9, + "TEXCOORD_0":10 + }, + "indices":11, + "material":2 + } + ] + }, + { + "name":"Sphere.001", + "primitives":[ + { + "attributes":{ + "POSITION":12, + "NORMAL":13, + "TEXCOORD_0":14 + }, + "indices":15, + "material":0 + }, + { + "attributes":{ + "POSITION":16, + "NORMAL":17, + "TEXCOORD_0":18 + }, + "indices":19, + "material":2 + } + ] + }, + { + "name":"Cube.004", + "primitives":[ + { + "attributes":{ + "POSITION":20, + "NORMAL":21, + "TEXCOORD_0":22 + }, + "indices":23, + "material":2 + } + ] + } + ], + "textures":[ + { + "sampler":0, + "source":0 + } + ], + "images":[ + { + "mimeType":"image/jpeg", + "name":"solarpanel", + "uri":"../textures/solarpanel.jpg" + } + ], + "accessors":[ + { + "bufferView":0, + "componentType":5126, + "count":24, + "max":[ + 1, + 1, + 1 + ], + "min":[ + -1, + -1, + -1 + ], + "type":"VEC3" + }, + { + "bufferView":1, + "componentType":5126, + "count":24, + "type":"VEC3" + }, + { + "bufferView":2, + "componentType":5126, + "count":24, + "type":"VEC2" + }, + { + "bufferView":3, + "componentType":5123, + "count":36, + "type":"SCALAR" + }, + { + "bufferView":4, + "componentType":5126, + "count":8, + "max":[ + 0.9575735926628113, + 0.9575735926628113, + 1 + ], + "min":[ + -0.9575735926628113, + -0.9575735926628113, + -1 + ], + "type":"VEC3" + }, + { + "bufferView":5, + "componentType":5126, + "count":8, + "type":"VEC3" + }, + { + "bufferView":6, + "componentType":5126, + "count":8, + "type":"VEC2" + }, + { + "bufferView":7, + "componentType":5123, + "count":12, + "type":"SCALAR" + }, + { + "bufferView":8, + "componentType":5126, + "count":32, + "max":[ + 1, + 1, + 1 + ], + "min":[ + -1, + -1, + -1 + ], + "type":"VEC3" + }, + { + "bufferView":9, + "componentType":5126, + "count":32, + "type":"VEC3" + }, + { + "bufferView":10, + "componentType":5126, + "count":32, + "type":"VEC2" + }, + { + "bufferView":11, + "componentType":5123, + "count":72, + "type":"SCALAR" + }, + { + "bufferView":12, + "componentType":5126, + "count":559, + "max":[ + 0.9999997019767761, + -0.10132407397031784, + 0.9999993443489075 + ], + "min":[ + -0.9999990463256836, + -1, + -1 + ], + "type":"VEC3" + }, + { + "bufferView":13, + "componentType":5126, + "count":559, + "type":"VEC3" + }, + { + "bufferView":14, + "componentType":5126, + "count":559, + "type":"VEC2" + }, + { + "bufferView":15, + "componentType":5123, + "count":2880, + "type":"SCALAR" + }, + { + "bufferView":16, + "componentType":5126, + "count":256, + "max":[ + 0.8275652527809143, + 1.6018365621566772, + 0.9807850122451782 + ], + "min":[ + -0.7802494764328003, + -0.22761762142181396, + -0.5448949933052063 + ], + "type":"VEC3" + }, + { + "bufferView":17, + "componentType":5126, + "count":256, + "type":"VEC3" + }, + { + "bufferView":18, + "componentType":5126, + "count":256, + "type":"VEC2" + }, + { + "bufferView":19, + "componentType":5123, + "count":444, + "type":"SCALAR" + }, + { + "bufferView":20, + "componentType":5126, + "count":16, + "max":[ + 1, + 1, + 1 + ], + "min":[ + -1, + -1, + -1 + ], + "type":"VEC3" + }, + { + "bufferView":21, + "componentType":5126, + "count":16, + "type":"VEC3" + }, + { + "bufferView":22, + "componentType":5126, + "count":16, + "type":"VEC2" + }, + { + "bufferView":23, + "componentType":5123, + "count":24, + "type":"SCALAR" + } + ], + "bufferViews":[ + { + "buffer":0, + "byteLength":288, + "byteOffset":0, + "target":34962 + }, + { + "buffer":0, + "byteLength":288, + "byteOffset":288, + "target":34962 + }, + { + "buffer":0, + "byteLength":192, + "byteOffset":576, + "target":34962 + }, + { + "buffer":0, + "byteLength":72, + "byteOffset":768, + "target":34963 + }, + { + "buffer":0, + "byteLength":96, + "byteOffset":840, + "target":34962 + }, + { + "buffer":0, + "byteLength":96, + "byteOffset":936, + "target":34962 + }, + { + "buffer":0, + "byteLength":64, + "byteOffset":1032, + "target":34962 + }, + { + "buffer":0, + "byteLength":24, + "byteOffset":1096, + "target":34963 + }, + { + "buffer":0, + "byteLength":384, + "byteOffset":1120, + "target":34962 + }, + { + "buffer":0, + "byteLength":384, + "byteOffset":1504, + "target":34962 + }, + { + "buffer":0, + "byteLength":256, + "byteOffset":1888, + "target":34962 + }, + { + "buffer":0, + "byteLength":144, + "byteOffset":2144, + "target":34963 + }, + { + "buffer":0, + "byteLength":6708, + "byteOffset":2288, + "target":34962 + }, + { + "buffer":0, + "byteLength":6708, + "byteOffset":8996, + "target":34962 + }, + { + "buffer":0, + "byteLength":4472, + "byteOffset":15704, + "target":34962 + }, + { + "buffer":0, + "byteLength":5760, + "byteOffset":20176, + "target":34963 + }, + { + "buffer":0, + "byteLength":3072, + "byteOffset":25936, + "target":34962 + }, + { + "buffer":0, + "byteLength":3072, + "byteOffset":29008, + "target":34962 + }, + { + "buffer":0, + "byteLength":2048, + "byteOffset":32080, + "target":34962 + }, + { + "buffer":0, + "byteLength":888, + "byteOffset":34128, + "target":34963 + }, + { + "buffer":0, + "byteLength":192, + "byteOffset":35016, + "target":34962 + }, + { + "buffer":0, + "byteLength":192, + "byteOffset":35208, + "target":34962 + }, + { + "buffer":0, + "byteLength":128, + "byteOffset":35400, + "target":34962 + }, + { + "buffer":0, + "byteLength":48, + "byteOffset":35528, + "target":34963 + } + ], + "samplers":[ + { + "magFilter":9729, + "minFilter":9987 + } + ], + "buffers":[ + { + "byteLength":35576, + "uri":"satellite.bin" + } + ] +} diff --git a/src/blender/satellite.blend b/src/blender/satellite.blend new file mode 100644 index 0000000..236ac0f Binary files /dev/null and b/src/blender/satellite.blend differ diff --git a/src/load.rs b/src/load.rs index 6fffa46..f3166e6 100644 --- a/src/load.rs +++ b/src/load.rs @@ -44,7 +44,7 @@ pub fn asset_name_to_path(name: &str) -> &'static str { "MeteorAceGT" => "models/MeteorAceGT.glb#Scene0", "cruiser" => "models/cruiser.glb#Scene0", "shippingcontainer" => "models/shippingcontainer.glb#Scene0", - "satellite" => "models/satellite.glb#Scene0", + "satellite" => "models/satellite.gltf#Scene0", "pizzeria" => "models/pizzeria3.gltf#Scene0", "pizzasign" => "models/pizzasign.glb#Scene0", "selectagon" => "models/selectagon.glb#Scene0",