■共通オブジェクト操作(Obj_)
オブジェクト操作用の共通関数です。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


Obj_Delete(引数:1)
 1) real:オブジェクトID
指定したオブジェクトを削除します。


Obj_IsDeleted(引数:1、返り値:bool)
 1) real:オブジェクトID
指定したオブジェクトが削除済みか調べます。
削除されている場合はtrueを返します。


Obj_SetVisible(引数:2)
 1) real:オブジェクトID
 2) bool:表示可否(表示するならtrue)
オブジェクトの表示可否を設定します。
falseに設定すると非表示になります。


Obj_IsVisible(引数:1、返り値:bool)
 1) real:オブジェクトID
指定したオブジェクトの表示可否を取得します。
非表示の場合はfalseになります。


Obj_SetRenderPriority(引数:2)
 1) real:オブジェクトID
 2) bool:描画優先度(0.0-1.0)
オブジェクトの描画優先度を設定します。
0.0~1.0の間で設定します。


Obj_SetRenderPriorityI(引数:2)
 1) real:オブジェクトID
 2) bool:描画優先度(0-100)
オブジェクトの描画優先度を設定します。
0~100の間の整数で設定します。


Obj_GetRenderPriority(引数:1)
 1) real:オブジェクトID
オブジェクトの描画優先度を取得します。
0.0~1.0の間の値が返ります。


Obj_GetRenderPriorityI(引数:1)
 1) real:オブジェクトID
オブジェクトの描画優先度を設定します。
0~100の間の整数で返ります。


Obj_GetValue(引数:2)
 1) real:オブジェクトID
 2) char:キー(文字列)
オブジェクトに割りついている、キーに対応した値を取得します。


Obj_GetValueD(引数:3)
 1) real:オブジェクトID
 2) char:キー(文字列)
 3) デフォルト値(任意の型)
オブジェクトに割りついている、キーに対応した値を取得します。
キーに対応した値が存在しない場合、デフォルト値が返ります。


Obj_SetValue(引数:3)
 1) real:オブジェクトID
 2) char:キー(文字列)
 3) 値(任意の型)
キーに対応した任意の値をオブジェクトに割りつけます。


Obj_DeleteValue(引数:3)
 1) オブジェクトID
 2) キー(文字列)
 3) 値(任意の型)
オブジェクトに割りついている、キーに対応した値を削除します。


Obj_IsValueExists(引数:2)
 1) real:オブジェクトID
 2) char:キー(文字列)
オブジェクトに割りついている、キーに対応した値が存在している場合trueが返ります。


Obj_GetType(引数:1、返り値:real)
 1) real:オブジェクトID
オブジェクトの種別を返します。
  OBJ_PRIMITIVE_2D :2D空間自由変形オブジェクト
  OBJ_SPRITE_2D   :2D空間矩形オブジェクト(ObjSprite2D_を使用可能なオブジェクト)
  OBJ_SPRITE_LIST_2D:2D空間矩形リストオブジェクトObjSpriteList2D_を使用可能なオブジェクト)
  OBJ_PRIMITIVE_3D :3D空間自由変形オブジェクト
  OBJ_SPRITE_3D   :3D空間矩形オブジェクト(ObjSprite3D_を使用可能なオブジェクト)
  OBJ_MESH     :3Dメッシュオブジェクト(ObjMesh_を使用可能なオブジェクト)
  OBJ_TEXT      :テキストオオブジェクト(ObjText_を使用可能なオブジェクト)
  OBJ_SOUND     :音声オブジェクト(ObjSound_を使用可能なオブジェクト)
  OBJ_FILE_TEXT   :テキストファイルオブジェクト(ObjFileT_を使用可能なオブジェクト)
  OBJ_FILE_BINARY  :バイナリファイルオブジェクト(ObjFileB_を使用可能なオブジェクト)
  OBJ_PLAYER     :自機オブジェクト(ObjPlayer_を使用可能なオブジェクト)
  OBJ_SPELL      :自機スペルオブジェクト(ObjSpell_を使用可能なオブジェクト)
  OBJ_ENEMY      :敵ルオブジェクト(ObjEnemy_を使用可能なオブジェクト)
  OBJ_ENEMY_BOSS_SCENE:敵ボスシーンオブジェクト(ObjEnemyBossScene_を使用可能なオブジェクト)
  OBJ_SHOT      :通常弾オブジェクト(ObjShot_を使用可能なオブジェクト)
  OBJ_LOOSE_LASER  :射出型レーザーオブジェクト(ObjLaser_を使用可能なオブジェクト)
  OBJ_STRAIGHT_LASER:設置型レーザーオブジェクト(ObjStLaser_を使用可能なオブジェクト)
  OBJ_CURVE_LASER  :曲がるレーザーオブジェクト(ObjLaser_を使用可能なオブジェクト)
  OBJ_ITEM      :アイテムオブジェクト(ObjItem_を使用可能なオブジェクト)



