Commit Graph

3481 Commits

Author SHA1 Message Date
Robert Osfield
9790d15f30 Reduced the verbosity of debug info. 2006-07-18 13:04:57 +00:00
Robert Osfield
5b10db3724 Updated wrappers 2006-07-18 12:48:48 +00:00
Robert Osfield
419e185895 From Eric Wing, add alternate backdrop implementations.
From Robert Osfield, updated naming  and copy constructor methods.
2006-07-18 12:24:04 +00:00
Robert Osfield
f2d50d943b Updated wrappers 2006-07-18 11:42:27 +00:00
Robert Osfield
a74801a0ee Added Optimizer::FlattenBillboardsVisitor. 2006-07-18 11:03:46 +00:00
Robert Osfield
e016cdafb2 From Terrex, improvements to handling of layers w.r.t PolygonOffset 2006-07-17 16:36:42 +00:00
Robert Osfield
2ef59b73e9 Change Unit to Units to keep consistent with OpenGL naming. 2006-07-17 11:43:26 +00:00
Robert Osfield
460ea4586e Added *,/,+ and - keyboard controls for toggling PolygonOffset factor and units 2006-07-17 11:37:51 +00:00
Robert Osfield
db395b18af Added getNumLayers method 2006-07-17 11:36:50 +00:00
Robert Osfield
f16a78ad97 Increased the unit multiplier to 3 to avoid z fighting. 2006-07-17 10:25:01 +00:00
Robert Osfield
e8235f6967 Changed the Radeon defaults to 1, 128 for the factor and unit mulitpliers respectively. 2006-07-17 10:24:31 +00:00
Robert Osfield
9f81ef8561 Implemented Radeon workaround for polygonoffset 2006-07-14 14:38:55 +00:00
Robert Osfield
4bae225d39 Added s/getFactorMultiplier(), s/getUnitMultiplier(), areUnitAndMultipliersSet() and
setFactorAndUnitMultipliersUsingBestGuessForDriver() static methods to
osg::PolygonOffset to help implement workarounds for lack of portablity of
settings between different hardware.
2006-07-14 14:08:33 +00:00
Robert Osfield
524417f981 Removed debug info 2006-07-14 11:29:41 +00:00
Robert Osfield
e835ea5328 Speeded up merge geometry 2006-07-14 11:04:24 +00:00
Robert Osfield
47c7c43c64 Optimized the MERGE_GEODES pass 2006-07-13 20:42:10 +00:00
Robert Osfield
5d59ab8227 Updated wrappers 2006-07-13 15:56:54 +00:00
Robert Osfield
dd32e6425e Added StatsVisitor to include/osg/Statistics, and usage of it in osgUtil::Optimizer.
Added --optimize <string> option to osgconv
2006-07-13 15:25:22 +00:00
Robert Osfield
541433c7be Added share duplicates traversal to optimizer call 2006-07-13 14:58:37 +00:00
Robert Osfield
abe6260da4 Fixed management of Text's StateSet so that it works correctly when the DefaultFont is active. 2006-07-13 09:01:24 +00:00
Robert Osfield
5e9b7bef88 From Brede Johansen,
"I found some artifacts on some models and traced it back to the
external palette override feature.  There are some changes in the
layout of the external record the loader have to take into
consideration.

The other fix is to remove the OF pools from the user data of the
external ProxyNode when it is no longer needed."
2006-07-12 09:40:03 +00:00
Robert Osfield
dd6a33da49 Removed StateSet::ENCLOSE_RENDERBIN_DETAILS since it is rendendent, and
implemented the OVERRIDE_RENDERBIN_DETAILS.
2006-07-11 21:53:57 +00:00
Robert Osfield
ad18b88848 From Antoine Hue,
"There was a typo in "int setNotifyOffset()", appear to be a getter =>
"int getNotifyOffset()".

