YSTest: YSLib::Drawing::Shaders::GPixelCompositor< _vDstAlphaBits, 1 > 模板结构体 参考

YSTest PreAlpha_b900_20201012 The YSLib Test Project

静态 Public 成员函数 | 所有成员列表
YSLib::Drawing::Shaders::GPixelCompositor< _vDstAlphaBits, 1 > 模板结构体 参考

`#include <YPixel.h>`

## 静态 Public 成员函数

template<typename _tDstAlpha , typename _tSrcAlpha >
YB_ATTR_nodiscard static YB_STATELESS yconstfn _tDstAlpha | CompositeAlphaOver (_tDstAlpha da, _tSrcAlpha sa)
| Alpha 组合 Alpha 分量。 更多...
template<typename _tDst , typename _tSrc , typename _tSrcAlpha , typename _tAlpha >
YB_ATTR_nodiscard static YB_STATELESS yconstfn _tDst | CompositeComponentOver (_tDst d, _tSrc s, _tSrcAlpha sa, _tAlpha a)
| Alpha 组合非 Alpha 分量。 更多...

## 详细描述

### template<size_t _vDstAlphaBits>
struct YSLib::Drawing::Shaders::GPixelCompositor< _vDstAlphaBits, 1 >

注解
  1 位源 Alpha 。

在文件 YPixel.h 第 134 行定义.

## 成员函数说明

## ◆ CompositeAlphaOver()

template<size_t _vDstAlphaBits>
template<typename _tDstAlpha , typename _tSrcAlpha >

YB_ATTR_nodiscard static YB_STATELESS yconstfn _tDstAlpha YSLib::Drawing::Shaders::GPixelCompositor< _vDstAlphaBits, 1 >::CompositeAlphaOver | ( | _tDstAlpha | da,
|  | _tSrcAlpha | sa
| ) |  |

inlinestatic

Alpha 组合 Alpha 分量。

a := sa + da * (1 - sa) = sa != 0 ? 1 : da

在文件 YPixel.h 第 144 行定义.

## ◆ CompositeComponentOver()

template<size_t _vDstAlphaBits>
template<typename _tDst , typename _tSrc , typename _tSrcAlpha , typename _tAlpha >

YB_ATTR_nodiscard static YB_STATELESS yconstfn _tDst YSLib::Drawing::Shaders::GPixelCompositor< _vDstAlphaBits, 1 >::CompositeComponentOver | ( | _tDst | d,
|  | _tSrc | s,
|  | _tSrcAlpha | sa,
|  | _tAlpha | a
| ) |  |

inlinestatic

Alpha 组合非 Alpha 分量。

a != 0 => c := sa * (s - d) / a + d = sa != 0 ? (s - d) / a + d : d

在文件 YPixel.h 第 164 行定义.

引用了 YSLib::a, CHRLib::d , 以及 CHRLib::s.

该结构体的文档由以下文件生成:

- YPixel.h