Tutorial: Environment Enhancement Project (EEP)

Note: As I’ve had a number of Firestorm users directed here from the Firestorm Team’s EEP Beta release blog post who have commented directly to me about that release, please note that I am aware of it, and in fact blogged it at the time it was made available – see Firestorm 6.4.5 Beta: EEP and Camera Presets – which highlights some of the additional EEP / Phototools integration work the Firestorm team has carried out.  

EEP, the Environment Enhancement Project, is a set of environmental enhancements designed to replace windlight XML settings to control the water and sky environments seen in Second Life, and provide a wide range of additional capabilities for region holders, parcel holders and general users. It represents a fundamental shift in how environment settings are used and applied

In brief EEP:

  • Uses environment objects that you can keep in your inventory and / or share with others – including selling (subject to the SL permissions system) via in-world stores and on the Marketplace.
  • Provides parcel-level control of environments.
  • Allows up to four different, independently controlled sky layers.
  • Allows the Sun, Moon and Cloud textures to be replaced with custom textures uploaded to the viewer.
  • Provides an extended day cycle of up to 168 hours (thus allowing a 7-day, 24-hour day / night cycle to be defined, for example).
  • Allows users to override region / parcel settings as seen within their own viewer for the purposes of photography, etc.
  • Provides new LSL functions to allow scripts to interact with parcel environments.

In addition, key aspects of EEP are:

  • Estate / region / parcel settings are simulator-side, and so by default are automatically seen by anyone using any EEP enabled viewer on entering the region / estate / parcel.
  • Provision of a Personal Lighting capability that allows photographers, etc., to make rapid / temporary changes to an region / parcel’s environment visible only in their viewer.
  • Allows environments settings to be applied to your own avatar, allowing you to see the same environment (sky, clouds, Sun / Moon position, etc.) wherever you go in-world – useful for vehicle drivers travelling across multiple regions.
Table of Contents

This tutorial is designed to walk you through the essentials of EEP, including the terminology used. It is split into a number of sections:

  • Terminology and Concepts – key terminology and concepts with EEP.
  • The viewer UI elements associated with EEP.
  • An overview of creating and editing EEP assets.
  • An overview of applying EEP settings
  • Breakdowns of the floaters used to create Sky, Water and Day Cycles in EEP.
  • An overview of importing windlight XML files into the viewer and saving them as EEP settings / assets.
  • A summary of EEP LSL resources with links.

Some of these sections are self-contained, other can be used together (e.g. creating assets, using the Sky, Water and Day Cycle floaters, and applying EEP settings). To further assist referencing, major topics appear on their own page – please make sure you use either the table of contents or the page numbers at the foot of each page for ease of navigation.

Official information on EEP can be found in the EEP section of the SL wiki.

Note: at the time of writing this piece, the official Second Life viewer – version 6.4.0.540188, dated April 15th (or later) to see / use EEP capabilities. However, TPVs will be releasing version supporting EEP in due course. Check their websites, listed in the panel on the right, for updates that may not be covered in these pages.

My sincere thanks to Rider Linden, EEP maestro, for his assistance in the writing of this tutorial.

As well as bringing a range of new environment capabilities, EEP also lets you use custom textures for the Sun and Moon (and clouds). So Isla Pey can appear with Earth slowly setting, and Jupiter and one of the Galilean Moons also strangely in the sky! Note that both the size of the “sun” and “moon” textures can also be adjusted

Terminology and Concepts

EEP uses some key terminology that should be understood.

  • Settings: used to define the environment you see. There are three settings types:
    • Sky: define the atmosphere and lighting for a day (or night); the movement, density, etc., of the clouds; and the appearance of the Sun and  / or the Moon (which remain in a fixed point in the sky).
    • Water: define the appearance of Linden Water (prim or mesh animated water is not affected): water colour and reflection; wave movement; amount of light refraction, etc.
    • Day Cycles: collections of Sky and Water settings that are combined to present a dynamically changing environment over a user-defined time period representative of a “day” (by default this is set to the legacy Second Life day / night cycle of 4 hours, but can be extended out to represent physical world time periods of up to one week).
    • Note that Sky and Water settings are referred to as Fixed Environments.
  • EEP assets: physical “containers” for storing EEP settings. These are inventory items that by default, are stored in the new Settings folder in your inventory (see below), they are split into three types:
    • Sky – Sky settings. Icon: a blue sky with clouds.
    • Water – Water settings. Icon: a water droplet.
    • Day Cycle – for Day Cycles. Icon: a split Sun / Moon.
    • EEP assets (permissions allowing) can be exchanged, given away, and / or sold through a store or via the Marketplace.