Then I have added a switch to create GDALTermProgress only when the
current notify level + local offset permit message display. In fact, if
the offset is set to 0 and the notify level is at the default, DataSet
is quiet but for the GDALTermProgress. That is quite disturbing since
you think the progress is related to the complete processing but it is
actually only related to the GDAL Warp."
2006-07-11 10:34:41 +00:00
Robert Osfield
49dea3b589 Tweak for VS6.0 build 2006-07-06 20:43:23 +00:00
Robert Osfield
1c1fce8266 Fixed scoping for for loop varaible for VS6.0 build. 2006-07-06 15:47:59 +00:00
Robert Osfield
ee1b6a5dd6 Tweaks to try and fix VS6.0 problems. 2006-07-06 15:00:51 +00:00
Robert Osfield
df2d0e1ceb Removed explict definition of osgUtil::Optimizer::StateVisitor to attempt
to get round VS 6.0 cruddiness.
2006-07-06 14:50:38 +00:00
Robert Osfield
6665e2a38a Tweaked for loop variaible definition. 2006-07-06 14:43:30 +00:00
Robert Osfield
0b32213394 From Eric Sokolowsky,
"If a texture is used that is not a multiple of four, and compression
was requested through the texture's internal format, the texture's
internal format reverts to a non-compressed type and a NOTICE is given.
At present, compressed textures must have a multiple of four in each
dimension."
2006-07-06 14:14:19 +00:00
Robert Osfield
6b1f793ea7 Updated wrappers 2006-07-06 14:10:37 +00:00
Robert Osfield
865ee4429c From Eric Sokolowsky,
"Attached is some fixes for Image::readImageFromCurrentTexture. It was
failing when used with a new Image object (some of the fields were
not set before they were used, and some were set to the wrong values).
A new optional parameter was added to give the desired data type, which
defaults to GL_UNSIGNED_BYTE, so programs should only need a recompile
to work properly."
2006-07-06 14:02:14 +00:00
Robert Osfield
c72530d2fd Added setting of name from the .obj goup name and object names. 2006-07-06 11:40:41 +00:00
Robert Osfield
f693fa6d2d Removed redundent debug message. 2006-07-06 11:33:07 +00:00
Robert Osfield
fd7ee0cf21 Add "hack" fix for black materials being exported from Maya. 2006-07-06 11:30:20 +00:00
Robert Osfield
88609a5eee Updated version numbers for 1.1 release 2006-07-06 10:28:12 +00:00
Robert Osfield
30d32133b8 Tweaked polygon offset 2006-07-06 10:27:40 +00:00
Robert Osfield
2c2083db72 From Vivek Rajan, "Rotated text in SCREEN_COORDS was looking a little squished especially
in orthographic projection. Performing the rotation before the scaling
fixed the problem. I've attached Text.cpp with the fix."

