技術

第弐回天下一カウボーイ大会にいってきたよ

...パーティ会場で、豪勢な飯を食わせてもらった後に、このカレーはつらかった見た目はこんなんでも、味はしっかりとカレーで、多分おいしいと感じる人も結構いると思います残念ながら、私はマッシュルームが苦手で、キノコ類も全般的にあまり得意ではなかっ…

Objective-C 事始め

iPhone開発環境も手に入ったことだし、さらっと Objective-C の勉強でもしてみることにしてみました右も左もわからない世界なんでとりあえずは、Counter を作ってみることにしました。 /// おなじみのカウンター @interface Counter : NSObject { int m_coun…

SIG-GT11 『CG Magic:レンダリング』に見るレンダリングの最新事情

IGDA主催のSIG-GT11"『CG Magic:レンダリング』に見るレンダリングの最新事情"に参加してきました。あの、CG Worldでの連載や、『CG Magic:レンダリング』で有名な倉地紀子さんの講演が生で聞けるってことで、とても楽しみにしておりました。 なんでも、IGDA…

PerlMagick

ちょいと用があって、PerlMagickを使ってみたくなりました。windows XP上で動いている、ActivePerl 5.10.0 から使いたかったんですけど、インストールで躓いたのでメモを残しておきます。○ ImageMagick のインストール以下のサイトから、ImageMagick のダウ…

Perlの文字コード変換の話

なんかよくわからないけど、なんとなく理解したことをまとめてみました。id:It_lives_vainly:20080304 id:It_lives_vainly:20080305 id:It_lives_vainly:20080306 id:It_lives_vainly:20080307 id:It_lives_vainly:20080308 id:It_lives_vainly:20080309困っ…

Perlの文字コード変換の話 其の六

○ PerlIO に指定したエンコードの切り替えまれに、PerlIOに指定したエンコードを途中で切り替えたい時がある。このような場合には、次のようにエンコードの指定を行う。 use utf8; use strict; use warnings;binmode( STDOUT, ':encoding(utf-8)' );my $a_da…

Perlの文字コード変換の話 其の五

○ Encode::encode() / Encode::decode() utf8フラグとPerlIOは、Perl 5.6 以降では超重要な概念となる。 PerlIO に文字エンコードが指定されていた場合、渡す文字列はutf8フラグが立っている 文字列が期待される。 逆に、文字エンコードが指定されていない場…

Perlの文字コード変換の話 其の四

○ PerlIO のエンコード指定PerlIO にエンコードを指定する場合、binmode() を用いる。以下に例を挙げておく binmode( STDIN, ':encoding(shiftjis)' ); # STDIN を shiftjis として扱う binmode( STDOUT, ':encoding(shiftjis)' ); # STDOUT を shiftjis と…

Perlの文字コード変換の話 其の参

○ PerlIOPerl 5.6 以降からは「入力 -> Perl内部処理 -> 出力」の橋渡しをするためのレイヤーとして PerlIO というものが存在している。PerlIO に対して使用するエンコードを指定することができる。PerlIOに文字コードが指定されている場合、utf8フラグの立…

Perlの文字コード変換の話 其の弐

○ use utf8 プラグマを用いた場合の挙動use utf8 プラグマを用いた場合、次のような挙動をする。 ソースコードに含まれている定数文字列にutf8フラグを立てる PerlIO レイヤは、*何もしない* 変数にマルチバイト文字が使える 三番目の変数にマルチバイト文字…

Perlの文字コード変換の話 其の壱

○ スクリプト記述時に推奨される文字コードperldocより http://perldoc.jp/docs/perl/5.8.1/utf8.pod このプラグマは、そもそも、互換性のための工夫です。 Perl 5.6未満のバージョンでは、ソースコード中の恣意的なバイト列を許していました。ですが、将来…

Encode についての備忘録

全然だめっぽいです。明日の作業のための、メモになってしまいました...ちうか、わかりづらくね? ○ use encoding についてuse encoding プラグマを用いることで、標準入出力の文字コードが指定できる use encoding 'utf-8'; # STDIN / STDOUT を utf-8 に指…

Perlな日々3

フォームから入力された文字列をcgiに渡したときに、GETで渡すとうまくいくんだけれども、POSTで渡すと意図しないデータで送られてきちゃう...なんでだろ?GETでもPOSTでも同じようにurlエンコーディングされると思っていたんだけれども勘違いかしら?ちょっ…

Perlな日々

バイナリファイルの扱いが良くわからなかった... フォームから添付されるファイルの扱いが良くわからなかった...あれぇ?

Perlな日々

