Using Superellipse PBR Textures in 3ds Max + FStorm

This guide will walk you through installing the Superellipse PBR Importer plugin and loading your texture packs into 3ds Max as fully wired FStorm Materials — in seconds.




What You'll Need

Before getting started, make sure you have the following:

  • 3ds Max 2025 or newer
  • FStorm Render v2.0
  • Windows only
  • The Superellipse PBR Importer for 3ds Max. Download it here


Download it here Tested on 3ds Max 2027 and FStorm Render v2.0.0Y. Earlier versions of FStorm may not include the FStormPBR material class and are not supported.




Why the Plugin Exists

3ds Max has no native PBR importer for FStorm. When you purchase a Superellipse texture pack, you receive a folder of image maps — basecolor, roughness, metallic, normal, AO, height, and more.

 

Without the plugin, combining those into a properly configured FStorm PBR Material means manually creating FStormBitmap shaders, setting gamma and input gamma on every map, wiring each connection, and configuring channels like clearcoat, anisotropy, glass, and displacement from scratch. The Superellipse PBR Importer reduces the entire process to two clicks: open the menu, select a folder, done.


The Superellipse PBR Importer reduces the entire process to two clicks: open the menu, select a folder, done.




Step 1 — Install the Plugin

Make sure 3ds Max is open before running the installer.

Download and unzip the file. Inside you will find Superellipse_PBR_Importer_FStorm.mzp — drag this directly into any 3ds Max viewport. Alternatively, go to Scripting > Run Script and select the .mzp file.


An install confirmation dialog will appear. Click OK.


The plugin copies itself to your 3ds Max startup scripts folder automatically and registers the Superellipse menu entry. No manual folder navigation is required.


Restart 3ds Max. When it reopens, a Superellipse entry will appear in the main menu bar.



Updating to a newer version: drag the new .mzp file into the viewport and click OK — it overwrites the previous version automatically. Restart 3ds Max and you are on the latest version.


Note: The Superellipse menu typically appears around 10 seconds into startup, after 3ds Max has finished loading its menu system. This is normal behaviour for MaxScript-based plugins.




Step 2 — Import a Material

In 3ds Max, go to Superellipse > FStorm - Import Material.





A folder picker will appear. Navigate to your Superellipse texture folder — the one containing the image files directly inside it — and select it. The plugin remembers your last used location between sessions, so subsequent imports are even faster.



After selecting a folder, you have two additional optons. 

  1. Assign material to the currently selected object
  2. Enabling displacement





Press Import - The import runs immediately. Give it a few seconds to import. A confirmation dialog appears when the material is ready, showing how many maps were found and how many channels were wired.




 

The material is named automatically from the folder name. For example, Boucle_Fabric_Willow_4K becomes Boucle Fabric Willow 4K — Superellipse.


That's it! The material is fully mapped and ready to use.

 

 

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

 



Step 3 — Applying the Material

Once imported, open the Slate Material Editor (press M). The material appears as a node set on the canvas and is also listed under Scene Materials in the left panel once if it was assigned to an object at import.

 





To apply the material to an object if not done via the import option:

  1. Select the target object in the 3ds Max viewport
  2. In the Slate Material Editor, right-click the material node and choose Assign Material to Selection



All texture nodes in the graph use the SE_ prefix for easy identification — SE_BaseColor, SE_Roughness, SE_Normal, and so on.


Finding a material again later: In the Slate Material Editor, expand Scene Materials on the left panel. Alternatively, search "Super" in the top search bar to find already imported materials.



Every material currently assigned to at least one object is listed there. Double-click any entry to open its node graph for editing.


Important Note: If a material has not yet been assigned to any object, it will only appear as a node set on the Slate canvas and will not show in Scene Materials. Assign it to at least one object to keep it permanently accessible. (For batch imports this is handled automatically — each material is assigned to a hidden holder object behind the scenes.)





Step 4 — Adjusting Tiling

In 3ds Max, tiling is controlled at the object level rather than inside the material. To adjust how the texture tiles across a surface:

  1. Select the object
  2. Go to the Modify panel (the arched curve icon 2nd from the left)
  3. Click the Modifier List dropdown and choose UVW Map
  4. Set the projection type — eg. Box works for most simple interior block objects
  5. Adjust the Length, Width, and Height values to control tiling scale



One UVW Map modifier controls the scale of all maps in the material simultaneously.




Step 5 — Batch Import

To import multiple materials at once, use Superellipse > FStorm- Import Batch.

It is advised to clear the Node graph in the Material Slate Editor before and after batch import to avoid a busy Slate Editor UI. If a large batch is imported, simply Ctrl + A, delete the nodes in the editor. The materials will be accessible still as outlined below.

 


