FAForever Forums
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Login

    Procedural Skyboxes

    Scheduled Pinned Locked Moved Mapping
    4 Posts 4 Posters 449 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      STlNG
      last edited by

      What follows is a brief explanation of a portion of the procedural skybox parameters. Note that procedural skyboxes are only available in Forged Alliance version maps, i.e., version 60.

      A few examples of what is possible before we start.
      a7d49616-5b2d-4de8-91fc-32d1b46094a2-image.png
      88fa95a2-7f81-4eb3-b93d-84684fe6352e-image.png

      To give this a try you will need: a text editor like Notepad or VSCode, FAF Map Editor, and of course Forged Alliance.

      The FAF Map Editor can export procedural skybox settings in JSON format. Open the map editor and select the Lighting category. At the bottom of the sidebar are the export and import buttons. You will use these buttons a lot while experimenting. Export and save the skybox parameters as an .scmskybox file.

      58a17a37-5cc4-4f54-8af2-bdc4cb38c3df-image.png

      I'm not going define all of the parameters because there are several that, either don't do anything substantial, or I haven't tested yet. I'll cover what I use the most.

              "HorizonHeight": -42.5,
              "HorizonColor": {
                  "r": 0.6485937237739563,
                  "g": 0.8204687237739563,
                  "b": 0.8399999737739563,
                  "a": 1.0},
              "ZenithColor": {
                  "r": 0.21999996900558473,
                  "g": 0.4099999666213989,
                  "b": 0.7199999690055847,
                  "a": 1.0},
              "DecalGlowMultiplier": 0.10000000149011612,
              "Albedo": "/textures/environment/Decal_test_Albedo003.dds",
              "Glow": "/textures/environment/Decal_test_Glow003.dds",
              "Planets": [
                  {
                      "Position": {
                          "x": 2190.58056640625,
                          "y": 570.74267578125,
                          "z": -1020.002685546875
                      },
                      "Rotation": -1.5847588777542115,
                      "Scale": {
                          "x": 183.0,
                          "y": 183.0
                      },
                      "Uv": {
                          "x": 0.0,
                          "y": 0.5,
                          "z": 0.5,
                          "w": 0.5
                      }
                  },
      
      • HorizonHeight - sets the position of the horizon with respect to the terrain, default value should be fine for most scenarios. It can be moved closer to zero for a more distinct horizon.

      • HorizonColor - sets the color of the lower portion of the skybox. I often start by setting these values equal to the Fog Color values and start adjusting from there.

      • ZenithColor - sets the color of the upper portion of the skybox

      • DecalGlowMultiplier - sets the glow value of the entities in the list of planets

      • Planets - sets the list of entities to be added to the skybox. Each planet has parameters that define its position, size, and rotation.

      • Position - sets the position of the planet in the skybox using the same coordinate system as the map editor

      • Rotation - sets the rotation of the planet from -2.0 to 2.0. Should be set to match the map lighting style and light direction

      • Scale - sets the size of the planet. In combination with the position values, can be used to create tiny distant stars, large near moons, and everything in between

      After making some changes and saving the file you can import the changes into the FAF Map Editor. The map editor will give you a representation of the position, size, and colors, but will not render planets or clouds.

      I'll update this post with the cloud settings as well as the planet Uv values when I get some more time.

      Attached are the skyboxes for the earlier examples.

      skybox examples.zip

      1 Reply Last reply Reply Quote 6
      • T
        TheCodemander
        last edited by

        hmm... Can you go make all our existing maps pretty now pls? XD

        1 Reply Last reply Reply Quote 0
        • T
          TheEmperorTime
          last edited by

          add this as a setting in the game to be able to do this on any map.

          1 Reply Last reply Reply Quote 0
          • IndexLibrorumI
            IndexLibrorum Global Moderator
            last edited by

            Good stuff, looking forward to more info!

            "Design is an iterative process. The required number of iterations is one more than the number you have currently done. This is true at any point in time."

            See all my projects:

            1 Reply Last reply Reply Quote 0
            • First post
              Last post