thanpv-lifortevn / angleproject

Automatically exported from code.google.com/p/angleproject
Other
0 stars 0 forks source link

Implement support for float-integer conversions in ESSL3 compiler #865

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
ESSL3 float-integer conversions (floatBitsToInt, floatBitsToUint, 
intBitsToFloat, uintBitsToFloat) are currently not supported by ANGLE.

These are simple to implement on Direct3D with asint, asuint and asfloat 
intrinsic functions. That does require Shader Model 4+ and thus the DirectX 11 
backend.

vec2 pack/unpack functions are also currently not supported by ANGLE. These 
will need to be emulated on Direct3D.

Original issue reported on code.google.com by oetu...@nvidia.com on 8 Jan 2015 at 2:32

GoogleCodeExporter commented 9 years ago
Some of the pack/unpack functions are not supported natively on OpenGL <= 4.1 
either. So they will have to be emulated there.

Original comment by oetu...@nvidia.com on 8 Jan 2015 at 5:18

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Olli Etuaho <oetuaho@nvidia.com>
Commit : 8efc5ad57214e504f61dc0dc817b3d33a05e1b64

Code-Review  0 : Nicolas Capens, Olli Etuaho, Zhenyao Mo
Code-Review  +2: Jamie Madill
Verified     0 : Jamie Madill, Nicolas Capens, Zhenyao Mo
Verified     +1: Olli Etuaho
Commit Queue   : Chumped
Change-Id      : I2d552e9cdb41f7d8ddfee7b0249a99d629a6d7d7
Reviewed-at    : https://chromium-review.googlesource.com/255471

Initialize BuiltInFunctionEmulator outside Compiler

This moves GLSL output specific code from the Compiler class to the
GLSL/ESSL translators.

BUG=angleproject:865

src/compiler/translator/BuiltInFunctionEmulator.cpp
src/compiler/translator/BuiltInFunctionEmulator.h
src/compiler/translator/BuiltInFunctionEmulatorGLSL.cpp
src/compiler/translator/BuiltInFunctionEmulatorGLSL.h
src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp
src/compiler/translator/BuiltInFunctionEmulatorHLSL.h
src/compiler/translator/Compiler.cpp
src/compiler/translator/Compiler.h
src/compiler/translator/OutputHLSL.cpp
src/compiler/translator/OutputHLSL.h
src/compiler/translator/TranslatorESSL.cpp
src/compiler/translator/TranslatorESSL.h
src/compiler/translator/TranslatorGLSL.cpp
src/compiler/translator/TranslatorGLSL.h

Original comment by bugdro...@chromium.org on 5 Mar 2015 at 6:52

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Olli Etuaho <oetuaho@nvidia.com>
Commit : 51585037099114b9b75259b58eb9da6349f30385

Code-Review  0 : Nicolas Capens, Olli Etuaho
Code-Review  +1: Jamie Madill
Code-Review  +2: Zhenyao Mo
Verified     0 : Jamie Madill, Nicolas Capens, Zhenyao Mo
Verified     +1: Olli Etuaho
Commit Queue   : Chumped
Change-Id      : Idf7854c2b5323609880b527ed806440dcc8ac091
Reviewed-at    : https://chromium-review.googlesource.com/256365

Remove unnecessary ifdef APPLE from built-in emulation

The emulation is already toggled by a compilation flag, so having it
behind an ifdef only adds unnecessary complexity, particularly when
testing changes to the emulation code.

BUG=angleproject:865

src/compiler/translator/BuiltInFunctionEmulatorGLSL.cpp

Original comment by bugdro...@chromium.org on 6 Mar 2015 at 8:52

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Olli Etuaho <oetuaho@nvidia.com>
Commit : 5e5c826c8c9a37152e169e855ea44b3af0dae668

Code-Review  0 : Geoff Lang, Olli Etuaho
Code-Review  +1: Jamie Madill
Code-Review  +2: Nicolas Capens
Verified     0 : Geoff Lang, Jamie Madill, Nicolas Capens
Verified     +1: Olli Etuaho
Commit Queue   : Chumped
Change-Id      : Idf243b483f7b5edfcb54de2755af11e17c3756d3
Reviewed-at    : https://chromium-review.googlesource.com/262413

Fix float-int conversion return type precision tracking

Float-int conversion functions are defined to always return highp values.

BUG=angleproject:865
TEST=angle_unittests

src/compiler/translator/Intermediate.cpp
src/tests/compiler_tests/TypeTracking_test.cpp

Original comment by bugdro...@chromium.org on 29 Mar 2015 at 9:16