Tag: 高度图

用于几何入口点的SceneKit着色器修改器适用于iOS,但不适用于OS X

我正在做一个SceneKit着色器修改器(用于几何入口点)的早期阶段,它根据高度贴图纹理来移动平面的几何。 计划是用它来创造地形。 在iOS中(编辑:iOS模拟器),着色器按照原样工作,但是将此警告打印到控制台: SceneKit:错误,无代码修饰无效 但是,当为OS X构build时,着色器会产生一个致命错误,而地形几何体只会显示为粉红色的矩形。 这是几何着色器修改器: uniform sampler2D displacementMap; const float intensity = 7.5; # pragma body vec4 displace = texture2D(displacementMap, _geometry.texcoords[0]); _geometry.position.z += displace.r * intensity; 这就是着色器如何连接到几何。 terrainScene是高度贴图,它位于着色器修改器中的漫reflection内容和自定义displacementMap贴图采样器值中: //displacement shader let mat = SCNMaterial() mat.diffuse.contents = terrainScene var displacementShader: String? guard let path = NSBundle.mainBundle().pathForResource("DisplaceGeometry", ofType: "shader") else {return} do { displacementShader = […]