■描画オブジェクト操作(ObjRender_)
描画オブジェクト操作用の共通関数です。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjRender_SetX(引数:2)
 1) real:オブジェクトID
 2) real:x座標
指定したオブジェクトのx座標を設定します。


ObjRender_SetY(引数:2)
 1) real:オブジェクトID
 2) real:y座標
指定したオブジェクトのy座標を設定します。


ObjRender_SetZ(引数:2)
 1) real:オブジェクトID
 2) real:z座標
指定したオブジェクトのz座標を設定します。


ObjRender_SetPosition(引数:4)
 1) real:オブジェクトID
 2) real:x座標
 3) real:y座標
 4) real:z座標
指定したオブジェクトのxyz座標を設定します。


ObjRender_SetAngleX(引数:2)
 1) real:オブジェクトID
 2) real:x角度(0-360)
指定したオブジェクトのx角度を設定します。


ObjRender_SetAngleY(引数:2)
 1) real:オブジェクトID
 2) real:y角度(0-360)
指定したオブジェクトのy角度を設定します。


ObjRender_SetAngleZ(引数:2)
 1) real:オブジェクトID
 2) real:z角度(0-360)
指定したオブジェクトのz角度を設定します。


ObjRender_SetAngleXYZ(引数:4)
 1) real:オブジェクトID
 2) real:x角度
 3) real:y角度
 4) real:z角度
指定したオブジェクトのxyz角度を設定します。


ObjRender_SetScaleX(引数:2)
 1) real:オブジェクトID
 2) real:x拡大率
指定したオブジェクトのx拡大率を設定します。
例えば2に設定すると、x方向が2倍に拡大されて描画されます。


ObjRender_SetScaleY(引数:2)
 1) real:オブジェクトID
 2) real:y拡大率
指定したオブジェクトのy拡大率を設定します。
例えば2に設定すると、y方向が2倍に拡大されて描画されます。


ObjRender_SetScaleZ(引数:2)
 1) real:オブジェクトID
 2) real:z拡大率
指定したオブジェクトのz拡大率を設定します。
例えば2に設定すると、z方向が2倍に拡大されて描画されます。


ObjRender_SetScaleXYZ(引数:4)
 1) real:オブジェクトID
 2) real:x拡大率
 3) real:y拡大率
 4) real:z拡大率
指定したオブジェクトのxyz拡大率を設定します。


ObjRender_SetColor(引数:4)
 1) real:オブジェクトID
 2) real:r色(0-255)
 3) real:g色(0-255)
 4) real:b色(0-255)
指定したオブジェクトの色合いを設定します。
全て255でテクスチャと同色になります。


ObjRender_SetColorHSV(引数:4)
 1) real:オブジェクトID
 2) real:色相 Hue(0-359)
 3) real:彩度 Saturation(0-255)
 4) real:明度 Value(0-255)
指定したオブジェクトの色合いをHSV(色相, 彩度, 明度)で設定します。


ObjRender_SetAlpha(引数:2)
 1) real:オブジェクトID
 2) real:α値(0-255)
指定したオブジェクトのα値を設定します。
0にした場合、透明になります。
この設定はObjRender_SetBlendTypeで加算合成を設定した場合は適応されません。
加算合成での色を透明にするにはObjRender_SetColorで各色に0を設定する必要があります。


ObjRender_SetBlendType(引数:2)
 1) real:オブジェクトID
 2) real:合成種別
  BLEND_ALPHA:通常の描画方法です。
  BLEND_ADD_RGB:RGBによる加算合成を行います。
  BLEND_ADD_ARGB:ARGBによる加算合成を行います。(α値が適応される加算合成)
  BLEND_MULTIPLY:乗算合成です。
  BLEND_SUBTRACT:減算合成です。
  BLEND_INV_DESTRGB:描画先の色を反転して合成します。

描画先への画像合成方法を設定します。


ObjRender_GetX(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのx座標を取得します。


ObjRender_GetY(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのy座標を取得します。


ObjRender_GetZ(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのz座標を取得します。


ObjRender_GetAngleX(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのx角度を取得します。


ObjRender_GetAngleY(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのy角度を取得します。


ObjRender_GetAngleZ(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのz角度を取得します。


ObjRender_GetScaleX(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのx拡大率を取得します。


ObjRender_GetScaleY(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのy拡大率を取得します。


ObjRender_GetScaleZ(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトのz拡大率を取得します。


ObjRender_GetBlendType(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトの合成種別を取得します。


ObjRender_SetZWrite(引数:2)
 1) real:オブジェクトID
 2) bool:zバッファ書き込み有無
指定したオブジェクトのzバッファ書き込み有無を設定します。


ObjRender_SetFogEnable(引数:2)
 1) real:オブジェクトID
 2) bool:フォグ反映有無
指定したオブジェクトのフォグ反映有無を設定します。
3D空間に配置する加算合成オブジェクトはfalseにします。
(3Dオブジェクトはデフォルトでtrueです。)


ObjRender_SetZTest(引数:2)
 1) real:オブジェクトID
 2) bool:z比較有無
指定したオブジェクトの描画時にz比較を行うか設定します。


ObjRender_SetPermitCamera(引数:2)
 1) real:オブジェクトID
 2) bool:カメラ有効有無
指定したオブジェクトの描画時にカメラ設定を有効にするか指定します。
falseの場合、描画優先度に関係なくカメラ効果が無効になります。



■頂点オブジェクト操作(ObjPrim_)
頂点オブジェクト操作用の関数です。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjPrim_Create(引数:1、返り値:real)
 1) real:オブジェクト種別
  OBJ_PRIMITIVE_2D :2D空間自由変形オブジェクト
  OBJ_SPRITE_2D   :2D空間矩形オブジェクト(ObjSprite2D_を使用可能なオブジェクト)
  OBJ_SPRITE_LIST_2D:2D空間矩形リストオブジェクト(ObjSpriteList2D_を使用可能なオブジェクト)
  OBJ_PRIMITIVE_3D :3D空間自由変形オブジェクト
  OBJ_SPRITE_3D   :3D空間矩形オブジェクト(ObjSprite3D_を使用可能なオブジェクト)

指定した描画用オブジェクトを作成します。


ObjPrim_SetPrimitiveType(引数:2)
 1) real:オブジェクトID
 2) real:プリミティブ種別
  PRIMITIVE_TRIANGLELIST:頂点データで順に現れる3つの頂点を結んだ三角形
  PRIMITIVE_TRIANGLESTRIP:最初の頂点からはしご上に連結した形状
  PRIMITIVE_TRIANGLEFAN:最初の頂点から放射状に伸びる点を連結した扇形の形状

指定したオブジェクトのプリミティブの種類を指定します。
PrimitiveType


ObjPrim_SetVertexCount(引数:2)
 1) real:オブジェクトID
 2) real:頂点数
指定したオブジェクトの頂点数を設定します。


ObjPrim_GetVertexCount(引数:1、返り値:real)
 1) real:オブジェクトID
指定したオブジェクトの頂点数を取得します。


ObjPrim_SetTexture(引数:2)
 1) real:オブジェクトID
 2) char:画像ファイルへのパス
指定したオブジェクトにテクスチャを設定します。
テクスチャが読み込まれていない場合はロードします。


ObjPrim_SetVertexPosition(引数:5)
 1) real:オブジェクトID
 2) real:頂点インデックス
 3) real:x座標
 4) real:y座標
 5) real:z座標
指定したオブジェクトの頂点座標を設定します。


ObjPrim_GetVertexPosition(引数:2、返り値:real配列)
 1) real:オブジェクトID
 2) real:頂点インデックス
指定したオブジェクトの頂点の座標を取得します。
[x, y, z]の配列で返ります。


ObjPrim_SetVertexUV(引数:4)
 1) real:オブジェクトID
 2) real:頂点インデックス
 3) real:テクスチャのx座標(0-1)
 4) real:テクスチャのy座標(0-1)
指定したオブジェクトの頂点座標にテクスチャの座標を関連付けます。
テクスチャの一番端を1とした座標を設定します。
例えば、テクスチャの幅が512で、頂点にテクスチャ座標256を設定したい場合0.5を設定します。
(通常面倒なので、ObjPrim_SetVertexUVTの使用を推奨します。)


ObjPrim_SetVertexUVT(引数:4)
 1) real:オブジェクトID
 2) real:頂点インデックス
 3) real:テクスチャのx座標
 4) real:テクスチャのy座標
指定したオブジェクトの頂点座標にテクスチャの座標を関連付けます。
事前にObjPrim_SetTextureでテクスチャを設定しておく必要があります。


ObjPrim_SetVertexColor(引数:5)
 1) real:オブジェクトID
 2) real:S頂点インデックス
 3) real:r色(0-255)
 4) real:g色(0-255)
 5) real:b色(0-255)
指定したオブジェクトの頂点座標の色を設定します。


ObjPrim_SetVertexAlpha(引数:3)
 1) real:オブジェクトID
 2) real:頂点インデックス
 3) real:α値(0-255)
指定したオブジェクトの頂点座標のα値を設定します。



