PicoPicoGameEngine

Quick Links

テクスチャーオブジェクト

テクスチャーオブジェクトはテクスチャーを管理するオブジェクトです。PNG画像の読み込みに対応しています。

pptex

:load()

テクスチャを読み込みます。

使用できる画像はPNG画像のみです。

texture = pptex:load(name,[texture option])
texture : texture object

読み込んだテクスチャオブジェクト、テクスチャーオブジェクトは次のようなテーブルになっています。

{
  index=[テクスチャの番号],
  name=[読み込んだときのファイル名],
  size=[テクスチャのサイズ],
  imageSize=[テクスチャの画像サイズ]
}

sizeはテクスチャのサイズ、imageSizeは元の画像のサイズになります。

name : string

読み込むテクスチャのファイル名。

[texture option] : object

読み込むテクスチャのオプション。

{
  linear=[バイリニアフィルタをかけるかどうかのフラッグ],
  wrap_s=[エッジ処理],
  wrap_t=[エッジ処理]
}

linearはバイリニアフィルタを行うかどうかの指定です。デフォルトはfalse。 wrap_s,wrap_tは以下の指定を文字列で行います。

  • linear
  • repeat
  • clamp_to_edge

効果はOpenGLのGL_CLAMP_TO_EDGE, GL_LINEAR, GL_REPEAT に従います。

g=ppgraph
tex=pptex:load("characters.png")
function start()
  g:put(0,0,2,tex)
  g:locate(0,32)
  g:print(
    "index="..tex.index)
  g:move(0,16)
  g:print(
    "name="..tex.name)
  g:move(0,16)
  g:print(
    "width="..tex.size.width..
    ",height="..tex.size.height)
  g:move(0,16)
end

:delete()

テクスチャーを破棄します。

pptex:delete(texture)
texture : texture object

破棄するテクスチャオブジェクト。

:default()

デフォルトテクスチャーを設定します。

引数のない場合は設定値を返します。

pptex:default(texture)
texture = pptex:default()
texture : texture object

デフォルトテクスチャオブジェクトです。

:count()

読み込んだテクスチャーの数を返します。

count = pptex:count()
count : number

使用しているテクスチャの数。

:textures()

使用しているテクスチャオブジェクトの配列を返します。

texture_list = pptex:textures()
texture_list : object

使用しているテクスチャオブジェクトの配列。

pptex:load("characters.png")
pptex:load("sample.png")
ppfont:set("half")
function start()
  local t = pptex:textures()
  for k,v in pairs(t) do
    ppgraph:print(
      k..","..v.name)
    ppgraph:move(0,16)
  end
end