summaryrefslogtreecommitdiffstats
path: root/gpu/demos
Commit message (Collapse)AuthorAgeFilesLines
* Revert 55766 - Enable -fPIC by default on x64mirandac@chromium.org2010-08-121-3/+8
| | | | | | | | | | | | | | Get rid of linux_fpic gyp variable. BUG=26625 TEST=all linux builds should compile Review URL: http://codereview.chromium.org/3135001 TBR=nirnimesh@chromium.org Review URL: http://codereview.chromium.org/3150006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55836 0039d316-1c4b-4281-b951-d872f2087c98
* Enable -fPIC by default on x64nirnimesh@chromium.org2010-08-111-8/+3
| | | | | | | | | | | Get rid of linux_fpic gyp variable. BUG=26625 TEST=all linux builds should compile Review URL: http://codereview.chromium.org/3135001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55766 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed standalone command buffer demos.apatrick@chromium.org2010-07-201-1/+7
| | | | | | | | | TEST=try BUG=none Review URL: http://codereview.chromium.org/2870056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53057 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a bunch more type changes as part of the npapi.h mergingstuartmorgan@chromium.org2010-06-021-1/+1
| | | | | | | | | | | | | This makes two types of changes - More int* -> int*_t transitions, since npapi.h switched over - Replace TRUE/FALSE, which have been removed from the upstream npapi.h. Since all our usage is C++, true/false seemed cleaner than 1/0. BUG=42645 TEST=Compiling still works Review URL: http://codereview.chromium.org/2484002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48725 0039d316-1c4b-4281-b951-d872f2087c98
* Moved demos.gyp from windows dependency to all platforms. Excluded ↵alokp@chromium.org2010-05-141-0/+5
| | | | | | | | gpu_demo_framework_pepper from being included with wildcard demos.gyp:*. Review URL: http://codereview.chromium.org/2038015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47270 0039d316-1c4b-4281-b951-d872f2087c98
* Step 1: Changing CommandBufferHelper to only use a portiongman@chromium.org2010-05-121-1/+1
| | | | | | | | | | | | | | | | | of the command buffer. This brought out the fact that there were lots of places in the code mixing size in bytes with num command buffer entries. This fixes most of those issues. No public interface uses num command buffer entries except gpu::CommandBuffer::State where it makes sense. TEST=relying on unit tests, conformance tests and chrome BUG=none Review URL: http://codereview.chromium.org/2008014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47041 0039d316-1c4b-4281-b951-d872f2087c98
* Adds support for shared resources.gman@chromium.org2010-05-031-1/+2
| | | | | | | | | | | | | | | | 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
* Made gpu demo framework plugins fail without crashing if pepper 3D cannot be ↵apatrick@chromium.org2010-04-262-11/+33
| | | | | | | | | | | initialized. TEST=trybots BUG=none Review URL: http://codereview.chromium.org/1775001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45617 0039d316-1c4b-4281-b951-d872f2087c98
* - Extracted platform specific code from GLES2 command decoder to platform ↵apatrick@chromium.org2010-04-091-1/+1
| | | | | | | | | | | | | 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
* Calling OpenGL from the renderer processapatrick@chromium.org2010-03-251-3/+6
| | | | | | | | | | | | | | - 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
* Move some more files to toplevel gfx dir.ben@chromium.org2010-03-171-1/+1
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41812 0039d316-1c4b-4281-b951-d872f2087c98
* Remove redundant nphostapi.h from webkit/glue/plugins, update source files asdspringer@google.com2010-03-152-2/+2
| | | | | | | | | | | | | | needed. Note that this change is required for the Native Client SDK, because comman_buffer_pepper.h erroneously references nphostpis.h from webkit/glue. BUG=none TEST=none Review URL: http://codereview.chromium.org/1000001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41631 0039d316-1c4b-4281-b951-d872f2087c98
* Change gl2.h to default to C bindingsgman@chromium.org2010-03-081-0/+1
| | | | | | | | | | | | This is a smaller change than rearranging the files under gpu. That will be the next step. TEST=none BUG=none Review URL: http://codereview.chromium.org/669258 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40909 0039d316-1c4b-4281-b951-d872f2087c98
* I just put the code that does not compile on ARM. Trybots will fail because ↵apatrick@chromium.org2010-02-247-11/+49
| | | | | | | | | | | | | | I had to remove these from the CL to make gcl upload properly accept it. A + base\scoped_open_process.h A + chrome\plugin\command_buffer_stub_win.cc TEST=try BUG=none Review URL: http://codereview.chromium.org/661022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39937 0039d316-1c4b-4281-b951-d872f2087c98
* Add build rules for Pepper 3D demos on the Mac.dspringer@google.com2010-02-232-14/+83
| | | | | | | | | BUG=none TEST=cd gpu.demos; open demos.xcodeproj; select any of the "Run *" targets, then use cmd-b (build). Review URL: http://codereview.chromium.org/652031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39731 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 39530 - GPU plugin forwards repaint events to Pepper plugin.apatrick@chromium.org2010-02-207-49/+11
| | | | | | | | | | | | | | | | WM_PAINT results in a call to Pepper repaint callback. Implemented WM_ERASEBKGND to prevent flickering on repaint. Implemented PGL_NO_CONTEXT (copied from EGL spec). This is already reviewed by alokp but unfortunately got entangled with this CL. TEST=none BUG=none Review URL: http://codereview.chromium.org/571018 TBR=alokp@chromium.org Review URL: http://codereview.chromium.org/650100 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39535 0039d316-1c4b-4281-b951-d872f2087c98
* GPU plugin forwards repaint events to Pepper plugin.apatrick@chromium.org2010-02-207-11/+49
| | | | | | | | | | | | | WM_PAINT results in a call to Pepper repaint callback. Implemented WM_ERASEBKGND to prevent flickering on repaint. Implemented PGL_NO_CONTEXT (copied from EGL spec). This is already reviewed by alokp but unfortunately got entangled with this CL. TEST=none BUG=none Review URL: http://codereview.chromium.org/571018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39530 0039d316-1c4b-4281-b951-d872f2087c98
* Pulled out Callback code into base/callback.h. This is the first step ↵akalin@chromium.org2010-02-191-0/+1
| | | | | | | | | | | | | towards redoing the Callback interfaces. Added and removed includes as needed. BUG=35223 TEST=trybots Review URL: http://codereview.chromium.org/646061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39419 0039d316-1c4b-4281-b951-d872f2087c98
* Removed redundant conditionals from gpu/demos.gyp.alokp@chromium.org2010-02-171-20/+13
| | | | | | Review URL: http://codereview.chromium.org/601085 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39226 0039d316-1c4b-4281-b951-d872f2087c98
* Implemented linux-specific NPAPI interface for pepper demos.alokp@chromium.org2010-02-111-7/+46
| | | | | | | BUG=26099 Review URL: http://codereview.chromium.org/599020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38727 0039d316-1c4b-4281-b951-d872f2087c98
* A few minor changes to windows implementation on windows.alokp@chromium.org2010-02-101-2/+5
| | | | | | Review URL: http://codereview.chromium.org/601016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38582 0039d316-1c4b-4281-b951-d872f2087c98
* Implemented window class on linux. Standalone demos are working on linux now.alokp@chromium.org2010-02-043-8/+63
| | | | | | Review URL: http://codereview.chromium.org/565041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38106 0039d316-1c4b-4281-b951-d872f2087c98
* Added support for lost context recovery on the client side. None of our ↵apatrick@chromium.org2010-02-032-17/+41
| | | | | | | | | | | | | | | | | | | service side GL implementations actually report lost contexts (yet). Added pglGetError to PGL library. pglSwapBuffers returns false on a lost context or other non-recoverable error and pglGetError reports PGL_CONTEXT_LOST. Updated demo plugins to reset their PGL contexts on context lost. Standalone plugins cannot currently recover from lost context because they don't use PGL. Added error code to NPDeviceContext3D for lost context. TEST=none BUG=none Review URL: http://codereview.chromium.org/566021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38039 0039d316-1c4b-4281-b951-d872f2087c98
* Changes necessary to compile gpu demos on linux. It is not functional yet ↵alokp@chromium.org2010-02-037-247/+329
| | | | | | | | | just compiling. BUG=26099 Review URL: http://codereview.chromium.org/552240 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37977 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed ParseError -> Error, parse_error -> error, kParseNoError -> ↵apatrick@chromium.org2010-02-011-1/+1
| | | | | | | | | | | | kNoError, commandBufferEntries -> commandBufferSize. Added NPDevice3DContextError enumeration. TEST=none BUG=none Review URL: http://codereview.chromium.org/558054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37751 0039d316-1c4b-4281-b951-d872f2087c98
* Windows now uses the TLS API instead of __declspec(thread) for client side ↵apatrick@chromium.org2010-01-273-0/+8
| | | | | | | | | | | | | | | | | 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
* Hooked all demos to gpu/demos.gyp. Now all demos run as both - standalone ↵alokp@chromium.org2010-01-268-97/+263
| | | | | | | | | executables and pepper plugin. BUG=26099 Review URL: http://codereview.chromium.org/549159 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37119 0039d316-1c4b-4281-b951-d872f2087c98
* Added infrastructure to run gpu demos under Pepper3D. Created a Demo class ↵alokp@chromium.org2010-01-2617-256/+781
| | | | | | | | | | | | | | | | | that can be run as both standalone apps (exe) or pepper plugins (dll). Created entry points and framework classes for both platforms - exe and pepper. A demo application has three layers: 1. Entry point - standalone (main_exe.cc): Contains the main function for console applications. Instantiates and runs a window. - pepper (main_pepper.cc): Contains NPAPI entry points. Instantiates pepper plugin object. 2. Framework that hosts demo - standalone: Window - pepper: Plugin 3. Demo - One demo class for all platforms. This does all the rendering and event handling. BUG=26099 Review URL: http://codereview.chromium.org/554053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37082 0039d316-1c4b-4281-b951-d872f2087c98
* Converted all demos to use gpu::demos::Example base class.alokp@chromium.org2010-01-196-302/+90
| | | | | | Review URL: http://codereview.chromium.org/542120 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36551 0039d316-1c4b-4281-b951-d872f2087c98
* Created a base class for examples taken from gles2 book. It encapsulates the ↵alokp@chromium.org2010-01-192-50/+90
| | | | | | | | well-defined pattern followed by the examples to eliminate duplicated code. Once we finalize this CL, I will go ahead and change all demos to use this base class. Review URL: http://codereview.chromium.org/543110 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36542 0039d316-1c4b-4281-b951-d872f2087c98
* Added stencil-test demo.alokp@chromium.org2010-01-152-0/+74
| | | | | | | | | PS: I have not moved the repeated code to the base class for this demo because this is the last one I intend to submit before starting to port the demos to pepper. I will refactor all the demos to eliminate repeating code in light of pepper framework. BUG=26099 TEST=Run stencil_test executable. You should see four different-colored quads. Review URL: http://codereview.chromium.org/545092 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36410 0039d316-1c4b-4281-b951-d872f2087c98
* Added texture wrap demo.alokp@chromium.org2010-01-152-0/+75
| | | | | | | | BUG=26099 TEST=Run texture_wrap executable. You should see three quads, each with a different texture wrapping mode. Review URL: http://codereview.chromium.org/552012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36394 0039d316-1c4b-4281-b951-d872f2087c98
* Added variable name as required by style guide.alokp@chromium.org2010-01-153-6/+6
| | | | | | Review URL: http://codereview.chromium.org/549071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36387 0039d316-1c4b-4281-b951-d872f2087c98
* Added cubemap demo.alokp@chromium.org2010-01-152-0/+74
| | | | | | | BUG=26099 Review URL: http://codereview.chromium.org/549063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36356 0039d316-1c4b-4281-b951-d872f2087c98
* Added simple texture demo.alokp@chromium.org2010-01-142-0/+76
| | | | | | | | BUG=26099 TEST=Run simple_texture_2d executable. You should see a square with checker-board pattern. Review URL: http://codereview.chromium.org/543063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36267 0039d316-1c4b-4281-b951-d872f2087c98
* Added mip-mapping demo.alokp@chromium.org2010-01-142-0/+75
| | | | | | | | BUG=26099 TEST=Run mip_map_2d executable. You should see two quads with checker-board pattern. The left will exhibit aliasing but right one will be anti-aliased. Review URL: http://codereview.chromium.org/542067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36209 0039d316-1c4b-4281-b951-d872f2087c98
* Changed the signature of Application::Draw to accept elapsed time. It will ↵alokp@chromium.org2010-01-134-7/+26
| | | | | | | | be used to update key frames or making the application frame-rate independent. However I think there is some bug somewhere. It takes an eternity for the cube in simple-vertex-shader demo to start rotating. Even when the cube starts rotatiing the performance is quite choppy. Review URL: http://codereview.chromium.org/551011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36156 0039d316-1c4b-4281-b951-d872f2087c98
* Added simple vertex shader demo. I had to make the following modifications ↵alokp@chromium.org2010-01-132-0/+78
| | | | | | | | | | | | to third-party code: - Changed client-side vertex array to VBO - Used GL_UNSIGNED_SHORT instead of GL_UNSIGNED_INT in glDrawElements because GL_UNSIGNED_INT is not supported for by OpenGL ES 2.0 for indices BUG=26099 TEST=Run simple_vertex_shader executable, you should see a rotating cube. Review URL: http://codereview.chromium.org/543015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36127 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed gles_book_examples.gyp to gles2_book.gyp and hooked eveything back ↵alokp@chromium.org2010-01-091-1/+1
| | | | | | | | together. TBR=apatrick git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35876 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed gles_book_examples to gles2_book to make it shorter and more ↵alokp@chromium.org2010-01-093-3/+3
| | | | | | | | | correct. I still need to rename gles_book_examples.gyp to gles2_book.gyp. I will do it in another CL as svn does not like changes in renamed directories. TBR=apatrick Review URL: http://codereview.chromium.org/543002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35875 0039d316-1c4b-4281-b951-d872f2087c98
* Added hello-triangle demo.alokp@chromium.org2010-01-093-0/+80
| | | | | | | | BUG=26099 TEST=Try running hello_triangle executable, you should see a red triangle Review URL: http://codereview.chromium.org/539001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35873 0039d316-1c4b-4281-b951-d872f2087c98
* Added an application framework for demos. This framework currently only ↵alokp@chromium.org2010-01-084-0/+275
| | | | | | | | | supports stand-alone apps. It will be extended to support trusted pepper and untrusted nacl apps. BUG=26099 Review URL: http://codereview.chromium.org/525083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35758 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Resubmit 35500: Added an application framework for demos. Ported ↵ajwong@chromium.org2010-01-067-445/+0
| | | | | | | | | | hellotriangle example in OpenGL ES book to use the application framework." This reverts commit r35647. TBR: alok git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35665 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit 35500: Added an application framework for demos. Ported ↵alokp@chromium.org2010-01-067-0/+445
| | | | | | | | | | | hellotriangle example in OpenGL ES book to use the application framework. BUG=26099 TEST=Try running hello_triangle executable, you should see a red triangle. Review URL: http://codereview.chromium.org/525070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35647 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 35500 - Added an application framework for demos. Ported ↵rsesek@chromium.org2010-01-057-445/+0
| | | | | | | | | | | | | hellotriangle example in OpenGL ES book to use the application framework. BUG=26099 TEST=Try running hello_triangle executable, you should see a red triangle. Review URL: http://codereview.chromium.org/465051 TBR=alokp@chromium.org Review URL: http://codereview.chromium.org/525019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35505 0039d316-1c4b-4281-b951-d872f2087c98
* Added an application framework for demos. Ported hello-triangle example in ↵alokp@chromium.org2010-01-057-0/+445
OpenGL ES book to use the application framework. BUG=26099 TEST=Try running hello_triangle executable, you should see a red triangle. Review URL: http://codereview.chromium.org/465051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35500 0039d316-1c4b-4281-b951-d872f2087c98