忍者ブログ

カレンダー

01 2025/02 03
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

最新コメント

[07/13 ♀はっか]
[07/13 ♀はっか]
[07/11 ♀はっか]
[07/11 ♀はっか]
[03/16 空竜]

最新トラックバック

プロフィール

HN:
空竜
性別:
女性

バーコード

ブログ内検索

アクセス解析

忍者アナライズ

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

ドロドロしながら作業続行


今日は入力処理をプログラミング。
厄介だね。いや、何がって・・・
DirectXのサンプルをそのままいじってるんだけど、ウインドウに対して
行われた処理をコールバックの引数で渡されるわけなんすよ。
で、画面を閉じた、画面を動かした、画面のサイズを変えた、とか
いろいろある中に、ボタンが押された、ってのがあって。
何が押されたのかが、渡された別の引数の中に入ってる。
問題は、別で渡されたその引数。

同時押し、という概念がない。

つまり、その引数の中身は、入力された1つだけキーの情報が入ってる。
で、もし他のキーも押されてたら、もう一度コールバックが呼ばれて、
そこにも1つだけキーの情報が入ってる。
いやいや、つまりですね・・・
キーが押されたからと言って、
『aとbが押されました』という情報が来るんじゃなくって、
『aが押されました』って情報と、『bが押されました』って情報が、
別のタイミングで渡されるわけで。
そうなると、自分で同時入力処理をしなきゃいけない。
「今押されてるのは、aとbです」にしなきゃいけないわけで。
あ〜めんどくせ。
まぁなんとかしたけどね。半日かけて...orz


ああぁぁぁぁ〜〜・・・
こんな作業ばっかりやってると、ホント自分が嫌になるなぁ・・・
こんな方向に頑張ってどうすんだ自分。
『褒めて欲しい!』とか?
ないない。褒められたらむしろ逆ギレするって。
何をやったって、死にそうなほど頑張ったって、世界からすれば
オレのやってることなんかゴミでありクズでしかないわけだよ。
それを「スゴイ」とか言うヤツは、世の中を知らないだけでしょう。
こんなゴミに対して評価を下す自分に幻滅するだけでしょう。
「自分にはできない。貴方はスゴイ」とかさ。
こんな馬鹿相手にして諦め?聞きたかねぇよ!!
オレなんかは最低ライン突っ走ってたらそれでいいんだよ!!
オレにあんたを見下せってか!!?になる。

オレは。オレのことが大嫌いだ。
こんなヤツは誰かにこき使われて死ねばそれでいい。
いや、使うのすら邪魔だ。ない方がマシだ。
価値もない役立たず。
無駄に時間だけかかって、出来上がるブツすらも役立たず。
こんな馬鹿、さっさと消えれば世の中平和になるだろうに。
無難な使い方があったとしても、ゴミを押し込むゴミ箱にできりゃ十分。
死ねばいいんだよ。お前なんか。死ねばいいんだよ。

・・・とかね。思うんだけどね。
実際は自分の価値観で自分を恨んでるだけなんだよね。
過ちを犯した自分を許せないだけなんだよね。
でもさ。
自分を恨む自分が一番優しいんだよね。
実際のところ、もう何かを殺したりしないって誓ってるだけで。
そういう意志を否定したくないんだよね。
否定したら忘れそうだし。また繰り返すだろうし。
というか、何かを犠牲にしなきゃ生きられない世の中、
犠牲を出すぐらいなら生きたくない、みたいな、ね。
犠牲という意味では他人にも言えるようなことだけど、
他人は納得しなくても、自分はそれに納得してるからそれでいいわけで。
まあ。とにかく。
なんだかんだ理由を付けて今を生きてる自分を、許せるはずもなく。
夢は一刻も早く死ぬこと。
くだらなく生きてる自分なんか、いらない。

拍手

PR

まだまだ作業中。


今日は。昨日の続き。ひたすら続き。
で。
画像の一部切り取り表示できるようになりました。
画像の拡大縮小できるようになりました。
画像表示時の色を変更できるようになりました。
なにより。

y座標反転できましたあああああ!!

いや。実はですね。
Macでプログラム組んでたときの座標は
^

┼─>
な感じで、左下が原点なんだけど・・・DirectXは

┼─>

