program

α値つきパレット減色

意外と未だに需要が多い割に、対応してるのはほとんどが糞高いシェアウェアとかでしかもGUI。 バッチ処理があるっていってもコマンドラインからだとやはり使いづらいので、最初からフロントエンドと分けてくれればいいのにとか思う。 と思ってたらすごいのが…

デバッグできない

なんか特定のファイルだけデバッグ情報でなくてはまった。。。 環境移行はつらいぜよ。 http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=257183&SiteID=7 28 11 2006, 2:17 午後 UTC BaryonLee 投稿数1 Re: C++のソースがデバッグ時に表示できな…

モンテカルロ法

参加します。東大で僕と握手! http://www.igda.jp/modules/news/article.php?storyid=1519 囲碁ってルールは知ってるんだけど中盤から終盤にかけての意味不明具合は半端ないね。 わかるんだけども、状況がどうなってるのかよくわかんないのよね。 この前も…

Box2Dとオブジェクト管理

Box2Dを触り始めたけど、すごく簡単ですね。 Box2Dでも後処理をしてくれてるみたいなんだけど、 結局自分でも管理する必要(たとえば画面外の物は削除するとか、その時に関連したJoinを削除とか)があってさらにそれをLuaとかで操作したりするとさらにLua側…

軽量組み込み言語Nasal

http://www.plausible.org/nasal/2006年で更新が止まってるけど、なかなかよさそうな感じ。

SDLで後からアイコンを変更したい