■2D矩形オブジェクト操作(ObjSprite2D_)
2D矩形オブジェクト操作用の関数です。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjSprite2D_SetSourceRect(引数:5)
 1) real:オブジェクトID
 2) real:テクスチャ座標(左)
 3) real:テクスチャ座標(上)
 4) real:テクスチャ座標(右)
 5) real:テクスチャ座標(下)
指定したオブジェクトの描画元テクスチャ座標を設定します。


ObjSprite2D_SetDestRect(引数:5)
 1) real:オブジェクトID
 2) real:描画先座標(左)
 3) real:描画先座標(上)
 4) real:描画先座標(右)
 5) real:描画先座標(下)
指定したオブジェクトの描画先の矩形座標を設定します。


ObjSprite2D_SetDestCenter(引数:1)
 1) real:オブジェクトID
指定したオブジェクトの描画先の座標を、0座標を中心になるように割り当てます。
例えば、ObjSprite2D_SetSourceRectで設定した描画元が(24, 32) - (48, 56)の場合、
描画先は(-12,-7) - (12, 7)になります。



■2D矩形リストオブジェクト操作(ObjSpriteList2D_)
2D矩形リストオブジェクト操作用の関数です。

ObjSpriteList2D_SetSourceRectなどで描画設定を行った後、ObjSpriteList2D_AddVertexを呼び出すことで
描画する矩形を追加できます。
複数の2D矩形を描画するときに、複数のObjSprite2D_を作成不要にするためにあります。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjSpriteList2D_SetSourceRect(引数:5)
 1) real:オブジェクトID
 2) real:テクスチャ座標(左)
 3) real:テクスチャ座標(上)
 4) real:テクスチャ座標(右)
 5) real:テクスチャ座標(下)
指定したオブジェクトの描画元テクスチャ座標を設定します。


ObjSpriteList2D_SetDestRect(引数:5)
 1) real:オブジェクトID
 2) real:描画先座標(左)
 3) real:描画先座標(上)
 4) real:描画先座標(右)
 5) real:描画先座標(下)
指定したオブジェクトの描画先の矩形座標を設定します。


ObjSpriteList2D_SetDestCenter(引数:1)
 1) real:オブジェクトID
指定したオブジェクトの描画先の座標を、0座標を中心になるように割り当てます。
例えば、ObjSprite2D_SetSourceRectで設定した描画元が(24, 32) - (48, 56)の場合、
描画先は(-12,-7) - (12, 7)になります。


ObjSpriteList2D_AddVertex(引数:1)
 1) real:オブジェクトID
現在設定されている状態を、頂点情報として指定したオブジェクトに追加します。
(描画矩形が1つ増えます。)


ObjSpriteList2D_CloseVertex(引数:1)
 1) real:オブジェクトID
頂点の追加を終了します。
これ以降のObjRender_での座標変換は、追加した矩形全てに適応されます。


ObjSpriteList2D_ClearVertexCount(引数:1)
 1) real:オブジェクトID
指定したオブジェクトの頂点をクリアします。



■3D矩形オブジェクト操作(ObjSprite3D_)
3D矩形オブジェクト操作用の関数です。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjSprite3D_SetSourceRect(引数:5)
 1) real:オブジェクトID
 2) real:テクスチャ座標(左)
 3) real:テクスチャ座標(上)
 4) real:テクスチャ座標(右)
 5) real:テクスチャ座標(下)
指定したオブジェクトの描画元テクスチャ座標を設定します。


ObjSprite3D_SetDestRect(引数:5)
 1) real:オブジェクトID
 2) real:描画先座標(左)
 3) real:描画先座標(上)
 4) real:描画先座標(右)
 5) real:描画先座標(下)
指定したオブジェクトの描画先の矩形座標を設定します。


ObjSprite3D_SetSourceDestRect(引数:5)
 1) real:オブジェクトID
 2) real:描画先座標(左)
 3) real:描画先座標(上)
 4) real:描画先座標(右)
 5) real:描画先座標(下)
指定したオブジェクトの描画元テクスチャ座標を設定します。
また同時に指定したオブジェクトの描画先の座標を、0座標を中心になるように割り当てます。


ObjSprite3D_SetBillboard(引数:2)
 1) real:オブジェクトID
 2) bool:ビルボード設定
指定したオブジェクトをビルボードにするか設定します。>
ビルボードに設定されたオブジェクトは常にカメラ方向を向きます。



■3Dメッシュオブジェクト操作(ObjMesh_)
3Dメッシュオブジェクト操作用の関数です。
3Dオブジェクトをファイルから読み込み描画することができます。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjMesh_Create(引数:0、返り値:real[オブジェクトID])
3Dメッシュオブジェクトを作成します。


ObjMesh_Load(引数:2)
 1) real:オブジェクトID
 2) real:3Dオブジェクトファイルへのパス
