Commit Graph

28 Commits

Author SHA1 Message Date
Robert Osfield
ee35f18acb From Mathias Froehlich, replaced assert with notify() error message. 2006-11-15 10:08:09 +00:00
Robert Osfield
2b28b472b4 From Mathias Fröhlich, fixed order of setting of texture image. 2006-11-14 19:19:15 +00:00
Robert Osfield
0c6a05392b From Mathias Froehlich, "Improovments:
- does proper edge detection with the crease angle given in the ac file
- the reader is much more verbose in case of broken files
- no more static variables
- std::stream based
- much faster, up to a factor of 50 for a polygonal test model
- if the file contains polygonal surfaces the loaded geometry is still
polygonal as long as the polygons are convex. Concave polygons are still
tesselated. Rationale: If the user needs triangular models he can throw away
that extra information with the osgUtil::Optimizer himself. But the read step
preserves as much extra information that is contained in the file as
possible. Also the polygonal models look a bit smoother than the triangular
ones.
- a huge cleanup
- the basic parsing logic from the original ac3d developer is untouched
- the writer part is untouched

The tarball contains a replacement for the src/osgPlugins/ac3d directory that
is based on the current CVS (2006-11-13).
I have tested that loader with a osgconv foo.ac /tmp/xx.ive on everyfoo. ac
file I could find (~200 from flightgear and the object database). I also run
my flightgear development with that loader -> here I see the models.
I run valgrind testcases on some selected models."
2006-11-14 16:37:07 +00:00
Robert Osfield
c8e7a9ea40 From Roger James, improved mapping of AC3D lighting model to OSG 2006-08-28 19:07:30 +00:00
Robert Osfield
a95b7fbfae Added dummy initializers to avoid warning 2006-07-19 14:30:30 +00:00
Robert Osfield
02f5681180 From Roger James, "1. Fixed a problem with the caching of textures when the associated image file was not in the current working directory. In this case the texture object was being placed in the cache with the short filename, but was looked up with the full path.
2. Fixed a problem with the caching of textures when CACHE_IMAGES was enabled. This caused a conflict is the names used to cache the image and texture objects.

3. Fixed a problem where AC3D generates surfaces with duplicate vertex indices.

4. Removed what I believe are redundant calls to the tesselator.

5. Added a couple of asserts which should fire in debug mode if my assumptions about 4. are incorrect.

6. Removed obviously unused code. (Stuff that was commented or ifdeffed out.)"

Note, from Robert Osfield, changed the asserts to if () report error using notify so we can catch errors in both optimized and debug builds, but without crashing.
2006-03-08 15:16:59 +00:00
Robert Osfield
facb0e2638 From Pavel Moloshtan, Byte2,3,4 and Short2,3,4 classes and their Array counterparts.
With a few build tweaks and bug fixes by Robert Osfield.
2005-07-05 15:57:53 +00:00
Robert Osfield
81f60233a9 From Geoff Michel :
ac3d loader - better sharing of states between objects and Roger James' bug fix for missing normals.

  Tesselator.cpp - faster processing of polygon tesselation for single triangles (which dont need to be tesselated)

  osgtesselate.cpp - added wrap for texture so that appearance is as originally. Default texture behaviour has changed to clamp."
2005-04-30 13:54:21 +00:00
Robert Osfield
8c5842115f Added check against ac as extension. 2005-01-03 11:20:21 +00:00
Robert Osfield
d9b9a6f1f8 Made read/write methods in ReaderWriter all const to facilate multi-threading 2004-11-23 15:29:52 +00:00
Robert Osfield
5c5ceef90d Added support for local relative paths 2004-11-23 10:46:37 +00:00
Robert Osfield
ce07879e2e Moved plugins across to using ReaderWriter::Options* for search paths in addition
to standard osgDB::DataFilePaths
2004-11-22 23:54:45 +00:00
Robert Osfield
1f5b044c71 Made ReaderWriter::className const 2004-10-26 10:26:43 +00:00
Robert Osfield
d5aea35895 From Geoff Michel, fix for handling of texture filenames enclosed in quotes. 2004-07-19 18:35:01 +00:00
Robert Osfield
105c3568f8 From Geoff Michel, replaced used C style FILE with iostream. 2004-07-06 13:00:14 +00:00
Robert Osfield
90579a0e17 Fixes for FreeBSD 2004-05-12 20:31:58 +00:00
Robert Osfield
97ef4985f7 From Eric Wing, clean ups for OSX support. 2004-04-11 21:21:38 +00:00
Robert Osfield
bd37f999c4 From Bob Kuehne, change on __DARWIN_OSX__ define to __APPLE__ 2004-03-08 11:02:05 +00:00
Robert Osfield
bd80dee903 From Geof Michel, bug fix to handling of Materials 2004-03-07 14:19:48 +00:00
Robert Osfield
4aa7afedf3 Removed include <iostream> where possible, replacing with istream or ostream and changing
std::cout/cerr to osg::notify().
2004-03-03 13:27:21 +00:00
Robert Osfield
ea16360b24 Fixes from Geoff. 2004-01-08 21:39:14 +00:00
Robert Osfield
de77cede2b Merged fixes from Geof Michel. 2003-11-02 20:10:04 +00:00
Robert Osfield
4e7867ba8c From Geoff Michel & Roger James,revised AC3D loader - accepted the improvement from Roger James for texture mapping, and developed his writer until it actually writes most geometries (no text or osgFX nodes of course). 2003-10-12 15:20:09 +00:00
Don BURNS
03a0b4f5de Changes to fix compiles on Mac OS X 2003-04-03 08:14:49 +00:00
Robert Osfield
8f1ba9d21b Removed include/osg/Types header defining osg::ubyte, osg::ushort etc. Changed
any reference to these in the distribution across to using unsigned char,
unsigned short etc.  This has been done to keep the OSG code more opaque
to what types are.
2003-02-12 19:20:47 +00:00
Don BURNS
65fec63389 Fixes for IRIX build 2002-11-22 05:00:43 +00:00
Robert Osfield
3bd400130c Name change and const change of Drawable::drawImmediateMode(State&) to
Drawable::drawImplementation(State&) const.   Various updates to the
rest of the OSG to accomodate this.
2002-11-06 15:43:11 +00:00
Robert Osfield
24746728e4 From Geoff Michel, added AC3D .ac and GEO .geo loaders. 2002-10-31 12:51:09 +00:00