SDLにはSDL_WM_SetIconてのがあるんだけどInitする前に呼ばなきゃいけないとか不便すぎる。 HICON hIcon = (HICON)LoadImage( (HINSTANCE)GetModuleHandle(0), MAKEINTRESOURCE(IDI_ICON1), IMAGE_ICON, 0, 0, LR_DEFAULTCOLOR ); SendMessage( hWnd, WM_SET…

VCでSDLのコンソール消す方法

外に出す時ってコンソール消したいよね。でもぐぐっても見つからなかったのでメモ。 プロジェクトのプロパティを探したらあった。 起動(mainがある)プロジェクト→構成プロパティ→リンカ→システム→サブシステム の コンソール (/SUBSYSTEM:CONSOLE)を Windows…

FindFirstFile

Win32APIのFindFirstFileのワイルドカードって結構制限があって使いづらい。 複雑だと展開するのむずいのはわかるけど。 こんな感じのディレクトリがあったとする。 +. +hoge +foo +var +hoge2 +foo +var"./*/foo" ->何も返ってこない"./hoge/*" ->"foo","va…

processingでの継承とか初期化とか

久しぶりにprocessing触ってたんだけど、継承するとスコープがおかしくなってしまってAPIを参照出来なくてはまった。 あとクラススコープで2次元配列初期化してたんだけど、newをする場所によっては値が設定されてないことがあったりしてそれでもまたはまっ…

Google Code Jam

クオリファイをすっぽかしたので、参加できずorz http://code.google.com/codejam/contest/dashboard?c=agdjb2RlamFtchALEghjb250ZXN0cxin2QUM それでもLuaでテストだけしてみた。 Smallな入力なら普通に終わるんだけど、Largeだとまずテスト時間内に計算が…

階層化誤差拡散

一気に量子化してそのまま誤差拡散をすると、誤差が大きすぎていまいち綺麗に出なかったので ちょっとずつ量子化するようにしてみた。 処理量子化bitが目標量子化bitよりも小さい時は伝播する範囲を2の階乗で広げてブロック全体に誤差を配るようにする。 htt…

誤差拡散法(テーブルバージョン)

いろいろあって、誤差拡散を使うことになったので前作った奴を元にテーブルに対応してみた。 誤差拡散テーブルの作り方でいろいろ名前が付いているらしい。 5*3ぐらいあれば十分表現できるだろと思ったら他のテーブルも5*3がベースになってた。 みんな考える…

Googleプログレスバー

http://googlejapan.blogspot.com/2007/07/20.html 何も考えずに作るとこんな感じ。 エスケープシーケンス使用。 def progress(str,per) pstr = "" p = (per*20) na = 0 na = p-6 if ( p >= 7 ) nd = 20-p pstr += "\x1b[34mT" if ( p >= 1 ) pstr += "\x1b[…

流体ハッカソン

やるやる言ってやってなかったけどいい加減やろうと思ったので とりあえずid:mokeheheさんとこにある完全流体から速度を求める式をぶっこんで見た。 http://takamatsu.cool.ne.jp/tattyu/p55/flow/ 確かにめり込む。 後パーティクル同士でコリジョンとりたか…

EXTの使い方とGLで減算

減算が指定したいだけなのに相変わらずGLのEXTの取得の仕方がよくわからん。 / ̄ ̄\ / _ノ \ | ( ●)(●) <おっとGLの悪口はそこまでだ・・・ . | (__人__)____ t-potの所にあったGLのサンプルのを見てやっとわかるとかどういう | ` ⌒/ ─' 'ー…

require/module

全然使ったことないんですけど、いろんな人のLuaソース見てると結構使ってたりするので調べた。 モジュール名.lua module("モジュール名",package.seeall) ってやると名前空間みたいな感じで"モジュール名"のテーブルがグローバルに追加されてスコープもモジ…

抽象化の悪

行き過ぎた抽象化は悪である。 抽象化する手段を提供するなら具象化する(もしくは補助する)具体的なインターフェース/ヘルプが必要である。 何のことかって言ったらDirectorのプラグインのXtraの事なんですけどね!! そういえばMayaのプラグイン作ってる…

Silverlight

http://journal.mycom.co.jp/articles/2007/08/16/silverlight/index.html テキストベースってのがいいね。 専用のツールが無くても動くというのがなんだか魔法みたいできもい。 IEという一番普及してるであろうブラウザを出してるMSならではの戦略できもい…

Ruby+Lua

http://d.hatena.ne.jp/winebarrel/20071111/p1 データをC/C++で読み込みたいけど、XMLとか冗長だしYAMLもあんまり評判がよろしくないらしく、 まぁ使い慣れたLuaにするかLuaでそのまま扱えるしとなるわけですよ。 でも同時にCのソースを読み込んでパースす…

ブロック

ブロックとは メソッドに渡せる無名関数のようなもの メソッドの引数にしか使えない ブロックに引数も取れる 関数は渡せない do〜endもしくは{}で記述する 5.times { puts "hello" } これは数字クラスの持つtimesというメソッドに"hello"と表示するブロック…

クラス

クラス クラス名は大文字から始まらなければならない(定数) メンバ変数は"@" クラス変数は"@@" メンバ変数は外からアクセス不可 クラスの中に式を書くと定義時に実行される コンストラクタで処理したい場合はdef initializeメソッドで処理する これはちょ…

YAML

http://jp.rubyist.net/magazine/?0009-YAML#l1 Rubyだと簡単に扱えるらしい。しかも読みやすくて書きやすいとかいいね。 xmlは冗長なのでこういうの嬉しい。

2次元配列へのポインタ

http://www.asahi-net.or.jp/~UC3K-YMD/Lesson/Section02/section02_04.html なんかこういう多次元配列のデータ構造をあまり使わなくなってしまったので、どうやって書くのかすっかり忘れてしまいましたというか知らなかった。 ポインタの定義を厳密にしない…

Rake

http://www2s.biglobe.ne.jp/~idesaku/sss/tech/rake/ 会社がMakeを辞めてRakeにしよう!っていう流れなので一生懸命Rubyを覚えなければいけなくなった。 そしていきなり[シンボル]という概念でつまづく。 ":"とか検索しづらいんだよね! それに":"がシンボ…

誤差拡散法

ディザってどうやるのよという所からやり直すことにしました。 現在のピクセルをn段階に量子化 量子化した結果とする前で差分を取り、誤差を求める 誤差をこれから処理するであろうピクセルに分配する テンキーで言うと、6,3,2,1の部分ね 分配するときは均等…

AlphaToCoverage

http://game.g.hatena.ne.jp/Nao_u/20071110 経由の http://wlog.flatlib.jp/archive/1/2007-10-28 でAlphaToCoverageとかいうのが聞いたこと無いし面白そう。 なので調べてみたけど流し読みだとなんだかよくわかんなかった。 http://hak.wablog.com/archive…

勉強

コリジョンのテストをしてみた。 質量とか無視してるのであまり参考にしないように。 http://takamatsu.cool.ne.jp/tattyu/p55/col/ http://takamatsu.cool.ne.jp/tattyu/p55/collision/ 一応コリジョンペアのリストを作るときにハッシュを使ってなるべく短…

Pairsの話

Luaで自前でイテレーションしたい時がたまにある。 要素がnilの時の扱いがnextとpairsとかで違うからだ。 サイズを取得するときも最初にnilを発見した所までのサイズしか返さないので、適当にnilを突っ込んでるの忘れてるとよく分からないバグに遭遇したりす…

カリー化

id:mokeheheさんから「入門Haskell」を借りて読んだ。 「入門Haskell」自体は注意深く本を読み下さないと重要な事を見逃していまい後でわけが分からなくなったりする。 リスト操作の関数が色々あって実装の仕方もパズルみたいで難しいけど面白い。 今までま…

100

http://golf.shinh.org/p.rb?100 なんかCommonLispだけやたらと短くね? とか思ったらformatにそういう機能があるらしい。 http://www.yuasa.kuis.kyoto-u.ac.jp/~hiraisi/format-func.html ' : ’ 修飾子のみ: 整数を英語の綴り(序数)で出力. Luaでやろ…