PC

ここは光に満ち溢れたMNAの世界。コメント、トラックバック、リンクはお気軽にどうぞ。

『アイマス』スピンアウト4コマ『ぷちます!』


CONTENTS
■同人ソフト(Software)
 Equinox
 ■Equinox Development
■ゲーム(Games)
 MOTHER OnLine
 ■MOTHER OnLine

<<  2010年12月 >>
   1234
567891011
12131415161718
19202122232425
262728293031 

2009年11月17日(火)
Ogg Vorbis に対応
2009年11月02日(月)
[C++]GetKeyboardState() と DirectInput
2009年10月28日(水)
複合機 EP-802A をセットアップしてみた
2009年10月25日(日)
複合機 EP-802A 購入 & レツノとほほラインナップ
2009年10月22日(木)
Windows7
2009年09月04日(金)
プリンタ死亡!?
2009年08月27日(木)
メモリ増設祭り
2009年08月26日(水)
浮動小数点のワナ
2009年08月03日(月)
[C++]非staticなメンバ関数をコールバックで呼ぶ方法
2009年08月02日(日)
【ワンセグ】不思議なポケット【勝手に起動】

最新のコメント
。。・゚・(ノД`)・゚・。
by Coconut-TI
at 2010/09/22/00:26:15
お久しぶりです〜
by LA-ZE
at 2010/08/05/16:18:39
パネルは3ミリのものを使用してい..
by MNA
at 2010/04/23/09:58:56
某所から飛んできましたー
by まつりななし
at 2010/04/22/00:02:19
なるほど!その手がありましたね。
by MNA
at 2010/04/04/16:57:21
>すると途端に 桜 Trigger 2連発..
by NAYO
at 2010/04/04/14:53:02
これまでいろいろ自作のパネルを見..
by MNA
at 2010/03/31/21:14:47
DDRerなら一度は?自作パネルに憧..
by NAYO
at 2010/03/30/23:48:29
実はSFC版ではモンスターをまとも..
by MNA
at 2010/02/21/23:51:00
もちろんわかりますよw
by MNA
at 2010/02/21/23:49:17
とりあえず、モンスターが仲間にな..
by おひ☆
at 2010/02/21/23:43:03
お疲れ。
by おひ☆
at 2010/02/21/23:41:29

最新のトラックバック

カテゴリー一覧
けいおん!(12)
どうぶつの森(28)
同人(16)
DDR(320)
アイドルマスター(465)
MOTHER(27)
アニメ(40)
PC(123)
ゲーム(78)
映画(23)
イベント(88)
おジャ魔女どれみ(15)
ふたりはプリキュア(88)
麻雀(85)
日記(352)

ブログ系リンク
阿波瑠璃光寺
ブログ版

MMQ's HOME
ブログ版

行政書士亀井事務所
ブログ版

毒電波発信基地

徒然日記

FACT_Dのネット文章工房@もと探偵志望

昼休みのアニメ感想文

Monkey Files

バガミミのBar

九条ひかり&シャイニールミナスと運命を共にするブログ

Game University -GURebirth-

へっぽこシューター日記

〜SyoのBlogなのです〜

Ogg Vorbis に対応
新フレームワークのサウンド再生機能がほぼ出来上がってきたのでVorbisにも対応させてみました。
VorbisのAPIは非常にわかりやすくていい感じです。
しかもフレーム単位でのシークを標準でサポートしているので、WAVを扱っているときとほとんど変わらない感覚でストリーミングできます。
そんなわけで驚くほどあっさり対応完了!

なんといってもパテントフリーでファイルサイズを滅茶苦茶小さくできるのが魅力!
mp3だとゲームに組み込んだ場合、5000本以上売れたらライセンス料を払わないといけないらしいですからねぇ。

「お前はそんな心配する必要ないだろ!」というツッコミはさておきw

それから、今回ストリーミングのやりかたを少し改善してみました。
Zen-Ichiは環境によっては音が割れることがありましたが、今回はそういった現象が起きる可能性が低くなるよう設計しております。
2009年11月17日(火)   No.2718 (PC)

[C++]GetKeyboardState() と DirectInput
会社での待機時間を利用して新フレームワークの製作をちょくちょく進めています。
以前思いついたメンバ関数のコールバック機構を発展させて、イベント通知ギミックを完成させたので、次は入力系統のクラス作成にとりかかりました。

キーボード入力の部分は以前と同じように GetKeyboardState() でちゃちゃっと作ってしまうかと思ったのですが、そういえばこのAPIでは取れないキーが多数存在するんですよね。
Zen-Ichiでは使うキーが固定されていたので特に問題になることはありませんでしたが、今後キーコンフィグなどを作る際に反応しないキーがあるのはまずいです。
というわけでキーボード入力取得部分をDirectInputに置き換えます。
これなら全てのキーを取得することが可能です。

ところでDirectInputには厄介な問題があります。
それは Acquire()。
キーボードの状態を取得する前に実行しなければいけないAcquireですが、こいつはほんのちょっとしたタイミングでよく失敗してくれるんですよね。
しかも、そのアフターケアがまずいとすぐにヘソを曲げてしまって、二度とキー状態が取得できない状態に陥ります。
その辺の対策が面倒だったのでDirectInputを使うのを避けていたのですが、もうそんなことも言ってられないです。
なんとかうまいこと実装。
無事全てのキーが取得できるようになりました。

しかし、DirectInput・・・というかキーの特性上、妙な挙動をするものがいくつかあることが発覚。
例えば、カタカナキー、半角キーなどは、一度押すと特定の操作をするまでは押しっぱなしとみなされます。
Pauseキーは押した瞬間しか押されたとみなされません。
むむ、これは困った。
でもステマニとかでも同じ現象が起きているので、これはそういうものだと思うしかないのかな。

とはいえ、事情を知らないユーザーからは「バグってんじゃないの?」と思われる可能性もあります。
上記のような挙動をすることを甘んじて受け入れるか、予め特定のキーは取得対象からはずすか・・・
今度は「なんで選択できないの?」とか言われそうですが、キーボードでそんなキーを使う人も少ないだろうから妥協するしかないのかなぁ。
2009年11月02日(月)   No.2700 (PC)

複合機 EP-802A をセットアップしてみた
この間買った複合機 EP-802Aが届きました!!!
届いたのは昨日だけど、いつの間にか寝落ちしてたのでセットアップはこれからです。



こうしてみるとなかなかの存在感です。
炊飯器を置いてあるラックに押し込めるのも手かと思ったら0.5cmほど幅が足りなくて断念しましたw



スキャナ部分。
しっかり90度ぐらいまで開けないとバタン!と閉じてしまうのがちと残念かな。

プリンタについているパネルから予め無線LANの設定を行っておき、それからPC側にドライバをインストール。
あっさりセットアップ完了しました!

印刷は前に使っていた機種に比べるとそれはそれは速いものです。
まあ、前の機種は当時でもかなり遅い部類の代物でしたが・・・
音はややでかいかも?
でも静音モードもあるのでそれほど気にならないと思います。

コピーはインクジェットなのでやや滲んだ感じはするものの、ちょっとした書類を作るのには十分と言えます。
早速定額給付金申請用の書類(保険証のコピーとか)を作成w
今時のコンビニに置いてあるコピー機は、使用後に「データを消去しています」と表示されるものの、あまり気分のいいものではありませんからねぇ。
気兼ねなくこの手の書類を作れるのはいい感じです。

スキャナは何故か無線LAN上のものをうまく検出してくれません。
直にIPを打ち込んだら認識しましたが・・・
印刷は問題無いのになんでスキャナだとこうなるんだろ・・・?
なにか設定がまずいのかも知れませんけど。

給紙はコピー機のように予めトレイにいっぱい紙を入れて格納しておくタイプです。
背面給紙だと使うたびにいちいち紙を挿すという手間があったり、挿しっぱなしにしておくと紙が反ったり、埃を被ったりしますがそんな心配はありません!
インク残量チェックや交換などの操作がいちいちPCからプロパティを開くことなく、本体のパネルで行えるのも楽ですね。

これで机の下に置いてあるスキャナにも引退してもらうことができそうです。
古いスキャナは欲しい人がいたら差し上げますのでメッセージくださいw
2009年10月28日(水)   No.2691 (PC)

複合機 EP-802A 購入 & レツノとほほラインナップ
ついになーんにも印刷されなくなったうちのプリンタ。
いい加減このショボい機種を使い続けるのにも疲れたので新しく買うことにしました。

どうせなら机の下に置いてあるスキャナにも引退してもらってもっとすっきりさせよう!
ということで複合機を狙います。

とりあえずエプソンのコーナーに到着。
いろいろ見ていると販売員出現。

店「プリンタをお探しですか?」
俺「目詰まりが激しくてついに何も出てこなくなりましてね・・・」
店「何年ほどお使いですか?」
俺「5年ぐらい」
店「皆さんよくそうおっしゃるんですよー」

うん、まああんたのとこの機種なんだけどねw

店「でもこれなら自動的に検知してクリーニングしてくれます!」
俺「おおお!!!!」

ウィーン!!!
店「コピーも取れます!!!」
俺「おおおおおお!!!!」

前面のインクタンクオープン!!!
店「パイプで押し出すのでインクはいつでも交換可能です!!!」
俺「おおおおおおおおおおお!!!!」

って、今時の複合機ならこんなの当たり前か・・・
ちとわざとらしく驚きすぎたかw

下見のつもりが結局その場で買ってしまった俺。
重そう&このあとゲーセンに行く&つーか雨降ってるので配達してもらうことにしました。
送料はサービスさせましたw

買ったのはEP-802A
無線LANにも対応なので配置とかにも悩まなくて済みそうですね。

ついでにレツノを見てみたらなんとYシリーズが無くなっている!!!
今風のショッボイ画面(1280*800)になってしまっています!!!

Yシリーズのあの広い画面こそがレツノのウリなのにそれをスポイルしてしまうなんて・・・
統合開発環境を使う場合は画面の広さが重要なんですよね。
だから、ビジネス用途でも広く用いられているのにこんなんじゃ見捨てられるんじゃね?
とほほ・・・(´・ω・`)
2009年10月25日(日)   No.2686 (PC)

