Optimizing Unreal Engine VR Projects for Higher Framerates (Meta Quest, HTC VIVE, FFR, ETFR, NVIDIA DLSS, AMD FSR, and Intel XeSS Tips Included!) Ever felt like your VR project is running so slow it could be a snail’s day job? 🐌 Or maybe your framerate is auditioning for a role in The Matrix—dodging bullets, but also every performance standard? 😅 Well, today, we’re fixing that! I’ll show you how to take your Unreal Engine VR game from ‘meh’ to chef’s kiss smooth. Although ...| Mamadou Babaei
Building Unreal Engine 5.6 from the GitHub Source Code With Android Support Alright, I’m back with another video. If you caught the last one on building Unreal Engine 5.6 from source on Windows, you already know the drill. As promised—this is the GNU/Linux edition. We’re doing it the Linux way this time: clean, efficient, and just a bit different. Let’s dive in.| Mamadou Babaei
Building Unreal Engine 5.6 from the GitHub Source Code Alright… I’m back. Yes, I know—I vanished for a while. But just like the upcoming Unreal Engine 5.6 release, I’ve been quietly cooking in the shadows. And now… we’re both making a comeback. Today’s tutorial is all about how to build Unreal Engine 5.6 from source—on Windows. That’s right, 5.6 isn’t officially out yet, but we’re not waiting around. If you’re impatient like me—or just curious to see what Epic’s br...| Mamadou Babaei
Unreal Engine OpenXR Hand-Tracking on Android with Meta XR (Quest 3S/Pro/3/2) and HTC VIVE OpenXR (Focus Vision/XR Elite/Focus 3) Plugins Hey everyone! Welcome back to the channel! In the last tutorial, we tackled deploying Unreal Engine projects to Android and Meta Quest in standalone mode—because who doesn’t love the thrill of watching their code actually work on a headset? But if you caught that episode, you’ll remember I dropped a little plot twist: Unreal Engine’s built-in OpenXR...| Mamadou Babaei
Deploy Unreal Engine Projects to Android and Meta Quest 3S/3/Pro/2 in Standalone Mode All right… so… you might be wondering—where have I been? Did I fall into a virtual void or some digital black hole? Did I get sucked into a never-ending loading screen? Did Unreal Engine finally crash me for good? Well, almost. But I’m back! Back from the digital abyss. And let me tell you, I was this close to naming this video: ‘How to Deploy Your Soul to Standalone Mode’… because burnout is r...| Mamadou Babaei
Procedural Virtual Hand Mesh Animation Using OpenXR Hand-Tracking in Unreal Engine Building on the Introduction to Virtual Reality, OpenXR Hand-Tracking, and Gesture Recognition in Unreal Engine tutorial, this slightly more advanced tutorial will dive deeper into the following topics: Transitioning seamlessly between motion controller and hand-tracking modes in Unreal Engine. Adding custom debugging gizmos to improve development and testing workflows. Visualizing debug virtual hands by incorp...| Mamadou Babaei
WebRTC IP Leak Demonstration using Rust and JavaScript Deep in the vast jungle of the internet, an elusive predator lies in wait: the WebRTC IP leak. This invisible hunter slithers through the dense digital undergrowth, silent and unseen, ready to strike its next target. The IP addresses of its unsuspecting victims are exposed in an instant. But its danger isn’t merely technical; if you’re a political activist in a repressive regime, leaking your IP could jeopardize your very life. Today,...| Mamadou Babaei
Introduction to Virtual Reality, OpenXR Hand-Tracking, and Gesture Recognition in Unreal Engine Here’s a lesser-known fact about me. Once upon a time, when it was just me and the dinosaurs… Okay, maybe not that far back, but long before VR headsets, the Metaverse, and the social media craze, I used to teach people things for 8 years! I loved it so much that, honestly, I could talk for hours (don’t worry, I won’t in this video)! Anyway, enough of my rambling! Recently, I rediscovered t...| Mamadou Babaei
I recently purchased a second-hand HP Proliant ML350p Gen8 in order to be used as a home server and to my disappointment realized I won’t be able to disable the hardware RAID that comes with this model, at least at first glance. Well, there is a way to do that, which is supported by HP themselves. And, this is how to do it the easy way! But, before we proceed any further, you might ask why do I need to disable the hardware RAID? The answer is because I need to install ZFS. There is already ...| Mamadou Babaei
UPDATE [2021/11/08]: For whitelisting macOS, one could simply add Mac to PlatformAllowList inside the .uplugin file. e.g.: Whitelisting Linux inside ModelingToolsEditorMode.uplugin"Modules": [{"Name": "ModelingToolsEditorMode", "Type": "Editor", "LoadingPhase": "Default", "PlatformAllowList": ["Win64", "Linux", "Mac"]}], --- I’ve been trying to enable and make use of UE5’s Modeling Tools Editor Mode Plugin inside the editor built from ue5-main and 5.0 and struggled to some extent. Accordi...| Mamadou Babaei
Host Unreal Engine 4 projects on Microsoft Azure DevOPS with unlimited cost free Git LFS quota UPDATE 1 [2021/07/25]: It seems that Git LFS is able to resume your pushes after a network failure. At least it’s like that on Microsoft Azure DevOPS. So, it should be totally redundant to divide huge commits into smaller ones. How have I noticed this? Today, I pushed a huge single commit (around 53GBs) and it failed at 39GB due to a connection error without me noticing it for some time. A few hou...| Mamadou Babaei
Well, anyone who has ever developed a C++ game or application with Gregorian to Jalali date conversion (or, vice versa) requirement is well aware of the hurdles of doing such a task. I, for one, have been maintaining my own cross-platform C++ library for almost two decades now, with occasional bugs coming up from time to time. Recently, I have been playing with boost::locale (developed by Artyom Beilis and contributed to Boost project) a bit more in order to utilize it in a personal project c...| Mamadou Babaei
A few months back due to various changes in how Funtoo is being managed, I migrated back from Funtoo to Gentoo after almost a decade. After some time I realized my laptop randomly gets stuck on a blank screen and freezes just right before my login manager (SDDM) starts. I noticed the hard-disk LED is blinking and the system is actually not freezed and probably is working and stuck on something. Checking the system or Xorg logs did not reveal anything unusual. I even posted my issue on the Gen...| Mamadou Babaei
For those who don’t know, I maintain various official FreeBSD ports and for almost 18 months my submitted updates to www/wt has been stuck due to lack of a review. Hopefully, tonight it has been committed to the official FreeBSD Ports tree and has been divided into two ports: www/wt for following the 4.x releases www/wt3 for following the 3.x releases Although Wt Webtoolkit 4.x is a significant update which brings in more modern C++ and performance improvements (read more about the changes ...| Mamadou Babaei
--- UPDATE 1 [2019/05/11]: Thanks to @mirrorbox’s suggestion, I refactored the script to use service status instead of ps aux | grep which makes the script even more simple. As a result, the syntax has changed. Since I keep the article untouched, for the updated code visit either the GitHub or GitLab repositories. The new syntax is as follows: # Syntax$ /path/to/daemon-keeper.sh Correct usage: daemon-keeper.sh -d {daemon} -e {extra daemon to (re)start}[-e {another extra daemon to (re)start}...| Mamadou Babaei
i3wm setup with amazing gruvbox color scheme and a wallpaper from Reddit Update [2019/05/08]: Many people have been asking for the wallpaper in the above screenshot. It is from System Failure II, oil on canvas, 31x43” on r/Art. Well, I am really fascinated by Reddit art and genuine creative ideas such as Scrolller which was made possible thanks to gazillions of art pieces scattered throughout various art subreddits. I am also fascinated by Unix philosophy and have been a *nix enthusiast for...| Mamadou Babaei
HackYourFuture First Game Development Workshop Report OK! Today, HackYourFuture held their first-ever gamedev workshop titled “Introduction to Unreal Engine 4 Game Development Using Blueprint” at their Amsterdam office, which I’ve been given the opportunity to present to their alumni on HackYourFuture’s behalf. Since I’m still very excited and fascinated by the culture of sharing and the friendly environment governed by HackYourFuture, I decided to share the presentation file which ...| Mamadou Babaei
Call of Duty 4: Modern Warfare Well, I haven’t played a multiplayer game in ages until recently, when my cool boss announced regular playtimes for all the employees in our company as a group activity in order to put the fun back into work. Since I’m a die-hard COD4 fan and I used to play Promod LIVE heavily with colleagues and friends, I proposed Call of Duty 4: Promod LIVE 220 which happened to be favored by everybody; except there was one issue: everyone uses Microsoft Windows while I...| Mamadou Babaei
Hexo was so perfect and fast that I thought I will live with it happily ever after forever. Shortly, after I migrated this blog from Octopress 2.x to Hexo, I came across Hugo static generator with support for blogging. The idea of having a blazingly fast static generator written in a compiled native language seemed intriguing to me. I tried to migrate my blog to Hugo soon after multiple times which led to failure every single time due to lack of a few features in Hugo. Fast-forward, I played ...| Mamadou Babaei
Update 1 [2016/09/30]:A section has been added to the end of the article for dealing with major FreeBSD upgrades. Update 2 [2016/09/30]:A section has been added to the end of the article for upgrading current installation of Discourse to newer versions. Update 3 [2016/09/30]:A section has been added to the end of the article for installing Discourse under Ruby version managers which is required for dealing with newer versions of Discourse since the current system-wide version of Ruby on FreeB...| Mamadou Babaei
Figure 1. Android Robot Well, I started my Android development on a Samsung I9100 Galaxy S II. I never had any trouble getting ADB to work on Microsoft Windows since I had the drivers from Samsung which was already installed due to my previous Cyanogenmod installation process. Afterwards, I received a Nexus 7 and a bit latter a Nexus 5 which became my primary development device of choice. Google did a good job by providing ADB drivers for All Nexus devices inside the SDK or as a small separat...| Mamadou Babaei
Picture A: Gray (black and white) post-processing effect in Cocos2d-x Update [2020/10/23]:Since I wrote this tutorial many things has changed in Cocos2d-x and I haven’t been using it in years as I switched to Unreal Engine 4. According to this GitHub issue opened by my blog readers, in order for this code to work there has to be some modifications to the code which is provided on that issue by @lazerfalcon and @madrazo. I was also having trouble with render to texture on Sprite3D which seem...| Mamadou Babaei
Packt $5 Campaign - Packt Publishing From the 17th December 2015 into the New Year, Packt Publishing is inviting the tech world to explore its extensive library of eBooks and Video courses for one amazing price. Every single eBook and Video course Packt has ever created will be available on packtpub.com for just $5!| Mamadou Babaei
Join Packt and Prepare for Tech in 2016 - Take Packt’s Year in Review survey and get any eBook or video for just $5! At a time of rapid development and innovation, tech skills have never been more valuable. The right skills and cutting-edge knowledge can bring huge rewards. Over the summer, Packt Publishing carried out a survey of more than 20,000 people from across the world of tech, to investigate what skills are most important in today’s fast-changing technological landscape. Now, as t...| Mamadou Babaei
Be Skilled & Ready with Packt’s revamped learning library – over 3,000 titles for a whole year now just $100! With new features and our latest books and videos just for you, there’s no reason to stay behind when it comes to IT This week, Packt Publishing has reduced the price of its PacktLib subscription service as it rolled out dozens of new features and improvements to give you the best experience possible to stay on top of the curve and get the skills you need when you need them.| Mamadou Babaei
There once was a time when I did the following inside my home directory: $ wget "some-url" -O "output-file.mp4" I clearly remember copying the output file name from a web page. Unfortunately, the copied text has a new line at the beginning of it and I didn’t notice that. That’s because the newline or carriage return characters are control characters and have no visual representation. Anyway, when I listed files inside my home directory I noticed a strange file name on my list: $ ls ?outpu...| Mamadou Babaei
A Linux kernel panic on tram 7B at its hometown, Helsinki (Click to enlarge) Undeniably, flaming has been around since the dawn of the Internet age. And even worse, it has been on the rise ever since. Gazillions of flame wars on websites such as Slashdot or Reddit surely is enough proof, the greatest of which is the perennial debates between users of competing operating systems. No doubt I’m a FLOSS enthusiast and advocate who considers free/libre/azad software superior to the proprietary o...| Mamadou Babaei
Update 1 [2016/09/23]:OmniBackup now officially supports GNU/Linux. More info… Update 2 [2016/09/23]:Official documentation moved to GitHub which means this guide won’t be maintained anymore and maybe out of date or inaccurate. A week ago was System Administrator Appreciation Day. It is celebrated on the last Friday in July and it has been celebrated since July 28, 2000. But, system administrators know not all days are like that day. They face many hard times and struggles during their ca...| Mamadou Babaei
There is an old saying that the only safe computer is one that’s disconnected from the network, turned off, and locked in an underground bunker—and even then you can’t be sure! Since most of us can’t afford to keep our servers in an underground bunker, the least little thing that could have been done in order to keep their threat exposure at rock-bottom is protecting them by running a combination of a firewall and an intrusion prevention system or IPS (a.k.a intrusion detection and pr...| Mamadou Babaei
What does your industry look like? I can only say wow! Packt Publishing has just released their comprehensive IT industry salary reports, with data from over 20,000 developers around the globe. If you really want to identify or get an idea of the upcoming trends over the next few years, you should consider this comprehensive analysis in order to get the most out of your career and skills. This report covers four segments of IT industry including Web Development & Design, Application Developme...| Mamadou Babaei
Modern web development is filled with an abundance of tools and technologies, but it’s difficult to know where to begin. You want both efficiency of your work and high performance of your site; Gulp brings that right to your doorstep. With its rising popularity, you don’t want to leave Gulp out of your toolbox.| Mamadou Babaei
Until not so long ago, to add my own cron jobs I always had the habit of modifying /etc/crontab on my FreeBSD system which turned out to be wrong. In simple words, there are two types of crontab files: System crontab which should not be altered due to the troubles it cause during FreeBSD upgrades User crontab which has one less column than the system crontab file| Mamadou Babaei
From 30th April, 2015 Packt Publishing has thrown open the virtual doors of its new Free Learning Library and offering its customers a daily chance to grab a fresh free eBook from its website. The publisher is encouraging people to learn new skills and try out new technologies and so every day it will be offering a different eBook from its huge list of titles free for anyone to download. Packt Free Learning Library - Every day Packt Publishing is giving away books for free to help teach new t...| Mamadou Babaei
Well, I was living a happy life with Octopress 2.x despite the fact that I didn’t do much blogging in the past couple of years. Moreover, in my estimation Octopress still should be considered as one of the greatest blogging platforms among its peers and I really got nothing against it. But, I see a few shortcomings which made me looking for alternatives (and some of these still affects the 3.x version of Octopress):| Mamadou Babaei
Digital Restrictions Management (DRM) harms almost everyone, but most people have never heard of it. Today is one of our best opportunities to change that. There are people around the world coming together to say that we will not tolerate the remote deletions, unethical surveillance, and invasive restrictions of DRM. In fact, with events in at least nine countries and huge online participation, it’s the world’s biggest anti-DRM protest. Defective by Design - International Day Against DRM ...| Mamadou Babaei
Almost three weeks ago I received a review request from one of the Packt Publishing staffs to review Application Development with Qt Creator, 2nd Edition written by Ray Rischpater which has been recently published by Packt Publishing. Since I’ve been developing cross platform Qt (cute, often mispronounced as Q-T cue-tee) applications from Qt 4 era back in 2008 – when Qt Creator was not around yet and the project was running by Trolltech at the time – and a handful of Qt Quick mobile app...| Mamadou Babaei
As a Nexus 7 tablet user I’ve been struggling with my Nexus 7 WiFi from the moment that I’ve owned it. It was originally released with Android 4.2.0 installed. Nonetheless, Android 4.2.1 and 4.2.2 didn’t get me anywhere with the WiFi issue. In fact, you may have suffered from this issue, and are already familiar with. After inserting a SIM-Card into the device, Android asks to restart the device. However, after rebooting you will notice the WiFi module won’t work. No matter how hard y...| Mamadou Babaei
[Update]: Thanks to digitaltoast for informing me about the missing real_ip_header CF-Connecting-IP; from the script and providing a patch for it. OK, I suppose you know what CloudFlare is, and are familiar with Nginx configuration process, before we proceed any further. Just in case you don’t know, CloudFlare offers free and commercial, cloud-based services to help secure and accelerate websites. The thing is, I’m really satisfied with the services they offer except a repellent issue abo...| Mamadou Babaei
If you’ve ever used a GNUGentoo or FuntooLinux variant, or a live version of any of them, you may have noticed their eye-catching colorful terminal or console. Whether you’re on a virtual console or one of KDE, GNOME, XFCE, LXDE terminal apps. A Colorful Xfce4 Terminal on FreeBSD (Bash) The default Xfce4 Terminal on FreeBSD (sh csh) When I’ve migrated from Funtoo to FreeBSD, the one thing that I’ve missed so badly was its colorful terminal. The nice thing about these colors is taht th...| Mamadou Babaei
GNU nano is my favorite text editor while I’m on console. Although, it doesn’t offer syntax highlighting by default, it comes with a decent set of syntax highlighting files. Usually, these files are exist in /usr/local/share/nano or /usr/share/nano, depending on your distro’s preference. You can enable syntax highlighting for your prefered language(s) by including related file(s) with .nanorc extension in your ~/.nanorc file. ~/.nanorc - FreeBSDinclude "/usr/local/share/nano/asm.nanorc"...| Mamadou Babaei
GNU nano is my favorite text editor while I’m on console. However, there’s one thing about nano which annoys me: automatic text wrapping! Hopefully, there are two simple ways to overcome this. By using either -w command-line argument, or set nowrap configuration command within the file ~/.nanorc. 1. The temporary solution by using -w command-line argument, which should be used each time you run nano: $ nano -w /path/to/file 2. The permanent solution by setting off automatic text wrapping ...| Mamadou Babaei
Previously I’ve described the process of building Crypto++ on both FreeBSD and Windows using the GCC, MinGW and VC++ compilers. Now, we want to develop our own cross-platform cryptographic wrapper library around Crypto++. I’ve already uploaded the full source code to GitHub. You can find the link to the code on GitHub at the end of this article. Before you proceed, you have to build the Crypto++ library as I mentioned earlier here.| Mamadou Babaei
Crypto++ is an awesome free and open source C++ class library of cryptographic algorithms and schemes which fully supports 32-bit and 64-bit architectures for many major operating systems, including FreeBSD, Linux, Solaris, Windows, Mac OS X and iOS. Currently, Crypto++ officially supports the following compilers: MSVC 6.0 - 2010 GCC 3.3 - 4.5 C++Builder 2010 Intel C++ Compiler 9 - 11.1 Sun Studio 12u1, Express 11/08, Express 06/10 The latest version at the time of this writing is 5.6.1. In s...| Mamadou Babaei
Most of the time I see some C++ programmers who check if a pointer is NULL before deleting it. if (ptr != NULL) { delete ptr; ptr = NULL; } Well, according to C++03 [ISO/IEC IS 14882:2003] §5.3.5/2 which explicitly states: …if the value of the operand of delete is the null pointer the operation has no effect. C++ Standard Core Language Defect Reports and Accepted Issues, Revision 82delete and user-written deallocation functions Therefore, deleting a NULL pointer has no effect (if the deall...| Mamadou Babaei
As you’ve noticed there’s still no official support for Microsoft Visual Studio 2012 in recent Pixel Mine nFringe releases. While ago I came across an awesome forum post at Epic Games Forums which describs a simple process of getting nFringe to work with VS2012. Since then I’ve used it in my day to day development tasks and I had no difficulties at all using it. And damn, it’s pretty stable despite the fact that not officially supported by Pixel Mine. Even nFringe version 1.1 which I...| Mamadou Babaei
Well, I’ve failed to install .NET Framework 2.0/3.5 in Windows 8 using Program and Features in Control Panel, which I need for an older project I’ve done long ago. But I came across an easy solution which did the trick. In Windows Command Prompt (cmd.exe) or Run dialog, enter the following command and hit Enter: > Dism /online /enable-feature /featurename:NetFx3 /All /Source❌\sources\sxs /LimitAccess Replace x: with path of your Windows 8 installation DVD. Note: You have to run cmd.exe ...| Mamadou Babaei
My first exposure to videogames occurred during a visit to my aunt’s house in the late 80’s. I was riveted at the sight of motioning icons on the TV screen. Later, I learned the videogame was called River Raid, and the console 8-bit Atari 2600. When my parents bought me my first gaming console the next summer, I found my lifelong passion: making games. Although the game development industry in my home country of Iran is still in the making, I am affiliated with a respectable group of game...| Mamadou Babaei
| Mamadou Babaei
Something Cool Genre Not a gamedev project Developer - Year(s) 2022 - Present Engine Unreal Engine 4 / 5 Platform(s) Microsoft Windows, GNU/Linux, Android, Oculus Quest 2, Oculus Quest Pro, HTC VIVE Pro, HTC VIVE Focus 3 Description - Roles(s) Lead C++/Unreal Developer Lead Rust Developer Go lang NHRA Championship Drag Racing: Speed For All Genre Racing Developer Team6 Year(s) 2021 - 2022 Engine Unreal Engine 4 Platform(s) PlayStation 5, Nintendo Switch, Xbox One, PlayStation 4, Microsoft Win...| Mamadou Babaei
In order to search the site, enter a phrase in the following text box and hit enter, please: Search phrase Search powered by a self-hosted instance of searx.| Mamadou Babaei
Rust Devs Think We’re Hopeless; Let’s Prove Them Wrong (with C++ Memory Leaks)! When Rust developers think of us C++ folks, they picture a cursed bloodline — generational trauma passed down from malloc to free. To them, every line of C++ we write is like playing Russian Roulette — except all six chambers are loaded with undefined behavior. They look at us like we’re hopeless. Like we’re one dangling pointer away from therapy. But you know what? We don’t need a compiler nanny. No...| Mamadou Babaei