Home Manual Reference Source
import S3GLScene from 's3js/src/gl/S3GLScene.js'
public class | source

S3GLScene

Extends:

* → S3GLScene

WebGL描画用のシーン(Scene)クラス。 基本のS3Sceneを拡張し、WebGL用のuniformデータ生成(getUniforms)などの機能を追加します。 カメラやライト情報をGLSLシェーダ向けにuniform変数としてまとめて提供します。

Constructor Summary

Public Constructor
public

シーンを初期化します。 モデル・カメラ・ライトの配列等はS3Sceneに準拠します。

Member Summary

Public Members
public

シーン全体のカメラ

public

シーン内のライト配列

public

シーン内の3Dモデル配列

Method Summary

Public Methods
public

シーンにライトを追加します。

public

シーンにモデルを追加します。

public

シーン内の全ライトを取得します。

public

シーン内の全モデルを取得します。

public

シーン全体のWebGL向けuniformデータを生成して返します。 カメラの視線ベクトルや、最大4つまでのライト情報をuniform用データにまとめます。 各値はS3GLArrayやGLSLと連携しやすい形式で返されます。

Private Methods
private

_init()

シーン構成要素を初期化します。 カメラは新規作成、モデル・ライトは空配列となります。

Public Constructors

public constructor() source

シーンを初期化します。 モデル・カメラ・ライトの配列等はS3Sceneに準拠します。

Public Members

public camera: S3Camera source

シーン全体のカメラ

public light: Array<S3GLLight> source

シーン内のライト配列

public model: Array<S3GLModel> source

シーン内の3Dモデル配列

Public Methods

public addLight(light: S3GLLight) source

シーンにライトを追加します。

Params:

NameTypeAttributeDescription
light S3GLLight

追加するライト(型はS3Light等を想定)

public addModel(model: S3GLModel) source

シーンにモデルを追加します。

Params:

NameTypeAttributeDescription
model S3GLModel

追加する3Dモデル(型はS3Model等を想定)

public getLights(): Array<S3GLLight> source

シーン内の全ライトを取得します。

Return:

Array<S3GLLight>

ライト配列

public getModels(): Array<S3GLModel> source

シーン内の全モデルを取得します。

Return:

Array<S3GLModel>

モデル配列

public getUniforms(): S3GLProgramUniforms source

シーン全体のWebGL向けuniformデータを生成して返します。 カメラの視線ベクトルや、最大4つまでのライト情報をuniform用データにまとめます。 各値はS3GLArrayやGLSLと連携しやすい形式で返されます。

  • uniforms: uniform変数名→データ(カメラ方向ベクトル、ライト属性配列など)

Private Methods

private _init() source

シーン構成要素を初期化します。 カメラは新規作成、モデル・ライトは空配列となります。