2007-06-01から1ヶ月間の記事一覧

ESPer 2007

参加してきます。座れるといいなぁ。

mental mill -> PBS

ほぼ完成。後はmental millのブロック定義の変換表と足りないブロックの実装。明日中に終わらせたい。来週はプレゼンの準備をしないとな。

光源の明示的サンプリング

vidroレンダラの●第070627版更新履歴、RedQueenレンダラリファレンスよりシェーディング計算の際、指定された光源オブジェクトに優先的にサンプルレイを飛ばすらしい。nytrにはまだ発光オブジェクト/マテリアルを実装していないので、事実上行っているのは明…

ローカルアプリでの脆弱性

不正ファイル読み込みによって任意のコードが走るとか。皆さん対策してますか?今回のLhacaであったようなタイプの脆弱性を見つけるには、Fuzz Test(IBMによる解説)が有効のようです。インターネットを介した通信を行うようなソフトウェアだと流石にセキュリ…

mental mill EULA

読んだ。問題ない…と思う。Object Codeを逆アセンブルはしないが(出力XMLのフォーマット推定のみ)、他ソフトとの接続用に参照するのは可能だと書いてある。 data/shaderディレクトリにあるのは"Sample Source Code"/"Art Assets"と解釈していいだろう。nyt…

mental mill

とりあえずnytr用シェーダデザイナとして使うのに気になるところ。component phongとillumination phongと別々のシェーダが用意されているが意味不明。しかもillumination〜はなんと法線マップ受け付けない。MetaSLはどうやら本当にMetaなSLらしい。GLSLとか…

mental mill -> PBS?

検討中○ Artist Editionフリー。たぶんこれ以上いらない。 自分でGUIも改善していく必要がなくなる。 xmsl(データ形式)が予想通りXMLなのでパーサを楽にかける。 metasl(カスタムシェーダ)かけるよ!nytrの特殊シェーダはここにかける。 × xmsl仕様書な…

物理ベースシェーダ

とりあえず、動くところまではきた。 ParamTreeキャッシュ 同じテクスチャ参照をキャッシュ modifier解析 キャッシュの有効性判断最適化 SBTreeの等価変形による最適化 は期間中には無理ぽいな。2週間あればできそうだが、並列化の方にも手をつけないと。

boost::ptr_map

c++

の実装がstd::mapらしく、VC++のインスペクタでpeekできない。互換クラスを用意してデバッグ時はそちらをつかうようにする?

persian掃除

ケース内のホコリとCPUファンのホコリとった。室温30℃でCPU温度が60℃いってるのが不安。

boost::noncopyableのEBO問題

EBOについてはkmonos.netさんの解説が非常に参考になります。 class A : boost::noncopyable {}; class B : boost::noncopyable { A a; }; now sizeof(B)==2 instead of the expected 1. To fix it, we have to change the interface (or at least allow an …

カラーブリーディングをオフに

某SNSの3ds maxのコミュニティでカラーブリーディングをオフにしたいという要望があったのでメモ。nytrならフォトンマップ用のシェーダと通常シェーダのGI計算部をいじればいけるけど、結構煩雑かもなぁ。GIHandlerのフィルタをつくればいいのか?

電源タップ交換

焦げ臭い匂いがしたので交換。怖い怖い。17:00〜18:30のサーバダウン。

はてなアイデア:「リンク元」や「おとなり日記」のリンク(Aタグ)に「rel="nofollow"」を付与する

買った。

stack.push_back

空間的データ構造とアルゴリズム作者: Elmar Langetepe,Gabriel Zachmann,中本浩出版社/メーカー: ボーンデジタル発売日: 2007/04/01メディア: 単行本購入: 1人 クリック: 61回この商品を含むブログ (8件) を見る届いたが未読

PBSシステム大幅書き直し

filterの実装で動的構文木構築でも結構実用的な速度になりそうなのがわかったので、大幅に書き直し中。1月下旬〜2月にやったことが全部無駄になるのが痛い。

mental mill

http://www.mentalimages.com/2_4_mentalmill/index.htmlQuartz Composerのシェーダ版を作りたいなぁと思っていたらやっぱりきましたか。こういうインターフェース自体はMayaやXSIであったと思うので、複数プラットフォーム(GPU用シェーダ及びオフラインレ…

ネタ

よくレンダラって線形代数クラスから作り始めるけど、行列演算クラスって実はファイル読み込み時ぐらいしか使わないよね。

はてなアンテナのこの日記の更新差分表示がものすごいことになっていたのに気づいて更新。

非virtual destructor

http://d.hatena.ne.jp/nyaxt/20070430#1177938827これってD-torをprotectedにすれば問題ないのでは?あとで試す。

PBR->C++ コードジェネレータ

これ本当に有用なのか疑問に思えてきた。 速度的なアドバンテージは大きいか? 当時はシェーダ内で仮想関数コールなんてしてたら遅くて使い物にならないだろうと思ってC++コードジェネレータに走ったのだろうけれども、実際nytrはもっとinner-loopのレンダリ…

Exceptional C++ Style

今日はちょっと東京の方にでかける用事があって、電車の中でずっとコレをよんでいました。(id:gpuppurさん。紹介感謝)いやー。C++は奥深いですね。まだ18/40までしか読んでないですが、nytrを書き直したい衝動に駆られます。いくつかメモ: 仮想関数をすべ…

屈折関連修正

IORを自由にphongmaterialブロックで定義できるように。RefractionBTDF内部修正。 RefractionBTDF::calcRefractionDirの計算ミスを修正 として とすると

昨日はMac OS Xをいじくって遊んでいたら作業時間がなくなってしまった。せめて開発環境構築していれば…、反省。

VC++のauto_ptrはreference counting実装済?

c++

けど怖いので信用しない。

Boost Pointer Container Library

VIVERのコード読んでたらでてきた。(GPLなので大丈夫)http://www.boost.org/libs/ptr_container/doc/ptr_vector.htmlえええええええ。今までわざわざD-torでdeleteするコード書いてたよ。しかし、VIVERの古橋さん(d:id:viver)は私と同い年(or一才差)だと思…

Illumination in the Presence of Weak Singularities

T Kollig, A Keller - Springer を読みました。とてもわかりやすい論文なので解説略。(2)式のmax(G-b, 0)でマイナス値を取らないということさえ気をつければ問題ないです。ここでちょっと詰まった。実装ですが、nytrの構造上ちょっと困ってます。b=1/bsdfで…

Obj id test

複数チャンネル出力を実装したので、オブジェクトIDをレンダリングするようにしてみた。Film1には普通にレンダリングされた画像が出力されてて、↓はFilm2の結果。

allocaの謎解決

allocaってローカル変数の配置をどうするのか謎に思っていた。

Rendering MLとREYES調査

の過去記事を読み返していました。リアルタイムで読んでいた当時はちんぷんかんぷんだったのが、少しはまともにわかるようになりました。とりあえず調べること:splatting, REYESの詳しい実装REYESの実装も一度書いたほうがいいかもしれない。Production Ren…