This crate is part of the [`zng`](https://github.com/zng-ui/zng?tab=readme-ov-file#crates) project.
## Cargo Features
This crate provides 32 feature flags, 0 enabled by default.
#### `"ipc"`
Enables pre-build and init as view-process.
If this is enabled all communication with the view is serialized/deserialized,
even in same-process mode.
Only enables in `cfg(not(target_os = "android"))` builds.
#### `"software"`
Enables software renderer.
Recommended for all apps. The software renderer is used as fallback in case the hardware renderer stops working.
#### `"hardware"`
Enables GPU renderer.
Requires OpenGL 3.2 driver. Recommended for most apps. Uses ~20MB more RAM.
#### `"optimized_shaders"`
Compile with optimized shaders source code.
When built with this and running with `use_optimized_shaders: true` on the GPU the shaders will
compile slightly faster on first usage. Compiled shaders performance is the same between optimized and unoptimized.
Adds up to 1.8MB to the executable.
#### `"embed_licenses"`
Embed third party licenses.
Needs `cargo-about` and Internet connection during build.
Not enabled by default. Note that `"view_prebuilt"` always embeds licenses.
#### `"android_game_activity"`
Standard Android backend that requires a build system that can compile Java or Kotlin and fetch Android dependencies.
See `https://docs.rs/winit/latest/winit/platform/android/` for more details.
#### `"android_native_activity"`
Basic Android backend that does not require Java.
See `https://docs.rs/winit/latest/winit/platform/android/` for more details.
#### `"image_bmp"`
Enable BMP image decoder and encoder.
#### `"image_dds"`
Enable DDS image decoder.
#### `"image_exr"`
Enable EXR image decoder and encoder.
#### `"image_ff"`
Enable Farbfeld image decoder and encoder.
#### `"image_gif"`
Enable GIF image decoder and encoder.
#### `"image_hdr"`
Enable Radiance HDR image decoder and encoder.
#### `"image_ico"`
Enable ICO image decoder and encoder.
#### `"image_cur"`
Enable CUR image decoder and encoder.
#### `"image_jpeg"`
Enable JPEG image decoder and encoder.
#### `"image_png"`
Enable PNG image decoder and encoder.
#### `"image_pnm"`
Enable PNM image decoder and encoder.
#### `"image_qoi"`
Enable QOI image decoder and encoder.
#### `"image_tga"`
Enable TGA image decoder and encoder.
#### `"image_tiff"`
Enable TIFF image decoder and encoder.
#### `"image_webp"`
Enable WEBP image decoder.
#### `"image_all"`
Enable all image decoders and encoders.
#### `"image_meta_exif"`
Enable EXIF metadata copy in images.
Note that EXIF is always used when decoding, this feature enables copying the raw blob
as the "image_meta_exif" metadata.
#### `"image_meta_icc"`
Enable ICC Profile metadata copy in images.
Note that images are always color managed when decoding, this feature enabled copying the raw profile
as the "image_meta_icc" metadata.
#### `"image_fast_downscale"`
Enable SIMD accelerated image downscaling.
This is much faster and produces higher quality downscaled images, but adds ~1MB of binary code.
#### `"audio_mp3"`
Enable MP3 audio decoder and encoder.
#### `"audio_mp4"`
Enable MP4 audio decoder and encoder.
#### `"audio_flac"`
Enable FLAC audio decoder and encoder.
#### `"audio_vorbis"`
Enable MP3 audio decoder and encoder.
#### `"audio_wav"`
Enable WAV audio decoder and encoder.
#### `"audio_all"`
Enable all audio decoders and encoders.