Profile

書いてる人:

たけ-ちーず
紹介文:
SkypeID:take-cheeze

Link

RSS Feed

Search

Calender

Latest Article

Category

Access Counter

Online Counter

Show All Article

どうでもいい独り言。 と、少しの開発日記。
  • 11 «
  • 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
  • 31
  • » 01
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
【--/--/-- --:--】 | スポンサー広告 |
ずっと前に貸した気がする本が返ってきた。
別に忘れているわけでは、ないんですけど、人に物を貸すと忘れてます。
そうゆう本は、読み返すと誰かに貸してた自分の破片みたいでとても感慨深くなります。
そして、忘れていることは、それ以上に大事だったりして、先に立たない杭を残していることが多いです。

最近、「こんなに寒いのによく生きているな」と生き物に失礼な感想を抱くことも多いです。
対象は概ね虫なんですけど、足の冷える時季なのに、と尊敬してします。
……足に刺されるのは最悪なんですが。


今日は、ARGSS本家の移植とかをしてました。
移植とかバグ探しは、評価されなかったりとか色んなコトを誰かが今日も言われてましたが、わたしは好きです。

自分の出る幕が少ないことはいいです。
地道で、報われたと感じるのが難しいのもいいです。
自分のペースを維持できて、無理なく無駄なくできれば尚いいです。

それから、「小さなアイディア」を形にしやすそうなのが好きなのかもしれません。
地味にただし確実に改善を行えるのは、とても楽しそうです。
危なっかしい橋を渡るのも楽しそうです。


……っと、まあ一から構築するのが苦手な発想だと想います。
再構築は、無理をしなければ、何かを容易に生み出せる気がします。


おやすみなさい。
【2010/10/15 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
namespaceとstructの使い分け。
ARGSSの本家のソースコードが大分変わっていたので、久しぶりに弄ってみました。
ruby-1.9.x系だと、コンパイルが通らないのがあったりと、まあ、色々難儀しました。

って、まあ、色んな不満があるんですけど、ここにぶつけるものでも無いので(略)です。


最近、namespaceとstructの使い分けがうまく行かなくて、消化不良気味です。

前者は、ADLがとってもこわいです。
後者は、定義でstatic付けるのがメンドクサイです。

……なんていうか、単なる勉強不足ですね。
ちゃんと勉強してる人なら絶対迷わない選択なんですよ。


それから、EasyRPGの中の人とチャットで話しました。
ありがちな地雷を踏んだりして、わたしが勝手にボロボロになってました。
ただ、会話自体はとても楽しかったです。

わたしは人と話すことも苦手ですが、文字だけで話すのもやっぱり苦手なダメ人間なのは確かだと想います。

相手の人は、なんかとてもマニアックでした。
わたしの知らないような日本人を知ってたり法律(ライセンスとか)に詳しかったり、面白いです。
その代わりに「わたしの方がプログラミングはできるぜ」って過大評価が膨らみました。

そして、メイン開発者さんと一番お話してみたいなって思っていたんですけど、その人はアルゼンチン人らしく、「遠っ」て想いました。
一応、メールアドレスとか連絡方法を聞いたので、メールを頑張って書いてみたいと想います。


おやすみなさい。
【2010/10/13 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
自分の限界を知りたくない程度には愚か。
今日は、たまたま実装されていたARGSSのSocketクラスのRubyインターフェースを書いてました。
やっぱり、こうゆう単調な作業はラクチンでいいです。
いつも、色々見失ってて、まあ疲れます。

分散バージョン管理は、コミットを気楽にできていいですね。
コミットする基準を自分の中で明確に決めていないのが、悪いんですけどね。

それから、変更を加えるファイルを数個に留めておきたいと最近おもいます。
わざわざ危ない橋を渡りたがるとかどうかしているんでしょうね。


おやすみなさい。
【2010/08/20 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
freetype
freetype2のリファレンスをニョロニョロと調べているんですけど、用語の意味が全くわからないので、ほとんど徒労に終わっています。
とっとと、頭に用語を叩き込むべきでしょうね。

あと、↓はテストスクリプトでウィンドウを表示してみたのです。
Screenshot-ARGSS Test - 58 FPS

タイルマップのテストスクリプトも書いてみようかなとか思ってます。


おやすみなさい。
【2010/07/28 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
ゲームはまだ動かない。
何個かインターネット上で配布されているRPGツクールXP製のゲームを動かしているんですが、なかなかうまくいっていません。
多分、Tableの何処かにプログラムミスがあるんでしょうね。
もう少し深く考えてみます。


それから、ぼかしのアルゴリズムを少し調べたんですが平均化が簡単そうでした。
でも、いくつか他にあって、そうゆうのも調べてみる価値がありそうな気がします。

どうしても周囲の情報が必要になるので、遅くなるのは仕方ないんでしょうね。
GPUは、こうゆう処理が速いらしいです。


おやすみなさい。
【2010/07/26 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
Rubyを書いた。
テストスクリプトをRubyで書いたんですけど、やっぱり綺麗に書けませんね。
相変わらず、自分の汚いコードが生成されて辟易しましたよ。ええ。

