program

ノートPCのタッチパッドにおけるホイール処理

ノートPCについているキーボード下のタッチパッドにおけるマウスホイール処理についてメモしておきたいと思います。 実は難物なんですこれ・・・。 イベント内容 パッドを使ったホイールスクロールの場合は、マウスによるホイールスクロールとは異なり、特…

タッチデバイス

何年ぶりかわからないですが、タッチデバイスについて調べる機会があったので記しておきたいと思います。 ログまでとってあるので、それなりに役立つはず・・・。 まず使う必要はあるのか? マウスの代用であればそのままの状態である「レガシーモード」でも…

PhtoShopのレイヤ結合計算式

さて、今回は画像の結合を行う必要があったので、普通のアルファブレンドではなく、Photoshopにおけるレイヤ結合の計算式を使用しました。 普通の合成と違ってMatrixのCompositeと似てるように思えます。 ゲームではほとんど、または全く使用されない類のも…

CharaCombine(画像結合全パターン出力ツール)

ふと自動トリミングで良いアイデアが浮かんだので形にしようと、GWで仕上げる予定だったツールですがちょっと足が出てしまいました…。 ・CharaCombine ダウンロード http://kota.dokkoisho.com/#CharaCombine ・概要 複数の画像をあれこれ合成して、全パタ…

TBitmapでマルチコア分散処理するときの注意点

NHKで赤い…。 それはともかく、ホームページをごにょごにょと整理したついでに、バグってる公開済みコードも直そうとマルチコアのソースを修正しておりました際に見つけた、かなりドハマリなお話です。 以前(XP)なら特に問題もなかったのですが、環境が変…

DirectSoundの再生時間とWindows時間の誤差

DirectSoundで音楽を長時間(30秒以上)再生すると、Windowsの時間経過との誤差がどれぐらい増えていくかを検証したいと思います。 音楽再生開始時点で少なからず多少の誤差がありますが、その辺の誤差は許容範囲とします。 『時間が進むにつれてその誤差…

luaのエラーイベントハンドラ

lua_pcallのイベントハンドラのお話です。 エラー時点のスタック情報を欲しいなぁ〜って思いまして、リファレンスのlua_pcall項目を見ておりますと、「イベントハンドラ」「イベントハンドラ」「イベントハンドラ」と書かれております。 http://sugarpot.sak…

テーブルシリアライズ高速版

前回はlua上でテーブルシリアライズして文字列で返すものを作りましたが、今度はc(Delphi)版です。 この場合の利点は「速度」のみです。 テーブルのコピー(参照渡しじゃないよ)とか、VM間で値(number,string,table)の受け渡し、SaveLoadの値の書き込み、…

function型を関数名に変換する

Luaのgetinfoでそのスタックの関数名を引けるのですが、どうしてもc側から呼ばれた関数のスタックについては関数名にnilが返され、取得できません。 まぁ、それぐらいだしいいかな〜って気もするのですが、一応取得しておきましょうか。 取得方法は結構面倒…

luaのオンメモリインクルード

luaでメモリ上のコードをインクルードする方法についてです。 「require」命令を使うと基本的に同フォルダの該当するファイルを勝手に読み込みますが、cアプリから、しかもファイルが存在せず、メモリ上のファイルデータの場合は勝手に読み込んでくれません…

テーブルのシリアライズとか

オブジェクトの状態復帰機構をこさえてました。 結局の所は、テーブルのシリアライズが出来れば事足りそうですね。 テーブルを文字列にシリアライズすると色々と応用が出てきて便利なのでお薦めです。 アプリケーション側に複雑かつ長いデータを渡す際にとて…

luaはじめてみました

組込言語は専ら自作しておりましたが、いい加減ポピュラーなものを使おうということで、luaをさわってみました。 これはこれで、自作の自由度と比べると不自由な点が結構あって大変ですが、速度と機能で補って余る感じであります。 luaのいいところは何と言…

解像度の選択

とりあえず、起動時の解像度を使ってフルスクリーン化(最大化)して、プログラム側でアスペクト比を保って画面を拡大するのが安全な方法ということで落ち着いたのですが、すると「ソフト側の拡大が汚い、バイキュービックとかじゃなくて、液晶の拡大を使い…

