<?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>Pedro Fernando Gomez Fernandez</title>
	<atom:link href="http://pedrofe.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://pedrofe.com</link>
	<description></description>
	<lastBuildDate>Tue, 02 Jan 2018 15:28:40 +0000</lastBuildDate>
	<language>en-US</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>VR Game: Laser Training</title>
		<link>http://pedrofe.com/vr-game-laser-training/</link>
		<comments>http://pedrofe.com/vr-game-laser-training/#comments</comments>
		<pubDate>Sun, 24 Jan 2016 12:00:48 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://pedrofe.com/?p=494</guid>
		<description><![CDATA[&#160; Developed with Diego Bezares (diego@mistralsocialgames.com): http://mistralsocialgames.com/ This game is a technical demo demonstrating some baking visual techniques specific for virtual reality. You can download it from here. It is a game where you will have to avoid laser rays. A ball that is floating around will shoot you in order to test …<p> <a class="continue-reading-link" href="http://pedrofe.com/vr-game-laser-training/">Continue reading<i class="icon-right-dir"></i></a></p>]]></description>
				<content:encoded><![CDATA[<p><a href="http://pedrofe.com/wp-content/uploads/2016/02/VR_LaserTraining_Logo_Samll.png"><img class="aligncenter wp-image-496 size-full" src="http://pedrofe.com/wp-content/uploads/2016/02/VR_LaserTraining_Logo_Samll.png" alt="VR_LaserTraining_Logo_Samll" width="300" height="300" /></a></p>
<p>&nbsp;</p>
<p>Developed with <a href="https://twitter.com/diegobez">Diego Bezares</a> (diego@mistralsocialgames.com): <a href="http://mistralsocialgames.com/">http://mistralsocialgames.com/</a></p>
<p>This game is a technical demo demonstrating some baking visual techniques specific for virtual reality.</p>
<p>You can download it from <a href="https://play.google.com/store/apps/details?id=com.mistralsocialgames.lasertraining">here</a>.</p>
<p><a href="http://pedrofe.com/wp-content/uploads/2016/02/FastScreenshot_2016-01-19_01-42-56.png"><img class="aligncenter wp-image-498" src="http://pedrofe.com/wp-content/uploads/2016/02/FastScreenshot_2016-01-19_01-42-56.png" alt="FastScreenshot_2016-01-19_01-42-56" width="600" height="318" /></a></p>
<p>It is a game where you will have to avoid laser rays. A ball that is floating around will shoot you in order to test your reflexes.</p>
<p><a href="http://pedrofe.com/wp-content/uploads/2016/02/Instructions1-3_S.png"><img class="aligncenter wp-image-497 size-full" src="http://pedrofe.com/wp-content/uploads/2016/02/Instructions1-3_S.png" alt="Instructions1-3_S" width="356" height="600" /></a></p>
<p>You will be located in a high poly and complex lighting environment. You will perceive parallax due lateral head movements increasing the presence feeling and avoiding motion sickness.</p>
<p><a href="http://pedrofe.com/wp-content/uploads/2016/02/FastScreenshot_2016-01-19_01-55-21.png"><img class="aligncenter wp-image-499" src="http://pedrofe.com/wp-content/uploads/2016/02/FastScreenshot_2016-01-19_01-55-21.png" alt="FastScreenshot_2016-01-19_01-55-21" width="600" height="318" /></a></p>
<p>You will also observe dynamic lighting, with lights that will switch on and off in the scenario.</p>
<p>This game has very low system requirements and performs well on mobiles due to the stereoscopic techniques developed specifically for the game</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/vr-game-laser-training/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oculus VR Camera</title>
		<link>http://pedrofe.com/oculus-camera/</link>
		<comments>http://pedrofe.com/oculus-camera/#comments</comments>
		<pubDate>Mon, 20 Apr 2015 00:00:00 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://pedrofe.com/?p=368</guid>
		<description><![CDATA[Now that VR headsets are being made available to everyone at affordable prices there is an increasing demand for VR content. Developers are struggling since there is no standard to generate this VR content and it is not easy to reach all of the potential viewers. In order to make …<p> <a class="continue-reading-link" href="http://pedrofe.com/oculus-camera/">Continue reading<i class="icon-right-dir"></i></a></p>]]></description>
				<content:encoded><![CDATA[<p>Now that VR headsets are being made available to everyone at affordable prices there is an increasing demand for VR content. Developers are struggling since there is no standard to generate this VR content and it is not easy to reach all of the potential viewers.</p>
<p>In order to make VR a success, we need to provide the audience the content they eager to see before they lose interest and excitement in this new media.</p>
<h5>Acknowledgements:</h5>
<p>Thanks a lot to <a href="http://www.borjamorales.com/" target="_blank">Borja Morales</a> (<a href="https://twitter.com/reality3d" target="_blank">@reality3d</a>) for his great help and support.</p>
<h2>Offline rendering for VR</h2>
<p>There are already a lot of people generating amazing 2D and 3D content using offline renderers. Extending their work with a VR reality camera that outputs pre-rendered VR videos would have the following benefits:</p>
<ul>
<li>Leverage assets already created and immediately generate VR experiences.</li>
<li>Use more complex and realistic scenarios that cannot be achieved with real-time 3D engines.</li>
<li>Users would only need modest hardware to run the VR content at a high frame ratio and resolution, and all of them will experience the same quality results independently of their hardware.</li>
<li>Porting it to WebVR and mobile platforms is easy. This increases the potential audience of users that could enjoy the content.</li>
</ul>
<p>All of these advantages make videos generated with an offline VR camera to be the easier method to distribute VR content among our audience.</p>
<p>Unfortunately, by now, this also has some disadvantages:</p>
<ul>
<li>Head tracking is not considered.</li>
<li>Due to the way the stereoscopic method is used, some artifacts could appear.</li>
<li>Lack of interactivity.</li>
</ul>
<h2>Oculus VR camera approach</h2>
<p>You can get the camera code and binaries from here:</p>
<p><a href="https://github.com/pedrofe/oculus-camera" target="_blank">https://github.com/pedrofe/oculus-camera</a></p>
<h3>Implementation</h3>
<p>The following is an Oculus VR camera implementation built for the Arnold renderer, a Monte-Carlo unidirectional path-tracer developed by Solid Angle. The implementation is simple, basically two cameras offset by a distance with a specific 360º projection. But there are some important steps to avoid artifacts and to expose to the Developer some convenient parameters that will provide him the flexibility to work in different scenarios.</p>
<p>Here is the full list of attributes for the Oculus Camera:</p>
<p><a href="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraAE.png"><img class="aligncenter wp-image-371" src="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraAE.png" alt="OculusCameraAE" width="600" height="692" /></a></p>
<h4 style="padding-left: 30px;">Mode:</h4>
<p style="padding-left: 30px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraMode.png"><img class="aligncenter wp-image-374" src="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraMode.png" alt="OculusCameraMode" width="150" height="92" /></a></p>
<p style="padding-left: 30px;">There are four mode options available so that you can get the result that better adapts to your pipeline.</p>
<div id="attachment_406" style="width: 610px" class="wp-caption aligncenter"><a href="http://pedrofe.com/wp-content/uploads/2015/04/SideBySide.png"><img class="wp-image-406" src="http://pedrofe.com/wp-content/uploads/2015/04/SideBySide.png" alt="SideBySide" width="600" height="450" /></a><p class="wp-caption-text">Side by Side</p></div>
<div id="attachment_407" style="width: 610px" class="wp-caption aligncenter"><a href="http://pedrofe.com/wp-content/uploads/2015/04/OverUnder.png"><img class="wp-image-407" src="http://pedrofe.com/wp-content/uploads/2015/04/OverUnder.png" alt="Over Under" width="600" height="450" /></a><p class="wp-caption-text">Over Under</p></div>
<h4 style="padding-left: 30px;">Projection:</h4>
<p style="padding-left: 30px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraProjection.png"><img class="aligncenter wp-image-375" src="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraProjection.png" alt="OculusCameraProjection" width="200" height="67" /></a></p>
<p style="padding-left: 30px;">Depending on the selected projection, and options, each sample will correspond to a ray direction so that all of the space around the camera is completely covered.</p>
<p>&nbsp;</p>
<div id="attachment_401" style="width: 610px" class="wp-caption aligncenter"><a href="http://pedrofe.com/wp-content/uploads/2015/04/LatLong.png"><img class="wp-image-401" src="http://pedrofe.com/wp-content/uploads/2015/04/LatLong.png" alt="LatLong Projection" width="600" height="300" /></a><p class="wp-caption-text">LatLong Projection</p></div>
<div id="attachment_400" style="width: 610px" class="wp-caption aligncenter"><a href="http://pedrofe.com/wp-content/uploads/2015/04/CubeMapNVIDIA.png"><img class="wp-image-400" src="http://pedrofe.com/wp-content/uploads/2015/04/CubeMapNVIDIA.png" alt="CubeMapNVIDIA" width="600" height="100" /></a><p class="wp-caption-text">NVIDIA Cube Map</p></div>
<div id="attachment_402" style="width: 610px" class="wp-caption aligncenter"><a href="http://pedrofe.com/wp-content/uploads/2015/04/CubeMap3x2.png"><img class="wp-image-402" src="http://pedrofe.com/wp-content/uploads/2015/04/CubeMap3x2.png" alt="3x2 Cube Map" width="600" height="400" /></a><p class="wp-caption-text">3&#215;2 Cube Map</p></div>
<p style="padding-left: 30px;"><a href="https://docs.unrealengine.com/latest/INT/Engine/Content/Types/Textures/Cubemaps/CreatingCubemaps/index.html" target="_blank">Here</a> you will find an explanation about the NVIDIA Cube Map format.</p>
<p style="padding-left: 30px;">Thanks a lot to <a href="http://mirada.com/" target="_blank">Mirada Studios</a> CG Supervisor <a href="http://creating3d.com/" target="_blank">Julian Sarmiento</a>, that helped a lot to define and test the 3&#215;2 Cube Map format.</p>
<p style="padding-left: 30px;">The 3&#215;2 Cube Map has the advantage of better aspect ratio images and that it has four planes (positive X, Y and Z, and negative X) that are contiguous as you can see in this image:</p>
<p style="padding-left: 30px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/CubeMap3x2_Rotated.png"><img class="wp-image-399 aligncenter" src="http://pedrofe.com/wp-content/uploads/2015/04/CubeMap3x2_Rotated.png" alt="CubeMap3x2_Rotated" width="600" height="400" /></a></p>
<h4 style="padding-left: 30px;">Eye separation:</h4>
<p style="padding-left: 30px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraEyeSeparation.png"><img class="aligncenter wp-image-373" src="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraEyeSeparation.png" alt="OculusCameraEyeSeparation" width="300" height="24" /></a></p>
<p style="padding-left: 30px;">Defines the separation between the right and the left camera, needed to achieve a stereoscopic effect.</p>
<p style="padding-left: 30px;">The camera origin position is updated for each sample and displaced from the center perpendicularly to the ray direction. Here is a picture explaining this.</p>
<p style="padding-left: 30px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/EyeSeparation.png"><img class="wp-image-408 aligncenter" src="http://pedrofe.com/wp-content/uploads/2015/04/EyeSeparation.png" alt="EyeSeparation" width="600" height="320" /></a></p>
<p style="padding-left: 30px;">Doing this per sample level and not per pixel creates a better result than using two physical cameras.</p>
<h4 style="padding-left: 30px;">Pole merging:</h4>
<p style="padding-left: 30px;">While this method creates a very nice 3D effects for objects around the viewer, some nasty artifacts will appear at the top and bottom poles. This is because the camera offset makes it impossible for the rays to reach the top and bottom positions as you can see here:</p>
<p style="padding-left: 30px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleNoMerging.png"><img class="wp-image-410 aligncenter" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleNoMerging.png" alt="PoleNoMerging" width="600" height="300" /></a></p>
<p style="padding-left: 30px;">And here you can see an example of how poles look like in this case:</p>
<p style="padding-left: 30px; text-align: center;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Off_Latlong.png"><img class="alignnone wp-image-413" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Off_Latlong.png" alt="PoleMerge_Off_Latlong" width="450" height="150" /></a> <a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Off_Cubemap.png"><img class="alignnone wp-image-416" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Off_Cubemap.png" alt="PoleMerge_Off_Cubemap" width="150" height="150" /></a></p>
<p style="padding-left: 30px;">We can fix these artifacts by smoothing the camera displacement when rays point upwards or downwards. This solution will remove the stereoscopic effect in the poles, but in practice, it is not very noticeable. In this case, the camera rays will look like this:</p>
<p style="padding-left: 30px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerging.png"><img class="wp-image-409 aligncenter" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerging.png" alt="PoleMerging" width="600" height="300" /></a></p>
<p style="padding-left: 30px;">The pole merging will generate a result like this:</p>
<p style="padding-left: 30px; text-align: center;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Cos_Latlong.png"><img class="alignnone wp-image-415" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Cos_Latlong.png" alt="PoleMerge_Cos_Latlong" width="450" height="150" /></a> <a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Cos_Cubemap.png"><img class="alignnone wp-image-414" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Cos_Cubemap.png" alt="PoleMerge_Cos_Cubemap" width="150" height="150" /></a></p>
<p style="padding-left: 30px;">Different settings are provided to control this pole merging so it can be adjusted depending on the scene.</p>
<p style="padding-left: 30px;">First, top and bottom poles parameters are independent as they could have different requisites in your scene. For example, the pole merging at the floor might need to be very smooth if it has lot of detail, but top merging can be more aggressive if it has a flat color, giving the upper hemisphere a more relevant stereoscopic effect. An aggressive merging at the top will look like this:</p>
<p style="padding-left: 30px; text-align: center;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Cos_30_Exp_4.png"><img class="alignnone wp-image-422" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Cos_30_Exp_4.png" alt="PoleMerge_Cos_30_Exp_4" width="200" height="200" /></a></p>
<h5 style="padding-left: 60px;">Merge Mode:</h5>
<p style="padding-left: 60px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraMergeMode.png"><img class="aligncenter wp-image-386" src="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraMergeMode.png" alt="OculusCameraMergeMode" width="200" height="80" /></a></p>
<p style="padding-left: 60px;">Additionally, the Oculus VR Camera exposes three parameters to define the merging function. Usually a Cosine function (Cos) will be smoother and less prone to artifacts.</p>
<h5 style="padding-left: 60px;">Merge angle:</h5>
<p style="padding-left: 60px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraMergeAngle.png"><img class="aligncenter wp-image-384" src="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraMergeAngle.png" alt="OculusCameraMergeAngle" width="300" height="23" /></a></p>
<p style="padding-left: 60px;">Defines the angle in degrees from where the merge starts to take effect. The nearer the angle to the pole (90º top or -90º bottom), the bigger stereoscopic effect you will see below it, but the most probable artifacts will appear at the poles.</p>
<p style="padding-left: 60px;">Below you can see the difference between a start top angle from 0 to 80 using a cos merging function:</p>
<p style="padding-left: 60px; text-align: center;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMergeAnim.gif"><img class="alignnone wp-image-403" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMergeAnim.gif" alt="PoleMergeAnim" width="450" height="150" /></a><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMergeAnim2.gif"><img class="alignnone wp-image-404" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMergeAnim2.gif" alt="PoleMergeAnim2" width="150" height="150" /></a></p>
<address style="padding-left: 60px;"> </address>
<h5 style="padding-left: 60px;">Merge Exponent:</h5>
<p style="padding-left: 60px;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraMergeExponent.png"><img class="aligncenter wp-image-385" src="http://pedrofe.com/wp-content/uploads/2015/04/OculusCameraMergeExponent.png" alt="OculusCameraMergeExponent" width="300" height="22" /></a></p>
<p style="padding-left: 60px;">When using the Cosine (Cos) function of the Merge mode, Merge Exponent will raise the Cosine function to the power defined in this parameter. In practice, it defines how fast the merge will take place in the merge poles interval. Here you can see some example values:</p>
<p style="padding-left: 60px; text-align: center;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMergeAnim3.gif"><img class="alignnone wp-image-405" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMergeAnim3.gif" alt="PoleMergeAnim3" width="200" height="200" /></a></p>
<h2>Pole merging Workflow</h2>
<p>To maximize the stereoscopic effect in the scene while avoiding poles artifacts, the top and bottom poles can be adjusted independently to better suit the specifics of a scene.</p>
<p>The artifacts at the poles can be of two different kinds:</p>
<h3>Distortion artifacts:</h3>
<p>The single image you see from an eye has some deformations at the poles. Perpendicular lines do not meet at 90 degrees. These artifacts tend to appear as you increase the Merge Angle. Some examples:</p>
<p style="text-align: center;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Off_Cubemap.png"><img class="alignnone wp-image-416" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Off_Cubemap.png" alt="PoleMerge_Off_Cubemap" width="200" height="200" /></a>  <a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Distorsion.png"><img class="alignnone wp-image-419" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Distorsion.png" alt="PoleMerge_Distorsion" width="200" height="200" /></a></p>
<h3>Stereoscopic artifacts:</h3>
<p>If you increase the Merge Exponent to avoid deformations as a result of a high Merge Angle value, you might find stereoscopic artifacts. Here if you take a look at a single eye image, you might see a different distortion, but when you see both right and left images you will notice a circular wave on the pole. Here is an example:</p>
<address>Right eye / Left eye:</address>
<p style="text-align: center;"><a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Stereo_Artifact_Right.png"><img class="alignnone wp-image-421" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Stereo_Artifact_Right.png" alt="PoleMerge_Stereo_Artifact_Right" width="200" height="200" /></a>  <a href="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Stereo_Artifact_Left.png"><img class="alignnone wp-image-420" src="http://pedrofe.com/wp-content/uploads/2015/04/PoleMerge_Stereo_Artifact_Left.png" alt="PoleMerge_Stereo_Artifact_Left" width="200" height="200" /></a></p>
<p>The workflow that works for me is the following:</p>
<ul>
<li>Increase the Merge Angle until you get a correct amount of stereoscopic on all the area of interest.</li>
<li>If artifacts have appeared on the poles, increase the Merge Exponent until they are not noticeable.</li>
<li>If the artifacts are still noticeable, slowly decrease the Merge Angle.</li>
</ul>
<h2>Advantages / Disadvantages of the Oculus VR camera approach</h2>
<h3>Advantages:</h3>
<ul>
<li>It works with any scene component  that can be rendered in an offline renderer. Meshes, Hair, Particles, Volumetrics and complex shading networks.</li>
<li>Easy learning curve to begin to create VR content. Just add the Oculus VR camera to your existing project.</li>
<li>Modest hardware requisites to reproduce the content. Any platform that can reproduce a video with the required projection is fine to experience the generated content.</li>
<li>Content easy to distribute either as a video file or via video streaming. It can be reproduced using a dedicated software or app, or with web standards like WebGL and WebVR.</li>
</ul>
<h3>Disadvantages</h3>
<ul>
<li>Poles: By default, poles will show very evident artifacts. This requires that you adjust the stereoscopic effect for each scene and smooth it near the poles, thus diminishing the stereoscopic effect.</li>
<li>Tilt: Due to the way the stereoscopic effect is done, tilting your head will destroy the stereoscopic perception.</li>
<li>Parallax: When you move your head along any axis there is a change in the viewpoint that the offline VR scene can’t take into account. This can diminish the immersion of the experience, since we can only react to head rotations.</li>
</ul>
<h2>Example: Mery Video</h2>
<p><a href="http://pedrofe.com/wp-content/uploads/2014/09/oculus2_small.png"><img class="size-full wp-image-311 aligncenter" src="http://pedrofe.com/wp-content/uploads/2014/09/oculus2_small.png" alt="oculus2_small" width="498" height="245" /></a></p>
<p>Making this video was pretty easy. The following was done:</p>
<ul>
<li>Add an Oculus camera and adjust it with the correct parameters.</li>
<li>Fix the scene so that you can look in any direction. Behind the windows some images were added to simulate the outdoor as well as a couple of columns to hide some lighting artifacts that didn’t appear in the original scene camera.</li>
<li>A single frame with the credits was rendered and added back to the final video inside Nuke.</li>
</ul>
<p>The final video can be seen here:</p>
<p><a href="http://pedrofe.com/rendering-for-oculus-rift-with-arnold/">http://pedrofe.com/rendering-for-oculus-rift-with-arnold/</a></p>
<p>Derived projects from this video:</p>
<ul>
<li><a href="http://threejs.org/examples/#vr_video">http://threejs.org/examples/#vr_video</a></li>
<li><a href="https://github.com/francoislaberge/mary-gearvr">https://github.com/francoislaberge/mary-gearvr</a></li>
</ul>
<h2>Future developing</h2>
<h3>Parallax</h3>
<p>Just now, translation movements of your head will not have a response in the stereo images you are watching. Creating a method that will simulate this parallax effect when you move your head will have the following advantages:</p>
<ul>
<li>More immersive experience.</li>
<li>Less dizziness.</li>
<li>Stereoscopic effect will work even if you tilt your head.</li>
<li>No issues at the poles.</li>
<li>Eventually, it could require less render time than current method.</li>
</ul>
<p>Anyway, it will also have some disadvantages:</p>
<ul>
<li>Position tracking headset is needed (that is not possible just now in most cell phone devices). But even without it, features as better tilt movement and not artifacts at the poles would be useful.</li>
<li>A more complex rendering workflow will be needed.</li>
<li>A custom video player with more hardware power will be required.</li>
</ul>
<p>Here is a video of my current investigation about this problem:</p>
<p><iframe src="https://www.youtube.com/embed/LPfYrwvZHsQ" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
<h3>Mixing real time engines with offline generated videos</h3>
<p>Combining pre-rendered videos with real time engines could give the best of two worlds: Highly detailed and realistic environments with interactivity.</p>
<p>Maybe the first logical use of this could be a stereoscopic cubemap for far away environments and realtime models for near and interactive objects. But once that is done, probably more complex and advanced uses could be achieved.</p>
<p>The main challenge in this scenario will be to make a seamless integration of the offline and real time assets. But if done correctly, results could be amazing even using modest machines. This could bring a new experience to users, something between games and films.</p>
<h2></h2>
<h2></h2>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/oculus-camera/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rendering with Arnold for Oculus Rift</title>
		<link>http://pedrofe.com/rendering-for-oculus-rift-with-arnold/</link>
		<comments>http://pedrofe.com/rendering-for-oculus-rift-with-arnold/#comments</comments>
		<pubDate>Mon, 29 Sep 2014 17:00:03 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://pedrofe.com/?p=290</guid>
		<description><![CDATA[I have created an Arnold camera that will render stereoscopic panoramic images of 3D scenes to be visualized in the Oculus Rift headset. That means that you will be able to feel an immersive experience in any scene that you render with Arnold. An explanation about how this camera is created …<p> <a class="continue-reading-link" href="http://pedrofe.com/rendering-for-oculus-rift-with-arnold/">Continue reading<i class="icon-right-dir"></i></a></p>]]></description>
				<content:encoded><![CDATA[<p>I have created an <a href="https://www.solidangle.com/arnold/">Arnold </a>camera that will render stereoscopic panoramic images of 3D scenes to be visualized in the <a href="http://www.oculus.com/">Oculus Rift</a> headset.</p>
<p>That means that you will be able to feel an immersive experience in any scene that you render with Arnold.</p>
<p>An explanation about how this camera is created could be found in this <a href="https://support.solidangle.com/display/mayatut/Creating+an+Oculus+Rift+Camera+Node">tutorial </a>I have created.</p>
<p>Here is a stereoscopic panoramic video:</p>
<p><iframe src="//www.youtube.com/embed/xJLxAfFxkSc" width="640" height="360" frameborder="0" allowfullscreen="allowfullscreen"></iframe><br />
You can download the full resolution video from <a href="http://pedrofe.com/wp-content/uploads/2014/09/MaryOculus.mp4">here</a>.</p>
<p>To reproduce the videos in the Oculus Rift, you can use any player that is able to reproduce an stereoscopic spherical screen. In my case, I have used <a href="http://www.supersinfulsilicon.com/">MaxVR</a>.</p>
<p>Then, you will be able to look in any direction inside the scene you have rendered.<br />
This is what you will really see:</p>
<p><a href="http://pedrofe.com/wp-content/uploads/2014/09/oculus2.png"><img class="alignnone wp-image-306" src="http://pedrofe.com/wp-content/uploads/2014/09/oculus2.png" alt="oculus2" width="600" height="295" /></a></p>
<p><a href="http://pedrofe.com/wp-content/uploads/2014/09/UsingOculus.jpg"><img class="alignnone wp-image-302" src="http://pedrofe.com/wp-content/uploads/2014/09/UsingOculus.jpg" alt="UsingOculus" width="600" height="450" /></a></p>
<p>Some more example images created with this camera:</p>
<p><a href="http://pedrofe.com/wp-content/uploads/2014/09/Geometric.png"><img class="alignnone wp-image-295" src="http://pedrofe.com/wp-content/uploads/2014/09/Geometric-1024x512.png" alt="Geometric" width="600" height="300" /></a></p>
<p><a href="http://pedrofe.com/wp-content/uploads/2014/09/Mary_y_s.png"><img class="alignnone wp-image-296" src="http://pedrofe.com/wp-content/uploads/2014/09/Mary_y_s.png" alt="Mary_y_s" width="600" height="300" /></a></p>
<p><a href="http://pedrofe.com/wp-content/uploads/2014/09/forrest_p_s.png"><img class="alignnone wp-image-297" src="http://pedrofe.com/wp-content/uploads/2014/09/forrest_p_s.png" alt="forrest_p_s" width="600" height="300" /></a></p>
<p>&nbsp;</p>
<p>Thanks to:</p>
<p><a href="http://www.meryproject.com/">Mery Project</a>: For the scene used in this video.</p>
<p>Borja Morales (<a href="https://twitter.com/reality3d">@reality3d</a>): For his support.</p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/rendering-for-oculus-rift-with-arnold/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pedrofe.com/wp-content/uploads/2014/09/MaryOculus.mp4" length="38193287" type="video/mp4" />
		</item>
		<item>
		<title>Domino Animation Using XGen</title>
		<link>http://pedrofe.com/domino-animation-using-xgen/</link>
		<comments>http://pedrofe.com/domino-animation-using-xgen/#comments</comments>
		<pubDate>Mon, 16 Jun 2014 12:00:21 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://dev2.pedrofe.com/?p=116</guid>
		<description><![CDATA[This domino animation was created using Maya XGen and Arnold The movement of the domino pieces is not a simulation but was created with expressions inside XGen and driven by this texture:]]></description>
				<content:encoded><![CDATA[<p>This domino animation was created using Maya XGen and Arnold</p>
<p style="text-align: center;"><iframe src="//www.youtube.com/embed/046fkttemC4" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
<p>The movement of the domino pieces is not a simulation but was created with expressions inside XGen and driven by this texture:</p>
<p><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Fall5.png"><img class="aligncenter wp-image-63 size-medium" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Fall5-300x150.png" alt="Fall5" width="300" height="150" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/domino-animation-using-xgen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Micro Rocket</title>
		<link>http://pedrofe.com/micro-rocket/</link>
		<comments>http://pedrofe.com/micro-rocket/#comments</comments>
		<pubDate>Sat, 10 May 2014 12:00:16 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://dev2.pedrofe.com/?p=140</guid>
		<description><![CDATA[I attended a micro rocket course. We learned some theory, created the micro rocket and launched it. &#160;]]></description>
				<content:encoded><![CDATA[<p>I attended a micro rocket course. We learned some theory, created the micro rocket and launched it.</p>
<p>&nbsp;</p>
<div id="attachment_199" style="width: 235px" class="wp-caption aligncenter"><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/IMG_2547.jpg"><img class="wp-image-199 size-medium" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/IMG_2547-225x300.jpg" alt="IMG_2547" width="225" height="300" /></a><p class="wp-caption-text">The finished rocket: Zascandil I</p></div>
<div id="attachment_200" style="width: 235px" class="wp-caption aligncenter"><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/IMG_2538.jpg"><img class="wp-image-200 size-medium" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/IMG_2538-225x300.jpg" alt="IMG_2538" width="225" height="300" /></a><p class="wp-caption-text">Building the rocket.</p></div>
<p style="text-align: center;">
<iframe src="//www.youtube.com/embed/ajjz2TWr1rA" width="420" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/micro-rocket/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Pajarita</title>
		<link>http://pedrofe.com/new-pajarita/</link>
		<comments>http://pedrofe.com/new-pajarita/#comments</comments>
		<pubDate>Sun, 26 Jan 2014 12:00:10 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Art]]></category>

		<guid isPermaLink="false">http://dev2.pedrofe.com/?p=148</guid>
		<description><![CDATA[I used my old &#8220;pajarita&#8221; model I did some years ago, and rendered it again with some effects in Arnold using MtoA &#160;]]></description>
				<content:encoded><![CDATA[<p>I used my old <a title="First 3D Scene" href="http://dev2.pedrofe.com/first-3d-scene/">&#8220;pajarita&#8221;</a> model I did some years ago, and rendered it again with some effects in Arnold using MtoA</p>
<p><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/PajaritaColor_11.png"><img class="aligncenter wp-image-209" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/PajaritaColor_11-300x300.png" alt="PajaritaColor_1" width="400" height="400" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/new-pajarita/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Forest done with XGen and Arnold</title>
		<link>http://pedrofe.com/forest-done-with-xgen-and-arnold/</link>
		<comments>http://pedrofe.com/forest-done-with-xgen-and-arnold/#comments</comments>
		<pubDate>Wed, 02 Oct 2013 12:00:14 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Art]]></category>

		<guid isPermaLink="false">http://dev2.pedrofe.com/?p=120</guid>
		<description><![CDATA[I created this forest in order to test functionality during the development of the Arnold extension for XGen. &#160; An article explaining how the scene was created has appeared in 3D Artist issue 70]]></description>
				<content:encoded><![CDATA[<p>I created this forest in order to test functionality during the development of the Arnold extension for XGen.</p>
<p><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/sunsetFinal.jpg"><img class="aligncenter wp-image-18 size-large" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/sunsetFinal-1024x532.jpg" alt="sunsetFinal" width="800" height="415" /></a></p>
<p>&nbsp;</p>
<p>An article explaining how the scene was created has appeared in <a href="https://www.imagineshop.co.uk/magazines/3dartist/3d-artist-issue-70.html">3D Artist</a> issue 70</p>
<p><a href="http://pedrofe.com/wp-content/uploads/2014/07/3DArtistArticle.png"><img class="aligncenter wp-image-280 size-full" src="http://pedrofe.com/wp-content/uploads/2014/07/3DArtistArticle.png" alt="3DArtistArticle" width="700" height="451" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/forest-done-with-xgen-and-arnold/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Animation lit with Arnold</title>
		<link>http://pedrofe.com/arnold-lighted-animation-2/</link>
		<comments>http://pedrofe.com/arnold-lighted-animation-2/#comments</comments>
		<pubDate>Wed, 11 Jul 2012 12:00:07 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Art]]></category>

		<guid isPermaLink="false">http://dev2.pedrofe.com/?p=122</guid>
		<description><![CDATA[I took one of the animation scenes I created when studying at Animation Mentor and lit it with Arnold. Here is the result: I also made some attempts at illuminating the scene in different ways. Here are some of the tests that I did:]]></description>
				<content:encoded><![CDATA[<p>I took one of the animation scenes I created when studying at Animation Mentor and lit it with Arnold. Here is the result:</p>
<p style="text-align: center;"><iframe src="//player.vimeo.com/video/45604940" width="500" height="281" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
<p>I also made some attempts at illuminating the scene in different ways. Here are some of the tests that I did:</p>
<div id="attachment_58" style="width: 310px" class="wp-caption aligncenter"><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Morse.png"><img class="wp-image-58 size-medium" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Morse-300x168.png" alt="Morse" width="300" height="168" /></a><p class="wp-caption-text">Original scene without any light</p></div>
<div id="attachment_59" style="width: 310px" class="wp-caption aligncenter"><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Projector194.jpeg"><img class="wp-image-59 size-medium" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Projector194-300x176.jpeg" alt="Projector194" width="300" height="176" /></a><p class="wp-caption-text">Dark room front lit with a projector.</p></div>
<div id="attachment_62" style="width: 310px" class="wp-caption aligncenter"><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Sunset224_Shadows.jpg"><img class="wp-image-62 size-medium" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Sunset224_Shadows-300x176.jpg" alt="Sunset224_Shadows" width="300" height="176" /></a><p class="wp-caption-text">Sunset light. This was the final illumination I used for the video</p></div>
<div id="attachment_61" style="width: 310px" class="wp-caption aligncenter"><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/SkyDome254.jpeg"><img class="wp-image-61 size-medium" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/SkyDome254-300x176.jpeg" alt="SkyDome254" width="300" height="176" /></a><p class="wp-caption-text">Scene lit using a skydome light</p></div>
<div id="attachment_57" style="width: 310px" class="wp-caption aligncenter"><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Tron241.jpeg"><img class="wp-image-57 size-medium" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/Tron241-300x176.jpeg" alt="Tron241" width="300" height="176" /></a><p class="wp-caption-text">Tron illumination</p></div>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/arnold-lighted-animation-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Time Lapse</title>
		<link>http://pedrofe.com/time-lapse/</link>
		<comments>http://pedrofe.com/time-lapse/#comments</comments>
		<pubDate>Tue, 01 May 2012 12:00:43 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Art]]></category>

		<guid isPermaLink="false">http://dev2.pedrofe.com/?p=144</guid>
		<description><![CDATA[First Time Lapse test: A pretty basic, but I learned things that I have to fix for the next one.]]></description>
				<content:encoded><![CDATA[<p>First Time Lapse test:</p>
<p>A pretty basic, but I learned things that I have to fix for the next one.</p>
<p><iframe src="//player.vimeo.com/video/41376049" width="500" height="334" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/time-lapse/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MtoA</title>
		<link>http://pedrofe.com/mtoa/</link>
		<comments>http://pedrofe.com/mtoa/#comments</comments>
		<pubDate>Fri, 11 Nov 2011 12:00:31 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://dev2.pedrofe.com/?p=142</guid>
		<description><![CDATA[In 2011 I began working at Solid Angle developing the MtoA plugin which integrates Arnold with Maya. Here is an image from the MtoA web of the plugin in action:]]></description>
				<content:encoded><![CDATA[<p>In 2011 I began working at <a href="http://solidangle.com/">Solid Angle</a> developing the <a href="https://support.solidangle.com/display/AFMUG/Arnold+for+Maya+User+Guide">MtoA plugin</a> which integrates <a href="https://www.solidangle.com/arnold/">Arnold</a> with <a href="http://www.autodesk.com/products/autodesk-maya/overview">Maya</a>.</p>
<p>Here is an image from the <a href="https://www.solidangle.com/arnold/arnold-for-maya/">MtoA web</a> of the plugin in action:</p>
<p><a href="http://dev2.pedrofe.com/wp-content/uploads/2014/07/MtoA.png"><img class="aligncenter wp-image-241" src="http://dev2.pedrofe.com/wp-content/uploads/2014/07/MtoA-1024x604.png" alt="MtoA" width="500" height="295" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://pedrofe.com/mtoa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
