Commit Graph

1303 Commits

Author SHA1 Message Date
Robert Osfield
5d91960cb7 Removed redundent osgac3.h file. 2006-11-14 19:19:54 +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
ac9a28051f Fixed the writeNode function so it was properly return FILE_NOT_HANDLED, fixing
a big with it writing out an empty .flt file.
2006-11-07 17:00:29 +00:00
Robert Osfield
d199fd0072 Changed debug output from NOTICE to INFO 2006-11-07 13:26:31 +00:00
Robert Osfield
d061c087fa Removed debug comment. 2006-11-07 12:08:03 +00:00
Robert Osfield
86c6a88c98 From Mathias Froehlich, workaround fix for problematic run length encoded RGB files. Robert Osfield ammend workaround to support multi-byte colour channels. 2006-11-07 12:02:37 +00:00
Robert Osfield
0f65ed9189 From Per Fahlberg, "Attached is a fix to get the proper normals on an md2 model, actually
the way it was before would sometimes lead to a crash since it was
attaching the wrong array to the geometry..."
2006-10-30 12:28:37 +00:00
Robert Osfield
f9b9efec16 From Vladimir Shabanov, "The DDS plugin didn't correctly read mipmapped A8L8 textures.
I've attached a small fix for this.

Cause: uncompressed mipmap handling was done only for RGB pixel format.

Fix: added condition for handling alpha and luminance formats too."
2006-10-30 12:23:37 +00:00
Robert Osfield
a48a4aa7d3 From Michael Henheffer, "Bug: The reader would crash when trying to load a .tif image that
contained an 8-bit color map.  The crash occured at line 545:

remap_row(currPtr, inbuf, w, red, green, blue);


Cause:  The code was trying to write past the end of the buffer while
doing this remapping.  The size of the buffer is determined based on the
value of 'format', which was 1 in this case since bitspersample is
8(indicating a 8-bit color map).  The buffer should have been created 3
times as large since that 8-bit value is indexing a 24-bit color.


Fix:  I've put in an if statement to set format to 3 if 'photometric'
indicates the tif contains a palette as the output data will always be
24-bit color data in this case."
2006-10-30 12:05:56 +00:00
Robert Osfield
0fe424996d From Andrew Lorino and Robert Osfield, Improvements to the handling of texture paths 2006-10-26 16:52:10 +00:00
Robert Osfield
648455da34 Changed the dependency list to use -losg -losgDB instead of OSG_LIBS 2006-10-23 15:29:59 +00:00
Robert Osfield
8544337aca Fixed OSX x86 endian issue in Quicktime movie plugin. 2006-10-21 21:06:27 +00:00
Robert Osfield
d445995432 From Brede Johansen, "Here's a patch discussed in the thread "OpenFlight Loader Discarding
Material" on the osg-user mailing list."
2006-10-06 13:04:48 +00:00
Robert Osfield
fecb63785f From John Aughey, "The id name of nodes are not being set in the daeReader::processNode method. The names are retained in most of the other osg::Nodes that are created. In this case, I have an external modeler creating models, and the name of component nodes are used to give that subtree different characteristics." 2006-10-03 19:55:24 +00:00
Robert Osfield
392232ec06 From Brede Johansen, "This submission adds multitexture support for detecting translucent
images used to enable alpha blending.

Mesh was syncronized with featureset from Face record."
2006-10-03 09:55:28 +00:00
Robert Osfield
e686a9a4a5 From Brede Johansen, "I think some nitpicking is required. The loop duration was added in
OpenFlight version 15.8.  With the attached changes the flasher unit
on the spinnercar and the character_anim model from the Creator
gallery behaves."
2006-10-03 09:39:03 +00:00
Robert Osfield
02783e1dfd From Paul Martz, Bug fix for sequence node direction, It examines the number of children in the Group record destructor, so that the total duration of the sequence matches the specified loopDuration field. 2006-10-02 15:09:49 +00:00
Robert Osfield
e3478069b4 From Per Fahlberg, "Attached is a fix for loading the same file multiple times with the
COLLADA plugin. dae->load will not return DAE_OK the second time a model is loaded, so a
second check for DAE_ERR_COLLECTION_ALREADY_EXISTS has been added."
2006-10-02 13:24:39 +00:00
Robert Osfield
c991e33796 From Andreas Ekstrand, "Attached is a small bug fix in the DW plugin. The texture application
matrix is read into a double matrix called mx, it was declared as 3x2,
it's now fixed to 3x3."
2006-10-02 13:07:50 +00:00
Robert Osfield
3edda73797 Added SERIALIZER to ReaderWriterDAE to make sure initialization is thread safe. 2006-10-02 11:47:55 +00:00
Robert Osfield
9dd487e6c8 From Andreas Ekstrand, "Attached is a modified ReaderWriterDAE.cpp which creates the one and
only DAE instance when it's first needed instead of in the constructor.
This fixes the problem with osgdb_dae.dll not being loaded due to
unwanted ordering of global initialization.