Windows7
秋葉はとっても盛り上がったようですね。

リテール版も朝から発売、記念イベントも

「Windows 7」発売を今井麻美さん、やなせなつみさん、白石稔さんらが祝福!

今井麻美、白石稔、やなせなつみが駆けつけた『Windows7』発売記念イベント

ミンゴスお疲れ様!
俺は自分のマシンに入れるのは人柱で様子見かなw
XPからじゃアップグレードできないみたいだし。
2009年10月22日(木)   No.2682 (PC)

プリンタ死亡!?
今まで目詰まりしまくるのをヘッドクリーニングして騙し騙し使っていたプリンタがついにダメになった模様!?
ついに全く何も印刷されなくなりました。
折角インク買ってきたばかりだというのに・・・

ヘッドクリーニングするとしっかりインクは減っていくのですが、一体どこにいってしまってるんだろうか・・・

このプリンタはその昔、大阪で開催された春風の陣というイベントで開催されるDDRの曲リスト印刷用に買ったものなのですが、当時は無職だったので「質より値段!」で選んだしわ寄せがきているようです。
印刷がびっくりするほど遅い、給紙トレイの角度がやたらきつくて紙が倒れる&しょっちゅう吸い込みに失敗する・・・とかダメな点だらけ。
用紙の吸い込みに失敗しても吸い込んだ気で印刷を始めるので中がインクで駄々漏れになります。

