145 Commits
Author SHA1 Message Date
alteredq 8ec6317ef8 Added BufferGeometry for direct rendering from typed arrays.
Work in progress. For the moment works just with CTMLoader. Still not sure where some pieces of code would go.

Upsides:
	- initialization time cut down significantly (1.8 seconds => 0.7 seconds for CTM example)
	- much smaller GL buffers thanks to fully used indexing (Walt has 6x less vertices)
	- consequently much smaller memory footprint all around, both for main and GPU memories,
	  which means less swapping and better vertex caching

Downsides:
	- can't have anymore sharp per-face effects like flat shading (at least if mesh is not constructed in a way where each face has own vertices)
	- can't have multiple materials per mesh
	- no more easy manipulation of anything (for the moment actually no runtime manipulation at all, typed arrays are just thrown away, dynamic geometries code path not yet implemented)
2011-12-07 01:47:39 +01:00
Erik Kitson cbccd87d57 Reverted changes to Animation class and moved to new KeyFrameAnimation class. 2011-11-21 14:07:47 -08:00
alteredq e207f5e852 Changed lights to use global positions.
This should allow attaching of lights to objects. As a side effect, directional lights positions don't need to be normalized explicitly anymore.

Also changed viewport dimensions passed to render plugins to work with render targets with different dimensions than the screen framebuffer.

