gpt4 book ai didi

javascript - 浏览器实现的 'new Image()' 替代方案是 node-webgl javascript 实现?

转载 作者:行者123 更新时间:2023-12-03 06:05:16 24 4
gpt4 key购买 nike

目前我在客户端使用基于 webGL 的浏览器实现代码。它工作得很好。但是,我想在服务器端使用相同的代码。是的,这不是基于浏览器的、使用 node-webgl 库的纯 JavaScript 代码。

在这样做时我遇到了一个问题。

new Image() 由浏览器识别,但在服务器端我收到错误图像未定义。以下是我附加的错误。我正在调查另外两个错误。

C:\Users\z003npra\Desktop\node>node exp.js
Status: Using GLEW 1.13.0
Linking ./simple.vert+./simple.frag
------------
Vertex info
-----------
(0) : error C5145: must write to gl_Position

Linking ./raycast.vert+./raycast-color.frag
------------
Vertex info
-----------
(0) : error C5145: must write to gl_Position

undefined:346
gl.tf_img = new Image();
^

ReferenceError: Image is not defined
at initTexture (eval at <anonymous> (C:\Users\z003npra\Desktop\node\exp.js:1
5:9), <anonymous>:346:18)
at volumerc_main (eval at <anonymous> (C:\Users\z003npra\Desktop\node\exp.js
:15:9), <anonymous>:392:2)
at Object.<anonymous> (C:\Users\z003npra\Desktop\node\exp.js:17:1)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:139:18)
at node.js:974:3

我尝试了另一种安装 Canvas 的方法,即 npm install canvas 并访问它的 Image 对象元素:但是,我收到其他错误,看起来不兼容。一开始我已经定义了var Canvas1 = require('canvas') , Image = Canvas1.Image;

错误如下,

C:\Users\z003npra\Desktop\node>node exp.js
Status: Using GLEW 1.13.0
Linking ./simple.vert+./simple.frag
------------
Vertex info
-----------
(0) : error C5145: must write to gl_Position

Linking ./raycast.vert+./raycast-color.frag
------------
Vertex info
-----------
(0) : error C5145: must write to gl_Position

C:\Users\z003npra\Desktop\node\node_modules\node-webgl\lib\webgl.js:806
throw new TypeError('Expected texImage2D(number target, number level, numb
er internalformat, number format, number type, Image pixels)');
^

TypeError: Expected texImage2D(number target, number level, number internalforma
t, number format, number type, Image pixels)
at Object.texImage2D (C:\Users\z003npra\Desktop\node\node_modules\node-webgl
\lib\webgl.js:806:13)
at handleLoadedTexture (eval at <anonymous> (C:\Users\z003npra\Desktop\node\
exp.js:15:9), <anonymous>:330:5)
at gl.tf_img.onload (eval at <anonymous> (C:\Users\z003npra\Desktop\node\exp
.js:15:9), <anonymous>:349:3)
at Image.src (C:\Users\z003npra\Desktop\node\node_modules\canvas\lib\image.j
s:30:17)
at initTexture (eval at <anonymous> (C:\Users\z003npra\Desktop\node\exp.js:1
5:9), <anonymous>:351:16)
at volumerc_main (eval at <anonymous> (C:\Users\z003npra\Desktop\node\exp.js
:15:9), <anonymous>:392:2)
at Object.<anonymous> (C:\Users\z003npra\Desktop\node\exp.js:17:1)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)

还有其他替代方法可以在基于 node-webgl 的实现中模仿图像类型吗?

最佳答案

使用node-webgl库中的图像:var Image = require("node-webgl").Image;

关于javascript - 浏览器实现的 'new Image()' 替代方案是 node-webgl javascript 实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39577911/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com