[SOLVED] Help to improve Corona Exporter for Blender 2.8+

You can try to poke Sybren on blender devs chat.

1 Like

OH, I see that You already made nice results, at least you can render something using Corona 3.0 in Blender 2,8+

There is a bigger problem with it. The whole add-on should be re-written because of the changed standalone format of Corona6.0+ I would love to have Corona for Blender, hovewer the Chaosgroup Chech don’t want to support the project,

1 Like

Thanks for your interesting. Yeah, as i asked not so a long time ago to the forum and he said me that main problem is related between Blender and Corona licences which can distungish to developing.
By the way, Standalone 3.0 has some a few bugs which need rewrite by the addon itself. I think Glenn has stopped developing on the addon after all has stopped by Corona team. However, we need to rewrite addon as you said for 6.0+ version aince it has a lot great improvements.

I’ve been started fix some areas of the existing code for Blender 2.93+ and I’ve some problems in the code. It gives me different errors on the differnt changes like AttributeError and NameError type. Here the code and now it says: "AttributeError: ‘’ has not ‘latlong’:

  # Environment.
    if scene.world is not None:
        crn_world = scene.world.corona
        if crn_world.mode == 'color':
            SubElement(root, 'environment').text = '%.5f %.5f %.5f' % (scene.world.corona.enviro_color)[:]
        if crn_world.mode == 'latlong' and crn_world.enviro_tex != '':
            xml_env = SubElement(root, 'environment')
            xml_tone_map = SubElement(xml_env, 'map')
            xml_tone_map.set('class', 'ToneMap')
            SubElement(xml_tone_map, 'multiplier').text = '%.3f %.3f %.3f' % (crn_world.map_gi.intensity, crn_world.map_gi.intensity, crn_world.map_gi.intensity)
            xml_child = SubElement(xml_tone_map, 'child')
            xml_map = SubElement(xml_child, 'map')
            xml_map.set('class', 'Texture')
            SubElement(xml_map, 'image').text = realpath(crn_world.enviro_tex)
            xml_uv = SubElement(xml_map, 'uvMap')
            SubElement(xml_uv, 'mode').text = crn_world.latlong_mode
            if crn_world.latlong_map_channel != -1:
                SubElement(xml_uv, 'mapChannel').text = '%d' % crn_world.latlong_map_channel

            # Negative here is so the environment map is the right way around!
            SubElement(xml_uv, 'scale').text = '%.6f %.6f %.6f' % (-crn_world.latlong_scale[0], crn_world.latlong_scale[1], crn_world.latlong_scale[2])
            SubElement(xml_uv, 'offset').text = '%.6f %.6f %.6f' % crn_world.latlong_offset[:]
            SubElement(xml_uv, 'rotateZ').text = '%.6f' % (crn_world.latlong_rotate_z * 180 / math.pi)
            SubElement(xml_uv, 'enviroRotate').text = '%.6f' % (crn_world.latlong_enviro_rotate * 180 / math.pi + 180)
            SubElement(xml_uv, 'enviroMode').text = crn_world.latlong_enviro_mode
            SubElement(xml_uv, 'wrapModeU').text = crn_world.latlong_wrap_mode_u
            SubElement(xml_uv, 'wrapModeV').text = crn_world.latlong_wrap_mode_v
            SubElement(xml_uv, 'blur').text = '%.6f' % crn_world.latlong_blur
            SubElement(xml_uv, 'useRealWorldScale').text = 'True' if crn_world.latlong_use_real_scale else 'False'
            if crn_world.latlong_use_gamma == True:
                SubElement(xml_map, 'gamma').text = '%.6f' % crn_world.latlong_gamma

The error has started from this line: SubElement(xml_uv, ‘mode’).text = crn_world.latlong_mode

Hi again. I’ve has been fixed an issue by myself and now it works as perfect as needed :slight_smile: :wink:

1 Like