まったくのプログラミング素人の筆者がC++/HSPを使用してSTG(シューティングゲーム)を作っていく過程を書くブログでしたが最近は脱線気味。プログラミング以外にも、ゲーム関連の記事、日々の戯言など。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
ここ数日、gmodeでの不具合に悩まされています。
es_copy命令を使う時にgmode1か2(透明色指定コピー)を選択するとフルスクリーン時に画面がちらつくんですよね・・・
こんな感じです→検証動画(右クリック→対象をファイルに保存で見てください)
動画では初めの方に2回ちらつくんですが、常にちらつくんじゃなくて不定期にちらついたり
ちらつかなかったりで原因が良くわからないんですよね・・・
でも家のもう一台のパソコンでは不具合が出ないので、私のパソコンが悪いのかと思って、BIOSやビデオカードのドライバを
アップデートしてみたのですが変わらず、検証スクリプトを作って色々と数値を変えて試してみたのですがやっぱり変化無し
掲示板などを検索してみたのですが、同じような不具合報告もみつけれずで、どうしたもんだか・・・と言った感じです。
こんな検証スクリプトを作って考えてます↓
*************************************
*start
#include "hspdxfix.as"
;■ DirectX 初期化&チェック
dialog "fullscreenで起動しますか?「はい」を選択した場合、画面解像度を640×480に変更します。",2,"Config"
if stat=6:screenmode=0
if stat=7:screenmode=1
es_ini 1124,1124,360;スプライト最大数2048,キャラクタ最大数1024,角度360度
es_screen 640,480,16,0,screenmode,1;directX使用時の解像度640*480
if stat=1 : goto *dxerr1
if stat=2 : goto *dxerr2
goto *setup
*dxerr1
dialog "DirectXの初期化に失敗しました。",1 : end
*dxerr2
dialog "スクリーンの初期化に失敗しました。",1 : end
*dxerr3
es_bye : wait 100
dialog "VRAMの容量が不足しています。",1 : end
*setup
;■ バッファへ画像の読みこみ
buffer 1,398,144,0 ;バッファ作成
pos 0,0 : picload "boss.gif",1 ;バッファへ読み込み
es_buffer 1,0 ;オフスクリーンバッファへの転送
if stat=1 : goto *dxerr3
gsel 0
repeat
es_cls
gmode 0,440,480:es_fill 0,0,100
pos 10,45:gmode 2:es_copy 1,0,0,398,144
es_sync 16
await 1
getkey syuryo,27:if syuryo=1:end;ESCを押すと強制終了
loop
*************************************
HSP3.0使用 hspdxfix使用 画像は↓を使用
私のパソコンでこのスクリプトを実行すると、画面が数秒に一回(不定期)ちらつくんですよね・・・
とりあえずの回避方法はスプライトを使用すればつらつかないんですが、できればes_copy命令を使えるようにしたいので
何とかならんもんかと思っているのですが・・・
es_copy命令を使う時にgmode1か2(透明色指定コピー)を選択するとフルスクリーン時に画面がちらつくんですよね・・・
こんな感じです→検証動画(右クリック→対象をファイルに保存で見てください)
動画では初めの方に2回ちらつくんですが、常にちらつくんじゃなくて不定期にちらついたり
ちらつかなかったりで原因が良くわからないんですよね・・・
でも家のもう一台のパソコンでは不具合が出ないので、私のパソコンが悪いのかと思って、BIOSやビデオカードのドライバを
アップデートしてみたのですが変わらず、検証スクリプトを作って色々と数値を変えて試してみたのですがやっぱり変化無し
掲示板などを検索してみたのですが、同じような不具合報告もみつけれずで、どうしたもんだか・・・と言った感じです。
こんな検証スクリプトを作って考えてます↓
*************************************
*start
#include "hspdxfix.as"
;■ DirectX 初期化&チェック
dialog "fullscreenで起動しますか?「はい」を選択した場合、画面解像度を640×480に変更します。",2,"Config"
if stat=6:screenmode=0
if stat=7:screenmode=1
es_ini 1124,1124,360;スプライト最大数2048,キャラクタ最大数1024,角度360度
es_screen 640,480,16,0,screenmode,1;directX使用時の解像度640*480
if stat=1 : goto *dxerr1
if stat=2 : goto *dxerr2
goto *setup
*dxerr1
dialog "DirectXの初期化に失敗しました。",1 : end
*dxerr2
dialog "スクリーンの初期化に失敗しました。",1 : end
*dxerr3
es_bye : wait 100
dialog "VRAMの容量が不足しています。",1 : end
*setup
;■ バッファへ画像の読みこみ
buffer 1,398,144,0 ;バッファ作成
pos 0,0 : picload "boss.gif",1 ;バッファへ読み込み
es_buffer 1,0 ;オフスクリーンバッファへの転送
if stat=1 : goto *dxerr3
gsel 0
repeat
es_cls
gmode 0,440,480:es_fill 0,0,100
pos 10,45:gmode 2:es_copy 1,0,0,398,144
es_sync 16
await 1
getkey syuryo,27:if syuryo=1:end;ESCを押すと強制終了
loop
*************************************
HSP3.0使用 hspdxfix使用 画像は↓を使用
私のパソコンでこのスクリプトを実行すると、画面が数秒に一回(不定期)ちらつくんですよね・・・
とりあえずの回避方法はスプライトを使用すればつらつかないんですが、できればes_copy命令を使えるようにしたいので
何とかならんもんかと思っているのですが・・・
PR
この記事にコメントする
カレンダー
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
リンク
カテゴリー
最新記事
(04/04)
(12/26)
(12/25)
(11/17)
(10/11)
プロフィール
HN:
kt.
性別:
男性
自己紹介:
プログラミング経験は昔ファミリーベーシックでちょっとさわったくらい。
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
ブログ内検索
最古記事