Monday, February 28, 2011

Mirror Animation modifier 0.4

Just tiny but wanted improvement of my scripted modifier plug-in Mirror Animation.

Friday, February 25, 2011

Autodesk CAT tutorials

New series of CAT tutorials at 3ds Max Learning Channel.

Thursday, February 24, 2011

RTTassist 1.0

I glad to see that my friend Kostadin Kotev finally release his awesome RTTassist script. He works together on RTTassist with Martin Punchev (game artist).

Original description:

RTTassist is a free MaxScript toolset shaped in a beautiful interface that automates the tedious process of texture baking. It has a wide range of features, but most especially it is designed to give you better user experience! Take a look at some of the main features:

  • Explode all objects using an unique vector so there are no overlapping objects and there is enough space between them.

  • Produce the best quallity, normal, Ambient Occlusion and other map types.

  • Render using "Smart" , an algorithm that saves rendering time by processing less important objects more quickly.

  • Render using the "Isolation" method - a more memory efficent way of rendering.

  • Combine all rendered maps together in a single resulting map.

  • Create a custom render presets for every case and share them with your collegues.

  • Easy to use interface and "click-of-a-button" workflow.

  • LiveLog - Instant visual feedback at every step.

For details check the official web site.

Monday, February 21, 2011

B-Vertex Eraser v.2

B-Vertex Eraser is one of my scripts for model optimization (especially after boolean operations). It remove vertices that shared exactly 2 edges. Well, the script is very powerful even like it is. It works on selected vertices and has undo record. But as you can guess, if the vertex connect 2 edges which are not straight (parallel), then removing this verts will deform the object surface, destroys original geometry.

About 3 weeks ago I received request to improve that script by supplying option to set threshold in degrees to obtain full control which vertex must be removed. Yes, fully fair-minded request, w'd been nice improvement, that option will make the script real time-saver.

At the moment I update the script just a little bit in that direction. Now if you hold SHIFT key while execute the script then will be removed only vertices that connect 2 straight (parallel) edges.

Unfortunately I delay work on this so long and recently I was able to play with it only for about an hour, and in despite of it looks so easy, after a few tests I end with very mix-in results. Now, just to save long waiting, I post this non-final (makeshift) solution, and I'll leave the work on 'threshold-version' for the next time when I have enough time to solve it properly. I hope so even in this stage it's an useful tool for you though.

Sunday, February 20, 2011

Random(De)Select v.2

A requested update of my Random(De)Select script. Now you can append to selection random percentage of objects by measuring the amount from selected or non-selected objects.

In other words, with you has for example 160 objects and 100 are selected and want to append new 50% to the selected, you have 2 options - if you get the % amount from selected then 50 new objects will be appended and you'll end with 150 selected objects (100 + 50), but if you choose % from non-selected, the amount will be 30 (50% of 60) and you'll end with 130 selected objects.

I hope this new improvement is welcome.

Select objects by material name

It's a MaxScript question posted in ScriptSpot, and here is the function I post to help:
-- function
fn findObjsByMtlName name = (
local theObjs = #()
theMtl = (for m in sceneMaterials where \ == name collect m)[1]
if theMtl != undefined do (
theObjs = for n in (refs.dependents theMtl) where \
superClassOf n == GeometryClass collect n

-- usage
select (findObjsByMtlName "Grass1")

Note that the function is case sensitive, ie "Grass1" is not equal to "grass1". I can modify it to become unsensitive using Max toLower() or toUpper() functions, but this way we risk to get more than one material and that is out of the goal.

Friday, February 18, 2011

Modeling Soviet Machine

High poly modeling tutorial (3 parts video series) by Martin Kostov at CGTuts+ . As the author said: This is a great and easy to follow tutorial for both beginner and intermediate 3ds Max users alike.

Wednesday, February 16, 2011

3ds Max Community Wishlist

Ken Pimentel announce new Autodesk initiative that try to handle Max users wishlist with voting system. How this works read at Pimentel's blog.

XBR webinar news

Ken Pimentel announce on his blog first poll results and video recording from the second Excalibur (XBR) webinar.

Quick Mask 1.4

Another requested update of my Quick Mask script. Now the script will use MentalRay or Vray renderer if mr_Proxy or VRayProxy exist in the scene. Enjoy.

Monday, February 14, 2011

MAXScript 101 become Free

The creator of Maxscript (John Wainwright) has made his previously commercial training DVD (Maxscript 101) available for free on Vimeo. Read original news.

Motion blur using velocity

New compositing tutorial by Ramy Hanna on adding motion blur using velocity pass.

Kinect Tutorials

Motion capture PDF tutorials by Reuben Fleming for Kinect-Motionbuilder-3dsMax workflow.

Friday, February 11, 2011

Split Material Library

Split Material Library is one of my recent max scripts.
* (You can get the script more quickly from my web archive)

Split your Material Library (.mat files) on parts using chosen amount of materials per file into new file sequence with enumerated file names and save them into the same (source .mat) folder.

Early of January I help a friend of main to split his material libraries into files holding 24 or less materials per .mat file, to can easy batch loading them to Max Material Editor for processing, so, there is, this mini tool goes out. And to be more customizeble (not constant 24), I added a spinner to enter desired amount of materials per file you like.

Thursday, February 10, 2011

Quick Mask v.1.3

Minor (requested) update of my Quick Mask script. Now apply two-sided material to can render object's backfaces. I miss this feature before because usually I not work with open geometry. I hope this little improvement made the script more useful.

Chaos Group acquired ASGVIS

Chaos Group announces acquisition of Baltimore-based software developer and visualization firm, ASGVIS, LLC. Read the news at ScriptSpot or find more at Chaos Group official web site.

Wednesday, February 9, 2011

MAXScript tip - Preserve sub-object selection with addModifier

Well, this is a coding tip and I beliеve its a nice and useful tip for all max scripters. It's about some limitation of addModifier function that does not preserve the sub-object selection that might be active in the modifier stack when adding the modifier.

Btw, it's a bit strange to see that this limitation of addModifier lie in Max from version 3 to the nowadays, nm, however, if we want to preserve the sub-object selection when we add a modifier, the help docs suggest to use the modPanel.addModToSelection() method. That's correct, but for non scripters need to say that we try to avoid modPanel interface in our coding always then its possible, mostly for good performance but and by other issues.

So, the solution that I have (and share it into Autodesk Area forum) to preserve the sub-object selection (without modPanel) is just to add Turn To Mesh modifier. That's it. Simple and effective.

Mental Mill for Max 2011

Autodesk offer a Standard Edition of mental mill® (MetaSL shaders creator) that run using 3ds Max 2011 license. Read the original news at MaxUnderground.

Friday, February 4, 2011

Matrix Digital Rain Effect

Particle FX tutorial by 3Dknot team.

Spring simulations with Flex modifier

Ever wish you could create a soft body simulation on your mesh to bounce it around? 3ds max has had this ability for many years now, but it's tricky to set up and not very obvious that it can be done at all.

Read Fred Ruff tutorial here.

Tuesday, February 1, 2011

Ozone 5 released

E-on Software released Ozone 5 plug-ins. What's new in version 5 read here.

Merge By Layer 0.4

Well, a requested update of my recent Merge By Layer script. Now can merge multiple layers at once or select and merge multiple objects from different layers. Enjoy.