| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Speeds up building all of gpu by over one minute / over 10% on my machine (from 9:23 to 8:11).
Move the mock to gpu/command_buffer/common to have a more obvious place for the cc file.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/3811006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62649 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and the add them in as extensions are enabled.
The idea is when WebGL inits it's context it will pass ""
to FeatureInfo::Initialize. After that it can pass various
GL extension strings to FeatureInfo::AddFeatures
to turn on more features.
It can then call glGetString(GL_EXTENSIONS) to see if the
feature was turned on.
Questions: I started this CL trying to make it possible
so each context could have it's own FeatureInfo. I decided
against that. So that brings up the question, should I
get rid of FeatureInfo and just put this stuff back on
ContextGroup or leave it as is?
If I leave it as is, should I move all the max_XXX stuff
on ContextGroup to FeatureInfo?
TEST=unit tests
BUG=none
Review URL: http://codereview.chromium.org/3413038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61114 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/3436030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60951 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
uniforms. Created a new class ShaderTranslator to encapsulate shader translation.
PS: I will add tests for this class once ANGLE actually returns attribs and uniforms.
Review URL: http://codereview.chromium.org/3451002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59816 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The main change was to make scoped_ptr and the basic types the same for both NaCl and trusted plugins and to implement new logging code for GPU common and client code. Service code and unit tests can still use the logging code in base.
I am really not happy with the new logging code but I thought I'd let you take a look at it to see what you think. The biggest thing I don't like is it uses assert(false) to throw an exception in a platform independent way, which brings up a modal dialog. Not ideal in the middle of a unit test run. I don't know if that will make the bots hang. Hopefully they'll time out or something.
TEST=try
BUG=none
Review URL: http://codereview.chromium.org/2936009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58857 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
shader needs to be translated is a runtime decision.
Review URL: http://codereview.chromium.org/3207001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57362 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since we are simulating non-shared resources on top
of shared resources we can't actually let contexts
use texture 0 because they are all sharing it.
Also, moved the black textures to the texture manager.
TEST=unit tests and ran conformance tests
BUG=none
Review URL: http://codereview.chromium.org/3150026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57214 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is only the internal command buffer implementation.
Connecting these functions publicly to PPAPI or whatever
will happen separate from this CL.
It's not clear to me where to put GL_READ_ONLY and GL_WRITE_ONLY
Probably the same place we expose these 2 functions to the public.
TEST=unit test
BUG=none
Review URL: http://codereview.chromium.org/2956005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52263 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Python script to generate code to dynamically bind to GL functions (native GL, OSMesa, EGL or mock GL for unit tests). This replaces GLEW because GLEW doesn't bind to the GLES dialect of GL.
Moved the mock GL code into app/gfx/gl.
Updated the GPU code and AcceleratedSurface to use the new GL bindings.
TEST=trybots
BUG=none
Review URL: http://codereview.chromium.org/2134006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49332 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
now that ANGLE has been updated or gcc 4.4.1
TEST=none
BUG=none
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47721 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
not up to the task >:-(
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47589 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47588 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
TBR=gman@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47579 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and save the error log so it can be passed back through GL
calls.
This also links with the GLSL translator always
TEST=conformance tests
BUG=none
Review URL: http://codereview.chromium.org/2096008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47578 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
now that it compiles on mac and linx. Also added a GYP flag 'enable_shader_translation'. To enable shader translation define env variable: GYP_DEFINES="enable_shader_translation=1".
Review URL: http://codereview.chromium.org/2134002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47295 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
compiles on mac and linx. Also added a GYP flag 'enable_shader_translation'. To enable shader translation define env variable: enable_shader_translation=1.
Review URL: http://codereview.chromium.org/1988011
TBR=alokp@chromium.org
Review URL: http://codereview.chromium.org/2082004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47185 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
linx. Also added a GYP flag 'enable_shader_translation'. To enable shader translation define env variable: enable_shader_translation=1.
Review URL: http://codereview.chromium.org/1988011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47182 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's not clear how to test this easily
it seems like we an integration test
is needed at some point. I did run the
conformance tests with share_resources
set to true and it rand without crashing.
TEST=unit tests
BUG=none
Review URL: http://codereview.chromium.org/1817002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46264 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/1712020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45988 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
to manage the transfer buffer. This is significantly
faster than the FencedAllocator for our purposes.
TEST=some unit tests
BUG=none
Review URL: http://codereview.chromium.org/1796002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45844 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
angleproject is added. Still fighting with gclient to make it forget about previous references to angleproject.
TBR=kbr@chromium.org
Review URL: http://codereview.chromium.org/1739013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45746 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/1797001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45734 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/1773001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45485 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLContext implementations were dependent on some stuff in app/.
Moved GLContext class to app/gfx/gl. Now it can be used by code outside of the gpu project, for example AcceleratedSurface.
TEST=trybots, checkdeps
BUG=none
Review URL: http://codereview.chromium.org/1689006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45335 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now it can be used by code outside of the gpu project, for example AcceleratedSurface.
TEST=trybots
BUG=none
Review URL: http://codereview.chromium.org/1694003
TBR=jamesr@chromium.org
Review URL: http://codereview.chromium.org/1747007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45244 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Now it can be used by code outside of the gpu project, for example AcceleratedSurface.
TEST=trybots
BUG=none
Review URL: http://codereview.chromium.org/1694003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45240 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
header, keeping the include path as absolute is less confusing.
Review URL: http://codereview.chromium.org/1722001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45193 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Renders 3D using Mesa offscreen software renderer.
- Will be used to run 3D tests on bots that do not support native OpenGL.
- Extended glew library to use the osmesa shared library instead of the regular OpenGL one if it is in the search path.
- Only works on Windows with this changelist, though other platforms will continue to use native OpenGL.
- Added a stub GLContext implementation for use in unit tests.
Review URL: http://codereview.chromium.org/1629029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45093 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=none
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44337 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=none
TBR=dumi@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44335 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code is conditional. I guess my gaming side
spidey senses can't stand the overhead but
I could be convinced to make it non-conditional.
TEST=various unit tests
BUG=none
Review URL: http://codereview.chromium.org/1629004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44334 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
specific GLContext classes.
- GLContext encapsulates management of GL contexts on each platform.
- ReadPixels uses actual current window size to validate source rectangle.
TEST=trybots, running Pepper 3D and WebGL demos on all platforms
BUG=none
Review URL: http://codereview.chromium.org/1605014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44129 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I'm only making this change for the Mac because I can't test it for other
platforms right now, but as a general rule, libraries belong inside
link_settings sections, not all_dependent_settings (or both).
all_dependent_settings says that anyone that depends on a given target,
even transitively through a long chain, inherits the enclsoed settings. In
this case, chrome_exe and helper_app would inappropriately be linked against
OpenGL.framework, even though they did not need to be. It is enough for
chrome_dll to link against OpenGL.framework.
For that matter, the non-library uses of all_dependent_settings in this file
are probably wrong, too. Generally, they should be replaced with
direct_dependent_settings. Inappropriate use of all_dependent_settings
results in -Defines and -Includes leaking, and can cause problems for remote
downstream targets.
BUG=none
TEST=otool -L GC.app/Contents/MacOS/GC should not show OpenGL.framework
Review URL: http://codereview.chromium.org/1604009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43533 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=trybots
BUG=none
Review URL: http://codereview.chromium.org/1577001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43013 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Added ability for renderer processes to render to a real window (Windows only so far).
- Added ability to create offscreen frame buffer objects that can be resized later.
- OpenGL context can have a "parent" context that can access its last swapped back buffer through a texture ID.
- Moved code to establish GPU channel from RenderWidget to RenderThread.
- Changed way service size command buffer object lifetimes are managed.
TEST=trybot and visual verification that OpenGL can clear the browser window to magenta.
BUG=none
Review URL: http://codereview.chromium.org/1136006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42679 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
clear the buffers.
Note: I did not actually write the clearing code
or the binding code. Will do in another CL after
Al checks in his code.
TEST=unit tests
BUG=none
Review URL: http://codereview.chromium.org/1243002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42577 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
from native client and pepper.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/668205
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40956 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
through a GPU channel.
Probably only works in windows only so far.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/657046
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40783 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
resources and non-renderable texture situations.
I haven't written enough unit tests for this
but the CL is already too big.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/646070
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39984 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes compilation errors on Karmic, where dlopen() and friends were undefined:
http://chrome-buildbot.corp.google.com:8016/builders/Chromium%20Linux%20Builder%20(dbg-shlib)/builds/7777/steps/compile/logs/stdio
The missing '-ldl' is papered over on Hardy because pretty much everything
depends on gtk, which brings that in through pkg-config, but pkg-config gtk
no longer includes '-ldl' on Karmic.
Review URL: http://codereview.chromium.org/656014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39754 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I need to add a bunch more unit tests for the TextureManager
but this CL is getting large so if you don't mind I'll
do that in the next CL.
I still need to use the texture tracking at draw time but
that's going to require uniform tracking! UGH!
Also breaks out a bunch of the tracking classes into their own files.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/605018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39153 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Initial port of GPU process / plugin to Mac OS X. Uses new IOSurface
APIs and therefore currently runs only on 10.6. Alternate strategy
will need to be devised for 10.5.
Slight UI issues remain such as GPU plugins initially showing up in
the wrong place on the page. These will be fixed in follow-on bugs.
Minimal changes made to command buffer code to get it to compile on
Mac OS X. Commented out use of nested anonymous namespaces in
gles2_cmd_decoder.cc which were causing the linker to crash with a seg
fault.
Refactored gyp files so the OS test enabling the GPU plugin is in one
place, common.gypi, and other files test only the variable enable_gpu.
Slight change to gles2_demo_cc.cc to add some simple animation to
verify that updates from the GPU plugin are reaching the screen.
Changed Pepper test plugin to use 3D view by default and commented out
use of audio context because of recent issues.
TEST=none (ran Pepper Test Plugin with 3D view enabled)
BUG=http://crbug.com/25988
Review URL: http://codereview.chromium.org/558035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37934 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/549201
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37496 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
command buffer code compiled into DLLs. Other platforms use the pthreads API. This is because the __declspec(thread) approach does not on some platforms, including Windows XP and Mac.
This is used for thread local pointers to the GL and PGL contexts. This unfortunate because the PGL and GL APIs do not generally explicitly reference a context. The current context is set with a call to pglMakeCurrent.
An unfortunate consequence is that now in Pepper plugins, every call to a GL function will call TlsGetValue to get the thread's current context, which could have performance issues.
I can't use base::ThreadLocalPointer because this code is compiled into an untrusted NaCl module and we don't want Chromium dependencies.
TEST=try
BUG=none
Review URL: http://codereview.chromium.org/553050
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37300 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
one. The HINSTANCE it was getting from the console was invalid for some reason.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/542119
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36558 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Implemented PGL library, an EGL like API for Pepper. Updated Pepper test plugin to use it.
TEST=trybots
BUG=none
Review URL: http://codereview.chromium.org/552007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36318 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pepper test plugin to use it.
TEST=none yet
BUG=none
Review URL: http://codereview.chromium.org/545052
TBR=alokp@chromium.org
Review URL: http://codereview.chromium.org/550048
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36270 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
plugin to use it.
TEST=none yet
BUG=none
Review URL: http://codereview.chromium.org/545052
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36268 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This is to workaround NVIDIA's broken dlsym hook.
BUG=16800
Review URL: http://codereview.chromium.org/525109
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35863 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=35509
Review URL: http://codereview.chromium.org/500132
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35612 0039d316-1c4b-4281-b951-d872f2087c98
|