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 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 + + + + 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}