<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-9122846242068305603</id><updated>2010-01-02T02:30:32.039+08:00</updated><title type='text'>Faithless: The Making of an NWN2 Module</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default?orderby=updated'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default?start-index=26&amp;max-results=25&amp;orderby=updated'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>94</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-4444753462575839466</id><published>2009-09-04T00:00:00.002+08:00</published><updated>2009-09-04T00:18:31.859+08:00</updated><title type='text'>Bad News</title><content type='html'>Yesterday, I found out that over the next eleven months, I'll be extremely busy with work. Unfortunately, this will probably affect my modding badly. I don't know for sure how badly it will be affected, but let's just say that I'm more likely to produce models than modules, and my output will probably be meager.&lt;br /&gt;&lt;br /&gt;Sigh.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-4444753462575839466?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/4444753462575839466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=4444753462575839466' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4444753462575839466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4444753462575839466'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/09/bad-news.html' title='Bad News'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-9073287954396715282</id><published>2009-08-22T22:27:00.004+08:00</published><updated>2009-08-22T22:46:54.513+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='custom content'/><title type='text'>My Abishai, Part 1</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_1IuQZ4I4p48/SpABxkbteYI/AAAAAAAABD0/g97paAtYyIA/s1600-h/Abishai.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 183px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/SpABxkbteYI/AAAAAAAABD0/g97paAtYyIA/s200/Abishai.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5372796306558122370" /&gt;&lt;/a&gt;A month ago, Jolly Jenkins posted a &lt;a href="http://nwn2forums.bioware.com/forums/viewtopic.html?topic=686628&amp;forum=115"&gt;request for an abishai model&lt;/a&gt; at the Custom Content forum. Since I was planning to make several infernal models for Faithless anyway, I offered to help him out. Jolly said that he'd be needing the abishai in about a month's time. Little did I realize that in the interim, I'd be saddled with much more work for Shattered Dreams.&lt;br /&gt;&lt;br /&gt;One month later, all I have to show for myself is the high-poly mesh pictured here. I still have to make the low-poly model, UV map, texture maps, skeleton rig, and animations. Now I'm starting to wonder what the devil possessed me to commit to this thing. Oh, well.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-9073287954396715282?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/9073287954396715282/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=9073287954396715282' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/9073287954396715282'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/9073287954396715282'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/08/my-abishai-part-1.html' title='My Abishai, Part 1'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_1IuQZ4I4p48/SpABxkbteYI/AAAAAAAABD0/g97paAtYyIA/s72-c/Abishai.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-6928019978461372469</id><published>2009-08-20T08:46:00.005+08:00</published><updated>2009-08-20T09:07:44.590+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>STAR*DRIVE -- Is This Impressive or What?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Soydb2i9DEI/AAAAAAAABDs/XseGlzG1x80/s1600-h/1250593574_fullres.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 149px;" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Soydb2i9DEI/AAAAAAAABDs/XseGlzG1x80/s200/1250593574_fullres.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5371841557370309698" /&gt;&lt;/a&gt;I was idly browsing the Neverwinter Vault when I came across this &lt;a href="http://nwvault.ign.com/View.php?view=nwn2communitynews.Detail&amp;id=290"&gt;bit of news from Yaddaman&lt;/a&gt; about his upcoming sci-fi module, STAR*DRIVE. The picture on the right was shamelessly lifted from the STAR*DRIVE news page at the Vault. There are more screenshots to be found there, so if this picture does not amaze you, head over to &lt;a href="http://nwvault.ign.com/View.php?view=nwn2communitynews.Detail&amp;id=290"&gt;Yaddaman's announcement&lt;/a&gt; and prepare to be floored.&lt;br /&gt;&lt;br /&gt;There are three things about this module that impress me: (1) The custom models are awesome. (2) The module and its custom content were all done by one person -- Yaddaman. (3) Yaddaman would like to see other modders use his custom content to create their own sci-fi modules. Don't take my word for it. Read this quote from Yaddaman, which he posted at the Comments section.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;"I wish I could tell you exactly when it will be done but it's hard to say since I'm doing it alone and I don't have a huge amount of spare time (job, wife and two kids). I just hope you won't be dissapointed with the final mod and that you will enjoy playing it as much as I enjoy making it. It would be really cool if people would like to make their own sci-fi modules using the mod and maybe even contribute with some new resources eventually."&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Hear, hear!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-6928019978461372469?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/6928019978461372469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=6928019978461372469' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/6928019978461372469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/6928019978461372469'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/08/stardrive-is-this-impressive-or-what.html' title='STAR*DRIVE -- Is This Impressive or What?'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_1IuQZ4I4p48/Soydb2i9DEI/AAAAAAAABDs/XseGlzG1x80/s72-c/1250593574_fullres.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-4503708007028911929</id><published>2009-08-09T17:20:00.002+08:00</published><updated>2009-08-09T17:34:36.645+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><title type='text'>Look into the Mirror, Part 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sn6VJxaomVI/AAAAAAAABDM/l_JFWHfemAI/s1600-h/AngelMirror-s.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 151px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sn6VJxaomVI/AAAAAAAABDM/l_JFWHfemAI/s200/AngelMirror-s.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5367891800988621138" /&gt;&lt;/a&gt;Most creators of custom models for NWN2 probably learn 3D modeling by first making placeables. This was not the path I took. I felt that making a placeable was not challenging enough to hold my interest, which is why I decided to plunge head first into creature modeling. Ironically, the most complicated model that I've done to date is a placeable, the one shown in the picture to the right. It has more mesh parts than I care to count, and the whole thing weighs in at over 14,000 polygons. It has been several weeks since &lt;a href="http://nwn2faithless.blogspot.com/2009/06/look-into-mirror-part-1.html"&gt;I first blogged about this model&lt;/a&gt;, which gives readers an idea of how long I've been working on it. Now, I'm tired and would like to rest. Must play &lt;a href="http://nwvault.ign.com/View.php?view=NWN2ModulesEnglish.Detail&amp;id=378"&gt;Neverwinter Zork&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-4503708007028911929?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/4503708007028911929/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=4503708007028911929' title='11 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4503708007028911929'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4503708007028911929'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/08/look-into-mirror-part-2.html' title='Look into the Mirror, Part 2'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_1IuQZ4I4p48/Sn6VJxaomVI/AAAAAAAABDM/l_JFWHfemAI/s72-c/AngelMirror-s.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>11</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-2309868705636314968</id><published>2009-07-27T17:02:00.002+08:00</published><updated>2009-07-27T17:09:01.891+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='story writing'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><title type='text'>Harry Potter and the Half-Baked Scenes</title><content type='html'>Over the weekend, I saw the movie version of &lt;i&gt;Harry Potter and the Half-Blood Prince&lt;/i&gt;. Having read the book previously, I wanted to see how the story was adapted for the wide screen. I am well aware that anything longer (or shorter) than a novella will not survive the transition to a movie version without serious changes. This is a situation that I accept, and I appreciate clever adaptations of written works such as that of Neil Gaiman’s &lt;i&gt;Stardust&lt;/i&gt;. With the &lt;i&gt;Half-Blood Prince&lt;/i&gt;, however, I was disappointed with the extra screen time devoted to some scenes and the inadequate time spent on others. While I do not intend to write a full review of the movie, I want to set down my thoughts on why I felt that certain scenes could have been written better. This blog post may serve as a guide on keeping one’s stories tight without making them feel rushed.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Shifting the Balance of Power&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In the movie version of &lt;i&gt;Half-Blood Prince&lt;/i&gt;, a couple of Death Eaters launched an attack on the Weasley family home. I felt that this scene, which was not present in the original novel, is completely pointless. What did Voldemort and his Death Eaters hope to achieve by destroying a single house? If their attack was intended to weaken Harry Potter and his friends, there was nothing in any of the subsequent scenes that showed they had succeeded. In fact, David Yates, the director, could have left the scene in the cutting room floor, and the audience wouldn’t have missed it.&lt;br /&gt;&lt;br /&gt;The way I see it, the purpose of any scene involving an on-going conflict between two parties is to shift the balance of power between them. This is true regardless of whether the scene in question comes from the latest James Bond thriller or any of Jane Austen’s romances. The shift in the balance may be subtle most of the time and heart-pounding in only a few instances. Regardless, for the shift to be meaningful, its effects should be felt in the later parts of the story.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Introducing New Conflicts&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Not all scenes are intended to develop an on-going conflict between two parties. Some are meant to introduce conflict between parties that had hitherto been at peace with each other. Nevertheless, if one party takes a swipe at another in one scene, we expect this conflict to escalate and eventually be resolved in later scenes.&lt;br /&gt;&lt;br /&gt;Hence, I feel that the opening sequence showing the destruction of London’s Millenium Bridge could have been left out altogether. The wizard-versus-muggle conflict was never developed in the later parts of the story, and the screen time taken up by this sequence could have been better utilized in other scenes. I realize that the opening scene was intended as a more dramatic replacement for the first chapter in J.K. Rowling’s book. Nevertheless, I also feel that this chapter could have been safely deleted from the book for the same reason that I stated earlier.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Establishing Characters&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Who is Narcissa, and why is she in the company of Bellatrix? Who is Romilda, and what’s her relationship with Harry and Ron? Who is Dean, and why is Harry upset with him? Those who saw the movie without ever having read the Harry Potter books may never know the answer to these questions. That’s because there aren’t enough scenes in the movie to establish these characters, their relationships, and their motivations. Any character that is at the heart of one or more conflicts must have enough scenes devoted to establishing them clearly enough for the audience to appreciate the conflicts in which they are involved.&lt;br /&gt;&lt;br /&gt;On the other hand, characters that don’t figure in any of the story’s conflicts may be safely glossed over or left out. For instance, the director and screenwriter were wise to make Blaise Zabini practically invisible in the movie. Because the romance between Remus and Tonks did not make it to the movie version, giving these characters less screen time is justified. If the attack on the Weesley home had been left out, Remus and Tonks could even have gone with it.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Conclusion&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In this blog post, I gave three reasons for developing a scene: establishing characters, introducing conflicts, and shifting the balance of power. I don’t claim that these are the only reasons for crafting a scene, but these definitely revolved around my dissatisfaction with the &lt;i&gt;Half-Blood Prince&lt;/i&gt; movie. As usual, everything written here is just my opinion, and readers may apply or disregard all or part of my blog post as they see fit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-2309868705636314968?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/2309868705636314968/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=2309868705636314968' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/2309868705636314968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/2309868705636314968'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/07/harry-potter-and-half-baked-scenes.html' title='Harry Potter and the Half-Baked Scenes'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-3094102514833698641</id><published>2009-07-10T02:10:00.008+08:00</published><updated>2009-07-10T06:52:21.592+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='game design'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Designing Puzzles</title><content type='html'>I haven’t been working much on my 3D models these past several days, having been instructed by Dirtywick to design a puzzle for our module, Shattered Dreams. While trying to come up with a good one, I pondered quite a bit on the difference between good and bad puzzles as well as what principles go into designing different types of puzzles. I’m writing my thoughts here, partly as an aid for other game designers and modders who want to make their own puzzles, but mostly so I can refer to my own notes when the need arises. None of these ideas are written in stone, of course, and I may change or refine my opinions at any time in the future.&lt;br /&gt;&lt;br /&gt;Please note that the puzzles I’m referring to here are the ones that may be used in adventure or role-playing games.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Puzzles to Avoid&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;There are various kinds of puzzles, some of which are so bad that they deserve special mention. The following are the ones that I feel deserve to be in the Puzzles’ Hall of Shame.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Mazes&lt;/b&gt;. Seriously, mazes are not fun at all. They are especially bad in games where the point of view is first-person, although they can also be tiresome in 2D graphical adventures. If an area you’re designing branches out like a maze, consider redesigning it.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Mathematical Word Puzzles&lt;/b&gt;. “Sally is two years older than Tim. Ten years ago, Sally was twice as old as Tim. How old is Sally now?” When was the last time you had to open a locked container by solving a mathematical word puzzle in real life? You never had to? Well, that just goes to show how contrived these kinds of puzzles are when they appear in adventure or role-playing games. Mathematical word puzzles can be amusing for some and vexing for others, but unless you’re a scientist, engineer, or programmer, you’ll probably never encounter them outside of textbooks and silly computer games.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Riddles&lt;/b&gt;. As a means of gaining entry to an otherwise inaccessible place, riddles are almost as bad as mathematical word puzzles. What makes riddles halfway acceptable in adventure games is that Oedipus and the Sphinx had set a precedent for them thousands of years ago. Nevertheless, if some NPCs really wanted to secure a place, they could have done better than to leave a clue to entry out in the open. Unless you don’t mind some silliness in your game, you might want to avoid using riddles. There are some good exceptions to this guideline, however. Nowadays, it’s not uncommon for people who have a tendency to forget their email password to allow a means to retrieve it by having the computer ask a question that only they and perhaps few other people know the answer to. Use your judgment when determining whether a riddle is appropriate to use in a game situation. Chances are it’s not.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Pixel Hunting&lt;/b&gt;. In some games, particularly 2D graphical adventures, one of the challenges facing a player is determining which visual elements can be interacted with. Some of these visual elements are so small that they can be easily overlooked. In such cases, the player winds up wrestling with the interface. Hunting for pixels is mostly an irritating experience. Fortunately, in NWN2, a player can highlight all useable objects in visual range by pressing the [Alt] key. Many other adventure games do not have a similar feature. If you ever create an adventure game from scratch, you would do well to provide some means of making all useable objects readily apparent.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Some Principles of Puzzle Design&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;There are things that I call “principles” (for lack of a better word) that go into the making of a puzzle. Some of these principles may be combined to create more complex puzzles. Not all these principles will be found in each puzzle, but every puzzle has one or more of these principles behind their design. I can’t claim to have an exhaustive list of these principles, but the ones I came up with may help generate some ideas for puzzles.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Toggling&lt;/b&gt;. This is probably the simplest puzzle design. A player may activate or deactivate an object by toggling some sort of switch. For example, a certain switch may open or close an electronic door. The puzzle can be made more complicated by requiring the player to flick a set of switches in the proper combination, not unlike entering a binary string code. Sometimes, the only way to figure out what each switch does is through experimentation.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Matching Type&lt;/b&gt;. In certain puzzles, players are required to match certain objects or bits of information with other objects or snippets of info. For example, in &lt;i&gt;Baldur’s Gate 2: Shadows of Amn&lt;/i&gt; (2000), there is a puzzle in which players have to match a set of objects with the famous personage who uses each object. Players who are familiar with the Forgotten Realms will find this puzzle easy, but those who aren’t steeped in the lore of the realms may still benefit from the textual clues provided.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Timed Movement&lt;/b&gt;. Sometimes, passage through a dangerous area may be safely negotiated by timing one’s movement precisely. For example, if a deadly blade on a pendulum swings by every few seconds, players have to time their characters’ movement so that they move past the pendulum on its upswing. If many similar traps are stringed along the passageway, it becomes a challenge for players to observe the traps’ patterns of motion.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Positioning&lt;/b&gt;. Some puzzles are solved by positioning certain objects in accordance with a set of rules. The oft-used Towers of Hanoi puzzle is an example of this. Sometimes, these objects have certain “powers” that are brought into fore or even activated from their new positions. This is particularly true of puzzle-like games such as chess and Othello.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Code Breaking&lt;/b&gt;. Simple codes can be deciphered by observing the patterns when the codes appear. The game of Mastermind is a well-known example of this type of puzzle, variations of which can also be found in role-playing games like &lt;i&gt;Neverwinter Nights 2: Mask of the Betrayer&lt;/i&gt; (2007) and &lt;i&gt;Fallout 3&lt;/i&gt; (2008). A more subtle example of this type of puzzle is when the player has to decipher an alien language by observing the situations when certain patterns of symbols appear.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Combination&lt;/b&gt;. Some objects can be combined with each other to produce a new object or to change the state of one of these objects. For example, by combining a key with a locked chest, the player character transforms the locked chest into an open chest. The principle of combination is a staple of many text and graphical adventure games and is used to solve the puzzles therein.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Substitution&lt;/b&gt;. When an object is required to solve a problem, but the player character does not have it, sometimes, a suitable substitute may be used instead. For example, if the player character does not have the key needed to open a locked chest but has a wire coat hanger and a pair of pliers, the character can use these objects to produce a makeshift lockpick. The principle of substitution is a good way to add some lateral thinking to your puzzles. Nevertheless, it can be abused badly. In &lt;i&gt;Monkey Island 2: LeChuck’s Revenge&lt;/i&gt; (1991), for instance, when the player character needs to shut off a water pump that is lacking a handle, he can pull out a monkey from his inventory and use it as a monkey wrench. Duh.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Misdirection&lt;/b&gt;. Every magician and mystery writer knows that one can hide important information with misdirection. The trick is to bring some unimportant thing into focus while keeping the salient clue in the background. In a mystery adventure, for instance, suppose that forensic examiners have determined that a certain victim’s murderer is left-handed. Later, the player character might come across an old photo of a group of people standing near a building with an impressive-looking edifice. Players who examine the photo closely might notice that one of the people in the photograph is holding a cigar in his left hand. That person just so happens to be a suspect in the case as well. Bingo. Clues can also be hidden in text by focusing on an unrelated topic while mentioning the seemingly unimportant clue in passing somewhere in the middle of the text.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Physics&lt;/b&gt;. In some puzzles, objects interact with each other in accordance with certain rules, what I call the “physics” of the game world. For example, a ball can be made to roll down a sloping surface or bounce off a spring. These objects can be positioned in certain ways so that their interaction will solve a particular puzzle. The in-game physics may or may not be related to real-world physics. For example, there is a kind of “physics” involved in the way counters interact with each other in the game of Othello, but this has nothing to do with the physics of the real world. On the other hand, there is a bit more real-world physics going on in &lt;i&gt;The Incredible Machine&lt;/i&gt; (1992), a game where players can create Rube Goldberg machines that achieve some stated objective. The beauty of this type of puzzle design is that more than one solution can be implemented to solve the same puzzle.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Conclusion&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This concludes my post on designing puzzles. There are other types of puzzles that I did not expound on because of their limited use in adventure and role-playing games. (Word puzzles such as crosswords come to mind.) Nevertheless, I may have missed a few puzzle types or design principles that can be useful in these types of games. Readers who would like to offer their own insights into the puzzle design process are invited to leave their comments here.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-3094102514833698641?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/3094102514833698641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=3094102514833698641' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3094102514833698641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3094102514833698641'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/07/designing-puzzles.html' title='Designing Puzzles'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-5106046400337839485</id><published>2009-06-30T23:52:00.004+08:00</published><updated>2009-07-01T00:00:51.416+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><title type='text'>Look into the Mirror, Part 1</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SYsXdZZNkfI/AAAAAAAAA0Y/EpTjRQb6cTE/s1600-h/Decor.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px; cursor:pointer; cursor:hand;width: 200px; height: 142px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SYsXdZZNkfI/AAAAAAAAA0Y/EpTjRQb6cTE/s200/Decor.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5299355180331799026" /&gt;&lt;/a&gt;It’s been a while since I last posted a screenshot of any 3D model in the works. That’s because I am currently making a very complex placeable, the kind that should have players realizing that this is no ordinary object when they first look at it. As can be seen from the concept art to the right, the placeable consists of a fairly ornate mirror held by a couple of angel statues. I had to craft and assemble several meshes to produce the high-poly version of this piece. In the process, I came across some new challenges for me to hurdle.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sko1LNDtkxI/AAAAAAAABBs/-1AkpmLEjwQ/s1600-h/Mirror.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 128px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sko1LNDtkxI/AAAAAAAABBs/-1AkpmLEjwQ/s200/Mirror.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5353149573683319570" /&gt;&lt;/a&gt;Firstly, there is the matter of the mirror frame, the design of which is inspired by art nouveau and the stories of H.P. Lovecraft. It may come as a surprise to some people that Lovecraft and art nouveau go very well together. One of the main features of art nouveau is the presence of vine-like tendrils that curl about in a stylized way. Well, it doesn’t take much tweaking to replace tendrils with tentacles, the appendage of choice of Lovecraft’s famous creation, C’thulhu.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sko1Ld7iQhI/AAAAAAAABB0/M5x54HVY-UI/s1600-h/CherubDetail.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 130px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sko1Ld7iQhI/AAAAAAAABB0/M5x54HVY-UI/s200/CherubDetail.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5353149578212426258" /&gt;&lt;/a&gt;Heretofore, I had been using only ZBrush to make all but the simplest meshes. The mirror frame, however, consists mostly of planar shapes that are often curved along the edges. ZBrush isn’t really suited for constructing planar shapes, so I turned to 3DS Max instead. I used splines to build the meshes, something that I had never done before. It’s actually a pretty cool technique once you get the hang of it. I later refined the wings, tentacles, and curlicues in ZBrush, but even before then, these shapes, which I first built in 3DS Max, were already somewhat complex. The only part of the mirror frame that I did not create with splines was the cherub’s head, which I sculpted in ZBrush from a sphere.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sko1Lh1Cu7I/AAAAAAAABB8/gGALm3sl4Xc/s1600-h/Angel.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 106px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sko1Lh1Cu7I/AAAAAAAABB8/gGALm3sl4Xc/s200/Angel.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5353149579258936242" /&gt;&lt;/a&gt;Like the cherub, the angel figure that holds up each side of the mirror was sculpted in ZBrush. As can be seen in the screenshot to the right, I put in a lot more detail in the figure’s dress than what I am accustomed to doing. It seems to me that each time I create a new model, I push the boundaries of my knowledge and skills. I see this as a good thing, and I really wouldn’t have it any other way.&lt;br /&gt;&lt;br /&gt;Hopefully, I’ll be able to post an in-game screenshot of the entire mirror in my next blog post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-5106046400337839485?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/5106046400337839485/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=5106046400337839485' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/5106046400337839485'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/5106046400337839485'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/06/look-into-mirror-part-1.html' title='Look into the Mirror, Part 1'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_1IuQZ4I4p48/SYsXdZZNkfI/AAAAAAAAA0Y/EpTjRQb6cTE/s72-c/Decor.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-1039846768816535694</id><published>2009-06-22T22:51:00.007+08:00</published><updated>2009-06-22T23:18:05.393+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Welcome to the Team</title><content type='html'>Several months ago, I identified the &lt;a href="http://nwn2faithless.blogspot.com/2008/12/mystery-group-unmasked.html"&gt;members of the Shattered Dreams team&lt;/a&gt;, all of whom have contributed their unique talents to our creative undertaking. While a few have since left to pursue other projects, most are still active with us. Since then, we’ve had some noteworthy additions to the team, whom I’d like to welcome in this blog post. Here they are, arranged according to when they joined us:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Henry Solberg, Composer.&lt;/b&gt; I first met Henry online when he messaged me with an offer to &lt;a href="http://nwn2faithless.blogspot.com/2008/06/thank-you-for-music.html"&gt;compose music for Faithless&lt;/a&gt;, the module that is supposed to be this blog’s reason for being. (Ahem.) It became obvious that I wasn’t about to release Faithless any time soon, so Henry asked if he could be a part of what was then known as the “secret bouncyRock project.” After listening to samples of Henry’s music, Dirtywick said yes. Henry joined the Shattered Dreams team last December, but it’s only now that I finally got around to blogging about his involvement with us. Thanks to him and Gallaen Frost, we’ll have new music for our players to enjoy.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Wyrin D’njargo, Writer.&lt;/b&gt; Last April, Dirtywick posted a &lt;a href="http://nwn2forums.bioware.com/forums/viewtopic.html?topic=675521&amp;amp;forum=111"&gt;request for a writer&lt;/a&gt; to join the Shattered Dreams team. It is well known among modders that the two major bottlenecks in module building are area design and writing. While we have some really awesome area designers, Dirtywick (being our lead writer) was the only one who was active with writing at the time. This was on top of his activities as project leader and area designer, which put a strain on his writing duties. A day after posting his request, Dirtywick informed me that he got an offer from none other than Wyrin D’njargo, creator of the popular “&lt;a href="http://nwvault.ign.com/View.php?view=NWN2ModulesEnglish.Detail&amp;id=171"&gt;Dark Avenger&lt;/a&gt;” &lt;a href="http://nwvault.ign.com/View.php?view=NWN2ModulesEnglish.Detail&amp;id=270"&gt;series&lt;/a&gt;. I emailed Dirtywick with the following response: “Wyrin? Wy rin’t we hiring him on the spot?” Dirtywick emailed back, saying that he was looking to fill only one writing position, but he had received a second offer from someone else. My eyes nearly popped from their sockets when I found out who the other guy was.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Amstradhero, Writer.&lt;/b&gt; It turned out that Amstradhero (aka Shadowbeast) had also offered to join the writing team. Amstradhero is the creator of “&lt;a href="http://nwvault.ign.com/View.php?view=NWN2ModulesEnglish.Detail&amp;id=320"&gt;Fate of a City&lt;/a&gt;,” which was one of the modules that won the Neverwinter Vault’s 2008 Gold Award for module of the year. In an unprecedented move, “Fate of a City” shared the gold award with another module – Dirtywick’s own “&lt;a href="http://nwvault.ign.com/View.php?view=NWN2ModulesEnglish.Detail&amp;id=310"&gt;Subtlety of Thay – Chapter 2&lt;/a&gt;.” (Have I mentioned that Dirtywick is our lead writer?) Anyhow, I pleaded with Dirtywick to let both Wyrin and Amstradhero join us. Dirtywick wasn’t sure at first if he could handle two writers at the same time, but he eventually decided to welcome both of them to the fold. Woo hoo!&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Baron, Writer.&lt;/b&gt; Some weeks back, Barry the Hatchet told a friend of his named Baron that Dirtywick was looking for additional writers for Shattered Dreams. Baron (not to be confused with Baron Rosencheckl of Robinson Workshop) was highly recommended by Barry the Hatchet, who enjoyed his stories. I got a chance to read samples of Baron’s writing when Dirtywick forwarded a module that contained some of his conversation files. While the context of the dialog remains hazy to me, I did find the writing entertaining, and several lines brought a smile to my face. It seems that Baron has an affinity for comic writing. Anyhow, Dirtywick has already brought Baron to the team. Judging from Baron’s work, I’m sure it’s a decision well made.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Welcome to the team, guys. Glad to have you aboard.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-1039846768816535694?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/1039846768816535694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=1039846768816535694' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/1039846768816535694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/1039846768816535694'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/06/welcome-to-team.html' title='Welcome to the Team'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-4414661924285440356</id><published>2009-06-15T21:51:00.003+08:00</published><updated>2009-06-15T22:04:25.817+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='NPCs'/><category scheme='http://www.blogger.com/atom/ns#' term='concept art'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>With Friends Like These</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_1IuQZ4I4p48/SjZSMU20OiI/AAAAAAAABBM/YzCeN-AV_oA/s1600-h/MisterGrin.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 151px; height: 200px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/SjZSMU20OiI/AAAAAAAABBM/YzCeN-AV_oA/s200/MisterGrin.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5347551979259574818" /&gt;&lt;/a&gt;Meet Mister Grin, one of the potential companions that player characters may take up in Shattered Dreams. The picture shown here is how I envision this character to appear. I’ll make a 3D model of this NPC later. For now, I’d like to say a few words about him to give a preview of what he is like: &lt;br /&gt;&lt;br /&gt;Although Mister Grin is dressed in the height of fashion, people tend to be taken aback by his appearance for three reasons. Firstly, almost every part of his body is covered with some article of clothing. Mister Grin explains that his heavy clothing helps him resist the ague, to which his frail constitution is highly susceptible. Secondly, while Mister Grin is obviously a man of breeding, it is not entirely certain what breed he is of. An occasional peek at his pointy ears suggests that he may be of elven stock, although he is taller and bulkier than the typical elf. Also, even with Mister Grin’s hat, scarf, and dark glasses on, it is easy to tell that he is completely devoid of hair. Mister Grin explains that he is in fact predominantly half-elven and that his non-elven father had passed on a genetic trait that causes all hair to drop off and stop growing when its carrier reaches a certain age. Finally, there is the matter of his strangely upturned nose, a feature that he explains is due to his father having some orcish blood in him.&lt;br /&gt;&lt;br /&gt;Mister Grin is a charming and eloquent gentleman, and he speaks with such ease and conviction that no one bothers to question his statements. That and his desire to help player characters defeat their greatest foe will surely make Mister Grin a welcome and trustworthy addition to any party.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-4414661924285440356?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/4414661924285440356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=4414661924285440356' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4414661924285440356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4414661924285440356'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/06/with-friends-like-these.html' title='With Friends Like These'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_1IuQZ4I4p48/SjZSMU20OiI/AAAAAAAABBM/YzCeN-AV_oA/s72-c/MisterGrin.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-6757450076208285883</id><published>2009-06-07T23:24:00.005+08:00</published><updated>2009-06-08T01:02:53.606+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Boss of Bosses, Part 4</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sivb1tXF51I/AAAAAAAABBE/9YO-71UQeXY/s1600-h/BigBoss.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 137px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sivb1tXF51I/AAAAAAAABBE/9YO-71UQeXY/s200/BigBoss.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5344607098561226578" /&gt;&lt;/a&gt;&lt;blockquote&gt;“My name is Enemigo Monstruoso.  You killed my minions. Prepare to die.”&lt;/blockquote&gt;&lt;br /&gt;Well, that’s what the big boss seems to be saying in the picture to the right. It may look impressive, but I’ve found that from a modeling standpoint, this monster has a whole slew of new challenges to hurdle. The most obvious problem is the sheer size of the thing. Having a monster this large means that in combat, players will almost never see it in its entirety. To make it more visible, I lowered the height at which the creature hovers above the ground, but I can’t get it lower than fifteen to twenty feet without its appendages sinking below ground during its animation cycle. I could bring the mob to a more manageable size, but its background story would hardly make sense unless the creature is as large as possible without making it unplayable.&lt;br /&gt;&lt;br /&gt;Another problem is that I may have made the creature’s collision spheres too large, because even at fifteen to twenty feet away, a player character can still hit it in melee. I’ll have to confer with the other core designers of Shattered Dreams to see if this is going to be an issue. I can always shrink the collision spheres if necessary, but that might mean having to make more of them to cover the parts of the creature that are exposed.&lt;br /&gt;&lt;br /&gt;Another problem that I’ve had to deal with revolves around the limit that the NWN2 engine imposes on the number of bones a model may have. &lt;a href="http://nwn2forums.bioware.com/forums/viewtopic.html?topic=651093&amp;amp;forum=115&amp;amp;sp=15"&gt;According to Jonny Ree&lt;/a&gt;, a single model may have no more than fifty-four bones, although there is a way to work around this limitation. Creatures with separate models for their tail and wings can have another set of fifty-four bones in each of them. I decided to model the creature’s tentacles as a separate wing model, something that I’ve never done before. (Considering that this is only the second or third model that I’ve had to animate from scratch, there’s really a lot that I don’t know about yet.)&lt;br /&gt;&lt;br /&gt;I managed to get the tentacles to appear in the toolset as an animated wing attachment on the boss creature, but in the game, the tentacles were nowhere to be seen. For two days, I tinkered with the 2DA, GR2, and MDB files to try to get the tentacles to appear. After long hours of experimentation, I eventually discovered that the tentacles appeared in game when attached to creatures like humans, pit fiends, and mind flayers but not when attached to horses, dire boars, and One of Many. The salient difference between these two groups of creatures is that the first group has a head model that is separate from its body, but the latter does not. In other words, creatures from the first group are built from two or more MDB files, and those from the second group have all their meshes in one MDB. Because I had originally constructed the creature’s head and body as a single mesh, I had to make changes not only to my MDB files but also to my 2DA entries. Fortunately, that solved the problem.&lt;br /&gt;&lt;br /&gt;I haven’t finished making all the animations that the big boss will need, but I expect that this task will be easy going from here on. Then again, I said something to that effect in my last blog post, so one never knows what surprises I may come across. I’m keeping my fingers crossed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-6757450076208285883?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/6757450076208285883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=6757450076208285883' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/6757450076208285883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/6757450076208285883'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/06/boss-of-bosses-part-4.html' title='Boss of Bosses, Part 4'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1IuQZ4I4p48/Sivb1tXF51I/AAAAAAAABBE/9YO-71UQeXY/s72-c/BigBoss.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-7408034880070132277</id><published>2009-05-30T07:09:00.003+08:00</published><updated>2009-05-31T02:05:19.433+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Boss of Bosses, Part 3</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/SiBrs6nI4JI/AAAAAAAABAs/C_z2f13P8gA/s1600-h/bosstextured.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5341387577453240466" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 172px" alt="" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/SiBrs6nI4JI/AAAAAAAABAs/C_z2f13P8gA/s200/bosstextured.jpg" border="0" /&gt;&lt;/a&gt;I spent the last few days constructing a low-poly version of Shattered Dream’s ultimate boss. With 5,208 triangles, however, this mesh exceeds the poly count of most, if not all, official NWN2 models. Considering that this creature is one of a kind, I think that the relatively large number of polygons can be forgiven. As can be seen from the in-game screenshot on the right, I’ve also textured the mesh. My next task is to rig and animate the model. Because none of the skeletons of the existing NWN2 models fits this creature, I’ll have to make one from scratch. This, together with creating the animations, will probably be easier than building the mesh itself.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SiBrtHwFgmI/AAAAAAAABA0/UyjIPhlxrhg/s1600-h/bosscloseup.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5341387580980429410" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 134px" alt="" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SiBrtHwFgmI/AAAAAAAABA0/UyjIPhlxrhg/s200/bosscloseup.jpg" border="0" /&gt;&lt;/a&gt;Here’s another picture of the creature. If, during the game, you can see the pupils of its eyes, you are too close. &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:130%;"&gt;&lt;strong&gt;Update, May 31, 2009&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SiFy_WQnUuI/AAAAAAAABA8/oqU15-r4BN0/s1600-h/boss_retextured.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5341677065670709986" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 125px" alt="" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SiFy_WQnUuI/AAAAAAAABA8/oqU15-r4BN0/s200/boss_retextured.jpg" border="0" /&gt;&lt;/a&gt;Stop the presses. Feedback from Nicethugbert and Josh/Anduraga has prompted me to try to retexture the boss to make it look more natural. The new look is shown on the right. Oh, by the way, that cute little thing beside the boss is a full-grown red dragon. It's just there to give a sense of scale but won't appear in Shattered Dreams. Player characters will have enough to worry about without red dragons getting in the way.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-7408034880070132277?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/7408034880070132277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=7408034880070132277' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/7408034880070132277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/7408034880070132277'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/05/boss-of-bosses-part-3.html' title='Boss of Bosses, Part 3'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_1IuQZ4I4p48/SiBrs6nI4JI/AAAAAAAABAs/C_z2f13P8gA/s72-c/bosstextured.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-3962519217989501486</id><published>2009-05-27T04:21:00.002+08:00</published><updated>2009-05-27T04:23:10.046+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Boss of Bosses, Part 2</title><content type='html'>In my previous blog post, I presented a new design for the main boss of Shattered Dreams. When I started working on the high-poly model, I realized that what looks good in 2D does not necessarily look good in 3D. In particular, the crown of heads really didn’t work out so well, so it had to go. Also, the tentacles make more sense when put in front of the model rather than behind it. Anyhow, I hope this latest incarnation of the main boss will have the desired effect on players of our module. Time will tell.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/ShxPcWzNjvI/AAAAAAAABAk/lJW0s1o-HkI/s1600-h/BossOfBosses.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5340230606729875186" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 221px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/ShxPcWzNjvI/AAAAAAAABAk/lJW0s1o-HkI/s400/BossOfBosses.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-3962519217989501486?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/3962519217989501486/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=3962519217989501486' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3962519217989501486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3962519217989501486'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/05/boss-of-bosses-part-2.html' title='Boss of Bosses, Part 2'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1IuQZ4I4p48/ShxPcWzNjvI/AAAAAAAABAk/lJW0s1o-HkI/s72-c/BossOfBosses.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-6843555430707537212</id><published>2009-05-23T21:52:00.007+08:00</published><updated>2009-05-23T22:18:31.366+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='concept art'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Boss of Bosses, Part 1</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_1IuQZ4I4p48/SZmGgAWho3I/AAAAAAAAA1Q/-WqXOJ7XcQk/s1600-h/Boss.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 158px; height: 200px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/SZmGgAWho3I/AAAAAAAAA1Q/-WqXOJ7XcQk/s200/Boss.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5303417920613884786" /&gt;&lt;/a&gt;Thus far, I’ve constructed a number of mobs for Shattered Dreams, some of which are bosses in their own right. Nevertheless, all these creatures are mooks compared to what I’m about to make. Behold the boss of bosses, the thing that will have players’ adrenalin pumping on overdrive as their characters hang on to dear life.&lt;br /&gt;&lt;br /&gt;Actually, the picture shown on the right is my initial concept for the main boss. When I first drew this picture, I had not yet learned about &lt;a href="http://nwn2faithless.blogspot.com/2009/05/conceptualizing-creatures-with.html"&gt;making silhouette studies&lt;/a&gt;. With my newfound knowledge at hand, I decided to make a quick and crude silhouette of the creature to make sure that my design is on the right track. Below is the result.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_1IuQZ4I4p48/ShgABexBQ2I/AAAAAAAABAM/AhTkVg-CYgc/s1600-h/boss-001.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/ShgABexBQ2I/AAAAAAAABAM/AhTkVg-CYgc/s200/boss-001.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5339017383686259554" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;What’s wrong with this picture? Simply put, the silhouette does not look dangerous at all. It’s generally bell-shaped, which brings to mind not only bells but also pears, statistical graphs, and women in Victorian dresses. How threatening are those? Clearly, a redesign is in order.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/ShgAQSOIG6I/AAAAAAAABAU/BZ8IR8mdL_U/s1600-h/boss-002-a.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/ShgAQSOIG6I/AAAAAAAABAU/BZ8IR8mdL_U/s200/boss-002-a.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5339017638016719778" /&gt;&lt;/a&gt;It didn’t take me long to come up with a silhouette that I like. The general shape of the drawing on the right is that of an inverted triangle. Most of the weight is at the top, which suggests upper-body strength, unlike the bottom-heavy bell shape, which looks much less strong and mobile. Also, triangles with their sharp angles look far more dangerous than pears with their soft curves. This whole discussion on shapes and their significance is part of what is known as “form language,” which professional concept artists and product designers are familiar with. Being the amateur that I am, it takes a bit of research for me to figure these things out.&lt;br /&gt;&lt;br /&gt;Satisfied with the above silhouette, I then painted the details. Below is what I finally settled on. Not bad, in my opinion.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_1IuQZ4I4p48/ShgAb5nMD_I/AAAAAAAABAc/2TGi40SsY2c/s1600-h/boss-002-b.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/ShgAb5nMD_I/AAAAAAAABAc/2TGi40SsY2c/s200/boss-002-b.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5339017837569380338" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-6843555430707537212?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/6843555430707537212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=6843555430707537212' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/6843555430707537212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/6843555430707537212'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/05/boss-of-bosses-part-1.html' title='Boss of Bosses, Part 1'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1IuQZ4I4p48/SZmGgAWho3I/AAAAAAAAA1Q/-WqXOJ7XcQk/s72-c/Boss.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-1221348948043175394</id><published>2009-05-14T23:05:00.004+08:00</published><updated>2009-05-14T23:37:58.252+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><title type='text'>Angel of the Deep, Part 3</title><content type='html'>Man, I would never have guessed that animating models would be so much fun. I find it even more engaging than sculpting with ZBrush. It took me only one day to learn the basics in 3DS Max. The hardest part in making an animation sequence is getting the motion to look natural. I imagine that this is especially so for creatures that walk on land, but since my model hovers above the ground, I didn’t have to worry about how a shift in weight from one bone to another affects the rest of the bones.&lt;br /&gt;&lt;br /&gt;Below are screenshots from my test run with the model. They are poor substitutes for seeing the creature in action, but these will have to do for now. I don’t really have time to make a nice video. There are more models that I have to build. Busy, busy, busy.&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sgw0IiC00jI/AAAAAAAAA_k/uONK98zns5o/s1600-h/run.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 170px; height: 200px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sgw0IiC00jI/AAAAAAAAA_k/uONK98zns5o/s200/run.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5335696979709448754" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sgw0I70cAgI/AAAAAAAAA_8/o0PNWR_qVKQ/s1600-h/dodge.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 170px; height: 200px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sgw0I70cAgI/AAAAAAAAA_8/o0PNWR_qVKQ/s200/dodge.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5335696986628424194" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sgw0I_cMVyI/AAAAAAAAA_s/Nbkse5g3umc/s1600-h/attack01.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 170px; height: 200px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sgw0I_cMVyI/AAAAAAAAA_s/Nbkse5g3umc/s200/attack01.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5335696987600475938" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sgw0I--5wTI/AAAAAAAAA_0/lAf2KOMgnfM/s1600-h/attack02.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 170px; height: 200px;" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sgw0I--5wTI/AAAAAAAAA_0/lAf2KOMgnfM/s200/attack02.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5335696987477623090" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="2"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sgw0I3fYPJI/AAAAAAAABAE/hsjCDPB2TOk/s1600-h/death.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 97px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sgw0I3fYPJI/AAAAAAAABAE/hsjCDPB2TOk/s200/death.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5335696985466354834" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-1221348948043175394?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/1221348948043175394/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=1221348948043175394' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/1221348948043175394'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/1221348948043175394'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/05/angel-of-deep-part-3.html' title='Angel of the Deep, Part 3'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1IuQZ4I4p48/Sgw0IiC00jI/AAAAAAAAA_k/uONK98zns5o/s72-c/run.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-3112310095979606769</id><published>2009-05-11T01:22:00.004+08:00</published><updated>2009-05-11T23:14:51.960+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><title type='text'>Angel of the Deep, Part 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SgcNm5H36gI/AAAAAAAAA_U/v0wiVun4mis/s1600-h/Hug.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 145px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SgcNm5H36gI/AAAAAAAAA_U/v0wiVun4mis/s200/Hug.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5334247245463677442" /&gt;&lt;/a&gt;I’m still working on the model that I introduced in my last blog post. So far, I’ve made a low-poly mesh and textured it, though I may change the texture later on. I’m having doubts as to whether the glowing hair and tentacles is a good idea.&lt;br /&gt;&lt;br /&gt;In terms of polygon count, this thing is a real monster – 5484 triangles in all. That’s not the worst thing about this model, though. I’m planning to construct a new skeleton for this creature and animate it. Initially, I thought of re-using the skeleton and animations of One of Many, which is why this model bears a slight resemblance to it.  None of the available versions of Tazpn’s MDB Import/Export plug-in properly imports the OoM model and skeleton, however, so it seems that I have no other option than to put together some bones and animate them. That’s not as necromantic as it may sound, but I’ll still have to draw upon far greater wizardry than what I’m accustomed to.&lt;br /&gt;&lt;br /&gt;More to come in my next blog post.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Update, 11 May 2009&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I've decided that as far as making this particular figure glow, less is more. Check out the latest screenshot below.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_1IuQZ4I4p48/SghAJlXpXCI/AAAAAAAAA_c/zvyBOJRAAPw/s1600-h/Hug2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 295px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/SghAJlXpXCI/AAAAAAAAA_c/zvyBOJRAAPw/s400/Hug2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5334584292014644258" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-3112310095979606769?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/3112310095979606769/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=3112310095979606769' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3112310095979606769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3112310095979606769'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/05/angel-of-deep-part-2.html' title='Angel of the Deep, Part 2'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_1IuQZ4I4p48/SgcNm5H36gI/AAAAAAAAA_U/v0wiVun4mis/s72-c/Hug.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-2796058335180414205</id><published>2009-05-04T02:39:00.001+08:00</published><updated>2009-05-04T02:41:35.086+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Angel of the Deep, Part 1</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sf3lLolJ2iI/AAAAAAAAA_M/AU5oFPPMdRY/s1600-h/wtf_wip.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 184px;" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sf3lLolJ2iI/AAAAAAAAA_M/AU5oFPPMdRY/s200/wtf_wip.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5331669521911110178" /&gt;&lt;/a&gt;If you plunge the depths of your subconscious, what will you see? We may never know the answer to that question, but players of our upcoming module Shattered Dreams may encounter the creature shown on the right… that is, if I succeed in constructing and rigging a low-poly version of it. We’ll know for sure in my next blog post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-2796058335180414205?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/2796058335180414205/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=2796058335180414205' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/2796058335180414205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/2796058335180414205'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/05/angel-of-deep-part-1.html' title='Angel of the Deep, Part 1'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_1IuQZ4I4p48/Sf3lLolJ2iI/AAAAAAAAA_M/AU5oFPPMdRY/s72-c/wtf_wip.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-4463165849728420829</id><published>2009-05-03T02:27:00.005+08:00</published><updated>2009-05-03T02:51:10.897+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='concept art'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><title type='text'>Conceptualizing Creatures with Silhouette Studies</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SY26PRDX57I/AAAAAAAAA1A/dZrQrdUHp30/s1600-h/Wtf.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 154px; height: 200px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SY26PRDX57I/AAAAAAAAA1A/dZrQrdUHp30/s200/Wtf.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5300097107923298226" /&gt;&lt;/a&gt;I wasn’t thrilled with the last model I made, which I felt was seriously lacking the “wow” factor. The problem isn’t so much in the execution but in the design. My approach is to do a hasty sketch that I will wind up changing on the fly as I construct my mesh. It therefore comes as no surprise that my designs are hit-and-miss, more of the latter than the former. When I started creating a high-poly mesh for the lovely creature shown on the right, it wasn’t long before I stopped what I was doing and said to myself, “This isn’t working.”&lt;br /&gt;&lt;br /&gt;Disheartened, I did a few deep breaths and cleared my mind, concentrating my energies on the mystical reservoir of wisdom known as Google. I soon discovered a cool technique that professional concept artists use to design creatures – silhouette studies. From what I gathered, the idea is to draw a silhouette of a creature then to fill in the negative spaces with white to flesh it out. One can come up with different designs from a single silhouette if desired.&lt;br /&gt;&lt;br /&gt;I can see how this is a useful technique. The silhouette alone should look interesting. If it isn’t, filling in the details will probably result in an unexciting design. When a player sees a creature from afar, its details will blur into each other, and the player will perceive the creature as little more than a silhouette. One of the artist’s challenges is to try to make the silhouette look awesome.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SfyRNUfYbxI/AAAAAAAAA-8/0zRH-DOw9NY/s1600-h/sil-004-a.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SfyRNUfYbxI/AAAAAAAAA-8/0zRH-DOw9NY/s200/sil-004-a.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5331295716924485394" /&gt;&lt;/a&gt;I decided to give this method a try. I created a 512 × 512 blank image in Photoshop and painted a silhouette over it. I zoomed out to about 25% of the picture’s size so I could focus on the general look without being bogged with the details. Afterward, I zoomed in to full view and refined the silhouette further. The technique is deceptively simple, but I found that coming up with a good silhouette isn’t easy. The first few drawings I made were so bad that I didn’t bother saving them in the computer. Eventually, I came up with something that is similar to the sketch shown at the beginning of this blog post. The main difference is that the silhouette shows much more promise.&lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur=" try=" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SfyRNShYhmI/AAAAAAAAA_E/gSRD1lf55tY/s1600-h/sil-004-b.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SfyRNShYhmI/AAAAAAAAA_E/gSRD1lf55tY/s200/sil-004-b.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5331295716396009058" /&gt;&lt;/a&gt;Having painted a silhouette that I liked, I laid a transparent layer on top of it and painted over it with white. As I progressed, I added shades of gray. The end result doesn’t look as polished as my original pencil sketch, but I felt that the design is better by a mile. I’ve already started constructing a high-poly mesh based on this new picture, and I really like the results so far. I’ll show a screenshot or two of the model in my next blog post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-4463165849728420829?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/4463165849728420829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=4463165849728420829' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4463165849728420829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4463165849728420829'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/05/conceptualizing-creatures-with.html' title='Conceptualizing Creatures with Silhouette Studies'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_1IuQZ4I4p48/SY26PRDX57I/AAAAAAAAA1A/dZrQrdUHp30/s72-c/Wtf.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-8475996756241075833</id><published>2009-04-27T04:59:00.003+08:00</published><updated>2009-04-27T05:11:34.309+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><title type='text'>Behold a Pale Horse, Part 3</title><content type='html'>I've been working hard on this "horse" model, grabbing what little free time I have just to finish it. The rig isn't perfect, but the model will need only a few tweaks here and there to be done. I lack sleep and can hardly write coherently, so I'll let my screenshots do all the talking. Together, they should be worth a couple of thousand words, more or less.&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_1IuQZ4I4p48/SfTNTZNXwXI/AAAAAAAAA-c/ECTDuXbdXjQ/s1600-h/HorseStand.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 166px;" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/SfTNTZNXwXI/AAAAAAAAA-c/ECTDuXbdXjQ/s200/HorseStand.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5329109992154317170" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SfTNTFKJupI/AAAAAAAAA-U/8Tmr6aX9FZ4/s1600-h/HeighHo.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 162px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SfTNTFKJupI/AAAAAAAAA-U/8Tmr6aX9FZ4/s200/HeighHo.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5329109986772105874" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-8475996756241075833?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/8475996756241075833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=8475996756241075833' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/8475996756241075833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/8475996756241075833'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/04/behold-pale-horse-part-3.html' title='Behold a Pale Horse, Part 3'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_1IuQZ4I4p48/SfTNTZNXwXI/AAAAAAAAA-c/ECTDuXbdXjQ/s72-c/HorseStand.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-8472553664548115513</id><published>2009-04-21T20:32:00.003+08:00</published><updated>2009-04-21T20:35:45.249+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><title type='text'>Behold a Pale Horse, Part 2</title><content type='html'>I’ve finally added barding to the creature that I showcased in my last blog post. With armor on, this model looks a lot more like a horse than a greyhound sort of thingy. Much of the detail work that I did on the creature’s body is now lost under its barding. I don’t know if this monster looks scarier naked or armored. I’m tempted to have both versions of the creature in the module, but I don’t know if the monster in the buff has a place in the story.  We shall see.&lt;br /&gt;&lt;br /&gt;My next blog post will feature a playable version of this creature. I hope it won’t take me long to create so I can move on to my next 3D model.&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Se29TbTA6dI/AAAAAAAAA-E/eWQrMzVGWCc/s1600-h/warbeast1.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 188px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Se29TbTA6dI/AAAAAAAAA-E/eWQrMzVGWCc/s200/warbeast1.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5327122075691837906" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Se29TkwZZXI/AAAAAAAAA-M/hWKzQ3zvfaY/s1600-h/warbeast2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 188px;" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Se29TkwZZXI/AAAAAAAAA-M/hWKzQ3zvfaY/s200/warbeast2.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5327122078230996338" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-8472553664548115513?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/8472553664548115513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=8472553664548115513' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/8472553664548115513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/8472553664548115513'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/04/behold-pale-horse-part-2.html' title='Behold a Pale Horse, Part 2'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1IuQZ4I4p48/Se29TbTA6dI/AAAAAAAAA-E/eWQrMzVGWCc/s72-c/warbeast1.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-652524461730143535</id><published>2009-04-17T01:26:00.004+08:00</published><updated>2009-04-17T01:36:10.013+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><title type='text'>Behold a Pale Horse, Part 1</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/SYsXdtNlsoI/AAAAAAAAA0o/cFrhkQOs11U/s1600-h/Horse.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5299355185651757698" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 178px; CURSOR: hand; HEIGHT: 200px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/SYsXdtNlsoI/AAAAAAAAA0o/cFrhkQOs11U/s200/Horse.jpg" border="0" /&gt;&lt;/a&gt;I can’t seem to get myself out of creature modeling. I tried making a placeable object for the first time and wound up turning it into a creature. Currently, I’m building critters of the four-legged variety once again. The concept sketch shown on the right is of a horse. At least I think it’s a horse. It’s either that or a really large, armored greyhound. Let’s call it a horse for now. Anyway, this is what’s been keeping me busy lately. (That and a certain &lt;a href="http://nwn2forums.bioware.com/forums/viewtopic.html?topic=675141&amp;forum=115"&gt;video game babe&lt;/a&gt; that I’ve been modeling on and off.) &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sedrqvwr8sI/AAAAAAAAA98/QdPAepXeZ_g/s1600-h/PaleHorse.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5325343466508251842" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 200px; CURSOR: hand; HEIGHT: 162px" alt="" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sedrqvwr8sI/AAAAAAAAA98/QdPAepXeZ_g/s200/PaleHorse.jpg" border="0" /&gt;&lt;/a&gt;The screenshot shown on the left is of my current work in progress with the high-poly horse model. I’m supposed to give this creature barding, which I will add later. I felt that its present appearance is interesting enough to blog about, which is why I’m posting this picture here.&lt;br /&gt;&lt;br /&gt;More to come in my next blog post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-652524461730143535?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/652524461730143535/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=652524461730143535' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/652524461730143535'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/652524461730143535'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/04/behold-pale-horse-part-1.html' title='Behold a Pale Horse, Part 1'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1IuQZ4I4p48/SYsXdtNlsoI/AAAAAAAAA0o/cFrhkQOs11U/s72-c/Horse.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-5574972416614536303</id><published>2009-04-09T00:52:00.033+08:00</published><updated>2009-04-09T13:14:09.695+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Super-Simple Skeleton Building and Animation Tutorial</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdz1EK2lZvI/AAAAAAAAA90/MLegLRiBUxY/s1600-h/CivilizedStatue.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322398311626663666" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 192px" alt="" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdz1EK2lZvI/AAAAAAAAA90/MLegLRiBUxY/s200/CivilizedStatue.jpg" border="0" /&gt;&lt;/a&gt;In my last blog post, I showcased my latest 3D model, a statue of an elven warrior. It’s perfectly fine as a placeable, but Dirtywick wanted me to make it a creature. The statue is supposed to be some kind of magical defense against intruders, but there seem to be problems with trying to get placeables to be targeted by NPCs and to fire visual effects without resorting to a bunch of workarounds. Dirtywick wanted to keep things simple for the area designers on our team, which leaves me with the burden of providing a solution. In this particular case, one solution is for the statues to be implemented as creatures that can shoot spells from the crystals they are holding. None of the existing skeletons and animations in NWN2 is suitable for our needs, however, so I took this as an opportunity to teach myself how to make skeletons and animations from scratch. As usual, I’m documenting the things that I’ve learned in a tutorial.&lt;br /&gt;&lt;br /&gt;Its title notwithstanding, this blog post is not a super-simple tutorial on skeleton building and animation. This is a tutorial on building and animating a super-simple skeleton. The skeleton will consist of only one bone and a few attachment points. It will have only one idle animation that does absolutely nothing. The animation is for a statue after all. It’s not supposed to fidget while it stands in place. Nevertheless, the statue will be able to shoot spells from the crystal it is holding, and because it is effectively a creature, NPCs will be able to target it for destruction without any changes to their AI.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:130%;"&gt;&lt;strong&gt;Preliminaries&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It is assumed that you have 3DS Max version 6, 7, or 8 as well as &lt;a href="http://nwvault.ign.com/View.php?view=NWN2PlugIns.Detail&amp;amp;id=68"&gt;the Expotron plug-in&lt;/a&gt;. The plug-in that we have available at the Vault will not work with any other version of Max, nor will it work with other 3D modeling software. It is also assumed that you’ve already constructed and textured the main skin mesh of your model as well as its two lower level-of-detail meshes. The third and final assumption is that you know how to rig the mesh with the new skeleton that you’ll be creating.&lt;br /&gt;&lt;br /&gt;It’s important to name your meshes properly. For creature models that are neither PCs nor NPCs, the main mesh should be named C_&lt;em&gt;name&lt;/em&gt;_&lt;em&gt;ar&lt;/em&gt;_BODY&lt;em&gt;xx&lt;/em&gt;, where &lt;em&gt;name&lt;/em&gt; is a unique identifier for your model, &lt;em&gt;ar&lt;/em&gt; is the type of armor your model is wearing (CL if the model is unarmored), and &lt;em&gt;xx&lt;/em&gt; is a two-digit number from 01 to 99. Mesh names are not case-sensitive.&lt;br /&gt;&lt;br /&gt;If, like me, you’ve been using &lt;a href="http://nwvault.ign.com/View.php?view=nwn2plugins.Detail&amp;amp;id=27"&gt;Tazpn’s plug-in&lt;/a&gt; to import MDB models as a reference for setting the scale of your models, the Expotron will export them at a very tiny scale. You should resize your meshes at 10,000% of the scale that Tazpn’s plug-in works with. After rescaling, you should make sure that the base of each mesh is at world coordinate (0, 0, 0).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:130%;"&gt;&lt;strong&gt;Skeleton Building&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sdzcm_KhqNI/AAAAAAAAA60/F6X-76VXTJY/s1600-h/Skel-Tut-01.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322371421993806034" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 41px; CURSOR: hand; HEIGHT: 200px" alt="Step 1" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sdzcm_KhqNI/AAAAAAAAA60/F6X-76VXTJY/s200/Skel-Tut-01.jpg" border="0" /&gt;&lt;/a&gt;Hide the two lower level-of-detail meshes so that only the main mesh is visible. With the main mesh selected, go to the Display panel at the right of the screen and click the “See-Through” box to put a check mark in it. This will make it easier to position bones and attachment points in relation to the mesh. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzcnJ7ULOI/AAAAAAAAA68/qkxCgibV3mI/s1600-h/Skel-Tut-02a.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322371424882797794" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 44px; CURSOR: hand; HEIGHT: 200px" alt="Step 2a" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzcnJ7ULOI/AAAAAAAAA68/qkxCgibV3mI/s200/Skel-Tut-02a.jpg" border="0" /&gt;&lt;/a&gt;Go to the Create panel and click the Systems button, which is the rightmost button just below the panels’ tabs. Under “Object Type,” click the Bones button. &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzcndRvGdI/AAAAAAAAA7E/WpQv5WSdTeM/s1600-h/Skel-Tut-02b.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322371430077110738" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 198px; CURSOR: hand; HEIGHT: 200px" alt="Step 2b" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzcndRvGdI/AAAAAAAAA7E/WpQv5WSdTeM/s200/Skel-Tut-02b.jpg" border="0" /&gt;&lt;/a&gt;Click successive points in one of the viewports to create bones. We only want to create one bone, so press the [Esc] key after clicking two points. This will actually create two bones, so select the longer bone and delete it. Rename the remaining bone using the following convention: C_&lt;em&gt;name&lt;/em&gt;_SKEL, where &lt;em&gt;name&lt;/em&gt; is the unique identifier of your model. This bone will be the root node of your skeleton hierarchy, which includes not only bones but also attachment points and collision spheres. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SdzcnXZAUfI/AAAAAAAAA7M/D5KvRFxc5CM/s1600-h/Skel-Tut-03.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322371428496986610" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 146px; CURSOR: hand; HEIGHT: 200px" alt="Step 3" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SdzcnXZAUfI/AAAAAAAAA7M/D5KvRFxc5CM/s200/Skel-Tut-03.jpg" border="0" /&gt;&lt;/a&gt;Move the bone you created to the desired position. This is almost always the center of the pelvic area. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;We’re going to create and position a few attachment points, which are sort of like invisible hooks to which other external objects can attach themselves. All attachment points are prefixed with “ap_”. In NWN2, there is a standard set of attachment points with specific names. The ones that we’re going to use are the following:&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;Attachment Point Name&lt;/th&gt;&lt;th&gt;Usual Position&lt;/th&gt;&lt;th&gt;Example Attachment Objects&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;ap_camera&lt;/td&gt;&lt;td&gt;Inside the head&lt;/td&gt;&lt;td&gt;The camera’s focal point during cutscenes when the creature is the active speaker&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;ap_halo&lt;/td&gt;&lt;td&gt;Above the head&lt;/td&gt;&lt;td&gt;Effect icons, spell conjuration effects&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;ap_hand_right&lt;/td&gt;&lt;td&gt;Right hand&lt;/td&gt;&lt;td&gt;Primary weapons, spell conjuration effects&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;ap_torso&lt;/td&gt;&lt;td&gt;Center of and just behind the chest&lt;t&gt; &lt;td&gt;Spell conjuration effects&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;I chose these attachment points because they are the ones most likely to be used for spellcasting and cutscenes. For the statue model, I want to change the position of ap_halo to just above the crystal and ap_hand_right to inside the crystal. Both of these attachment points are involved in spell conjuration and casting, and I want to make the statue’s spells seem to emanate from the crystal.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzfVwtdAbI/AAAAAAAAA7U/doF7Df7UWP8/s1600-h/Skel-Tut-04a.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322374424590877106" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 113px; CURSOR: hand; HEIGHT: 200px" alt="Step 4a" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzfVwtdAbI/AAAAAAAAA7U/doF7Df7UWP8/s200/Skel-Tut-04a.jpg" border="0" /&gt;&lt;/a&gt;In 3DS Max, attachment points are implemented as dummy objects. In the Create panel, click the Helpers button then click the Dummy button. &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzfWCZc_MI/AAAAAAAAA7c/LcY1VHdlBkk/s1600-h/Skel-Tut-04b.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322374429338827970" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 124px" alt="Step 4b" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzfWCZc_MI/AAAAAAAAA7c/LcY1VHdlBkk/s200/Skel-Tut-04b.jpg" border="0" /&gt;&lt;/a&gt;Click and drag the mouse icon over a tiny area of a viewport to create a dummy object. Change the name of the object to one of the standard attachment point names and set its desired position. Do this for all attachment points before moving to the next step. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/SdzfWE-iElI/AAAAAAAAA7k/6yugOT194SI/s1600-h/Skel-Tut-05.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322374430031221330" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 157px; CURSOR: hand; HEIGHT: 200px" alt="Step 5" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/SdzfWE-iElI/AAAAAAAAA7k/6yugOT194SI/s200/Skel-Tut-05.jpg" border="0" /&gt;&lt;/a&gt;Nearly all creature models have one or more collision spheres, and this statue is no exception. Collision spheres are for determining if two objects are in contact with each other or if there is a straight line of sight toward an object. In NWN2, only creature objects make use of collision spheres. (Placeables make use of collision boxes.) Each collision sphere is attached to a single bone and moves with that bone. Generally, a collision sphere encompasses the bone to which it is attached. &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;To create a collision sphere, click the Geometry button in the Create panel. Click the Sphere button and click-and-drag the mouse cursor in any of the viewports to create a sphere of the desired size. Adjust the position of each sphere if necessary. The first collision sphere should always be named “COLS00.” Subsequent spheres are named “COLS01” to “COLS99.”&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/SdzfWJ67lJI/AAAAAAAAA7s/g7X7CKTnHMo/s1600-h/Skel-Tut-06.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322374431358293138" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 136px; CURSOR: hand; HEIGHT: 200px" alt="Step 6" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/SdzfWJ67lJI/AAAAAAAAA7s/g7X7CKTnHMo/s200/Skel-Tut-06.jpg" border="0" /&gt;&lt;/a&gt;Select each sphere in turn and edit its Object Properties. Make sure that the “See-Through” box is checked and that the Renderable box is not checked. When you’re done, click the OK button to close the Object Properties window. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Having created all the bones, attachment points, and collision spheres that we need, our next step is to arrange them in a skeleton hierarchy. In this example, the process is very easy because we have only one bone, one collision sphere, and four attachment points to connect. All of the attachments points as well as the collision sphere are connected to the bone, which is the root node by default. Hence, in our hierarchy, the bone is the lone parent object, and the attachment points and the collision sphere are its direct child objects.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sdzg_qEYR3I/AAAAAAAAA70/DgsaYKa7dQk/s1600-h/Skel-Tut-07a.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322376243874121586" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 53px" alt="Step 7a" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sdzg_qEYR3I/AAAAAAAAA70/DgsaYKa7dQk/s200/Skel-Tut-07a.jpg" border="0" /&gt;&lt;/a&gt;Select a child object then click the “Select and Link” button, which is the third button at the bottom of the main menu. &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sdzg_sDo-uI/AAAAAAAAA78/vHk2wOGd_dM/s1600-h/Skel-Tut-07b.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322376244407892706" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 164px" alt="Step 7b" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sdzg_sDo-uI/AAAAAAAAA78/vHk2wOGd_dM/s200/Skel-Tut-07b.jpg" border="0" /&gt;&lt;/a&gt;Move the cursor to the chosen child object then click the mouse button without releasing it. Drag the cursor to the parent object, which in this case is the only bone in this model. A dotted line should stretch out as you drag the cursor. With the cursor over the parent object, release the mouse button. The white outline of a square will flash briefly around the parent object to indicate that a link was created between the two objects. Repeat this process for all the other child objects. &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sdzg_p52qhI/AAAAAAAAA8E/JdoegsuaP9Y/s1600-h/Skel-Tut-07c.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322376243829975570" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 181px; CURSOR: hand; HEIGHT: 200px" alt="Step 7c" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sdzg_p52qhI/AAAAAAAAA8E/JdoegsuaP9Y/s200/Skel-Tut-07c.jpg" border="0" /&gt;&lt;/a&gt;Sometimes, it’s difficult to link objects in this manner, especially if one object encompasses or is very near the other. If that is the case, first make sure that the “Select and Link” button is not pressed then select the child object that you want to connect. Now click the “Select and Link” button and press the [H] key. This will bring up the “Select Parent” dialog box. Click the name of the object that you want to set as the parent then click the Link button at the bottom of the dialog box. This will cause the two objects to be linked. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzg_yBeCwI/AAAAAAAAA8M/GJXNCUY8xSE/s1600-h/Skel-Tut-08.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322376246009400066" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 93px" alt="Step 8" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzg_yBeCwI/AAAAAAAAA8M/GJXNCUY8xSE/s200/Skel-Tut-08.jpg" border="0" /&gt;&lt;/a&gt;Optional step: If you want to make sure that you linked the objects correctly, press the “Schematic View” button, which is one of the rightmost buttons just under the main menu bar. This will open a Schematic View window. You should see a hierarchical view with the root bone at the top and the child objects below it. The three skin meshes are independent of this hierarchy and are not connected to it. Close the Schematic View window when you’re done. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Rig each of the skin meshes with the bones that you created. I won’t go into detail in this step, having already explained this process &lt;a href="http://nwn2faithless.blogspot.com/2009/01/creature-modeling-part-3-rigging-skin.html"&gt;elsewhere in my blog.&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:130%;"&gt;&lt;strong&gt;Exporting the Skeleton&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You are now ready to use the Expotron. The first thing to do is to export the skeleton.&lt;br /&gt;&lt;br /&gt;&lt;ol start="10"&gt;&lt;li&gt;&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/SdzhAMMjSyI/AAAAAAAAA8U/uxxGgF4YFIM/s1600-h/Skel-Tut-10.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322376253035203362" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 181px; CURSOR: hand; HEIGHT: 200px" alt="Step 10" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/SdzhAMMjSyI/AAAAAAAAA8U/uxxGgF4YFIM/s200/Skel-Tut-10.jpg" border="0" /&gt;&lt;/a&gt;Select all the bones and attachment points of the model. The easiest way to do this is to press the [H] key to bring up the Select Objects dialog box and press [Ctrl]+mouse click on each object that you want to select. Click the Select button at the bottom of the dialog window when you’ve selected all the bones and attachment points. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzj63sS7sI/AAAAAAAAA8c/8S65CE8PVc8/s1600-h/Skel-Tut-11.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322379460166741698" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 107px" alt="Step 11" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzj63sS7sI/AAAAAAAAA8c/8S65CE8PVc8/s200/Skel-Tut-11.jpg" border="0" /&gt;&lt;/a&gt;In the File menu, select the “Export Selected…” option. This will bring up a dialog box for you to enter the name and type of the file to export. Under “Save as Type,” choose “Granny Run-Time (*.GR2)”. The name of the file that you enter should be the same as the name of the root bone node. Click the Save button. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;In the Granny Export Settings window, click Model. Make sure that the box beside “Include reference in export” is checked and that the box beside “Move to Origin” is not checked. Click the Export button at the bottom of the window.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:130%;"&gt;&lt;strong&gt;Exporting an Animation&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;Every skeleton needs at least one animation – the idle animation. Since our statue model will not move a muscle while it is idle, this section is going to be easy.&lt;br /&gt;&lt;br /&gt;&lt;ol start="13"&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzj7cW8dFI/AAAAAAAAA8k/3kWBb2sPjiM/s1600-h/Skel-Tut-13.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322379470009300050" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 33px" alt="Step 13" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzj7cW8dFI/AAAAAAAAA8k/3kWBb2sPjiM/s200/Skel-Tut-13.jpg" border="0" /&gt;&lt;/a&gt;Press the Auto Key button near the bottom of the screen. &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Normally, at this stage, you would be setting frames and moving and rotating bones into position at each frame. Nevertheless, our model will be as lifeless as a rock, so we’re done with making its idle animation.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzj7lS_Q9I/AAAAAAAAA8s/hsCfOEfDveI/s1600-h/Skel-Tut-14.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322379472408626130" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 107px" alt="Step 14" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzj7lS_Q9I/AAAAAAAAA8s/hsCfOEfDveI/s200/Skel-Tut-14.jpg" border="0" /&gt;&lt;/a&gt;Select all the bones and attachment points of the model. In the File menu, select the “Export Selected…” option. This will bring up a dialog box for you to enter the name and type of the file to export. Under “Save as Type,” choose “Granny Run-Time (*.GR2)”. Name the file to export C_&lt;em&gt;name&lt;/em&gt;_IDLE, where &lt;em&gt;name&lt;/em&gt; is the unique identifier of the model. Press the Save button to continue. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;In the Granny Export Settings window, click Animations. Make sure that the box beside “Include reference in export” is checked and that the box beside “Move to Origin” is not checked. Click the Export button at the bottom of the window. Slide the Oversampling button all the way to the right. Make sure that the box beside “Move to Origin” is not checked, and set “orientation curve tolerance” to 0.15. Click the Export button.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;If there are other animations you wish to make, you may repeat steps 13 to 15 for each animation file. Release the Auto Key button when you’re done. My advice, however, is to defer creating anything other than the idle animation until you’ve checked your model in the toolset. This is because you may have to correct the coordinates of ap_camera and ap_halo first.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:130%;"&gt;&lt;strong&gt;Exporting the Model&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol start="17"&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzj7s2jFrI/AAAAAAAAA80/1ltLGRutiSQ/s1600-h/Skel-Tut-17.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322379474436822706" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 181px; CURSOR: hand; HEIGHT: 200px" alt="Step 17" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdzj7s2jFrI/AAAAAAAAA80/1ltLGRutiSQ/s200/Skel-Tut-17.jpg" border="0" /&gt;&lt;/a&gt;We’re now about to export the model to an MDB file. If the main mesh is see-through, uncheck the see-through display option. Unhide all the lower level-of-detail meshes if they are hidden. Now select all the skin meshes. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sdzj75gtb2I/AAAAAAAAA88/g8G6TtX9IXk/s1600-h/Skel-Tut-18.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322379477834887010" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 150px; CURSOR: hand; HEIGHT: 200px" alt="Step 18" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sdzj75gtb2I/AAAAAAAAA88/g8G6TtX9IXk/s200/Skel-Tut-18.jpg" border="0" /&gt;&lt;/a&gt;Go to the Utilities panel. If you don’t see Expotron among the list of utilities, click the More button and select “Expotron Utility” from the list that appears. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/SdzldMBHSdI/AAAAAAAAA9E/ZmBMwBg3-Fs/s1600-h/Skel-Tut-19.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322381149249948114" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 41px; CURSOR: hand; HEIGHT: 200px" alt="Step 19" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/SdzldMBHSdI/AAAAAAAAA9E/ZmBMwBg3-Fs/s200/Skel-Tut-19.jpg" border="0" /&gt;&lt;/a&gt;Under “NWN2 Types,” click the button beside “Character (skin).” If your mesh will be using transparencies, click the button beside “Transparency Mask” under “NWN2 Flags.” Otherwise, make sure that the button beside “No Transparency” is selected. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SdzldUdQCUI/AAAAAAAAA9M/4I4YAPqLHWk/s1600-h/Skel-Tut-20.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322381151515445570" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 184px; CURSOR: hand; HEIGHT: 124px" alt="Step 20" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SdzldUdQCUI/AAAAAAAAA9M/4I4YAPqLHWk/s200/Skel-Tut-20.jpg" border="0" /&gt;&lt;/a&gt;Under “Skeleton Name,” type the name of the skeleton file that you created for your model. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/SdzldX_dxZI/AAAAAAAAA9U/mjtfGxnyGc4/s1600-h/Skel-Tut-21.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322381152464258450" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 181px; CURSOR: hand; HEIGHT: 200px" alt="Step 21" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/SdzldX_dxZI/AAAAAAAAA9U/mjtfGxnyGc4/s200/Skel-Tut-21.jpg" border="0" /&gt;&lt;/a&gt;Add all collision spheres to the list of currently selected objects. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SdzldVuQMeI/AAAAAAAAA9c/fc5eOa6cCQU/s1600-h/Skel-Tut-22.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322381151855194594" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 107px" alt="Step 22" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SdzldVuQMeI/AAAAAAAAA9c/fc5eOa6cCQU/s200/Skel-Tut-22.jpg" border="0" /&gt;&lt;/a&gt;In the File menu, select the “Export Selected…” option. This will bring up a dialog box for you to enter the name and type of the file to export. Under “Save as Type,” choose “Neverwinter Nights 2 (*.MDB)”. Under “File Name,” type the name of your main mesh then click the Save button. In the Expotron Export Options window, make sure that all the boxes are checked then click the OK button. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:130%;"&gt;&lt;strong&gt;Testing Your Model&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol start="23"&gt;&lt;li&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzldoWSWtI/AAAAAAAAA9k/XyHKeoBU4dU/s1600-h/Skel-Tut-23.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322381156854946514" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 137px; CURSOR: hand; HEIGHT: 200px" alt="Step 23" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/SdzldoWSWtI/AAAAAAAAA9k/XyHKeoBU4dU/s200/Skel-Tut-23.jpg" border="0" /&gt;&lt;/a&gt;Copy your MDB and two GR2 files to the folder “My Documents\Neverwinter Nights 2\override”. Copy the appearance.2DA file to your override folder and add an entry for your model. Create a new module in the toolset and add a creature blueprint for your model. Add an area to the module, and put your creature on it. Make sure that the Skeletons button, which is below the main menu bar of the toolset, is pressed. Now examine the creature and its skeleton. Notice any problems? &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;If you find that ap_camera and ap_halo are in their proper positions, go ahead and create the rest of the animations that this creature will need, if any. Otherwise, you’ll have to change the coordinates of these two attachment points. The Expotron does not seem to export the position of ap_camera and ap_halo correctly. To the best of my knowledge, this problem was first &lt;a href="http://nwn2forums.bioware.com/forums/viewtopic.html?chl=en&amp;amp;topic=603709&amp;amp;forum=115"&gt;reported by Schazzwozzer&lt;/a&gt; at the NWN2 forums on December 3, 2007. At the time that he reported the problem, no one came up with a solution. I believe I have found a solution to this problem, which I will explain below.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;We’re going to work with the creature model in 3DS Max again. Select ap_camera and ap_halo in turn and write down their exact x, y, and z coordinates.&lt;br /&gt;&lt;br /&gt;Now for these two attachment points, exchange the x-coordinate with the z-coordinate. You may have to add a number to the three coordinates of each attachment point as well. I can’t say for sure what those numbers should be for any given model. I had to go through a process of trial-and-error to find the numbers that I needed to add for the model I made. The following are the formulas I used to derive the new coordinates:&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;New X-Value&lt;/th&gt;&lt;th&gt;New Y-Value&lt;/th&gt;&lt;th&gt;New Z-Value&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;ap_camera&lt;/th&gt;&lt;td&gt;Old_Z + 115&lt;/td&gt;&lt;td&gt;Old_Y + 20&lt;/td&gt;&lt;td&gt;Old_X + 5&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;ap_halo&lt;/th&gt;&lt;td&gt;Old_Z + 50&lt;/td&gt;&lt;td&gt;Old_Y + 10&lt;/td&gt;&lt;td&gt;Old_X&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/SdznM_SiVcI/AAAAAAAAA9s/wEH72gZXyog/s1600-h/Skel-Tut-24.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322383069978711490" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 143px; CURSOR: hand; HEIGHT: 200px" alt="Step 24" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/SdznM_SiVcI/AAAAAAAAA9s/wEH72gZXyog/s200/Skel-Tut-24.jpg" border="0" /&gt;&lt;/a&gt;Each time you change the coordinates of either or both these attachment points, you’ll have to re-export the skeleton and possibly the idle animation of your model to your override folder. You’ll be able to check out your model in the toolset to see if ap_camera and ap_halo are in their proper positions. If the above formulas don’t work for you, you’ll have to experiment with the values to add to each coordinate. If all goes well, you’ll see that ap_camera and ap_halo are in the exact position that you want them to be. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;The iron test for any creature model is to check it out in the game. Bake the area of your test module and prepare for a few encounters with your creature.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Below are screenshots that demonstrate that the statue’s spells do shoot out from its crystal. In each picture, one of the statues is a placeable, and the other is a creature. It's easy to guess which is which.&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdza8Tcoy6I/AAAAAAAAA6U/9ui29Xk1Uf4/s1600-h/NWN2_SS_040809_175858.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322369589192477602" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 156px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdza8Tcoy6I/AAAAAAAAA6U/9ui29Xk1Uf4/s200/NWN2_SS_040809_175858.jpg" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sdza8rL5qnI/AAAAAAAAA6c/1OE51nr-7uE/s1600-h/NWN2_SS_040809_180140.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322369595564730994" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 156px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sdza8rL5qnI/AAAAAAAAA6c/1OE51nr-7uE/s200/NWN2_SS_040809_180140.jpg" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sdza8hr6AOI/AAAAAAAAA6k/g0u-MAxDFwc/s1600-h/NWN2_SS_040809_180352.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322369593014616290" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 156px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sdza8hr6AOI/AAAAAAAAA6k/g0u-MAxDFwc/s200/NWN2_SS_040809_180352.jpg" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sdza8-iIn3I/AAAAAAAAA6s/0PahEskFa_A/s1600-h/NWN2_SS_040809_180730.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5322369600758259570" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 156px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sdza8-iIn3I/AAAAAAAAA6s/0PahEskFa_A/s200/NWN2_SS_040809_180730.jpg" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:130%;"&gt;&lt;strong&gt;Acknowledgments&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;This blog post is based in part on the document &lt;a href="http://nwn2patch.obsidian.net/files/Expotron/ExportAnimCreature.pdf"&gt;Exporting Animated Creatures&lt;/a&gt; by Jay Bakke of Obsidian Entertainment. Even if you've already read this document, my blog post has some important information that you won't find there.&lt;br /&gt;&lt;br /&gt;The screenshot shown at the beginning of this blog post was made by E.C. Patterson, aka ciViLiZed. I emailed him a copy of my placeable statue model, and he sent me back this picture. I love the way he lit the area in the screenshot. It highlighted the etching on the statue's breastplate very well.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-5574972416614536303?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/5574972416614536303/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=5574972416614536303' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/5574972416614536303'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/5574972416614536303'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/04/super-simple-skeleton-building-and.html' title='Super-Simple Skeleton Building and Animation Tutorial'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_1IuQZ4I4p48/Sdz1EK2lZvI/AAAAAAAAA90/MLegLRiBUxY/s72-c/CivilizedStatue.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-3309824399077231090</id><published>2009-04-04T05:05:00.007+08:00</published><updated>2009-04-04T05:43:06.765+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>My First Placeable Model</title><content type='html'>I assume that most people who try to learn 3D modeling start with something inanimate such as a box. My first 3D model, on the other hand, was a monster. I could never focus my attention on anything as banal as a box, so I jumped right into creature modeling. Took me over a month to figure out.&lt;br /&gt;&lt;br /&gt;For Shattered Dreams, Dirtywick told me that he needed a custom model – something like a tripod, a little taller than a human, topped with a crystal. Since all the other 3D artists on the project were still busy with their current assignments, I decided to try making my very first placeable.&lt;br /&gt;&lt;br /&gt;Looking for picture references on which to base my design, I searched the Internet for tripods, preferably those that looked arcane, but the ones I found were either too plain or too modern. I eventually decided to search for candleholders because some of them can be pretty fancy, and their design can conceivably be tweaked for holding crystals instead. It didn’t take me long to find some beautiful ones. The ones I liked were small metal sculptures of women lifting up receptacles into which candles may be placed. Some of those receptacles were shaped like flowers. (Hmm, candles inserted into flowers held by women – could there be something Freudian going on with those designs?)&lt;br /&gt;&lt;br /&gt;I liked the idea of making the crystal holder a sculpture of a woman, a fierce but beautiful one caparisoned for war. Because I was running short on time, I decided to forego producing concept art and just create a 3D model on the fly. I thought of making the woman a warrior wizard of some sort, so I had her dressed in a robe. With her hairstyle, however, she looked like a school teacher from the 19th century, so I gave her a breastplate to wear over her clothing. I then decided that the long sleeves weren’t sexy, so I sculpted away the sleeves. That left her arms looking too bare, so I added a pair of bracers.&lt;br /&gt;&lt;br /&gt;With all the tweaking I did on the model, maybe I should have drawn some concept art first.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/SdZ6iwZFarI/AAAAAAAAA5M/-9Jes9wblz0/s1600-h/statue.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5320574747309075122" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 122px" alt="" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/SdZ6iwZFarI/AAAAAAAAA5M/-9Jes9wblz0/s200/statue.jpg" border="0" /&gt;&lt;/a&gt;From the beginning, I had planned on posing the high and low poly models symmetrically. I intended to adjust the pose of the low poly model after creating its UV, diffuse, and normal maps. That way, I could create a mirrored UV map without much difficulty. If I had set an asymmetrical pose on the model at the start, producing a mirrored UV map would have been impossible. It was a brilliant plan, I thought to myself.&lt;br /&gt;&lt;br /&gt;UV mapping was a breeze. So was texturing. The next task was to pose the model. In ZBrush, I masked off all but the model’s right arm and attempted to rotate it into position. The arm and shoulder twisted out of shape. I adjusted the masking and tried again. Portions of the model’s back collapsed in an inhuman manner. Try as I might, I could not get the arm to rotate convincingly at the shoulder socket.&lt;br /&gt;&lt;br /&gt;Yeah, brilliant plan, I thought to myself.&lt;br /&gt;&lt;br /&gt;Since that didn’t work out well, I decided to return to my modeling roots and rig the whole mesh in 3DS Max as if it were character model. I then moved and rotated the bones to get the model into the pose that I wanted. Because my rigging was hastily done, a number of vertices wound up a little off position, so I tweaked them into place in ZBrush.&lt;br /&gt;&lt;br /&gt;As can be seen from the in-game screenshot below, the model didn’t turn out so badly after all.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/SdZ6Tbfo_kI/AAAAAAAAA5E/6TNAxJ1_uPI/s1600-h/crystal_holders.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5320574484001390146" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 358px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/SdZ6Tbfo_kI/AAAAAAAAA5E/6TNAxJ1_uPI/s400/crystal_holders.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-3309824399077231090?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/3309824399077231090/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=3309824399077231090' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3309824399077231090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3309824399077231090'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/04/my-first-placeable-model.html' title='My First Placeable Model'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1IuQZ4I4p48/SdZ6iwZFarI/AAAAAAAAA5M/-9Jes9wblz0/s72-c/statue.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-3780707462769700367</id><published>2009-03-28T02:59:00.004+08:00</published><updated>2009-03-28T03:03:12.627+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>Reconstructing Arizona</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sc0ikRSF4XI/AAAAAAAAA48/AAi2FMehcVM/s1600-h/clifftexture.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5317944741504344434" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 150px" alt="" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sc0ikRSF4XI/AAAAAAAAA48/AAi2FMehcVM/s200/clifftexture.jpg" border="0" /&gt;&lt;/a&gt;A few of the areas in Shattered Dreams were inspired by the Arizona desert, of which we gathered several photo references. Anduraga was not happy with the cliff textures that come with the game, so he requested that some new ones be done based on the Grand Canyon. I took a break from 3D modeling to try my hand at creating terrain textures. It wasn’t easy for me to find information on the image files that comprise them, so Dirtywick passed me &lt;a href="http://www.roguedao.com/phpBB2/viewtopic.php?p=1428"&gt;information that he found at the Rogue Dao website&lt;/a&gt;. When I was done, I quickly assembled a test module to see how my cliff textures look in the game. I rather like the way the textures turned out. I created two cliff textures that can actually be used together fairly seamlessly even at 100% pressure.&lt;br /&gt;&lt;br /&gt;The landscape shown here won’t appear in Shattered Dreams, by the way. This area is strictly for testing purposes. Besides, this place is decidedly less grand than the canyon that inspired it. Hopefully, our area designers can make better use of the textures that I made.&lt;br /&gt;&lt;br /&gt;The two rock columns shown here were modeled by Nytir and textured by Palafoxx. Shattered Dreams is brimming with lots of custom models, and more are in the works. I’m hoping that the other members of the team will take screenshots of actual in-game areas with the new models in place.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-3780707462769700367?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/3780707462769700367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=3780707462769700367' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3780707462769700367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/3780707462769700367'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/03/reconstructing-arizona.html' title='Reconstructing Arizona'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_1IuQZ4I4p48/Sc0ikRSF4XI/AAAAAAAAA48/AAi2FMehcVM/s72-c/clifftexture.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-4423090559621597180</id><published>2009-03-25T03:35:00.011+08:00</published><updated>2009-03-25T04:10:27.977+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><title type='text'>Rusty Metal: A 3D Modeling Tutorial</title><content type='html'>In my last blog post, I showcased a creature model wearing rusty metal armor. In the process of texturing the model, I figured out a few techniques for achieving the surface look that I wanted. In this blog post, I explain the process of creating the rusty metal look.&lt;br /&gt;&lt;br /&gt;This tutorial assumes that you have the following software:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;An image editor that can handle layers and channels such as Photoshop or Gimp as well as a plugin for converting image files to normal maps. I use Photoshop, but the operations explained here can also be done in Gimp, albeit with different commands.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;3D Modeling software that can import and export MDB files such as 3DS Max with Tazpn’s MDB plugin&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;The tutorial also assumes that you already know the basics of normal and diffuse mapping and that the model you’re working on already has a UV map in place. The tutorial also assumes that you know how to use your software. I won’t explain how to create alpha channels or how to set overlay layers.&lt;br /&gt;&lt;br /&gt;When you’re ready, do the following steps.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck39fVQDJI/AAAAAAAAA3k/tkaWpIMFkfY/s1600-h/Rust-01.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316842364609760402" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 200px" alt="Step 1" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck39fVQDJI/AAAAAAAAA3k/tkaWpIMFkfY/s200/Rust-01.jpg" border="0" /&gt;&lt;/a&gt;Create a normal texture representing the embossed and engraved patterns on the surface of your model. Note that the surface marks due to rusty metal are not yet accounted for in this normal texture. We’ll include those later. &lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Download or create a rusty metal texture. Some excellent textures are available for download if you search well enough. Before using downloaded textures, make sure that you’re allowed to use it for whatever purpose you intend. Some textures are available for non-commercial use only, which is fine if you’re modding NWN2. Other sites may not be as generous regarding their terms of use.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sck39jMSotI/AAAAAAAAA3s/FS-KZGxyZWw/s1600-h/Rust-03.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316842365645923026" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 200px" alt="Step 3" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sck39jMSotI/AAAAAAAAA3s/FS-KZGxyZWw/s200/Rust-03.jpg" border="0" /&gt;&lt;/a&gt;In your image editing software, tile your chosen texture so that the image is the desired size of your diffuse map. If these tiles are created from separate layers, merge them to form a single rusty metal layer.&lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;At this point, the diffuse map covers the entire model with a rusty metal texture. If there are other areas of your model that use different textures, create a new layer over the metal layer for each additional texture that your model needs and paint over them.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck3-RzAUiI/AAAAAAAAA30/8mi1Acz3NC0/s1600-h/Rust-04a.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316842378156331554" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 200px" alt="Step 4a" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck3-RzAUiI/AAAAAAAAA30/8mi1Acz3NC0/s200/Rust-04a.jpg" border="0" /&gt;&lt;/a&gt;For the texture I’m making, the new texture layer appears as shown here. Note that all areas not covered by the texture are transparent (which, in Photoshop, is indicated by a gray-and-white checker pattern).&lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sck3-tU8AII/AAAAAAAAA38/Epg3mvZRrD8/s1600-h/Rust-04b.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316842385546412162" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 200px" alt="Step 4b" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sck3-tU8AII/AAAAAAAAA38/Epg3mvZRrD8/s200/Rust-04b.jpg" border="0" /&gt;&lt;/a&gt;When both layers are visible, the resulting image appears as shown here. &lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;We’re done with the diffuse map. You may now save it as a TGA or DDS file. (DDS files are smaller and should generally be the format of choice for your texture files.) You’ll have to refer to your original file with its separate metal layer as well, so you may want to save it in the native format of your image editing software just to be safe.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck5MfG44gI/AAAAAAAAA4E/aUoNSkzFE7s/s1600-h/Rust-06.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck5MfG44gI/AAAAAAAAA4E/aUoNSkzFE7s/s200/Rust-06.jpg" border="0" alt="Step 5"id="BLOGGER_PHOTO_ID_5316843721759187458" /&gt;&lt;/a&gt;From your original diffuse map file, duplicate the rusty metal layer to a new window. Now create a normal texture out of this image. This normal texture will show as pits, scars, and surface bumps on the metal surface. Rather than explaining how to do this, I’d like to refer the reader to this &lt;a href="http://www.cgtextures.com/content.php?action=tutorial&amp;amp;name=normalmap"&gt;excellent tutorial&lt;/a&gt;. Continue to the next step when you’re done.&lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sck5NDnYzAI/AAAAAAAAA4M/_NtH-EwE7lE/s1600-h/Rust-07.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 82px; height: 200px;" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/Sck5NDnYzAI/AAAAAAAAA4M/_NtH-EwE7lE/s200/Rust-07.jpg" border="0" alt="Step 6"id="BLOGGER_PHOTO_ID_5316843731559173122" /&gt;&lt;/a&gt;Copy the new normal texture as a layer over the first normal texture that you created in Step 1. Set this layer as an Overlay layer so that the rusty metal surface is added to the design pattern of the first normal texture. Note that you may have to erase parts of the overlay layer that cover areas that are not of rusty metal.&lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;If the normal texture does not already have an alpha channel, create one. The alpha channel of a normal map controls how much light is reflected from each area of the model. White areas on the alpha channel reflect the most light in the corresponding surface of the model, and black areas on the alpha channel reflect the least light. How much light the shades of gray on the alpha channel will reflect depends on how dark they are. On the alpha channel, we want the rusty parts of the metal surface to be black and the non-corroded parts of the metal to be white. The non-metallic portions of the model may be represented by black, white, or shades of gray on the alpha channel depending on the type of material they are supposed to be made of.&lt;br /&gt;&lt;br /&gt;Don’t even think of painting the alpha channel by hand. The rusty texture is much too complex for that. Do the following steps instead to paint your alpha channel.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck5OI79hSI/AAAAAAAAA4U/jzKM0-Ntk7k/s1600-h/Rust-09.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 84px; height: 200px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck5OI79hSI/AAAAAAAAA4U/jzKM0-Ntk7k/s200/Rust-09.jpg" border="0" alt="Step 8"id="BLOGGER_PHOTO_ID_5316843750167512354" /&gt;&lt;/a&gt;From your original diffuse map file, duplicate the rusty metal layer to a separate window just as you did in Step 6. With the new window active, click the Channels tab at the right side of the screen. Select the Blue channel and copy the grayscale image to a new window.&lt;div class="clear"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;We choose the Blue channel because of the different color qualities of sheet iron and rust. Sheet iron that has not corroded is grayish, which means that it has a relatively even mix of red, green, and blue light. Rust, on the other hand, is orange, with variations across the range of red to yellow. Everyone knows that red and yellow, when mixed together, make orange. Not as many people realize that when you mix red and green light together, you get yellow. (Mixing red and green pigment, not light, results in a grayish color, but that’s neither here nor there.) In the blue channel, everything bluish appears lighter and everything with a predominance of red or green appears darker. Hence, in the Blue channel, rust will appear darker than iron that hasn’t corroded.&lt;br /&gt;&lt;br /&gt;What we want to do now is to darken the rusty areas to almost pure black and lighten the non-rusty areas to almost pure white.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sck5OEeiOQI/AAAAAAAAA4c/qMKx5PBpsjE/s1600-h/Rust-10.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 82px; height: 200px;" src="http://2.bp.blogspot.com/_1IuQZ4I4p48/Sck5OEeiOQI/AAAAAAAAA4c/qMKx5PBpsjE/s200/Rust-10.jpg" border="0" alt="Step 9"id="BLOGGER_PHOTO_ID_5316843748970346754" /&gt;&lt;/a&gt;With the newest window active, duplicate the layer that has the grayscale image. Set the upper layer as an Overlay layer. Duplicate this Overlay layer several times to sharpen the contrast of the image. (In my case, I created nine copies of the overlay layer before deciding to stop.) Merge all the layers together.&lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck6K_C2YlI/AAAAAAAAA4k/_PXU-_IdT6E/s1600-h/Rust-11.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 196px;" src="http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck6K_C2YlI/AAAAAAAAA4k/_PXU-_IdT6E/s200/Rust-11.jpg" border="0" alt="Step 10"id="BLOGGER_PHOTO_ID_5316844795484070482" /&gt;&lt;/a&gt;Adjust the image’s brightness and contrast by cranking both as high as you can.&lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sck6LZ8i6vI/AAAAAAAAA4s/mjQXrRXKFLU/s1600-h/Rust-12.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sck6LZ8i6vI/AAAAAAAAA4s/mjQXrRXKFLU/s200/Rust-12.jpg" border="0" alt="Step 11"id="BLOGGER_PHOTO_ID_5316844802705386226" /&gt;&lt;/a&gt;Add another layer on top of the image and paint over it so that the non-metallic sections of the normal map are represented. Whether to paint those sections black, white, or some shade of gray will depend on how much light you want to reflect off the non-metallic sections.&lt;br /&gt;&lt;br /&gt;Merge all layers when you are done.&lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Copy the entire image to the alpha channel of your normal map. Save the resulting image as a TGA or DDS file (preferably the latter).&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sck6LnkBhrI/AAAAAAAAA40/hCQ65Wtx0oc/s1600-h/Rust-14.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 90px; height: 200px;" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/Sck6LnkBhrI/AAAAAAAAA40/hCQ65Wtx0oc/s200/Rust-14.jpg" border="0" alt="Step 13"id="BLOGGER_PHOTO_ID_5316844806360630962" /&gt;&lt;/a&gt;Open your model in 3DS Max and access the Material Editor. If you haven’t set the normal and diffuse map of your model as a material, do so now. Make sure that this material is currently selected.&lt;br /&gt;&lt;br /&gt;Under “Blinn Basic Parameters,” set the Specular Level to a value between 40 and 50 inclusive. This will set a fairly strong highlight on the model. Set the Glossiness value to 100. This will concentrate the highlights over smaller areas of the model, which is good for simulating metallic shine. Assign the material to your model and export everything as an MDB file.&lt;div class="clear"&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/ScZqwjkkwVI/AAAAAAAAA3E/IHCWb5f8Iw4/s1600-h/knightside.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316053792572358994" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 167px" alt="" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/ScZqwjkkwVI/AAAAAAAAA3E/IHCWb5f8Iw4/s200/knightside.jpg" border="0" /&gt;&lt;/a&gt;&lt;li&gt;Put your MDB and DDS or TGA files in your Neverwinter Nights 2 override folder. You may have to copy the Appearance.2DA file to the override folder and edit it to include your creature model. You may now view your creature model in the toolset or in the game. If all goes well, the rusty metal on your model should look fairly realistic.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-4423090559621597180?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/4423090559621597180/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=4423090559621597180' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4423090559621597180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4423090559621597180'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/03/rusty-metal-3d-modeling-tutorial.html' title='Rusty Metal: A 3D Modeling Tutorial'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1IuQZ4I4p48/Sck39fVQDJI/AAAAAAAAA3k/tkaWpIMFkfY/s72-c/Rust-01.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9122846242068305603.post-4647473104539082115</id><published>2009-03-23T00:41:00.007+08:00</published><updated>2009-03-23T01:08:08.836+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D modeling'/><category scheme='http://www.blogger.com/atom/ns#' term='bouncyRock'/><title type='text'>A Hard Day’s Knight, Part 3</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZqvvuJ5AI/AAAAAAAAA2s/8pxJ8liYpd4/s1600-h/knightview.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316053778653897730" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 125px" alt="" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZqvvuJ5AI/AAAAAAAAA2s/8pxJ8liYpd4/s200/knightview.jpg" border="0" /&gt;&lt;/a&gt;Three weeks. That’s how long I’ve been working on this armored creature model. I estimate that the model is about eighty percent done, which for all intents and purposes means that it’s completely done. Everything else amounts to patching flaws here and there that most players probably won’t even notice in the heat of battle. Discerning players may catch these flaws if they pause the game and scrutinize the creature in various stages of animation, but I’m hoping that most won’t bother.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZsARAeKnI/AAAAAAAAA3M/W8uYA_y07EM/s1600-h/knighthead.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316055161978628722" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 200px; CURSOR: hand; HEIGHT: 125px" alt="" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZsARAeKnI/AAAAAAAAA3M/W8uYA_y07EM/s200/knighthead.jpg" border="0" /&gt;&lt;/a&gt;When I envisioned this model, little did I realize what sort of hardships I’d undergo to create it. The entire mesh is composed of smaller meshes representing different armor parts – the breastplate, gardbrace, rerebrace, couter, tuille, and many other strange-sounding accessories that I won’t bother to list. The high-poly version of these armor parts are difficult to make because of the complex details in their design. Many of these components overlap other parts, so I have to make sure that no polygon pierces through any other polygon. This is hard enough to do when the model isn’t moving, but once it’s animated, it’s very frustrating to try to put polygons in their place.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/ScZqwSWpw5I/AAAAAAAAA20/Y2S_7IsoXsg/s1600-h/knightback.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316053787950564242" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 125px" alt="" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/ScZqwSWpw5I/AAAAAAAAA20/Y2S_7IsoXsg/s200/knightback.jpg" border="0" /&gt;&lt;/a&gt;This brings me to another problem: Rigging a model comprised of overlapping sub-meshes is very difficult. If there is a way in 3DS Max to make some elements invisible so I can easily weight the vertices underneath, I haven’t found it. I can make the entire mesh see-through, and I can switch to wireframe mode, but these are no substitute for selectively hiding polygons while rigging.&lt;br /&gt;&lt;br /&gt;Another problem I experienced stemmed from the animations that I recycled from NWN2. These animations have a wider range of motion than one would expect from an armored humanoid. To make use of these animations, the 3D artists at Obsidian Entertainment created armor designs that are much more articulated than real armor. Blissfully unaware of this situation, I constructed armor based on a more traditional design. I now realize that I’ve created armor that is much suppler than sheet metal has any right to be.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_1IuQZ4I4p48/ScZqwjkkwVI/AAAAAAAAA3E/IHCWb5f8Iw4/s1600-h/knightside.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316053792572358994" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 167px" alt="" src="http://3.bp.blogspot.com/_1IuQZ4I4p48/ScZqwjkkwVI/AAAAAAAAA3E/IHCWb5f8Iw4/s200/knightside.jpg" border="0" /&gt;&lt;/a&gt;This just goes to show that with only five months of experience in 3D modeling under my belt, I’m still just an amateur. On the other hand, I think I did some fairly good texture work on the armor. The metal is rusted and pitted in some parts, and it shows pretty realistically in game. Some fancy Photoshop techniques went into the making of this texture, some of which I figured out on my own. I ought to document my workflow for creating this texture before I forget it all. I hope to have it done in my next blog post.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZsVkYZmlI/AAAAAAAAA3U/schUJTci2zs/s1600-h/tintable_knights.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316055527956519506" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 200px; CURSOR: hand; HEIGHT: 96px" alt="" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZsVkYZmlI/AAAAAAAAA3U/schUJTci2zs/s200/tintable_knights.jpg" border="0" /&gt;&lt;/a&gt;Because I couldn’t decide what color to paint the armor, I made it fully tintable. (Well, it’s tintable in those areas that aren’t corroded.) This will give the other members of the Shattered Dreams team a chance to make this creature as scary or silly as they want it to be.&lt;br /&gt;&lt;br /&gt;To the actual members of the team who happen to read this blog post: Disregard the part about making the model silly. Please. This dude is meant to be seriously intimidating. If you’re not convinced, check out the picture below.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top" align="middle"&gt;&lt;a href="http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZssETf6gI/AAAAAAAAA3c/XmBaU3IjoSw/s1600-h/quovadis.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316055914483018242" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZssETf6gI/AAAAAAAAA3c/XmBaU3IjoSw/s400/quovadis.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;“Look, a player character. Nab ‘em, boys.”&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9122846242068305603-4647473104539082115?l=nwn2faithless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nwn2faithless.blogspot.com/feeds/4647473104539082115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=9122846242068305603&amp;postID=4647473104539082115' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4647473104539082115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9122846242068305603/posts/default/4647473104539082115'/><link rel='alternate' type='text/html' href='http://nwn2faithless.blogspot.com/2009/03/hard-days-knight-part-3.html' title='A Hard Day’s Knight, Part 3'/><author><name>Frank Perez</name><uri>http://www.blogger.com/profile/18195521703160138274</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03201771212783218933'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_1IuQZ4I4p48/ScZqvvuJ5AI/AAAAAAAAA2s/8pxJ8liYpd4/s72-c/knightview.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>6</thr:total></entry></feed>