そろそろ買い替え時か!?
2009年09月04日(金)   No.2620 (PC)

メモリ増設祭り
今日も今日とて滋賀です。
使っているのはいつもの化石マシンです。
OSから見えているメモリは480MB。
VC++を立ち上げてワークスペースを開いた時点でコミットチャージが物理メモリを超えます。
アホみたいに遅いです。

散々「遅い!!!遅い!!!」言い続けたおかげで、メモリを買ってもらえることになり、本日それが届きました!!!
これで 256MB * 2 が 256MB + 1GB になりました!!!
これには劇的な効果がありました!!!
画面の切り替えがサクサク行くぜ!!!
今までのはなんだったのか!?

で、ついでにメモリをいっぱい買ったらしく、社内でメモリ増設祭りとなりました。
つーかはじめからそうしろっつーの!!!

数千円をケチったばかりにどれだけの時間をHDDが激しく動いてる時間に費やしたんでしょうか・・・
2009年08月27日(木)   No.2613 (PC)

浮動小数点のワナ
ただいま絶賛滋賀で作業中です。
片道2時間です。若干キレ気味です。
さて、今回もマージなんぞを任されたわけですが、俺としたことが珍しくトラブってました。

その原因は浮動小数点。
機能の追加によってとある構造体にメンバが追加されたりした場合、これまでのデータと互換性を保つためにバージョン情報によって読むメンバを決定しています。
この部分、今までは0.5刻みでバージョンをつけていたようなのですが、今回はなぜか0.1刻みでバージョン値を変更して欲しいとの指示がありました。
0.5は2進数で正確に表現できますが、0.1単位となると2進数では正確に表現できません。
しかも、元のソースを見るとdoubleとfloatの比較をしてやがります。
当然桁丸め誤差が出るため、バージョン比較判定でバグります。

