diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000000000000000000000000000000000..620ef7d8332699a31fb89fa5f93c99ad389e262e --- /dev/null +++ b/.gitattributes @@ -0,0 +1,9 @@ +*.blend filter=lfs diff=lfs merge=lfs -text +*.blend1 filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.glb filter=lfs diff=lfs merge=lfs -text +*.jpg filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.tif filter=lfs diff=lfs merge=lfs -text +*.psd filter=lfs diff=lfs merge=lfs -text +*.gltf filter=lfs diff=lfs merge=lfs diff --git a/projects/first_mesh/resources/cube/boards2_vcyc_jpg.jpg b/projects/first_mesh/resources/cube/boards2_vcyc_jpg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..be089af49822398bcd6e83307d0dfa9bfacb1ab6 Binary files /dev/null and b/projects/first_mesh/resources/cube/boards2_vcyc_jpg.jpg differ diff --git a/projects/first_mesh/resources/cube/cube.bin b/projects/first_mesh/resources/cube/cube.bin new file mode 100644 index 0000000000000000000000000000000000000000..67ef140938cee3ade7071579b996aad68d031db2 Binary files /dev/null and b/projects/first_mesh/resources/cube/cube.bin differ diff --git a/projects/first_mesh/resources/cube/cube.blend b/projects/first_mesh/resources/cube/cube.blend new file mode 100644 index 0000000000000000000000000000000000000000..f596482964db3f66ca8812dd2d5befb1e05a0a3b Binary files /dev/null and b/projects/first_mesh/resources/cube/cube.blend differ diff --git a/projects/first_mesh/resources/cube/cube.blend1 b/projects/first_mesh/resources/cube/cube.blend1 new file mode 100644 index 0000000000000000000000000000000000000000..b46ef014c8cb2f4ebb929e9438c6225f86a84a93 Binary files /dev/null and b/projects/first_mesh/resources/cube/cube.blend1 differ diff --git a/projects/first_mesh/resources/cube/cube.glb b/projects/first_mesh/resources/cube/cube.glb new file mode 100644 index 0000000000000000000000000000000000000000..13e6c6edecf02457a12b306e5f556ed5b12e1723 Binary files /dev/null and b/projects/first_mesh/resources/cube/cube.glb differ diff --git a/projects/first_mesh/resources/cube/cube.gltf b/projects/first_mesh/resources/cube/cube.gltf new file mode 100644 index 0000000000000000000000000000000000000000..6f3eb18a2bc41656f4afb6845b792622c62454c3 --- /dev/null +++ b/projects/first_mesh/resources/cube/cube.gltf @@ -0,0 +1,132 @@ +{ + "asset" : { + "generator" : "Khronos glTF Blender I/O v1.3.48", + "version" : "2.0" + }, + "scene" : 0, + "scenes" : [ + { + "name" : "Scene", + "nodes" : [ + 0 + ] + } + ], + "nodes" : [ + { + "mesh" : 0, + "name" : "Cube" + } + ], + "materials" : [ + { + "doubleSided" : true, + "emissiveFactor" : [ + 0, + 0, + 0 + ], + "name" : "WoodTexture", + "pbrMetallicRoughness" : { + "baseColorTexture" : { + "index" : 0, + "texCoord" : 0 + }, + "metallicFactor" : 0, + "roughnessFactor" : 0.5 + } + } + ], + "meshes" : [ + { + "name" : "Cube", + "primitives" : [ + { + "attributes" : { + "POSITION" : 0, + "NORMAL" : 1, + "TEXCOORD_0" : 2 + }, + "indices" : 3, + "material" : 0 + } + ] + } + ], + "textures" : [ + { + "source" : 0 + } + ], + "images" : [ + { + "mimeType" : "image/jpeg", + "name" : "boards2_vcyc.jpg", + "uri" : "boards2_vcyc_jpg.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" + } + ], + "bufferViews" : [ + { + "buffer" : 0, + "byteLength" : 288, + "byteOffset" : 0 + }, + { + "buffer" : 0, + "byteLength" : 288, + "byteOffset" : 288 + }, + { + "buffer" : 0, + "byteLength" : 192, + "byteOffset" : 576 + }, + { + "buffer" : 0, + "byteLength" : 72, + "byteOffset" : 768 + } + ], + "buffers" : [ + { + "byteLength" : 840, + "uri" : "cube.bin" + } + ] +} diff --git a/projects/first_mesh/resources/triangle/Triangle.bin b/projects/first_mesh/resources/triangle/Triangle.bin new file mode 100644 index 0000000000000000000000000000000000000000..e0e720ac6d795f869effd39a283df46f4161a2da Binary files /dev/null and b/projects/first_mesh/resources/triangle/Triangle.bin differ diff --git a/projects/first_mesh/resources/triangle/Triangle.blend b/projects/first_mesh/resources/triangle/Triangle.blend new file mode 100644 index 0000000000000000000000000000000000000000..aa147ea42b10cdcd61b31340eeca41f0e36ecb8a Binary files /dev/null and b/projects/first_mesh/resources/triangle/Triangle.blend differ diff --git a/projects/first_mesh/resources/triangle/Triangle.glb b/projects/first_mesh/resources/triangle/Triangle.glb new file mode 100644 index 0000000000000000000000000000000000000000..39006f4d46bfd67bebeac9523498803d443483be Binary files /dev/null and b/projects/first_mesh/resources/triangle/Triangle.glb differ diff --git a/projects/first_mesh/resources/triangle/Triangle.gltf b/projects/first_mesh/resources/triangle/Triangle.gltf new file mode 100644 index 0000000000000000000000000000000000000000..0a8a1727cbda8f0b3efb72b1858ba818ddf00e66 --- /dev/null +++ b/projects/first_mesh/resources/triangle/Triangle.gltf @@ -0,0 +1,105 @@ +{ + "asset" : { + "generator" : "Khronos glTF Blender I/O v1.3.48", + "version" : "2.0" + }, + "scene" : 0, + "scenes" : [ + { + "name" : "Scene", + "nodes" : [ + 0 + ] + } + ], + "nodes" : [ + { + "mesh" : 0, + "name" : "Plane", + "translation" : [ + 0.39140841364860535, + 0, + -0.3957679271697998 + ] + } + ], + "meshes" : [ + { + "name" : "Plane", + "primitives" : [ + { + "attributes" : { + "POSITION" : 0, + "NORMAL" : 1, + "TEXCOORD_0" : 2 + }, + "indices" : 3 + } + ] + } + ], + "accessors" : [ + { + "bufferView" : 0, + "componentType" : 5126, + "count" : 3, + "max" : [ + 1, + 0, + 1 + ], + "min" : [ + -1, + 0, + -1 + ], + "type" : "VEC3" + }, + { + "bufferView" : 1, + "componentType" : 5126, + "count" : 3, + "type" : "VEC3" + }, + { + "bufferView" : 2, + "componentType" : 5126, + "count" : 3, + "type" : "VEC2" + }, + { + "bufferView" : 3, + "componentType" : 5123, + "count" : 3, + "type" : "SCALAR" + } + ], + "bufferViews" : [ + { + "buffer" : 0, + "byteLength" : 36, + "byteOffset" : 0 + }, + { + "buffer" : 0, + "byteLength" : 36, + "byteOffset" : 36 + }, + { + "buffer" : 0, + "byteLength" : 24, + "byteOffset" : 72 + }, + { + "buffer" : 0, + "byteLength" : 6, + "byteOffset" : 96 + } + ], + "buffers" : [ + { + "byteLength" : 104, + "uri" : "Triangle.bin" + } + ] +} diff --git a/projects/first_mesh/src/main.cpp b/projects/first_mesh/src/main.cpp index 27fac195decfe1d632b4998ab74f80621ef1bf00..ba50b1df944585056a1c235f52f02d6dd4281a8e 100644 --- a/projects/first_mesh/src/main.cpp +++ b/projects/first_mesh/src/main.cpp @@ -4,7 +4,7 @@ int main(int argc, const char** argv) { vkcv::asset::Mesh mesh; - int result = vkcv::asset::loadMesh("test.gltf", mesh); + int result = vkcv::asset::loadMesh("resources/cube/cube.gltf", mesh); if (result == 1) { std::cout << "Mesh loading successful!" << std::endl;