Граф коммитов

303 Коммитов

Автор SHA1 Сообщение Дата
Geoff Lang 9cd1915c96 Fix warnings about unreferenced local variables.
BUG=skia:2272

Change-Id: Ibf03efedc662fea2a389ad2dc5af5b7b014181a8
Reviewed-on: https://chromium-review.googlesource.com/201900
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-05-28 21:07:53 +00:00
Geoff Lang 5df9f5233c Automate the DEQP tests by wrapping them in the gtest suite.
BUG=angle:497

Change-Id: If0a72c053bccccc4369ec78dd70173bbadb1be7b
Reviewed-on: https://chromium-review.googlesource.com/200044
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-05-23 17:30:04 +00:00
Jamie Madill fc2521e16b Fix build on Windows 8.1 SDK.
The Windows 8.1 SDK includes a new DLL compiler DLL, and is useful
to test against, so we should fix the few deprecated functions and
warnings.

BUG=angle:649

Change-Id: I28bcf49564f3f7d7403d939d61dd78d3972281ba
Reviewed-on: https://chromium-review.googlesource.com/199341
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2014-05-21 14:06:45 +00:00
Geoff Lang 876dc72400 Fix 64-bit build failures.
Update the BufferStorage classes to use size_t for all sizes and offsets.
BufferStorage9 now uses a std::vector to manage its memory.

BUG=angle:631

Change-Id: Iea4e7b33ede59a5b9c6a1245690c4b7865096fc3
Reviewed-on: https://chromium-review.googlesource.com/197819
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-05-02 17:48:25 +00:00
Jamie Madill 8cc03bf73f Revert "Remove the second translator target, only using static."
This reverts commit d51df461e5.

Conflicts:
	projects/build/all.sln
	projects/samples/samples.sln
	src/compiler.gypi

Change-Id: I6e1d77531df61de28e4402ed1916f6ecdebb68fd
Reviewed-on: https://chromium-review.googlesource.com/192890
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2014-04-16 19:41:43 +00:00
Nicolas Capens 4648508683 Implement EXT_shader_texture_lod
BUG=angle:551

Change-Id: I81d7574a15861f1b24ddf6147cf71adbf20e10f3
Reviewed-on: https://chromium-review.googlesource.com/194960
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
2014-04-16 19:30:22 +00:00
Jamie Madill 96e46cd6f2 Allow sample projects to choose ES3 & D3D version.
Passing parameters from the sample constructor allows us to test
ES3 functionality, as well as choose between D3D9 and 11.

BUG=angle:521

Change-Id: I7b9543b399450f62c5415654e8026a7c218b7e37
Reviewed-on: https://chromium-review.googlesource.com/193292
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2014-04-09 13:49:31 +00:00
Geoff Lang d095bdaa16 Add a common include in the project definitions.
Any projects that may be included by gyp files outside our project (chrome
or skia) may not have the same defines or ignored compiler warnings.  To
make sure that we can always compile, each project now includes a common
file with all required definitions and gyp variables.

BUG=angleproject:583

Change-Id: I702bee975d0554c51bfa03981920dfb295ffbafa
Reviewed-on: https://chromium-review.googlesource.com/189458
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-09 13:44:09 +00:00
Geoff Lang 73f5143345 Remove the es_util project.
BUG=angle:521

Change-Id: Iad633bf210c36db340490f21923534697e27891b
Reviewed-on: https://chromium-review.googlesource.com/188741
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-01 15:12:33 +00:00
Geoff Lang e977efc43a Port the PostSubBuffer sample to the new sample framework.
Add a swap method on the SampleApplication class so that samples can
override the default eglSwapBuffers function call.

BUG=angle:521

Change-Id: I3f0ba6ed182b368e6f5fe502de67d1a14267a857
Reviewed-on: https://chromium-review.googlesource.com/188740
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-01 15:12:27 +00:00
Geoff Lang e9b02245e0 Port the TextureWrap sample to the new sample framework.
Refactor the generation of checkerboard textures since they're used by
this sample and MipMap2D.

BUG=angle:521

Change-Id: I1ba8bc4927a7944eb8efad0c8aa71eba4619e457
Reviewed-on: https://chromium-review.googlesource.com/188729
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-01 15:12:19 +00:00
Geoff Lang d3a4092d58 Port the Stencil_Test sample to the new sample framework.
Rename Stencil_Test to stencil_operations, a more fitting name for a
sample.