3Dメッシュオブジェクトを読み込みます。
読み込めるのはメタセコイアファイル(.mqo)、エルフレイナファイル(.elem)のみです。
使用可能ファイル」を参照お願いします。


ObjMesh_SetColor(引数:4)
 1) real:オブジェクトID
 2) real:r色(0-255)
 3) real:g色(0-255)
 4) real:b色(0-255)
3Dメッシュオブジェクトの色を設定します。


ObjMesh_SetAlpha(引数:2)
 1) real:オブジェクトID
 2) real:α値(0-255)
3Dメッシュオブジェクトのα値を設定します。


ObjMesh_SetAnimation(引数:3)
 1) real:オブジェクトID
 2) char:アニメ名称
 3) real:アニメフレーム
3Dメッシュオブジェクトのアニメを設定します。
設定したアニメ名称のアニメフレームが描画されます。


ObjMesh_SetCoordinate2D(引数:2)
 1) real:オブジェクトID
 2) bool:2D座標指定(true/false)
3Dメッシュオブジェクトの座標指定を2D座標で指定可能にします。

この関数にtrueを渡すと、例えば表示位置が(300,200)に設定されている場合、
画面の(300,200)にオブジェクトが表示されます。



■テキストオブジェクト操作(ObjText_)
テキストオブジェクト操作用の関数です。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjText_Create(引数:0、返り値:real[オブジェクトID])
テキストオブジェクトを作成します。


ObjText_SetText(引数:2)
 1) real:オブジェクトID
 2) char:文字列
テキストオブジェクトに文字列を設定します。


ObjText_SetFontType(引数:2)
 1) real:オブジェクトID
 2) char:フォント名称
テキストオブジェクトにフォントを設定します。


ObjText_SetFontSize(引数:2)
 1) real:オブジェクトID
 2) real:フォントサイズ
テキストオブジェクトにフォントサイズを設定します。


ObjText_SetFontBold(引数:2)
 1) real:オブジェクトID
 2) bool:太字
テキストオブジェクト太字を設定します。


ObjText_SetFontColorTop(引数:4)
 1) real:オブジェクトID
 2) real:r色(0-255)
 3) real:g色(0-255)
 4) real:b色(0-255)
テキストオブジェクトの上側色を設定します。


ObjText_SetFontColorBottom(引数:4)
 1) オブジェクトID
 2) r色(0-255)
 3) g色(0-255)
 4) b色(0-255)
テキストオブジェクトの下側色を設定します。


ObjText_SetFontBorderWidth(引数:2)
 1) real:オブジェクトID
 2) real:縁取り太さ
テキストオブジェクトの縁取りの太さを設定します。


ObjText_SetFontBorderType(引数:2)
 1) real:オブジェクトID
 2) real:縁取り種別
  BORDER_NONE:縁取りを無効にします。
  BORDER_FULL:縁取りを有効にします。
  BORDER_SHADOW:右下方向強めの縁取りにします。

テキストオブジェクトの縁取りの種別を設定します。


ObjText_SetFontBorderColor(引数:4)
 1) real:オブジェクトID
 2) real:r色(0-255)
 3) real:g色(0-255)
 4) real:b色(0-255)
テキストオブジェクトの縁取り色を設定します。


ObjText_SetMaxWidth(引数:2)
 1) real:オブジェクトID
 2) real:最大幅
テキストオブジェクトの最大幅を設定します。
この幅を超える文字列は自動的に折り返されます。


ObjText_SetMaxHeight(引数:2)
 1) real:オブジェクトID
 2) real:最大高さ
テキストオブジェクトの最大幅を設定します。
この高さを超える文字列は描画されません。


ObjText_SetLinePitch(引数:2)
 1) real:オブジェクトID
 2) real:行ピッチ
テキストオブジェクトの行ピッチを設定します。
テキストが複数行にわたる場合の行間隔です。


ObjText_SetSidePitch(引数:2)
 1) real:オブジェクトID
 2) real:字間ピッチ
テキストオブジェクトの字間ピッチを設定します。
文字と文字の間の間隔です。。


ObjText_SetTransCenter(引数:3)
 1) real:オブジェクトID
 2) real:中心X座標
 3) real:中心Y座標
テキストオブジェクト回転/拡大の中心座標を設定します。


ObjText_SetAutoTransCenter(引数:2)
 1) real:オブジェクトID
 2) bool:有効/無効
テキストオブジェクト回転/拡大の中心座標を、自動的にテキストの中心に設定します。
デフォルトで有効です。


ObjText_SetHorizontalAlignment(引数:2)
 1) real:オブジェクトID
 2) real:表示位置
  ALIGNMENT_LEFT:左揃え
  ALIGNMENT_CENTER:中央揃え
  ALIGNMENT_RIGHT:右揃え
