| 171 | } |
| 172 | |
| 173 | void DrawNode::updateBlendState(CustomCommand& cmd) |
| 174 | { |
| 175 | backend::BlendDescriptor& blendDescriptor = cmd.getPipelineDescriptor().blendDescriptor; |
| 176 | blendDescriptor.blendEnabled = true; |
| 177 | if (_blendFunc == BlendFunc::ALPHA_NON_PREMULTIPLIED) |
| 178 | { |
| 179 | blendDescriptor.sourceRGBBlendFactor = backend::BlendFactor::SRC_ALPHA; |
| 180 | blendDescriptor.destinationRGBBlendFactor = backend::BlendFactor::ONE_MINUS_SRC_ALPHA; |
| 181 | blendDescriptor.sourceAlphaBlendFactor = backend::BlendFactor::SRC_ALPHA; |
| 182 | blendDescriptor.destinationAlphaBlendFactor = backend::BlendFactor::ONE_MINUS_SRC_ALPHA; |
| 183 | setOpacityModifyRGB(false); |
| 184 | } |
| 185 | else |
| 186 | { |
| 187 | blendDescriptor.sourceRGBBlendFactor = _blendFunc.src; |
| 188 | blendDescriptor.destinationRGBBlendFactor = _blendFunc.dst; |
| 189 | blendDescriptor.sourceAlphaBlendFactor = _blendFunc.src; |
| 190 | blendDescriptor.destinationAlphaBlendFactor = _blendFunc.dst; |
| 191 | setOpacityModifyRGB(true); |
| 192 | } |
| 193 | } |
| 194 | |
| 195 | void DrawNode::updateUniforms(const Mat4& transform, CustomCommand& cmd) |
| 196 | { |
nothing calls this directly
no test coverage detected