v
な感じで左上が原点なんだよね。
だから、Macでの(0, 0)は、DirectXでの(0, 画面縦サイズ)なんだよね・・・
Macでの(100, 100)は、DirectXでの(100, 画面サイズ - 100)なんだよね・・・
いや、それだけならいいんだ。問題は。
画像の拡大縮小したときの画像の中心点の場所が、クソ分かりづらい。
画像右上の座標も、
画像右下の座標も、
画像左上の座標も、
画像左下の座標も、
全部反転・・・かと思いきや、画像の縦幅、横幅が分かれば、
座標反転なんてしなくてよかったりなんかして。
で、安心してたら、表示しなきゃいけない場所は座標反転しなきゃいけなくて。
でもでも、画像の拡大処理をした時に、どうも座標も倍にされてるみたいで。
それに気付くのにめちゃ時間かかって...orz
ま、なんとかしたけど。

表示部分は大分落ち着いて来たので、
そろそろMac側で使ってたフレームワークの再定義をば。
・・・ここで大問題。

angleって・・・どうやって出してるんだ?(爆)

オレの脳みそ貧弱だから、わっかんね。
でもまぁ、それぐらい調べりゃ出てくるでしょう。
バネの動き実装するときもそれでいけたし、角度くらい問題ないでしょう。
調べにゃ意味ないけど。
ぐふん。


で。だよ。
最近順調に作業してるにゃしてるけど、自分につっこみたい。
それ、頑張ってどうなの。意味あるの?
むしろ邪魔じゃねぇの?
他にやらなきゃいけないことあるじゃない。
それも、他人を巻き込む大事な大事なもの。
例え今の作業が自分の将来に関わることであっても、
今目の前で必要なことを無視する理由になるか?
ならないだろ。調子に乗るなよ。

拍手

進め進め。


はい。昨日に引き続きDirectX奮闘中。
で。
昨日のサイズ変だよ事件は解決。
簡易設定で描画するメソッドと、詳細設定で描画するメソッドがあって、
詳細設定の方でちゃんと画像のサイズ指定してやったらできた。
よかったよかった。

次。
いかに元のゲームのソースと上手く繋げられるか。

実験その1。
描画部分だけを別のクラスにできないか実験。
・・・失敗。
ウインドウの管理と描画は切っても切り離せないというか、
離すのが難しいらしく、よく分からんところで
『D3DX :アクセスエラー』(??)とかなんとかなんとか・・・

実験その2。
サンプルでは1つしか画像が表示できないから、それをリスト化できないか実験。
とりあえず実験1でのクラスは没。新しいプロジェクトを作成してトライ。
std::list・・・あ、別に画像の登録さえしたら、
そんなに頻繁にnewやらdeleteしないから
std::vectorでいっか。ま、あんまり変わらんけど。

ここで事件。
ブレークポイント付けてみたら、なんだかとっても無限ループ。
なんでだ?変だな?どうなってんだ?と、思ったら。

