References
summary | ||
public |
V S3: {"System": *, "GLSystem": *, "Math": *, "Angles": *, "Vector": *, "Matrix": *, "Plane": *, "SYSTEM_MODE": *, "DEPTH_MODE": *, "DIMENSION_MODE": *, "VECTOR_MODE": *, "FRONT_FACE": *, "CULL_MODE": *, "LIGHT_MODE": *, "MeshLoader": *, "CameraController": *} S3 3DCGエンジンのメイン名前空間オブジェクト |
basic
summary | ||
public |
C S3Camera 3DCGシーンのカメラ(視点)情報を管理するクラス 視点座標、注視点、視野角、描画範囲、各種行列演算などを保持・操作します。 |
|
public |
C S3Light 3DCGシーン用のライト(照明)情報を管理するクラス 各種ライト(環境光・平行光源・点光源など)のモード・強さ・方向・色などを保持します。 |
|
public |
3DCG用のマテリアル(素材)情報を管理するクラス(mutable) 拡散反射色、自己照明、鏡面反射、環境光、反射、テクスチャなどを一括管理します。 |
|
public |
C S3Mesh 3DCG用メッシュ(立体形状データ)を管理するクラス (mutable) 頂点・面・マテリアルを保持し、複数の形状や属性を一つにまとめます。 |
|
public |
C S3Model 3DCGシーンに配置する「モデル」を管理するクラス (mutable) 位置・回転・スケール・メッシュ(形状)などモデルの変換・配置情報を保持します。 |
|
public |
C S3Scene 3DCGシーン(描画シーン)の管理クラス モデル・ライト・カメラなどシーン構成要素を一括管理します。 |
|
public |
C S3System 3DCGシステム全体を管理するクラス |
|
public |
3DCG用のテクスチャ(画像)情報を管理するクラス 画像のセットや2の累乗化処理、ロード状況管理、破棄処理などを担当します。 |
|
public |
三角形ポリゴンのインデックス情報を保持するクラス(immutable) 各ポリゴン面を構成する頂点インデックスやUV座標、マテリアルインデックスを管理します。 |
|
public |
C S3Vertex 3DCG用の頂点クラス(immutable) 各頂点の空間上の座標情報を管理するシンプルなクラスです。 |
|
public |
カメラのビュー・プロジェクション・ビューポート行列情報をまとめた型 |
gl
summary | ||
public |
WebGL用の配列(バッファ)を生成・管理するクラス。(immutable) 各種型(S3Vector, S3Matrix, 数値配列等)をWebGLバッファ(Float32Array/Int32Array)に変換し、 対応するGLSL型(vec3, mat4等)情報も保持します。 |
|
public |
WebGLレンダリング用のライト(照明)クラス。 基本のS3Lightを拡張し、GL用データ生成や一意ハッシュ生成などのメソッドを提供します。 |
|
public |
WebGL描画用のマテリアル(材質)クラス。 基本のS3Materialを拡張し、GL用データ生成・ハッシュ管理などWebGL用途向けの機能を追加します。 色、拡散/反射/発光/環境光、テクスチャ情報などを保持し、GLSLシェーダへのuniformデータ化を担います。 |
|
public |
C S3GLMesh WebGL用のメッシュ(立体形状データ)を管理するクラスです。 S3Meshを拡張し、WebGL描画に必要なVBOやIBO情報、GL用データ生成・解放機能などを持ちます。 モデルの描画時にGLにバインドできるバッファ形式への変換・管理も行います。 |
|
public |
WebGL描画用のモデル(Model)クラス。 基本のS3Modelを拡張し、WebGL向けuniformデータの生成(getUniforms)機能を追加します。 モデルごとの材質(マテリアル)情報をuniformデータとしてまとめ、GLSLシェーダに渡せる形に整形します。 |
|
public |
WebGLのプログラム(Program)管理クラス。 頂点・フラグメント2つのシェーダーと、それらをリンクしたGLプログラムオブジェクトを保持し、 各種attribute/uniform変数とのバインドや、プログラム切替・破棄などの管理を担います。 S3GLSystem経由でのWebGL描画制御のコアとなります。 |
|
public |
WebGL描画用のシーン(Scene)クラス。 基本のS3Sceneを拡張し、WebGL用のuniformデータ生成(getUniforms)などの機能を追加します。 カメラやライト情報をGLSLシェーダ向けにuniform変数としてまとめて提供します。 |
|
public |
WebGLのシェーダー管理クラス。 頂点シェーダ/フラグメントシェーダのソースコード・型・GLオブジェクトを保持し、コンパイルや破棄、状態取得などの機能を提供します。 S3GLProgram 内部で利用され、単体では直接使わないことが多い設計です。 |
|
public |
WebGLレンダリングシステムを管理するクラス。 シェーダー、テクスチャ、バッファオブジェクトの生成・管理、および描画制御を担当。 WebGLの初期化やプログラムのセットアップ、シーンの描画などの処理を含む。 |
|
public |
WebGL描画用のテクスチャクラス。 S3Textureを拡張し、WebGL用のGLTexture管理、GL用データ取得(getGLData)、破棄などを担います。 画像データをGPUのテクスチャへ変換し、GLSLシェーダへのuniformバインドなどに利用します。 |
|
public |
WebGL描画用の三角形インデックスクラス。 基本のS3TriangleIndexを拡張し、GL用属性データ生成(S3GLTriangleIndexData化)などを追加しています。 頂点インデックス・マテリアル番号・UV座標などの情報を持ち、WebGL向け処理の土台となります。 |
|
public |
WebGL描画用の三角形インデックス・属性データ格納クラス。 三角形ごとの頂点インデックス・UV・法線・接線・従法線などを保持し、 WebGL(GLSL)用に最適化されたデータ生成やハッシュ作成も担います。 |
|
public |
WebGL描画用の頂点(バーテックス)クラス。 S3Vertexを拡張し、GL用データ生成やハッシュ化などを提供します。 頂点情報(位置)をGL向け形式に変換し、バーテックスシェーダのattributeと連携できます。 |
|
public |
WebGL配列で利用できるデータ型情報(各種TypedArray型)。 |
|
public |
GLSL型名("vec3"や"mat4"など)を配列次元や入力種別から自動判定するためのテーブル構造。 |
|
public |
T S3GLTypedArrayConstructor: typeof Float32Array | typeof Int32Array TypedArrayのコンストラクタ型定義(Int32Array, Float32Array など)。 |
|
public |
|
|
public |
_getGLArrayDataの返却値(IBOとVBOまとめて返す構造) |
|
public |
IBO(インデックスバッファオブジェクト)データ構造 |
|
public |
VBO(頂点バッファオブジェクト)全体のデータ構造 |
|
public |
VBO(頂点バッファオブジェクト)1要素のデータ構造 |
|
public |
T S3GLNormalListKey: "normal" | "tangent" | "binormal" |
|
public |
|
|
public |
T S3GLProgramBindData: Int32Array | Float32Array | WebGLBuffer | WebGLTexture |
|
public |
GLSL型名ごとのWebGLバインド情報テーブル。 各GLSL型(int, float, mat4, vec3, sampler2D等)に対し、
|
|
public |
ソースコードから解析した変数のデータ |
|
public |
WebGLのuniform変数バインド用関数群。 各関数はGLSLの型に応じて正しいuniform関数(uniform1iv/uniformMatrix4fv等)でデータを送る役割を持ちます。 |
|
public |
|
|
public |
T S3GLProgramBindInputDataSingle: Int32Array | Float32Array | WebGLBuffer | WebGLTexture | S3GLArray | S3Matrix | S3Vector | number |
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
テクスチャキャッシュ全体の型定義。 キーがテクスチャID(string)で、値がGLFuncTextureCashEntry型になります。 |
|
public |
面(フェース)単位の属性情報型。 S3Vector.getTangentVector で計算された面の法線・接線・従法線(すべてS3Vector型またはnull)。 |
|
public |
頂点単位の属性情報型。 各頂点(3つ)の法線・接線・従法線(いずれもS3Vector型またはnull)の配列。 |
loader
summary | ||
public |
V S3MeshLoader: {"inputData": *, "outputData": *} 3DCGメッシュデータの入出力を管理するローダー |
|
public |
V S3MeshLoaderJSON: {"name": string, "input": *, "output": *} JSON形式による3DCGメッシュデータの入出力ユーティリティ |
|
public |
V S3MeshLoaderMQO: {"name": string, "input": *, "output": *} Metasequoia(MQO)形式による3DCGメッシュデータの入出力ユーティリティ |
|
public |
V S3MeshLoaderOBJ: {"name": string, "input": *} Wavefront OBJ形式による3DCGメッシュデータの入出力ユーティリティ |
|
public |
メッシュデータの入出力用関数定義 |
|
public |
デフォルトのマテリアル情報(必要時に参照される) |
|
public |
|
math
summary | ||
public |
C S3Angles 3DCG用のオイラー角クラス(immutable) Roll(Z軸)、Pitch(X軸)、Yaw(Y軸)の順で角度を保持します。 各値は常に周期的(-180~180度)に管理されます。 |
|
public |
C S3Matrix 3DCG用の4x4行列クラス 主に変換行列や射影行列などに使用されます。 |
|
public |
C S3Plane 3DCG用の平面クラス 法線ベクトルと距離または平面上の1点から平面を定義します。 |
|
public |
C S3Vector 3DCG用のベクトルクラス(immutable) |
|
public |
V S3Math: {"EPSILON": number, "clamp": *, "step": *, "mix": *, "smoothstep": *, "equals": *, "mod": *, "sign": *, "fract": *, "rsqrt": *, "radius": *, "degrees": *} 数学的な便利関数を提供するユーティリティ 各種演算(クランプ、ステップ関数、補間、等価判定、三角関数変換等)をまとめた静的オブジェクト |
|
public |
|
tools
summary | ||
public |
カメラ操作用コントローラー タッチ操作やマウス操作を用いて3DCGシーンのカメラの移動・回転・ズームイン/アウトなどを制御するクラスです。 InputDetect の入力情報をもとに、カメラの移動・回転・距離変更(ズーム)を自動で計算します。 |