问题标签 [multipass]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
263 浏览

unity3d - 标记三角形并使自定义着色器标记统一依赖

我正在 Unity 中制作多通道着色器,我希望某些三角形跳过一些通道。我不能通过多种材料做到这一点,因为通道的顺序不一样。例如,如果我有 4 次通过 ABCD,则将使用 ABD 绘制一些三角形,而使用 ACD 绘制一些三角形。必须完成所有“A”通道,然后是所有“B”通道,等等......所以它必须在单个材质和单个着色器中完成。

最有效的方法是什么?我可以使用黑白图像对我的对象进行纹理映射,并将其用作通道的 alpha 值,但这似乎不是最佳选择。

0 投票
1 回答
321 浏览

swift - 什么是 Swift 中的多遍序列?

我正在从 Swift文档中查看这种语言GeneratorType,但我很难理解它:

任何在单个序列上使用多个生成器(或 for...in 循环)的代码都应该静态知道特定序列是多通道的,因为它的具体类型是已知的,或者因为它被限制为 CollectionType。此外,生成器必须通过对序列的 generate() 方法的不同调用获得,而不是通过复制获得。

序列是“多遍”是什么意思?这种语言似乎很重要,但我找不到很好的解释。例如,我了解“多遍编译器”的概念,但我不确定这些概念是否相似或相关......

另外,我搜索了其他回答这个问题的帖子。我找到了这个,它在 C++ 上下文中做了以下声明:

复制其迭代器的算法与不复制其迭代器的算法之间的区别在于,前者被称为“多通道”算法,并且要求其迭代器类型满足 ForwardIterator,而后者是单通道并且只需要 InputIterator。

但我也不完全清楚它的含义,我不确定这个概念在 Swift 中是否相同。

任何比我聪明的人的任何见解都将不胜感激。

0 投票
2 回答
546 浏览

opengl - 在什么条件下,多通道方法变得非常必要?

