Custom Normals Tool

3 votes
Version: 
1.2
Date Updated: 
11/03/2019
Author Name: 
Benjamin Boscher

Documentation
Improvements from 1.2 release.

A fast and non-destructive solution for real time hard surface modelling using chamfers and custom vertex normals.
This is a very versatile tool that will greatly help you dealing with "medium poly" workflow.

Using chamfer modifier allows you to focus on the main shapes only and gives you a real time preview of the final render.
Once you're done you calculate the normals in 1 click, It makes the iteration process very fast.
If you collapse the chamfer modifier, or don't use it at all, you can still calculate the normals with a "face weighted" approach or based on custom polygon selection.

Update 2019/05/14, Version 1.1:

- Made compatible with 3DS Max 2015.
- Fixed the bug that crash the Chamfer Unit rollout when clicking twice the same unit.
- Added the possibility to force ignore the chamfer modifier by pressing CTRL. It works on Faces By Weight and Compute Normals buttons.
So you can select faces by weight and calculate the normals based on face area weight instead of chamfer modifier even when you have a chamfer modifier in the stack, it's sometimes useful.

Update 03/11/2019, Version 1.2:

- Now handle curves way better (chamfers with more than one segment): flat surfaces adjacent to the curves now have their normals perpendicular when clicking "Compute normals". Make sure the chamfer modifier with one segment is on top.
- Select faces by weight improved when using chamfer modifiers: now select flat surfaces only , hold CTRL to select flat surfaces and curves.
- Now update chamfer options of the selected objects when changing the radio buttons and holding CTRL or SHIFT (All edges, Unsmoothed, Selected).
- No longer remove poly select modifier from stack after clicking "Compute selected faces".
- Undoing after changing chamfer size in the tool no longer require pressing CTRL + Z multiple times.
- Fixed button text for "Compute selected faces", "Poly select" and "Faces by weight" in 3DS Max 2017.

Additional Info: 

Key features:

• Non-destructive

• Everything works on any modifier stack

• Calculate normals based on:

  • - Chamfer modifiers (very high accuracy)
  • - Face area weight (face weithed normals)
  • - Custom polygon selections

Installation:

To install drop the .mzp file in the viewport (or click Scripting -> Run Script -> and select the .mzp file)

Then click Customize -> Customize User Interface -> Click on the Toolbars tab -> Select the N00BY category -> Drag and drop Custom Normals Tool from the list to the toolbar.

Notice: you can move the button in the toolbar using ALT + drag.

Disclaimer:

Since the chamfer modifier was first implemented in 3ds Max 2015 you can't use "Apply Chamfer" and the other functions based on chamfer modifier in any version before 3ds Max 2015.
The rest of the script should run fine though.

This tool was tested in 3DS Max 2014, 2015, 2016, 2017, 2018, 2019 and 2020 on a Windows 64 bit machine.

Special Thanks to:

Jack Kirkham, Josh Van Zuylen, Luan Vetoreti, Johann Bailleul and Wai-Hung Wan for the awesome feedback :)

Version Requirement: 
2015 and up
Video URL: