Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在WebGL中检测浮点精度?_Javascript_Opengl Es_Glsl_Webgl - Fatal编程技术网

Javascript 如何在WebGL中检测浮点精度?

Javascript 如何在WebGL中检测浮点精度?,javascript,opengl-es,glsl,webgl,Javascript,Opengl Es,Glsl,Webgl,lowp、mediump和highp表示每个设备的精度不同。如何检测它们的实际值(每个精度下浮点的位长度) 我的意思是: - lowp: 16bit float - mediump 32bit float - highp 64bit float (double) 您可以调用gl.getShaderPrecisionFormat(shaderType,precisionType) shaderType是gl.VERTEX\u着色器或gl.FRAGMENT\u着色器 precisionTy

lowp
mediump
highp
表示每个设备的精度不同。如何检测它们的实际值(每个精度下浮点的位长度)

我的意思是:

- lowp:   16bit float
- mediump 32bit float
- highp   64bit float (double)

您可以调用
gl.getShaderPrecisionFormat(shaderType,precisionType)

shaderType
gl.VERTEX\u着色器
gl.FRAGMENT\u着色器

precisionType
gl.LOW\u FLOAT
gl.gl\u MEDIUM\u FLOAT
gl.HIGH\u FLOAT
gl.LOW\u INT
gl.gl\u HIGH\u INT
中的一种

它返回一个如下所示的对象

{
    rangeMin,  // log 2 of the minimum representable magnitude
    rangeMax,  // log 2 of the maximum representable magnitude
    precision, // log 2 of the precision
};
如果片段着色器不支持高精度浮点格式,则使用参数gl.fragment_SHADER和gl.high_FLOAT调用gl.getShaderPrecisionFormat将为范围和精度返回0


您可以调用OpenGL ES 2.0文档的哪个链接
gl.getShaderPrecisionFormat(shaderType,precisionType)

shaderType
gl.VERTEX\u着色器
gl.FRAGMENT\u着色器

precisionType
gl.LOW\u FLOAT
gl.gl\u MEDIUM\u FLOAT
gl.HIGH\u FLOAT
gl.LOW\u INT
gl.gl\u HIGH\u INT
中的一种

它返回一个如下所示的对象

{
    rangeMin,  // log 2 of the minimum representable magnitude
    rangeMax,  // log 2 of the maximum representable magnitude
    precision, // log 2 of the precision
};
如果片段着色器不支持高精度浮点格式,则使用参数gl.fragment_SHADER和gl.high_FLOAT调用gl.getShaderPrecisionFormat将为范围和精度返回0


你为什么需要OpenGL ES 2.0文档的哪个链接?我正在使用分形渲染器,我必须知道,在我失去精度之前,我可以放大多深。你为什么需要它?我正在使用分形渲染器,我必须知道,在失去精度之前,我可以放大多深