From b25338a9911b4c28c6a8a41568e1608995a4863b Mon Sep 17 00:00:00 2001 From: maik klein Date: Mon, 26 Dec 2016 00:50:08 +0100 Subject: [PATCH] Reorder example shader --- examples/Cargo.lock | 131 +++++++++++++++++++ examples/Cargo.toml | 1 + examples/shader/texture/frag.spv | Bin 0 -> 880 bytes examples/shader/texture/texture.frag | 18 +++ examples/shader/texture/texture.vert | 13 ++ examples/shader/texture/vert.spv | Bin 0 -> 948 bytes examples/shader/{ => triangle}/frag.spv | Bin examples/shader/{ => triangle}/triangle.frag | 0 examples/shader/{ => triangle}/triangle.vert | 0 examples/shader/{ => triangle}/vert.spv | Bin examples/src/bin/triangle.rs | 43 +++--- src/lib.rs | 2 - 12 files changed, 184 insertions(+), 24 deletions(-) create mode 100644 examples/shader/texture/frag.spv create mode 100644 examples/shader/texture/texture.frag create mode 100644 examples/shader/texture/texture.vert create mode 100644 examples/shader/texture/vert.spv rename examples/shader/{ => triangle}/frag.spv (100%) rename examples/shader/{ => triangle}/triangle.frag (100%) rename examples/shader/{ => triangle}/triangle.vert (100%) rename examples/shader/{ => triangle}/vert.spv (100%) diff --git a/examples/Cargo.lock b/examples/Cargo.lock index b0a5cbf..87e37a7 100644 --- a/examples/Cargo.lock +++ b/examples/Cargo.lock @@ -4,6 +4,7 @@ version = "0.1.0" dependencies = [ "ash 0.2.0", "glfw 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", + "image 0.10.4 (registry+https://github.com/rust-lang/crates.io-index)", "winit 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -64,6 +65,11 @@ dependencies = [ "objc 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "color_quant" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "core-foundation" version = "0.2.2" @@ -91,6 +97,14 @@ dependencies = [ "serde 0.8.20 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "deque" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "dlib" version = "0.3.1" @@ -121,6 +135,15 @@ dependencies = [ "num 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "flate2" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", + "miniz-sys 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "fs2" version = "0.2.5" @@ -144,6 +167,15 @@ dependencies = [ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "gif" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "color_quant 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "gl_generator" version = "0.5.2" @@ -185,11 +217,47 @@ dependencies = [ "cmake 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "glob" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "image" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", + "enum_primitive 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "gif 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", + "jpeg-decoder 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "num-iter 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)", + "num-rational 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)", + "num-traits 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)", + "png 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "scoped_threadpool 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "inflate" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "itoa" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "jpeg-decoder" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rayon 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "kernel32-sys" version = "0.2.2" @@ -230,6 +298,11 @@ name = "log" version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "lzw" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "malloc_buf" version = "0.0.6" @@ -249,6 +322,15 @@ dependencies = [ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "miniz-sys" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "gcc 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "nom" version = "1.2.4" @@ -320,6 +402,14 @@ name = "num-traits" version = "0.1.36" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "num_cpus" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "objc" version = "0.2.2" @@ -364,6 +454,17 @@ name = "pkg-config" version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "png" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "flate2 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", + "inflate 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "num-iter 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rand" version = "0.3.15" @@ -372,6 +473,17 @@ dependencies = [ "libc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rayon" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rustc-serialize" version = "0.3.22" @@ -385,6 +497,11 @@ dependencies = [ "semver 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "scoped_threadpool" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "semver" version = "0.1.20" @@ -575,29 +692,39 @@ dependencies = [ "checksum cgl 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8bdd78cca65a739cb5475dbf6b6bbb49373e327f4a6f2b499c0f98632df38c10" "checksum cmake 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "a3a6805df695087e7c1bcd9a82e03ad6fb864c8e67ac41b1348229ce5b7f0407" "checksum cocoa 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e1be5fd98bb7e8ef0eea233a4984f4e85ecdcfa002a90b8b12b7a20faf44dc1" +"checksum color_quant 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a475fc4af42d83d28adf72968d9bcfaf035a1a9381642d8e85d8a04957767b0d" "checksum core-foundation 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "20a6d0448d3a99d977ae4a2aa5a98d886a923e863e81ad9ff814645b6feb3bbd" "checksum core-foundation-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "05eed248dc504a5391c63794fe4fb64f46f071280afaa1b73308f3c0ce4574c5" "checksum core-graphics 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "66e998abb8823fecd2a8a7205429b17a340d447d8c69b3bce86846dcdea3e33b" +"checksum deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1614659040e711785ed8ea24219140654da1729f3ec8a47a9719d041112fe7bf" "checksum dlib 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "148bce4ce1c36c4509f29cb54e62c2bd265551a9b00b38070fad551a851866ec" "checksum dtoa 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0dd841b58510c9618291ffa448da2e4e0f699d984d436122372f446dae62263d" "checksum dwmapi-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07c4c7cc7b396419bc0a4d90371d0cee16cb5053b53647d287c0b728000c41fe" "checksum enum_primitive 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f79eff5be92a4d7d5bddf7daa7d650717ea71628634efe6ca7bcda85b2183c23" +"checksum flate2 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "3eeb481e957304178d2e782f2da1257f1434dfecbae883bafb61ada2a9fea3bb" "checksum fs2 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "bcd414e5a1a979b931bb92f41b7a54106d3f6d2e6c253e9ce943b7cd468251ef" "checksum gcc 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)" = "872db9e59486ef2b14f8e8c10e9ef02de2bccef6363d7f34835dedb386b3d950" "checksum gdi32-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "65256ec4dc2592e6f05bfc1ca3b956a4e0698aa90b1dff1f5687d55a5a3fd59a" +"checksum gif 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "01c7c19a035de94bd7afbaa62c241aadfbdf1a70f560b348d2312eafa566ca16" "checksum gl_generator 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f1d8edc81c5ae84605a62f5dac661a2313003b26d59839f81d47d46cf0f16a55" "checksum gleam 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1b83402229bde9d923f0b92811be017f9df5946ee86f8647367b1e02bcf5c293" "checksum glfw 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b14e68c4ccefdf293ecb65390a5761971b83fcfc54d153a5b73d438327633965" "checksum glfw-sys 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0031461ad52978b865d3e9bafa2be2825052ddec12c56bbf2da2cf1c0274d6ea" +"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" +"checksum image 0.10.4 (registry+https://github.com/rust-lang/crates.io-index)" = "76df2dce95fef56fd35dbc41c36e37b19aede703c6be7739e8b65d5788ffc728" +"checksum inflate 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7e0062d2dc2f17d2f13750d95316ae8a2ff909af0fda957084f5defd87c43bb" "checksum itoa 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ae3088ea4baeceb0284ee9eea42f591226e6beaecf65373e41b38d95a1b8e7a1" +"checksum jpeg-decoder 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c064189dd32804b645d90406c24c23b5feed62dcf31bf3a97763ff20f5d689" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum khronos_api 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "09c9d3760673c427d46f91a0350f0a84a52e6bc5a84adf26dc610b6c52436630" "checksum lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6abe0ee2e758cd6bc8a2cd56726359007748fbf4128da998b65d0b70f881e19b" "checksum libc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "a51822fc847e7a8101514d1d44e354ba2ffa7d4c194dcab48870740e327cac70" "checksum libloading 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "84816a8c6ed8163dfe0dbdd2b09d35c6723270ea77a4c7afa4bedf038a36cb99" "checksum log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ab83497bf8bf4ed2a74259c1c802351fcd67a65baa86394b6ba73c36f4838054" +"checksum lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d947cbb889ed21c2a84be6ffbaebf5b4e0f4340638cba0444907e38b56be084" "checksum malloc_buf 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" "checksum memmap 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "69253224aa10070855ea8fe9dbe94a03fc2b1d7930bb340c9e586a7513716fea" +"checksum miniz-sys 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "9d1f4d337a01c32e1f2122510fed46393d53ca35a7f429cb0450abaedfa3ed54" "checksum nom 1.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a5b8c256fd9471521bcb84c3cdba98921497f1a331cbc15b8030fc63b82050ce" "checksum num 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)" = "bde7c03b09e7c6a301ee81f6ddf66d7a28ec305699e3d3b056d2fc56470e3120" "checksum num-bigint 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)" = "88b14378471f7c2adc5262f05b4701ef53e8da376453a8d8fee48e51db745e49" @@ -606,15 +733,19 @@ dependencies = [ "checksum num-iter 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "287a1c9969a847055e1122ec0ea7a5c5d6f72aad97934e131c83d5c08ab4e45c" "checksum num-rational 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)" = "54ff603b8334a72fbb27fe66948aac0abaaa40231b3cecd189e76162f6f38aaf" "checksum num-traits 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)" = "a16a42856a256b39c6d3484f097f6713e14feacd9bfb02290917904fae46c81c" +"checksum num_cpus 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "55aabf4e2d6271a2e4e4c0f2ea1f5b07cc589cc1a9e9213013b54a76678ca4f3" "checksum objc 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "877f30f37acef6749b1841cceab289707f211aecfc756553cd63976190e6cc2e" "checksum phf 0.7.20 (registry+https://github.com/rust-lang/crates.io-index)" = "0c6afb2057bb5f846a7b75703f90bc1cef4970c35209f712925db7768e999202" "checksum phf_codegen 0.7.20 (registry+https://github.com/rust-lang/crates.io-index)" = "6b63f121bf9a128f2172a65d8313a8e0e79d63874eeb4b4b7d82e6dda6b62f7c" "checksum phf_generator 0.7.20 (registry+https://github.com/rust-lang/crates.io-index)" = "50ffbd7970f75afa083c5dd7b6830c97b72b81579c7a92d8134ef2ee6c0c7eb0" "checksum phf_shared 0.7.20 (registry+https://github.com/rust-lang/crates.io-index)" = "286385a0e50d4147bce15b2c19f0cf84c395b0e061aaf840898a7bf664c2cfb7" "checksum pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8cee804ecc7eaf201a4a207241472cc870e825206f6c031e3ee2a72fa425f2fa" +"checksum png 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "06208e2ee243e3118a55dda9318f821f206d8563fb8d4df258767f8e62bb0997" "checksum rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "022e0636ec2519ddae48154b028864bdce4eaf7d35226ab8e65c611be97b189d" +"checksum rayon 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "50c575b58c2b109e2fbc181820cbe177474f35610ff9e357dc75f6bac854ffbf" "checksum rustc-serialize 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)" = "237546c689f20bb44980270c73c3b9edd0891c1be49cc1274406134a66d3957b" "checksum rustc_version 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084" +"checksum scoped_threadpool 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "3ef399c8893e8cb7aa9696e895427fab3a6bf265977bb96e126f24ddd2cda85a" "checksum semver 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "d4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac" "checksum semver 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2d5b7638a1f03815d94e88cb3b3c08e87f0db4d683ef499d1836aaf70a45623f" "checksum serde 0.8.20 (registry+https://github.com/rust-lang/crates.io-index)" = "793aa8d4a777e46a68bbf88998cd957e638427ba5bfb0de22c92ff277b65bd21" diff --git a/examples/Cargo.toml b/examples/Cargo.toml index 84b7820..c6cc326 100644 --- a/examples/Cargo.toml +++ b/examples/Cargo.toml @@ -6,4 +6,5 @@ authors = ["maik klein "] [dependencies] glfw = "0.9.1" winit = "0.5.6" +image = "0.10.4" ash = { version = "*", path = "../"} diff --git a/examples/shader/texture/frag.spv b/examples/shader/texture/frag.spv new file mode 100644 index 0000000000000000000000000000000000000000..3935b8cdacbaf49516d3a8fb0e9e73387540fc00 GIT binary patch literal 880 zcmY+CTT22_6oq$Aqm^AWyIBxj-bKP9h=K~T2O%h;$KhmyUDS~o?FaU&dI?(JIFcRN z?z7fj`*OB=xx<3lj6QR=W8+h{oUmEZ@~LmO9$K|z_)=>e*HJ8+mkQCWSixrHv7USD z6DZ5pWhLq0)j&5-Rn5MXG;8zLYz3G1S3wdETvw{# z>vu-369$c=`oOh6%vYu9zTkQFXh+>BmiIOPl6>NNgKijKXLOp!j8QQ9loR&Tc}F*~ z>trfl^KL2jcy*^LetJjySKG5~;n8zsP4%VE0Ro)~-q)QSf$6s^Em zS5yEU`HPtd?kvOXfJ46(dFnA2`jR}g;L(HG2^{e?dHz+*LmbSG;HbALPd)IizWHt7 z$gRrL2aa4Y`++;rZt=XEL;klIUmh)c;6Fp(b79`IEaNR;=3SLB>yxt3Rb*)3FI16y TIP}CfWN^fI1NcWTJ(c|emKHx# literal 0 HcmV?d00001 diff --git a/examples/shader/texture/texture.frag b/examples/shader/texture/texture.frag new file mode 100644 index 0000000..a7b3f18 --- /dev/null +++ b/examples/shader/texture/texture.frag @@ -0,0 +1,18 @@ +#version 450 +#extension GL_ARB_separate_shader_objects : enable +#extension GL_ARB_shading_language_420pack : enable + +layout (binding = 1) uniform sampler2D samplerColor; + +layout (binding = 0) uniform UBO{ + vec3 color; +} ubo; + + +layout (location = 0) in vec2 o_uv; +layout (location = 0) out vec4 uFragColor; + +void main() { + vec4 color = texture(samplerColor, o_uv); + uFragColor = color; +} diff --git a/examples/shader/texture/texture.vert b/examples/shader/texture/texture.vert new file mode 100644 index 0000000..0c07f3d --- /dev/null +++ b/examples/shader/texture/texture.vert @@ -0,0 +1,13 @@ +#version 450 +#extension GL_ARB_separate_shader_objects : enable +#extension GL_ARB_shading_language_420pack : enable + +layout (location = 0) in vec4 pos; +layout (location = 1) in vec2 uv; + + +layout (location = 0) out vec2 o_uv; +void main() { + o_uv = uv; + gl_Position = pos; +} diff --git a/examples/shader/texture/vert.spv b/examples/shader/texture/vert.spv new file mode 100644 index 0000000000000000000000000000000000000000..516de652cc0a46d4217fb120a3bbb1803f9e3907 GIT binary patch literal 948 zcmY+CTT8=05QW#))_c9*MJhfDBBCOQLRE+leGm)2hFF&xjY&vS5r3Y)$``@&t&P+z z)0uP5?9A-6)ynReF(dknn@#h3=1oP|m?=|t-fMT-`+4!We{_66M#EHHA~~~W!o{Qd zehtDH05c_9l D`c&jUbzxMh*Y;a?mws;3APWlX=TE_-&HUuy*>;Qke~zRu?)gy= z_xeH4`bUQcY0!N!HB}n!38ru2_uu5CSKSPtn%*%lt{3^YHoLc3Vc*HA4|rmn%uwbL!?7<<3iZgNH*=J|7sbNwD2F@5D~js!P1&mQ z^=EMyttmV%PcHn~0P{P*p-;*)U#Wx3nW;A;Onqis)^|g`DdX%7@T_8LYzfcFlMlD8 zh_{qA&@lQg$TI^vbAj1E9DSDLn=Tpzel@S(%4?Fgf4qek%I`Y^zKj literal 0 HcmV?d00001 diff --git a/examples/shader/frag.spv b/examples/shader/triangle/frag.spv similarity index 100% rename from examples/shader/frag.spv rename to examples/shader/triangle/frag.spv diff --git a/examples/shader/triangle.frag b/examples/shader/triangle/triangle.frag similarity index 100% rename from examples/shader/triangle.frag rename to examples/shader/triangle/triangle.frag diff --git a/examples/shader/triangle.vert b/examples/shader/triangle/triangle.vert similarity index 100% rename from examples/shader/triangle.vert rename to examples/shader/triangle/triangle.vert diff --git a/examples/shader/vert.spv b/examples/shader/triangle/vert.spv similarity index 100% rename from examples/shader/vert.spv rename to examples/shader/triangle/vert.spv diff --git a/examples/src/bin/triangle.rs b/examples/src/bin/triangle.rs index 5ec88b8..1a5be18 100644 --- a/examples/src/bin/triangle.rs +++ b/examples/src/bin/triangle.rs @@ -188,9 +188,9 @@ fn main() { slice.copy_from_slice(&vertices); base.device.unmap_memory(vertex_input_buffer_memory); base.device.bind_buffer_memory(vertex_input_buffer, vertex_input_buffer_memory, 0).unwrap(); - let vertex_spv_file = File::open(Path::new("shader/vert.spv")) + let vertex_spv_file = File::open(Path::new("shader/triangle/vert.spv")) .expect("Could not find vert.spv."); - let frag_spv_file = File::open(Path::new("shader/frag.spv")) + let frag_spv_file = File::open(Path::new("shader/triangle/frag.spv")) .expect("Could not find frag.spv."); let vertex_bytes: Vec = vertex_spv_file.bytes().filter_map(|byte| byte.ok()).collect(); @@ -416,6 +416,25 @@ fn main() { base.present_complete_semaphore, vk::Fence::null()) .unwrap(); + let clear_values = + [vk::ClearValue::new_color(vk::ClearColorValue::new_float32([0.0, 0.0, 0.0, 0.0])), + vk::ClearValue::new_depth_stencil(vk::ClearDepthStencilValue { + depth: 1.0, + stencil: 0, + })]; + + let render_pass_begin_info = vk::RenderPassBeginInfo { + s_type: vk::StructureType::RenderPassBeginInfo, + p_next: ptr::null(), + render_pass: renderpass, + framebuffer: framebuffers[present_index as usize], + render_area: vk::Rect2D { + offset: vk::Offset2D { x: 0, y: 0 }, + extent: base.surface_resolution.clone(), + }, + clear_value_count: clear_values.len() as u32, + p_clear_values: clear_values.as_ptr(), + }; record_submit_commandbuffer(&base.device, base.draw_command_buffer, base.present_queue, @@ -423,26 +442,6 @@ fn main() { &[base.present_complete_semaphore], &[base.rendering_complete_semaphore], |device, draw_command_buffer| { - let clear_values = - [vk::ClearValue::new_color(vk::ClearColorValue::new_float32([0.0, 0.0, 0.0, - 0.0])), - vk::ClearValue::new_depth_stencil(vk::ClearDepthStencilValue { - depth: 1.0, - stencil: 0, - })]; - - let render_pass_begin_info = vk::RenderPassBeginInfo { - s_type: vk::StructureType::RenderPassBeginInfo, - p_next: ptr::null(), - render_pass: renderpass, - framebuffer: framebuffers[present_index as usize], - render_area: vk::Rect2D { - offset: vk::Offset2D { x: 0, y: 0 }, - extent: base.surface_resolution.clone(), - }, - clear_value_count: clear_values.len() as u32, - p_clear_values: clear_values.as_ptr(), - }; device.cmd_begin_render_pass(draw_command_buffer, &render_pass_begin_info, vk::SubpassContents::Inline); diff --git a/src/lib.rs b/src/lib.rs index 5e7e021..1d3ec8e 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,12 +1,10 @@ extern crate shared_library; #[macro_use] extern crate lazy_static; - pub mod instance; pub mod device; pub mod entry; pub mod prelude; pub mod vk; pub mod allocator; - pub mod extensions;