これにはやられました。
今までは0.5刻みだからたまたまバグが発覚しなかっただけ、俺はハズレくじ第1号になってしまったようです。
確かに、「バージョン番号に小数点なんて気持ち悪いなぁ・・・」とか「こういうのは普通 LOW WORD を小数部分に、HIGH WORD を整数部分にしたりするだろ・・・」とか「floatとの比較なら明示的にfつけろよ・・・(直に小数だけを書くと const double になります)」とか思いながら移植してましたが、「そういう間抜けな部分も忠実に移植する!!!」というこれまでの手法を貫いたのが裏目に出たようです。
(どうしてこうなった!?と問いただすと、担当曰く「こういうことを知ってる人があまりいないんですよ〜」らしい。)

実機でのデバッグが難しい&内部の動きなんぞ知らないこともあり、しょーもないことで2日も潰れたよ・・・orz
はうぅ。
2009年08月26日(水)   No.2612 (PC)

[C++]非staticなメンバ関数をコールバックで呼ぶ方法
現在、GUIアプリ+ゲームを作るためのフレームワークを新たに製作中です。
そのフレームワークに組み込むコールバック機構を考案中なのですが、それについての備忘録とか。

staticなメンバ関数をコールバックに設定するのは実に簡単です。
引数にthisを渡してやって、それをキャストすればいいだけです。
実際、コールバックを使用することが前提のAPIなどはそういった運用を想定して void* などを引数に加えています。

しかし、非staticなメンバ関数をコールバックで呼ぶにはもう少し工夫が必要です。
そこでいろいろ方法を考えてみました。

・メンバ関数の実体自体はメモリ上のどっかに存在する
・でもそれがどのインスタンスのものかがわからない
・インスタンスを判別するにはthisポインタが必要
・じゃあthisポインタと関数のアドレス、この2つがあれば呼べるんじゃね?

というわけでこんなテストコードを作ってみました。
一応ちゃんと呼び出しはできているっぽいです。
コンパイラは VisualC++2005 EE です。


class CCallBack
{
private:
typedef void (CCallBack::*CCallBack::cbFunc)(void);

CCallBack* m_inst;
cbFunc m_cb;

public:

template
void Regist( T1& inst, T2 cb )
{
m_inst = (CCallBack*)&inst;
m_cb = (cbFunc)cb;
}

void Exec( void )
{
(m_inst->*CCallBack::m_cb)();
}
};

class CTest
{
public:
void print( void )
{
printf( "うっうー\n" );
}
};

int _tmain(int argc, _TCHAR* argv[])
{
CTest test;

CCallBack cb;
cb.Regist( test, &CTest::print );
cb.Exec();
}

