| 190 | } |
| 191 | |
| 192 | RenderItem* LayerNode::addToRenderItemSecondQueue(ITexture* _texture, bool _manualRender) |
| 193 | { |
| 194 | // order is not important in second queue |
| 195 | // use first buffer with same texture or empty buffer |
| 196 | for (auto& secondRenderItem : mSecondRenderItems) |
| 197 | { |
| 198 | if (secondRenderItem->getTexture() == _texture) |
| 199 | { |
| 200 | return secondRenderItem; |
| 201 | } |
| 202 | if (secondRenderItem->getNeedVertexCount() == 0) |
| 203 | { |
| 204 | secondRenderItem->setTexture(_texture); |
| 205 | |
| 206 | return secondRenderItem; |
| 207 | } |
| 208 | } |
| 209 | |
| 210 | // not found, create new |
| 211 | RenderItem* item = new RenderItem(); |
| 212 | item->setTexture(_texture); |
| 213 | item->setManualRender(_manualRender); |
| 214 | mSecondRenderItems.push_back(item); |
| 215 | |
| 216 | return item; |
| 217 | } |
| 218 | |
| 219 | void LayerNode::attachLayerItem(ILayerItem* _item) |
| 220 | { |
nothing calls this directly
no test coverage detected