问题标签 [scnmaterial]

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 回答
202 浏览

ios - 像测量应用程序一样在scenekit中绘制虚线圆柱体?

我已经按照这个问题尝试制作破折号气缸

但是,管道没有虚线。

结果

我不确定我在这里缺少什么,请帮忙。

更新T:

事实证明,清晰的颜色(在图像中)被渲染为黑色,在 SCNView 中不透明。不过,不知道为什么绿色会这样变暗。

0 投票
2 回答
153 浏览

ios - SCNBox – 将纹理映射到六个面中的五个

我正在尝试使用一个在 SceneKit 中创建类似画布的东西SCNBoxUIImage从一个表面“包裹”到与之相邻的其他四个表面上。

我目前能想到的唯一方法是将它们UIImage分成五个单独的图像并将它们作为材料放在侧面,但我相信一定有更简单的方法。

任何人都可以在这里引导我朝着正确的方向前进吗?盒子将在与“正面”相对的一侧具有单独的纹理/材质。

在此处输入图像描述

0 投票
1 回答
93 浏览

ios - SceneKit:几何图形在半透明纹理后面不可见。盒内盒

我使用 SceneKit 时遇到了一个问题:当我制作两个立方体时,一个在另一个内部,其中一个具有半透明纹理,内部的立方体没有被绘制。

应该如何(在 XCode 中创建的场景)

实际上如何(我用 alpha 0 制作了几个像素以了解需要看到的内容)

编辑:我发现了一个与搅拌机有关的问题,但与我的Link非常相似

0 投票
0 回答
50 浏览

swift - SceneKit SCNMaterial setValue - 将 SCNVector4 作为 NSValue 传递给着色器

它适用于我的纹理,但不适用于将 SCNVector4 转换为 NSValue?我只是想让 vec4 进入我的表面着色器

这个问题表明它应该可以工作https://stackoverflow.com/a/39407262/273312 - 我只是一直看到这个错误'在调用实例方法'setValue'时没有完全匹配' - 我在尝试其他代码时遇到同样的错误相同。(见图) - 我也尝试将它包装在 SCNMaterialProperty() 中,但仍然无法正常工作。

在此处输入图像描述

0 投票
0 回答
29 浏览

autolayout - 使用 uiview 作为材质纹理的 Scenekit 使用自动布局中断

使用 UIlabel 作为漫反射纹理在 Scenekit 中效果很好,但是当我旋转设备时,它会损坏并且材质变为空白。我也尝试将标签添加到屏幕外视图,但不幸的是问题仍然存在。除了每次方向改变时卸载视图并将它们重新加载回每种材料之外,还有其他方法吗?

0 投票
0 回答
27 浏览

swift5 - iOS SCNScene 如何使材质均匀照明而没有阴影?

无论渲染 SCNScene 的物理设备的环境光环境如何,我都需要用均匀的光线渲染 ARSCNFaceGeometry 对象。在我的测试中,苹果似乎仍然为面部几何模型加入了某种环境光(基于我所在的物理房间)。

如何指定我的 SCNScene 或我的 SCNMaterial 必须以最大级别均匀照明并且永远不会出现任何阴影?

换句话说,如果我的材质 (r,g,b) (255, 0, 0) 上有一个红色像素,我希望它始终处于该值,无论角度或环境光如何。目前,场景似乎正在修改颜色。

0 投票
1 回答
34 浏览

ios - SceneKit,如何正确支持背面几何图形的不透明度(或透明度)贴图?

如下图,它是一个带有不透明度贴图的立方体。我们可以看到前面 3 个面正确渲染为透明度。但是后面的3张脸完全消失了。从逻辑上讲,我们将从背面看到一些东西。

那么,支持透明度和解决此问题的正确步骤是什么?

在此处输入图像描述

0 投票
0 回答
21 浏览

swift - 不创建新材料就无法修改材料

我需要更改模型中某些材料的纹理/颜色。当我创建一个新材料并像这样分配它时

它按预期工作

在此处输入图像描述

但是当我尝试像这样更改现有的

或这个

我得到一个全黑模型

在此处输入图像描述

我无法用新材料替换材料,因为材料名称用于计算shouldChangeMaterial变量。

0 投票
1 回答
33 浏览

shader - 如何在 ARKit 中打印出着色器修改器输出?

我正在使用 SCNMaterial 并使用表面着色器修改器将其设置为diffuse.contents。我想记录一些正在输入着色器的颜色值,但我找不到这样做。执行着色器修改器后,有没有办法可以读取和打印 _surface.diffuse.rgba ?

我们在 SCNPlane 上显示一个带有绿色背景的视频,我们希望它知道该绿色的确切渲染颜色。它被创建为 (0,220,0,1) 但不知何故它被着色器修改器读取为不同的绿色,我们无法将其屏蔽,因为我们可以屏蔽全绿色 (0,255,0,1) bg 视频。

0 投票
0 回答
23 浏览

ios - SceneKit - 基于环境光或旋转的彩色材质

我想为我的对象创建一个材质,如下所示,我应该如何配置我的材质对象?这是我已经完成但没有工作的:

在此处输入图像描述