2010年8月29日日曜日

WebGLニュースサイト

http://www.gatk.net/webgl/

WebGL 3Dライブラリ「SceneJS」

http://scenejs.org/

Collada JOINTの扱い



http://bfmr.blogspot.com/2008/10/skinned-mesh.html
バインドポーズ逆行列[i]・Jointの行列[i]・モデルの頂点座標・weight[i]が 取れる。(iはJointのIndex)

bind_shape_matrixはどうつかうんだっけ

追記
ばっちりのってた

バインド形状中の各頂点v に対するスキニングの計算は、以下の通りです。
• n: 頂点v に影響するジョイントの数
• BSM: バインド形状行列
• IBMi: ジョイントi の逆バインド行列
• JMi: ジョイントi のジョイント行列
• JW: 頂点v に対するジョイントi のジョイント影響・重み

単位変換

http://www.metrology.jp/unitcalc.shtml

高度なJavaScript集

http://www.onicos.com/staff/iz/amuse/javascript/expert/

ライブラリ編

こんなの JavaScript で作るかよってな代物です。 できてしまったものはしょうがないでしょう。
  • utf.js (UTF-8 <-> UTF16 変換)
  • base64.js (Base64 encode/decode)
  • md5.js (MD5)
  • des.js (DES 暗号化/復号化)
  • inflate.js (zip で通常用いられている解凍ルーチン)
  • deflate.js (zip で通常用いられている圧縮ルーチン)
  • BigInt.js (整数の多倍長計算ライブラリ)
  • printf.js (printf(), sprintf(): 誰もが欲しそうなやつね)

ハイクオリティアイコン

http://e0166.blog89.fc2.com/blog-entry-632.html
無料アイコン

DirectX11 BC6とBC7

http://www.4gamer.net/games/033/G003329/20080908021/

エラーが少ない

ツール
DirectX SDKにはいっている
BC6HBC7EncoderDecoder11 Sample

Intel TBBのスレッドセーフコンテナ

http://japan.internet.com/developer/20070306/27.html

クラス:concurrent_hash_map<>

concurrent_queue<>

concurrent_vector<>


2010年8月26日木曜日

Collada transparentとtransparencyの関係

は、現在、オプションのopaque属性を持ちます。
内で、子要素は、現在、以下の有
効な値を持つオプションのopaque 属性を持ちます。

• A_ONE(デフォルト):カラーのアルファチャネルから透明度情報を取り出します。ここで値
1.0 は不透明を表します。
• RGB_ZERO:各チャネルが独立して調整される、カラーのR(赤)、G(緑)、B(青)チャネル
から透明度情報を取り出します。ここで値0.0 は不透明を表します。

もしくはが存在する場合、透明レンダリングが有効になるので、
レンダラをアルファブレンディングモードに切り替える必要があります。2 つの値を組み合わせる方法
は、以下の式で定義されます。 これらの式を使って、の不透明設定に基づき正しい
結果を求めます。ここで、fb はフレームバッファ(すなわち、レンダリング中のものの背後にあるイ
メージ)であり、mat は透明度計算前のマテリアルカラーです。
• A_ONE 不透明モードでは、以下のとおりです。
result.r = fb.r * (1.0f - transparent.a * transparency) + mat.r *(transparent.a * transparency)
result.g = fb.g * (1.0f - transparent.a * transparency) + mat.g *(transparent.a * transparency)
result.b = fb.b * (1.0f - transparent.a * transparency) + mat.b *(transparent.a * transparency)
result.a = fb.a * (1.0f - transparent.a * transparency) + mat.a *(transparent.a * transparency)

• RGB_ZERO 不透明モードでは、以下のとおりです。
result.r = fb.r * (transparent.r * transparency) + mat.r *(1.0f -transparent.r * transparency)
result.g = fb.g * (transparent.g * transparency) + mat.g *(1.0f -transparent.g * transparency)
result.b = fb.b * (transparent.b * transparency) + mat.b *(1.0f -transparent.b * transparency)
result.a = fb.a * (luminance(transparent.rgb) * transparency) + mat.a *(1.0f - luminance(transparent.rgb) * transparency)

ここで、luminance(輝度)は、ISO/CIE カラー標準(『ITU-R Recommendation BT.709-4』を参照)
に基づき、以下のようにカラーチャネルを平均して1 つの値にする関数です。
luminance = (color.r * 0.212671) +(color.g * 0.715160) +(color.b * 0.072169)

が存在しない場合には、は式の結果に影響を与えません。不
透明モードは、デフォルトの不透明モードのままです。つまり、次の式と同じことになります。
transparent = 1.0 1.0 1.0 1.0

が存在しない場合、は式の結果に影響を与えません。つ
まり、係数が1.0 であるのと同じことになります。
transparency = 1.0
の両方が存在する場合は、両方ともその機能を発揮しま
す。

またはが指定されていない場合は、以下のように仮定することで、
アプリケーションは同等の結果を得ることができます。
transparent = 0.0 0.0 0.0 1.0
transparency = 1.0
A_ONE は透明度情報がRGB チャネルでなくアルファチャネルからもたらされるということを指定するので、次の例では、カラーは指定され使用されていますが、RGB の値は透明度の計算に対して無視されます。
1 0 0.5 0

DirectX PixelShader入力値の補間指定

