* * @return {IKernelFeatures}
()
| 67 | * @return {IKernelFeatures} |
| 68 | */ |
| 69 | static getFeatures() { |
| 70 | const gl = this.testContext; |
| 71 | return Object.freeze({ |
| 72 | isFloatRead: this.getIsFloatRead(), |
| 73 | isIntegerDivisionAccurate: this.getIsIntegerDivisionAccurate(), |
| 74 | isSpeedTacticSupported: this.getIsSpeedTacticSupported(), |
| 75 | kernelMap: true, |
| 76 | isTextureFloat: true, |
| 77 | isDrawBuffers: true, |
| 78 | channelCount: this.getChannelCount(), |
| 79 | maxTextureSize: this.getMaxTextureSize(), |
| 80 | lowIntPrecision: gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.LOW_INT), |
| 81 | lowFloatPrecision: gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.LOW_FLOAT), |
| 82 | mediumIntPrecision: gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.MEDIUM_INT), |
| 83 | mediumFloatPrecision: gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.MEDIUM_FLOAT), |
| 84 | highIntPrecision: gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.HIGH_INT), |
| 85 | highFloatPrecision: gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.HIGH_FLOAT), |
| 86 | }); |
| 87 | } |
| 88 | |
| 89 | static getIsTextureFloat() { |
| 90 | return true; |
no test coverage detected