From 88a208b5b9700e121f52186482c3a9405fe68537 Mon Sep 17 00:00:00 2001 From: blobt Date: Sat, 20 Jun 2020 19:48:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8cpu=E7=BB=98=E5=88=B6?= =?UTF-8?q?=E5=85=A8=E5=B1=8F=E5=9B=9B=E8=BE=B9=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vs/shader2/v14/.suo | Bin 42496 -> 40960 bytes main.cpp | 56 +++++++++++++++++++++++++--------------- res/shader/UI.fs | 6 +++++ res/shader/UI.vs | 16 ++++++++++++ shader2.vcxproj | 2 ++ shader2.vcxproj.filters | 6 +++++ 6 files changed, 65 insertions(+), 21 deletions(-) create mode 100644 res/shader/UI.fs create mode 100644 res/shader/UI.vs diff --git a/.vs/shader2/v14/.suo b/.vs/shader2/v14/.suo index bfba0ebcd288d3abf4bfb7a3383c81b58154ba35..cefb1ec9ebb4554d46eac0e7d23095fe2bf5156d 100644 GIT binary patch delta 3311 zcmeH}YfzL`7{||fVVC8y1c3GqT0C;^RPYUR|VxGah(i{mY# zVE0i{vm01xH<7oiU0j7qEo*@5=4M;pb+o~6Y51EFrHg>U5Y*}&2kbtd>di$E96O-sGW~- zOL>%<;ug_>;*fpXg}BI&o-#@9qzN*cQk4`^ZJ|*-K0j!lVH-M|Xk*eOnWGQ##pH$` zV;KulQXBnEIE-`f`+9{M&}SG7%umT zwfHTbyR313;_oNFy=PNI#_k=@Yq#F`*Vxop{ZCbkayTaCp0!N9t2zIPsbU9(XA zDv7m^3S*A-kscTs*S6wo4$LtY6`{2h?2x1G&2{(i#rXFK4n~81ceFqA!j%4!GQ|`e zkD7Buhq0i<%>7DTj@qTNshR>_9w*+N&I<~a5r(WS855A}VAg`T6CzsCD+>LFL zLRN0pwv@Y~%$%ZmE>lHqDO1zdiw8u59ukcrTaT*y#0Erlqj*HD(Z}iD4!`Pcax7g! zhT7@mTep=4tBd4jt+jTx9C1}O_cB#_Q{1F(JkcvRgpzd5BHwacVW->Mppx3;qs4XQ z6w#DV(&dPD%+4#Gnl&dUuP`fjZZ7#;YUDZm&-*`dy2##n4;^WbRI2Au-{TpQ1!?4K zR=sVrS+=}AgQj%0YqxDrm$yJS$@+15P#rm!d{$Kt;8`-9vO2G*LHgIjwtTbL%9ii; zY(A~t{_OqDwqX_*YZD#UVP}X2prDE zI+4R0uOEJtHi@ha#kS86sPn~+2kF;sQ)HNy)p&T@Y+H_^lw4ymST@Xn?6rEmp2&>DP0nenX=cY=5u6V5z_l~sCw-=Cc;--( zRV?aQYzf00{*Glr06T3>re_ZI?Tz;drDb(tkMCqj#8BMbJ zZdpSO)_m${PB0Jq5OZtlSr_0$zsjq4@+_JIDbf?XzSWK z74475ie#+OFVUaLcs6JY_f^SjJ^5c+iVwz_W0a+=)`?+52BP`aLUOy(Dbsp`HX&Pg vyexy=#*?=?Gst$qX4%_w2!B?g{QqcRGw5N!9(=iXr)fgTwEC5+T=o9|9ZdQC delta 3115 zcmeHJYfO_@82-*jTgs(aC}I)i=B*Z_P%fg*rC)Ef+-jkS2qu&wlvzr(EmDS1c7eqa zg}x^G!$`zr^T!e=-?II!amn0Vru#9oEL*l8Zp${eB@6zLWV-j1b}35K&A4AX&C~Oq z%X>M`dC&PyFw6!&Wv5>t>6dq_*tBq9?XeW&EwYhe7)>Dzv%};yxXU)eRklo|!_JQw z7)}_L_)v5u;2#z-5JApZE=oCw0>p!8NkTazuDu3jAwq?)#`V+bh0%6mw9bwj&qFyi z+LmIy0dXI7im={{*upS{i~@zN2qmHzu?-(1`Ma4Z33FNOe7>B> zX&CYQScl5>2q-O>7RO?QYX#MFYgy3bX+V=3hA#U~D9Ou!RDT5oz2k86oG889b$0iA z{z_}&ukTyG`GLE`;F@Jnq&S;CGWz3BSI#TkvfF|3eQPei9U0+&QLH8~a_$|t6U>Bg zP(xafNZ4<`jo|xrIv{b^*cMd4~C>yAGdrF z`DZJXGY-aszZF-)7b(7Y=6Ex85<<5r6BkEox?KPTuj)m)~t zB{D}u?~{uHez9D{&KcQIwNJ!hPm`1%)=oS#aTz*EkIe{;gdbp8W2HzL!DY+J7463ok23!vEnJ>gI*2c!-E)@?1s+MiI8+! z0aIhA$OH_G?icoX9VJev8t0dIks8riMX-uD-9r@7GpXt$GtTRP8VYybT80 zr{`LX+Ez~O?=$vt`g$(laC=l0J>{lh!_j7Kz@Xl7#I73H(_-%Ox9VC3Y}%eKuiDXY zw9R2Q)N$3iX1$ry8gw=0G0x)99v-r^avoQMP3LXh?mhUD&!7!7S903&-bSwekk08g zXa_mFp?;vZrmZ}{b-OA#pR>QGF5pyi-NxFQCYM*;Wj4A!LrrKm&}Xe}t3JBN(`z