テキストオブジェクトの表示位置を指定します。デフォルトは左揃えです。
左揃え以外の場合は、ObjText_SetMaxWidthで幅を指定する必要があります。
(最大幅を指定しないと右端を判断できないため。)

例えば、右揃えにし右端X座標192で最大幅300にする場合、以下のように指定します。
 ObjText_SetHorizontalAlignment(obj, ALIGNMENT_RIGHT);
 ObjText_SetMaxWidth(obj, 300);
 ObjRender_SetX(obj, 192 - 300);


ObjText_SetSyntacticAnalysis(引数:2)
 1) real:オブジェクトID
 2) bool:タグ解析有効/無効
テキストオブジェクトのタグ解析有効/無効を指定します。デフォルトはtrueです。


ObjText_GetTextLength(引数:1、返り値:real)
 1) real:オブジェクトID
テキストオブジェクトの文字数を取得します。
半角文字は1文字、全角文字は2文字で換算されます。


ObjText_GetTextLengthCU(引数:1、返り値:real)
 1) real:オブジェクトID
テキストオブジェクトの文字数を取得します。
ルビや改行を除いてカウントします。
半角も全角も1文字でカウントします。


ObjText_GetTextLengthCUL(引数:1、返り値:real配列)
 1) real:オブジェクトID
テキストオブジェクトの行ごとの文字数を取得します。
ルビや改行を除いてカウントします。
半角も全角も1文字でカウントします。


ObjText_GetTotalWidth(引数:1、返り値:real)
 1) real:オブジェクトID
テキストオブジェクトの全行での幅を取得する。
全ての行の中の最大の幅が返ります。


ObjText_GetTotalHeight(引数:1、返り値:real)
 1) real:オブジェクトID
テキストオブジェクトの全行での高さを取得する。
全ての行の合計の高さが返ります。



■シェーダオブジェクト操作(ObjShader_)
シェーダオブジェクト操作用の関数です。
シェーダの説明については「」を参照お願いします。 各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjShader_Create(引数:0、返り値:real[オブジェクトID])
シェーダオブジェクトを生成します。
特定の描画優先度範囲に、シェーダを適用するために使用するオブジェクトです。


ObjShader_SetShaderF(引数:2、返り値:bool)
 1) real:オブジェクトID
 2) char:シェーダファイルへのパス
指定したオブジェクトにシェーダを設定します。
シェーダが読み込まれていない場合はロードします。
生成に成功した場合はtrueを返します。


ObjShader_SetShaderO(引数:2、返り値:bool)
 1) real:オブジェクトID
 2) real:シェーダオブジェクトID
指定したオブジェクトにシェーダオブジェクトでシェーダを設定します。


ObjShader_ResetShader(引数:1)
 1) real:オブジェクトID
指定したオブジェクトのシェーダを解除します。


ObjShader_SetTechnique(引数:2)
 1) real:オブジェクトID
 2) char:テクニック
実行するテクニックを設定します。


ObjShader_SetVector(引数:6)
 1) real:オブジェクトID
 2) char:パラメータ名
 3) real:float4.x
 4) real:float4.y
 5) real:float4.z
 6) real:float4.w
シェーダの実数値(float4)に値を設定します。


ObjShader_SetFloat(引数:3)
 1) real:オブジェクトID
 2) char:パラメータ名
 3) real:float値
シェーダの実数値(float)に値を設定します。


ObjShader_SetFloatArray(引数:3)
 1) real:オブジェクトID
 2) char:パラメータ名
 3) real:real配列
シェーダの実数値(float配列)に値を設定します。


ObjShader_SetTexture(引数:3)
 1) real:オブジェクトID
 2) char:パラメータ名
 3) char:テクスチャ名
シェーダにテクスチャを設定します。
マルチテクスチャを使用する場合に、呼び出します。



■音声オブジェクト操作(ObjSound_)
音声オブジェクト操作用の関数です。
各オブジェクトの関連性については「オブジェクト」を参照お願いします。


ObjSound_Create(引数:0、返り値:real[オブジェクトID])
音声オブジェクトを作成します。


ObjSound_Load(引数:2)
 1) real:オブジェクトID
 2) char:音声ファイルへのパス
音声ファイルを読み込みます。


ObjSound_Play(引数:1)
 1) real:オブジェクトID
音声を再生開始します。


ObjSound_Stop(引数:1)
 1) real:オブジェクトID
音声を停止します。


ObjSound_SetVolumeRate(引数:2)
 1) real:オブジェクトID
 2) real:ボリューム(0-100)
音声のボリュームを設定します。


ObjSound_SetPanRate(引数:2)
 1) real:オブジェクトID
 2) real:ボリューム(-100~100)
左右音声のボリューム割合を設定します。
0を指定すると、左右で均等なボリュームになります。
-100で左側最大、100で右側最大になります。


