Search Results for “DP2005” – DIGITAL PRODUCTION https://digitalproduction.com Magazine for Digital Media Production Tue, 03 Dec 2024 15:42:37 +0000 en-US hourly 1 https://digitalproduction.com/wp-content/uploads/2024/09/cropped-DP_icon@4x-32x32.png Search Results for “DP2005” – DIGITAL PRODUCTION https://digitalproduction.com 32 32 236729828 UVPackmaster 2 for 3ds Max https://digitalproduction.com/2022/01/26/uvpackmaster-2-fuer-3ds-max-retro-artikel/ Wed, 26 Jan 2022 09:00:49 +0000 https://www.digitalproduction.com/?p=99249
A look back: In DP 05 : 2020, 3ds Max expert Mike Kuhn dealt with UV unwinding. An annoying task for many, but a meditative puzzle game for Mike.
]]>

When it comes to UV unwinding, not every user is enthusiastic. Many even dislike it. So I belong to the rare group that really likes the meditative work and order of good unwinding. Making the right cuts and creating a beautiful, barely distorted unfolding is only part of the job. Once you have defined all the segments, they still have to be distributed as efficiently as possible in the UV frame. This then resembles a kind of slow, deliberate Tetris.

In the courses I give, I am often asked why it is so important to have a good layout for UV processing. In principle, the square that we see in the UV editor represents a bitmap on which the textures for the respective areas of the model are located. This can be a 4K map, but for games it can also be a 512 x 512 texture or even smaller. This means that every pixel on this layout that does not cover part of the geometry is a wasted pixel that we could potentially have used to provide a better and sharper texture for our object. That’s why it’s important to find a layout that leaves as little open space as possible. Whilst this sounds like a great change from crossword puzzles or Sudoku, it can also be quite time consuming.

UVPackmaster still leaves the first part of the work to us, i.e. setting the cuts and preparing the respective UV islands, but helps us with the second part of the task to be performed. The programme is specially designed to distribute the UVIslands as well as possible within the UV limits.

The add-on itself is available for 3ds Max and for Blender. In 3ds Max, it is used as a modifier that is placed over the UVW unwrap. It can be applied to one object and to several objects at the same time.

The handling of this modifier is not complicated anyway. However, if you simply want to arrange your UV islands neatly, it could hardly be easier. One click on the large Pack UVs button will satisfy the majority of users. The programme then packs the various contiguous segments into the UV frame quite efficiently, and usually much better than 3ds Max’s own UV packer would do.

Each time the “Pack UVs” button is activated again, the previous calculation is discarded and the software takes the initial UV layout as the basis for the next calculation, which may have slightly different results. If you really want to finalise the UV layout, the modifier stack must be collapsed. Of course, this sounds nonsensical in a procedural workflow. However, you could do this with a copy of the original and place a UV unwrap modifier on it, which can then be copied onto the original.

But first, let’s look at the settings you can make to ensure that the plug-in does the best possible job. In the second rollout, entitled “Packing Devices”, you can define which hardware is to be used. UVPackmaster can use the CPU and GPU for the calculation. Normally, the box is already ticked to use all available resources.

Further quality settings can be found in the “Basic Options” rollout. In addition to defining which map channel should be used, a slider can be used to set how many threads should be made available. Basic Margin, i.e. the desired distance between the UV islands, is also specified here. As this distance is added to the islands before the calculation and all islands are then scaled to fit into UV frames, it is not possible to define a really precise pixel value. A more precise calculation of the distance can be achieved with Pixel Margin in the “Advanced Options” rollout. The distance between the islands is set using the “Pixel Margin” slider, and the distance to the edge of the UV tile is set using the “Pixel Padding” slider. As soon as the Pixel Margin value is greater than 0, Basic Margin is ignored and this more precise method is used. Here too, the calculation accuracy can be increased using the “Adjustment Time” slider if required.

The most important slider is probably the one for precision in the “Basic Options” rollout. The higher this value is set, the more precise the calculation will be. Of course, this also increases the calculation time. However, the default value of 200 is usually sufficient. If you want to work with a very small distance between the islands, you can increase the value. A value of over 1,000 is rarely recommended and also leads to significantly longer calculation times. On the other hand, a value that is too low can also lead to inaccuracies such as overlaps. The pixel margin settings ensure that the islands have enough space between them and room to breathe in relation to the UV edge. In the Pixel Margin options, you can define how much space should be kept between the islands and towards the edge. If the “Rotation Enable” checkbox is ticked, the algorithm can also rotate the islands in order to stow them better. Below this, the angles at which the respective island can be rotated can be set. The default value allows rotation in 90-degree increments. Smaller values may allow better utilisation of the UV area, but also increase the calculation times.

If you want to squeeze out a few more pixels of optimisation, you can select the “Enable Heuristic” checkbox in the “Heuristic” rollout. This causes the add-on not to use the first solution straight away and to find other, perhaps better distributions. To ensure that UVPackmaster does not search itself to death, a slider below it can be used to set the time in seconds for which new distribution options should be searched. If the slider is left at 0, the programme will search for the best solution for eternity until the user presses the Escape key to end the search and wants to see the result. However, the use of Advanced Heuristic is only recommended by the author for a model with few UV islands. The advanced search will use a different algorithm for positioning and rotating the UV islands.

When packing the individual islands, they usually have to be scaled to fit into the desired areas. By default, UVPackmaster scales all UV-Islands proportionally to each other, with a few exceptions. It is therefore also important to ensure the appropriate proportionality between the UV islands in the underlying UVW unwrap modifier. If an area is to be given more texture resolution, these UV islands must be scaled accordingly in the UVW unwrap in comparison to the other UV islands.