BUG=angle:521

Change-Id: I5412ecef12d80c3dbf54539bc7509678a35c44d5
Reviewed-on: https://chromium-review.googlesource.com/188728
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-01 15:12:03 +00:00
Geoff Lang f6139359a1 Port the Simple_VertexShader sample to the new sample framework.
Add a Matrix type and cube gemetry generation helper functions.

BUG=angle:521

Change-Id: Ia50be1790d6f440499eea052f427762637f3c876
Reviewed-on: https://chromium-review.googlesource.com/188727
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-01 15:05:42 +00:00
Geoff Lang 705073f756 Port the Simple_TextureCubemap sample to the new sample framework.
Added helper functions for generating cube maps and sphere geometry.

BUG=angle:521

Change-Id: Ic1e8584d69793233ec6a97744b13097d55b9f287
Reviewed-on: https://chromium-review.googlesource.com/188726
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-01 15:05:27 +00:00
Geoff Lang 99384047b1 Port the Simple_Texture2D sample to the new sample framework.
BUG=angle:521

Change-Id: Idd1889b13a751d473b1e99c4c593cd4cded972ae
Reviewed-on: https://chromium-review.googlesource.com/188725
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-01 14:28:22 +00:00
Geoff Lang 712e3f4d65 Port the MultipleRenderTarget sample to the new sample framework.
Renamed to MultipleDrawBuffers and added shader loading from file.

BUG=angle:521

Change-Id: Iffeb589a95eee4409d3624c56fe3a5e4a7d5be63
Reviewed-on: https://chromium-review.googlesource.com/188724
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-04-01 14:28:10 +00:00
Geoff Lang 8dd592bf2a Port the SimpleInstancing sample to the new sample framework.
Add a Vector2 type for storing texcoords and improve the sample by having
it draw several thousand instances instead of two.

BUG=angle:521

Change-Id: I87996a90000a83bc66d091c7537ea411080d7e9f
Reviewed-on: https://chromium-review.googlesource.com/188723
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-03-31 19:33:56 +00:00
Geoff Lang d19fae55ea Port the ParticleSystem sample to the new sample framework.
BUG=angle:521

Change-Id: I6d00333ac7761f15ee83a47dc3e6e3cc13c675cd
Reviewed-on: https://chromium-review.googlesource.com/188195
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-03-28 18:21:31 +00:00
Geoff Lang 1b3e4b8032 Port the MultiTexture sample to the new sample framework.
BUG=angle:521

Change-Id: I72f063664b43d3cfafe03c8f060076596bedea0f
Reviewed-on: https://chromium-review.googlesource.com/188194
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-03-28 14:25:23 +00:00
Geoff Lang 9adef9ba7a Port the MipMap2D sample to the new sample framework.
BUG=angle:521

Change-Id: I3b1d3a02214850bf52c1d5c468f5696076065b88
Reviewed-on: https://chromium-review.googlesource.com/188193
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-03-28 14:25:04 +00:00
Geoff Lang 8776b25876 Port the Hello_Triangle sample to the new sample framework.
BUG=angle:521

Change-Id: I887257193af3130447c4691bb72303cc978b96fe
Reviewed-on: https://chromium-review.googlesource.com/188192
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-03-27 17:41:48 +00:00
Geoff Lang 49be2ad9f8 Add an ANGLE sample framework.
BUG=angle:521

Change-Id: If1fc6198dbbe44f0ade5539cff540e3e086f2a3b
Reviewed-on: https://chromium-review.googlesource.com/188722
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-03-27 15:43:56 +00:00
Jamie Madill f0b40601a6 Clean up gyp build scripts.
We can use angle_path instead of angle_build_scripts_path to locate
enumerate_files.py. Also pass angle_path to the post-build script
hook, as this information is necessary to locate the root angle
folder.

BUG=angle:592

Change-Id: I06b3f0201751d90b7c1efdefe8db07d114bd87dd
Reviewed-on: https://chromium-review.googlesource.com/191082
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2014-03-25 16:59:18 +00:00
Geoff Lang 9a2e5b9490 Fix incorrect function forward declaration.
Change-Id: I135c4457fdc95f2d331e2924104a30f90a40bd1a
Reviewed-on: https://chromium-review.googlesource.com/189456
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
2014-03-14 19:10:33 +00:00
Zhenyao Mo 3cdfcce86b Remove SH_MAP_LONG_VARIABLE_NAMES
We use hashing to map all variables/strcuture field names, etc,
so we no longer need this option.

