summaryrefslogtreecommitdiffstats
path: root/o3d
Commit message (Collapse)AuthorAgeFilesLines
* Linux: make sure the fullscreen window always gets focustschmelcher@chromium.org2010-02-222-3/+11
| | | | | | | | | TEST=tested fullscreen on Linux with metacity, metacity + focus-follows-mouse, compiz, compiz + focus-follows-mouse BUG=none Review URL: http://codereview.chromium.org/652076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39651 0039d316-1c4b-4281-b951-d872f2087c98
* Make ActiveX CLSIDs and names into overridable variables too. Also make the ↵tschmelcher@chromium.org2010-02-2216-93/+265
| | | | | | | | | | | NPAPI plugin's filename overridable, since that's needed too in order to fully re-brand the NPAPI plugin. TEST=built on Windows with branding overrides and verified that the product worked in both FF 3.6 and IE7 with similarly modified JavaScript code BUG=none Review URL: http://codereview.chromium.org/646071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39630 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: Implement cursor type NONE. Also ensure fullscreen windows are ↵tschmelcher@chromium.org2010-02-192-7/+39
| | | | | | | | created on the same X11 screen as the embedded window. Review URL: http://codereview.chromium.org/651066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39507 0039d316-1c4b-4281-b951-d872f2087c98
* Set the correct content window parameters for the "soft" fullscreen mode:zmo@google.com2010-02-191-1/+9
| | | | | | | | 1) make the window "topmost" (but still won't overide TaskManager) 2) add the ex-style of WS_EX_TOOLWINDOW so the content window won't show in the TaskBar when in "soft" fullscreen mode. Otherwise it shows, and when you click on it or press ctrl-del-alt, o3d will get out of fullscreen mode, but this content window will linger in the TaskBar. Review URL: http://codereview.chromium.org/651003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39500 0039d316-1c4b-4281-b951-d872f2087c98
* Added viewAll method to CameraController.kbr@chromium.org2010-02-191-2/+67
| | | | | | Review URL: http://codereview.chromium.org/651049 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39475 0039d316-1c4b-4281-b951-d872f2087c98
* Requesting C++ readability review for these classes and unit tests.kbr@chromium.org2010-02-196-107/+102
| | | | | | | | | | | | | The arena allocator is designed for optimized allocation and deallocation of small temporary objects, and is used by the augmentable red-black tree. In a subsequent checkin, the red-black tree will be augmented into an interval tree, which is a key data structure for efficient implementation of one of the algorithms in the forthcoming code in this directory. Review URL: http://codereview.chromium.org/596093 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39414 0039d316-1c4b-4281-b951-d872f2087c98
* Added a specialized triangulator which creates triangles filling thekbr@chromium.org2010-02-196-0/+808
| | | | | | | | | | | | | | convex hull of the four control points of a cubic curve segment. It also computes a path along the filled side of the curve segment, which will be used to fill the interior region of closed shapes with a general tessellation algorithm. BUG=none TEST=LocalTriangulatorTest Review URL: http://codereview.chromium.org/646048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39413 0039d316-1c4b-4281-b951-d872f2087c98
* Added computation of three-dimensional texture coordinates for thekbr@chromium.org2010-02-183-0/+289
| | | | | | | | | | | | | | | | control points of cubic curves. It's difficult if not impossible to write a unit test for this part of the algorithm, since the texture coordinates aren't precisely defined for any particular inputs. The forthcoming system tests will exercise these code paths. BUG=none TEST=none Review URL: http://codereview.chromium.org/647041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39386 0039d316-1c4b-4281-b951-d872f2087c98
* Added classifier which determines the type of a cubic curve input.kbr@chromium.org2010-02-185-0/+419
| | | | | | | | | | | | Its output will be used by the forthcoming texture coordinate generator. BUG=none TEST=CubicClassifierTest Review URL: http://codereview.chromium.org/626015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39373 0039d316-1c4b-4281-b951-d872f2087c98
* This fixes a bug in the 2d particle shader that madegman@chromium.org2010-02-181-2/+3
| | | | | | | | them ignore transform orientation. Review URL: http://codereview.chromium.org/647008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39370 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed regression caused by http://codereview.chromium.org/599012 wherekbr@chromium.org2010-02-171-1/+1
| | | | | | | | | | | O3D plugin is not detected on Mac OS X (at least). BUG=none TEST=none (ran O3D in Safari) Review URL: http://codereview.chromium.org/631005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39299 0039d316-1c4b-4281-b951-d872f2087c98
* Added interval tree data structure and unit tests. This is built onkbr@chromium.org2010-02-173-0/+498
| | | | | | | | | the red/black tree and is a key data structure in one of the forthcoming algorithms in this code. Review URL: http://codereview.chromium.org/594048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39284 0039d316-1c4b-4281-b951-d872f2087c98
* Re-applying patch from http://codereview.chromium.org/606005 .zmo@google.com2010-02-162-4/+33
| | | | | | | | Already reviewed by Vangelis. Review URL: http://codereview.chromium.org/609006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39114 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting files back to known good state. Will re-applyzmo@google.com2010-02-162-244/+113
| | | | | | | | | | http://codereview.chromium.org/606005 afterward. TBR=vangelis Review URL: http://codereview.chromium.org/609005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39113 0039d316-1c4b-4281-b951-d872f2087c98
* Make plugin name and mimetype into overridable GYP variables, so that third ↵tschmelcher@chromium.org2010-02-162-20/+22
| | | | | | | | | | | | | parties can more easily redistribute the O3D NPAPI plugin under a different brand. Analogous change for the ActiveX plugin will be in a forthcoming CL. TEST=built on Linux with various overridden values and checked that about:plugins showed the right thing; trybots BUG=none Review URL: http://codereview.chromium.org/599012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39109 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the software renderer "soft" fullscreen mode using the wrong monitor bug.zmo@google.com2010-02-162-113/+244
| | | | | | Review URL: http://codereview.chromium.org/606005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39107 0039d316-1c4b-4281-b951-d872f2087c98
* Clone of issue 598075. See: http://codereview.chromium.org/598075twiz@google.com2010-02-127-84/+7
| | | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/593083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38936 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed broken Linux build by changing Counter helper class used bykbr@google.com2010-02-121-21/+21
| | | | | | | | | | NumElements() from a local class to a nested class as Gregg suggested in http://codereview.chromium.org/574024 . Changed this class to use DISALLOW_COPY_AND_ASSIGN. Review URL: http://codereview.chromium.org/606025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38923 0039d316-1c4b-4281-b951-d872f2087c98
* Added an arena allocator and an augmentable red-black tree whichkbr@chromium.org2010-02-127-0/+1449
| | | | | | | | | | | | | allocates its temporary objects from it. In a subsequent checkin, the red-black tree will be augmented into an interval tree, which is a key data structure for efficient implementation of one of the algorithms in the forthcoming code in this directory. I plan to submit this for C++ readability following code review. Review URL: http://codereview.chromium.org/574024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38908 0039d316-1c4b-4281-b951-d872f2087c98
* O3D initialized to the monitor/adapter where the window is on.zmo@google.com2010-02-112-22/+79
| | | | | | Review URL: http://codereview.chromium.org/593031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38819 0039d316-1c4b-4281-b951-d872f2087c98
* Remove redundant casts in g_signal_connect() throughout all gtk code we have.erg@chromium.org2010-02-101-4/+4
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/600033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38629 0039d316-1c4b-4281-b951-d872f2087c98
* Roll imported Nixysa version forward to get the new universally compatible ↵maf@google.com2010-02-091-1/+1
| | | | | | | | version. Review URL: http://codereview.chromium.org/600024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38528 0039d316-1c4b-4281-b951-d872f2087c98
* Roll back Nixysa imported rev so that we get the Python 2.4 compatible version.maf@google.com2010-02-091-1/+1
| | | | | | Review URL: http://codereview.chromium.org/583016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38522 0039d316-1c4b-4281-b951-d872f2087c98
* Bump DEPS to pull in latest Nixysa.maf@google.com2010-02-081-1/+1
| | | | | | Review URL: http://codereview.chromium.org/582004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38414 0039d316-1c4b-4281-b951-d872f2087c98
* linux: native OpenGL ES supportpiman@google.com2010-02-0814-189/+619
| | | | | | | | | This includes Gregg's CL 548023 There are still a few hard-coded paths, and issues to solve, but hellocube-textures-glsl is running on an actual device. Review URL: http://codereview.chromium.org/572029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38385 0039d316-1c4b-4281-b951-d872f2087c98
* Force Java version to 1.6.0 on Mac OS X because apparently latestkbr@chromium.org2010-02-051-1/+10
| | | | | | | | | JSCompiler binaries require this version. Verified this fix on 10.5 and tested on 10.6 as well. Review URL: http://codereview.chromium.org/578022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38275 0039d316-1c4b-4281-b951-d872f2087c98
* Added needed dependency on npo3dautoplugin because otherwise thekbr@chromium.org2010-02-051-0/+3
| | | | | | | | unpack_firefox target can run before the plugin has been built. Review URL: http://codereview.chromium.org/574019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38272 0039d316-1c4b-4281-b951-d872f2087c98
* Roll Skia to 488 to pick up some new needed entry points.kbr@chromium.org2010-02-051-1/+1
| | | | | | Review URL: http://codereview.chromium.org/577031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38271 0039d316-1c4b-4281-b951-d872f2087c98
* roll deps to pick up nacl changes for armpiman@google.com2010-02-051-1/+1
| | | | | | Review URL: http://codereview.chromium.org/575020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38249 0039d316-1c4b-4281-b951-d872f2087c98
* Worked around bug in 32-bit Safari 4 on Mac OS X 10.6 where thekbr@chromium.org2010-02-051-0/+6
| | | | | | | | | | browser sends O3D a spurious NPP_SetWindow with an invalid window after first sending it a valid one. Tested this on both 10.6 and 10.5; no ill effects on 10.5, including in multiple tab case. Review URL: http://codereview.chromium.org/572027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38236 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed build problem on Mac OS X 10.6. precompile.h is inferred by namekbr@chromium.org2010-02-051-0/+2
| | | | | | | | | | | | to be a C file, but it includes C++ headers like <vector> and <algorithm>. In order for the compiler to find these headers it was necessary to force it to treat this as a C++ header. This fix was determined to be necessary on multiple machines running Xcode 3.2.1. It has also been tested on 10.5 with no ill effects. Review URL: http://codereview.chromium.org/572026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38235 0039d316-1c4b-4281-b951-d872f2087c98
* Bump chromium DEPS to pick up my skia Linux crash fix.tschmelcher@chromium.org2010-02-031-1/+11
| | | | | | | | | TEST=built and ran on Linux and loaded a font that was not installed BUG=none Review URL: http://codereview.chromium.org/565013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38044 0039d316-1c4b-4281-b951-d872f2087c98
* linux: add an option to disable FBO support for platforms that don't have it.piman@google.com2010-02-014-3/+25
| | | | | | Review URL: http://codereview.chromium.org/551218 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37737 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: add missing -D to dpkg-buildpackage command line to enable build ↵tschmelcher@chromium.org2010-02-011-0/+1
| | | | | | | | | | dependency checks. TEST=removed cdbs, built, and verified a build-dep error is reported; trybot Review URL: http://codereview.chromium.org/552244 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37704 0039d316-1c4b-4281-b951-d872f2087c98
* Add Debian/Ubuntu packages back to Linux build.tschmelcher@chromium.org2010-01-2923-220/+245
| | | | | | | | | | | Thanks go to Jeff Bailey for writing most of this CL. Also, bump version to 0.1.43.1 so that it exceeds the version of the previous O3D packages. TEST=build, install, and run on Ubuntu Review URL: http://codereview.chromium.org/556071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37561 0039d316-1c4b-4281-b951-d872f2087c98
* linux: fixes for the glsl rendererpiman@google.com2010-01-295-10/+11
| | | | | | Review URL: http://codereview.chromium.org/549203 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37552 0039d316-1c4b-4281-b951-d872f2087c98
* Update O3D DEPS to pull in current Nixysa.maf@google.com2010-01-291-1/+1
| | | | | | Review URL: http://codereview.chromium.org/557052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37544 0039d316-1c4b-4281-b951-d872f2087c98
* fix v8 issues by not adding explicit () in eval unless it's necessary.piman@google.com2010-01-291-15/+20
| | | | | | Review URL: http://codereview.chromium.org/557055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37499 0039d316-1c4b-4281-b951-d872f2087c98
* linux: arm fixespiman@google.com2010-01-295-37/+6
| | | | | | Review URL: http://codereview.chromium.org/549104 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37497 0039d316-1c4b-4281-b951-d872f2087c98
* win: fix DXSDK include path, needs to be after platform sdk include pathpiman@google.com2010-01-286-5/+7
| | | | | | Review URL: http://codereview.chromium.org/554110 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37384 0039d316-1c4b-4281-b951-d872f2087c98
* force nacl_standalone=1 for windows - nacl needs itpiman@google.com2010-01-271-0/+3
| | | | | | Review URL: http://codereview.chromium.org/556037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37240 0039d316-1c4b-4281-b951-d872f2087c98
* linux: use internal libjpeg for bots that don't have itpiman@google.com2010-01-271-0/+1
| | | | | | Review URL: http://codereview.chromium.org/549169 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37230 0039d316-1c4b-4281-b951-d872f2087c98
* linux: roll deps for armpiman@google.com2010-01-274-10/+47
| | | | | | Review URL: http://codereview.chromium.org/552063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37225 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: fix crash in Firefox at plugin unload time when more than one O3D ↵tschmelcher@chromium.org2010-01-203-7/+21
| | | | | | | | | | | | instance is running. The problem here was that Firefox has a bug where closing a tab actually deletes the parent windows of the plugin _before_ calling NPP_Destroy(), and Gtk recursively destroys all children automatically. Hence, once NPP_Destroy() runs our X11 Window handle is already invalid. If there is another O3D instance running in the same browser process, then performing the TearDown() call requires a MakeCurrent() call on the Window handle, which will fail with GLXBadDrawable and kill the browser. The solution requires two things. First, to avoid Gtk recursively destroying the children, we explicitly open a separate X11 connection for our GtkPlug, which means a destroy on the parents does not automatically propagate to the children because it has to go through the X server first. Second, we register a callback with our GtkPlug to handle this event from the X server by turning our GtkPlug into a hidden unparented window rather than destroying it. Unrelatedly, also make fullscreen windows be set_keep_above and fix some spurious unref() calls (which produced warnings but otherwise were mostly harmless). TEST=opening and closing concurrent ping pong windows in FF and Chrome (64-bit) Review URL: http://codereview.chromium.org/553028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36650 0039d316-1c4b-4281-b951-d872f2087c98
* Adds the missing BoundingBox docs. gman@chromium.org2010-01-132-2/+2
| | | | | | | | | | | The issue was we use the marshaled type for classes that define a marsheled function and there are cases, like the boundingbox where we don't want that to happen. Review URL: http://codereview.chromium.org/548001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36071 0039d316-1c4b-4281-b951-d872f2087c98
* Fix docs typo "steam" -> "stream"gman@chromium.org2010-01-081-1/+1
| | | | | | Review URL: http://codereview.chromium.org/538001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35846 0039d316-1c4b-4281-b951-d872f2087c98
* This change removes CG from O3D and uses GLSLgman@chromium.org2010-01-0828-1172/+1938
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | instead of HLSL. The current "hack" for shaders is that the shader string you supply to Effect::LoadFromFXString requires the lines // #o3d SplitMarker \n" Above which is the vertex shader and below which is the fragment shader. Since GLSL has no semantics the names are used for semantics so to get an automatically supplied worldViewProjection you must name the uniform worldViewProjection as in uniform mat4 worldViewProjection Similarly for attributes (vertex streams) you must name them to match O3D semantics as in attribute vec4 texcoord1 attribute vec3 normal etc. Included in this is one working sample in o3d/samples/hellocube-glsl.html Other things: Added a glsl field to clientInfo so that a program can check if it needs to supply GLSL or HLSL. eg client.clientInfo.glsl == true Updated the O3D libraries to store that info in o3djs.base.glsl so that the libaries can be modified to supply GLSL if we want. Note: To run this on windows you must copy glew32.dll and glut32.dll to <AppData>...\Mozilla\plugins To get this to actually work in GLES2 will require (*) renaming a few functions (*) telling O3D there is no NPOT support or if possible no NPOT support unless the texture has only 1 level. (*) removing LargeGeometry and FloatingPointTexture support. (*) Making it link with the GLES2 code Review URL: http://codereview.chromium.org/527028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35845 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: implement setting cursor typetschmelcher@chromium.org2010-01-083-11/+83
| | | | | | Review URL: http://codereview.chromium.org/527024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35764 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: bring back the RPATH setting that was deleted by the GYP transition. ↵tschmelcher@chromium.org2010-01-062-6/+41
| | | | | | | | | | Also, make both it and the envvars path be configurable with GYP_DEFINES, and disable the envvars file by default for the Chrome built-in build (since we don't want an external file at /opt/google/o3d controlling Chrome's behaviour). Also specify --gc-sections for the shared library to reduce size. TEST=built shared library and verified that RPATH is set and envvars parsing is compiled-in; verified library is usable; verified that variables can be overridden; verified that --gc-sections reduces size Review URL: http://codereview.chromium.org/517052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35644 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Terence's namegman@google.com2010-01-061-1/+1
| | | | | | Review URL: http://codereview.chromium.org/515038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35621 0039d316-1c4b-4281-b951-d872f2087c98