summaryrefslogtreecommitdiffstats
path: root/gpu
Commit message (Collapse)AuthorAgeFilesLines
* Added Pepper 3D device that instantiates the GPU plugin and sends GLES2 ↵apatrick@google.com2009-12-2229-257/+247
| | | | | | | | | | | | | | | | | | | | | | | commands to it via a command buffer. Added API for managing buffers to Pepper 3D device. Removed DCHECK from WebPluginImpl::SetWindow that checks against a windowless plugin being given a window handle. Please check this! Now an initially windowless plugin instance gets a handle when it requests a Pepper 3D context. Perhaps the window handle should be concealed from the underlying plugin isntance. Removed enable_gpu gyp variable and C macro. GPU code is always built on windows but not mac or linux. It is enabled at runtime with the --enable-gpu-plugin switch. Redesigned CommandBuffer interface so it exposes shared memory through a Buffer. This was necessary because Pepper has no notion of shared memory handles. The Buffer exposes the shared memory as both a handle (through base::SharedMemory) and the mapped address and size. Refactored CommandBufferEngine so mapped shared memory addresses and sizes are returned with a single call rather than two separate calls. Added 3D demo to pepper test plugin. TEST=try servers BUG=none Review URL: http://codereview.chromium.org/367002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35185 0039d316-1c4b-4281-b951-d872f2087c98
* Add Immediate command data size validation.gman@chromium.org2009-12-223-542/+895
| | | | | | | | | | | | | | | | | | | | | | | Adds checks that Immediate commands all check the sizeo of the data they are going to access is valid. Also adds Vertex Attribute validation for glDrawXXX. In order to accomplish this it must track buffers and their sizes, the settings set with glVertexAttribPointer, program info at glLinkProgram time and which program as active via glUseProgram Given all that info it can validate that is is okay to call glDrawArray or glDrawElements. TEST=none BUG=none Review URL: http://codereview.chromium.org/501097 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35135 0039d316-1c4b-4281-b951-d872f2087c98
* Added chromium source file preamble.apatrick@google.com2009-12-1755-1042/+121
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/501094 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34893 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes VertexAttribPointer by allowing null (0) to begman@chromium.org2009-12-171-9/+8
| | | | | | | | | | | passed in. The scary thing is, not setting this causes the GL driver to trash memory Review URL: http://codereview.chromium.org/501072 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34802 0039d316-1c4b-4281-b951-d872f2087c98
* Add in missing file from previous CLgman@chromium.org2009-12-161-1/+5
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/505027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34776 0039d316-1c4b-4281-b951-d872f2087c98
* Implements Validation for all GLenum arguments and gman@chromium.org2009-12-1610-2632/+2397
| | | | | | | | | | | | | | GLint arguments that have specific valid values. Will add unit tests in separate CL as I expect to be able to auto generate unit tests. TEST=none BUG=none Review URL: http://codereview.chromium.org/505016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34726 0039d316-1c4b-4281-b951-d872f2087c98
* Another round of gcc fixes for GPU command buffers.scherkus@chromium.org2009-12-154-666/+1216
| | | | | | | | | | | | This actually gets command_buffer_common_unittests building and passing. BUG=n/a TEST=n/a Review URL: http://codereview.chromium.org/488011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34595 0039d316-1c4b-4281-b951-d872f2087c98
* Deleted np_utils library.apatrick@google.com2009-12-1427-3221/+0
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/481007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34508 0039d316-1c4b-4281-b951-d872f2087c98
* Added CommandBufferProxy, CommandBufferStub. Replaced NPAPI with IPC for ↵apatrick@google.com2009-12-1274-1730/+513
| | | | | | | | | | | synchronous messages. WebPluginDelegateImpl can instantiate a command buffer. Removed remaining dependencies on NPAPI. TEST=none BUG=none Review URL: http://codereview.chromium.org/465040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34397 0039d316-1c4b-4281-b951-d872f2087c98
* First batch of GCC fixes for GPU code.scherkus@chromium.org2009-12-108-15/+21
| | | | | | | | | | | | This patch addresses signed/unsigned and 64-bit errors. The remaining fixes are more involved requiring changes/ifdefs to get around HWND. There's also a ton of "unused variable" warnings in the auto-generated code. BUG=n/a TEST=n/a Review URL: http://codereview.chromium.org/492009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34296 0039d316-1c4b-4281-b951-d872f2087c98
* Setting some svn properties for /src/gpu files.scherkus@chromium.org2009-12-101-0/+0
| | | | | | | | | BUG=n/a TEST=n/a TBR=apatrick Review URL: http://codereview.chromium.org/491017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34289 0039d316-1c4b-4281-b951-d872f2087c98
* Implements bucket commands and adds unit tests togman@chromium.org2009-12-106-76/+674
| | | | | | | | | | | common_decoder TEST=none BUG=none Review URL: http://codereview.chromium.org/479008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34242 0039d316-1c4b-4281-b951-d872f2087c98
* Update initialization of gles2_demo.cc to matchgman@chromium.org2009-12-081-2/+10
| | | | | | | | | | | requirements of using Chrome base. TEST=none BUG=none Review URL: http://codereview.chromium.org/463052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34107 0039d316-1c4b-4281-b951-d872f2087c98
* Fix small issue in gpu_plugin_objectgman@chromium.org2009-12-081-1/+1
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/460145 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34090 0039d316-1c4b-4281-b951-d872f2087c98
* TEST=nonegman@chromium.org2009-12-082-1/+22
| | | | | | | | | | | | | | BUG=none Add glReadPixel service implemenation. the GLES2 client side implemenation needs to wait for me to implement buckets. For now though, a client app can use the GLES2CmdHelper, allocate shared memory and call ReadPixels. Review URL: http://codereview.chromium.org/468024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34081 0039d316-1c4b-4281-b951-d872f2087c98
* Removed command buffer's last dependency on NPAPI.apatrick@google.com2009-12-0811-61/+20
| | | | | | | | | | Fixed some failing tests resulting from size of command field. TEST=none BUG=none Review URL: http://codereview.chromium.org/465099 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34021 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed typo.apatrick@google.com2009-12-031-1/+1
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/468001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33697 0039d316-1c4b-4281-b951-d872f2087c98
* TBR=apatrick@chromium.orggman@chromium.org2009-12-036-374/+848
| | | | | | | | | | | | | | | | | | | | | | TEST=none BUG=none NOTE: This CL was already reviewed. See: http://codereview.chromium.org/437044/show Add ids and stubs for new common commands and change it so command ids are 11 bits and the size is 21 bits. Since size is in command elements and 1 command element is 4 bytes that allows you to pass 2^23rd bytes inside the command buffer which is 8meg. Review URL: http://codereview.chromium.org/465013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33634 0039d316-1c4b-4281-b951-d872f2087c98
* Merged in recent changes to command buffer code.apatrick@google.com2009-11-2519-1477/+1956
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/434063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33095 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing build. Forgot to add this deletion to last CL.apatrick@google.com2009-11-251-117/+0
| | | | | | | | TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33017 0039d316-1c4b-4281-b951-d872f2087c98
* Landing the GPU process and command buffer code again, this time with a DEPS ↵apatrick@google.com2009-11-25118-0/+34530
| | | | | | | | | | file with the necessary include rules. TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33006 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting the rest of 32952apatrick@google.com2009-11-24117-34526/+0
| | | | | | | | TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32970 0039d316-1c4b-4281-b951-d872f2087c98
* Branched gpu process and command buffer code into Chrome tree. Fixed up ↵apatrick@google.com2009-11-24117-0/+34526
paths and other minor changes to make it work in the Chrome tree. Will remove copy from O3D tree shortly. Only works in Windows currently. TEST=none BUG=none Review URL: http://codereview.chromium.org/436017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32952 0039d316-1c4b-4281-b951-d872f2087c98