<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Théâtre magique &#187; 3D/Compositing</title>
	<atom:link href="http://www.noirmatstudios.com/blog/index.php/category/3dcompositing/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.noirmatstudios.com/blog</link>
	<description>Tout le monde n'est pas autorisé à entrer</description>
	<lastBuildDate>Sat, 27 Mar 2010 14:53:14 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Heaps of clones in 3DS Max with proxies</title>
		<link>http://www.noirmatstudios.com/blog/index.php/2010/01/14/proxies-in-3ds-max/</link>
		<comments>http://www.noirmatstudios.com/blog/index.php/2010/01/14/proxies-in-3ds-max/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 17:18:23 +0000</pubDate>
		<dc:creator>Nicolas Antille</dc:creator>
				<category><![CDATA[3D/Compositing]]></category>
		<category><![CDATA[3ds max]]></category>
		<category><![CDATA[mental ray]]></category>
		<category><![CDATA[mrProxy]]></category>
		<category><![CDATA[Proxy]]></category>

		<guid isPermaLink="false">http://www.noirmatstudios.com/blog/?p=67</guid>
		<description><![CDATA[Playing around with a lot of meshes in Max is an easy way to crash it. The autosave feature is put a lot to contribution (viva autobak.max !). Same routine for After Effects by the way… In an undergoing project, we needed at some point an array of 96*16 (not a zillion) meshes, simple ones [...]]]></description>
			<content:encoded><![CDATA[<p>Playing around with a lot of meshes in Max is an easy way to crash it. The autosave feature is put a lot to contribution (viva autobak.max !). Same routine for After Effects by the way…</p>
<p>In an undergoing project, we needed at some point an array of 96*16 (not a zillion) meshes, simple ones as they are. So I happily used the Array tool, cloning en masse. As Max started to cough, I saw a repetitive pattern of the pre-crash effect. Nothing I could do to save him. And even when there was no crash, the UI was utterly slow.</p>
<h1>Purokushi</h1>
<p>I lookep up solutions about handling lots of meshes at once and I found mrProxy to be exactly what I needed. This <a title="CGSociety's article about new features in Max 2010" href="http://features.cgsociety.org/story_custom.php?story_id=4542">article on cgsociety</a> talks about the new features of Max 2010 and shows a little what you can do with mrProxy and huge forests in architectural renders. It is definitely a great thing like the Architectural Mats and Pro Mats that the article mentions. The thing is however, proxies are nothing new. I don’t really know why they talk about it as a new feature here. Perhaps the fact it is “new” is that it is shipped with Max…</p>
<p>If you’re on VRay, there are also vRayProxies but let’s talk about Mental Ray Proxies here.</p>
<p>Generally speaking, a proxy is a kind of portal, a gateway you must pass through in order to use some resource or produce something.</p>
<p>In networking that’d be to use a connection with the advantage of security and disadvantage of slower speed depending on where your proxy is physically located.</p>
<p>In programming, a proxy is often thought as a design pattern and implemented as a communicator with some data source for instance, you don’t deal directly with the data source but use proxies instead.</p>
<div id="attachment_90" class="wp-caption alignnone" style="width: 510px"><a href="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/early-typography.jpg"><img class="size-full wp-image-90" title="Metal type models, copyright typographyphotography.com" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/early-typography.jpg" alt="Metal type models in typography" width="500" height="211" /></a><p class="wp-caption-text">Metal type models in the early printing, a proxy you can take in your hand !</p></div>
<p>In 3D, there are several kinds of proxies too. By default, Max has a bitmap proxy feature in the rendering options but let’s talk about mrProxy which is here an object like any other you can use on your scene.</p>
<p>mrProxy is a temporary replacement for your mesh on the scene. That helps to save some precious memory that mental ray won’t feed upon, hungry as it is.</p>
<p>What the proxy does is, it represents your model with a cloud of vertices, not too many so as not to slow the Max UI and you handle it in place of the real model. So you can replicate thousands or more instances of the mrProxy and Max is less of a slug.</p>
<h1>Meshes, unite !</h1>
<p>A few things to note. A Proxy by default doesn’t have the same material as the model, it doesn’t have any in fact. You might want to shift textures from one proxy to another to make them look different. Don’t worry about your uvw mapping and material ids, they’re all working as if it were the real model. So you can apply the same material from the model to the proxy without worries.</p>
<p>Now a very important thing : you can’t make a proxy out of a group or whatever container it might be. That’s too bad and it will force you to clone your model and make it into one single mesh. Fortunately, Max handles the material ids pretty well.</p>
<p>Another thing you might wonder, proxies work with any kind of mesh, nurbs comprised.</p>
<p>So if for instance you have two multi-sub materials, each made of several materials, you’ll often have two series of material ids starting from 1. Let’s say you got a model of a human cyborg whose left arm is a robot, the rest is all weak human flesh. For some reasons, you have made the human as a poly and the robot arm as a nurbs. Either you’ll choose to make two proxies, for the body and arm, or you’ll convert the nurbs mesh to a poly mesh and attach it to the body.</p>
<p>Then you got a “human” multi-mat made of</p>
<ol>
<li>skin</li>
<li>eyes</li>
<li>mouth</li>
</ol>
<p>And another multi-mat, say “cyborg”,</p>
<ol>
<li>shiny metal</li>
<li>plastic</li>
</ol>
<p>There’s obviously a material id conflict if you are to merge your meshes together.</p>
<p>If you’d want to make a single mesh out of all this, you’d first clone the whole joe, turn the poly into a mesh and attach the robot arm to the flesh body. Max in all his wisdom would then ask you how you want to manage the material ids, the first option is your best choice as it will reassign the material ids of, say, the robot arm so that the parts of the arm whose material ids are 1 don’t look like skin.</p>
<p>Here’s a sample gengon in action with two materials. The red vertices are the multiple proxy clones.</p>
<div>
<dl id="attachment_132">
<dt><a href="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/gengon-model.jpg"><img title="gengon-model" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/gengon-model.jpg" alt="Proxy model" width="489" height="270" /></a></dt>
</dl>
</div>
<h1>Dollies</h1>
<p>When your base mesh is ready, you only need to write it onto an external .mib file using this panel below.</p>
<p>To access it, you need to create a new mrProxy instance and place it on the scene.</p>
<div id="attachment_135" class="wp-caption alignnone" style="width: 183px"><a href="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/proxypanel.jpg"><img class="size-full wp-image-135" title="proxypanel" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/proxypanel.jpg" alt="Proxy panel" width="173" height="557" /></a><p class="wp-caption-text">The mrProxy panel</p></div>
<p>After the file browser, you’re prompted with these parameters.</p>
<div id="attachment_123" class="wp-caption alignnone" style="width: 283px"><a href="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/mrproxy-creation.jpg"><img class="size-full wp-image-123" title="mrproxy creation" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/mrproxy-creation.jpg" alt="mrProxy write to file box" width="273" height="293" /></a><p class="wp-caption-text">mrProxy write to file box</p></div>
<p>In still mode, you need to write only one temporary file that your proxy will refer to. If you want your proxy to replicate some kind of animation, you’ll need to write all the animation’s frames into temporary files. So yes, you’ll have to update your proxies if you decide to modify the animation of the model.</p>
<p>Vertex and topology animations are supported by mrProxy so that covers most of your needs.</p>
<p>I observed a little problem with the scaling of imported meshes. It doesn’t happen all the time and is in fact quite rare but if you don’t see your proxy either in the UI or in the render, it’s often because of a too low scale value in the proxy.</p>
<p>So here’s what it looks like, having many proxy instances of your mesh on the scene. Looks messy but at least it’s fast in the UI.</p>
<div id="attachment_133" class="wp-caption alignnone" style="width: 499px"><a href="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/proxies-clouds.jpg"><img class="size-full wp-image-133" title="proxies-clouds" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/proxies-clouds.jpg" alt="Proxy vertices cloud" width="489" height="270" /></a><p class="wp-caption-text">Vertices cloud of your replicas</p></div>
<p>All this renders at a decent speed, it’s a matter of a few minutes with the default mental ray params.</p>
<div id="attachment_134" class="wp-caption alignnone" style="width: 499px"><a href="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/proxies-render.jpg"><img class="size-full wp-image-134" title="proxies-render" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2010/01/proxies-render.jpg" alt="Proxies render" width="489" height="270" /></a><p class="wp-caption-text">Rendered proxies</p></div>
<div>
<dl id="attachment_122"></dl>
</div>
<h1>What’s more ?</h1>
<p>A list of some scripts that might or might not help you on <a title="Scripts tagged as &quot;proxy&quot;" href="http://www.scriptspot.com/3ds-max/scripts/tags/proxy">scriptspot.com</a></p>
<p>A nice utility called Proxy Painter on<a title="Proxy Painter script for Max 2010" href="http://www.3rdpole.com/"> 3rdpole.com</a>, it works both with VRay and Mental Ray.</p>
<p>A good intro to mrProxy is available on <a title="mrProxy introduction" href="http://newsletters.hagerman.com/newsletters/ebul75-ME.htm">hagerman.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.noirmatstudios.com/blog/index.php/2010/01/14/proxies-in-3ds-max/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Solidworks or ProE to 3DS Max</title>
		<link>http://www.noirmatstudios.com/blog/index.php/2009/12/18/solidworks-or-proe-to-3ds-max/</link>
		<comments>http://www.noirmatstudios.com/blog/index.php/2009/12/18/solidworks-or-proe-to-3ds-max/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 19:17:35 +0000</pubDate>
		<dc:creator>Nicolas Antille</dc:creator>
				<category><![CDATA[3D/Compositing]]></category>
		<category><![CDATA[3ds max]]></category>
		<category><![CDATA[npowersoftware]]></category>
		<category><![CDATA[okino]]></category>
		<category><![CDATA[pro/engineer]]></category>
		<category><![CDATA[step]]></category>
		<category><![CDATA[stereolitho]]></category>

		<guid isPermaLink="false">http://www.noirmatstudios.com/blog/?p=35</guid>
		<description><![CDATA[In an undergoing project, we were required at some point to use 3d objects made in ProE by another company closer to CAD engineering. So we obtained some .stp (STEP) files which, indeed, cannot be imported by the standard max (even max 2010) importers. Big deal. Well it sure is ! I thought I’d make [...]]]></description>
			<content:encoded><![CDATA[<p>In an undergoing project, we were required at some point to use 3d objects made in ProE by another company closer to CAD engineering. So we obtained some .stp (STEP) files which, indeed, cannot be imported by the standard max (even max 2010) importers. Big deal. Well it sure is !</p>
<p>I thought I’d make it a post as I haven’t found decisive information on the net.</p>
<p>So we had a few choices :</p>
<ol>
<li>export to another exchange format like .igs (set to NURBS at export-time)</li>
<li>play your luck with an .stl (stereolitho file)</li>
<li>bet your money on a plugin that will take care of the import of the STEP</li>
</ol>
<p>In the end, it all comes down to two main ideas :</p>
<ul>
<li> either work with nurbs</li>
<li> or convert them into poly meshes with a lot of faces to match the curves</li>
</ul>
<p>Just to make it clear, in CAD, models are based on splines, b-splines and all the joyous family. 3DSMax and Maya have always sucked at handling nurbs. Isn’t that great ?</p>
<p>Now, you don’t have to read all that’s written below if you haven’t had problems before. The best way to have a proper model from CAD is to handle it in nurbs. If possible at all, avoid converting it to a poly mesh because most likely, it will lack some faces  here and there and what’s more, the tesselation will damage the look of the curves of your original model. Additionally, converting the nurbs model to a poly mesh won’t make it any faster to manipulate in the 3D UI and the wireframe of a nurbs model looks much simpler than with a poly mesh.</p>
<h1>1. IGS and the likes</h1>
<p>IGS is similar to STEP as they are both based on curves. The latter is a bit better as it keeps the hierarchy and original names of the objects, which is a handy feature when you got complex models. I can’t provide you with screenshots here as the guy from the CAD company (too) early dismissed IGS as being a hindrance in Maya (even though in this case we’re on Max…). Nevertheless, the point is not about the format itself but about the kind of model you get. IGS is a good option if you don’t want to use a STEP importer though I haven’t been able to import a test model to see if there could be some compatibility issues or things that might make your dear Max go haywire.</p>
<h1>2. Stereolitho</h1>
<p>Talk about stereolitho and you look like the professional out there. Shorts for stereolithography, it is just a “3d printing” technique that uses layering of resin cut by lasers to shape an object. An importer exists for this format in Max so why not try it ?</p>
<p>From what I found here and there, information was a bit contradictory. Some people posted tutorials about how to import IGS files without saying anything about would-be problems and some other people talked about how you’d better stick to stereolitho exports (raving about the so-called “chord height”). Importing files from Solidworks or ProE to Max seems as obscure as back alley in the outskirts of a big city by a freezing night.</p>
<p>Let’s take a sample, a tutorial from the year 2000 (I haven’t found many of them which look recent) called <a title="Solidworks to 3DSMax on CADMonkey" href="http://www.cadmonkey.com/tut8.htm" target="_blank">“Solidworks to 3DSMax”</a>. The tutorial is all nice and easy but when you get to the last part, the rendering that is, you may be disappointed a little. If you look at the reflections and refractions on the tyre, you’ll notice some jagged, unnatural reflections. Not good.</p>
<p>But nothing beats doing it yourself. So did I. The model was slightly more complex than the wheel in cadmonkey’s tutorial and look at the result :</p>
<div id="attachment_39" class="wp-caption alignnone" style="width: 470px"><img class="size-full wp-image-39" title="proe-stl-yuk" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/proe-stl-yuk.jpg" alt="proe-stl-yuk" width="460" height="300" /><p class="wp-caption-text">STL input with the standard Max importer</p></div>
<p>Eewww. The poly mesh has more than 70000 faces but it’s all ugly. This export was done using a chord height of 0.2 mm (around 0.008″), all the other parameters are the same as in the monkey’s tutorial. Even with the “coarse” export option, you could believe that you’d only have to apply a turbosmooth (or meshsmooth) once the “lowpoly” is imported in Max BUT it is not so easy. If you do that, you will have to set manually every smoothing group on your mesh and the final model will look different than the one made in surfaces because you cannot rely on a meshsmooth to make the same curves as the original surfaces.</p>
<p>By the way, there’s a very powerful trick to increases the amount of faces in your mesh while smoothing it slightly. It’s an option concealed in the ProBoolean modifier (made by…nPowerSoftware) called the Quad Tesselation. Here’s what it looks like applied to the ugly mesh above :</p>
<div id="attachment_40" class="wp-caption alignnone" style="width: 470px"><img class="size-full wp-image-40" title="proe-stl-better" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/proe-stl-better.jpg" alt="proe-stl-better" width="460" height="300" /><p class="wp-caption-text">Attempt to fix the STL import</p></div>
<p>You can still see some bizarre cuts on the borders of some curves and holes so this trick isn’t enough to correct the bad tesselation I had to begin with.</p>
<p>Perhaps STL is fit for CAD model printing but it’s better to look for another exchange format in this case.</p>
<h1>3. Plugins at your service</h1>
<p>From this point on, we’re looking at commercial solutions.</p>
<p>The main software companies who are into import/export plugins for Max (and Maya) are nPower Software and Okino. From an outsider’s perspective, nPower looks more professional with their website but also ten times as much expensive as Okino’s solution. I can’t help but notice Okino’s web site features about all the kinds of bad clichés in web design with the fonts, the old 1999 photoshop effects *bow to the bevel filter*, kind of “geek welcome for math lovers”. That aside, it isn’t necessarily representative of the quality of their software at all.</p>
<h2>3.1. nPowerSoftware plugins</h2>
<p>If you install both nPower Power Translator Pro and Okino Polytrans plugins for Max (v. 2010 here), you’ll notice a slight difference in the way you have to import a model. With Power Translator, it’s quite easy, you go to File &gt; Import &gt; Import and in the drop down list there’s a few extra formats handled by npwr.</p>
<div id="attachment_43" class="wp-caption alignnone" style="width: 292px"><img class="size-full wp-image-43" title="npower-step-translator" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/npower-step-translator.png" alt="npower-step-translator" width="282" height="571" /><p class="wp-caption-text">nPower Translator STEP importer panel</p></div>
<p>Upon choosing your STEP file, you get a little config menu and what is really cool with this plugin is that it’s not limited to an import procedure. It adds a modifier on top of all the imported models with a ton of customizable parameters so you really have control of the model you import. Can’t do better than that for now.</p>
<div id="attachment_44" class="wp-caption alignnone" style="width: 365px"><img class="size-full wp-image-44" title="npower-nurbs" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/npower-nurbs.jpg" alt="npower-nurbs" width="355" height="300" /><p class="wp-caption-text">nPower Special Nurbs modifier</p></div>
<p>Look at the smooth and clean result !</p>
<div id="attachment_41" class="wp-caption alignnone" style="width: 470px"><img class="size-full wp-image-41" title="proe-stp-shaded" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/proe-stp-shaded.jpg" alt="proe-stp-shaded" width="460" height="300" /><p class="wp-caption-text">Shaded view of the imported STEP model — nPowerSoftware’s Translator Pro</p></div>
<div id="attachment_42" class="wp-caption alignnone" style="width: 470px"><img class="size-full wp-image-42" title="proe-stp-wireframe" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/proe-stp-wireframe.jpg" alt="proe-stp-wireframe" width="460" height="300" /><p class="wp-caption-text">Wireframe of the imported STEP model — nPowerSoftware’s Translator Pro</p></div>
<h2>3.2. Okino’s plugins</h2>
<p>Okino Polytrans’s way of importing is less simple. The way the plugin works is kind of old-fashioned (like their site, aw… forgive me). You have to go to the utility panel and load the Polytrans I/O. Then you got a big list of various formats and as soon as you select one, a browser pops up, asking for a file. So you feed the little animal with a STEP file and another panel appears with two main options : beginner or expert mode. A good thing because the “chord height” and such terms could scare some people who aren’t into CAD. The problem is, even when you boost things and ask for the best quality for the import, I ended up with a poly mesh that looks like our so-called swiss cheese, the holes looking a bit triangular…</p>
<div id="attachment_49" class="wp-caption alignnone" style="width: 470px"><img class="size-full wp-image-49" title="okino-step-cheese" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/okino-step-cheese.jpg" alt="Blue cheese - stereolitho import as a triangle mesh" width="460" height="300" /><p class="wp-caption-text">STEP cheesy import — Okino PolyTrans plugin</p></div>
<p>I gave it several attempts and even used the built-in import of raw ProE models which lead nowhere.</p>
<div id="attachment_50" class="wp-caption alignnone" style="width: 470px"><img class="size-full wp-image-50" title="okino-proe-cheese" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/okino-proe-cheese.jpg" alt="More blue cheese - this time a ProE import" width="460" height="300" /><p class="wp-caption-text">ProE  “scratched” import — Okino PolyTrans plugin</p></div>
<p>I even tried to import the infamous stereolitho model…</p>
<div id="attachment_51" class="wp-caption alignnone" style="width: 470px"><img class="size-full wp-image-51" title="okino-stl-cheese" src="http://www.noirmatstudios.com/blog/wp-content/uploads/2009/12/okino-stl-cheese.jpg" alt="STEP import with the Okino plugin" width="460" height="300" /><p class="wp-caption-text">STL garbage — Okino PolyTrans plugin</p></div>
<p>Perhaps Okino should increase their pricing in order to provide a truly functional plugin…I do hope that other people had a better experience with this plugin than I had.</p>
<p>Another solution would be to use the 3D standalone software PolyTrans, load the exported model into it, re-export into another format like .obj or .fbx and load all that into Max. Not viable in my opinion.</p>
<h1>4. Conclusion</h1>
<p>The huge difference between nPower’s way and Okino’s way is that the former uses Nurbs and the latter converts everything to poly meshes so it is more prone to errors. This case isn’t representative of all cases so it might happen to you that Polytrans is a good tool. Here, it just doesn’t do the job.</p>
<p>No surprise here, nPowerSoftware’s plugins stand out in terms of quality. The downside to all this is the cost of the solution : between $1000 to $3000 if you need Power Translator Univ. That is however the best solution available right now for Max and it is available for Maya as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.noirmatstudios.com/blog/index.php/2009/12/18/solidworks-or-proe-to-3ds-max/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

