| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/515038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35621 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This step does only copies the GL files to
a GLES2 folder. It's still actually the GL renderer
at this point but it's the smallest step for
getting something that builds and a place to
start working.
The next step will be to rename all the
classes from xxxGL to xxxGLES2
At some point CG will be removed as well
One other thing slipped in there. A standalone
build path to help generate a C++ only example
of using O3D. It's currently only a placeholder.
Review URL: http://codereview.chromium.org/500070
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34744 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Creates a consistent setup for the shaders.
Allows us to use phong or constant shaders or both, and still do highlighting correctly.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/492026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34416 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
included from a js file.
There is only one function that is specialized for each sample. The function is referenced in the js file but not defined. It is then defined in each html file.
R=kbr
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/487019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34312 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
tbr=kbr
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/487013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34266 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Added optional line stippling based on texCoords to the rotate1 line ring shader.
- Redesigned the CameraController and added the ability to zoom, dolly, dolly-zoom, and pan using the mouse.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/486003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34235 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
manipulators.
I only did it on the rotate1 manipulators
because it was easy. On the translate ones
you either need to put each shape on it's own
transform so you can set the parameters different
or you need the materials to use different named
parameters.
Review URL: http://codereview.chromium.org/463025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33900 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The issue was that lineprimitves.js creates
an object that inherits from something in
primitives.js but because it appeared first
in the compiled version the inherit command
failed since the object it inherited from
was not yet defined.
It might be possible to make build_docs.py
move all the inherit commands to the end
of the compiled o3djs libs. I'll have to
look into it.
In the meantime here is a manual fix.
Review URL: http://codereview.chromium.org/464030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33773 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
geometry.
- Creates a basic CameraController class. It allows the user to rotate the camera around a center position using the mouse, and outputs a view matrix.
- Changes the Rotate1 manipulator to display as line geometry. Adds a line ring primitive and a special shader.
- Merges changes to Rotate1 sample into Translate1+2 samples as well. We probably should refactor the samples so we don't have duplicate code.
R=gman,kbr
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/465023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33747 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
I missed one of your comments in the last CL
Review URL: http://codereview.chromium.org/464009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33636 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
support both not picking invisible objects and
the option to pick even if invisible.
The idea is you can do something like this
// Make a picking manager
var pm = o3djs.picking.createPickManager(rootTransform);
... // add a bunch of transforms.
// generate picking objects.
pm.update();
// Get the picking object that was created for some specific transform
var info = pm.getTransformInfo(someTransform);
// Set properties on that object related to picking
info.pickEvenIfInvisible = true;
I think this is just a first step. How an object should
be defined as pickable is up for debate. As it is,
you can basically override info.isPickable.
as in
info.isPickable = function() {
// do something custom.
}
You can also start adding things easier like
info.onPick = function() {
// do something.
}
and then write code like
info = pm.pick(worldRay);
if (info) {
info.onPick();
}
While you could have done that before there was no
easy way to find a the TransformInfo for a
specific Transform. Now you can use
PickManager.getTransformInfo
Review URL: http://codereview.chromium.org/452027
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33632 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Fix for last CL
I was testing in the wrong client :-(
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33388 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
the implemtation of createShape
Review URL: http://codereview.chromium.org/453010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33367 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
and into lineprimitives.js.
I refactored to code to share a lot of stuff
with primitive.js.
Review URL: http://codereview.chromium.org/435039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33041 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a separate transform graph and render graph from
the main scene's.
two more things
1) added a scale to one transform in the scene
to show an issue with manipulators that might
need to be fixed
2) changed the material used by the manipulators
to be constant. This is on the path to making
the manipulators be line primitives instead
of geometry.
Review URL: http://codereview.chromium.org/434060
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33040 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
space).
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/413007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32958 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/395012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32596 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/382001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31841 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
files with these names / extensions.
c
cc
h
mm
txt
idl
py
js
html
css
gyp
gypi
xml
shader
json
htm
README
DEPS
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31811 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This CL enables a 64-bit of linux. Set target_arch='x64' in the gyp defines to enable.
- fixes a few 64-bit issues
- fixes some linux build issues on scons vs make
- add rules to build 64-bit version
Review URL: http://codereview.chromium.org/371078
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31642 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
This reverts svn://chrome-svn/chrome/trunk/src/o3d@31356
Review URL: http://codereview.chromium.org/372043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31364 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This CL enables a 64-bit of linux. Set target_arch='x64' in the gyp defines to enable.
- fixes a few 64-bit issues
- fixes some linux build issues on scons vs make
- add rules to build 64-bit version
Review URL: http://codereview.chromium.org/376010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31356 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
The if was wrong. If the jscompiler exists we DON'T
want the non-compiled files.
Review URL: http://codereview.chromium.org/342108
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30895 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
o3djs files and build / selenium to use
compiled o3djs libs.
Review URL: http://codereview.chromium.org/353017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30838 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
with ".manifest", since we no longer have a scons build.
We should probably change the code that parses these to be simpler someday.
Review URL: http://codereview.chromium.org/341073
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30774 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
over to GYP. It also copies the contents of DEPS_gyp to DEPS, and
removes the DEPS_gyp file.
Review URL: http://codereview.chromium.org/354011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30729 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This seems to be needed for 64-bit.
BUG=None
TEST=None
TBR=gman
Review URL: http://codereview.chromium.org/328021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30013 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/328019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29974 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
been removed from svn
Review URL: http://codereview.chromium.org/319004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29925 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
DrawPassInfo.destroy was not correctly deleting things.
Review URL: http://codereview.chromium.org/297016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29567 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/307007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29548 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Fix big causing Canvas sample to crash.
Review URL: http://codereview.chromium.org/303008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29477 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
as that has been deprecated.
Review URL: http://codereview.chromium.org/274042
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29070 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/269055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28741 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
input elements.
Review URL: http://codereview.chromium.org/271023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28421 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
comments in http://codereview.chromium.org/251097 .
Review URL: http://codereview.chromium.org/243111
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28181 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for landing in Chrome.
The biggest pieces here are moving some of the third party
dependencies back into o3d/third_party because they need
to be distinct from the chrome versions of the same packages,
and because O3D is the only one using the dependency.
(NPAPI in particular).
Also the plugin gyp file is now modified so that it can handle
being part of both a chrome developer tree and an o3d developer
tree (in the latter case, it generates the plugin and installer, in
the former it does not)
BE AWARE that this change will change the main solution/xcodebuild file
from "build/all" to be "build/o3d", but rebuilding from gyp files will NOT
remove the old "build/all" one, so you might be tricked into opening the
wrong one.
Review URL: http://codereview.chromium.org/256081
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28169 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/251097
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28132 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=successful builds
Review URL: http://codereview.chromium.org/256059
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28089 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
and tweaks some values.
Review URL: http://codereview.chromium.org/242087
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27693 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
only in Chrome).
The problem had to do with the translation of the key codes. There's another issue that surfaced
with the event.js code in IE when the events are handled by methods running in V8. In that situation
it appears that event.keyIdentifier isn't actually a string and IE barfs when we call keyIdent.indexOf(). I added
a check to make sure it's a string but I don't know if the fix really belongs somewhere in the V8 / IE bridge
Review URL: http://codereview.chromium.org/218002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27308 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the latest jscompiler.
There were a few issues.
For some reason o3djs.math.matrix4 was not working
in ff3.0 when compiled. I spent about 8 hours trying
to reproduce the issue in a small case but had no luck.
I finally just tried changing original code and it work.
In the process of trying to figure that out I got the
latest jscompiler and found there were a bunch of other
problems with our js code which are now fixed.
Also found out I was incorrectly striping @o3dparameter
tags from our code in build_docs.py
Also, I learned that properties of objects are strings
when returned in an "in" statement as in
for (key in object)
key is a string regardless of what each key is in
object.
Review URL: http://codereview.chromium.org/200089
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25944 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25547 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and deserializer. This CL still creates a o3dtgz
file, it's just that buffers, skins and curves are
stored in JSON instead of binary.
I'm not sure how useful this is but it seemed like
a possible short cut to testing out some stuff.
Another CL will add some flag so there is no
gzipped tar file, just the json.
Review URL: http://codereview.chromium.org/189003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25523 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
including some problems with the samples and idl generation.
Selenium targets launch selenium on all platforms, but the tests don't
pass anywhere but Windows yet because the plugin isn't found.
I'll work on that next.
Review URL: http://codereview.chromium.org/197014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25467 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Translate1 manipulator, which implements dragging along a line, and
helper and base classes. This is a work in progress; feedback
appreciated.
Fixed problem in recently changed documentation in primitives.js.
Minor documentation cleanup in primitives.html.
Review URL: http://codereview.chromium.org/178044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25152 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
appropriate.
A few places used pseudoRandom. That is in math.js
now so they use that.
Other places there is now
o3djs.material.createBasicMaterial and
o3djs.material.createMaterialFromFile that save
10-20 lines per sample.
This CL will require new reference images.
There are 2 other things I'd like to consider.
#1) Changing every sample that uses shaders/texture-only.shader
to use o3djs.material.createConstantMaterial or some variation.
The problem with o3djs.material.createConstantMaterial is it
requires you pass it a texture if you want a constant textured
material. All the samples create the material first, then
later add the texture.
So, I could add a new o3djs.material.createTextureOnlyMaterial.
At the same time that would mean changing those samples from
setting stuff on 'texSampler0' to 'emissive'
#2) I'd like to change the shader builder so it stops
adding "Sampler" to textured materials. As it is if
the material uses a color it makes the param called "diffuse"
but if it's a texture it makes it "diffuseSampler".
That sucks because it means the code has to do crap like
var param = material.getParam('diffuse');
if (param) {
// it's a color
} else {
param = material.getParam('diffuseSampler');
if (param) {
// it's a texture.
}
}
If we stopped that silliness we could just do
var param = material.getParam('diffuse');
if (param) {
if (param.isA('o3d.ParamTexture')) {
// it's textured.
} else {
// it's not.
}
}
Unfortunately to fix this requires changing the o3dConverter
as well since it uses those conventions. Should we do this?
Review URL: http://codereview.chromium.org/182024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25015 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This is partly so video can distinguish between
0.1.41 which they pushed internally and 0.1.42 which
will be our next push.
Review URL: http://codereview.chromium.org/179015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24782 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24592 0039d316-1c4b-4281-b951-d872f2087c98
|