FC2ブログ

三角端。

Δ-sphere管理人三角区也による絵日記/ゲーム開発日記。コメントは右側のweb拍手からどぞー。

libpng

先週は北海道に行ってました。

昼間の気温は-5度とかだったんですが、なぜか寒く感じませんでした。
正直東京とかの方が寒いです。
日光が雪に反射するからでしょうかね?
スキーとかで日焼けするっていいますもんね。

でも帰りの空港が-12度で寒かったです。





libpngをライブラリに組み込んでいます。


もともとPNGの解析エンジンを自前で実装しようとしていました。
PNGのチャンクを取るところまでは簡単だったんですが、
IDATチャンク、画像のピクセルデータが入っているチャンクが
ZIP圧縮がかかっていてその展開ルーチンがよくわからず・・・

さらにzlibだけ入れようとしても詳しい仕様の日本語版のサイトがほとんどなくなっているようで、
結局libpngを導入することにしました。

libpngを入れるためにzlibと一緒にビルド。
できたlibpng.libをコピーしてゲーム側に持ってくるとなぜか
error LNK2019: 未解決の外部シンボル _crc32 が関数 _png_reset_crc で参照されました。
といったリンクエラーがずらずらと。
色々試していたらどうやらzlib.libも必要なようで。

libpng内部でzlibを使っているので当然といえば当然なんですが、
libpngに入っているプロジェクトをビルドしたら当然zlibがそのライブラリに入っているものだと思ってしまって、
この原因を見つけるのに無駄に時間がかかってしまいました(´・ω・`)

でも、まあ、無事にビルドして導入できたので一安心です。
スポンサーサイト