| 205 | */ |
| 206 | |
| 207 | void* ParticleGroup::CreateParticles(unsigned int count) |
| 208 | { |
| 209 | if (count == 0) |
| 210 | return nullptr; |
| 211 | |
| 212 | if (m_particleCount + count > m_maxParticleCount) |
| 213 | return nullptr; |
| 214 | |
| 215 | std::size_t particlesIndex = m_particleCount; |
| 216 | m_particleCount += count; |
| 217 | |
| 218 | return &m_buffer[particlesIndex * m_particleSize]; |
| 219 | } |
| 220 | |
| 221 | /*! |
| 222 | * \brief Generates one particle |