{"version":"https://jsonfeed.org/version/1.1","title":"GPUBrainStorm - Think deeply.","home_page_url":"https://gpubrainstorm.com","feed_url":"https://gpubrainstorm.com/json/","description":"<p>Hi, I’m Mohamad, a Technical Lead at Esports Middle East in Dubai. I specialize in developing real-time streaming solutions, game development, and technical infrastructure for esports events. With a background in Information Systems Engineering (Intelligence Systems) and proficiency in multiple programming languages like C++, Python, and JavaScript, I am passionate about experimenting with new technologies and pushing the boundaries of what's possible. Always learning, never giving up, and committed to delivering high-performance solutions, I work across cloud platforms like AWS and Google Cloud to power scalable esports operations.</p><p><br></p><p>Our Projects Library:</p><p><a href=\"https://www.behance.net/esportsme\" rel=\"noopener noreferrer\" target=\"_blank\">https://www.behance.net/esportsme</a></p><p>My Accounts:</p><p><a href=\"https://github.com/GPUbrainStorm\" rel=\"noopener noreferrer\" target=\"_blank\">GitHub</a> - <a href=\"https://www.behance.net/2e394b0a\" rel=\"noopener noreferrer\" target=\"_blank\">Behance</a> - <a href=\"https://www.linkedin.com/in/mohamad-darwish-kakashi/\" rel=\"noopener noreferrer\" target=\"_blank\">LinkedIn</a> - <a href=\"https://www.facebook.com/00kakash17/\" rel=\"noopener noreferrer\" target=\"_blank\">Facebook</a> - <a href=\"https://x.com/DarwishMohamamd\" rel=\"noopener noreferrer\" target=\"_blank\">X</a></p>","icon":"https://media-cdn.gpubrainstorm.com/gpubrainstorm/production/images/channel-d2843c5a569b740966a11c7d87d5f426.png","favicon":"https://media-cdn.gpubrainstorm.com/gpubrainstorm/production/images/favicon-3cc7adaa4c053fccba76d8c5cdac1c5c.png","authors":[{"name":"Mohamad Darwish"}],"language":"en-us","items":[{"id":"34J5bH2lqRC","title":"A new open-source PostgreSQL integration for UE5","url":"https://www.gpubrainstorm.com/i/PostgureSQL-UE5-34J5bH2lqRC/","content_html":"<h1>PostgreSQL Integration Plugin for Unreal Engine 5</h1><p>A lightweight plugin that enables direct PostgreSQL database access inside Unreal Engine, supporting both C++ and Blueprints.</p><p>This is a BETA version, proceed with caution.</p><p>For support, join the Discord server:</p><p> <a href=\"https://discord.gg/BxHRHDdkNy\" rel=\"noopener noreferrer\" target=\"_blank\">https://discord.gg/BxHRHDdkNy</a></p><h2>FEATURES</h2><ul><li>Direct PostgreSQL Connectivity</li><li> Connect Unreal Engine directly to any PostgreSQL server (local or remote).</li><li>SSL Support</li><li> Optional SSL connection with selectable SSL modes and optional root certificate use.</li><li>OS Support</li><li> Currently supports Windows only.</li><li> (Tested on Windows 10 with UE5.2)</li><li>Query Execution</li><li> Run SQL commands, retrieve results, and map rows/columns easily.</li><li>Blueprint-Friendly</li><li> All major operations exposed as simple Blueprint nodes.</li><li>CSV + Structured Results</li><li> Query results can be returned both as CSV rows and structured maps.</li></ul><h2>AVAILABLE FUNCTIONS</h2><p>PG_Connect(...)</p><p> Opens a connection to a PostgreSQL database with optional SSL settings.</p><p>PG_Disconnect(Connection)</p><p> Closes an active PostgreSQL connection.</p><p>PG_IsConnected(Connection)</p><p> Returns whether the connection is valid and open.</p><p>PG_ExecuteNonQuery(Connection, Sql, OutError)</p><p> Executes SQL statements that do not return rows</p><p> (INSERT, UPDATE, DELETE, CREATE, DROP).</p><p>PG_ExecuteQuery(Connection, Sql, PrimaryKeyColumn, OutRowsByPK, OutRowsCSV, OutError)</p><p> Runs a SELECT query and returns data in two formats:</p><ul><li>A map of rows keyed by a primary column</li><li>An array of CSV-formatted rows</li></ul><h2>COMPATIBILITY</h2><p>Precompiled Binaries</p><ul><li>Unreal Engine 5.2</li></ul><p>Source Code</p><p> Should compile normally for other Unreal Engine versions.</p><p>Need precompiled binaries for another version?</p><p> Open an issue or ask on Discord.</p><h2>INSTALLATION</h2><p>Download from Releases:</p><p> <a href=\"https://github.com/GPUbrainStorm/PostgreSQLPlugin_UE5/releases\" rel=\"noopener noreferrer\" target=\"_blank\">https://github.com/GPUbrainStorm/PostgreSQLPlugin_UE5/releases</a></p><p>Precompiled (UE 5.2)</p><p> Place the plugin into your project's \"Plugins/\" folder and launch.</p><p>From Source Code (Any Version)</p><p> Copy the plugin to your \"Plugins/\" directory and build the project.</p><h2>USAGE EXAMPLE</h2><p>(Images as reference from GitHub)</p><p>image 1</p><p> <a href=\"https://github.com/user-attachments/assets/189f1bc8-3896-4b0c-a122-bc75f996a0d9\" rel=\"noopener noreferrer\" target=\"_blank\">https://github.com/user-attachments/assets/189f1bc8-3896-4b0c-a122-bc75f996a0d9</a></p><p>image 2</p><p> <a href=\"https://github.com/user-attachments/assets/5170e131-1944-446c-9b08-fbcdfd1c086c\" rel=\"noopener noreferrer\" target=\"_blank\">https://github.com/user-attachments/assets/5170e131-1944-446c-9b08-fbcdfd1c086c</a></p><p>image 3</p><p> <a href=\"https://github.com/user-attachments/assets/0c0e9957-d9d8-44a6-acf4-3abc5afc1cdc\" rel=\"noopener noreferrer\" target=\"_blank\">https://github.com/user-attachments/assets/0c0e9957-d9d8-44a6-acf4-3abc5afc1cdc</a></p>","content_text":"POSTGRESQL INTEGRATION PLUGIN FOR UNREAL ENGINE 5\n\nA lightweight plugin that enables direct PostgreSQL database access inside\nUnreal Engine, supporting both C++ and Blueprints.\n\nThis is a BETA version, proceed with caution.\n\nFor support, join the Discord server:\n\nhttps://discord.gg/BxHRHDdkNy\n\n\nFEATURES\n\n * Direct PostgreSQL Connectivity\n * Connect Unreal Engine directly to any PostgreSQL server (local or remote).\n * SSL Support\n * Optional SSL connection with selectable SSL modes and optional root\n   certificate use.\n * OS Support\n * Currently supports Windows only.\n * (Tested on Windows 10 with UE5.2)\n * Query Execution\n * Run SQL commands, retrieve results, and map rows/columns easily.\n * Blueprint-Friendly\n * All major operations exposed as simple Blueprint nodes.\n * CSV + Structured Results\n * Query results can be returned both as CSV rows and structured maps.\n\n\nAVAILABLE FUNCTIONS\n\nPG_Connect(...)\n\nOpens a connection to a PostgreSQL database with optional SSL settings.\n\nPG_Disconnect(Connection)\n\nCloses an active PostgreSQL connection.\n\nPG_IsConnected(Connection)\n\nReturns whether the connection is valid and open.\n\nPG_ExecuteNonQuery(Connection, Sql, OutError)\n\nExecutes SQL statements that do not return rows\n\n(INSERT, UPDATE, DELETE, CREATE, DROP).\n\nPG_ExecuteQuery(Connection, Sql, PrimaryKeyColumn, OutRowsByPK, OutRowsCSV,\nOutError)\n\nRuns a SELECT query and returns data in two formats:\n\n * A map of rows keyed by a primary column\n * An array of CSV-formatted rows\n\n\nCOMPATIBILITY\n\nPrecompiled Binaries\n\n * Unreal Engine 5.2\n\nSource Code\n\nShould compile normally for other Unreal Engine versions.\n\nNeed precompiled binaries for another version?\n\nOpen an issue or ask on Discord.\n\n\nINSTALLATION\n\nDownload from Releases:\n\nhttps://github.com/GPUbrainStorm/PostgreSQLPlugin_UE5/releases\n\nPrecompiled (UE 5.2)\n\nPlace the plugin into your project's \"Plugins/\" folder and launch.\n\nFrom Source Code (Any Version)\n\nCopy the plugin to your \"Plugins/\" directory and build the project.\n\n\nUSAGE EXAMPLE\n\n(Images as reference from GitHub)\n\nimage 1\n\nhttps://github.com/user-attachments/assets/189f1bc8-3896-4b0c-a122-bc75f996a0d9\n\nimage 2\n\nhttps://github.com/user-attachments/assets/5170e131-1944-446c-9b08-fbcdfd1c086c\n\nimage 3\n\nhttps://github.com/user-attachments/assets/0c0e9957-d9d8-44a6-acf4-3abc5afc1cdc","date_published":"2025-12-06T15:55:53.942Z","_microfeed":{"web_url":"https://gpubrainstorm.com/i/a-new-open-source-postgresql-integration-for-ue5-34J5bH2lqRC/","json_url":"https://gpubrainstorm.com/i/34J5bH2lqRC/json/","rss_url":"https://gpubrainstorm.com/i/34J5bH2lqRC/rss/","guid":"34J5bH2lqRC","status":"published","itunes:episodeType":"full","date_published_short":"Sat Dec 06 2025","date_published_ms":1765036553942}},{"id":"D5KytDGdchj","title":"Finally: the new Spout plugin for UE5 over DirectX 12 is ready!","url":"https://www.gpubrainstorm.com/i/finally-the-new-spout-plugin-for-ue5-over-directx-D5KytDGdchj/","content_html":"<p>Today I published a stable enough release to use and test in real projects. Why is this a milestone for the project?</p><p>Release Notes:</p><p>v1.0.1 — 30 Oct 2025</p><ul><li>Drop-in install:&nbsp;Third-party&nbsp;DLLs &amp; headers are handled automatically. Just copy the plugin into your project’s&nbsp;Plugins&nbsp;folder. Works in Editor&nbsp;and&nbsp;packaged builds.</li><li>Delay-load DLL:&nbsp;Spout.dll&nbsp;/&nbsp;SpoutDX12.dll&nbsp;are delay-loaded; no more “module could not be loaded” when DLLs aren’t beside the editor or in the Binaries folder.</li><li>Auto DLL discovery:&nbsp;At runtime the plugin looks in&nbsp;Plugin/Binaries,&nbsp;Project/Binaries, then&nbsp;EXE directory&nbsp;(packaged) — no manual copying to the Engine folder.</li></ul><p>v1.0.0</p><ul><li>Initial&nbsp;SpoutReceiver&nbsp;component.</li><li>Sender improvements and Blueprint calls.</li></ul><p><br></p><p>The repo:</p><p><a href=\"https://github.com/GPUbrainStorm/UE5_Spout2_DX12\" rel=\"noopener noreferrer\" target=\"_blank\">https://github.com/GPUbrainStorm/UE5_Spout2_DX12</a></p><p>The last release:</p><p><a href=\"https://github.com/GPUbrainStorm/UE5_Spout2_DX12/releases/\" rel=\"noopener noreferrer\" target=\"_blank\">https://github.com/GPUbrainStorm/UE5_Spout2_DX12/releases/</a></p><p><br></p><p>#spout #spout2 #spout_unreal_engine #spout_for_unreal_engine #DirectX12</p>","content_text":"Today I published a stable enough release to use and test in real projects. Why\nis this a milestone for the project?\n\nRelease Notes:\n\nv1.0.1 — 30 Oct 2025\n\n * Drop-in install: Third-party DLLs & headers are handled automatically. Just\n   copy the plugin into your project’s Plugins folder. Works in\n   Editor and packaged builds.\n * Delay-load DLL: Spout.dll / SpoutDX12.dll are delay-loaded; no more “module\n   could not be loaded” when DLLs aren’t beside the editor or in the Binaries\n   folder.\n * Auto DLL discovery: At runtime the plugin looks\n   in Plugin/Binaries, Project/Binaries, then EXE directory (packaged) — no\n   manual copying to the Engine folder.\n\nv1.0.0\n\n * Initial SpoutReceiver component.\n * Sender improvements and Blueprint calls.\n\n\n\n\nThe repo:\n\nhttps://github.com/GPUbrainStorm/UE5_Spout2_DX12\n\nThe last release:\n\nhttps://github.com/GPUbrainStorm/UE5_Spout2_DX12/releases/\n\n\n\n\n#spout #spout2 #spout_unreal_engine #spout_for_unreal_engine #DirectX12","date_published":"2025-10-30T20:52:32.717Z","_microfeed":{"web_url":"https://gpubrainstorm.com/i/finally-the-new-spout-plugin-for-ue5-over-directx-D5KytDGdchj/","json_url":"https://gpubrainstorm.com/i/D5KytDGdchj/json/","rss_url":"https://gpubrainstorm.com/i/D5KytDGdchj/rss/","guid":"D5KytDGdchj","status":"published","itunes:episodeType":"full","date_published_short":"Thu Oct 30 2025","date_published_ms":1761857552717}},{"id":"VbLZk9pBH_z","title":"DX12 Spout2 Plugin - Unreal Engine 5","url":"https://www.gpubrainstorm.com/i/VbLZk9pBH_z/","content_html":"<p><strong>UE5_Spout2_DX12</strong></p><p>Open-Source <strong>Spout2</strong> plugin for <strong>Unreal Engine 5</strong> using <strong>DirectX 12</strong></p><p><br></p><p>This plugin enables texture sharing using spout on Unreal Engine via DX12.</p><p>Tested successfully in both live projects and packaged builds.</p><p>Still in alpha and only support sending from UE.</p><p><br></p><p>All details are available on the following link:</p><p><a href=\"https://github.com/GPUbrainStorm/UE5_Spout2_DX12\" rel=\"noopener noreferrer\" target=\"_blank\">https://github.com/GPUbrainStorm/UE5_Spout2_DX12</a></p>","content_text":"UE5_Spout2_DX12\n\nOpen-Source Spout2 plugin for Unreal Engine 5 using DirectX 12\n\n\n\n\nThis plugin enables texture sharing using spout on Unreal Engine via DX12.\n\nTested successfully in both live projects and packaged builds.\n\nStill in alpha and only support sending from UE.\n\n\n\n\nAll details are available on the following link:\n\nhttps://github.com/GPUbrainStorm/UE5_Spout2_DX12","image":"https://media-cdn.gpubrainstorm.com/gpubrainstorm/production/images/item-a15759c627ebdd4cd3579ee5008e5537.png","date_published":"2025-08-28T01:52:36.363Z","_microfeed":{"web_url":"https://gpubrainstorm.com/i/dx12-spout2-plugin-unreal-engine-5-VbLZk9pBH_z/","json_url":"https://gpubrainstorm.com/i/VbLZk9pBH_z/json/","rss_url":"https://gpubrainstorm.com/i/VbLZk9pBH_z/rss/","guid":"VbLZk9pBH_z","status":"published","itunes:episodeType":"full","date_published_short":"Wed Aug 27 2025","date_published_ms":1756345956363}},{"id":"PtiQy-qKx-B","title":"DateTimeFunctions-UnrealEnginePlugin","url":"https://www.gpubrainstorm.com/i/DateTimeFunctions/","content_html":"<p>This is an Unreal Engine plugin that provides some functions related to Date and Time with a countdown functionality using event binding. Packaged and tested on Unreal Engine 5.2 on windows only but in theory it can be compiled on any other version and for any other platform.</p><p>To use it, just download it on your machine as zip file then extract to your project folder: YourProjectFolder -&gt; Plugins (if this folder doesn't exist you can create it).</p><p>Features:</p><p>1- DateTime operations: Unix Timestamp, Subtract Dates (Result in seconds), Get time in a selected timezone.</p><p>2- DateTime Formating: Format any date to a selected formt. Available formats are: DD/MM/YYYY | MM/DD/YYYY | Mon,DD YYYY | DD Mon YYYY | DD Month YYYY | YYYY-MM-DD</p><p>3- Countdown functionality: Input in seconds, an event can be binded and called on every second to update the seconds.</p><p><br></p><p><a href=\"https://github.com/GPUbrainStorm/DateTimeFunctions\" rel=\"noopener noreferrer\" target=\"_blank\">Link</a></p>","content_text":"This is an Unreal Engine plugin that provides some functions related to Date and\nTime with a countdown functionality using event binding. Packaged and tested on\nUnreal Engine 5.2 on windows only but in theory it can be compiled on any other\nversion and for any other platform.\n\nTo use it, just download it on your machine as zip file then extract to your\nproject folder: YourProjectFolder -> Plugins (if this folder doesn't exist you\ncan create it).\n\nFeatures:\n\n1- DateTime operations: Unix Timestamp, Subtract Dates (Result in seconds), Get\ntime in a selected timezone.\n\n2- DateTime Formating: Format any date to a selected formt. Available formats\nare: DD/MM/YYYY | MM/DD/YYYY | Mon,DD YYYY | DD Mon YYYY | DD Month YYYY |\nYYYY-MM-DD\n\n3- Countdown functionality: Input in seconds, an event can be binded and called\non every second to update the seconds.\n\n\n\n\nLink","date_published":"2024-10-09T16:05:00.000Z","_microfeed":{"web_url":"https://gpubrainstorm.com/i/datetimefunctions-unrealengineplugin-PtiQy-qKx-B/","json_url":"https://gpubrainstorm.com/i/PtiQy-qKx-B/json/","rss_url":"https://gpubrainstorm.com/i/PtiQy-qKx-B/rss/","guid":"PtiQy-qKx-B","status":"published","itunes:episodeType":"full","date_published_short":"Wed Oct 09 2024","date_published_ms":1728489900000}},{"id":"iTk9jPoKy-H","title":"VoiceView-OBS","url":"https://www.gpubrainstorm.com/i/iTk9jPoKy-H/","content_html":"<p>This is a simple NodeJS code that uses OBS WebSocket to switch sources positions based on audio activity.</p><p>This script can be used multiple times on multiple scenes at the same time.</p><p>How to run:</p><p>1- install NodeJS LTS (This was tested using NodeJS v20.11.1 on Windows10 x64).&nbsp;<a href=\"https://nodejs.org/en/download\" rel=\"noopener noreferrer\" target=\"_blank\">https://nodejs.org/en/download</a></p><p>2- Clone the repository or download and unzip anywhere on your PC.</p><p>3- Start OBS Studio WebSocket on port 4455 with no authentication (You can use auth, but you should add the password to main.js in line 111 replacing undefined with 'YOUR_PASSWORD'). Note: Tested on WebSocket v5.x.x and probably won't work with older versions.</p><p>4- Run using Launch.bat file.</p><p>5- In the command line, enter the scene name and then the main source name.</p><p>6- Test by changing the audio activity on each source.</p><p>Note: this is so simple use case where you have a big frame for the active speaker and all other sources are in smaller frames, when the audio activity changes it will automatically switch the new active source to be in the big frame and the old active source to the smaller frame.</p><p>Testing video on YouTube:&nbsp;<a href=\"https://youtu.be/7Tv4p-olqqA?si=je1NS_42oGdlS1rK\" rel=\"noopener noreferrer\" target=\"_blank\">https://youtu.be/7Tv4p-olqqA?si=je1NS_42oGdlS1rK</a></p><p>If you have any problems running it you can start an issue, and I will try to assist asap.</p><p><br></p><p><a href=\"https://github.com/GPUbrainStorm/VoiceView-OBS\" rel=\"noopener noreferrer\" target=\"_blank\">Link</a></p>","content_text":"This is a simple NodeJS code that uses OBS WebSocket to switch sources positions\nbased on audio activity.\n\nThis script can be used multiple times on multiple scenes at the same time.\n\nHow to run:\n\n1- install NodeJS LTS (This was tested using NodeJS v20.11.1 on Windows10\nx64). https://nodejs.org/en/download\n\n2- Clone the repository or download and unzip anywhere on your PC.\n\n3- Start OBS Studio WebSocket on port 4455 with no authentication (You can use\nauth, but you should add the password to main.js in line 111 replacing undefined\nwith 'YOUR_PASSWORD'). Note: Tested on WebSocket v5.x.x and probably won't work\nwith older versions.\n\n4- Run using Launch.bat file.\n\n5- In the command line, enter the scene name and then the main source name.\n\n6- Test by changing the audio activity on each source.\n\nNote: this is so simple use case where you have a big frame for the active\nspeaker and all other sources are in smaller frames, when the audio activity\nchanges it will automatically switch the new active source to be in the big\nframe and the old active source to the smaller frame.\n\nTesting video on YouTube: https://youtu.be/7Tv4p-olqqA?si=je1NS_42oGdlS1rK\n\nIf you have any problems running it you can start an issue, and I will try to\nassist asap.\n\n\n\n\nLink","image":"https://media-cdn.gpubrainstorm.com/gpubrainstorm/production/images/item-6bd66ade18f577241c6b1a0c52f89f5e.png","date_published":"2024-09-29T20:13:07.372Z","_microfeed":{"web_url":"https://gpubrainstorm.com/i/voiceview-obs-iTk9jPoKy-H/","json_url":"https://gpubrainstorm.com/i/iTk9jPoKy-H/json/","rss_url":"https://gpubrainstorm.com/i/iTk9jPoKy-H/rss/","guid":"iTk9jPoKy-H","status":"published","itunes:episodeType":"full","date_published_short":"Sun Sep 29 2024","date_published_ms":1727640787372}}],"_microfeed":{"microfeed_version":"0.1.2","base_url":"https://gpubrainstorm.com","categories":[{"name":"Science","categories":[{"name":"Mathematics"}]},{"name":"Technology"},{"name":"Science","categories":[{"name":"Physics"}]}],"subscribe_methods":[{"name":"RSS","type":"rss","url":"https://gpubrainstorm.com/rss/","image":"https://gpubrainstorm.com/assets/brands/subscribe/rss.png","enabled":true,"editable":false,"id":"WUDxdOhV693"},{"name":"JSON","type":"json","url":"https://gpubrainstorm.com/json/","image":"https://gpubrainstorm.com/assets/brands/subscribe/json.png","enabled":true,"editable":false,"id":"aSgJ-AJlaRM"}],"description_text":"Hi, I’m Mohamad, a Technical Lead at Esports Middle East in Dubai. I specialize\nin developing real-time streaming solutions, game development, and technical\ninfrastructure for esports events. With a background in Information Systems\nEngineering (Intelligence Systems) and proficiency in multiple programming\nlanguages like C++, Python, and JavaScript, I am passionate about experimenting\nwith new technologies and pushing the boundaries of what's possible. Always\nlearning, never giving up, and committed to delivering high-performance\nsolutions, I work across cloud platforms like AWS and Google Cloud to power\nscalable esports operations.\n\n\n\n\nOur Projects Library:\n\nhttps://www.behance.net/esportsme\n\nMy Accounts:\n\nGitHub - Behance - LinkedIn - Facebook - X","copyright":"©2024","itunes:type":"episodic","items_sort_order":"newest_first"}}