release write locks after writing

This commit is contained in:
David Rose 2007-06-22 23:34:31 +00:00
parent 8c67180085
commit 79474cfdf6
3 changed files with 17 additions and 6 deletions

View File

@ -25,12 +25,13 @@
////////////////////////////////////////////////////////////////////
BaseParticleFactory::
BaseParticleFactory() :
_lifespan_base(1.0),
_lifespan_spread(0.0),
_mass_base(1.0f),
_mass_spread(0.0f),
_terminal_velocity_base(PhysicsObject::_default_terminal_velocity),
_terminal_velocity_spread(0.0f),
_lifespan_base(1.0),
_lifespan_spread(0.0) {
_terminal_velocity_spread(0.0f)
{
}
////////////////////////////////////////////////////////////////////
@ -40,12 +41,13 @@ BaseParticleFactory() :
////////////////////////////////////////////////////////////////////
BaseParticleFactory::
BaseParticleFactory(const BaseParticleFactory &copy) :
_lifespan_base(copy._lifespan_base),
_lifespan_spread(copy._lifespan_spread),
_mass_base(copy._mass_base),
_mass_spread(copy._mass_spread),
_terminal_velocity_base(copy._terminal_velocity_base),
_terminal_velocity_spread(copy._terminal_velocity_spread),
_lifespan_base(copy._lifespan_base),
_lifespan_spread(copy._lifespan_spread) {
_terminal_velocity_spread(copy._terminal_velocity_spread)
{
}
////////////////////////////////////////////////////////////////////

View File

@ -733,6 +733,7 @@ render(pvector< PT(PhysicsObject) >& po_vector, int ttl_particles) {
for (i = 0; i < anim_count; ++i) {
for (j = 0; j < _anim_size[i]; ++j) {
_sprites[i][j]->clear_vertices();
_sprite_writer[i][j].clear();
// We have to reassign the GeomVertexData and GeomPrimitive to
// the Geom, and the Geom to the GeomNode, in case it got

View File

@ -56,6 +56,14 @@ public:
aspect_ratio(copy.aspect_ratio) {
};
void clear() {
vertex.clear();
color.clear();
rotate.clear();
size.clear();
aspect_ratio.clear();
}
GeomVertexWriter vertex;
GeomVertexWriter color;
GeomVertexWriter rotate;