Q-Proxies Manual

Index

    1. Version Requirements / License / Installation
    2. Overview
    3. Object Filters
    4. Creating Proxies
    5. Proxy Objects
    6. Display & Render options
    7. Reference Files
    8. Proxy Management / Tools
    9. Using a Render Farm
    10. Help/About
    11. Contact/Support

1. Version Requirements

3dsMax 2015 and higher.
Q-Proxies has been tested succesfully on 3dsMax 2015 to 2023. It should also work properly on future versions. However, if you experience any issue, please report it to contact@splinedynamics.com

1.1 License

With every purchase you get a lifetime license. It’s a node-locked license.
The Regular License lets you use the product in 2 different workstations. It comes with 2 license keys (1 domain per key).
The Corporate License allows you to activate the plugin on up to 10 workstations. It comes with 2 license keys (5 domains per key).
You will get free upgrades for the same major version of the product.

1.2 Installation

  1. Unzip the content of the .zip file and then drag the “.mzp” file onto one of your viewports in 3ds Max . The plugin automatically installs itself.
  2. A dialog called “Software Activation” pops-up. Enter your license key in the text field. (You received 2 license keys by email when you purchased the product).
  3. If the license key is correct, Q-Proxies will start.
  4. To add the plugin’s icon to a toolbar, go to the Menu > Customize > Customize user interface…
  5. Go to the “Toolbars” tab and pick the category “Spline Dynamics”.
  6. The plugin’s name (“Q-Proxies”) must be listed there. Just drag it onto a toolbar and you’re done!

2. Overview

Q-Proxies is a powerful scene optimizing tool for 3dsMax. It helps you quickly downsize your heavy scenes through the automatic creation of proxy meshes, improving the viewport performance and reducing the loading/saving times. It’s an amazing timesaver that will greatly speed up your workflow and make your life much easier.

The plugin uses standard 3dsMax meshes and works independently from your current renderer. Therefore, it’s compatible with all render engines and third-party proxy objects.

Some powerful features: it supports animated objects and characters; it takes advantage of mesh instances; can convert grouped objetcs into a single proxy mesh; it offers 5 different types of proxy mesh, including the possibility of using a custom mesh.

The plugin works in a simple way. You just set which objects to replace with proxies, pick your preferable Preset, adjust a few parameters and hit ‘Generate Proxies‘. Q-Proxies will do all the work for you. You’ll get a lightweight scene populated with proxy meshes, linked to external ‘.max‘ files, which you can optionally edit at any time.

To pick the target objects, you can simply select them or let Q-Proxies search for high resolution meshes in your scene, using smart filters that you can easily setup.

The plugin’s UI has 5 main areas: 1. Object Filters, 2. Create Proxies, 3. Manage/Tools, 4. Display/Render Options, 5. Help/About.

3. Object Filters

In this area you set wich objects from your scene you want to convert to proxies.
Generally, well candidates for proxies are meshes with high amount of faces or with a lot of duplicates in scene.
Q-Proxies works only with meshes. Any other type of object will be exclude from selection.

You can either manually select the target objects or use Q-Proxies filters to automatically pick them from scene by number of faces, by size or by static/animated condition.

Static / Animated (3 checkboxes)
These options let you choose what type of objects to target:
1. static. Without any animation.
2. animated (PRS). With Position/Rotation/Scale animation.
3. animated (deforming). With vertex/modifiers animation type. (Generally organic/character animation)

This options add up to each other. For example, if you want to work with only static objects, you will just mark the first option. But if you are working with animated characters, you may want to mark all the 3 options, because some characters can have either static parts, moving/rotating parts and deforming geometry (skinned).

Selection / All geometry (2 radio buttons)
This tells the plugin to apply filters either to selected objects or to all geometry in scene.

Include Instances (checkbox)
If checked and you will work on selection, Q-Proxies will automatically add to selection all the instances of selected objects. (Recommended for most cases)

Ignore hidden (checkbox)
Excludes hidden objects.

Min./Max. num. faces (spinner values)
Set the limits for minimum and maximum number of faces allowed per object to be a target.

