DXRuby 1.0.3  t@X}jA

PD͂߂

PDP Љ

DXRuby̓IuWFNgwXNvgłRubyDirectXׂ̊gCułB
RubygWindowspANVQ[Ȃǂ邱Ƃł܂B
̕DXRubỹt@X}jAƂȂĂ܂B
`[gAȂǂSourceForge.jp̃vWFNgWikiQƂĂB

vWFNgWiki
http://sourceforge.jp/projects/dxruby/wiki/FrontPage

D3DX9_??.dllăG[oꍇ́A}CN\tg̃TCgDirectXŐVł_E[hĂB
  ǂĂłȂ́AX^eBbNNłpӂĂ܂̂ŁAvWFNgWeby[W_E[hĂB

vWFNgWeb
http://dxruby.sourceforge.jp/

܂AvWFNgWebɂ͏Փ˔胉CuDXRubyExtensionAwi`惉CuDXRubyMapAOggVorbisĐCuVoxRubygbpvox.rbuĂ܂B
  ȕ܂Aprɍ킹ĂgB

PDQ CXg[@

_E[hDRubyWJADXRuby.soinstall.rbfBNgɂԂŁAinstall.rbs܂B
artonActiveScriptRubyĝ̓_uNbNOKłB


QDNX^W[\

DXRubyɂWindowW[/InputW[/ImageNX/SoundNX/SoundEffectNX/FontNX܂B

    WindowW[EEEDXRubỹC䃂W[BEBhEƃXN[B
    InputW[EEE̓W[BpbhL[{[h̓͂B
    ImageNXEEE摜̃f[^NXB
    SoundNXEEEBGMAʉOt@CǂݍňNXB
    SoundEffectNXEEEvOŊȒPȉ𐶐NXB
    FontNXEEEtHgNXB


RD{Iȋ@\̊ȈՃt@X

DXRubẙ{@\܂B
ȒPȃQ[ł΁Aꂮ炢o΍邱ƂłƎv܂B
eNX/W[̑S@\͌̕ŐĂ܂̂ŁAQƂĂB


RDP WindowW[
EBhEAOtBbN`AʍXVȂǂsƂł܂B

Window.loop do
  ...
end

  C[vɂȂ܂B
  sƃEBhE(640*480pixel)AꂽI܂B
  ̃[v͕b60s(60FPS)ɂȂ悤A҂Ԃ܂B

Window.draw( x, y, image )

  G̕`܂B
  xy͍WŁAオ(0,0)ɂȂ܂B
  imageImageNX̃IuWFNgłB

Window.drawFont( x, y, string, font )

  ̕`܂B
  string͕`悷镶AfontFontIuWFNgw肵ĂB


RDQ InputW[
L[{[hEQ[pbh̓͂܂B

Input.x
Input.y

  Q[pbhEL[{[h̕L[̓͂AXWYW̑(-1, 0, 1̂ꂩ)ŕԂ܂B

Input.padDown?( button_code )
Input.padPush?( button_code )

  pbh̃{^Ԃtrue(Ă)/false(ĂȂ)ŕԂ܂B
  padDown?͉Ă邠ApadPush?͉uԂ̂݁AtrueɂȂ܂B
  button_codeɎg萔͈ȉ̂̂łB

  P_UPipbh̕L[^L[{[h̃J[\L[̏j
  P_LEFTipbh̕L[^L[{[h̃J[\L[̍j
  P_RIGHTipbh̕L[^L[{[h̃J[\L[̉Ej
  P_DOWNipbh̕L[^L[{[h̃J[\L[̉j
  P_BUTTON0ipbh̃{^O^L[{[ĥyj
  P_BUTTON1ipbh̃{^P^L[{[ĥwj
  P_BUTTON2ipbh̃{^Q^L[{[ĥbj
  P_BUTTON3`15ipbh̃{^R`PT^L[{[h蓖Ėj

Input.mousePosX
Input.mousePosY

  }EX̍WԂ܂B

Input.mouseDown?( button )
Input.mousePush?( button )

  }EX̃{^Ԃtrue/falseŕԂ܂B
  mouseDown?͉Ă邠AmousePush?͉uԂ̂݁AtrueɂȂ܂B
  buttonM_LBUTTONAM_RBUTTONłꂼꍶ{^AE{^łB

Input.keyDown?( key )
Input.keyPush?( key )

  L[{[h̉Ԃtrue/falseŕԂ܂B
  keyDown?͉Ă邠AkeyPush?͉uԂ̂݁AtrueɂȂ܂B
  key̓L[R[hŁA\IȂ͈̂ȉ̂̂łBȊO͌̏ڍ׃t@XQƂĂB
  K_F1iF1L[j
  K_ZiZL[j
  K_SPACEiSpaceL[j
  K_ESCAPEiEscL[j
  K_RETURNiEnterL[j


RDR ImageNX
摜\NXłB

Image.load( filename )

  filenamẻ摜ǂݍ݁AImageIuWFNg𐶐ĕԂ܂B
  T|[gt@C`jpgpngAbmp̑łAJ[L[͑ΉĂȂ̂œF̂GpngɂĂB
Image.slice( image, x, y, width, height )  DXRuby1.0.3 new!

  imageImage.loadœǂݍImageIuWFNgAxAyAwidthAheightɍWƃTCYnƁẢ̕摜ImageIuWFNgԂ܂B
  1t@Cɕ̊G܂Ƃ߂ꍇɎg܂B


RDS SoundNX
f[^\NXłB

Sound.new( filename )

  filenamẽt@Cǂݍ݁ASoundIuWFNg𐶐ĕԂ܂B
  t@C`.midiBGMpj.waviʉpjɑΉĂ܂B

Sound#play

  ʉƂčĐ܂B
  ɂłĐł܂B
  1ĐI܂B

Sound#bgmplay

  BGMƂă[vĐ܂B

Sound#Stop

  ~܂B


RDT FontNX
tHg\NXłB
Window.drawFonẗƂĎgp܂B

Font.new( size[, fontname] )

  sizẽ͕sNZŎw肵ĂB
  fontname̓tHgŁAȂ"lr "Ǝw肵܂iԂ͔pXy[XjB
  OԈĂ"lr SVbN"wɂȂ悤łB





-----

SDNX/W[̑S@\Eڍ׃t@X

DXRuby̑S@\܂B

SDP WindowW[
EBhEAOtBbN`AʍXVȂǂsƂł܂B

Window.loop do
  ...
end

  C[vɂȂ܂B
  sƃftHgݒł̓EBhE(640*480pixel)AꂽI܂B
  ̃[v͕b60s(60FPS)ɂȂ悤A҂Ԃ܂B

Window.draw( x, y, image[, z] )

  G̕`܂B
  xy͍WŁAオ(0,0)ɂȂ܂B
  imageImageNX̃IuWFNgłB
  z͕`揇ŁAɂȂ܂B}CiXg܂B
  ȗ0ɂȂAl̏ꍇ͍ŏdraŵԉɂȂ܂B

Window.drawScale( x, y, image, scalex, scaley[, centerx[, centery[, z]]] )

  cÅg嗦w肵ĕ`悵܂B
  1{Ŏg܂B
  -1ݒ肷ƍE]Ac-1ݒ肷Ə㉺]̊G`ł܂B

Window.drawRot( x, y, image, angle[, centerx[, centery[, z]]] )

  ]pxƒSw肵ĕ`悵܂B
  angle(px)0ƂāAvɑĂ360ň܂B
  center(S_)͉摜̍(0,0)Ƃ摜̉]Sʒu̎wŁAȗƉ摜̒SɂȂ܂B

Window.drawAlpha( x, y, image, alpha[, z] )

  At@lw肵ĕ`悵܂B
  ͈͂0(Sɓ)255(Sɕs)܂łłB

Window.drawAdd( x, y, image[, z] )

  Z`܂B

Window.drawSub( x, y, image[, z] )  DXRuby1.0.3 new!

  Z`܂B

Window.drawEx( x, y, image[, hash] )  DXRuby1.0.3 update!

  gk]Zɂł܂B
  hashɂ͈ȉ̃L[wł܂B
  :scalex  EEE̊g嗦
  :scaley  EEEc̊g嗦
  :centerx  EEE]Ag̒S_
  :centery  EEE]Ag̒S_
  :alpha  EEEAt@l(0`255)
  :add  EEEZ邩ǂtrue/falseŕ\iIɏ\łBȂׂblendL[gpĂBj
  :blend  EEE:alphaA:addA:add2A:subō@w肵܂Bȗ:alphaƂȂ܂B
                :add̓\[XɃAt@lA:add2͔wi255-At@lKp܂B
  :z  EEE`揇w

Window.drawFont( x, y, string, font[, hash] )

  ̕`܂B
  string͕`悷镶AfontFontIuWFNgw肵ĂB

  tHgɂdrawExƓ̃GtFNg@\܂B
  hashɂ͈ȉ̃L[wł܂B
  :scalex  EEE̊g嗦
  :scaley  EEEc̊g嗦
  :centerx  EEE]Ag̒S_BȗƈԍɂȂ܂B
  :centery  EEE]Ag̒S_BȗƈԏɂȂ܂B
  :alpha  EEEAt@l
  :add  EEEZ邩ǂtrue/falseŕ\
  :z  EEE`揇w
  :color  EEEz[R, G, B]Aꂼ0`255Aȗ[255, 255, 255]AɂȂ܂B

Window.getScreenShot( filename[, format] )

  XN[Vbgt@Cɕۑ܂B
  format͕ۑ`ŁAFORMAT_JPGAFORMAT_BMP̂ǂꂩw肵ĂB
  ȗFORMAT_JPGɂȂ܂B

Window.fps

  ݂̉ʂ̍XVpx(1bԂɉXVĂ邩)Ԃ܂B

Window.getLoad

  ׂ݂̏Ŏ擾܂B
  fps=Ŏw肵FPSł1t[̂AǂꂾԂgĂ邩\Ă܂B

Window.openFilename( filter, title )

  t@CI[v_CAO\܂B
  t@C̕񂪕ԂĂ܂B
  filterɂ[["ׂẴt@C(*.*)", "*.*"]["JPGt@C(*.jpg)", "*.jpg"]]̂悤Ȕzݒ肵܂B
  title̓_CAOɃ^Cgo[ɕ\镶ݒ肵܂B
  LZnilԂ܂B

Window.saveFilename( filter, title )

  t@CZ[u_CAO\܂B
  t@C̕񂪕ԂĂ܂B
  filterɂ[["ׂẴt@C(*.*)", "*.*"]["JPGt@C(*.jpg)", "*.jpg"]]̂悤Ȕzݒ肵܂B
  title̓_CAOɃ^Cgo[ɕ\镶ݒ肵܂B
  LZnilԂ܂B

Window.create  DXRuby1.0.3 new!

  EBhE쐬܂BWindow.loop̏߂ɓĂ܂̂ŁAWindow.loopg킸ɎŃQ[[vgݗĂƂgĂB

Window.sync  DXRuby1.0.3 new!

  Window.fps=Ŏw肳ꂽfpsɂȂ悤ɃEFCg܂BWindow.loop̒œĂ܂̂ŁAWindow.loopg킸ɎŃQ[[vgݗĂƂgĂB

Window.update  DXRuby1.0.3 new!

  ʂXV܂BWindow.loop̒œĂ܂̂ŁAWindow.loopg킸ɎŃQ[[vgݗĂƂgĂB

Window.x=val

  EBhE̕\ʒuw肵܂B
  Window.loop\bhĂяoOɐݒ肵ĂB
  \ʒuݒs킸Window.loop\bhĂяoꍇAOSftHgʒuɐݒ肳܂B

Window.y=val

  EBhE̕\ʒuw肵܂B
  Window.loop\bhĂяoOɐݒ肵ĂB
  \ʒuݒs킸Window.loop\bhĂяoꍇAOSftHgʒuɐݒ肳܂B

Window.width=val

  ʃTCY()w肵܂B
  Window.loop\bhĂяoOɐݒ肵ĂB
  TCYݒs킸Window.loop\bhĂяoꍇA640sNZɐݒ肳܂B

Window.height=val

  ʃTCY(c)w肵܂B
  Window.loop\bhĂяoOɐݒ肵ĂB
  TCYݒs킸Window.loop\bhĂяoꍇA480sNZɐݒ肳܂B

Window.caption=val

  ^Cgo[̃LvVwł܂B
  ݒs킸Window.loop\bhĂяoꍇAuNo TitlevƂȂ܂B

Window.scale=val

  EBhẺʃTCYɑ΂g嗦w肵܂B
  c䗦Kp܂B
  widthAheightŎw肵lɁA̒l|̂ۂ̃EBhẼTCYƂȂ܂B
  ݒs킸Window.loop\bhĂяoꍇA1{ɂȂ܂B

Window.windowed=val

  EBhE[h/tXN[[h̎ws܂B
  truew肷ƃEBhE[hŁAfalseŃtXN[[hɂȂ܂B
  ݒs킸Window.loop\bhĂяoꍇAEBhE[hɂȂ܂B
  tXN[[h60fpsŒƂȂ܂B

Window.fps=val

  ʂ̍XVpx(1bԂɉXV邩)w肵܂B
  ݒs킸Window.loop\bhĂяoꍇA60fpsɐݒ肳܂B
  dčXVpxۂĂȂꍇAIɕ`XLbv܂B
  nil܂0w肷ƃEFCg̍ōƂȂ܂B

Window.frameskip=val

  R}邩ǂw肵܂B
  truew肷ƁAfps=Ŏw肵FPSɏԂɍȂꍇA1t[`揈Ȃ܂B
  `ȂĂłfps=̓Ԋu郂[hłB
  falsew肷ƁAfps=Ŏw肵FPSɏԂɍȂĂ\Ȍ̑xœ삵܂B
  ̏ꍇAFPS͍Ȃ܂AQ[ŜxȂ܂B
  w肵ȂfalseɂȂ܂B

Window.bgcolor=val

  ʂ̃NAit[Iɂ܂jɎgFw肵܂B
  [r, g, b]̔zn܂B

Window.minfilter=val  DXRuby1.0.3 new!
Window.magfilter=val  DXRuby1.0.3 new!

  Window.scaledrawExscalex/yL[ŊgEkꍇɎgptB^I܂B
  minfilter͏kAmagfilter͊g厞łB
  w\Ȓ萔͈ȉ̂̂łB
  TEXF_POINTEEEPgEktB^
  TEXF_LINEAREEE`ԃtB^
  TEXF_GAUSSIANQUADEEE4-TvKEXtB^
  ȗƐ`ԃtB^ƂȂ܂B


SDQ InputW[
L[{[hEQ[pbh̓͂܂B

Input.x( pad_number )
Input.y( pad_number )

  pbh̕L[̓͂AXWYW̑(-1, 0, 1̂ꂩ)ŕԂ܂B
  pad_number͏ȗ0(pbhO̓L[{[hjɂȂ܂B

Input.keyDown?( key_code )
Input.keyPush?( key_code )

  L[{[h̃L[̉Ԃtrue(Ă)/false(ĂȂ)ŕԂ܂B
  keyDown?͉Ă邠AkeyPush?͉uԂ̂݁AtrueɂȂ܂B
  key_codeɎg萔͈ȉ̂̂łB

  K_ESCAPE
  K_TAB
  K_RETURNitL[Enterj
  K_LCONTROL
  K_LSHIFT
  K_LMENUiALTL[j
  K_SPACE
  K_AiAt@xbg낢j
  K_1itL[̐낢j
  K_F1it@NVL[낢j
  K_NUMPAD0ieL[̐낢j
  K_NUMPADENTER
  K_UP
  K_LEFT
  K_RIGHT
  K_DOWN


Input.padDown?( button_code[, pad_number] )
Input.padPush?( button_code[, pad_number] )

  pbh̃{^Ԃtrue(Ă)/false(ĂȂ)ŕԂ܂B
  padDown?͉Ă邠ApadPush?͉uԂ̂݁AtrueɂȂ܂B
  pad_number͏ȗ0(pbhO̓L[{[hjɂȂ܂B
  button_codeɎg萔͈ȉ̂̂łB

  P_UP
  P_LEFT
  P_RIGHT
  P_DOWN
  P_BUTTON0i{^PT܂Łj

  pad_number0̎AP_BUTTON0ZAP_BUTTON1XAP_BUTTON2C蓖ĂĂ܂B

Input.setRepeat( wait, interval )

  keyPush?ApadPush?\bhAI[gs[g[hɂ܂B
  wait͏߂̓͂ĂAs[gJn܂ł̎ԁit[j\܂B
  interval̓s[gJnẮA͂ONɂȂԊuit[jłB
  1ɂƖt[́A܂keyDown?/padDown?ƓɂȂ܂B
  0ɂƉłB

Input.mousePosX
Input.mousePosY

  }EX̍WԂ܂B

Input.mouseDown?( button )
Input.mousePush?( button )

  }EX̃{^Ԃtrue/falseŕԂ܂B
  mouseDown?͉Ă邠AmousePush?͉uԂ̂݁AtrueɂȂ܂B
  buttonM_LBUTTONAM_RBUTTONłꂼꍶ{^AE{^łB

Input.mouseWheelPos
Input.mouseWheelPos=val

  }EX̃zC[ʒuݒ܂͎擾܂B

Input.mouseEnable=val

  }EXJ[\EBhEɂꍇɁAJ[\`悷ǂw肵܂B
  trueŕ`Afalseŕ`悵ȂɂȂ܂B
  ltruełB

Input.update  DXRuby1.0.3 new!

  ͏XV܂B
  Window.loop̒œĂ܂̂ŁAWindow.loopg킸ɎŃQ[[vgݗĂƂɂgĂB
  ʏfalseԂ܂AWindow鑀삪ꂽƂtrueԂ܂B


SDR ImageNX
摜\NXłB

Image.new( width, height[, color] )

  width()/height()ŕ\TCÝASsNZFImageIuWFNg𐶐ĕԂ܂B
  colori[a, r, g, b]ꂼO`QTT̔złjw肷ƑŜ̐Fŏ܂B

Image.load( filename[, x[, y[, width[, height]]]] )  DXRuby1.0.3ňςĂ܂

  filenamẻ摜ǂݍ݁AImageIuWFNg𐶐ĕԂ܂B
  x/y/width/heightw肷Ƃ̂̕ݐ؂oImageIuWFNg𐶐܂B
  T|[gt@C`jpgpngAbmp̑łAJ[L[͑ΉĂȂ̂œF̂GpngɂĂB
Image.slice( image, x, y, width, height )  DXRuby1.0.3 new!

  imageImage.loadœǂݍImageIuWFNgAxAyAwidthAheightɍWƃTCYnƁA̕ImageIuWFNgԂ܂B
  1t@Cɕ̊G܂Ƃ߂ꍇɎg܂B

Image.loadToArray( filename, xcount, ycount )

  filenamẻ摜ǂݍ݁AEcꂼxcountAycountłƉ肵ĎŕA
  ォEɌImageIuWFNg̔z𐶐ĕԂ܂B
  T|[gt@C`jpgpngAbmp̑łAJ[L[͑ΉĂȂ̂œF̂GpngɂĂB

Image.createFromArray( width, height, array )

  Fi[z񂩂ImageIuWFNg𐶐ĕԂ܂B
  zalpha, red, green, bluêSsNẐׂłB
  )32~32sNZ̔lp[255, 255, 255, 255] * 32 * 32Ǝw肵܂B

Image#[x, y]

ImageIuWFNg̊YsNZ̐FzŎ擾܂B
z[a, r, g, b]ƂȂ܂B
ꂼ0`255͈̔͂łB

Image#[x, y]=color

ImageIuWFNg̊YsNZɐFݒ肵܂B
color͔zŁA[a, r, g, b]Ǝw肵܂B
ꂼ0`255͈̔͂łB

Image#.compare(x, y, color)

ImageIuWFNg̊YsNZ̐Fcolorƈv邩ǂtrue/falseŕԂ܂B
color͔zŁA[a, r, g, b]Ǝw肵܂B
ꂼ0`255͈̔͂łB

Image#line(x1, y1, x2, y2, color)

ImageIuWFNg(x1,y1)-(x2,y2)ɐ`悵܂B

Image#box(x1, y1, x2, y2, color)
Image#boxFill(x1, y1, x2, y2, color)  DXRuby1.0.3 new!

ImageIuWFNg(x1,y1)-(x2,y2)͈̔͂hԂ܂B
Image#box͏IɓhԂȂlp̕`ɂȂ\łBboxFillg悤ɂĂB

Image#circle(x, y, r, color)

ImageIuWFNg(x,y)𒆐SƂar̉~`܂B

Image#circleFill(x, y, r, color)

ImageIuWFNg(x,y)𒆐SƂar̉~`AhԂ܂B

Image#fill(color)  DXRuby1.0.3 new!

ImageIuWFNg̑ŜcolorœhԂ܂B

Image#copyRect(x, y, image[, x1[, y1[, width[, height]]]] )  DXRuby1.0.3 new!

self̃IuWFNgx/ÿʒuɁAimageŎw肵IuWFNgx1/y1/width/heightŎw肵Rs[܂B
l𖳎PRs[łB

Image#draw(x, y, image[, x1[, y1[, width[, height]]]] )  DXRuby1.0.3 new!

self̃IuWFNgx/ÿʒuɁAimageŎw肵IuWFNgx1/y1/width/heightŎw肵Rs[܂B
llĔZ܂B

Image#drawFont(x, y, string, font[, color] )  DXRuby1.0.3 new!

self̃IuWFNgx/ÿʒuɁAfontŎw肵tHgIuWFNgstring݂܂B
color͐Fz[r, g, b]w肵ĂB
ȗ[255, 255, 255]̔ƂȂ܂B


SDS SoundNX
\NXłB

Sound.new( filename )

  filenamẽt@Cǂݍ݁ASoundIuWFNg𐶐ĕԂ܂B
  t@C`.midiBGMpj.waviʉpjɑΉĂ܂B

Sound#play

  ʉƂčĐ܂B
  ɂłĐł܂B
  1ĐI܂B

Sound#bgmplay

  BGMƂčĐ܂B
  startAloopstartAloopendAloopcount炩ߐݒ肵ĂƁA[vȂǂ\ƂȂĂ܂B

Sound#start=

  ĐJnʒuݒ肵܂B
  l0ŁA4P768łB

Sound#loopStart=
Sound#loopEnd=
Sound#loopCount=
  [v̊JnʒuƏIʒuA[v񐔂ݒ肵܂B
  JnʒuAIʒȕl0ŁA4P768łB
  [v񐔂͏l1łB

Sound#stop

  ̍Đ~߂܂B

Sound#setVolume( volume[, time] )

  {[ݒ肵܂B
  volume0`255ŁA255őłB
  l230ƂȂĂ܂B
  time݂͌̒lݒl܂ł̕ωɂ鎞ԂŁA~bPʂŎw肵܂B
  ȗ0iɕύXjƂȂ܂B


SDT SoundEffectNX
ʉ𐶐NXłB
`gŁAgƃ{[1msPʂŕω邱Ƃł܂B

SoundEffect.new( time[, wavetype[, resolution]] ) { ... }

  ʉ𐶐܂B
  time̓~bPʂ̎ԂłB
  ubŃA1~bƂ̎gƃ{[̕ωԂ܂B
  time̐Ă΂܂B
  ubNԂl͔zŁA[g, {[]ƂĂB
  g44.1kHz܂ŁA{[0ōő255܂łłB
  wavetype͊{g`̌`ŁAWAVE_SIN(TCg)AWAVE_SAW(mRMg)AWAVE_TRI(Opg)AWAVE_RECT(`g)wł܂B
  ȗƋ`gɂȂ܂B
  resolution͕\ŁAȗl1000(1b1000Ăяo)łB
  ő44100܂Ŏwł܂B

\bh

SoundEffect#play

  ʉĐ܂B
  ɂłĐł܂A1SoundEffectIuWFNg͓1Đł܂B
  1ĐI܂B

SoundEffect#stop

  ̍Đ~߂܂B


SDU FontNX
tHg\NXłB
Window.drawFonẗƂĎg܂B

Font.new( size[, fontname] )

  sizẽ͕sNZŎw肵ĂB
  fontname̓tHgŁAȂ"lr "Ǝw肵܂iԂ͔pXy[XjB
  OԈĂ"lr SVbN"wɂȂ悤łB
  sWindowsVXeɃCXg[ĂtHggp\łB


TDCZX

DXRuby0.0.9܂łLGPLRubyCZX̃fACZXłAƊɂ悤ƎvADXRuby1.0.0MITCZXɕύX܂B
0.0.9ȑOx[XɂĉꍇLGPL/RubyCZXƂȂ܂̂ŋCĂB

Yt̃TvXNvg͑SăpubNhCƂ܂BҐli͍sg܂B
̂܂܎gȂAȂA쌠\Ȃǈ؂܂̂łRɂǂB
Yt̉摜t@C݂͂̒앨ł̂ŁAȓ]ڂȂǂ͋֎~܂B


UDXV

2009/05/28 1.0.3 Image.loadύX
                 Window.createAWindow.updateAWindow.syncAWindow.minfilter=AWindow.magfilter=AWindow.setViewportA
                 Window.drawSubAImage.sliceAImage#copyRectAImage#drawAImage#drawFontAImage#boxFillAImage#fillA
                 Input.updateǉ
                 Window.drawEx:blendL[ǉ
                 RpC̍œKIvVL
                 Image#lineASYC
2009/05/18 1.0.2 Intel915/945V[Y̓OtBbNXgpPCœ삵ȂsC
2009/05/16 1.0.1 CXg[sC
2009/05/15 1.0.0 Ń[XACZXMITCZXɕύX

2009/05/09 0.0.9 GC׈AG[`FbNAEBhẼtH[JXOꂽ̏ǉ
2009/05/06 0.0.8 tHg`̌ʒǉAFPSC
2009/05/04 0.0.7 Image`D3DXSprite玩O`ɕύXĕ`搫\
2009/04/23 0.0.6 SoundNX̊e퐧@\ǉAZΉAL[̓I[gs[g@\ǉ
2009/04/19 0.0.5 SoundEffectNXǉ
2009/04/15 0.0.4 Image.newImage.loadɕύXAImage.new͓F݂̂̃C[W쐬֕ύXBInput.xxxPush?ǉ
2009/04/12 0.0.3 FontNXǉAImageIuWFNgҏW@\ǉ
2009/04/06 0.0.2 svȃ\bh폜Ȃǂ̊ȑfsASourceForge.jpɂČJ
2005/  0.0.1 vg^Cv
