A Sight Through The Glitch

Reality is an outdated system. We're here to bend the rules, glitch the norm, and exploit their boring and corrupted attitude. Expect the unexpected. šŸŽ®šŸ‘¾

1. Introduction: The Power of VkCapture & The Flatpak Convenience

Hello Fedora enthusiasts and Linux gamers! If you're like me, you love the power and flexibility of Linux for gaming and content creation. OBS Studio is an incredible tool for streaming and recording, and running it as a Flatpak on Fedora offers a super convenient way to keep it updated and manage it's dependencies.

But what if i told you there's a way to get even better performance when capturing your vulkan-based games?

Enter vkcapture. This isn't your standard window or screen grab. vkcapture is a specialized method for hooking directly into Vulkan games.

Why should you care about vkcapture?

Performance Boost: We're talking potentially significant reductions in overhead compared to other capture methods. This means smoother gameplay for you, and smoother video for you audience.

Direct Capture: It taps right into the game's rendering pipeline. Many users might miss out on this because it's not always the default or most obvious option. That's why i consider it an ā€œunderrated gemā€, especially for us Linux users.

2. The Scenario: Flatpak OBS Meets Native Linux Games

So, here's the setup we're tackling:

You've got OBS Studio installed as a Flatpak from Flathub (directly or via your package manager) on your awesome Fedora system.

You're playing Vulkan-based games that are installed natively on Fedora (i.e., native Steam client, Lutris, Heroic Game Launcher etc.). This is a common and great setup! But when you try to use vkcapture in this scenario, you might hit a snag.

3. The ā€œCatchā€: Why Vkcapture Might Not Just Work Out-Of-The-Box

You open your Flatpak OBS, see the ā€œGame Captureā€ source option, and get excited. But when you try to capture your native Vulkan game.. nothing. Or, it simply doesn't work as expected. What gives?

Here's the crucial bit:

For vkcapture to do its magic, your Vulkan game needs to load a special component called a Vulkan layer. Think of it as a small piece of software that sits between your game and your graphics driver, allowing vkcapture to access the game's rendered frames.

The Problem:

Your natively installed game lives outside the OBS Flatpak's isolated world (its ā€œsandboxā€). It typically can't ā€œseeā€ or use any Vulkan layers that might be bundled inside the Flatpak. So, even if Flatpak OBS has the vkcapture plugin ready to receive data, your native game doesn't know how to send it because it can't load the necessary layer.

This is the ā€œmissing pieceā€ we're going to put in the place!

4. The Solution: Building the Vkcapture Vulkan Layer Natively on Fedora

To bridge this gap, we need to build and install the vkcapture Vulkan layer directly onto our Fedora system, making it accessible to our native games. Don't worry, it sounds more intimidating that it is! Let's break it down.

A. Getting the source code for obs-vkcapture

First, we need the source code for the obs-vkcapture layer.

git clone https://github.com/nowrep/obs-vkcapture.git
cd obs-vkcapture

B. Installing Build Dependencies on Fedora

Next, we'll gear up our Fedora system with the tools and libraries needed to compile the layer.

Open your terminal and run:

sudo dnf install gcc gcc-c++ make \
    obs-studio-devel \
    vulkan-headers \
    vulkan-loader-devel \
    mesa-libGL-devel \
    mesa-libEGL-devel \
    libX11-devel \
    libxcb-devel \
    wayland-devel \
    wayland-protocols-devel

C. Building the plugin

Inside the obs-vkcapture folder, create a build directory and enter it:

mkdir build
cd build

Compile the plugin

cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
make

D. Installing the Layer Natively

Once compiled, we need to install the Vulkan layer files to the correct system directories so your games and the Vulkan loader can find them. This usually involves two main files: the shared object (.so) library and a JSON manifest file.

The good news is that this whole procedure will automatically be completed by executing the following command:

#Inside the build directory
sudo make install

E. Reboot Your Machine

5. Configuring and Using Vkcapture with Flatpak OBS

Alright, the native vkcapture layer is built and installed! Now, let's get it working with your Flatpak OBS.

This is where you tell your native Vulkan game to use the layer we just installed.

The most common way is by setting an environment variable when launching the game.