久しぶりにPerlのプログラムを書いています。書いているのは簡単な、掲示板の様なシステムです。プリプロの為の実験実装なんで、速度もセキュリティーも気にしなくて良いんで、手持ちの知識だけで書けるPerlを選択した訳です。...で、自分に知識さえあれば、…

人工知能学会

先日出席したSIG-GT9にて、フロムソフトの三宅さんが人工知能学会の会誌に掲載したドキュメント「ディジタルゲームにおける人工知能技術の応用」を配布してくれました。なんでも、人工知能学会誌 Vol. 23 No. 1 (2008 年1 月)では、特集として「ゲームAI」が…

SIG-GT9 「ゲーム開発における数学」にいってきたよ

IGDA日本ゲームテクノロジー研究会(SIG-GT)第9回研究会「ゲーム開発における数学」に参加してきました。会場は、東京駅近くにあるCG-ARTS協会で行われました。 研究会は、3部構成になっていて(4部?) ハイパーコンテンツの長久勝さんによる「数学と付き合…

Boot Camp パーティションへ開発環境のインストール

なんだかんだいっても、DirectX環境とは決別できないような環境いるので、Boot Campパーティションへ開発環境のインストールを行っていました。やはりwindowsが動く安心感ってのは違うインストールしながら、VMWareをいじって遊んでいたんですが、こいつのユ…

IGDAゲームAI連続セミナー第6回 「次世代ゲームにおける自動生成技術」

参加してきました。時間がないので感想は後で書きます

俺stl

なぜか、フルスクラッチで stl::vector 見たいなものを作成中。車輪の再開発は楽しいなぁ(ぉぃ

テクスチャの2のべき乗制限

ちょっとした描画ライブラリみたいなものを書いています。 超基礎的な部分の形は順調に進んでいるようなので、そろそろ画面上への文字列描画が欲しいなぁなんてことを思い立ちました。そんなわけで、昔作ったwindowsのフォントを文字コード順に、bmpにダンプ…

球とレイとの交差判定のバグ修正

勘違いしていた点が一点ありました。前回の解説の段階から、一歩進んで球とレイとの交点を求めるように交差判定を修正していました。 このとき、レイ上の一点を こんな風に表現していたのでした。そして、球の数学的な表現と、レイの表現を用いて、次のよう…

アセンブラって必用なの?

shi3zさんところのエントリーで、「プログラマならマシン語ぐらい書けたほうがいいよねぇ」(超意訳)って話がされていて、色々な人が賛否両論のトラックバックを返していました。なんとなく、僕とマシン語をもって話が収束しそうなので、私も適当に思うことを…

カメラをつけてみました

レイを飛ばす方向とか位置なんかをシーンに固定しっぱなしなのは使いづらいので、カメラをつけてみました。...見た目は、前回から何も変わって無いですよね...(以下は、後で詳しく書き直す)描画のパイプラインをなんとなく書いてみると、こんな感じになって…

平行光源

pbr本が届いたので、ぱらぱらと眺めています。レイトレ以前に、英語の壁が高いんですけれども絵もソースコードも満載で、とても丁寧に書かれているようなので、がんばれるかもしれません。(ってか、がんばれよ)とりあえずは、神棚に置いといて毎日手を合わせ…

回転行列からオイラー角のパラメータ抽出を行う(補足)

先日のエントリーの補足です。の場合、値が一意に定まらないので、と仮定して値を求めていました。これってどういうことなんでしょう?になる場合とは、x軸周りの回転が度になる時です。...これちょっと考えればわかるんですけど、いわゆるジンバルロックが…

回転行列からオイラー角のパラメータ抽出を行う

...回転行列からオイラー角のパラメータ抽出を行いたいって要望って意外に高いんですね個人的には、あまり意味が無いと思うのですが、一応まとめときます。ってか、元のパラメータは一意に求めることが出来ないんです!!その辺り、ちゃんとわかってます?ま…

stlとスマートポインタ

自作のスマートポインタオブジェクトをstd::vectorに登録していたら、はまりました。std::vector::erase() でvectorに登録した要素を削除すると、eraseで指定したイテレータ以降のオブジェクトは、メモリコピーされてからデストラクタが呼び出されるんですね…

System::Stringからstd::stringへの変換

C++/CLIでは、Stringクラスってのがあります。今まで使っていたコードを利用しようと思うと、char* やら std::string やらがコードに出てくることになるんで、 System::String から std::string とか、 std::string から System::String への変換を行う必要…

初めてのレイトレ

そんなわけで、無茶を覚悟でレイトレをやってみることにします。数学関数群を作ったり、フレームバッファを作ったり、下準備は結構掛かりましたが、肝となっている部分は簡単です。まずはカメラとか射影変換とか3Dっぽいことは何も考えずに、適当に配置した…