Checked with Firefox and WebKit, they no longer use this option
either. Time to remove it.

Change-Id: Ie3e79b91a05258b04af419a9c42b2fd1b00e67c4
Reviewed-on: https://chromium-review.googlesource.com/189236
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/189568
2014-03-11 18:25:18 +00:00
Jamie Madill d51df461e5 Remove the second translator target, only using static.
Because libGLESv2 needs a static translator to link against
internal types like Attribute and Varying, as well as using
some other internal methods, we can for now disable the
component build for the translator. In the future we can
support a proper component build with exports across library
boundaries.

BUG=angle:568

Change-Id: Ie3efc0a29342d02491e91952c3c2398568f83576
Reviewed-on: https://chromium-review.googlesource.com/187699
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2014-02-27 22:15:28 +00:00
Jamie Madill e78603b585 Fix standalone Linux build.
We can include Makefiles in the ignore list, and need a few extra
flags to fix the GCC build on Linux.

BUG=angle:563

Change-Id: Iacd386359f0c0d9bb87ddc544dd8b4da2cb8fee0
Reviewed-on: https://chromium-review.googlesource.com/186902
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/186989
2014-02-20 14:17:23 +00:00
Geoff Lang 1106aeb2f1 Move the enumerate_files script to the build directory.
BUG=angle:552

Change-Id: I9f357c68c258c7731cf0d5c2ceed3a2875b21228
Reviewed-on: https://chromium-review.googlesource.com/185142
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-02-10 20:48:09 +00:00
Geoff Lang f571312409 Rework tracing and perf defines.
Changed ANGLE_DISABLE_* to ANGLE_ENABLE_* for perf and tracing defines so
they are disabled by default.  Updated the gyp files to only turn on perf
by default for windows debug builds.

Change-Id: I71706674e6d12fbf4208acc8f100d963b82c7674
Reviewed-on: https://chromium-review.googlesource.com/183250
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-01-23 19:56:13 +00:00
Geoff Lang a50232fd52 Added a utility application to generate c headers from dds textures.
Change-Id: Idb4c2ca318c84433f2b06bd4f0c66045f43e56de
Reviewed-on: https://chromium-review.googlesource.com/182191
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-01-15 20:16:18 +00:00
Geoff Lang 512a7b7b04 Regenerate project files.
TRAC #24020

Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
2013-10-22 14:30:12 -04:00
Geoff Lang f02ec39090 Regenerate public project files. 2013-10-18 17:11:07 -04:00
Geoff Lang 78059907ae Added a 64 bit build target to the gyp file.
TRAC #24018

Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
2013-10-18 17:01:54 -04:00
Geoff Lang 036aa49b62 Disable warnings about size_t conversion and fix ambiguous template parameters in 64 bit builds.
TRAC #23409

Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
2013-10-18 17:01:53 -04:00
Geoff Lang e26b15a2a7 Regenerate project files. 2013-10-17 14:18:42 -04:00
Geoff Lang 216644bad7 Regenerate project files. 2013-10-17 09:54:32 -04:00
Geoff Lang 5e5f990e1c Merge 7692ca41db from master.
Remove %(AdditionalDependencies) from gyp linker deps, and add full windows dependency library list.

ANGLEBUG=477
BUG=
R=zmo@chromium.org

Review URL: https://codereview.appspot.com/14161043
2013-10-17 09:52:39 -04:00
Geoff Lang 2b6008c9d1 Merge 366229430e from master.
Create a static translator project and allow the previous translator
project to be used in component builds.
2013-10-17 09:52:36 -04:00
Geoff Lang 7c69720176 Deleted manually maintained visual studio projects and replaced them with gyp generated ones. 2013-10-17 09:52:07 -04:00
Geoff Lang 0e43546701 Refactored the samples.gyp file. 2013-10-17 09:37:02 -04:00
Geoff Lang 39d5166d0f Moved the gyp libGLESv2 and libEGL projects into their own gyp files. Renamed build_angle.gpy* to angle.gyp* but kept build_angle.gyp for chrome compatability. 2013-10-17 09:37:00 -04:00
Geoff Lang 17732823f9 Moved the compiler source files into directories based on their project and added a compiler.gypi to generate the compiler projects. 2013-10-17 09:36:59 -04:00
Jamie Madill b41ebf5798 Fix compile errors in the essl to hlsl standalone translator.
ANGLEBUG=469
R=shannonwoods@chromium.org

