negl機能一覧 / Exports / Config

Interface: Config

setup 関数に渡すことの出来るオプションの一覧です。

利用例

const { start } = setup({
 world: { clearAlpha: 0 },   // canvasの背景の透明度を0とする
 viewport: { cameraZ: 2000 } // カメラのposition.zを2000とする
})

セレクタの設定

プロパティ初期値説明
config.$.canvas"#canvas"WebGLを描写するcanvas要素のセレクタ
config.$.globalContainer"#global-container"ページ全体を囲むHTML要素のセレクタ
config.$.pageContainer".page-container"ページ毎に内容を切り替えるHTML要素のセレクタ

data-*属性のプレフィクス設定

プロパティ初期値説明
config.prefix.ob"webgl"data-{prefix.ob}="gray-pic"
config.prefix.tex"tex"data-{prefix.tex}-1="/img/sample.jpg"
config.prefix.page"page"data-{prefix.page}="home"
config.prefix.click"click"data-{prefix.click}-1="/sample.html"
config.prefix.transition"transition"data-{prefix.transition}="some-transition"
config.prefix.interactive"interactive"data-{prefix.interactive}

イベントリスナのタイプ設定

*基本変更不可

プロパティ初期値説明
config.event.resize"resize"addEventListener(event.resize, ...)
config.event.mouse"mouse"addEventListener(event.mouse + "move", ...)
addEventListener(event.mouse + "enter", ...)
addEventListener(event.mouse + "leave", ...)
config.event.click"click"addEventListener(event.mouse + "click", ...)

ページトランジション設定

プロパティ初期値説明
config.transition.spaModefalsetrue 画面ロードなしで他のページへ画面遷移(SPA)
false 画面ロードありで他の ージへ画面遷移
config.transition.cachetruetrue spaMode使用時、訪問したページの状態をメモリに保持。次回遷移時にページ表示速度が高速化します。
false 毎回サーバにデータをフェッチ
*この機能はベータ機能です。
config.transition.defaultType"distortion"data-transition属性が設定されていない時のトランジションタイプ

scroller設定

プロパティ初期値説明
config.scroller.damping0.50~1 で メッシュのスクロール速度を決定します。

リサイズやカメラの情報設定

プロパティ初期値説明
config.viewport.autoresizetruetrue リサイズイベント時に自動的にカメラやメッシュのリサイズ処理を実行
false 自動的にカメラやメッシュのリサイズ処理を行わない。
config.viewport.resizeDuration1メッシュのリサイズ処理の遷移に掛ける時間を秒単位で指定します。
config.viewport.delay500最後のリサイズイベントが発火された時点から何ms(ミリ秒)後に RESIZE_DELAY を発火させるかを指定します。
config.viewport.devicePixelRatio1WebGLRenderer のピクセル比 (opens in a new tab)に使用します。
config.viewport.cameraZ2000PerspectiveCamera (opens in a new tab)のz軸ポジション
config.viewport.near1500PerspectiveCamera (opens in a new tab)のnear
config.viewport.far4000PerspectiveCamera (opens in a new tab)のfar

マウスに関する設定

プロパティ初期値説明
config.mouse.speed0.2マウスの追従スピード(0.1 ~ 1.0)
大きくするほど、追従スピードが上がります。

three.jsに関する設定

プロパティ初期値説明
config.world.autoRendertruetrue 自動的にフレーム毎にシーンのレンダリング(renderer.render(scene, camera)の実行)を実行。
false 自動的にシーンのレダリングを実行しない。
EffectComposer等を使用する場合はこちらの設定値を使い、ご自身で composer.render() を実行するようにしてください。
config.world.clearColor"#000000"canvas要素の背景色
setClearColor (opens in a new tab) の第一引数(color)に使用されます。
config.world.clearAlpha1canvas要素の背景の透明度
setClearColor (opens in a new tab) の第二引数(alpha)に使用されます。

基本的にthree.jsの設定値を変更したい場合は World オブジェクトに格納されている renderer や scene を取得し、直接変更してください。

const { world } = negl;
// シーンのトーンを調整
world.renderer.toneMapping = ACESFilmicToneMapping;
world.renderer.toneMappingExposure = 0.5;
 
// Fogの追加
world.scene.fog = new Fog(0xc7d4d9, 0, 2500);

override設定

プロパティ初期値説明
config.override.scroller-Scroller クラスを継承した別のクラスを設定します。

addon設定

プロパティ初期値説明
config.addon.lilGUI-lilGUI (opens in a new tab) を使用する場合に設定してください。
使用の際は、併せて config.debug を true に設定してください。

デバッグ設定

プロパティ初期値説明
config.debugtruetrue 開発モードで実行。(lilGUIの表示)
false 本番モードで実行。