メイン

2006年09月20日

作ってみた

最近流行のガジェットを作ってみた
といっても、Windows Live用なとってもマイナーな感じですが(苦笑)
http://www.mulsys.net/gadget/CountDown/CountDown.xml
直接登録はこちら
指定した日付までをカウントダウンするだけです
しかも設定画面なんて手抜きです(^^;;
まぁそのうちちゃんとしたものにする………と思う(汗

とりあえず私はサンクリまでのカウントダウンに使ってます

2005年10月05日

ベーマガと昔と

そういえば、私がプログラミングを始めたのは「マイコンBASICマガジン(通称ベーマガ)」がきっかけなんですよね~
確か最初にベーマガを見てプログラムソースを入力したのが「てぃあ おぶ すたー」というパズルゲームだったような…もちろんエラー続出で途中で諦めましたけど(苦笑)
その後、私の人生をちょこっと変えた「砦の攻防」とか(友達をコレで勝負して、負けたら科学部へ入部!とか…見事に負けました)
自分でプログラムを作ったのは、7色の¥マークが画面を埋め尽くすやつとか
画面の上部に「ニュース速報」みたいに文字が表示されるやつとか……変なもんばっかやな(^^;;

今こうしてVBでちょこっとした物を作れるのはベーマガのおかげなのですよね~いや良い雑誌に出会ったものだ
ちなみにそれは中学1年の時のこと、ちょうど「ぷよ」に出会ったのも当時だから、今の私に大きな影響を与えたのがあの頃だったのですね…
「きまぐれオレンジ☆ロード」の再放送を見たのも中1か2の頃だったかな…
DVD-BOX出ないかなぁ~

2005年05月15日

やっと出来た

MSN MessengerはVer7になってから現在再生中の曲名を表示させることが出来るようになりました
標準ではWMP9~とiTunesで再生中の曲名を表示出来るようです
また、Winamp等も公開されているプラグインを使う事で表示出来るようです

しかし、私が再生に使ってるソフトは自作のソフト(VB製)です
最初にVBで表示を変えられないか試したのはMSN Messenger Ver7が正式公開直後
ネットで調べたら英語版ではCでもVBでも出来る事が判明したので、そのソースを動かしてみる…沈黙
変数宣言をDimからPublicに変更したりしてもダメ…やる気がなくなったので放置

その後Winamp用のプラグインが公開されたので再度チャレンジ
このプラグインにはソースファイルが添付されていたので(もちろんCだけど)そのままVBに移植…沈黙
\\0の所を(Cでは\がエスケープされる(?)ので\0になるけど)vbNullCharにしたりしてもダメ
実際にどんなデータが送信されているのか調べてみる事に
WMPで再生させてspy++でメッセージを取得、VBでそのアドレスにあるデータの中身をみようとしたら「アクセス違反」
ちょっとくらい見せてくれてもええやん!とか思いつつも覗き見は諦める……

ゲームや仕事をしつつ原因を考え、メッセンジャー側から変数の中身が見えてないんじゃないかな~?という結論に達して、GlobalAllocで確保したメモリならOKじゃないか?と推測
そして本日チャレンジ!……結果、すんなりOK~
そうか…Cでの変数は別のプロセスからでも見られるのに、VBは見られないのか……
DLLに渡すときは通常の変数宣言で問題なかったから出来るとばかり思ってた……

では出来たソースを下に公開します
但し、エラー処理等は省略してあるので(実際に私が使ってるのにも入ってない)何が起きるか分かりませんので、それだけはご注意を
このソースを標準モジュールにコピペして、「Send_Messenger "表示したい文字",True」で表示されます
消すときは「Send_Messenger "",False」です
strMsgの最初の「JBA-soft」は適当でOKだと思います、その次のMusicは変えない方がよさそう

ちなみにWMP9以降を使わなくてもインストールしておかないと表示出来ないらしいです(メッセンジャー側で「"再生中の曲"を表示」が有効にならないとか…)

続きを読む "やっと出来た" »

2005年04月05日

いろいろ

色々報告とか
・JBA-soft WWW営業所 更新しました
 メインはC67で販売したCDの中身を公開した事ですね

・Blogのコメント機能の改善
 コメントのカキコが来たらメールで通知する設定にしておいたのですが、MTバージョンアップしたからか、通知が来ないようになってました
 管理画面で見たらまどかさんからコメント来てた…ご迷惑をおかけしました
 ついでにTypekeyでのサインインにも対応(というか設定間違えてたのを修正)しました

・TV版AIR
 総集編だからって放っておいた13話見ました
 内容はまとめなので特にコメントなし、まぁ泣けましたけど
 で、エンディング後のCMで「夏特別編、製作開始!」と…\(^^)/万歳!
 ついでにハードディスク崩壊から放置してあったAIRのサントラをMP3にしました
 中の解説読んで、「Farewell song」の歌詞が正式なのじゃない事を今更知った…

2004年07月31日

困りました…

何とか間に合うか!?と思いながら製作中のソフトの最終確認をしていると、とんでもない症状が……
内部でコンパイラをCreateProcessを使って起動、パイプで標準出力&標準エラー出力を取得、ソフト上で表示
って事をやってるのですが、VBで実行すると問題なく出力が取得出来るのに、EXE形式にして実行すると取得出来ない……
ぴーすへるぱーとこの辺は変えてないのに何でこんな症状が……しかも極希に取得出来るから尚更分からない……

誰か考えられる原因教えてぇ~(切実

2004年07月20日

こつこつと

ナツの祭典に向けて製作中でありマス
「VBPieceコンポーネント」は一段落(といってもヘルプ作成&パッケージ化が残ってますが)したので新作(?)に取りかかってます

新作といっても、これまたP/ECE関連の「ぴーすへるぱー」が元になってます
これをP/ECEだけでなく、Java(設定ファイルを作れば他のコンパイラ言語も)でも使えるようにしようかと
コードは基本的に新規に起こして、へるぱーでそのまま使えるコードはコピペして…
一部で好評(?)だったエディター捕獲機能も健在です(まだ移植してないけど)
捕獲出来ないエディター(MDI式のエディター等)対策として、SDI式のウィンドウにも切り替えられるようにしてあります

問題は祭典までに使えるように出来上がるか……

#ヘルプ書くのも苦手だったり(汗

2004年07月10日

久々にP/ECE

ナツの祭典が近づいてきているので、そろそろ動き出さないとまずいかなぁ?と
で今回は何を出そうかと…Javaのやつはまだまだ先は長いし、新規はネタが無いし……
てな事で今回もP/ECE関連でいこうかと(前に「もうやめる」と言ってたような気がしないでもないが…)

まずは前からバージョンアップしたかったVBPieceコンポーネント
P/ECEへの画像転送を少し高速化してみた
どのくらい速度が出るか試す為にMCIを使ってMPEG動画をPictureBoxに表示、それをP/ECEに転送させたのだが、まったく表示されない
PictureBoxのPrintメソッドで文字を書くとちゃんと表示されるので転送自体に問題はない
となるとMCIの描画はPictureBoxのデバイスコンテキストでは取得出来ないようだ…残念

仕方ないのでWMPで表示させて、それをデスクトップキャプチャし、動画であろう部分を切り取ってP/ECEに転送するという暴挙に出る
結果から言えば成功~ちゃんとP/ECEでも動画として見ることが出来ました
ちなみに動画はCLANNADのオープニングを128*96、15fpsに加工したものを使いました
まぁP/ECEがモノクロ4階調なので淡い部分が見えなかったりしますが…
コミケット会場でもやってみるつもりなので良かったら見ていって下さいな

さて、次はサウンド(wave)再生機能でも追加しますかな?
と言ってもP/ECEハンドブックvol.2のC++のソースをVBに移植するだけですが、でも面倒そう(苦笑)

はい、やっぱり面倒でした~(;_;
VBのseekとCのfseekではファイル先頭のポジション値が違う(VBは1、Cは0)とか
(これに気づかず、ずっと雑音ばっかり鳴ってたデス………)
VBではポインタやキャストを使えないのでその辺を変更したり…
こう書くと大したことないけど、大変だったんだから……(苦笑)
それにちゃんと再生された時の喜びはいいですね、これぞプログラマー(クリエーター)の醍醐味って感じです~

とりあえずVBPieceコンポーネントはこんな感じかな?あとはファイル転送とかちょこっとした機能追加でもしますかな

2004年06月20日

JavaとVBAと

今回の休みはプログラミングばっかりやってました
最初はJava、FrameやApplet、ゆくゆくはIapplicationと環境依存を吸収すべくテンプレートを製作中なのです
しかしこれが一筋縄ではいかない訳でして、一番困ったのがサブクラスのメソッド呼び出し
スーパークラスならsuper.で呼べるけど流石にサブクラスは出来なかった(よく考えれば当たり前ではある)
あとはAppletの制限ですね、ファイルへのランダムアクセスが出来ない……
シーケンシャルで進める事は出来るけど、戻れない
そういえばAppletでデータを保存する方法ってあるのだろうか?お絵かきアプレットとかで画像ファイルには保存出来るようだけど、どうやってるのかな?

次はVBA、仕事で使うものなので、仕事中に手が空いたらいじってたのだが、どうも最近手が空かなくなって仕方なく休日返上で作業~
VBなので問題はない……と思ったらSQL使ってるのでテスト出来ない……うちには”おらくる”なんて無いよ~
あったとしてもデータベースの中身まで同じになんて出来るわけないし~
まぁユーザーインターフェースの改良と汎用的に使えるようにする為の作業なのでそれ程問題ではなかったけど……でもやっぱりテストはしたい
実際に動いてる所を見たい訳ですよ、クリエーターの血ってやつですか?(苦笑)
会社に行けばテスト出来るがそんな暇あるだろうか……
しかもコレ無償なのよね~まぁ手作業で情報収集してるのを見兼ねて私が作っている訳だが

さて次の休みはゲームするか、またJavaの続きをするか

2004年06月13日

.NETになると…

言語がVBだろうがC++だろうがJavaだろうがC#だろうが殆ど関係ないのだろうなと
まぁ.NETのC++でもポインタとか使えるだろうけど、今後は無くなっていくだろうし

#今回はトラックバックの実験なのでここまで~
#と思ったらBlogからはてなへのトラックバックは出来ないのか……

続きを読む ".NETになると…" »

2004年06月01日

VisualBasic.NET

かなり前に買って(過去の日記参照)放置されてたVS.NET2003ですが、とある用件で使い始めました
使う言語はもちろんVisualBasic、やっぱりVBは使いやすいですよ
しかもVB6では内部に隠れていた設定とかを.NETではソース上でいじれるからいいですね
ウィンドウをクライアント領域のサイズから設定出来るのはゲーム製作では必須なので

ただApp.オブジェクト等やLoadPicture()等が無くなって.NET Framework のクラス群から同様の物を探す必要はあります
まぁヘルプを参照するとか、以前VB6で作ったソースをCode Advisor for Visual Basic 6.0を使ってチェックしてみるとかすればそれ程難しくはないでしょう

あとはクラスという概念が導入されている(VB6にもクラスは存在したが…)のでVB6からの直接移行はちょっと抵抗あるかな?
今まで通りにコマンドボタンを置いて、ダブルクリックでイベントを指定して…とやってれば問題なくプログラミングは出来ますがね
私の場合は最近Javaも使い始めたので問題なく移行出来ました
Javaの知識が意外なところにも役に立つのでした(^^;

ではVB.NETを使ってて気づいた所をぼちぼちと
・PictureBoxがコンテナとして機能しない
=Panelがコンテナとして使える模様

・PictureBoxが透過する
=透過GIFがちゃんと透過します、バックカラーも透明に出来ます~

続きを読む "VisualBasic.NET" »

2004年05月31日

メディアンフィルター

「Javaではじめる画像処理プログラム」って本を読んでたら「メディアンフィルター」なるものを発見
ぼかし手法の1つなのだが面白そうなので実際に作ってみる

たとえばアイキのページで公開されてる
http://www.aiky.biz/pochinya/open_space/icon/bg_pn03.png
この画像をフルカラーにして2倍のサイズにして手書きで落書きしたのがこれ
http://www.mulsys.net/img/mf1.png
これにメディアンフィルター適用したのがこれ
http://www.mulsys.net/img/mf2.png
落書きが殆ど消えてますね~元の画像によってはここまできれいにならない事もありますが

色々遊べるなぁと思ってフリーソフトで探してみるが見つからない
仕方ないのでJavaのソースを改造して、フィルター適用後の画像をpngとして保存出来るようにしてみた
javax.imageio使ってるから1.4以上必須だが、どうせ配布しないしいいか(苦笑)

続きを読む "メディアンフィルター" »

2004年05月25日

Javaなど

いいゲームをやり終えた後は創作意欲がわく訳で、久々にJavaをいじってみる
前に適当に作ってみたゲームシステム(の破片)は立ち絵やテキストウィンドウを全てコンポーネントクラスのサブクラスとして表示させてた
この方式にした理由は立ち絵を動かすのが楽かなぁ?と思ったのだが、画面がちかちかして使えなかった

そこで今回は通常通りイメージクラス(Win風に言えばデバイスコンテキスト?)で表示させてみた
やっぱりこっちの方が断然早いや……手抜きはいけませんな(苦笑)

で適当に作ってみて(と言ってもクリック待ちも選択肢も無いのだが)1日だけ公開してみる
後日メッセンジャーで友人と話してたら「表示されなかったよ」と……
ん~うちの環境ではちゃんと表示されてるのに……もしかしてMSのVMだとダメなのか?
試しにSunのVMからMSのそれに切り替えてみる……表示されない……
何か変な関数(プロシージャ?)使ってるのかと思い

import java.awt.*;
import java.applet.*;

public class gametest extends Applet{
public void paint(Graphics g) {
g.drawString("test",0,10);
}
}

な単純なプログラムでも試すがダメ……
.classファイルだからダメなのかとネットで調べるが、.classファイルでもMSのVMでちゃんと表示されてる所もあるし……うむぅ
誰か原因教えて下さいませ~

原因判明しました~
javacに -target 1.1 を指定すればOKでした
ちなみに私も使ってるJ2SE 1.5.0-beta SDKでは一緒に -source 1.2 も指定しないとダメなようです
これで何か作れます~

2004年03月18日

今日はまったりと

明日は「サクラ大戦物語」と「Remenber11」の発売日です
空いた一日、さて何しようかと考える

その1、サイトのリニューアル
あ~無理(ぉぃ
なのでいりぐちだけでも移転してみました(正確には移転中)

その2、Javaでプログラミング
レイアウトマネージャに縛られるのは嫌なのでsetLayout(null)にする
これで好きな場所にコンポーネントを置けると思いきや意外な盲点を発見
重なりを後から指定する事が出来ない?!
add時に変える事は出来るみたいだが、後から変えられないのかなぁ~誰か知ってます?

そんなこんなでコレを書いてるうちに日付が変わってしまった……