|
f420c424
|
2011-09-12T18:27:59
|
|
Add/remove more functions to use shims.
Remove normalize and add cos instead to avoid a crash in Mac with ATI cards (angle bug 193, 202).
Also add atan and mod as it's also buggy on Mac/Win with NVIDIA cards.
Also, trying to minimize emulated functions by adding masks for fragment/vertex shaders.
ANGLEBUG=196
Review URL: http://codereview.appspot.com/4992047
git-svn-id: https://angleproject.googlecode.com/svn/trunk@748 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
32e97315
|
2011-08-24T01:03:11
|
|
Emulate certain buil-in functions to work around driver bugs.
This is implemented by adding a new compile option SH_EMULATE_BUILT_IN_FUNCTIONS. The emulated functions are names as webgl_originalName_emu so there will never be naming conflicts.
At the moment only three functions are emulated: normalize, abs, sign. Also, the compile option will emulate all three. However, the mechanism to emulate only a selected subset is also imeplemented. It can be turned on easily.
ANGLEBUG=196
TEST=with this option, the failed test with abs.frag passes.
Review URL: http://codereview.appspot.com/4916043
git-svn-id: https://angleproject.googlecode.com/svn/trunk@738 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
57f7ce00
|
2011-08-15T23:13:05
|
|
Output the precision for the return type in function declarations.
Tested with GLSL ES conformance suite (which doesn't test this) and
the WebGL conformance suite, which now contains tests to ensure that
these constructs compile correctly.
Chromium bug: http://crbug.com/86952
Review URL: http://codereview.appspot.com/4897045
git-svn-id: https://angleproject.googlecode.com/svn/trunk@731 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
189be2f1
|
2011-06-16T18:28:53
|
|
Emit precisions in function arguments and return type for GLES2.
BUG=none
TEST=Translator with GLES2 output backend emit precisions for function arguments and return type.
Review URL: http://codereview.appspot.com/4643042
git-svn-id: https://angleproject.googlecode.com/svn/trunk@694 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
5601ea0d
|
2011-06-10T18:23:25
|
|
Implement ES2 backend for Angle translator.
With this CL, we have the option to select a code output backend: GLSL, GLSL ES, or HLSL.
Note that we always emit the highest supported float precision for fragment shader due to anglebug 168. Although this is a temporary solution, it's not against GLSL ES spec, because it's ok for implementation to upgrade precision.
Tested with WebGL conformance test suite, GLES2 conformance test suite (only failed 2/1198), and a few webgl demos, including worlds of webgl, aquarium, etc.
anglebug=81
test=translator emitting correct GLSL ES code when ES2 backend is selected.
Review URL: http://codereview.appspot.com/4550129
git-svn-id: https://angleproject.googlecode.com/svn/trunk@687 736b8ea6-26fd-11df-bfd4-992fa37f6226
|