Size Filters
Use Size Filters (checkbox): enables to additionally filter objects by size.
The size value corresponds to the biggest dimension of the object’s bouding box, considering world XYZ axes. (You can check this with the Measure utility or estimate it by watching at the grid)
Min./Max. obj. size (spinner values): the maximum and minimum size allowed per object, taken from the longest side of its bounding box.

Select Filtered Objects (button)
By pressing this button you can select and check which objects will be affected after applying the filters.
Be careful with 3dsMax groups. If an object is part of a group, the entire group will be selected but that doesn’t mean all those meshes will be affected.
If frozen objects are targeted, this option unfreezes them.

4. Creating Proxies

This is the main panel of the plugin, where you set the parameters for creating the proxy meshes from the targeted objects.

The easiest way to setup this, is to first pick a predefined Preset and then adjust the specific options if necessary.

Presets (dropdown list):
The plugin comes with 8 useful presets that help you quickly setup the main parameters for generating proxies:

  • Deafult: suitable for most cases.
  • Rocks/Stones: uses a high polygon reduction.
  • Vehicles (static): uses Convex Hull as mesh type and turns grouped objects into a single proxy.
  • Vehicles (animated): makes a lowpoly version, keeping all objects separated to handle animation.
  • Vegetation: uses Vertex Cloud mesh type for a more efficient representation. Also suitable for wire fences and objects with multiple submeshes.
  • Vegetation (animated): suitable for plants, trees or any object/character with a slight animation, like being moved by the wind. It uses Vertex Cloud.
  • Sculptures/Statues: creates a lowpoly version, with enough vertices to preserve some detail. Also suitable for still characters.
  • Animated Characters: it bakes the character/vertex animation to a lowpoly version, attaching all character parts.

Load/Save options:
Let you load and save your own presets to disk.

Convert copies to instances (checkbox)
If checked, it tells the plugin that before starting the proxy creation process, to search for exact copies of the targeted objects in scene and convert them to instances.
This is a powerful option and it is recommendable to leave it active in most of the cases. Q-Proxies takes advantage of instanced meshes to generate instanced proxies, saving just one duplicate of every mesh at the reference file. This results in a smaller file size and faster object replacing during rendering.

Grouped objects as single proxy (checkbox)
If checked, the plugin will treat 3dsMax groups as a single proxy and attach all objects in every group or use a single mesh in replace of them (depending the option you select at the Mesh Type dropdown list).
This can considerably reduce the weight of the scene and its file size. However, use it with care, because there are some situations in which it’s better to avoid it, like in these cases:
1. If you need to manipulate objects inside groups separately. 2. If you are working with animated objects inside a group. 3. If you plan to change the materials of the objects inside a group (these changes wont be reflected when proxies are replaced during rendering).

Mesh Type (dropdown list)
The plugin gives you 5 different alternatives that you can use as a proxy mesh:

  • From Source: uses a copy of the original mesh. If Use Polygon Reduction option is on, then you will get a lowpoly version of the source object.
    (This works generally good for most cases, except for those objects that contains a lot of submeshes o tiny faces, like vegetation, wire fences, nest-like shapes, etc.)
  • Convex Hull: creates a convex mesh that wraps original mesh, with a very low resolution.
    (Recommended when require to have very lowpoly proxy meshes but they don’t need to accurately represent the original object’s shape. Very useful for cars, rocks and many others)
  • Box: creates a box mesh from the local bounding box of the object.
    (Useful for objects whose shape resembles a box and they don’t have a main role in the scene, like very distant buildings, packing boxes, containers, etc.)
  • Vertex Cloud: shows only the vertices of the original mesh. If you activate Polygon Reduction, you can control the amount of vertices shown.
    (Very useful for vegetation, wire fences, nest-like shapes, etc.)
  • Custom Mesh: lets you pick a custom mesh for your proxies. When selected, the button ‘Pick Proxy Mesh‘ (below) turns enabled for that porpose.
    Take care with the scale and transforms of the object you pick, because the proxies will inherit the transforms of the original objects.