PNGファイルの最適化

こっそりAlphaTrimerとLinerFilterToolのバージョンアップを行いました。 どちらもPNGの最適化に関わるもので、Alpha0%の部分を単色で塗りつぶします。 PhotoShopでは消しゴムツールは色要素を残したまま透明にするだけなので、実は模様が透明部分に情報とし…

全画面表示の処理方式を変えてみたり

(外部リンクがあるようなので修正&加筆しました) またこんなに空いてしまった。いけませんね、ようやく尿管結石がようやく出たというのに。 分析して貰ったら96%シュウ酸って凄くね!って医者に言われました。 そんなこんなで、ちょっと前にお話しした…

トリミングツール AlphaTrimer

・AlphaTrimer ダウンロード http://kota.dokkoisho.com/#AlphaTrimer ・概要 不要な透明領域をトリミングするツールです。 他のトリミングツールと大きく異なる点は、水平方向、垂直方向にそれぞれ異なるトリミング方式を与えることが出来る点にあります。 …

Windows7のフルスクリーン事情

遅くなりましたが、先日ようやくWindows7を入れました。 シリアルナンバーが通らないという症状で困ってしまいましたがなんとか入りました。(インストール時にハードウェア接続構成から暗号鍵を生成するようで、1回目の再起動後にUSB接続構成がちょっとで…

ストリーミング再生における多重再生時の音量管理について

AlphaOggHDRの内部処理にもなるんですが、詳しく書いてなかったので書いておこうと思います。 ストリーミングで複数の音を重ねる場合、「レンジオーバー絡みの悩み」を解消するお話です。 簡単な原理なのですが、あまりこういった処理内容の記事を見かけるこ…

色んなPNGファイルの読み込み速度比較

ちょっと思うところがありまして、自前ツールで吐かせたもの(Level0〜Level9)と、PhotoShopCSに吐かせたものを比較してみました。 ファイルからのストリームロードも含めるので素の速度より遅い筈ですが、速度差の比率を調べるには問題ないでしょう。 同じ…

ObjectComposit (Metasequoia Plugin)

・ダウンロード(2009/09/26 更新) http://kota.dokkoisho.com/#ObjectComposit ・概要 「オブジェクトリンク」とか「コンポジット」とか言われるオブジェクトのコピー表示を、メタセコイア上で擬似的に行うプラグインです。 任意のオブジェクト(又はそこ…

リニアフィルタ 透明境界線の色漏れ防止ツール

・LinearFilterTool ダウンロード http://kota.dokkoisho.com/#LinearFilterTool ・概要 Alpha境界線の色漏れ対策を行います。 PhotoShopなどで作った素材をリニアフィルタで拡大縮小や1ピクセル以下の浮動小数に移動させると、Alpha0の色とブレンドが発生…

AlphaOgg HDR (OggVorbis再生Delphiライブラリ HDR版)

・AlphaOgg HDR(2009/09/23更新) http://kota.dokkoisho.com/#AlphaOggHDR ・wuvorbis.dll http://kikyou.info/tvp/ (一番下) ・概要 W.Dee氏のwuvorbis.dllを使ってOggVorbisを再生するDelphiライブラリのHDR版です。 HDR処理により、レンジオーバー時…

TheoraLib.DLL(Theora再生Delphiライブラリ)

とりあえず出来たのでアップしておきます。 OggTheora動画再生ライブラリ(DLL)です。 ・ダウンロード(2011/09/29 更新) http://kota.dokkoisho.com/#TheoraLib /---LICENSE---/ "TheoraLib" free for private or commercial use. but apply to the OggTheo…

処理がほぼ一定のぼかし処理

以前「どんな度合いに対しても処理時間がほぼ一定なぼかし」という話がありました。 考えたら、以前とよく似た方法で実現できそうです。 ・考え方 ぼかしの主な処理は任意ピクセル周囲にあるnxnピクセルの色の加算です。 普通にやると凄く重くなるのです…