日記(946)

<前 次>

可変ウィンドウ

yaneSDKのバージョンや内容も変わったし、最初にCBWDrawを作ったときからゲーム画面の処理も変わってきたのでCBWDrawを手直し中です。
まず、DirectDrawによるフルスクリーンを使わなくなったこと。
これによりディスプレイ解像度の変更が完全になくなるのでゲーム画面の大きさ変更からフルスクリーンとフルスクリーンのときのビット深度のオプションがはずされました。
そして、ウィンドウサイズが自由になったこと。
これはyaneSDKの前提の一つを覆すものなので結構修正が多いかと思ったのですが、CWindowのことあるごとにウィンドウを画面中央に持ってくる部分を修正すれば、他はCBWDraw内部の処理だけでなんとかなりそうです。

そうそう、TGWSにある全てのWikiの更新状況を管理者が一箇所で監視できるようにしてみました。
ユーザー側から見れば別に何もありませんが、こっちから見れば、他の掲示板などへの書き込み通知と同じように見ることができるので非常に便利になるのです。
本当はそういうのに対しては予めメール通知機能がついていたりするのですが、元々私はあまりメールチェックをしませんし、メール送信は案外重い処理らしいので、できるだけ一つのサーバー内で起こったことは一つのサーバー内だけで完結させたかったのです。

DirectDrawは遅かった

で、yaneDirectDrawとyaneDIBDrawの性能を比較してみました。
結果はWikiに書いてあります。
圧倒的というか、話になりませんね。
yaneDirectDraw、単純な等倍転送以外、使い物になりません。
で、全てを拡大する可能性のあるこのゲームでは使えないというわけです。
何しろ一つ転送するのに10ms以上かかるということは、よくあるキャラを二人描いたら60FPSは達成できなくて、五人描いたら20FPSすら出なくなります。

DirectDrawの拡大処理

う~ん、今日yaneSDK1stでDirectDrawによる2倍拡大を試してみたらyaneDIB32にあったような整数倍拡大時のドット潰れが起きていなくて、Bomber丸Worldの描画エンジンも半透明とかエフェクトなどをあまり豪勢に使わないならDirectDrawでもいいかなと思っていたりします。
Bomber丸Worldではドット絵と解像度の関係上拡大処理が多くなって、そうするとyaneDIB32の本領発揮となるエフェクトや各画素ごとの処理などがうまく働かなくなる可能性もあったり、その上単純に処理すべきドット数が増えることによる速度低下なども考えられたりして、その意味でもDirectDrawのほうが良いのかなと思ったりしてます。
だけどそうするとまた描画関連のプログラムがごっそり入れ替わる可能性もあるわけで…。
とりあえずブレンド処理の速度を測ってみてから考えたいと思います。

曲率

ふにゃさんのプレイムービー5~10面をアップしました。
11面以降も録画しようと思ったのですが、あいにく11面でゲームオーバーになってしまったので録画は先延ばしです。
そうそう、現在ふにゃさんのシークレット機能の空を飛ぶふわふわふにゃの動きを考えています。
別にふわふわふにゃそのものの動きでもかまわないのですが、やっぱりふにゃさんなんだから、空気の抵抗を受けたり、くるくる回してみたり、色々やりたいわけですよ。
くるくる回すというのがよくわからないかもしれませんが、やってみればわかるかもしれません。
曲率を利用することも考えてます。

Bomber丸World開発室のWikiへの移行は順調です。
本当はプログラムの深いところをどんどん追記していきたいのですが、やっぱりキャラとかストーリーを書くほうが楽しいので、そっちのほうばかりが充実していきます。

スキップしない率

BSch3Vね、単なるドローツールとしてもそれなりに使えそうです。
もちろん回路図に特化したソフトなのでドローツールとしては全然強力ではありませんが、回路図を書いてる途中で他の図も使いたくなったときなんかはなかなか便利です。

NeoMupl、テストしてみたらスキップ条件がまるっきり逆になっていました。
まあ、そのおかげで全部スキップだったときの挙動も確認できて、結果的には全部スキップされたときの挙動を改善することもできました。
全部スキップされたときの挙動は、まあ、つまらないことなんですが、全くスキップされなかったときと同じ挙動を示すようにしています。
あと、スキップ率のスクロールバーの挙動がおかしかったので修正です。
高速読み込みは現状の速くない方式でも3000曲で0.25秒なのであまり問題ないとして、予定リストからはずしました。
あと、今更ながらリスト編集ウィンドウの参照ボタンを実装しました。
情報バーは最近存在すら忘れていたので完璧に時代遅れの状態となっています。
何とかしてリスト編集ウィンドウと同じ挙動を楽してさせたいものですが。

のんびりナマライザのフィルタをちょっといじってました。
具体的なものはなかなか作りにくいのでやっつけでORとNOTのフィルタを作ったりしてみました。
ANDは昔からあります。

BSch3V

ちゅうわけで浮き沈みリンク集更新できました。
同時にうちのサイトで使ってるリンク集CGIもアップロードしましたがこちらは不完全版ゆえ一般公開はまだしておりません。
またそのうちするつもりです。

そういえば、回路図エディタソフトBSch3Vを導入してみました。
ほんとこれ便利ですね。
これでもうペイントで描かなくて済みそうです。
しかもメタファイルで出力できるのでドットつぶれの問題もないときたもんです。
http://www.suigyodo.com/online/

浮き沈みリンク集

自分用リンク集PHPの削除機能ができて、ついでにパスワードで編集制限する機能もつけたので、これで事実上完成となり、もしかしたら人様のためにも使えるかもしれないと思ったので、明日アップしようと思います。
今回、いつものCGI・PHPとは異なる方法で作っていて、大きなプログラム本体を、小さな設定ファイルから呼び出す形式になっていて、普通のCGI・PHPとは異なるつくりになっています。
こうした理由は、プログラムひとつで設定ファイルだけを複数用意することで簡単に同じリンク集をいくつも作れるというのがあり、また、PHPを呼び出す前処理・後処理も自由に作れるようになるためというのもあります。
TGscriptもこの方式でいこうかなとも考えてます。
こちらも複数用意する必要性が出てくるかもしれないので。

<前 次>