+
+ // What size do we need for this atlas' edge buffer ( assume RGBA pixel format )?
+ uint32_t neededEdgeSize = ( blockWidth > blockHeight ? blockWidth : blockHeight ) << 2;
+
+ // Is the current edge buffer large enough?
+ if ( neededEdgeSize > mEdgeBufferSize )
+ {
+ delete[] mEdgeBuffer;
+ mEdgeBuffer = new PixelBuffer[ neededEdgeSize ];
+ memset( mEdgeBuffer, 0, neededEdgeSize );
+ mEdgeBufferSize = neededEdgeSize;
+ }
+
+ atlasDescriptor.mEdgeX = BufferImage::New( mEdgeBuffer, blockWidth, PIXEL_PADDING, pixelformat );
+ atlasDescriptor.mEdgeY = BufferImage::New( mEdgeBuffer, PIXEL_PADDING, blockHeight, pixelformat );
+