# coneneko.unit

render stateはdetachで値を修復しておく。 textureやshaderなど、他に影響を与えるものもdetachで修復しておく。 他に影響を与えないものは、修復しなくてもいい。

interface Unit;
  abstract void attach();
  abstract void detach();
interface TimeIterator;
  abstract void opPostInc();
    ++
class UnitDecorator: coneneko.unit.Unit;
  this(Unit base);
class ViewPort: coneneko.unit.Unit;
  RenderTargetの扱いが難しくなるので、できるだけ使わないでください
  int x;
  int y;
  int width;
  int height;
  this(int width, int height);
  this(Vector size);
class RenderState: coneneko.unit.Unit;
  bool cullFace;
  uint cullFaceMode;
    GL_FRONT GL_BACK GL_FRONT_AND_BACK
  bool depthTest;
  bool blend;
  int blendSrc;
  int blendDst;
  RenderState clone();
bool emptyGlError();
  invariant { assert(emptyGlError); }
void throwIfGlError(char[] file, long line);
class Clear: coneneko.unit.Unit;
  this(Vector color = create(), uint mask = MASK_DEFAULT);
class MultMatrix: coneneko.unit.Unit;
  this(Matrix matrix = (Matrix).identity);
  void opAssign(Matrix a);
    =
class EnableDisableBase(alias T): Unit;
  this(uint cap);
alias Enable;
alias Disable;
class QuadricObj: coneneko.unit.Unit;
  protected GLUquadric* handle;
  Vector color;
  GLenum drawStyle;
    GLU_FILL GLU_LINE GLU_SILHOUETTE GLU_POINT
  GLenum normals;
    GLU_NONE GLU_FLAT GLU_SMOOTH
  GLenum orientation;
    GLU_OUTSIDE GLU_INSIDE
  GLboolean textureCoords;
    GL_TRUE GL_FALSE
  this(Vector color);
  void draw();
class Sphere: coneneko.unit.QuadricObj;
  GLdouble radius;
  GLint slices;
  GLint stacks;
  this(Vector color = (Color).WHITE, GLdouble radius = 10, GLint slices = 16, GLint stacks = 16);
class Cylinder: coneneko.unit.QuadricObj;
  GLdouble baseRadius;
  GLdouble topRadius;
  GLdouble height;
  GLint slices;
  GLint stacks;
  this(Vector color = (Color).WHITE, GLdouble baseRadius = 5, GLdouble topRadius = 4, GLdouble height = 10, GLint slices = 16, GLint stacks = 16);
class Disk: coneneko.unit.QuadricObj;
  GLdouble innerRadius;
  GLdouble outerRadius;
  GLint slices;
  GLint loops;
  this(Vector color = (Color).WHITE, GLdouble innerRadius = 5, GLdouble outerRadius = 10, GLint slices = 16, GLint loops = 16);
class PartialDisk: coneneko.unit.Disk;
  GLdouble startAngle;
  GLdouble sweepAngle;
  this(Vector color = (Color).WHITE, GLdouble innerRadius = 5, GLdouble outerRadius = 10, GLint slices = 16, GLint loops = 16, GLdouble startAngle = 0, GLdouble sweepAngle = 180);

Page generated by Ddoc.