# coneneko.billboard

class BillBoard: coneneko.unit.Unit;
  Vector position;
  Vector size;
  Vector color;
  Vector texCoordPosition;
  Vector texCoordSize;
  float x();
  float y();
  float width();
  float height();
  void x(float a);
  void y(float a);
  void width(float a);
  void height(float a);
  this(float x = -1, float y = -1, float width = 2, float height = 2, Vector color = (Color).WHITE);
  bool opIn_r(Vector point);
  BillBoard clone();
class ImageBoard: coneneko.billboard.BillBoard;
  this(string fileName, float x, float y, float width, float height, Vector color = (Color).WHITE);
  ImageBoard clone();
class TextBoard: coneneko.billboard.BillBoard;
  RenderState.blend=true が必要、textureのサイズは2のn乗(今のところ)
  this(string text, float x, float y, float width = 1.2, float height = 0.1, Vector color = (Color).WHITE, uint textureWidth = 512, uint textureHeight = 32, Font font = getDefault());
  this(uint widthLimit, string text, float x, float y, float width, float height, Vector color, uint textureWidth, uint textureHeight, Font font = getDefault());
    widthLimit以上で改行
    TODO texture size制限がなくなれば、widthLimitをtextureWidthにして、このthisは削除できる
  TextBoard clone();
  char[] text();
  void text(char[] a);
class PointSprite: coneneko.billboard.BillBoard;
  this(Vector position, float size = 1, Vector color = (Color).WHITE);
    sizeはピクセル単位
class LineRectangle: coneneko.billboard.BillBoard;
  this(float x, float y, float width, float height, Vector color);

Page generated by Ddoc.