Using Superellipse PBR Textures in KeyShot

This guide will walk you through installing the Superellipse PBR Importer script and loading your texture packs into KeyShot as fully configured materials — in seconds.




What You'll Need

Before getting started, make sure you have the following:

  • KeyShot Studio PRO — requires PRO licence. This is a KeyShot restriction, not ours — Luxion limits scripting and the material graph API to PRO only. If you can see the Scripting Console in KeyShot, you're good.
  • Windows or macOS
  • The Superellipse PBR Importer. Download it here




Why the Script Exists

KeyShot has no native PBR importer. When you purchase a Superellipse texture pack, you receive a folder of image maps — basecolor, roughness, metallic, normal, AO, height, and more. Without the script, combining those into a properly configured material means manually creating nodes, setting colour spaces, wiring every connection, and building a displacement setups from scratch.


The Superellipse PBR Importer reduces the entire process to two clicks: run script, select folder, done. Professional materials in seconds.




Step 1 — Install the Script


In KeyShot, go to Window → Scripting Console and click the Scripts tab. Click Import, select Superellipse_PBR_Importer.py and click Open. The script will appear in the list immediately — no restart needed.


If the Import button is not available or fails: 

Close KeyShot completely.

Copy Superellipse_PBR_Importer.py to your KeyShot Scripts folder. To find the exact path on your machine, go to Edit → Preferences → Folders and look for the Scripts row — the full path is listed there.

The default locations are:

  • Windows: C:\Users\Public\Documents\KeyShot Studio\Scripts\
  • Mac: ~/Documents/KeyShot Studio/Scripts/


Reopen KeyShot once the file is in place.




Step 2 — Run the Script


In KeyShot, go to Window → Scripting Console 

In the Scripting Console, click the Scripts tab.

You'll see "Superellipse PBR Importer" listed. Select it, and press Run.



A folder picker dialog will appear. Navigate to your unzipped Superellipse texture folder and select it. The script remembers your last used location between sessions, so subsequent imports are even faster.

That's it! — the script takes over from here.

Done! The material is fully created. Lets find it and begin using it.

 

Note: Keep your unzipped texture folders in a permanent location before importing — the material will reference wherever they are at the time of import, so moving them afterwards will disconnect the textures.




What Happened (Behind the Scenes)

The script will automatically detect your maps, build the full node graph with correct colour spaces and a shared Mapping 2D node, and save the material to your library.

The finished material is saved into a Superellipse subfolder inside your KeyShot Materials library and named automatically — for example, Linen Viscose Fabric 4K - Superellipse. A confirmation popup appears when everything is complete.




Step 3 — Finding Your Material in the Library

After the script finishes, open the Library panel and navigate to Materials → Superellipse. If the material and Superellipse subfolder do not appear immediately (likely on first run), click the refresh button in the Library panel bottom left — KeyShot requires a manual refresh after new materials are added.



Simply drag the material onto any object in your scene to apply it.




Step 4 — Adjusting Tiling, Mapping, Projection and Scale

Because all texture nodes share a single Mapping 2D node, you only need to adjust settings in one place for all maps.

Open the Material Graph for your material and find the Mapping 2D node. From here you can universally adjust tiling, scale, rotation, projection type and more — every map including basecolor, roughness, normal and displacement will update together consistently.


Congrats, you just set up a full PBR material in just a few clicks! 
Happy rendering.



Supported Maps

The script automatically detects and wires the following maps when present in your texture folder:

Base Color, Roughness, Metallic, Normal, Opacity, Anisotropic Angle, Anisotropic Weight, Clearcoat Weight, Clearcoat Roughness, Ambient Occlusion, Height / Displacement




Material-Specific Setup Notes


Ambient Occlusion

Materials with AO have a composite node that multiplies the base colour and the AO map together. The "background alpha" value is defaulted to 0.7, but you can adjust this between 0 - 1 to control the AO strength.


Displacement

If your texture set includes a height map, a Displace node is added to the material graph automatically but set to a height of 0 by default — so it has no effect on your scene until you're ready to use it. To enable it, open the material graph, click the Displace node, enter a height value (start small, around 0.01–0.05), then click the Execute Geometry icon in the top right of the material graph. Note that displacement increases render time and works best on geometry with sufficient polygon density.


Anisotropic Materials — Brushed Metal, Satin Fabric, Carbon Fibre