ええんかな、こんなんで(^^;
ツッコミとかありましたら是非コメントしてやってください。


2009年8月8日 追記:
ここからさらに進化させて、引数の型や数、戻り値などの正当性が保証されるように改善。
実用的になってきたかな・・・?
2009年08月03日(月)   No.2575 (PC)

【ワンセグ】不思議なポケット【勝手に起動】
最近当方の使っている携帯W51SHの挙動がおかしい・・・
なんと!!!ポケットに入れていると勝手にワンセグが起動していてバッテリーが無くなってしまっているのです!!!

ポケットをたたくとワンセグがめんがきどう
ポケットをたたくとワンセグがめんがきどう
ポケットをたたくたび、バッテリーはへっちまう


なぜ!?どうして!?謎すぐる!!!
いつのまにかバッテリーが無くなっていてすっごく迷惑!!!
この現象はポケットに入れているときだけ起きます。

なんでこうなるのか仮説を立ててみました。

・サイドキーが押された説

幸か不幸か、この機種はサイドキーの反応が良いため、ポケットに入れておくといつのまにかマナーが解除されていたり、auミュージックポートが立ち上がって会議中に大音量で曲を奏でてくれたり、電話をとろうとしてうっかりサイドキーに触れて録音メモに遷移してしまったり、いろいろトラップが多いです。
auミュージックポートはマナーモード時でもイヤホンを挿していれば曲が聴けるのでまだわかるのですが、マナーモードをサイドキーごときで解除されるのが納得いかない・・・
必要があってマナーモードにしてるのに勝手に解除するな!!!って感じです。

おっと、脱線しましたね。
結論をいうとサイドキーにワンセグが立ち上がる組み合わせはありませんw

・タスクボタンが押された説

通常のテンキー(?)よりも更に右下にタスク切り替えボタンがあるのですが、このボタンは待ち受け時に押すとワンセグ起動ボタンにもなるのです。
何かの拍子に少し隙間ができて、一緒に入れている鍵などに押されたのでは?という説が浮上。

・画面が回転した説

この機種は画面を90度回転させて横長でワンセグを視聴できる機能があります。
また、デフォルトでは画面を回転させると自動的にワンセグに遷移するのです。
ひょっとしてこれが原因!?

しかし検証してみたところ、閉じた状態で回転させるにはかなり無理な力を加える必要があるようです。
仮に回転させても閉じた状態では反応しません。

一応ものは試しと画面回転時にワンセグ起動機能を切ってみると・・・

現象がピタリと止んだ!!!

うーむ、部品が劣化したりして誤判定されまくっていたのだろうか・・・
まあ解決して良かった良かった!!!
2009年08月02日(日)   No.2574 (PC)

[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]
 OR AND
スペースで区切って複数指定可能
---------------------------------------------------------------------------------------------------------------------
2010年 /
01月 / 02月 / 03月 / 04月 / 05月 / 06月 / 07月 / 08月 / 09月 / 10月 / 11月 / 12月
---------------------------------------------------------------------------------------------------------------------
2009年 / 01月 / 02月 / 03月 / 04月 / 05月 / 06月 / 07月 / 08月 / 09月 / 10月 / 11月 / 12月
---------------------------------------------------------------------------------------------------------------------
2008年 / 01月 / 02月 / 03月 / 04月 / 05月 / 06月 / 07月 / 08月 / 09月 / 10月 / 11月 / 12月
---------------------------------------------------------------------------------------------------------------------
2007年 / 01月 / 02月 / 03月 / 04月 / 05月 / 06月 / 07月 / 08月 / 09月 / 10月 / 11月 / 12月
---------------------------------------------------------------------------------------------------------------------
2006年 / 01月 / 02月 / 03月 / 04月 / 05月 / 06月 / 07月 / 08月 / 09月 / 10月 / 11月 / 12月
---------------------------------------------------------------------------------------------------------------------
2005年 / 05月 / 06月 / 07月 / 08月 / 09月 / 10月 / 11月 / 12月
---------------------------------------------------------------------------------------------------------------------

Admin TOP
shiromuku(fs4)DIARY version 3.44


当サイトへのリンクはフリーです。当サーバ内の文章及び画像の無断転載はご遠慮ください。
mna.netのロゴはMMQ氏に作成して頂きました。