Another danger here is the duplicated code `this->mLifespan - this->mLifespanVariance`.
If, for example, during refactoring, someone forgot to update both copies of the code:

    this->mLifespanTerm[0] = this->mLifespan - this->mLifespanVariance + offset < 0 ? 0 : this->mLifespan - this->mLifespanVariance; // Whoops! Forgot to add offset the second time!

Now you have a very subtle bug (lifespan is negative) whenever (lifespan - variance) > offset.
Or if you added offset to the second one but not the first, it would inexplicably clip to 0 for certain combinations of seemingly valid input values.