hspdxfix
Solid State SURVIVORのバグフィックスのときに入手したhspdxfixで以前に掲載した弾幕っぽいプログラム等動かしてみたら、ノートPCでも半透明を表示できることが判明。DLLの最新バージョンはよく探すべきですね…… orz
加算合成とモーションブラーを組み合わせるといかにも今風な表現になりますね。
;
;発射方向が回転
;
#include"hspdxfix.as"
#define tama_max 1000
;dim task,10
randomize
es_ini 1024,,64
es_screen 640,480,32,,1,1
if stat : dialog"HSPDXFIX : DirectXの初期化に失敗":end
buffer 2,640,480
picload "tama4.bmp"
es_buffer 0
es_size 16,16
es_pat 1,0,0,0
picload "jiki02.bmp"
es_buffer 1
es_size 64,64
es_pat 0,0,0,0
;メインループ
kaiten=0
mx=320
my=400
speed=4
twait = -1
tama = 30
houkou = 0
ntama = 1
tx=320
ty=240
dansu = 6
repeat
; twait -= 1
; if cnt \ 100 = 0 : dansu = rnd(5)+8
if twait <0 {
es_set ntama,tx,ty,1
es_adir ntama,(cnt\64),100+(cnt\dansu)*50
es_effect ntama,,,,,(cnt\64),ESB_ADD,80
; es_adir ntama,(cnt\64)+(cnt \ 4)*16,50
; es_effect ntama,,,,,(cnt\64)+(cnt \ 4)*16
ntama += 1
if ntama > 1000 : ntama = 1
; twait = 1
}
pos 0,0
color 255,255,255
es_mes "fps:" + fps + " " + dansu
stick k,15
if k&2 : my=my-speed : if my<0 : my=0
if k&8 : my=my+speed : if my>414 : my=414
if k&1 : mx=mx-speed : if mx<0 : mx=0
if k&4 : mx=mx+speed : if mx>574 : mx=574
if k&128 : end
; es_set 0,mx,my,0
; es_effect 0,64,64,,,cnt\64
es_sync 16
await 0
es_getfps fps
; es_cls 0,0,0
es_exboxf 0,0,639,479,0,,,,ESB_ALPHA,50
es_draw
stick k,0
if k & 128 : end
loop
stop