Rebuild proxies (checkbox)
You can rebuild already generated proxies to change their aspect or parameters if you like.
If this option is active and there are proxies selected, Q-Proxies will first bring back their original objects and then reprocess them together with the rest of the objects selected. If inactive, all proxies in scene will be excluded from the proxy generation process.

Save objects (dropdown list)
After creating the proxy meshes, the plugin saves the original objects in external ‘.max’ files, called reference files. You can edit these files at any time and the changes will be reflected when you render the scene with proxies.
There are 4 ways in wich the plugin can save the reference files:

  • All together: saves all original objects together in a single ‘.max’ file. This is generally the best option because it processes faster and saves disk space.
    In case you are going to need to make changes on the original objects later, you may find more comfrotable to use one of the following options.
  • By Group: saves every group of objects (top-level group) in a separate file.
  • By Layer: saves the objects in files, separated by layer.
  • Individually: saves every object in a single file.

Polygon Reduction

The plugin can automatically make lowpoly versions for all targeted objects, to use as proxy meshes. These parameters are only available for 2 Mesh Types: From Source and Vertex Cloud.

Use Polygon Reduction (checkbox): enables the Polygon Reduction parameters area.

Polygon Reduction parameters area:

– Mehtod (dropdown list): lets you choose between 2 different methods of reducing polygons: MultiRes and ProOptimizer. They correspond to the modifiers of the same name, which are used by the plugin to perform this action.

– Average Vertices (spinner value): the average number of vertices you want the resulting proxy meshes to have.

Baking Animation

Q-Proxies supports fully animated objects and characters. It works by baking the object’s animation using 3dsMax’s Point Cache modifier and saving the cache files together with the proxies’  reference files.
It’s a very powerful feature. Imagine you have many animated characters in a scene or a very high resolution animated character that is causing a low viewport performance and making the scene hard to manipulate. Or the rigs of your characters have too many objects (bones, shape controls, etc.) and that makes it difficult for you to find other objects in the scene to work with.
This plugin can bake these animated characters/hierarchies to a single lowpoly proxy mesh, attaching all meshes from the same character together and removing all the rig objects.

The Animation Baking parameters are only available for 2 Mesh Types: From Source and Vertex Cloud.

Use Animation Baking (checkbox): enables the Animation Baking parameters area.

Animation Baking parameters area:

– Sample rate (spinner value): the baking frequency in frames. By default it is set to 2, which tells the plugin to capture the object’s animation every 2 frames.
High values means lower accuracy in representing the animation but it process faster. Low values means more accuracy but it takes longer to process.

– Attach all character parts (checkbox): If checked, the plugin attaches all character geometry together to make a single proxy mesh. Otherwise, the character parts are baked as separate objects.

 

Generate Proxies (big button)
Starts the process of creating proxies.

The process consists in the following steps:
1. Filter geometry in scene or selection according to the Object Filters setup.
2. Convert copies to instances, if the option is checked.
3. If ‘Group objs. as single proxy’ is checked, then attach grouped objects together.
4. Make the polygon reduction, if corresponds.
5. Bake the objects’ animation, if corresponds.
6. Save the reference files to disk.

The reference files are saved to the current Q-Proxies folder. By default, this folder will be created at the same path as the 3dsMax scene file. This is specified at the Proxy Managment section, explained later on.

5. Proxy Objects

The proxy objects created by Q-Proxies are 3dsMax standard Editable Meshes. You can freely change their geometry if you like, by editing the mesh.
You can change their position, rotation or scale, animate them, add modifiers, change their material, clone, merge or save them separately if you want. The changes will be transferred to the original objects during render (except for specific cases that we’ll see). The only requirement for proxies to work properly is they must refer to a valid reference file with valid reference nodes (see these concepts below).

The plugin identifies its proxies by adding a modifier called Proxy Attributes, wich contains important information and parameters:

Reference Nodes:
This is a non-editable text box that lists the name of the original objects (reference nodes) to which the proxy is linked to. Those objects will be brought to scene in replacement of that proxy during render.
There can be only one reference node or more. In the last case, the proxy could be referencing a group of objects or the body parts/bones of a character.