When anisotropic maps are detected, the script uses KeyShot's Generic material node which has confirmed support for both anisotropic direction and anisotropic weight inputs.

If only an anisotropic angle map is present with no weight map, the anisotropic weight is automatically set to 0.6. You can adjust this value in the Generic node's properties to increase or reduce the intensity of the anisotropic highlight.


Clearcoat Materials — Carbon Fibre, Lacquered Wood, Car Paint

Clearcoat weight and roughness maps are wired automatically. If a clearcoat roughness map is detected but no weight map, the clearcoat weight defaults to 0.9 so the coat layer is fully visible.

Note on normal maps and clearcoat: KeyShot's Generic material has a single bump input that applies to the whole surface including the clearcoat layer. There is no separate clearcoat normal input — this is a KeyShot engine limitation.

For most materials this makes no visible difference. For carbon fibre, it means the weave normal map will subtly affect the clearcoat sheen. If you need a smoother coat appearance, reduce the clearcoat weight slightly or increase the coat roughness value in the material properties.


Tinted and Frosted Glass

Glass materials are detected automatically when the folder name contains the word Glass or Frosted. The script uses OpenPBR's transmission system, which is physically accurate and responds to your model's geometry thickness — thicker areas absorb more color, thinner areas remain more transparent.

Key defaults applied automatically:

  • Transmission Depth: 150mm — reduce for lighter tints, increase for denser color
  • Transmission Weight: 1.0 when a transmission color map is present


Note on geometry: Physically accurate glass requires solid (watertight) geometry. Open or single-sided mesh may produce unexpected results. For flat glass panels, results will be correct. For vases, bottles, or architectural glass with varying wall thickness, the tint will naturally deepen in thicker areas.

Note on grout mask: For glass tile materials, a grout mask map is used as an opacity cutout to block the grout lines from being transparent. This is wired automatically when detected.


Milky and Cloudy Glass — SSS Materials

Materials with a subsurface color map use KeyShot's Translucent Medium node, which renders faster than the standard Translucent node and produces the soft internal glow characteristic of milky glass, frosted diffusers, and cloudy resin.

Key defaults applied automatically:

  • Subsurface Weight: 0.2 — subtle by default, increase for a more intense milky effect
  • Subsurface Radius: 10mm — controls how far light scatters beneath the surface
  • Radius Scale: white (neutral) — all color channels scatter equally

For a stronger milky effect, increase the Subsurface Weight toward 1.0 in the material properties. For a more transparent look with only a faint internal glow, keep it between 0.1 and 0.3.


Smoked Glass

Smoked glass combines transmission color with subsurface color to create depth and internal warmth. Because KeyShot has one transmission input, the script routes the dominant color map through the transmission channel and uses the SSS system for the secondary depth effect. The result gives a physically convincing smoked appearance for most use cases.


Dichroic and Mirror Glass

Dichroic materials are detected when the folder name contains the word Dichroic. The following defaults are applied automatically to create the characteristic metallic iridescent coating:

  • Coat IOR: 3.0 — creates the high-reflectance mirror coating effect
  • Coat Weight: 0.7 — adjust upward for a more intense coating
  • Thin Film Weight: 1.0 — enables the iridescent color shift
  • Coat Roughness Anisotropy: 0.4 — elongated highlights on the coating

A Color Adjust node is placed between the clearcoat weight map and the coat weight input, giving you a convenient place to scale the map's influence without disconnecting it.


Emission Materials

If an emission map is detected, it is wired to the emission color input. Emission luminance is set to 0 by default to prevent unintended glowing — increase the Emission Luminance value in the material properties to activate the effect.




Troubleshooting

The script doesn't appear in the Scripts tab — confirm the file was placed in the correct Scripts folder and that KeyShot was fully closed before copying.

Material saves but doesn't appear in the library — click the refresh button in the Library panel. The material has been saved correctly; KeyShot's panel occasionally requires a manual redraw after new entries are added.

Script says PRO licence required — the material graph API is only available from KeyShot Studio 2024 PRO. Standard and Trial licences do not have access to this feature.

Material loads but textures appear missing  — The material references the original location of your unzipped texture folder. If you have moved, renamed, or deleted that folder since importing, KeyShot will no longer be able to find the image maps. To fix this, either move the folder back to its original location, or re-run the script pointing to the new folder location to reimport the material fresh.




Questions?

If you run into anything not covered here, reach out to us at [support email] and include the name of the texture pack you were importing.


×