高橋かずひとのプログラミング、その他、備忘録。

日々調べてたことや、作ってみたものをメモしているブログ。 お決まりの断り文句ですが、このブログに書かれている内容は個人の見解であり、所属する組織の公式見解ではありません。チラ裏。

クリスタのclipファイルから、レイヤー名や画像を取得するツール(非公式)🦔

表題の通りです。
完全に趣味の産物ですが、いったん、それなりに動くところまで来たのでGitHubに公開しました🦔

github.com

 

昨日ザッと書き上げた時は、ブロックデータを画像に直す処理が結構遅かったのですが、本日何とか許容範囲(個人の感想です)になりました。

高速化の一部分はChatGPTに相談しながらやりました。結構助けてくれますね👀

昨日:10~15秒かかってた処理をChatGPTに書き直してもらい、5、6秒くらいに改善
本日①:一晩寝て起きたら、そもそも根本的に改善できる気がしたので、ChatGPTが書いた処理を廃棄して、自分で書き直し10秒から1秒程度に改善
本日②:もう少し改善できる箇所は無いかChatGPTに聞いて、アドバイスを元に修正し、1秒から300ms程度に改善

みたいな流れでした👻

ChatGPTは、(まだ)根本的に改善するようなアドバイスは出来ないようでした。
それでも、要所要所で上手く質問すれば、見落としていた観点とか教えてくれて、助かりました。

 

ちなみに、まだ改善点は残っているのですが、そこまで高速化しなくても僕が使う分には問題無いので、いったん放置しています。

 

今分かっている範囲で残ってる高速化の改善点↓

・External Dataに格納されている画像は、以下のような特徴のブロックデータになっているため、各ブロックの処理をパラレルにして高速化することが出来る想定
 - 画像データは、アルファ画像ブロック65536バイト(256x256x1チャンネル)、画像ブロック262144バイト(256x256x4チャンネル)が交互に並んでいる
 - 各画像ブロックはパディングを詰めて256x256の固定長サイズになっている

 

以上