This fix and the previous fix of the COLLADA plugin might be unnecessary
with the latest COLLADA DOM, but since many of us will probably still
use the older version of the DOM, I guess it's better this way.
"
2006-10-02 11:38:25 +00:00
Robert Osfield
61ce7dd5ac From Brede Johansen, "I have added "billboardCenter" as a reader option to use the center of
a billboard as the pivot point."
2006-10-01 19:09:00 +00:00
Robert Osfield
f03218215d From Colin McDonald, "I have corrected a byte swapping problem in the new OpenFlight
plugin.  It was only reading floats & doubles correctly on little
endian systems, which require byte swapping, and not on big
endian systems which don't require any swapping."
2006-10-01 19:00:39 +00:00
Robert Osfield
d91e1ff4bb From Loic Dachary, renamed _mips to of_mips to prevent compile problem under MIIPS 2006-09-21 09:50:10 +00:00
Robert Osfield
f6fe0de6e5 Rationalized on the number of libs required. 2006-09-21 09:24:10 +00:00
Robert Osfield
dc57810d99 Removed use osg OSG_LIBS, changing to just -losg and -losgDB. 2006-09-21 08:56:19 +00:00
Robert Osfield
45dc4572a9 Fixed reading/writing of non C string osg::Text::String's. 2006-09-19 13:54:04 +00:00
Robert Osfield
fa791e99b8 From Per Fahlberg, "I've fixed the dae plugin so it is only using one instance of the DAE.
The crashes seen earlier are gone, it is now possible to read multiple
.dae files and converting both to and from .dae files."
2006-09-15 13:11:00 +00:00
Robert Osfield
c1a0df32b6 Made get methods const 2006-09-06 13:53:48 +00:00
Robert Osfield
5a08afeb07 From Brede Johansen, "The previous submission didn't handle Objects with transforms. The
attached file corrects this.

I also removed the multitexture macro for the Object record.  Only
Face and Mesh records are valid targets."
2006-09-06 09:46:32 +00:00
Robert Osfield
9d02b2314f From Mike Weiblen, build fixes for Windows. 2006-09-05 09:51:33 +00:00
Robert Osfield
aab03c3c6d From Brede Johansen, "I have added an optimization to the OpenFlight plugin. By default it
ignores the Object records if it's safe to do so.  The reader option
preserveObject prevents this optimization.

I have also removed the flat shading attribute set by the Object
record.  This flag is only intended for the "Calculate Shading"
operation in Creator."
2006-09-05 08:44:51 +00:00
Robert Osfield
f0277df858 Added osg::TexMat::s/getScaleByTextureRectangleSize feature that allows
one to use the osg::TexMat to automatically scale non dimensional tex coordinats to
the size of the last texture rectangle applied.
2006-09-04 12:46:49 +00:00
Robert Osfield
a93ca5a089 From Farshid Lashkari, removed debug message being written to the console. 2006-09-04 06:51:07 +00:00
Robert Osfield
8aa58c986c Changed the external file writing to use the DatabasePathList for its path rather
than the original files path.
2006-08-31 13:53:38 +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
118161416f From Sebastien Grignard, fix to writing of dds files, write the source data
directly rather using a series of memcpy.
2006-08-23 15:25:43 +00:00
Robert Osfield
7b01f5a033 From Jeremy Moles, fixed typos 2006-08-23 15:11:18 +00:00
Robert Osfield
d25735b6b9 From Andrew Lorino and Mike Weiblen, COLLADA 1.4.1 ReaderWriter, kindly developed and donated by Sony Computer Entertainment Inc. US R&D. 2006-08-23 13:32:03 +00:00
Don BURNS
1fa331034c Added osgUtil::Tesselator for SHapeType Polygon to handle concave polygons. 2006-08-22 19:10:48 +00:00
Robert Osfield
8aceb4eec6 From Vaclav Bilek, "The purpose of this change is to suppress "re-reading" of osg::ProxyNodes
( in OF external references) after the OF file is loaded. The change do
conditional
execution of already existing code.

I use this for optimized preprocessing of large databases what can not
be loaded
in one pass because of memory limits."
2006-08-22 13:07:20 +00:00
Robert Osfield
a50d812d9a Fixed 64 bit support 2006-08-21 15:07:31 +00:00
Robert Osfield
7b53511251 From Paul Martz, "The gist of this change is, if the OpenFlight version of the
parent file is so old that it doesn't support Light Point palettes or Shader
palettes, then the parent file is not allowed to override those palettes in
the child."
2006-08-14 07:59:28 +00:00
Robert Osfield
c3313b99b2 Changed the texture wrap mode to repeat 2006-08-13 08:24:19 +00:00
Robert Osfield
25a91d97f0 From Chuck Sembroski, fixes for IRIX 2006-08-13 07:37:55 +00:00
Don BURNS
2bed6e60a1 Added comments to support use of Proxy in the .net plugin. 2006-08-11 17:39:10 +00:00
Don BURNS
a456538e3c Submission by Carlo Camporesi - Added Proxy support to .net loader 2006-08-11 17:34:04 +00:00
Robert Osfield
6b3fbb53f8 Added file search path to ESRI reader. 2006-08-11 13:06:36 +00:00
Robert Osfield
0c91825ee6 From Laurens Voerman, "
osgPlugins\pfb\ConvertFromPerformer.cpp

Added support for
       PFSTATE_ALPHAFUNC
       PFSTATE_ALPHAREF
Improved handling of
       PFTR_NO_OCCLUDE

I have tested this with WIN32 performer 3.1 and 3.2.2
and linux OpenGL Performer 3.1.1"

------------------------------------------------
2006-08-10 13:12:47 +00:00