Pack to Others

From time to time, a situation arises in which parts are added to a completed model or some areas require a new layout. You can then try to distribute these islands manually in the existing layout or have everything repacked and thus lose the previous layout. This is not always a bad thing. However, if you have already prepared some textures or baked textures, you would like to lose as little work as possible. This is where the “Pack to Others” option in the “Advanced Options” rollout comes into play. In this case, only the selected islands are inserted into the existing layout. Only the workflow for this feels a little bumpy to me. You have to select the desired UV islands in the underlying Unwrap UVW modifier, then add the “UV PackMaster” modifier and execute this function. In addition, these selected islands are scaled to fit into the available free spaces and are therefore given a different texel density than the rest. As practical as this function can be, you should think carefully about when to use it.

As we are already on the subject of scaling and if you have already scaled your UV layout so that it corresponds to a defined texel density, you can tick “Fixed Scale” in the “Advanced Options” rollout and the UV islands will not be scaled when packing. Of course, this restricts a few freedoms for the distribution. However, if the “Tiles” option has also been selected in Packing Mode, UVPackmaster can pack the islands onto the next tile if the “Fixed Scale” option is switched on and there is no suitable space in the respective tile.

The topic of UDIMs has become increasingly important in recent years. Where a multi-sub material was used in the past, several UV tiles are now used for one material in order to achieve a higher texture resolution. In UVPackmaster, in the “Advanced Options” rollout under “Packing Mode”, you can set whether all UV-Islands should be distributed on one tile or on tiles. You also have the options “Group to Tiles” and “Group Together (Experimental)”. For simple distribution to tiles, the user can set directly below how many tiles the UV-Islands should be distributed to and below how many tiles make up a row before the next row of tiles is populated.

The “Group to Tiles” function offers interesting options. You can define the distribution of the islands to the various tiles according to different criteria. The option by material will distribute the islands to different tiles according to their material or sub-material in a multi-sub-material workflow. Possible advantages of this are that one material may also have transparent areas and another may not. If all islands are now wildly distributed across all tiles, it can happen that you have to add an additional opacity map, although only a tiny component on this UV tile would need this map. You can also select the Object, Mesh Part or Similarity category to define the distribution across the various UDIM tiles.

If you want to define this completely yourself, you can also set the “Pack Selected” option in Selection Mode and build a modifier stack in which a few islands are selected in a UV unwrap modifier, followed by a UV packmaster modifier that distributes the selected islands on the UV tile. In the “Packing Box” rollout, you can define the tile on which you want to place these islands. Then comes the next UVW unwrap modifier, in which further islands can be selected, and then another UVPackmaster modifier on top, which places the now selected islands. Yes, it’s a bit convoluted, but it’s a way to get there.

Often several UV islands are placed on top of each other to save space and thus achieve a better texture quality. This can be the mirrored half of the model or just a few parts such as tyres, screws or similar. Of course, this only works as long as you don’t use dirt or other clearly recognisable patterns or want to bake information from a model onto it. To cut a long story short, there is a pull-down in the “Advanced Options” rollout called “Lock Overlapping”, in which you can define whether the overlapping of islands should be ignored and they should simply be freely distributed next to each other or whether overlapping islands should be retained as a unit. A distinction can be made between Exact and Any Part. In the first case, the bounding box must fit exactly; in the second case, a partial overlap is sufficient to keep the islands together. The nice thing about these two options is that you can also clearly specify that you want to retain overlaps but separate accidental overlaps.

Whilst most textures are square, it is not always practical to have such a square texture. A snake, for example, would have to be divided into several segments to fulfil the requirements of a square texture. This would result in an unnecessarily large number of cuts in the UV unwinding, which in turn could cause problems with the continuity of the textures. Therefore, the proportions of the tiles can be defined in UVPackmaster. The desired dimensions of the texture to be used can be clearly specified in the “Texture Dimensions” rollout. On the one hand, there is the more time-consuming manual method of defining the corresponding proportions in the UV unwrap modifier below and unchecking “Lock Dimensions” and “Adjust UV Map to Texture” in the UVPackmaster modifier above and entering the corresponding pixel values. Alternatively, you can shorten this process by unchecking the “Lock Dimensions” box, defining the pixel values for the height and width and simply ticking the “Adjust UV Map to Texture” box.

The lowest rollout “Statistics” then shows how many iterations were calculated and how much time was spent on them. More informative for the user, however, is probably the indication of the efficiently utilised area in the UV layout created. This information is also displayed in a small extra window after the packing process.

You can also display the layout of the UV unwrap modifier below in the topmost rollout and thus use this tool to analyse how much of the area has been used effectively. It is a pity, however, that the analysis in the “Statistics” rollout only shows the average of the total area used instead of per tile. But that is already complaining on a higher level.

Group

Another nice thing about UVPackmaster is the licence model. Even though more and more companies are joining this ugly rental model, this is not the case when purchasing UVPackmaster. You pay this very low price once and have a lifetime licence that also includes all future updates. The other big players in the industry should take this as an example. We customers are happy to pay the price for a good tool if our work is not held hostage.

Conclusion

All in all, I am very happy with this tool. As a meticulous person in some digital areas, I often spend a lot of time trying to spread my UVs as well as possible. In my tests, I noticed that I often achieved a similar efficiency of space utilisation as the UVPackmaster did. You might think that I wouldn’t actually need this tool. But what I invest a lot of time in, this tool does in just a few seconds. So if you would like to have a little more privacy or simply want to use your time for other tasks, you could consider buying this tool

]]>
DIGITAL PRODUCTION 99249