quicktex/docs/reference/s3tc.rst

104 lines
3.2 KiB
ReStructuredText
Raw Normal View History

2021-03-15 09:49:34 +00:00
s3tc module
===========
2021-03-21 04:19:23 +00:00
The s3tc module provides encoders and decoders for the common S3 Texture Compression formats. BC1-5 encoding is done
internally using a modified version of rgbcx.h.
2021-03-15 09:49:34 +00:00
bc1 module
----------
.. automodule:: quicktex.s3tc.bc1
2021-03-21 04:19:23 +00:00
.. autoclass:: BC1Encoder(BlockEncoder)
.. automethod:: __init__
.. automethod:: set_level
.. autoproperty:: color_mode(self) -> ColorMode
.. autoproperty:: interpolator(self) -> quicktex.s3tc.interpolator.Interpolator
.. autoclass:: quicktex.s3tc.bc1::BC1Encoder.ColorMode
**Advanced API**
Additional properties are provided for finer-grained control over quality and performance
.. autoproperty:: error_mode(self) -> ErrorMode
.. autoproperty:: endpoint_mode(self) -> EndpointMode
.. autoproperty:: two_ls_passes(self) -> bool
.. autoproperty:: two_ep_passes(self) -> bool
.. autoproperty:: two_cf_passes(self) -> bool
.. autoproperty:: exhaustive(self) -> bool
.. autoproperty:: search_rounds(self) -> int
.. autoproperty:: orderings(self) -> tuple[int, int]
.. autoproperty:: power_iterations(self) -> int
.. autoattribute:: max_power_iterations
.. autoattribute:: min_power_iterations
.. autoclass:: quicktex.s3tc.bc1::BC1Encoder.EndpointMode
.. autoclass:: quicktex.s3tc.bc1::BC1Encoder.ErrorMode
.. autoclass:: BC1Decoder(BlockDecoder)
.. automethod:: __init__
.. autoproperty:: interpolator(self) -> quicktex.s3tc.interpolator.Interpolator
.. autoproperty:: write_alpha(self) -> bool
bc3 module
----------
.. automodule:: quicktex.s3tc.bc3
.. autoclass:: BC3Encoder(BlockEncoder)
.. automethod:: __init__
.. autoproperty:: bc1_encoder(self) -> quicktex.s3tc.bc1.BC1Encoder
.. autoproperty:: bc4_encoder(self) -> quicktex.s3tc.bc4.BC4Encoder
.. autoclass:: BC3Decoder(BlockDecoder)
.. automethod:: __init__
.. autoproperty:: bc1_decoder(self) -> quicktex.s3tc.bc1.BC1Decoder
.. autoproperty:: bc4_decoder(self) -> quicktex.s3tc.bc4.BC4Decoder
bc4 module
----------
.. automodule:: quicktex.s3tc.bc4
.. autoclass:: BC4Encoder(BlockEncoder)
.. automethod:: __init__
.. autoproperty:: channel(self) -> int
.. autoclass:: BC4Decoder(BlockDecoder)
.. automethod:: __init__
.. autoproperty:: channel(self) -> int
bc5 module
----------
.. automodule:: quicktex.s3tc.bc5
.. autoclass:: BC5Encoder(BlockEncoder)
.. automethod:: __init__
.. autoproperty:: bc4_encoders(self) -> tuple[quicktex.s3tc.bc4.BC4Encoder]
.. autoproperty:: channels(self) -> tuple[int, int]
.. autoclass:: BC5Decoder(BlockDecoder)
.. automethod:: __init__
.. autoproperty:: bc4_decoders(self) -> tuple[quicktex.s3tc.bc4.BC4Decoder]
.. autoproperty:: channels(self) -> tuple[int, int]
interpolator module
-------------------
.. automodule:: quicktex.s3tc.interpolator
:members:
.. autoclass:: Interpolator
.. autoclass:: InterpolatorRound(Interpolator)
.. autoclass:: InterpolatorNvidia(Interpolator)
.. autoclass:: InterpolatorAMD(Interpolator)