Re: [Celestia-developers] New celmodel module
Real-time 3D visualization of space
Status: Beta
Brought to you by:
cjlaurel
From: Fridger S. <fri...@de...> - 2010-03-08 17:28:56
|
On 03/08/2010 06:16 PM, Chris Laurel wrote: > Fridger, > > Thank you for the report--I'm happy to hear that cmodview and Celestia > are both working on your Linux + Qt 4.6 configuration. > > config.h is only used on Linux, and not on Mac and Windows. In fact, I > think it should only be used with the autotools build--isn't config.h > automatically generated? Correct. But here (Qt, qmake) the autotools are not really involved, notably if e.g. the (cross-platform!) Qt-Creator IDE is used. That's why I just did a 'touch config.h' in the cmod dir. The actual configuration for Qt sits in mkspecs/<compiler type>. cmodview, is quite neat and useful, actually. Fridger > > The 'defined but not used' warnings appear whenever the byteswap.h > header isn't available. I think I can eliminated by changing the > functions from static to inline. > > --Chris > > On Sun, Mar 7, 2010 at 5:31 PM, Fridger Schrempp > <fri...@de...> wrote: >> On 03/07/2010 06:56 PM, Chris Laurel wrote: >>>>>>> >>>>>>> As to building the cmodview project I get errors under Windows XP >>>>>>> (Qt-> >>>>>>> 4.5.2, QtCreator 1.3.0) using cmodview.pro >>>>>>> >>>>>>> "Cannot open include file: 'QGLShaderProgram': No such file or >>>>>>> directory >>>>>> >>>>>> As you've already determined, the QGLShaderProgram class is one of the >>>>>> 'OpenGL helpers' introduced in Qt 4.6. It's quite a convenient wrapper >>>>>> for core OpenGL 2.0 functionality, but not too difficult to replace. >>>>>> One advantage of creating a custom version of the class is that it >>>>>> could be written to use Eigen classes instead of Qt's QMatrix4x4, >>>>>> QVector3D, etc. >>>>>> >>>>>> --Chris >>>>> >>>>> Yes, I was hoping that doing a custom class here would relieve the >>>>> "pressure" on cmodview users to always have an up-to-date Qt >>>>> installation in their OS. In a year from now or so, things may look much >>>>> better for using the QGLShaderProgram helper class from the Qt >>>>> distribution. >>>>> >>>>> Fridger >>>>> >>>> >>>> I'm with Fridger here on not relying on the latest version of Qt. For >>>> example, the latest Ubuntu release contains qt4.5 in the repositories, >>>> and as per usual standard there are no plans to upgrade to newer >>>> versions of Qt until a later OS release. So for now I am not >>>> investigating the cmodview program. >>>> >>>> Andrew >>> >>> I've replaced QGLShaderProgram with a custom GLShaderProgram class, so >>> cmodview should now build with Qt 4.6. It will not work with versions >>> older than Qt 4.5, because it relies on a new constructor for >>> QColorDialog (and maybe some other stuff...) >>> >>> The new GLShader and GLShaderProgram classes are cleaner than the >>> shader wrappers in Celestia, and it would be a good idea to use them >>> in both applications. We could add another module to celestia called >>> celgl, which would contain some simple C++ wrappers that make working >>> with OpenGL objects--textures, shaders, frame buffers, vertex buffers, >>> etc.--a bit easier to work with. >>> >>> --Chris >> >> >> Recently I have built and installed the latest Qt-4.6.2 under Linux for my >> own development work, since the default one in openSuSE is only 4.3.x. With >> Qt-creator it's very convenient to work with several Qt versions in >> parallel! >> >> Under Qt-4.3.x building cmodview (r4995) indeed fails for obvious reasons. >> Under Qt-4.6.2 building also fails, but for a trivial reason. >> >> The issue is in bytes.h, where<config.h> is missing. Since that inclusion >> should be for MAC-OS, isn't there a typo?? >> There are simple workarounds: e.g. typing 'touch config.h' in the cmod >> directory. But there are also 2 warnings in bytes.h that may be related to >> a missing config.h: >> >> -------------------- >> /home/t00fri/Develop/celestia-qt/src/tools/cmod/../../celutil/bytes.h:28: >> warning: �short unsigned int bswap_16(short unsigned int)� defined but not >> used >> >> /home/t00fri/Develop/celestia-qt/src/tools/cmod/../../celutil/bytes.h:33: >> warning: �unsigned int bswap_32(unsigned int)� defined but not used >> --------------------- >> >> Anyway, after these little mods, cmodview comes up and seems to work fine. >> Incidentally, r4995 of celestia-qt also builds and runs fine with Qt-4.6.2 >> compiled for Linux. >> >> Fridger >> >> > > ------------------------------------------------------------------------------ > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > _______________________________________________ > Celestia-developers mailing list > Cel...@li... > https://lists.sourceforge.net/lists/listinfo/celestia-developers |