When using a sampler the texture was created as if it has mipmaps,
regardless what you specified in GL_TEXTURE_MIN_FILTER via
glSamplerParameteri() -- mistakenly the default value
GL_NEAREST_MIPMAP_LINEAR or the value set via glTexParameteri() was
evaluated.
If you didn't provide mipmaps and didn't let the driver generate them
this led to not sampling your texture data when minification occurred.
BUG=angleproject:2772
TEST=angle_end2end_tests.Texture2DTestES3.MinificationWithSamplerNoMipmapping
Change-Id: I195147e208129c6fa8686bb0d9aea6931b2f20b1
Reviewed-on: https://chromium-review.googlesource.com/1175910
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Setting EGL_WIDTH or EGL_HEIGHT results in mFixedWidth and mFixedHeight
changing their values.
Whenever the swap chain is tested for needing a resize, surfaces with
mFixedSize are treated as if they should be resized to mFixedWidth and
mFixedHeight from their current size. This way fixed-size surfaces
can be resized - it's enough to do a couple of eglSurfaceAttrib() calls
and then either let ANGLE check surface for needing a resize in due course,
or force that by calling eglWaitNative().
BUG=angleproject:2725
Change-Id: I2932d8ecd5a2f10500e4aa8583a169aa09bf01bb
Reviewed-on: https://chromium-review.googlesource.com/1139055
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Compiling fails with some combinations of gcc and glibc.
'size_t' does not name a type in proc_table.h
Change-Id: Id79e033dc72d836788551e076ced6dbd706ce902
Reviewed-on: https://chromium-review.googlesource.com/995422
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
1. src/common/platform.h updated to define ANGLE_PLATFORM_POSIX on Haiku.
2. include/EGL/eglplatform.h updated to add stubs typedefs for
platform-specific primitives for Haiku.
Change-Id: I28775e909ad9cabec1c474ff4fe0a241eb05d6a1
Reviewed-on: https://chromium-review.googlesource.com/573022
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Add new sampler type "__samplerExternal2DY2YEXT"
to sample a YUV texture image and output color value
without any color conversion,
new additional type to specify color space standard formula and
built-in functions for yuv to rgb transformation.
Change-Id: I1780650fe84cd75191c1ca1e4118e89d585bfd92
Reviewed-on: https://chromium-review.googlesource.com/454697
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
When ANGLE is using D3D11 and not using DirectComposition, DXGI will hook
the window's message loop and override Alt+Enter to trigger a transition
to exclusive fullscreen mode. This disables that behaviour, since it's
inconsistent between backends and, at least during my testing, the
application did not even work correctly after the transition to fullscreen
mode.
This commit should be similar to the workarounds implemented in Qt and mpv
to prevent this behaviour and will hopefully make those workarounds
unnecessary. Only the DXGI_MWA_NO_ALT_ENTER flag is used, since the other
flags didn't seem to have an effect and probably only matter in fullscreen
mode.
BUG=angleproject:1414
Change-Id: Icb70c2c1405225619dcb27c5ffc9472fddd1157b
Reviewed-on: https://chromium-review.googlesource.com/352950
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
In the CopyNativeVertexData template function, in the else clause
use memcpy/memset rather than for loops. This is a performance
improvment for floating point versions of CopyNativeVertexData,
particularly on 32-bit Firefox, where the -arch:IA32 compiler
option used cause the compiler to generate fld/fstp operations
inside the for loops.
Update AUTHORS & CONTRIBUTORS to include AMD.
BUG=angleproject:1317
Change-Id: I7133fc476028284f56783f4e2f9e2395f6227514
Reviewed-on: https://chromium-review.googlesource.com/327590
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
It seems reasonable to validate the equality between stencilWriteMask
and stencilBackWriteMask only by comparing the effective bits.
An existing dEQP test[1] and a WebGL test[2] also use the max size of
stencil bits for checking the stencil mask values.
[1] StencilWriteMaskSeparateTestCase (gles3/functional/
es3fIntegerStateQueryTests.cpp)
[2] https://www.khronos.org/registry/webgl/sdk/tests/conformance/state/
gl-get-calls.html (Search for "minimumRequiredStencilMask ")
Re-land with fix for Clang warning.
Change-Id: I4cadaffced04ca55fa6daf7ac6a462368e0cfeec
Reviewed-on: https://chromium-review.googlesource.com/307530
Reviewed-by: Jinyoung Hur <hurims@gmail.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
It seems reasonable to validate the equality between stencilWriteMask
and stencilBackWriteMask only by comparing the effective bits.
An existing dEQP test[1] and a WebGL test[2] also use the max size of
stencil bits for checking the stencil mask values.
[1] StencilWriteMaskSeparateTestCase (gles3/functional/
es3fIntegerStateQueryTests.cpp)
[2] https://www.khronos.org/registry/webgl/sdk/tests/conformance/state/
gl-get-calls.html (Search for "minimumRequiredStencilMask ")
Change-Id: I68cefbe8a9f69c5a9ebcb30027a05581e3024add
Reviewed-on: https://chromium-review.googlesource.com/302703
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Jinyoung Hur <hurims@gmail.com>
Commit-Queue: Jinyoung Hur <hurims@gmail.com>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Removed Borbitsoft from the AUTHORS file, added Tibor den Ouden.
Removed Borbitsoft from CONTRIBUTORS file, company section.
Moved Tibor den Ouden in CONTRIBUTORS file from company section to individual section
Change-Id: I3ab47d637d0879fde8f9dc0f714e2cb44562c897
Reviewed-on: https://chromium-review.googlesource.com/221054
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
vsnprintf is defined in stdio.h according to the standard. It was not in
the include chain of angleutils.cpp, which broke the build on Linux on
some configurations. Seems like other toolchains include the function in
some non-standard way.
BUG=angle:761
Change-Id: Idcd75776e8a9b83dad182d1b4bac0beac006c6ac
Reviewed-on: https://chromium-review.googlesource.com/221053
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
BUG=angle:758
Removed explicit destruction of char[] by using std::vector<char> object.
Added Borbitsoft to AUTHORS and Tibor den Ouden to CONTRIBUTORS
Change-Id: I9c4017eb81ce3fab8b7fb4a5b4ad52a758d14a2d
Reviewed-on: https://chromium-review.googlesource.com/219940
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
InfoSink.h needs stdlib.h for abs(int) and free() in the global namespace.
ExpressionParser needs malloc.h, because bison needs malloc and free in
the global namespace, but "#include <cassert>" will put it only in the
std:: namespace on QNX.
BUG=500
R=geofflang@chromium.org, shannonwoods@chromium.org
Review URL: https://codereview.appspot.com/19330044
Conflicts:
src/compiler/translator/InfoSink.h
Change-Id: Ie480d5c293d099f21dafc8c1e7997c0b4cda7207
Reviewed-on: https://chromium-review.googlesource.com/178998
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Resizing a window larger results in the newly exposed region being invalidated
but the old region is treated as valid. This can result in the old region no
longer updating. This has been observed on Windows 7 64-bit with Aero theme
using NVIDIA GeForce GTS 250 and driver version 301.42. Invalidate the entire
client window area when resetting the swap chain so that it updates properly.
Original bug report: https://bugreports.qt-project.org/browse/QTBUG-27822
Review: http://codereview.appspot.com/6812076/
Author: Jonathan Liu
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1458 736b8ea6-26fd-11df-bfd4-992fa37f6226