こうゆうのって、やっぱりセンスの違いが如実に出て、トナリのオウチが羨ましくなってるだけなんでしょうね。

あと、スクリプトの判定でmarshal関連は、盛大に何処かが間違っているみたいです。
ちゃんと検証しないと。


でも、Rubyの文法ってなんでC++と比べてああも違うんでしょうね。
驚きました。foreachの文法を理解するのが大変でしたし、newの仕方も奇想天外でした。
まさか、メソッドとは想いませんでしたよ。


おやすみなさい。
【2010/07/24 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
xpressive
boost.regexの記事でみかけてspiritさんがとっても重かったので代わりに使ってみたんですけど、どの道重かったです。
spiritさんと同じようなことをしていますし、こちらの方がメタメタしているので仕方がないかもしれません。

C++に実行時最適化があったらいいのに、って真っ向から刃向かっているような意見を持ってしまいます。
世の中には、あのコンパイル時間の長さを愛だと感じる人がいるらしいので、とっても怖いです。

わたしは、第一言語がC++なんですが、C++erほど忠誠心がない浪人のつもりなんですからね。
C++は今のところ一番すきですが、多分、これよりもいいなって思う言葉があったらさっさとそっちに移っちゃうと想います。
『花の色は~』ですよ。


それから、ARGSSも色々やってますが、今はtilemapで詰まっています。
なんかあるはずのTableが無いみたいで大変です。
"Test Script"で試すべきでしょうね、これは。
Rubyを書けるまたとないチャンスですから。

あと、作業ディレクトリにrubybindというものも足したりしました。
boost.python -> luabind -> rubybindという流れみたいです。

うまくやれば、その三方でwrite-onceできればいいとか思っていますけど、rubybindは足元にも及んでいないので、その微妙な発想は完結しています。
改良出来ればいいと思っています。

まあ、ほとんど『できんのか?これ』とか思って終わりだと想います。
ARGSSの基コードが、かなりRuby依存ですから。


おやすみなさい。
【2010/07/23 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
なんとかboost.spiritで解析できた。
一応、動かすことが出来たんですけど、大掛かりすぎたと後悔しました。
どう考えても正規表現でさっさとやってしまった方が楽でした。

コンパイル時間を考えると多分そっちの方が良かったです。
置換とかで、正規表現をよく使うのでそっちの方が、ハードルも低いと想います。

まだqiに触れただけなので、大したコトはまだしていんですよね。
karmaのドキュメントは、qiを理解するのにあっぷあっぷしてるので当分は消化不良が続くと想います。


RangeのTutorialも少し読んでみたんですが、設計思想の一糸くらいしか掴めませんでした。
引き続き、for文を愚直に書いてしまいますし、質の悪いコードを垂れ流します。


RGSSのTableなんですが、Tableのdump/loadを読めばいいだけでした。
よく読むべきでした。

大体、こんな構造みたいです。

struct Table
{
uint32_t dimension;
uint32_t xsize, ysize, zsize;
uint32_t data_size;
int16_t data[data_size];
};




おやすみなさい。
【2010/07/19 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
でけた。
こんばんは。

昨日のコトは、かなり簡単なミスで、なんか簡単に直っちゃいました。
std::stringのコンストラクタに渡すポインタが間違ってたとかそうゆうのです。

喩えるなら、数学のテストで記号を一個書き忘れて、パーフェクトを逃す感じです。
(自虐ネタなら別にいいんですけど、他人に指摘されるとグサってくるような具体的な喩えですいません)

以下、スクリーンショットです。
ARGSS付属のテストスクリプト4番(フォントのテスト)を実行した時のものになります。
Screenshot-9.png

フォントは、IPA ゴシックを使っています。
ホントは、ちゃんと環境にあるフォントを探したかったんですが、今は、ファイル名を直接指定して、使えるのを限定しています。

それと、中身では、UTF-8をUTF-32に変換しています。
これで、日本語も正常に表示できるようになりました。

今回のスクリーンショットでは、わかりませんがちゃんと確認しています。
撮るとマズそうだったので撮らなかっただけです。


おやすみなさい。
【2010/07/17 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
FreeType関連。
フォント表示がうまくいきませんでした。
ASCIIを普通に描けるのにUTF-8はできないとか何事ですか?、な感じです。

多分、文字コード関連でミスってるんだと想います。
いい加減に書いて動いちゃわないかなーとか楽観したいです。


それから、std::mapでerase()を使う時って気を付けないと危ないですね。
erase()にかけたイテレータを使い回したら、SIGSEGVしました。

注射器の使い回しがアウトなように、これもアウトだと認識して欲しいです。
(今回は、ちゃんと落ちてくれるので、のーぷろぶれま、なんですけどね……)


おやすみなさい。
【2010/07/16 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
自分のプログラムミスが恥ずかしすぎる。
簡単なXOR暗号化がうまく解けなくてあたふたしてたなんて、恥ずかしい限りです。
暗号化の初歩なんですけどね。圧縮で言えば、ランレングス法くらい初歩的なんですよね。