ObjSound_SetFade(引数:2)
 1) real:オブジェクトID
 2) real:1秒毎のボリューム変化割合(負の値でフェードアウト)
音声のフェードを設定します。


ObjSound_SetLoopEnable(引数:2)
 1) real:オブジェクトID
 2) bool:ループ有無(true/false)
音声のループ有無を設定します。


ObjSound_SetLoopTime(引数:3)
 1) real:オブジェクトID
 2) real:ループ開始時間(秒)
 3) real:ループ終端時間(秒)
音声のループ位置を時間で設定します。


ObjSound_SetLoopSampleCount(引数:3)
 1) real:オブジェクトID
 2) real:ループ開始サンプル数
 3) real:ループ終端サンプル数
音声のループ位置をサンプル数で設定します。


ObjSound_SetRestartEnable(引数:2)
 1) real:オブジェクトID
 2) bool:リスタート有無(true/false)
音声のリスタート有無を設定します。
trueの場合、ObjSound_Stop後にObjSound_Playで再生開始すると、前回停止時点から再生を開始します。
デフォルトfalseです。


ObjSound_SetSoundDivision(引数:2)
 1) real:オブジェクトID
 2) real:音声区分
  SOUND_BGM:BGM
  SOUND_SE:効果音

音声区分を設定します。


ObjSound_IsPlaying(引数:1、返り値:bool)
 1) オブジェクトID
音声を再生中の場合trueが返ります。


ObjSound_GetVolumeRate(引数:1、返り値:real)
 1) real:オブジェクトID
音量を0-100で返します。



■ファイルオブジェクト操作(ObjFile_)
ファイルオブジェクト操作用の関数です。
テキストファイルやバイナリファイルの読み込みに使用します。


ObjFile_Create(引数:1、返り値:real[オブジェクトID])
 1) real:ファイルオブジェクト種別
  OBJ_FILE_TEXT :テキストファイルオブジェクト
  OBJ_FILE_BINARY:バイナリファイルオブジェクト

指定したファイルオブジェクトを作成します。


ObjFile_Open(引数:2、返り値:bool)
 1) real:オブジェクトID
 2) char:ファイルパス
指定したファイルオブジェクトのファイルをオープンします。
この関数実行後に、ファイルの読み込みを行うことができます。
再度別ファイルをオープンするか、このオブジェクトを削除した場合に、
ファイルはクローズされます。
成功した場合はtrueが返ります。


ObjFile_OpenNW(引数:2、返り値:bool)
 1) real:オブジェクトID
 2) char:ファイルパス
指定したファイルオブジェクトのファイルを新規ファイルで書き込みオープンします。
この関数実行後に、ファイルの書き込みを行うことができます。
再度別ファイルをオープンするか、このオブジェクトを削除した場合に、
ファイルはクローズされます。
成功した場合はtrueが返ります。

指定したパスのディレクトリが存在しない場合は作成されます。
指定可能なパスは、th_dnh.exeのあるディレクトリ以下のディレクトリのみです。


ObjFile_Store(引数:1、返り値:bool)
 1) real:オブジェクトID
指定したファイルオブジェクトの書き込みを行います。
書き込み情報を指定した後最後に1度だけ呼び出します。


ObjFile_GetSize(引数:1、返り値:real)
 1) real:オブジェクトID
指定したファイルオブジェクトのファイルサイズが返ります。



■テキストファイルオブジェクト操作(ObjFileT_)
テキストファイルオブジェクト操作用の関数です。
使用例は以下です。

	let path = GetCurrentScriptDirectory() ~ "test.txt"; //ファイルパス

	let obj = ObjFile_Create(OBJ_FILE_TEXT); //オブジェクト生成
	ObjFile_Open(obj, path); //ファイルオープン

	let lineCount = ObjFileT_GetLineCount(obj);  //行数取得

	//すべての行を順次処理する
	ascent(iLine in 0 .. lineCount)
	{
		let line = ObjFileT_GetLineText(obj, iLine+1);
		// XXX
	}
	


ObjFileT_GetLineCount(引数:1、返り値:real)
 1) real:オブジェクトID
テキストファイルの行数を取得します。


ObjFileT_GetLineText(引数:2、返り値:char)
 1) real:ファイルオブジェクト種別
 2) real:行数 (テキストファイルの最初の行は「1」です。0ではありません。)
テキストファイルの指定した行の文字列を取得します。


ObjFileT_AddLine(引数:2)
 1) real:オブジェクトID
 2) real:ファイルに書き込む文字列
指定した文字列を、テキストファイルに1行分として書き込む準備をします。
この関数を実行しただけでは、ファイルには書き込まれません。
この関数を書き込み対象文字列の全行分呼び出し最後に
ObjFile_Storeを実行することでファイルに書き込まれます。