Review URL: https://codereview.appspot.com/13281043
2013-09-24 15:13:06 -04:00
Jamie Madill ba615196a8 Normalize line endings of tracked files in the repository.
TRAC #23896

Signed-off-by: Shannon Woods
2013-09-24 14:21:28 -04:00
shannonwoods@chromium.org 6b7099111f Add support for the unsigned integer scalar type to the shader translator.
TRAC #23080

Signed-off-by: Nicolas Capens
Signed-off-by: Shannon Woods
Author: Jamie Madill

git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2403 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-05-30 00:20:04 +00:00
shannonwoods@chromium.org 8da034cc6a Add non-square mat support to the shader language interface.
TRAC #23081

Signed-off-by: Geoff Lang
Signed-off-by: Nicolas Capens
Author: Jamie Madill

git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2397 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-05-30 00:19:15 +00:00
shannon.woods%transgaming.com@gtempaccount.com fc3e3a8617 Add a multiple render targets sample using EXT_draw_buffers. Requires the D3D11-enabled ANGLE.
TRAC #22797

Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
Author: Jamie Madill

git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2099 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-04-13 03:34:36 +00:00
shannon.woods%transgaming.com@gtempaccount.com f26ddae9ac Added the GLES3 headers and updated all locations where the GLES2 headers were included to also include the GLES3 headers.
TRAC #22694

Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
Author: Geoff Lang

git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2069 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-04-13 03:29:13 +00:00
shannon.woods@transgaming.com 06e0df0b7a Fixed plain integer pointers being passed to ShGetInfo which expects size_t pointers.
TRAC #22678

Signed-off-by: Nicolas Capens
Author: Geoff Lang

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1976 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-02-28 23:21:14 +00:00
daniel@transgaming.com 9bb0bacef2 Added an ANGLE instancing sample to a new folder in samples.
This sample will show a user how to use the ANGLE-specific extensions for geometry instancing.

TRAC #22452

Signed-off-by: Nicolas Capens
Signed-off-by: Shannon Woods
Author: Jamie Madill

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1819 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-02-01 03:32:19 +00:00
shannon.woods@transgaming.com 2001a0cc3a Remove DXSDK_DIR from search paths.
Chrome now builds ANGLE against the Windows 8 Platform SDK.

Move the include and lib search paths to common.gypi so that downstream projects can specify the location of the Platform SDK or alternatively use the DirectX SDK instead.
Review URL: https://codereview.appspot.com/7193052


Conflicts:

	src/common/version.h

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1793 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-01-25 21:56:47 +00:00
shannon.woods@transgaming.com e688e651ea Remove the ResourceLimits.h reference, which was causing the translator_common to always rebuild.
Also tinker with the deps a bit to allow for more parallelism during the build process.

TRAC #22437

Signed-off-by: Nicolas Capens
Signed-off-by: Daniel Koch
Author: Jamie Madill

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1754 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-01-25 21:51:36 +00:00
shannon.woods@transgaming.com 8204334b61 Fix and extend essl_to_hlsl to support DX11 HLSL.
TRAC #22330
Signed-off-by: Daniel Koch
Author: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1740 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-01-25 21:49:34 +00:00
daniel@transgaming.com b401a92b48 Move the new preprocessor out of the 'new' directory.
TRAC #21966
Signed-off-by: Daniel Koch
Author: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1326 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-26 18:58:24 +00:00
daniel@transgaming.com c60c15c095 Add filter files for VS2010 Solution browser
Trac #21647

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1300 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-17 18:15:14 +00:00
daniel@transgaming.com 2187b4a36c Delete old .vcproj files that were replaced by .vcxproj files
Trac #21647
Signed-off-by: Shannon Woods
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1298 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-17 18:12:07 +00:00
daniel@transgaming.com d99f9a45eb Adjust dependencies for samples
Trac #21647
Signed-off-by: Shannon Woods
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1296 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-17 18:11:55 +00:00
daniel@transgaming.com e9b408bfc1 Add auto converted .vxcproj files for VC++ 2010 Express
Trac #21647
Signed-off-by: Shannon Woods
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1295 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-17 18:11:40 +00:00
daniel@transgaming.com bd91da485b Update standalone solution files to VC++ 2010 Express
Trac #21647
Signed-off-by: Shannon Woods
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1294 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-17 18:11:34 +00:00
maxvujovic@gmail.com 8b8f02dcd3 [SH_TIMING_RESTRICTIONS] Restrict sampler dependent values from the tex coord and bias parameters of all sampling operations, not just texture2D.
Issue: 335
Review URL: https://codereview.appspot.com/6305049/


