psuedoNURBS v1.53 - FOR MAX 3.x ONLY
- Description
- Revision History
- Disclaimer
Description
This script speeds up the workflow when working with referenced, meshsmoothed objects (something like metaNURBS in Lightwave). It's basically a massively souped up, interactive version of the MetaPete.ms script that shipped with Max2. To run:
- Open up MaxScript in the utility panel.
- Select "Run Script".
- Browse to where pNURBS-1_5.ms is, and pick it.
- "PsuedoNURBS 1.5" will now appear in the MAXScript dropdown for selection.
Here's a quick rundown of the interface:
-Pick Object: pick an object to work with.
-Enable/Disable PsuedoNURBS: this toggles the object's meshsmoothed appearance on and off. While this is on, you can work on the wireframe lattice and see your changes update in the meshsmoothed version automatically.
Note that this is a "persistent" effect. This means that you can select an object with the Pick Object button, turn PsuedoNURBS on, then use pick object again and pick an entirely different object, and turn PsuedoNURBS on for that object too. Later, you are free to re-pick the first object (with the Pick Object button), and the Enable/Disable button still functions properly. This is really just a long winded way of saying "you can't mess up an object by attempting to smooth it twice".
The four radiobuttons in the Tessellation/Properties area set how much your mesh is tessellated.
Below that there is a dropdown list with four choices. When you choose one, its corresponding value is show in the spinner to the right, which you can then change. The four choices are: Smooth, Relax, Strength, and Sharpness. Relax, Strength, and Sharpness act the same as on the standard meshsmooth modifier.
The smooth spinner basically does the same thing as the Smooth modifier, but acts a bit differently depending on what it is set to. Here's an outline of the values this spinner can have:
- 0: All smoothing information is thrown out, and the object looks faceted.
- > 0 and < 180: If faces are within this angle of each other, they will be smoothed over. This can slow things down for a higher res mesh.
- 180: All faces are smoothed over. This should have no performance penalty.
- -1: A special case, where smoothing information isn't touched, and is inherited from the original mesh.
Manual Update and checkbox: When the checkbox is off (default), the lattice and mesh update at the same time, in realtime. This can be slow for large meshes. Turning the checkbox on enables the Manual Update button. Then the mesh won't update as you edit the lattice, until you actually hit the Manual Update button.
Lattice/Mesh checkboxes: simply toggles the visibility of the lattice or mesh. Handy for test renders, or when you're editing a large lattice and the mesh is just adding visual clutter.
There are also some modifiable startup settings at the top of the script:
- floaterXpos, floaterYpos - position of the floater on startup, in pixels from the top left corner of the screen.
- displayFloaterOnRun - sets whether the floater pops up automatically when you run the script or not. Saves a mouse click...
If there's something more you want this script to do, e-mail me! I'm interested in all feedback (what do you like, what DON'T you like)? Any future updates should be available at footools.com.
< BACK >
Revision History
Version 0.xx (late 97):
- Really buggy private copy... a learning exercise mostly.
Version 1.0 (4.8.98):
- Initial Public Release (not quite as buggy).
Version 1.5 (9.27.98):
- Beware that this code is now _completely_ screwed up, and is put together with glue and duct tape. However, it seems to be a bit more stable as well (
try()catch()
is your friend)... Please watch your head when looking at the source.
- Compacted the interface a bit with a dropdown list/spinner combo... this was something that I was going to wait for the v2.0 rewrite to put in, but since that code was basically already done, and I'm screwing with v1.0 anyway, I put it in...
- In doing the above, Strength and Sharpness were added as changeable values.
- Made 180 the default value for smoothing.
- Replaced trunc function calls with the now standard snipStr in string.ms (used to conflict).
- Nifty (or not so nifty :) HTML documentation.
Version 1.53 (7.29.99):
- The script that wouldn't die, part 1.53. *sigh*... Updated for Max3, added yet more patched code in. I'd liken it to a house of matches held together with duct tape at this point.
- The main difference now is it uses NURMS, and because of this, Relax and Strength options were removed (since they have no meaning for NURMS).
< BACK >
Disclaimer:
While this script has been reasonably tested, and it _shouldn't_ do nasty things to you, your computer, or anything you may or may not have come in contact with at any point in your life, I will not be held responsible if it does. Use it at your own risk.
You may not modify and re-release any part of this script collection without contacting me first.
If this script doesn't do something you think it should or you find bugs, please e-mail me at [email protected].
< BACK >