<?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:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8722634976710358571</id><updated>2026-07-25T03:05:11.822-05:00</updated><category term="Unity 3D"/><category term="2.57"/><category term="Blender"/><category term="game development"/><category term="tutorial"/><category term="basics"/><category term="script"/><category term="3D modeling"/><category term="JavaScript"/><category term="GIMP"/><category term="how to"/><category term="Materials"/><category term="Unity"/><category term="characters"/><category term="exporting"/><category term="functions"/><category term="importing"/><category term="2.49"/><category term="2D"/><category term="Animation"/><category term="Kongregate"/><category term="Vector3"/><category term="creating"/><category term="game"/><category term="hot keys"/><category term="make"/><category term="reference"/><category term="rotation"/><category term="textures"/><category term="2.6"/><category term="Audio"/><category term="Audio Source"/><category term="C#"/><category term="Collision"/><category term="Dont Destroy On Load"/><category term="GUI"/><category term="Google"/><category term="Graphics"/><category term="How"/><category term="Input"/><category term="Instantiate"/><category term="Local Euler Angles"/><category term="Scenes"/><category term="Skybox"/><category term="Sound"/><category term="assets"/><category term="floats"/><category term="icon"/><category term="modifier"/><category term="multiple"/><category term="music"/><category term="normals"/><category term="prefabs"/><category term="project folder"/><category term="random"/><category term="terrain"/><category term="to"/><category term="window"/><category term="3d"/><category term="3rd person"/><category term="API"/><category term="Application"/><category term="Audio Clip"/><category term="Audio Listener"/><category term="Audio Reverb Zone"/><category term="Awake function"/><category term="Beach defender"/><category term="Boat"/><category term="Build settings"/><category term="Building"/><category term="Cartoon"/><category term="Checking"/><category term="Classes"/><category term="Clean up"/><category term="Collider"/><category term="Compression"/><category term="Debug"/><category term="Destroy"/><category term="Destroyer"/><category term="Draw Ray"/><category term="Emitter"/><category term="FBX"/><category term="Fonts"/><category term="Generate colliders"/><category term="Hell"/><category term="Hellish"/><category term="Inaccuracy"/><category term="Line"/><category term="Load"/><category term="Load Level"/><category term="Look"/><category term="LookAt"/><category term="Manipulation"/><category term="Miscellaneous"/><category term="Mouse Direction"/><category term="On Collision Enter"/><category term="OnCollisionEnter"/><category term="OnCollisionExit"/><category term="OnTriggerEnter"/><category term="OnTriggerExit"/><category term="Optimization"/><category term="PT"/><category term="Particle"/><category term="Platform"/><category term="Publishing"/><category term="Quaternion"/><category term="Question"/><category term="RPG"/><category term="Raycast"/><category term="Reload"/><category term="Resources"/><category term="SFX"/><category term="ScreenPointToWorld"/><category term="Shading"/><category term="Simple"/><category term="Sketch"/><category term="Start()"/><category term="Time.time"/><category term="Toon"/><category term="Top down shooter"/><category term="Trigger"/><category term="Turrent"/><category term="about"/><category term="answers"/><category term="armatures"/><category term="arrows"/><category term="axis"/><category term="binding Time"/><category term="blank scree"/><category term="bumped diffuse"/><category term="calling on another script"/><category term="caution"/><category term="character controls"/><category term="child-parent"/><category term="city"/><category term="clamp"/><category term="cloth"/><category term="color"/><category term="coloring"/><category term="component"/><category term="composition"/><category term="conversion"/><category term="decimal"/><category term="default"/><category term="draggable"/><category term="dropbox"/><category term="dynamically"/><category term="effects"/><category term="explosion"/><category term="faces"/><category term="fire effect"/><category term="first"/><category term="first blog"/><category term="free"/><category term="fuzzy select"/><category term="generation"/><category term="gun"/><category term="gunshot"/><category term="help"/><category term="hosting"/><category term="in"/><category term="index"/><category term="initialize"/><category term="input manager"/><category term="inspector"/><category term="integers"/><category term="inverted"/><category term="landscape"/><category term="level"/><category term="lighting"/><category term="limiting"/><category term="line Renderer"/><category term="line art"/><category term="logo"/><category term="loop"/><category term="loop cut"/><category term="magic tool"/><category term="maker"/><category term="mesh"/><category term="middle moust button"/><category term="mouse"/><category term="notes"/><category term="null"/><category term="number pad"/><category term="obstacle"/><category term="once"/><category term="outline"/><category term="overlay"/><category term="overview"/><category term="patrol torpedo"/><category term="ping pong"/><category term="problem"/><category term="procedural"/><category term="project"/><category term="psd"/><category term="reference image"/><category term="relationship"/><category term="renderFX"/><category term="replace"/><category term="revenue"/><category term="reverse"/><category term="rigging"/><category term="rotating"/><category term="saving"/><category term="scale factor"/><category term="selection"/><category term="shooting"/><category term="side scroller"/><category term="skeletons"/><category term="sketchup"/><category term="slerp"/><category term="sound effects"/><category term="string"/><category term="swtiching"/><category term="sync"/><category term="tags"/><category term="technique"/><category term="text"/><category term="texture"/><category term="tint"/><category term="tip"/><category term="tips"/><category term="together"/><category term="toggle"/><category term="transparent"/><category term="trimble"/><category term="unicode"/><category term="up"/><category term="updating"/><category term="user preferences"/><category term="variable"/><category term="vertex"/><category term="walking cycle"/><category term="walkthrough"/><category term="warehouse"/><category term="white box"/><category term="widgets"/><category term="work"/><category term="wrap mode"/><category term="your"/><title type='text'>Instantiate  Unity</title><subtitle type='html'>Learn to create games, a blog at a time.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>71</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-3338352371584209034</id><published>2014-03-12T11:11:00.002-05:00</published><updated>2014-03-13T21:18:36.424-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Audio"/><category scheme="http://www.blogger.com/atom/ns#" term="Audio Source"/><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><category scheme="http://www.blogger.com/atom/ns#" term="Dont Destroy On Load"/><category scheme="http://www.blogger.com/atom/ns#" term="music"/><category scheme="http://www.blogger.com/atom/ns#" term="Sound"/><category scheme="http://www.blogger.com/atom/ns#" term="sound effects"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><title type='text'>Handling Music and Sound Effects In Your Games</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Initiative&amp;nbsp;&lt;/h3&gt;
While developing &lt;a href=&quot;http://www.indiedb.com/games/trevas-adventure&quot; target=&quot;_blank&quot;&gt;Treva&#39;s Adventure&lt;/a&gt; I had to figure out a way to handle multiple music tracks and sound effects in a clean manner or suffer horribly. &amp;nbsp;What was going to help me achieve a simple solution was taking all the different sounds and centralizing them in a single class in order to black box them. &amp;nbsp;&lt;u&gt;Any other code trying to play a sound wouldn&#39;t even know the sound file&#39;s name.&lt;/u&gt;&amp;nbsp; All code trying to play a music track would reference a &lt;b&gt;enum &lt;/b&gt;that defines all the track names.&lt;br /&gt;
&lt;div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Defining The Class&lt;/h3&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h4&gt;
Creating The Enum&lt;/h4&gt;
&lt;div&gt;
When I first started defining types in my enumeration, &amp;nbsp;I was naming the types to be exactly like the file name. &amp;nbsp;For a scary sound effect I had found a file named &quot;ghost breath&quot;. &amp;nbsp;So around my code would be scattered lines like SoundManager.Play(SoundEffectType.GhostBreath); &amp;nbsp;This was fine until I found a sound that better fit the situation it was being used in, &amp;nbsp;and decided to use &quot;ghost breath&quot; for a different situation like a enemy screeching. &amp;nbsp;To incorporate the new sound effect required going through every place&amp;nbsp;SoundEffectType.GhostBreath&amp;nbsp;is referenced and change it. &amp;nbsp;The moral of the story is&amp;nbsp;&lt;u&gt;make enum type names ambiguous to the files name.&lt;/u&gt;&amp;nbsp; Name the sound effect as being in the situation your planning to use it in. &amp;nbsp;So instead of SoundEffectType.GhostBreath, I would instead call SoundEffectType.SpookPlayer. &amp;nbsp;So advantages are:&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;If you wanted to change the SpookPlayer sound effect, &amp;nbsp;you&amp;nbsp;would go into the SoundManager class and&amp;nbsp;have it reference a different file, Instead of sifting through thousands of lines of code trying to find the 6 places&amp;nbsp;you said&amp;nbsp;GhostBreath.&lt;/li&gt;
&lt;li&gt;Other programmers coming behind you coding will have a better idea of what your trying to achieve when you say &amp;nbsp;SpookPlayer&amp;nbsp;instead of&amp;nbsp;GhostBreath.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Static&lt;/h4&gt;
&lt;div&gt;
Music and sound effects are present through out the game. &amp;nbsp;They are present in your GUI when the player clicks a button. &amp;nbsp;Casting a fire ball needs to be heard so the player feels the significance of what they just did. &amp;nbsp;Without background music the game just feels empty. In conclusion It&#39;s not a bad idea to create your SoundManager class and it&#39;s methods as &lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;static&lt;/b&gt;&lt;/span&gt;. I originally attempted using a singleton method, but typing SoundManager.GetInstance().Play(SoundEffect.GhostBreath) got very old very quickly with as frequent I was calling it.&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Methods&lt;/h4&gt;
&lt;div&gt;
Now that all your sound effects are black boxed behind one class, you can easily adjust the volume for ALL sound effects ever played by calling just one method. &amp;nbsp;Have methods such as SetSound(), GetSound(), and Mute(), Pause() (might not be suited for sound effects), as well as Play().&lt;/div&gt;
&lt;h4&gt;
Two Classes (At least)&lt;/h4&gt;
&lt;div&gt;
This is only a suggestion. &amp;nbsp;I&#39;ve found it easier to break up music tracks and and sound effects into two different classes for a few reasons. &amp;nbsp;Sound Effects don&#39;t really need a pause button like a music track does. When you pause the music, &amp;nbsp;you don&#39;t want it interfering with button clicking sounds. &amp;nbsp;Yes, you could create separate methods like playSoundEffect() and playSoundTrack(). &amp;nbsp;Then you can create separate methods for each like getSoundEffectVolume() getSoundTrackVolume(), and this way works. &amp;nbsp;All that starts to happen is your AudioManager Class becomes pretty clustered with many methods with similar names and the eye strains begin. &amp;nbsp;So my suggestion is to create a &lt;b&gt;AudioManager abstract class&lt;/b&gt;, and create your classes extending from that. &amp;nbsp;Some example classes would be MusicManager, GUISoundManager, SoundEffectManager, and 3DSoundEffectManager. &amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Some tips in Unity&lt;/h3&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Storing and Loading Sounds&lt;/h4&gt;
&lt;div&gt;
Keep them under a folder named &quot;Resources/Audio&quot;. &amp;nbsp;Unity has a &lt;a href=&quot;https://docs.unity3d.com/Documentation/ScriptReference/Resources.html&quot; target=&quot;_blank&quot;&gt;Resources&lt;/a&gt; class that you can load data from any folder named Resources so you can load a file with just Resources.Load(). &amp;nbsp;Depending on what your using the sound for, you need to change how the sound is imported. &amp;nbsp;If the audio is small and is being used for something like a button click, then you should have the file Decompress on Load. &amp;nbsp;If the file is a music track then you should have the load type to steam from disk. You can read more &lt;a href=&quot;https://docs.unity3d.com/Documentation/Components/class-AudioClip.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Sound Effects In Scene (3D vs 2D)&lt;/h4&gt;
&lt;div&gt;
Unity imports sounds as either 3D or 2D. &amp;nbsp;3D sounds are positioned in the scene and if the camera(or wherever the audio listener is) is not near the &lt;a href=&quot;https://docs.unity3d.com/Documentation/Components/class-AudioSource.html&quot; target=&quot;_blank&quot;&gt;Audio Source&lt;/a&gt; when it&#39;s playing, then is won&#39;t pick up on it, which is not optimal in some cases. &amp;nbsp;When calling Play() on a 3d sound, your going to need a second parameter that will take into account for position in the scene. &amp;nbsp;Another thought to ponder when writing these Audio Managing classes is whether or not you want to be able to be playing multiple sound effects if you want. &amp;nbsp;Usually with things like GUI sound effects, it&#39;s not needed to play multiple sounds at once. &amp;nbsp;Though with 3D sounds, your probably going to need multiple sounds playing at once, thus multiple AudioSources. &amp;nbsp;The sample code at the end of the post allows for as many audio sources at once, but &lt;u&gt;does not delete the audio sources after the code is done playing.&lt;/u&gt;&amp;nbsp; If your using my code, I suggest creating a script that you call to self destruct after the audio is done playing.&lt;br /&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Don&#39;t Destroy On Load&lt;/h4&gt;
&lt;/div&gt;
&lt;div&gt;
In games I usually hear music tracks constantly being played. In boss fights to loading screens your constantly hearing music, and never two tracks at once. &amp;nbsp;Unity has a method that allows GameObjects to not be deleted when you load different scenes. &amp;nbsp;So by using that you only have to instantiate the AudioSource once.&lt;/div&gt;
&lt;pre style=&quot;background-image: URL(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinWL8SoglsjecGbjot5A-bq0HNV2lP9K8atigmRb2RUO8mkTp1-5SZIdPEMa5T10B_jNpkYxL9lWH8LrkZFc-Wxm4anXZaz4InFljdii8HFJXWHH2Psw_1NW02IDtPqQTSDbAZPi4XrXXr/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;&quot;&gt;&lt;code style=&quot;color: black; word-wrap: normal;&quot;&gt;    static GameObject soundObjectInstance = null;   
    static AudioSource GetAudioSource(){   
       //if it&#39;s null, build the object   
       if(soundObjectInstance == null){
         soundObjectInstance = new GameObject(&quot;Music Track Audio&quot;);   
         soundObjectInstance.AddComponent&amp;lt;AudioSource&amp;gt;();
         DontDestroyOnLoad(soundObjectInstance);
       }   
       return soundObjectInstance.GetComponent&amp;lt;AudioSource&amp;gt;();   
    }  &lt;/code&gt;&lt;/pre&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Sample Code..&lt;/h3&gt;
&lt;div&gt;
So here is some of the code I wrote for the game some 6 months ago. &amp;nbsp;With your own experience and after reading this &amp;nbsp;post you can easily improve it. &amp;nbsp;Feel free to use it as you please. &amp;nbsp;Any questions or suggestions are always welcomed.&lt;/div&gt;
&lt;/div&gt;
&lt;pre style=&quot;background-image: URL(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinWL8SoglsjecGbjot5A-bq0HNV2lP9K8atigmRb2RUO8mkTp1-5SZIdPEMa5T10B_jNpkYxL9lWH8LrkZFc-Wxm4anXZaz4InFljdii8HFJXWHH2Psw_1NW02IDtPqQTSDbAZPi4XrXXr/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;&quot;&gt;&lt;code style=&quot;color: black; word-wrap: normal;&quot;&gt; using UnityEngine;  
 using System.Collections;  
 public enum SoundEffectTypes{  
      OnButtonUp,  
      NotificationPopUp,  
      NotificationClose,  
      SpellCast,  
      BoulderExplosion,  
      Screech,  
      Hit  
 }  
 public static class SoundEffects  {  
      public static void Play(SoundEffectTypes effectToPlay){  
           GetAudioSource().clip = GetSoundEffect(effectToPlay);  
           GetAudioSource().Play();  
      }  
      public static GameObject PlayInWorld(SoundEffectTypes effectToPlay, Vector3 positionToPlayAt){  
           soundObjectInstance = new GameObject(&quot;Sound Effect Object&quot;);  
           soundObjectInstance.transform.position = positionToPlayAt;  
           soundObjectInstance.AddComponent&amp;lt;AudioSource&amp;gt;();  
           soundObjectInstance.GetComponent&amp;lt;AudioSource&amp;gt;().clip = GetSoundEffect(effectToPlay);  
           soundObjectInstance.GetComponent&amp;lt;AudioSource&amp;gt;().Play();  
           soundObjectInstance.GetComponent&amp;lt;AudioSource&amp;gt;().loop = false;  
           soundObjectInstance.GetComponent&amp;lt;AudioSource&amp;gt;().priority = 1;  
           return soundObjectInstance;  
      }  
      static GameObject soundObjectInstance = null;  
      static AudioSource GetAudioSource(){  
           //if it&#39;s null, build the object  
           if(soundObjectInstance == null){  
                soundObjectInstance = new GameObject(&quot;Sound Effect Object&quot;);  
                soundObjectInstance.AddComponent&amp;lt;AudioSource&amp;gt;();  
           }  
           return soundObjectInstance.GetComponent&amp;lt;AudioSource&amp;gt;();  
      }  
      public static void SetVolume(float newVolume){  
           GetAudioSource().volume = newVolume;  
      }  
      public static float GetCurrentVolume(){  
           return GetAudioSource().volume;  
      }  
      static AudioClip GetSoundEffect(SoundEffectTypes effectToPlay){  
           switch(effectToPlay){  
                case SoundEffectTypes.OnButtonUp:  
                     return Resources.Load(&quot;MusicAndFx/ButtonUp&quot;) as AudioClip;  
                break;  
                case SoundEffectTypes.NotificationPopUp:  
                     return Resources.Load(&quot;MusicAndFx/NotificationPopUp&quot;) as AudioClip;  
                break;  
                case SoundEffectTypes.SpellCast:  
                     return Resources.Load(&quot;MusicAndFx/spellCasting&quot;) as AudioClip;  
                break;  
                case SoundEffectTypes.BoulderExplosion:  
                     return Resources.Load(&quot;MusicAndFx/BoulderHit&quot;) as AudioClip;  
                break;  
                case SoundEffectTypes.Screech:  
                     return Resources.Load(&quot;MusicAndFx/ghostbreath&quot;) as AudioClip;  
                break;  
                case SoundEffectTypes.Hit:  
                     return Resources.Load(&quot;MusicAndFx/hit24&quot;) as AudioClip;  
                break;  
           }  
           return null;  
      }  
 }  
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/3338352371584209034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2014/03/handling-music-and-sound-effects-in.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/3338352371584209034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/3338352371584209034'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2014/03/handling-music-and-sound-effects-in.html' title='Handling Music and Sound Effects In Your Games'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-1561836069747484172</id><published>2013-06-02T19:11:00.000-05:00</published><updated>2013-06-02T19:12:16.944-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2D"/><category scheme="http://www.blogger.com/atom/ns#" term="Clean up"/><category scheme="http://www.blogger.com/atom/ns#" term="exporting"/><category scheme="http://www.blogger.com/atom/ns#" term="GIMP"/><category scheme="http://www.blogger.com/atom/ns#" term="saving"/><category scheme="http://www.blogger.com/atom/ns#" term="transparent"/><title type='text'>Clean up in GIMP</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhENhoBvu9NN72mjGcLvUjWYnIUz0eH6JDi0qYDwso5gZCriQKhyphenhyphenM3byZMGCEBrZ2ZtR8AzQfAzDq-riyNXlyecO0w3dTEdj2N6MiqC5wmqAZ9zXyaADfnWP6b7yJCHz9IhPvicohXAMqp2/s1600/Clean+up+1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;231&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhENhoBvu9NN72mjGcLvUjWYnIUz0eH6JDi0qYDwso5gZCriQKhyphenhyphenM3byZMGCEBrZ2ZtR8AzQfAzDq-riyNXlyecO0w3dTEdj2N6MiqC5wmqAZ9zXyaADfnWP6b7yJCHz9IhPvicohXAMqp2/s400/Clean+up+1.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Some of you may think, &quot;Dang, that&#39;s a clean looking tree.&quot; &amp;nbsp;And in fact, like this, it looks pretty clean. And some of you if you drew a tree like this would sign it off as done and ready for some game action. &amp;nbsp;However, if you take a closer look (About 200%)&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj__PJsHFtGvuCnaHvvPV0BKgBGKnKACZ6JndgPnyVQ7kAwT4vcu1zQtgUE4Zdsm6PSlV-f7sP4XlYTWWF6SRbVpWReT7p8Mb3BmhekAaYun-N9FDQ1MmLxAeTf9xUFFFcgAFuP8F7rqTAC/s1600/clean+up2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;246&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj__PJsHFtGvuCnaHvvPV0BKgBGKnKACZ6JndgPnyVQ7kAwT4vcu1zQtgUE4Zdsm6PSlV-f7sP4XlYTWWF6SRbVpWReT7p8Mb3BmhekAaYun-N9FDQ1MmLxAeTf9xUFFFcgAFuP8F7rqTAC/s400/clean+up2.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Oh wait, those colors are still inside the lines! &amp;nbsp;I guess it really is read-&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
WAIT. &amp;nbsp;LOOK CLOSER. &amp;nbsp;(In other words, add a black background)&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5vFSI0DbL5ofKgjses08K3VKFaVUBOfG1g5mtmJLXPs1_FfVeb2cXF823sjaWOse1IsDxOwkjIs_rWUI0doidtzeKMpZ_j3NpnhVwpr3Li7SAL3yDA1vjUnOE8Iwd-bXuOfhl0OvaP2_v/s1600/Clean+up+3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;238&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5vFSI0DbL5ofKgjses08K3VKFaVUBOfG1g5mtmJLXPs1_FfVeb2cXF823sjaWOse1IsDxOwkjIs_rWUI0doidtzeKMpZ_j3NpnhVwpr3Li7SAL3yDA1vjUnOE8Iwd-bXuOfhl0OvaP2_v/s400/Clean+up+3.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Filthy, filthy tree. &amp;nbsp;Tree is not ready for the game. &amp;nbsp;So, now that you can see where all your little pesky errors are, you can whip that tree into shape&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwEwNRiUI-7Oq1IcWk1MwuxHPh5M9E0nOwX0P-Rb-4GnmgJA14IFx_dE4drYldLHtt2XovEOJ126ycz5cwOwWe6kPT3OIz658HLc83F9PJJcffZYYe5Lxz0IQFwUMXMBluooX5WUpgnkLY/s1600/handy+dandy+eraser.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwEwNRiUI-7Oq1IcWk1MwuxHPh5M9E0nOwX0P-Rb-4GnmgJA14IFx_dE4drYldLHtt2XovEOJ126ycz5cwOwWe6kPT3OIz658HLc83F9PJJcffZYYe5Lxz0IQFwUMXMBluooX5WUpgnkLY/s1600/handy+dandy+eraser.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Which means you need your handy dandy eraser.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
HOWEVER!&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Before we start erasing, we are first going to select the black outline and copy it, and for those who don&#39;t know how to do so, this is how:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5WRM6EMY_yAEzbufgUymEAh8lpNCLBiFn_LhyphenhyphenKJ8PXqRYKRQ_gc5d3PwNinfcDHm-RfAULuApMjZHzIfiyQLT11zdWw8w-56eHrubVBYl34aid_nh1j-WXDMDZXY8p6cXHVj6NCqTA7yk/s1600/clean+up+4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;208&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5WRM6EMY_yAEzbufgUymEAh8lpNCLBiFn_LhyphenhyphenKJ8PXqRYKRQ_gc5d3PwNinfcDHm-RfAULuApMjZHzIfiyQLT11zdWw8w-56eHrubVBYl34aid_nh1j-WXDMDZXY8p6cXHVj6NCqTA7yk/s320/clean+up+4.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
That is your magic wand, you want to select it.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOSjaM5ik7uE7J2LmCAFHDLB-bQCy1mbMV8ZIp0O35czFPwe6Igpxz9nXp3zc11FFBty3qZodWrOQz2BTy7AokSgJx0agKuoVXkcZ2RT1WJxSR0kIZfhsKAA9fyY2kNhS5R0LcAr-MB3S8/s1600/Clean+up+5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;207&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOSjaM5ik7uE7J2LmCAFHDLB-bQCy1mbMV8ZIp0O35czFPwe6Igpxz9nXp3zc11FFBty3qZodWrOQz2BTy7AokSgJx0agKuoVXkcZ2RT1WJxSR0kIZfhsKAA9fyY2kNhS5R0LcAr-MB3S8/s400/Clean+up+5.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Then you click on the black outline (note: this is for if your outline and and colors are on the same layer, if they are not (e.g. your outline is on one layer) then you go to that layer, hit CTRL + A to select, then CTRL + C to copy, and then CTRL + A to deselect.)&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
After you have the outline selected, hit CTRL + C to copy and then CTRL+ A to deselect.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC-zWpn-YACw6v0lzmd6U-rkDQCpWr3VvxODYy_NG44ldub2oWmKBxzoEGyqzCOIjbVWgTcF2A-KNM58SZdLeaI6KxuhUauVhoEg702DmljBuU-E8K-qwUCE1xPgPJRRxTNYBAfwjEJC4K/s1600/Clean+up+6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;251&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC-zWpn-YACw6v0lzmd6U-rkDQCpWr3VvxODYy_NG44ldub2oWmKBxzoEGyqzCOIjbVWgTcF2A-KNM58SZdLeaI6KxuhUauVhoEg702DmljBuU-E8K-qwUCE1xPgPJRRxTNYBAfwjEJC4K/s400/Clean+up+6.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Turn the black back on so that it is easier to see the mistakes while you erase.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgd2NE00UgF3l-N6KvhziiD6aKm9zDGxPfMhqwcPUqm_LAx58GcVCneVEqijz-CdSvmt04a98nOF8TJRzxLucS6QR-NmpqYQ58GJcZXH0RtR3gTAt-cxC8xQaTGTSEUzHowVZRxcosjBBpB/s1600/Clean+up+7.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;233&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgd2NE00UgF3l-N6KvhziiD6aKm9zDGxPfMhqwcPUqm_LAx58GcVCneVEqijz-CdSvmt04a98nOF8TJRzxLucS6QR-NmpqYQ58GJcZXH0RtR3gTAt-cxC8xQaTGTSEUzHowVZRxcosjBBpB/s320/Clean+up+7.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Bam! Cleanliness. &amp;nbsp;Now you can turn off the black layer or delete it all together. &amp;nbsp;Once you do that, you are left with...&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglx4CIJA0x-euuJhNRrG2qMIg5tsDOMD7ZwVoAqu1vq7ynLJo8ZmJYW13SLEFUK99SnZRECr_CPOaX52kag_aNhJ2hTp3guKwP8DPpqPreuM6GD_isbCdskpHvhFcPwPyW3bSgkObBNMGN/s1600/Clean+up+8.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;221&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglx4CIJA0x-euuJhNRrG2qMIg5tsDOMD7ZwVoAqu1vq7ynLJo8ZmJYW13SLEFUK99SnZRECr_CPOaX52kag_aNhJ2hTp3guKwP8DPpqPreuM6GD_isbCdskpHvhFcPwPyW3bSgkObBNMGN/s400/Clean+up+8.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Ugh, those lines. &amp;nbsp;Chances are that you erased some of your lines while you were trying to clean up what was outside of them. &amp;nbsp;But fret not, for you copied your line art! &amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Simply hit CTRL + V&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPR2FDASCP0565bEpslyLFN5_JPCSGvzkvtkAxLG8Y7SunCnhhEi-KTvUz21URSXy80XJNoxN-5BaVWmakDmx2Pa25Me1RlQhWLzDi5jZCsdmYw3wgXaIUfrpmX5i-I_rdmSQDso78HvVR/s1600/Clean+up+9.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPR2FDASCP0565bEpslyLFN5_JPCSGvzkvtkAxLG8Y7SunCnhhEi-KTvUz21URSXy80XJNoxN-5BaVWmakDmx2Pa25Me1RlQhWLzDi5jZCsdmYw3wgXaIUfrpmX5i-I_rdmSQDso78HvVR/s400/Clean+up+9.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
(If you had to use the magic wand tool, you may have to realign the lines a bit, but nothing too difficult.)&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjg4EvLcM1e6mSyqC7d9AtyxLdOxGIkymlp8UC7UI5LibteJe3itjLfR4ton8BTXBGVscVzZRK8gq12vl20Q8XH1Lj59gzm73FbHN7-D0c-eYBOn8-z39Dj_9_dowFM-7BNjRQwU3hYj8o9/s1600/Clean+up+10.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjg4EvLcM1e6mSyqC7d9AtyxLdOxGIkymlp8UC7UI5LibteJe3itjLfR4ton8BTXBGVscVzZRK8gq12vl20Q8XH1Lj59gzm73FbHN7-D0c-eYBOn8-z39Dj_9_dowFM-7BNjRQwU3hYj8o9/s1600/Clean+up+10.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Hit that little anchor button to anchor the layer to the layer you were pasting to.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsRfGBUzXSjjH-MdSmw2o2pBPCcOEumBLW3EqoWZCJTGO871zI2adszu3-bgkORNd3elfRwx0dq53hFspUh25FdbVmzbIrbyVw6eNyrYcx8FhXB9G4284lthcGXwBFIkv8XUZxA32-R0im/s1600/Clean+up+11.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;271&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsRfGBUzXSjjH-MdSmw2o2pBPCcOEumBLW3EqoWZCJTGO871zI2adszu3-bgkORNd3elfRwx0dq53hFspUh25FdbVmzbIrbyVw6eNyrYcx8FhXB9G4284lthcGXwBFIkv8XUZxA32-R0im/s320/Clean+up+11.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
And NOW your pretty little tree is ready for your game. &amp;nbsp;However, how do you keep a transparent background is something you may ask. &amp;nbsp;There are two options to really choose from. &amp;nbsp;Either a .PSD file type (Photoshop image) or a .PNG, both which save your image with a transparent background. &amp;nbsp;I am going to save it as a .PNG because the file is smaller. &amp;nbsp;When you save it as a .PNG, however, do not rush to just hit the &#39;export&#39; and &#39;save&#39; button. &amp;nbsp;Take a look.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR-9D7V9QIeact-pN7d3gNfCqAXaF3Aj8TL01ji4S8rCGJIWHLKx85PfUViYyLWqJBXQrUxZ2KIJZmyV1G1UD5TUFnc3tbeok5rE9cGV4ui25DlftBJ4HhrNwjsOdmwdJvVDu7E3vZsHiG/s1600/Clean+up+12.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;202&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR-9D7V9QIeact-pN7d3gNfCqAXaF3Aj8TL01ji4S8rCGJIWHLKx85PfUViYyLWqJBXQrUxZ2KIJZmyV1G1UD5TUFnc3tbeok5rE9cGV4ui25DlftBJ4HhrNwjsOdmwdJvVDu7E3vZsHiG/s320/Clean+up+12.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
You&#39;re going to want to make sure that the bubble saying &#39;Merge Visible Layers&#39; is marked rather than &#39;Flatten Image&#39;. &amp;nbsp;Flattening the image will give it a background, which is the opposite of what you (may) want.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
The next window will look like this:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPeiTDb7YPasBDNXE8jW7eXQ8Q3VU46ACen2oUEuJGUHQg1QY6TBqa4fYGmIOovaMtH25BvAw5oeNHEml_CYK__1uFOdxfStAHm3yfunlCXNGm38qvRkPD4NJNZLZKgswUELj6qkKl_kqO/s1600/Clean+up+13.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPeiTDb7YPasBDNXE8jW7eXQ8Q3VU46ACen2oUEuJGUHQg1QY6TBqa4fYGmIOovaMtH25BvAw5oeNHEml_CYK__1uFOdxfStAHm3yfunlCXNGm38qvRkPD4NJNZLZKgswUELj6qkKl_kqO/s320/Clean+up+13.JPG&quot; width=&quot;271&quot; /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Make sure that the &#39;Save background color&#39; box isn&#39;t checked. &amp;nbsp;Once you have that done, go ahead and click that save button, you now have a proper, clean transparent image ready for your game!&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
By the way, be sure to check out our game at IndieDB and look at our dirty, dirty assets that I need to go back and clean up.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;a href=&quot;http://www.indiedb.com/games/trevas-adventure&quot; target=&quot;_blank&quot; title=&quot;Treva&#39;s Adventure Web game&quot;&gt;&lt;img alt=&quot;Treva&#39;s Adventure Web game&quot; border=&quot;0&quot; src=&quot;http://media.indiedb.com/images/global/indiedb_88x31.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/1561836069747484172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2013/06/clean-up-in-gimp.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/1561836069747484172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/1561836069747484172'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2013/06/clean-up-in-gimp.html' title='Clean up in GIMP'/><author><name>Ivey</name><uri>http://www.blogger.com/profile/04949304090549086699</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWW25v5e-DG9NbSr2ooLmi7QXF08Ks1Mc5InCXlcy-3u1VZVNfa_mYddjT2xexIOelPsj3UqsqKKar52IEkCuDKAT5TZD8NmfMfGqSfI12MDlcVSOgHa-pcqQvC44CGA/s220/darci.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhENhoBvu9NN72mjGcLvUjWYnIUz0eH6JDi0qYDwso5gZCriQKhyphenhyphenM3byZMGCEBrZ2ZtR8AzQfAzDq-riyNXlyecO0w3dTEdj2N6MiqC5wmqAZ9zXyaADfnWP6b7yJCHz9IhPvicohXAMqp2/s72-c/Clean+up+1.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-6693064493816716160</id><published>2013-04-22T23:23:00.000-05:00</published><updated>2014-03-13T00:29:34.661-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2D"/><category scheme="http://www.blogger.com/atom/ns#" term="Animation"/><category scheme="http://www.blogger.com/atom/ns#" term="side scroller"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><title type='text'>Creating 2D Animation For A Side Scroller In Unity3D</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;b&gt;Update 3-13-14&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Unity kinda released some really nice 2D tools, I really don&#39;t know how relevant or helpful this is now.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
I&#39;ve been working on a 2D side scroller. Being my cheap self I&#39;m not going to bother buying some helpful tool that would probably speed up everything a substantial amount, and created my own method of 2D animation for things in Unity3D. This code does not work with a sprite sheet, but I hope it makes it easy enough for you to incorporate one if you wanted to.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Warnings:&lt;/b&gt;&lt;br /&gt;
&amp;nbsp;The animation is displayed by updating the meshes material&#39;s texture each frame (this can mess up at high frame speeds).&lt;br /&gt;
This code is assuming the 2D sprites are moving along the X and Y axis.&lt;br /&gt;
When changing directions, it is scaling the transform negatively across it&#39;s x axis.&lt;br /&gt;
Its assuming default direction facing is right.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background-image: URL(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinWL8SoglsjecGbjot5A-bq0HNV2lP9K8atigmRb2RUO8mkTp1-5SZIdPEMa5T10B_jNpkYxL9lWH8LrkZFc-Wxm4anXZaz4InFljdii8HFJXWHH2Psw_1NW02IDtPqQTSDbAZPi4XrXXr/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;&quot;&gt;&lt;code style=&quot;color: black; word-wrap: normal;&quot;&gt; using UnityEngine;  
 using System.Collections;  
   
 public enum Directions{left,right}  
 public class FlatCharacterAnimation : MonoBehaviour {  
        
      public FlatAnimation[] animations;  
        
      public string defaultAnimation;  
        
        
      FlatAnimation currentAnimationPlaying;  
        
      string animationCurrentlyPlaying = &quot;&quot;;  
      Texture2D[] framesToPlay;  
      float frameSpeed;  
      int currentFrame = 0;  
      Directions directionCharactersFacing = Directions.right;  
      bool animationIsPlaying;  
        
      #region FlatAnimationClass  
      [System.Serializable]  
      public class FlatAnimation{  
           public string name =&quot;&quot;;       
           public Texture2D[] frames;  
           public float frameSpeed;  
             
           public Texture2D[] GetFrames(){  
                return frames;  
           }  
        
             
      }  
      #endregion  
        
      public Directions GetDirectionFacing(){  
           return directionCharactersFacing;       
      }  
        
        
      public void Play(string animation){  
           if(animation != animationCurrentlyPlaying){  
                ChangeAnimation(GetAnimation(animation));  
                animationIsPlaying = true;  
           }  
      }  
        
      public void Play(string animation, Directions direction){  
           if(animation != animationCurrentlyPlaying){  
                ChangeAnimation(GetAnimation(animation));  
                animationIsPlaying = true;  
           }  
             
           if(direction != directionCharactersFacing)               //make sure players facing right direction, if not, changes direction  
                ChangeDirectionPlayersFacing(direction);  
      }  
        
      FlatAnimation GetAnimation(string animationName){  
           for(int i = 0; i &amp;lt; animations.Length; i++){  
                  
                if(animations[i].name == animationName){  
                     return animations[i];  
                }   
           }  
           Debug.LogWarning(&quot;The animation you are trying to play does not exist! Try checking spelling and capitalization&quot;);  
   
           return null;  
      }  
        
   
        
      void ChangeAnimation(FlatAnimation newAnimation){  
           animationCurrentlyPlaying = newAnimation.name;  
           framesToPlay = newAnimation.frames;  
           frameSpeed = newAnimation.frameSpeed;  
           currentFrame = 0;  
      }  
        
      void ChangeDirectionPlayersFacing(Directions direction){  
           Vector3 scale;  
           directionCharactersFacing = direction;  
           switch(direction){  
                case Directions.left:  
                     //Debug.Log(&quot;Left Direction&quot;);  
                     scale = gameObject.transform.localScale;  
                     scale.x *= -1;  
                     gameObject.transform.localScale = scale;  
                break;  
                  
                case Directions.right:  
                     //Debug.Log(&quot;Left Direction&quot;);  
                     scale = gameObject.transform.localScale;  
                     scale.x *= -1;  
                     gameObject.transform.localScale = scale;  
                break;  
                  
           }  
      }  
        
      float nextFrameTime;  
      void UpdateAnimation(){  
             
           if(nextFrameTime &amp;lt; Time.time &amp;amp;&amp;amp;framesToPlay != null){  
                //Debug.Log (&quot;current frame: &quot; + currentFrame + &quot;currentAnimationFrames Legth: &quot;+currentAnimationFrames.Length);  
                nextFrameTime = frameSpeed+Time.time;  
                if(currentFrame == framesToPlay.Length-1){  
                     currentFrame = 0;  
                } else if(currentFrame &amp;lt; framesToPlay.Length){  
                     currentFrame += 1;  
                }  
                gameObject.GetComponent&amp;lt;MeshRenderer&amp;gt;().material.mainTexture = framesToPlay[currentFrame];  
                  
           }  
      }  
        
      // Use this for initialization  
      void Start () {  
        
      }  
        
      // Update is called once per frame  
      void Update () {  
           if (animationIsPlaying){  
                UpdateAnimation();       
           }  
      }  
 }  
&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
Setting this up:&lt;/h4&gt;
Its more than just dragging and dropping the script, but it doesn&#39;t take much time. To begin,&amp;nbsp;in case&amp;nbsp;any of you still have graphics and code on the same Game Object, stop it, please. To create your graphics object for this, you can do it three ways.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;ol style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;b&gt;Create a Primitive Cube&lt;/b&gt;. Use this method if your shader for the material is going to ignore light. Scale one of the axis to 0. Reasons for creating a cube over a plane is that a cube has fewer faces than the default plane for some reason in unity. The shader you would use for this on the material would be &lt;u&gt;Unlit&amp;gt;Transparent&lt;/u&gt;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Create a&amp;nbsp;Primitive&amp;nbsp;&amp;nbsp;Plane. &lt;/b&gt;Use this method if your material will &lt;b&gt;not &lt;/b&gt;ignore light. This method will have more faces, but in most cases it will not be considered to serious. &lt;b&gt;Make sure the y axis stays 1. &lt;/b&gt;The shader you would use on the material for this option would be &lt;u&gt;Transparent/Cutout/YourOption&lt;/u&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Create Your Own Object To Render It. &lt;/b&gt;Takes time, more faces than a cube usually, but can be less faces that a plane.&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
If your developing for a mobile device, consider using option 1. Not so much for the poly count, but for the shader. Unlit shaders take less power to process.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
In my example I&#39;m going to be using option 2, and these are the steps.&lt;/div&gt;
&lt;div&gt;
&lt;ol style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Create an Empty Game Object (Cntrl+Shift+N), and rename Enemy&lt;/li&gt;
&lt;li&gt;Create a Primitive Plane and parent it to Enemy. Rename Plane to graphics.&lt;/li&gt;
&lt;li&gt;Set rotations on plane to (90, 180, 0), &amp;nbsp;&lt;/li&gt;
&lt;li&gt;Add Flat Character Animation (Script Above) to graphics object.&lt;/li&gt;
&lt;li&gt;Re-size&amp;nbsp;Animations Size to however animations you need.&lt;/li&gt;
&lt;li&gt;For each animation, set the name(IMPORTANT), frames, and Frame Speed.&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
Frame speed works in reverse to frame rate, don&#39;t get these confused. If you want the frame rate to be 30 seconds, set the frame speed to .033 (1/30).&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Frames are the individual pictures you want to play in sequence for the animation.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
To play the animation, grab the instance of the flat character animation, and call either Play(string nameOfAnimation); or Player(string nameOfAnimation, Directions, directionToFace);&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Example of the Inspector&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNYhEO3vA_UiK27jw1KZwbAFvYwko7rxg2Mh_XfVtg8g3SrAWP6xkSTuqWeBRCJYa0w67v3jHbkTo1Zdajz4Xk0cZZZj9Wtfxz6BC3-Ys7bILB2TkJja32GvSEEGnMOWf5LIzyHsiROvx8/s1600/inspector.bmp&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNYhEO3vA_UiK27jw1KZwbAFvYwko7rxg2Mh_XfVtg8g3SrAWP6xkSTuqWeBRCJYa0w67v3jHbkTo1Zdajz4Xk0cZZZj9Wtfxz6BC3-Ys7bILB2TkJja32GvSEEGnMOWf5LIzyHsiROvx8/s640/inspector.bmp&quot; height=&quot;640&quot; width=&quot;204&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Example of the Object in the scene&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3G25ADPQhNWtiPdCesuGwQwgSEseIGoaD-LR0NC_zsD9OVo0dvpcdpO5wxLUCZhxD9U4ppBM0CmCmTfxAwW27_rE3DgZ095xA9CWpTVC8leRW6j_Lq-7GaGN7-uyL-W1aCGwhVn64b9T7/s1600/oculu.bmp&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3G25ADPQhNWtiPdCesuGwQwgSEseIGoaD-LR0NC_zsD9OVo0dvpcdpO5wxLUCZhxD9U4ppBM0CmCmTfxAwW27_rE3DgZ095xA9CWpTVC8leRW6j_Lq-7GaGN7-uyL-W1aCGwhVn64b9T7/s640/oculu.bmp&quot; height=&quot;464&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.indiedb.com/games/trevas-adventure&quot; target=&quot;_blank&quot;&gt;Check out the game this code was made for!&lt;/a&gt;&lt;/div&gt;
&lt;a href=&quot;http://www.indiedb.com/games/trevas-adventure&quot; target=&quot;_blank&quot; title=&quot;Treva&#39;s Adventure Web game&quot;&gt;&lt;img alt=&quot;Treva&#39;s Adventure Web game&quot; border=&quot;0&quot; src=&quot;http://media.indiedb.com/images/global/indiedb_88x31.png&quot; height=&quot;31&quot; width=&quot;88&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/6693064493816716160/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2013/04/creating-2d-animation-in-unity3d.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/6693064493816716160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/6693064493816716160'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2013/04/creating-2d-animation-in-unity3d.html' title='Creating 2D Animation For A Side Scroller In Unity3D'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNYhEO3vA_UiK27jw1KZwbAFvYwko7rxg2Mh_XfVtg8g3SrAWP6xkSTuqWeBRCJYa0w67v3jHbkTo1Zdajz4Xk0cZZZj9Wtfxz6BC3-Ys7bILB2TkJja32GvSEEGnMOWf5LIzyHsiROvx8/s72-c/inspector.bmp" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-6230004028601220993</id><published>2013-03-18T10:59:00.000-05:00</published><updated>2013-06-02T17:58:16.333-05:00</updated><title type='text'>2D Level Visual (De)compisition and Preparing for a 2D Game</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNsDV6r34-cqf5vlF3lfSXPzUoKK4Qk-8K43SvfvE844u9bTotX3Kb0C73oA9GT_3qZCxlHOEC8AQnRfERYYuGeJ_96Vo8gTflvPWgwkWm8b5NM0uJBh4tCulo2KPcvC22WWH4icnKCjbT/s1600/untitled.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;236&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNsDV6r34-cqf5vlF3lfSXPzUoKK4Qk-8K43SvfvE844u9bTotX3Kb0C73oA9GT_3qZCxlHOEC8AQnRfERYYuGeJ_96Vo8gTflvPWgwkWm8b5NM0uJBh4tCulo2KPcvC22WWH4icnKCjbT/s640/untitled.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Alrighty you guys, I haven&#39;t been on in a while, as you can see with the massive delay between the Making Images in GIMP Part 2 and the to-be Making Images in GIMP Part 3, school has been piling on the projects and I can only work the video games during the slim slots of free time I have, so in order to keep from going completely off the map with blog posts, this will be a tipper in the composition of 2D game levels.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;div style=&quot;text-align: left;&quot;&gt;
In the game we are currently working on right now, we have to focus on keeping a consistent style of a Kirby-esque side-scroller. &amp;nbsp;Doing something like this has its ups and downs, such as the nostalgia that comes from playing a straight-on game side scroller where the objective is clear while the game itself has some difficulties. &amp;nbsp;Arranging the actual environment, however, is quite the stress-inducer, and requires you to become organized if you aren&#39;t already, otherwise you won&#39;t be able to get through it without &lt;strike&gt;some &lt;/strike&gt;&amp;nbsp;a hella ton of tears. &amp;nbsp;So get the folders ready, the will power revving, and the wrist exercised, because this is going to tax the hell out of your artist.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;First off, get organized. &amp;nbsp;Don&#39;t just set up folders though, set objectives for yourself, create some lists and &lt;b&gt;stick to them&lt;/b&gt;. &amp;nbsp;As tempting as it is to do the easiest stuff first, in the long run it&#39;s better to do the most important - though maybe more difficult- assets first. &amp;nbsp;This will typically be the environment (i.e. ground, background, transition, obscurities, etc.)&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUtaDNxrSULpNolmYCnKw7h2CDJ4VKqHI07-brrz50jawzMVbBPCWaxdvfuVi77cDB-fGhawmeaVdrgL3TQgwAtqRRy1xj_Ok2Eh0LtXPllI0UIGdBtvzU4q-KhfxDCJpjDck9NKoeeeBm/s1600/Organization+1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;125&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUtaDNxrSULpNolmYCnKw7h2CDJ4VKqHI07-brrz50jawzMVbBPCWaxdvfuVi77cDB-fGhawmeaVdrgL3TQgwAtqRRy1xj_Ok2Eh0LtXPllI0UIGdBtvzU4q-KhfxDCJpjDck9NKoeeeBm/s320/Organization+1.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT-k2wXObRDGB_HM8Lren2cyNBNZJMVW4tRurh1on558pV4BPxWx9Xgf0rTyOGhn9tg4TWHzX2Azcb-cY_WNr4jZngy6J6eil9C2xPmF-EVl13iNSpol42FtvFmjnQAwA3m5nxqcPQSduX/s1600/Organization+2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;212&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT-k2wXObRDGB_HM8Lren2cyNBNZJMVW4tRurh1on558pV4BPxWx9Xgf0rTyOGhn9tg4TWHzX2Azcb-cY_WNr4jZngy6J6eil9C2xPmF-EVl13iNSpol42FtvFmjnQAwA3m5nxqcPQSduX/s320/Organization+2.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Mmm, look at that sweet, sweet, organization. &amp;nbsp;Keeping everything clean will make things easier for you and everyone you are collaborating with.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Second thing, get yourself physically ready. &amp;nbsp;You need to be able to sit down and get things done. &amp;nbsp;Eat a snack, drink a drink, take a piss, and DO SOME STRETCHES. &amp;nbsp;Stretch your back, touch your toes, prepare your wrists. &amp;nbsp;I mean, I&#39;m not going to lie, it&#39;s going to get pretty boring, drawing everything, cleaning everything, making sure what needs to loop actually loops properly. &amp;nbsp;I mean, I have three different sets of trees, you just have to push yourself and remember that the ultimate outcome will actually look good. &amp;nbsp;You are going to want to cry and go to bed to the sweet sound of apathy. &amp;nbsp;But do you know what you have to do?&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxgN3tnJse7Yfrwp7orAaeM1JMJJ4K7uzdGrScaULDQk7JlILuE96XdBpC6CoBckCir3hOpgpc5RiVsXuduvQN6g63M32xRwTiFNeL7vIQe5fKoWqBuB7tlXzNHDWGXR7KPh0uCrwYlLhp/s1600/DO+IT.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxgN3tnJse7Yfrwp7orAaeM1JMJJ4K7uzdGrScaULDQk7JlILuE96XdBpC6CoBckCir3hOpgpc5RiVsXuduvQN6g63M32xRwTiFNeL7vIQe5fKoWqBuB7tlXzNHDWGXR7KPh0uCrwYlLhp/s320/DO+IT.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhE52lY6sehgOsUbdvetYoVtsg9C-453aKtQSTVeYv1RM2MkubRhXoimdmnyjPaU-cy6pOBsEl87uONq_HGzbrMgruPMZyh60P89U7ZV1Jpysd7rsF2qHrh0E_y3l2DT_f-qHSaJU0Yx2i_/s1600/DO+IT+2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhE52lY6sehgOsUbdvetYoVtsg9C-453aKtQSTVeYv1RM2MkubRhXoimdmnyjPaU-cy6pOBsEl87uONq_HGzbrMgruPMZyh60P89U7ZV1Jpysd7rsF2qHrh0E_y3l2DT_f-qHSaJU0Yx2i_/s320/DO+IT+2.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOIaYEYqqzl2qtdvEP3TR1ks4m6QgJ7X5-W5KEs5uONaIG1m43fYjfIyWyM144H3_jiEpadPRTsZ01Z1zICtRoMNeGJz3LWHrU8gKx9g6ixL2-KMUoflpeCofAX56BsnjP8ksMFxMuz05f/s1600/DO+IT+3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOIaYEYqqzl2qtdvEP3TR1ks4m6QgJ7X5-W5KEs5uONaIG1m43fYjfIyWyM144H3_jiEpadPRTsZ01Z1zICtRoMNeGJz3LWHrU8gKx9g6ixL2-KMUoflpeCofAX56BsnjP8ksMFxMuz05f/s320/DO+IT+3.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;The actual working part is probably the worst part. &amp;nbsp;Through out it, you may find that somethings looks really good as individuals, but looks terrible all together, or vice versa, the best thing to remember is that &lt;b&gt;things can be changed&lt;/b&gt;. &amp;nbsp;I&#39;ve gone back and revised a lot of things, it&#39;s just a part of the process. &amp;nbsp;You have to keep in mind, a lot of things will come in sets. &amp;nbsp;Such as the trees, in order to keep things from looking too consistent, it&#39;s important to have a variety of scenery so that the player doesn&#39;t get bored. &amp;nbsp;Something just as important as variety though, is the way you layer things. &amp;nbsp;The game is 2D, but you still want to give it depth. &amp;nbsp;This is where staying organized (see step one) is important. &amp;nbsp;More than just foreground and background, you want something that gives the game more than just minimal depth. &amp;nbsp;This is where singular trees, rocks, fungi, etc. comes in. &amp;nbsp;The way that these obscurities layer on top of each other as well as inside the actual game gives extra&amp;nbsp;pizzazz&amp;nbsp;to the environment. &amp;nbsp;This gives the player the idea that you actually understand how perspective works if you size everything correctly (things get smaller as they go back, bigger as they come forward). &amp;nbsp;The best mindset to have probably is to not expect everything come out right the first time, and therefor not be daunted by mistakes.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;/ul&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCV-CoJa4oO8YgMGW-EL_HeoDs3Yu29GqqHwTcHSK_jhrvwVLgzdFXCeYBTuRr04p6RCXN-pvHPsWG6FH4bD1MALmlILu5bqca9QxHE2D9t4h98TmgOIQC1AWFNmlsPEqeIj_JvQ7b-L3l/s1600/untitled.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;233&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCV-CoJa4oO8YgMGW-EL_HeoDs3Yu29GqqHwTcHSK_jhrvwVLgzdFXCeYBTuRr04p6RCXN-pvHPsWG6FH4bD1MALmlILu5bqca9QxHE2D9t4h98TmgOIQC1AWFNmlsPEqeIj_JvQ7b-L3l/s640/untitled.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Here&#39;s an example of what the scene looks like prior and during rendering of game play. &amp;nbsp;It&#39;s all about the layers and will power. &amp;nbsp;Things will come together in the end, you just have to believe in your capabilities.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/6230004028601220993/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2013/03/2d-level-visual-decompisition-and.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/6230004028601220993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/6230004028601220993'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2013/03/2d-level-visual-decompisition-and.html' title='2D Level Visual (De)compisition and Preparing for a 2D Game'/><author><name>Ivey</name><uri>http://www.blogger.com/profile/04949304090549086699</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWW25v5e-DG9NbSr2ooLmi7QXF08Ks1Mc5InCXlcy-3u1VZVNfa_mYddjT2xexIOelPsj3UqsqKKar52IEkCuDKAT5TZD8NmfMfGqSfI12MDlcVSOgHa-pcqQvC44CGA/s220/darci.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNsDV6r34-cqf5vlF3lfSXPzUoKK4Qk-8K43SvfvE844u9bTotX3Kb0C73oA9GT_3qZCxlHOEC8AQnRfERYYuGeJ_96Vo8gTflvPWgwkWm8b5NM0uJBh4tCulo2KPcvC22WWH4icnKCjbT/s72-c/untitled.jpg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-7343460763998291577</id><published>2013-01-18T16:40:00.003-06:00</published><updated>2013-04-14T18:55:01.193-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><category scheme="http://www.blogger.com/atom/ns#" term="swtiching"/><category scheme="http://www.blogger.com/atom/ns#" term="tips"/><title type='text'>A Few Pointers On Switching From JavaScript To C#</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
One does not simply add to an array.&lt;/h3&gt;
In&amp;nbsp;JavaScript&amp;nbsp;you might have familiarity with using arrays.&lt;br /&gt;
You might also be familiar with &quot;adding&quot; to arrays.&lt;br /&gt;
Well Unity sugarcoated that for you.&lt;br /&gt;
Arrays are not really&amp;nbsp;re-sizable.&lt;br /&gt;
When you declare an array in c#, &amp;nbsp;you have to define it right there.&lt;br /&gt;
&lt;br /&gt;
If your looking for something similar to&amp;nbsp;re-sizable&amp;nbsp;arrays, use lists.&lt;br /&gt;
To use Lists in Unity c#, you must add the line&lt;br /&gt;
&quot;&lt;b&gt;using System.Collections.Generic;&lt;/b&gt;&quot; At the top of your code.&lt;br /&gt;
&lt;br /&gt;
Declaring a list of Game Objects would go something like this&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;List&amp;lt;GameObject&amp;gt; myGameObjectList = new List&amp;lt;GameObject&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Then adding to the list would is as simple as&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;myGameObjectList.Add(gameObjectInstance);&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Then if you really just want an array you would say something like&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;GameObject[] gameObjectArray = myGameObjectList.ToArray();&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
The API is not what it always seems.&lt;/h3&gt;
Unity has also sugar coated some of its API, some parts to the point where its practically lying to you in the provided documentation. I learned this the hard way in a &lt;a href=&quot;http://www.kongregate.com/games/Surgegames/tickle-me-bleeding&quot; target=&quot;_blank&quot;&gt;short game&lt;/a&gt; I did in&amp;nbsp;JavaScript&amp;nbsp;a while back, I had blood splats come up on the screen, and then fade away. To have a fade property, I had the blood splats change their GUI alpha value gradually to 0.&lt;br /&gt;
&lt;br /&gt;
Sometimes when you think your going crazy, simply go to Google.&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Everything is a class&lt;/h3&gt;
In the&amp;nbsp;begging&amp;nbsp;of your coding experience, you were probably not familiar with classes. In fact in &quot;real&quot;&amp;nbsp;JavaScript&amp;nbsp;you can not simply declare a class. Unity had made it though, so that you can declare a class in a similar way compared to the rest of it&#39;s syntax.&lt;br /&gt;
&lt;br /&gt;
So now in c#, when you create a c# script in Unity and open it in MonoDevelop(or what ever editor your using), you will see now at the top you have something like:&lt;br /&gt;
public class ScriptName : MonoBehaviour {}&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;***Make sure you script name matches your class name!!!!***&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Example, if you have created a file in Unity named &lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;Example&lt;/span&gt;&lt;/b&gt;.cs, in your code &amp;nbsp;you must have&lt;br /&gt;
public class &lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;Example&lt;/span&gt;&lt;/b&gt;: MonoBehaviour {}&lt;br /&gt;
If you do not do this your&amp;nbsp;compiler&amp;nbsp;will throw you back an error.&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Declaring&amp;nbsp;Methods and Returning Variables&lt;/h3&gt;
&lt;div&gt;
Like in all Object&amp;nbsp;oriented&amp;nbsp;languages declaring methods follow the same flow in syntax. In&amp;nbsp;JavaScript, declaring methods is simply typing function(){}. C# follows the same flow except you use VOID instead of function.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
But this is not always the case in C#! In Javascript, methods labeled function could return variables. In order for a method in C# to return variables, two things must occur&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
1) Void must be replaced with the type of variable you want to return.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
2) The method must be declared public for other classes to call it!&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
You can not anymore say:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
void GetPlayersHealth(){&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; return Health;&lt;/div&gt;
&lt;div&gt;
}&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
You need to now say:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;public int&lt;/b&gt; GetPlayersHealth(){&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; return Health;&lt;/div&gt;
&lt;div&gt;
}&lt;/div&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Declaring variables for Inspector View&lt;/h3&gt;
&lt;/div&gt;
&lt;div&gt;
With JavaScript all variables declared at the top of the script, unless declared as private, where shown in the inspector view in Unity as variables to&amp;nbsp;manipulate. For C# you need to declare the variable as public or it will not show up in the Inspector pane in Unity&#39;s Editor.&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Getting Instances of Other Scripts and Components&lt;/h3&gt;
&lt;/div&gt;
&lt;div&gt;
Let&#39;s say you want to get an instance of the players behavior in order to add damage to it. To get it as a variable in the code your currently working on, you now must use the needed class name as the variable type. Getting components is also different, as in the way you call it. In JavaScript it might look like this&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
var playerBehavoirInst = GameObject.Find(&quot;Player&quot;).GetComponent(PlayerBehavior);&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now in C#, its change to&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
PlayerBehavior playerBehaviorInst = GameObject.Find(&quot;Player&quot;).GetComponent&amp;lt;PlayerBehavior&amp;gt;();&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Notice the get Component and how it&#39;s called.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/7343460763998291577/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2013/01/a-few-pointers-on-switching-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/7343460763998291577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/7343460763998291577'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2013/01/a-few-pointers-on-switching-from.html' title='A Few Pointers On Switching From JavaScript To C#'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-8454380236960238261</id><published>2013-01-16T23:22:00.003-06:00</published><updated>2013-01-16T23:24:48.079-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="draggable"/><category scheme="http://www.blogger.com/atom/ns#" term="GUI"/><category scheme="http://www.blogger.com/atom/ns#" term="index"/><category scheme="http://www.blogger.com/atom/ns#" term="multiple"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><category scheme="http://www.blogger.com/atom/ns#" term="window"/><title type='text'>Making Multiple Instances of Windows With Same Window Method</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
So when developing a small little&amp;nbsp;web-player, I ran into the problem of trying to render multiple&amp;nbsp;instances&amp;nbsp;of the same window function.&lt;br /&gt;
&lt;br /&gt;
My plan was for my user interface component to iterate through all the thought components and for each thought, render its contents in a new window. The windows need to be&amp;nbsp;draggable&amp;nbsp;also.&lt;br /&gt;
&lt;br /&gt;
My first attempt of this implementation&amp;nbsp;failed.&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;&quot;&gt;&lt;code&gt;  &lt;b&gt;Rect thoughtRect&lt;/b&gt; = new Rect(20, 20, 200, 100);
  void OnGUI(){
    for (int i = 0; i &amp;lt; allthoughts.Length; i++){
      thoughtRect = GUI.Window(0+i, thoughtRect, DoThoughtWindow, &quot;&quot;+allthoughts[i].GetContent());
    }
  }
  
  
    void DoThoughtWindow(int windowID) {
        
        &lt;b style=&quot;color: blue; font-family: &#39;Andale Mono&#39;, &#39;Lucida Console&#39;, Monaco, fixed, monospace; white-space: normal;&quot;&gt;GUI.DragWindow&lt;/b&gt;(new Rect(0, 0, 10000, 10000));
    }
&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
For those who don&#39;t see the problem with this, I&#39;ll explain.&lt;br /&gt;
&lt;br /&gt;
All three windows are using the same &lt;b&gt;Rect&amp;nbsp;&lt;/b&gt;&lt;span style=&quot;background-color: #eeeeee;&quot;&gt;&lt;span style=&quot;font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace;&quot;&gt;&lt;span style=&quot;font-size: 12px; line-height: 14px;&quot;&gt;&lt;b&gt;thoughtRect&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;so all the windows are drawn on top of eachother. You might think this won&#39;t pose a problem due to the windows being draggable, you can just move one away from the other, but this is Unity&#39;s GUI class, it&#39;s not fun. The&amp;nbsp;&lt;span style=&quot;background-color: #eeeeee; font-family: &#39;Andale Mono&#39;, &#39;Lucida Console&#39;, Monaco, fixed, monospace; font-size: 12px; line-height: 14px;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;GUI.DragWindow&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;adjusts the &lt;b&gt;thoughtRect&lt;/b&gt;, which in turn moves all 3 windows at once, still keeping them on top of&amp;nbsp;each other.&lt;br /&gt;
&lt;br /&gt;
So on my second attempt of implementing my feature, I got it thankfully. I probably coded my program differently from what others would, but I hope&amp;nbsp;at-least&amp;nbsp;it might give you an idea to fix a problem now or in the future.&lt;br /&gt;
&lt;br /&gt;
In my thought class, I made a variable &quot;Rect positionOnScreen&quot;, which keeps up of that thoughts position. I&#39;ve also added two new methods in the thought class.&lt;br /&gt;
&lt;br /&gt;
One, GetPosition(), returns a Rect, the positionOnScreen;&lt;br /&gt;
&lt;br /&gt;
The other SetPosition(), is called to set the new Rect in the Though class&#39;s positionOnScreen.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;When it gets to a certain thought in the for statement, it sets that certain thought to the currentThought. The point in this is so the DoThoughtWindow method has something to reference when its rendering it&#39;s contents. &lt;b&gt;***Notice&amp;nbsp;&lt;span style=&quot;background-color: #f0f0f0; font-family: arial; font-size: 12px; line-height: 20px;&quot;&gt;currentThought = allthoughts[i]; &lt;/span&gt;&amp;nbsp;is called BEFORE the&amp;nbsp;&lt;span style=&quot;background-color: #f0f0f0; font-family: arial; font-size: 12px; line-height: 20px;&quot;&gt;DoThoughtWindow() is***&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;background-image: URL(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinWL8SoglsjecGbjot5A-bq0HNV2lP9K8atigmRb2RUO8mkTp1-5SZIdPEMa5T10B_jNpkYxL9lWH8LrkZFc-Wxm4anXZaz4InFljdii8HFJXWHH2Psw_1NW02IDtPqQTSDbAZPi4XrXXr/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;&quot;&gt;&lt;code style=&quot;color: black; word-wrap: normal;&quot;&gt;     Thought currentThought;  
     void OnGUI(){  
         for (int i = 0; i &amp;lt; allthoughts.Length; i++){  
             currentThought = allthoughts[i];  
             currentThought.SetPosition(GUI.Window(0+i, currentThought.GetPosition(), DoThoughtWindow, &quot;&quot;+currentThought.GetTitle()));  
         }  
     }  
       
       
   void DoThoughtWindow(int windowID) {  
     if (GUI.Button(new Rect(currentThought.GetPosition().width-120, currentThought.GetPosition().height-30, 100, 20), &quot;Edit&quot;)){  
       Debug.Log (&quot;We need to edit this&quot;);  
     }  
       
         GUI.Box(new Rect(10,25 ,currentThought.GetPosition().width - 20,currentThought.GetPosition().height-65),&quot;&quot;);  
           
     GUI.DragWindow(new Rect(0, 0, 10000, 10000));  
   }  
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
My thought class so far in case&amp;nbsp;you want to look at it yourself.&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background-image: URL(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinWL8SoglsjecGbjot5A-bq0HNV2lP9K8atigmRb2RUO8mkTp1-5SZIdPEMa5T10B_jNpkYxL9lWH8LrkZFc-Wxm4anXZaz4InFljdii8HFJXWHH2Psw_1NW02IDtPqQTSDbAZPi4XrXXr/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;&quot;&gt;&lt;code style=&quot;color: black; word-wrap: normal;&quot;&gt; using UnityEngine;  
 using System.Collections;  
 using System.Collections.Generic;  
   
 public class Thought : MonoBehaviour {  
       
     string thoughtTitle = &quot;Thought&quot;;  
     public string thoughtContent = &quot;Substance Goes Here&quot;;  
     List&amp;lt;GameObject&amp;gt; connectedThoughts = new List&amp;lt;GameObject&amp;gt;();  
     Rect positionOnScreen = new Rect(20, 20, 200, 200);  
       
       
     // Use this for initialization  
     void Start () {  
       
     }  
       
     // Update is called once per frame  
     void Update () {  
       
     }  
       
   public string GetContent(){  
         return thoughtContent;  
     }  
       
     public string GetTitle(){  
         return thoughtTitle;  
     }  
       
     public Rect GetPosition(){  
         return positionOnScreen;      
     }  
       
     public void SetPosition(Rect newPos){  
         positionOnScreen = newPos;  
     }  
       
   
 }  
   
&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
And a look at it being rendered.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizWIsseIjuzR_ehXMb0b352EfOFYRfsrUxMA45EOkf4moeI72ojet5GsywuMgvF6-odPHQssII4oPkKbnxViyCdoXCVoGZKZtKCYy_jAleomlE2lj7VC73f6YD3fjLiq77R0NnXoO2LQ14/s1600/finnished.bmp&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;444&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizWIsseIjuzR_ehXMb0b352EfOFYRfsrUxMA45EOkf4moeI72ojet5GsywuMgvF6-odPHQssII4oPkKbnxViyCdoXCVoGZKZtKCYy_jAleomlE2lj7VC73f6YD3fjLiq77R0NnXoO2LQ14/s640/finnished.bmp&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/8454380236960238261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2013/01/making-multiple-instances-of-same-window.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/8454380236960238261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/8454380236960238261'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2013/01/making-multiple-instances-of-same-window.html' title='Making Multiple Instances of Windows With Same Window Method'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizWIsseIjuzR_ehXMb0b352EfOFYRfsrUxMA45EOkf4moeI72ojet5GsywuMgvF6-odPHQssII4oPkKbnxViyCdoXCVoGZKZtKCYy_jAleomlE2lj7VC73f6YD3fjLiq77R0NnXoO2LQ14/s72-c/finnished.bmp" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-3831709410131458025</id><published>2013-01-14T22:55:00.001-06:00</published><updated>2013-01-14T22:58:16.372-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="3d"/><category scheme="http://www.blogger.com/atom/ns#" term="blank scree"/><category scheme="http://www.blogger.com/atom/ns#" term="Google"/><category scheme="http://www.blogger.com/atom/ns#" term="sketchup"/><category scheme="http://www.blogger.com/atom/ns#" term="trimble"/><category scheme="http://www.blogger.com/atom/ns#" term="updating"/><category scheme="http://www.blogger.com/atom/ns#" term="warehouse"/><category scheme="http://www.blogger.com/atom/ns#" term="white box"/><title type='text'>Fixing Sketch Up blank window (white box) problem</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
When downgrading my OS over&amp;nbsp;Christmas, I was faced with many problems, one of which is getting my&amp;nbsp;Google&amp;nbsp;sketch-up&amp;nbsp;working.&lt;br /&gt;
&lt;br /&gt;
Almost everything was working perfectly, except one little thing, The 3D Warehouse.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-0UFVkJ6XQmy3jr_YDHbZuPPwuXdYN8JUlpfqqcooSjjNzIgWrVpgpMpboWztFWiGmB5moJqqkRO3TGYsQvhaOF4aHQu0YA1kathKDwcvNH9LPFYzsluSRwFz8frQepIwxLJUpd1n3fLB/s1600/3+d+warhouse.bmp&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;449&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-0UFVkJ6XQmy3jr_YDHbZuPPwuXdYN8JUlpfqqcooSjjNzIgWrVpgpMpboWztFWiGmB5moJqqkRO3TGYsQvhaOF4aHQu0YA1kathKDwcvNH9LPFYzsluSRwFz8frQepIwxLJUpd1n3fLB/s640/3+d+warhouse.bmp&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
It was just displaying a &lt;b&gt;blank screen&lt;/b&gt;. At first I thought I had blocked permissions for giving it internet access. &amp;nbsp;Though my computer said it was allowing it to go over the network. I tried turning off my firewall and still nothing happened. I don&#39;t have any anti-virus software so I didn&#39;t worry about that.&lt;br /&gt;
&lt;br /&gt;
Guess what fixed it this annoying problem?&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Updating INTERNET EXPLORER.&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Just check for updates, and updates for what ever you computers default browser is also.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Now&amp;nbsp;everything&#39;s&amp;nbsp;back in harmony&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuphUKiDPOLh8I_EV6mOOmMUgFrWAyMp1vv2YcN8JiO5Y2qsl0400JePgXgFqiBP_-8NU0F0DvZJUDOteBNtJNcc5NSvVrtrTNVMD7ED-npFaDpdSoSa2_1rsjBg-d72SlUqbXewD6k6A2/s1600/harmony.bmp&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;450&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuphUKiDPOLh8I_EV6mOOmMUgFrWAyMp1vv2YcN8JiO5Y2qsl0400JePgXgFqiBP_-8NU0F0DvZJUDOteBNtJNcc5NSvVrtrTNVMD7ED-npFaDpdSoSa2_1rsjBg-d72SlUqbXewD6k6A2/s640/harmony.bmp&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/3831709410131458025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2013/01/fixing-sketch-up-blank-window-white-box.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/3831709410131458025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/3831709410131458025'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2013/01/fixing-sketch-up-blank-window-white-box.html' title='Fixing Sketch Up blank window (white box) problem'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-0UFVkJ6XQmy3jr_YDHbZuPPwuXdYN8JUlpfqqcooSjjNzIgWrVpgpMpboWztFWiGmB5moJqqkRO3TGYsQvhaOF4aHQu0YA1kathKDwcvNH9LPFYzsluSRwFz8frQepIwxLJUpd1n3fLB/s72-c/3+d+warhouse.bmp" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-8425901201911545673</id><published>2013-01-03T22:04:00.004-06:00</published><updated>2013-01-04T06:23:45.621-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="binding Time"/><category scheme="http://www.blogger.com/atom/ns#" term="initialize"/><category scheme="http://www.blogger.com/atom/ns#" term="problem"/><category scheme="http://www.blogger.com/atom/ns#" term="Start()"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><title type='text'>Choose Binding Time Consciously, Awake and Start functions for Initialization</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
So I ran into a simple but annoying problem when I was trying to hurry up and&amp;nbsp;finish&amp;nbsp;a game I have been working on for a while so I could move on to start a new idea. I was being stupid an hard coding the last features I wanted to include in the game, and of course came across a problem that I spent 30 minutes on that I could of easily avoided if I was thinking.&lt;br /&gt;
&lt;br /&gt;
Here is how the problem began. I needed a way to keep up with all the Light projectors in my scene and figure out which ones are close to me. This sounded easy enough, but alas I managed to screw it up.&lt;br /&gt;
&lt;br /&gt;
The code I wrote &amp;nbsp;used an array that was set on the &lt;b&gt;awake&amp;nbsp;&lt;/b&gt;method using GameObject.FindGameObjectsWithTag(&quot;TagName&quot;); In my scene, the player is already in my scene, and the lights are not. When my scene is played, a script called GameInit calls the city generator which in turn calls the multiple factories, one being the factory that generates all the lights in my game. Although it looks like when my scene starts up everything is instantiated at once and all called together, its not. The players awake is called long before the lights are created.&lt;br /&gt;
&lt;br /&gt;
Not only initialization was the problem, but lights could be destroyed throughout game play, which would call for updating the array.&amp;nbsp;In the end of the 30 minutes I went with&amp;nbsp;continually&amp;nbsp;updating the array with the update routine.&lt;br /&gt;
&lt;br /&gt;
This brings up a concept in the book I&#39;ve been reading that talks on the subject some of &amp;nbsp;&lt;b&gt;Choosing Binding Time Consciously. &lt;/b&gt;Whether its updating *shudder* global variables, or any other variables that are being constantly being changed for other scripts to pull from, be careful. Especially in &lt;b&gt;initialization&lt;/b&gt; of your code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/8425901201911545673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2013/01/choose-binding-time-consciously-start.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/8425901201911545673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/8425901201911545673'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2013/01/choose-binding-time-consciously-start.html' title='Choose Binding Time Consciously, Awake and Start functions for Initialization'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-2666701207847342319</id><published>2012-11-06T20:29:00.001-06:00</published><updated>2012-11-06T20:29:53.920-06:00</updated><title type='text'>Making Images in GIMP Part Two</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
In the previous post about making images in GIMP, I went over the process of creating the composition and creating clean line art. &amp;nbsp;In this next part I will explain the steps I go through in coloring my picture, including flats, foreground, background, extra detail, and lighting.&lt;br /&gt;
&lt;br /&gt;
And let us continue!&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuIdzx0-e4FQfR_DkliAJq76tgGRs_0hkwnRbbjisPCpejQu4NcSRzc5ubfKh7PX_5jtUa0UvzZUNSeZDWJAtBVU0zMzM4x0MsVaNPIi5Au4bmQrsGhroqvLWM-PwDchTBTAtKW0uc-bYf/s1600/6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;221&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuIdzx0-e4FQfR_DkliAJq76tgGRs_0hkwnRbbjisPCpejQu4NcSRzc5ubfKh7PX_5jtUa0UvzZUNSeZDWJAtBVU0zMzM4x0MsVaNPIi5Au4bmQrsGhroqvLWM-PwDchTBTAtKW0uc-bYf/s400/6.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
The next thing I did after making the line art was add a new layer on screen mode and filled it with an orangish-brown color. &amp;nbsp;This will tie the piece together in the end by giving all the colors a similar hue while they still pertain to their individuality. &amp;nbsp;The opacity of the screen is about 52% so that it&#39;s not too overwhelming. &amp;nbsp;Along with this I have brought down the line art layers to 80% opacity to give it a softer effect.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNdzr7oaX1UTuyNZ7yzhhPRjdkDZw2hddWqvlCS4_v4Mbi_z3zjRlG0PkHP6gAZ9cLq8FPs4fdOWfh3kkI_8nB0YWkte5vW_Y389RdKxB0FZ81_XuDheg2yeyf7Rg6ggQKN-Ijo0iYNzGl/s1600/7.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;237&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNdzr7oaX1UTuyNZ7yzhhPRjdkDZw2hddWqvlCS4_v4Mbi_z3zjRlG0PkHP6gAZ9cLq8FPs4fdOWfh3kkI_8nB0YWkte5vW_Y389RdKxB0FZ81_XuDheg2yeyf7Rg6ggQKN-Ijo0iYNzGl/s400/7.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Here you can clearly tell the palette I have chosen for this piece, it&#39;s going to be filled with earthy tones. &amp;nbsp;The flat colors for the foreground are fairly basic and cooperate with each other. &amp;nbsp;Don&#39;t be afraid to take your time, make sure that it is cleaned up before continuing to the next layer of colors. &amp;nbsp;To help make sure that I get everything clean, I often toggle the visibility of the white background on and off.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg86Tvd64vVNnzbWz5QTc1a92WYOujHpCMPOO1K9g0FCM_kvZw5kvBh9iaO68AKC-3UrzMZmQ_AXGaKEnv5nJfU_CPUWATyj4MhfQmtJFsxTE6U1gpE6iJrW9bPw-ITOj3M78XrKZHuiiIf/s1600/8.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;255&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg86Tvd64vVNnzbWz5QTc1a92WYOujHpCMPOO1K9g0FCM_kvZw5kvBh9iaO68AKC-3UrzMZmQ_AXGaKEnv5nJfU_CPUWATyj4MhfQmtJFsxTE6U1gpE6iJrW9bPw-ITOj3M78XrKZHuiiIf/s400/8.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
The background colors are done on a separate layer.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZ59NSMz__m0lFsEUgWQFXsWcozKeJTna4xSdbiDeJcKNB74mV4hlYtEm_ffSlIXHZR3qEskgb2JagTISvVwVnGzG65HQZ-DqFHxc_euQt_KfQWiiRGSbDPSiag6Gur75h8xyQo9imwxSk/s1600/9.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;233&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZ59NSMz__m0lFsEUgWQFXsWcozKeJTna4xSdbiDeJcKNB74mV4hlYtEm_ffSlIXHZR3qEskgb2JagTISvVwVnGzG65HQZ-DqFHxc_euQt_KfQWiiRGSbDPSiag6Gur75h8xyQo9imwxSk/s400/9.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&amp;nbsp;Here you can see an ant line going around the blue of the sky, this was selected by using the magic wand tool. &amp;nbsp;This is because it&#39;d be sort of boring for the sky to be just blue, so I&#39;m going to use a&amp;nbsp;gradation&amp;nbsp;to give it more life.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7vex_LArQpgB6ludeCJnoHSWUkgyiICs6nvi9YnHPwOAtvWZCTZ3lFXFxJ6tRa4mc3Vy6olYPFFwHjCw8-K1Z3szV9-xQjVslkGxBZqOW414mVF0yVAbothL5gJ4sY0SY9AunRUamQqjS/s1600/10.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;206&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7vex_LArQpgB6ludeCJnoHSWUkgyiICs6nvi9YnHPwOAtvWZCTZ3lFXFxJ6tRa4mc3Vy6olYPFFwHjCw8-K1Z3szV9-xQjVslkGxBZqOW414mVF0yVAbothL5gJ4sY0SY9AunRUamQqjS/s400/10.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Here you can see the tool I have selected along with the colors that I&#39;m going to use for the sky, fading from purple to orange. &amp;nbsp;For those of you who don&#39;t know how to use the gradation tool, to make the pattern vertical you pull a straight line from top to bottom. &amp;nbsp;You can actually make the pattern go in any direction depending on where you drag the line. &amp;nbsp;The intensity of each color will also vary depending on how long you make the line. &amp;nbsp;As you can see, I made the line span across the whole image to make sure that the color is fairly evenly distributed.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFsNGwz30J5ZyF-jvXODhuOiaKKEXR_7kmQc7K9Rpaj0IPQleIGod-PueLSSeur89p4mokqHKNvx2bWA8lp1Tb-twQzzy4S9w4-vAYsp6ixlpy0beMDGeX7lXqycZhABvb44jWggGK0jHt/s1600/11.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;233&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFsNGwz30J5ZyF-jvXODhuOiaKKEXR_7kmQc7K9Rpaj0IPQleIGod-PueLSSeur89p4mokqHKNvx2bWA8lp1Tb-twQzzy4S9w4-vAYsp6ixlpy0beMDGeX7lXqycZhABvb44jWggGK0jHt/s400/11.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Next I color in the building and water area white. &amp;nbsp;This will make seeing where I need to color in easier and also using the magic wand tool it allows me to color messily without getting the color all over the picture.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2Col43KS2vYV6JYWQLvjPMdf5MBpyA5wY9cjkx8aYOJoP14POOM8avSEaK50AFxONRDensmh-jl8jFgE8PqPQBNUV-hGpCmQgLpj8_EwoBefjumO3_frZUFLzK0zw3pa7zRp64oIPeIN4/s1600/12.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;232&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2Col43KS2vYV6JYWQLvjPMdf5MBpyA5wY9cjkx8aYOJoP14POOM8avSEaK50AFxONRDensmh-jl8jFgE8PqPQBNUV-hGpCmQgLpj8_EwoBefjumO3_frZUFLzK0zw3pa7zRp64oIPeIN4/s400/12.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
I color in the water a sort of&amp;nbsp;periwinkle color to give off the illusion of reflection of the sky onto the water.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5nnlaKtfPJpimv-ODldhBfwtgCyeUB62DTBdqob2Lc7xLRFRbYCRI_ynfdjbGVoEaf9o0adfnvQWmULynfZEv6eymRdZeGVRnJBV3shrxLBCe6LG7cOnYQYHSl9AHG9OXJZRivNSJ27s2/s1600/13.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;216&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5nnlaKtfPJpimv-ODldhBfwtgCyeUB62DTBdqob2Lc7xLRFRbYCRI_ynfdjbGVoEaf9o0adfnvQWmULynfZEv6eymRdZeGVRnJBV3shrxLBCe6LG7cOnYQYHSl9AHG9OXJZRivNSJ27s2/s400/13.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Using the same method of coloring I used for the sky using the gradient tool, I use a yellowish and purplish color on a low opacity to color the water.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIqYfa452R-LEA3FRDzDXSy44W7q1brwAB1QWMWWreQ-Hvs9dL7Yl6k38vT-_aDiKzq-YbPhtAOOWLHViE6_LBIekMuFxeZTRddOMK_Jp5-aJsdSMPP-C_UbkCegEVoy2f02Qyfm4Kqqnt/s1600/14.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;231&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIqYfa452R-LEA3FRDzDXSy44W7q1brwAB1QWMWWreQ-Hvs9dL7Yl6k38vT-_aDiKzq-YbPhtAOOWLHViE6_LBIekMuFxeZTRddOMK_Jp5-aJsdSMPP-C_UbkCegEVoy2f02Qyfm4Kqqnt/s400/14.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
I reselect the sky because I&#39;ve decided to amp up the saturation. &amp;nbsp;Because of the placement of the colors on the spectrum (they&#39;re on opposite sides) the purple will fade to orange-red and then yellow, giving a more natural sunset feel..&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinuJ_xksxDL3m17hHwhYx3oce8ZSlgNaKw61hLw-memmnoy1N2BwJkzIRHViu9Mu_p2YbG3bRJv3iZA7rtgyzkfluK4uLKdnCFW7sOxsxMEyYzxC7dQRpQGpDwC31QFiZas6URtrpsSsjg/s1600/15.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;231&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinuJ_xksxDL3m17hHwhYx3oce8ZSlgNaKw61hLw-memmnoy1N2BwJkzIRHViu9Mu_p2YbG3bRJv3iZA7rtgyzkfluK4uLKdnCFW7sOxsxMEyYzxC7dQRpQGpDwC31QFiZas6URtrpsSsjg/s400/15.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
In order to make sure the water conforms to this color change, I open the Adjust Color Balance window (colors&amp;gt; color balance) and add in some more orangish tones.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtb28BP4dSqmEPTAVHRrzF97yXvaBhMuVi_prppAdIm77eqwj6fJwD7Ie4QPOoRY6kssIa6WABKKkl9SRn3-RVo06c57LT_8t8Dxw7v5ps8ZA0BjaGu8YDel6tmd61WAeBr2dUwgiMb2-K/s1600/17.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;257&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtb28BP4dSqmEPTAVHRrzF97yXvaBhMuVi_prppAdIm77eqwj6fJwD7Ie4QPOoRY6kssIa6WABKKkl9SRn3-RVo06c57LT_8t8Dxw7v5ps8ZA0BjaGu8YDel6tmd61WAeBr2dUwgiMb2-K/s400/17.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
With the water still selected, I use the same gradient I used for the sky on the water so that it looks more like the sky is reflecting onto it.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQbTZ528FelSr9Ssf3cODI7gPT8z572g438WTh-3axyANcoDbc2UZeytMAEa2kXET6slZ2LdaaFxvYGiumuvLASx2Xk2gNGY2SGyJR0qH2KdUD__V0_9VNDFkdoHDnFzoNVSJ1zK8H_ueJ/s1600/18.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;213&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQbTZ528FelSr9Ssf3cODI7gPT8z572g438WTh-3axyANcoDbc2UZeytMAEa2kXET6slZ2LdaaFxvYGiumuvLASx2Xk2gNGY2SGyJR0qH2KdUD__V0_9VNDFkdoHDnFzoNVSJ1zK8H_ueJ/s400/18.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
This tutorial will be continued in Part three, but this concludes part two of constructing images in GIMP. &amp;nbsp;If you&#39;d like to see more notes on creating compositions, a nice tutorial is &lt;a href=&quot;http://lackadaisycats.tumblr.com/post/32966762332/dresdencodak-kalidraws-today-i-gave-my&quot;&gt;here&lt;/a&gt;.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/2666701207847342319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/11/making-images-in-gimp-part-two.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2666701207847342319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2666701207847342319'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/11/making-images-in-gimp-part-two.html' title='Making Images in GIMP Part Two'/><author><name>Ivey</name><uri>http://www.blogger.com/profile/04949304090549086699</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWW25v5e-DG9NbSr2ooLmi7QXF08Ks1Mc5InCXlcy-3u1VZVNfa_mYddjT2xexIOelPsj3UqsqKKar52IEkCuDKAT5TZD8NmfMfGqSfI12MDlcVSOgHa-pcqQvC44CGA/s220/darci.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuIdzx0-e4FQfR_DkliAJq76tgGRs_0hkwnRbbjisPCpejQu4NcSRzc5ubfKh7PX_5jtUa0UvzZUNSeZDWJAtBVU0zMzM4x0MsVaNPIi5Au4bmQrsGhroqvLWM-PwDchTBTAtKW0uc-bYf/s72-c/6.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-3725210925519816701</id><published>2012-10-21T21:03:00.001-05:00</published><updated>2012-11-27T22:12:56.046-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="city"/><category scheme="http://www.blogger.com/atom/ns#" term="generation"/><category scheme="http://www.blogger.com/atom/ns#" term="procedural"/><category scheme="http://www.blogger.com/atom/ns#" term="technique"/><title type='text'>How To Instantiate Along A Grid (Simple City Generator Method)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
A city created at&amp;nbsp;run time that was instantiated along a grid.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiioUMK5-kq2jGJQTqyKtZ7_ZH0kY_pAz1GicY2smosQe2WlDhSiN2330koFjNim698D0Umu_rfJbIcyCOdgRlk-dhqZFDpsB9Q7qu-IhnLgiD8CE2OVSM01rV4RRbc11f_zDo4c9yg3Msb/s1600/generator+preveiw.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;385&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiioUMK5-kq2jGJQTqyKtZ7_ZH0kY_pAz1GicY2smosQe2WlDhSiN2330koFjNim698D0Umu_rfJbIcyCOdgRlk-dhqZFDpsB9Q7qu-IhnLgiD8CE2OVSM01rV4RRbc11f_zDo4c9yg3Msb/s640/generator+preveiw.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
The reason for this post is to allow people to understand how to make something like this easy and simple. The city is instantiated along a grid using the restraints of the length and width perimeters passed through into the generator. Tiles are incremented through a constant that defines the width/length of the tile square. Here&#39;s the code I&#39;ve constructed for the current explanation :&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;var tileConstant:float = so and so number;&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;&lt;/code&gt;
&lt;code&gt;var tileObject:GameObject;&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;function BuildCity(desiredLength:int, desiredWidth:int){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var length:int=1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var width:int=1;&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;&lt;/code&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;while(length&amp;lt;=desiredLength){&lt;/code&gt;&lt;/div&gt;
&lt;code&gt;
&lt;/code&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;code&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Instantiate(tileObject, Vector3(width*tileConstant,0,length*tileConstant), Quaternion.identity);&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;/div&gt;
&lt;code&gt;
&lt;/code&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;//incrementing&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(length ==(desiredLength)&amp;amp;&amp;amp;width &amp;lt;desiredWidth){&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;length = 1;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;width +=1;&lt;span style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else{&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;length+=1;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;code&gt;
&lt;/code&gt;}&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;This code it&amp;nbsp;attached&amp;nbsp;to an empty gameobject inside the scene!&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
So with this code now, we have a tile constant. Keep in mind the constant is assuming both the width and length of the tile are the same. When the&amp;nbsp;function&amp;nbsp;BuildCity is called and the parameters are passed in, the generator starts a while statement that starts with a length and width of 1. The while statement instantiates a &lt;b&gt;tileObject &lt;/b&gt;and puts it in the right location. Location is determined by taking the current length and multiplying by the &lt;b&gt;constant&lt;/b&gt;. Therefor if the tile constant was a 5, tile length of 1 would be created at 5, tile length of 2 created at 10, so on and so on.&amp;nbsp;Incrementing from getting to one tile to the next deals with just two logical statements, the while statement and the if-else statement.&amp;nbsp;&amp;nbsp;In the method shown here, the while statement runs through all the tiles on the length side before jumping to the next incrementation of width, and begins creating all the tiles of length again. Since the method is set up so that it instantiates along the length first, the while statement runs until&amp;nbsp;&lt;span style=&quot;font-family: monospace;&quot;&gt;length&amp;nbsp;&lt;/span&gt;is greater than&amp;nbsp;&lt;span style=&quot;font-family: monospace;&quot;&gt;desiredLength.&amp;nbsp;&lt;/span&gt;Here is an example of what we have in the code.&lt;br /&gt;
&lt;br /&gt;
The width = 4 and height = 3. The constant is 10. The tile object is Unity&#39;s plane mesh with a point light parented to it. The function is being called by the start function.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVqQgxkNaaItt9sBf4gRzsxpfOU0VRMb13LDFb-U2oa974juSYTmZxfyWD1j8qkrmK15KM5Sq_bi2odGKaQfBxgMRvLJxkTHbGI7XPwe0pokpArvOFTBeD4wMgwjJLEhKc6wpDIp7R8KFS/s1600/firstexample.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;424&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVqQgxkNaaItt9sBf4gRzsxpfOU0VRMb13LDFb-U2oa974juSYTmZxfyWD1j8qkrmK15KM5Sq_bi2odGKaQfBxgMRvLJxkTHbGI7XPwe0pokpArvOFTBeD4wMgwjJLEhKc6wpDIp7R8KFS/s640/firstexample.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Now with the code we have now, we can have a grid of any dimensions we want created. Now what if we want to build a border&amp;nbsp;around&amp;nbsp;the city? The next step we&#39;re going to take is edge detection so we know when we&#39;re at the end of the grid. With this comes two method options for creating edges. My city generator created buildings on top of the tile as a border, but for the sake of simplicity of the blog post, we&#39;re just going to use a&amp;nbsp;separate&amp;nbsp;tile that has borders&amp;nbsp;attached&amp;nbsp;to it. Not only are we going to need border tiles, but corner tiles also. Here is the new code compensating for our needs:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
&lt;br /&gt;
var createCityOnStart:boolean = true;&lt;br /&gt;
&lt;br /&gt;
var width:int;&lt;br /&gt;
var height:int;&lt;br /&gt;
&lt;br /&gt;
enum KindOfTile{plain, leftBorder, rightBorder, topBorder, bottomBorder, topLeftCorner, topRightCorner, bottomLeftCorner, bottomRightCorner}&lt;br /&gt;
&lt;br /&gt;
var tileConstant:float = 10;&lt;br /&gt;
&lt;br /&gt;
var tileObject:GameObject;&lt;br /&gt;
var tileCornerObject:GameObject;&lt;br /&gt;
var tileEdgeObject:GameObject;&lt;br /&gt;
&lt;br /&gt;
function Start () {&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(createCityOnStart == true){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;BuildCity(height,width);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function BuildCity(desiredLength:int, desiredWidth:int){&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var length:int=1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var width:int=1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var location;&lt;br /&gt;
&amp;nbsp;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;while(length&amp;lt;=desiredLength){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; location = Vector3(width*tileConstant,0,length*tileConstant);&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;//getting edges&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(length == 1 &amp;amp;&amp;amp;width == 1){//bottomleftCorner&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.bottomLeftCorner,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(length == 1 &amp;amp;&amp;amp; width == desiredWidth){//bottomrightCorner&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.bottomRightCorner,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(length == (desiredLength) &amp;amp;&amp;amp; width == desiredWidth){//top right corner&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.topRightCorner,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(length == (desiredLength) &amp;amp;&amp;amp; width == 1){//top left corner&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.topLeftCorner,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;         &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;} else if(length == 1&amp;amp;&amp;amp;width !=0){//bottom edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.bottomBorder,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;} else if(length == desiredLength) {//top edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.topBorder,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(width ==1&amp;amp;&amp;amp; length !=0){//left edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.leftBorder,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(width ==desiredWidth){//right edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.rightBorder,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;} else {//not an edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildBase(KindOfTile.plain, location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&amp;nbsp;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;//incrementing&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(length ==(desiredLength)&amp;amp;&amp;amp;width &amp;lt;desiredWidth){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;length = 1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;width +=1;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;length+=1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;    &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function BuildBase(tile:KindOfTile, location:Vector3){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var tileInst:GameObject;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;switch(tile){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.plain:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.bottomBorder:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileEdgeObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 0;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.topBorder:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileEdgeObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 180;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.leftBorder:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileEdgeObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 90;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.rightBorder:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileEdgeObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 270;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.topLeftCorner:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileCornerObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 90;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.topRightCorner:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileCornerObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 180;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.bottomLeftCorner:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileCornerObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 0;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.bottomRightCorner:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileCornerObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 270;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
}&lt;br /&gt;
&lt;/code&gt;
&lt;br /&gt;
&lt;br /&gt;
Now with this code we have made an addition to our while statement. This addition tells us whether or not the tile we are creating is an edge or a corner, then calls the BuildTile function to make the correct tile. Two new tile objects are needed. The edge tile is the original tile with an wall&amp;nbsp;parented that is located&amp;nbsp;towards&amp;nbsp;the back of the&amp;nbsp;tile.&amp;nbsp;The corner tile is the original tile with two walls&amp;nbsp;parented, one which is located&amp;nbsp;towards&amp;nbsp;the back of the&amp;nbsp;tile, and the other to the most left of the tile. An enum called KinfOfTile has been created to keep up with all the different types a tile could be. When the while statement calls BuildTile function and passes in the&amp;nbsp;KinfOfTile&amp;nbsp;such as&amp;nbsp;KinfOfTile.topLeftCorner, the BuildTile function rotates the object to the&amp;nbsp;appropriate&amp;nbsp;angle. Here&#39;s an example of what we have now.&lt;br /&gt;
&lt;br /&gt;
Again, the width = 4 and height = 3. The constant is 10. The tile object is Unity&#39;s plane mesh with a point light parented to it. The function is being called by the start function.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7_VMGjuBAFCwVAI9PEa4Dfi3B0-My121OctYZyFGt7t188dNckFurVzFK5Vnbjyk6JgcBcAghMvOlRIo6IpQP9sxBNOH8ISDpq-JtBaV91Zm-0mE5noj1jNhOE2cTj8oqw2FBQT56QHBK/s1600/examplewithborder.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7_VMGjuBAFCwVAI9PEa4Dfi3B0-My121OctYZyFGt7t188dNckFurVzFK5Vnbjyk6JgcBcAghMvOlRIo6IpQP9sxBNOH8ISDpq-JtBaV91Zm-0mE5noj1jNhOE2cTj8oqw2FBQT56QHBK/s640/examplewithborder.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
But this still ins&#39;t a city, we need buildings. In this last part we&#39;re going to have two cases of buildings for each tile. One case will spawn multiple small buildings, where the other case will spawn one big building. Each case will go through all our different available buildings and pick one to be created. Here is the updated code:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
#pragma strict&lt;br /&gt;
&lt;br /&gt;
var createCityOnStart:boolean = true;&lt;br /&gt;
&lt;br /&gt;
var width:int;&lt;br /&gt;
var height:int;&lt;br /&gt;
&lt;br /&gt;
//List of buildings for the building creator to choose from&lt;br /&gt;
var smallBuildings:GameObject[];&lt;br /&gt;
var bigBuildings:GameObject[];&lt;br /&gt;
enum KindOfBuilding{small, big}&lt;br /&gt;
&lt;br /&gt;
//the Tiles Constant&lt;br /&gt;
var tileConstant:float = 10;&lt;br /&gt;
&lt;br /&gt;
//Tile objects to instantiate along grid&lt;br /&gt;
var tileObject:GameObject;&lt;br /&gt;
var tileCornerObject:GameObject;&lt;br /&gt;
var tileEdgeObject:GameObject;&lt;br /&gt;
enum KindOfTile{plain, leftBorder, rightBorder, topBorder, bottomBorder, topLeftCorner, topRightCorner, bottomLeftCorner, bottomRightCorner}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function Start () {&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(createCityOnStart == true){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;BuildCity(height,width);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function BuildCity(desiredLength:int, desiredWidth:int){&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var length:int=1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var width:int=1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var location;&lt;br /&gt;
&amp;nbsp;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;while(length&amp;lt;=desiredLength){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; location = Vector3(width*tileConstant,0,length*tileConstant);&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;//getting edges&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(length == 1 &amp;amp;&amp;amp;width == 1){//bottomleftCorner&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.bottomLeftCorner,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(length == 1 &amp;amp;&amp;amp; width == desiredWidth){//bottomrightCorner&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.bottomRightCorner,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(length == (desiredLength) &amp;amp;&amp;amp; width == desiredWidth){//top right corner&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.topRightCorner,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(length == (desiredLength) &amp;amp;&amp;amp; width == 1){//top left corner&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.topLeftCorner,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;         &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;} else if(length == 1&amp;amp;&amp;amp;width !=0){//bottom edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.bottomBorder,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;} else if(length == desiredLength) {//top edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.topBorder,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(width ==1&amp;amp;&amp;amp; length !=0){//left edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.leftBorder,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else if(width ==desiredWidth){//right edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.rightBorder,location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;} else {//not an edge&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;BuildTile(KindOfTile.plain, location);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&amp;nbsp;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;//incrementing&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(length ==(desiredLength)&amp;amp;&amp;amp;width &amp;lt;desiredWidth){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;length = 1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;width +=1;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}else{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;length+=1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;    &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function BuildTile(tile:KindOfTile, location:Vector3){&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;BuildBase(tile,location);&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(Random.Range(1,5) &amp;lt;3){//Build 4 of Small Buildings&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;BuildBuilding(KindOfBuilding.small, Vector3(location.x+1,location.y + 1, location.z +1));&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;BuildBuilding(KindOfBuilding.small, Vector3(location.x+1,location.y + 1, location.z -1));&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;BuildBuilding(KindOfBuilding.small, Vector3(location.x-1,location.y + 1, location.z +1));&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;BuildBuilding(KindOfBuilding.small, Vector3(location.x-1,location.y + 1, location.z -1));&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;} else {// build a big building&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;BuildBuilding(KindOfBuilding.big, Vector3(location.x,location.y + 2, location.z ));&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function BuildBuilding(type:KindOfBuilding, location:Vector3){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var buildingInst:GameObject;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;switch(type){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfBuilding.small:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;buildingInst = smallBuildings[Random.Range(0,smallBuildings.length)];&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;Instantiate(buildingInst, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfBuilding.big:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;buildingInst = bigBuildings[Random.Range(0,bigBuildings.length)];&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;Instantiate(buildingInst, location, Quaternion.identity);&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function BuildBase(tile:KindOfTile, location:Vector3){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;var tileInst:GameObject;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;switch(tile){&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.plain:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.bottomBorder:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileEdgeObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 0;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.topBorder:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileEdgeObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 180;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.leftBorder:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileEdgeObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 90;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.rightBorder:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileEdgeObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 270;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.topLeftCorner:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileCornerObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 90;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.topRightCorner:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileCornerObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 180;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.bottomLeftCorner:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileCornerObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 0;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;case KindOfTile.bottomRightCorner:&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst = Instantiate(tileCornerObject, location, Quaternion.identity);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;tileInst.transform.eulerAngles.y = 270;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;break;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
}&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;&lt;/code&gt;
With this code, the function the BuildCity function is calling has changed to now BuildTile. BuildTile calls both BuildBase (Building the tile base or &quot;floor&quot;) and the new function BuildBuilding, which builds a building. An &lt;b&gt;enumeration &lt;/b&gt;for building size has been created to indicate what kind of building to create. Along with the enum two new &lt;b&gt;GameObject Arrays&amp;nbsp;&lt;/b&gt;has been created so the user can drag and drop their building models in the inspector with ease.BuildTile passes in location(which is different for each small building) and type(whether it&#39;s small or big) to BuildBuilding.&amp;nbsp;BuildBuilding goes through the arrays and picks out a random one to create when called. Here&#39;s a look at the final out come.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw_XuIOWzC_9MrmLUXxDpm8dO72kqNhKLLdPipxMOEnY6YmMppp0IyVTp3oxPNF5CHlVkgwXomRB0uT1x79iKwqJSVGIzWqcNapcyc5U9G5RHGnH2-O1MopcO4W9LHeZ7t0kJewj3fQPx8/s1600/finnished+city.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;404&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw_XuIOWzC_9MrmLUXxDpm8dO72kqNhKLLdPipxMOEnY6YmMppp0IyVTp3oxPNF5CHlVkgwXomRB0uT1x79iKwqJSVGIzWqcNapcyc5U9G5RHGnH2-O1MopcO4W9LHeZ7t0kJewj3fQPx8/s640/finnished+city.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
One last time, the width = 4 and height = 3. The constant is 10. The tile object is Unity&#39;s plane mesh with a point light parented to it. The BuildCity function is being called by the start function. The small buildings (4 different kinds) are 2x2x2 and have parented cubes with the same dimensions at a different height to make the buildings look bigger or smaller to one another. The bigger buildings (2 of them) are 4x4x4 and again have parented cubes with the same&amp;nbsp;dimensions&amp;nbsp;to create variation between heights.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Here is a final look at the script atatched to the empty gameobject.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh76BbMgbxR4zOw_mGMmV7jvNt5e6Cpjj-Ch-KXZb3NO52CskV5TbexfXjWM-jyWq8MUh5fkta1I-XMt_MfjNIsOFI_4bsrreLwdRvQk4zieTs2S5343drVThOpXwEF1ZweD76-F9r4QEbJ/s1600/script.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;366&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh76BbMgbxR4zOw_mGMmV7jvNt5e6Cpjj-Ch-KXZb3NO52CskV5TbexfXjWM-jyWq8MUh5fkta1I-XMt_MfjNIsOFI_4bsrreLwdRvQk4zieTs2S5343drVThOpXwEF1ZweD76-F9r4QEbJ/s400/script.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
If you want a real look at  teaching yourself some procedural generation techniques, you should consider reading &lt;a href=&quot;http://www.citygen.net/files/Citygen-Thesis.pdf&quot; target=&quot;_blank&quot;&gt;this guys thesis&lt;/a&gt;.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
If you have any questions or feed back please leave a comment!&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/3725210925519816701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/10/how-to-instantiate-along-grid-simple.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/3725210925519816701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/3725210925519816701'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/10/how-to-instantiate-along-grid-simple.html' title='How To Instantiate Along A Grid (Simple City Generator Method)'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiioUMK5-kq2jGJQTqyKtZ7_ZH0kY_pAz1GicY2smosQe2WlDhSiN2330koFjNim698D0Umu_rfJbIcyCOdgRlk-dhqZFDpsB9Q7qu-IhnLgiD8CE2OVSM01rV4RRbc11f_zDo4c9yg3Msb/s72-c/generator+preveiw.png" height="72" width="72"/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-3822114727029963007</id><published>2012-10-13T15:42:00.001-05:00</published><updated>2012-10-14T00:33:39.678-05:00</updated><title type='text'>Backing Up Your Projects</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;u&gt;What Prompted This Post:&lt;/u&gt;&lt;br /&gt;
Over the summer while working on one of my games, Unity 3D released an update which required your project to be &quot;upgraded&quot;.It warned me to back up my project, but of course me being the stupid little&amp;nbsp;high-school&amp;nbsp;student I am, didn&#39;t even think twice and upgraded the project without any precautions. Upon the re opening of my Unity project, I was in shock. Where as the skeletons for all my prefabs, models, and materials still existed, they were all out of place and not put together. So a prefab of a enemy had the mesh component, but the mesh was not linked to it to render, the material was not linked to be rendered. The&amp;nbsp;attached&amp;nbsp;script was said to be missing (although still existed within my project, just not linked). This existed not only in prefabs but every game object in every scene. I was never able to get back my terrain (although height maps existed) so I had to end up remaking it. The whole process of linking everything back together took a good 4 hours. I ended up re-importing some meshes and re-creating some of the prefabs over. An experience I hope never to repeat.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;Why It&#39;s Good To Back Up Your Project:&lt;/u&gt;&lt;br /&gt;
My scenario came out of pure ignorance, but other reasons might not be so ignorant. Sometimes you&#39;ll need a piece of code that you&#39;ve deleted, or you might want to look at a certain way you set up a scene.Maybe you can use one of your older back ups as a template for a new game you&#39;d like to start.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;My Method Of Backing Up A Project:&lt;/u&gt;&lt;br /&gt;
I simply go to where ever all my unity projects are&amp;nbsp;stored&amp;nbsp;(for me the documents folder). You want to back up the entire project, so that means backing up the folder that contains your projects assets, project settings, library, and the rest of the stuff.&lt;br /&gt;
&lt;br /&gt;
All I do is copy my entire project to a zipped folder, rename to the date backed up, and keep it there for later usage.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5IgXwgEiS7QAxfxMnjTdnzMRcpruxbJl0TLk0AsTdGgNCA9VT9MVdApq1LeRXaOJ7QklzEjFh_tbT-DMjoVKtTK9VTUiwFoHFzZi94azmL6ohU2xraB4ZQ2sZsmXDDwBK6rhub_T13Hc_/s1600/compressing.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;315&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5IgXwgEiS7QAxfxMnjTdnzMRcpruxbJl0TLk0AsTdGgNCA9VT9MVdApq1LeRXaOJ7QklzEjFh_tbT-DMjoVKtTK9VTUiwFoHFzZi94azmL6ohU2xraB4ZQ2sZsmXDDwBK6rhub_T13Hc_/s640/compressing.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
I back up my project when ever I make substantial progress in it which in&amp;nbsp;return&amp;nbsp;makes me think of all I lost over the summer and back it up. I&amp;nbsp;suggest&amp;nbsp;though backing up your project&amp;nbsp;at least&amp;nbsp;once a week though, which is better practice. Your going to want to stay organized so a method I use is making a&amp;nbsp;separate&amp;nbsp;folder for backups, then a&amp;nbsp;sub folder&amp;nbsp;for project, and within the&amp;nbsp;sub folder&amp;nbsp;holds the history of backups.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;Taking Further Measures&lt;/u&gt;&lt;br /&gt;
I&amp;nbsp;suggest&amp;nbsp;also going&amp;nbsp;at least&amp;nbsp;one step further and backing your projects up on to a&amp;nbsp;separate&amp;nbsp;hard drive off your computer. There is no telling when your computer is going to fail on you being it a virus, or actual physical harm to it. Then again can&#39;t your&amp;nbsp;separate&amp;nbsp;hard drive be ruined also? If you haven&#39;t heard of &lt;a href=&quot;http://dropbox.com/&quot; target=&quot;_blank&quot;&gt;Dropbox &lt;/a&gt;yet, you might want to look into it. The site gives you 2 GB of free storage on a cloud upon sign up. Having backed up on the internet frees you of the risk of loosing anything. Backing up to a&amp;nbsp;separate&amp;nbsp;source makes it easier when switching to a new computer.&lt;br /&gt;
&lt;br /&gt;
Hope this makes you want to start backing up if &amp;nbsp;you haven&#39;t already&amp;nbsp;began!&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/3822114727029963007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/10/backing-up-your-projects.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/3822114727029963007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/3822114727029963007'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/10/backing-up-your-projects.html' title='Backing Up Your Projects'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5IgXwgEiS7QAxfxMnjTdnzMRcpruxbJl0TLk0AsTdGgNCA9VT9MVdApq1LeRXaOJ7QklzEjFh_tbT-DMjoVKtTK9VTUiwFoHFzZi94azmL6ohU2xraB4ZQ2sZsmXDDwBK6rhub_T13Hc_/s72-c/compressing.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-2310351265733116086</id><published>2012-09-23T00:19:00.001-05:00</published><updated>2012-10-01T18:01:28.379-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="3D modeling"/><category scheme="http://www.blogger.com/atom/ns#" term="Building"/><category scheme="http://www.blogger.com/atom/ns#" term="Optimization"/><category scheme="http://www.blogger.com/atom/ns#" term="replace"/><category scheme="http://www.blogger.com/atom/ns#" term="texture"/><category scheme="http://www.blogger.com/atom/ns#" term="tip"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><category scheme="http://www.blogger.com/atom/ns#" term="window"/><title type='text'>Optimization Tip #1 - Windows As Textures</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
A lot of games back before the super consoles of PS3 or the XBox 360,&amp;nbsp;companies had to&amp;nbsp;go to extra&amp;nbsp;lengths to save on faces to&amp;nbsp;boost the&amp;nbsp;performance. Technology throughout the past 10 years has grown&amp;nbsp;tremendously&amp;nbsp;advanced for such a short period of time. We are though, still not to the point of having the ability to run the graphics of a PS3&#39;s prestige on an everyday tablet and not have major issues. All developers have to optimize their games of course, especially those who are developing for android or IOS. One way everyone has seen is UV mapping entire buildings with a texture. Doors and windows are flat and look like some one cut pictures out of a magazine and glued them on a cardboard box as part of an art project.&lt;br /&gt;
&lt;br /&gt;
Now I&#39;m not denouncing the method, its actually kind of crazy to think of trying to model a building in crazy detail. A lot of what makes a realistic looking model is the detail of the texture, instead of the complexity of the it&#39;s mesh. Big games like Call of Duty: MW3 still have not so complex buildings but still apply very detailed textures to make them realistic. This is a great way to make a&amp;nbsp;computationally&amp;nbsp;cheap building, especially one to put in the distance as something to glance over, or&amp;nbsp;at least&amp;nbsp;not to have too much attention on. Of course sometimes you just need low poly buildings because your selected platform does not have the kind of power to process&amp;nbsp;today&#39;s&amp;nbsp;graphics. I would like to give you a comparison on how much just changing windows to textures on a building can combat lag in your game.&lt;br /&gt;
&lt;br /&gt;
Now I&#39;m not a what you could call a true 3D modeler. I use a program called Google&amp;nbsp;sketch-up&amp;nbsp;to model buildings. I can not animate, rig, or even UV map textures. Nor does it&amp;nbsp;include&amp;nbsp;any of the editing tools blender contains. The program is as simple as Microsoft paint, but it is a 3D modeling software and has vertices and faces like any other model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib6h9wiaM_m5FCeFL1SRRfFl2Qo9kiXV9izzrSr0V0sHZScxwbyN0enQCu-EiI-1reVa1oXcm1AElBfAlf2FO5I9JcevnZ4Mr6DygwYI5vyTOPXXGiM4ToxOl1SoQ43WGX_5Tm2VS3uL9u/s1600/normalexample.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;484&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib6h9wiaM_m5FCeFL1SRRfFl2Qo9kiXV9izzrSr0V0sHZScxwbyN0enQCu-EiI-1reVa1oXcm1AElBfAlf2FO5I9JcevnZ4Mr6DygwYI5vyTOPXXGiM4ToxOl1SoQ43WGX_5Tm2VS3uL9u/s640/normalexample.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br class=&quot;Apple-interchange-newline&quot; /&gt;
This building has a total of&amp;nbsp;&amp;nbsp;&lt;b&gt;2,133&lt;/b&gt; faces taking up &lt;b&gt;641 &lt;/b&gt;KB of space on my computer. When nine instances of the model was placed alone in a scene on Unity, the scene&amp;nbsp;contained&amp;nbsp;a total of &lt;b&gt;77.3k&lt;/b&gt;&amp;nbsp;vertices.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiqrbYCcdzrjVjz4eiywho-QjoCYZ8FlwzDhNVS5LsswgZqZ95baPQB1tB94_CAX6b0BRhfONH82L_D0nkWga3Ic_9G3og4mDz_KP-IixcgRXigE9a9DTJkfPav_rob_APT-8Jttv9hExe/s1600/lowpoly.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;476&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiqrbYCcdzrjVjz4eiywho-QjoCYZ8FlwzDhNVS5LsswgZqZ95baPQB1tB94_CAX6b0BRhfONH82L_D0nkWga3Ic_9G3og4mDz_KP-IixcgRXigE9a9DTJkfPav_rob_APT-8Jttv9hExe/s640/lowpoly.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Now this building has had it&#39;s windows mesh altered and have had a texture applied to&amp;nbsp;compensate for the changes. I simply took a screen shot of a window in orthographic&amp;nbsp;view&amp;nbsp;of the model, brought it into paint to crop, and then just applied to the model. The model has been reduced to&amp;nbsp;&lt;b&gt;449 &lt;/b&gt;faces! The model also now takes up only &lt;b&gt;279 &lt;/b&gt;KB of memory. Part of the reason for such a drastic change is due to the windows being curved at the top,&amp;nbsp;accounting&amp;nbsp;for more faces than a regular straight line would of used.Now when nine instances where placed under the same conditions as the other model had, the scene now only contained a total of &lt;b&gt;13.6 k&lt;/b&gt; vertices.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/2310351265733116086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/09/optimization-tip-1-windows-as-textures.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2310351265733116086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2310351265733116086'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/09/optimization-tip-1-windows-as-textures.html' title='Optimization Tip #1 - Windows As Textures'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib6h9wiaM_m5FCeFL1SRRfFl2Qo9kiXV9izzrSr0V0sHZScxwbyN0enQCu-EiI-1reVa1oXcm1AElBfAlf2FO5I9JcevnZ4Mr6DygwYI5vyTOPXXGiM4ToxOl1SoQ43WGX_5Tm2VS3uL9u/s72-c/normalexample.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-643809172700657692</id><published>2012-09-09T19:22:00.001-05:00</published><updated>2012-09-09T21:49:57.717-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="composition"/><category scheme="http://www.blogger.com/atom/ns#" term="GIMP"/><category scheme="http://www.blogger.com/atom/ns#" term="line art"/><category scheme="http://www.blogger.com/atom/ns#" term="tutorial"/><title type='text'>Making Images in GIMP Part One</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
This is a little off our usual topic, but still an important factor for games. &amp;nbsp;When you walk into a game store and you&#39;re looking for no game in particular except for one that looks cool, you can&#39;t judge it off of game play, you have to go by the cover (and the description on the back of a game). &amp;nbsp;And so, I shall show you the basics of making an image in GIMP.&lt;br /&gt;
&lt;br /&gt;
NOTE OF WARNING: &amp;nbsp;GIMP was not made primarily as a drawing tool, it was made for image manipulation, so while it has many of the same features that Photoshop has, it does not have everything.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;I&#39;m going to have to assume you have a basic understanding of anatomy and also drawing fundamentals. &amp;nbsp;This tutorial is focusing more on composition and what it entails (depth, color usage, space, etc.) to create an interesting piece that draws attention. &amp;nbsp;This piece is a mock up game cover.&lt;br /&gt;
&lt;br /&gt;
Right now I have a rough draft and foreground sketch, simple enough.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFd-iDJC3MXWhRJJgMF4JT2TUaHD6RYfVtemqABJFJJBl8rzSpFb6aNSCZQov8mRvLsCD7udAMGALTe_Q0A63XM3-rRtl0HeXvrY99KdVGnp34iq3S1ZKSUpHaMq_QOdWdU0Bo90GEsQ0d/s1600/1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;243&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFd-iDJC3MXWhRJJgMF4JT2TUaHD6RYfVtemqABJFJJBl8rzSpFb6aNSCZQov8mRvLsCD7udAMGALTe_Q0A63XM3-rRtl0HeXvrY99KdVGnp34iq3S1ZKSUpHaMq_QOdWdU0Bo90GEsQ0d/s400/1.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEim5o15ufxMlfBciZygeuEMa1mnW7Tpdd8xmeE6ATzFzETvY1vzTyDkcRt9tzVAxwAxDIfrFhiPSvv7-vASzyjTUMGdaDytkYbIu9sObPMaVXMR7HqQMiLebb0ZiljIC9S4tFpM44ZGPk6Y/s1600/2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;202&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEim5o15ufxMlfBciZygeuEMa1mnW7Tpdd8xmeE6ATzFzETvY1vzTyDkcRt9tzVAxwAxDIfrFhiPSvv7-vASzyjTUMGdaDytkYbIu9sObPMaVXMR7HqQMiLebb0ZiljIC9S4tFpM44ZGPk6Y/s400/2.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Backgrounds tend to be the more tedious and difficult part of a piece. &amp;nbsp;The job is to make sure that it cooperates with the foreground while not being too bland. &amp;nbsp;For this process, I rely on a lot of reference images, especially for a subject matter like this that focuses on nature. &amp;nbsp;I&#39;ll be getting most of my references &lt;a href=&quot;http://thegardennymph.tumblr.com/&quot;&gt;here&lt;/a&gt;. &amp;nbsp;Another thing to be careful with is where you want the attention of the audience to be drawn to. &amp;nbsp;This is why I did not put the character in the middle of the page, you want the composition to be interesting. &amp;nbsp;I put it off to the side and make sure that it fits correctly on the background (you don&#39;t want a character to float when it isn&#39;t supposed to) The way the image flows leads your eye around the whole piece.&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhovekUu3cteH6Mx7LnNhOkBH-0XmQB70vkfz42AvMhgfdrEzpWxsbXyiVKuWKeKH9zemj1XT8u_kdwsTAp-YLpV6qmbk4KVMQolOJYQp_GK_6rzQ-vLW_7cObDuyARGN6SnZiCxsddFCdU/s1600/3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;231&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhovekUu3cteH6Mx7LnNhOkBH-0XmQB70vkfz42AvMhgfdrEzpWxsbXyiVKuWKeKH9zemj1XT8u_kdwsTAp-YLpV6qmbk4KVMQolOJYQp_GK_6rzQ-vLW_7cObDuyARGN6SnZiCxsddFCdU/s400/3.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
And so we have this background, effectively utilizing the space and not overbearing on the foreground, although this is a pretty damn cliche scene. &amp;nbsp;I create a sense of space by not only making the fortress figure in the back smaller, but also by bringing it closer to the horizon and giving it a more diluted tone, this is&amp;nbsp;accentuation&amp;nbsp;by the saturation of the green of the cliff that is closer to the front. &amp;nbsp;During this part, don&#39;t be afraid to use general shapes to represent objects, the line art is where the detail comes in.&lt;/div&gt;
&amp;nbsp;Next is creating a cleaner outline of everything.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFhUcVgmPFlE-48NiUNLSAGOEndYEyBEmHJ2omBKAOp5-vmMgP5yjkG_xb-jA-qg-GoUSR88RfhBMQjISt45JBKxB4nCF7wSlr8u53Fqtn1Rjsb1lAOgz2UwvzHdr6HJ22qrQvGggBaRyJ/s1600/4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFhUcVgmPFlE-48NiUNLSAGOEndYEyBEmHJ2omBKAOp5-vmMgP5yjkG_xb-jA-qg-GoUSR88RfhBMQjISt45JBKxB4nCF7wSlr8u53Fqtn1Rjsb1lAOgz2UwvzHdr6HJ22qrQvGggBaRyJ/s400/4.JPG&quot; width=&quot;375&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
I added in a pendant and took care of the folds in the clothes. &amp;nbsp;The important thing about doing line art is that you always need to take your time, even if it takes a day or so to do.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzO4w_tFkxuspfbRR-LkY6wai-qeEy7aBFwOLl7soZgvrhI4aw6mv5Mj6DTONooBM-rNoXXgZnONeFa2KufdUOaYsBiXsud97tNVVHKmcoy7J0WRw_aXy8LDzJjBXi23Cf3AIsdtfOvXrF/s1600/5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzO4w_tFkxuspfbRR-LkY6wai-qeEy7aBFwOLl7soZgvrhI4aw6mv5Mj6DTONooBM-rNoXXgZnONeFa2KufdUOaYsBiXsud97tNVVHKmcoy7J0WRw_aXy8LDzJjBXi23Cf3AIsdtfOvXrF/s400/5.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
And this is the finished line art. &amp;nbsp;As you can see, the background closer to the viewer is in more detail while what is in the back is more general forms, it almost looks kind of lame. &amp;nbsp;However, once it is colored it should regain the necessary detail that is needed for this to work as a piece. &amp;nbsp;This whole image right now consists of five layers; a white background, a background rough sketch, a foreground rough sketch, a background line art, and a foreground line art. &amp;nbsp;To add a new layer you can click the little white page under the layers. &amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
I would like to encourage that when working with line art that you don&#39;t feel that you have to create your own style, nor that you have to copy other people&#39;s styles. &amp;nbsp;I would suggest going out and finding pictures and studying the line art, the flow of the pen and the thickness in correlation to space and surrounding objects. &amp;nbsp;There is nothing wrong with relying on reference or feeling the need to use a method you find suitable, nor is it required that you do so.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
And this concludes the first part of creating an image in GIMP. &amp;nbsp;If you have any questions about composing a picture or anything else such a preference for references, feel free to ask.&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/643809172700657692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/09/making-images-in-gimp.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/643809172700657692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/643809172700657692'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/09/making-images-in-gimp.html' title='Making Images in GIMP Part One'/><author><name>Ivey</name><uri>http://www.blogger.com/profile/04949304090549086699</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWW25v5e-DG9NbSr2ooLmi7QXF08Ks1Mc5InCXlcy-3u1VZVNfa_mYddjT2xexIOelPsj3UqsqKKar52IEkCuDKAT5TZD8NmfMfGqSfI12MDlcVSOgHa-pcqQvC44CGA/s220/darci.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFd-iDJC3MXWhRJJgMF4JT2TUaHD6RYfVtemqABJFJJBl8rzSpFb6aNSCZQov8mRvLsCD7udAMGALTe_Q0A63XM3-rRtl0HeXvrY99KdVGnp34iq3S1ZKSUpHaMq_QOdWdU0Bo90GEsQ0d/s72-c/1.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-7278135439571967575</id><published>2012-07-06T20:46:00.003-05:00</published><updated>2012-09-03T12:38:59.890-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="3D modeling"/><category scheme="http://www.blogger.com/atom/ns#" term="Animation"/><category scheme="http://www.blogger.com/atom/ns#" term="clamp"/><category scheme="http://www.blogger.com/atom/ns#" term="default"/><category scheme="http://www.blogger.com/atom/ns#" term="Generate colliders"/><category scheme="http://www.blogger.com/atom/ns#" term="importing"/><category scheme="http://www.blogger.com/atom/ns#" term="loop"/><category scheme="http://www.blogger.com/atom/ns#" term="once"/><category scheme="http://www.blogger.com/atom/ns#" term="ping pong"/><category scheme="http://www.blogger.com/atom/ns#" term="scale factor"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><category scheme="http://www.blogger.com/atom/ns#" term="wrap mode"/><title type='text'>Importing Models and Animation From Blender</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
NOTE - If nothing is showing up in your&amp;nbsp;preview&amp;nbsp;section, then you have exported the model wrong. Remember you need to have selected in Blender what to be exported. If you have done this, try reversing the faces in the model and re exporting.&lt;br /&gt;
&lt;br /&gt;
So after you have your model from Blender &lt;a href=&quot;http://instantiateunity.blogspot.com/2012/05/making-characters-rigging-in-blender.html&quot; target=&quot;_blank&quot;&gt;rigged&lt;/a&gt;, &lt;a href=&quot;http://instantiateunity.blogspot.com/2012/06/animation-basics-on-blender-257-walking.html&quot; target=&quot;_blank&quot;&gt;animated&lt;/a&gt;, and exported, you can bring it in to the unity editor.&amp;nbsp;&lt;span style=&quot;background-color: white;&quot;&gt;Scale factor is by default 0.01, to change that, try looking at &lt;/span&gt;&lt;a href=&quot;http://answers.unity3d.com/questions/12187/import-settings.html&quot; style=&quot;background-color: white;&quot; target=&quot;_blank&quot;&gt;this link&lt;/a&gt;&lt;span style=&quot;background-color: white;&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQdjJDO7yhO_P3XOjDbYzcPUUCiXJEfrhFFv5HPhpq0Io-t_yO3BW9K6TZfY5SpQW5ryIErPPtLli5qe1A7YSr3J_o3W_vxKwfVbQCGgZe3IPkb8vYw3ECTZC1y8WG87IncJ0L2blkBpTy/s1600/firstslideimport.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQdjJDO7yhO_P3XOjDbYzcPUUCiXJEfrhFFv5HPhpq0Io-t_yO3BW9K6TZfY5SpQW5ryIErPPtLli5qe1A7YSr3J_o3W_vxKwfVbQCGgZe3IPkb8vYw3ECTZC1y8WG87IncJ0L2blkBpTy/s640/firstslideimport.png&quot; width=&quot;374&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Anyways, your going to want to drag you model to your scene and&amp;nbsp;adjust&amp;nbsp;the scale factor till you have the desired size (scale factor 1 is rarely what you ever want it, its huge).&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
To start defining your animation, click the + button that&#39;s highlighted purple in the picture. You&#39;ll get something like this where you can name your animation, define starting and ending frames, and wrap mode.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5-shh1V-4KqrNc1UTMFfibp4V_CZNSiWZ9rYqiufXkU3OQorj6f_62J4SX-Iy3howHnXfVvQB8i2OD_k5fJ5dZoAgoakVfLVjcc676i8Y0SB2QP9UPYjmnLTXUWNKABIGhumz1So6hx2_/s1600/make+sure+checked.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;92&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5-shh1V-4KqrNc1UTMFfibp4V_CZNSiWZ9rYqiufXkU3OQorj6f_62J4SX-Iy3howHnXfVvQB8i2OD_k5fJ5dZoAgoakVfLVjcc676i8Y0SB2QP9UPYjmnLTXUWNKABIGhumz1So6hx2_/s640/make+sure+checked.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Remember back when you were making the animation for your model? you had to define frames and you had a certain amount of frames in your overall animation? It&#39;s so simple. All you have to do is look at your animation in blender for your animation begin and end frame! If you have a looping animation, you would want to change wrap mode to Loop, and if it still doesn&#39;t work try checking the loop box.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
There is five different wrap modes. Default, Loop, Ping Pong, Once, and Clamp.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Default uses the animation wrap mode option you chose (located above the split animations check box).&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Once and Clamp are similar, but&amp;nbsp;different. Once simply plays through the animation one time and them &lt;b&gt;stops &lt;/b&gt;the animation, where as Clamp repeats the last frame of the animation over and over. This gives the&amp;nbsp;appearance&amp;nbsp;of it being played once. This also allows a blend of animation from one animation to the next, allowing more fluid movement.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Loop and Ping Pong are also similar. Loop plays through the entire animation, and in the end, goes back to the first frame and continues on and on. Ping Pong does basicaly this, but once played through the animation, it reverses itself and goes back ward through the animation, then forward again, then back, then... you get the idea. &lt;a href=&quot;http://docs.unity3d.com/Documentation/Components/class-Mesh.html&quot; target=&quot;_blank&quot;&gt;Or if you don&#39;t understand or would like to read more, click here.&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
So, after getting all your animations defined simply apply a script containing a line of code:&lt;/div&gt;
&lt;a href=&quot;http://docs.unity3d.com/Documentation/ScriptReference/Animation.html&quot;&gt;Animation&lt;/a&gt;.Play(), which plays default animation&lt;br /&gt;
&lt;div&gt;
&lt;a href=&quot;http://docs.unity3d.com/Documentation/ScriptReference/Animation.html&quot;&gt;Animation&lt;/a&gt;.Play(&quot;Animation Name&quot;)&lt;/div&gt;
&lt;div&gt;
or&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;http://docs.unity3d.com/Documentation/ScriptReference/Animation.html&quot;&gt;Animation&lt;/a&gt;.Blend() for more&amp;nbsp;seamless&amp;nbsp;animation transitions. &lt;a href=&quot;http://docs.unity3d.com/Documentation/ScriptReference/Animation.Blend.html&quot; target=&quot;_blank&quot;&gt;Click here to read more&lt;/a&gt;.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Make sure the script is&amp;nbsp;attached&amp;nbsp;to the game object with the animation component:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC07nBuJfOSRHLZhYFHyY2V7dI7IRdWJs4GjtWJdNiyJm3KUmAOZcDNgE0rid9WS4t1RvdXzh8cGZGziMr_RCmV2cXjhsk1hfwW-EOHOkh8CbF5k2dFFKVjKcKG-Dt9tM6NQQnc34TS_kC/s1600/animationcomponent.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;302&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC07nBuJfOSRHLZhYFHyY2V7dI7IRdWJs4GjtWJdNiyJm3KUmAOZcDNgE0rid9WS4t1RvdXzh8cGZGziMr_RCmV2cXjhsk1hfwW-EOHOkh8CbF5k2dFFKVjKcKG-Dt9tM6NQQnc34TS_kC/s400/animationcomponent.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
If you have any problems, questions, or&amp;nbsp;suggestions, feel free to email me or comment on the post.&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/7278135439571967575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/07/importing-models-and-animation-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/7278135439571967575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/7278135439571967575'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/07/importing-models-and-animation-from.html' title='Importing Models and Animation From Blender'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQdjJDO7yhO_P3XOjDbYzcPUUCiXJEfrhFFv5HPhpq0Io-t_yO3BW9K6TZfY5SpQW5ryIErPPtLli5qe1A7YSr3J_o3W_vxKwfVbQCGgZe3IPkb8vYw3ECTZC1y8WG87IncJ0L2blkBpTy/s72-c/firstslideimport.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-680016919191494077</id><published>2012-06-17T17:25:00.001-05:00</published><updated>2012-07-14T20:05:14.676-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2.57"/><category scheme="http://www.blogger.com/atom/ns#" term="3D modeling"/><category scheme="http://www.blogger.com/atom/ns#" term="Animation"/><category scheme="http://www.blogger.com/atom/ns#" term="Blender"/><category scheme="http://www.blogger.com/atom/ns#" term="tutorial"/><category scheme="http://www.blogger.com/atom/ns#" term="walking cycle"/><title type='text'>Animation Basics on Blender 2.57; Walking Cycle</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Now for animation. &amp;nbsp;And I want to apologize for constantly changing the models I use for tutorials, I don&#39;t really have an excuse, I&#39;ll try to make this the last time I do it. &amp;nbsp;For this introduction to animation I&#39;ll be using a honey badger model, already &lt;a href=&quot;http://instantiateunity.blogspot.com/2012/05/making-characters-rigging-in-blender.html&quot;&gt;rigged&lt;/a&gt;. &amp;nbsp;So, on that note, let us begin.&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiL-07eQdwb2Mc-6lUTs_kmH7zNOj0Rg3dwRvUbKSMYh7rjEYqazxh4EEwRk8qqRxg0-GOrCmefVE0VCJpJiiv7NAGPuKp53ynUOotKt5whPhrm7IBTPi0SAqa5VmCYu8Jib52buANssN4-/s1600/animation1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiL-07eQdwb2Mc-6lUTs_kmH7zNOj0Rg3dwRvUbKSMYh7rjEYqazxh4EEwRk8qqRxg0-GOrCmefVE0VCJpJiiv7NAGPuKp53ynUOotKt5whPhrm7IBTPi0SAqa5VmCYu8Jib52buANssN4-/s320/animation1.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Here is the honey badger, rigged and ready to be animated.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Truth be told, basic animations are not all that hard to accomplish as long as you know what to and not to select. &amp;nbsp;In order to start animating, click on the armature and go into pose mode, here you can edit the position of each armature and the vertices assigned to them freely. &amp;nbsp;Animation in Blender is based on and made simplified by a key frame system, making the animation process easy and the finished product smooth. &amp;nbsp;Now to actually conducting an animation.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi97k1KG39HygIbPW2CNTdsI6maiLIjrHisfXl0ihS2wb62sal_KV5EYZevDRXDzmiWzi2i-ZYAsv7PZQtzCCLgb-zyqc3iffWXBSkPFChViy1FwxkYk4ceQ8pTf4Rm4OLU3XKb6fXlBXnM/s1600/animation2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi97k1KG39HygIbPW2CNTdsI6maiLIjrHisfXl0ihS2wb62sal_KV5EYZevDRXDzmiWzi2i-ZYAsv7PZQtzCCLgb-zyqc3iffWXBSkPFChViy1FwxkYk4ceQ8pTf4Rm4OLU3XKb6fXlBXnM/s400/animation2.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Although you can manually put in keyframes, I prefer using the automatic keyframe setting, which can be enabled by selecting the two buttons which are circled in blue. &amp;nbsp;Now when you edit a frame, a key frame will be added.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
To start the animation, I&#39;ll keep honey badger in rest pose, this will be frame one. &amp;nbsp;You can tell when a key frame is set by the yellow line that is marked in the timeline. &amp;nbsp;You can save this pose in a couple of ways;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGWEl6tLEi4veWtHHX2cRoRWEzdAwJ8Ngf0Ek_TC6qjZ1htejkJBvIjYDKVUvkYZcGaSpksWlZ0U1v25L8L3xkIsdU6tVKNAMTZvjI8og1GlAcITCSxxDVpO0FUgvicCVBDmKzGHSLz_CE/s1600/animation3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;216&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGWEl6tLEi4veWtHHX2cRoRWEzdAwJ8Ngf0Ek_TC6qjZ1htejkJBvIjYDKVUvkYZcGaSpksWlZ0U1v25L8L3xkIsdU6tVKNAMTZvjI8og1GlAcITCSxxDVpO0FUgvicCVBDmKzGHSLz_CE/s400/animation3.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;li&gt;Select the entire skeleton and go to&amp;nbsp;&lt;i&gt;Pose&amp;gt; Pose Library&amp;gt; Add Pose. &amp;nbsp;&lt;/i&gt;When you save a pose, it will only save the bones you have selected. &amp;nbsp;The same goes for copying poses.&lt;/li&gt;
&lt;li&gt;The other way is by, again selecting the skeleton, and clicking &lt;b&gt;SHIFT + LKEY&lt;/b&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now I deselect the entire object and jump to a point in the timeline a little further ahead, around frame 6. &amp;nbsp;Make sure to &lt;b&gt;de&lt;/b&gt;select your object before adding a keyframe later in the timeline&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDB-ChS6hhPbvAb_rAx8Fi-2KW5MWYablFmEtR7gBN9eemfHcOok8CbBU36wSPmvVTEU8xMw_x-01Gx-I10I63lObVfBuSkXMAWiuw9clA6pA53WS_80KUN-SWxALIKLcQ9Z4saqmQDVpY/s1600/animation4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDB-ChS6hhPbvAb_rAx8Fi-2KW5MWYablFmEtR7gBN9eemfHcOok8CbBU36wSPmvVTEU8xMw_x-01Gx-I10I63lObVfBuSkXMAWiuw9clA6pA53WS_80KUN-SWxALIKLcQ9Z4saqmQDVpY/s400/animation4.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Here is my new pose. &amp;nbsp;If you play the animation (&lt;b&gt;ALT+AKEY) &lt;/b&gt;you can watch how Blender makes the transition between the two poses smooth.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
I deselect everything and jump ahead another 5 frames, adjust, and deselect.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjW1VxZzFHW6Rywp1srKkAlK6EV2npZwx_nL5IrvZyEfzBSWFf4l65SfRKJZp_DWOadZRtVI08TzwjkyqvAMLzsb3DaMJHtEgvzwmEXffTD6twITJ1tbIm5YvpgHsf2gEnnGvSQChy62-lq/s1600/animation5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;278&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjW1VxZzFHW6Rywp1srKkAlK6EV2npZwx_nL5IrvZyEfzBSWFf4l65SfRKJZp_DWOadZRtVI08TzwjkyqvAMLzsb3DaMJHtEgvzwmEXffTD6twITJ1tbIm5YvpgHsf2gEnnGvSQChy62-lq/s400/animation5.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
After a few more frames are added, I set the object back to it&#39;s original resting position as the last frame, &amp;nbsp;however, I set it so that the animation ends a couple frames before it reaches that last position, that way it smoothly loops into the beginning of the cycle.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwFE7ohc5pimZHpkUrYq8ezAp3KTD42hfEImE6JnkMTIeGjG_PBrLCMKyA3Uz9Gae6O_IxHfXKl7rr8ociRGjG6IACySp07J5DE2NTYVry5TOXz9fDVuKurRvMQTLcCIS9LDq5vVSWxKF-/s1600/animation6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwFE7ohc5pimZHpkUrYq8ezAp3KTD42hfEImE6JnkMTIeGjG_PBrLCMKyA3Uz9Gae6O_IxHfXKl7rr8ociRGjG6IACySp07J5DE2NTYVry5TOXz9fDVuKurRvMQTLcCIS9LDq5vVSWxKF-/s400/animation6.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
When the model is exported, the animation is exported along with it, no tinkering with settings necessary. Hopefully this has been a helpful introduction to basic animation. &amp;nbsp;If you have any questions, feel free to email the blog.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/680016919191494077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/06/animation-basics-on-blender-257-walking.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/680016919191494077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/680016919191494077'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/06/animation-basics-on-blender-257-walking.html' title='Animation Basics on Blender 2.57; Walking Cycle'/><author><name>Ivey</name><uri>http://www.blogger.com/profile/04949304090549086699</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWW25v5e-DG9NbSr2ooLmi7QXF08Ks1Mc5InCXlcy-3u1VZVNfa_mYddjT2xexIOelPsj3UqsqKKar52IEkCuDKAT5TZD8NmfMfGqSfI12MDlcVSOgHa-pcqQvC44CGA/s220/darci.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiL-07eQdwb2Mc-6lUTs_kmH7zNOj0Rg3dwRvUbKSMYh7rjEYqazxh4EEwRk8qqRxg0-GOrCmefVE0VCJpJiiv7NAGPuKp53ynUOotKt5whPhrm7IBTPi0SAqa5VmCYu8Jib52buANssN4-/s72-c/animation1.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-2608984481528529751</id><published>2012-05-27T23:36:00.001-05:00</published><updated>2012-05-27T23:37:33.810-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2.57"/><category scheme="http://www.blogger.com/atom/ns#" term="armatures"/><category scheme="http://www.blogger.com/atom/ns#" term="Blender"/><category scheme="http://www.blogger.com/atom/ns#" term="rigging"/><category scheme="http://www.blogger.com/atom/ns#" term="skeletons"/><title type='text'>Making Characters: Rigging in Blender 2.57</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
I suppose this could be considered a continuation off of &lt;a href=&quot;http://instantiateunity.blogspot.com/2012/02/making-character-model-blender-257-part.html&quot;&gt;here&lt;/a&gt;, only I&#39;m using a different model. &amp;nbsp;I&#39;ve found people do rigging different ways, but the most effective way I&#39;ve found is like this.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOP5yvjjute-87q266TJ_eRMR1E9Ov9ma3RP8L-h3X0hnQpbXutXe5O6V3nRFRXr6DiSOu356sMBNKEDdJlkh8tip1ezmOk_f5iIsZGo1rhGTK4phmsNI6nay7PyovxDaMQL0oDEaWiFXr/s1600/teddybear.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOP5yvjjute-87q266TJ_eRMR1E9Ov9ma3RP8L-h3X0hnQpbXutXe5O6V3nRFRXr6DiSOu356sMBNKEDdJlkh8tip1ezmOk_f5iIsZGo1rhGTK4phmsNI6nay7PyovxDaMQL0oDEaWiFXr/s320/teddybear.JPG&quot; width=&quot;252&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigfPk-mQwUhiVf2WK004f3Isl_dTQV_xGdJ7Ap6gudcYaLQx8nafar8da7B8sw95SuAKNAdBSB94UCmVEep2kJ0RTQ44YqAMqktwSblUA3WlsN2Xv6RcZntD1riH0TiTV6-uGE-sXNNjTb/s1600/Teddybear.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigfPk-mQwUhiVf2WK004f3Isl_dTQV_xGdJ7Ap6gudcYaLQx8nafar8da7B8sw95SuAKNAdBSB94UCmVEep2kJ0RTQ44YqAMqktwSblUA3WlsN2Xv6RcZntD1riH0TiTV6-uGE-sXNNjTb/s1600/Teddybear.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&amp;nbsp;&lt;/a&gt;So, here I&#39;ve got my model, took a couple hours, but is at this point &lt;b&gt;one&lt;/b&gt;&amp;nbsp;object, uno, ein, un. &amp;nbsp;After you&#39;ve got your object finished, add a single armature, set it inside your model and change the display of the armature to x-ray, like so.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigfPk-mQwUhiVf2WK004f3Isl_dTQV_xGdJ7Ap6gudcYaLQx8nafar8da7B8sw95SuAKNAdBSB94UCmVEep2kJ0RTQ44YqAMqktwSblUA3WlsN2Xv6RcZntD1riH0TiTV6-uGE-sXNNjTb/s1600/Teddybear.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;165&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigfPk-mQwUhiVf2WK004f3Isl_dTQV_xGdJ7Ap6gudcYaLQx8nafar8da7B8sw95SuAKNAdBSB94UCmVEep2kJ0RTQ44YqAMqktwSblUA3WlsN2Xv6RcZntD1riH0TiTV6-uGE-sXNNjTb/s400/Teddybear.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
As I go through making the skeleton, I&#39;ll be naming each bone, although once one is created there is already a preset name, however naming them myself seems to be easier. &amp;nbsp;You can check the &lt;b&gt;Name&lt;/b&gt;&amp;nbsp;button in the Display menu in order to see the name of each bone as you go along (To rename individual bones, in edit mode, click on the little tab with the bone image and there is a name option for each individual bone). &amp;nbsp;You can branch a bone of another by going into edit mode (&lt;b&gt;TAB key&lt;/b&gt;) and clicking on the little ball and extruding (&lt;b&gt;E key&lt;/b&gt;) in any direction.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjopU5rkW1v86oNJlH6d0ptccWGtuTCZLxQT6GmYRPm1Vpq7EfI9JQuH03Xv0k-qXwNpqfsUnmdqyN9PgT27PPRvM4CZo0-fbqbDAKqwhnvrDIbOdNQUhlWsbAQGOV0hdgSV1vXv53-jnZB/s1600/Teddybear2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjopU5rkW1v86oNJlH6d0ptccWGtuTCZLxQT6GmYRPm1Vpq7EfI9JQuH03Xv0k-qXwNpqfsUnmdqyN9PgT27PPRvM4CZo0-fbqbDAKqwhnvrDIbOdNQUhlWsbAQGOV0hdgSV1vXv53-jnZB/s320/Teddybear2.JPG&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
This is what the skeleton looks like now, all named and placed. &amp;nbsp;Now it&#39;s time for making the vertex groups. &amp;nbsp;Select the model and go into edit mode.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXOW0620RMC88qGYnxCdhjLp3aku-nshogKd-c0jZwpugNEEwohJIUsuzp0K48q9rbrvQPTlS4aUaUIQ8gZv7NE1IfZ4kGoUdmlmopnpdfFKI_zzT8Hq5YGNeWZT0cUe7b5HP1CN56EMky/s1600/teddybear+3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;196&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXOW0620RMC88qGYnxCdhjLp3aku-nshogKd-c0jZwpugNEEwohJIUsuzp0K48q9rbrvQPTlS4aUaUIQ8gZv7NE1IfZ4kGoUdmlmopnpdfFKI_zzT8Hq5YGNeWZT0cUe7b5HP1CN56EMky/s400/teddybear+3.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Select the vertices for a certain portion of a body and go to the vertices tab and go to the vertex group tab. &amp;nbsp;Here you can name the vertices in the portion you selected, in order for rigging to go smoothly later on, the name must be &lt;b&gt;exactly &lt;/b&gt;like the name of the bone; it is case, space, and punctual sensitive. &amp;nbsp;For example, I&#39;ve selected all the vertices in the general region of the &quot;Left arm&quot; and I have named the group thus. &amp;nbsp;After you have it named, hit assign, select, then deselect. &amp;nbsp;To make sure if the assignment work, click the group and click select. &amp;nbsp;The vertices assigned to that group should be highlighted. &amp;nbsp;Make sure to make a new group for each&amp;nbsp;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGv0KPH2EL5YD8gMe_79Eld0Shjd3OBKLnwmMLy04iGrNTNkzkVq3z4bcSxs2YldNXXmDBBmZ9A1iVNFgsfaQAgsShPaQNPE9BOxaNtKIL2LCkGZRiWOr8SE3lGKCPMe_nssufdBIecqG8/s1600/teddybear4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;195&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGv0KPH2EL5YD8gMe_79Eld0Shjd3OBKLnwmMLy04iGrNTNkzkVq3z4bcSxs2YldNXXmDBBmZ9A1iVNFgsfaQAgsShPaQNPE9BOxaNtKIL2LCkGZRiWOr8SE3lGKCPMe_nssufdBIecqG8/s400/teddybear4.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
And that is the bear with all of it&#39;s groups and stuff. &amp;nbsp;This last step is the easiest. &amp;nbsp;Select the object and then the armature, hit &lt;b&gt;CTRL P&lt;/b&gt;&amp;nbsp;and click &lt;b&gt;Armature Deform.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioR2Qm3ynt31ZjiLT6vrymVxlVcrEsyb07tPVUUQbqMXOkt88zJMUb9J7dBjRpSYM28JiTylJjovIF2Ii-fSdUmo5fpmfFKXvxi8fPs5briH_cmlvO0kpN8i9nwUmNP8R8TCS_t6PEuo_e/s1600/Teddybear5.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;250&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioR2Qm3ynt31ZjiLT6vrymVxlVcrEsyb07tPVUUQbqMXOkt88zJMUb9J7dBjRpSYM28JiTylJjovIF2Ii-fSdUmo5fpmfFKXvxi8fPs5briH_cmlvO0kpN8i9nwUmNP8R8TCS_t6PEuo_e/s400/Teddybear5.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Now, if you select the armature and go into pose mode, simply move one of the armature bones and the vertices assigned to it should move with it.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNxWRK78A7fs3U6dfDve-sONdIGiH78hWZTBItUTUsasVlba0782i-NTAf1uidrHSry5Wre30eqDQEz5LOYpm8BoyNpARfl2y1paVFZc9FMGqyI6lx_VVi_OwDddZWPfbDu02ptMlDhkji/s1600/teddybear6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNxWRK78A7fs3U6dfDve-sONdIGiH78hWZTBItUTUsasVlba0782i-NTAf1uidrHSry5Wre30eqDQEz5LOYpm8BoyNpARfl2y1paVFZc9FMGqyI6lx_VVi_OwDddZWPfbDu02ptMlDhkji/s320/teddybear6.JPG&quot; width=&quot;233&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
With your object rigged, you are now ready for animating. &amp;nbsp;If you have any questions, feel free to email the blog.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/2608984481528529751/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/05/making-characters-rigging-in-blender.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2608984481528529751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2608984481528529751'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/05/making-characters-rigging-in-blender.html' title='Making Characters: Rigging in Blender 2.57'/><author><name>Ivey</name><uri>http://www.blogger.com/profile/04949304090549086699</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWW25v5e-DG9NbSr2ooLmi7QXF08Ks1Mc5InCXlcy-3u1VZVNfa_mYddjT2xexIOelPsj3UqsqKKar52IEkCuDKAT5TZD8NmfMfGqSfI12MDlcVSOgHa-pcqQvC44CGA/s220/darci.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOP5yvjjute-87q266TJ_eRMR1E9Ov9ma3RP8L-h3X0hnQpbXutXe5O6V3nRFRXr6DiSOu356sMBNKEDdJlkh8tip1ezmOk_f5iIsZGo1rhGTK4phmsNI6nay7PyovxDaMQL0oDEaWiFXr/s72-c/teddybear.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-1493776181385857405</id><published>2012-05-13T11:56:00.001-05:00</published><updated>2013-06-01T00:10:44.423-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Fonts"/><category scheme="http://www.blogger.com/atom/ns#" term="how to"/><category scheme="http://www.blogger.com/atom/ns#" term="importing"/><category scheme="http://www.blogger.com/atom/ns#" term="unicode"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><title type='text'>How To Import and Use Fonts</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/JFXrMqLCuqk?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;br /&gt;
-Made by &lt;a href=&quot;http://www.youtube.com/user/ChromeFXFilms&quot; target=&quot;_blank&quot;&gt;Chrome Fx Films&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
To use different fonts in your game, your going to have to&amp;nbsp;acquire&amp;nbsp;some fonts. You can go somewhere like &lt;a href=&quot;http://www.1001freefonts.com/&quot; target=&quot;_blank&quot;&gt;1001 free fonts&lt;/a&gt;&amp;nbsp;and download ones you like and want to use.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
When you download the file, you&#39;ll need to extract the file if its in &amp;nbsp;a .zip&lt;br /&gt;
&lt;br /&gt;
The text file should have the extension .ttf. If you text files have a FFIL extension, simply rename the font file (yourname.ttf).&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Drag the text file into unity to import. By default the &lt;u&gt;Character&lt;/u&gt; variable should be labeled &lt;u&gt;Dynamic&lt;/u&gt;.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqfZmOTxOxNQjQvgMCW_AznpVa2i3FJKOJCnBbbCnmh3jvfoeeoTQlkSaa53CCeSGdQGT-nc9-tOXIGQWoy_xxABYY2iMo_Zszm-Uxoj44J3siEhpIyFBqOr9MoCfJKzLWnmmviuj4n626/s1600/at+first.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;233&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqfZmOTxOxNQjQvgMCW_AznpVa2i3FJKOJCnBbbCnmh3jvfoeeoTQlkSaa53CCeSGdQGT-nc9-tOXIGQWoy_xxABYY2iMo_Zszm-Uxoj44J3siEhpIyFBqOr9MoCfJKzLWnmmviuj4n626/s320/at+first.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
The Dynamic setting means &amp;nbsp;that Unity won&#39;t pre-generate the texture, so if you look at your material containing your font, It probably will be blank.&lt;a href=&quot;http://unity3d.com/support/documentation/Components/class-Font&quot; target=&quot;_blank&quot;&gt; (read more here)&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now your over all objective should be getting your font to look like this (unless you prefer dynamic):&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_InM8Zh5C1Cftyavmc8LxLfYENubP1bsKPcXaJQrIjPO6MZE6NhdMStC_0yZQ0ha8r1x_KqO_X4Z5X2eTkeFpwlVq-wKujT4UoWqXJcwqhpHTlootMOZYAcfr_acTdZBt4njUJ6KdtWx2/s1600/wantedtextalignment.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_InM8Zh5C1Cftyavmc8LxLfYENubP1bsKPcXaJQrIjPO6MZE6NhdMStC_0yZQ0ha8r1x_KqO_X4Z5X2eTkeFpwlVq-wKujT4UoWqXJcwqhpHTlootMOZYAcfr_acTdZBt4njUJ6KdtWx2/s1600/wantedtextalignment.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Where the characters of the font are not jumbled up and visible.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now usually all you have to do to achieve this is change the&amp;nbsp;&lt;u&gt;Character&lt;/u&gt;&amp;nbsp;variable from&amp;nbsp;&lt;u&gt;Dynamic&lt;/u&gt;&amp;nbsp;to &lt;u&gt;Unicode&lt;/u&gt;.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXrQb9-IRIrKVud6HRMgt2D9-nRiuunmG2LyC6A6vWOoRDKZj77wFJ-t73Ylr2oUbbHNl1oeR53nroeA2Ki6sdazA6BPYnH-623zY8FWjLr3wcd4Crx_H9ahkAHl95w7DCIRNXPa-TvwjG/s1600/unicode.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXrQb9-IRIrKVud6HRMgt2D9-nRiuunmG2LyC6A6vWOoRDKZj77wFJ-t73Ylr2oUbbHNl1oeR53nroeA2Ki6sdazA6BPYnH-623zY8FWjLr3wcd4Crx_H9ahkAHl95w7DCIRNXPa-TvwjG/s1600/unicode.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
and that should work. &lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Now what some people overlook is that fonts are still another persons&#39;s work, and they are not all simply free to the domain to do as one pleases. Make sure you check out the licensing on the fonts you use!&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/1493776181385857405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/05/how-to-import-and-use-fonts.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/1493776181385857405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/1493776181385857405'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/05/how-to-import-and-use-fonts.html' title='How To Import and Use Fonts'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqfZmOTxOxNQjQvgMCW_AznpVa2i3FJKOJCnBbbCnmh3jvfoeeoTQlkSaa53CCeSGdQGT-nc9-tOXIGQWoy_xxABYY2iMo_Zszm-Uxoj44J3siEhpIyFBqOr9MoCfJKzLWnmmviuj4n626/s72-c/at+first.png" height="72" width="72"/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-2238137706169627359</id><published>2012-03-26T22:15:00.000-05:00</published><updated>2012-03-26T22:15:23.084-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Hell"/><category scheme="http://www.blogger.com/atom/ns#" term="Hellish"/><category scheme="http://www.blogger.com/atom/ns#" term="how to"/><category scheme="http://www.blogger.com/atom/ns#" term="inspector"/><category scheme="http://www.blogger.com/atom/ns#" term="make"/><category scheme="http://www.blogger.com/atom/ns#" term="Materials"/><category scheme="http://www.blogger.com/atom/ns#" term="renderFX"/><category scheme="http://www.blogger.com/atom/ns#" term="Skybox"/><category scheme="http://www.blogger.com/atom/ns#" term="tint"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><title type='text'>How To Make a Hellish Looking Sky Box</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
I came across this problem while constructing my scene of Hell in a little project I&#39;ve been working on, and could not find a reasonable sky box on the web for what I want. Maybe I was not looking hard enough, but I ended up making nice substitute.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1aW62lBcg_jGLNS3iLwgvJNmangZyBZoVOwPQaT1kGDJos0lsk9A-b19kyz9ZrSxKlDrUY_Ib6TxkkRC3iZGG5w_ejx9MtgtUy7ztobbgAkgjHby2TDXeRJPyCeZvJNxz8iUpJl045clo/s1600/finnished.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1aW62lBcg_jGLNS3iLwgvJNmangZyBZoVOwPQaT1kGDJos0lsk9A-b19kyz9ZrSxKlDrUY_Ib6TxkkRC3iZGG5w_ejx9MtgtUy7ztobbgAkgjHby2TDXeRJPyCeZvJNxz8iUpJl045clo/s640/finnished.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
If you think the sky box looks familiar, then your right. The Sky box I&#39;m using is already packaged with Unity3D! To import the sky boxes Unity has made for you, &amp;nbsp;simply go to Assets&amp;gt;Import Package&amp;gt;Skyboxes.&amp;nbsp;&lt;span style=&quot;background-color: white; color: #333333; font-family: &#39;Helvetica Neue Light&#39;, HelveticaNeue-Light, &#39;Helvetica Neue&#39;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: 19px;&quot;&gt;The sky boxes will appear in your projects tab under a folder named &quot;Standard Assets&quot;.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: &#39;Helvetica Neue Light&#39;, HelveticaNeue-Light, &#39;Helvetica Neue&#39;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;color: #333333; font-family: &#39;Helvetica Neue Light&#39;, HelveticaNeue-Light, &#39;Helvetica Neue&#39;, Helvetica, Arial, sans-serif;&quot;&gt;&lt;span style=&quot;font-size: 14px; line-height: 19px;&quot;&gt;To make this sky box, first you must find the folder containing all the&amp;nbsp;sky box&amp;nbsp;materials and open it up. In it will be a list of sky boxes for your disposal. To get this skybox, I decided to tweak the &quot;StarryNight Skybox&quot; (But the &quot;MoonShine Skybox&quot; looks pretty cool also!). &amp;nbsp;Select the sky box and view it under the inspector tab. Underneath the properties there will be a tint color variable allowing you to, well tweak the tint color of the sky box.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #333333; font-family: &#39;Helvetica Neue Light&#39;, HelveticaNeue-Light, &#39;Helvetica Neue&#39;, Helvetica, Arial, sans-serif;&quot;&gt;&lt;span style=&quot;font-size: 14px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTsVgzz-L4_eDp69RFIA4oGw6rQYysyf9kQJ9ErHurRKaHvu5Ww_UqCeZJbp8Pgkba7yBYBtN4W-pgK7H-xvnmM0nTvEu-SvGoFMBdh1RJPv8te0Nln2X8ItDxHVNM4QQuuDEGKVRYAoTU/s1600/Untitled.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTsVgzz-L4_eDp69RFIA4oGw6rQYysyf9kQJ9ErHurRKaHvu5Ww_UqCeZJbp8Pgkba7yBYBtN4W-pgK7H-xvnmM0nTvEu-SvGoFMBdh1RJPv8te0Nln2X8ItDxHVNM4QQuuDEGKVRYAoTU/s640/Untitled.png&quot; width=&quot;366&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Just change the tint to the hue of red (or any other color) you want!&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
If your wondering how to make a sky box &lt;a href=&quot;http://instantiateunity.blogspot.com/2012/03/how-do-you-make-skybox-in-unity3d.html&quot; target=&quot;_blank&quot;&gt;click here&lt;/a&gt; to&amp;nbsp;view&amp;nbsp;my previous post on how its done and what it is.&lt;/div&gt;
&amp;nbsp;&lt;span style=&quot;color: #333333; font-family: &#39;Helvetica Neue Light&#39;, HelveticaNeue-Light, &#39;Helvetica Neue&#39;, Helvetica, Arial, sans-serif;&quot;&gt;&lt;span style=&quot;font-size: 14px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/2238137706169627359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/03/how-to-make-hellish-looking-sky-box.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2238137706169627359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2238137706169627359'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/03/how-to-make-hellish-looking-sky-box.html' title='How To Make a Hellish Looking Sky Box'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1aW62lBcg_jGLNS3iLwgvJNmangZyBZoVOwPQaT1kGDJos0lsk9A-b19kyz9ZrSxKlDrUY_Ib6TxkkRC3iZGG5w_ejx9MtgtUy7ztobbgAkgjHby2TDXeRJPyCeZvJNxz8iUpJl045clo/s72-c/finnished.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-7679447652912469846</id><published>2012-03-22T01:35:00.000-05:00</published><updated>2012-03-22T01:35:15.567-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="how to"/><category scheme="http://www.blogger.com/atom/ns#" term="Scenes"/><category scheme="http://www.blogger.com/atom/ns#" term="Skybox"/><category scheme="http://www.blogger.com/atom/ns#" term="textures"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><title type='text'>How Do You Make a Skybox in Unity3D?</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;text-align: left;&quot;&gt;So we have a nice hellish looking scene in our Unity 3D game, and our default blue background really&amp;nbsp;doesn&#39;t&amp;nbsp;belong here&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-FuVKskWuFOtjDPMDf9804Mt53ShvKRMvPhLgeEpJVmujrVPasf6LQiHUHIuar9A-OKpFxzT5XcK3EhCYNBm_QkPMD7PMfD2juQ9XLedLMLM95oKQLiA_F4JVeSD7yMMgOLkj40-_G7x9/s1600/bluebackgrnd.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;205&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-FuVKskWuFOtjDPMDf9804Mt53ShvKRMvPhLgeEpJVmujrVPasf6LQiHUHIuar9A-OKpFxzT5XcK3EhCYNBm_QkPMD7PMfD2juQ9XLedLMLM95oKQLiA_F4JVeSD7yMMgOLkj40-_G7x9/s400/bluebackgrnd.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
You can change the color of the background.. Or you could add a &lt;a href=&quot;http://unity3d.com/support/documentation/Components/class-Skybox.html&quot; target=&quot;_blank&quot;&gt;skybox &lt;/a&gt;for more detail and awe your players with the scenery.&lt;br /&gt;
&lt;br /&gt;
An example of our Scene with a &lt;a href=&quot;http://unity3d.com/support/documentation/Components/class-Skybox.html&quot; target=&quot;_blank&quot;&gt;skybox&lt;/a&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1aW62lBcg_jGLNS3iLwgvJNmangZyBZoVOwPQaT1kGDJos0lsk9A-b19kyz9ZrSxKlDrUY_Ib6TxkkRC3iZGG5w_ejx9MtgtUy7ztobbgAkgjHby2TDXeRJPyCeZvJNxz8iUpJl045clo/s1600/finnished.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;250&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1aW62lBcg_jGLNS3iLwgvJNmangZyBZoVOwPQaT1kGDJos0lsk9A-b19kyz9ZrSxKlDrUY_Ib6TxkkRC3iZGG5w_ejx9MtgtUy7ztobbgAkgjHby2TDXeRJPyCeZvJNxz8iUpJl045clo/s400/finnished.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
So, you may be asking your self &lt;a href=&quot;http://unity3d.com/support/documentation/Manual/HOWTO-UseSkybox.html&quot; target=&quot;_blank&quot;&gt;&amp;nbsp;&quot;How do I Make a &lt;span id=&quot;goog_2088228922&quot;&gt;&lt;/span&gt;Skybox&lt;span id=&quot;goog_2088228923&quot;&gt;&lt;/span&gt;?&quot;&lt;/a&gt;.&amp;nbsp;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Before I begin, Unity has already created many nice presets for&amp;nbsp;everyone&#39;s&amp;nbsp;use. You can simply go to&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
Assets&amp;gt;Import Package&amp;gt;Skyboxes.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQzUgdmfTJXosCgRC5FqFpNcbTiu78HPKLdT4Kx2KPyElYPrL2t-1BGAojm6cp-yyYVLTmJwIrQ_HrlVtyYUSqNMkBUlxlscYfQ8BNt_OXbeRo191Xb8uqEYIINXXetW0UA1eGxR7TtPYQ/s1600/importinskyboxpackage.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;303&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQzUgdmfTJXosCgRC5FqFpNcbTiu78HPKLdT4Kx2KPyElYPrL2t-1BGAojm6cp-yyYVLTmJwIrQ_HrlVtyYUSqNMkBUlxlscYfQ8BNt_OXbeRo191Xb8uqEYIINXXetW0UA1eGxR7TtPYQ/s320/importinskyboxpackage.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
The skyboxes will appear in your projects tab under a folder named &quot;Standard Assets&quot;.&lt;br /&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
So to begin with making your own Skybox, you should start out making a new material in your projects tab&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh4ZTLrnPyN_6qwXml7-e1o9bCGOZCSNHNQDblRM6HWBLcgvHNsM0GW8ZI8P78URpPiOuWaRJGQm5w_ed2PDs3DQkdHiwyZfLhA7Tt_lwdHUyiTxK31TeJ5S5KY-sc1nepON3vTeJklRU7/s1600/newmaterial.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh4ZTLrnPyN_6qwXml7-e1o9bCGOZCSNHNQDblRM6HWBLcgvHNsM0GW8ZI8P78URpPiOuWaRJGQm5w_ed2PDs3DQkdHiwyZfLhA7Tt_lwdHUyiTxK31TeJ5S5KY-sc1nepON3vTeJklRU7/s320/newmaterial.png&quot; width=&quot;187&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Now change your new material&#39;s shader properties from diffuse to RenderFX&amp;gt;Skybox&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGXck_IbTEGnfTgbYowed20XdfpvCBQ4OHsGIlPHDS8Yg9QpXPhmWXlbQkszU0JmGJ6-HHdzFedYU3ccYuHl9lE1xb-4pUNOtgoV0zzlRUMxg9LRlxvy3LYRAIocMmLrIc51zq4jvOW3Za/s1600/shadertoskybox.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGXck_IbTEGnfTgbYowed20XdfpvCBQ4OHsGIlPHDS8Yg9QpXPhmWXlbQkszU0JmGJ6-HHdzFedYU3ccYuHl9lE1xb-4pUNOtgoV0zzlRUMxg9LRlxvy3LYRAIocMmLrIc51zq4jvOW3Za/s320/shadertoskybox.png&quot; width=&quot;206&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
You material should now show 6 slots(up, down, left, right, front and back) in which to put your textures in to build your skybox like so,&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmIzhIHTr0og64vZ4j65p6T66quMrRsQG2HL31u1FPEJtgw-TaaIEtFQ3Pf5b2-SYu2qHj8Nc_O48o3776RHid3vhCzZDCzryULHpsRhLiCtZFynB0REDBLHIlRV7UV64bS73WDtADkk7a/s1600/skyboxempty.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmIzhIHTr0og64vZ4j65p6T66quMrRsQG2HL31u1FPEJtgw-TaaIEtFQ3Pf5b2-SYu2qHj8Nc_O48o3776RHid3vhCzZDCzryULHpsRhLiCtZFynB0REDBLHIlRV7UV64bS73WDtADkk7a/s320/skyboxempty.png&quot; width=&quot;128&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Now you simply apply all the textures your have into their correct placement in the material. There are websites out there, such as&amp;nbsp;&lt;a href=&quot;http://www.3delyvisions.com/skf1.htm&quot;&gt;http://www.3delyvisions.com/skf1.htm&lt;/a&gt;, that has free&amp;nbsp;Skyboxes&amp;nbsp;to download. Once you have completed filling up all the texture slots in the material, you need to go to the camera in which your Scene uses and&amp;nbsp;attach a Skybox component to it by going to Component&amp;gt;Rendering&amp;gt;Skybox.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhWz2_81Xv0sVOXYG3a2VJBmRR7Mm863RpCDvDxVAY6O52-1gm09aG_wFOcJX_BNdzRsIIQmq9s8IkRLY-d6d5gxHEjEZy3OdqpkbbsetzgI-D-U_bQfshZ-OlCpdDUxqFLF4mHo0v5iQC/s1600/skyboxcomponent.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhWz2_81Xv0sVOXYG3a2VJBmRR7Mm863RpCDvDxVAY6O52-1gm09aG_wFOcJX_BNdzRsIIQmq9s8IkRLY-d6d5gxHEjEZy3OdqpkbbsetzgI-D-U_bQfshZ-OlCpdDUxqFLF4mHo0v5iQC/s320/skyboxcomponent.png&quot; width=&quot;301&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Now all you have to do is drag your own skybox material into the camera&#39;s skybox component slot and there you have it, your own skybox being rendered.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/7679447652912469846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/03/how-do-you-make-skybox-in-unity3d.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/7679447652912469846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/7679447652912469846'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/03/how-do-you-make-skybox-in-unity3d.html' title='How Do You Make a Skybox in Unity3D?'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-FuVKskWuFOtjDPMDf9804Mt53ShvKRMvPhLgeEpJVmujrVPasf6LQiHUHIuar9A-OKpFxzT5XcK3EhCYNBm_QkPMD7PMfD2juQ9XLedLMLM95oKQLiA_F4JVeSD7yMMgOLkj40-_G7x9/s72-c/bluebackgrnd.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-2783720446395683483</id><published>2012-02-29T21:58:00.000-06:00</published><updated>2012-02-29T21:58:57.151-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2.57"/><category scheme="http://www.blogger.com/atom/ns#" term="3D modeling"/><category scheme="http://www.blogger.com/atom/ns#" term="Blender"/><category scheme="http://www.blogger.com/atom/ns#" term="characters"/><category scheme="http://www.blogger.com/atom/ns#" term="hot keys"/><category scheme="http://www.blogger.com/atom/ns#" term="how to"/><category scheme="http://www.blogger.com/atom/ns#" term="tutorial"/><title type='text'>Making a character model Blender 2.57 Part one</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;New tutorial on another way on making a character. &amp;nbsp;For reference, I&#39;ll be doing this from right-ortho perspective, which you can switch to by pressing &lt;b&gt;3 &lt;/b&gt;on a numberpad, or if you have an emulated numberpad, the &lt;b&gt;3&lt;/b&gt;&amp;nbsp;on the number row.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgni7_egBezurcpgH71McrpQYAIMOO-g_CIoSjhh8zDaAsgXMtiDGTCa7W7vQv-9bOrEsXxSL9hyphenhyphenyosoFowzcSND-OWgCMEbLZR0R0f_iBeH4vXFeINVbhHwPEHIKk4_o5vulh35KKEOQXU/s1600/Character.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;215&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgni7_egBezurcpgH71McrpQYAIMOO-g_CIoSjhh8zDaAsgXMtiDGTCa7W7vQv-9bOrEsXxSL9hyphenhyphenyosoFowzcSND-OWgCMEbLZR0R0f_iBeH4vXFeINVbhHwPEHIKk4_o5vulh35KKEOQXU/s320/Character.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
So, you start out with your basic cube, go into edit mode and subdivide it. &amp;nbsp;Press &lt;b&gt;Z &lt;/b&gt;to change it to wireframe mode and select the bottom half and the quarter to the right and delete it. &amp;nbsp;You should be left with a rectangular prism with a missing bottom and side. &amp;nbsp;You can fix this by selecting two adjacent edges then pressing &lt;b&gt;F &lt;/b&gt;which will join the two edges together with a face, or you can leave it hollow.&lt;br /&gt;
&lt;br /&gt;
The next part is mirroring the object. &amp;nbsp;Select the object and go to modifiers. &amp;nbsp;Since I&#39;m doing the object from right-ortho, I will make it so it mirrors on the y axis, and y axis only. &amp;nbsp;Under options, check merge, clippings, and vertex groups. &amp;nbsp;This makes sure that the object mirrors correctly and also while you are modeling it doesn&#39;t make creases in the middle of the model.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWlnyAa8NNT8zGuCjfH59DNflgDwPmhXyJ2yIj3AanWWG2x4JAKYatP6YwDMgyLUPF-t6XVOYrxQR40Te7TTugVAoK6q2h7VGFul92Ft6VriVKrD_VPtOcRvtFy5atRqDBHWtOIBNvaNEh/s1600/Character1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWlnyAa8NNT8zGuCjfH59DNflgDwPmhXyJ2yIj3AanWWG2x4JAKYatP6YwDMgyLUPF-t6XVOYrxQR40Te7TTugVAoK6q2h7VGFul92Ft6VriVKrD_VPtOcRvtFy5atRqDBHWtOIBNvaNEh/s320/Character1.JPG&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Creating the character is all about knowing how to extrude, loop cut and merge edges. &amp;nbsp;If you don&#39;t know how to do this stuff (you have to be in edit mode);&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;u&gt;extrude&lt;/u&gt;: select a face, edge, or vertice and press &lt;b&gt;E&lt;/b&gt;. &amp;nbsp;When you&#39;ve extruded it to the length that you want it, click the left mouse button (LMB)&lt;/div&gt;&lt;u&gt;loop cut:&lt;/u&gt;&amp;nbsp;have your cursor over the face you want to add an edge to and hit &lt;b&gt;CTRL R&lt;/b&gt;&amp;nbsp;and click the LMB. &amp;nbsp;The purple line will change to an orange line, of which you can change the placement, when you have the placement you want, click the LMB to set it.&lt;br /&gt;
&lt;br /&gt;
Using these tools will allow you to add more detail to your piece and also make it smoother. &amp;nbsp;Using this method, I&#39;ve found that my models have come out better and more appealing, &amp;nbsp;it is also easier to cooperate with, that is, using a hollow mesh and deleting 3/4 of the cube before mirroring, and also clipping.&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjC1gvXxcYElmeOGWQZh33hl9X-d_N6UuBwjBY23Pt6jGc1C-CI-ZvsgzxHvxnHQnaCM3_PgeQNZWZr8fMcqUS5WeXMqNX170iCar_UWrXeo8zDRqzn88Zw9hEQ1yeV5XkLt2d0ebO01zXQ/s1600/character2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjC1gvXxcYElmeOGWQZh33hl9X-d_N6UuBwjBY23Pt6jGc1C-CI-ZvsgzxHvxnHQnaCM3_PgeQNZWZr8fMcqUS5WeXMqNX170iCar_UWrXeo8zDRqzn88Zw9hEQ1yeV5XkLt2d0ebO01zXQ/s320/character2.JPG&quot; width=&quot;223&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Withing the first couple minutes.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;I extruded on all sides and joined edges where it was necessary to make the legs&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSFWRXWWc30aQE79dngTPGOuWq64NBz2gaS1-hHRiJdtt9deXJuoAshNWrwPasrWcGVpMwOWqdfUyiogMttCbhUy9Mrtj9RGwosds4SprmKYgNuB72GFRZ2izSNslFIG8EOcomt1joct-I/s1600/character3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSFWRXWWc30aQE79dngTPGOuWq64NBz2gaS1-hHRiJdtt9deXJuoAshNWrwPasrWcGVpMwOWqdfUyiogMttCbhUy9Mrtj9RGwosds4SprmKYgNuB72GFRZ2izSNslFIG8EOcomt1joct-I/s1600/character3.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;I loop cut on the leg vertically a couple times in order to get the general roundness and once horizontally to show the knee and get the natural bend of the leg. &amp;nbsp;When I got the general roundness, it still was quite as round as I liked it, so I selected the leg and clicked the smooth vertex option.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLNNL0NvFrz6A7fCZniVkWLztRq2XbsHiMHJgb6fZnVG-2KANNveIIyXwJM9rHUjVeotavOecVVvoSlan2z0BIS-S4aPtQ_1jxDhEsSgPDcPdIl3Cn_oTGrKF5y899ls889sX5HEni5P1_/s1600/character4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLNNL0NvFrz6A7fCZniVkWLztRq2XbsHiMHJgb6fZnVG-2KANNveIIyXwJM9rHUjVeotavOecVVvoSlan2z0BIS-S4aPtQ_1jxDhEsSgPDcPdIl3Cn_oTGrKF5y899ls889sX5HEni5P1_/s1600/character4.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;At this point, it&#39;s starting to look similar to a Magical Melody Character, which that cute stoutness is what I&#39;m aiming for this character.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZD8W8PEayK8_zopbefqnOliNcyyARWGqu-xK0-WcwOhTVzeRSBrYsjVGuJzFrkiP_Xs4AI7GOEsU5oZcGsKjes0jel4dujPu1nvePkOoOL1BF-l0jXa_yNCkJ9dy20bIQ1ZzZSM9KNHpN/s1600/character5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZD8W8PEayK8_zopbefqnOliNcyyARWGqu-xK0-WcwOhTVzeRSBrYsjVGuJzFrkiP_Xs4AI7GOEsU5oZcGsKjes0jel4dujPu1nvePkOoOL1BF-l0jXa_yNCkJ9dy20bIQ1ZzZSM9KNHpN/s320/character5.JPG&quot; width=&quot;231&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbVT1lZvj-o9c2-aBmhT6Xa_CvLcRWz972zJq8bATrCtzaSpIJRVFwgcjs9Sje6wCiPbyqNkaod0VWQGKnqtjIY0l8uJ3PVtVUBDKakcSdRoE0Ea8x948eN1A47xIZfxKCpjtR2UzcoLVB/s1600/character6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbVT1lZvj-o9c2-aBmhT6Xa_CvLcRWz972zJq8bATrCtzaSpIJRVFwgcjs9Sje6wCiPbyqNkaod0VWQGKnqtjIY0l8uJ3PVtVUBDKakcSdRoE0Ea8x948eN1A47xIZfxKCpjtR2UzcoLVB/s320/character6.JPG&quot; width=&quot;190&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Change of plans, proportional body. &amp;nbsp;After I got the general sizings, placements, and such planed out, I selected the whole body and smoothed the vertices some the moved the sides closer together. &amp;nbsp;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/2783720446395683483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2012/02/making-character-model-blender-257-part.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2783720446395683483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2783720446395683483'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2012/02/making-character-model-blender-257-part.html' title='Making a character model Blender 2.57 Part one'/><author><name>Ivey</name><uri>http://www.blogger.com/profile/04949304090549086699</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWW25v5e-DG9NbSr2ooLmi7QXF08Ks1Mc5InCXlcy-3u1VZVNfa_mYddjT2xexIOelPsj3UqsqKKar52IEkCuDKAT5TZD8NmfMfGqSfI12MDlcVSOgHa-pcqQvC44CGA/s220/darci.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgni7_egBezurcpgH71McrpQYAIMOO-g_CIoSjhh8zDaAsgXMtiDGTCa7W7vQv-9bOrEsXxSL9hyphenhyphenyosoFowzcSND-OWgCMEbLZR0R0f_iBeH4vXFeINVbhHwPEHIKk4_o5vulh35KKEOQXU/s72-c/Character.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-4252372068424400949</id><published>2011-12-27T14:01:00.003-06:00</published><updated>2011-12-27T14:20:53.152-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Audio"/><category scheme="http://www.blogger.com/atom/ns#" term="Audio Clip"/><category scheme="http://www.blogger.com/atom/ns#" term="Audio Listener"/><category scheme="http://www.blogger.com/atom/ns#" term="Audio Reverb Zone"/><category scheme="http://www.blogger.com/atom/ns#" term="Audio Source"/><category scheme="http://www.blogger.com/atom/ns#" term="Compression"/><category scheme="http://www.blogger.com/atom/ns#" term="gunshot"/><category scheme="http://www.blogger.com/atom/ns#" term="How"/><category scheme="http://www.blogger.com/atom/ns#" term="in"/><category scheme="http://www.blogger.com/atom/ns#" term="make"/><category scheme="http://www.blogger.com/atom/ns#" term="SFX"/><category scheme="http://www.blogger.com/atom/ns#" term="Sound"/><category scheme="http://www.blogger.com/atom/ns#" term="to"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><title type='text'>How To Make A Gun Shot Sound (SFX On Unity 3D)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
When it comes to audio in Unity, there are &lt;b&gt;four &lt;/b&gt;components:&lt;br /&gt;
&lt;a href=&quot;http://unity3d.com/support/documentation/Components/class-AudioClip.html&quot;&gt;Audio Clip&lt;/a&gt;, &lt;a href=&quot;http://unity3d.com/support/documentation/Components/class-AudioSource.html&quot;&gt;Audio Source&lt;/a&gt;, &lt;a href=&quot;http://unity3d.com/support/documentation/Components/class-AudioListener.html&quot;&gt;Audio Listener&lt;/a&gt;, and &lt;a href=&quot;http://unity3d.com/support/documentation/Components/class-AudioReverbZone.html&quot;&gt;Audio&amp;nbsp;Re-verb&amp;nbsp;Zone&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Audio Clips&lt;/b&gt; are the&amp;nbsp;actual&amp;nbsp;audio file imported into your game. Unity supports file formats: .aif, .wav, .mp3, and .ogg. When imported, you can compress them greatly, with the price of loosing some quality. You can do this by first selecting the audio clip,&amp;nbsp;view&amp;nbsp;it in the inspector. Under the Audio Importer component, you can switch the audio format from Native to the audio clip, to a compressed format applied by Unity. You can change how compressed the file is by dragging the bar at the bottom, then hitting apply.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1ySk0nvb5YYminiotKFNQYaKivFy24uY-IA-sa0cL4ngF4aEycyQi-VputjVGYxMBvQAxaVm07vImrG55M5z46MelcZLVzkqgqEEXzZf-34sPJrCANFgONRTsc9EAg9H_iysnPTCsrjif/s1600/Audio+clip+importer.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;173&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1ySk0nvb5YYminiotKFNQYaKivFy24uY-IA-sa0cL4ngF4aEycyQi-VputjVGYxMBvQAxaVm07vImrG55M5z46MelcZLVzkqgqEEXzZf-34sPJrCANFgONRTsc9EAg9H_iysnPTCsrjif/s320/Audio+clip+importer.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
You can get plenty of&lt;b&gt; free good SFX&lt;/b&gt; from a site called&amp;nbsp;&lt;a href=&quot;http://freesound.org/&quot;&gt;freesound.org&lt;/a&gt;. All you have to do is create an account for&lt;b&gt; &lt;u&gt;free&lt;/u&gt;&lt;/b&gt;, and download all the sounds you want. &lt;a href=&quot;http://www.freesound.org/people/smcameron/sounds/51470/&quot;&gt;I found a nice gun shot sound here&lt;/a&gt;. Simply download and load into your Project.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;b&gt;Audio Source&lt;/b&gt; actually plays the audio clip in your scene. They are an component, so it must be&amp;nbsp;attached&amp;nbsp;to a game object to play in the scene. You can quickly make a empty game object with an&amp;nbsp;attached&amp;nbsp;audio source by dragging an audio clip on to your scene. By default, they play on Awake, which means once the scene loads and plays, the sound will also. With the method of my game, I simply&amp;nbsp;attached&amp;nbsp;a Audio Source (Component&amp;gt;Audio&amp;gt;Audio Source) to my gun, and on instantiate of a bullet (or whatever method you have of firing your wepon), I played the sound. It goes something like this:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace;&quot;&gt;var bb = Instantiate(bullet, bSpawn.transform.position, bSpawn.transform.rotation);&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace;&quot;&gt;bb.rigidbody.AddForce(bb.transform.TransformDirection (Vector3.forward)*10000);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace;&quot;&gt;transform.GetComponent(&lt;span style=&quot;color: #38761d;&quot;&gt;&lt;b&gt;AudioSource&lt;/b&gt;&lt;/span&gt;).Play();&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
Keep in mind, you can have only one Audio Source&amp;nbsp;attached&amp;nbsp;to a game object. You can assign an audio clip to a source by dragging the clip to Audio clip variable under the Audio Source component like this,&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwjHza_PQ6LAadA9BcX0F8UJatFbOmcLmYKUh6OJHWQhaMfhyphenhyphen65MRVYdVkCJYOnolRK_xCYFOMOTk1KZ7Mwszv5fth4siq8iyZvhYsM0I-dO66TmIu9IgSDzwANRjt4MilCE-Lo41XGJO0/s1600/Audio+Sorce.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;273&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwjHza_PQ6LAadA9BcX0F8UJatFbOmcLmYKUh6OJHWQhaMfhyphenhyphen65MRVYdVkCJYOnolRK_xCYFOMOTk1KZ7Mwszv5fth4siq8iyZvhYsM0I-dO66TmIu9IgSDzwANRjt4MilCE-Lo41XGJO0/s400/Audio+Sorce.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Simple right?&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;b&gt;Audio Listener&amp;nbsp;&lt;/b&gt;Is the device that picks up audio played in the scene. You can have &lt;b&gt;ONE audio listener per scene&lt;/b&gt;. The main camera in a scene normally already has audio listener component&amp;nbsp;attached&amp;nbsp;to it. The Audio listener picks up the &lt;b&gt;sounds played around it&lt;/b&gt;, the further it is from a sound, the weaker, or less loud, the sound is. I always&amp;nbsp;attach&amp;nbsp;the audio listener to the player.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;b&gt;Audio&amp;nbsp;Re-verb&amp;nbsp;Zone&lt;/b&gt; is a component that can be used to make your sounds reverberate, or more common term, echo in your scene. Read the &lt;a href=&quot;http://unity3d.com/support/documentation/Components/class-AudioReverbZone.html&quot;&gt;Reference Manual&lt;/a&gt; for the best description.&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/4252372068424400949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2011/12/how-to-make-gun-shot-sound-sfx-on-unity.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/4252372068424400949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/4252372068424400949'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2011/12/how-to-make-gun-shot-sound-sfx-on-unity.html' title='How To Make A Gun Shot Sound (SFX On Unity 3D)'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1ySk0nvb5YYminiotKFNQYaKivFy24uY-IA-sa0cL4ngF4aEycyQi-VputjVGYxMBvQAxaVm07vImrG55M5z46MelcZLVzkqgqEEXzZf-34sPJrCANFgONRTsc9EAg9H_iysnPTCsrjif/s72-c/Audio+clip+importer.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-1328214520725974095</id><published>2011-12-11T12:43:00.000-06:00</published><updated>2011-12-11T12:43:33.403-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2.57"/><category scheme="http://www.blogger.com/atom/ns#" term="3D modeling"/><category scheme="http://www.blogger.com/atom/ns#" term="Blender"/><category scheme="http://www.blogger.com/atom/ns#" term="gun"/><category scheme="http://www.blogger.com/atom/ns#" term="reference image"/><category scheme="http://www.blogger.com/atom/ns#" term="selection"/><category scheme="http://www.blogger.com/atom/ns#" term="tutorial"/><title type='text'>making a gun- blender 2.57</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Blender obviously gives you all the tools you need to make a gun, so this shall be a tutorial on how to make one&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;Something you probably want to use is a reference image, however, if you understand what a gun looks like or if you have your own gun design in mind, you may not need one. &amp;nbsp;For those of you who want to use a reference image, press &lt;b&gt;N &lt;/b&gt;on your keyboard to bring up a new menu. &amp;nbsp;Scroll down to the Background submenu and click the checkbox by it. &amp;nbsp;Click the add image button and it will come up with more stuff. &amp;nbsp;Click the file button to pull up and upload menu and click the image file you want. &amp;nbsp;Keep in mind that Blender can&#39;t upload .gif files, so if the image isn&#39;t importing, check to make sure that the image format isn&#39;t .gif.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSjTGOEUmuHbUga9CfxXjEwS3321yz0F7jZN_17l08DQK3gXRiaIdrAsQXFBVZ4J9mb0z_KUXPDBECtPFBkiMlIpGczHe6jAADOt-OQ4iW_9gwH583WKKsRcKEX2InEHImO6xFgIghUw5o/s1600/background+image.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSjTGOEUmuHbUga9CfxXjEwS3321yz0F7jZN_17l08DQK3gXRiaIdrAsQXFBVZ4J9mb0z_KUXPDBECtPFBkiMlIpGczHe6jAADOt-OQ4iW_9gwH583WKKsRcKEX2InEHImO6xFgIghUw5o/s1600/background+image.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;&quot; style=&quot;clear: both; text-align: left;&quot;&gt;If the file format isn&#39;t a .gif, but the image still isn&#39;t rendering, press the &lt;b&gt;5 &lt;/b&gt;key and this should show the image. &amp;nbsp;Also, a default opacity for a background is 50% (0.500) but you can change this by double click the opacity bar under the back ground settings and then typing in a new number (0.01 thru 1.0) &amp;nbsp;Another thing to remember is that the image will only be visible in orthographic views, so it&#39;s a good idea to keep another window open to keep at a different perspective. &amp;nbsp;You can do this by clicking and dragging the little lines in the top right corner to divide the blender screen.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEho3O4EpCDkbtUJoMJalLIFPAAsv3h6IgPpJDQtnmHjcQ45UsUhBqgwtG0BrzIPkLZsdql_IAdcmzdBEhsPmi5HrP4pNEeAllmS5nLtPWbXh1M7dKt9HwggNAID-nnMrWvcuw6ER0CSYdR0/s1600/herpashit.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEho3O4EpCDkbtUJoMJalLIFPAAsv3h6IgPpJDQtnmHjcQ45UsUhBqgwtG0BrzIPkLZsdql_IAdcmzdBEhsPmi5HrP4pNEeAllmS5nLtPWbXh1M7dKt9HwggNAID-nnMrWvcuw6ER0CSYdR0/s1600/herpashit.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;You can join it into one screen gain by right clicking the divider and click join.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Alright, now time to actually start on the gun. &amp;nbsp;Gun models are pretty damn simple, mostly because one side is symmetrical to the other and also guns are primarily geometric. &amp;nbsp;I&#39;ve already started on a&amp;nbsp;Barrett&amp;nbsp;50 cal.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpNwvf-mYL5F-j4Fuol6wnNi16P2d9oOwngeYBDMsIeWvSot9HavKYTOZ0hr5BjMsXp9QnnIpM2o4IVfjeTrUKfDZAvogURM9OmjEFK22eKnfW3nDi6M7v_jk8C7NTmczf_ITQMJqESuH8/s1600/barrett50bitches.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;104&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpNwvf-mYL5F-j4Fuol6wnNi16P2d9oOwngeYBDMsIeWvSot9HavKYTOZ0hr5BjMsXp9QnnIpM2o4IVfjeTrUKfDZAvogURM9OmjEFK22eKnfW3nDi6M7v_jk8C7NTmczf_ITQMJqESuH8/s320/barrett50bitches.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;but through much of the making of it so far, I&#39;ve kept the modeling preview in wire-frame, which you can switch to just by pressing &lt;b&gt;Z&lt;/b&gt;. &amp;nbsp;This allows you to manipulate all the vertices, edges, and faces, but also allow you to see the reference image. &amp;nbsp;Making a gun is really no different from any other model, using tools like loop cut, stretch, grab, rotate, etc. &amp;nbsp;but I&#39;m going to use a different tool than I usually do.&lt;br /&gt;
&lt;br /&gt;
In order to keep everything proportional, I want to make everything all at once rather than multiple separate objects at different times, however, I want the clip and the scope to be detachable.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj03lQh0wWZ-xODo3ekYQ5Jn92G3xVlWyrigrn3kgLmPDtmNaLjOHBKnpQpde0wgAhkRE2kEPuT9Z9YaSJlCsB2SNAgADWZAweffGByFSGTvWEn_piicyY11H6tQPL-VpWNkDKc3H_jLdQt/s1600/completed.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;159&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj03lQh0wWZ-xODo3ekYQ5Jn92G3xVlWyrigrn3kgLmPDtmNaLjOHBKnpQpde0wgAhkRE2kEPuT9Z9YaSJlCsB2SNAgADWZAweffGByFSGTvWEn_piicyY11H6tQPL-VpWNkDKc3H_jLdQt/s320/completed.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Completed model&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglHNfuDYHAKO7r8QlwCWkc-86WUl-q8htdYghn5U3x2bsOjSY2C-UdS6hZVSXXfHJD2gRS6WwpRZBt08zXPAsJgwkQN5NbXKzK_AJqXSSSRu2peW8Kl4y9hBDjGTh0I8fN1pE8_8xbZgiU/s1600/2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;143&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglHNfuDYHAKO7r8QlwCWkc-86WUl-q8htdYghn5U3x2bsOjSY2C-UdS6hZVSXXfHJD2gRS6WwpRZBt08zXPAsJgwkQN5NbXKzK_AJqXSSSRu2peW8Kl4y9hBDjGTh0I8fN1pE8_8xbZgiU/s320/2.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;What you do is highlight all the faces you want separate from the rest of it, this can be made easier by staying in wireframe mode and using the box tool (&lt;b&gt;B &lt;/b&gt;key) to select the faces.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVP0UPTux7vsMTy9cfAJjvHiji6ijdOINHrrKDeCNCzg5IlHCDtTfBhzmykIwm2MqKsEUkAIWdP0H1g85m-Nvg28_iUVWJ7Hp7r3yX-zvDBbDs9be8mcGWjPtU5t_PJja_0gkbW5Aba2Fw/s1600/3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;165&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVP0UPTux7vsMTy9cfAJjvHiji6ijdOINHrrKDeCNCzg5IlHCDtTfBhzmykIwm2MqKsEUkAIWdP0H1g85m-Nvg28_iUVWJ7Hp7r3yX-zvDBbDs9be8mcGWjPtU5t_PJja_0gkbW5Aba2Fw/s400/3.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;The press &lt;b&gt;P&lt;/b&gt;, which should come up with options like this:&lt;br /&gt;
Click the first option, selection, which will separate the the faces selected from the rest of the model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNyooB-Vz2eVCWWawHwkgGw_FcaiifqrjZJtdtTwLBNyYwd0s1B8gKcrx5X_17QJo6ja2n8KmCsRAH40_d0CG7-ZS2xIV9-IDHx86yjITUJOwAgDYN55iwNM4zryoRoyeLHx02o16OzaeA/s1600/4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;185&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNyooB-Vz2eVCWWawHwkgGw_FcaiifqrjZJtdtTwLBNyYwd0s1B8gKcrx5X_17QJo6ja2n8KmCsRAH40_d0CG7-ZS2xIV9-IDHx86yjITUJOwAgDYN55iwNM4zryoRoyeLHx02o16OzaeA/s320/4.JPG&quot; style=&quot;cursor: move;&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;And voila! &amp;nbsp;Your selection should turn into a single outline without all extra details. &amp;nbsp;This just means that it is&amp;nbsp;incompatible&amp;nbsp;in edit because it is no longer the primary subject in it. &amp;nbsp;You can return to object mode, select the separated object, and go into edit mode with it separate from the original model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEAezX5IeFaM9VRFNN6KjVmMXKelLf-XvVNDW9p5Bh51Cil_c1QrIknwnHCXntp74D0-bbklT2wG-kb6iIfaIZFHeXS_IbN2PlmyWBC2zUgTCHhXz9etIZaEBE6dydXgrm6D2bE2xT1M-Q/s1600/5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;144&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEAezX5IeFaM9VRFNN6KjVmMXKelLf-XvVNDW9p5Bh51Cil_c1QrIknwnHCXntp74D0-bbklT2wG-kb6iIfaIZFHeXS_IbN2PlmyWBC2zUgTCHhXz9etIZaEBE6dydXgrm6D2bE2xT1M-Q/s320/5.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;If you want to join the two objects back together, go to object mode and select both of them by holding down &lt;b&gt;&amp;nbsp;Shift&lt;/b&gt;. &amp;nbsp;Then, in your toolbox, press the join button to bring them back together.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/1328214520725974095/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2011/12/making-gun-blender-257.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/1328214520725974095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/1328214520725974095'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2011/12/making-gun-blender-257.html' title='making a gun- blender 2.57'/><author><name>Ivey</name><uri>http://www.blogger.com/profile/04949304090549086699</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWW25v5e-DG9NbSr2ooLmi7QXF08Ks1Mc5InCXlcy-3u1VZVNfa_mYddjT2xexIOelPsj3UqsqKKar52IEkCuDKAT5TZD8NmfMfGqSfI12MDlcVSOgHa-pcqQvC44CGA/s220/darci.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSjTGOEUmuHbUga9CfxXjEwS3321yz0F7jZN_17l08DQK3gXRiaIdrAsQXFBVZ4J9mb0z_KUXPDBECtPFBkiMlIpGczHe6jAADOt-OQ4iW_9gwH583WKKsRcKEX2InEHImO6xFgIghUw5o/s72-c/background+image.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-4941942975967856221</id><published>2011-12-09T23:35:00.001-06:00</published><updated>2011-12-10T00:08:09.606-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="assets"/><category scheme="http://www.blogger.com/atom/ns#" term="dropbox"/><category scheme="http://www.blogger.com/atom/ns#" term="how to"/><category scheme="http://www.blogger.com/atom/ns#" term="multiple"/><category scheme="http://www.blogger.com/atom/ns#" term="project folder"/><category scheme="http://www.blogger.com/atom/ns#" term="sync"/><category scheme="http://www.blogger.com/atom/ns#" term="together"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><category scheme="http://www.blogger.com/atom/ns#" term="work"/><title type='text'>How To Sync Up Unity Projects</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Want to work on the same Unity Project over multiple computers? Even have multiple people work on one project all at once? Well theirs a free easy method that works!&lt;br /&gt;
&lt;br /&gt;
Step 1:&lt;br /&gt;
Go to &lt;a href=&quot;http://dropbox.com/&quot;&gt;dropbox.com&lt;/a&gt;. Make an account and download their soft ware. You have 2GB of space for free! It&#39;s not much to expand on that either, but I&#39;ve yet to run across any space issues.&lt;br /&gt;
&lt;br /&gt;
Step 2:&lt;br /&gt;
Open up Unity. Go to file&amp;gt;New Project. Under project location, Browse, and create a new folder under your dropbox folder. Make that where your project lies.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWoQTuGCkvQxfXquAcAGHbYKwboYjEML0iF_NtVTjcmuMbaDLFCGXf1HaMKp4t-DoLVwf_u_PyyF7t5d6BdpkovzpNmXQ0OUOWfCronZVAdU73o98pLorDUJKSQ-2Znxsky0-q2TZQfEiq/s1600/Making+new+project.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;299&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWoQTuGCkvQxfXquAcAGHbYKwboYjEML0iF_NtVTjcmuMbaDLFCGXf1HaMKp4t-DoLVwf_u_PyyF7t5d6BdpkovzpNmXQ0OUOWfCronZVAdU73o98pLorDUJKSQ-2Znxsky0-q2TZQfEiq/s640/Making+new+project.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Step 3:&lt;br /&gt;
Go share! You can install dropbox at any computer and log in with your account. Your assets will be loaded into the dropbox folder. To open you Unity project from dropbox, simply go to file&amp;gt;open project, then find the folder that contains your unity project and hit open. You can also log into your dropbox account, and send other drop box users an invitation to share your folder, you have to know their email. When they accept their drop box will now contain the projects folder. They just open it the same way.&lt;br /&gt;
&lt;br /&gt;
Limitations:&lt;br /&gt;
Of course there is the amount of memory you have, but its not a big fee what so ever to upgrade. 10$ a month allows you to upgrade to 50GB. You need internet connection so the Assets folder can properly update. Updating all modified objects takes a while also, but not to terribly long. If a computer is shut down, while others are working on the project, when you turn it on, you should wait for your dropbox to finnish updating before you open up the Unity Editor. Before you turn off your computer after working on the project. you should wait till your computer is done updating all the assets within the folder before you shut it down.&lt;br /&gt;
&lt;br /&gt;
Any questions or problems? Leave a comment or message me!&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/4941942975967856221/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2011/12/how-to-sync-up-unity-projects.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/4941942975967856221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/4941942975967856221'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2011/12/how-to-sync-up-unity-projects.html' title='How To Sync Up Unity Projects'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWoQTuGCkvQxfXquAcAGHbYKwboYjEML0iF_NtVTjcmuMbaDLFCGXf1HaMKp4t-DoLVwf_u_PyyF7t5d6BdpkovzpNmXQ0OUOWfCronZVAdU73o98pLorDUJKSQ-2Znxsky0-q2TZQfEiq/s72-c/Making+new+project.JPG" height="72" width="72"/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-9072610482875117831</id><published>2011-10-13T19:11:00.000-05:00</published><updated>2011-11-25T00:49:06.246-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="line Renderer"/><category scheme="http://www.blogger.com/atom/ns#" term="Miscellaneous"/><category scheme="http://www.blogger.com/atom/ns#" term="Raycast"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><category scheme="http://www.blogger.com/atom/ns#" term="vertex"/><title type='text'>Making A Laser Pointer</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: #ebffe6; font-family: &#39;helvetica neue&#39;, sans-serif; font-size: 13px; line-height: 20px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Want a frieking lazer pointer?&lt;br /&gt;
BOOM.&lt;br /&gt;
&lt;div&gt;
Attach&amp;nbsp;a Line&amp;nbsp;Renderer&amp;nbsp;component to the object you have the script below&amp;nbsp;attached&amp;nbsp;to.&lt;/div&gt;
&lt;div&gt;
&lt;span id=&quot;goog_679597594&quot;&gt;&lt;/span&gt;&lt;span id=&quot;goog_679597595&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
(Component&amp;gt;&amp;nbsp;Miscellaneous&amp;gt;Line Renderer)&lt;br /&gt;
&lt;span id=&quot;goog_1948132957&quot;&gt;&lt;/span&gt;&lt;span id=&quot;goog_1948132958&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4rzG7L8xaAIDV4sQ0I0ztPPCYoZ5tMkttvl8HvpkM5dSoEQR1krPG34Phyphenhyphen8Z8tgbNdlm2QgfdJv_TNCixYf4-gQo6WxUqUi2nzMt5rEMPXRI4JCw2h0sZCrLjDBGn1g3kxWfEsEBJ3Axu/s1600/Line+Rendering.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;210&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4rzG7L8xaAIDV4sQ0I0ztPPCYoZ5tMkttvl8HvpkM5dSoEQR1krPG34Phyphenhyphen8Z8tgbNdlm2QgfdJv_TNCixYf4-gQo6WxUqUi2nzMt5rEMPXRI4JCw2h0sZCrLjDBGn1g3kxWfEsEBJ3Axu/s400/Line+Rendering.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Code:&lt;br /&gt;
&lt;pre style=&quot;background-color: whitesmoke; font-family: Consolas, Monaco, &#39;Liberation Mono&#39;, &#39;Lucida Console&#39;, monospace; font-size: 13px; margin-bottom: 10px; overflow-x: auto; overflow-y: auto; padding-left: 5px; padding-top: 5px; width: 580px;&quot;&gt;&lt;code style=&quot;font-family: Consolas, Monaco, &#39;Liberation Mono&#39;, &#39;Lucida Console&#39;, monospace; font-size: 13px;&quot;&gt;function Update () {
    var lineRenderer : LineRenderer = GetComponent(LineRenderer);
    lineRenderer.useWorldSpace = false;
    lineRenderer.SetVertexCount(2);
    var hit : RaycastHit;
    Physics.Raycast(transform.position,transform.forward,hit);
    if(hit.collider){
    lineRenderer.SetPosition(1,Vector3(0,0,hit.distance));
    }
    else{
        lineRenderer.SetPosition(1,Vector3(0,0,5000));
    }
}

@script RequireComponent(LineRenderer)&lt;/code&gt;&lt;/pre&gt;
Thank&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: black; color: #00cc00; font-family: &#39;courier new&#39;, monospace; font-size: 13px;&quot;&gt;&lt;a href=&quot;http://forum.unity3d.com/members/21523-3dDude&quot;&gt;3dDude&lt;/a&gt;&lt;/span&gt; for the script.&lt;br /&gt;
Original Source &lt;a href=&quot;http://answers.unity3d.com/questions/25822/how-do-i-make-a-laser-pointer.html&quot;&gt;here&lt;/a&gt;.&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/9072610482875117831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2011/10/making-laser-pointer.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/9072610482875117831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/9072610482875117831'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2011/10/making-laser-pointer.html' title='Making A Laser Pointer'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4rzG7L8xaAIDV4sQ0I0ztPPCYoZ5tMkttvl8HvpkM5dSoEQR1krPG34Phyphenhyphen8Z8tgbNdlm2QgfdJv_TNCixYf4-gQo6WxUqUi2nzMt5rEMPXRI4JCw2h0sZCrLjDBGn1g3kxWfEsEBJ3Axu/s72-c/Line+Rendering.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8722634976710358571.post-2749510529198102705</id><published>2011-10-06T19:24:00.002-05:00</published><updated>2013-01-21T23:16:22.184-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Input"/><category scheme="http://www.blogger.com/atom/ns#" term="limiting"/><category scheme="http://www.blogger.com/atom/ns#" term="Local Euler Angles"/><category scheme="http://www.blogger.com/atom/ns#" term="rotation"/><category scheme="http://www.blogger.com/atom/ns#" term="Unity 3D"/><title type='text'>Limiting Rotation of an Object</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
I made this script for my &lt;a href=&quot;http://www.kongregate.com/games/Surgegames/beach-defender&quot;&gt;Beach Defender Game&lt;/a&gt;. It was to keep the player from rotating more than I want his to, because I&#39;m a mean person like that. Any way it took me awhile to figure out how to not make them turn to far to the left, right, up, down.. You know. Here&#39;s the script. Pretty simple. Put under Update function. Feel free to suggest different ways. Or ask any questions.&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre style=&quot;background-image: URL(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinWL8SoglsjecGbjot5A-bq0HNV2lP9K8atigmRb2RUO8mkTp1-5SZIdPEMa5T10B_jNpkYxL9lWH8LrkZFc-Wxm4anXZaz4InFljdii8HFJXWHH2Psw_1NW02IDtPqQTSDbAZPi4XrXXr/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;&quot;&gt;&lt;code style=&quot;color: black; word-wrap: normal;&quot;&gt;           var upDown = Input.GetAxis(&quot;Vertical&quot;) *Time.deltaTime * (rotateSpeed-10);  
           var leftRight = Input.GetAxis(&quot;Horizontal&quot;) * Time.deltaTime * (rotateSpeed-10);  
           //making it turn up or down  
           if(transform.localEulerAngles.x &amp;lt; 25 ){  
                transform.Rotate(upDown, 0, 0);  
           } else if (transform.localEulerAngles.x &amp;gt; 295){  
                transform.Rotate(upDown, 0, 0);                 
           }  
           //making it turn left or right  
           if(transform.localEulerAngles.y &amp;lt; 65 ){  
                transform.Rotate(0, -leftRight, 0);  
           } else if (transform.localEulerAngles.y &amp;gt; 295){  
                transform.Rotate(0, -leftRight, 0);                 
           }  
           //making it not exceed rotation limit (left and right) and preventing it lock up  
           if(transform.localEulerAngles.y &amp;gt;= 65 &amp;amp;&amp;amp; transform.localEulerAngles.y &amp;lt; 295){  
                if(transform.localEulerAngles.y &amp;lt; 180){  
                     transform.localEulerAngles.y = 64.9;  
                } else{  
                     transform.localEulerAngles.y = 295.1;  
                }  
           }  
           //making it not exeed rotation limit (up and down) and preventing it lock up  
           if(transform.localEulerAngles.x &amp;gt;= 25 &amp;amp;&amp;amp; transform.localEulerAngles.x &amp;lt; 295){  
                if(transform.localEulerAngles.x &amp;lt; 180){  
                     transform.localEulerAngles.x = 24.9;  
                } else{  
                     transform.localEulerAngles.x = 295.1;  
                }  
           }  
           //making sure it doesn&#39;t turn on it&#39;s z axis  
           if(transform.localEulerAngles.z != 0){  
                transform.localEulerAngles.z = 0;  
           }  
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://instantiateunity.blogspot.com/feeds/2749510529198102705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://instantiateunity.blogspot.com/2011/10/limiting-rotation-of-object.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2749510529198102705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8722634976710358571/posts/default/2749510529198102705'/><link rel='alternate' type='text/html' href='http://instantiateunity.blogspot.com/2011/10/limiting-rotation-of-object.html' title='Limiting Rotation of an Object'/><author><name>Eli Davis</name><uri>http://www.blogger.com/profile/06392237480351288765</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry></feed>