From Robert Osfield, in keeping with Vivek's change moved the auto rotate to screen befor the scale as well.
2006-07-06 08:36:12 +00:00
Robert Osfield
d7f1c34df8 From Eric Sokolowsky, "The attached Texture.cpp fixes a problem when subloading compressed
textures.  Near the top of the function that implements texture
subloading, osg::Texture::applyTexImage2D_subload(), the local variable
compressed_image examines the _image's_ pixel format to see if it is
compressed. However, further on, in calls to getCompressedSize() the
_texture's_ pixel format is used. In my application's Texture2D class,
I use osg::Texture::USE_ARB_COMPRESSION to
osg::Texture2D::setInternalFormatMode(), which causes the internal format
to become one of the generic ARB_COMPRESSED types, which do not have a
specific size. Thus the recent warning message added to
osg::Texture::getCompressedSize() is triggered. The correct behavior is
to use the format mode from the Image class instead of the Texture class
within the subload implementation, and then the size is calculated
correctly."
2006-07-05 21:52:36 +00:00
Robert Osfield
5622e0d202 From Brede Johansen, "Changed ">" to ">=" when testing for version 16.1 or later." 2006-07-05 20:56:37 +00:00
Robert Osfield
0f209a5362 From Eric Sokolowsky, "There is code in Image.cpp that calculates the size of a compressed image
based on the internal format. There is similar code in the Texture class
but it does not account for the ARB types. I modified the Texture class
implementation to show a warning when an incomplete internal format is
used to calculate the image size."
2006-07-05 13:44:07 +00:00
Robert Osfield
9ae10af995 Fixed warnings 2006-07-05 09:52:03 +00:00
Robert Osfield
a0050bc8db From Markus Trenkwalder, "Mingws gcc includes a file called types.h which in turn defines
_TYPES_H_.  types.h in the directx plugin defines the same include
guard.  I've renamed the guard name in this file to _DX_TYPES_H_.  Now
the plugin compile in mingw too."
2006-07-05 08:59:23 +00:00
Robert Osfield
7c1926118a From Brede Johansen, renaned FLT_preserveFace to preserveFace 2006-07-05 08:55:23 +00:00
Robert Osfield
ce4b3a7b9e Changed parameter name from osberver_ptr to observer. 2006-07-04 19:58:53 +00:00
Robert Osfield
6c6c131452 From Paul Martz,
"Previously, the new OpenFlight plugin only allowed ext ref models to use
their own palettes. With this change, parent models can override child model
palettes with the parent palettes.

These changes are made against very current CVS (just updated about 1/2 hour
ago, eliminated conflicts, and retested before this posting).

To regurgitate what I did:

A new class, ParentPools (public osg::Referenced), is created when an ext
ref record is parsed, and it is populated with any parent model pools that
should override the child model pools (according to bits in the ext ref
record). The ParentPools object is then set as UserData on the ProxyNode
corresponding to the ext ref.

When the ReadExternalsVisitor hits the ProxyNode, it takes its UserData and
sets it as UserData in the Options parameter to the osgDB::ReadNode call,
which then read the ext ref model. In the course of parsing the Options
string, ReaderWriterFLT also looks at the Options UserData and sets the
parent pools in the Document class accordingly.

When palette records are encountered while loading a file, they are ignored
if the corresponding pool was set by the parent.

Thanks to Brede for consulting with me on the implementation.
"
2006-07-04 19:54:29 +00:00
Robert Osfield
00fbfd4835 Updated wrappers. 2006-07-04 14:37:56 +00:00
Robert Osfield
e7d9e91525 From Stephan Huber,
"attached you'll find some modifications to Producer, osgGA and
osgProducer to enable Mac OS X support for

+ scrollwheels,
+ mightymouse-srollballs
+ new tracking-pads with scroll feature
+ tablet-support (pressure, proximity and pointertype) (Wacom only tested)

I think there was a bug in the windows-implementation of scroll-wheel
support (wrong order of ScrollingMotion-enum, casting problem) which is
fixed now.

The scrollwheel-code is a bit klunky across platforms, some devices on
OS X can report an absolute delta in pixel-coordinates not only the
direction, so for now there is scrollingMotion (which describes the
direction) and scrolldeltax and scrolldeltay. I decided to leave the
scrollingmotion-stuff to not break old code relying on this."
2006-07-04 14:18:44 +00:00
Robert Osfield
b0d738384f Updated wrappers. 2006-07-04 13:56:38 +00:00
Robert Osfield
3ad5140942 Change osgText so that the Text drawable now can have its own StateSet
that users can assign to it without it being overriden.  If none is
assigned externally it now uses a StateSet associated wit the Font assigned
to the Text.
2006-07-04 13:56:29 +00:00
Robert Osfield
e8a3444b88 From Brede Johansen,
"The attached file corrects two small typos in MultiSwitch.cpp.  The
local "values" reference and the "_values" member attribute are of
different types but both are vectors so the size() operator happily
compiles.  A renaming of _values to _masks or similar may be a more
future proof solution but the submission only removes the underscore
in two places.

The switch_1701.flt model part of the Creator gallery revealed this bug."
2006-07-04 13:33:19 +00:00