http://msdn.microsoft.com/ja-jp/library/ee418380(VS.85).aspx
補間修飾子説明linearシェーダー入力間で補間します。linear は、補間修飾子が指定されていない場合の既定値です。centroidピクセルのカバーされている領域内にあるサンプル間を補間します (ピクセルの中心からの補間終了位置が必要になる場合があります)。ピクセルが部分的にカバーされている場合は (ピクセルの中心がカバーされていなくても)、重心サンプリングによってアンチエイリアシングが改善される可能性があります。centroid 修飾子は、linear 修飾子または noperspective 修飾子と組み合わせて使用する必要があります。nointerpolation補間しません1noperspective補間時にパースペクティブ補正を実行しません。この補間修飾子を他の補間修飾子と一緒に使用することはできません。sample補間時にパースペクティブ補正を実行しません。この補間修飾子を他の補間修飾子と一緒に使用することはできません。


使用可能な組み合わせをまとめてみました。

・nointerpolation (== constant)
・linear
・linear centroid
・linear noperspective
・linear noperspective centroid

2010年8月20日金曜日

2010年8月19日木曜日

シンプルなタスクスケジューラ

http://www.butamanrenderer.com/2010/08/16/nulstein-a-work-stealing-task-scheduler-2/?lang=ja
TBBライクで軽量
超軽量3Dエンジンソース並列処理含む
アセンブラの演算関数多数

カセットテープキャプチャ

http://akiba.kakaku.com/pc/1008/11/214500.php
akiba20100811__287.jpg

GIMPでフォトから特定のオブジェクトだけを自然に消し去る方法

http://journal.mycom.co.jp/articles/2010/08/12/gimp-resynthesizer/index.html

ComputeShaderによるガウシアンブラー

http://game.watch.impress.co.jp/docs/series/3dcg/20090327_79998.html
演算シェーダーを使えばスレッドグループごとにTLSを活用することで、この無駄な重複読み出しを完全解消できる
演算シェーダーを使えばスレッドグループごとにTLSを活用することで、この無駄な重複読み出しを完全解消できる

Deferred Shading


チュートリアル
コードと詳しい説明付き

DiCE
・Tile-Based Lighting
・ComputeShader
・Anti-Aliasing

Intel tiled-base
ソースコード有り

2010年8月17日火曜日

モノを書くことで大事なこと

hyuki
#onwriting 陥りがちな誤りは、「自分が知っていることを全部書こうとする」という誤りです。せっかく勉強したんだから全部書こうとする行為。これは自己満足であって、読者のための行為ではないです。これは勉強熱心だけれど読者のことを忘れがちな著者(私だ)にありがち。
Mon Sep 21 2009 22:07:53 (Japan Standard Time) Twitから
mokeheheがリツイート

hyuki
#onwriting 大事なことをお話しします。著者は、読者を馬鹿にしたり、出し抜こうとしたりしてはいけません。「ほーら、あんたはこんなこと知らないだろう?」などという気持ちで書いてはいけない。読者は著者のそういう態度を必ず見抜くものです。

2010年8月16日月曜日

SUMOTORI DREAMS

http://www.gravitysensation.com/sumotori/

DirectX スクリーンショット関数

http://bullet.googlecode.com/svn-history/r2127/trunk/Demos/DX11ClothDemo/DXUT/Core/DXUTmisc.cpp

ルービックキューブ解

http://www.cube20.org/

組み込み用 ビデオカード

http://www.elsa-jp.co.jp/products/graphicsboard/egde_emp8/index.html
Photo:ELSA EDGE EMP8
安定した動作を重視し、組込み機器向けとして実績のあるNVIDIA EMP8グラフィックスプロセッサを搭載。DirectX 10及びOpenGL3.0に対応。また高性能な16のCUDAプロセッサコアを搭載し、高解像度のジオメトリ、頂点、ピクセルシェーダを高速処理することが可能です。

立体視の健康への影響

http://kotaku.com/5566671/nintendo-testing-healthiness-of-3ds-advising-young-children-to-avoid-3d
任天堂が調査中
グロ画像注意

映画 とびだす絵本3D

http://www.moon-light.ne.jp/news/2010/08/ehon-3d.html
ねずみくんのチョッキ (ねずみくんの絵本 1)
今作は単にアニメーション化されるのではなく、
原画の素朴な雰囲気をそのまま生かした画風と共に、
こどもに優しく語り掛ける昔ながらの「読み聞かせ」で制作。
最先端の3Dと融合させ、まったく新しいスタイルの映画作品となっています。

2010年8月8日日曜日

CrossFireXでのプログラミングのコツ

http://www.4gamer.net/games/085/G008506/20100315027/
「フレーム間をまたがるクエリを持たせない」「クエリの結果を,少し間を置いて受け取るようにする」といった対策を取るだけで,CPUとGPUがバランス良く機能するようになると説明している

2010年8月2日月曜日

4-way SLI対応デュアルXeonマザー

http://www.4gamer.net/games/017/G001762/20100730002/

「視差数360個&360°裸眼立体視対応」の小型LEDディスプレイ

http://www.4gamer.net/games/116/G011649/20100728054/

5原色

http://www.4gamer.net/games/116/G011649/20100728085/

3Dゲームグラフィックスは物理ベースのレンダリングへ

http://cedec.cesa.or.jp/2010/program/PG/C10_P0165.html
スペクトル領域で処理された光の物理量をどのようにして最終的なsRGB色空間上のRGB値に変換するのかということを解説します。ライトの物理量を正しく処理することにより、従来の単なる非線形トーンマップと異なり、イメージセンサーが持つ複雑なスペクトル-色変換がもたらす現象をある程度再現
AmbientBRDF
環境光に対してもBRDFに配慮
タイヤにハイライトがついている

グラフィックスカード4枚差し対応のフルタワーPCケース

http://www.4gamer.net/games/017/G001762/20100727046/

HDRライトマップをつくる


医療用VRシミュレータ

http://www.vrtraining.jp/aboutvr/index.html