Reference File:
Informs the location of the file that contains the reference nodes.
With the button ‘change location‘ you can set a new 3dsMax file or update the location of the existing one. Useful if you have moved the file to another place and want to manually relink the proxy. (There’s also a tool for this porpose at the Manage/Tools section, explained later on).
Reference files are standard 3dsMax files, wich you can optionally edit at any time and work with proxies like with 3dsMax XRef objects.

XRef Mode:
This simple checkbox hides a great power. It defines whether the proxy must act as a regular proxy – transfering its material and modifiers to the reference nodes – or as a XRef object – bringing the original objects intact, with their materials and modifiers.
If you have created the proxy with the option Save Objects -> all together, this XRef mode is initially off. Otherwise is on, because the plugin assumes you have saved separate files to edit them later. Anyway you can change this behaviour at any time.

If you want to keep the proxy object in scene as a regular mesh, you can remove its proxy condition by simply deleting the Proxy Attributes modifier. So, it wont be replaced at render.
If you want to keep the proxy but are afraid of accidentally removing this must-have modifier, you can collapse the modifiers stack. The proxy attributes will be transferred to the base object (Editable Mesh).

Before rendering your scene with proxies, it is advisable to first check for possible invalid proxies. There’s a tool for that porpose called ‘Select Proxies w/ Missing References‘ located at Manage / Tools section, explained later on.

6. Display/Render options

At the bottom of the plugin’s UI are these 2 controls.

Display Proxies (dropdown list):
Lets you change the way proxy meshes are shown in scene: Shaded (normal), See-through (X-Ray mode) or Bounding Box (equivalent to display as box object property).

Use Proxies on Render (big button):
This is a switch that allows you to activate or deactivate the replacement of proxy objects during rendering with the corresponding original objects.
By default, this function is always active, even if the plugin is closed, so you can render the scene at any time.

Important! The plugin must be installed at the computer where you plan to render the scene containing Q-Proxies objects. Otherwise, the meshes wont be replaced.

7. Reference Files

The reference files of Q-Proxies meshes are saved by default in a folder created specifically for that porpose, located at the same directory of the 3dsMax scene file. The name of the folder is the same as the scene file, with the suffix “_qproxies”. There the plugin save both ‘.max‘ files (for reference nodes) and ‘.xml’/’.mc’ files (Point Cache modifier files for baked animated objects/characters).

You can change the default location of this folder at the plugin or move the existing folder externally, but it is not recommendable to rename it. Anyway, the plugin comes with several tools to relink proxies to their reference files, collect them all in a local folder or clean unused files. All those tools are explained at Manage / Tools section.

There are 4 ways to save the reference files of a proxy. These were previously explained at Creating Proxies, Save Objects options.
If you want to use Q-Proxies objects as regular proxies, before creating the proxies , you should set Save Objects -> ‘all together‘. On the other hand, if you want to use them as XRef objects, you should use one of the other options.
Be careful using the option to save them individually, because if there are too many objects/files, the process of replacing the proxies at render time will take longer (delaying the general render).

As told before, you can edit the meshes in the reference files and those changes will be reflected when rendering the proxies linked to them. Note that only the objects that you originally converted to proxies (those listed in the Proxy Attributes modifier -> Ref. Nodes) will be used for the replacement at render time. Additional objects will be ignored, so if you add meshes should attach them to the original objects.
Missing reference nodes in the reference file will be skipped. Also if you rename objects, the plugin wont recognize them, so beware of that.

If the plugin cannot find the reference file of a proxy, it will additionally search for it in the default local folder. It is a good practice, before rendering a scene to collect all proxies in a local folder and check for missing reference files and reapairing them with tools for that porpose explained at Manage / Tools section.

8. Proxy Management / Tools

In this section there are several tools to manage proxy meshes and reference files, and some additional general tools.

Proxies (area)

Here are functions to organize and manage Q-Proxies meshes.
The options at the top of this area lets you specify wich proxies will be affected: selected / all proxies, hidden, frozen.
Please note that the last 2 functions (“Select Proxies w/missing References” and “Open Refence File“) wont be affected by these setings.