for (std::vector::iterator it = gImgs.begin(); it != end;)
{
...

・・・ってオイ!!?
『it++』抜けてんじゃねぇか!!

for (std::vector::iterator it = gImgs.begin(); it != end; it++)
{
...

うん。解決。さてどうなった?
・・・お、上手くいった。表示されてる。
が。メモリ解放し忘れ報告が。
うあぁ。
あれだ。画像自体のリリース処理はしてるんだけど、
リストに入ってるそれそのものをdeleteしてない・・・
ということでdelete。
・・・OK。ばっちり。


さて、実験その3。
表示する画像、縦横の拡大縮小率、アルファ値、表示位置、を
指定して、描画する部分をメソッド化できないか実験。
・・・現在ここ。まだ手つかず。
現状、1つのファイル(main.cpp)だけで完結してるから、
このファイルの外部からの命令で、画面のクリアと
敵やらプレイヤーやらの画像の描画をしないといけない。
つまり、クリアと画像表示を分離しなきゃいけないわけで。
いや、分離だけなら簡単なんだけど、
問題は表示する画像の詳細設定っすな・・・
画像の指定をどうやってやるのか。
拡大縮小率をどう指定するのか。
アルファ値は・・・まぁまだどうにでもなりそう。
表示位置に至っては、まず指定に使ってる型が違うから・・・

あ、あとあれだ。忘れてた。画像の切り取り作業。
1枚の画像から画像を切り取って使うことがあるから、
それも指定できなきゃいけない。
指定サイズは画像ファイルを読み込んだ時点でやっとかなきゃマズいから・・・
今あるstructのimgにメンバを追加かな・・・おぉ・・・めんどい。

さて。
明日中には表示準備を終わらせたい。
まだ入力の認識と効果音を鳴らす作業が残ってるし、そもそも移植できてない。
ソース持って来て、動かしてみないと。
ややこしそうだから、先にMac側で設定の必要がありそうな部分を
抽出した状態で実行できるようにしておこうかな・・・
で、移植時には、抽出した部分だけを書き換えればOK、と。
便利便利。
よし。Winでの作業も飽きて来たから、今からMacでそれやろう。
いってきまーす。

拍手

奮闘中


今日はひたすら移植作業・・・の前の準備。
窓ズでの描画ってどうすんだよ事件。
いや、はじめは描画自体は問題なくできたのよ。
ライブラリありきとは言え。
でもね。そのライブラリ・・・
描画に特化はしてるんだけど、ウインドウサイズを
変えさせてくれないという悲しいオチ(汗)
いや、どうやらその人の作ったもう一個の方のライブラリでなら
できなくはないんだけども・・・
逆にそっちでは描画処理いじりにくい・・・(汗汗)

で。
どうしたかと言うと。
どうせそのうち使うだろうと、れっつDirectX。
姐にヘルプを求めつつ、貸して頂いた本を片手に、
本付属のサンプルを動かそうと奮闘。
ちゃんと動いたよ。動いたけど、ね。
なんでだろうなぁ。

読み込む画像によって拡大縮小率がコロコロ変わるのは・・・

なんでだ?
その疑問に至った時点で姐はもう就寝モード。
仕方がないから明日聞こう。
ってか、最初使おうとしたライブラリが使えれば一番幸せ?
でもそれってただのなまくら?
この期を逃していつDirectX触るよ?
いやいや。粘れオレ。気合いだオレ。
そして死ね(強調(おーい)

拍手

過去話





あら、どったの?
あんたが飛んでるとは珍しい。

「ナニ。文句ある?」

いやいや。好きにすりゃいいと思うけど?
どーせどんなことをやったって、その中じゃ無意味なんだし。

「単なる嫌みにしか聞こえんのだけんども?」

だって嫌みだし。

「・・・ケッ」

で、ホントどうしたわけ?

「いやぁ。またゴミが増えたなと思って」

をいをい。ゴミ言うなや。あれでも当人らは必死よ?

「理解不能。オレの中じゃ全部ゴミだ」

・・・あのさ、零。
そりゃあオレは相当人を恨んだよ?
自分の遊び場所から追い出された挙げ句、
そこを守るための手段かと思いきや、全く逆のことしてさ?
コンクリートの塊がそこにズーンと出来上がって、
こんなもんのために、そこにいた皆殺したのかと。
ただでさえ、自分の手の中で醜い姿になって死んでいくヤツもいたのに、
そこにいた皆全員、こんなものの犠牲になったのかと。
殺したかった。壊したかった。でも何もできなかった。
でもそれでいいんだと思う。それを望むのは、オレだけだ。
誰も疑問に思っちゃいない。おかしいのはオレの方なんだ。

「例えそうだとしても、自分がそう感じた事実をねじ曲げる理由になると思う?」
「あんたは、このままでいいの?」

じゃあどうすんのさ?殺すわけ?壊すわけ?
それじゃ人のやったことと一緒じゃん?
同じ思いを自分でない誰かにさせるだけじゃん?
違う?

「・・・」

何もしないのが正解なんだよ。何かしそうなら、死んだ方がマシだ。

「・・・あんたさ。昔は必死だったよね」
「皆を助けるとか」
「罪な自分にはない生きる権利を、自分の創り出した人形に与えようとか」
「常に何かに必死だったよね。それも、自分の思いのために」

そんなもの、いらないじゃん。
それを大事にしたいのは自分だけ。足掻くだけいい迷惑。

「じゃあ何を大事にする?」

オレ以外のすべて。

「そのために何もしないわけ?」

そうそう。
壊すにもリスクがあるから、とりあえず何もしないってね。
寿命とか病気とか、上手くいけば人の恨みがオレを殺してくれるさね。

「・・・ケッ」


拍手