コードが間違っていたので訂正。
実用性は皆無です。
screen 0,640,480
#include "hgimg3.as"
moji="テスト"
fontsize=32//フォントサイズ
atsumi=0.5//文字の厚み
hgsetreq SYSREQ_MAXOBJ,10000//十分に用意すること
hgini
setcolor 0,0,255//箱の色
addbox box,atsumi,0.1
mojisu=strlen(moji)/2
dim modid,fontsize*fontsize*mojisu
idnum=0
addbox chusin,0,0//中心ダミーオブジェクト
buffer 2
font msgothic,fontsize
mes moji
regobj chusinobj,chusin
setpos chusinobj,0,0,0
repeat fontsize
yy=cnt
repeat fontsize*mojisu
xx=cnt
pget xx,yy
if ginfo_r=0 {
regobj modid(idnum),box
setpos modid(idnum),0.1*(xx-fontsize*mojisu/2),0.1*(yy-fontsize/2),0
setang modid(idnum),0,M_PI/2,0
idnum++
}
await 0
loop
loop
repeat idnum
objchild chusinobj,modid(cnt)
loop
setpos HGOBJ_LIGHT,0,0,double(fontsize)/4
setang HGOBJ_LIGHT,0,0,0
setpos HGOBJ_CAMERA,0,0,double(fontsize)/4
setang HGOBJ_CAMERA,0,0,0
speed=double(fontsize)/1000
repeat
stick K,15
if K&1:addpos HGOBJ_CAMERA,-speed,0,0
if K&2:addpos HGOBJ_CAMERA,0,0,-speed
if K&4:addpos HGOBJ_CAMERA,speed,0,0
if K&8:addpos HGOBJ_CAMERA,0,0,speed
addang chusinobj,0,0.02,0
hgdraw
hgsync 16
loop