git-svn-id: https://angleproject.googlecode.com/svn/trunk@1167 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-06-25 20:39:58 +00:00
daniel@transgaming.com 635d6b5df9 Fix sample project dependency on preprocessor.vcproj
Issue=342

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1166 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-06-25 14:57:21 +00:00
apatrick@chromium.org 2979ed2cce Add preprocessor.vcproj to samples.sln.
Review URL: https://codereview.appspot.com/6326046

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1163 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-06-22 18:33:57 +00:00
maxvujovic@gmail.com 430f5e0c75 Add the SH_CSS_SHADERS_SPEC flag.
Review URL: https://codereview.appspot.com/6270050/


git-svn-id: https://angleproject.googlecode.com/svn/trunk@1145 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-06-08 17:47:59 +00:00
maxvujovic@gmail.com 66ebd0143e Add the SH_TIMING_RESTRICTIONS compile flag and dependency graph implementation.
Description of the algorithm:
http://code.google.com/p/mvujovic/wiki/ShaderControlFlowAnalysis

This flag is one potential solution to timing attacks on textures containing cross-domain content
or user agent data.
This kind of analysis could be useful for both WebGL and CSS Shaders.

The SH_TIMING_RESTRICTIONS flag will reject a shader if it uses texture dependent data to affect
control flow.

Other ways of affecting shader timing such as using NaNs in basic arithmetic operations or using
built-in functions (e.g. atan) with different inputs are still under investigation.

Issue=329
Review URL: http://codereview.appspot.com/6195062/



git-svn-id: https://angleproject.googlecode.com/svn/trunk@1101 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-05-30 22:18:11 +00:00
alokp@chromium.org 4a02078ac0 Fixed compile warnings on linux.
git-svn-id: https://angleproject.googlecode.com/svn/trunk@1090 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-05-17 21:19:16 +00:00
zmo@google.com 4e13a77ecf Make essl_to_glsl target windows only.
This is a quick fix for gclient runhooks error on Mac/Linux.

BUG=
TEST=gclient runhooks --force on Mac/Linux
Review URL: https://codereview.appspot.com/5732047

git-svn-id: https://angleproject.googlecode.com/svn/trunk@997 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-03-02 23:44:57 +00:00
apatrick@chromium.org e057c5dd6e Fixed more warnings.
Clang warns about missing case in enum glslang_lex.cpp so I disabled that one as well.

MSVC, as Chromium is built at least, warns about things in its own STL headers in SymbolTable.cpp so disabled the warning for that file.

esTransform.c had a struct that the compiler could not determine was initialized so I explicitly initialized it.
Review URL: https://codereview.appspot.com/5577048

git-svn-id: https://angleproject.googlecode.com/svn/trunk@965 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-01-26 19:18:24 +00:00
apatrick@chromium.org a1d8059d67 Increase MSVC warning level to 4.
There are some exceptions, a subset of the exceptions used by Chromium. They didn't seem to be useful warnings.

In code which we don't change much, like the preprocessor, I just suppressed the warnings in the specific files rather than changing the code.

There should be no functional changes in this patch.
Review URL: https://codereview.appspot.com/5570066

git-svn-id: https://angleproject.googlecode.com/svn/trunk@964 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-01-25 21:52:10 +00:00
apatrick@chromium.org 3efb99cf78 Added EGL_KHR_image_base and GL_OES_EGL_image_external entry points to esUtil.
Review URL: https://codereview.appspot.com/5574051