And fixed new dependencies in build script.
2011-11-20 20:18:16 +01:00
alteredq 0c78ae95e9 Rest of the commit.
Because TortoiseGit suddenly refuses to make single commit with added and changed files :/
2011-11-18 23:56:45 +01:00
alteredq 1dcf5fc79b Moved sprite handling into plugin.
Work in progress. Still just experimenting. Probably will make some auto-adding of plugins.
2011-11-18 05:08:40 +01:00
alteredq ebf93289f8 Resurrected lens flares as custom plugin.
Still a bit dirty but less than it was before. Maybe also sprites could be pluginized.
2011-11-18 01:26:20 +01:00
Mr.doob 18ff7e8068 Removed Collisions from build.py too 2011-11-13 21:41:04 +01:00
Mr.doob af2919bc17 Adding RenderableObject once again.
It's going to be handy for the WebGLRenderer (__webglObjects)
2011-10-24 14:23:12 +02:00
Mr.doob 6b151b552e Merging with @alteredq's experimental branches. 2011-10-23 12:34:46 +02:00
Mr.doob 8edb3f18b2 Removing (now unused) stuff from Projector. 2011-10-09 07:11:19 +02:00
zz85 149c20d177 Added new THREE.CombinedCamera. Added orthographic + perspective example 2011-10-06 00:55:26 +08:00
zz85 f8df307438 Removed THREE.SubdivisionGeometry. A tiny bit of cleanup 2011-10-04 22:46:34 +08:00
zz85 a88848ab1d Added THREE.SubdivisionModifier. Removed THREE.GeometryUtils.createSubdivision() 2011-10-04 22:25:52 +08:00
zz85 a6eb8106a2 merged mrdoob/dev 2011-10-04 21:25:44 +08:00
Mr.doob a336a5c124 Added deprecated warning to old cameras. 2011-10-04 02:30:22 +02:00
Mr.doob df64ff921f extras/cameras/*Cameras > extras/controls/*Controls
This will take a while to make work again... probably needs some cleaning and refactoring...
2011-10-04 02:18:15 +02:00
Mr.doob 5d96f15b39 Started doing Camera changes.
* Camera is now a base object. PerspectiveCamera should be used instead. Figured out a way to show a warning when misused.
* OrthoCamera is now OrthographicCamera.
* Removed `target` from Camera.

Misc
* Renamed Trident to Axes.
2011-10-04 01:07:24 +02:00
Mr.doob 69da8d2e1f Merge remote-tracking branch 'Knectar/dev' into dev 2011-10-03 23:31:41 +02:00
Daniel 5ef31d7fe8 Remove Sphere class. Give radius to octahedron. 2011-10-03 11:12:37 +01:00
zz85 b4332d6a24 added more generic geometry creation functions in canvas_geometry_subdivison.html 2011-10-03 07:18:55 +08:00
Daniel dad2146d79 Include new Sphere class in build. 2011-10-02 22:33:07 +01:00
Daniel 2d4ea9cedd New Sphere class that uses a subdivided octahedron geometry. 2011-10-02 22:28:36 +01:00
Mr.doob 36ae04418c Fixed yet some more examples.
Removed QuakeCamera.
2011-10-01 23:38:26 +02:00
zz85 0f9c3f44ee Merge remote-tracking branch 'upstream/dev' 2011-09-30 22:04:16 +08:00
alteredq 32e4a556ca Added CubeCamera (for rendering cube maps). 2011-09-30 00:20:22 +02:00
zz85 8edfa99583 Rename SubdivisonGeometry.js to SubdivisionGeometry.js. Fix geometries which use duplicate vertices. SubdivisionGeometry tested with Cube/Sphere/Cylinder/TextGeometry 2011-09-29 17:15:41 +08:00
zz85 670ebf6139 Fixed SubdivsionGeometry points. Added class, update builds 2011-09-29 04:38:56 +08:00
Mr.doob b6f7444b0f Added deprecated warning to MeshShaderMaterial class. 2011-09-14 17:48:26 -07:00
alteredq e298ac6814 Renamed MeshShaderMaterial => ShaderMaterial 2011-09-12 19:17:20 +02:00
Justin Sermeno 8ca569f9ba fix broken ThreeWebGL.js build 2011-09-10 02:43:19 -07:00
Mr.doob 51368ca6d6 REVISION ++ 2011-09-04 00:47:01 +02:00
Mr.doob 94b7418f60 Added objec3d.frustumCulled support to Projector (CanvasRenderer/SVGRenderer).
`renderers/Projector.js` > `core/Projector.js`

`extras/geometries/Curve.js` > `extras/core/Curve.js`
`extras/geometries/CurvePath.js` > `extras/core/CurvePath.js`
`extras/geometries/Path.j`s > `extras/core/Path.js`
`extras/geometries/Shape.js` > `extras/core/Shape.js`
`extras/geometries/TextPath.js` > `extras/core/TextPath.js`
2011-09-03 21:58:18 +02:00
alteredq 495de75ff2 Added OrthoCamera.
Modified examples to use it, hacking projection matrix started to feel a bit dirty.
2011-08-29 10:34:18 +02:00
Mr.doob 7c7d4428f2 Moved src/materials/Mappings.js inside src/materials/Texture.js
Moved `src/materials/*Texture.js` to `src/textures/*Texture.js`
2011-08-29 05:18:25 +02:00
Mr.doob 8fd041508f extras/io > extras/loaders
extras/collada/dae.js > extras/loaders/ColladaLoader.js

removed LoaderOld.js
2011-08-26 23:44:47 +02:00
alteredq 4336d757ac Added WebGLRenderTargetCube.
Work-in-progress.
2011-08-26 19:40:56 +02:00
Mr.doob 714e9ec302 REVISION++
* Added support to texture.offset in CanvasRenderer
* Removed ShadowVolume, ShadowVolumeDynamicMaterial and LensFlare classes.
* Removed Stencil Shadows and LensFlare code out of WebGLRenderer
* Added 2.59 folder to Blender, and removed old ones.
2011-08-14 02:54:23 +02:00
alteredq d5a54e0a4e Added UTF8 format loader and example.
Included corresponding compressor in "utils/exporters/utf8" (prebuilt exe for Windows plus slightly modified C++ source code).

Use UTF8 format with caution, it is very neat but has quite a few limitations:

 - number of vertices < 65536 (this is after optimizations in compressor, input OBJ may have even less)
 - models must have normals and texture coordinates
 - texture coordinates must be only from <0,1>
 - no materials support yet
 - models are scaled and offset (copy numbers from compressor and use them as parameters in UTF8Loader.load() )
2011-08-13 02:00:25 +02:00
zz85 0824c15a51 Curves refactored - addition of curve path, tangent finding, along with other bend changes and enhancements i may not remember 2011-08-12 13:35:09 +08:00
alteredq 01bebe5c40 Added DataTexture, for creating textures out of raw data.
DataTexture can be used in the same places like image / video based Texture (WebGLRenderer-only).

To be used like this:

var width = 64, height = 64, bytes = 3;
var data = new Uint8Array( width * height * bytes );

// fill data array with values 0 .. 255

var texture = DataTexture( data, width, height, THREE.RGBFormat );
texture.needsUpdate = true;

For the moment only UNSIGNED_BYTE type is supported.
2011-08-03 00:50:43 +02:00
alteredq c0d371be7c Merged with zz85's shape / path / extrude / bevel / text updates.
- moved 3d-only text parameters from TextPath into TextGeometry
- added safeguard for bevelSize and bevelThickness not affecting shape size if bevel is disabled
- updated text examples as now TextGeometry is not anymore centered
2011-07-28 19:19:52 +02:00
zz85 faf189c3dc Some refactoring + cleanup for TextPath, Geometries, Shapes 2011-07-28 03:56:21 +08:00
alteredq 77341c86b1 First attempt at shadow mapping (work-in-progress). 2011-07-27 01:35:44 +02:00
zz85 e37a02805a Updated Extrude Shape Examples 2011-07-21 14:23:45 +08:00
alteredq 23e315cb33 Merged zz85's Path / Shape / Extrude geometry. Cleaned up and refactored it a bit.
All three classes are now in separate files.
Updated build script.
Fixed runaway globals.
Optimized loops ("in" should be used just for iterating over object properties, for arrays it's slow and also traversal order is not guaranteed).
Cleaned whitespace.
Bit more polished example.
Fixed inverted side faces for fish shape.
2011-07-12 00:46:57 +02:00
Mr.doob a5b7ea85a9 Removed Sound object and SoundRenderer.
Updated misc_sound example with same functionality.
2011-07-03 15:10:28 +02:00
Mr.doob 176d0f2884 Merging with @alteredq's branch. 2011-07-03 12:56:50 +02:00
Chris Killpack d311d0e674 Rename QuakeCamera to FPCamera.
Add QuakeCamera alias for backwards compatibility.
2011-06-28 21:49:33 -07:00
Mr.doob b61ee54f27 Renamed all extras/geometries. 2011-06-10 17:09:47 +02:00
alteredq d2cbf83dd3 Merged zz85's 3d text pull request, cleaned up THREE.Text code. 2011-06-03 20:31:35 +02:00