Flazhik-AnimatedCybergrindTextures icon

AnimatedCybergrindTextures

Allows to add video textures for grid/skybox in Cybergrind

Last updated 2 days ago
Total downloads 383
Total rating 2 
Categories Mods
Dependency string Flazhik-AnimatedCybergrindTextures-1.0.0
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100

README

Animated Cybergrind Textures

Allows you to use animated custom textures in Cybergrind mode

Fireworks

Important note!

Please check out the information on supported texture file formats first.

Basics

Usage

After installing the mod, place your animated textures into the Cybergrind custom textures folder or any of its subfolders (ULTRAKILL\Cybergrind\Textures) as you would normally do.

In game, get to the blue Cybergrind terminal and open custom textures section. Animated textures should now be visible in the Terminal browser and have a little "📹" icon distinguishing them from the regular static textures. Thumbnails aren't animated in file browser, but don't worry, they will be on a little preview in the left corner of the screen.

The same also goes for the skybox textures. Animated glow textures, however, are not supported.

Texture preview

Example of a working animated texture in a preview section

Preconditions

In order for your textures to work properly, please note the following:

  • Texture format must meet the requirements
  • Grid texture must have a 1:1 aspect ratio. 100x100 is the most optimal resolution since it's used by the renderer
  • Skybox texture must have a 2:1 aspect ratio (1920x960 resolution is used by renderer and thus is preferable)
  • For skybox textures, an equirectangular projection is used, just like for any other skybox texture in ULTRAKILL

Skybox example

Example of a custom animated skybox texture

Skybox rotation toggle

The mod also introduces an option to disable a skybox spin (enabled by default)

Skybox rotation

I find spinning skyboxes extremely annoying ngl

Supported formats

It's worth mentioning right away that this mod only operates with video files, which means GIFs are not supported and you're gonna have to have your textures converted into video files first (more on available options below)

On a Windows platform, the following formats are supported:

.asf, .avi, .dv, .m4v, .mov, .mp4, .mpg, .mpeg, .ogv, .vp8, .webm, .wmv

As for the codec, H.264 would be the codec of choice but the video player support is not limited to it. See the official Unity docs for more information on supported codecs and formats.

Acquiring the textures

Okay, supporting textures animation is one thing, but how do I get these, I hear you ask? And what do I do with my GIFs?

I'm aware that GIF is by far the most requested format, so here's two options you can choose from:

  1. Use GIF -> MP4 online converters. There's a wide variety of these, most of them allow you to choose between different codecs, resolutions etc (just a reminder that H.264 is preferable). For instance, you can use this one
  2. Using a standalone software. It could be a video editor of your choice or some specialized media framework. Personally, I prefer ffmpeg over other alternatives. It may be confusing to use, but it is extremely agile. I'll provide some examples that could potentially help you down below

Skyboxes

Any equirectangular panorama video can be used as skybox as long as its resolution is 2:1. I strongly advise to keep it 1920x960 because that's the resolution of a skybox texture and any other resolution can lead to performance issues.

Important! If you've downloaded a 360 video from YouTube, you're gonna have to convert it from EAC to equirectangular in order for it to work properly (see ffmpeg section)

ffmpeg is your best friend

Like I mentioned before, ffmpeg spares you lots of troubles working with the media files. In order to install it:

  1. Download the latest ffmpeg build from here or here
  2. Find ffmpeg.exe executable in the downloaded archive in the bin folder and extract it somewhere on your PC (I'd recommend to use an empty folder for that in order to easily keep track of your files)
  3. Open a command line in this folder

Now here's a couple examples of using it:


Convert a GIF animation into a 100x100 .mp4 (it may not necessarily be a gif file, this also works with most of the video formats):

ffmpeg -i "INPUT_FILE_NAME.gif" -vf "scale=100:100" -movflags faststart -pix_fmt yuv420p -c:v libx264 -crf 25 "OUTPUT_FILE_NAME.mp4"


Change resolution of a video to 1920x960:

ffmpeg -i "INPUT_FILE_NAME.mp4" -vf "scale=1920:960" -c:v libx264 -crf 25 -preset fast -c:a copy "OUTPUT_FILE_NAME.mp4"


Convert downloaded 360 YouTube video from EAC to EQU (for skyboxes)

ffmpeg -i "INPUT_FILE_NAME.mp4" -vf "v360=eac:equirect,scale=1920:960" "OUTPUT_FILE_NAME.mp4"

Configuration

I wouldn't generally recommend doing this unless you're certain of your actions. You can modify a target resolution of grid/skybox textures which will be used by the renderer (e.g. you want to use 4K video as a skybox and you want it to look sharp), but bare in mind it can severely impact the performance.

You can find a corresponding config at ULTRAKILL\BepInEx\config\AnimatedCybergrindTextures\config.cfg (created after the first usage of the mod).