SDK and Scripting Enhancements
PURPOSE
Please help us collect ideas for SDK and scripting-related enhancements.
What’s on your top ten list? Add a vote to any idea you also think is important!
HOW TO USE THE FORUM
- Each user has 20 votes for each forum
- Each idea can have no more than 3 votes by a single user
- If you enter an idea, it will cost you 1 vote – therefore try to make sure the idea doesn’t already exist
- The more precise and detailed a description you give, the more likely your idea will rise higher in the list
- When an idea is implemented, votes are returned to all the users that voted
- User can change their votes at any time
- Admins can move, edit and delete ideas as they see fit to better meet the goals of the forum
- We will flag ideas that are getting our attention as “under review”. Because of limits on what we can say publicly, that is as far as we can go with commenting on a particular idea. If it is “under review” it simply means we’re studying it for possible implementation or gathering data, but there is no commitment to do it.
Remember, we do not release versions on “internet time”. Unlike the web sites this was designed for, our process of releasing functionality is much longer term. So there won’t be a constant churn of ideas being “closed out” by us and votes returned to you. For this tool to map to our process, we will be looking at the data during a short period of the year (3-6 months) and deciding what actions to take after that. Don’t expect to post an idea and a month later for us to respond in some fashion to it. The most likely scenario is that you’ll post an idea and if a lot of other people vote on it, we’ll eventually flag it as “under review” – but that could be 9 months later or longer.
Please treat this as an experiment in working with the community. Even if Uservoice is not the final home for this, we’ll do our best to export all the ideas to whatever future system might take its place. Your voice will persist.
Note: It’s important to realize that these lists are simply raising the quality of the feedback we get from the community. They are not a replacement for how we define the features for any given release. They are valuable input, but beta input, product strategy, focus, innovation and other factors are also important aspects we consider.
AVAILABLE PUBLIC FORUMS
Default Settings
Please tell us which user defaults settings you change the most! Enter a description of the default or ini setting and then see how the community votes on it. Remember these are only the user preferences you can either set in the interface or ini files.
General Feature Requests
Please help us collect ideas for new features and general product enhancements. What’s on your top ten list? Add a vote to any idea you also think is important!
Small Annoying Things
This forum is about all the little annoying quirks and problems in 3ds Max that you might have gotten used to over the years but that really should be fixed.
Remember, keep these ideas to tweaks of the workflow rather than large, sweeping changes to the tools. Try to imagine how much effort a programmer has to go into in order to implement your suggestion. Anything requiring major UI changes or new UI dialogs will need to go in another forum.
SDK/Scripting Enhancements
This forum is about improvements to the SDK or Script-related.
-
Access to Unwrap UVW Methods Without Edit UVW Window Open
Try the following steps
1) Open a new max file. Create a Plane with 1 face. Collapse it to Editable poly. Add a Unwrap UVW modifier on it.
2) Select Plane01
3) Go to modify panel, open up the unwrap, click edit, you should see the object's uvs.
4) Run the following maxscript code...Code:
obj1 = $Plane01
sourceverts = polyop.getMapFace obj1 1 1
for v in sourceverts do
(
print (obj1.modifiers[1].unwrap.getVertexPosition currenttime v)
)You should see results like this...
[0,1,0]
[0,0,0]
[1,0,0]
[1,1,0]These are the results you expect.
5) Close the UV Window.
6) Click on the…60 votes -
Complete Maxscript Access to Loft Compound Object
Right now the Loft compound object does not have complete script access. I'd like it to become fully maxscript accessible.
15 votes -
Render Command Needs to be able to Render any Viewport, or the Locked Viewport
Currently you can render from a camera view like this...
render Cam:$cam01
However, there is no way to render from the front, left, top, etc viewport. It would be great if you could pass a viewport index to the render command. Something like this....
render viewport:2
This would render the top viewport if you had a 4 viewport layout, and the second viewport was set to top.
Also useful would be if you could have a command to render whatever viewport the render dialog was currently locked to. Something like this....
render uselockedview:true
Of course, a way to stop these…
2 votes -
Complete Maxscript Access to Scatter Compound Object
Right now the scatter compound object does not have complete script access. I'd like it to become fully maxscript accessible.
2 votes -
Ability to Create and Manipulate Knots Inside of Curve Controls
I'd like to see maxscript access to any Curve Control that exists inside of max. Like the curve control that exists in the output area of max bitmaps and procedurals. For example, I'd like to be able to take the standard curve and do operations to it such as
1) Creating Knots
2) Move Knots
3) Turning a knot from Corner to Bezier Smooth3 votes -
node based maxscript editor
It would be nice to have node based maxscript editor, there we have acces to all parameters from objects and link, what we wants to each other and every parameter will be exposed here..
214 votes -
Python
Integrate Py3Dsmax by Blur.
http://code.google.com/p/blur-dev/wiki/Py3dsMax455 votes -
Intellisense-like system.
Popup help and description for commands and autocompletes for commands and user variables
212 votes -
functions list on left side from file, like typical IDE's
almost all famous/ even small free utils have this feature. also i can see, autodesk using scite as scripting IDE. really love this. if this one missing feature is added. life will be lot easier for all scripters.
81 votes -
More interaction of MaxScript-Max in terms of callbacks and accesibility.
More interaction of MaxScript-Max in terms of callbacks and accesibility.
27 votes -
"Recently Installed" script category in Customize UI Dialog
It'd be great if the Customize User Interface screen had a category that listed scripts by date so you could easily find a script you installed.
Most user contributed scripts are categorized by an arbitrary category name (usually the author's name or username) but as an end-user it's not clear where to find those scripts. A "recently installed" category would make that process really quick & easy.
23 votes -
Proper support for multidimensional and jagged dotNet arrays
The dotNet interface in MAXScript does not handle multidimensional and jagged arrays properly, e.g.
Double[,] myDoubles
or
Point[][] myPolygonsThis is a major problem for using math libraries as matrices are often stored that way.
3 votes -
Mathematical/geometrical library for MAXScript
MAXScript needs more beef when it comes to advanced math problems. Basic algorithms like Singular Value Decomposition and better large matrix operations are sorely needed. Some of this could even be added through the .NET interface.
118 votes -
Built-in function to generate keyword list
For any sort of syntax highlighting, it is important to get an up-to-date list of predefined keywords. MAXScript should have a built-in function to generate that list; after all, the MAXScript editor seems to have access to such a list.
8 votes -
Multiple MAXScript editor windows
When working on larger projects with multiple script files, or when comparing code between files, it would be important to be able to have more than a single script window visible at a time.
124 votes -
Auto-highlight selected text in current script
Double-click/select a variable name in the MAXScript editor and all the other occurrences of that text will automatically be highlighted. This behavior can be tested in Notepad++ and is extremely useful for quickly finding the places where a variable is modified, a function defined etc.
47 votes -
Auto-indentation in MAXScript editor
The Matlab editor has a great feature that allows you to select a bunch of code and then auto-indent this code, based on the code blocks (brackets etc.). This would be really nice for copy-pasting code around.
72 votes -
MAXScript breakpoints and step/trace function
Being able to toggle breakpoints in the MAXScript code and then to single-step through the lines of code while watching some variables (like in Visual Studio) would be great
115 votes -
Make sample code that actually compiles without errors
Every class should have a sample that compiles without errors. I'm still trying to make my first helper, but I'm stuck on the error message “cannot instantiate abstract class”.
16 votes -
Update the sample code
Some of the sample plugin code is pretty much unchanged since Max 2 or 3. A good example is the particle code. I really can't imagine that the actual code used in Max is the same as the sample code in the SDK (and if it is, why hasn't it been dragged kicking and screaming into the 21st Century?)
40 votes
- Don't see your idea?