Select Proxies
Search for proxies either in selection or in the whole scene and select them.

Bring Original Object/s
Replace the proxy meshes with their corresponding original objects.
Note: the reference files wont be deleted. There’s a tool to clean unused files that will be explained later.

Relink Proxies to Current Folder
Update the information that links every affected proxy to its corresponding reference file, so it will point to the current Q-Proxies folder (See Reference Files area for more info).

Relink Proxies to New File
Opens a file explorer and lets you pick a new reference file (.max) for the affected proxies, updating their link information.

Select Proxies with Missing Refs.
Select all proxies in scene that have missing or not found reference files.

Open Reference File
Opens the reference file for the selected proxy. (Considering only the first proxy in selection if there’s more than one selected)
This lets you quickly edit or check the reference object.

Reference Files (area)

These commands are for managing the reference files of proxy objects.

Default Location (text box)
Displays wich is the current Q-Proxies folder, where all the proxy reference files will be saved during the proxy creation process.
There are 2 little buttons to the right for changing the default location of this folder:
Set relative path (rel.): set the current Q-Proxies folder to the same path as the 3dsMax scene file.
Set Absolute path (set): open the file explorer for you to pick a  folder.

Open Current Folder
Open the current Q-Proxies folder.

Remove Unused Files
Delete those files in the current Q-Proxies folder that are not linked to any of the proxy objects in the current 3dsMax scene.

Collect Refence Files
Collect copies of all reference files and store them all together in the local Q-Proxies folder. Creates a new folder if does not already exist.

General Tools (area)

Show/Hide Scene Textures
Switch to display or not the material textures of the objects in scene. Useful to boost viewport performance on scenes with heavy textures.

Convert Copies to Instances
This is the same function as the one in the main parameters of the Proxy Creation section, but you can run it independently ay any moment.
It takes the objects affected by Object Filters and search for exact copies among them. Then turns them into instances.

9. Using a Render Farm

If you plan to render 3dsMax scenes containing Q-Proxies objects on a render farm, you need to consider the following aspects.

You don’t need any additional Q-Proxies licenses or full installations. The plugin comes with a little free script called Q-Proxies Manager, wich you must install on every render node.

It’s very easy to install. Just drag it onto any 3dsmax viewport and that’s all. The script will remain at 3dsMax users startup folder and allow to render Q-Proxies objects when necessary.

If you can’t access 3dsMax on the render nodes, you need to perform a manual installation. Here are the steps for that:
  1. Change the extension of the file ‘Q-Proxies_Manager…mzp’ to .zip.
  2. Unzip it to see the content.
  3. The file you need is: QProxies_OnRenderActions.mse
  4. You need to copy that file to the users startup folder of 3dsMax.
    It is something like this:
    C:\Users\yourUserName\AppData\Local\Autodesk\ 3dsMax\2019 – 64bit\ENU\scripts\startup
  5. That’s all.
To use it on an online render farm, you should ask them to install the QProxies Manager there.
(You can distribute that file for free. No license needed for that.)

If you want to avoid all this setup work, you have the alternative to quickly bring back all original objects to scene before rendering, so there will be no Q-Proxies objects at all. Go to Manage/Tools section, select the option to affect All Proxies  and press ‘Bring Original Object/s‘.

10. Help / About section

This section includes links to Q-Proxies Online Tutorials, SplinDynamics Youtube Channel and this manual.

The About area shows the plugin edition type (Trial, Lite or Full Edition) and version number. Also the credits for this plugin.

Activate your License (button)
Lets you enter you license key to activate the product. (You got it by email when purchased the plugin).

Upgrade to Full Edition (button)
This button is only enabled when your are using the Q-Proxies Lite Edition. It lets you upgrade to Full Edition by opening your browser at the corresponding page at SplineDynamics.com site.

11. Contact / Support

For customer support or making suggestions or business proposals, please don’t hesitate to contact us through this Contact Form.

You can also write us directly to contact@splinedynamics.com.

All feedback is greatly appreciated. We will try to answer all your inquiries as soon as possible.

 

Enjoy Q-Proxies!

Share