chikuchikugonzalezの雑記帳

趣味とか日記とかメモとか(∩゚д゚)

開発

PCX (4bit) のメモ

バージョンは2.8 (値は2) を指定すること RLEエンコードのみ対応の模様 0xF0と0x0Fでマスクして格納すること (前4bitと後ろ4bitで2ピクセル分のデータを1バイトに入れる) 当然のごとくインデックスカラー画像 ViXが落ちるお。 IrfanViewなら表示できるお(´・…

メモ化を使った自作画像処理ライブラリでのメモリ削減試行

Rixmapなんていう画像処理ライブラリ作ってるわけなんですが、Rixmap::Colorクラスという色を表すクラスがメモリ食いなんで、メモ化 (参考:blog.pasberth.com: Ruby: newを再定義してインスタンスをメモ化)とかいうのを使って同じ色は同じオブジェクトを使…

WindowsでGitを使う方法 (非正攻法だと思ふ)

WindowsでGitを使いたいと思った時、選択肢としては msysGit GitHub for Windowsもコレだよなー Cygwinでgit くらいが選択肢としてよく上がりますネ。でもですよ、コレだと例えばHerokuなんかはアウトになる時がありまして(´・ω・`) 具体的には Cygwin入っ…

PCXファイルフォーマットのメモ書き

忘れないようにするためのメモっぽいなにかです。とりあえずわかったこと RLE圧縮がデフォルト というより、非圧縮のPCXは仕様外っぽい RLE圧縮は『行単位』で実施 全ピクセルデータをまとめてRLE圧縮しない まとめて圧縮するとソフトウェアによっては表示不…

PaaSを使ってみた感想的ななにか

えー、ちょいちょいシェリスたんBotをGAEから移設しようとしてまして、とりあえずHerokuとDotCloudに目をつけて試してみたんですよ。 結論から言うと、WindowsだとCygwin必須です。以下愚痴 Herokuの場合 herokuはDotCloudよりは楽でしたね、相対的に。 gem …

sndファイルフォーマットについて

ちょいと調べたら偉い単純だった件 フォーマット概要 基本的にSFFと一緒だった +------------------------------------------+ | SND Header (512bytes) | +------------------------------------------+ | SND Node (16bytes + N bytes (wav file) | | × n …

JNIを使ったJavaプログラムをCygwinのGCJでexe化した時のメモ

まぁ、まずはJNIから JavaにはJNIっていう、メソッドをC/C++で書ける機能があります *1。 例えば次のようにmainすらnative化出来たりしますね public class HelloWorld { static { System.loadLibrary("hw"); } public static native void main(String[] arg…

SFFv2をSFFv1にするスクリプト組んでみた

事の発端はTwitterなんですけどね。 @chiku2gonzalez sprmake2関連でぐぐってたらそちらのサイトを見かけました。 SFFv1からv2へのコンバートツールなどを作っていらっしゃるようですが、逆にv2からv1にコンバートすることは可能でしょうか? 64bitOSで旧s…

PythonでEnum型

いっこ前のでメタクラスでシングルトンとかやりましたが、なんとなく必要になったEnum型の実装もメタクラスでやってみた。 いや先人の知恵でEnum型は実装済みだったんですが、Enumっぽいクラスのサブクラスにするのがなんとなくやだったので(;´∀`) つまり…

Pythonでシングルトン

基本的にPythonista見習いなので、とりあえずPythonでやってみたい衝動があります。 それでここ最近メタプログラミングとかいうのに目覚めたので、メタクラスを使ってちょいちょい遊びました。で、手始めにシングルトンオブジェクトをあれやこれや先人の知恵…

mattr_accessorとcattr_accessor

Rubyの記事を検索して出てくるページにですね、モジュールに対するattr_accessorみたいな関数であるmattr_accessorというのがあったのですよ。 で、それを使おうとしたら そんなんしらんわ(´・ω・`) 的なことをRubyインタプリタさんは言ってくるわけですよ…

製作環境とかなんとか

ウチの製作環境。たぶん同じ構成の人はいないと思うけど。 用途 ツール名 SFF編集 SFF Air Editor, SFF Air Maker AIR編集 〃 SND編集 〃 記述系 GVIM (香り屋版) *1 ドット絵編集 EDGE, GraphicsGale, GIMP2 減色 Padie 画像の縮小 Bitmap Resizer 音声編集…

ウィンドウを表示するだけのコード

なんとなくメモ的ななにか。 Java系 Javaの場合 public class WindowJava { public static void main(String[] args) { javax.swing.JFrame win = new javax.swing.JFrame(); win.setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); win…

Work in Progress まとめ

なんかいろいろ背負い込んだのでまとめておく。 優先度 名称 備考 高 Notocactus (ベルトスクロールアクションゲームエンジン) Oops, you've found a dead link — Bitbucket ↑ 【MUGEN】シェリス様作るよプロジェクト 【MUGEN】ルナ姫木再構築プロジェクト ↓…

PythonからDXライブラリを使ってみる

たまには技術屋っぽい事も書いておかないと、とか思って最近やってることについて書くなど。とある方の手伝いで真面目にDirectX触らないといけない自体になりまして*1。 とりあえず楽できそうなDXライブラリに手を出してみみました。が、C/C++な時点でPHPに…

printf/sprintfフォーマット指定子でフィールド幅を可変にする方法

まさかMUGEN関係の記事を見てて新たな知恵を得ようとは。それもC言語的な方面の。発端はdrab氏 (でいいのかな) の%nの記事で、 4.フィールド幅、精度 既に、メモリエディタさえ用意すれば%nを使えるようになったはずですが、ここでは%nを利用する上での小…

GAEで動作するTwitter BOTとか作ってたりもした

現在セリフデータ収集中なので動作してません*1が、GAE/PythonでTwitter BOTつくってました。 抱き枕カバー到着で発作的につくりはじめたやつなので、当然のごとくシェリス様です。むしろこっちが先で、なんでか知らんがMUGENキャラ化してた。で、そのメモを…

WindowsでApache2+Mongrel+Redmineをやってやったわー(ヽ'ω`)

シェリス様つくるのになんとなーくタスク管理とかしたかったので再度Redmineを投入してみました*1。 前回はTomcat+JRuby+Redmineな環境でしたが、今回はApache2でやりたかった。そしてすごく嵌ったのである。ぶっちゃけWindows+Apache環境でRedmineなんて考…

PythonからJNIを操作するC拡張を作ってみた

なんとなくPythonの拡張を作ってみたくてこの2日間がんばってみた*1。Pythonを扱っているはずだけどC++しかやってないな、そういえば。 で、作ったものはpyjvmモジュールと名づけてみた。何をするものかというと、PythonからJavaVM (JNI関数) を呼ぶだけ。し…

Zend_DateとZend_LocaleとZend_Dbではまったことのメモ

Zend_Dateを使ってMySQLに日付データを入れようとしたらなんだかしらないけどデフォルトに設定した'0000-00-00 00:00:00'になる問題にぶちあたったので、解決までのメモ。 たぶんこの現象 (Zend_Date::now() storing wrong date into DB) と同じだと思う。あ…

Tkinterでテキストエディタを作りたい

昔挫折したTkinterによるテキストエディタにまた手を出してみた。前はたしかタブエディタにしようとして挫折したので今回は普通のMDIなエディタにしよう、うん。 とりあえずメニュー項目をXMLから作れるようにしてみた。↓こんなXMLを用意してやると <menus> <menu type="cascade" label="ファイル(F)" name="fileMenu" underline="5" tearoff="True"> </menu></menus>

Zend Frameworkでふと思ったこと

最近Zend Frameworkで開発をしていたわけですが、その前にStrutsをやっていたこともあって「Zend = Struts」の位置にいるものだと思ってたのです。でもちょっと思った。 Zendって生のServletの位置にいるんじゃね?と*1。 何でかって Strutsでrequest.getPar…

MediaFireツールの公開を停止しました

MediaFireの仕様変更についていけなくなったので(´・ ω・`) 正直なところJavaScriptの解析が面倒になった。unescapeとevalの嵐は解読できる気がしません。

IronRubyとIronPythonでのアセンブリの読み込み方法

メモしておかないと忘れそう。特にIronPythonのほう。 IronRubyでの読み込み方 普通にrequireで出来る。 #!ir require 'System.Windows.Forms' require 'System.Drawing' class TestForm < System::Windows::Forms::Form end if __FILE__ == $0 System::Wind…

VMware Playerを導入しました

Linuxが軒並み挙動がおかしくなるVirtual PCに見切りをつけ、仮想マシン作成機能も付いたVMware Playerを導入してみました。 うん、快適快適。が、これはどーゆーこと? 文字切れて見にくいのですが(;´Д)

Unicodeの符号化方式

UTF-16 < UCS-2だと思っていたらUTF-16 > UCS-2だった。 いや、某所で「Unicodeだと全角文字が3バイト」の発言を見て、『それはUTF-8を使ってUnicodeを符号化したときの話だ』と突っ込みたかっただけです。 符号化方式 バイト数とか UTF-8 1〜4バイト*1。ASC…

MUGENのキャラクター作るのにもSubversionが必須になってきた

Subversionがあると 上書きしても戻せる 履歴見放題 むしろ削除したことも履歴に残るので、実質的に削除が出来ない 差分保存でバックアップ容量が節約できる (気がする) バージョン番号考えなくていい 編集した結果はコミットするまでは、無かったことに出来…

プロジェクト管理始めました

とりあえずRedmineを使ってのプロジェクト管理をはじめてみました。構成は Redmine on (JRuby on Rails) on Tomcat 6.0 となってます。 使っているのは〜 Webサーバ Tomcat 6.0 バージョン管理 Subversion 1.6 プロジェクト管理 Redmine 0.9.2 Ruby JRuby 1.…

JRuby on Rails on Tomcatならできた

うーん、warblerで普通にwarを作ったやつはTomcatで動くんだけどなー。 GAEでやるとエラーメッセージなしで500になっちゃうんだよなー。 なんとなーくRailsのコントローラが見つかってない気がする。

Google App EngineでRedmineがやりたい

つまりはRedmine on (JRuby on Rails) on GAE/J。 で、Redmin on (JRuby on Rails) までは出来た。が、GAE/Jへ乗せることができなかったorz。一応JRuby on Rails on GAEをやった人がいるので、やりかたはあるのだろうけど*1。 *1:ツール類がウチだとエラー吐…