Skip to content

Commit

Permalink
Bug Fix: ManjaroLinux - Builds
Browse files Browse the repository at this point in the history
There is no need to specify the alignment allocator which can
only be used by complex types. The GFXColor and QVector types
are not sufficiently complex to support it; the Vector type
probably is not as well.

For now at least, just use `auto` for the iterators
  • Loading branch information
BenjamenMeyer committed Oct 30, 2023
1 parent b4a6976 commit f7243dc
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 16 deletions.
26 changes: 13 additions & 13 deletions engine/src/gfx/particle.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,9 @@ void ParticleTrail::ChangeMax( unsigned int max )



static inline void UpdateColor( std::vector< QVector, aligned_allocator<QVector> > &vloc,
const std::vector< Vector, aligned_allocator<Vector> > &vvel,
std::vector< GFXColor, aligned_allocator<GFXColor> > &vcol,
static inline void UpdateColor( std::vector< QVector > &vloc,
const std::vector< Vector > &vvel,
std::vector< GFXColor > &vcol,
const GFXColor& fadetime,
const float time )
{
Expand Down Expand Up @@ -284,7 +284,7 @@ void ParticleTrail::DrawAndUpdate()
// Must sort
distances.clear();
distances.reserve(nparticles);
{ for (std::vector<QVector, aligned_allocator<QVector> >::const_iterator it = particleLoc.begin(); it != particleLoc.end(); ++it) {
{ for (auto it = particleLoc.begin(); it != particleLoc.end(); ++it) {
distances.push_back((campos - *it).MagnitudeSquared());
} }
IndexCompare<float, unsigned short> dcomp(distances);
Expand Down Expand Up @@ -362,15 +362,15 @@ void ParticleTrail::DrawAndUpdate()
}

// Remove dead particles anywhere
vector< Vector, aligned_allocator<Vector> >::iterator v = particleVel.begin();
vector< QVector, aligned_allocator<QVector> >::iterator loc = particleLoc.begin();
vector< GFXColor, aligned_allocator<GFXColor> >::iterator col = particleColor.begin();
auto v = particleVel.begin();
auto loc = particleLoc.begin();
auto col = particleColor.begin();
auto sz = particleSize.begin();
while ( col != particleColor.end() ) {
if ( !(col->a > minalpha) ) {
vector< Vector, aligned_allocator<Vector> >::iterator vlast = particleVel.end() - 1;
vector< QVector, aligned_allocator<QVector> >::iterator loclast = particleLoc.end() - 1;
vector< GFXColor, aligned_allocator<GFXColor> >::iterator collast = particleColor.end() - 1;
auto vlast = particleVel.end() - 1;
auto loclast = particleLoc.end() - 1;
auto collast = particleColor.end() - 1;
auto szlast = particleSize.end() - 1;
if (col != collast) {
*v = *vlast;
Expand Down Expand Up @@ -403,9 +403,9 @@ void ParticleTrail::AddParticle( const ParticlePoint &P, const Vector &V, float
return;

if (particleLoc.size() > maxparticles) {
vector< Vector, aligned_allocator<Vector> >::iterator vel = particleVel.begin();
vector< QVector, aligned_allocator<QVector> >::iterator loc = particleLoc.begin();
vector< GFXColor, aligned_allocator<GFXColor> >::iterator col = particleColor.begin();
auto vel = particleVel.begin();
auto loc = particleLoc.begin();
auto col = particleColor.begin();
auto sz = particleSize.begin();
size_t off = ( (size_t) rand() ) % particleLoc.size();
vel += off;
Expand Down
6 changes: 3 additions & 3 deletions engine/src/gfx/particle.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,9 @@ struct ParticlePoint
*/
class ParticleTrail
{
std::vector< Vector, aligned_allocator<Vector> > particleVel;
std::vector< QVector, aligned_allocator<QVector> > particleLoc;
std::vector< GFXColor, aligned_allocator<GFXColor> > particleColor;
std::vector< Vector > particleVel;
std::vector< QVector > particleLoc;
std::vector< GFXColor > particleColor;
std::vector< float > particleSize;
std::vector< float > particleVert;
std::vector< float > distances;
Expand Down

0 comments on commit f7243dc

Please sign in to comment.