[Bf-committers] Is collada work in progress?

Reuben Martin reuben.m at gmail.com
Thu Feb 11 05:12:51 CET 2010


Yo, back on Wednesday 10 February 2010 Dave Plater was all like:
> I tried the build exactly as laid out in the web page and then tried
> PCRENATIVE=no, I've also tried XMLPARSER with expat native and supplied,
> also libxmlnative, I haven't tried the supplied libxml yet but it will
> most probably give the same result, possibly caused by openSUSE's pcre
> installation or lack of an environment variable. I've discovered that
> the opencollada Makefile points to a bash script called unixbuild.sh
> which autoconfigures and then uses cmake, it's succeeded with the build
> and maybe I can get a clue there about what's missing with the scons build.
> Thanks
> Dave P
> 

I think getting the blender portion of the code to compile and link correctly is dependent on which XML parser you build against. Also it's best to use the native system libs, because that will be the same libs the blender portion of the code builds against.

I'm on Gentoo, so it's a bit less of a mess: all the development portions of the packages are installed by default as a matter of necessity.

Here's the complete scons options I set pasted from the Sconstruct file:

[code]

vars = Variables('custom.py')
vars.Add(BoolVariable('RELEASE', 'Set to build for release', 1))
vars.Add(BoolVariable('PG', 'Set to build with -pg set for gcc for profiling', 0))
vars.Add(BoolVariable('SHAREDLIB', 'Set to build shared libraries instead of static ones (untested).', 1))
vars.Add(BoolVariable('PCRENATIVE', 
"""Set to build using the systems native pcre lib instead of the delivered lib. Uses same configuration dir for both configurations.
""", 1))
vars.Add(EnumVariable('XMLPARSER',
"""Selects the xml parser to be used
    libxml: Use libXML contained in OpenCOLLADA external sources
    expat: Use expat contained in OpenCOLLADA external sources
    libxmlNative: Use libXML deliverd with your OS. libXML and the corresponding development files need to be installed
    expatNative: Use expat deliverd with your OS. expat and the corresponding development files need to be installed

"""
, 'expatnative', allowed_values=('libxml', 'expat', 'libxmlnative', 'expatnative'), ignorecase=2))
vars.Add(BoolVariable('NOVALIDATION', 'Set to disable shema validation in sax frame work loader', 0))


[/code]


I also commented out the line to build the dae2ogre. Not needed and I don't think it builds anyway.

I also have a recent version of gcc, so I had to add a "#include <cstdio>" to common/libBuffer/src/CommonFWriteBufferFlusher.cpp


I've had blender building with Collada option turned on for several weeks. But it doesn't work. Of the few meshes I've tested (export from blender and import back in), all the mesh data is folded into itself so that all verticies with negative values in the local coordinates are mapped to the positive values. I haven't done much more with it besides just a casual test or two. I suspect that the problems are probably the result of all the warnings thrown about comparing signed and unsigned values. But that's just an assumption. I haven't had the motivation to really dig into it. There are occasional commits to the Collada branch, so I assume it's still a work in progress.

-Reuben


More information about the Bf-committers mailing list