Springhead
An open source physics engine for virtual reality, haptics and motion generation.
クラス GRDevice

グラフィックス描画の実装 

#include <GRRender.h>

GRDeviceに対する継承グラフ

Public メソッド

 SPR_OBJECTDEF_ABST (GRDevice)
 
virtual void Init ()
 
virtual void GetClearColor (Vec4f &color)
 背景色の取得
 
virtual void SetClearColor (const Vec4f &color)
 
virtual void SetMaterial (const GRMaterialDesc &mat)
 
virtual void SetMaterial (const GRMaterialIf *mat)
 
virtual void PushLight (const GRLightDesc &light)
 
virtual void PushLight (const GRLightIf *light)
 
- Public メソッド inherited from GRRenderBase
 SPR_OBJECTDEF_ABST (GRRenderBase)
 
virtual void SetViewport (Vec2f pos, Vec2f sz)
 
virtual Vec2f GetViewportPos ()
 
virtual Vec2f GetViewportSize ()
 
virtual void ClearBuffer (bool color, bool depth)
 
virtual void SwapBuffers ()
 バッファの入れ替え(表示)
 
virtual void BeginScene ()
 
virtual void EndScene ()
 
virtual void SetViewMatrix (const Affinef &afv)
 
virtual void GetViewMatrix (Affinef &afv)
 
virtual void SetProjectionMatrix (const Affinef &afp)
 カレントの投影行列をafpで置き換える
 
virtual void GetProjectionMatrix (Affinef &afp)
 
virtual void PushProjectionMatrix ()
 
virtual void PopProjectionMatrix ()
 
virtual void SetModelMatrix (const Affinef &afw)
 
virtual void GetModelMatrix (Affinef &afw)
 
virtual void MultModelMatrix (const Affinef &afw)
 カレントのモデル行列に対してafwを掛ける
 
virtual void PushModelMatrix ()
 
virtual void PopModelMatrix ()
 
virtual void ClearBlendMatrix ()
 
virtual void SetBlendMatrix (const Affinef &afb, unsigned int id=0)
 
virtual void SetVertexFormat (const GRVertexElement *e)
 
virtual void DrawDirect (GRRenderBaseIf::TPrimitiveType ty, void *vtx, size_t count, size_t stride=0)
 
virtual void DrawIndexed (GRRenderBaseIf::TPrimitiveType ty, GLuint *idx, void *vtx, size_t count, size_t stride=0)
 
virtual void DrawArrays (GRRenderBaseIf::TPrimitiveType ty, GRVertexArray *arrays, size_t count)
 
virtual void DrawArrays (GRRenderBaseIf::TPrimitiveType ty, size_t *idx, GRVertexArray *arrays, size_t count)
 
virtual void DrawPoint (Vec3f p)
 
virtual void DrawLine (Vec3f p0, Vec3f p1)
 
virtual void DrawSpline (Vec3f p0, Vec3f v0, Vec3f p1, Vec3f v1, int ndiv)
 
virtual void DrawArrow (Vec3f p0, Vec3f p1, float rbar, float rhead, float lhead, int slice, bool solid)
 
virtual void DrawBox (float sx, float sy, float sz, bool solid=true)
 
virtual void DrawSphere (float radius, int slices, int stacks, bool solid=true)
 
virtual void DrawEllipsoid (Vec3f radius, int slices, int stacks, bool solid=true)
 
virtual void DrawCone (float radius, float height, int slice, bool solid=true)
 
virtual void DrawCylinder (float radius, float height, int slice, bool solid=true, bool cap=true)
 
virtual void DrawDisk (float radius, int slice, bool solid=true)
 
virtual void DrawCapsule (float radius, float height, int slice=20, bool solid=true)
 
virtual void DrawRoundCone (float rbottom, float rtop, float height, int slice=20, bool solid=true)
 
virtual void DrawCurve (const Curve3f &curve)
 
virtual void DrawGrid (float size, int slice, float lineWidth)
 
virtual int StartList ()
 
virtual void EndList ()
 
virtual void DrawList (int i)
 
virtual void ReleaseList (int i)
 
virtual void SetFont (const GRFont &font)=0
 
virtual void DrawFont (Vec2f pos, const std::string str)
 
virtual void DrawFont (Vec3f pos, const std::string str)
 
virtual void SetMaterial (int matname)
 
virtual void SetMaterial (int matname, float alpha)
 
virtual void SetPointSize (float sz, bool smooth=false)
 
virtual void SetLineWidth (float w, bool smooth=false)
 
virtual void PopLight ()
 
virtual int NLights ()
 
