diff --git a/examples/jsm/transpiler/TSLEncoder.js b/examples/jsm/transpiler/TSLEncoder.js index 4f696edc63ed68..85c52c26d58733 100644 --- a/examples/jsm/transpiler/TSLEncoder.js +++ b/examples/jsm/transpiler/TSLEncoder.js @@ -110,12 +110,6 @@ class TSLEncoder { let code; - /*@TODO: else if ( node.isVarying ) { - - code = this.emitVarying( node ); - - }*/ - if ( node.isAccessor ) { this.addImport( node.property ); @@ -243,6 +237,10 @@ class TSLEncoder { code = this.emitUniform( node ); + } else if ( node.isVarying ) { + + code = this.emitVarying( node ); + } else if ( node.isTernary ) { code = this.emitTernary( node ); @@ -500,7 +498,16 @@ ${ this.tab }} )`; } - /*emitVarying( node ) { }*/ + emitVarying( node ) { + + const { name, type } = node; + + this.addImport( 'varying' ); + this.addImport( type ); + + return `const ${ name } = varying( ${ type }(), '${ name }' )`; + + } emitOverloadingFunction( nodes ) {