render.py doesn't work

Help
2006-05-28
2013-03-24
  • Romain Behar
    Romain Behar
    2006-05-28

    I've managed to install cgkit2 under Linux, viewer.py works fine, but render.py doesn't. I've tested two example scenes from the tutorials, both are called simplescene.py : the first is the orange sphere, the second is the set of textured primitives (with uvmap.png).

    The render.py quits with :

    > render.py simplescene.py
    Exporting main.rib...
    Traceback (most recent call last):
      File "/usr/bin/render.py", line 344, in ?
        render.run()
      File "/usr/lib/python2.4/site-packages/cgkit/tool.py", line 184, in run
        self.action()
      File "/usr/bin/render.py", line 221, in action
        bakestvar = bakestvar
      File "/usr/lib/python2.4/site-packages/cgkit/cmds.py", line 953, in save
        exp.exportFile(os.path.basename(filename), **options)
      File "/usr/lib/python2.4/site-packages/cgkit/ribexport.py", line 180, in exportFile
        ps = expmat.createPasses()
      File "/usr/lib/python2.4/site-packages/cgkit/ribexport.py", line 1718, in createPasses
        if self.mat.texture==None:
    AttributeError: 'GLMaterial' object has no attribute 'texture'

    I've also tested 'render.py -raqsis simplescene.py' and 'render.py -r aqsis simplescene.py' which yield the same output.

    Here are the software versions:

    * cgkit-2.0.0alpha6
    * PyProtocols 0.9.3
    * Python 2.4.3
    * Ubuntu Dapper

    I've built the full C++ version.

     
    • Matthias Baas
      Matthias Baas
      2006-05-28

      This is already fixed in the svn repository. The GLMaterial has changed so that it can now store more than just one texture.  Unfortunately, I only did the corresponding changes to ribexport.py after the release... sorry.

      So you can either grab ribexport.py from the repository (cgkit/trunk/cgkit/ribexport.py) or you can manually change every occurance of "self.mat.texture" with "self.mat.getTexture(0)".

      - Matthias -

       
    • Matthias Baas
      Matthias Baas
      2006-05-29

      I don't know if my previous message was actually mailed or not (I got an error when posting it and it was never sent to me, but the message shows up in the SF forums...?).

      So I'm just posting this to let you know that an answer was posted.

      My apologies if you've already received the previous mail.

      - Matthias -

       
    • Romain Behar
      Romain Behar
      2006-05-29

      As a matter of fact, I haven't received any of the two answers. I came back here because I didn't know the answer was sent by email.
      After the search and replace in ribexport.py, Aqsis output did work. Though the textured scene (the one using uvmap.py), isn't rendered with the texture but with a plastic blue shader. It's probably because Aqsis 1.1 is installed, not version 1.0.

       
    • Matthias Baas
      Matthias Baas
      2006-05-30

      Oops, I just noticed that Aqsis (latest svn version) crashes on this scene here under WinXP.
      The problem is that the GLMaterial shader takes an array value as parameter which produces the crash (or rather an assertion failure). The scene renders fine with 3Delight.

      I have just added a bug report to the Aqsis bug tracker, so hopefully this will be fixed soon.

      - Matthias -