相关疑难解决方法(0)

WebGL GLSL 片段着色器不适用于 iOS

我正在使用此处的 Classic Perlin Noise (vec3) 函数。

当我在我的 MacBook 上渲染这个着色器时,着色器运行良好,并将噪声显示为我期望的颜色。

当我在 iPhone 上渲染这个着色器时,画布是全黑的。

这段代码有什么问题会导致cnoise函数总是返回 0 吗?或者是否有一些功能不适用于 Metal?

这是完整的着色器:

#ifdef GL_ES
precision mediump float;
#endif

uniform vec2 u_resolution;
uniform float u_time;

vec4 permute(vec4 x){return mod(((x*34.0)+1.0)*x, 289.0);}
vec4 taylorInvSqrt(vec4 r){return 1.79284291400159 - 0.85373472095314 * r;}
vec3 fade(vec3 t) {return t*t*t*(t*(t*6.0-15.0)+10.0);}

float cnoise(vec3 P){
  vec3 Pi0 = floor(P); // Integer part for indexing
  vec3 Pi1 = Pi0 + vec3(1.0); // Integer part + 1
  Pi0 = mod(Pi0, 289.0);
  Pi1 = …
Run Code Online (Sandbox Code Playgroud)

javascript glsl webgl ios

3
推荐指数
1
解决办法
1227
查看次数

标签 统计

glsl ×1

ios ×1

javascript ×1

webgl ×1