webgl相关内容

如何在画布上实时使用乘法混合模式?

修改始于2016年:“multiply”值实现为 globalCompositeOperation 。 基本上,我有两个画布(一个是不可见的画布用于绘图),我想使用乘法混合模式将不可见的画布混合到可见的画布上。 Context.globalCompositeOperation 不包括乘法(但我认为应该使用 imageData 手动混合画布太慢了(我需要能够在60fps做到这一点)。 ..
发布时间:2016-11-13 02:03:54 前端开发

将three.js网格作为OBJ或STL导出

我想为一个参数化的Three.js网格对象创建一个导出为OBJ或STL链接。 与 http://www.3dtin.com 上的导出选项一样 $ b $ $ p 解决方案 要使用.obj格式的网格,我使用这个简单的函数: THREE.saveGeometryToObj = function(geometry){ var s =''; for(i = 0; i ..
发布时间:2016-11-13 01:59:42 其他开发

getContext('webgl')vs getContext('3d')有什么区别?

我开始学习WebGL,因为我发现了一些旧的教程,我不知道什么是正确的方式在2014年? 我开始了 (基本),在教程中他们会说: use getContext('2d')如果你想使用WebGL,那么你把 3d 而不是 2d 但现在我正在学习,我发现教程谈论 getContext 'webgl'),而不是 getContext('3d')。 语法已更改? ..
发布时间:2016-11-13 01:58:59 前端开发

在Canvas / WebGL中渲染HTML

是否可以在Canvas或WebGL中呈现HTML元素? (类似于在WebGL中如何绘制视频元素纹理) 解决方案 有一个尝试可以做80附近的工作%。无法呈现下拉列表,按钮等,但大多数页面中的项目都会呈现。 请从此处下载。 http://html2canvas.hertzen.com/ http://hertzen.com/experiments/jsfeedback/ ..
发布时间:2016-11-13 01:51:44 前端开发

从getImageData(Javascript)创建纹理

可以从另一个画布的getImageData数组(在同一个html页面中)创建一个纹理(在canvas中的一个元素上使用)?也许没有three.js?非常感谢, Jennifer 解决方案 WebGL texImage2D 方法是它的最后一个参数可以是一个DOM元素而不是一个ArrayBuffer,在这种情况下,它将其渲染的内容复制到你的纹理对象。 例如: var can ..
发布时间:2016-11-13 01:30:08 其他开发

使用键盘箭头的three.js的第一人称模拟

对于我的来源,请访问 http://jsfiddle.net/fYtwf/ 背景 我有一个简单的3d模拟使用three.js,其中相机被立方体包围在3维。这些立方体可以帮助直观地查看相机在哪里查看,直到视图控件被编码和测试。我想创建一个简单的3D应用程序,其中相机通过向上,向下,向左和向右键。就像移动头一样 问题 在我目前的应用程序中,当面向前方, ,我们是成功的。然而,当 ..
发布时间:2016-11-13 00:54:52 前端开发

如何在使用后从GPU中清理和卸载WebGL画布上下文?

如何清理WebGL上下文程序并从GPU和dom元素中卸载程序,缓冲区和所有内容? 我想确保我们不是乱抛垃圾。 此外,如果可能的话,重用画布会更好(我不知道是否 2d 或 webgl 上下文)。 解决方案 每次引用您的gl上下文和所有gl对象和画布,并从DOM中删除画布。不幸的是,因为JavaScript是垃圾收集,所以不知道什么时候浏览器会释放内存。有一些一致性测试,试图测试他 ..
发布时间:2016-11-13 00:46:03 前端开发

使用2D和3D上下文的画布3D绘图

由于webgl / opengl不支持文本绘制,因此可以使用2D上下文使用3D上下文和文本绘制绘制3D对象? 解决方案 不,不幸的是不。 HTML 5规格说,如果您在已经位于不同 getContext /scripting.html#concept-canvas-context-mode\">桌面模式,并且两个上下文不兼容,则返回 null 。 不幸的是“webgl”和“2d” ..
发布时间:2016-11-13 00:37:14 前端开发

WebGL - 从渲染缓冲区读取像素数据

有没有办法从WebGL呈现缓冲区或屏幕外的帧缓冲区获取原始像素数据? 我使用WebGL做一些图像处理,例如模糊图像,调整颜色等等。 我使用帧缓冲区来渲染整个图像尺寸的纹理,然后使用该纹理以较小的尺寸在视口中显示。我可以获得缓冲区或纹理的像素数据,所以我可以在正常的画布2d上下文中使用它吗?或者,我仍然坚持将视口更改为完整的图像大小,并通过canvas.toDataURL()抓取数据? ..
发布时间:2016-11-13 00:08:09 前端开发

