LightGameProgrammingとは?

Light Game Programming(以後 LGP)は、Windowsで簡単にゲームを作るためのプログラミング言語です。
例えば、画面にBMP画像を表示するプログラムは下の数行でOKです。

     CH1=G@SETUP( 640,480,8,1 )      // 画面設定
     CH2=G@CHRLOAD( ”ファイル名” )  // BMPロード
     G@CHRCOPY( CH2 , CH1 )          // 画面にコピー
     G@FLIP()                         // 画面表示 
     LOOP ; S@WAIT() ; LOOPEND        // これが無いと即効で終了する


LGPの特長を以下に示します。
  • BASICをベースにした言語を採用しているので簡単に言語に慣れることが出来るでしょう。
  • DirectXを簡単に利用できます。
  • LGPはフリーウェアであり、コンパイル結果の再配布を自由/無料で行えます。
  • 実行ファイル(EXE)を生成します。実行ファイルの実行にLGP本体や特別なDLLファイルは不要(DirectXは必要です)なので配布が簡単に行えます。
  • コンパイラなので実行ファイルの実行速度は高速です。下手にC言語で開発するよりも高速に動作します。
  • コンパイラなのにコンパイル速度はインタプリタ並に早いです。
  • プログラムは一般的なテキストエディタで書くことが出来ます。普段使い慣れているエディタをご使用できます。

次の例は32個のつながった球体をタコの足のようにウニョウニョさせるものです。
<<ダウンロード>>

DIM     BOX(32,4)
//画面設定
CH1=G@SETUP(640,480,16,1)
RANDSET(0)

LT1=G3@LIGHTMAKE(3,65536,65536,65536)
G3@ADD(LT1,0)
KYUMS = G3@MESHLOAD("Kyuutai.x")

FMB = 0
FOR I=0 TO 31
  FM = G3@FRMMAKE()
  G3@ADD( FM , FMB )
  G3@ADD( KYUMS , FM )
  IF I=0 THEN
    G3@FRMSETPOS( FM , 0 , 0 , 15.0 )
  ELSE
    G3@FRMSETPOS( FM , 3.0 , 0 , 0.0 )
  ENDIF
  G3@FRMSETCOLOR( FM , RAND()+0.5, RAND()+0.5, RAND()+0.5 )
  G3@FRMSETMATERIALMODE( FM , 2 )
  G3@FRMSETROTAUTO( FM , RAND() , RAND() , RAND() )
  BOX(I,0) = FM
  FMB = FM
NEXT

STIME=SYSTIME()/1000
LOOP
  //描画
  G@CHRCLEAR(CH1)
  G3@RENDER()
  CNT=CNT+1
  TIME=(SYSTIME()/1000)-STIME
  IF 5 < TIME THEN 
    G@PRINT(CH1,0,16,STR(CNT/TIME))
  ENDIF
  G@FLIP()
ENDLOOP