git-svn-id: https://angleproject.googlecode.com/svn/trunk@958 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-01-24 19:04:19 +00:00
apatrick@chromium.org 6575602ea6 Finished off the GLSL compiler's support for parsing shaders using OES_EGL_image_external.
The GLSL to HLSL translator work is not done yet so the extension is disabled in Shader.cpp.
Review URL: https://codereview.appspot.com/5530081

git-svn-id: https://angleproject.googlecode.com/svn/trunk@946 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-01-17 21:45:38 +00:00
apatrick@chromium.org f289ee8d52 Allocate D3D queries from a pool for the Display.
This is a workaround for an Intel bug.

The crash looks like this:

0x5f816c53	 [d3d9.dll	 + 0x00036c53]	CQuery::~CQuery()
0x5f816bec	 [d3d9.dll	 + 0x00036bec]	CQuery::`vector deleting
destructor'(unsigned int)
0x5f7e8129	 [d3d9.dll	 + 0x00008129]	CBaseObject::~CBaseObject()
0x5f9e19c7	 [libglesv2.dll	 + 0x000319c7]	gl::Fence::`vector deleting
destructor'(unsigned int)
0x5f9de78e	 [libglesv2.dll	 - context.cpp:975]	gl::Context::deleteFence(unsigned
int)
0x5f9e1491	 [libglesv2.dll	 - context.cpp:198]	gl::Context::~Context()
0x5f9e182f	 [libglesv2.dll	 - context.cpp:3936]	glDestroyContext
0x717654ec	 [libegl.dll	 -
display.cpp:749]	egl::Display::destroyContext(gl::Context *)
0x7176a3da	 [libegl.dll	 - libegl.cpp:907]	eglDestroyContext
0x64fbaf33	 [chrome.dll	 - gl_context_egl.cc:75]	gfx::GLContextEGL::Destroy()

The vendor ID is always 8086 (Intel). Not an XP issue - it's happening on Win
7.

With this change, D3D queries are only released when the display is destroyed or reset or if a very high number of D3D queries have been allocated.

Tested by stepping exercising the NV_fence entry points in a debugger.
Review URL: http://codereview.appspot.com/5534065

git-svn-id: https://angleproject.googlecode.com/svn/trunk@941 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-01-11 20:03:29 +00:00
apatrick@chromium.org f4490e2207 Implemented EGL_NV_post_sub_buffer.
The change to the sample is just to demonstrate how I tested it. I won't check in the stuff under samples/.

It's not clear to me what eglPostSubBufferNV should do if EGL_POST_SUB_BUFFER_SUPPORTED_NV is false. At the moment it fails silently as though it was called on the wrong surface type:

 "If <surface> is a back-buffered surface, then the requested portion
    of the color buffer is copied to the native window associated with
    that surface. If <surface> is a single-buffered window, pixmap, or
    pbuffer surface, eglSwapBuffers and eglPostSubBufferNV have no
    effect."
Review URL: http://codereview.appspot.com/5345050

git-svn-id: https://angleproject.googlecode.com/svn/trunk@902 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-12-06 02:05:22 +00:00
daniel@transgaming.com 805a49ab7d Fix post-build steps when spaces appear in directory names
TRAC #18901
Issue=245
Signed-off-by: Nicolas Capens
Signed-off-by: Daniel Koch

git-svn-id: https://angleproject.googlecode.com/svn/trunk@897 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-11-29 17:21:42 +00:00
daniel@transgaming.com 7f02008ad8 Fix compiler warnings in translator.cpp
Bug=227
Author: Mark Callow

git-svn-id: https://angleproject.googlecode.com/svn/trunk@790 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-10-12 16:19:54 +00:00
daniel@transgaming.com 876f47ad0d Fix essl_to_hlsl project configurations
Bug=226
Author: Mark Callow

git-svn-id: https://angleproject.googlecode.com/svn/trunk@789 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-10-12 16:19:48 +00:00
zmo@google.com f54509100e Fix extension behavior in shader validation.
If an extension is not specified, it is disabled by default, thus a shader should fail compiling if features from that extension are used.

ANGLEBUG=204
TEST=webgl conformance/extensions/oes-standard-derivatives.html
Review URL: http://codereview.appspot.com/4974071

