twgl.js 使用 es6 模块加载纹理时遇到问题

树懒

我正在尝试将纹理加载到 2d 平面中,如这篇文章How to draw 2D image with TWGL (WebGL helper Library) 中所示

像这样包含脚本标签时它工作正常 <script src="https://twgljs.org/dist/twgl-full.min.js"></script>

但是当尝试使用与 es6 模块完全相同的代码执行此操作时,我收到以下错误 [.WebGL-0x7f90b084f000]RENDER WARNING: Render count or primcount is 0.

像这样使用 gulp 和 browserify

    "dependencies": {
        "animejs": "^3.2.1",
        "twgl.js": "^4.16.1"
    },
    "devDependencies": {
        "@barba/core": "^2.9.7",
        "babel-core": "^6.26.3",
        "babel-preset-env": "^1.7.0",
        "babelify": "^8.0.0",
        "browserify": "^17.0.0",
        "gulp": "^3.9.1",
        "gulp-autoprefixer": "^4.0.0",
        "gulp-livereload": "^4.0.2",
        "gulp-rename": "^2.0.0",
        "gulp-sass": "^4.1.0",
        "gulp-sourcemaps": "^2.6.5",
        "tinyify": "^3.0.0",
        "vinyl-buffer": "^1.0.1",
        "vinyl-source-stream": "^2.0.0"
    }
}

我的吞咽任务

gulp.task('js', function () {
    
    const options = {
        basedir: '.',
        debug: !is_prod,
        entries: [paths.listen.js + 'app.js'],
        cache: {},
        packageCache: {}
    }
    
    const b =  browserify(options)
    b.transform(babelify.configure({"presets": ["env"]}))
    if(is_prod) b.plugin('tinyify', { flat: false })
    b.bundle()
    .on('error', swallowError)
    .pipe(source('app.min.js'))
    .pipe(gulp.dest(paths.output.js))
    .pipe(livereload())
    
    return b
    
})

导入 import * as twgl from 'twgl.js'

难道我做错了什么 ?

该示例使用 twgl 1.x,而您的 gulp 使用 4.x,情况发生了变化。特别是twgl.drawBufferInfo

twgl.drawBufferInfo(gl, primitiveType, bufferInfo)

twgl.drawBufferInfo(gl, bufferInfo, optionalPrimitiveType)

我编辑了该答案以使用 4.x

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我在使用ES6导入和导出功能时遇到问题

在 ES6 模块中使用 Babel 外部助手时遇到问题 - Babel 重新排序导入/导出会破坏执行顺序

通过导入ES6模块来加载和使用旧版JS模块(例如IIFE)

使用 js 函数将数据从 JSON 文件加载到 HTML 表中时遇到问题

我可以在Node.js 8中使用ES6模块吗?

Gulp-在组合的js文件中使用ES6模块?

我如何在Node.js中使用es6模块

模块解析失败:es6 在 .JS 文件中使用 JSX 响应组件

在Heroku上使用moment.js时遇到问题

Vue.js / 使用 const 导入导出 ES6 问题

使用 express 和 ES6 类在 node js rest api 中查找路由的问题

在 React 中使用 JS ES6 承诺的问题 - TypeError:无法读取未定义的属性“then”

使用JS(ES6)切换手风琴/标签的问题

在异步AWS Lambda函数中使用带有节点获取模块的node.js时遇到问题

使用航点滚动时如何更改固定导航菜单上的背景颜色(JS ES6)

在Express中使用ES6模块

无法使用Webpack加载ES6模块

如何使用es6 import加载emscripten生成的模块?

使用Express.js时,Node.js ES6类无法从类方法中调用类方法

使用Node.js require与ES6导入/导出

使用Node.js require与ES6导入/导出

转换Singleton JS对象以使用ES6类

如何使用ES6导入(客户端JS)

在 es6 中使用 rollup.js

在ES6 React .JS中使用Async / Await

使用 gulp 将 es6 脚本转换为 JS

在 Vue.js 中使用 ES6

使用ES6类时如何使用mobx.js @observer将状态连接到props?

如何使用ES6模块创建一个简单的(Hello World)node.js TypeScript项目?