From 5d733447c337c90e13b255a59dd083f4c70e829b Mon Sep 17 00:00:00 2001 From: Ib Green Date: Wed, 6 Mar 2024 14:50:33 -0500 Subject: [PATCH] chore: remove moduleSettings --- examples/tutorials/hello-gltf/app.ts | 4 +-- examples/tutorials/lighting/app-old.ts | 32 +++++++++---------- modules/engine/src/model/model.ts | 27 ++-------------- .../resources/webgl-render-pipeline.ts | 6 ++-- 4 files changed, 22 insertions(+), 47 deletions(-) diff --git a/examples/tutorials/hello-gltf/app.ts b/examples/tutorials/hello-gltf/app.ts index 345b67a4e8..3395f41bc5 100644 --- a/examples/tutorials/hello-gltf/app.ts +++ b/examples/tutorials/hello-gltf/app.ts @@ -66,7 +66,7 @@ export default class AppAnimationLoopTemplate extends AnimationLoopTemplate { u_NormalMatrix: new Matrix4(worldMatrix).invert().transpose() }); - model.updateModuleSettings({lightSources}); + // model.updateModuleSettings({lightSources}); model.draw(renderPass); }); renderPass.end(); @@ -102,7 +102,7 @@ export default class AppAnimationLoopTemplate extends AnimationLoopTemplate { } } -const lightSources: LightingProps = { +export const lightSources: LightingProps = { ambientLight: { color: [255, 133, 133], intensity: 1, diff --git a/examples/tutorials/lighting/app-old.ts b/examples/tutorials/lighting/app-old.ts index 46c9237026..a6d7c399a3 100644 --- a/examples/tutorials/lighting/app-old.ts +++ b/examples/tutorials/lighting/app-old.ts @@ -131,22 +131,22 @@ export default class AppAnimationLoopTemplate extends AnimationLoopTemplate { fs, geometry: new CubeGeometry(), modules: [phongMaterial], - moduleSettings: { - // material: { - // specularColor: [255, 255, 255] - // }, - // lights: [ - // { - // type: 'ambient', - // color: [255, 255, 255] - // }, - // { - // type: 'point', - // color: [255, 255, 255], - // position: [1, 2, 1] - // } - // ] - }, + // moduleSettings: { + // material: { + // specularColor: [255, 255, 255] + // }, + // lights: [ + // { + // type: 'ambient', + // color: [255, 255, 255] + // }, + // { + // type: 'point', + // color: [255, 255, 255], + // position: [1, 2, 1] + // } + // ] + // }, bindings: { uTexture: texture, app: this.uniformStore.getManagedUniformBuffer(device, 'app'), diff --git a/modules/engine/src/model/model.ts b/modules/engine/src/model/model.ts index 424a615d30..c58cedfc5a 100644 --- a/modules/engine/src/model/model.ts +++ b/modules/engine/src/model/model.ts @@ -24,7 +24,6 @@ import {getDebugTableForShaderLayout} from '../debug/debug-shader-layout'; import {debugFramebuffer} from '../debug/debug-framebuffer'; import {deepEqual} from '../utils/deep-equal'; import {uid} from '../utils/uid'; -import {splitUniformsAndBindings} from './split-uniforms-and-bindings'; const LOG_DRAW_PRIORITY = 2; const LOG_DRAW_TIMEOUT = 10000; @@ -67,9 +66,6 @@ export type ModelProps = Omit & { transformFeedback?: TransformFeedback; - /** Mapped uniforms for shadertool modules */ - moduleSettings?: Record>; - /** Show shader source in browser? */ debugShaders?: 'never' | 'errors' | 'warnings' | 'always'; @@ -100,7 +96,6 @@ export class Model { userData: {}, defines: {}, modules: [], - moduleSettings: undefined!, geometry: null, indexBuffer: null, attributes: {}, @@ -174,7 +169,6 @@ export class Model { _attributeInfos: Record = {}; _gpuGeometry: GPUGeometry | null = null; - private _getModuleUniforms: (props?: Record>) => Record; private props: Required; _pipelineNeedsUpdate: string | false = 'newly created'; @@ -213,16 +207,15 @@ export class Model { if (isWebGPU && this.props.source) { // WGSL this.props.shaderLayout ||= getShaderLayoutFromWGSL(this.props.source); - const {source, getUniforms} = this.props.shaderAssembler.assembleShader({ + const {source} = this.props.shaderAssembler.assembleShader({ platformInfo, ...this.props, modules }); this.source = source; - this._getModuleUniforms = getUniforms; } else { // GLSL - const {vs, fs, getUniforms} = this.props.shaderAssembler.assembleShaderPair({ + const {vs, fs} = this.props.shaderAssembler.assembleShaderPair({ platformInfo, ...this.props, modules @@ -230,7 +223,6 @@ export class Model { this.vs = vs; this.fs = fs; - this._getModuleUniforms = getUniforms; } this.vertexCount = this.props.vertexCount; @@ -290,10 +282,6 @@ export class Model { if (props.uniforms) { this.setUniforms(props.uniforms); } - if (props.moduleSettings) { - log.warn('Model.props.moduleSettings is deprecated. Use Model.shaderInputs.setProps()')(); - this.updateModuleSettings(props.moduleSettings); - } if (props.transformFeedback) { this.transformFeedback = props.transformFeedback; } @@ -595,17 +583,6 @@ export class Model { this.setNeedsRedraw('uniforms'); } - /** - * @deprecated Updates shader module settings (which results in uniforms being set) - */ - updateModuleSettings(props: Record): void { - log.warn('Model.updateModuleSettings is deprecated. Use Model.shaderInputs.setProps()')(); - const {bindings, uniforms} = splitUniformsAndBindings(this._getModuleUniforms(props)); - Object.assign(this.bindings, bindings); - Object.assign(this.uniforms, uniforms); - this.setNeedsRedraw('moduleSettings'); - } - // Internal methods /** Get the timestamp of the latest updated bound GPU memory resource (buffer/texture). */ diff --git a/modules/webgl/src/adapter/resources/webgl-render-pipeline.ts b/modules/webgl/src/adapter/resources/webgl-render-pipeline.ts index 424d57d84a..db509eefa3 100644 --- a/modules/webgl/src/adapter/resources/webgl-render-pipeline.ts +++ b/modules/webgl/src/adapter/resources/webgl-render-pipeline.ts @@ -12,7 +12,6 @@ import {GL} from '@luma.gl/constants'; import {getShaderLayout} from '../helpers/get-shader-layout'; import {withDeviceAndGLParameters} from '../converters/device-parameters'; import {setUniform} from '../helpers/set-uniform'; -import {splitUniformsAndBindings} from '../../utils/split-uniforms-and-bindings'; // import {copyUniform, checkUniformValues} from '../../classes/uniforms'; import {WebGLDevice} from '../webgl-device'; @@ -271,11 +270,10 @@ export class WEBGLRenderPipeline extends RenderPipeline { // DEPRECATED METHODS override setUniformsWebGL(uniforms: Record) { - const {bindings} = splitUniformsAndBindings(uniforms); - Object.keys(bindings).forEach(name => { + Object.keys(uniforms).forEach(name => { log.warn( `Unsupported value "${JSON.stringify( - bindings[name] + uniforms[name] )}" used in setUniforms() for key ${name}. Use setBindings() instead?` )(); });