git-svn-id: https://angleproject.googlecode.com/svn/trunk@745 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-09-09 01:37:19 +00:00
zmo@google.com 32e97315e2 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
2011-08-24 01:03:11 +00:00
zmo@google.com 0c6bb7a653 Add an compile option to unroll for-loops with integer indices.
ANGLEBUG=193
TEST=with this option, for-loops with integer indices will be unrolled.
Review URL: http://codereview.appspot.com/4899047

git-svn-id: https://angleproject.googlecode.com/svn/trunk@734 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-08-17 19:39:58 +00:00
zmo@google.com 09c323a40a Add an option to support for GL_OES_EGL_image_external.
Comes with this extension is the new sampler type samplerExternalOES.

ANGLEBUG=175
TEST=compile the attached shader file
Review URL: http://codereview.appspot.com/4809076

git-svn-id: https://angleproject.googlecode.com/svn/trunk@728 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-08-12 18:22:25 +00:00
zmo@google.com 5601ea0d66 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
2011-06-10 18:23:25 +00:00
kbr@chromium.org fe2aff1094 Redid gyp changes in last commit to support debugging of samples on
Linux. Fixed bug in translator sample where it was confusing arguments
and filenames on POSIX platforms.
Review URL: http://codereview.appspot.com/4532108

git-svn-id: https://angleproject.googlecode.com/svn/trunk@665 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-06-02 00:23:44 +00:00
zmo@google.com d7468be16f Add long name mapping option to the translator test.
Review URL: http://codereview.appspot.com/4529091

git-svn-id: https://angleproject.googlecode.com/svn/trunk@658 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-05-26 21:26:14 +00:00
apatrick@chromium.org e0a384d781 Fix compilation errors in translator.cpp.
Review URL: http://codereview.appspot.com/4445073

git-svn-id: https://angleproject.googlecode.com/svn/trunk@626 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-04-29 00:24:23 +00:00
nduca@chromium.org a6e31e58bb Resize surface on receipt of WM_SIZE to avoid corruption during resize. We hook WM_SIZE using window subclassing.
This is a continuation of http://codereview.appspot.com/3038042/


Review URL: http://codereview.appspot.com/3122041

git-svn-id: https://angleproject.googlecode.com/svn/trunk@486 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-11-18 00:24:27 +00:00
alokp@chromium.org d1e10e602e Refactored ReadFileData() function in the translator sample to fix many issues:
- Memory leaks
- Made compiling using multiple strings default. This was not getting exercised.
- Removed redundant copies of file data
- Handled empty files properly which were getting ignored
BUG=66
Review URL: http://codereview.appspot.com/2579041

git-svn-id: https://angleproject.googlecode.com/svn/trunk@465 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-10-20 20:58:55 +00:00
alokp@chromium.org 4888ceb668 Made the API of shader translator library consistent.
- We recently started using OpenGL-type enums. This CL makes all old enums consistent with the new scheme.
- Renamed TBuiltInResource to ShBuiltInResources to have a consistent prefix

BUG=46
Review URL: http://codereview.appspot.com/2328041

git-svn-id: https://angleproject.googlecode.com/svn/trunk@443 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-10-01 21:13:12 +00:00
alokp@chromium.org ee76f6af45 Implemented functionality to collect and return info for attributes and uniforms.
BUG=26
Review URL: http://codereview.appspot.com/2206046

git-svn-id: https://angleproject.googlecode.com/svn/trunk@440 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-09-27 19:28:55 +00:00
alokp@chromium.org 7beea4084f Added API to query for active attribs and uniforms. These functions are modeled after glGetShaderiv, glGetProgramiv, glGetActiveAttrib, and glGetActiveUniform. The main difference between this and OpenGL API is that we do not have programs - just shaders.
BUG=26
Review URL: http://codereview.appspot.com/2183041

git-svn-id: https://angleproject.googlecode.com/svn/trunk@425 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-09-15 21:18:34 +00:00
alokp@chromium.org 94a86ad8f1 Adding support for OES_standard_derivatives extension. This is not the complete implementation. Sending it to get feedback on the API. Is it OK to add extension support into TBuiltInResource? I could create a new struct for extensions but that would lead to API change.
BUG=25
Review URL: http://codereview.appspot.com/1953047

