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

<channel>
	<title>Unity Technologies Blog &#187; Joachim Ante</title>
	<atom:link href="http://blogs.unity3d.com/author/joe/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.unity3d.com</link>
	<description>A glimpse inside Unity Technologies...</description>
	<lastBuildDate>Fri, 20 Nov 2009 21:07:15 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Unity iPhone App Store Submissions &#8211; Problem Solved</title>
		<link>http://blogs.unity3d.com/2009/11/14/unity-iphone-app-store-submissions-problem-solved/</link>
		<comments>http://blogs.unity3d.com/2009/11/14/unity-iphone-app-store-submissions-problem-solved/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 22:26:51 +0000</pubDate>
		<dc:creator>Joachim Ante</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Tips & Tricks]]></category>

		<guid isPermaLink="false">http://blogs.unity3d.com/?p=1755</guid>
		<description><![CDATA[Recently some Unity customers who have been very anxious to get their game approved by Apple for listing in the app store have received a disappointing rejection notice by Apple because they use something that was not approved by the Apple rules.
As it turns out, the Unity iPhone application was accessing those non-public functions through [...]]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Recently some Unity customers who have been very anxious to get their game approved by Apple for listing in the app store have received a disappointing rejection notice by Apple because they use something that was not approved by the Apple rules.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">As it turns out, the Unity iPhone application was accessing those non-public functions through the Mono runtime which is a third party piece of code we use. Therefore, some of our customers had the bad experience of seeing their application be rejected.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">We have been working on hard on this issue as it stalls and affects our iPhone developer customers. We were able to correct the issue just 2 days after we first heard about it and delivered that fix to those that had reported the problem. Many of them have already resubmitted their application to Apple.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">We will be releasing this new version, Unity iPhone 1.5.1, sometime next week. In the meantime, you have a need or concern, please contact support@unity3d.com and request an iPhone build with this issue fixed.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Note that Unity games already on the app store are not affected by this.</div>
<p>Recently, some Unity customers who have been very anxious to get their iPhone game approved by Apple, have received a rejection notice because they use something that was no longer approved by the Apple rules.</p>
<p>We have been working hard on this issue as it stalls and affects our iPhone developer customers. We were able to correct the issue 2 days after we first heard about it and delivered that fix to those who had reported the problem. Many of them have been already resubmitted their application to Apple. The first Unity game to completely pass the App Store Submission Process is <a href="http://itunes.apple.com/us/app/star-wars-trench-run/id335685707?mt=8">&#8220;Star Wars: Trench Run&#8221;</a>.</p>
<p>We will be releasing this new version, Unity iPhone 1.5.1, publicly on our website sometime next week. In the meantime, if you have an urgent need or concern, please contact oleg@unity3d.com and request an iPhone build with this issue fixed.</p>
<p>Note that Unity games already on the app store are not affected by this.</p>
<p><strong>For those who are interested here are the technical details:</strong></p>
<p><span style="font-family: Helvetica; line-height: normal; font-size: small; "> </span></p>
<div>The reason why Unity authored games (amongst other applications) have been rejected is that Apple recently has begun using special tools to check against usage of private APIs. The main reason for restricting private API usage is to avoid problems with applications breaking when Apple releases new versions of the iPhone OS. Unity iPhone 1.5.0 is accessing 2 private functions _NSGetEnviron and exc_server from the .NET runtime Mono.</div>
<div>There has been a lot of confusion about this topic recently. So to be 100% clear, there is zero relation between those 2 private functions and harvesting user information. Harvesting of user information can be done with a public API. The 2 private functions used in Unity, can not be used for this purpose. Neither do we know of any Unity games that performed any kind of harvesting of user information like phone numbers.</div>
<div>So why did we access those 2 private functions? First of all, Mono runtime was ported from OS X where those functions are very commonly used. Actually they have been used for years now. And as those functions didn&#8217;t give us any problems during Unity port to the iPhone, we simply continued to use them.</div>
<p>What do those functions actually do?</p>
<p><em>_NSGetEnviron </em>is used by the Mono runtime to provide an implementation of the .NET core API method: Environment.GetEnvironmentVariable(). On UNIX environment variables are often used to pass arguments to applications. Due to how the function is exposed, it does not let developers do any data collection.</p>
<p><em>exc_server</em> is used by the Mono runtime to provide graceful NULL reference exception handling. This is useful for developers, when they dereference a null pointer, we can avoid a crash and instead throw an exception and continue the game.</p>
<p>While those functions are useful for debugging purposes, Apple now rejects Apps that use them.</p>
<p>In order for us to solve this problem we simply removed any calls to <em>_NSGetEnviron</em> and <em>exc_server</em>. Update Unity iPhone 1.5.1 was sent out to developers days ago. Most of them have already resubmitted their Apps to the AppStore with the functions removed. Unity iPhone 1.5.1 will go live this week. The first Unity game to completely pass the App Store Submission Process is <a href="http://itunes.apple.com/us/app/star-wars-trench-run/id335685707?mt=8">&#8220;Star Wars: Trench Run&#8221;</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.unity3d.com/2009/11/14/unity-iphone-app-store-submissions-problem-solved/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>Resources everyone should see</title>
		<link>http://blogs.unity3d.com/2009/04/14/resources-everyone-should-see/</link>
		<comments>http://blogs.unity3d.com/2009/04/14/resources-everyone-should-see/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 17:08:01 +0000</pubDate>
		<dc:creator>Joachim Ante</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Tips & Tricks]]></category>

		<guid isPermaLink="false">http://blogs.unity3d.com/?p=534</guid>
		<description><![CDATA[I think there are a lot of resources that are important but people might not have seen or skipped over it. So I am putting up a list of the most overlooked but important resources.
Getting started
The best way to get started if you know nothing about Unity is to go through the 3D Platform Tutorial. With [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://unity3d.com/support/resources/tutorials/3d-platform-game"><img src="http://blogs.unity3d.com/wp-content/uploads/2009/04/platform_tutorial.png" alt="Platform Tutorial" title="Platform Tutorial" width="95" height="150" class="alignright size-full wp-image-569" style="border: 0px"/></a>I think there are a lot of resources that are important but people might not have seen or skipped over it. So I am putting up a list of the most overlooked but important resources.</p>
<p><strong>Getting started</strong><br />
The best way to get started if you know nothing about Unity is to go through the <a href="http://unity3d.com/support/resources/tutorials/3d-platform-game">3D Platform Tutorial</a>. With this in-depth tutorial you can learn how to make a 3rd person platform game in Unity, but at the same time you will learn all the basics of Unity that will give you a head start when creating your own game.</p>
<p><strong>Unity Locomotion system</strong><br />
If you are doing a lot of character animation in your game, you must check this out. Rune&#8217;s Locomotion system was presented at GDC 2009 in a fully packed session. The great thing about it is that it does stylized IK, meaning that it uses the existing animations to do good looking motions and only minimally adjusts them to place feet on the ground etc. It also scales really well, you can start out with a simple walk cycle and it will automatically synthesize sidestep / run / backwards animations for you. If you provide more animations the animations will simply look better.</p>
<p>Get the project folder <a href="http://unity3d.com/support/resources/example-projects/locomotion-ik">here</a></p>
<p>Watch the Unite 2008 talk <a href="http://unity3d.com/support/resources/unite-presentations/walking-and-running-on-uneven-terrain">here</a>.</p>
<p><strong>Visual Studio Integration</strong><br />
In our <a href="http://blogs.unity3d.com/2009/04/10/unity-roadmap/">roadmap</a> we announced Visual Studio integration for Unity 2.6. However you can already use Unity with Visual Studio very well. Lucas Meijer has a blog post on how to create Visual Studio projects from a Unity Project folder automatically <a href="http://lucasmeijer.com/posts/visualstudio-integration-for-unity25-itemtemplates/">here</a>.</p>
<p><strong>Shaders</strong><br />
Amir&#8217;s <a href="http://unity3d.com/support/resources/unite-presentations/shader-programming-course">Unite 2008 Shader talk</a> is the defacto best tutorial on building shaders. He reshot the session into a 2 hour talk so he could go through all the details.</p>
<p><strong>Customizing the asset pipeline</strong><br />
Lucas is really into tightly controlling the asset pipeline and automating every single bit. Fortunately Unity is very extendable, so he has a lot of places where he can plug in. Watch the talk <a href="http://unity3d.com/support/resources/unite-presentations/an-efficient-production-pipeline">here.</a></p>
<p><strong>Matthew&#8217;s Physics Talk at Unite 2008</strong><br />
I generally love hearing <a href="http://unity3d.com/support/resources/unite-presentations/physics-the-right-way">Matthew&#8217;s talks</a>. Got to love the pictures. This year on car physics was very useful.</p>
<p><strong>Unity GUI</strong><br />
Nich&#8217;s <a href="http://unity3d.com/support/resources/unite-presentations/in-game-gui-made-easy">Unite 2007 talk</a> on how to create your own GUI controls is still very relevant.</p>
<p><strong>The wizkid Forest talks about particles</strong><br />
Forest Johnson, a (then) 15 year old kid single handedly programmed the Avert Fate demo, he did some awesome particle effects too and then gave a kickass <a href="http://unity3d.com/support/resources/unite-presentations/forest-talks-particles">impromptu particle talk</a> at Unite 2007.</p>
<table border="0" width="620">
<tbody>
<tr>
<td>
<div id="attachment_565" class="wp-caption alignnone" style="width: 210px"><a href="http://unity3d.com/support/resources/unite-presentations/walking-and-running-on-uneven-terrain"><img class="size-full wp-image-565" title="Rune on dynamic walking" src="http://blogs.unity3d.com/wp-content/uploads/2009/04/unite08_locomotion.png" alt="Rune on dynamic walking" width="200" height="112" /></a><p class="wp-caption-text">Rune on dynamic walking</p></div></td>
<td>
<div id="attachment_568" class="wp-caption alignnone" style="width: 210px"><a href="http://unity3d.com/support/resources/unite-presentations/shader-programming-course"><img class="size-full wp-image-568" title="Amir on shaders" src="http://blogs.unity3d.com/wp-content/uploads/2009/04/unite08_shadercourse.png" alt="Amir on shaders" width="200" height="112" /></a><p class="wp-caption-text">Amir on shaders</p></div></td>
<td>
<div id="attachment_567" class="wp-caption alignnone" style="width: 210px"><a href="http://unity3d.com/support/resources/unite-presentations/an-efficient-production-pipeline"><img class="size-full wp-image-567" title="Lucas on pipeline" src="http://blogs.unity3d.com/wp-content/uploads/2009/04/unite08_pipeline.png" alt="Lucas on pipeline" width="200" height="112" /></a><p class="wp-caption-text">Lucas on pipeline</p></div></td>
</tr>
<tr>
<td>
<div id="attachment_566" class="wp-caption alignnone" style="width: 210px"><a href="http://unity3d.com/support/resources/unite-presentations/physics-the-right-way"><img class="size-full wp-image-566" title="Matthew on physics" src="http://blogs.unity3d.com/wp-content/uploads/2009/04/unite08_physics.png" alt="Matthew on physics" width="200" height="112" /></a><p class="wp-caption-text">Matthew on physics</p></div></td>
<td>
<div id="attachment_563" class="wp-caption alignnone" style="width: 210px"><a href="http://unity3d.com/support/resources/unite-presentations/in-game-gui-made-easy"><img class="size-full wp-image-563" title="Nich on Unity GUI" src="http://blogs.unity3d.com/wp-content/uploads/2009/04/unite07_gui.png" alt="Forest on particles" width="200" height="112" /></a><p class="wp-caption-text">Nich on Unity GUI</p></div></td>
<td>
<div id="attachment_564" class="wp-caption alignnone" style="width: 210px"><a href="http://unity3d.com/support/resources/unite-presentations/forest-talks-particles"><img class="size-full wp-image-564" title="Forest on particles" src="http://blogs.unity3d.com/wp-content/uploads/2009/04/unite07_particles.png" alt="Forest on particles" width="200" height="112" /></a><p class="wp-caption-text">Forest on particles</p></div></td>
</tr>
</tbody>
</table>
<p><strong>Blogs about Unity:</strong><br />
The Flashbang guys have an <a href="http://technology.blurst.com/">awesome blog</a> about Unity, that contains deep technical information that sometimes even I didn&#8217;t know about.</p>
<p>Lucas has a <a href="http://lucasmeijer.com/blog/">great blog</a> about Unity with a lot of very useful information.</p>
<p>Somebody made  a site collecting <a href="http://www.unitytutorials.com/video">video tutorials</a> about Unity.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.unity3d.com/2009/04/14/resources-everyone-should-see/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Unity Roadmap</title>
		<link>http://blogs.unity3d.com/2009/04/10/unity-roadmap/</link>
		<comments>http://blogs.unity3d.com/2009/04/10/unity-roadmap/#comments</comments>
		<pubDate>Fri, 10 Apr 2009 11:57:39 +0000</pubDate>
		<dc:creator>Joachim Ante</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Product News]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://blogs.unity3d.com/?p=411</guid>
		<description><![CDATA[Woah my first blog post! And I am going to dive right into the roadmap. This time we are taking a look at what is coming up in the near future.
Unity 2.6
Unity 2.6 is our next big release in the Unity 2.x series (And will be available as a free upgrade). We are planning to [...]]]></description>
			<content:encoded><![CDATA[<p>Woah my first blog post! And I am going to dive right into the roadmap. This time we are taking a look at what is coming up in the near future.</p>
<h2>Unity 2.6</h2>
<p>Unity 2.6 is our next big release in the Unity 2.x series (And will be available as a free upgrade). We are planning to release Unity 2.6 sometime later this summer. Here&#8217;s some of the things to come:</p>
<p><span id="more-411"></span><strong>Threaded Background Loading</strong><br />
We originally implemented background loading Cartoon Network&#8217;s <a href="http://www.fusionfall.com/"><span>FusionFall</span></a> MMO, and are now integrating this into mainline Unity. The Cartoon Network guys built a huge streaming world where the entire game is split into 16 x 16 scenes. Scenes are loaded and unloaded on the fly while the character runs around in the world. There are no noticeable framerate hiccups while loading because all loading code is running in a different thread. It&#8217;s a single line API for you to use, and Unity does all the heavy lifting for you completely automatically.</p>
<p><strong>Built-in Realtime Profiler</strong><br />
Dmitry, who just joined us from EA (and previously head of R&amp;D at Crytek), is working on a hierarchical Performance Profiler. It gives you a quick overview of where Unity is spending its time and how you are spending time in your scripts. Profiling times are separated out by frames, so you can step through previous frames. The profiler shows you all managed memory allocations, so it&#8217;s gonna be great for reducing garbage collector hiccups!</p>
<p><strong>Memory Optimizations + Performance Optimizations</strong><br />
Aras has spent some time optimizing the graphics rendering pipeline. For example shadow rendering code is up to 30% faster now. Renaldas &#8220;ReJ&#8221; has been working a lot on hardcore iPhone optimizations recently, and some of those will carry right over into Unity, so we will see some gains from that as well. And lastly, during 2008 we worked on a lot of optimization for FusionFall (after all, we&#8217;re pulling off running a full MMO on very low end hardware), and they will all find their way back into Unity 2.6. We don&#8217;t know what performance increase this will end up being when it&#8217;s all combined, but it&#8217;s safe to assume that you will be blown away when you see it.</p>
<p><strong>Visual Studio Integration</strong><br />
Unity has always been a tool where designers, artists and hardcore programmers work together and do group hugs sharing the love. With Unity 2.6 we will automatically generate Visual Studio projects and you can double click on an error in the console log in Unity and it will bring you right to that line in Visual Studio. Let&#8217;s face it, Visual Studio is the world&#8217;s best IDE for writing C# code, and we&#8217;ll make it easy to take full advantage of Visual Studio for Unity users.</p>
<p><strong>Keyframe &amp; Animation Curve Editor</strong><br />
Rune and Nicholas are working on an all new Curve Editor for Unity. You can see some more information about this in <a href="http://blogs.unity3d.com/2009/04/05/new-animation-timeline/">Nicholas&#8217;s blog post</a> a few days ago. But to sum it up, it rocks. It&#8217;s a full on curve editor with support for editing curve tangents, it&#8217;s as powerful as what people know from 3ds Max and Maya but a lot more intuitive. It lets you animate any type of property and you can even animate material properties, like UV offset &amp; scale, color, float and vector properties.</p>
<p>I just can&#8217;t wait to see what people do when they get these material animation tools in their hands, combined with our shader system where you can expose arbitrary properties to artists for tweaking&#8230; this is going to open up a whole new world of awesome graphics effects!</p>
<p><strong>Improved Asset Unloading</strong><br />
We are working on an a method for unloading of assets that will look at exactly what assets are referenced from scripts or used by any object in the scene using garbage collection.</p>
<p><strong>Vertex Shader based Vertex Lighting</strong><br />
Currently Unity mixes the fixed function pipeline for vertex lit objects and vertex shaders for pixel lit lights. On Direct3D this creates some rendering artifacts on very close or self intersecting surfaces. We want to end this by implementing a full fixed function emulator in vertex shaders. You won&#8217;t have to do anything, it will just work!</p>
<p><strong>Anti-aliasing with Image Effects</strong><br />
Anti-aliasing should work with image post-processing effects. &#8217;nuff said!</p>
<h2>Later Releases</h2>
<p>There are some other very important features that we are working on. We want to have them in Unity as fast as possible. They won&#8217;t be ready for 2.6 and we also don&#8217;t know when they will be finished,  but they will come as a free upgrade for Unity 2.x.</p>
<p><strong>Debugger</strong><br />
While Unity provides a lot of debug utilities like live watching member variables in the Inspector as scripts are modifying, we don&#8217;t yet have a full on line by line Debugger. We are currently internally working on adding a debugger to Mono for OS X and we have contracted another company to work on the debugger for Windows.</p>
<p><strong>Perforce and SVN integration</strong><br />
Perforce and Subversion integration for Unity is very much on our minds these days. As we are getting more and more large game studios on board with Unity this is a very much requested feature. For the time being, rest assured that support for Perforce / SVN is coming.</p>
<h2>2.5.1 Bug fix Update</h2>
<p>New features are cool and all but before we get there, we will make sure that Unity 2.5.1 is working rock solid for everyone. We have just released a complete rewrite of the entire editor for the first time on Windows, from what we hear it&#8217;s working very solidly but there are some corner case issues we need to fix. So expect a Unity 2.5.1 very soon that focuses only on bug fixes.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.unity3d.com/2009/04/10/unity-roadmap/feed/</wfw:commentRss>
		<slash:comments>75</slash:comments>
		</item>
	</channel>
</rss>