A brief note will appear first, reminding you to select the parent folder — not one of the texture set folders inside it. For example, if your sets are at Textures\Fabric\Boucle_4K\ and Textures\Fabric\Tweed_4K\, select the Fabric folder.



To select the parent folder: either click it once to highlight it and press Select Folder, or navigate inside it so no subfolder is selected and press Select Folder from within it.

 


The plugin scans one level of subfolders and presents a scrollable checklist of everything it finds. Tick the sets you want — use Select All or Deselect All for large libraries — then click Import Selected.

The options dialog also lets you enable displacement across all imported sets simultaneously.




A summary dialog confirms how many materials were created and flags any that failed.





How imported materials are stored and found

Each imported material is assigned to its own hidden sphere, all parented under a single object called Superellipse Materials in the scene tree. This keeps every material listed in the Scene Materials panel at all times, giving you a persistent material tray without cluttering your working scene.



To use a material: open the Slate Material Editor (M), expand Scene Materials on the left panel, or search "Super". Drag any material onto your object in the main 3ds Max viewport. Alternatively right click, Assign to object. 


 

If the materials arent showing after batch import, right click, Update

 


Double clicking the preview sphere will bring it onto the node viewport for refinement if needed. Be mindful large graphs may overlap, so working with a clean Material Slate is always advisable.


 



Tips & Best Practices


Activating Displacement

If a height map is detected, the plugin wires it automatically using FStorm's material-level displacement. Displacement is off by default — tick Activate Displacement in the options dialog at import time to activate it immediately, or toggle displacement_on in the material properties after import.


The displacement power defaults to 0.5cm for standard materials and 0.02cm for fabrics and leather. The displacement center is set to 0.5 (centred) for standard materials and 0.0 (outward only) for fabrics. Adjust displacement_power in the material to control intensity per your scene's scale and geometry

 



 


SSS & Transmission — Glass, Wax, Resins

For complex transmissive materials, the plugin applies sensible defaults — but understanding the key variables will help you dial in the right look for your lighting, scene, and geometry.

 

Volume Distance — controls how deep the colour penetrates the material. Low values place colour close to the surface; higher values create more optical depth. Scale this to match the physical size of your object in the scene. Default is 20cm for both glass and SSS materials.

 



Dispersion — splits light into spectral colours as it passes through the material. 0 is off, low values suit standard glass. Leave at 0 for most clear glass.

Volume Absorption — controls the tint colour of light passing through glass. When a transmission colour map is present, the plugin samples the average colour and applies it here. Adjust in the material properties for stronger or subtler tinting.

Volume Scattering — controls the colour of subsurface scatter. When an SSS colour map is present, the plugin samples the average colour and applies it here. Tint individual channels for skin, wax, resin, or any material with a characteristic subsurface colour cast.

 

Note: FStorm does not support a separate SSS weight texture. When an SSS colour map is present the plugin activates the effect automatically. If an SSS weight map is included in the pack, it is detected but cannot be wired — this is a limitation of FStorm's material model.


 


Anisotropy

Anisotropy controls the directional stretching of reflections — common in brushed metals, carbon fibre, and fabrics with intricate thread level reflections.

 

Full sets (weight + angle maps) - When both an anisotropic weight map and an anisotropic angle map are present, both are wired automatically.

Angle Map Only - Some Superellipse texture sets include only a single anisotropy angle map. In this case the plugin sets a default anisotropy weight of 0.8. To adjust, open the material and locate the Anisotropy Power value. Increase toward 1.0 for a stronger effect, decrease toward 0 to soften it.




Clearcoat weight — (Carbon Fiber, Laquered wood, Car paint etc).

FStorm does not have a native clearcoat layer. The plugin works around this by building a layered material setup automatically when clearcoat maps are detected.

 

How it works: The plugin creates a layered material automatically. A reflective coat material (SE_Coat) is placed on top of your base material using an FStormMixMat node, blended with a fresnel falloff — the coat is most visible at glancing angles and nearly transparent when viewed head-on.

 

 

Clearcoat colour map — wired to SE_Coat's colour slot. This controls the tint of the clearcoat layer.

Clearcoat roughness map — wired to SE_Coat's roughness slot. Controls how sharp or diffuse the clearcoat reflections are.

Clearcoat weight map — wired to SE_Coat's opacity via an SE_CC_CoatWeight node (FStormColorCorrection). The multiplier on this node acts as a 0–1 intensity dial for the entire clearcoat effect. Set to 1.0 for full coat, dial toward 0 to reduce or remove it entirely.

 

 

The coat mask — We create a clearcoat simulation by using an FStormFalloff node, with view angle set to to "View angle IOR mode" This acts as a mask, so the main material comes through from underneath.

 

 

No weight map — when clearcoat colour or roughness maps are present but no weight map, the coat opacity is set to 1.0 by default.