为什么我的画布在转换为图像后空白?

我试图转换此页面上的画布元素使用以下代码段(例如在JavaScript控制台中输入): (function convertCanvasToImage(canvas){ var image = new Image(); image.src = canvas.toDataURL(“image / png”); return image; } )[0]);不幸的是,我得到的png是完全 ..
发布时间:2016-11-12 23:47:49 前端开发

Canvas toDataURL()仅在Firefox中返回空白图片

我使用 glfx.js 编辑我的图片,但我尝试取得该图片的资料时使用 toDataURL()函数我得到一个空白图像(宽度与原始图像相同)。 奇怪的是,在Chrome脚本工作完美。 我想要提到的是图像加载在画布使用onload事件: img.onload = function(){ try { canvas = fx.canvas(); } catch(e){ al ..
发布时间:2016-11-12 23:20:53 前端开发

ThreeJS。如何实现Zoomall并确保给定的框填充画布区域?

我正在寻找一个函数,以确保给定的框或球体将在WebGL画布中可见,并且它将适合画布区域。 我使用透视摄像机,摄像机已经指向对象的中间。 我理解这可以通过改变FOV角度或通过沿着视图轴移动相机来实现。 任何想法如何使用ThreeJS可以实现这一点。 解决方案 这是我最终实现它: var camera = new THREE.PerspectiveCamera ,1,1000 ..
发布时间:2016-11-10 17:29:32 其它移动开发

WebGL和OpenGL的性能

在过去的一个月里,我一直在讨论WebGL,发现如果我创建和绘制一个大的顶点缓冲区,会导致低FPS。有人知道如果它是相同的,如果我使用OpenGL与C + +? 这是使用所使用的语言(在WebGL的情况下是JavaScript)还是GPU的瓶颈? WebGL ..
发布时间:2016-10-23 19:24:31 C/C++开发

Alpha渲染差异OpenGL和WebGL

我使用相同的精确C ++代码渲染相同的场景,一次在Windows上的原生OpenGL,一次使用Emscripten到WebGL。场景中的一切看起来完全一样,除非我用alpha!= 1.0渲染。差异如下所示: 蓝色立方体颜色为(0.0,0.0,1.0,0.5 ) 用于渲染多维数据集的着色器除了绘制颜色之外没有什么作用。 右边是使用OpenGL的外观,它是预期的结果,只是蓝色半透明度 ..
发布时间:2016-10-14 21:43:45 C/C++开发

如何当一个页面退出全屏检测?

我创建一个3D多人游戏three.js所,在这里玩家可以加入现有的各种游戏。一旦“玩”点击,渲染器被添加到页面,全屏播放。这个伟大的工程,但问题是,当我退出全屏,它仍然保持追加。我想删除它,但我不知道什么时候! 所以,基本上,我在寻找,说事件“这个元素退出全屏。” 这是我怎么渲染追加到页: 容器=的document.getElementById('集装箱'); document.body.a ..
发布时间:2016-08-15 12:55:08 前端开发

作为three.js所网站的背景可能吗?

我一直在考虑使用three.js所的网站上一个有趣的实验。我想用一个当前实验(对此我已经有code代表),并把它作为我的网站的背景。 有人知道如何做到这一点? 我看到它在这里完成: http://janjorissen.be/ 三JS API: https://github.com/mrdoob/three。 JS /维基/ API的参考 解决方案 我通常使用iframe了点。因此, ..
发布时间:2016-08-01 10:01:36 前端开发

three.js所装载.OBJ错误的Azure而不是本地

我使用three.js所进行的WebGL加载的obj 但我有Windows Azure中加载的obj捉迷藏的Windows Server 2008时出现问题 我使用谷歌Chrome浏览器和它给了以下错误: http://websiteaddress.net/webGL/obj/test.mtl 404(未找到) 甚至,我用自己的原始来源$ C ​​$ C加载obj文件具有相同的误差 和当 ..
发布时间:2016-07-29 17:23:13 前端开发

指数前pression必须恒定 - WebGL的/ GLSL错误

我在使用非恒定INT作为索引访问数组在片段着色器的麻烦。我已经删除了的公式,因为它不会在这里做多大意义呢,但我的code是为了计算基于当前像素tileID并用它来确定颜色。 下面是我的code: INT tileID =<插入公式这里取代;VEC3 colorTest;INT ArrayTest中[1024]; 为(中间体X = 0; X&下; 1024; X ++){ 如果( ..
发布时间:2016-06-02 21:58:04 其他开发