Skip to content

Maeyanie/ddsfs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7d37bc1 · May 26, 2018

History

36 Commits
Apr 27, 2018
May 25, 2018
Feb 19, 2018
May 25, 2018
Mar 1, 2018
Mar 1, 2018
May 25, 2018
May 26, 2018
May 26, 2018
May 24, 2018
Apr 25, 2018
Apr 25, 2018
May 25, 2018
Mar 1, 2018
Mar 1, 2018
May 26, 2018
Apr 27, 2018
May 24, 2018

Repository files navigation

DDSFS

Transparent DDS-Converting FUSE Filesystem

Originally designed for supporting JPEG X-Plane photoscenery, DDSFS combines the transparency of FUSE with the fast decoding of libjpeg-turbo and encoding of FastDXT. It is able to convert textures stored as small-sized .jpg files into game-friendly .dds files transparently during load.

Usage

ddsfs [options] <source path> <mount path>

In addition to the standard FUSE options, DDSFS recognizes:

Option Description
-o cache (default) Write encoded DDS files to the source path so they can be retrieved instantly later.
-o nocache DDS files are only stored in memory.
-o dxt1 (default) Produce DDS files as DXT1/DXT5.
-o rgb Produce DDS files as RGB/RGBA.
-o debug[=#] Writes status/debugging information. Values for # range from 1 to 3.

Windows

DDSFS can be used on Windows with the Dokan FUSE wrapper. A Cygwin binary is available from Jenkins.
It has been developed and tested with 1.1.0.2000 but may work with other versions.
Dokan can mount on either a path or a drive letter, and symbolic links can be used to redirect specific paths.

Formats

Currently supported formats:
.jpg to DXT1 or RGB
.webp to DXT1/DXT5 or RGBA

Performance

On my system, it will convert a 4096x4096 .jpg texture to .dds encoded with DXT1 in around 100 ms. In X-Plane 11, this gave me around a 3 minute initial load time in a photoscenery-covered area, and no noticible pauses when flying. Using .webp is significantly slower, it takes around 300 ms to convert a 4096x4096 file on my system.

About

Transparent DDS-Converting FUSE Filesystem

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages