summaryrefslogtreecommitdiffstats
path: root/o3d
Commit message (Collapse)AuthorAgeFilesLines
* Prep for moving Camera Info out of Params into JSONgman@google.com2009-07-2415-2/+1671
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I thought it was best to give you what I have so far for your input and code review instead of giving you everything all at once. This CL implements JSONObject which has a mechanism for adding stuff to be serialized as JSON to the serialization code. Since JSONObject is a serialization only object it seemed okay to put Serialize code inside. I opted to pre-declare JSONFloat and JSONOptionalFloat because I felt it made the code more error free. I had made it were you could just have JSONFloat and then with RegisterJSONValue you'd pass in optional or not but this way, declaring the field in a class makes it more explicit. CameraInfo is the first class that uses it. I'm not set on exactly how it is serialized. Whether it's as "object: { ... }" inside the "properties" section or whether it should have its own section. I think I won't know what until I actually write the deserialization code. That's not imporant for this CL This code, even if checked it, is not used yet as the import code, collada.cc, is not yet creating any of these objects. That's in another CL if you want to take a look http://codereview.chromium.org/160007 That CL will have to have lots of o3djs changes, corresponding sample changes and corresponding selenium test changes. Review URL: http://codereview.chromium.org/160008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21515 0039d316-1c4b-4281-b951-d872f2087c98
* Adding Bison and ANTLR grammars for GLSL ES. The grammars are derivedkbr@google.com2009-07-2412-0/+1747
| | | | | | | | | | | | | | | from the OpenGL ES specification and are intended to match the structure in the spec as closely as possible while working with existing tools. Hints were taken from the Mesa GLSL grammar, which uses a custom parser generator, to solve reduce/reduce conflicts in the Bison version. The grammars do nothing at the moment except parse inputs and provide rudimentary error reporting. Follow-on work will extend these grammars with the intended functionality. Basic testing has been done but much more is needed. Review URL: http://codereview.chromium.org/159324 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21499 0039d316-1c4b-4281-b951-d872f2087c98
* Adds in the ActiveX control for O3D.gspencer@google.com2009-07-247-15/+90
| | | | | | Review URL: http://codereview.chromium.org/160078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21492 0039d316-1c4b-4281-b951-d872f2087c98
* Add a boolean parameter to Client::RenderClient() to choose whether tomaf@google.com2009-07-237-18/+31
| | | | | | | | | | | | | | make the javascript render callback or not. Generally you want to pass true, but if the render is happening in non-windowed mode (eg on a Mac) and is in response to an update event rather than a timer, it can be useful to pass false to prevent the javascript code triggering another update and causing an infinite calback loop. Case in point is the custom camera example, which modifies some HTML form text fields on render callback, which on Firefox causes a plugin invalidation and round and round we would go. Review URL: http://codereview.chromium.org/159181 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21473 0039d316-1c4b-4281-b951-d872f2087c98
* Fix message queue test build breakage.gspencer@google.com2009-07-232-13/+15
| | | | | | Review URL: http://codereview.chromium.org/159315 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21471 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing several problems with the build.gspencer@google.com2009-07-234-5/+9
| | | | | | | | | | | | | - Had to make one line file_path_utils conditional on which build system was building it (because GYP build and scons build use different versions of chrome/base). - Missed a couple instances of "file/" in the path to nixysa. - New version of breakpad has a different API on the Mac. Review URL: http://codereview.chromium.org/160056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21470 0039d316-1c4b-4281-b951-d872f2087c98
* This switches the FindFileHelper to use the non-deprecatedgspencer@google.com2009-07-231-1/+1
| | | | | | | | GetComponents instead of the old file_util routine (which no longer exists). Review URL: http://codereview.chromium.org/159283 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21442 0039d316-1c4b-4281-b951-d872f2087c98
* Added primitives to IMC-based MessageQueue to allow clients,kbr@google.com2009-07-236-95/+784
| | | | | | | | | | | | | | | | | | | | | | rather than O3D, to allocate and register shared memory segments. This is required in order to work in Protected Mode Internet Explorer on Windows Vista and later. Fixed preexisting bugs in MessageQueue related to shared memory mapping failures and corruption of concurrent incoming messages. Added the MessageQueue unit tests and Chrome's ConditionVariable class to the build. These tests required restructuring and multithreading. Wrote simple framework which detects test failures and timeouts in child threads and reports them to the main thread. Restructured existing MessageQueue tests. Added unit test for Register/UnregisterSharedMemory and stress test for above concurrency bug. Buganizer ID: 1997023. Review URL: http://codereview.chromium.org/155947 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21426 0039d316-1c4b-4281-b951-d872f2087c98
* This updates the DEPS to bring them in line with the versionsgspencer@google.com2009-07-2325-51/+146
| | | | | | | | | | | that Chrome is currently using, and it removes "files" from the NPAPI include paths and file location in third_party so that we can be consistent with other Chrome third party directories. TEST=build using gyp and scons and ran unit tests on each. Review URL: http://codereview.chromium.org/159277 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21415 0039d316-1c4b-4281-b951-d872f2087c98
* This fixes some float/double warnings and converts everything to floats.gspencer@google.com2009-07-231-11/+11
| | | | | | Review URL: http://codereview.chromium.org/155953 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21407 0039d316-1c4b-4281-b951-d872f2087c98
* TBR=gspencer@google.comgman@google.com2009-07-231-0/+2
| | | | | | | Fix for mac/linux for FindFile test. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21378 0039d316-1c4b-4281-b951-d872f2087c98
* Add --file_paths to converter to allow converter to rungman@google.com2009-07-238-42/+233
| | | | | | | | | | | | | | | | | | | | with typical collada files found on the net. Often someone will export a collada file with absolute paths like "z:\someplace\somewhere\texture.tga" and "k:\shared\stuff\othertexture.tga" The converter needed a way to handle these without requiring an artist to manually edit XML files. I also refactored the original_data_ stuff to make sure we don't get 2 datas for the same path. I'm doing that in prepartion for shortening the paths where possible using base-path or some mechanism. Review URL: http://codereview.chromium.org/159118 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21352 0039d316-1c4b-4281-b951-d872f2087c98
* Modified the hud-2d-overlay sample to reset the icon transforms and preventvangelis@google.com2009-07-221-8/+13
| | | | | | | them from moving when running the selenium tests in order to get consistent snapshots. Review URL: http://codereview.chromium.org/155928 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21325 0039d316-1c4b-4281-b951-d872f2087c98
* Change bilinear interpolation to lanczos resampling,yux@google.com2009-07-226-599/+672
| | | | | | | and update related unit tests and selenium reference img. Review URL: http://codereview.chromium.org/159180 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21299 0039d316-1c4b-4281-b951-d872f2087c98
* These are gyp file changes that start to make the Mac GYP build work.gspencer@google.com2009-07-2212-35/+69
| | | | | | | | It still doesn't but I want to checkpoint these changes. Review URL: http://codereview.chromium.org/155890 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21279 0039d316-1c4b-4281-b951-d872f2087c98
* This fixes a number of things that are warnings in the Mac compiler.gspencer@google.com2009-07-2145-582/+616
| | | | | | | | | It fixes at least two real bugs, one in the tar generator, and one in stream_bank.h. Review URL: http://codereview.chromium.org/159168 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21227 0039d316-1c4b-4281-b951-d872f2087c98
* Modified generate-texture to turn off texture filtering when run in seleniumvangelis@google.com2009-07-213-2/+16
| | | | | | | | so that we get consistent results. Also bumped up the pdiff threshold for 2d sample on the mac to its previous number to get the test to pass until we fix it. Review URL: http://codereview.chromium.org/155885 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21223 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor tar code to support long names.gman@google.com2009-07-217-65/+189
| | | | | | | | | | | | | | | | | | | | The previous code only support names up to 99 chars. This one supports up to 1024. The code actually supports 32bit length but given that Linux, OSX and other only support 255 I set it 1024. Why 1024? Because Windows actually supports 255 wchar characters which when converted to utf-8 could be up to 1024 bytes. I'm not 100% sure the format is correct. I could not find any docs on the format, Just reverse engineered it. Looking at hex dumps by both 7zip and gnu tar it was pretty clear what it does including zeroing many of the standard fields. Review URL: http://codereview.chromium.org/159129 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21210 0039d316-1c4b-4281-b951-d872f2087c98
* Delete bad sleep based testsgman@google.com2009-07-211-21/+0
| | | | | | | | | | | If you need the tests, refractor them to follow the guidelines instead of having them fail intermittently http://big.corp.google.com/~joejoejoe/testing/2008/05/episode-90-sleeping-synchronization_27.html Review URL: http://codereview.chromium.org/159117 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21209 0039d316-1c4b-4281-b951-d872f2087c98
* Fix for keys not working when plugin has focus in pingpong sample.apatrick@google.com2009-07-211-15/+4
| | | | | | | | http://code.google.com/p/o3d/issues/detail?id=67 Review URL: http://codereview.chromium.org/155872 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21208 0039d316-1c4b-4281-b951-d872f2087c98
* o3djs.utils.makeClients checks that Renderer has been initialized.apatrick@google.com2009-07-211-1/+5
| | | | | | | | Prevents case where init callback is called before NPP_SetWindow (which initializes the renderer). Review URL: http://codereview.chromium.org/155716 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21188 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes for selenium test failures. Using the color factor to correct color ↵vangelis@google.com2009-07-212-4/+4
| | | | | | | | | | differences in 2d sample. Increasing the pixel diff threshold for texturesamplers and zsorting to its previous glory until we figure out what the proper values are. Bumping up DEPS for assets to pick up new reference image for zsorting sample. Review URL: http://codereview.chromium.org/159120 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21149 0039d316-1c4b-4281-b951-d872f2087c98
* Update deb package version to 0.1.40.0-1 and add some code to produce an ↵tschmelcher@google.com2009-07-202-5/+41
| | | | | | | | error if it ever gets out of sync with the plugin version in the future. We can't really update the deb package version automatically because packages ship with a changelog that needs to be updated by a human to describe changes in each new release. Hence it will now be necessary to update the Debian changelog when bumping the plugin version. Review URL: http://codereview.chromium.org/155728 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21105 0039d316-1c4b-4281-b951-d872f2087c98
* Update the nacl part of the gyp build so it works correctly for tests,gspencer@google.com2009-07-202-7/+6
| | | | | | | and so it doesn't have a hard-coded path to python... Review URL: http://codereview.chromium.org/159093 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21098 0039d316-1c4b-4281-b951-d872f2087c98
* The compiled version of the o3djs libs WORK!gman@google.com2009-07-2026-29/+314
| | | | | | | | | | | | | | | | | | | Sadly there is some really strange voodoo to make it work. util.js was using document.getElementsByTagName('script') and it was not returning all the scripts. Lots of dump() lines later the voodoo of calling document.getElementsByTagName('script').length (the length is important) in some place earlier in the code fixes the issue. Also, added the copyright to the compiled file Added parameter docs Review URL: http://codereview.chromium.org/159049 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21085 0039d316-1c4b-4281-b951-d872f2087c98
* Added code to exit fullscreen mode if the underlying plugin window is being ↵vangelis@google.com2009-07-181-0/+4
| | | | | | | | | | | messed with. This fixes the following GTV bug: http://b/issue?id=1980996 Review URL: http://codereview.chromium.org/155614 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21028 0039d316-1c4b-4281-b951-d872f2087c98
* add ignore_edge option in test list.yux@google.com2009-07-173-44/+64
| | | | | | Review URL: http://codereview.chromium.org/151060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21026 0039d316-1c4b-4281-b951-d872f2087c98
* Updated DEPS to get new shadow map screenshot (with the right name this time)petersont@chromium.org2009-07-171-1/+1
| | | | | | Review URL: http://codereview.chromium.org/155724 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21019 0039d316-1c4b-4281-b951-d872f2087c98
* Shader in shadow-map.html constructed a float4 with a single argument. ↵petersont@chromium.org2009-07-171-1/+2
| | | | | | | | Avoiding that so the shader compiles as hlsl. Review URL: http://codereview.chromium.org/155718 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21016 0039d316-1c4b-4281-b951-d872f2087c98
* Add RawData request in preparation for manual loading ofgman@google.com2009-07-179-39/+281
| | | | | | | | | | | | | | | | | | | | | | | | | | | Bitmaps and being able to flip them, scale them, etc... Basically this just makes it possible to download a RawData directly which you can then pass you'll be able to pass to pack->CreateBitmapFromRawData. Some design comments: I used SetFromFile instead of making a different constructor since it seemed wrong to do file IO in a constructor. Given that SetFromFile is private I don't think this is a problem since you can't call it directly. Also, I thought about loading the file first and then calling the original constructor but it seemed like a waste to load the file into memory, then copy it to a new buffer when I could just load it directly. Finally I made it take a String instead of a FilePath because it meant other places had to do less work. Review URL: http://codereview.chromium.org/149784 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21015 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: Adding conflicts with the ubuntu packagepiman@google.com2009-07-171-0/+2
| | | | | | | Review URL: http://codereview.chromium.org/155710 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21001 0039d316-1c4b-4281-b951-d872f2087c98
* Added a new sample which implements basic shadow mapping.petersont@chromium.org2009-07-176-5/+655
| | | | | | Review URL: http://codereview.chromium.org/155401 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21000 0039d316-1c4b-4281-b951-d872f2087c98
* O3D 64-bit Linux: Symlink the 32-bit plugin into the plugin install dirs too ↵tschmelcher@google.com2009-07-173-8/+7
| | | | | | | | so that it will work OOB for users that have installed 32-bit browsers on 64-bit systems (e.g., Swiftfox). Review URL: http://codereview.chromium.org/155705 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20998 0039d316-1c4b-4281-b951-d872f2087c98
* Change revision number in deps and deps_gyp after commit pdiff in ↵yux@google.com2009-07-172-2/+2
| | | | | | | | third_party folder. Review URL: http://codereview.chromium.org/155699 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20976 0039d316-1c4b-4281-b951-d872f2087c98
* missing filegman@google.com2009-07-171-0/+33
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20939 0039d316-1c4b-4281-b951-d872f2087c98
* JSCompiler fixesgman@google.com2009-07-168-72/+225
| | | | | | | | | | | | | | | | | *) Generate goog.exportSymbol for all o3djs classes, methods and properties so the JSCompiler does not delete them *) Remove goog.exportSymbol from the compiled result. *) Remove o3djs.require from the compiled result. *) Add docs to undocumented items in o3djs. Review URL: http://codereview.chromium.org/155665 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20919 0039d316-1c4b-4281-b951-d872f2087c98
* Some security fixes for Skin and Curve deseralization.gman@google.com2009-07-164-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Both Curve and Skin have the issue that the format does not store any kind of length. So, I serialize a Skin to binary, followed but some other data in the same binary. Then at runtine I can deserialize the Skin and call mySkin.setFromRaw(rawData, validOffset, INVALID_LENGTH) At which point there the possibility, how ever small, that the skin deserialization code will read into the next chunk of binary data in the RawData. Data that does not belong to it. The best solution IMO would be to add a length or count to the Skin and Curve formats since then, like Buffer, it would know exactly how much data is expected and if the length passed in does not match the length the format says it needs it would fail. Unfortunately, that would break all assets out there. This fix just makes sure that if we do get any kind of error the data is not left in the Skin or Curve like it was before. Should probably do the same with Buffer. Review URL: http://codereview.chromium.org/155599 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20841 0039d316-1c4b-4281-b951-d872f2087c98
* This changes how we do gyp targets that generate code because GYP isn'tgspencer@google.com2009-07-163-233/+86
| | | | | | | | | | yet consistent across platforms, and the old way won't work on the Mac. Also, updated to include bitmap.idl in the idl build, and fixed a signed/unsigned mismatch warning in bitmap.cc Review URL: http://codereview.chromium.org/155612 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20830 0039d316-1c4b-4281-b951-d872f2087c98
* quick fix for bad checkingman@google.com2009-07-151-3/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20813 0039d316-1c4b-4281-b951-d872f2087c98
* More docs changes.gman@google.com2009-07-1511-56/+307
| | | | | | | | | | | | | | | *) Made enums show up *) Right justified return type *) moved class name to right column in summary area *) pretty print code examples *) changed [inherited] to [inhertied from <class>] *) Changed name in details area to Class.Name or Namespace.Name *) Add subtypes so ParticleEmitter shows up in docs for o3djs.particle *) Grabbed new nixysa so properties show up Review URL: http://codereview.chromium.org/155600 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20806 0039d316-1c4b-4281-b951-d872f2087c98
* Fix createCheckerMaterial to use same colors as it original used.gman@google.com2009-07-153-6/+6
| | | | | | | | | and increase timeout for Google IO step14ex. Also make old-school-shadows use createCheckerMaterial Review URL: http://codereview.chromium.org/155554 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20800 0039d316-1c4b-4281-b951-d872f2087c98
* A few more bitmap fixes for the GL buildvangelis@google.com2009-07-151-4/+4
| | | | | | Review URL: http://codereview.chromium.org/149684 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20754 0039d316-1c4b-4281-b951-d872f2087c98
* Update the archiving for Hive runs to work from Buildbot. Remove deadlock ↵thomaslewis@google.com2009-07-152-16/+45
| | | | | | | | from Selenium tests if no free ports are available. Review URL: http://codereview.chromium.org/149596 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20741 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes for bitmap and GL/CBgman@google.com2009-07-157-109/+114
| | | | | | Review URL: http://codereview.chromium.org/155556 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20713 0039d316-1c4b-4281-b951-d872f2087c98
* expose bitmap in js.yux@google.com2009-07-1529-570/+2019
| | | | | | Review URL: http://codereview.chromium.org/150058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20700 0039d316-1c4b-4281-b951-d872f2087c98
* This adds some infrastructure for building O3D as part of the Chrome build,gspencer@google.com2009-07-153-16/+31
| | | | | | | | | | | and fixes some of the "AdditionalDependencies" tags to be just generic 'libraries' tags to be more general. TEST=none BUG=none Review URL: http://codereview.chromium.org/149650 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20688 0039d316-1c4b-4281-b951-d872f2087c98
* Lots more docs changes.gman@google.com2009-07-1415-45/+242
| | | | | | | | | | | | | | | | | | | *) added stylesheet.css, tabs.css, tab_?.gif back in *) refactored so classtree.html splits names that are too long. *) removed constructor docs and source link from o3d docs (vs o3djs docs) *) fixed paths in header.html. They used to be statically included but now that they are used by both o3d and o3djs they needed to have certain paths fixed dynamically. *) Pull in new nixysa. Review URL: http://codereview.chromium.org/155526 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20645 0039d316-1c4b-4281-b951-d872f2087c98
* StreamOperation gets url scheme from full path rather than relative path. ↵apatrick@google.com2009-07-141-11/+12
| | | | | | | | Fixes IE. Review URL: http://codereview.chromium.org/155521 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20639 0039d316-1c4b-4281-b951-d872f2087c98
* This splits the import.gyp file into two parts (one for building archive lib,gspencer@google.com2009-07-147-76/+186
| | | | | | | | | | and one for building import lib), so that the chrome build can depend only on the archive.gyp file to reduce its dependencies. It also adds a missing gyp file for the tests. Review URL: http://codereview.chromium.org/149623 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20638 0039d316-1c4b-4281-b951-d872f2087c98
* Yet more docs.gman@google.com2009-07-143-11/+27
| | | | | | | | | | | | Changed to put them in a folder called "reference" since that is what Josie needs to publish without renaming. Also fixed a few path issues. Review URL: http://codereview.chromium.org/155467 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20582 0039d316-1c4b-4281-b951-d872f2087c98