我想列举一些一般的、基本的情况,在这些情况下,多通道渲染成为一种不可避免的必要性,而不是把所有东西都放在同一个着色器程序中。到目前为止,这是我想出的。

  • 当结果需要当前片段周围的非本地片段信息(即上下文)时,例如对于框过滤器,那么之前的传递必须提供此信息;
  • 当结果需要通过先前通道完成的硬件插值时;
  • 当结果充当某些计算集的预缓存时,其性能比简单地(重新)处理使用它们的那些通道中的整个计算集(例如,将深度缓冲区的每个片段转换为特定和昂贵的方式,然后多个后期着色器可以共享,而不是每个重复这些计算。所以,计算一次,多次使用。

我从我自己的(天真的)推论中注意到,顶点和几何着色器似乎并没有真正进入延迟渲染的画面,因此可能通常在第一遍中完成;对我来说,这似乎是明智的,但是对这一点的肯定或否定,以及细节,都会引起人们的兴趣。

PS我将保留这个问题以收集好的答案,所以不要指望快速获胜!

0 投票
1 回答
1417 浏览

google-chrome - 如何配置“watir”以使用现有的 chrome 用户配置文件(使用 chrome.exe --user-data-dir 创建)

是否可以使用现有的 chrome 用户/配置文件配置 watir webdriver

由 chrome.exe --user-data-dir=C:\MyChromeUserProfile 创建

Firefox中,可以执行以下操作:(
使用firefox -P 创建了用户配置文件
profile = Selenium::WebDriver::Firefox::Profile.new(c://MyFFUserProfile) Watir::Browser.new :ff, :profile => profile

对于Chrome,我尝试了以下代码无济于事:
Watir::Browser.new :chrome, :switches => %w['--user-data-dir=c://MyChromeUserProfile']

虽然这会打开一个 chrome 会话,但它不会使用用户的配置文件设置(特别是已安装和配置的扩展,例如用于 HTTP 基本身份验证的 Multi-pass)。

顺便说一下,这是一个类似的解决方法,但对于我正在尝试实现的 chrome,就像在http://watirwebdriver.com/basic-browser-authentication/上为 Firefox 和自动身份验证列出的一样)

0 投票
1 回答
840 浏览

node.js - 开发商店中的 Shopify Multipass

我正在尝试在开发商店中测试 Multipass,我设法在 Node.js 中实现了 Multipass 逻辑

现在我收到错误消息:“您无权使用 Multipass 登录”

我在设置中启用了 Multipass,有什么我遗漏的吗?

0 投票
0 回答
423 浏览

opengl - 使用帧缓冲区的多通道渲染

我正在尝试进行多通道屏幕外渲染,但我陷入了一个问题(更像是一个问题)。捕获多次传球应该是什么概念?目前我得到了这个:

在里面:

使成为:

正如我在一些演示文稿中所读到的,最好使用多个 FBO,但有人说最好使用单个 FBO 并切换附件,它更快,但驱动程序可能验证过多(性能当然会受到影响)。我正在使用 OSX10.11,OpenGL 分析器确实显示 glBindFramebuffer 比 glFramebufferTexture(Layer.., attachment) 慢 x20。但是在这种情况下,如果我使用单个 FBO,我应该如何渲染到纹理?因为现在我不能做 DRAWQUAD(); 两次.. 如果我能够使用具有不同附件的单个 FBO,我认为的示例。

在里面:

使成为:

..在这个阶段我应该做什么?因为 FBO 由场景数据填充,我不能只是 DRAWQUAD(); 这里。

编辑:这是正确的做法吗?

0 投票
0 回答
47 浏览

c++ - Opengl > 3片段着色器知道片段是否是背景

我正在使用 OpenGL >3.3,我想知道是否有办法在片段着色器中轻松找出片段是否属于背景。(我正在使用#Version 330)。
我正在使用多通道渲染,我必须与实际上不是背景的片段的邻居一起工作......(我正在使用点云)。所以我试着做:

但我认为这是低效的......(由于浮点精度而不是正确的......)有没有更好的方法来实现我想要的?

0 投票
2 回答
891 浏览

c++ - OpenGL glDrawBuffer 和 glBindTexture

我还是 opengl3 的新手,我正在尝试创建多通道渲染。
为了做到这一点,我创建了 FBO,生成了几个纹理并将它们附加到它

它运作良好(我试着相信我在这里做得很好!)。

我的理解问题发生在当我尝试在屏幕外的第一个纹理中渲染,然后在第二个纹理中,然后在屏幕上渲染时。
要渲染到特定纹理,我正在使用:

然后我使用我的着色器进行绘制,然后我想做:

毕竟

glDrawBuffer我的问题是:和有什么区别glBindTexture?有必要同时调用吗?纹理不是附加到缓冲区吗?(我实际上无法对其进行测试,因为我正在努力使其工作......)

谢谢!

0 投票
1 回答
734 浏览

xml - 从特定节点中删除命名空间,将结果用于第二个 xslt(version1.0) 转换

我是 XSLT 的新手,我发现这个概念有点难以掌握;任何书籍或链接建议?

我正在尝试从customerinfo 节点及其所有子节点(即customerinfo、name 和age)中删除命名空间。删除命名空间后,我想使用生成的 xml 作为其他 xslts 的输入吗?

XML 1:

XML 2:删除命名空间后;保持属性值不变:

最后,传递 xml 2 作为文档上其他 xslt 模板导入的输入。

0 投票
1 回答
331 浏览

sorting - 我需要添加缺少的节点,然后排序包括添加的新节点

我有一个输入 XML,我需要使用 XSLT 2.0 对其进行转换。

这是我的输入 xml

我的输入 xml 缺少一些节点。例如(移动设备、国家/地区,根据 xsd 是强制性的)。现在,我需要添加这两个节点(作为空节点),然后我需要对这两个节点进行排序

排序顺序应为:FirstName,LastName,email,sex,professional,mobile,Address,area,country;

最终输出 xml 应该是:

我尝试使用以下 XSLT:

使用上面的 XSLT,它被转换如下:

有人可以在这里帮我吗,拜托。

提前致谢。