private void Init(uint name, float width, float height, bool hasMipMaps, float scale, bool premultipliedAlpha)
{
if (width <= 0.0f)
throw new InvalidOperationException("invalid width");
if (height <= 0.0f)
throw new InvalidOperationException("invalid height");
if (scale <= 0.0f)
throw new InvalidOperationException("invalid scale");
_name = name;
_width = width;
_height = height;
_mipmaps = hasMipMaps;
_scale = scale;
_premultipliedAlpha = premultipliedAlpha;
_repeat = true; // force first update
Repeat = false;
_smoothing = (TextureSmoothing)9999999; // force first update
Smoothing = TextureSmoothing.Bilinear;
}