boost.filesystemをディレクトリをつくるためだけにも使いました。
過ぎたコトをした悪い後味です。

標準ライブラリのi/ostreamって微妙に使いづらいですね。
今日、使ってしまったんですが、stdioのシンプルさには負けますね。
ただ、スコープを抜けたときに自動的に開放してくれる機能は便利です(当たり前ですけど……)。

それから、再度、暗号化するコードも書いてみたんですけど、これはうまく行きませんでした。
多分、まだ何処かでポカをやらかしているんだと想います。


あと、『もっと堅牢な暗号化とかに対応させてみたら楽しい』とか想いました。
そうゆうの全く知らないんですけど、アルゴリズムを借用するぐらいならきっとわたしにも出来る気がします。


おやすみなさい。
【2010/07/15 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
普通に自分の間違いだった時、死になる話。
昨日のは前言撤回です。

rb_marshal_load( rb_str_new( reinterpret_cast< char const* >( &(data[0]) ), data.size() ) );

これで、普通に出来ました。
(dataは、std::stringでもstd::vector< uint8_t >でもいいです。ご想像にお任せします)
(StringIOでも普通に出来ました。勘違い野郎ですね)

うまくいってなかった原因は自分にあるとかそうゆうオチです。
他人に罪をなすりつけたかっただけだったんでしょうね。
ホント、Rubyさん、ごめんなさい。馴れ馴れしい謝罪で、ごめんなさい。

件の原因は、きっと暗号を復号化するとこで、なにかやらかしているんだと想います。
暗号化をうまく解除できてるのか、確認する手段を手に入れないとマズイみたいです。


それから、静的な言語(C++)を扱ってて思うんですけど、もっと短く書きたいです。
かといって、型付けがユルイ言語も気持ち悪いんですよね。もっと視界の縮尺を上げないといけないです。


それと、このPDF(Google Docs)面白かったです。
『細心の注意』が欲しくなります。


おやすみなさい。
【2010/07/14 23:40】 | ARGSS | トラックバック(0) | コメント(0) |
Rubyは組み込みスクリプトに向いてない気がする。
まあ、そんな目的のためにあるわけじゃないので、当然ですが……。
だったら、Lua使えって話です。

でも、RGSSはRubyなので仕方がないです。
便利スクリプトして日陰者にされていた方に日の目を見せてくれたので、その流れがもっと加速すればいいとか思ってます。

で、なんでこんなコト言っているのかというと、StringIOでMarshal.loadできなかったからです。
原因は、StringIOがIOの子どもじゃないからだと想います。
Rubyはそんなに詳しくないので、あくまで推測です。

わたしは、ファイルからもメモリからも平等にデータを扱えるのって、個人的に重要だと思ってます。
Mix_LoadMUS_RWが少し古いSDL_mixerで使えないのは、とても許せません。(というか困ってる)



っと、まあ愚痴でした。

おやすみなさい。
【2010/07/13 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
暗号化アーカイヴのファイル名を抽出した。
@rgssws4wさんのRuby実装を参考に(丸写し)で、暗号化アーカイヴの中身を覗いてみました。
多分、そのコードは、pushしないんですが、暗号化って未だによくわかんないです。
ホントに、学問として体系化されているのも納得の複雑さですよ。
早く慣れたいです、このよくわからないことに。

それと、暗号化アーカイヴにアクセスできるように、抽象化層も書かないといけないです。
パス区切りとか気にしないといけないのでなんか疲れると想います。


おやすみなさい。
【2010/07/12 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
Tableの実装。
Tableのネイティヴなclassを書いてpushしました。
Rubyのインターフェースも書き方ったんですが、そこら辺は調査不足というか仕様をよくしらなかったのでやめました。

恐らく2バイトの整数を使っているんでしょうけど、marshal dumpをどうしてるのかよく分かなんないのでなんとも言えません。
あと、わざわざ"std::vector< std::vector< std::vector< int16_t > > >"なんて律儀に書きたくなかったのですが、書いてしまいました。
個人的に、そうゆうのが許されるのは、2までだとか思ってます。
2以降の呼称がメンドクサイなんてわけじゃなくて、そんなこと言ったらもっと必要になるからです。
わたしは、今日、簡単な方に流れてしまいました。悔しいです。


それから、コピペもしました。あんまり意味のないコピペをしました。
Rubyには、ゴミ収集が働いているのに、nedmallocをrpg2kemuから少し名前を弄ってコピーしたんです。
コンテナでのアロケートが少し速くなるかも知れませんが、わたしのプロミネンスに水なんて効果ありません。
ライブラリとかは、ホントにホントに時々抜けてますが、わたしよりも人類が積み上げてきた時間だけ優秀です。

以上、人は、そうして強くなっていくんです、くらいの経験値を積み上げただけでした。


おやすみなさい。
【2010/07/10 23:59】 | ARGSS | トラックバック(0) | コメント(0) |
ホーム
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。