@@ -169,6 +169,14 @@ export type UpdateParameters<LayerT extends Layer> = {
169169 changeFlags : ChangeFlags ;
170170} ;
171171
172+ type DrawOptions = {
173+ renderPass : RenderPass ;
174+ shaderModuleProps : any ;
175+ uniforms : any ;
176+ parameters : any ;
177+ context : LayerContext ;
178+ } ;
179+
172180type SharedLayerState = {
173181 [ key : string ] : unknown ;
174182} ;
@@ -321,15 +329,6 @@ export default abstract class Layer<PropsT extends {} = {}> extends Component<
321329 return ( state && ( state . models || ( state . model && [ state . model ] ) ) ) || [ ] ;
322330 }
323331
324- // TODO deprecate in favour of setShaderModuleProps
325- /** Update shader module parameters */
326- setModuleParameters ( moduleParameters : any ) : void {
327- for ( const model of this . getModels ( ) ) {
328- // HACK as fp64 is not yet ported to UBO
329- model . uniforms = { ONE : 1 } ;
330- }
331- }
332-
333332 /** Update shader input parameters */
334333 setShaderModuleProps ( ...props : Parameters < Model [ 'shaderInputs' ] [ 'setProps' ] > ) : void {
335334 for ( const model of this . getModels ( ) ) {
@@ -531,9 +530,9 @@ export default abstract class Layer<PropsT extends {} = {}> extends Component<
531530 }
532531
533532 // If state has a model, draw it with supplied uniforms
534- draw ( opts ) {
533+ draw ( opts : DrawOptions ) {
535534 for ( const model of this . getModels ( ) ) {
536- model . draw ( opts ) ;
535+ model . draw ( opts . renderPass ) ;
537536 }
538537 }
539538
@@ -1056,7 +1055,6 @@ export default abstract class Layer<PropsT extends {} = {}> extends Component<
10561055 try {
10571056 // TODO/ib - hack move to luma Model.draw
10581057 if ( shaderModuleProps ) {
1059- this . setModuleParameters ( { } ) ;
10601058 this . setShaderModuleProps ( shaderModuleProps ) ;
10611059 }
10621060
@@ -1076,7 +1074,7 @@ export default abstract class Layer<PropsT extends {} = {}> extends Component<
10761074 // Call subclass lifecycle method
10771075 if ( context . device instanceof WebGLDevice ) {
10781076 context . device . withParametersWebGL ( parameters , ( ) => {
1079- const opts = { renderPass, shaderModuleProps, uniforms, parameters, context} ;
1077+ const opts : DrawOptions = { renderPass, shaderModuleProps, uniforms, parameters, context} ;
10801078
10811079 // extensions
10821080 for ( const extension of this . props . extensions ) {
@@ -1086,7 +1084,7 @@ export default abstract class Layer<PropsT extends {} = {}> extends Component<
10861084 this . draw ( opts ) ;
10871085 } ) ;
10881086 } else {
1089- const opts = { renderPass, shaderModuleProps, uniforms, parameters, context} ;
1087+ const opts : DrawOptions = { renderPass, shaderModuleProps, uniforms, parameters, context} ;
10901088
10911089 // extensions
10921090 for ( const extension of this . props . extensions ) {
0 commit comments