Z==7_?yPCxXfe2qwnNQ+Yrl@ZBN#|Kk()@l#a9fUK6!~i>8qc}Y;-7EUd9@q zHo%P^i0(;=nDXlIcs5XGlOoK 360) { - angle = 0; - } - else { - angle += 0.01f; - } - model = glm::translate(0.0f, 0.0f, -4.0f) * glm::rotate(angle, 0.0f, 1.0f, 0.0f); glm::mat4 normalMatrix = glm::inverseTranspose(model); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); @@ -168,7 +182,7 @@ INT WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine glUniformMatrix4fv(PLocation, 1, GL_FALSE, glm::value_ptr(projection)); glUniformMatrix4fv(NMLocation, 1, GL_FALSE, glm::value_ptr(normalMatrix)); - glBindTexture(GL_TEXTURE_2D, secondTexture); + glBindTexture(GL_TEXTURE_2D, mainTexture); glUniform1i(textureLocation, 0); glBindBuffer(GL_ARRAY_BUFFER, vbo); diff --git a/res/shader/UI.fs b/res/shader/UI.fs new file mode 100644 index 0000000..6324833 --- /dev/null +++ b/res/shader/UI.fs @@ -0,0 +1,6 @@ +uniform sampler2D U_MainTexture; +varying vec2 V_Texcoord; + +void main() { + gl_FragColor = texture2D(U_MainTexture, V_Texcoord); +} \ No newline at end of file diff --git a/res/shader/UI.vs b/res/shader/UI.vs new file mode 100644 index 0000000..5d2859e --- /dev/null +++ b/res/shader/UI.vs @@ -0,0 +1,16 @@ +attribute vec3 pos; +attribute vec2 texcoord; +attribute vec3 normal; + +uniform mat4 M; +uniform mat4 V; +uniform mat4 P; +uniform mat4 NM; + +varying vec2 V_Texcoord; + +void main() { + //V_Texcoord = vec2(texcoord.x, 1.0-texcoord.y); + V_Texcoord = vec2(texcoord.x, texcoord.y); + gl_Position = P*V*M*vec4(pos,1.0); +} \ No newline at end of file diff --git a/shader2.vcxproj b/shader2.vcxproj index acb980e..dc94119 100644 --- a/shader2.vcxproj +++ b/shader2.vcxproj @@ -157,6 +157,8 @@ + + diff --git a/shader2.vcxproj.filters b/shader2.vcxproj.filters index b857b09..238dbbd 100644 --- a/shader2.vcxproj.filters +++ b/shader2.vcxproj.filters @@ -40,5 +40,11 @@ 婧愭枃浠 + + 婧愭枃浠 + + + 婧愭枃浠 + \ No newline at end of file