git-svn-id: https://angleproject.googlecode.com/svn/trunk@402 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-08-25 20:02:11 +00:00
alokp@chromium.org e4249f0217 Refactored the way symbol tables are initialized and stored. This was done in response to the addition of EShSpec.
Symbol table entries depend on three things - language, spec (not now but may eventually), and built-in resources.
We used to build two global symbol-tables - one for each language. During each compile, one of the symbol table was
copied and resource-specific stuff was added. I have moved the symbol table to TCompiler that gets initilized when
compiler is created and reused for each compile. This makes it much cleaner and extensible in case a spec requires
special entries to be added to the symbol table.

PS: Sorry for the long CL, but all of it needed to be done in one CL. I have verified that everything still compiles
and passes all conformance tests.
Review URL: http://codereview.appspot.com/1864044

git-svn-id: https://angleproject.googlecode.com/svn/trunk@351 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-07-26 18:13:52 +00:00
alokp@chromium.org c54bf507cd Further cleanup of ShaderLang.h. Removed redundant/unused macros and enum fields.
Review URL: http://codereview.appspot.com/1842046

git-svn-id: https://angleproject.googlecode.com/svn/trunk@349 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-07-22 16:49:09 +00:00
alokp@chromium.org 774d70630a Cleaned up translator API. Deleted unsupported dead code.
BUG=9
Review URL: http://codereview.appspot.com/1665050

git-svn-id: https://angleproject.googlecode.com/svn/trunk@348 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-07-21 18:55:45 +00:00
alokp@chromium.org 29cd91af30 Added an option for specifying language specification in preparation for supporting WebGL in addition to GLES2. This CL just replaces unused debugOptions variable with EShSpec variable.
BUG=11
Review URL: http://codereview.appspot.com/1692051

git-svn-id: https://angleproject.googlecode.com/svn/trunk@344 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-07-16 19:30:45 +00:00
alokp@chromium.org 84a9628864 Moved windows-only targets into OS==win conditional.
Review URL: http://codereview.appspot.com/1473043

git-svn-id: https://angleproject.googlecode.com/svn/trunk@325 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-06-02 22:26:52 +00:00
daniel@transgaming.com e07980c45f removed execute permissions on smoke.tga
(was causing problems on windows)

git-svn-id: https://angleproject.googlecode.com/svn/trunk@164 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-04-20 18:52:09 +00:00
daniel@transgaming.com 7441c9cc25 Associate the sample.sln file with visual C++ express.
Trac #11802
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@114 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-04-08 15:01:05 +00:00
alokp@chromium.org 0270ef140e Changed the default character set to be UNICODE, the same as chromium. Changes to fix compile errors and warnings.
Review URL: http://codereview.appspot.com/816046

git-svn-id: https://angleproject.googlecode.com/svn/trunk@103 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-04-07 19:57:20 +00:00
alokp@chromium.org 403c9e5961 Added libGLESv2, libEGL, and all samples to GYP.
Review URL: http://codereview.appspot.com/878042

git-svn-id: https://angleproject.googlecode.com/svn/trunk@100 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-04-06 17:53:31 +00:00
alokp@chromium.org 29d56fbb60 Added GYP build files. GYP files are needed for integration with chromium and cross-platform build for glsl translator. It would really be nice if we did not have to maintain two build systems. For now I have only moved the GLSL translator to gyp build system. Please note that the gyp files awkwardly have build_ prefix so they do not conflict with the manually-maintained sln files.
Review URL: http://codereview.appspot.com/885043

git-svn-id: https://angleproject.googlecode.com/svn/trunk@98 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-04-06 15:42:22 +00:00
alokp@chromium.org 1180ea73f5 Fixed the title of texture-wrap sample.
Review URL: http://codereview.appspot.com/834041

git-svn-id: https://angleproject.googlecode.com/svn/trunk@81 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-03-29 19:43:46 +00:00
alokp@chromium.org 76b820852b Added GLSL backend for ESSL translator.
Review URL: http://codereview.appspot.com/698041

git-svn-id: https://angleproject.googlecode.com/svn/trunk@69 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-03-24 17:59:39 +00:00
daniel@transgaming.com 24a0486194 Add smoke.tga for gles2\ParticleSystem sample
Trac #11596
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@65 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-03-24 09:44:03 +00:00
alokp@chromium.org 5539a34f24 Added a few samples from GLES 2.0 book.
git-svn-id: https://angleproject.googlecode.com/svn/trunk@63 736b8ea6-26fd-11df-bfd4-992fa37f6226
2010-03-22 19:34:05 +00:00