1. Steam

How to access Launch Options:

  1. In your Steam Library, right-click on the game you want to capture.
  2. Select ā€œProperties...ā€.
  3. In the ā€œGeneralā€ tab, you'll find a text box labeled ā€œLAUNCH OPTIONSā€.

What to enter:

obs-gamecapture %command%

Note: the %command% part is crucial for Steam; it tells Steam to substitute in the actual game executable and its arguments at that point.

2. Lutris

How to access settings:

a. In Lutris, right-click on the game. b. Select ā€œConfigureā€. c. Go to the ā€œSystem optionsā€ tab.

In the ā€œSystem optionsā€ tab, find the field labeled ā€œCommand prefixā€. Enter the following into this field:

obs-gamecapture

d. Click ā€œSaveā€

3. Heroic Games Launcher

How to access settings:

a. Open Heroic Games Launcher and select the game you want to configure. b. Click on the ā€œSettingsā€ icon for that specific game. c. You'll see sections as shown in your image: ā€œWrapper commandā€ and ā€œEnvironment Variablesā€. d. Locate the ā€œWrapper commandā€ section. 3. In the field labeled ā€œWrapperā€, enter:

obs-gamecapture

The field next to it labeled ā€œArgumentsā€ (or ā€œWrapper Argumentsā€) should generally be left blank when using obs-gamecapture this way. The obs-gamecapture script is designed to precede the main game command that Heroic will launch. 4. Save the settings if there's a save button, or Heroic might auto-save.

5. Adding the Source in OBS Studio

With your game running (and the layer loaded), it's time to add it in OBS:

  • Open OBS Studio.
  • In the ā€œSourcesā€ dock, click the + button.
  • Select ā€œGame Captureā€
  • A properties dialog will appear and press ok

6. Conclusion

And there you have it! By building the vkcapture Vulkan layer natively on your Fedora system, you've bridged the gap to your Flatpak OBS installation, unlocking potentially much smoother and more performant captures of your native Vulkan games.

It might seem like a few extra steps, but the payoff in quality and performance can be well worth it for serious streamers and content creators. Plus, you've learned a bit more about how Vulkan layers and Flatpak sandboxing interact!

Happy gaming and capturing! Let me know in the comments how this worked for you or if you have any other tips!


⟩ OmniGlitch

⌘ #tech #gaming #opinions

In the bustling city of Aetherion, where towering spires of technology kissed the heavens and innovation thrived beneath the watchful eyes of progress, there existed a secret that the mundane populace overlooked—a power as elusive as the shifting sands of the desert and as intoxicating as forbidden wine. Those who possessed this power walked a precarious line, teetering between illumination and madness, burdened with the weight of a ceaseless, inescapable introspection.

Kaelan was one such individual, a reluctant inheritor of the ā€œDesert of Overthinking,ā€ a gift—or curse—bestowed upon him not by choice but by the whims of fate. In his waking life, he was an enigma, a thoughtful soul cloaked in the ordinary trappings of a librarian, his presence as unassuming as the pages of the books he adored. Yet, beneath the veneer of an unremarkable faƧade, his mind was a tempest of endless contemplation, a vast desert where every grain of sand whispered possibilities untold.

Kaelan's power would make for rich storytelling, exploring themes like the mind's capacity for thought, the fine line between genius and madness, and the ethical ramifications of influencing others' mental states.

But, what is the ā€œDesert of Overthinkingā€? I'm glad you ask! Let me layout the concept of this power with RPG terms.

ā€œDesert of Overthinkingā€ allows the individual to project or induce an overwhelming state of over-analysis in themselves or others, essentially trapping the target in an endless desert of thoughts where every grain of sand represents a different angle, possibility, or outcome of a situation.

Abilities:

Inducing Overthought:

  • Single Target: The hero can focus this power on one individual, causing them to second-guess every action, decision, or even word they might say. This could be used to prevent enemies from taking immediate action, giving the hero time to escape or strategize.

  • Area Effect: When activated in a crowd, it could lead to mass indecision, where everyone becomes so caught up in thinking about what to do next that they effectively become immobile or inactive.

Self-Reflection:

The user can enter this state themselves to explore every possible scenario of a future event or past decision. This could be used for planning, learning from hypothetical mistakes without making them, or deducing the best course of action through sheer exhaustive thought.

Memory Manipulation:

By navigating through the sands of thought, the hero might be able to uncover forgotten or repressed memories in themselves or others, using overthinking as a tool for deep introspection or interrogation.

Defense Mechanism:

When under mental attack or interrogation, the hero can retreat into this desert, making it incredibly difficult for any mental intrusion to extract useful information since every thought leads to another, creating a labyrinth of consciousness.

Creativity Boost:

While overthinking is often seen negatively, in controlled doses, it could lead to bursts of creativity or innovation, where the hero or others can come up with unique solutions or ideas by considering all possible angles.

Drawbacks:

  • Mental Exhaustion: Frequent or prolonged use could lead to severe mental fatigue, stress, or even mental health issues for the user or their targets.

  • Isolation: The hero might find themselves isolated as others might fear being around someone who can induce such overwhelming introspection.

  • Loss of Action: There's a risk of becoming trapped in their own mind, leading to paralysis by analysis where the hero or others can't act due to over-analyzing.

  • Ethical Concerns: Using this power to manipulate or incapacitate others could raise significant moral questions about free will and consent.

Character Development:

  • Journey to Control: Kaelan's arc could involve learning to control this power, transitioning from someone who inadvertently causes chaos with their ability to someone who uses it with precision and care.

  • Finding Balance: The hero might need to find activities or companions that help them switch off this power, like meditation, art, or a partner who has a grounding effect on them.

  • Moral Dilemmas: Stories could explore situations where using the power is necessary but ethically ambiguous, forcing the hero to make tough choices about when it's justifiable to use such an invasive ability.

The prologue is just the beginning of a story you might think and develop yourself. It is a mirror, reflecting the infinite potential that lies within you. As you step out into the world, know that the story never truly ends; it continues with every choice, every moment of reflection, and every dream that dares to take flight.

Wander well, dear reader.


⟩ OmniGlitch

⌘ #tech #gaming #opinions

Want to transform your perfectly organized life into a chaotic masterpiece? Look no further! Follow these expert-tested methods to achieve maximum disorder.

Step 1: Master the Art of Procrastination

Remember: tomorrow is always the best day to start anything. Why do today what you can postpone until next week, next month, or preferably never? Pro tip: Set at least 17 alarms every morning and ignore them all.

Step 2: Perfect the ā€œFloordrobeā€

Closets and drawers are overrated. Your floor is a perfectly valid storage solution for clothes, books, and important documents. Create an archaeological layer system – the deeper the layer, the longer it's been there. Bonus points if you forget what's at the bottom!

Step 3: Embrace Financial Chaos

Keep all your receipts, but make sure to crumple them up and distribute them randomly throughout your house. When tax season comes, enjoy the thrill of the hunt! For extra excitement, never check your bank balance – let every purchase be a surprise.

Step 4: Master Time Mismanagement

Schedule important meetings for the same time. Double-book yourself constantly. When someone asks if you're free next Thursday, always say yes without checking. Remember: calendars are just suggestions, and time is a social construct anyway.

Step 5: Perfect Your Excuse Arsenal

Develop a comprehensive list of creative excuses. ā€œMy pet goldfish needed emotional supportā€ is always a classic. ā€œI was abducted by aliens, but they had terrible WiFiā€ works too. The more outlandish, the better!

Step 6: Dietary Excellence

Eat breakfast for dinner and dinner for breakfast. Better yet, forget meals entirely and survive on random snacks found in the back of your cupboard. That expired protein bar from 2019? It's probably fine.

Advanced Tips for the Committed Chaos Enthusiast

  • Name all your files ā€œfinal_final_FINAL_v2_REALLY_FINAL.docā€
  • Keep your phone permanently at 1% battery
  • Respond to all emails exactly 3 weeks late, always starting with ā€œSorry for the delayed response!ā€

Disclaimer: Following this guide may result in unexpected organization and productivity as your life spirals so far into chaos that it somehow loops back around to order. The author takes no responsibility for accidental success in life.


⟩ OmniGlitch

⌘ #tech #gaming #opinions