virtual void SetDepthWrite (bool b)
 
virtual void SetDepthTest (bool b)
 
virtual void SetDepthFunc (GRRenderBaseIf::TDepthFunc f)
 
virtual void SetAlphaTest (bool b)
 
virtual void SetAlphaMode (GRRenderBaseIf::TBlendFunc src, GRRenderBaseIf::TBlendFunc dest)
 
virtual void SetLighting (bool l)
 
virtual void SetTexture2D (bool b)
 
virtual void SetTexture3D (bool b)
 
virtual void SetBlending (bool b)
 
virtual unsigned int LoadTexture (const std::string filename)
 
virtual void SetTextureImage (const std::string id, int components, int xsize, int ysize, int format, const char *tb)
 
virtual GRShaderIfCreateShader (const GRShaderDesc &sd)
 
virtual bool SetShader (GRShaderIf *sh)
 
virtual void SetShadowLight (const GRShadowLightDesc &sld)
 
virtual void EnterShadowMapGeneration ()
 
virtual void LeaveShadowMapGeneration ()
 
- Public メソッド inherited from Object
 SPR_OBJECTDEF (Object)
 クラス名の取得などの基本機能の実装
 
ObjectIfGetObjectIf ()
 
const ObjectIfGetObjectIf () const
 
virtual void Print (std::ostream &os) const
 デバッグ用の表示
 
virtual void PrintShort (std::ostream &os) const
 
virtual ObjectIfCreateObject (const IfInfo *info, const void *desc)
 オブジェクトの作成
 
virtual size_t NChildObject () const
 子オブジェクトの数
 
virtual ObjectIfGetChildObject (size_t pos)
 子オブジェクトの取得
 
virtual const ObjectIfGetChildObject (size_t pos) const
 
virtual bool AddChildObject (ObjectIf *o)
 子オブジェクトの追加
 
virtual bool DelChildObject (ObjectIf *o)
 子オブジェクトの削除
 
virtual void Clear ()
 すべての子オブジェクトの削除とプロパティのクリア
 
virtual void Loaded (UTLoadContext *)
 ファイルロード後に一度呼ばれる。ノードの設定に使う。 呼び出し順序に依存する処理がしたい場合は、UTLoadHandeler と UTLoadTask を使うと良い。 
 
virtual void Setup ()
 ノードの設定をするための関数
 
virtual bool GetDesc (void *desc) const
 デスクリプタの読み出し(コピー版)
 
virtual void SetDesc (const void *desc)
 デスクリプタの設定
 
virtual const void * GetDescAddress () const
 デスクリプタの読み出し(参照版)
 
virtual size_t GetDescSize () const
 デスクリプタのサイズ
 
virtual bool GetState (void *state) const
 状態の読み出し(コピー版)
 
virtual const void * GetStateAddress () const
 状態の読み出し(参照版)
 
virtual void GetStateR (char *&state)
 状態の再帰的な読み出し
 
virtual void SetState (const void *state)
 状態の設定
 
virtual void SetStateR (const char *&state)
 状態の再帰的な設定
 
virtual bool WriteStateR (std::ostream &fout)
 状態のファイルへの書き出し
 
virtual bool WriteState (std::string fileName)
 
virtual bool ReadStateR (std::istream &fin)
 状態の読み込み
 
virtual bool ReadState (std::string fileName)
 
virtual size_t GetStateSize () const
 状態のサイズ
 
virtual void ConstructState (void *m) const
 メモリブロックを状態型に初期化
 
virtual void DestructState (void *m) const
 状態型をメモリブロックに戻す
 
virtual void DumpObjectR (std::ostream &os, int level=0) const
 メモリデバッグ用。単純にツリーのオブジェクトをファイルにダンプする。
 

Protected 変数

Vec4f clearColor
 背景色
 

Additional Inherited Members

- Protected メソッド inherited from Object
virtual void PrintHeader (std::ostream &os, bool bClose) const
 開き括弧
 
virtual void PrintChildren (std::ostream &os) const
 子オブジェクトをPrint
 
virtual void PrintFooter (std::ostream &os) const
 閉じ括弧
 
virtual void BeforeGetDesc () const
 GetDesc()の前に呼ばれる
 
virtual void AfterSetDesc ()
 SetDesc()のあとに呼ばれる
 
- Static Protected メソッド inherited from Object
static void ConstructState (ObjectIf *o, char *&s)
 sをoのStateとして初期化する.
 
static void DestructState (ObjectIf *o, char *&s)
 sをoのStateからメモリブロックに戻す.
 

このクラスの説明は次のファイルから生成されました: