CgFx
出力構造体
Cgでは構造体でしか出力できません。
セマンティック
メンバの名前の後に「:」に続いている名前をセマンティックといいます。
それぞれのメンバがハードウェアから送られてくる情報の種類を表しています。
プロファイル
現在のCgプログラムはすべての環境で実行できるわけではありません。
そのため、実行するCgプログラムを制限する設定が存在します。
それがプロファイルです。
uniform修飾子
uniform修飾子は変数の初期値の出所を表します。
uniformで宣言されている変数は初期値が外部から与えられることを示します。
uniformがない場合は次のように初期化されます。
- 明示的な値の初期化
- セマンティックによるハードウェアからの値の初期化
- それ以外はプロファイルに依存する初期値、未定義または0
const修飾子
const修飾子はC言語と同じく変更しないことを保障するための修飾子です。
const修飾子がついた変数を初期化した後変更しようとするとエラーになります。
サンプラオブジェクト
sampler2Dのキーワードはテクスチャをサンプリングするテクスチャを表します。
使用できる型
arbプロファイルで使用できるオブジェクトの型
- float
- double
- half
- fixed
- int
half
fixed
使用できる関数群
絶対値
xに対するアークコサインの値
xが全部0以外ならtrueを返します
xのどれかが0以外ならtrueを返します
xに対するアークサイン値
xに対するアークタンジェント値
yをxで割ったアークタンジェント値
xを切り上げて最小の整数値
xをaとbの間にクランプした値
xに対するコサイン値
xに対する双曲線コサイン
v1とv2のベクトルの外積
ラジアンを度数法に変換します
Mの行列の行列式
aとbのベクトルの内積
指数関数
xを超えない最大の整数値
xが数値でなければtrue
fによるaとbの線形補間
xの2を底とする対数
aとbの最大値
MとNによる行列と行列の乗算
MとVによる行列のベクトルによる乗算
VとMのベクトルの行列による乗算
xのy乗
xを度からラジアンへの変換
入射光線vと法線ベクトルnによる反射ベクトル
xを最も近い整数に丸める
Xの平方根の逆数
二次元テクスチャ索引
射影3次元テクスチャ索引
キューブマップテクスチャ索引