AnimatedCybergrindTextures
Allows to add video textures for grid/skybox in Cybergrind
Last updated | 2 months ago |
Total downloads | 2245 |
Total rating | 4 |
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
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100README
Animated Cybergrind Textures
Allows you to use animated custom textures in Cybergrind mode
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.
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
Example of a custom animated skybox texture
Skybox rotation toggle
The mod also introduces an option to disable a skybox spin (enabled by default)
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:
- 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 thatH.264
is preferable). For instance, you can use this one - 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:
- Download the latest
ffmpeg
build from here or here - Find
ffmpeg.exe
executable in the downloaded archive in thebin
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) - 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).