Note that EEP settings are:

  • Created or edited using their corresponding EEP asset (e.g. to create Sky settings, you use the Sky asset type).
    • New EEP assets can be created directly from inventory, just like any other system inventory asset type (notecard, clothing item, gesture, script, body part).
    • Creating / editing EEP assets and settings is covered in depth in my EEP tutorial.
  • By default stored within a new system folder in inventory – the Settings folder. This folder may be hidden until such time as an EEP asset is created.
By default, EEP assets are stored and created in the Settings folder in your inventory (l). If you want, you can manually sub-divide your settings into suitable folders for easier tracking (r)

EEP Permissions

There are a few notes on permissions associated with EEP settings / assets.

  • Copy/no-copy: EEP settings assets may never be marked no-copy. A person who owns a setting object may always make a copy of it in their inventory.
  • Transfer/no-transfer: the no-transfer permission is persistent. If you import any no-transfer day or water setting into a day cycle, that day cycle will also become no-transfer. Once saved, this change can not be undone.
  • Modify/no-modify: these permissions behave as normal.

EEP Library Assets

EEP includes a collection of Sky, Water and Day Cycles, together with a set of textures that can be used for clouds and / or to replace the Sun and Moon, etc.

  • These are located in Inventory (CTRL-I) → Library → Environments.
  • They can be used in once of two ways:
    • Unmodified, directly from Library → Environments.
    • By copying them to your inventory (e.g. to your own Settings folder, if it is visible through the creation of an EEP asset; if not, any other folder can be used), where they will become modifiable, allowing you to adjust them / use them to create your own settings.
    • See my EEP Tutorial for editing / modifying EEP assets and settings.

Differences to Windlight

  • EEP settings are stored in inventory assets, not as XML files saved to your computer.
  • Because they are server-side, EEP settings are by default seen by any viewer affected by the. This can mean:
    • Parcel owners using a specific set of environment settings no longer have to request visitors manually switch to them.
    • Settings are no longer dependent on visitors to a parcel with a custom environment having the precise Windlight XML file stored on their computer.
  • EEP setting do not require any external storage (e.g. Dropbox) in order to be shared with other users, if they are to be given away.

6 thoughts on “Tutorial: Environment Enhancement Project (EEP)

  1. “Note: at the time of writing this piece, the official Second Life viewer – version 6.4.0.540188, dated April 15th (or later) to see / use EEP capabilities. However, TPVs will be releasing version supporting EEP in due course.”

    Hello everyone!
    I’m really excited about this new project but I have one main doubt… I’m using Firestorm viewer. Can we use EEP only with the official Second Life Viewer?
    Thank you for your answer.
    Victoria Dawson

    Like

    1. Currently, the only viewer supporting the release version of EEP is the official SL viewer. Other TPVs may have release or beta versions supporting earlier (RC) released of the viewer code, but have yet to update to the release code version – but with some this will happen fairly rapidly, others may take a little longer.

      So right now, if you want to try creating EEP assets, playing with the settings options, etc., and see the results, your best bet is the EEP release viewer.

      Like

  2. Hi there, silly question but where do you get the EEP Viewer? And, sorry I still don’t understand something… if I create a day cycle for my parcel using EEP viewer, will others only see it if they use the same viewer? Or, will they be able to see the settings regardless, i.e. if they use Firestorm? Thanks so much for your help and sorry if the answer was answered, I still find it confusing!

    Like

    1. Hi Lee!

      No worries on the questions. To answer in turn:

      1. As it stands, if you download the current release version of the viewer (version 6.4.2.541639 at the time of writing) you’ll have EEP support.
      2. Until such time as EEP is adopted by all viewers, only those running an EEP-capable viewer will see any EEP settings as you designed them, when applied to your parcel. At the time of wrting this reply, Firestorm does *not* have EEP support, so people using that viewer won’t see your parcel EEP settings as you intend
        them to be seen.

      All third-party viewers with rendering capabilities, including Firestorm, will eventually have EEP support, it just depends on how quickly / smoothly they can merge the EEP code. As it stands, I believe that, alongside the official viewer, Kirsten’s Viewer, Cool VL viewer and Black Dragon all have EEP support.

      Like

  3. On 29July2020 Firestorm released version 6.4.5 EEP Public Beta. I’ve been using it since then and it appears to be totally stable and it’s just great to finally be able to implement and enjoy the EEP features it supports

    Like

Have any thoughts?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.