From ffe74658abec0e3b9f95d226972b219f710ffc9d Mon Sep 17 00:00:00 2001 From: Ray Date: Wed, 10 Sep 2025 18:26:43 +0200 Subject: [PATCH] REXM: ADDED: example: `core_render_texture` --- examples/Makefile | 1 + examples/Makefile.Web | 4 + examples/README.md | 7 +- examples/core/core_render_texture.c | 99 +++ examples/core/core_render_texture.png | Bin 0 -> 17334 bytes examples/examples_list.txt | 1 + .../examples/core_render_texture.vcxproj | 569 ++++++++++++++++++ projects/VS2022/raylib.sln | 27 + 8 files changed, 705 insertions(+), 3 deletions(-) create mode 100644 examples/core/core_render_texture.c create mode 100644 examples/core/core_render_texture.png create mode 100644 projects/VS2022/examples/core_render_texture.vcxproj diff --git a/examples/Makefile b/examples/Makefile index 4c0320e2e..d7c9dcb81 100644 --- a/examples/Makefile +++ b/examples/Makefile @@ -526,6 +526,7 @@ CORE = \ core/core_input_virtual_controls \ core/core_random_sequence \ core/core_random_values \ + core/core_render_texture \ core/core_scissor_test \ core/core_smooth_pixelperfect \ core/core_storage_values \ diff --git a/examples/Makefile.Web b/examples/Makefile.Web index 0a3cf24f7..d9c27b19d 100644 --- a/examples/Makefile.Web +++ b/examples/Makefile.Web @@ -526,6 +526,7 @@ CORE = \ core/core_input_virtual_controls \ core/core_random_sequence \ core/core_random_values \ + core/core_render_texture \ core/core_scissor_test \ core/core_smooth_pixelperfect \ core/core_storage_values \ @@ -761,6 +762,9 @@ core/core_random_sequence: core/core_random_sequence.c core/core_random_values: core/core_random_values.c $(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) +core/core_render_texture: core/core_render_texture.c + $(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) + core/core_scissor_test: core/core_scissor_test.c $(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) diff --git a/examples/README.md b/examples/README.md index 608d9d3d7..0f20913e2 100644 --- a/examples/README.md +++ b/examples/README.md @@ -17,9 +17,9 @@ You may find it easier to use than other toolchains, especially when it comes to - `zig build [module]` to compile all examples for a module (e.g. `zig build core`) - `zig build [example]` to compile _and run_ a particular example (e.g. `zig build core_basic_window`) -## EXAMPLES COLLECTION [TOTAL: 160] +## EXAMPLES COLLECTION [TOTAL: 161] -### category: core [35] +### category: core [36] Examples using raylib[core](../src/rcore.c) platform functionality like window creation, inputs, drawing modes and system functionality. @@ -60,6 +60,7 @@ Examples using raylib[core](../src/rcore.c) platform functionality like window c | [core_random_sequence](core/core_random_sequence.c) | core_random_sequence | ⭐☆☆☆ | 5.0 | 5.0 | [Dalton Overmyer](https://github.com/REDl3east) | | [core_automation_events](core/core_automation_events.c) | core_automation_events | ⭐⭐⭐☆ | 5.0 | 5.0 | [Ramon Santamaria](https://github.com/raysan5) | | [core_high_dpi](core/core_high_dpi.c) | core_high_dpi | ⭐⭐☆☆ | 5.0 | 5.5 | [Jonathan Marler](https://github.com/marler8997) | +| [core_render_texture](core/core_render_texture.c) | core_render_texture | ⭐☆☆☆ | 5.6-dev | 5.6-dev | [@raysan5](https://github.com/ Santamaria") | ### category: shapes [20] @@ -85,7 +86,7 @@ Examples using raylib shapes drawing functionality, provided by raylib [shapes]( | [shapes_top_down_lights](shapes/shapes_top_down_lights.c) | shapes_top_down_lights | ⭐⭐⭐⭐️ | 4.2 | 4.2 | [Jeffery Myers](https://github.com/JeffM2501) | | [shapes_rectangle_advanced](shapes/shapes_rectangle_advanced.c) | shapes_rectangle_advanced | ⭐⭐⭐⭐️ | 5.5 | 5.5 | [Everton Jr.](https://github.com/evertonse) | | [shapes_splines_drawing](shapes/shapes_splines_drawing.c) | shapes_splines_drawing | ⭐⭐⭐☆ | 5.0 | 5.0 | [Ramon Santamaria](https://github.com/raysan5) | -| [shapes_digital_clock](shapes/shapes_digital_clock.c) | shapes_digital_clock | ⭐⭐☆☆ | 5.5 | 5.6 | [Hamza RAHAL](https://github.com/hmz-rhl) | +| [shapes_digital_clock](shapes/shapes_digital_clock.c) | shapes_digital_clock | ⭐⭐⭐⭐️ | 5.5 | 5.6 | [Hamza RAHAL](https://github.com/hmz-rhl) | | [shapes_double_pendulum](shapes/shapes_double_pendulum.c) | shapes_double_pendulum | ⭐⭐☆☆ | 5.5 | 5.5 | [JoeCheong](https://github.com/Joecheong2006) | ### category: textures [26] diff --git a/examples/core/core_render_texture.c b/examples/core/core_render_texture.c new file mode 100644 index 000000000..f08d3afe0 --- /dev/null +++ b/examples/core/core_render_texture.c @@ -0,0 +1,99 @@ +/******************************************************************************************* +* +* raylib [core] example - render texture +* +* Example complexity rating: [★☆☆☆] 1/4 +* +* Example originally created with raylib 5.6-dev, last time updated with raylib 5.6-dev +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2025 @raysan5 (@ Santamaria") +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //--------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - render texture"); + + // Define a render texture to render + int renderTextureWidth = 300; + int renderTextureHeight = 300; + RenderTexture2D target = LoadRenderTexture(renderTextureWidth, renderTextureHeight); + + Vector2 ballPosition = { renderTextureWidth/2.0f, renderTextureHeight/2.0f }; + Vector2 ballSpeed = { 5.0f, 4.0f }; + int ballRadius = 20; + + float rotation = 0.0f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //---------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //----------------------------------------------------- + // Ball movement logic + ballPosition.x += ballSpeed.x; + ballPosition.y += ballSpeed.y; + + // Check walls collision for bouncing + if ((ballPosition.x >= (renderTextureWidth - ballRadius)) || (ballPosition.x <= ballRadius)) ballSpeed.x *= -1.0f; + if ((ballPosition.y >= (renderTextureHeight - ballRadius)) || (ballPosition.y <= ballRadius)) ballSpeed.y *= -1.0f; + + // Render texture rotation + rotation += 0.5f; + //----------------------------------------------------- + + // Draw + //----------------------------------------------------- + // Draw our scene to the render texture + BeginTextureMode(target); + + ClearBackground(SKYBLUE); + + DrawCircleV(ballPosition, (float)ballRadius, MAROON); + + EndTextureMode(); + + // Draw render texture to main framebuffer + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // Draw our render texture with rotation applied + // NOTE: We set the origin of the texture to the center of the render texture + DrawTexturePro(target.texture, + (Rectangle){ 0, 0, target.texture.width, -target.texture.height }, + (Rectangle){ screenWidth/2, screenHeight/2, target.texture.width, -target.texture.height }, + (Vector2){ target.texture.width/2, target.texture.height/2 }, rotation, WHITE); + + DrawText("DRAWING BOUNCING BALL INSIDE RENDER TEXTURE!", 10, screenHeight - 40, 20, BLACK); + + + DrawFPS(10, 10); + + EndDrawing(); + //----------------------------------------------------- + } + + // De-Initialization + //--------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //---------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/core/core_render_texture.png b/examples/core/core_render_texture.png new file mode 100644 index 0000000000000000000000000000000000000000..312efdb399e3f00b822b08a36a3f12f825006c14 GIT binary patch literal 17334 zcmeHuYh097*ZzzWjW#5P+5n;wijrAKH>fCzpo5xYq`szRg-AHyAu>GXVGzXAAfRYD zJsLWSXxXDlr9RdJf{L2PEo4brT54cwnpjGj|7-1aZw9SC{(tY6w+|$+XYaMw;ab;P zYqK2JU2=PW9=KAfOz&&n*e8ti}bCD=YA((G08_rJsk zc07`%dgrJEBK}E?$WJ{@S8VpcPySJcy)47df0ThlsQd@{Ai^~kVdVd+2>LehpOt-f zVp*5Xua;(~eU-ayea^Wu$HUJq9yv4ix$muk-hZoq7^c{-iSxM~<`IYfNyWM|QMN@R z-;I0rk+Msro7Y!)d%QDmQ}y#7^c{EA|Lf0HrO!WU-sauJ`D_R0)_BFu93A&JUu;wT zgRAx4mdP#$iVksW{`?!=ZP%=IE^`>S3lkQ6<1(Rt>n1gR+3K)zYZK{S8(KH%_>11Z zXlDA!w*t#Qe(!Wd=c>NPCMoGIx5{bX#JMg@t$J1yIl7;ld19n_#C6x*a}4^q>$24q zhpkUEZ0yx!WbcQTpZ0bip1y3ZfYN8(%)L7}gWhs! zF?Nw|^P!(t%ou0(s*@XC^~|pi8eQ|9-?q0pntz{RPduY-nZLjg`~HpKz3mf}n=7;^ zJL{oeqn6+27io{CsbiL_N>6#O&Tgjv&c9o~K-nMD*n;^{wlz@Fh@IxjoAT_>Jxynt zhB%&dEp&g%%^Go|d-$#p$8P!4Ym16&jOEsCZ5!M%|1Cqsey4($X%?wa=Ji_PQ;FTJLFkd10u-M{caRS=%*9-`q5K zZ>vel&TLH+#f!ypPc}L($zUuvwOC!7qn7p6l+hH<^SjMnuwRPcp?72yTPG|~#=BfK zjg2%s%Fc{mswrmj`y{@T=Cow`b~J@DDycF~U4?x@*;g=-Z)LTJDLS z?XP6m6ZdG_=g%|Pzk^IiTr#D=w&`<~HyY`sx10IxxU7P$E}1^?4<6pTy>s1%s!rID;lPM4GOXo7wkl&RNr$yuOa^QVU_Mg^ye(o`sHYn=D3`_KKhvnAyj-!P#|- zi>*I34fVHY9Z-VQtGHJ}Ml!?*gDS8>ho57Z|ldKUT$G!06Yf~6SjGx{20 z{5$xAa#;J+)lwP0P+o!-e@SrAXY#Yv0725a4Qba??%D%&6-j2^|<0n<{ z3QPVkse(kd%L$hX(t8Ost$kBdW#$W{%9_X5I>$$hP1QU`H`_mWuiGT$g7lzZLz;T< zTJgXigjo`_&ko{%ZzX*{8piA0zNv4T^IX5N8FH^A|KbpzIF|&`z;oZvok26DF{9(U zWC{@4>!<0`-$Ys}X`SS}-hHfHZgd@&L5OyfTa`g^JA3yGn5?{FUcOSha)+ng%sn<_ z7vxD5Jb_OY`}wpC-5WHoXpjc^`aA5xQPPDCK(n7FC~IYcuo{eSvpZdo8=V)r96LBw z`P{r*ZeI*wBnD9~?Q#NkDS!0Jrd~kVBC9;^G9MQrkMl%?;Gs6G9TB2hVZ75i#})X_qI2 zM{OOiea^iD_SqEh%&Dw{x2-Qo-^lSaMLaY~=_Eho7adpBGTd?6{QN;5OH*;_fCvGJ zHzeDv2qJfK4xZu?NO3cn1Z$C`xS}W4v~vzN(r5ddE6ao(2$VsL>-uS0Q;a0H_1FD~ zqS|=nWftN*8~C1P;Cw_vSV+vOlbR{TqBwXa@M)xs=aJZX#Ubm;C&B=z@mU3{#fNj@ zuV8z%^EF8eh5xGO2MjUT3*J`i*m~r=d{c4V1jPA-Y0C8+F9?;WoMEAgJmb8xew9Aw zp+5pQ(D!mIblJ%qZM(&(eXRCF+d|xAu061QGQ1(&#}dQpg!(8Fe%ChZ5CFT_org2q zAh?6(DKB&8&S1a$N%OnNc)|noD&zL3IAuy!!FK*MLAk4piENgpy8mEZ==zCCNSfO0 zq*X$l{t4m0j-fT+bAZ>%Z-rh{pukR}owbt9X@R%20vW3EwAI1+;y8!;_nJ^PBun3g z&chQLdjcf|3cV`LUU3i#ruoQZ#Qi{V{6ugW5AprJmRrFE2!Okf#{IgjC^#VQcTO|l z9PNO7od1olrFnWN+$zdkd68v@`;%Kq)?dtOPj9dmN{amFp+C@S&g)BB2*(RF0RSB4 zm`WzYDcFZ}Fk75f1}tz+Rj#-A7*<^t>PQrcATyew{712QOX9@YYDT|SprU716ny(v zs}N>p?N$?dH!vm?rcEDb9epq4U&0!SZ~ruFsGDG0#tZCC^Em+x5cc<~Cn4+lIM%Z? z(+oT8X5IzR_!B^`FstB~#uqn@V`zGUKQM*2`JL=t7vcDvf0`_mQ+ZX0vjb6i@RW6b zyJk?%@t8_xuCe$jNJ#Arp`6jEPtzwW{jbFXP}0*htZiLwI1LI2^aYV858F zw)!hdL~e$nM`s0YRy`@N-8f<$!WrcY%Bc~WO9y`gnYxF@;Kn@tnvXkRjCvf-`?!}W)r{ovIoxrlm>$x&N{2~!|8 ziP(2zsb;Y&owFJ$`a-Hx)+ZSx(Ag-E-4z`LkyY{5(hH}Ma*neghUG}cqiZl)9QF@7 zX+6UG)Uf}%3-#47K^uU=gM#Pw>&i{WNmn0a3AR1>rKo7qVA8og9nHl@-9y|)o735~ z6t@~&&SSlr$~S5VN}U$_q9TBl0uIAB=5rh;wgSv;~zZsX?wv^ zar0yjEp5MK9i-ZIJ^oj22v0X`?qY1%(GNIFW6QjAbyRnGfA*a8`$t?fEN!)Wq=ag z%d8&>E}0L*|MIZ6C0gutp6P!zwAfNh&yu-mS_sbJ&NcN>EXicMoD@syXrqbBXS@+y9Zp3QuoRdI&N7%uMhCd+WpB$&@eyzU zqM1dss-v5^>pgYTec23)T4~J=U?Npxh`kVQ(t+-bZIe|{D%=1q5ptgUB;ev-8?YDz zjIz0L19q8Z59EZrp_K@Q%AbXkeZuhiG>o!@jk1+-9ek(Tr{>Dbv`S*6J94XW9Aj&>P^*qpdN}UcAJ+lDI4?Vc(hp7}9)M2= zfwEkNDM5U(-*K^@%$2vq^}Dc_5J^1iY1*C>v+Ar6n~LYn5SEhD43QNt+OS6Bl>ZgF zrn=&_@2z_&W?T&1hHY#ys~VaZ8mtb2+Yzh8hBb&tB-W0ydxqkRnB`+IK>~YP9s(>C zAAlQ8(^@ooFuyfRouZCQ72&;XHMafb&$G;X*4nPB#>X`#F!k z&mgAhhlnNdIK;z9?dBU_{3*T7Z}#IE_JZ$A(7)M*8ZJd~%LE}K4i7>a>o4ld!`3b{ z`{bPITiwjtax|TO=FcmUfoUa79m_Re#{oZknwD%H<@C!{QzI&X3;0Mnt~eLo)dGrZ z=b;aY)>T~>QTN_C#LyqlnJa&5aAh3|FLJ9-kQwb9RlYPSiiyLds0yAnF{biQMBMlI z9RTVos3Cx;>jAZ6^uIk#HMsvz6P4{PQen(bok?_?i7X?I@T5}gL-VR5!*#?eJ;0uB=49gT|f=w-DETs^usXk7plX`Y5q zh)3}d3~YF+)H=u2!Zx9Vp~mp>n8`v9)K|_yD)ZZ`HbyQ9H!Jj5PI z=hE;A=YENEv)GZVR8JeQ3C*tIRKbs)=xv_Z&wS%hEbss)j|B%Ufn+#&Bu*a0{_!Zq zqVFFf7P|mYv5@)?CE#LM*a{1+yzsH6_|Z`$D+XT?ZB&{*iaW_!SN}Fm(xVPloW<}s+lZ*1fj$W? z5sNwnaJ3c6b$`(ij6v1Sd)7@t`Dfw&M583CCmWLG~Q47M=oERLyeaDc0q8ce8q7R z-h39@gYUKm#OH!7BxMDzhEr5sdaC#fZ)mCDN-mOU`e0}6JjjbGjwX)?{v7!7>aVRU zy(jxe9#q#5+lwApHI!FLrnm_ajC6xq zow*2oL&&DM4bq@SwmDtO)Be?H1fP$_D9Hn-7j`0fC@n8TQT{mx{2Pe#@d6rGRmhA$ zI0-d?uDcrGk&8I;oPs7a{z82M1YM9Qtyo$u{A>V7w8c;&>*nD;xcv#-eh7m?p7c9{ zMEEU1;uZFL43=!mIEseJ>rqnURwfEk+6s+y+Yw$gTrSd}l-nQ#Q}?y+#DNuXY!sL) zQMy$l#{r9{XMrTJyN?kB8mb~ZM`S;V)QNc!t$Gcsve+m^QgZE@=I968->wA+N&=V@ zIPMZd|Nqc&@LiCP*?)7~B_^imZ|JgcQJB3G z?8!!L$!1v#vrK2Rtb{Iyv019*X^qTsfsY%AFQy8wDJ00g2Z15Fvd5+tJ}C{vIuG5sfZOG4Mf9ZVOr zXmF$XfiOu&*5MgZiMg@^?z@(+UWf$+oC=o7qw3fb zC~RpCiB*TOY9reM$xRsCRL=qeY;4?$43c9rd9enEZTuFboPB?=6qO^ zaD1NTM~G6_{0QGr^_0Se0+lfR5q>bzCi#p)O5c`u`A}k+OA0faBMHt9{!jNhfP4MG zw_h(m@4CH?Z6Aawt@~^SE&14kppBgI2h}r@JwFuEc_Q&3jzhRj+Msq5+R=oxN97R> zz(MguSvb+@uj8^{2$buOk{YRR@N`Y|%=zMQ^4MVUWNHMaL!u%@Y;Z*iqsZ8}#D|ss zFn;29`MGVtsK0tigx0JaK7m2)IT8KWVONPGMI zEJ+A&Dpw#CsDZH(QniX%B`dHBQ0}9rL?`BnnLxIJ@$ksSWa-C!(KR0;A405+h0)~ikq(issu)PGuf6LU+D#{lX;#AgNmuKA5%2<-$zu)^Y0 z6HS7BV^Q1`IuC=N349`pjOpbV0@**|h#4=9+Yp{QI1bJmPT3n-1RgjN{u+Q%iq88( zJ1-KeV4G!FRnJWom?^C#m|yEFT00QGay1`nw8tJ(Aqnsm#d#o)Xmh!%K~vqP2oDGz z^kA+jgD%n8rDsIN%qOUOZvc;NK1;dHet=0*w?E94cVT)sAa%6U#LbM9_O#cQgP=*s z9FE3I3Hq{h)ElH2+xVj4?JRC$eJT9^=pI#p9n(=Q62TE`8j-HiP$I-h!@*jQJxFkV z9mqQ!#semrwBfKhaGMeo=yaHPok6Qs-?YYaJ^@IMU7uAz&k^>~^rzQf%ppRKbABCH z=tW}qU;|z{Go8)&HBBL$@^+}8%vOfx%_7&t;hRo<9bJU=Gf`}=dC8ds;LF5on5j|i zE!)L;J;9YQf6!XlmpROx_*EUd?pHEzY0+Xl4CF<7@ifGiMXlVZXj*$qTk#EzS&wc} zi-0_Yjr3CKJMtd=LQYA!!pDtku-7cR7})~5h`%ETL)`{kX;DANAR#&x0BZ(vcP56P zMy-4RVcn-Ag8G=fkgbg9nb5NfRmd>_KGQT#*}%t$7Xe>&9B7?fF_ z5+7;Q?7arKK?APwLq!oxu^ixNe-&TjimH`}{YXqP!;EIHF9f;ohP-U|w!Dg6?{JDf zBE+V*4DS1_8wF4glf8L90U> zf`Bo$6}dDLZQ8IvvzIFFw-f&Rid}m!p}zIkSH-$xxHhCN7iNrOq1uRV3gN+7%he1a zlnwKVql?udF(|PSCZPD{1JO~Ql3))k5Wa)LyW8X1ix3^~o+8~#NbmYG66^}0w^2OL zD&~HsHU`@UE7zDTvAp;~vG)F<7?4SWfoyRG9zoXJ?ci)i0E)L)(A5aw3gEgsi$6?= zZ-w|CxoQT1F@(Qy$I9mDfK)@|`GH!^MpP0plP``Kj=;jRiaBh5w6%$V&~qv@6iHos z+5VtMDAiL%9U6(0HYML4xC0xk$3*SZm=Pko>Gm*^_ZD|jaCc19o&Xr1!_8;UQ3eWt zjD@sx!}sWTSG!-ok)0}*EyAeCy&W47xD;=T75f$;AX{V?2$G^thV!A-Uc}CX7fv+7 zKZ^~l91;fvT8J4A{NaIwraQ@MunRSeWvqHxWaA3pg|FglMxlu?xcHTthgJ{LI)-KR z<`unDz=As_DU^uzVS|4`LJ*R*;^vL|8u-2gepT*mnT3DeYBYn@&w*{b?{n75&bQdp zOvC6t=3QL7MR3=HCq2f|aCbbw#VZNpTnJUFjuaDv$X{>|=#w98>Y-8$kDH*8mIl&t zr-!4Sg~f=9UhDivXq_hG@1BV9`T;Xy1K=5|{^xEs38UR>1tFN!0Gwy$1hWY#zbg4(c*e zM~?T(gJEnwmUm!R#MZ@iY94o4z9H63OiG}u_C*u{kei>gQ_~RPP$aw}*osK$AL{4{ zp}--Jb(P%_y#JtP!e_z@jh7HKcxzFCRx#M!>;z>IrvZQpy<9uStCsSMhYb*&9<$&? zesUHIyV8l0;|sk;W4=T$*tmY^0*++F?YR62VNH#WAu8HObh>a}3Wx{AG1K=1gxvK| z$LJVzo(t~D_iW?vQ{eR)5%^LKIZQQ{vXomm4%Uk$nW$w6G>QVyUxzCtF~{o(4h?bk zGFzobD_wlC1`Sob#3AMb!+nUKB0KV|F|+033etG=CuUuTu}LVMiV=rN}- z2(>>!YC8#W?DxGfiw5fXPI4}t*%RuY)6VjxP!-8W{?AppKP*80e?1l+0f5$YhWei} z)y4a6Zi6~dA=I%Z==mD3M4)hS4qV=R8h_1z{*_~DOeNQ7gK#w(6Y@)qZxH4vCCd6> zz)E;Jj5mi>@QC{&;~%{+^7s$dd;_P;T2Y`1pH@BN;zXz|)V>vPnNOn)JfJ(J#b+er zHx;f}HiHSx3oYB;W& zq$aBV{zu#|z}uI!wOl(7=iTdV=^<_h^!bcs7qlX+B?v&)VRgXs_r2}JdFE9k`( zu}w}-WCM8dP+HN0km#em;isVE~$p-ETm={NguoN_#77sincl|x1FjrdNwKH+Zow3Yj<nO=&sW1ceqcMgM zohCi8e)9*%E5l-THU29YLhn$`5p*jAe%Ex)A~pTixb;ETlM@--aWtF;wcB_u8d1PO zFNn}Q*-zt{Oid^Jb;}{^nud)K8&tsYvqQ!08eD0@3@cXM@;TPf9?_cSLtHqP31Sb_ z@cLD%5>qi^GTIZaXxkDIe6v;^CRlw$3RS`Rxs}X1G|vf`nG(24o#lP(bIqbun^D3@ z){e84Bhy`e^utXdKJA@jBywja(i6|q+WBlxJU^tsYv`d>vt1U-jezS@?mRkqnzzS2 z^)lyLRB-4x5t5_#$Ki@GOpnc#Jx&SYR4Xs&8v8PLNBD*k zb%*bq9~LQfRdTI4>DHi z^|{BS{b{{?%+4_~VCjts2w%e=jYX!DLoM-^@?;y{!_ngMOy#5AxHy=LAA z?W5#?xde#YH9!R3q!5}{xK2Zf^)b8}`Ff3Ok%6hGk3@H$#l?e?^0EsmFXZ>jn|%Fi{4w(*kwLiTQm$Xz>Jt@l#7J$$r^2>!ZhR^rv3*N=yS>7?ng% z!DG;#|rPWdyZyJm@$B04d8gHY&?&rC4@77OO_zzMtM;konHE*-i zX{>ojzt!m#d^hh>z$cMW&lIPeT7LEEsEb~cp8l{dYTF-6Ei>zyzdG*EEidlQIvDU< ztNzL1nQNo2EStaMK#QGM{qw%;((T@f-|lsOvg?=A5;|_(mbUh}t$lNP-3o7ie$87= zUw+-Q`Os-GrykzBuhYj7A+a~x?zwr_x|}(B4Kf%ydQ}oykSXva@;K^J`L{1fFUc9Y z!@t{d!WVkH*>PumMZ~}l`=-9R#IK~&%#3%wDbHWCps@9@qG>HY-qm^Q)wWqNRi+Lz z-QFH`;Bw@l79ZY;F8o*ijN37_!=H+JHgI=hpC#*(HjKJcx$V2+3w@K{p0xXmfa!_X zx~^N({Dq^Roj=%b&$)ZkQ-fNUc7dvMQKM2hA-k2BJ!S5<@2~j)n66m@c_kk{KO?f- z_`+15b)V~f^ghR(k?Gw|n}2*GOmV>5MU!aJP*uz&l>lfE9G+y6@F<(fY`PH&SD+tXvsnAT(eeYbPy zF5}y?+J105cT8uotu{M77nYx*qIxcHj_D%Ork%rgKvPL5X^Pqy+r^S?D3>dPOR zoRLwn#NGdPTD#hfCzo{C8SwJ%#{zerQ%0L}GJhUg9(mx$xGy{BwJ9tscs#zc$7e@9 z;?F#EDI+JuYvFuH>&c1f6+ti7{JLqz{F>DZ4tM)^`S#bXFJE7EseSyk$k1so{J}5YQM8q_p%@SG3olCss2&P^9x4(x#fTE#CDA+{i5XKHS1!-1AE+k z;@g;`YdzyjmwwYSamdk#alchmud8dEB&zLu`@bk{0b5kx}D{ zaC4;0f&nz_k1(&2L*O*&}y!!F&AvtWYdg5QI^WTb^(G0 zbN{|hvYY6RZia3Le2|F(spHJxmbL*?V1!+*WH*_E3}=6i6DM-rEmT3pH%_D%JL04M z{G`5NBn9Wl9qC@c#k&hE~`B literal 0 HcmV?d00001 diff --git a/examples/examples_list.txt b/examples/examples_list.txt index 18c2e7e42..1cbc5b80b 100644 --- a/examples/examples_list.txt +++ b/examples/examples_list.txt @@ -42,6 +42,7 @@ core;core_smooth_pixelperfect;★★★☆;3.7;4.0;2021;2025;"Giancamillo Alessa core;core_random_sequence;★☆☆☆;5.0;5.0;2023;2025;"Dalton Overmyer";@REDl3east core;core_automation_events;★★★☆;5.0;5.0;2023;2025;"Ramon Santamaria";@raysan5 core;core_high_dpi;★★☆☆;5.0;5.5;2025;2025;"Jonathan Marler";@marler8997 +core;core_render_texture;★☆☆☆;5.6-dev;5.6-dev;2025;2025;"Ramon Santamaria";@raysan5 shapes;shapes_basic_shapes;★☆☆☆;1.0;4.2;2014;2025;"Ramon Santamaria";@raysan5 shapes;shapes_bouncing_ball;★☆☆☆;2.5;2.5;2013;2025;"Ramon Santamaria";@raysan5 shapes;shapes_colors_palette;★★☆☆;1.0;2.5;2014;2025;"Ramon Santamaria";@raysan5 diff --git a/projects/VS2022/examples/core_render_texture.vcxproj b/projects/VS2022/examples/core_render_texture.vcxproj new file mode 100644 index 000000000..faa53557b --- /dev/null +++ b/projects/VS2022/examples/core_render_texture.vcxproj @@ -0,0 +1,569 @@ + + + + + Debug.DLL + ARM64 + + + Debug.DLL + Win32 + + + Debug.DLL + x64 + + + Debug + ARM64 + + + Debug + Win32 + + + Debug + x64 + + + Release.DLL + ARM64 + + + Release.DLL + Win32 + + + Release.DLL + x64 + + + Release + ARM64 + + + Release + Win32 + + + Release + x64 + + + + {6B1A933E-71B8-4C1F-9E79-02D98830E671} + Win32Proj + core_render_texture + 10.0 + core_render_texture + + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + true + $(DefaultPlatformToolset) + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + Application + false + $(DefaultPlatformToolset) + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + true + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + false + $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\ + $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\ + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + $(SolutionDir)..\..\examples\core + WindowsLocalDebugger + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + /FS %(AdditionalOptions) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions) + CompileAsC + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + + + Console + true + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + Copy Debug DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP + $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories) + CompileAsC + true + + + Console + true + true + true + raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\ + + + xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)" + + + Copy Release DLL to output directory + + + + + + + + + + + {e89d61ac-55de-4482-afd4-df7242ebc859} + + + + + + \ No newline at end of file diff --git a/projects/VS2022/raylib.sln b/projects/VS2022/raylib.sln index d6a14886e..4d9486e43 100644 --- a/projects/VS2022/raylib.sln +++ b/projects/VS2022/raylib.sln @@ -339,6 +339,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_unicode_ranges", "exam EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_gestures_testbed", "examples\core_input_gestures_testbed.vcxproj", "{A61DAD9C-271C-4E95-81AA-DB4CD58564D4}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_render_texture", "examples\core_render_texture.vcxproj", "{6B1A933E-71B8-4C1F-9E79-02D98830E671}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug.DLL|ARM64 = Debug.DLL|ARM64 @@ -4169,6 +4171,30 @@ Global {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x64.Build.0 = Release|x64 {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x86.ActiveCfg = Release|Win32 {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x86.Build.0 = Release|Win32 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x64.Build.0 = Debug.DLL|x64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|ARM64.Build.0 = Debug|ARM64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x64.ActiveCfg = Debug|x64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x64.Build.0 = Debug|x64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x86.ActiveCfg = Debug|Win32 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x86.Build.0 = Debug|Win32 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x64.ActiveCfg = Release.DLL|x64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x64.Build.0 = Release.DLL|x64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x86.Build.0 = Release.DLL|Win32 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|ARM64.ActiveCfg = Release|ARM64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|ARM64.Build.0 = Release|ARM64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x64.ActiveCfg = Release|x64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x64.Build.0 = Release|x64 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x86.ActiveCfg = Release|Win32 + {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -4340,6 +4366,7 @@ Global {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9} {6777EC3C-077C-42FC-B4AD-B799CE55CCE4} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A} {A61DAD9C-271C-4E95-81AA-DB4CD58564D4} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035} + {6B1A933E-71B8-4C1F-9E79-02D98830E671} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {E926C768-6307-4423-A1EC-57E95B1FAB29}