ObjFileT_ClearLine(引数:2)
 1) real:オブジェクトID
ObjFileT_AddLineで追加した行をクリアします。


ObjFileT_SplitLineText(引数:3、返り値:char配列)
 1) real:オブジェクトID
 2) real:行数 (テキストファイルの最初の行は「1」です。0ではありません。)
 3) real:切り分けに使用する文字列 (デリミタ)
テキストファイルの指定した行を指定した文字で分割した文字列配列を取得します。



■バイナリファイルオブジェクト操作(ObjFileB_)
バイナリファイルオブジェクト操作用の関数です。
数値はデフォルトではリトルエンディアンで読み込みます。
数値のバイトオーダーはObjFileB_SetByteOrderで設定可能です。
文字列を読み込む場合は、ObjFileB_SetCharacterCodeで文字コードを指定できます。

使用例は以下です。

	let path = GetCurrentScriptDirectory() ~ "test.dat"; //ファイルパス

	let obj = ObjFile_Create(OBJ_FILE_BINARY); //オブジェクト生成
	ObjFile_Open(obj, path); //ファイルオープン

	let vBool = ObjFileB_ReadBoolean(obj)); //1バイトをboolean型として読み込む
	let vByte = ObjFileB_ReadByte(obj)); //1バイト整数をreal型として読み込む
	let vShort = ObjFileB_ReadShort(obj)); //2バイト整数をreal型として読み込む
	let vInt = ObjFileB_ReadInteger(obj)); //4バイト整数をreal型として読み込む
	let vLong = ObjFileB_ReadLong(obj)); //8バイト整数をreal型として読み込む
	let vFloat = ObjFileB_ReadFloat(obj)); //4バイト実数をreal型として読み込む
	let vDouble = ObjFileB_ReadDouble(obj)); //8バイト実数をreal型として読み込む

	ObjFileB_SetCharacterCode(obj, CODE_UTF16LE); //文字コードをUTF16LEに設定
	let str = ObjFileB_ReadString(obj, 14); //14バイトを文字列(UTF16LE)として読み込む
	


ObjFileB_SetByteOrder(引数:2)
 1) real:オブジェクトID
 2) real:バイトオーダー種別
  ENDIAN_LITTLE:リトルエンディアン
  ENDIAN_BIG:ビッグエンディアン

数値を読み込む際のバイトオーダーを設定します。
デフォルト値は ENDIAN_LITTLE です。


ObjFileB_SetCharacterCode(引数:2)
 1) real:オブジェクトID
 2) real:文字コード
  CODE_ACP:ANSI (Shift-JIS)
  CODE_UTF8:UTF8
  CODE_UTF16LE:UTF16LE
  CODE_UTF16BE:UTF16BE

ObjFileB_ReadStringで文字列としてバイナリデータを読み込む場合の文字コードを指定します。
デフォルト値は CODE_ACP です。


ObjFileB_GetPointer(引数:1、返り値:real)
 1) real:オブジェクトID
現在のファイルポインタの位置を返します。


ObjFileB_Seek(引数:2)
 1) real:オブジェクトID
 2) real:ファイルポインタ位置
ファイルポインタの位置を設定します。


ObjFileB_ReadBoolean(引数:1、返り値:bool)
 1) real:オブジェクトID
1バイトをboolean型として読み込みます。
ファイルポインタは1バイト進みます。


ObjFileB_ReadByte(引数:1、返り値:real)
 1) real:オブジェクトID
1バイト整数をreal型として読み込みます。
ファイルポインタは1バイト進みます。


ObjFileB_ReadShort(引数:1、返り値:real)
 1) real:オブジェクトID
2バイト整数をreal型として読み込みます。
ファイルポインタは2バイト進みます。


ObjFileB_ReadInteger(引数:1、返り値:real)
 1) real:オブジェクトID
4バイト整数をreal型として読み込みます。
ファイルポインタは4バイト進みます。


ObjFileB_ReadLong(引数:1、返り値:real)
 1) real:オブジェクトID
8バイト整数をreal型として読み込みます。
ファイルポインタは8バイト進みます。


ObjFileB_ReadFloat(引数:1、返り値:real)
 1) real:オブジェクトID
4バイト実数をreal型として読み込みます。
ファイルポインタは4バイト進みます。


ObjFileB_ReadDouble(引数:1、返り値:real)
 1) real:オブジェクトID
8バイト実数をreal型として読み込みます。
ファイルポインタは8バイト進みます。


ObjFileB_ReadString(引数:2、返り値:char)
 1) real:オブジェクトID
 2) real:読み込むデータサイズ
指定したデータサイズ分を文字列として読み込みます。
ファイルポインタは指定したデータサイズ分進みます。