The result in the Slate Material Editor is a three-node setup: your base material, the coat material, and the FStormMixMat that combines them. The FStormMixMat node is what gets assigned to your object.


 

 

Normal Strength — Normal maps are loaded using FStormBitmap's built-in normal map mode — no separate normal map node is needed. The Base settings > Bump on the FStorm PBR material controls normal intensity and defaults to 5cm.

 

If the normal effect is too strong or too subtle for your scene, select the material in the Slate Editor and adjust bump_power in the material properties. Higher values increase surface detail, lower values flatten it.



 

Roughness Adjustment 

The roughness map passes through an SE_CC_Rough node (FStormColorCorrection) before reaching the material. This lets you fine-tune roughness response after import — adjust the multiplier, gamma, or contrast on this node to dial in the right feel for your scene and lighting without re-importing.

 

 

AO Compositing Ambient occlusion is composited with the base colour using an FStormMix node set to Multiply mode. The combined result passes through an SE_CC_Base node (FStormColorCorrection) before reaching the material's colour slot. This gives you a single point of control to adjust overall base colour brightness and contrast after the AO has been applied.

 

 



Supported Maps

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

Base Color, Roughness, Metallic, Normal, Ambient Occlusion, Height / Displacement, Opacity, Emission, Specular, Anisotropic Weight, Anisotropic Angle, Clearcoat Weight, Clearcoat Colour, Clearcoat Roughness, Transmission Weight, Transmission Colour, Subsurface Colour

 

FStorm-specific notes: Clearcoat maps are supported via the layered material approach described above. Subsurface Weight maps are detected but cannot be wired — this is a limitation of FStorm's material model. All textures use native FStormBitmap nodes with correct gamma and colour space settings applied automatically. Data maps are loaded as Mono type for reduced GPU memory usage.

 



Troubleshooting

 

The Superellipse menu does not appear after restart — allow up to 60 seconds for 3ds Max to fully load its menu system. If it is still missing, open the MAXScript Listener (F11) and run SEFST_EnsureMenu() — this re-registers the menu callback and the entry will appear on the next restart. If the problem persists, re-run the .mzp installer.

 

FStorm Render not detected — confirm that FStorm Render v2.0 or newer is installed and appears in your Render Setup (F10) renderer list. Earlier versions may not include the FStormPBR material class.

 

Material warnings in the Slate Material Editor — this typically occurs when the active renderer does not match the material type. FStorm PBR materials require FStorm to be the active renderer. Switch back to FStorm via Render Setup (F10) to resolve warnings and restore accurate previews.

 

No maps found — confirm that you selected the folder containing the texture images directly inside it, not a parent folder above them. The MAXScript Listener (F11) will show which files were scanned and skipped.

 

Unzipped folder not detected — some unzip tools create an extra folder level inside the download. The plugin detects and resolves this automatically when the inner folder name matches the outer one. If the names differ, navigate one level deeper when selecting the folder.

 

Textures appear missing after import — the material references the original location of your texture folder. If you have moved, renamed, or deleted that folder since importing, re-run the plugin pointing to the new location.

 

Material is not visible in Scene Materials — Scene Materials only shows materials assigned to at least one object. For single imports, assign the material to an object and it will appear. For batch imports, the holder sphere handles this automatically.

 

Displacement has no effect — check that displacement_on is enabled and displacement_power is not zero in the material properties. If you imported without ticking Activate Displacement, the texture is wired but displacement is off. Toggle it on and set a positive power value.

 

Normal map looks inverted — bumps appear as dents — the plugin flips the green channel automatically to convert from OpenGL to FStorm's convention. If normals still appear inverted, select the SE_Normal node in the Slate Editor and toggle the normal_map_green checkbox.

 

Colours look washed out or roughness looks wrong — this is a colour space issue. The plugin sets gamma automatically on all FStormBitmap nodes. If setting up a material manually: colour maps (Base Colour, Emission) should have input_gamma on, all data maps (Roughness, Metalness, Normal, Height, AO, Opacity, Anisotropy) should have input_gamma off.

 

Batch import finds 0 sets — confirm you selected the parent folder containing your texture set folders, not one of the set folders itself. The batch tool scans one level of subfolders.

 

Clearcoat material looks like two separate materials — this is expected. The plugin builds a layered setup using FStormMixMat. The FStormMixMat node is what gets assigned to your object.

 

The Scripting Editor asks to reload the file after installing — click Yes. The installer already loaded the script into this session.

 

A WARN line appears in the MAXScript Listener — WARN lines mean a specific property was not found on your installed version of FStorm. The import continues and all other channels are wired correctly. Copy the Listener output and send it to support@superellipse.co with your FStorm version number.




Questions?

If you run into anything not covered here, reach out at support@superellipse.co and include the name of the texture pack you were importing, along with your 3ds Max and Redshift version numbers.

 

×