Hi Carsten.

> >>> But I don't really understand why my first approach doesn't work.
> >>
> >> hmm, I'm not sure what the problem could be either. As a first
> check,
> >> can you start your program with environment variable
> >> OSG_LOG_LEVEL=DEBUG
> >> set? You should see many lines of the form:
> >>
> >> DEBUG:  Registered type Geometry | 735 (-1645862464)
> >> DEBUG:  Registered type GeometryPtr | 736 (-1645862208)
> >> DEBUG:  Registered type SFGeometryPtr | 737 (-1645862112)
> >> DEBUG:  Initialized FieldType : SFGeometryPtr 0x7f729de62320
> >> DEBUG:  Registered type MFGeometryPtr | 738 (-1645861984)
> >> DEBUG:  Initialized FieldType : MFGeometryPtr 0x7f729de623a0
> >>
> >> Can you check if the GeoProperties you are using (e.g.
> GeoPositions3f)
> >> show up as registered types?
> >
> > All the types seem to be registered:
> >
> > DEBUG:  Registered type Geometry | 690 (34273824)
> > DEBUG:  Registered type GeometryPtr | 691 (34273984)
> > DEBUG:  Registered type SFGeometryPtr | 692 (34274048)
> > DEBUG:  Initialized FieldType : SFGeometryPtr 0x20afb00
> > DEBUG:  Registered type MFGeometryPtr | 693 (34274112)
> > DEBUG:  Initialized FieldType : MFGeometryPtr 0x20afb40
> > DEBUG:  Registered type GeoPositions | 694 (34271776)
> > DEBUG:  Registered type GeoNormals | 695 (34271936)
> > DEBUG:  Registered type GeoColors | 696 (34272096)
> > DEBUG:  Registered type GeoTexCoords | 697 (34272256)
> > DEBUG:  Registered type GeoIndices | 698 (34272416)
> > DEBUG:  Registered type GeoPTypes | 699 (34272576)
> > DEBUG:  Registered type GeoPLengths | 700 (34272736)
> 
> ok, but this shows Geometry (which is a type that works for you) and
> GeoPositions (which is an abstract base class). Do you also see a line
> for GeoPositions3f, i.e. a type that is not working for you?
> Sorry for being pedantic about this, but about the only case I can
> imagine that you get NullFC from a create() call is if the type (and
> therefore the prototype instance) is not correctly registered with the
> system.

Don't worry, my mistake. But everything looks good here too:

DEBUG:  Registered type GeoPositions | 694 (34415136)
DEBUG:  Registered type GeoNormals | 695 (34415296)
DEBUG:  Registered type GeoColors | 696 (34415456)
DEBUG:  Registered type GeoTexCoords | 697 (34415616)
DEBUG:  Registered type GeoIndices | 698 (34415776)
DEBUG:  Registered type GeoPTypes | 699 (34415936)
DEBUG:  Registered type GeoPLengths | 700 (34416096)
DEBUG:  Registered type GeoTexCoords1f | 701 (34413856)
DEBUG:  Registered type GeoTexCoords2f | 702 (34414016)
DEBUG:  Registered type GeoTexCoords3f | 703 (34414176)
DEBUG:  Registered type GeoTexCoords4f | 704 (34414336)
DEBUG:  Registered type GeoTexCoords1d | 705 (34414496)
DEBUG:  Registered type GeoTexCoords2d | 706 (34414656)
DEBUG:  Registered type GeoTexCoords3d | 707 (34414816)
DEBUG:  Registered type GeoTexCoords4d | 708 (34414976)
DEBUG:  Registered type GeoPositions2f | 709 (34412384)
DEBUG:  Registered type GeoPositions3f | 710 (34412544)
DEBUG:  Registered type GeoPositions4f | 711 (34412704)
DEBUG:  Registered type GeoPositions2d | 712 (34412864)
DEBUG:  Registered type GeoPositions3d | 713 (34413024)
DEBUG:  Registered type GeoPositions4d | 714 (34413184)
DEBUG:  Registered type GeoPositions2s | 715 (34413344)
DEBUG:  Registered type GeoPositions3s | 716 (34413504)
DEBUG:  Registered type GeoPositions4s | 717 (34413664)

> >> Perhaps you can also compare the output of your program with that of
> >> one
> >> of the test/tutorial programs that come with OpenSG, e.g.
> >> testStatisticsRender.
> >
> > I'm already working on a simple program based on the 01hello example.
> 
> once you have that it might be interesting to create a diff between the
> startup of your regular program and the simple one.
> I'd appreciate it if you could post the logs for those two runs (you
> may
> have to compress them or send to me directly due to ML attachment size
> limits).

Ok, I will send the logfiles to you, but they look very similar.

> >>> Another question is, whether it is possible to compile OpenSG
> itself
> >> with -fvisibility=hidden and how the OpenSG sources have to be
> modified
> >> for that.
> >>
> >> I imagine at the very least one would have to go through an annotate
> >> all
> >> types that are meant to be visible to applications linking with
> OpenSG.
> >> Perhaps the macros used for adding dllexport/dllimport on windows
> can
> >> be
> >> used for that.
> >> I wouldn't expect too much of an effect though, since the majority
> of
> >> types are meant to be used by applications (e.g. practically all
> >> FieldContainer should be visible) so only few types would actually
> end
> >> up being hidden.
> >
> > That's the way I already tried it, but unfortunately I ended up with
> a lot of unresolved externals when linking my executable to the
> modified OpenSG. Probably I got lost in the jungle of
> OSGExportDefines.h :-(
> 
> hmm, I wouldn't have started with OSGExportDefines.h, but OSGBase.h and
> the OSG*Def.h files (which control whether dllimport or dllexport is
> used on windows, so hopefully can be extended more easily for
> visibility support).

That's again exactly what I did. But I guess also OSGExportDefines.h needs to 
be modified. More on that in my extra mail...

Cheers,
Thomas


------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Opensg-users mailing list
Opensg-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to