|
3b54a660
|
2011-06-03T12:53:07
|
|
Update version number for recent commits
git-svn-id: https://angleproject.googlecode.com/svn/trunk@669 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
585b3d0e
|
2011-06-03T01:48:11
|
|
Disable use of FlipEx for problematic use cases.
It seems that DWM will, when given an HWND that has an associated
FlipEX swap chain, stretch the contents of the HWND to fill the new
window IF you don't issue draw calls to that HWND before the WM_PAINT
returns. This leads to horrendous sizing artifacts.
For Chromium, this is a show stopper.
But, FlipEx is definitely a good thing, for regular single process
applications.
So, is there a clean way to conditionally disable FlipEX for
these problem cases? The heuristic in this patch basically says "if your hwnd
is not in-process, then you're probably not painting in its HWND, so don't sue
FlipEX."
This catches the Chromium use case. There is still the possibility of a regular
single-process EGL application that tries to draw outside WM_PAINT that would
experience sizing artefacts. But, maybe that's OK.
Anyways, I'm not married to this technique. Just throwing something out there
to start the discussion. :)
Review URL: http://codereview.appspot.com/4536102
git-svn-id: https://angleproject.googlecode.com/svn/trunk@668 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
8ab69840
|
2011-06-02T21:53:45
|
|
Insert a new-line ('\n') before the #line directive in HLSL source.
Without this, sometimes the #line directive shows up at the end of
the previous line of shader source. This was causing syntax errors
when trying to compile shaders during a PIX session.
Review URL: http://codereview.appspot.com/4561059
git-svn-id: https://angleproject.googlecode.com/svn/trunk@667 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
04277b82
|
2011-06-02T18:41:26
|
|
Generate an error in the parser for unsized array declarations.
BUG=164
TEST=none
Review URL: http://codereview.appspot.com/4539101
git-svn-id: https://angleproject.googlecode.com/svn/trunk@666 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
fe2aff10
|
2011-06-02T00:23:44
|
|
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
|
|
c6be2264
|
2011-06-01T23:04:13
|
|
Added missing depth argument to GYP which causes the top-level
Makefile to be generated into the correct directory on Linux. Added
missing library for clients of translator (the samples, in
particular).
Built all ANGLE targets on Linux and Windows to test these changes.
BUG=none
TEST=none
Review URL: http://codereview.appspot.com/4556072
git-svn-id: https://angleproject.googlecode.com/svn/trunk@664 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
87891f74
|
2011-06-01T15:28:35
|
|
Remove path from D3DCompiler warning messages
Issue=162
Trac #16209
Signed-off-by: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@662 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
4f9ef0d6
|
2011-05-30T23:51:19
|
|
Implemented OES_texture_npot support.
TRAC #16871
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@661 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
24c08c4e
|
2011-05-27T17:40:48
|
|
Fix the bug that long varying varibales are mapped into different names in fragment/vertex shaders.
ANGLEBUG=144
TEST=the same long varying variable name in fragment/vertex shaders map to the same shortened name if using the same translator.
Review URL: http://codereview.appspot.com/4547063
git-svn-id: https://angleproject.googlecode.com/svn/trunk@660 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
c4ee4272
|
2011-05-26T21:34:15
|
|
Fix version error from r658.
Review URL: http://codereview.appspot.com/4524071
git-svn-id: https://angleproject.googlecode.com/svn/trunk@659 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
6c4dba0d
|
2011-05-26T14:15:31
|
|
Fix lost context recovery for Windows XP.
Issue=138
TRAC #16271
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@657 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
c556fa57
|
2011-05-26T14:13:29
|
|
Revert pending surface destruction (part of revision 632).
TRAC #16271
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@656 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
062231c0
|
2011-05-26T14:12:17
|
|
Only use D3DSWAPEFFECT_FLIPEX on D3D9Ex devices.
TRAC #16271
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@655 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
93c0fce4
|
2011-05-25T01:55:06
|
|
Use D3DSWAPEFFECT_FLIPEX on Windows 7.
Reduces frame rate jitters on Windows 7 reported in crbug.com/82925
Review URL: http://codereview.appspot.com/4517096
git-svn-id: https://angleproject.googlecode.com/svn/trunk@654 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
5cb728c5
|
2011-05-17T18:34:24
|
|
Add missing newlines to source files
Issue=154
git-svn-id: https://angleproject.googlecode.com/svn/trunk@653 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
18b7b5b5
|
2011-05-17T18:34:18
|
|
Improve robustness of Context::finish and flush
Trac #16690
Signed-off-by: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@652 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
2b720c92
|
2011-05-13T16:05:22
|
|
Fix the order of the error() parameters in Surface.cpp and advertise EGL_ANGLE_d3d_share_handle_client_buffer extension
Trac #16711
Also rename the extension file to match the extension name
Signed-off-by: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@651 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
4e297707
|
2011-05-12T23:04:07
|
|
Add support for eglCreatePbufferFromClientBuffer, taking as input a D3D share handle corresponding to the enum EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE. No spec as of yet, but it does the obvious thing.
BUG=129
TEST=
Review URL: http://codereview.appspot.com/4325048
git-svn-id: https://angleproject.googlecode.com/svn/trunk@650 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
f1f28c80
|
2011-05-12T20:53:34
|
|
Use SSE2 to swizzle RGBA to BGRA
Using SSE2 can drastically reduce the amount of time it takes to do glTexImage2D. I've also added a plain-C path that's much faster than the one that was there before.
BUG=151
TEST=
Review URL: http://codereview.appspot.com/4465052
git-svn-id: https://angleproject.googlecode.com/svn/trunk@649 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
73bec982
|
2011-05-12T18:15:03
|
|
Cache result of D3DPERF_GetStatus.
I profiled the WebGL acquarium with AMD CodeAnalyst and it turns out this function got a lot of hits. Top 10 before change:
CS:EIP Symbol + Offset 64-bit Timer samples
0x62a87260 CBatchFilterI::ProcessBatch 13.41
0x62a171f1 D3DPERF_GetStatus 6.04
0x629ce831 CD3DBase::SetVertexShaderConstantF_FP 5.12
0x62a88bea CBatchFilterI::GetBatchBufferPointer<_LH_SETPIXELSHADERCONSTIMM_TOKEN_SMALL> 4.61
0x6298060b UpdateViewportCache 4.2
0x6298da3a CD3DBase::UpdateTextures 3.58
0x6298db6b CD3DDDIDX10::SetTexture 2.76
0x6298df1d CD3DDDIDX10::InsertStreamSource 2.46
0x629d1c1a CD3DBase::SetPixelShaderConstantF_FP 2.25
0x6297efc4 CD3DHal::SetSamplerState_FP 2.05
10 functions, 186 instructions, Total: 454 samples, 46.47% of shown samples, 2.51% of total session samples
And after:
CS:EIP Symbol + Offset 64-bit Timer samples
0x69317260 CBatchFilterI::ProcessBatch 13.87
0x69318bea CBatchFilterI::GetBatchBufferPointer<_LH_SETPIXELSHADERCONSTIMM_TOKEN_SMALL> 5.84
0x6921060b UpdateViewportCache 5.29
0x6925e831 CD3DBase::SetVertexShaderConstantF_FP 4.93
0x6921da3a CD3DBase::UpdateTextures 4.38
0x6921e034 CD3DBase::SetStreamSource_FP 3.65
0x69261c1a CD3DBase::SetPixelShaderConstantF_FP 3.65
0x69227651 CD3DBase::DrawIndexedPrimitive 2.74
0x6920efc4 CD3DHal::SetSamplerState_FP 2.37
0x6925e9f7 CD3DBase::SetVertexShaderConstantIntF 2.37
10 functions, 152 instructions, Total: 269 samples, 49.09% of shown samples, 0.80% of total session samples
UpdateViewportCache looks like it might be low hanging fruit as well.
Review URL: http://codereview.appspot.com/4535049
git-svn-id: https://angleproject.googlecode.com/svn/trunk@648 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
b1092bf3
|
2011-05-11T19:52:39
|
|
Fix gl_FragCoord.
Landing patch from this Chromium issue:
http://code.google.com/p/chromium/issues/detail?id=82166
Review URL: http://codereview.appspot.com/4528055
git-svn-id: https://angleproject.googlecode.com/svn/trunk@647 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a5fd7a5a
|
2011-05-11T16:19:54
|
|
Update contributors list
git-svn-id: https://angleproject.googlecode.com/svn/trunk@646 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
dfd57020
|
2011-05-11T15:37:25
|
|
Fix compilation warnings.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@645 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
2ff573c6
|
2011-05-11T15:37:17
|
|
Enable vertex texture fetch support.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@644 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
9ba680a7
|
2011-05-11T15:37:11
|
|
Comment some (vertex) texture lookup functionality.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@643 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
f494c9ca
|
2011-05-11T15:37:05
|
|
Validate the sampler uniform against the number of (combined) texture image units.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@642 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
424bb49d
|
2011-05-11T15:36:59
|
|
Validate shaders so they don't exceed the texture unit counts.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@641 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
3f74c7a7
|
2011-05-11T15:36:51
|
|
Correct the sizes of the (combined) texture unit arrays for VTF.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@640 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
d4a35179
|
2011-05-11T15:36:45
|
|
Apply vertex textures and sampler states to the D3D9 device.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@639 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0e64dd6d
|
2011-05-11T15:36:37
|
|
Rename SamplerType to TextureType (refactoring).
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@638 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
af29cac9
|
2011-05-11T15:36:31
|
|
Report the VTF texture unit limits.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@637 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
3b1703f4
|
2011-05-11T15:36:26
|
|
Detect support for vertex shader texture lookups.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@636 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
15795192
|
2011-05-11T15:36:20
|
|
Translate vertex texture lookup functions.
Issue=95
TRAC #16568
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@635 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
317887f2
|
2011-05-11T15:26:12
|
|
Fix depth test state management.
TRAC #16655
Signed-off-by: Daniel Koch
git-svn-id: https://angleproject.googlecode.com/svn/trunk@634 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
07792e54
|
2011-05-05T19:38:32
|
|
Fix for issue 150 - HandleAllocator asserts on framebuffer 0 release
Issue=150
Signed-off-by: apatrick
git-svn-id: https://angleproject.googlecode.com/svn/trunk@633 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
192a1810
|
2011-05-05T00:00:30
|
|
Implemented semantics for eglDestroySurface when surface is current on thread.
The spec has this to say.
"
All resources associated with surface which were allocated by EGL are marked for deletion as soon as possible. If surface is current to any thread (see section 3.7.3), resources are not actually released while the surface remains current. Future references to surface remain valid only so long as it is current; it will be destroyed, and all future references to it will become invalid, as soon as any otherwise valid eglMakeCurrent call is made from the thread it is bound to."
Review URL: http://codereview.appspot.com/4449064
git-svn-id: https://angleproject.googlecode.com/svn/trunk@632 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
e2f954cd
|
2011-05-03T20:45:27
|
|
Validate cube texsubimage based on current face
Apps can load cube faces in an arbitrary order, so validating texsubimage based on the format of only the first face won't work.
BUG=149
TEST=
Review URL: http://codereview.appspot.com/4445085
git-svn-id: https://angleproject.googlecode.com/svn/trunk@629 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
06d7a755
|
2011-04-30T01:02:52
|
|
Move attrib-list handling into Display
Move the handling of attrib-lists in eglCreatePbufferSurface and eglCreateWindowList into methods in Display, so we can keep libEGL.cpp as a thin layer.
BUG=
TEST=
Review URL: http://codereview.appspot.com/4453051
git-svn-id: https://angleproject.googlecode.com/svn/trunk@628 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
e0a384d7
|
2011-04-29T00:24:23
|
|
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
|
|
399c35f9
|
2011-04-28T23:19:51
|
|
Don't constantly recreate index buffers.
Recreating index buffers for closing loops can take a long time, so use a streaming index buffer instead.
BUG=
TEST=
Review URL: http://codereview.appspot.com/4438080
git-svn-id: https://angleproject.googlecode.com/svn/trunk@625 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a9d0b768
|
2011-04-28T20:11:54
|
|
Updating resource types on Context (Framebuffers and Fences) to use hash_map, as done to other types in r615.
Issue=148
Signed-off-by: Daniel Koch
git-svn-id: https://angleproject.googlecode.com/svn/trunk@624 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
1a23334f
|
2011-04-28T19:44:39
|
|
Unifying resource handle allocation code with an allocator optimized for O(1) allocs/releases.
Issue=143
Signed-off-by: Daniel Koch
git-svn-id: https://angleproject.googlecode.com/svn/trunk@623 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
aa614605
|
2011-04-28T16:20:58
|
|
Handle null pointer produced by vertex buffer lock
Issue=120
TRAC #16558
Signed-off-by: Daniel Koch
Author: Nicolas Capens (original patch by Jacob Benoit)
git-svn-id: https://angleproject.googlecode.com/svn/trunk@622 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a129765f
|
2011-04-26T18:36:43
|
|
Add MapLongVariableNames files to standalone vcproj
git-svn-id: https://angleproject.googlecode.com/svn/trunk@620 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
fd747b86
|
2011-04-23T01:30:07
|
|
Implement shader identifier name mapping.
The name mapping happens when an identifier is longer than 32 characters. The name mapping is behind a flag, so it won't happen by default. Also, functions to query the mapped names are added.
The purpose of this CL is for the drivers that can't handle long names. For example, linux NVIDIA driver can't handle 256 character name, whereas WebGL spec requires that.
This CL also fixes the issue that some of the TIntermSymbols' ids are 0s.
ANGLEBUG=144
TEST=test manually with shaders with long identifier names.
Review URL: http://codereview.appspot.com/4428058
git-svn-id: https://angleproject.googlecode.com/svn/trunk@619 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
eef864ad
|
2011-04-22T11:33:27
|
|
Use StretchRect to speed up simple blits.
Fixed copy position transformation.
TRAC #16494
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@618 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a114c273
|
2011-04-22T04:18:50
|
|
Advertise depthbuffer-less surface configs.
TRAC #16493
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@617 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
78624ca0
|
2011-04-22T04:17:57
|
|
Heuristically optimize buffer usage.
TRAC #16343
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@616 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
733ba93b
|
2011-04-14T15:03:48
|
|
Use a hash map for faster resource lookups.
TRAC #14871
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@615 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
72b9e18c
|
2011-04-13T14:58:33
|
|
Optimized prepareVertexData and protect against NULL pointers.
TRAC #14871
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@614 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
09c2c1ac
|
2011-04-13T14:57:16
|
|
Move the vertex declaration cache to a helper class.
TRAC #14871
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@613 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
baa7451e
|
2011-04-13T14:56:47
|
|
Eliminate lookupAttributeMapping.
TRAC #14871
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@612 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
2cec2f3a
|
2011-04-06T18:59:51
|
|
Profiling shows that creating and destroying vertex declarations is extremely expensive, so we can keep a 16-element cache around to speed that up.
BUG=
TEST=JSGameBench
Review URL: http://codereview.appspot.com/4358051
git-svn-id: https://angleproject.googlecode.com/svn/trunk@609 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0b8d4eb2
|
2011-04-04T19:17:11
|
|
Unroll for-loop if sampler array uses loop index as its index.
If inside a for-loop, sampler array index is the loop index, Mac cg compiler will crash. This CL unroll the loop in such situation. The behavior is:
1) If the for-loop index is a float, we reject the shader.
2) If it is an integer, we unroll the for-loop.
Things that should be done in the future are:
1) Add line number macros.
2) Add a limit to unroll iteration count.
anglebug=94
Review URL: http://codereview.appspot.com/4331048
git-svn-id: https://angleproject.googlecode.com/svn/trunk@606 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
f02c9e62
|
2011-04-04T14:03:20
|
|
Fix resizing the string buffer.
Issue=117
TRAC #15793
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@605 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
ae345807
|
2011-03-30T22:04:25
|
|
Add support for eglBindTexImage and eglReleaseTexImage
With this patch we can bind pbuffers as textures. Once we add support for using
a sharing handle to create a pbuffer we can use this to allow us to use it as a
texture as well.
BUG=129
TEST=modified Simple_Texture2D works
Review URL: http://codereview.appspot.com/4291066/
git-svn-id: https://angleproject.googlecode.com/svn/trunk@604 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
b627699f
|
2011-03-29T00:58:18
|
|
Use D3DX to copy between renderable texture surfaces.
TRAC #16118
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@598 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
549bdefe
|
2011-03-29T00:57:01
|
|
Retrieve the D3D texture format per image.
TRAC #16118
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@597 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
d976b584
|
2011-03-29T00:56:20
|
|
Consistently use the virtual keyword on virtual overloaded methods.
TRAC #16118
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@596 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
db7cd0b2
|
2011-03-29T00:55:31
|
|
Fix Visual C++ linking in stand-alone project
TRAC #16118
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@595 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
36ed96e0
|
2011-03-24T21:55:11
|
|
Fix angle version in version.h
BUG=none
TEST=none
TBR=apatrick@chromium.org
Review URL: http://codereview.appspot.com/4309046
git-svn-id: https://angleproject.googlecode.com/svn/trunk@594 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
2a5645f7
|
2011-03-24T21:36:51
|
|
Fix a typo in r592. (I developped on Windows and typed in on Mac and submit).
BUG=135
TEST=build fine
TBR=kbr@chromium.org
Review URL: http://codereview.appspot.com/4285066
git-svn-id: https://angleproject.googlecode.com/svn/trunk@593 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
53d73e04
|
2011-03-24T21:27:57
|
|
glGetProgramiv(GL_ACTIVE_UNIFORM_MAX_LENGTH) should count an extra 3 if uniform is an array because "[0]" is appended.
BUG=135
TEST=the attached htm in the bug runs ok
Review URL: http://codereview.appspot.com/4287077
git-svn-id: https://angleproject.googlecode.com/svn/trunk@592 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
8ea5afef
|
2011-03-23T20:44:36
|
|
Switched to D3D10 shader compiler.
I figured out how to call in to D3DCompiler_xx.dll and still get the ID3DXConstantTable metadata used by ANGLE. There are more optimization levels available with this compiler and the lowest level (0) allows MetaTunnel and MandelBox to compile their shaders quickly. MetaTunnel still does not render correctly unfortunately.
I benchmarked eight of the ShaderToy demos and did not notice any performance regression on an nVidia Quadro FX 380. Intel might be adversely affected. I built ANGLE against D3DCompiler_43.dll, while Chrome still ships with 42. I'm not sure if that will make a difference but I'll rev Chrome soon.
I also checked WebGL Aquarium and ran the WebGL conformance tests.
This will also let me roll r590 into Chromium. It turns out the ForceSymbolReferences setting I added to the libGLESv2 target caused the linker to sometimes crash when making changes and the changes between r577 and r590 consistently lead to a crash. libGLESv2 now has a hard dependency on D3DCompiler_xx.dll via the call in Program.cpp and this seems to not make the linker crash.
Review URL: http://codereview.appspot.com/4275063
git-svn-id: https://angleproject.googlecode.com/svn/trunk@591 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a06aa870
|
2011-03-21T17:22:21
|
|
Track dirty texture parameters and images separately.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@590 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a9eb5dac
|
2011-03-21T16:39:16
|
|
Track texture serials instead of id's.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@589 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
38e76e53
|
2011-03-21T16:39:10
|
|
Keep track of applied textures and dirty state to minimize D3D calls.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@588 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
51887316
|
2011-03-21T16:39:03
|
|
Fix checking for floating-point render target texture support.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@587 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
f4e36037
|
2011-03-21T16:38:59
|
|
Copy texture data of incomplete textures to the image arrays.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@586 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
94a4f03f
|
2011-03-21T16:38:55
|
|
Retrieve current texture properties from the image array to avoid D3D call.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@585 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
6120820e
|
2011-03-21T16:38:50
|
|
Retrieve texture width, height and type from the top-level image.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@584 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
b5a3a6b6
|
2011-03-21T16:38:46
|
|
Texture image refactoring.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@583 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
c50edcb2
|
2011-03-21T16:38:40
|
|
Remove redundant dirtyImageData() check.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@582 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0bd22bc9
|
2011-03-21T16:38:26
|
|
Check image type in texture completeness test.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@581 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
8a0a2db7
|
2011-03-21T16:38:20
|
|
InternalFormat and format are the same.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@580 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
aed1832d
|
2011-03-21T16:38:13
|
|
Fix dirty texture state management.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@579 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
68076a07
|
2011-03-21T16:38:09
|
|
Eliminate the weak base texture pointer.
TRAC #15703
Issue=86
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@578 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
831fe2af
|
2011-03-17T18:44:29
|
|
Fixed framebuffer-object-attachment WebGL conformance test.
We updated it with WebGL conformance test r14153 to exercise zero-size FBO attachments, which failed with ANGLE. The new conformance test passes with OpenGL and Mesa.
See this Chromium bug:
http://code.google.com/p/chromium/issues/detail?id=75666
D3D fails if you try to create a zero size depth buffer but OpenGL ES2 allows it. D3D / drivers seem to sometimes crash rather than fail normally, though this might just be because some users have enabled the D3D debug runtime and break on error and we're getting the reports.
It was also returning unexpected results when calling GetRenderbufferParameter for parameters that do not apply to a particular buffer. For example, RED_SIZE for a zero sized depth buffer should be 0.
Tested by running WebGL conformance test with retail D3D runtime (passes) and debug D3D runtime (passes and does not assert in D3D or ANGLE).
Review URL: http://codereview.appspot.com/4284053
git-svn-id: https://angleproject.googlecode.com/svn/trunk@577 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
f963e92f
|
2011-03-15T18:25:13
|
|
Update contributors and version
git-svn-id: https://angleproject.googlecode.com/svn/trunk@576 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
b969cc52
|
2011-03-15T18:23:59
|
|
Fix clang warnings in PoolAlloc.cpp
Issue=127
Signed-off-by: Nicolas Capens
Signed-off-by: Daniel Koch
Part 4 of 5: <http://webkit.org/b/56337> Enable -Werror on ANGLE
Upstream bug: <http://code.google.com/p/angleproject/issues/detail?id=127>
Fixes the following static analyzer warnings:
src/compiler/PoolAlloc.cpp:154:26:{154:24-154:25}{154:28-154:42}: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare,2]
for (size_t x = 0; x < guardBlockSize; x++) {
~ ^ ~~~~~~~~~~~~~~
src/compiler/PoolAlloc.cpp:159:55:{159:54-159:56}{160:30-160:34}: warning: conversion specifies type 'unsigned int' but the argument has type 'size_t' (aka 'unsigned long') [-Wformat,7]
sprintf(assertMsg, "PoolAlloc: Damage %s %u byte allocation at 0x%p\n",
~^
%lu
fix-it:"src/compiler/PoolAlloc.cpp":{159:54-159:56}:"%lu"
* src/compiler/PoolAlloc.cpp:
(TAllocation::checkGuardBlock): Changed '%u' to '%lu' for size_t
variable. Put for loop inside #ifdef GUARD_BLOCKS/#endif macros
to fix tautological-compare warning.
(TAllocation::checkAllocList): Added newline to end of file.
Author: David Kilzer <ddkilzer@apple.com>
git-svn-id: https://angleproject.googlecode.com/svn/trunk@575 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
ea993576
|
2011-03-15T18:23:55
|
|
Fix clang warnings: Intermediate.cpp: warning: '&&' within '||'
Issue=126
Signed-off-by: Nicolas Capens
Signed-off-by: Daniel Koch
Part 3 of 5: <http://webkit.org/b/56337> Enable -Werror on ANGLE
Upstream bug: <http://code.google.com/p/angleproject/issues/detail?id=126>
Fixes the following static analyzer warnings:
src/compiler/Intermediate.cpp:1008:55:{1008:17-1008:54}: warning: '&&' within '||' [-Wlogical-op-parentheses,2]
if (left->isMatrix() && right->isVector() ||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
src/compiler/Intermediate.cpp:1008:55: note: place parentheses around the '&&' expression to silence this warning [2]
if (left->isMatrix() && right->isVector() ||
^
( )
fix-it:"src/compiler/Intermediate.cpp":{1008:17-1008:17}:"("
fix-it:"src/compiler/Intermediate.cpp":{1008:54-1008:54}:")"
src/compiler/Intermediate.cpp:1008:55:{1009:17-1009:54}: warning: '&&' within '||' [-Wlogical-op-parentheses,2]
if (left->isMatrix() && right->isVector() ||
^
src/compiler/Intermediate.cpp:1008:55: note: place parentheses around the '&&' expression to silence this warning [2]
if (left->isMatrix() && right->isVector() ||
^
fix-it:"src/compiler/Intermediate.cpp":{1009:17-1009:17}:"("
fix-it:"src/compiler/Intermediate.cpp":{1009:54-1009:54}:")"
src/compiler/Intermediate.cpp:1020:55:{1020:17-1020:54}: warning: '&&' within '||' [-Wlogical-op-parentheses,2]
if (left->isMatrix() && right->isVector() ||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
src/compiler/Intermediate.cpp:1020:55: note: place parentheses around the '&&' expression to silence this warning [2]
if (left->isMatrix() && right->isVector() ||
^
( )
fix-it:"src/compiler/Intermediate.cpp":{1020:17-1020:17}:"("
fix-it:"src/compiler/Intermediate.cpp":{1020:54-1020:54}:")"
src/compiler/Intermediate.cpp:1020:55:{1021:17-1021:54}: warning: '&&' within '||' [-Wlogical-op-parentheses,2]
if (left->isMatrix() && right->isVector() ||
^
src/compiler/Intermediate.cpp:1020:55: note: place parentheses around the '&&' expression to silence this warning [2]
if (left->isMatrix() && right->isVector() ||
^
fix-it:"src/compiler/Intermediate.cpp":{1021:17-1021:17}:"("
fix-it:"src/compiler/Intermediate.cpp":{1021:54-1021:54}:")"
* src/compiler/Intermediate.cpp:
(TIntermBinary::promote): Added parnetheses.
Author: David Kilzer <ddkilzer@apple.com>
git-svn-id: https://angleproject.googlecode.com/svn/trunk@574 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0eb64c3a
|
2011-03-15T18:23:51
|
|
Fix clang warning: ParseHelper.cpp:264:13: warning: 8 enumeration values not handled in switch
Issue=125
Signed-off-by: Nicolas Capens
Signed-off-by: Daniel Koch
Part 2 of 5: <http://webkit.org/b/56337> Enable -Werror on ANGLE
Upstream bug: <http://code.google.com/p/angleproject/issues/detail?id=125>
Fixes the following static analyzer warning:
src/compiler/ParseHelper.cpp:264:13: warning: 8 enumeration values not handled in switch: 'EbtVoid', 'EbtBool', 'EbtGuardSamplerBegin'... [-Wswitch-enum,2]
switch( type ){
^
* src/compiler/ParseHelper.cpp:
(TParseContext::precisionErrorCheck): Added a default case.
Author: David Kilzer <ddkilzer@apple.com>
git-svn-id: https://angleproject.googlecode.com/svn/trunk@573 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
cd3a1b94
|
2011-03-15T18:23:46
|
|
Fix clang warning: ConstantUnion.h:56:17: warning: 7 enumeration values not handled in switch
Issue=124
Part 1 of 5: <http://webkit.org/b/56337> Enable -Werror on ANGLE
Signed-off-by: Nicolas Capens
Signed-off-by: Daniel Koch
Upstream bug: <http://code.google.com/p/angleproject/issues/detail?id=124>
Fixes the following static analyzer warning:
In file included from src/compiler/debug.cpp:14:
In file included from src/compiler/ParseHelper.h:10:
In file included from src/compiler/localintermediate.h:11:
In file included from src/compiler/intermediate.h:21:
src/compiler/ConstantUnion.h:56:17: warning: 7 enumeration values not handled in switch: 'EbtVoid', 'EbtGuardSamplerBegin', 'EbtSampler2D'... [-Wswitch-enum,2]
switch (type) {
^
* src/compiler/ConstantUnion.h:
(ConstantUnion::operator==): Added a default case.
Author: David Kilzer <ddkilzer@apple.com>
git-svn-id: https://angleproject.googlecode.com/svn/trunk@572 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
35ce8e1c
|
2011-03-14T23:57:03
|
|
ANGLE depends statically on D3DCompiler_x.dll.
This prevents D3DX9 from loading and unloading the DLL whenever D3DXCompileShader is called. Apart from being slow, especially when a debugger is attached, it is not possible for ANGLE to load DLLs after the Chrome sandbox has been enabled.
Review URL: http://codereview.appspot.com/4282046
git-svn-id: https://angleproject.googlecode.com/svn/trunk@571 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0b53fc05
|
2011-03-09T15:12:12
|
|
Fix NULL dereference for empty constructors.
Issue=123
Patch by Jacob Benoit.
git-svn-id: https://angleproject.googlecode.com/svn/trunk@570 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
62f20f9d
|
2011-03-09T15:10:18
|
|
Newlines in multi-line comments don't count as a newline.
TRAC #15791
Issue=114
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@569 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
3d8115ff
|
2011-03-09T15:07:33
|
|
Improve debug log formatting.
TRAC #15791
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@568 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
3829f80c
|
2011-02-28T15:06:59
|
|
Fixed a floating-point parsing assert.
TRAC #15790
Issue=99,112
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@567 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
3b5643cf
|
2011-02-28T15:06:55
|
|
Avoid division by zero in the preprocessor
Trac #15792
Issue=115
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@566 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
8fd34bd6
|
2011-02-18T02:52:14
|
|
Move geometry files.
TRAC #15649
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@564 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
e90a0d5a
|
2011-02-18T02:52:06
|
|
Minor refactoring.
TRAC #15551
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@563 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
05a5d8e0
|
2011-02-16T19:07:20
|
|
Added new line after generated HLSL break, continue and kill statements.
This is consistent with return statements. It means that when PIX is attached, the #line directive lands on a new line.
Review URL: http://codereview.appspot.com/4179054
git-svn-id: https://angleproject.googlecode.com/svn/trunk@562 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
11dd5dda
|
2011-02-11T13:28:14
|
|
Fix varying packing.
TRAC #15550
Issue=111
Fix by Ranger Harke
Signed-off-by: Daniel Koch
git-svn-id: https://angleproject.googlecode.com/svn/trunk@561 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
97750022
|
2011-02-11T13:23:13
|
|
Fix varying relinking.
TRAC #15527
Issue=100
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@560 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
b31f35ab
|
2011-02-11T13:19:35
|
|
Fix invalid compare operation asserts.
TRAC #15551
Issue=116
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@559 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
721b7f26
|
2011-02-11T00:54:47
|
|
Issue=91 -- implement pbuffers in ANGLE; add D3D share handle support
git-svn-id: https://angleproject.googlecode.com/svn/trunk@558 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
9e83b593
|
2011-02-10T22:04:34
|
|
Check for device lost with CheckDeviceState when using D3D9Ex.
According to the docs, TestCooperativeLevel is a no-op with D3D9Ex.
http://msdn.microsoft.com/en-us/library/bb174348(VS.85).aspx
I believe it is safe to ignore the additional return values from CheckDeviceState. Some appear to be to allow optimization when a window is occluded. The new errors seem to be best treated as device lost as we were before. Although if the device is removed (!) I'm not sure what to do. It might also be useful to communicate D3DERR_DEVICEHUNG to Chromium in the future so it can use it as a hint to back off.
Tested that D3D9 and D3D9Ex take the appropriate paths through Display::isDeviceLost.
Bug: http://code.google.com/p/angleproject/issues/detail?id=113
Review URL: http://codereview.appspot.com/4154042
git-svn-id: https://angleproject.googlecode.com/svn/trunk@557 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
1615be20
|
2011-02-09T16:30:06
|
|
Fix anti-aliased clears.
TRAC #15445
Issue=82
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@556 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
f1f538ef
|
2011-02-09T16:30:01
|
|
Fix loop splitting.
Trac #15446
Issue=98
Signed-off-by: Daniel Koch
git-svn-id: https://angleproject.googlecode.com/svn/trunk@555 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
e41afd8d
|
2011-02-01T18:49:22
|
|
fix pedantic compiler warnings
Issue=108
git-svn-id: https://angleproject.googlecode.com/svn/trunk@554 736b8ea6-26fd-11df-bfd4-992fa37f6226
|