<?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>Maphart &#187; Freebies</title>
	<atom:link href="http://www.maphart.com/category/freebies/feed" rel="self" type="application/rss+xml" />
	<link>http://www.maphart.com</link>
	<description>Kristof Minnaert&#039;s personal portfolio gaming efforts</description>
	<lastBuildDate>Tue, 21 Jun 2011 08:08:06 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>ZBrush 3.5 ZTool AutoSave</title>
		<link>http://www.maphart.com/2010/freebies/zbrush-3-5-ztool-autosave</link>
		<comments>http://www.maphart.com/2010/freebies/zbrush-3-5-ztool-autosave#comments</comments>
		<pubDate>Tue, 06 Apr 2010 22:24:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Freebies]]></category>

		<guid isPermaLink="false">http://www.maphart.com/?p=143</guid>
		<description><![CDATA[Alrighty boys and girls,
Here it is! An AutoSave utility for ZBrush 3.5. Anyone working with ZBrush knows how crash happy the app can be, and I&#8217;m sure I&#8217;m not the only who sometimes gets &#8220;lost in the moment&#8221; and forgets to save a huge piece of work.
In fact, it happened to me again last week, [...]]]></description>
			<content:encoded><![CDATA[<p>Alrighty boys and girls,</p>
<p>Here it is! An AutoSave utility for ZBrush 3.5. Anyone working with ZBrush knows how crash happy the app can be, and I&#8217;m sure I&#8217;m not the only who sometimes gets &#8220;lost in the moment&#8221; and forgets to save a huge piece of work.<br />
In fact, it happened to me again last week, and I grew tired of having to redo a LOT of work; so I decided to whip up this little extension to the Tool palette.</p>
<p>You only need to save once in the beginning of your session, and auto save does the rest. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>And if any Pixologic guys are seeing this&#8230; Please, please update the ZScript language and make [Sleep] and [ISwitch] WORK as a ZPlug! Or even better, release a fully fledged C++ or whatever SDK!</p>
<p>If you have any suggestions on how to improve Auto Save, or you just wish to contact me, please do so at kristof@maphart.com. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Enjoy!</p>
<p><a href="http://www.maphart.com/uploads/files/ZPlugs/AutoSave35.rar"><img class="alignnone size-full wp-image-245" title="ZBAutosaveBanner" src="http://www.maphart.com/wp-content/uploads/2010/04/ZBAutosaveBanner1.png" alt="" width="470" height="121" /></a></p>
<p>And there&#8217;s a Mac OSX version as well! Tested on Mac OSX Snow Leopard and Zbrush 4.0.<br />
<a href="http://www.maphart.com/wp-content/uploads/2011/03/ZbrushAutoSave35_MacOSX.zip">Autosaver for Mac OSX</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.maphart.com/2010/freebies/zbrush-3-5-ztool-autosave/feed</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Female BaseMesh 1.0</title>
		<link>http://www.maphart.com/2010/freebies/female-basemesh-1-0</link>
		<comments>http://www.maphart.com/2010/freebies/female-basemesh-1-0#comments</comments>
		<pubDate>Sun, 21 Feb 2010 14:48:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Freebies]]></category>
		<category><![CDATA[basemesh]]></category>
		<category><![CDATA[female]]></category>
		<category><![CDATA[sculpting]]></category>
		<category><![CDATA[zbrush]]></category>

		<guid isPermaLink="false">http://www.maphart.com/?p=84</guid>
		<description><![CDATA[Hi guys &#8216;n gals!
I&#8217;ve just recently built a fairly adequite re-useable basemesh for female characters. And I decided to share her for you to use!
She&#8217;s been optimized for digital sculpting and as such, she&#8217;s made up out of evenly spaced quads. There are a few triangles in the mesh, but these are located between the [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_88" class="wp-caption alignright" style="width: 231px"><a href="http://www.maphart.com/wp-content/uploads/2010/02/FemaleBaseMeshV1_0.rar"><img class="size-full wp-image-88 " title="fBaseV1_0" src="http://www.maphart.com/wp-content/uploads/2010/02/fBaseV1_0.jpg" alt="fBaseV1_0" width="221" height="393" /></a><p class="wp-caption-text">click me!</p></div>
<p>Hi guys &#8216;n gals!</p>
<p>I&#8217;ve just recently built a fairly adequite re-useable basemesh for female characters. And I decided to share her for you to use!</p>
<p>She&#8217;s been optimized for digital sculpting and as such, she&#8217;s made up out of evenly spaced quads. There are a few triangles in the mesh, but these are located between the individual fingers and on the bottom of the feet. So they shouldn&#8217;t pose too much of a problem. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>She&#8217;s about 1.72 meters in height in relation to Modo&#8217;s coordinate system. It is possible that when you import this mesh in other DCC applications such as XSI, Max, Maya, etc&#8230; that it will not read 1.71 meters so you&#8217;ll need to manually scale her up or down accordingly.<br />
Tongue and eyes are included, but teeth are not. You can find a good set of teeth on <a title="gnomonology.com by Alex Alveraz" href="http://gnomonology.com/tutorial/205" target="_blank">gnomonlogy.com by Alex Alveraz </a>.</p>
<p>Feel free to use this mesh for any kind of project or sculpting exercise you see fit. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.maphart.com/2010/freebies/female-basemesh-1-0/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Using UV&#8217;s to simulate a Stripe Glow Gradient effect</title>
		<link>http://www.maphart.com/2009/freebies/using-uvs-to-simulate-a-stripe-glow-gradient-effect</link>
		<comments>http://www.maphart.com/2009/freebies/using-uvs-to-simulate-a-stripe-glow-gradient-effect#comments</comments>
		<pubDate>Tue, 08 Sep 2009 20:30:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Freebies]]></category>

		<guid isPermaLink="false">http://www.maphart.com/?p=14</guid>
		<description><![CDATA[This is a short tutorial I wrote a while back on game-artisans on how to achieve a scrolling glow gradient effect that goes from top to bottom on rigid objects, characters, or whatever you can think of.
When applied to a character, you can simulate your character getting scanned, have glowing animated parts. Cheap simulations of [...]]]></description>
			<content:encoded><![CDATA[<p>This is a short tutorial I wrote a while back on game-artisans on how to achieve a scrolling glow gradient effect that goes from top to bottom on rigid objects, characters, or whatever you can think of.</p>
<p>When applied to a character, you can simulate your character getting scanned, have glowing animated parts. Cheap simulations of running water and smoke/gas/fumes FX can be done using this method as well.<br />
The possibilities are endless imho, and I tend to use this technique a lot at work for simulating all sorts of specialized FX that can&#8217;t be done with particles, or that are not important enough to do with particles.</p>
<p>Keep in mind though, that is just one of many techniques to achieve a SGG-effect. It may, or may not not suit your needs at all. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>But, let&#8217;s get this show on the road. Below is what the effect looks like with a top to bottom scroll on a simple ring shaped object. And we can also see that the glow is masked out by the vents.</p>
<p style="text-align: center;"><a href="http://www.maphart.com/wp-content/uploads/2009/09/stripe.gif"><img class="size-thumbnail wp-image-17 aligncenter" title="stripe" src="http://www.maphart.com/wp-content/uploads/2009/09/stripe-150x150.gif" alt="stripe" width="150" height="150" /></a></p>
<p>First, let&#8217;s dissect the ring. This object is a simple ring made out of polygons, with each seperate polygon mapped from 0 to 1  in it&#8217;s UV&#8217;s (fig 1.). That way we create overlapping UV&#8217;s, but by doing so we can use one small tileable texture to color the entire ring.<br />
The texture I&#8217;m using for this is a very simple vent with an alpha channel (fig 2.a and fig 2.b) representing the holes in the vent. As you could see from the image above, the animated bar is masked out by these vents. So you guessed it, we&#8217;ll be using this alpha to mask out our animation, but first we need to have our bar moving!</p>
<p style="text-align: center;"><a href="http://www.maphart.com/wp-content/uploads/2009/09/UVSET1.jpg"><img class="size-thumbnail wp-image-18 aligncenter" title="UVSET1" src="http://www.maphart.com/wp-content/uploads/2009/09/UVSET1-150x150.jpg" alt="UVSET1" width="150" height="150" /><br />
</a><strong>(fig 1. UV set used for the diffuse color)</strong></p>
<p style="text-align: center;"><a href="http://www.maphart.com/wp-content/uploads/2009/09/vent_c.jpg"><img class="size-thumbnail wp-image-19 aligncenter" title="vent_c" src="http://www.maphart.com/wp-content/uploads/2009/09/vent_c-150x150.jpg" alt="vent_c" width="150" height="150" /></a><br />
<strong>(fig 2.a diffuse color image)</strong></p>
<p style="text-align: center;"><a href="http://www.maphart.com/wp-content/uploads/2009/09/vent_a.jpg"><img class="size-thumbnail wp-image-20 aligncenter" title="vent_a" src="http://www.maphart.com/wp-content/uploads/2009/09/vent_a-150x150.jpg" alt="vent_a" width="150" height="150" /></a><br />
<strong>(fig 2.b diffuse alpha image) </strong></p>
<p>So let&#8217;s get it moving then! To have a glowing bar scroll from top to bottom, we need two things.<br />
First, a texture that is black with a single colored bar on it. You can make this as thick or thin as you want. This is where artistic freedom comes to play. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
Why black? Because in the end we will add (and add is the key-word here) the scrolling texture over our diffuse texture.<br />
Because <em>something + black = something</em> and <em>something+ somethingElse = <strong>aWholeNewWorldOfFun</strong></em>. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>And second, we need another set of UV&#8217;s that we will use to scroll the texture over.</p>
<p>In our case, we want to scroll from top to bottom, so our object needs to be projected as such in the new UV set. And since we&#8217;re dealing with a very simple shape, we can just do a front planar projection of our ring (fig 3).<br />
This way when we scroll from top to bottom, the first UV coordinates we&#8217;ll encounter are those of the most top vertices of the ring.</p>
<p style="text-align: center;"><a href="http://www.maphart.com/wp-content/uploads/2009/09/UVSET2.jpg"><img class="size-thumbnail wp-image-24 aligncenter" title="UVSET2" src="http://www.maphart.com/wp-content/uploads/2009/09/UVSET2-150x150.jpg" alt="UVSET2" width="150" height="150" /></a><br />
<strong>(fig 3. UV set used by the glowing bar)</strong></p>
<p>But how do we animate our bar-texture using these UV&#8217;s? Well, this is where a bit of black magic is needed.</p>
<p>In this particular example I&#8217;ve writting a short realtime shader to use inside of XSI (which you can find at the bottom of the post) that offsets the second set of UV coordinates using an input value. Other software may have built in features to do this, but I haven&#8217;t found one in XSI. If you do know a way on how to do this in XSI without specialized shaders and UV projection handles, please let me know! I&#8217;d love to know about it. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>If you do have an option to animate the UV coordinates (because that&#8217;s what you actually need to do) be sure to animate in the negative V direction so our bar moves from top to bottom (fig 4).</p>
<p style="text-align: center;"><a href="http://www.maphart.com/wp-content/uploads/2009/09/GlowMapDirection.jpg"><img class="size-thumbnail wp-image-25 aligncenter" title="GlowMapDirection" src="http://www.maphart.com/wp-content/uploads/2009/09/GlowMapDirection-150x150.jpg" alt="GlowMapDirection" width="150" height="150" /></a><br />
<strong>(fig 4.  Glowing bar scroll direction)</strong></p>
<p>And that&#8217;s a moving bar! Hoozah!</p>
<p>The only thing that is left is to add the sample from our bar texture on the scrolling UV&#8217;s to our result from sampling the diffuse texture using the first UV set.</p>
<p>If you want to mask out the scrolling bar by the vents, all you need to do is to multiply the sampled color from the bar texture (using UV set 2) with the sampled alpha value from the diffuse texture (using UV set 1) before you add the two colors together. <img src='http://www.maphart.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>And there&#8217;s nothing more to it than that!</p>
<p>Here you can see the same effect applied as a scanning line to a character. The second UV set I used for this is just a front projection from the character.</p>
<p style="text-align: center;"><a href="http://www.maphart.com/wp-content/uploads/2009/09/beast_SSG.gif"><img class="size-full wp-image-40 aligncenter" title="beast_SGG" src="http://www.maphart.com/wp-content/uploads/2009/09/beast_SSG.gif" alt="beast_SSG" width="318" height="318" /></a></p>
<p>I hope you enjoyed this little tut, and be sure let me know if you don&#8217;t understand something. I&#8217;ll try my best to answer.</p>
<p>For all you XSI users, here&#8217;s the GLSL shader to use in the OpenGL viewport.</p>
<blockquote><p><span style="color: darkgreen;">//vertex program</span><br />
varying vec2 diffuse_uv;<span style="color: darkgreen;"> //UV SET 1</span><br />
varying vec2 glow_uv; <span style="color: darkgreen;">//UV SET 2</span></p>
<p>void main(void){</p>
<p>diffuse_uv = gl_MultiTexCoord0.xy; <span style="color: darkgreen;">//diffuse texture coordinates</span><br />
glow_uv  = gl_MultiTexCoord1.xy;<span style="color: darkgreen;"> //glow texture coordinates</span><br />
gl_Vertex = ftransform();<span style="color: darkgreen;"> //transform the vertex to screen space </span></p>
<p>}<br />
<span style="color: darkgreen;"><br />
//fragment program</span><br />
varying vec2 diffuse_uv; <span style="color: darkgreen;">//UV SET 1</span><br />
varying vec2 glow_uv; <span style="color: darkgreen;">//UV SET 2</span><br />
uniform sampler2D diffuse;<span style="color: darkgreen;"> //DIFFUSE MAP WITH ALPHA CHANNEL</span><br />
uniform sampler2D glow; <span style="color: darkgreen;">//GLOW MAP</span><br />
uniform float glow_anim; <span style="color: darkgreen;">//SCROLLING PARAMETER</span></p>
<p>void main(void){</p>
<p>vec4 diffuse = texture2D(diffuse, diffuse_uv); <span style="color: darkgreen;">//sample diffuse texture</span></p>
<p><span style="color: darkgreen;">//first offset the UV coordinates from the glowmap in Y (scrolling effect)</span><br />
glow_uv.y = glow_uv.y + glow_anim;<br />
<span style="color: darkgreen;"> //use this offsetted UV for sampling the glow texture</span><br />
vec4 glow = texture2D(glow, glow_uv); <span style="color: darkgreen;">//sample glow texture</span><br />
vec4 FinalColor = diffuse; <span style="color: darkgreen;">//final color mixdown</span></p>
<p>glow = glow * diffuse.a;<span style="color: darkgreen;"> //Multiply every channel (r, g, b, a) with the alpha value from the diffuse map</span></p>
<p><span style="color: darkgreen;"> //final color mixdown, add the glowmap to the diffuse color</span><br />
FinalColor = FinalColor + glow;</p>
<p>gl_FragColor = FinalColor; <span style="color: darkgreen;">//Output pixel color and alpha</span></p>
<p>}</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.maphart.com/2009/freebies/using-uvs-to-simulate-a-stripe-glow-gradient-effect/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

